summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2023-10-14 13:23:24 -0700
committerJasper St. Pierre <jstpierre@mecheye.net>2023-10-14 13:23:24 -0700
commit411a467ddcd9840d8bb0410f6b789af8224ef03d (patch)
tree66564b534e63d6e31441dd5925b42c917ac7dd25 /include
parentfca11f6233672010ee6e5f617c34aa1ca62631f2 (diff)
d_s_logo start, VERSION_SELECT
Diffstat (limited to 'include')
-rw-r--r--include/JAZelAudio/JAIZelBasic.h2
-rw-r--r--include/JSystem/J2DGraph/J2DPicture.h40
-rw-r--r--include/JSystem/J3DGraphBase/J3DDrawBuffer.h6
-rw-r--r--include/MSL_C/string.h1
-rw-r--r--include/d/d_com_inf_game.h106
-rw-r--r--include/d/d_drawlist.h17
-rw-r--r--include/d/d_particle.h1
-rw-r--r--include/d/d_resorce.h5
-rw-r--r--include/d/d_s_play.h2
-rw-r--r--include/dolphin/os/OSRtc.h2
-rw-r--r--include/f_op/f_op_overlap_mng.h2
-rw-r--r--include/global.h8
-rw-r--r--include/m_Do/m_Do_MemCard.h2
-rw-r--r--include/m_Do/m_Do_dvd_thread.h3
-rw-r--r--include/m_Do/m_Do_ext.h8
-rw-r--r--include/m_Do/m_Do_machine.h19
16 files changed, 203 insertions, 21 deletions
diff --git a/include/JAZelAudio/JAIZelBasic.h b/include/JAZelAudio/JAIZelBasic.h
index e891140b..64e93fa0 100644
--- a/include/JAZelAudio/JAIZelBasic.h
+++ b/include/JAZelAudio/JAIZelBasic.h
@@ -100,7 +100,7 @@ public:
BOOL check1stDynamicWave();
void load2ndDynamicWave();
void loadStaticWaves();
- void checkFirstWaves();
+ BOOL checkFirstWaves();
void setLinkHp(s32, s32);
void setLinkSwordType(s32, s32);
void setLinkShieldType(s32, s32);
diff --git a/include/JSystem/J2DGraph/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture.h
new file mode 100644
index 00000000..8bc9e764
--- /dev/null
+++ b/include/JSystem/J2DGraph/J2DPicture.h
@@ -0,0 +1,40 @@
+#ifndef J2DPICTURE_H
+#define J2DPICTURE_H
+
+#include "JSystem/J2DGraph/J2DPane.h"
+#include "JSystem/JUtility/TColor.h"
+#include "dolphin/gx/GX.h"
+
+class JKRArchive;
+class JUTTexture;
+class JUTPalette;
+
+class J2DPicture : public J2DPane {
+public:
+ virtual ~J2DPicture();
+ virtual u16 getTypeID() { return 0x12; }
+ virtual void drawSelf(f32 x, f32 y);
+ virtual void drawSelf(f32 x, f32 y, Mtx* mtx);
+ virtual void drawOut(f32, f32, f32, f32, f32, f32);
+ virtual void drawOut(f32, f32, f32, f32, f32, f32, f32, f32);
+
+ void setWhite(JUtility::TColor white) { mColorWhite = white; }
+ void setBlack(JUtility::TColor black) { mColorBlack = black; }
+
+private:
+ /* 0x0CC */ JUTTexture * mpTexture[2];
+ /* 0x0D4 */ u32 field_0xd4[2];
+ /* 0x0DC */ u8 mNumTexture;
+ /* 0x0E0 */ f32 mBlendKonstColorF[4];
+ /* 0x0F0 */ f32 mBlendKonstAlphaF[4];
+ /* 0x100 */ JUTPalette * mpPalette;
+ /* 0x104 */ JUtility::TColor mColorWhite;
+ /* 0x108 */ JUtility::TColor mColorBlack;
+ /* 0x10C */ JUtility::TColor mNewColor[4];
+ /* 0x11C */ JUtility::TColor mBlendKonstColor;
+ /* 0x120 */ JUtility::TColor mBlendKonstAlpha;
+};
+
+STATIC_ASSERT(sizeof(J2DPicture) == 0x124);
+
+#endif /* J2DPICTURE_H */
diff --git a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h
index aae6e4ff..c9db9a85 100644
--- a/include/JSystem/J3DGraphBase/J3DDrawBuffer.h
+++ b/include/JSystem/J3DGraphBase/J3DDrawBuffer.h
@@ -11,11 +11,11 @@ class J3DMatPacket;
class J3DShapePacket;
class J3DCallBackPacket;
-typedef int (J3DDrawBuffer::*sortFunc)(J3DMatPacket*);
-typedef void (J3DDrawBuffer::*drawFunc)() const;
-
class J3DDrawBuffer {
public:
+ typedef int (J3DDrawBuffer::*sortFunc)(J3DMatPacket*);
+ typedef void (J3DDrawBuffer::*drawFunc)() const;
+
enum EDrawType {
DRAW_HEAD,
DRAW_TAIL,
diff --git a/include/MSL_C/string.h b/include/MSL_C/string.h
index ea08c98f..418cdc48 100644
--- a/include/MSL_C/string.h
+++ b/include/MSL_C/string.h
@@ -4,5 +4,6 @@
#include "MSL_C/MSL_Common/Src/extras.h"
#include "MSL_C/MSL_Common/Src/mem.h"
#include "MSL_C/MSL_Common/Src/string.h"
+#include "MSL_C/MSL_Common/Src/printf.h"
#endif
diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h
index 8039e0e6..ea290ca7 100644
--- a/include/d/d_com_inf_game.h
+++ b/include/d/d_com_inf_game.h
@@ -379,6 +379,40 @@ public:
void setCurrentWindow(dDlst_window_c* i_window) { mCurrentWindow = i_window; }
void setCurrentView(view_class* i_view) { mCurrentView = i_view; }
void setCurrentViewport(view_port_class* i_viewport) { mCurrentViewport = i_viewport; }
+
+ void setMsgArchive(JKRArchive * pArc) { mpMsgArchive = pArc; }
+ void setDmsgArchive(JKRArchive * pArc) { mpDmsgArchive = pArc; }
+ void setTmsgArchive(JKRArchive * pArc) { mpTmsgArchive = pArc; }
+ void setMenuArchive(JKRArchive * pArc) { mpMenuArchive = pArc; }
+ void setFont0Archive(JKRArchive * pArc) { mpFont0Archive = pArc; }
+ void setFont1Archive(JKRArchive * pArc) { mpFont1Archive = pArc; }
+ void setAnmArchive(JKRArchive * pArc) { mpAnmArchive = pArc; }
+ void setLkDArc(JKRArchive * pArc) { mpLkDArc = pArc; }
+ void setFmapArchive(JKRArchive * pArc) { mpFmapArchive = pArc; }
+ void setItemResArchive(JKRArchive * pArc) { mpItemResArchive = pArc; }
+ void setClctResArchive(JKRArchive * pArc) { mpClctResArchive = pArc; }
+ void setFmapResArchive(JKRArchive * pArc) { mpFmapResArchive = pArc; }
+ void setDmapResArchive(JKRArchive * pArc) { mpDmapResArchive = pArc; }
+ void setOptResArchive(JKRArchive * pArc) { mpOptResArchive = pArc; }
+ void setClothResArchive(JKRArchive * pArc) { mpClothResArchive = pArc; }
+ void setSaveResArchive(JKRArchive * pArc) { mpSaveResArchive = pArc; }
+ void setItemIconArchive(JKRArchive * pArc) { mpItemIconArchive = pArc; }
+ void setNameResArchive(JKRArchive * pArc) { mpNameResArchive = pArc; }
+ void setErrorResArchive(JKRArchive * pArc) { mpErrorResArchive = pArc; }
+ void setActionIconArchive(JKRArchive * pArc) { mpActionIconArchive = pArc; }
+ void setScopeResArchive(JKRArchive * pArc) { mpScopeResArchive = pArc; }
+ void setCamResArchive(JKRArchive * pArc) { mpCamResArchive = pArc; }
+ void setSwimResArchive(JKRArchive * pArc) { mpSwimResArchive = pArc; }
+ void setWindResArchive(JKRArchive * pArc) { mpWindResArchive = pArc; }
+ void setFontArchive(JKRArchive * pArc) { mpFont0Archive = pArc; }
+ void setMsgDtArchive(JKRArchive * pArc) { mpEnglishTextArchive = pArc; }
+#if VERSION != VERSION_JPN
+ void setMsgDt2Archive(JKRArchive * pArc) { mpHyruleTextArchive = pArc; }
+#endif
+
+ void setItemTable(void * pData) { mpItemTable = pData; }
+ void setFmapData(void * pData) { mpFmapData = pData; }
+
/* 0x0000 */ dBgS mBgS;
/* 0x1404 */ dCcS mCcS;
/* 0x3DF8 */ dADM mADM;
@@ -401,11 +435,11 @@ public:
/* 0x47AC */ JKRArchive* mpFont1Archive;
/* 0x47B0 */ JKRArchive* mpAnmArchive;
/* 0x47B4 */ JKRArchive* mpLkDArc;
- /* 0x47B8 */ JKRArchive* mpFMapArchive;
+ /* 0x47B8 */ JKRArchive* mpFmapArchive;
/* 0x47BC */ JKRArchive* mpItemResArchive;
/* 0x47C0 */ JKRArchive* mpClctResArchive;
- /* 0x47C4 */ JKRArchive* mpFMapResArchive;
- /* 0x47C8 */ JKRArchive* mpDMapResArchive;
+ /* 0x47C4 */ JKRArchive* mpFmapResArchive;
+ /* 0x47C8 */ JKRArchive* mpDmapResArchive;
/* 0x47CC */ JKRArchive* mpOptResArchive;
/* 0x47D0 */ JKRArchive* mpClothResArchive;
/* 0x47D4 */ JKRArchive* mpSaveResArchive;
@@ -417,12 +451,19 @@ public:
/* 0x47EC */ JKRArchive* mpCamResArchive;
/* 0x47F0 */ JKRArchive* mpSwimResArchive;
/* 0x47F4 */ JKRArchive* mpWindResArchive;
-#if VERSION != VERSION_JPN
/* 0x47F8 */ JKRArchive* mpEnglishTextArchive;
+#if VERSION != VERSION_JPN
/* 0x47FC */ JKRArchive* mpHyruleTextArchive;
- /* 0x4800 */ u8 mCARDHeap0[0x04];
+ /* 0x4800 */ void * mAramHeap0[3];
+ /* 0x480C */ void * mAramHeap1[4];
+ /* 0x481C */ void * field_0x481c;
+ /* 0x4820 */ void * field_0x4820;
+#else
+ /* 0x47FC */ void * mAramHeap0[3];
+ /* 0x480C */ void * mAramHeap1[4];
#endif
- /* 0x4804 */ u8 mCARDHeap1[0x20];
+ /* Offsets below are for USA/PAL */
+
/* 0x4824 */ dPa_control_c* mParticle;
/* 0x4828 */ dDemo_manager_c* mDemo;
/* 0x482C */ dMagma_packet_c* mpMagmaPacket;
@@ -545,8 +586,8 @@ public:
/* 0x4A66 */ u8 mIkadaShipBeforeRoomId;
/* 0x4A67 */ u8 mIkadaShipId;
/* 0x4A68 */ cXyz mIkadaLinkPos;
- /* 0x4A74 */ void* mpItemTableArchive;
- /* 0x4A78 */ void* mpFmapDataArchive;
+ /* 0x4A74 */ void* mpItemTable;
+ /* 0x4A78 */ void* mpFmapData;
};
class dComIfG_inf_c {
@@ -1732,6 +1773,45 @@ inline void dComIfGd_setViewPort(view_port_class* pViewPort) { g_dComIfG_gameInf
inline void dComIfGd_setView(view_class* pView) { g_dComIfG_gameInfo.drawlist.setView(pView); }
/**
+ * === ARCHIVE ===
+ */
+
+
+inline void dComIfGp_setAnmArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setAnmArchive(pArc); }
+inline void dComIfGp_setMsgArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setMsgArchive(pArc); }
+inline void dComIfGp_setDmsgArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setDmsgArchive(pArc); }
+inline void dComIfGp_setTmsgArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setTmsgArchive(pArc); }
+inline void dComIfGp_setMenuArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setMenuArchive(pArc); }
+inline void dComIfGp_setFont0Archive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setFont0Archive(pArc); }
+inline void dComIfGp_setFont1Archive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setFont1Archive(pArc); }
+inline void dComIfGp_setLkDArc(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setLkDArc(pArc); }
+inline void dComIfGp_setFmapArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setFmapArchive(pArc); }
+inline void dComIfGp_setItemResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setItemResArchive(pArc); }
+inline void dComIfGp_setClctResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setClctResArchive(pArc); }
+inline void dComIfGp_setFmapResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setFmapResArchive(pArc); }
+inline void dComIfGp_setDmapResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setDmapResArchive(pArc); }
+inline void dComIfGp_setOptResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setOptResArchive(pArc); }
+inline void dComIfGp_setClothResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setClothResArchive(pArc); }
+inline void dComIfGp_setSaveResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setSaveResArchive(pArc); }
+inline void dComIfGp_setItemIconArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setItemIconArchive(pArc); }
+inline void dComIfGp_setNameResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setNameResArchive(pArc); }
+inline void dComIfGp_setErrorResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setErrorResArchive(pArc); }
+inline void dComIfGp_setActionIconArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setActionIconArchive(pArc); }
+inline void dComIfGp_setScopeResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setScopeResArchive(pArc); }
+inline void dComIfGp_setCamResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setCamResArchive(pArc); }
+inline void dComIfGp_setSwimResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setSwimResArchive(pArc); }
+inline void dComIfGp_setWindResArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setWindResArchive(pArc); }
+inline void dComIfGp_setFontArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setFontArchive(pArc); }
+inline void dComIfGp_setMsgDtArchive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setMsgDtArchive(pArc); }
+#if VERSION != VERSION_JPN
+inline void dComIfGp_setMsgDt2Archive(JKRArchive * pArc) { g_dComIfG_gameInfo.play.setMsgDt2Archive(pArc); }
+#endif
+
+inline void dComIfGp_setItemTable(void * pData) { g_dComIfG_gameInfo.play.setItemTable(pData); }
+inline void dComIfGp_setActorData(void * pData) { g_dComIfG_gameInfo.play.mADM.SetData(pData); }
+inline void dComIfGp_setFmapData(void * pData) { g_dComIfG_gameInfo.play.setFmapData(pData); }
+
+/**
* === RESOURCE ===
*/
@@ -1756,11 +1836,15 @@ inline int dComIfG_syncObjectRes(const char* name) {
return g_dComIfG_gameInfo.mResControl.syncObjectRes(name);
}
+inline int dComIfG_syncAllObjectRes() {
+ return g_dComIfG_gameInfo.mResControl.syncAllObjectRes();
+}
+
inline int dComIfG_syncStageRes(const char* name) {
return g_dComIfG_gameInfo.mResControl.syncStageRes(name);
}
-inline int dComIfG_deleteObjectResMain(const char* res) {
+inline int dComIfG_deleteObjectRes(const char* res) {
return g_dComIfG_gameInfo.mResControl.deleteObjectRes(res);
}
@@ -1919,6 +2003,10 @@ inline void dComIfGp_particle_readScene(u8 particle_no, mDoDvdThd_toMainRam_c**
g_dComIfG_gameInfo.play.getParticle()->readScene(particle_no, param_1);
}
+inline void dComIfGp_particle_createCommon(const void * pArc) {
+ g_dComIfG_gameInfo.play.getParticle()->createCommon(pArc);
+}
+
/**
* === ATTENTION ===
*/
diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h
index c649a67d..f8c386fd 100644
--- a/include/d/d_drawlist.h
+++ b/include/d/d_drawlist.h
@@ -2,6 +2,7 @@
#define D_D_DRAWLIST_H
#include "JSystem/J3DGraphBase/J3DDrawBuffer.h"
+#include "JSystem/J2DGraph/J2DPicture.h"
#include "f_op/f_op_view.h"
#include "global.h"
#include "m_Do/m_Do_ext.h"
@@ -15,6 +16,20 @@ public:
virtual void draw();
};
+class dDlst_2D_c : public dDlst_base_c {
+public:
+ dDlst_2D_c(ResTIMG * pTIMG, s16 w, s16 h, u8 alpha);
+ J2DPicture * getPicture() { return &mPicture; }
+ void setAlpha(u8 alpha) { mAlpha = alpha; }
+
+protected:
+ /* 0x004 */ J2DPicture mPicture;
+ /* 0x128 */ s16 mWidth;
+ /* 0x12A */ s16 mHeight;
+ /* 0x12C */ u8 mAlpha;
+ /* 0x12D */ u8 field_0x12e[3];
+};
+
class dDlst_window_c {
public:
dDlst_window_c() {}
@@ -139,7 +154,7 @@ public:
int setReal2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*);
bool addReal(u32, J3DModel*);
int setSimple(cXyz*, f32, f32, cXyz*, s16, f32, GXTexObj*);
- static void setSimpleTex(ResTIMG const*);
+ static void setSimpleTex(void *);
static GXTexObj* getSimpleTex() { return &mSimpleTexObj; }
diff --git a/include/d/d_particle.h b/include/d/d_particle.h
index 31e1746f..270bacd4 100644
--- a/include/d/d_particle.h
+++ b/include/d/d_particle.h
@@ -426,6 +426,7 @@ public:
void drawModelParticle() { mModelCtrl->draw(); }
+ JKRHeap * getHeap() { return mpHeap; }
/* 0x0000 */ JKRHeap* mpHeap;
/* 0x0004 */ JPAResourceManager* mpCommonResMgr;
diff --git a/include/d/d_resorce.h b/include/d/d_resorce.h
index 49a5e724..6e0bd4b2 100644
--- a/include/d/d_resorce.h
+++ b/include/d/d_resorce.h
@@ -62,9 +62,8 @@ public:
void dump();
int getObjectResName2Index(char const*, char const*);
- int setObjectRes(const char* name, u8 param_1, JKRHeap* heap) {
- return setRes(name, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo), "/res/Object/", param_1,
- heap);
+ int setObjectRes(const char* name, u8 direction, JKRHeap* heap) {
+ return setRes(name, &mObjectInfo[0], ARRAY_SIZE(mObjectInfo), "/res/Object/", direction, heap);
}
void* getObjectRes(const char* arcName, const char* resName) {
diff --git a/include/d/d_s_play.h b/include/d/d_s_play.h
index cc3783e2..8ba61ec5 100644
--- a/include/d/d_s_play.h
+++ b/include/d/d_s_play.h
@@ -113,6 +113,8 @@ public:
/* 0x10 */ int field_0x10;
};
+extern dScnPly_msg_HIO_c g_msgDHIO;
+
class dScnPly_preLoad_HIO_c : public mDoHIO_entry_c {
public:
virtual ~dScnPly_preLoad_HIO_c() {}
diff --git a/include/dolphin/os/OSRtc.h b/include/dolphin/os/OSRtc.h
index 0438667c..8bbb8969 100644
--- a/include/dolphin/os/OSRtc.h
+++ b/include/dolphin/os/OSRtc.h
@@ -65,6 +65,8 @@ void OSSetSoundMode(OSSoundMode mode);
u32 OSGetProgressiveMode(void);
void OSSetProgressiveMode(u32 mode);
u32 OSGetEuRgb60Mode();
+void OSSetEuRgb60Mode(u32 mode);
+s32 OSGetLanguage();
u16 OSGetWirelessID(s32 channel);
void OSSetWirelessID(s32 channel, u16 id);
static u16 OSGetGbsMode(void);
diff --git a/include/f_op/f_op_overlap_mng.h b/include/f_op/f_op_overlap_mng.h
index 4423ce10..0fd3682f 100644
--- a/include/f_op/f_op_overlap_mng.h
+++ b/include/f_op/f_op_overlap_mng.h
@@ -27,7 +27,7 @@ int fopOvlpM_SceneIsStart();
void fopOvlpM_Management();
int fopOvlpM_IsOutReq(overlap_task_class* i_this);
void fopOvlpM_Done(overlap_task_class* i_this);
-void fopOvlpM_ToldAboutID(u32 pid);
+void fopOvlpM_ToldAboutID(unsigned int pid);
int fopOvlpM_IsPeek();
int fopOvlpM_IsDone();
int fopOvlpM_IsDoingReq();
diff --git a/include/global.h b/include/global.h
index 331f7ed4..3e5b06a4 100644
--- a/include/global.h
+++ b/include/global.h
@@ -44,4 +44,12 @@ inline BOOL checkEqual(s32 a, s32 b) {
#define VERSION_USA 1
#define VERSION_PAL 2
+#if VERSION == VERSION_USA
+ #define VERSION_SELECT(JPN, USA, PAL) (USA)
+#elif VERSION == VERSION_PAL
+ #define VERSION_SELECT(JPN, USA, PAL) (PAL)
+#elif VERSION == VERSION_JPN
+ #define VERSION_SELECT(JPN, USA, PAL) (JPN)
+#endif
+
#endif
diff --git a/include/m_Do/m_Do_MemCard.h b/include/m_Do/m_Do_MemCard.h
index 0cd615e1..a8e16980 100644
--- a/include/m_Do/m_Do_MemCard.h
+++ b/include/m_Do/m_Do_MemCard.h
@@ -20,8 +20,10 @@ public:
void main();
void update();
void load();
+ void load2();
void restore();
s32 LoadSync(void*, u32, u32);
+ s32 LoadSync2();
void save(void*, u32, u32);
void store();
s32 SaveSync();
diff --git a/include/m_Do/m_Do_dvd_thread.h b/include/m_Do/m_Do_dvd_thread.h
index f4d4013f..917017e9 100644
--- a/include/m_Do/m_Do_dvd_thread.h
+++ b/include/m_Do/m_Do_dvd_thread.h
@@ -62,8 +62,7 @@ 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*);
+ static mDoDvdThd_mountXArchive_c* create(char const*, u8, JKRArchive::EMountMode);
virtual s32 execute();
JKRArchive* getArchive() const { return mArchive; }
diff --git a/include/m_Do/m_Do_ext.h b/include/m_Do/m_Do_ext.h
index dd154fa6..0b20ce83 100644
--- a/include/m_Do/m_Do_ext.h
+++ b/include/m_Do/m_Do_ext.h
@@ -549,6 +549,11 @@ s32 mDoExt_getSafeGameHeapSize();
s32 mDoExt_getSafeZeldaHeapSize();
s32 mDoExt_getSafeCommandHeapSize();
+void mDoExt_setSafeArchiveHeapSize();
+void mDoExt_setSafeGameHeapSize();
+void mDoExt_setSafeZeldaHeapSize();
+void mDoExt_setSafeCommandHeapSize();
+
s32 mDoExt_resIDToIndex(JKRArchive*, u16);
JKRSolidHeap * mDoExt_createSolidHeapFromGameToCurrent(u32 size, u32 align);
@@ -558,6 +563,9 @@ s32 mDoExt_adjustSolidHeap(JKRSolidHeap * pHeap);
void mDoExt_destroySolidHeap(JKRSolidHeap * pHeap);
JKRHeap* mDoExt_setCurrentHeap(JKRHeap*);
+JUTFont* mDoExt_getMesgFont();
+JUTFont* mDoExt_getRubyFont();
+
extern JKRExpHeap* zeldaHeap;
extern JKRExpHeap* gameHeap;
extern JKRExpHeap* commandHeap;
diff --git a/include/m_Do/m_Do_machine.h b/include/m_Do/m_Do_machine.h
index 1a2fd163..d6b94295 100644
--- a/include/m_Do/m_Do_machine.h
+++ b/include/m_Do/m_Do_machine.h
@@ -1,7 +1,24 @@
+
#ifndef M_DO_M_DO_MACHINE_H
#define M_DO_M_DO_MACHINE_H
+#include "dolphin/gx/GX.h"
+
bool mDoMch_Create();
void mDoMch_HeapCheckAll();
-#endif /* M_DO_M_DO_MACHINE_H */ \ No newline at end of file
+extern GXRenderModeObj g_ntscZeldaProg;
+
+class mDoMch_render_c {
+public:
+ static void setRenderModeObj(GXRenderModeObj* obj) { mRenderModeObj = obj; }
+ static void setProgressiveMode() { setRenderModeObj(&g_ntscZeldaProg); }
+ static u16 getEfbHeight() { return mRenderModeObj->efb_height; }
+ static u16 getFbWidth() { return mRenderModeObj->fb_width; }
+
+ static GXRenderModeObj* getRenderModeObj() { return mRenderModeObj; }
+
+ static GXRenderModeObj* mRenderModeObj;
+};
+
+#endif /* M_DO_M_DO_MACHINE_H */