From 59c5ea161d01ce884c1456eeb5a9bb545452f3cf Mon Sep 17 00:00:00 2001 From: Seth Barberee Date: Fri, 2 Jun 2023 16:04:19 -0700 Subject: [PATCH] Move more data to src --- data/data_80E59A8.s | 522 ----------------------------------------- include/pokemon.h | 1 + ld_script.txt | 3 +- src/code_801EE10_mid.c | 8 +- src/other_menus.c | 430 ++++++++++++++++++++++++++++++--- src/unk_menu_203B360.c | 39 ++- 6 files changed, 440 insertions(+), 563 deletions(-) delete mode 100644 data/data_80E59A8.s diff --git a/data/data_80E59A8.s b/data/data_80E59A8.s deleted file mode 100644 index 0858fac51..000000000 --- a/data/data_80E59A8.s +++ /dev/null @@ -1,522 +0,0 @@ - .section .rodata - - .global gUnknown_80E653C -gUnknown_80E653C: @ 80E653C - .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_80E6554 -gUnknown_80E6554: @ 80E6554 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - - .global gUnknown_80E656C -gUnknown_80E656C: @ 80E656C - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E65AC, 0x5 - .4byte sUnknown_80E658C, 0x5 - .4byte 0, 0x3 - -sUnknown_80E658C: - .string "#+Don~27t turn the power off!\0" - .align 2, 0 - -sUnknown_80E65AC: - .string "#+Item transmitting!\0" - .align 2, 0 - -sUnknown_80E65C4: - .string "#+#C2Caution!#R \0" - .align 2, 0 - - .global gUnknown_80E65D8 -gUnknown_80E65D8: @ 80E65D8 - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E65F8, 0x5 - .4byte sUnknown_80E658C, 0x5 - .4byte 0, 0x3 - -sUnknown_80E65F8: - .string "#+Thank-You Mail in transmission!\0" - .align 2, 0 - - .global gUnknown_80E661C -gUnknown_80E661C: @ 80E661C - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E663C, 0x5 - .4byte sUnknown_80E658C, 0x5 - .4byte 0, 0x3 - -sUnknown_80E663C: - .string "#+A-OK Mail in transmission!\0" - .align 2, 0 - - .global gUnknown_80E665C -gUnknown_80E665C: @ 80E665C - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E65F8, 0x5 - .4byte sUnknown_80E658C, 0x5 - .4byte 0, 0x3 - - .global gUnknown_80E667C -gUnknown_80E667C: @ 80E667C - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E669C, 0x5 - .4byte sUnknown_80E658C, 0x5 - .4byte 0, 0x3 - -sUnknown_80E669C: - .string "#+Wonder Mail in transmission!\0" - .align 2, 0 - - .global gUnknown_80E66BC -gUnknown_80E66BC: @ 80E66BC - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E66D4 -gUnknown_80E66D4: @ 80E66D4 - .4byte sUnknown_80E6734, 0x5 - .4byte sUnknown_80E6710, 0x5 - .4byte sUnknown_80E66F4, 0x5 - .4byte 0, 0x3 - -sUnknown_80E66F4: - .string "#+Please press any button.\0" - .align 2, 0 - -sUnknown_80E6710: - .string "#+Your adventure will be continued.\0" - .align 2, 0 - -sUnknown_80E6734: - .string "#+#CGSuccess!#R \0" - .align 2, 0 - - .global gUnknown_80E6748 -gUnknown_80E6748: @ 80E6748 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6760 -gUnknown_80E6760: @ 80E6760 - .4byte sUnknown_80E67B4, 0x5 - .4byte sUnknown_80E6794, 0x5 - .4byte sUnknown_80E6780, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6780: - .string "#+please try again.\0" - .align 2, 0 - -sUnknown_80E6794: - .string "#+Check the Game Link cable and\0" - .align 2, 0 - -sUnknown_80E67B4: - .string "#+#C2Communication error!#R \0" - .align 2, 0 - - .global gUnknown_80E67D4 -gUnknown_80E67D4: @ 80E67D4 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E67EC -gUnknown_80E67EC: @ 80E67EC - .4byte sUnknown_80E67B4, 0x5 - .4byte sUnknown_80E680C, 0x5 - .4byte sUnknown_80E6780, 0x5 - .4byte 0, 0x3 - -sUnknown_80E680C: - .string "#+Check your communication mode and\0" - .align 2, 0 - - .global gUnknown_80E6830 -gUnknown_80E6830: @ 80E6830 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6848 -gUnknown_80E6848: @ 80E6848 - .4byte sUnknown_80E67B4, 0x5 - .4byte sUnknown_80E6888, 0x5 - .4byte sUnknown_80E6868, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6868: - .string "#+Please inform the programmer.\0" - .align 2, 0 - -sUnknown_80E6888: - .string "#+Check sum error.\0" - .align 2, 0 - - .global gUnknown_80E689C -gUnknown_80E689C: @ 80E689C - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E68B4 -gUnknown_80E68B4: @ 80E68B4 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E68FC, 0x5 - .4byte sUnknown_80E68D4, 0x5 - .4byte 0, 0x3 - -sUnknown_80E68D4: - .string "#+someone~27s storage space was full.\0" - .align 2, 0 - -sUnknown_80E68FC: - .string "#+An item could not be transferred because\0" - .align 2, 0 - -sUnknown_80E6928: - .string "#+#C2Error!#R \0" - .align 2, 0 - - .global gUnknown_80E6938 -gUnknown_80E6938: @ 80E6938 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6950 -gUnknown_80E6950: @ 80E6950 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6988, 0x5 - .4byte sUnknown_80E6970, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6970: - .string "#+Please check again.\0" - .align 2, 0 - -sUnknown_80E6988: - .string "#+This #CGSOS Mail#R can~27t be used.\0" - .align 2, 0 - - .global gUnknown_80E69B0 -gUnknown_80E69B0: @ 80E69B0 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E69C8 -gUnknown_80E69C8: @ 80E69C8 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E69E8, 0x5 - .4byte sUnknown_80E6970, 0x5 - .4byte 0, 0x3 - -sUnknown_80E69E8: - .string "#+This #CGA-OK Mail#R can~27t be used.\0" - .align 2, 0 - - .global gUnknown_80E6A10 -gUnknown_80E6A10: @ 80E6A10 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6A28 -gUnknown_80E6A28: @ 80E6A28 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6A48, 0x5 - .4byte sUnknown_80E6970, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6A48: - .string "#+This #CGThank-You Mail#R can~27t be used.\0" - .align 2, 0 - - .global gUnknown_80E6A74 -gUnknown_80E6A74: @ 80E6A74 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6A8C -gUnknown_80E6A8C: @ 80E6A8C - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6AC8, 0x5 - .4byte sUnknown_80E6AAC, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6AAC: - .string "#+It can~27t be received.\0" - .align 2, 0 - -sUnknown_80E6AC8: - .string "#+There is no space for new mail.\0" - .align 2, 0 - - .global gUnknown_80E6AEC -gUnknown_80E6AEC: @ 80E6AEC - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6B04 -gUnknown_80E6B04: @ 80E6B04 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6B4C, 0x5 - .4byte sUnknown_80E6B24, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6B24: - .string "#+You need to go further in the story.\0" - .align 2, 0 - -sUnknown_80E6B4C: - .string "#+You may not go to that #CGdungeon#R yet.\0" - .align 2, 0 - - .global gUnknown_80E6B78 -gUnknown_80E6B78: @ 80E6B78 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6B90 -gUnknown_80E6B90: @ 80E6B90 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6BC4, 0x5 - .4byte sUnknown_80E6BB0, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6BB0: - .string "#+Please try again.\0" - .align 2, 0 - -sUnknown_80E6BC4: - .string "#+There was a problem on your friend~27s end.\0" - .align 2, 0 - - .global gUnknown_80E6BF4 -gUnknown_80E6BF4: @ 80E6BF4 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6C0C -gUnknown_80E6C0C: @ 80E6C0C - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6C2C, 0x5 - .4byte sUnknown_80E6BB0, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6C2C: - .string "#+Your friend is not responding.\0" - .align 2, 0 - - .global gUnknown_80E6C50 -gUnknown_80E6C50: @ 80E6C50 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6C68 -gUnknown_80E6C68: @ 80E6C68 - .4byte sUnknown_80E6734, 0x5 - .4byte sUnknown_80E6CA8, 0x5 - .4byte sUnknown_80E6C88, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6C88: - .string "#+went through successfully.\0" - .align 2, 0 - -sUnknown_80E6CA8: - .string "#+The item exchange with your friend\0" - .align 2, 0 - - .global gUnknown_80E6CD0 -gUnknown_80E6CD0: @ 80E6CD0 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6CE8 -gUnknown_80E6CE8: @ 80E6CE8 - .4byte sUnknown_80E65C4, 0x5 - .4byte sUnknown_80E6D2C, 0x5 - .4byte sUnknown_80E6D08, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6D08: - .string "#+you and your friend are ready.\0" - .align 2, 0 - -sUnknown_80E6D2C: - .string "#+Please communicate only after both\0" - .align 2, 0 - - .global gUnknown_80E6D54 -gUnknown_80E6D54: @ 80E6D54 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6D6C -gUnknown_80E6D6C: @ 80E6D6C - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6DB0, 0x5 - .4byte sUnknown_80E6D8C, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6D8C: - .string "#+connected. Please check again.\0" - .align 2, 0 - -sUnknown_80E6DB0: - .string "#+An incorrect number of GBA systems are\0" - .align 2, 0 - - .global gUnknown_80E6DDC -gUnknown_80E6DDC: @ 80E6DDC - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x08, 0x00 - .byte 0x18, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6DF4 -gUnknown_80E6DF4: @ 80E6DF4 - .4byte sUnknown_80E6928, 0x5 - .4byte sUnknown_80E6E30, 0x5 - .4byte sUnknown_80E6E14, 0x5 - .4byte 0, 0x3 - -sUnknown_80E6E14: - .string "#+Please check it again.\0" - .align 2, 0 - -sUnknown_80E6E30: - .string "#+Communication failed.\0" - .align 2, 0 - - .string "pksdir0\0" - - .global gUnknown_80E6E50 -gUnknown_80E6E50:: @ 80E6E50 - .string "CHUNSOFT\0" - .align 2,0 - - .string "pksdir0\0" - - .string "pksdir0\0" - - .string "pksdir0\0" - - .string "pksdir0\0" - - - .global gUnknown_80E6E7C -gUnknown_80E6E7C: @ 80E6E7C - .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_80E6E94 -gUnknown_80E6E94: @ 80E6E94 - .byte 0x00, 0x00, 0x00, 0x00 - .byte 0x03, 0x00, 0x00, 0x00 - .byte 0x05, 0x00, 0x09, 0x00 - .byte 0x13, 0x00, 0x05, 0x00 - .byte 0x05, 0x00, 0x00, 0x00 - .byte 0x00, 0x00, 0x00, 0x00 - - .global gUnknown_80E6EAC -gUnknown_80E6EAC: @ 80E6EAC - .4byte Caution_80E6F04 - .4byte 3 - .4byte StorageEmpty_80E6EE4 - .4byte 3 - .4byte CheckAgain_80E6ECC - .4byte 3 - .4byte 0 - .4byte 1 - - .global CheckAgain_80E6ECC - CheckAgain_80E6ECC: - .string "{CENTER_ALIGN}Please check again.\0" - .align 2,0 - - .global StorageEmpty_80E6EE4 - StorageEmpty_80E6EE4: - .string "{CENTER_ALIGN}The storage space is empty!\0" - .align 2,0 - - .global Caution_80E6F04 - Caution_80E6F04: - .string "{CENTER_ALIGN}{COLOR_1 RED}Caution!{END_COLOR_TEXT_1} \0" - .align 2,0 - - .asciz "pksdir0" - diff --git a/include/pokemon.h b/include/pokemon.h index 5385c9b77..c2fabef6b 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -234,6 +234,7 @@ s32 GetEvolutionSequence(struct PokemonStruct* pokemon, struct EvolveStage* a2); void xxx_pokemonstruct_to_pokemon2_808DE50(struct PokemonStruct2* r0, struct PokemonStruct *r1, s32 r2); void SavePokemonStruct(struct unkStruct_8094924* a1, struct PokemonStruct* pokemon); void RestorePokemonStruct(struct unkStruct_8094924*, struct PokemonStruct*); +s32 sub_808E218(struct unkStruct_808E218_arg* a1, struct PokemonStruct* pokemon); #endif // GUARD_POKEMON_H diff --git a/ld_script.txt b/ld_script.txt index 3ee420d91..296eafdcf 100755 --- a/ld_script.txt +++ b/ld_script.txt @@ -442,7 +442,8 @@ SECTIONS { data/data_80E2068.o(.rodata); src/main_menu.o(.rodata); src/trade_items_menu.o(.rodata); - data/data_80E59A8.o(.rodata); + src/other_menus.o(.rodata); + src/unk_menu_203B360.o(.rodata); src/save_menu.o(.rodata); src/rescue_password_menu.o(.rodata); src/load_screen.o(.rodata); diff --git a/src/code_801EE10_mid.c b/src/code_801EE10_mid.c index 8a3fc1e6e..c9946fbfc 100644 --- a/src/code_801EE10_mid.c +++ b/src/code_801EE10_mid.c @@ -31,10 +31,7 @@ extern struct UnkTextStruct2 gUnknown_80DC2AC; extern u8 gUnknown_80DC2DC[]; -extern void sub_801F690(void); -extern void sub_801F700(void); extern void sub_8013818(u32 *, u32, u32, u32); -extern u32 sub_801F7E4(void); extern s32 GetKeyPress(void *); extern void sub_8013660(void *); extern void AddMenuCursorSprite(void *); @@ -46,7 +43,10 @@ extern void sub_80073B8(u32); extern void sub_80073E0(u32); extern s32 sub_8013800(u32 *, s32); extern void xxx_call_draw_string(s32, s32, u8 *, s32, s32); -extern s32 sub_808E218(struct unkStruct_808E218_arg* a1, struct PokemonStruct* pokemon); + +u32 sub_801F7E4(void); +void sub_801F690(void); +void sub_801F700(void); bool8 sub_801F428(s16 index, s32 param_2) { diff --git a/src/other_menus.c b/src/other_menus.c index 2310a26a9..672d554d6 100644 --- a/src/other_menus.c +++ b/src/other_menus.c @@ -23,36 +23,402 @@ struct unkStruct_203B35C }; extern struct unkStruct_203B35C *gUnknown_203B35C; -extern struct UnkTextStruct2 gUnknown_80E653C; +const struct UnkTextStruct2 gUnknown_80E653C = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; +const struct UnkTextStruct2 gUnknown_80E6554 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; -extern struct UnkTextStruct2 gUnknown_80E66BC; -extern struct MenuItem gUnknown_80E66D4[]; -extern struct UnkTextStruct2 gUnknown_80E6748; -extern struct MenuItem gUnknown_80E6760[]; -extern struct UnkTextStruct2 gUnknown_80E67D4; -extern struct MenuItem gUnknown_80E67EC[]; -extern struct UnkTextStruct2 gUnknown_80E689C; -extern struct MenuItem gUnknown_80E68B4[]; -extern struct UnkTextStruct2 gUnknown_80E6938; -extern struct MenuItem gUnknown_80E6950[]; -extern struct UnkTextStruct2 gUnknown_80E69B0; -extern struct MenuItem gUnknown_80E69C8[]; -extern struct UnkTextStruct2 gUnknown_80E6A10; -extern struct MenuItem gUnknown_80E6A28[]; -extern struct UnkTextStruct2 gUnknown_80E6A74; -extern struct MenuItem gUnknown_80E6A8C[]; -extern struct UnkTextStruct2 gUnknown_80E6B78; -extern struct MenuItem gUnknown_80E6B90[]; -extern struct UnkTextStruct2 gUnknown_80E6BF4; -extern struct MenuItem gUnknown_80E6C0C[]; -extern struct UnkTextStruct2 gUnknown_80E6C50; -extern struct MenuItem gUnknown_80E6C68[]; -extern struct UnkTextStruct2 gUnknown_80E6CD0; -extern struct MenuItem gUnknown_80E6CE8[]; -extern struct UnkTextStruct2 gUnknown_80E6DDC; -extern struct MenuItem gUnknown_80E6DF4[]; -extern struct UnkTextStruct2 gUnknown_80E6D54; -extern struct MenuItem gUnknown_80E6D6C[]; +const u8 sUnknown_80E65C4[]; +const u8 sUnknown_80E65AC[]; +const u8 sUnknown_80E658C[]; +const struct MenuItem gUnknown_80E656C[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E65AC, 0x5}, + {sUnknown_80E658C, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E658C[] = _("{CENTER_ALIGN}Don~27t turn the power off!"); +ALIGNED(4) const u8 sUnknown_80E65AC[] = _("{CENTER_ALIGN}Item transmitting!"); +ALIGNED(4) const u8 sUnknown_80E65C4[] = _("{CENTER_ALIGN}{COLOR_1 RED}Caution!{END_COLOR_TEXT_1} "); + +const u8 sUnknown_80E65F8[]; +const struct MenuItem gUnknown_80E65D8[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E65F8, 0x5}, + {sUnknown_80E658C, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E65F8[] = _("{CENTER_ALIGN}Thank-You Mail in transmission!"); + +const u8 sUnknown_80E663C[]; +const struct MenuItem gUnknown_80E661C[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E663C, 0x5}, + {sUnknown_80E658C, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E663C[] = _("{CENTER_ALIGN}A-OK Mail in transmission!"); + +const struct MenuItem gUnknown_80E665C[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E65F8, 0x5}, + {sUnknown_80E658C, 0x5}, + {NULL, 0x3}, + +}; + +const u8 sUnknown_80E669C[]; +const struct MenuItem gUnknown_80E667C[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E669C, 0x5}, + {sUnknown_80E658C, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E669C[] = _("{CENTER_ALIGN}Wonder Mail in transmission!"); + +const struct UnkTextStruct2 gUnknown_80E66BC = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6734[]; +const u8 sUnknown_80E6710[]; +const u8 sUnknown_80E66F4[]; +const struct MenuItem gUnknown_80E66D4[4] = { + {sUnknown_80E6734, 0x5}, + {sUnknown_80E6710, 0x5}, + {sUnknown_80E66F4, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E66F4[] = _("{CENTER_ALIGN}Please press any button."); +ALIGNED(4) const u8 sUnknown_80E6710[] = _("{CENTER_ALIGN}Your adventure will be continued."); +ALIGNED(4) const u8 sUnknown_80E6734[] = _("{CENTER_ALIGN}#CGSuccess!#R "); + +const struct UnkTextStruct2 gUnknown_80E6748 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6780[]; +const u8 sUnknown_80E6794[]; +const u8 sUnknown_80E67B4[]; +const struct MenuItem gUnknown_80E6760[4] = { + {sUnknown_80E67B4, 0x5}, + {sUnknown_80E6794, 0x5}, + {sUnknown_80E6780, 0x5}, + {NULL, 0x3}, + +}; +ALIGNED(4) const u8 sUnknown_80E6780[] = _("{CENTER_ALIGN}please try again."); +ALIGNED(4) const u8 sUnknown_80E6794[] = _("{CENTER_ALIGN}Check the Game Link cable and"); +ALIGNED(4) const u8 sUnknown_80E67B4[] = _("{CENTER_ALIGN}#C2Communication error!#R "); + +const struct UnkTextStruct2 gUnknown_80E67D4 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E680C[]; +const struct MenuItem gUnknown_80E67EC[4] = { + {sUnknown_80E67B4, 0x5}, + {sUnknown_80E680C, 0x5}, + {sUnknown_80E6780, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E680C[] = _("{CENTER_ALIGN}Check your communication mode and"); + +const struct UnkTextStruct2 gUnknown_80E6830 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6888[]; +const u8 sUnknown_80E6868[]; +const struct MenuItem gUnknown_80E6848[4] = { + {sUnknown_80E67B4, 0x5}, + {sUnknown_80E6888, 0x5}, + {sUnknown_80E6868, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6868[] = _("{CENTER_ALIGN}Please inform the programmer."); +ALIGNED(4) const u8 sUnknown_80E6888[] = _("{CENTER_ALIGN}Check sum error."); + +const struct UnkTextStruct2 gUnknown_80E689C = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6928[]; +const u8 sUnknown_80E68FC[]; +const u8 sUnknown_80E68D4[]; +const struct MenuItem gUnknown_80E68B4[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E68FC, 0x5}, + {sUnknown_80E68D4, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E68D4[] = _("{CENTER_ALIGN}someone~27s storage space was full."); +ALIGNED(4) const u8 sUnknown_80E68FC[] = _("{CENTER_ALIGN}An item could not be transferred because"); +ALIGNED(4) const u8 sUnknown_80E6928[] = _("{CENTER_ALIGN}#C2Error!#R "); + +const struct UnkTextStruct2 gUnknown_80E6938 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6988[]; +const u8 sUnknown_80E6970[]; +const struct MenuItem gUnknown_80E6950[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6988, 0x5}, + {sUnknown_80E6970, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6970[] = _("{CENTER_ALIGN}Please check again."); +ALIGNED(4) const u8 sUnknown_80E6988[] = _("{CENTER_ALIGN}This #CGSOS Mail#R can~27t be used."); + +const struct UnkTextStruct2 gUnknown_80E69B0 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E69E8[]; +const struct MenuItem gUnknown_80E69C8[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E69E8, 0x5}, + {sUnknown_80E6970, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E69E8[] = _("{CENTER_ALIGN}This #CGA-OK Mail#R can~27t be used."); + +const struct UnkTextStruct2 gUnknown_80E6A10 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6A48[]; +const struct MenuItem gUnknown_80E6A28[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6A48, 0x5}, + {sUnknown_80E6970, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6A48[] = _("{CENTER_ALIGN}This #CGThank-You Mail#R can~27t be used."); + +const struct UnkTextStruct2 gUnknown_80E6A74 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6AC8[]; +const u8 sUnknown_80E6AAC[]; +const struct MenuItem gUnknown_80E6A8C[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6AC8, 0x5}, + {sUnknown_80E6AAC, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6AAC[] = _("{CENTER_ALIGN}It can~27t be received."); +ALIGNED(4) const u8 sUnknown_80E6AC8[] = _("{CENTER_ALIGN}There is no space for new mail."); + +const struct UnkTextStruct2 gUnknown_80E6AEC = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6B4C[]; +const u8 sUnknown_80E6B24[]; +const struct MenuItem gUnknown_80E6B04[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6B4C, 0x5}, + {sUnknown_80E6B24, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6B24[] = _("{CENTER_ALIGN}You need to go further in the story."); +ALIGNED(4) const u8 sUnknown_80E6B4C[] = _("{CENTER_ALIGN}You may not go to that #CGdungeon#R yet."); + +const struct UnkTextStruct2 gUnknown_80E6B78 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6BC4[]; +const u8 sUnknown_80E6BB0[]; +const struct MenuItem gUnknown_80E6B90[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6BC4, 0x5}, + {sUnknown_80E6BB0, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6BB0[] = _("{CENTER_ALIGN}Please try again."); +ALIGNED(4) const u8 sUnknown_80E6BC4[] = _("{CENTER_ALIGN}There was a problem on your friend~27s end."); + +const struct UnkTextStruct2 gUnknown_80E6BF4 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6C2C[]; +const struct MenuItem gUnknown_80E6C0C[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6C2C, 0x5}, + {sUnknown_80E6BB0, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6C2C[] = _("{CENTER_ALIGN}Your friend is not responding."); + +const struct UnkTextStruct2 gUnknown_80E6C50 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6CA8[]; +const u8 sUnknown_80E6C88[]; +const struct MenuItem gUnknown_80E6C68[4] = { + {sUnknown_80E6734, 0x5}, + {sUnknown_80E6CA8, 0x5}, + {sUnknown_80E6C88, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6C88[] = _("{CENTER_ALIGN}went through successfully."); +ALIGNED(4) const u8 sUnknown_80E6CA8[] = _("{CENTER_ALIGN}The item exchange with your friend"); + + +const struct UnkTextStruct2 gUnknown_80E6CD0 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6D2C[]; +const u8 sUnknown_80E6D08[]; +const struct MenuItem gUnknown_80E6CE8[4] = { + {sUnknown_80E65C4, 0x5}, + {sUnknown_80E6D2C, 0x5}, + {sUnknown_80E6D08, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6D08[] = _("{CENTER_ALIGN}you and your friend are ready."); +ALIGNED(4) const u8 sUnknown_80E6D2C[] = _("{CENTER_ALIGN}Please communicate only after both"); + +const struct UnkTextStruct2 gUnknown_80E6D54 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6DB0[]; +const u8 sUnknown_80E6D8C[]; +const struct MenuItem gUnknown_80E6D6C[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6DB0, 0x5}, + {sUnknown_80E6D8C, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6D8C[] = _("{CENTER_ALIGN}connected. Please check again."); +ALIGNED(4) const u8 sUnknown_80E6DB0[] = _("{CENTER_ALIGN}An incorrect number of GBA systems are"); + +const struct UnkTextStruct2 gUnknown_80E6DDC = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x03, 0x00, 0x08, 0x00, + 0x18, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 sUnknown_80E6E30[]; +const u8 sUnknown_80E6E14[]; +const struct MenuItem gUnknown_80E6DF4[4] = { + {sUnknown_80E6928, 0x5}, + {sUnknown_80E6E30, 0x5}, + {sUnknown_80E6E14, 0x5}, + {NULL, 0x3}, +}; +ALIGNED(4) const u8 sUnknown_80E6E14[] = _("{CENTER_ALIGN}Please check it again."); +ALIGNED(4) const u8 sUnknown_80E6E30[] = _("{CENTER_ALIGN}Communication failed."); + +static const u8 fill0[] = "pksdir0"; +ALIGNED(4) const u8 gUnknown_80E6E50[] = "CHUNSOFT"; +static const u8 fill1[] = "pksdir0"; +static const u8 fill2[] = "pksdir0"; +static const u8 fill3[] = "pksdir0"; +static const u8 fill4[] = "pksdir0"; extern void sub_8037400(void); extern void ResetSprites(u32); @@ -66,7 +432,7 @@ extern void sub_80371B8(void); extern void sub_8037900(void); extern void PlayMenuSoundEffect(u32); extern u32 sub_8037798(void); -extern void SetMenuItems(struct MenuStruct *, void *, u32, struct UnkTextStruct2 *, struct MenuItem *, u32, u32, u32); +extern void SetMenuItems(struct MenuStruct *, void *, u32, const struct UnkTextStruct2 *, const struct MenuItem *, u32, u32, u32); extern void sub_8005838(u32, u32); extern void sub_80060EC(); extern void sub_800CB20(); @@ -287,8 +653,8 @@ u32 sub_80370F0(void) void sub_80371B8(void) { struct unkStruct_8035D94 *item; - struct MenuItem *MenuItems; - struct UnkTextStruct2 *puVar5; + const struct MenuItem *MenuItems; + const struct UnkTextStruct2 *puVar5; puVar5 = NULL; MenuItems = NULL; diff --git a/src/unk_menu_203B360.c b/src/unk_menu_203B360.c index c7bf3ad05..fe31a1132 100644 --- a/src/unk_menu_203B360.c +++ b/src/unk_menu_203B360.c @@ -26,14 +26,45 @@ struct unkStruct_203B360 }; extern struct unkStruct_203B360 *gUnknown_203B360; -extern struct UnkTextStruct2 gUnknown_80E6E7C; -extern struct UnkTextStruct2 gUnknown_80E6E94; -extern struct MenuItem gUnknown_80E6EAC[]; +const struct UnkTextStruct2 gUnknown_80E6E7C = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, + 0x00, 0x00, + NULL +}; + +const struct UnkTextStruct2 gUnknown_80E6E94 = { + 0x00, 0x00, 0x00, 0x00, + 0x03, + 0x05, 0x00, 0x09, 0x00, + 0x13, 0x05, + 0x05, 0x00, + NULL +}; + +const u8 CheckAgain_80E6ECC[]; +const u8 StorageEmpty_80E6EE4[]; +const u8 Caution_80E6F04[]; + +const struct MenuItem gUnknown_80E6EAC[4] = { + {Caution_80E6F04, 0x3}, + {StorageEmpty_80E6EE4, 0x3}, + {CheckAgain_80E6ECC, 0x3}, + {NULL, 1} +}; + +ALIGNED(4) const u8 CheckAgain_80E6ECC[] = _("{CENTER_ALIGN}Please check again."); +ALIGNED(4) const u8 StorageEmpty_80E6EE4[] = _("{CENTER_ALIGN}The storage space is empty!"); +ALIGNED(4) const u8 Caution_80E6F04[] = _("{CENTER_ALIGN}{COLOR_1 RED}Caution!{END_COLOR_TEXT_1} "); +static const u8 fill0[] = "pksdir0"; + extern void AddSprite(struct unkSprite *, u32, u32, u32); extern void sub_8038440(); extern void sub_8035CF4(struct MenuStruct *, u32, u32); -extern void SetMenuItems(struct MenuStruct *, struct UnkTextStruct2 *, u32, struct UnkTextStruct2 *, struct MenuItem *, u32, u32, u32); +extern void SetMenuItems(struct MenuStruct *, struct UnkTextStruct2 *, u32, const struct UnkTextStruct2 *, const struct MenuItem *, u32, u32, u32); extern void sub_80384D0(); void sub_80382E4(s32 currMenu)