summaryrefslogtreecommitdiff
path: root/src/wonder_mail_3.c
diff options
context:
space:
mode:
authorSeth Barberee <seth.barberee@gmail.com>2021-06-18 17:56:20 -0500
committerSeth Barberee <seth.barberee@gmail.com>2021-06-18 17:56:20 -0500
commitf1fdcc2b0ade13ad1a4cc7360eac70f27396d26a (patch)
tree3ac5b9f61650299f96095e3d3c09ad771793be08 /src/wonder_mail_3.c
parente806b05526bfcc540cb2c1f3165a96e76f6c235d (diff)
more splitting and labeling with some decomp
Diffstat (limited to 'src/wonder_mail_3.c')
-rw-r--r--src/wonder_mail_3.c49
1 files changed, 48 insertions, 1 deletions
diff --git a/src/wonder_mail_3.c b/src/wonder_mail_3.c
index 80552f6..88fa520 100644
--- a/src/wonder_mail_3.c
+++ b/src/wonder_mail_3.c
@@ -1,10 +1,12 @@
#include "global.h"
#include "memory.h"
+#include "text.h"
+#include "input.h"
struct unkStruct_203B2F8
{
// size: 0x208
- u32 state; // state
+ s32 state; // state
u32 unk4;
u8 unk8;
u8 unk9;
@@ -15,8 +17,22 @@ struct unkStruct_203B2F8
u32 unk6C;
u32 unk70;
u32 unk74;
+ u8 fill78[0x118 - 0x78];
+ u32 unk118;
+ u8 fill11C[0x158 - 0x11C];
+ u32 unk158;
+ u8 fill15C[0x198 - 0x15C];
+ u16 unk198[8];
+ struct UnkTextStruct2 unk1A8[4];
+ u32 unk1E4;
};
extern struct unkStruct_203B2F8 *gUnknown_203B2F8;
+extern struct UnkTextStruct2 gUnknown_80DFE04;
+extern struct UnkTextStruct2 gUnknown_80DFE1C;
+extern struct UnkTextStruct2 gUnknown_80DFDD4;
+extern void sub_8012CAC(struct UnkTextStruct2 *, u32 *);
+extern void sub_802D63C(void);
+extern void sub_802D5A4(void);
extern u8 sub_8099328(u8 *);
extern u32 sub_8011C1C();
@@ -103,3 +119,34 @@ void sub_802D1A0(u32 newState)
sub_802D1B8();
sub_802D2A8();
}
+
+void sub_802D1B8(void)
+{
+ s32 iVar2;
+ sub_8006518(gUnknown_203B2F8->unk1A8);
+ switch(gUnknown_203B2F8->state)
+ {
+ case 0xD:
+ sub_802D5A4();
+ gUnknown_203B2F8->unk1A8[2] = gUnknown_80DFE04;
+ sub_8012CAC(&gUnknown_203B2F8->unk1A8[2], &gUnknown_203B2F8->unk118);
+ gUnknown_203B2F8->unk1A8[2].unk0c = 6;
+ break;
+ case 0xE:
+ sub_802D63C();
+ gUnknown_203B2F8->unk1A8[3] = gUnknown_80DFE1C;
+ sub_8012CAC(&gUnknown_203B2F8->unk1A8[3], &gUnknown_203B2F8->unk158);
+ gUnknown_203B2F8->unk1A8[3].unk0c = 6;
+ break;
+ default:
+ for(iVar2 = 0; iVar2 < 4; iVar2++)
+ {
+ gUnknown_203B2F8->unk1A8[iVar2] = gUnknown_80DFDD4;
+ }
+ break;
+ case 2:
+ break;
+ }
+ ResetUnusedInputStruct();
+ sub_800641C(gUnknown_203B2F8->unk1A8, 1, 1);
+}