unsplit and struct types

This commit is contained in:
CreateSource 2023-11-22 20:57:07 -05:00
parent af8b220f19
commit 9d0fc6fb1c
2 changed files with 101 additions and 3 deletions

View file

@ -15,10 +15,19 @@ typedef struct Vec3f {
f32 z;
} Vec3f;
typedef struct unkStruct_1D3B44 {
struct unkStruct_1D3B44 *prev;
typedef struct unkStruct145A98 {
s16 unk_00;
char unk_02[10];
s16 unk_0C;
char unk_0E[6];
u8 unk_14;
char unk_15[0x53];
} unkStruct145A98; // sizeof 0x68
typedef struct unkStruct1D3B44 {
struct unkStruct1D3B44 *prev;
char unk_04[0x1A];
u16 unk_1E;
} unkStruct_1D3B44;
} unkStruct1D3B44; // sizeof ???
#endif

89
src/unsplit/unsplit.c Normal file
View file

@ -0,0 +1,89 @@
#include "common.h"
extern unkStruct145A98 lbl_80145A98[0x100];
extern s32 debugFontColor;
extern s16 lbl_801D3B2C;
extern s16 lbl_801D3B2E;
extern unkStruct1D3B44* lbl_801D3B44;
void fn_8000AEF0(void) {
s32 i;
debugFontColor = 0xF;
lbl_801D3B2E = 0;
for (i = 0; i < 0x100; i++) {
lbl_80145A98[i].unk_14 = 0;
}
fn_8000AF54();
}
void fn_8000AF54(void) {
s32 i;
lbl_801D3B2E = 0;
lbl_801D3B2C = 0;
for (i = 0; i < 0x100; i++) {
lbl_80145A98[i].unk_0C = (s16) (i + 1);
lbl_80145A98[i].unk_00 = 0;
if (lbl_80145A98[i].unk_14 != 0) {
lbl_80145A98[i].unk_14 = 0;
}
}
}
// HuPrcCall
// HuPrcMemAlloc
// HuPrcMemFree
void HuPrcSetStat(unkStruct1D3B44* arg0, u16 arg1) {
arg0->unk_1E |= arg1;
}
void HuPrcResetStat(unkStruct1D3B44* arg0, s32 arg1) {
arg0->unk_1E &= ~arg1;
}
void HuPrcAllPause(s32 arg0) {
unkStruct1D3B44* var_r31;
var_r31 = lbl_801D3B44;
if (arg0 != 0) {
while (var_r31 != NULL) {
if ((var_r31->unk_1E & 4) == 0) {
var_r31->unk_1E |= (u16) 1;
}
var_r31 = var_r31->prev;
}
return;
}
while (var_r31 != NULL) {
if ((var_r31->unk_1E & 1) != 0) {
var_r31->unk_1E &= -2;
}
var_r31 = var_r31->prev;
}
}
void HuPrcAllUPause(s32 arg0) {
unkStruct1D3B44* var_r31;
var_r31 = lbl_801D3B44;
if (arg0 != 0) {
while (var_r31 != NULL) {
if ((var_r31->unk_1E & 8) == 0) {
var_r31->unk_1E |= (u16) 2;
}
var_r31 = var_r31->prev;
}
return;
}
while (var_r31 != NULL) {
if ((var_r31->unk_1E & 2) != 0) {
var_r31->unk_1E &= -3;
}
var_r31 = var_r31->prev;
}
}