Starship/src/main/7B20.c

49 lines
969 B
C
Raw Normal View History

2023-10-06 09:57:30 -03:00
#include "common.h"
2023-10-07 06:15:17 -03:00
typedef struct {
s8 unk0;
char pad_0[0x27];
void* unk28;
s32 unk2C;
s32 unk30;
} UnkStruct_func_80007088;
2023-10-07 05:04:42 -03:00
extern s32 D_8013C3D0;
2023-10-07 05:11:06 -03:00
extern s32 D_80144BD0;
2023-10-07 05:04:42 -03:00
void func_80006F20(void) {
D_80144BD0 = &D_8013C3D0;
}
2023-10-06 09:57:30 -03:00
2023-10-07 05:35:32 -03:00
s32 func_80006F38(s32 arg0) {
s32 tmp = D_80144BD0;
2023-10-07 06:09:40 -03:00
2023-10-07 05:35:32 -03:00
D_80144BD0 = ((arg0 + 0xF) & ~0xF) + D_80144BD0;
return tmp;
2023-10-07 05:17:28 -03:00
}
2023-10-06 09:57:30 -03:00
2023-10-07 06:09:40 -03:00
// https://decomp.me/scratch/uf9Ap 98.50%
2023-10-06 09:57:30 -03:00
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/7B20/func_80006F60.s")
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/7B20/func_80006FD8.s")
2023-10-07 06:09:40 -03:00
void func_80007068(s32* arg0, s32 arg1) {
*arg0 += arg1;
}
2023-10-06 09:57:30 -03:00
2023-10-06 10:23:21 -03:00
void func_8000707C(s32* arg0, s32 arg1) {
*arg0 = arg1;
}
2023-10-06 09:57:30 -03:00
2023-10-07 06:15:17 -03:00
void func_80007088(UnkStruct_func_80007088* arg0) {
void (*temp_v0)(s32, s32);
temp_v0 = arg0->unk28;
if (temp_v0 != NULL) {
temp_v0(arg0->unk2C, arg0->unk30);
}
arg0->unk0 = 0;
}
2023-10-06 09:57:30 -03:00
#pragma GLOBAL_ASM("asm/us/nonmatchings/main/7B20/func_800070C8.s")