From e80b02cb09d0e204a648d487667567e941b175b9 Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Sun, 10 Apr 2022 09:45:16 -0700 Subject: [PATCH] move more data to src --- data/data_80DED44.s | 161 +++-------------------------- data/text/wonder_mail_3.inc | 57 ---------- data/text/wonder_mail_complete.inc | 26 ----- ld_script.txt | 3 + src/wonder_mail_2_1.c | 88 ++++++++++++++-- src/wonder_mail_3.c | 111 +++++++++++++++++--- src/wonder_mail_802DF88.c | 59 ++++++++--- 7 files changed, 238 insertions(+), 267 deletions(-) delete mode 100644 data/text/wonder_mail_3.inc delete mode 100644 data/text/wonder_mail_complete.inc diff --git a/data/data_80DED44.s b/data/data_80DED44.s index 2f6040a9d..234b75f58 100644 --- a/data/data_80DED44.s +++ b/data/data_80DED44.s @@ -1,141 +1,5 @@ .section .rodata - .global gUnknown_80DFCE4 -gUnknown_80DFCE4: @ 80DFCE4 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFCFC -gUnknown_80DFCFC: @ 80DFCFC - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x06, 0x00, 0x00, 0x00 - .byte 0x02, 0x00, 0x02, 0x00 - .byte 0x18, 0x00, 0x0e, 0x00 - .byte 0x0e, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFD14 -gUnknown_80DFD14: @ 80DFD14 - .string "Job List\0" - .align 2,0 - .string "pksdir0\0" - - .global gUnknown_80DFD28 -gUnknown_80DFD28: @ 80DFD28 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFD40 -gUnknown_80DFD40: @ 80DFD40 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x04, 0x00, 0x00, 0x00 - .byte 0x15, 0x00, 0x06, 0x00 - .byte 0x07, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFD58 -gUnknown_80DFD58: @ 80DFD58 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x04, 0x00, 0x00, 0x00 - .byte 0x15, 0x00, 0x0f, 0x00 - .byte 0x06, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFD70 -gUnknown_80DFD70: @ 80DFD70 - .string "Take Job\0" - .align 2,0 - - .global gUnknown_80DFD7C -gUnknown_80DFD7C: @ 80DFD7C - .string "Suspend\0" - .string "pksdir0\0" - - .global gUnknown_80DFD8C -gUnknown_80DFD8C: @ 80DFD8C - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFDA4 -gUnknown_80DFDA4: @ 80DFDA4 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x06, 0x00, 0x00, 0x00 - .byte 0x02, 0x00, 0x02, 0x00 - .byte 0x18, 0x00, 0x0e, 0x00 - .byte 0x0e, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFDBC -gUnknown_80DFDBC: @ 80DFDBC - .string "RESCUE EVENT\0" - .align 2,0 - .string "pksdir0\0" - - .global gUnknown_80DFDD4 -gUnknown_80DFDD4: @ 80DFDD4 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x03, 0x00 - .byte 0x07, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFE04 -gUnknown_80DFE04: @ 80DFE04 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x15, 0x00, 0x06, 0x00 - .byte 0x07, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80DFE1C -gUnknown_80DFE1C: @ 80DFE1C - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x15, 0x00, 0x0f, 0x00 - .byte 0x07, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x15, 0x00, 0x0f, 0x00 - .byte 0x06, 0x00, 0x03, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - #include "text/wonder_mail_3.inc" - - .global gUnknown_80E016C -gUnknown_80E016C: @ 80E016C - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - #include "text/wonder_mail_complete.inc" .global gUnknown_80E0248 gUnknown_80E0248: @ 80E0248 @@ -145,6 +9,9 @@ gUnknown_80E0248: @ 80E0248 .byte 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 .byte 0x00, 0x00, 0x00, 0x00 + + .global UnkData_80E0260 + UnkData_80E0260: .byte 0x01, 0x00, 0x12, 0x00 .global gUnknown_80E0264 @@ -154,9 +21,9 @@ gUnknown_80E0264: @ 80E0264 .byte 0x02, 0x00, 0x02, 0x00 .byte 0x1a, 0x00, 0x10, 0x00 .byte 0x10, 0x00, 0x00, 0x00 - .byte 0x60, 0x02, 0x0e, 0x08 - .byte 0x70, 0x6b, 0x73, 0x64 - .byte 0x69, 0x72, 0x30, 0x00 + .4byte UnkData_80E0260 + + .string "pksdir0\0" .global gUnknown_80E0284 gUnknown_80E0284: @ 80E0284 @@ -356,14 +223,14 @@ gUnknown_80E04B4: @ 80E04B4 .global gUnknown_80E04F4 gUnknown_80E04F4: @ 80E04F4 - .string "#+...Oh~2c wait~2c sorry.#P" - .string "#+You already have the \n" - .string "#+#C4$h Friend Area#R.#P" - .string "#+I~27m sorry that my reward is\n" - .string "#+something you already have.#P" - .string "#+In its place~2c #CN$m0#R~2c\n" - .string "#+you can have #CG1~2c000#R {POKE}.\0" - .align 2, 0 + .string "#+...Oh~2c wait~2c sorry.#P" + .string "#+You already have the \n" + .string "#+#C4$h Friend Area#R.#P" + .string "#+I~27m sorry that my reward is\n" + .string "#+something you already have.#P" + .string "#+In its place~2c #CN$m0#R~2c\n" + .string "#+you can have #CG1~2c000#R {POKE}.\0" + .align 2, 0 .global gUnknown_80E05C0 gUnknown_80E05C0: @ 80E05C0 diff --git a/data/text/wonder_mail_3.inc b/data/text/wonder_mail_3.inc deleted file mode 100644 index f3076e52a..000000000 --- a/data/text/wonder_mail_3.inc +++ /dev/null @@ -1,57 +0,0 @@ -gUnknown_80DFE4C:: @ 80DFE4C - .string "Are you sure you want to replace the\n" - .string "old {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} with the new one?\0" - .align 2, 0 - -gUnknown_80DFE9C:: @ 80DFE9C - .string "This {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} has already been\n" - .string "received.\0" - .align 2, 0 - -gUnknown_80DFED0:: @ 80DFED0 - .string "This {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} has already been\n" - .string "received.\n" - .string "You may not receive the same one again.\0" - .align 2, 0 - -gUnknown_80DFF2C:: @ 80DFF2C - .string "Only {COLOR_1 LIGHT_BLUE_2}one piece{END_COLOR_TEXT_1} of {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} can be held.\n" - .string "Please receive it after completing any\n" - .string "rescue mission in progress.\0" - .align 2, 0 - -gUnknown_80DFFA4:: @ 80DFFA4 - .string "The rescue team has quicksaved in\n" - .string "a dungeon with a mission in progress.\n" - .string "Please complete the mission first.\0" - .align 2, 0 - -gUnknown_80E0010:: @ 80E0010 - .string "The rescue team has quicksaved in\n" - .string "a dungeon with a mission in progress.\n" - .string "Mail cannot be deleted now.\0" -gUnknown_80E0074:: @ 80E0074 - .string "Received the {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1}!\0" - .align 2, 0 - -gUnknown_80E0094:: @ 80E0094 - .string "Only {COLOR_1 LIGHT_BLUE_2}one piece{END_COLOR_TEXT_1} of {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} can be held.\n" - .string "Is it OK to replace the old {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1}\n" - .string "with the new one?\0" - .align 2, 0 - -gUnknown_80E0108:: @ 80E0108 - .string "Your {COLOR_1 LIGHT_BLUE_2}Job List{END_COLOR_TEXT_1} is full.\n" - .string "Please select and delete unwanted mail.\0" - .align 2, 0 - -gUnknown_80E014C:: @ 80E014C - .string "New Mail\0" - .align 2, 0 - -gUnknown_80E0158:: @ 80E0158 - .string "Old Mail\0" - .align 2, 0 - - .string "pksdir0\0" - .align 2, 0 diff --git a/data/text/wonder_mail_complete.inc b/data/text/wonder_mail_complete.inc deleted file mode 100644 index ea8f9c937..000000000 --- a/data/text/wonder_mail_complete.inc +++ /dev/null @@ -1,26 +0,0 @@ -gWonderMailClientThanksForRescuingMe:: @ 80E0184 - .string " Thank you for rescuing me!\0" - .align 2, 0 - -gWonderMailClientThanksForRescuingThem:: @ 80E01A0 - .string " Thank you for rescuing\n" - .string "{COLOR_1 CYAN}{ARG_POKEMON_1}{END_COLOR_TEXT_1}!\0" - .align 2, 0 - -gWonderMailClientEscorted:: @ 80E01C4 - .string " Thank you for escorting me\n" - .string "to {COLOR_1 CYAN}{ARG_POKEMON_1}{END_COLOR_TEXT_1}! \0" - .align 2, 0 - -gWonderMailClientItemDelivered1:: @ 80E01F0 - .string " Thank you for delivering\n" - .string "the {COLOR_1 GREEN}{ARG_MOVE_ITEM_0}{END_COLOR_TEXT_1}!\0" - .align 2, 0 - -gWonderMailClientItemDelivered2:: @ 80E0218 - .string " Thank you for getting me\n" - .string "the {COLOR_1 GREEN}{ARG_MOVE_ITEM_0}{END_COLOR_TEXT_1}!\0" - .align 2, 0 - - .string "pksdir0\0" - .align 2, 0 diff --git a/ld_script.txt b/ld_script.txt index ad275df75..38dbb38bd 100755 --- a/ld_script.txt +++ b/ld_script.txt @@ -413,6 +413,9 @@ SECTIONS { src/wonder_mail.o(.rodata); src/thank_you_wonder_mail.o(.rodata); src/wonder_mail_2.o(.rodata); + src/wonder_mail_2_1.o(.rodata); + src/wonder_mail_3.o(.rodata); + src/wonder_mail_802DF88.o(.rodata); data/data_80DED44.o(.rodata); src/post_office_guide.o(.rodata); data/data_80E1F30.o(.rodata); diff --git a/src/wonder_mail_2_1.c b/src/wonder_mail_2_1.c index a21bfe8dd..0fc0ea174 100644 --- a/src/wonder_mail_2_1.c +++ b/src/wonder_mail_2_1.c @@ -51,12 +51,86 @@ extern struct unkStruct_203B2E8* gUnknown_203B2E0; u16 gUnknown_203B2EC; -extern struct UnkTextStruct2 gUnknown_80DFCE4; -extern struct UnkTextStruct2 gUnknown_80DFCFC; -extern struct UnkTextStruct2 gUnknown_80DFD40; -extern struct UnkTextStruct2 gUnknown_80DFD58; -extern struct UnkTextStruct2 gUnknown_80DFD28; -extern u8 gUnknown_80DFD14[]; +const struct UnkTextStruct2 gUnknown_80DFCE4 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DFCFC = +{ + 0x00, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x02, 0x00, + 0x18, 0x0E, + 0x0E, 0x00, + NULL +}; + +const u8 gUnknown_80DFD14[] = "Job List"; +static const u8 wonder_mail_fill[] = "pksdir0"; + +const struct UnkTextStruct2 gUnknown_80DFD28 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DFD40 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, + 0x15, 0x00, 0x06, 0x00, + 0x07, 0x03, + 0x03, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DFD58 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, + 0x15, 0x00, 0x0f, 0x00, + 0x06, 0x03, + 0x03, 0x00, + NULL +}; + +const u8 gUnknown_80DFD70[] = "Take Job"; +const u8 gUnknown_80DFD7C[] = "Suspend"; +static const u8 wonder_mail_fill0[] = "pksdir0"; + +const struct UnkTextStruct2 gUnknown_80DFD8C = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DFDA4 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x02, 0x00, + 0x18, 0x0e, + 0x0e, 0x00, + NULL +}; + +const u8 gUnknown_80DFDBC[] = "RESCUE EVENT"; +static const u8 wonder_mail_fill1[] = "pksdir0"; + extern void sub_8012CAC(struct UnkTextStruct2 *, struct MenuItem *); extern void sub_802CAA4(void); extern u8 IsJobSlotEmpty(u8); @@ -67,7 +141,7 @@ extern void sub_80073E0(u32); extern struct WonderMail* GetJobSlotInfo(u8); extern s32 sub_8013800(void *, u32); extern void sub_803B35C(void *, u32 *); -extern void xxx_call_draw_string(u32, u32, u8 *, u32, u32); +extern void xxx_call_draw_string(u32, u32, const u8 *, u32, u32); extern void sub_8012BC4(u32 x, u32 y, u32, u32, u32, u32); extern void sub_803B6D4(u32 *); diff --git a/src/wonder_mail_3.c b/src/wonder_mail_3.c index b0377ef97..d85b2cbc8 100644 --- a/src/wonder_mail_3.c +++ b/src/wonder_mail_3.c @@ -45,9 +45,103 @@ struct unkStruct_203B2F8 u32 unk1E4; }; extern struct unkStruct_203B2F8 *gUnknown_203B2F8; -extern struct UnkTextStruct2 gUnknown_80DFE04; -extern struct UnkTextStruct2 gUnknown_80DFE1C; -extern struct UnkTextStruct2 gUnknown_80DFDD4; + +const struct UnkTextStruct2 gUnknown_80DFDD4 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; + +// Unused +const struct UnkTextStruct2 gUnknown_80DFDEC = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x03, 0x00, + 0x07, 0x03, + 0x03, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80DFE04 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x15, 0x00, 0x06, 0x00, + 0x07, 0x03, + 0x03, 0x00, + NULL +}; +const struct UnkTextStruct2 gUnknown_80DFE1C = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x15, 0x00, 0x0f, 0x00, + 0x07, 0x03, + 0x03, 0x00, + NULL +}; + +// Unused +const struct UnkTextStruct2 gUnknown_80DFE34 = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x15, 0x00, 0x0f, 0x00, + 0x06, 0x03, + 0x03, 0x00, + NULL +}; + +ALIGNED(4) const u8 gUnknown_80DFE4C[] = _( + "Are you sure you want to replace the\n" + "old {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} with the new one?"); + +ALIGNED(4) const u8 gUnknown_80DFE9C[] = _( + "This {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} has already been\n" + "received."); + +ALIGNED(4) const u8 gUnknown_80DFED0[] = _( + "This {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} has already been\n" + "received.\n" + "You may not receive the same one again."); + +ALIGNED(4) const u8 gUnknown_80DFF2C[] = _( + "Only {COLOR_1 LIGHT_BLUE_2}one piece{END_COLOR_TEXT_1} of {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} can be held.\n" + "Please receive it after completing any\n" + "rescue mission in progress."); + +ALIGNED(4) const u8 gUnknown_80DFFA4[] = + "The rescue team has quicksaved in\n" + "a dungeon with a mission in progress.\n" + "Please complete the mission first."; + +ALIGNED(4) const u8 gUnknown_80E0010[] = + "The rescue team has quicksaved in\n" + "a dungeon with a mission in progress.\n" + "Mail cannot be deleted now."; + +ALIGNED(4) const u8 gUnknown_80E0074[] = _( + "Received the {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1}!"); + +ALIGNED(4) const u8 gUnknown_80E0094[] = _( + "Only {COLOR_1 LIGHT_BLUE_2}one piece{END_COLOR_TEXT_1} of {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1} can be held.\n" + "Is it OK to replace the old {COLOR_1 LIGHT_BLUE_2}Wonder Mail{END_COLOR_TEXT_1}\n" + "with the new one?"); + +ALIGNED(4) const u8 gUnknown_80E0108[] = _( + "Your {COLOR_1 LIGHT_BLUE_2}Job List{END_COLOR_TEXT_1} is full.\n" + "Please select and delete unwanted mail."); + +ALIGNED(4) const u8 gUnknown_80E014C[] = "New Mail"; +ALIGNED(4) const u8 gUnknown_80E0158[] = "Old Mail"; +static const u8 wonder_mail_3_fill[] = "pksdir0"; + + extern void sub_8012CAC(struct UnkTextStruct2 *, struct MenuItem *); extern void sub_802D63C(void); extern void sub_802D5A4(void); @@ -66,15 +160,6 @@ extern void sub_802DA84(); extern void sub_802D1B8(); extern void sub_802D2A8(); -extern u8 gUnknown_80E0010[]; -extern u8 gUnknown_80DFFA4[]; -extern u8 gUnknown_80DFF2C[]; -extern u8 gUnknown_80DFED0[]; -extern u8 gUnknown_80DFE9C[]; -extern u8 gUnknown_80DFE4C[]; -extern u8 gUnknown_80E0108[]; -extern u8 gUnknown_80E0094[]; -extern u8 gUnknown_80E0074[]; extern u8 sub_80968B0(void *); extern u8 sub_8096F50(void *); @@ -95,7 +180,7 @@ extern void sub_8097418(u32, u32); extern void sub_802D690(void); extern void sub_8096C80(void); extern void sub_8096D24(void); -extern void sub_80141B4(u8 *, u32, u32, u32); +extern void sub_80141B4(const u8 *, u32, u32, u32); extern void sub_8012D60(u8 *, struct MenuItem *, u32, u16 *, u32, u32); extern u8 *sub_8096DE8(void); extern void sub_8096A78(struct unkSubStruct_203B2F8 *); diff --git a/src/wonder_mail_802DF88.c b/src/wonder_mail_802DF88.c index ffac5a88a..010a3efe2 100644 --- a/src/wonder_mail_802DF88.c +++ b/src/wonder_mail_802DF88.c @@ -43,43 +43,68 @@ struct unkStruct_203B300 }; extern struct unkStruct_203B300 *gUnknown_203B300; +extern u8 gUnknown_202E5D8[]; +extern u8 gUnknown_202E1C8[]; +extern u8 gUnknown_202DE58[]; + +const struct UnkTextStruct2 gUnknown_80E016C = +{ + 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; extern struct UnkTextStruct2 gUnknown_80E0248; extern struct UnkTextStruct2 gUnknown_80E0264; -extern struct UnkTextStruct2 gUnknown_80E016C; + +ALIGNED(4) const u8 gWonderMailClientThanksForRescuingMe[] = " Thank you for rescuing me!"; + +ALIGNED(4) const u8 gWonderMailClientThanksForRescuingThem[] = _( + " Thank you for rescuing\n" + "{COLOR_1 CYAN}{ARG_POKEMON_1}{END_COLOR_TEXT_1}!"); + +ALIGNED(4) const u8 gWonderMailClientEscorted[] = _( + " Thank you for escorting me\n" + "to {COLOR_1 CYAN}{ARG_POKEMON_1}{END_COLOR_TEXT_1}! "); + +ALIGNED(4) const u8 gWonderMailClientItemDelivered1[] = _( + " Thank you for delivering\n" + "the {COLOR_1 GREEN}{ARG_MOVE_ITEM_0}{END_COLOR_TEXT_1}!"); + +ALIGNED(4) const u8 gWonderMailClientItemDelivered2[] = _( + " Thank you for getting me\n" + "the {COLOR_1 GREEN}{ARG_MOVE_ITEM_0}{END_COLOR_TEXT_1}!"); + +static const u8 wonder_mail_802DF88_fill[] = "pksdir0"; + extern void sub_80073B8(u32); extern void sub_80073E0(u32); extern void CreateRescueDescription(u32 *); extern void PlayMenuSoundEffect(u32); extern s32 sub_8012A64(void *, u32); -void sub_802DF6C(void); -void sub_802DF88(void); -void sub_802DF14(void); -void sub_801317C(void); extern s32 sub_80144A4(s32 *); extern void sub_802DC28(u32); extern void sub_802F2C0(void); extern void sub_802DC28(u32); extern u32 sub_802F298(void); -extern u8 gUnknown_202E5D8[]; -extern u8 gUnknown_202E1C8[]; -extern u8 gUnknown_202DE58[]; - -extern u8 gWonderMailClientThanksForRescuingMe[]; -extern u8 gWonderMailClientThanksForRescuingThem[]; -extern u8 gWonderMailClientEscorted[]; -extern u8 gWonderMailClientItemDelivered1[]; -extern u8 gWonderMailClientItemDelivered2[]; extern void sub_802F204(u32 *, u32); -extern void sub_80141B4(u8 *r0, u32, struct OpenedFile **r1, u32); +extern void sub_80141B4(const u8 *r0, u32, struct OpenedFile **r1, u32); extern void sub_802DC40(void); extern void sub_802DC9C(void); -void sub_802DE44(void); -void sub_802DE60(void); struct WonderMail *GetJobSlotInfo(u8); extern void sub_8096AF8(u8 *, u32, u32); extern void sub_8096EEC(void); extern void sub_803C21C(struct WonderMail *, u32 *); +void sub_802DE44(void); +void sub_802DE60(void); +void sub_802DF6C(void); +void sub_802DF88(void); +void sub_802DF14(void); +void sub_801317C(void); + u32 sub_802DB28(u8 jobSlot, u8 param_2) { char local_18 [8];