This commit is contained in:
Yanis002
2025-01-21 00:17:29 +01:00
parent 48bbd8bb7f
commit 2d57d12209
6 changed files with 142 additions and 14 deletions
+3
View File
@@ -14,3 +14,6 @@ libs/cpp/src/__register_global_object.cpp:
complete
.text start:0x0204f8d4 end:0x0204f8f4
.bss start:0x02076da8 end:0x02076dac
src/Main/MessageManager.cpp:
.text start:0x020371b4 end:0x020373b4
+7 -7
View File
@@ -1304,7 +1304,7 @@ func_0202a8dc kind:function(arm,size=0x1cc) addr:0x202a8dc
func_0202aaa8 kind:function(arm,size=0x40) addr:0x202aaa8
func_0202aae8 kind:function(thumb,size=0x10) addr:0x202aae8
func_0202aaf8 kind:function(thumb,size=0x40) addr:0x202aaf8
func_0202ab38 kind:function(thumb,size=0x10) addr:0x202ab38
_Z13func_0202ab38i kind:function(thumb,size=0x10) addr:0x202ab38
func_0202ab48 kind:function(thumb,size=0x4) addr:0x202ab48
func_0202ab4c kind:function(thumb,size=0x8) addr:0x202ab4c
func_0202ab54 kind:function(thumb,size=0x10) addr:0x202ab54
@@ -1397,7 +1397,7 @@ func_0202d21c kind:function(thumb,size=0x20) addr:0x202d21c
func_0202d23c kind:function(thumb,size=0x180) addr:0x202d23c
func_0202d3bc kind:function(thumb,size=0xb8) addr:0x202d3bc
func_0202d474 kind:function(thumb,size=0xdc) addr:0x202d474
func_0202d550 kind:function(thumb,size=0x1c) addr:0x202d550
_Z13func_0202d550iPjPciii kind:function(thumb,size=0x1c) addr:0x202d550
func_0202d56c kind:function(thumb,size=0x24) addr:0x202d56c
func_0202d590 kind:function(thumb,size=0x8) addr:0x202d590
func_0202d598 kind:function(thumb,size=0x1c) addr:0x202d598
@@ -1821,11 +1821,11 @@ func_020370e8 kind:function(arm,size=0x70) addr:0x20370e8
func_02037158 kind:function(arm,size=0x20) addr:0x2037158
func_02037178 kind:function(arm,size=0x38) addr:0x2037178
func_020371b0 kind:function(arm,size=0x4) addr:0x20371b0
func_020371b4 kind:function(thumb,size=0x14) addr:0x20371b4
func_020371c8 kind:function(thumb,size=0x90) addr:0x20371c8
func_02037258 kind:function(arm,size=0x34) addr:0x2037258
func_0203728c kind:function(arm,size=0x64) addr:0x203728c
func_020372f0 kind:function(thumb,size=0xc4) addr:0x20372f0
_Z13func_020371b4P11UnknownData kind:function(thumb,size=0x14) addr:0x20371b4
_Z13func_020371c8P11UnknownDataPji kind:function(thumb,size=0x90) addr:0x20371c8
_Z13func_02037258P11UnknownDatai kind:function(arm,size=0x34) addr:0x2037258
_Z13func_0203728cP11UnknownDatai kind:function(arm,size=0x64) addr:0x203728c
_ZN14MessageManager13func_020372f0Eiii kind:function(thumb,size=0xc4) addr:0x20372f0
func_020373b4 kind:function(thumb,size=0x38) addr:0x20373b4
func_020373ec kind:function(arm,size=0x60) addr:0x20373ec
func_0203744c kind:function(thumb,size=0xc) addr:0x203744c
+7 -7
View File
@@ -1304,7 +1304,7 @@ func_0202a8dc kind:function(arm,size=0x1cc) addr:0x202a8dc
func_0202aaa8 kind:function(arm,size=0x40) addr:0x202aaa8
func_0202aae8 kind:function(thumb,size=0x10) addr:0x202aae8
func_0202aaf8 kind:function(thumb,size=0x28) addr:0x202aaf8
func_0202ab38 kind:function(thumb,size=0x10) addr:0x202ab20
_Z13func_0202ab38i kind:function(thumb,size=0x10) addr:0x202ab20
func_0202ab48 kind:function(thumb,size=0x4) addr:0x202ab30
func_0202ab4c kind:function(thumb,size=0x8) addr:0x202ab34
func_0202ab54 kind:function(thumb,size=0x10) addr:0x202ab3c
@@ -1397,7 +1397,7 @@ func_0202d21c kind:function(thumb,size=0x20) addr:0x202d218
func_0202d23c kind:function(thumb,size=0x180) addr:0x202d238
func_0202d3bc kind:function(thumb,size=0xb8) addr:0x202d3b8
func_0202d474 kind:function(thumb,size=0xdc) addr:0x202d470
func_0202d550 kind:function(thumb,size=0x1c) addr:0x202d54c
_Z13func_0202d550iPjPciii kind:function(thumb,size=0x1c) addr:0x202d54c
func_0202d56c kind:function(thumb,size=0x24) addr:0x202d568
func_0202d590 kind:function(thumb,size=0x8) addr:0x202d58c
func_0202d598 kind:function(thumb,size=0x1c) addr:0x202d594
@@ -1821,11 +1821,11 @@ func_020370e8 kind:function(arm,size=0x70) addr:0x20370a4
func_02037158 kind:function(arm,size=0x20) addr:0x2037114
func_02037178 kind:function(arm,size=0x38) addr:0x2037134
func_020371b0 kind:function(arm,size=0x4) addr:0x203716c
func_020371b4 kind:function(thumb,size=0x14) addr:0x2037170
func_020371c8 kind:function(thumb,size=0x90) addr:0x2037184
func_02037258 kind:function(arm,size=0x34) addr:0x2037214
func_0203728c kind:function(arm,size=0x64) addr:0x2037248
func_020372f0 kind:function(thumb,size=0xc4) addr:0x20372ac
_Z13func_020371b4P11UnknownData kind:function(thumb,size=0x14) addr:0x2037170
_Z13func_020371c8P11UnknownDataPji kind:function(thumb,size=0x90) addr:0x2037184
_Z13func_02037258P11UnknownDatai kind:function(arm,size=0x34) addr:0x2037214
_Z13func_0203728cP11UnknownDatai kind:function(arm,size=0x64) addr:0x2037248
_ZN14MessageManager13func_020372f0Eiii kind:function(thumb,size=0xc4) addr:0x20372ac
func_020373b4 kind:function(thumb,size=0x38) addr:0x2037370
func_020373ec kind:function(arm,size=0x60) addr:0x20373a8
func_0203744c kind:function(thumb,size=0xc) addr:0x2037408
+23
View File
@@ -0,0 +1,23 @@
#pragma once
#include "global.h"
#include "types.h"
typedef struct UnknownData {
unk32 unk_00;
unk32 unk_04;
unk32 unk_08;
unk32 unk_0C;
unk32 unk_10;
unk32 unk_14;
unk16 unk_18;
unk16 unk_1A;
} UnknownData;
class MessageManager {
private:
UnknownData* aUnknownData;
public:
void func_020372f0(int index, int param_3, int param_4);
};
+102
View File
@@ -0,0 +1,102 @@
extern "C" {
#include <string.h>
}
#include "Message/MessageManager.hpp"
char* func_0202ab38(int lang);
u32* func_0202d550(int, u32*, char* path, int, int, int);
extern u32 *data_027e0ce0[];
extern u32 data_027e05f4; // language
extern u32* data_ov002_0210016c;
THUMB void func_020371b4(UnknownData* pData) {
pData->unk_00 = 0;
pData->unk_04 = 0;
pData->unk_08 = 0;
pData->unk_0C = 0;
pData->unk_10 = 0;
pData->unk_14 = 0;
pData->unk_18 = 0;
}
THUMB int func_020371c8(UnknownData* pData, u32* param_2, int param_3) {
/* TODO */
}
THUMB int func_02037258(UnknownData* pData, unk32 param_2) {
/* TODO */
}
THUMB unk16 func_0203728c(UnknownData* pData, unk32 param_2) {
/* TODO */
}
static char* sBMGFiles[] = {
"system",
"regular",
"battle",
"test",
"default",
"sea",
"kaitei",
"main_isl",
"brave",
"flame",
"wind",
"frost",
"power",
"wisdom",
"ghost",
"hidari",
"sennin",
"ship",
"collect",
"mainselect",
"field",
"wisdom_dngn",
"demo",
"battleCommon",
"bossLast1",
"bossLast3",
"torii",
"myou",
"kojima1",
"kojima2",
"kojima5",
"kojima3",
"staff",
"kaitei_F",
};
THUMB void MessageManager::func_020372f0(int index, int param_3, int param_4) {
char bmgPath[64];
UnknownData local_70;
u32* uVar2;
int iVar1;
// path to the bmg file for the current language (i.e.: "English/Message/battle.bmg")
strcpy(bmgPath, func_0202ab38(data_027e05f4));
strcat(bmgPath, "/Message/");
strcat(bmgPath, sBMGFiles[index]);
strcat(bmgPath, ".bmg");
uVar2 = data_027e0ce0[1];
if (param_3 != 1) {
if (param_3 != 4) {
uVar2 = data_027e0ce0[0];
} else {
uVar2 = data_ov002_0210016c;
}
}
uVar2 = func_0202d550(0xC4, uVar2, bmgPath, 0, 0x10, 0);
local_70.unk_1A = 0;
func_020371b4(&local_70);
iVar1 = func_020371c8(&local_70, uVar2, param_3);
this->aUnknownData[iVar1] = local_70;
this->aUnknownData[iVar1].unk_1A = iVar1;
}
Regular → Executable
View File