summaryrefslogtreecommitdiff
path: root/include/m_Do
diff options
context:
space:
mode:
authorJcw87 <Jcw87@users.noreply.github.com>2026-01-18 17:59:57 -0800
committerGitHub <noreply@github.com>2026-01-18 17:59:57 -0800
commit87a3705039533b309a04baaaa0f99010b5d71c00 (patch)
tree2dc2beb45a2b7b6a1738126a0c11c966c66a535c /include/m_Do
parent52a1e1363a4b91bc49f7994a553d16b90d969619 (diff)
m_Do debug (#3052)
* m_Do debug * m_Do wii data
Diffstat (limited to 'include/m_Do')
-rw-r--r--include/m_Do/m_Do_audio.h8
-rw-r--r--include/m_Do/m_Do_dvd_thread.h117
-rw-r--r--include/m_Do/m_Do_ext.h2
-rw-r--r--include/m_Do/m_Do_ext2.h26
4 files changed, 99 insertions, 54 deletions
diff --git a/include/m_Do/m_Do_audio.h b/include/m_Do/m_Do_audio.h
index e558bd7b98..7c456b0cfe 100644
--- a/include/m_Do/m_Do_audio.h
+++ b/include/m_Do/m_Do_audio.h
@@ -23,16 +23,16 @@ public:
#endif
static void onInitFlag() { mInitFlag = true; }
- static bool isInitFlag() { return mInitFlag; }
- static bool isResetFlag() { return mResetFlag; }
+ static u8 isInitFlag() { return mInitFlag; }
+ static u8 isResetFlag() { return mResetFlag; }
static void onResetFlag() { mResetFlag = true; }
static void offResetFlag() { mResetFlag = false; }
static bool isBgmSet() { return mBgmSet; }
static void onBgmSet() { mBgmSet = true; }
static void offBgmSet() { mBgmSet = false; }
- static bool mInitFlag;
- static bool mResetFlag;
+ static u8 mInitFlag;
+ static u8 mResetFlag;
static bool mBgmSet;
};
diff --git a/include/m_Do/m_Do_dvd_thread.h b/include/m_Do/m_Do_dvd_thread.h
index cbacaa9437..ad053bd051 100644
--- a/include/m_Do/m_Do_dvd_thread.h
+++ b/include/m_Do/m_Do_dvd_thread.h
@@ -9,6 +9,7 @@
#define mDoDvd_MOUNT_DIRECTION_HEAD 0
#define mDoDvd_MOUNT_DIRECTION_TAIL 1
+class JKRAramArchive;
class JKRHeap;
class JKRMemArchive;
@@ -26,23 +27,6 @@ public:
virtual s32 execute() = 0;
}; // Size = 0x14
-class mDoDvdThd_toMainRam_c : public mDoDvdThd_command_c {
-public:
- mDoDvdThd_toMainRam_c(u8);
- static mDoDvdThd_toMainRam_c* create(char const*, u8, JKRHeap*);
- virtual ~mDoDvdThd_toMainRam_c();
- virtual s32 execute();
-
- void* getMemAddress() const { return mData; }
-
-private:
- /* 0x14 */ u8 mMountDirection;
- /* 0x18 */ s32 mEntryNum;
- /* 0x1C */ void* mData;
- /* 0x20 */ s32 mDataSize;
- /* 0x24 */ JKRHeap* mHeap;
-}; // Size = 0x28
-
class mDoDvdThd_param_c {
public:
mDoDvdThd_param_c();
@@ -60,23 +44,18 @@ private:
/* 0x30 */ OSMutex mMutext;
}; // Size = 0x48
-class mDoDvdThd_mountXArchive_c : public mDoDvdThd_command_c {
+class mDoDvdThd_callback_c : public mDoDvdThd_command_c {
public:
- virtual ~mDoDvdThd_mountXArchive_c();
- mDoDvdThd_mountXArchive_c(u8 mountDirection, JKRArchive::EMountMode mountMode);
- static mDoDvdThd_mountXArchive_c* create(char const*, u8, JKRArchive::EMountMode,
- JKRHeap*);
+ virtual ~mDoDvdThd_callback_c();
+ mDoDvdThd_callback_c(mDoDvdThd_callback_func, void*);
+ static mDoDvdThd_callback_c* create(mDoDvdThd_callback_func, void*);
virtual s32 execute();
- JKRArchive* getArchive() const { return mArchive; }
-
private:
- /* 0x14 */ u8 mMountDirection;
- /* 0x18 */ s32 mEntryNum;
- /* 0x1C */ JKRArchive* mArchive;
- /* 0x20 */ JKRArchive::EMountMode mMountMode;
- /* 0x24 */ JKRHeap* mHeap;
-}; // Size = 0x28
+ /* 0x14 */ mDoDvdThd_callback_func mFunction;
+ /* 0x18 */ void* mData;
+ /* 0x1C */ void* mResult;
+};
class mDoDvdThd_mountArchive_c : public mDoDvdThd_command_c {
public:
@@ -95,19 +74,60 @@ private:
/* 0x20 */ JKRHeap* mHeap;
}; // Size = 0x24
-class mDoDvdThd_callback_c : public mDoDvdThd_command_c {
+class mDoDvdThd_mountAramArchive_c : public mDoDvdThd_command_c {
public:
- virtual ~mDoDvdThd_callback_c();
- mDoDvdThd_callback_c(mDoDvdThd_callback_func, void*);
- static mDoDvdThd_callback_c* create(mDoDvdThd_callback_func, void*);
+ virtual ~mDoDvdThd_mountAramArchive_c();
+ virtual s32 execute();
+
+ /* 0x14 */ u8 mMountDirection;
+ /* 0x18 */ s32 mEntryNum;
+ /* 0x1C */ JKRAramArchive* mArchive;
+};
+
+class mDoDvdThd_mountXArchive_c : public mDoDvdThd_command_c {
+public:
+ virtual ~mDoDvdThd_mountXArchive_c();
+ mDoDvdThd_mountXArchive_c(u8 mountDirection, JKRArchive::EMountMode mountMode);
+ static mDoDvdThd_mountXArchive_c* create(char const*, u8, JKRArchive::EMountMode,
+ JKRHeap*);
virtual s32 execute();
+ JKRArchive* getArchive() const { return mArchive; }
+
private:
- /* 0x14 */ mDoDvdThd_callback_func mFunction;
- /* 0x18 */ void* mData;
- /* 0x1C */ void* mResult;
+ /* 0x14 */ u8 mMountDirection;
+ /* 0x18 */ s32 mEntryNum;
+ /* 0x1C */ JKRArchive* mArchive;
+ /* 0x20 */ JKRArchive::EMountMode mMountMode;
+ /* 0x24 */ JKRHeap* mHeap;
+}; // Size = 0x28
+
+class mDoDvdThd_getResource_c : public mDoDvdThd_command_c {
+ virtual ~mDoDvdThd_getResource_c();
+ virtual s32 execute();
+
+ /* 0x14 */ void* mResource;
+ /* 0x18 */ JKRArchive* mArchive;
+ /* 0x1C */ u16 mResourceId;
};
+class mDoDvdThd_toMainRam_c : public mDoDvdThd_command_c {
+public:
+ mDoDvdThd_toMainRam_c(u8);
+ static mDoDvdThd_toMainRam_c* create(char const*, u8, JKRHeap*);
+ virtual ~mDoDvdThd_toMainRam_c();
+ virtual s32 execute();
+
+ void* getMemAddress() const { return mData; }
+
+private:
+ /* 0x14 */ u8 mMountDirection;
+ /* 0x18 */ s32 mEntryNum;
+ /* 0x1C */ void* mData;
+ /* 0x20 */ s32 mDataSize;
+ /* 0x24 */ JKRHeap* mHeap;
+}; // Size = 0x28
+
struct mDoDvdThdStack {
u8 stack[4096];
} ATTRIBUTE_ALIGN(16);
@@ -127,4 +147,27 @@ struct mDoDvdThd {
static u8 Report_DVDRead;
};
+namespace mDoDvdHack {
+ typedef struct FSTEntry {
+ /* 0x00 */ uint isDirAndStringOff;
+ /* 0x04 */ uint parentOrPosition;
+ /* 0x08 */ uint nextEntryOrLength;
+ } FSTEntry;
+
+ extern OSBootInfo* BootInfo;
+ extern FSTEntry* FstStart;
+ extern const char* FstStringStart;
+ extern u32 MaxEntryNum;
+
+ void __DVDFSInit();
+ const char* EntryToName(s32 entry);
+ const char* ConvertEntrynumToName(s32 entry);
+
+ class Manager {
+ public:
+ Manager() { __DVDFSInit(); }
+ static Manager sManager;
+ };
+}
+
#endif /* M_DO_M_DO_DVD_THREAD_H */
diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h
index ac45c8f443..35e81f0059 100644
--- a/include/m_Do/m_Do_ext.h
+++ b/include/m_Do/m_Do_ext.h
@@ -599,7 +599,7 @@ private:
/* 0x38 */ mDoExt_3Dline_c* mpLines;
};
-class mDoExt_3DlineMat2_c : public mDoExt_3DlineMat_c {
+class mDoExt_3DlineMat2_c : public mDoExt_3DlineMat1_c {
public:
int getMaterialID() { return 2; }
void setMaterial();
diff --git a/include/m_Do/m_Do_ext2.h b/include/m_Do/m_Do_ext2.h
index f6e029a0c0..2a38861509 100644
--- a/include/m_Do/m_Do_ext2.h
+++ b/include/m_Do/m_Do_ext2.h
@@ -7,24 +7,26 @@ class FixedMemoryCheck {
public:
FixedMemoryCheck(u32*, u32, JKRHeap*);
- void alloc();
- void save();
- void check();
- void diff();
+ BOOL alloc();
+ BOOL save();
+ BOOL check();
+ BOOL diff();
static FixedMemoryCheck* easyCreate(void* param_1, s32 param_2) { return easyCreate(param_1, u32(param_2)); }
static FixedMemoryCheck* easyCreate(void*, u32);
- static void checkAll();
- static void diffAll();
- static void saveAll();
+ static BOOL checkAll();
+ static BOOL diffAll();
+ static BOOL saveAll();
- /* 0x00 */ u32* field_0x00;
- /* 0x04 */ u32 field_0x04;
- /* 0x08 */ u32* field_0x08;
+ static FixedMemoryCheck* sFirst;
+
+ /* 0x00 */ u32* mNowCode;
+ /* 0x04 */ u32 mSize;
+ /* 0x08 */ u32* mSaveCode;
/* 0x0C */ JKRHeap* mpHeap;
/* 0x10 */ int field_0x10;
- /* 0x14 */ u8 field_0x14;
- /* 0x18 */ FixedMemoryCheck* field_0x18;
+ /* 0x14 */ bool field_0x14;
+ /* 0x18 */ FixedMemoryCheck* mNext;
};
#endif