From f3f4e63946a9ea14b686dbb6ee561190463ecde6 Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Wed, 28 Jan 2026 01:42:40 -0500 Subject: [PATCH 1/2] Add language file symbols --- headers/data/arm9.h | 18 +++++++++++++ symbols/arm9.yml | 66 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) diff --git a/headers/data/arm9.h b/headers/data/arm9.h index e398b9c6..ccdd0f53 100644 --- a/headers/data/arm9.h +++ b/headers/data/arm9.h @@ -35,7 +35,22 @@ extern char STRING_DUNGEON_DUNGEON_BIN[20]; extern char STRING_MONSTER_M_ATTACK_BIN[24]; extern char STRING_MONSTER_M_GROUND_BIN[24]; extern char STRING_FILE_DIRECTORY_INIT[40]; +#if PMDSKY_VERSION == PMDSKY_EU +extern char ST_I2N_I_BIN[12]; +extern char ST_I2N_E_BIN[12]; +extern char ST_I2N_S_BIN[12]; +extern char ST_I2N_G_BIN[12]; +extern char ST_I2N_F_BIN[12]; +#endif extern struct baby_exclusive_item_pair BABY_EXCLUSIVE_ITEM_PAIRS[16]; +extern char ITEM_P_BIN[24]; +extern char ITEM_S_P_BIN[26]; +#if PMDSKY_VERSION == PMDSKY_JP +#define ITEM_ST_I2N_BIN_LENGTH_ 16 +#else +#define ITEM_ST_I2N_BIN_LENGTH_ 26 +#endif +extern char ITEM_ST_I2N_BIN[ITEM_ST_I2N_BIN_LENGTH_]; extern char ITEM_NAME_FORMAT_YELLOW[16]; extern char ITEM_NAME_FORMAT_INDIGO[16]; extern char ITEM_NAME_FORMAT_PLAIN[4]; @@ -213,6 +228,9 @@ extern struct pack_file_opened* PACK_FILES_OPENED; extern const char* PACK_FILE_PATHS_TABLE[6]; extern struct item* BAG_ITEMS_PTR_MIRROR; extern void* ITEM_DATA_TABLE_PTRS[3]; +#if PMDSKY_VERSION == PMDSKY_EU +extern char* ITEM_LANG_FILE_ARRAY[5]; +#endif extern struct move_data_table* MOVE_DATA_TABLE_PTR; extern struct wan_table* WAN_TABLE; extern struct render_3d_global RENDER_3D; diff --git a/symbols/arm9.yml b/symbols/arm9.yml index e29c50ae..feea0f8c 100644 --- a/symbols/arm9.yml +++ b/symbols/arm9.yml @@ -11942,6 +11942,36 @@ arm9: Linked to the dungeon group id Note: unverified, ported from Irdkwia's notes + - name: ST_I2N_I_BIN + address: + EU: 0x20983F4 + length: + EU: 0xB + description: Name of the file st_i2n_i.bin + - name: ST_I2N_E_BIN + address: + EU: 0x2098404 + length: + EU: 0xB + description: Name of the file st_i2n_e.bin + - name: ST_I2N_S_BIN + address: + EU: 0x2098414 + length: + EU: 0xB + description: Name of the file st_i2n_s.bin + - name: ST_I2N_G_BIN + address: + EU: 0x2098424 + length: + EU: 0xB + description: Name of the file st_i2n_g.bin + - name: ST_I2N_F_BIN + address: + EU: 0x2098434 + length: + EU: 0xB + description: Name of the file st_i2n_f.bin - name: BABY_EXCLUSIVE_ITEM_PAIRS address: EU: 0x2098444 @@ -11952,6 +11982,36 @@ arm9: NA: 0x40 JP: 0x40 description: "Stores the IDs of each baby Pokemon (and Phione), as well as the exclusive item they hatch with." + - name: ITEM_P_BIN + address: + EU: 0x2098484 + NA: 0x2098038 + JP: 0x209832C + length: + EU: 0x18 + NA: 0x18 + JP: 0x18 + description: File path of the file item_p.bin + - name: ITEM_S_P_BIN + address: + EU: 0x20984A0 + NA: 0x2098054 + JP: 0x2098348 + length: + EU: 0x1A + NA: 0x1A + JP: 0x1A + description: File path of the file item_s_p.bin + - name: ITEM_ST_I2N_BIN + address: + EU: 0x20984BC + NA: 0x2098070 + JP: 0x2098364 + length: + EU: 0x10 + NA: 0x1A + JP: 0x1A + description: "File path for language files. In EU, this is a format string where each of the language files can be inserted in. In NA/JP, this is just the file path of the file st_i2n_j.bin" - name: ITEM_NAME_FORMAT_YELLOW address: EU: 0x20984D0 @@ -14253,6 +14313,12 @@ arm9: [Runtime] List of pointers to various item data tables. The first two pointers are definitely item-related (although the order appears to be flipped between EU/NA?). Not sure about the third pointer. + - name: ITEM_LANG_FILE_ARRAY + address: + EU: 0x20AFF88 + length: + EU: 0x14 + description: An array containing the names of each language file. Only exists in EU. - name: DUNGEON_MOVE_TABLES address: EU: 0x20AFFA8 From fbdf5b2e6c969fc1d6d1a4bea049d3b009d387f4 Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Wed, 28 Jan 2026 18:31:25 -0500 Subject: [PATCH 2/2] Use more specific names for I2N file symbols --- headers/data/arm9.h | 20 ++++++++++---------- symbols/arm9.yml | 16 ++++++++-------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/headers/data/arm9.h b/headers/data/arm9.h index ccdd0f53..35a6bd92 100644 --- a/headers/data/arm9.h +++ b/headers/data/arm9.h @@ -36,21 +36,21 @@ extern char STRING_MONSTER_M_ATTACK_BIN[24]; extern char STRING_MONSTER_M_GROUND_BIN[24]; extern char STRING_FILE_DIRECTORY_INIT[40]; #if PMDSKY_VERSION == PMDSKY_EU -extern char ST_I2N_I_BIN[12]; -extern char ST_I2N_E_BIN[12]; -extern char ST_I2N_S_BIN[12]; -extern char ST_I2N_G_BIN[12]; -extern char ST_I2N_F_BIN[12]; +extern char ST_I2N_I_BIN_FILE_NAME[12]; +extern char ST_I2N_E_BIN_FILE_NAME[12]; +extern char ST_I2N_S_BIN_FILE_NAME[12]; +extern char ST_I2N_G_BIN_FILE_NAME[12]; +extern char ST_I2N_F_BIN_FILE_NAME[12]; #endif extern struct baby_exclusive_item_pair BABY_EXCLUSIVE_ITEM_PAIRS[16]; -extern char ITEM_P_BIN[24]; -extern char ITEM_S_P_BIN[26]; +extern char ITEM_P_BIN_FILE_PATH[24]; +extern char ITEM_S_P_BIN_FILE_PATH[26]; #if PMDSKY_VERSION == PMDSKY_JP -#define ITEM_ST_I2N_BIN_LENGTH_ 16 +#define ITEM_ST_I2N_BIN_FORMAT_LENGTH_ 16 #else -#define ITEM_ST_I2N_BIN_LENGTH_ 26 +#define ITEM_ST_I2N_BIN_FORMAT_LENGTH_ 26 #endif -extern char ITEM_ST_I2N_BIN[ITEM_ST_I2N_BIN_LENGTH_]; +extern char ITEM_ST_I2N_BIN_FORMAT[ITEM_ST_I2N_BIN_FORMAT_LENGTH_]; extern char ITEM_NAME_FORMAT_YELLOW[16]; extern char ITEM_NAME_FORMAT_INDIGO[16]; extern char ITEM_NAME_FORMAT_PLAIN[4]; diff --git a/symbols/arm9.yml b/symbols/arm9.yml index feea0f8c..d905b695 100644 --- a/symbols/arm9.yml +++ b/symbols/arm9.yml @@ -11942,31 +11942,31 @@ arm9: Linked to the dungeon group id Note: unverified, ported from Irdkwia's notes - - name: ST_I2N_I_BIN + - name: ST_I2N_I_BIN_FILE_NAME address: EU: 0x20983F4 length: EU: 0xB description: Name of the file st_i2n_i.bin - - name: ST_I2N_E_BIN + - name: ST_I2N_E_BIN_FILE_NAME address: EU: 0x2098404 length: EU: 0xB description: Name of the file st_i2n_e.bin - - name: ST_I2N_S_BIN + - name: ST_I2N_S_BIN_FILE_NAME address: EU: 0x2098414 length: EU: 0xB description: Name of the file st_i2n_s.bin - - name: ST_I2N_G_BIN + - name: ST_I2N_G_BIN_FILE_NAME address: EU: 0x2098424 length: EU: 0xB description: Name of the file st_i2n_g.bin - - name: ST_I2N_F_BIN + - name: ST_I2N_F_BIN_FILE_NAME address: EU: 0x2098434 length: @@ -11982,7 +11982,7 @@ arm9: NA: 0x40 JP: 0x40 description: "Stores the IDs of each baby Pokemon (and Phione), as well as the exclusive item they hatch with." - - name: ITEM_P_BIN + - name: ITEM_P_BIN_FILE_PATH address: EU: 0x2098484 NA: 0x2098038 @@ -11992,7 +11992,7 @@ arm9: NA: 0x18 JP: 0x18 description: File path of the file item_p.bin - - name: ITEM_S_P_BIN + - name: ITEM_S_P_BIN_FILE_PATH address: EU: 0x20984A0 NA: 0x2098054 @@ -12002,7 +12002,7 @@ arm9: NA: 0x1A JP: 0x1A description: File path of the file item_s_p.bin - - name: ITEM_ST_I2N_BIN + - name: ITEM_ST_I2N_BIN_FORMAT address: EU: 0x20984BC NA: 0x2098070