diff --git a/config/eur/arm9/symbols.txt b/config/eur/arm9/symbols.txt index f65917f7..b19d6098 100644 --- a/config/eur/arm9/symbols.txt +++ b/config/eur/arm9/symbols.txt @@ -1912,15 +1912,15 @@ _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub1C2Ev kind:function(thumb,size=0x244) ad _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub1C1Ev kind:function(thumb,size=0x244) addr:0x20397f8 _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub113func_02039a3cEv kind:function(thumb,size=0x20) addr:0x2039a3c _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_2CEv kind:function(arm,size=0x24c) addr:0x2039a5c -func_02039ca8 kind:function(arm,size=0x24) addr:0x2039ca8 +_ZN36UnkStruct_027E0C68_UnkSubClass1_Sub113func_02039ca8Ev kind:function(arm,size=0x24) addr:0x2039ca8 _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_3CEi kind:function(arm,size=0xa8) addr:0x2039ccc _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_40Eii kind:function(arm,size=0x414) addr:0x2039d74 func_0203a188 kind:function(arm,size=0x138) addr:0x203a188 -func_0203a2c0 kind:function(arm,size=0x4c) addr:0x203a2c0 -func_0203a30c kind:function(arm,size=0x1c) addr:0x203a30c +_ZN36UnkStruct_027E0C68_UnkSubClass1_Sub113func_0203a2c0Ev kind:function(arm,size=0x4c) addr:0x203a2c0 +_ZN36UnkStruct_027E0C68_UnkSubClass1_Sub113func_0203a30cEv kind:function(arm,size=0x1c) addr:0x203a30c _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_48Ev kind:function(arm,size=0x34) addr:0x203a328 func_0203a35c kind:function(arm,size=0x84) addr:0x203a35c -func_0203a3e0 kind:function(arm,size=0x1c) addr:0x203a3e0 +_ZN36UnkStruct_027E0C68_UnkSubClass1_Sub113func_0203a3e0Ev kind:function(arm,size=0x1c) addr:0x203a3e0 _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_44Eii kind:function(arm,size=0x2d4) addr:0x203a3fc func_0203a6d0 kind:function(arm,size=0x120) addr:0x203a6d0 _ZN36UnkStruct_027E0C68_UnkSubClass1_Sub18vfunc_50EP9EntryINF1jPsi kind:function(arm,size=0x198) addr:0x203a7f0 diff --git a/include/Message/UnkStruct_027E0C68_UnkSubClass1.hpp b/include/Message/UnkStruct_027E0C68_UnkSubClass1.hpp index aeea5f11..c457ff32 100644 --- a/include/Message/UnkStruct_027E0C68_UnkSubClass1.hpp +++ b/include/Message/UnkStruct_027E0C68_UnkSubClass1.hpp @@ -355,7 +355,7 @@ public: /* 0x144 */ unk32 unk_144; /* 0x148 */ unk32 unk_148; /* 0x14C */ unk32 unk_14C; - /* 0x150 */ unk8 unk_150[4]; + /* 0x150 */ u8 unk_150[4]; /* 0x154 */ UnkSubClass1_unk_154* unk_154; /* 0x158 */ unk16 unk_158; /* 0x15A */ unk16 unk_15A; @@ -420,8 +420,6 @@ public: void func_02039398(void); void func_020393a8(unk32 param_2); void func_0203a188(unk32, unk32); - unk32 func_0203a2c0(void); - unk32 func_0203a30c(void); void func_0203a35c(void); unk32 func_0203a3e0(void); unk32 func_0203a6d0(unk32, unk32); @@ -456,7 +454,7 @@ public: class UnkStruct_027E0C68_UnkSubClass1_Sub1 : public UnkStruct_027E0C68_UnkSubClass1_Base { public: - /* 0x164 */ UnkStruct_027E0C68_UnkSubClass1_Base* unk_164; + /* 0x164 */ UnkStruct_027E0C68_UnkSubClass1_Sub1* unk_164; /* 0x168 */ UnkSubClass1_UnkownClass1 unk_168; /* 0x1F0 */ UnkSubClass1_UnkownClass1 unk_1F0; /* 0x278 */ UnkSubClass1_UnkownClass1 unk_278; @@ -495,8 +493,7 @@ public: /* 0x55C */ unk8 unk_55B; /* 0x55C */ unk32 unk_55C; /* 0x560 */ unk32 unk_560; - /* 0x564 */ unk32 unk_564; - /* 0x568 */ unk32 unk_568; + /* 0x564 */ u16 unk_564[4]; /* 0x56C */ unk16 unk_56C; /* 0x56E */ unk16 unk_56E; /* 0x570 */ unk16 unk_570; @@ -557,7 +554,12 @@ public: void func_0203e060(u8 param_2, u8 param_3); void func_02039a3c(void); + unk32 func_02038b78(void); + unk32 func_02039250(void); void func_02039ca8(void); + bool func_0203a2c0(void); + unk32 func_0203a30c(void); + bool func_0203a3e0(void); }; class UnkStruct_027E0C68_UnkSubClass1_Sub2 : public UnkStruct_027E0C68_UnkSubClass1_Base { diff --git a/src/Main/Message/func_020397f8.cpp b/src/Main/Message/func_020397f8.cpp index a54af5f1..e9f32362 100644 --- a/src/Main/Message/func_020397f8.cpp +++ b/src/Main/Message/func_020397f8.cpp @@ -158,6 +158,27 @@ ARM void UnkStruct_027E0C68_UnkSubClass1_Sub1::vfunc_2C(void) { } } +ARM void UnkStruct_027E0C68_UnkSubClass1_Sub1::func_02039ca8(void) { + s32 i; + + for (i = 0; i < ARRAY_LEN(this->unk_564); i++) { + this->unk_564[i] = 0x1A; + } +} + +// non-matching +ARM bool UnkStruct_027E0C68_UnkSubClass1_Sub1::func_0203a2c0(void) { + if ((this->unk_150[1] != 1 && this->unk_150[1] != 2) && (this->func_02039250() != 0 && this->func_02038b78() != 0)) { + return true; + } + + return false; +} + +ARM unk32 UnkStruct_027E0C68_UnkSubClass1_Sub1::func_0203a30c(void) { + return func_01ff9b88(this->unk_574, this->unk_154->unk_06); +} + ARM void UnkStruct_027E0C68_UnkSubClass1_Sub1::vfunc_3C(unk32 param_2) { if (this->unk_15C > 0 && this->func_0203de14(param_2) != 0) { if (this->unk_124->unk_29 != 3) { @@ -292,6 +313,10 @@ ARM void UnkStruct_027E0C68_UnkSubClass1_Sub1::vfunc_48(void) { this->unk_410.func_0203ec34(); } +ARM bool UnkStruct_027E0C68_UnkSubClass1_Sub1::func_0203a3e0(void) { + return this->unk_164->unk_168.unk_06 > 0; +} + // non-matching ARM void UnkStruct_027E0C68_UnkSubClass1_Sub1::vfunc_44(s32 touchLastX, s32 touchLastY) { unk32 iVar2;