SSBM Decomp
Loading...
Searching...
No Matches
sislib.h
Go to the documentation of this file.
1#ifndef SYSDOLPHIN_BASELIB_SISLIB_H
2#define SYSDOLPHIN_BASELIB_SISLIB_H
3
4#include <placeholder.h>
5#include <platform.h>
6
7#include "baselib/archive.h"
8#include "baselib/cobj.h"
9
10#include "baselib/forward.h"
11
12#include "dolphin/gx/GXStruct.h"
13
14#include <dolphin/mtx.h>
15
16typedef struct _TextGlyphTexture {
17 /*0x00*/ u8 data[512];
19
21 /*0x00*/ u8 left;
22 /*0x01*/ u8 right;
23};
24
25typedef struct SIS {
28} SIS;
29
36
40typedef struct sisLib_803A7664_t {
41 void* x0;
42 void* x4;
43 u32 x8;
44 u32 xC;
46
47struct HSD_Text {
48 // these get passed to the text initializer HSD_SisLib_803A5ACC
49 f32 pos_x;
50 f32 pos_y;
51 f32 pos_z;
54 Vec4 x14;
55 Vec2 font_size;
56 GXColor bg_color;
57 GXColor text_color;
58 Vec2 x34;
59 Vec2 x3C;
60 u16 x44;
61 u16 x46;
66 u8 x4C; // whether to test for Z depth?
73 void*);
78 u16 x6C;
79 u16 x6E;
82 Vec2 x78;
83 Vec2 x80;
84 f32 x88;
85 GXColor active_color;
86 u16 x90;
87 u16 x92;
88 u32 x94;
89 u32 x98;
94};
95
106
107extern s8 HSD_SisLib_804D6390[4];
108extern SIS* HSD_SisLib_804D1124[5];
109extern u32 lbl_8040C8C0[144];
110extern u32 HSD_SisLib_8040C680[144];
111
116
118UNK_T func_804A70A0(UNK_T, s32, u32, s32, s32, s32, s32, s32, f64, f64, f64,
119 f64, f64, f64, f64, f64);
122void HSD_SisLib_803A84BC(HSD_GObj*, int);
124void HSD_SisLib_803A8134(void*, HSD_Text*, f32*, f32*);
128void HSD_SisLib_803A7548(HSD_Text*, int, float, float);
129void HSD_SisLib_803A74F0(HSD_Text*, s32 arg1, u8* arg2);
130void HSD_SisLib_803A746C(HSD_Text*, s32, f32, f32);
132u32 lbl_803A6FEC(s32, s32, bool);
133int HSD_SisLib_803A6B98(HSD_Text* arg0, float, float, const char*, ...);
135HSD_Text* HSD_SisLib_803A6754(int arg0, s32 arg1);
140void HSD_SisLib_803A62A0(s32, char*, char*);
141s32 HSD_SisLib_803A611C(int, HSD_GObj*, u16, u8, u8, u8, u8, u32);
142void lbl_803A60EC(void);
143HSD_Text* HSD_SisLib_803A5ACC(int, s32, f32, f32, f32, f32, f32);
145void HSD_SisLib_803A594C(void*);
147void HSD_SisLib_803A5A2C(void*);
148void HSD_SisLib_803A5D30(void);
150void HSD_SisLib_803A5E70(void);
152void HSD_SisLib_803A5FBC(void);
153void fn_803A60EC(void*);
154u8* fn_803A6FEC(u8*, s32, s32*);
156
157#endif
signed char s8
Definition hsd_3B2B.h:3
signed long s32
Definition hsd_3B2B.h:1
unsigned char u8
Definition hsd_3B2B.h:2
#define UNK_T
Definition placeholder.h:31
void HSD_SisLib_803A5A2C(void *)
Definition sislib.c:229
void HSD_SisLib_803A6368(HSD_Text *, s32)
Definition sislib.c:600
void HSD_SisLib_803A594C(void *)
Definition sislib.c:173
void HSD_SisLib_803A947C(HSD_Archive *)
Definition sislib.c:2026
void HSD_SisLib_803A62A0(s32, char *, char *)
Definition sislib.c:581
UNK_T func_804A70A0(UNK_T, s32, u32, s32, s32, s32, s32, s32, f64, f64, f64, f64, f64, f64, f64, f64)
s32 HSD_SisLib_803A611C(int, HSD_GObj *, u16, u8, u8, u8, u8, u32)
Definition sislib.c:523
void HSD_SisLib_803A8134(void *, HSD_Text *, f32 *, f32 *)
Definition sislib.c:1249
SIS * HSD_SisLib_804D1124[5]
Definition sislib.c:76
HSD_Text * HSD_SisLib_803A5ACC(int, s32, f32, f32, f32, f32, f32)
Definition sislib.c:341
void fn_803A60EC(void *)
GObj "remove" function callback.
Definition sislib.c:511
HSD_Text * HSD_SisLib_803A6754(int arg0, s32 arg1)
Definition sislib.c:704
void HSD_SisLib_803A6048(size_t)
void * HSD_SisLib_803A5798(s32)
Definition sislib.c:83
void HSD_SisLib_803A746C(HSD_Text *, s32, f32, f32)
Definition sislib.c:1174
HSD_Text * HSD_SisLib_804D7978
Definition sislib.c:61
u32 lbl_8040C8C0[144]
void HSD_SisLib_803A5D30(void)
Definition sislib.c:282
s32 HSD_SisLib_803A7F0C(HSD_Text *, s32)
Definition sislib.c:1477
void HSD_SisLib_803A75E0(HSD_Text *, s32)
Definition sislib.c:1221
void HSD_SisLib_803A5F50(s32)
Definition sislib.c:459
void HSD_SisLib_803A5FBC(void)
Definition sislib.c:472
void HSD_SisLib_803A5E70(void)
Definition sislib.c:434
u8 * fn_803A6FEC(u8 *, s32, s32 *)
Definition sislib.c:1119
int HSD_SisLib_803A6B98(HSD_Text *arg0, float, float, const char *,...)
Definition sislib.c:930
void HSD_SisLib_803A660C(s32, s32, s32)
Definition sislib.c:671
sislib_UnkAllocData * HSD_SisLib_804D7974
Definition sislib.c:60
u8 * HSD_SisLib_803A6478(u8 *, u8 *)
Definition sislib.c:638
HSD_Archive * HSD_SisLib_803A945C(char *)
Definition sislib.c:2021
sislib_UnkAlloc3 * HSD_SisLib_804D797C
Definition sislib.c:62
void HSD_SisLib_803A5CC4(HSD_Text *)
Definition sislib.c:264
void HSD_SisLib_803A6530(s32, s32, s32)
Definition sislib.c:665
s32 HSD_SisLib_803A67EC(u8 *, u8 *)
Converts ASCII to "SIS" format.
Definition sislib.c:734
void HSD_SisLib_803A74F0(HSD_Text *, s32 arg1, u8 *arg2)
Definition sislib.c:1192
void HSD_SisLib_803A84BC(HSD_GObj *, int)
Definition sislib.c:1504
void HSD_SisLib_803A5DA0(s32)
Definition sislib.c:314
void HSD_SisLib_803A7664(HSD_Text *)
Definition sislib.c:1239
s8 HSD_SisLib_804D6390[4]
Definition sislib.c:77
sislib_UnkAllocData * HSD_SisLib_804D7970
Definition sislib.c:59
u32 HSD_SisLib_8040C680[144]
s32 HSD_SisLib_803A70A0(HSD_Text *,...)
void lbl_803A60EC(void)
void HSD_SisLib_803A7548(HSD_Text *, int, float, float)
Definition sislib.c:1207
u32 lbl_803A6FEC(s32, s32, bool)
void HSD_SisLib_803A7684(UNK_T, u8, u8)
Definition archive.h:34
was using this to try and fix some matches, unsuccessfully
Definition gobj.h:26
Definition sislib.h:47
u16 x46
more flags?
Definition sislib.h:61
char * string_buffer
raw string buffer
Definition sislib.h:77
f32 box_size_y
text box size y
Definition sislib.h:53
u32 x94
Definition sislib.h:88
Vec2 font_size
font size, 1.0 being 100% of the screen?
Definition sislib.h:55
u8 font_idx
which font to select from the array HSD_SisLib_804D1124
Definition sislib.h:69
Vec2 x34
Definition sislib.h:58
Vec4 x14
Definition sislib.h:54
u8 x4C
Definition sislib.h:66
f32 x88
Definition sislib.h:84
u16 x6E
alloc size?
Definition sislib.h:79
u16 x92
set by x46
Definition sislib.h:87
void(* render_callback)(void *)
callback in the text renderer (HSD_SisLib_803A84BC)
Definition sislib.h:72
u8 fitting
Definition sislib.h:90
f32 box_size_x
text box size x
Definition sislib.h:52
u16 x6C
string length?
Definition sislib.h:78
UNK_T x60
position in text buffer
Definition sislib.h:75
Vec2 x78
Definition sislib.h:82
HSD_GObj * entity
Definition sislib.h:71
u8 kerning
Definition sislib.h:91
f32 pos_y
world position y
Definition sislib.h:50
u8 hidden
visibility flag
Definition sislib.h:67
GXColor active_color
the texts current color
Definition sislib.h:85
u16 x44
render flags?
Definition sislib.h:60
u8 x4E
Definition sislib.h:68
sislib_UnkAllocData * alloc_data
Definition sislib.h:76
SIS * sis_buffer
SIS text buffer.
Definition sislib.h:74
u8 default_alignment
sets alignment below
Definition sislib.h:64
f32 pos_z
world position z
Definition sislib.h:51
GXColor text_color
Definition sislib.h:57
HSD_Text * next
Definition sislib.h:70
u8 x9F
Definition sislib.h:93
GXColor bg_color
Definition sislib.h:56
f32 current_height
Definition sislib.h:81
u8 default_kerning
sets kerning below
Definition sislib.h:63
u16 x90
set by x44
Definition sislib.h:86
Vec2 x3C
Definition sislib.h:59
u8 alignment
Definition sislib.h:92
u8 default_fitting
sets fitting below
Definition sislib.h:62
u32 x98
Definition sislib.h:89
f32 pos_x
world position x
Definition sislib.h:49
Vec2 x80
Definition sislib.h:83
f32 current_width
Definition sislib.h:80
u8 x4B
Definition sislib.h:65
Definition sislib.h:25
TextKerning * kerning
Definition sislib.h:26
TextGlyphTexture * textures
Definition sislib.h:27
Definition sislib.h:16
Definition sislib.h:20
u8 left
Definition sislib.h:21
u8 right
Definition sislib.h:22
Definition sislib.h:40
void * x4
Definition sislib.h:42
u32 x8
alloc size
Definition sislib.h:43
void * x0
Definition sislib.h:41
u32 xC
Definition sislib.h:44
Definition sislib.h:96
sislib_UnkAlloc3 * x0
Definition sislib.h:97
u16 x8
Definition sislib.h:99
u8 xE
Definition sislib.h:103
u8 xC
Definition sislib.h:101
u8 xF
Definition sislib.h:104
u8 xD
Definition sislib.h:102
HSD_GObj * x4
Definition sislib.h:98
u16 xA
Definition sislib.h:100
Definition sislib.h:31
HSD_Text * data_1
Definition sislib.h:33
u32 size
Definition sislib.h:34
sislib_UnkAllocData * data_0
Definition sislib.h:32