diff options
author | Marcus Huderle <huderlem@gmail.com> | 2019-04-15 17:51:11 -0500 |
---|---|---|
committer | huderlem <huderlem@gmail.com> | 2019-04-16 11:21:13 -0500 |
commit | 394c0f5546aa152012f0c812d1e6cf0a696bfe86 (patch) | |
tree | c516bd31a0c3b7177423adf0aae8c74155086a70 /src/pokenav_unk_4.c | |
parent | f40f2c5e9cc497576dd799a93571ceb8b492a17c (diff) |
Start decompiling pokenav_unk_4.c
Diffstat (limited to 'src/pokenav_unk_4.c')
-rwxr-xr-x | src/pokenav_unk_4.c | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/pokenav_unk_4.c b/src/pokenav_unk_4.c new file mode 100755 index 000000000..c07794126 --- /dev/null +++ b/src/pokenav_unk_4.c @@ -0,0 +1,67 @@ +#include "global.h" +#include "pokenav.h" +#include "window.h" + +struct Pokenav4Struct +{ + u32 (*unk0)(void); + u32 unk4; + u8 filler8[0x8]; + u8 unk10; + u8 filler11[0x1]; + u8 unk12; + u8 filler13[0x1]; + u8 unk14; + u8 filler15[0x4]; + u8 unk19; + u8 filler1A[0x202E]; +}; + +static bool32 sub_81CB310(void); +u32 sub_81CB324(int); +void sub_81CBC1C(void); +void sub_81CC2B4(void); + +extern const LoopedTask gUnknown_08622798[]; + +bool32 sub_81CB260(void) +{ + struct Pokenav4Struct *state = AllocSubstruct(6, sizeof(struct Pokenav4Struct)); + if (!state) + return FALSE; + + state->unk19 = 0; + state->unk4 = CreateLoopedTask(sub_81CB324, 1); + state->unk0 = sub_81CB310; + return TRUE; +} + +void sub_81CB29C(int index) +{ + struct Pokenav4Struct *state = GetSubstructPtr(6); + state->unk4 = CreateLoopedTask(gUnknown_08622798[index], 1); + state->unk0 = sub_81CB310; +} + +u32 sub_81CB2CC(void) +{ + struct Pokenav4Struct *state = GetSubstructPtr(6); + return state->unk0(); +} + +void sub_81CB2E0(void) +{ + struct Pokenav4Struct *state = GetSubstructPtr(6); + sub_81CC2B4(); + sub_81CBC1C(); + RemoveWindow(state->unk12); + RemoveWindow(state->unk10); + RemoveWindow(state->unk14); + FreePokenavSubstruct(6); +} + +static bool32 sub_81CB310(void) +{ + struct Pokenav4Struct *state = GetSubstructPtr(6); + return IsLoopedTaskActive(state->unk4); +} |