SSBM Decomp
Loading...
Searching...
No Matches
hsd_3A76.c File Reference
#include <string.h>
#include "cobj.h"
#include "gobj.h"
#include "gobjobject.h"
#include "sislib.h"
#include "sislib_font.h"
#include "state.h"
#include "tev.h"
#include "wobj.h"
#include <dolphin/gx.h>
#include <dolphin/mtx.h>
#include <dolphin/types.h>
#include <melee/lb/lbarchive.h>

Macros

#define SIS_GET_U16(p)
 SIS strings are big-endian byte streams.
#define SIS_GET_S16(p)
#define SIS_GET_SAVED_CURSOR(p)
#define SIS_GET_JUMP_TARGET(p)

Enumerations

enum  SIS_SAVED_CURSOR { SIS_SAVED_CURSOR_SIZE = sizeof(u8*) }
 < More...

Functions

static u8 * sisGetSavedCursor (const u8 *p)
 Runtime cursors are saved as pointer-sized big-endian values.
static u8 * sisGetJumpTarget (const u8 *p)
 Jump operands are unaligned within the stream.
void HSD_SisLib_803A7684 (HSD_Text *text, const u8 *cursor, u8 flags)
u8 * HSD_SisLib_803A7F0C (HSD_Text *text, s32 flags)
void HSD_SisLib_803A8134 (u8 *cursor, HSD_Text *text, f32 *out_width, f32 *out_height)
static void sisFitLineToBox (HSD_Text *text, f32 measured_width)
void HSD_SisLib_803A84BC (HSD_GObj *gobj, intptr_t pass)
HSD_Archive * HSD_SisLib_803A945C (char *path)
void HSD_SisLib_803A947C (HSD_Archive *archive)
 STATIC_ASSERT (sizeof(HSD_SisLib_8040C680)==0x240)
 STATIC_ASSERT (sizeof(lbl_8040C8C0)==0x240)
 STATIC_ASSERT (sizeof(HSD_SisLib_8040CB00)==0x240)

Variables

SisGlyphCode HSD_SisLib_8040C680 [288]
SjisChar lbl_8040C8C0 [288]
TextGlyphMetrics HSD_SisLib_8040CB00 [288]

Macro Definition Documentation

◆ SIS_GET_U16

#define SIS_GET_U16 ( p)
Value:
((u16) (((p)[0] << 8) | (p)[1]))
unsigned short int u16
Definition types.h:7

SIS strings are big-endian byte streams.

A jump operand is an archive pointer slot, which the archive loader relocates in place like every other archive pointer.

◆ SIS_GET_S16

#define SIS_GET_S16 ( p)
Value:
#define SIS_GET_U16(p)
SIS strings are big-endian byte streams.
Definition hsd_3A76.c:32
signed short int s16
Definition types.h:6

◆ SIS_GET_SAVED_CURSOR

#define SIS_GET_SAVED_CURSOR ( p)
Value:
static u8 * sisGetSavedCursor(const u8 *p)
Runtime cursors are saved as pointer-sized big-endian values.
Definition hsd_3A76.c:38

◆ SIS_GET_JUMP_TARGET

#define SIS_GET_JUMP_TARGET ( p)
Value:
static u8 * sisGetJumpTarget(const u8 *p)
Jump operands are unaligned within the stream.
Definition hsd_3A76.c:50

Enumeration Type Documentation

◆ SIS_SAVED_CURSOR

<

Todo
Circular include

Bytes in a saved cursor record, not counting its type byte.

Enumerator
SIS_SAVED_CURSOR_SIZE 

Function Documentation

◆ sisGetSavedCursor()

u8 * sisGetSavedCursor ( const u8 * p)
inlinestatic

Runtime cursors are saved as pointer-sized big-endian values.

◆ sisGetJumpTarget()

u8 * sisGetJumpTarget ( const u8 * p)
inlinestatic

Jump operands are unaligned within the stream.

◆ HSD_SisLib_803A7684()

void HSD_SisLib_803A7684 ( HSD_Text * text,
const u8 * cursor,
u8 flags )

◆ HSD_SisLib_803A7F0C()

u8 * HSD_SisLib_803A7F0C ( HSD_Text * text,
s32 flags )

◆ HSD_SisLib_803A8134()

void HSD_SisLib_803A8134 ( u8 * cursor,
HSD_Text * text,
f32 * out_width,
f32 * out_height )

◆ sisFitLineToBox()

void sisFitLineToBox ( HSD_Text * text,
f32 measured_width )
static

◆ HSD_SisLib_803A84BC()

void HSD_SisLib_803A84BC ( HSD_GObj * gobj,
intptr_t pass )

◆ HSD_SisLib_803A945C()

HSD_Archive * HSD_SisLib_803A945C ( char * path)

◆ HSD_SisLib_803A947C()

void HSD_SisLib_803A947C ( HSD_Archive * archive)

◆ STATIC_ASSERT() [1/3]

STATIC_ASSERT ( sizeof(HSD_SisLib_8040C680) = =0x240)

◆ STATIC_ASSERT() [2/3]

STATIC_ASSERT ( sizeof(lbl_8040C8C0) = =0x240)

◆ STATIC_ASSERT() [3/3]

STATIC_ASSERT ( sizeof(HSD_SisLib_8040CB00) = =0x240)

Variable Documentation

◆ HSD_SisLib_8040C680

SisGlyphCode HSD_SisLib_8040C680[288]

◆ lbl_8040C8C0

SjisChar lbl_8040C8C0[288]

◆ HSD_SisLib_8040CB00

TextGlyphMetrics HSD_SisLib_8040CB00[288]