Improve gfxprint documentation and strings (#1028)

* Improve gfxprint documentation and strings

* Add GFXP_UNUSED_CHAR and rename bss variable
This commit is contained in:
Roman971
2021-11-28 14:48:17 +01:00
committed by GitHub
parent 1fa6e3874b
commit 54d77c71f1
9 changed files with 508 additions and 387 deletions
+9 -15
View File
@@ -2124,21 +2124,15 @@ void func_800FA3DC(void);
u8 func_800FAD34(void);
void func_800FADF8(void);
void func_800FAEB4(void);
void GfxPrint_InitDlist(GfxPrint*);
void GfxPrint_SetColor(GfxPrint*, u32, u32, u32, u32);
void GfxPrint_SetPosPx(GfxPrint*, s32, s32);
void GfxPrint_SetPos(GfxPrint*, s32, s32);
void GfxPrint_SetBasePosPx(GfxPrint*, s32, s32);
void GfxPrint_PrintCharImpl(GfxPrint*, u8);
void GfxPrint_PrintChar(GfxPrint*, u8);
void GfxPrint_PrintStringWithSize(GfxPrint*, const void*, size_t, size_t);
GfxPrint* GfxPrint_Callback(GfxPrint*, const char*, size_t);
void GfxPrint_Init(GfxPrint*);
void GfxPrint_Destroy(GfxPrint*);
void GfxPrint_Open(GfxPrint*, Gfx*);
Gfx* GfxPrint_Close(GfxPrint*);
s32 GfxPrint_VPrintf(GfxPrint*, const char*, va_list);
s32 GfxPrint_Printf(GfxPrint*, const char*, ...);
void GfxPrint_SetColor(GfxPrint* this, u32 r, u32 g, u32 b, u32 a);
void GfxPrint_SetPosPx(GfxPrint* this, s32 x, s32 y);
void GfxPrint_SetPos(GfxPrint* this, s32 x, s32 y);
void GfxPrint_SetBasePosPx(GfxPrint* this, s32 x, s32 y);
void GfxPrint_Init(GfxPrint* this);
void GfxPrint_Destroy(GfxPrint* this);
void GfxPrint_Open(GfxPrint* this, Gfx* dList);
Gfx* GfxPrint_Close(GfxPrint* this);
s32 GfxPrint_Printf(GfxPrint* this, const char* fmt, ...);
void func_800FBCE0();
void func_800FBFD8(void);
void* Overlay_AllocateAndLoad(u32 vRomStart, u32 vRomEnd, void* vRamStart, void* vRamEnd);
+21 -12
View File
@@ -1511,26 +1511,35 @@ typedef struct {
/* 0x38 */ void(*inputCallback)();
} FaultDrawer; // size = 0x3C
typedef struct GfxPrint {
/* 0x00 */ struct GfxPrint* (*callback)(struct GfxPrint*, const char*, size_t);
/* 0x04 */ Gfx* dlist;
typedef struct {
/* 0x00 */ PrintCallback callback;
/* 0x04 */ Gfx* dList;
/* 0x08 */ u16 posX;
/* 0x0A */ u16 posY;
/* 0x0C */ u16 baseX;
/* 0x0E */ u8 baseY;
/* 0x0F */ u8 flag;
/* 0x0F */ u8 flags;
/* 0x10 */ Color_RGBA8_u32 color;
/* 0x14 */ char unk_14[0x1C]; // unused
} GfxPrint; // size = 0x30
typedef enum {
GFXPRINT_FLAG1 = 1,
GFXPRINT_USE_RGBA16 = 2,
GFXPRINT_FLAG4 = 4,
GFXPRINT_UPDATE_MODE = 8,
GFXPRINT_FLAG64 = 0x40,
GFXPRINT_OPEN = 0x80
} GfxPrintFlag;
#define GFXP_UNUSED "\x8E"
#define GFXP_UNUSED_CHAR 0x8E
#define GFXP_HIRAGANA "\x8D"
#define GFXP_HIRAGANA_CHAR 0x8D
#define GFXP_KATAKANA "\x8C"
#define GFXP_KATAKANA_CHAR 0x8C
#define GFXP_RAINBOW_ON "\x8B"
#define GFXP_RAINBOW_ON_CHAR 0x8B
#define GFXP_RAINBOW_OFF "\x8A"
#define GFXP_RAINBOW_OFF_CHAR 0x8A
#define GFXP_FLAG_HIRAGANA (1 << 0)
#define GFXP_FLAG_RAINBOW (1 << 1)
#define GFXP_FLAG_SHADOW (1 << 2)
#define GFXP_FLAG_UPDATE (1 << 3)
#define GFXP_FLAG_ENLARGE (1 << 6)
#define GFXP_FLAG_OPEN (1 << 7)
typedef struct StackEntry {
/* 0x00 */ struct StackEntry* next;