more progress

This commit is contained in:
Yanis002
2025-01-24 03:37:43 +01:00
parent 3194675d0d
commit dea4060fb5
4 changed files with 98 additions and 22 deletions
+9 -9
View File
@@ -1792,14 +1792,14 @@ func_020363c8 kind:function(arm,size=0x74) addr:0x20363c8
func_0203643c kind:function(arm,size=0x54) addr:0x203643c
func_02036490 kind:function(thumb,size=0x1cc) addr:0x2036490
func_0203665c kind:function(thumb,size=0x4c) addr:0x203665c
func_020366a8 kind:function(arm,size=0x1c) addr:0x20366a8
func_020366c4 kind:function(arm,size=0x3c) addr:0x20366c4
func_02036700 kind:function(arm,size=0x3c) addr:0x2036700
func_0203673c kind:function(arm,size=0x34) addr:0x203673c
_ZN18UnkStruct_027E0C68D2Ev kind:function(arm,size=0x1c) addr:0x20366a8
_ZN18UnkStruct_027E0C6813func_020366c4Ev kind:function(arm,size=0x3c) addr:0x20366c4
_ZN18UnkStruct_027E0C6813func_02036700Ev kind:function(arm,size=0x3c) addr:0x2036700
_ZN18UnkStruct_027E0C6813func_0203673cEv kind:function(arm,size=0x34) addr:0x203673c
func_02036770 kind:function(arm,size=0x28) addr:0x2036770
func_02036798 kind:function(arm,size=0x44) addr:0x2036798
func_020367dc kind:function(arm,size=0x10) addr:0x20367dc
func_020367ec kind:function(arm,size=0x1c) addr:0x20367ec
_ZN18UnkStruct_027E0C6813func_02036798Ev kind:function(arm,size=0x44) addr:0x2036798
_ZN18UnkStruct_027E0C6813func_020367dcEi kind:function(arm,size=0x10) addr:0x20367dc
_ZN18UnkStruct_027E0C6813func_020367ecEv kind:function(arm,size=0x1c) addr:0x20367ec
_ZN18UnkStruct_027E0C6813func_02036808Ev kind:function(arm,size=0x1c) addr:0x2036808
_ZN18UnkStruct_027E0C6813func_02036824Ev kind:function(arm,size=0x2c) addr:0x2036824
_ZN18UnkStruct_027E0C6813func_02036850Ev kind:function(arm,size=0x38) addr:0x2036850
@@ -1878,7 +1878,7 @@ func_02038b08 kind:function(thumb,size=0x14) addr:0x2038b08
func_02038b1c kind:function(thumb,size=0xc) addr:0x2038b1c
func_02038b28 kind:function(thumb,size=0xc) addr:0x2038b28
func_02038b34 kind:function(arm,size=0xc) addr:0x2038b34
_Z13func_02038b40P22Struct_027E0C68_unk_28 kind:function(arm,size=0x34) addr:0x2038b40
_Z13func_02038b40P31UnkStruct_027E0C68_UnkSubClass1 kind:function(arm,size=0x34) addr:0x2038b40
func_02038b74 kind:function(arm,size=0x4) addr:0x2038b74
func_02038b78 kind:function(arm,size=0xbc) addr:0x2038b78
func_02038c34 kind:function(arm,size=0x84) addr:0x2038c34
@@ -2034,7 +2034,7 @@ func_0203dcb4 kind:function(arm,size=0x48) addr:0x203dcb4
func_0203dcfc kind:function(arm,size=0xf0) addr:0x203dcfc
func_0203ddec kind:function(arm,size=0x10) addr:0x203ddec
func_0203ddfc kind:function(arm,size=0x18) addr:0x203ddfc
_Z13func_0203de14P22Struct_027E0C68_unk_28i kind:function(arm,size=0x10) addr:0x203de14
_Z13func_0203de14P31UnkStruct_027E0C68_UnkSubClass1i kind:function(arm,size=0x10) addr:0x203de14
func_0203de24 kind:function(arm,size=0x34) addr:0x203de24
func_0203de58 kind:function(arm,size=0x208) addr:0x203de58
func_0203e060 kind:function(arm,size=0x30) addr:0x203e060
+9 -9
View File
@@ -1792,14 +1792,14 @@ func_020363c8 kind:function(arm,size=0x74) addr:0x2036384
func_0203643c kind:function(arm,size=0x54) addr:0x20363f8
func_02036490 kind:function(thumb,size=0x1cc) addr:0x203644c
func_0203665c kind:function(thumb,size=0x4c) addr:0x2036618
func_020366a8 kind:function(arm,size=0x1c) addr:0x2036664
func_020366c4 kind:function(arm,size=0x3c) addr:0x2036680
func_02036700 kind:function(arm,size=0x3c) addr:0x20366bc
func_0203673c kind:function(arm,size=0x34) addr:0x20366f8
_ZN18UnkStruct_027E0C68D2Ev kind:function(arm,size=0x1c) addr:0x2036664
_ZN18UnkStruct_027E0C6813func_020366c4Ev kind:function(arm,size=0x3c) addr:0x2036680
_ZN18UnkStruct_027E0C6813func_02036700Ev kind:function(arm,size=0x3c) addr:0x20366bc
_ZN18UnkStruct_027E0C6813func_0203673cEv kind:function(arm,size=0x34) addr:0x20366f8
func_02036770 kind:function(arm,size=0x28) addr:0x203672c
func_02036798 kind:function(arm,size=0x44) addr:0x2036754
func_020367dc kind:function(arm,size=0x10) addr:0x2036798
func_020367ec kind:function(arm,size=0x1c) addr:0x20367a8
_ZN18UnkStruct_027E0C6813func_02036798Ev kind:function(arm,size=0x44) addr:0x2036754
_ZN18UnkStruct_027E0C6813func_020367dcEi kind:function(arm,size=0x10) addr:0x2036798
_ZN18UnkStruct_027E0C6813func_020367ecEv kind:function(arm,size=0x1c) addr:0x20367a8
_ZN18UnkStruct_027E0C6813func_02036808Ev kind:function(arm,size=0x1c) addr:0x20367c4
_ZN18UnkStruct_027E0C6813func_02036824Ev kind:function(arm,size=0x2c) addr:0x20367e0
_ZN18UnkStruct_027E0C6813func_02036850Ev kind:function(arm,size=0x38) addr:0x203680c
@@ -1878,7 +1878,7 @@ func_02038b08 kind:function(thumb,size=0x14) addr:0x2038ac4
func_02038b1c kind:function(thumb,size=0xc) addr:0x2038ad8
func_02038b28 kind:function(thumb,size=0xc) addr:0x2038ae4
func_02038b34 kind:function(arm,size=0xc) addr:0x2038af0
_Z13func_02038b40P22Struct_027E0C68_unk_28 kind:function(arm,size=0x34) addr:0x2038afc
_Z13func_02038b40P31UnkStruct_027E0C68_UnkSubClass1 kind:function(arm,size=0x34) addr:0x2038afc
func_02038b74 kind:function(arm,size=0x4) addr:0x2038b30
func_02038b78 kind:function(arm,size=0xbc) addr:0x2038b34
func_02038c34 kind:function(arm,size=0x84) addr:0x2038bf0
@@ -2034,7 +2034,7 @@ func_0203dcb4 kind:function(arm,size=0x48) addr:0x203dc70
func_0203dcfc kind:function(arm,size=0xf0) addr:0x203dcb8
func_0203ddec kind:function(arm,size=0x10) addr:0x203dda8
func_0203ddfc kind:function(arm,size=0x18) addr:0x203ddb8
_Z13func_0203de14P22Struct_027E0C68_unk_28i kind:function(arm,size=0x10) addr:0x203ddd0
_Z13func_0203de14P31UnkStruct_027E0C68_UnkSubClass1i kind:function(arm,size=0x10) addr:0x203ddd0
func_0203de24 kind:function(arm,size=0x34) addr:0x203dde0
func_0203de58 kind:function(arm,size=0x208) addr:0x203de14
func_0203e060 kind:function(arm,size=0x30) addr:0x203e01c
+12 -2
View File
@@ -3,6 +3,7 @@
#include "global.h"
#include "types.h"
#include "System/SysNew.hpp"
#include "Message/BMG.hpp"
// temp
@@ -36,6 +37,8 @@ public:
/* 0x54 */ unk32 unk_54;
/* 0x58 */ unk32 unk_58;
/* 0x5C */ s16 unk_5C;
/* 0x60 */ unk32 unk_60[0x3D];
/* 0x5C */ s16 unk_15C;
/* 0x00 */ virtual UNK_TYPE vfunc_00(void);
/* 0x04 */ virtual UNK_TYPE vfunc_04(void);
@@ -106,7 +109,7 @@ public:
/* 0x34 */ virtual UNK_TYPE vfunc_34(void);
};
class UnkStruct_027E0C68 {
class UnkStruct_027E0C68 : public SysObject {
private:
/* 0x00 */ unk16 unk_00;
/* 0x02 */ unk16 unk_02;
@@ -121,10 +124,17 @@ private:
/* 0x1C */ UnkStruct_027E0C68_UnkSubClass2* unk_1C;
/* 0x20 */ u32* unk_20;
/* 0x24 */ unk32 unk_24;
/* 0x28 */ UnkStruct_027E0C68_UnkSubClass1* unk_28[6]; // 022172B0
/* 0x28 */ UnkStruct_027E0C68_UnkSubClass1* unk_28[6];
public:
UnkStruct_027E0C68();
~UnkStruct_027E0C68();
UnkStruct_027E0C68_UnkSubClass1* func_020366c4(void);
UnkStruct_027E0C68_UnkSubClass1* func_02036700(void);
UnkStruct_027E0C68_UnkSubClass2* func_0203673c(void);
unk32 func_02036798(void);
bool func_020367dc(int param_2);
bool UnkStruct_027E0C68::func_020367ec(void);
bool func_02036808(void);
bool func_02036824(void);
bool func_02036850(void);
+68 -2
View File
@@ -17,8 +17,72 @@ extern UnkStruct2 data_027e077c;
extern u32 data_ov000_020eec9c[];
extern u8 data_02056be4[];
// non-matching
ARM UnkStruct_027E0C68::~UnkStruct_027E0C68() {}
// non-matching
ARM UnkStruct_027E0C68_UnkSubClass1* UnkStruct_027E0C68::func_020366c4(void) {
if (((data_02056be4[data_027e077c.mUnk_0] & 1) != 0) && ((data_02056be4[data_027e077c.mUnk_0] & 2) == 0)) {
return this->unk_28[2];
}
return this->unk_28[0];
}
// non-matching
ARM UnkStruct_027E0C68_UnkSubClass1* UnkStruct_027E0C68::func_02036700(void) {
if (((data_02056be4[data_027e077c.mUnk_0] & 1) != 0) && ((data_02056be4[data_027e077c.mUnk_0] & 2) == 0)) {
return this->unk_28[0];
}
return this->unk_28[2];
}
ARM UnkStruct_027E0C68_UnkSubClass2* UnkStruct_027E0C68::func_0203673c(void) {
bool iVar1 = this->func_02036824();
bool iVar2 = this->func_02036850();
if (iVar1) {
return this->unk_18;
}
if (iVar2) {
return this->unk_1C;
}
return NULL;
}
ARM unk32 UnkStruct_027E0C68::func_02036798(void) {
unk32 uVar2 = 1;
if (this->unk_04 == 0) {
bool bVar1 = false;
if (this->unk_1C != NULL && (this->unk_1C->unk_18 & 0xFFFF0000) != 0x1000000) {
bVar1 = true;
}
if (!bVar1) {
uVar2 = 0;
}
}
return uVar2;
}
ARM bool UnkStruct_027E0C68::func_020367dc(int param_2) {
return param_2 == 0;
}
ARM bool UnkStruct_027E0C68::func_020367ec(void) {
//! TODO: fake?
return this->unk_28[0]->unk_15C > 0;
}
ARM bool UnkStruct_027E0C68::func_02036808(void) {
return this->unk_28[2]->unk_15[0x2E] > 0;
//! TODO: fake?
return this->unk_28[2]->unk_15C > 0;
}
ARM bool UnkStruct_027E0C68::func_02036824(void) {
@@ -34,6 +98,7 @@ ARM bool UnkStruct_027E0C68::func_02036824(void) {
return false;
}
// non-matching
ARM bool UnkStruct_027E0C68::func_02036850(void) {
bool ret = false;
u8 value;
@@ -52,7 +117,8 @@ ARM void UnkStruct_027E0C68::func_02036888(UnkStruct_027E0C68_UnkSubClass2* para
if ((param_2->unk_18 & 0xFFFF0000) != 0x1000000) {
UnkStruct_027E0C68_UnkSubClass1* iVar1 = this->func_020366c4();
if (iVar1->unk_5C <= 0) {
//! TODO: fake?
if (iVar1->unk_15C <= 0) {
param_2->vfunc_10();
} else {
param_2->vfunc_0C(this->func_020366c4());