SSBM Decomp
Loading...
Searching...
No Matches
lbmthp.h
Go to the documentation of this file.
1#ifndef GALE01_01E8F8
2#define GALE01_01E8F8
3
4#include <placeholder.h>
5#include <platform.h>
6
7#include "lb/forward.h"
8#include <baselib/forward.h>
9
10#include <stddef.h>
11#include <dolphin/gx/GXStruct.h>
12#include <dolphin/thp/thp.h>
13
14/* THPDec function declarations */
18void THPDec_80331340(s32, void*, void*, void*);
19void THPDec_803313D0(s32, void*, void*, void*, u32);
20s32 THPVideoDecode(void*, void*, void*, void*, void*);
21
24 /* 0x000 */ char pad_0[0x20];
25 /* 0x020 */ u32 unk_20;
26 /* 0x024 */ char pad_24[0x1C];
27 /* 0x040 */ u32 unk_40;
28 /* 0x044 */ u32 unk_44;
29 /* 0x048 */ u32 unk_48;
30 /* 0x04C */ void** frame_buffers;
31 /* 0x050 */ void* unk_50;
32 /* 0x054 */ void* unk_54;
33 /* 0x058 */ void* unk_58;
34 /* 0x05C */ char pad_5C[0xC];
35 /* 0x068 */ s32 unk_68;
36 /* 0x06C */ char pad_6C[0x4];
37 /* 0x070 */ s32 unk_70;
38 /* 0x074 */ u32 unk_74;
39 /* 0x078 */ s32 unk_78;
40 /* 0x07C */ s32 unk_7C;
41 /* 0x080 */ s32 unk_80;
42 /* 0x084 */ s32 unk_84;
43 /* 0x088 */ s32 unk_88;
44 /* 0x08C */ u32 unk_8C;
45 /* 0x090 */ s32 unk_90;
46 /* 0x094 */ char pad_94[0x70];
47 /* 0x104 */ u32 unk_104;
48 /* 0x108 */ s32 unk_108;
49 /* 0x10C */ s32 unk_10C;
50 /* 0x110 */ s32 unk_110;
51 /* 0x114 */ char pad_114[0xC];
52 /* 0x120 */ u32 curr_file_offset;
53 /* 0x124 */ u32 currPackedSize;
54 /* 0x128 */ s32 file_entrynum;
55 /* 0x12C */ u32* rate_table;
56 /* 0x130 */ s32 unk_130;
57 /* 0x134 */ s32 unk_134;
58 /* 0x138 */ s32 unk_138;
59 /* 0x13C */ u32 unk_13C;
60 /* 0x140 */ void* unk_140;
61 /* 0x144 */ s32 unk_144;
62 /* 0x148 */ s32 unk_148;
63 /* 0x14C */ s32 power;
64 /* 0x150 */ OSAlarm alarm;
65 /* 0x178 */ GXTexObj unk_178;
66 /* 0x198 */ GXTexObj unk_198;
67 /* 0x1B8 */ GXTexObj unk_1B8;
68}; /* size = 0x1D8 */
69STATIC_ASSERT(sizeof(struct lbl_804333E0_t) == 0x1D8);
70
71/* Struct used by fn_8001EBF0 for THP decode component init */
72typedef struct THPDecComp {
73 /* 0x00 */ u8 pad0[0x08];
74 /* 0x08 */ u32 version;
75 /* 0x0C */ u32 buf_size;
76 /* 0x10 */ u32 x_size;
77 /* 0x14 */ u32 y_size;
78 /* 0x18 */ u32 frame_rate;
79 /* 0x1C */ u32 num_frames;
80 /* 0x20 */ u32 first_frame;
81 /* 0x24 */ u32 frame_offsets;
83 /* 0x2C */ u8 pad2C[0x40 - 0x2C];
84 /* 0x40 */ u32 unk_40;
85 /* 0x44 */ u32 width;
86 /* 0x48 */ u32 height;
87 /* 0x4C */ u32* frame_buffers;
88 /* 0x50 */ void* unk_50;
89 /* 0x54 */ void* unk_54;
90 /* 0x58 */ void* unk_58;
91 /* 0x5C */ u8 pad5C[0x64 - 0x5C];
92 /* 0x64 */ u32 unk_64;
93 /* 0x68 */ s32 unk_68;
94 /* 0x6C */ s32 unk_6C;
95 /* 0x70 */ s32 unk_70;
96 /* 0x74 */ u32 unk_74;
97 /* 0x78 */ u32 unk_78;
98 /* 0x7C */ u32 unk_7C;
99 /* 0x80 */ u32 unk_80;
100 /* 0x84 */ u32 unk_84;
101 /* 0x88 */ u32 unk_88;
102 /* 0x8C */ u32 unk_8C;
103 /* 0x90 */ u32 unk_90;
104 /* 0x94 */ s32 unk_94;
105 /* 0x98 */ s32 unk_98;
107 /* 0xA8 */ u16 unk_A8;
108 /* 0xAA */ u16 unk_AA;
109 /* 0xAC */ u8 unk_AC;
110 /* 0xAD */ u8 padAD[0x100 - 0xAD];
111 /* 0x100 */ u32 unk_100;
112 /* 0x104 */ u32 unk_104;
113 /* 0x108 */ s32 unk_108;
114 /* 0x10C */ s32 unk_10C;
115 /* 0x110 */ s32 unk_110;
116 /* 0x114 */ u8 pad114[0x11C - 0x114];
117 /* 0x11C */ s32 unk_11C;
119 /* 0x124 */ u32 currPackedSize;
120 /* 0x128 */ s32 file_entrynum;
121 /* 0x12C */ u8 pad12C[0x130 - 0x12C];
122 /* 0x130 */ s32 unk_130;
123 /* 0x134 */ s32 unk_134;
124 /* 0x138 */ u32 unk_138;
125 /* 0x13C */ u32 unk_13C;
126 char pad[0x1D8 - 0x140];
127} THPDecComp;
128STATIC_ASSERT(sizeof(struct THPDecComp) == sizeof(struct lbl_804333E0_t));
129
130/* 01E910 */ void fn_8001E910(int, int, void*, int);
131/* 01EB14 */ s32 fn_8001EB14(THPDecComp* data, const char* path);
132/* 01EBF0 */ size_t fn_8001EBF0(THPDecComp* data);
133/* 01ECF4 */ void fn_8001ECF4(THPDecComp* data, void* buf);
134/* 01EF5C */ s32 fn_8001EF5C(THPDecComp* data);
135/* 01F06C */ s32 fn_8001F06C(THPDecComp* data);
136/* 01F13C */ s32 fn_8001F13C(THPDecComp* data);
137/* 01F294 */ s32 fn_8001F294(void);
138/* 01F410 */ void lbMthp_8001F410(const char* filename, u32* rate_table,
139 void* buf, size_t heap_size, int loop);
140/* 01F578 */ void lbMthp_8001F578(void);
141/* 01F5C4 */ s32 lbMthp_8001F5C4(void);
142/* 01F5D4 */ s32 lbMthp_8001F5D4(void);
143/* 01F5E4 */ s32 lbMthp_8001F5E4(void);
144/* 01F5F4 */ s32 lbMthp_8001F5F4(void);
145/* 01F604 */ s32 lbMthp_8001F604(void);
146/* 01F614 */ void lbMthp_8001F614(s32 arg0);
147/* 01F624 */ HSD_SObj* lbMthp_8001F624(HSD_GObj*, int, int);
148/* 01F67C */ void lbMthp_8001F67C(HSD_GObj*, int);
149/* 01F800 */ void lbMthp_8001F800(void);
150/* 01F87C */ void lbMthp_8001F87C(void);
151/* 01F890 */ void* lbMthp8001F890(HSD_GObj*);
152/* 01F928 */ void lbMthp8001F928(HSD_GObj*, int);
153/* 01FAA0 */ UNK_RET lbMthp8001FAA0(const char* filename, int, int);
154
155#endif
char buf[0x5A4]
Definition dbanim.c:16
int BOOL
Definition types.h:20
unsigned long u32
Definition types.h:9
unsigned short int u16
Definition types.h:7
signed long s32
Definition hsd_3B2B.h:1
unsigned char u8
Definition hsd_3B2B.h:2
void lbMthp_8001F67C(HSD_GObj *, int)
Definition lbmthp.c:539
s32 THPDec_8032FD40(THPDec_8032FD40_Data *arg0, u16 height)
s32 fn_8001F294(void)
Definition lbmthp.c:592
size_t fn_8001EBF0(THPDecComp *data)
Definition lbmthp.c:138
s32 lbMthp_8001F5D4(void)
Definition lbmthp.c:498
BOOL THPInit(void)
void lbMthp8001F928(HSD_GObj *, int)
Definition lb_01F8.c:46
s32 fn_8001EB14(THPDecComp *data, const char *path)
Definition lbmthp.c:106
void THPDec_80331340(s32, void *, void *, void *)
void lbMthp_8001F410(const char *filename, u32 *rate_table, void *buf, size_t heap_size, int loop)
Definition lbmthp.c:453
void lbMthp_8001F87C(void)
Definition lbmthp.c:597
s32 lbMthp_8001F5E4(void)
Definition lbmthp.c:503
s32 THPVideoDecode(void *, void *, void *, void *, void *)
s32 THPDec_8032F8D4(u32, void *)
s32 lbMthp_8001F5C4(void)
Definition lbmthp.c:493
s32 fn_8001EF5C(THPDecComp *data)
Definition lbmthp.c:273
s32 lbMthp_8001F5F4(void)
Definition lbmthp.c:508
void fn_8001ECF4(THPDecComp *data, void *buf)
Definition lbmthp.c:196
HSD_SObj * lbMthp_8001F624(HSD_GObj *, int, int)
Definition lbmthp.c:528
s32 fn_8001F06C(THPDecComp *data)
Definition lbmthp.c:305
s32 lbMthp_8001F604(void)
Definition lbmthp.c:513
void lbMthp_8001F578(void)
Definition lbmthp.c:482
UNK_RET lbMthp8001FAA0(const char *filename, int, int)
Definition lb_01F8.c:72
void THPDec_803313D0(s32, void *, void *, void *, u32)
void * lbMthp8001F890(HSD_GObj *)
Definition lb_01F8.c:30
void lbMthp_8001F614(s32 arg0)
Definition lbmthp.c:518
void fn_8001E910(int, int, void *, int)
Definition lbmthp.c:36
s32 fn_8001F13C(THPDecComp *data)
Definition lbmthp.c:340
void lbMthp_8001F800(void)
Definition lbmthp.c:573
static u32 * rate_table
Definition mngallery.c:26
static size_t const heap_size
Definition mngallery.c:25
#define UNK_RET
Definition placeholder.h:39
#define STATIC_ASSERT(cond)
Definition platform.h:132
Definition GXStruct.h:39
Definition gobj.h:24
Definition sobjlib.h:29
Definition OSAlarm.h:10
Definition lbmthp.h:72
u32 currPackedSize
Definition lbmthp.h:119
u32 unk_40
Definition lbmthp.h:84
u8 pad12C[0x130 - 0x12C]
Definition lbmthp.h:121
u32 buf_size
Definition lbmthp.h:75
u8 pad2C[0x40 - 0x2C]
Definition lbmthp.h:83
s32 unk_10C
Definition lbmthp.h:114
u32 unk_13C
Definition lbmthp.h:125
u32 curr_file_offset
Definition lbmthp.h:118
s32 unk_11C
Definition lbmthp.h:117
u8 pad5C[0x64 - 0x5C]
Definition lbmthp.h:91
void * unk_50
Definition lbmthp.h:88
u32 frame_rate
Definition lbmthp.h:78
u32 frame_offsets
Definition lbmthp.h:81
u8 padAD[0x100 - 0xAD]
Definition lbmthp.h:110
s32 file_entrynum
Definition lbmthp.h:120
s32 unk_98
Definition lbmthp.h:105
u32 num_frames
Definition lbmthp.h:79
u32 unk_100
Definition lbmthp.h:111
u8 pad114[0x11C - 0x114]
Definition lbmthp.h:116
s32 unk_130
Definition lbmthp.h:122
void * unk_54
Definition lbmthp.h:89
u32 unk_80
Definition lbmthp.h:99
u32 first_frame_size
Definition lbmthp.h:82
u32 first_frame
Definition lbmthp.h:80
u32 unk_78
Definition lbmthp.h:97
u32 unk_74
Definition lbmthp.h:96
s32 unk_110
Definition lbmthp.h:115
u8 unk_AC
Definition lbmthp.h:109
u32 y_size
Definition lbmthp.h:77
u32 unk_7C
Definition lbmthp.h:98
u32 unk_84
Definition lbmthp.h:100
u32 unk_8C
Definition lbmthp.h:102
u32 * frame_buffers
Definition lbmthp.h:87
u32 unk_64
Definition lbmthp.h:92
char pad[0x1D8 - 0x140]
Definition lbmthp.h:126
u16 unk_A8
Definition lbmthp.h:107
s32 unk_6C
Definition lbmthp.h:94
u8 pad0[0x08]
Definition lbmthp.h:73
u32 unk_88
Definition lbmthp.h:101
s32 unk_134
Definition lbmthp.h:123
THPDec_8032FD40_Data unk_9C
Definition lbmthp.h:106
u32 unk_90
Definition lbmthp.h:103
s32 unk_94
Definition lbmthp.h:104
void * unk_58
Definition lbmthp.h:90
s32 unk_68
Definition lbmthp.h:93
u32 version
Definition lbmthp.h:74
u16 unk_AA
Definition lbmthp.h:108
s32 unk_70
Definition lbmthp.h:95
u32 unk_104
Definition lbmthp.h:112
u32 height
Definition lbmthp.h:86
u32 width
Definition lbmthp.h:85
u32 x_size
Definition lbmthp.h:76
s32 unk_108
Definition lbmthp.h:113
u32 unk_138
Definition lbmthp.h:124
Definition thp.h:59
Definition lbmthp.h:23
s32 unk_88
Definition lbmthp.h:43
u32 unk_13C
Definition lbmthp.h:59
GXTexObj unk_198
Definition lbmthp.h:66
char pad_94[0x70]
Definition lbmthp.h:46
s32 unk_90
Definition lbmthp.h:45
u32 unk_74
Definition lbmthp.h:38
s32 unk_78
Definition lbmthp.h:39
void * unk_50
Definition lbmthp.h:31
u32 unk_104
Definition lbmthp.h:47
u32 unk_44
Definition lbmthp.h:28
s32 unk_110
Definition lbmthp.h:50
s32 unk_7C
Definition lbmthp.h:40
u32 unk_8C
Definition lbmthp.h:44
u32 unk_48
Definition lbmthp.h:29
s32 unk_144
Definition lbmthp.h:61
void * unk_140
Definition lbmthp.h:60
GXTexObj unk_178
Definition lbmthp.h:65
s32 unk_130
Definition lbmthp.h:56
s32 unk_148
Definition lbmthp.h:62
u32 curr_file_offset
Definition lbmthp.h:52
s32 file_entrynum
Definition lbmthp.h:54
char pad_0[0x20]
Definition lbmthp.h:24
OSAlarm alarm
Definition lbmthp.h:64
s32 unk_108
Definition lbmthp.h:48
s32 unk_68
Definition lbmthp.h:35
s32 unk_70
Definition lbmthp.h:37
s32 unk_80
Definition lbmthp.h:41
s32 unk_134
Definition lbmthp.h:57
s32 unk_84
Definition lbmthp.h:42
u32 * rate_table
Definition lbmthp.h:55
char pad_5C[0xC]
Definition lbmthp.h:34
s32 power
Definition lbmthp.h:63
char pad_114[0xC]
Definition lbmthp.h:51
void * unk_54
Definition lbmthp.h:32
s32 unk_10C
Definition lbmthp.h:49
void * unk_58
Definition lbmthp.h:33
char pad_6C[0x4]
Definition lbmthp.h:36
u32 currPackedSize
Definition lbmthp.h:53
u32 unk_20
Definition lbmthp.h:25
GXTexObj unk_1B8
Definition lbmthp.h:67
u32 unk_40
Definition lbmthp.h:27
s32 unk_138
Definition lbmthp.h:58
void ** frame_buffers
Definition lbmthp.h:30
char pad_24[0x1C]
Definition lbmthp.h:26