diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 398a48be..3323a223 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -520,7 +520,7 @@ _ZN10MapManager18func_ov00_020826a0Eiii kind:function(arm,size=0x20) addr:0x2082 _ZN10MapManager9CreateMapEiii kind:function(arm,size=0x100) addr:0x20826c0 _ZN10MapManager10DestroyMapEv kind:function(arm,size=0x30) addr:0x20827c0 _ZN10MapManager16MapData_vfunc_44Ev kind:function(arm,size=0x18) addr:0x20827f0 -_ZN10MapManager18func_ov00_02082808Eiii kind:function(arm,size=0xb8) addr:0x2082808 +_ZN10MapManager18func_ov00_02082808Ei kind:function(arm,size=0xb8) addr:0x2082808 _ZN10MapManager16MapData_vfunc_7cEv kind:function(arm,size=0x20) addr:0x20828c0 _ZN10MapManager16MapData_vfunc_84Ei kind:function(arm,size=0x18) addr:0x20828e0 _ZN10MapManager18func_ov00_020828f8EPi kind:function(arm,size=0x10) addr:0x20828f8 @@ -861,7 +861,7 @@ func_ov000_0208cb84 kind:function(arm,size=0x4c) addr:0x208cb84 func_ov000_0208cbd0 kind:function(arm,size=0x84) addr:0x208cbd0 func_ov000_0208cc54 kind:function(arm,size=0x10) addr:0x208cc54 func_ov000_0208cc64 kind:function(arm,size=0x24) addr:0x208cc64 -func_ov000_0208cc88 kind:function(arm,size=0x54) addr:0x208cc88 +_Z19func_ov000_0208cc88Pi kind:function(arm,size=0x54) addr:0x208cc88 func_ov000_0208ccdc kind:function(arm,size=0x10) addr:0x208ccdc func_ov000_0208ccec kind:function(arm,size=0x10) addr:0x208ccec func_ov000_0208ccfc kind:function(arm,size=0x10) addr:0x208ccfc diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index eb21ced8..45d10fa7 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -520,7 +520,7 @@ _ZN10MapManager18func_ov00_020826a0Eiii kind:function(arm,size=0x20) addr:0x2082 _ZN10MapManager9CreateMapEiii kind:function(arm,size=0x100) addr:0x2082660 _ZN10MapManager10DestroyMapEv kind:function(arm,size=0x30) addr:0x2082760 _ZN10MapManager16MapData_vfunc_44Ev kind:function(arm,size=0x18) addr:0x2082790 -_ZN10MapManager18func_ov00_02082808Eiii kind:function(arm,size=0xb8) addr:0x20827a8 +_ZN10MapManager18func_ov00_02082808Ei kind:function(arm,size=0xb8) addr:0x20827a8 _ZN10MapManager16MapData_vfunc_7cEv kind:function(arm,size=0x20) addr:0x2082860 _ZN10MapManager16MapData_vfunc_84Ei kind:function(arm,size=0x18) addr:0x2082880 _ZN10MapManager18func_ov00_020828f8EPi kind:function(arm,size=0x10) addr:0x2082898 @@ -861,7 +861,7 @@ func_ov000_0208cb84 kind:function(arm,size=0x4c) addr:0x208cb24 func_ov000_0208cbd0 kind:function(arm,size=0x84) addr:0x208cb70 func_ov000_0208cc54 kind:function(arm,size=0x10) addr:0x208cbf4 func_ov000_0208cc64 kind:function(arm,size=0x24) addr:0x208cc04 -func_ov000_0208cc88 kind:function(arm,size=0x54) addr:0x208cc28 +_Z19func_ov000_0208cc88Pi kind:function(arm,size=0x54) addr:0x208cc28 func_ov000_0208ccdc kind:function(arm,size=0x10) addr:0x208cc7c func_ov000_0208ccec kind:function(arm,size=0x10) addr:0x208cc8c func_ov000_0208ccfc kind:function(arm,size=0x10) addr:0x208cc9c diff --git a/include/Map/Course.hpp b/include/Map/Course.hpp index e1aa4210..9ca6c5b5 100644 --- a/include/Map/Course.hpp +++ b/include/Map/Course.hpp @@ -35,7 +35,7 @@ public: /* 01c */ Vec2b mCurrMapPos; // position in the map grid /* 01e */ unk8 mUnk_01e; /* 01f */ unk8 mUnk_01f; - /* 020 */ unk8 mMapGrid[10][10]; + /* 020 */ u8 mMapGrid[10][10]; /* 084 */ Vec2b mMainGrid; // part of the grid where you can walk off screen to another map /* 086 */ Vec2b mMainGridSize; /* 088 */ s32 mScreenMapOffsetX; @@ -44,7 +44,7 @@ public: /* 094 */ unk32 mUnk_094; /* 098 */ AABB mBounds; /* 0b0 */ u8 mNumMaps; - /* 0b1 */ unk8 mUnk_0b1; + /* 0b1 */ u8 mUnk_0b1; /* 0b2 */ unk8 mUnk_0b2; /* 0b3 */ unk8 mUnk_0b3; /* 0b4 */ unk32 mUnk_0b4; diff --git a/include/Map/MapManager.hpp b/include/Map/MapManager.hpp index ac0168eb..fa468d1e 100644 --- a/include/Map/MapManager.hpp +++ b/include/Map/MapManager.hpp @@ -72,7 +72,7 @@ public: void CreateMap(unk32 mapType, unk32 param_3, unk32 param_4); void DestroyMap(); void MapData_vfunc_44(); - void func_ov00_02082808(s32 param_2, unk32 param_3, unk32 param_4); + void func_ov00_02082808(s32 param_2); void MapData_vfunc_7c(); void MapData_vfunc_84(unk32 param_2); bool func_ov00_020828f8(s32 *param_2); @@ -85,7 +85,7 @@ public: u8 func_ov00_02082d08(); u8 GetCurrentMapPosX(); u8 GetCurrentMapPosY(); - unk8 func_ov00_02082d40(); + u8 func_ov00_02082d40(); u32 func_ov00_02082d74(unk32 param_2); void func_ov00_02082d84(unk8 *param_2, s32 *param_3, s32 *param_4); bool func_ov00_02082e1c(s32 *param_2, s32 *param_3); diff --git a/src/00_Core/Map/MapManager.cpp b/src/00_Core/Map/MapManager.cpp index 683c37a3..feb89ddf 100644 --- a/src/00_Core/Map/MapManager.cpp +++ b/src/00_Core/Map/MapManager.cpp @@ -3,6 +3,10 @@ #include "Actor/ActorManager.hpp" #include "Player/PlayerBase.hpp" +extern void func_ov000_0208cc88(s32 *param1); + +extern s32 *data_027e0f68; + ARM void MapManager::GetCourseDungeonProgress(CourseProgress *param_2) { this->mCourse->GetDungeonProgress(param_2); } @@ -300,7 +304,7 @@ ARM void MapManager::MapData_vfunc_44() { this->mMap->vfunc_44(); } -ARM void MapManager::func_ov00_02082808(s32 param_2, unk32 param_3, unk32 param_4) { +ARM void MapManager::func_ov00_02082808(s32 param_2) { // How to define PTR_027e0d38 ? // if (*(int*)(*(int*)PTR_027e0d38 + 0x14) == 1) { // return; @@ -312,13 +316,13 @@ ARM void MapManager::func_ov00_02082808(s32 param_2, unk32 param_3, unk32 param_ if (var1 == var2) { return; } - // func_ov00_020d70a4(DWORD_overlay_d_0_bss__020eec68, var1, 0, 0x7f, param_4); // And these? + // func_ov00_020d70a4(DWORD_overlay_d_0_bss__020eec68, var1, 0, 0x7f, param_3); // And these? } else { // var2 = func_ov00_020a5e9c(*(s32 *) PTR_027e0d38 + 0xc); if (var2 == 0) { // func_ov015_021849a4(DWORD_overlay_d_15_bss__02190458); } - // func_ov00_020a5e9c(DWORD_overlay_d_0_bss__020eec68, var1, 0, 0x7f, param_4); + // func_ov00_020a5e9c(DWORD_overlay_d_0_bss__020eec68, var1, 0, 0x7f, param_3); } // var1 = func_ov00_020a5e9c(*(s32 *) PTR_027e0d38 + 0xc); if (var1 == 0) { @@ -427,9 +431,9 @@ ARM unk32 *MapManager::func_ov00_02082adc() { } ARM void MapManager::func_ov00_02082af4() { - // func_ov00_02082af4(DWORD_027e0f68) // Does not exist. + func_ov000_0208cc88(data_027e0f68); this->mMap->vfunc_48(); - // this->func_ov00_02082808(0, ?, ?) // Only 1/3 params specified. + this->func_ov00_02082808(0); this->mUnk_0a = 1; this->mUnk_0b = 0; } @@ -492,7 +496,7 @@ ARM u8 MapManager::GetCurrentMapPosY() { return this->mCourse->mCurrMapPos.y; } -ARM unk8 MapManager::func_ov00_02082d40() { +ARM u8 MapManager::func_ov00_02082d40() { if (this->mCourse->mType == CourseType_Sea) { return this->mCourse->mMapGrid[(u8) this->mCourse->mCurrMapPos.x][(u8) this->mCourse->mCurrMapPos.y]; }