summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJulgodis <>2021-09-26 13:58:04 +0200
committerJulgodis <>2021-09-27 18:09:54 +0200
commita38b4874934603e9dbeed58548669771a372e1c3 (patch)
tree6389f19eb2ba3d6cd4aae17741a1ee9c954e55b9 /include
parent0e03ff4e3a6e36f7ee59728644c4884370252002 (diff)
OK preRetraceProc__8JUTVideoFUl
Diffstat (limited to 'include')
-rw-r--r--include/JSystem/JUtility/JUTVideo.h14
-rw-r--r--include/JSystem/JUtility/JUTXfb.h23
-rw-r--r--include/dolphin/vi/vi.h11
3 files changed, 43 insertions, 5 deletions
diff --git a/include/JSystem/JUtility/JUTVideo.h b/include/JSystem/JUtility/JUTVideo.h
index 5f4e35251d..5660decd25 100644
--- a/include/JSystem/JUtility/JUTVideo.h
+++ b/include/JSystem/JUtility/JUTVideo.h
@@ -8,7 +8,7 @@
class JUTVideo {
public:
- typedef void (*CallbackFn)(void);
+ typedef void (*Callback)(u32);
JUTVideo(GXRenderModeObj const*);
virtual ~JUTVideo();
@@ -30,8 +30,8 @@ public:
private:
static JUTVideo* sManager;
- static u32 sVideoLastTick;
- static u32 sVideoInterval;
+ static OSTick sVideoLastTick;
+ static OSTick sVideoInterval;
private:
/* 0x04 */ _GXRenderModeObj* mRenderObj;
@@ -42,12 +42,16 @@ private:
/* 0x18 */ u32 field_0x18;
/* 0x1C */ VIRetraceCallback mPreRetraceCallback;
/* 0x20 */ VIRetraceCallback mPostRetraceCallback;
- /* 0x24 */ CallbackFn unknown_callback_1;
- /* 0x28 */ CallbackFn unknown_callback_2;
+ /* 0x24 */ Callback mPreCallback;
+ /* 0x28 */ Callback mPostCallback;
/* 0x2C */ bool mSetBlack;
/* 0x30 */ s32 mSetBlackFrameCount;
/* 0x34 */ OSMessage mMessage;
/* 0x38 */ OSMessageQueue mMessageQueue;
};
+inline JUTVideo* JUTGetVideoManager() {
+ return JUTVideo::getManager();
+}
+
#endif /* JUTVIDEO_H */
diff --git a/include/JSystem/JUtility/JUTXfb.h b/include/JSystem/JUtility/JUTXfb.h
index a523452d25..7a647faa05 100644
--- a/include/JSystem/JUtility/JUTXfb.h
+++ b/include/JSystem/JUtility/JUTXfb.h
@@ -23,6 +23,29 @@ public:
/* 802E5424 */ static void destroyManager();
/* 802E5454 */ void initiate(u16, u16, JKRHeap*, JUTXfb::EXfbNumber);
+ s32 getBufferNum() const { return mBufferNum; }
+ s16 getDrawnXfbIndex() const { return mDrawnXfbIndex; }
+ s16 getDrawningXfbIndex() const { return mDrawingXfbIndex; }
+ s16 getDisplayingXfbIndex() const { return mDisplayingXfbIndex; }
+ s32 getSDrawingFlag() const { return mSDrawingFlag; }
+
+ void* getDisplayingXfb() const {
+ if (mDisplayingXfbIndex >= 0)
+ return mBuffer[mDisplayingXfbIndex];
+ return NULL;
+ }
+
+ void setDisplayingXfbIndex(s16 index) {
+ mDisplayingXfbIndex = index;
+ }
+
+ void setSDrawingFlag(s32 flag) {
+ mSDrawingFlag = flag;
+ }
+
+ static JUTXfb* getManager() { return sManager; }
+
+private:
static JUTXfb* sManager;
private:
diff --git a/include/dolphin/vi/vi.h b/include/dolphin/vi/vi.h
index 586819f535..c7d223978b 100644
--- a/include/dolphin/vi/vi.h
+++ b/include/dolphin/vi/vi.h
@@ -2,9 +2,20 @@
#define VI_H
#include "dolphin/types.h"
+#include "dolphin/gx/GX.h"
typedef void (*VIRetraceCallback)(u32);
extern "C" void VIWaitForRetrace(void);
+extern "C" void VISetNextFrameBuffer(void*);
+extern "C" VIRetraceCallback VISetPreRetraceCallback(VIRetraceCallback);
+extern "C" VIRetraceCallback VISetPostRetraceCallback(VIRetraceCallback);
+extern "C" void VIInit();
+extern "C" void VIConfigure(GXRenderModeObj*);
+extern "C" void VIFlush();
+extern "C" void* VIGetNextFrameBuffer();
+extern "C" void* VIGetCurrentFrameBuffer();
+extern "C" void VISetBlack(BOOL);
+extern "C" u32 VIGetRetraceCount();
#endif /* VI_H */