JUTXfb: decompile (#38)

* m_Do_Reset: split and (some) decomp

decompiles:
- my_OSCancelAlarmAll()
- destroyVideo()

* mDoRst::reset(): decompile, plus some supporting code

* split DVD* functions to dvd.h

* mDoRst::resetCallBack(): decompile

* JUTXfb: split

* JUTXfb: decompile (except for almost-matching ctor)

Elaborates JUTVideo and some related stuff.
Decompiles the following functions:
- JUTXfb::initiate()
- JUTXfb::createManager()
- JUTXfb::common_init()
- JUTXfb::destroyManager()
- JUTXfb::~JUTXfb()
- JUTXfb::JUTXfb(): *almost* matching up to regalloc

* clang-format and extern label modifications

Co-authored-by: Pheenoh <pheenoh@gmail.com>
This commit is contained in:
Erin Moon
2020-12-29 17:01:48 -06:00
committed by GitHub
parent 6a16bef70e
commit cba64289a4
12 changed files with 221 additions and 5 deletions
@@ -0,0 +1,33 @@
#ifndef __JUTILITY_JUTVIDEO_JUTVIDEO_H__
#define __JUTILITY_JUTVIDEO_JUTVIDEO_H__
#include "gx/GX.h"
#include "os/OS.h"
#include "vi/VI.h"
struct JUTVideo {
virtual ~JUTVideo();
typedef void (*CallbackFn)(void);
// struct JUTVideo_vtable * vtable;
GXRenderModeObj* render_object;
u32 field_0x8;
u32 retrace_count;
u32 field_0x10;
u32 field_0x14;
u32 field_0x18;
VIRetraceCallback pre_retrace_callback;
VIRetraceCallback post_retrace_callback;
CallbackFn unknown_callback_1;
CallbackFn unknown_callback_2;
bool set_black;
u8 padding[3];
s32 set_black_frame_counter;
OSMessage message;
OSMessageQueue message_queue;
};
extern JUTVideo* lbl_80451538;
#endif