mirror of
https://github.com/zeldaret/ss
synced 2026-05-25 15:25:13 -04:00
26af4db82d
* update from dtk-template and start work towards using clangd * include <a> -> "a" * Update build.yml * remove/add non-trivial class in union warning
66 lines
2.1 KiB
C++
66 lines
2.1 KiB
C++
#ifndef NW4R_DB_DIRECT_PRINT_H
|
|
#define NW4R_DB_DIRECT_PRINT_H
|
|
|
|
#include "__va_arg.h"
|
|
#include "common.h"
|
|
#include "rvl/GX.h" // IWYU pragma: export
|
|
|
|
namespace nw4r {
|
|
|
|
namespace db {
|
|
|
|
struct FrameBufferInfo {
|
|
/* 0x00 */ u8 *frameMemory;
|
|
/* 0x04 */ u32 frameSize;
|
|
/* 0x08 */ u16 frameWidth;
|
|
/* 0x0A */ u16 frameHeight;
|
|
/* 0x0C */ u16 frameRow;
|
|
/* 0x0E */ u16 reserved;
|
|
};
|
|
|
|
struct YUVColorInfo {
|
|
/* 0x00 */ GXColor colorRGBA;
|
|
/* 0x04 */ u16 colorY256;
|
|
/* 0x06 */ u16 colorU;
|
|
/* 0x08 */ u16 colorU2;
|
|
/* 0x0A */ u16 colorU4;
|
|
/* 0x0C */ u16 colorV;
|
|
/* 0x0E */ u16 colorV2;
|
|
/* 0x10 */ u16 colorV4;
|
|
/* 0x12 */ u16 reserved;
|
|
};
|
|
|
|
/* 804342a0 */ void DirectPrint_Init();
|
|
/* 80434360 */ bool DirectPrint_IsActive();
|
|
/* 80434390 */ void DirectPrint_EraseXfb(int posh, int posv, int sizeh, int sizev);
|
|
/* */ void DirectPrint_ChangeXfb(void *framBuf);
|
|
/* 80434520 */ void DirectPrint_ChangeXfb(void *framBuf, u16 width, u16 height);
|
|
/* 80434560 */ void DirectPrint_StoreCache();
|
|
/* 80434580 */ void DirectPrint_Printf(int posh, int posv, const char *format, ...);
|
|
/* 80434650 */ void DirectPrint_printfsub(
|
|
int posh, int posv, const char *format,
|
|
__va_list_struct *args
|
|
); // ????? Not from a symbol, needs the arg?
|
|
/* */ void DirectPrint_Printf(int posh, int posv, bool turnOver, const char *format, ...);
|
|
/* */ void DirectPrint_DrawString(int posh, int posv, const char *format, ...);
|
|
/* 804346c0 */ void DirectPrint_DrawString(int posh, int posv, bool turnOver, const char *format, ...);
|
|
/* */ void DirectPrint_SetColor(GXColor color);
|
|
/* inlined */ void DirectPrint_SetColor(u8 r, u8 g, u8 b);
|
|
/* */ GXColor DirectPrint_GetColor();
|
|
namespace detail {
|
|
/* inlined */ void DirectPrint_DrawStringToXfb(
|
|
int posh, int posv, const char *format, __va_list_struct *args, bool turnover, bool backErase
|
|
);
|
|
|
|
/* local */ void WaitVIRetrace_();
|
|
|
|
/* local */ void *CreateFB_(const _GXRenderModeObj *rmode);
|
|
/* 80434cb0 */ void *DirectPrint_SetupFB(const _GXRenderModeObj *rmode);
|
|
|
|
} // namespace detail
|
|
|
|
} // namespace db
|
|
|
|
} // namespace nw4r
|
|
#endif
|