diff options
| author | Aetias <aetias@outlook.com> | 2025-01-18 09:44:01 +0100 |
|---|---|---|
| committer | Aetias <aetias@outlook.com> | 2025-01-18 09:44:01 +0100 |
| commit | 13108e3ae4e95a4a9a547a3074852099d299a6b9 (patch) | |
| tree | 21f3ce5b19514780bad5c1451718b4367f6fa47c /include | |
| parent | 48bbd8bb7f008ac913cabb6f7faf4a47ad86878b (diff) | |
Move ARM9 Main documentation from Ghidra
Diffstat (limited to 'include')
| -rw-r--r-- | include/DTCM/UnkStruct_027e05f8.hpp | 17 | ||||
| -rw-r--r-- | include/DTCM/UnkStruct_027e077c.hpp | 11 | ||||
| -rw-r--r-- | include/DTCM/UnkStruct_027e0fe0.hpp | 13 | ||||
| -rw-r--r-- | include/Debug/DebugHierarchyBase.hpp | 21 | ||||
| -rw-r--r-- | include/Debug/DebugHierarchyChild.hpp | 11 | ||||
| -rw-r--r-- | include/Debug/DebugHierarchyNode.hpp | 19 | ||||
| -rw-r--r-- | include/Render/FadeControl.hpp | 30 | ||||
| -rw-r--r-- | include/Render/FadeController.hpp | 33 | ||||
| -rw-r--r-- | include/System/OverlayManager.hpp | 5 | ||||
| -rw-r--r-- | include/System/SysNew.hpp | 13 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_0202e1a0.hpp | 24 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_02032f0c.hpp | 77 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_02035064.hpp | 44 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_02037750.hpp | 53 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_02038aa0.hpp | 88 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_020397f8.hpp | 96 | ||||
| -rw-r--r-- | include/Unknown/UnkStruct_0203dae0.hpp | 49 | ||||
| -rw-r--r-- | include/lib/math.h | 2 |
18 files changed, 603 insertions, 3 deletions
diff --git a/include/DTCM/UnkStruct_027e05f8.hpp b/include/DTCM/UnkStruct_027e05f8.hpp new file mode 100644 index 00000000..43e83540 --- /dev/null +++ b/include/DTCM/UnkStruct_027e05f8.hpp @@ -0,0 +1,17 @@ +#pragma once + +#include "global.h" +#include "types.h" + +struct UnkStruct_027e05f8 { + // TODO: Add fields + + void func_0202adf4(unk32 param1, s32 param2); + ~UnkStruct_027e05f8(); + + // Big gap to next TU + UnkStruct_027e05f8(); + void func_02037458(u16 param1); + void func_02037480(); + static unk32 func_02037490(unk32 param1); +}; diff --git a/include/DTCM/UnkStruct_027e077c.hpp b/include/DTCM/UnkStruct_027e077c.hpp new file mode 100644 index 00000000..3adda2bc --- /dev/null +++ b/include/DTCM/UnkStruct_027e077c.hpp @@ -0,0 +1,11 @@ +#pragma once + +#include "global.h" +#include "types.h" + +struct UnkStruct_027e077c { + // TODO: Add fields + + UnkStruct_027e077c(unk32 param1); + bool func_0202e740(unk32 param1); +}; diff --git a/include/DTCM/UnkStruct_027e0fe0.hpp b/include/DTCM/UnkStruct_027e0fe0.hpp new file mode 100644 index 00000000..906a0e87 --- /dev/null +++ b/include/DTCM/UnkStruct_027e0fe0.hpp @@ -0,0 +1,13 @@ +#pragma once + +#include "global.h" +#include "types.h" + +struct UnkStruct_027e0fe0 { + // TODO: Add fields + + void Init(); + void Dispose(); + void func_0202ea50(unk32 param1, unk32 param2, unk32 param3); + void func_0202ea98(); +}; diff --git a/include/Debug/DebugHierarchyBase.hpp b/include/Debug/DebugHierarchyBase.hpp index 718ce1eb..7ce7a2fc 100644 --- a/include/Debug/DebugHierarchyBase.hpp +++ b/include/Debug/DebugHierarchyBase.hpp @@ -3,10 +3,31 @@ #include "global.h" #include "types.h" +#include "Debug/DebugHierarchyNode.hpp" #include "System/SysNew.hpp" class DebugHierarchyBase : public SysObject { /* 00 (vtable) */ /* 04 */ void *mNodes; /* 08 */ + + /* 00 */ virtual ~DebugHierarchyBase(); + /* 08 */ virtual void vfunc_08(); + /* 0c */ virtual void vfunc_0c(); + /* 10 */ virtual void vfunc_10(); + /* 14 */ virtual void vfunc_14(); + /* 18 */ virtual void vfunc_18(); + /* 1c */ virtual void vfunc_1c(); + /* 20 */ virtual void vfunc_20(); + /* 24 */ virtual void vfunc_24(); + /* 28 */ virtual void vfunc_28(); + /* 2c */ virtual void vfunc_2c(); + /* 30 */ virtual void vfunc_30(); + /* 34 */ virtual bool GetChildNode(unk32 param1, const char *description, u32 parent, s32 *param4); + /* 38 */ virtual void vfunc_38(); + /* 3c */ virtual void vfunc_3c(); + /* 40 */ + + DebugHierarchyBase(); + DebugHierarchyNode *FindNode(u32 id); }; diff --git a/include/Debug/DebugHierarchyChild.hpp b/include/Debug/DebugHierarchyChild.hpp new file mode 100644 index 00000000..c095fae2 --- /dev/null +++ b/include/Debug/DebugHierarchyChild.hpp @@ -0,0 +1,11 @@ +#pragma once + +#include "global.h" +#include "types.h" + +class DebugHierarchyChild { +public: + /* 00 */ char mUnk_00[0xc]; + /* 0c */ s32 mUnk_0c; + /* 10 */ +}; diff --git a/include/Debug/DebugHierarchyNode.hpp b/include/Debug/DebugHierarchyNode.hpp new file mode 100644 index 00000000..057d1946 --- /dev/null +++ b/include/Debug/DebugHierarchyNode.hpp @@ -0,0 +1,19 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Debug/DebugHierarchyChild.hpp" + +class DebugHierarchyNode { +public: + /* 00 */ u32 mNodeId; + /* 04 */ u32 mUnk_04; + /* 08 */ u32 mUnk_08; + /* 0c */ unk8 mUnk_0c[0x4]; + /* 10 */ u32 mId; + /* 14 */ s32 mUnk_14; + /* 18 */ unk8 mUnk_18[0x8]; + /* 20 */ DebugHierarchyChild mChildren; + /* 30 */ +}; diff --git a/include/Render/FadeControl.hpp b/include/Render/FadeControl.hpp index 805cbcb7..8e9697ef 100644 --- a/include/Render/FadeControl.hpp +++ b/include/Render/FadeControl.hpp @@ -1,3 +1,31 @@ #pragma once -struct FadeControl; +#include "global.h" +#include "types.h" + +struct FadeControl { + /* 00 */ unk32 mState; + /* 04 */ unk32 mUnk_04; + /* 08 */ s32 mCurrentBright; + /* 0c */ s32 mBrightA; + /* 10 */ s32 mBrightB; + /* 14 */ unk16 mCurrentFadeLength; + /* 16 */ unk16 mUnk_16; + /* 18 */ u16 mUnk_18; + /* 1a */ u16 mFadeLength; + /* 1c */ unk32 mFadeTimer; + /* 20 */ bool mUnk_20; + /* 20 */ bool mUnk_21; + /* 20 */ bool mUnk_22; + /* 23 */ unk8 mUnk_23; + /* 24 */ + + void Register(); + void Unregister(); + FadeControl(); + void func_0202aba8(s32 fadeLength, unk32 param2, unk32 newState); + bool func_0202abdc(s32 fadeLength, unk32 param2); + bool func_0202abf4(s32 fadeLength, unk32 param2); + bool func_0202ac0c(s32 currentFadeLength, u16 param2, s32 fadeLength, unk32 param4); + void UpdateFade(s32 speed); +}; diff --git a/include/Render/FadeController.hpp b/include/Render/FadeController.hpp new file mode 100644 index 00000000..59a17e48 --- /dev/null +++ b/include/Render/FadeController.hpp @@ -0,0 +1,33 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Render/FadeControl.hpp" + +#define FADE_CONTROL_COUNT 16 + +struct FadeControlEntry { + /* 0 */ FadeControl *mControl; + /* 4 */ unk32 mUnk_4; + /* 8 */ unk32 mUnk_8; + /* c */ +}; + +struct FadeController { + /* 00 */ s32 mLength; + /* 04 */ FadeControl (*mList)[FADE_CONTROL_COUNT]; + /* 44 */ FadeControl *mCurrent; + /* 48 */ + + bool Has(FadeControl *control); + static bool Contains(FadeControlEntry *needle, s32 length, FadeControl **haystack); + bool AddIfAbsent(FadeControl *control, unk32 param2, unk32 param3); + static bool Add(FadeControlEntry *entry, s32 maxLength, s32 *length, FadeControl **list, bool allowDuplicates); + void RemoveFadeControl(FadeControl *control); + static bool Remove(FadeControlEntry *entry, s32 *length, FadeControl **list); + bool func_0202d77c(FadeControl *control); + bool func_0202d7ac(); + void ProcessFade(s32 param1); + void SetScreenBrightness(s32 param1); +}; diff --git a/include/System/OverlayManager.hpp b/include/System/OverlayManager.hpp index 4ac727a1..636208fc 100644 --- a/include/System/OverlayManager.hpp +++ b/include/System/OverlayManager.hpp @@ -92,9 +92,12 @@ class OverlayManager { public: OverlayId mLoadedOverlays[OverlayIndex_COUNT]; - void Unload(OverlayIndex index); void Load(OverlayIndex index, OverlayId id); void LoadIfNotLoaded(OverlayIndex index, OverlayId id); + void Unload(OverlayIndex index); + void LoadOverlaySetup(s32 index); + void UnloadOverlaySetup(); + void LoadEquipItem(ItemFlag equipId); }; diff --git a/include/System/SysNew.hpp b/include/System/SysNew.hpp index 78f3b290..7e9b0cd8 100644 --- a/include/System/SysNew.hpp +++ b/include/System/SysNew.hpp @@ -2,8 +2,21 @@ #include "types.h"
+struct UnkStruct_0202e894 {
+ /* 00 */ u32 mId;
+ /* 04 */ unk8 mUnk_04[0x28];
+ /* 2c */
+};
+
+void *SysNew(UnkStruct_0202e894 *param1, s32 length, s32 param3);
+void SysDelete(void *ptr);
+void *func_0202e99c(s32 length);
+void *func_0202e9bc(s32 length);
+
class SysObject {
public:
static void *operator new(unsigned long length, u32 *id, u32 idLength);
+ static void *operator new[](unsigned long length, u32 *id, u32 idLength);
static void operator delete(void *ptr);
+ static void operator delete[](void *ptr);
};
diff --git a/include/Unknown/UnkStruct_0202e1a0.hpp b/include/Unknown/UnkStruct_0202e1a0.hpp new file mode 100644 index 00000000..a99956bc --- /dev/null +++ b/include/Unknown/UnkStruct_0202e1a0.hpp @@ -0,0 +1,24 @@ +#pragma once + +#include "global.h" +#include "types.h" + +struct UnkStruct_0202e1a0 { + /* 00 */ unk16 mUnk_00; + /* 02 */ unk16 mUnk_02; + /* 04 */ s32 mUnk_04; + /* 08 */ u32 mUnk_08; + /* 0c */ s32 mUnk_0c; + /* 10 */ s32 mUnk_10; + /* 14 */ s32 mUnk_14; + /* 18 */ + + UnkStruct_0202e1a0(); + void func_0202e1c4(); + void func_0202e1e8(); + bool func_0202e310(s32 param1); + unk32 func_0202e544(); + unk32 func_0202e58c(); + void func_0202e5cc(); + void func_0202e670(); +}; diff --git a/include/Unknown/UnkStruct_02032f0c.hpp b/include/Unknown/UnkStruct_02032f0c.hpp new file mode 100644 index 00000000..f0e59367 --- /dev/null +++ b/include/Unknown/UnkStruct_02032f0c.hpp @@ -0,0 +1,77 @@ +#pragma once + +#include "global.h" +#include "types.h" + +class UnkStruct_02032e7c { +public: + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ unk16 mUnk_08; + /* 0a */ unk16 mUnk_0a; + /* 0c */ unk16 mUnk_0c; + /* 0e */ unk16 mUnk_0e; + /* 10 */ unk32 mUnk_10; + /* 14 */ + + /* 0 */ virtual ~UnkStruct_02032e7c(); + /* 8 */ + + UnkStruct_02032e7c(); +}; + +class UnkStruct_02032f0c { + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ unk32 mUnk_08; + /* 0c */ u16 *mUnk_0c; + /* 10 */ unk32 mUnk_10[6]; + /* 28 */ unk32 mUnk_28; + /* 2c */ s32 **mUnk_2c; + /* 30 */ s32 mUnk_30; + /* 34 */ s32 mUnk_34; + /* 38 */ unk32 mUnk_38; + /* 3c */ unk16 mUnk_3c; + /* 3e */ unk16 mUnk_3e[6]; + /* 4a */ u16 mUnk_4a; + /* 4c */ u8 mUnk_4c; + /* 4d */ bool mUnk_4d; + /* 4e */ u8 mUnk_4e; + /* 4f */ u8 mUnk_4f; + /* 50 */ u8 mUnk_50; + /* 51 */ u8 mUnk_51; + /* 52 */ + + /* 00 */ virtual ~UnkStruct_02032f0c(); + /* 08 */ virtual void vfunc_08(s32 param1, unk32 param2, s16 *param3, unk32 param4); + /* 0c */ virtual void vfunc_0c(unk32 param1, unk32 param2, unk32 param3, unk32 param4); + /* 10 */ virtual void vfunc_10(u32 param1, unk32 param2); + /* 14 */ virtual bool vfunc_14(s32 param1, s32 param2); + /* 18 */ virtual unk32 vfunc_18(s32 param1); + /* 1c */ virtual unk32 vfunc_1c(s32 param1, unk32 *param2, unk32 param3, unk32 param4); + /* 20 */ virtual unk32 vfunc_20(s32 param1, s32 *param2); + /* 24 */ virtual bool vfunc_24(s16 **param1); + /* 28 */ + + UnkStruct_02032f0c(); + void func_02032f94(); + u16 **SetUnk_0c(u16 *value); + u8 func_02032fa4(); + s32 func_02032fb4(); + void func_02033214(unk32 param1, unk32 param2, unk32 param3, u8 param4, unk32 param5); + void func_020334b4(u32 param1, s32 param2, s32 param3, s32 param4); + void func_02033628(unk32 param1, u16 *param2); + u32 func_0203369c(u16 *param1, s32 param2); + void func_02033780(s32 param1); + s32 func_020337d8(s32 param1); + s32 func_020337fc(s16 *param1, s32 param2); + void func_020338a8(s32 param1, unk32 param2); + void func_020338d0(unk32 *param1, unk32 param2); + s32 func_02033904(unk32 param1, unk32 param2); + s32 func_02033938(unk32 param1); + s32 func_0203396c(u16 *param1); + u16 *func_02033b0c(s32 param1); + bool func_02033c6c(); + unk32 func_02033c88(u32 param1); + s32 func_02033cbc(s16 *param1); +}; diff --git a/include/Unknown/UnkStruct_02035064.hpp b/include/Unknown/UnkStruct_02035064.hpp new file mode 100644 index 00000000..69011e21 --- /dev/null +++ b/include/Unknown/UnkStruct_02035064.hpp @@ -0,0 +1,44 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Unknown/UnkStruct_0202e1a0.hpp" + +class UnkStruct_02035064 { +public: + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ unk8 mUnk_08[0xc]; + /* 14 */ u32 mUnk_14; + /* 18 */ unk8 mUnk_18[0x4]; + /* 1c */ unk32 mUnk_1c; + /* 20 */ u32 mUnk_20; + /* 24 */ unk8 mUnk_24[0x28]; + /* 4c */ s16 mUnk_4c; + /* 4e */ s16 mUnk_4e; + /* 50 */ unk8 mUnk_50[0xc]; + /* 5c */ UnkStruct_0202e1a0 mUnk_5c; + /* 74 */ u16 *mUnk_74; + /* 78 */ s32 mUnk_78; + /* 7c */ u32 mUnk_7c; + /* 80 */ u16 mUnk_80; + /* 82 */ unk16 mUnk_82; + /* 84 */ unk16 mUnk_84; + /* 86 */ bool mUnk_86; + /* 87 */ unk8 mUnk_87; + /* 88 */ + + /* 0 */ virtual s32 vfunc_0(); + /* 4 */ virtual s32 vfunc_4(); + /* 8 */ + + UnkStruct_02035064(); + ~UnkStruct_02035064(); + + void func_020350b0(); + void func_020350b4(s32 param1, unk32 param2, unk8 param3, unk16 param4, unk16 param5); + void func_0203516c(); + void func_020351b8(bool param1, bool param2, bool param3, bool param4); + void func_020352d8(); +}; diff --git a/include/Unknown/UnkStruct_02037750.hpp b/include/Unknown/UnkStruct_02037750.hpp new file mode 100644 index 00000000..5fe84a89 --- /dev/null +++ b/include/Unknown/UnkStruct_02037750.hpp @@ -0,0 +1,53 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Player/LinkStateInteract.hpp" + +class UnkStruct_02037750 { +public: + /* 00 (vtable) */ + /* 04 */ unk32 mUnk_04[0x4]; + /* 14 */ unk32 mUnk_14; + /* 18 */ unk32 mUnk_18; + /* 1c */ u8 mUnk_1c; + /* 1d */ unk8 mUnk_1d; + /* 1e */ u16 mUnk_1e; + /* 20 */ + + /* 00 */ virtual ~UnkStruct_02037750(); + /* 08 */ virtual void vfunc_08(unk32 param1); + /* 0c */ virtual void vfunc_0c(s32 param1); + /* 10 */ virtual void vfunc_10(); + /* 14 */ virtual void vfunc_14(); + /* 18 */ virtual void vfunc_18(); + /* 1c */ virtual unk32 vfunc_1c(); + /* 20 */ virtual void vfunc_20(); + /* 24 */ virtual void vfunc_24(unk32 param1); + /* 28 */ virtual void vfunc_28(s32 param1); + /* 2c */ virtual unk32 vfunc_2c(s32 param1); + /* 30 */ virtual unk32 vfunc_30(); + /* 34 */ + + UnkStruct_02037750(unk32 param1, unk32 param2); + LinkStateInteract *GetLinkStateInteract(); + void func_020385d0(s32 param1, unk32 *param2); +}; + +class UnkStruct_020386d8 : public UnkStruct_02037750 { +public: + /* 00 (base) */ + /* 20 */ unk8 mUnk_20; + /* 21 */ unk8 mUnk_21[0x3]; + /* 24 */ unk32 mUnk_24; + /* 28 */ + + UnkStruct_020386d8(); + /* 00 */ virtual ~UnkStruct_020386d8(); + /* 08 */ virtual void vfunc_08(unk32 param1); + /* 24 */ virtual void vfunc_24(unk32 param1); + /* 28 */ virtual void vfunc_28(); + /* 30 */ virtual unk32 vfunc_30(); + /* 34 */ +}; diff --git a/include/Unknown/UnkStruct_02038aa0.hpp b/include/Unknown/UnkStruct_02038aa0.hpp new file mode 100644 index 00000000..1053b7ef --- /dev/null +++ b/include/Unknown/UnkStruct_02038aa0.hpp @@ -0,0 +1,88 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Unknown/UnkStruct_0203dae0.hpp" + +class UnkStruct_02038aa0; + +class UnkStruct_0203881c : public UnkStruct_02032e7c { +public: + /* 00 (base) */ + /* 14 */ unk32 mUnk_14; + /* 18 */ unk32 mUnk_18; + /* 1c */ unk32 mUnk_1c; + /* 20 */ unk32 mUnk_20; + /* 24 */ unk32 mUnk_24; + /* 28 */ + + /* 0 */ virtual ~UnkStruct_0203881c(); + /* 8 */ + + UnkStruct_0203881c(); + void func_02038858(unk32 param1); + void func_02038888(); + void func_02038950(UnkStruct_02038aa0 *param1, s32 param2); + void func_02038a80(s32 param1); +}; + +class UnkStruct_02038aa0 : public UnkStruct_0203dae0 { +public: + /* 000 (base) */ + /* 123 */ unk8 mUnk_123; + /* 124 */ unk32 mUnk_124; + /* 128 */ unk32 mUnk_128; + /* 12c */ unk32 mUnk_12c; + /* 130 */ unk8 mUnk_130[0x20]; + /* 150 */ unk8 mUnk_150; + /* 151 */ unk8 mUnk_151; + /* 152 */ unk8 mUnk_152; + /* 153 */ unk8 mUnk_153; + /* 154 */ unk32 mUnk_154; + /* 158 */ unk8 mUnk_158[0x2]; + /* 15a */ unk16 mUnk_15a; + /* 15c */ unk16 mUnk_15c; + /* 15e */ u8 mUnk_15e; + /* 15f */ u8 mUnk_15f; + /* 160 */ u8 mUnk_160; + /* 161 */ + + /* 00 */ virtual ~UnkStruct_02038aa0(); + /* 08 */ virtual void vfunc_08(s32 param1, unk32 param2, s16 *param3, unk32 param4); + /* 10 */ virtual void vfunc_10(unk32 param1); + /* 1c */ virtual unk32 vfunc_1c(s32 param1, unk32 *param2, unk32 param3, unk32 param4); + /* 20 */ virtual unk32 vfunc_20(s32 param1, s32 *param2); + /* 2c */ virtual void vfunc_2c(); + /* 30 */ virtual void vfunc_30(); + /* 34 */ virtual unk32 vfunc_34(s32 param1); + /* 38 */ virtual unk32 vfunc_38(); + /* 3c */ virtual void vfunc_3c() = 0; + /* 40 */ virtual void vfunc_40() = 0; + /* 44 */ virtual void vfunc_44(); + /* 48 */ virtual void vfunc_48(); + /* 4c */ virtual void vfunc_4c(); + /* 50 */ virtual void vfunc_50(unk32 param1, unk32 param2, s32 param3, unk32 param4); + /* 54 */ virtual void vfunc_54(); + /* 58 */ virtual void vfunc_58(); + /* 5c */ virtual void vfunc_5c(); + /* 60 */ virtual void vfunc_60(); + /* 64 */ virtual void vfunc_64(); + /* 68 */ virtual s32 vfunc_68(unk32 param1); + /* 6c */ virtual void vfunc_6c(s32 *param1, s32 *param2); + /* 70 */ virtual void vfunc_70(s32 *param1, s32 *param2); + /* 74 */ + + UnkStruct_02038aa0(u8 param1, u8 param2); + void func_02038b34(u32 param1, unk32 param2); + void func_02038b40(); + bool func_02038b78(); + s32 func_02038cb8(s32 param1); + s32 func_02038cf4(); + s32 func_02038d10(); + bool func_02038ef4(s32 param1, s32 param2); + void func_02039208(unk16 param1); + unk32 func_02039250(); + void func_02039440(unk32 param1, unk32 param2); + bool func_0203951c(); +}; diff --git a/include/Unknown/UnkStruct_020397f8.hpp b/include/Unknown/UnkStruct_020397f8.hpp new file mode 100644 index 00000000..53c37017 --- /dev/null +++ b/include/Unknown/UnkStruct_020397f8.hpp @@ -0,0 +1,96 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Unknown/UnkStruct_02035064.hpp" +#include "Unknown/UnkStruct_02038aa0.hpp" + +class UnkStruct_020397f8 : public UnkStruct_02038aa0 { +public: + /* 000 (base) */ + /* 161 */ unk8 mUnk_161[0x3]; + /* 164 */ unk32 mUnk_164; + /* 168 */ UnkStruct_02035064 mUnk_168; + /* 1f0 */ UnkStruct_02035064 mUnk_1f0; + /* 278 */ UnkStruct_02035064 mUnk_278; + /* 300 */ UnkStruct_02035064 mUnk_300; + /* 388 */ UnkStruct_02035064 mUnk_388; + /* 410 */ unk32 *mUnk_410; + /* 414 */ unk32 mUnk_414; + /* 418 */ unk32 mUnk_418; + /* 41c */ unk16 mUnk_41c; + /* 41e */ unk16 mUnk_41e; + /* 420 */ unk16 mUnk_420; + /* 422 */ unk8 mUnk_422[0x2]; + /* 424 */ unk32 *mUnk_424; + /* 428 */ unk32 mUnk_428; + /* 42c */ unk8 mUnk_42c[0x124]; + /* 550 */ unk32 mUnk_550; + /* 554 */ unk32 mUnk_554; + /* 558 */ unk8 mUnk_558[0x4]; + /* 55c */ unk32 mUnk_55c; + /* 560 */ unk32 mUnk_560; + /* 564 */ unk8 mUnk_564[0x8]; + /* 56c */ unk16 mUnk_56c; + /* 56e */ unk16 mUnk_56e; + /* 570 */ unk16 mUnk_570; + /* 572 */ unk16 mUnk_572; + /* 574 */ unk16 mUnk_574; + /* 576 */ unk16 mUnk_576; + /* 578 */ unk16 mUnk_578; + /* 57a */ u8 mUnk_57a; + /* 57b */ u8 mUnk_57b; + /* 57c */ u8 mUnk_57c; + /* 57d */ u8 mUnk_57d; + /* 57e */ u8 mUnk_57e; + /* 57f */ u8 mUnk_57f; + /* 580 */ u8 mUnk_580; + /* 581 */ u8 mUnk_581; + /* 582 */ u8 mUnk_582; + /* 583 */ u8 mUnk_583; + /* 584 */ unk8 mUnk_584; + /* 585 */ u8 mUnk_585; + /* 586 */ u8 mUnk_586; + /* 587 */ unk8 mUnk_587; + /* 588 */ unk32 mUnk_588; + /* 58c */ + + UnkStruct_020397f8(); + /* 4c */ virtual void vfunc_4c(); + /* 2c */ virtual void vfunc_2c(); + void func_02039ca8(); + /* 3c */ virtual void vfunc_3c(); + /* 40 */ virtual void vfunc_40(s32 param1, s32 param2); + void func_0203a188(s32 param1, s32 param2); + bool func_0203a2c0(); + unk32 func_0203a30c(); + /* 48 */ virtual void vfunc_48(); + void func_0203a35c(); + bool func_0203a3e0(); + /* 44 */ virtual void vfunc_44(s32 param1, s32 param2); + bool func_0203a6d0(unk32 param1); + /* 50 */ virtual void vfunc_50(unk32 param1, unk32 param2, s32 param3, unk32 param4); + /* 54 */ virtual void vfunc_54(); + /* 5c */ virtual void vfunc_5c(); + /* 58 */ virtual void vfunc_58(); + bool func_0203b0bc(); + s32 func_0203b0ec(u32 param1); + /* 18 */ virtual unk32 vfunc_18(s32 param1); + /* 1c */ virtual unk32 vfunc_1c(s32 param1, unk32 *param2, unk32 param3, unk32 param4); + /* 60 */ virtual void vfunc_60(s32 param1); + /* 64 */ virtual void vfunc_64(unk32 param1); + void func_0203b764(); + /* 20 */ virtual unk32 vfunc_20(s32 param1, s32 *param2); + void func_0203bd8c(s32 param1); + /* 6c */ virtual void vfunc_6c(s32 *param1, s32 *param2); + void func_0203be08(); + void func_0203be64(); + bool func_0203c084(); + bool func_0203c13c(); + bool func_0203c1a0(); + bool func_0203c25c(); + /* 00 */ virtual ~UnkStruct_020397f8(); + /* 38 */ virtual unk32 vfunc_38(); + /* 74 */ +}; diff --git a/include/Unknown/UnkStruct_0203dae0.hpp b/include/Unknown/UnkStruct_0203dae0.hpp new file mode 100644 index 00000000..cfda7368 --- /dev/null +++ b/include/Unknown/UnkStruct_0203dae0.hpp @@ -0,0 +1,49 @@ +#pragma once + +#include "global.h" +#include "types.h" + +#include "Unknown/UnkStruct_02032f0c.hpp" + +class UnkStruct_0203dae0 : public UnkStruct_02032f0c { +public: + /* 000 (base) */ + /* 052 */ unk8 mUnk_052[0x2]; + /* 054 */ unk32 mUnk_054[0x30]; + /* 114 */ void *mUnk_114; + /* 118 */ unk32 mUnk_118; + /* 11c */ unk16 mUnk_11c; + /* 11e */ u8 mUnk_11e; + /* 11f */ u8 mUnk_11f; + /* 120 */ u8 mUnk_120; + /* 121 */ u8 mUnk_121; + /* 122 */ u8 mUnk_122; + /* 123 */ + + /* 00 */ virtual ~UnkStruct_0203dae0(); + /* 08 */ virtual void vfunc_08(s32 param1, unk32 param2, s16 *param3, unk32 param4); + /* 0c */ virtual void vfunc_0c(unk32 param1, unk32 param2, unk32 param3, unk32 param4); + /* 10 */ virtual void vfunc_10(u32 param1, unk32 param2); + /* 14 */ virtual bool vfunc_14(s32 param1, s32 param2); + /* 18 */ virtual unk32 vfunc_18(s32 param1); + /* 28 */ virtual bool vfunc_28(); + /* 2c */ virtual void vfunc_2c(); + /* 30 */ virtual void vfunc_30(); + /* 34 */ + + UnkStruct_0203dae0(u8 param1); + void func_0203dc10(s32 param1); + bool func_0203dc74(s32 param1, s32 param2); + void func_0203dcfc(u8 param1, unk32 param2, unk32 param3, s32 param4); + void func_0203ddec(); + void func_0203ddfc(); + void func_0203de14(); + s32 func_0203de24(); + bool func_0203de58(s32 param1); + bool func_0203e0f8(unk32 param1, s32 param2); + bool func_0203e1b0(unk32 param1, unk32 param2, s32 param3); + void func_0203e2e8(s32 param1, s32 param2, unk32 param3, u32 param4); + void func_0203e510(s32 *param1, s32 param2, s32 param3); + void func_0203e62c(s32 *param1, s32 param2); + bool func_0203e6e4(u32 param1, u32 param2, s32 param3); +}; diff --git a/include/lib/math.h b/include/lib/math.h index f7204acc..f3e0d3d6 100644 --- a/include/lib/math.h +++ b/include/lib/math.h @@ -89,7 +89,7 @@ typedef struct { /* 24 */ } Mat3p; -extern "C" u32 FastDivide(u32 a, u32 b); +extern "C" u32 SoftDivide(u32 a, u32 b); extern "C" u32 Divide(u32 a, u32 b); extern "C" bool Approach(unk32 *src, unk32 dest, unk32 step); extern "C" bool Approach_thunk(unk32 *src, unk32 dest, unk32 step); |
