diff options
Diffstat (limited to 'src/wonder_mail.c')
-rw-r--r-- | src/wonder_mail.c | 129 |
1 files changed, 105 insertions, 24 deletions
diff --git a/src/wonder_mail.c b/src/wonder_mail.c index fd5e1df..0844a96 100644 --- a/src/wonder_mail.c +++ b/src/wonder_mail.c @@ -22,14 +22,10 @@ extern u32 sub_8031050(); extern void sub_80310B4(); extern u32 sub_8095350(); extern u8 sub_80A2824(u8); - -#include "data/wonder_mail_1.h" - extern u8 sub_809539C(u32, u32); extern char gUnknown_202E5D8[0x50]; extern char gAvailablePokemonNames[0x50]; -extern struct MenuItem gUnknown_80DDA48[]; extern s32 sub_8095190(void); extern u32 sub_8095324(u32); @@ -51,7 +47,7 @@ extern void sub_803092C(void); extern u32 sub_80154F0(); extern u32 sub_8039068(u32, u8 *r1, u8 *r0); -extern void sub_8014248(const char *r0, u32, u32, struct MenuItem *r4, u32, u32, u32, void *r5, u32); +extern void sub_8014248(const char *r0, u32, u32, const struct MenuItem *r4, u32, u32, u32, void *r5, u32); extern void sub_8095274(u32); extern void sub_80155F0(); extern void sub_80951BC(u8 *r0); @@ -68,31 +64,15 @@ extern u8 sub_8024108(u32); extern u32 sub_8031DCC(); extern void sub_8031E10(); extern void sub_8031E00(); -extern u16 gUnknown_80E5990[]; extern s32 sub_8001658(u32, u32); -extern u32 gUnknown_80E4A40[]; extern u8 sub_8099B94(); - extern void sub_8099A5C(u32, u32, u32*); extern void sub_8099AFC(u32, u32, u32*); extern void ResetUnusedInputStruct(); extern void sub_8099690(u32); - - extern void sub_8031E10(void); extern void sub_803084C(void); extern void sub_8030DE4(); -extern u8 gUnknown_80DDAE4[]; -extern struct MenuItem gUnknown_80DDAA0[]; -extern struct MenuItem gUnknown_80DDA80[]; -extern struct MenuItem gUnknown_80DDAFC[]; -extern struct MenuItem gUnknown_80DDB60[]; -extern struct MenuItem gUnknown_80DDA64[]; -extern struct MenuItem gUnknown_80DDB24[]; -extern struct MenuItem gUnknown_80DD9EC[]; -extern u8 gUnknown_80DDACC[]; -extern struct MenuItem gUnknown_80DD970[]; - extern void nullsub_23(u32); extern s32 sub_8037D64(u32, void *, void *); extern s32 sub_80381F4(u32, void *, void *); @@ -108,7 +88,7 @@ extern u32 sub_8023CE8(void); extern u32 sub_8030894(void); extern void sub_8030F58(u32); extern void sub_8023DA4(void); -extern void SetMenuItems(void *, struct UnkTextStruct2 *, u32, u8 *, struct MenuItem *, u32, u32, u32); +extern void SetMenuItems(void *, struct UnkTextStruct2 *, u32, const struct UnkTextStruct2 *, const struct MenuItem *, u32, u32, u32); extern void sub_8029B34(void); extern void sub_8029AD8(void); extern void sub_8029AF4(void); @@ -168,6 +148,107 @@ extern void sub_80310B4(void); extern void sub_8030DE4(void); extern void sub_802453C(void); +extern const u8 DontSendPokemon_80DDB80[]; +extern const u8 SendPokemon_80DDB98[]; +extern const u8 SendWOPokemon[]; + +const struct MenuItem gUnknown_80DD970[] = +{ + {"Receive SOS Mail", 0x0}, + {"Leave for Rescue", 0x1}, + {"Send A-OK Mail", 0x2}, + {"Delete Mail", 0x3}, + {"Cancel", 0xA}, + {NULL, 0xA} +}; + +const struct MenuItem gUnknown_80DD9EC[] = +{ + {"Delete SOS Mail", 0x5}, + {"Delete A-OK Mail", 0x6}, + {"Delete All Mail", 0x7}, + {"Cancel", 0xA}, + {NULL, 0xA} +}; + +const struct MenuItem gUnknown_80DDA48[] = +{ + {"Yes", 0x8}, + {"Cancel", 0xA}, + {NULL, 0xA} +}; + +const struct MenuItem gUnknown_80DDA64[] = +{ + {"Yes", 0x8}, + {"No", 0x9}, + {NULL, 0xA} +}; + +const struct MenuItem gUnknown_80DDA80[] = +{ + {"Yes", 0x8}, + {"No", 0x9}, + {"Cancel", 0xA}, + {NULL, 0xA} +}; + +const struct MenuItem gUnknown_80DDAA0[] = +{ + {SendWOPokemon, 0x12}, + {"Cancel", 0xA}, + {NULL, 0xA}, +}; + +ALIGNED(4) const u8 SendWOPokemon[] = _("Send w/o Pokémon"); + +const struct UnkTextStruct2 gUnknown_80DDACC = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x16, 0x00, 0x07, 0x00, + 0x06, 0x04, + 0x04, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DDAE4 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x16, 0x00, 0x06, 0x00, + 0x06, 0x04, + 0x04, 0x00, + NULL +}; + +const struct MenuItem gUnknown_80DDAFC[] = +{ + {"Confirm", 0xB}, + {"Info", 0xC}, + {NULL, 0xA}, +}; + +const struct MenuItem gUnknown_80DDB24[] = +{ + {"Game Link cable", 0xD}, + {"Password", 0xF}, + {"Cancel", 0xA}, + {NULL, 0xA}, +}; + +const struct MenuItem gUnknown_80DDB60[] = +{ + {SendPokemon_80DDB98, 0x11}, + {DontSendPokemon_80DDB80, 0x12}, + {"Cancel", 0xA}, + {NULL, 0xA}, +}; + +ALIGNED(4) const u8 DontSendPokemon_80DDB80[] = _("Don{APOSTROPHE}t Send Pokémon"); +ALIGNED(4) const u8 SendPokemon_80DDB98[] = _("Send Pokémon"); + +#include "data/wonder_mail_1.h" u32 sub_8027F88(void) @@ -457,7 +538,7 @@ void sub_8028348(void) break; case 0x34: sub_8006518(gUnknown_203B2C0->unk35C); - SetMenuItems(&gUnknown_203B2C0->unk21C, gUnknown_203B2C0->unk35C, 3, gUnknown_80DDAE4, gUnknown_80DDAFC, 1, 0, 0); + SetMenuItems(&gUnknown_203B2C0->unk21C, gUnknown_203B2C0->unk35C, 3, &gUnknown_80DDAE4, gUnknown_80DDAFC, 1, 0, 0); sub_8023DA4(); sub_8035CF4(&gUnknown_203B2C0->unk21C, 3, 1); break; @@ -619,7 +700,7 @@ void sub_8028348(void) case 0x20: case 0x2B: sub_8006518(gUnknown_203B2C0->unk35C); - SetMenuItems(&gUnknown_203B2C0->unk21C, gUnknown_203B2C0->unk35C, 3, gUnknown_80DDACC, gUnknown_80DDAFC, 1, 0, 0); + SetMenuItems(&gUnknown_203B2C0->unk21C, gUnknown_203B2C0->unk35C, 3, &gUnknown_80DDACC, gUnknown_80DDAFC, 1, 0, 0); sub_803092C(); sub_8035CF4(&gUnknown_203B2C0->unk21C, 3, 1); break; |