diff options
| author | Julgodis <> | 2021-09-26 13:58:04 +0200 |
|---|---|---|
| committer | Julgodis <> | 2021-09-27 18:09:54 +0200 |
| commit | a38b4874934603e9dbeed58548669771a372e1c3 (patch) | |
| tree | 6389f19eb2ba3d6cd4aae17741a1ee9c954e55b9 /include | |
| parent | 0e03ff4e3a6e36f7ee59728644c4884370252002 (diff) | |
OK preRetraceProc__8JUTVideoFUl
Diffstat (limited to 'include')
| -rw-r--r-- | include/JSystem/JUtility/JUTVideo.h | 14 | ||||
| -rw-r--r-- | include/JSystem/JUtility/JUTXfb.h | 23 | ||||
| -rw-r--r-- | include/dolphin/vi/vi.h | 11 |
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 */ |
