From 1a649b9146fae34c623e8029e8effed973ea4ecb Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Fri, 25 Sep 2020 00:10:54 -0500 Subject: split, decomp, rinse, repeat --- src/code_8048480.c | 21 +++++++++++++++++++++ src/event_flag.c | 32 ++++++++++++++++++++++++++++++++ src/file_system.c | 20 ++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 src/code_8048480.c (limited to 'src') diff --git a/src/code_8048480.c b/src/code_8048480.c new file mode 100644 index 0000000..7033590 --- /dev/null +++ b/src/code_8048480.c @@ -0,0 +1,21 @@ +#include "global.h" + +extern void sub_807D148(u32 r0, u32 r1, u32 r2, u32 r3); +extern void sub_8075FCC(void); +extern void sub_8077AE4(u32 r0, u32 r1, u32 r2); +extern void sub_8072008(u32 r0, u32 r1, u32 r2, u32 r3); + +void sub_8048480(u32 r0, u32 r1) +{ + sub_807D148(r0, r1, 0, 0); +} + +void sub_8048490(void) +{ + sub_8075FCC(); +} + +void sub_804849C(u32 r0, u32 r1) +{ + sub_8077AE4(r0, r1, 1); +} diff --git a/src/event_flag.c b/src/event_flag.c index 0515308..1a4afc1 100644 --- a/src/event_flag.c +++ b/src/event_flag.c @@ -1,6 +1,38 @@ #include "global.h" +#include "memory.h" + +struct UnkEventStruct +{ + /* 0x0 */ u32 unk0; + /* 0x4 */ s16 unk4; + /* 0x6 */ u16 unk6; + /* 0x8 */ u16 unk8; + /* 0xA */ s16 unkA; +}; + +struct UnkEventStruct2 +{ + /* 0x0 */ u32 unk0; + /* 0x4 */ u32 unk4; +}; extern void sub_800226C(u8 r0, u8 r1, u32* r2, u8 u3); +extern void sub_800160C(struct UnkEventStruct2 *r0, u32 r1, u32 r2); + +extern u8 gUnknown_2000A88; + + +//u8 sub_8002718(struct UnkEventStruct *r0) +//{ +// struct UnkEventStruct2 temp; +// sub_800160C(&temp, 0, 0); +// MemoryCopy8(&gUnknown_2000A88, (u8 *)r0, (0x80 << 3)); +// +// // TODO fix this comparison to make it match +// if(r0->unkA != temp.unk4) +// return 0; +// return 1; +//} void sub_8002758(u32 *r0) { diff --git a/src/file_system.c b/src/file_system.c index 81bbfef..71b5534 100644 --- a/src/file_system.c +++ b/src/file_system.c @@ -12,6 +12,26 @@ extern u32 sub_800AAB4(u32 r0, u32 r1, u32 r2); u8 *GetSiroPtr(struct OpenedFile *); void NDS_DecompressRLE(void *); +struct UnkFileStruct +{ + /* 0x0 */ u32 unk0; + /* 0x4 */ u32 unk4; +}; + +extern u32 gUnknown_80B96E4[]; + +void sub_800A894(struct UnkFileStruct *r0, s32 r1) +{ + s32 temp; + temp = r1; + if(r1 <= 0) + temp = 1; + if(temp > 0x12b) + temp = 0x12b; + r0->unk4 = gUnknown_80B96E4[temp]; + r0->unk0 = 0; +} + void InitFileSystem(void) { s32 i; -- cgit v1.2.3