mirror of
https://github.com/zeldaret/tww.git
synced 2026-09-06 10:45:22 -04:00
e7e0e8e581
* m_Do_controller_pad and m_Do_Reset OK for demo, m_Do_machine 100% with weak func order * Add machine.pch, m_Do_machine OK for demo * m_Do_gba_com and m_Do_MemCardRWmng OK for demo * m_Do_graphic work * m_Do_graphic JPN/PAL version diffs
50 lines
1.4 KiB
C++
50 lines
1.4 KiB
C++
#ifndef JUTDIRECTPRINT_H
|
|
#define JUTDIRECTPRINT_H
|
|
|
|
#include "JSystem/JUtility/TColor.h"
|
|
#include "stdarg.h"
|
|
|
|
class JUTDirectPrint {
|
|
private:
|
|
JUTDirectPrint();
|
|
|
|
public:
|
|
void erase(int, int, int, int);
|
|
void drawChar(int, int, int);
|
|
void changeFrameBuffer(void*, u16, u16);
|
|
/* -------- */ void print(u16, u16, char const*, ...);
|
|
void printSub(u16, u16, char const*, std::__tag_va_List*, bool);
|
|
void drawString(u16, u16, char*);
|
|
void drawString_f(u16, u16, char const*, ...);
|
|
void setCharColor(u8, u8, u8);
|
|
void setCharColor(JUtility::TColor);
|
|
|
|
static JUTDirectPrint* start();
|
|
|
|
void* getFrameBuffer() { return field_0x00; }
|
|
bool isActive() const { return field_0x00 != 0; }
|
|
void changeFrameBuffer(void *param_0) { changeFrameBuffer(param_0, mFrameBufferWidth, mFrameBufferHeight); }
|
|
|
|
static JUTDirectPrint* getManager() { return sDirectPrint; }
|
|
|
|
private:
|
|
static u8 sAsciiTable[128];
|
|
static u32 sFontData[64];
|
|
static u32 sFontData2[77];
|
|
static JUTDirectPrint* sDirectPrint;
|
|
static u8 sDirectPrint_padding[4 /* padding */];
|
|
|
|
private:
|
|
/* 0x00 */ void* field_0x00;
|
|
/* 0x04 */ u16 mFrameBufferWidth;
|
|
/* 0x06 */ u16 mFrameBufferHeight;
|
|
/* 0x08 */ u16 mStride;
|
|
/* 0x0A */ u16 field_0x0A;
|
|
/* 0x0C */ size_t mFrameBufferSize;
|
|
/* 0x10 */ u8 field_0x10[4];
|
|
/* 0x14 */ u16* mFrameBuffer;
|
|
/* 0x18 */
|
|
};
|
|
|
|
#endif /* JUTDIRECTPRINT_H */
|