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
30// @todo: give actual names?
36
39typedef struct sisLib_803A7664_t {
40 void* x0;
41 void* x4;
42 u32 x8;
43 u32 xC;
45
46struct HSD_Text {
47 // these get passed to the text initializer HSD_SisLib_803A5ACC
48 f32 pos_x;
49 f32 pos_y;
50 f32 pos_z;
53 Vec4 x14;
54 Vec2 font_size;
55 GXColor bg_color;
56 GXColor text_color;
57 Vec2 x34;
58 Vec2 x3C;
59 u16 x44;
60 u16 x46;
64 u8 x4B;
65 u8 x4C; // whether to test for Z depth?
66 u8 hidden;
67 u8 x4E;
71 void (*render_callback)(void*);
76 u16 x6C;
77 u16 x6E;
80 Vec2 x78;
81 Vec2 x80;
82 f32 x88;
83 GXColor active_color;
84 u16 x90;
85 u16 x92;
86 u32 x94;
87 u32 x98;
91 u8 x9F;
92};
93
104
105extern s8 HSD_SisLib_804D6390[4];
106extern SIS* HSD_SisLib_804D1124[5];
107extern u32 lbl_8040C8C0[144];
108extern u32 HSD_SisLib_8040C680[144];
109
114
116UNK_T func_804A70A0(UNK_T, s32, u32, s32, s32, s32, s32, s32, f64, f64, f64,
117 f64, f64, f64, f64, f64);
120void HSD_SisLib_803A84BC(HSD_GObj*, int);
122void HSD_SisLib_803A8134(void*, HSD_Text*, f32*, f32*);
125void HSD_SisLib_803A75E0(HSD_Text*, s32);
126void HSD_SisLib_803A7548(HSD_Text*, int, float, float);
127void HSD_SisLib_803A74F0(HSD_Text*, s32 arg1, u8* arg2);
128void HSD_SisLib_803A746C(HSD_Text*, s32, f32, f32);
130u32 lbl_803A6FEC(s32, s32, bool);
131int HSD_SisLib_803A6B98(HSD_Text* arg0, float, float, const char*, ...);
132s32 HSD_SisLib_803A67EC(u8*, u8*);
133HSD_Text* HSD_SisLib_803A6754(int arg0, s32 arg1);
134void HSD_SisLib_803A660C(s32, s32, s32);
135void HSD_SisLib_803A6530(s32, s32, s32);
136u8* HSD_SisLib_803A6478(u8*, u8*);
137void HSD_SisLib_803A6368(HSD_Text*, s32);
138void HSD_SisLib_803A62A0(s32, char*, char*);
139s32 HSD_SisLib_803A611C(int, HSD_GObj*, u16, u8, u8, u8, u8, u32);
140void lbl_803A60EC(void);
141HSD_Text* HSD_SisLib_803A5ACC(int, s32, f32, f32, f32, f32, f32);
142void* HSD_SisLib_803A5798(s32);
143void HSD_SisLib_803A594C(void*);
145void HSD_SisLib_803A5A2C(void*);
146void HSD_SisLib_803A5D30(void);
147void HSD_SisLib_803A5DA0(s32);
148void HSD_SisLib_803A5E70(void);
149void HSD_SisLib_803A5F50(s32);
150void HSD_SisLib_803A5FBC(void);
151void fn_803A60EC(void*);
152u8* fn_803A6FEC(u8*, s32, s32*);
153// void *HSD_SisLib_803A84BC(HSD_GObj *, s32);
154
155#endif
#define UNK_T
Definition placeholder.h:32
void HSD_SisLib_803A5A2C(void *)
Definition sislib.c:218
void HSD_SisLib_803A6368(HSD_Text *, s32)
Definition sislib.c:584
void HSD_SisLib_803A594C(void *)
Definition sislib.c:169
void HSD_SisLib_803A947C(HSD_Archive *)
Definition sislib.c:2005
void HSD_SisLib_803A62A0(s32, char *, char *)
Definition sislib.c:565
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:507
void HSD_SisLib_803A8134(void *, HSD_Text *, f32 *, f32 *)
Definition sislib.c:1236
SIS * HSD_SisLib_804D1124[5]
Definition sislib.c:76
HSD_Text * HSD_SisLib_803A5ACC(int, s32, f32, f32, f32, f32, f32)
Definition sislib.c:330
void fn_803A60EC(void *)
Definition sislib.c:495
HSD_Text * HSD_SisLib_803A6754(int arg0, s32 arg1)
Definition sislib.c:688
void HSD_SisLib_803A6048(size_t)
void * HSD_SisLib_803A5798(s32)
Definition sislib.c:81
void HSD_SisLib_803A746C(HSD_Text *, s32, f32, f32)
Definition sislib.c:1160
HSD_Text * HSD_SisLib_804D7978
Definition sislib.c:61
u32 lbl_8040C8C0[144]
void HSD_SisLib_803A5D30(void)
Definition sislib.c:271
s32 HSD_SisLib_803A7F0C(HSD_Text *, s32)
Definition sislib.c:1456
void HSD_SisLib_803A75E0(HSD_Text *, s32)
Definition sislib.c:1207
void HSD_SisLib_803A5F50(s32)
Definition sislib.c:445
void HSD_SisLib_803A5FBC(void)
Definition sislib.c:458
void HSD_SisLib_803A5E70(void)
Definition sislib.c:420
u8 * fn_803A6FEC(u8 *, s32, s32 *)
Definition sislib.c:1105
int HSD_SisLib_803A6B98(HSD_Text *arg0, float, float, const char *,...)
Definition sislib.c:913
void HSD_SisLib_803A660C(s32, s32, s32)
Definition sislib.c:655
sislib_UnkAllocData * HSD_SisLib_804D7974
Definition sislib.c:60
u8 * HSD_SisLib_803A6478(u8 *, u8 *)
Definition sislib.c:622
HSD_Archive * HSD_SisLib_803A945C(char *)
Definition sislib.c:2000
sislib_UnkAlloc3 * HSD_SisLib_804D797C
Definition sislib.c:62
void HSD_SisLib_803A5CC4(HSD_Text *)
Definition sislib.c:253
void HSD_SisLib_803A6530(s32, s32, s32)
Definition sislib.c:649
s32 HSD_SisLib_803A67EC(u8 *, u8 *)
Converts ASCII to "SIS" format.
Definition sislib.c:717
void HSD_SisLib_803A74F0(HSD_Text *, s32 arg1, u8 *arg2)
Definition sislib.c:1179
void HSD_SisLib_803A84BC(HSD_GObj *, int)
Definition sislib.c:1483
void HSD_SisLib_803A5DA0(s32)
Definition sislib.c:303
void HSD_SisLib_803A7664(HSD_Text *)
Definition sislib.c:1225
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:1194
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:46
u16 x46
more flags?
Definition sislib.h:60
char * string_buffer
raw string buffer
Definition sislib.h:75
f32 box_size_y
text box size y
Definition sislib.h:52
u32 x94
Definition sislib.h:86
Vec2 font_size
font size, 1.0 being 100% of the screen?
Definition sislib.h:54
u8 font_idx
which font to select from the array HSD_SisLib_804D1124
Definition sislib.h:68
Vec2 x34
Definition sislib.h:57
Vec4 x14
Definition sislib.h:53
u8 x4C
Definition sislib.h:65
f32 x88
Definition sislib.h:82
u16 x6E
alloc size?
Definition sislib.h:77
u16 x92
set by x46
Definition sislib.h:85
void(* render_callback)(void *)
callback in the text renderer (HSD_SisLib_803A84BC)
Definition sislib.h:71
u8 fitting
Definition sislib.h:88
f32 box_size_x
text box size x
Definition sislib.h:51
u16 x6C
string length?
Definition sislib.h:76
UNK_T x60
position in text buffer
Definition sislib.h:73
Vec2 x78
Definition sislib.h:80
HSD_GObj * entity
Definition sislib.h:70
u8 kerning
Definition sislib.h:89
f32 pos_y
world position y
Definition sislib.h:49
u8 hidden
visibility flag
Definition sislib.h:66
GXColor active_color
the texts current color
Definition sislib.h:83
u16 x44
render flags?
Definition sislib.h:59
u8 x4E
Definition sislib.h:67
sislib_UnkAllocData * alloc_data
Definition sislib.h:74
SIS * sis_buffer
SIS text buffer.
Definition sislib.h:72
u8 default_alignment
sets alignment below
Definition sislib.h:63
f32 pos_z
world position z
Definition sislib.h:50
GXColor text_color
Definition sislib.h:56
HSD_Text * next
Definition sislib.h:69
u8 x9F
Definition sislib.h:91
GXColor bg_color
Definition sislib.h:55
f32 current_height
Definition sislib.h:79
u8 default_kerning
sets kerning below
Definition sislib.h:62
u16 x90
set by x44
Definition sislib.h:84
Vec2 x3C
Definition sislib.h:58
u8 alignment
Definition sislib.h:90
u8 default_fitting
sets fitting below
Definition sislib.h:61
u32 x98
Definition sislib.h:87
f32 pos_x
world position x
Definition sislib.h:48
Vec2 x80
Definition sislib.h:81
f32 current_width
Definition sislib.h:78
u8 x4B
Definition sislib.h:64
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:39
void * x4
Definition sislib.h:41
u32 x8
alloc size
Definition sislib.h:42
void * x0
Definition sislib.h:40
u32 xC
Definition sislib.h:43
Definition sislib.h:94
sislib_UnkAlloc3 * x0
Definition sislib.h:95
u16 x8
Definition sislib.h:97
u8 xE
Definition sislib.h:101
u8 xC
Definition sislib.h:99
u8 xF
Definition sislib.h:102
u8 xD
Definition sislib.h:100
HSD_GObj * x4
Definition sislib.h:96
u16 xA
Definition sislib.h:98
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