Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions config/YFEE01/arm9/overlays/ov000/delinks.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ src/ov000/camera.cpp:
complete
.text start:0x021a4a7c end:0x021a5318

src/ov000/cursor.cpp:
.text start:0x021a68c0 end:0x021a6f10

src/ov000/playerphase.cpp:
.text start:0x021aa210 end:0x021ae2f4

Expand Down
22 changes: 11 additions & 11 deletions config/YFEE01/arm9/overlays/ov000/symbols.txt
Original file line number Diff line number Diff line change
Expand Up @@ -103,17 +103,17 @@ func_ov000_021a5d5c kind:function(arm,size=0x670) addr:0x021a5d5c
func_ov000_021a63cc kind:function(arm,size=0x6c) addr:0x021a63cc
func_ov000_021a6438 kind:function(arm,size=0x3c8) addr:0x021a6438
func_ov000_021a6800 kind:function(arm,size=0xc0) addr:0x021a6800
func_ov000_021a68c0 kind:function(arm,size=0x50) addr:0x021a68c0
func_ov000_021a6910 kind:function(arm,size=0x84) addr:0x021a6910
func_ov000_021a6994 kind:function(arm,size=0x124) addr:0x021a6994
func_ov000_021a6ab8 kind:function(arm,size=0x34) addr:0x021a6ab8
func_ov000_021a6aec kind:function(arm,size=0x60) addr:0x021a6aec
func_ov000_021a6b4c kind:function(arm,size=0x84) addr:0x021a6b4c
func_ov000_021a6bd0 kind:function(arm,size=0x68) addr:0x021a6bd0
func_ov000_021a6c38 kind:function(arm,size=0x110) addr:0x021a6c38
func_ov000_021a6d48 kind:function(arm,size=0x120) addr:0x021a6d48
func_ov000_021a6e68 kind:function(arm,size=0x40) addr:0x021a6e68
func_ov000_021a6ea8 kind:function(arm,size=0x68) addr:0x021a6ea8
_ZN6Cursor4InitEv kind:function(arm,size=0x50) addr:0x021a68c0
_ZN6Cursor6SetPosElll kind:function(arm,size=0x84) addr:0x021a6910
_ZN6Cursor14SetPosAnimatedElllh kind:function(arm,size=0x124) addr:0x021a6994
_ZN6Cursor15SetPosImmediateEss kind:function(arm,size=0x34) addr:0x021a6ab8
_ZN6Cursor14CenterOnCameraEv kind:function(arm,size=0x60) addr:0x021a6aec
_ZN6Cursor9_021a6b4cEll kind:function(arm,size=0x84) addr:0x021a6b4c
_ZN6Cursor9_021a6bd0Ev kind:function(arm,size=0x68) addr:0x021a6bd0
_ZN6Cursor9_021a6c38Ev kind:function(arm,size=0x110) addr:0x021a6c38
_ZN6Cursor9_021a6d48Ev kind:function(arm,size=0x120) addr:0x021a6d48
_ZN6Cursor6UpdateEv kind:function(arm,size=0x40) addr:0x021a6e68
_ZN6Cursor9_021a6ea8El kind:function(arm,size=0x68) addr:0x021a6ea8
func_ov000_021a6f10 kind:function(arm,size=0x6c) addr:0x021a6f10
func_ov000_021a6f7c kind:function(arm,size=0x34) addr:0x021a6f7c
func_ov000_021a6fb0 kind:function(arm,size=0x120) addr:0x021a6fb0
Expand Down
45 changes: 33 additions & 12 deletions include/map.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,8 @@ struct MapStateManager_0C
// +0x18 contains key handlers
STRUCT_PAD(0x00, 0x1C);
u16 unk_1c;
STRUCT_PAD(0x1E, 0x20);
u8 unk_1e;
u8 unk_1f;
u8 unk_20;
u8 unk_21_0 : 2;
u8 unk_21_2 : 1;
Expand All @@ -197,23 +198,43 @@ struct MapStateManager_0C
STRUCT_PAD(0x25, 0x28);
};

class MapStateManager_10
class Cursor
{
public:
/* 00 */ s8 unk_00[2];
/* 02 */ s8 unk_02[2];
/* 04 */ STRUCT_PAD(0x04, 0x08);
/* 08 */ u8 unk_08;
/* 09 */ u8 unk_09;
u8 unk_0a;
u8 unk_0b;
/* 0A */ STRUCT_PAD(0x0C, 0x1A);

void SetUnk00And02(u8 phase, u8 r12, u8 r2)
/* 04 */ s16 xDisplay; // in px
/* 06 */ s16 yDisplay; // in px
/* 08 */ u8 xTile;
/* 09 */ u8 yTile;
/* 0A */ u8 isVisible;
/* 0B */ u8 unk_0b;
/* 0C */ u8 changed;
/* 0D */ u8 soundCooldownTimer;
/* 0E */ u8 unk_0e;
/* 0F */ STRUCT_PAD(0x0F, 0x12);
/* 12 */ s16 xLerpStart;
/* 14 */ s16 yLerpStart;
/* 16 */ u16 lerpDuration;
/* 18 */ u16 lerpElapsed;

inline void SetUnk00And02(u8 phase, u8 r12, u8 r2)
{
this->unk_00[phase] = r12;
this->unk_02[phase] = r2;
}

void Init(void);
void SetPos(s32 x, s32 y, s32);
void SetPosAnimated(s32 x, s32 y, s32, u8);
void SetPosImmediate(s16, s16);
void CenterOnCamera(void);
void _021a6b4c(s32, s32);
void _021a6bd0(void);
void _021a6c38(void);
void _021a6d48(void);
void Update(void);
BOOL _021a6ea8(s32);
};

EC void func_ov000_021b9a1c(struct MapStateManager_14 *);
Expand Down Expand Up @@ -308,11 +329,11 @@ class MapStateManager_1C
class MapStateManager
{
public:
/* 000 */ struct Camera * camera;
/* 000 */ Camera * camera;
/* 004 */ struct MapStateManager_04 * unk_04;
/* 008 */ struct MapStateManager_08 * unk_08;
/* 00C */ struct MapStateManager_0C * unk_0c;
/* 010 */ struct MapStateManager_10 * unk_10;
/* 010 */ Cursor * cursor;
/* 014 */ struct MapStateManager_14 * unk_14;
/* 018 */ void * unk_18;
/* 01C */ struct MapStateManager_1C * unk_1c;
Expand Down
22 changes: 11 additions & 11 deletions include/unknown_funcs.h
Original file line number Diff line number Diff line change
Expand Up @@ -5785,17 +5785,17 @@ EC void func_ov000_021a5d5c(void *, u32);
// EC ??? func_ov000_021a63cc
// EC ??? func_ov000_021a6438
// EC ??? func_ov000_021a6800
// EC ??? func_ov000_021a68c0
// EC ??? func_ov000_021a6910
// EC ??? func_ov000_021a6994
EC void func_ov000_021a6ab8(void *, s32, s32);
EC void func_ov000_021a6aec(void *);
// EC ??? func_ov000_021a6b4c
EC void func_ov000_021a6bd0(void *);
// EC ??? func_ov000_021a6c38
// EC ??? func_ov000_021a6d48
// EC ??? func_ov000_021a6e68
// EC ??? func_ov000_021a6ea8
// EC ??? _ZN6Cursor4InitEv
// EC ??? _ZN6Cursor6SetPosElll
// EC ??? _ZN6Cursor14SetPosAnimatedElllh
// EC void _ZN6Cursor15SetPosImmediateEss(void *, s32, s32);
// EC void _ZN6Cursor14CenterOnCameraEv(void *);
// EC ??? _ZN6Cursor9_021a6b4cEll
// EC void _ZN6Cursor9_021a6bd0Ev(void *);
// EC ??? _ZN6Cursor9_021a6c38Ev
// EC ??? _ZN6Cursor9_021a6d48Ev
// EC ??? _ZN6Cursor6UpdateEv
// EC ??? _ZN6Cursor9_021a6ea8El
// EC ??? func_ov000_021a6f10
// EC ??? func_ov000_021a6f7c
// EC ??? func_ov000_021a6fb0
Expand Down
4 changes: 2 additions & 2 deletions src/gamectrl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -863,7 +863,7 @@ EC void func_0202225c(void)
func_0204b790();

unitId =
gMapStateManager->unk_028[gMapStateManager->unk_10->unk_08 | gMapStateManager->unk_10->unk_09 << 5];
gMapStateManager->unk_028[gMapStateManager->cursor->xTile | gMapStateManager->cursor->yTile << 5];

if (unitId == 0)
{
Expand All @@ -875,7 +875,7 @@ EC void func_0202225c(void)
}

func_0204e1a4(pUnit, 0, 1);
func_0204eab8(gMapStateManager->unk_10->unk_08, gMapStateManager->unk_10->unk_09, 0);
func_0204eab8(gMapStateManager->cursor->xTile, gMapStateManager->cursor->yTile, 0);
func_0204f6d0();

func_0204ad38(data_02196f20->unk_19b, 0, 0);
Expand Down
Loading