diff options
author | Rémi Calixte <remicalixte.rmc@gmail.com> | 2021-08-29 12:00:25 +0200 |
---|---|---|
committer | Rémi Calixte <remicalixte.rmc@gmail.com> | 2021-08-29 12:00:25 +0200 |
commit | 9395f7cee40d7629cbd8840d30ea7f3d2a01db70 (patch) | |
tree | 81820549691839f3f521bfd8a289a2a1b9a38cfe /arm9/src | |
parent | c97046f4b518d53a2508c896b15fd467b6559346 (diff) |
fix data declaration
Diffstat (limited to 'arm9/src')
-rw-r--r-- | arm9/src/unk_02006D98.c | 892 |
1 files changed, 263 insertions, 629 deletions
diff --git a/arm9/src/unk_02006D98.c b/arm9/src/unk_02006D98.c index ef629555..0afa7437 100644 --- a/arm9/src/unk_02006D98.c +++ b/arm9/src/unk_02006D98.c @@ -9,644 +9,278 @@ #include "poketool/pokegra/otherpoke.naix" #include "registers.h" -const u8 UNK_020ECCE0[] = { - 0xFF, - 0xFF, - 0x1B, - 0x0F, - 0x1C, - 0x0F, - 0x1D, - 0x0F, - 0x1E, - 0x0F, - 0x1A, - 0x10, - 0x1B, - 0x10, - 0x1C, - 0x10, - 0x1D, - 0x10, - 0x1E, - 0x10, - 0x1F, - 0x10, - 0x19, - 0x11, - 0x1A, - 0x11, - 0x1B, - 0x11, - 0x1C, - 0x11, - 0x1D, - 0x11, - 0x1E, - 0x11, - 0x1F, - 0x11, - 0x20, - 0x11, - 0x19, - 0x12, - 0x1A, - 0x12, - 0x1B, - 0x12, - 0x1C, - 0x12, - 0x1D, - 0x12, - 0x1E, - 0x12, - 0x1F, - 0x12, - 0x20, - 0x12, - 0x19, - 0x13, - 0x1A, - 0x13, - 0x1B, - 0x13, - 0x1C, - 0x13, - 0x1D, - 0x13, - 0x1E, - 0x13, - 0x1F, - 0x13, - 0x20, - 0x13, - 0x19, - 0x14, - 0x1A, - 0x14, - 0x1B, - 0x14, - 0x1C, - 0x14, - 0x1D, - 0x14, - 0x1E, - 0x14, - 0x1F, - 0x14, - 0x20, - 0x14, - 0x1A, - 0x15, - 0x1B, - 0x15, - 0x1C, - 0x15, - 0x1D, - 0x15, - 0x1E, - 0x15, - 0x1F, - 0x15, - 0x1B, - 0x16, - 0x1C, - 0x16, - 0x1D, - 0x16, - 0x1E, - 0x16, - 0xFF, - 0xFF, +const struct UnkStruct_02006D98_3 UNK_020ECCE2[] = { +{0x1B,0x0F}, +{0x1C,0x0F}, +{0x1D,0x0F}, +{0x1E,0x0F}, +{0x1A,0x10}, +{0x1B,0x10}, +{0x1C,0x10}, +{0x1D,0x10}, +{0x1E,0x10}, +{0x1F,0x10}, +{0x19,0x11}, +{0x1A,0x11}, +{0x1B,0x11}, +{0x1C,0x11}, +{0x1D,0x11}, +{0x1E,0x11}, +{0x1F,0x11}, +{0x20,0x11}, +{0x19,0x12}, +{0x1A,0x12}, +{0x1B,0x12}, +{0x1C,0x12}, +{0x1D,0x12}, +{0x1E,0x12}, +{0x1F,0x12}, +{0x20,0x12}, +{0x19,0x13}, +{0x1A,0x13}, +{0x1B,0x13}, +{0x1C,0x13}, +{0x1D,0x13}, +{0x1E,0x13}, +{0x1F,0x13}, +{0x20,0x13}, +{0x19,0x14}, +{0x1A,0x14}, +{0x1B,0x14}, +{0x1C,0x14}, +{0x1D,0x14}, +{0x1E,0x14}, +{0x1F,0x14}, +{0x20,0x14}, +{0x1A,0x15}, +{0x1B,0x15}, +{0x1C,0x15}, +{0x1D,0x15}, +{0x1E,0x15}, +{0x1F,0x15}, +{0x1B,0x16}, +{0x1C,0x16}, +{0x1D,0x16}, +{0x1E,0x16}, +{0xFF,0xFF}, }; -const u8 UNK_020ECC10[] = { - 0x1E, - 0x21, - 0x1F, - 0x21, - 0x20, - 0x21, - 0x1D, - 0x22, - 0x1E, - 0x22, - 0x1F, - 0x22, - 0x20, - 0x22, - 0x21, - 0x22, - 0x1C, - 0x23, - 0x1D, - 0x23, - 0x1E, - 0x23, - 0x1F, - 0x23, - 0x20, - 0x23, - 0x21, - 0x23, - 0x22, - 0x23, - 0x1C, - 0x24, - 0x1D, - 0x24, - 0x1E, - 0x24, - 0x1F, - 0x24, - 0x20, - 0x24, - 0x21, - 0x24, - 0x22, - 0x24, - 0x1C, - 0x25, - 0x1D, - 0x25, - 0x1E, - 0x25, - 0x1F, - 0x25, - 0x20, - 0x25, - 0x21, - 0x25, - 0x22, - 0x25, - 0x1C, - 0x26, - 0x1D, - 0x26, - 0x1E, - 0x26, - 0x1F, - 0x26, - 0x20, - 0x26, - 0x21, - 0x26, - 0x22, - 0x26, - 0x1C, - 0x27, - 0x1D, - 0x27, - 0x1E, - 0x27, - 0x1F, - 0x27, - 0x20, - 0x27, - 0x21, - 0x27, - 0x22, - 0x27, - 0x1D, - 0x28, - 0x1E, - 0x28, - 0x1F, - 0x28, - 0x20, - 0x28, - 0x21, - 0x28, - 0x1E, - 0x29, - 0x1F, - 0x29, - 0x20, - 0x29, - 0xFF, - 0xFF, +const struct UnkStruct_02006D98_3 UNK_020ECC78[] = { +{0x33,0x11}, +{0x34,0x11}, +{0x35,0x11}, +{0x36,0x11}, +{0x32,0x12}, +{0x33,0x12}, +{0x34,0x12}, +{0x35,0x12}, +{0x36,0x12}, +{0x37,0x12}, +{0x31,0x13}, +{0x32,0x13}, +{0x33,0x13}, +{0x34,0x13}, +{0x35,0x13}, +{0x36,0x13}, +{0x37,0x13}, +{0x38,0x13}, +{0x31,0x14}, +{0x32,0x14}, +{0x33,0x14}, +{0x34,0x14}, +{0x35,0x14}, +{0x36,0x14}, +{0x37,0x14}, +{0x38,0x14}, +{0x31,0x15}, +{0x32,0x15}, +{0x33,0x15}, +{0x34,0x15}, +{0x35,0x15}, +{0x36,0x15}, +{0x37,0x15}, +{0x38,0x15}, +{0x31,0x16}, +{0x32,0x16}, +{0x33,0x16}, +{0x34,0x16}, +{0x35,0x16}, +{0x36,0x16}, +{0x37,0x16}, +{0x38,0x16}, +{0x32,0x17}, +{0x33,0x17}, +{0x34,0x17}, +{0x35,0x17}, +{0x36,0x17}, +{0x37,0x17}, +{0x33,0x18}, +{0x34,0x18}, +{0x35,0x18}, +{0x36,0x18}, +{0xFF,0xFF}, }; -const u8 UNK_020ECC78[] = { - 0x33, - 0x11, - 0x34, - 0x11, - 0x35, - 0x11, - 0x36, - 0x11, - 0x32, - 0x12, - 0x33, - 0x12, - 0x34, - 0x12, - 0x35, - 0x12, - 0x36, - 0x12, - 0x37, - 0x12, - 0x31, - 0x13, - 0x32, - 0x13, - 0x33, - 0x13, - 0x34, - 0x13, - 0x35, - 0x13, - 0x36, - 0x13, - 0x37, - 0x13, - 0x38, - 0x13, - 0x31, - 0x14, - 0x32, - 0x14, - 0x33, - 0x14, - 0x34, - 0x14, - 0x35, - 0x14, - 0x36, - 0x14, - 0x37, - 0x14, - 0x38, - 0x14, - 0x31, - 0x15, - 0x32, - 0x15, - 0x33, - 0x15, - 0x34, - 0x15, - 0x35, - 0x15, - 0x36, - 0x15, - 0x37, - 0x15, - 0x38, - 0x15, - 0x31, - 0x16, - 0x32, - 0x16, - 0x33, - 0x16, - 0x34, - 0x16, - 0x35, - 0x16, - 0x36, - 0x16, - 0x37, - 0x16, - 0x38, - 0x16, - 0x32, - 0x17, - 0x33, - 0x17, - 0x34, - 0x17, - 0x35, - 0x17, - 0x36, - 0x17, - 0x37, - 0x17, - 0x33, - 0x18, - 0x34, - 0x18, - 0x35, - 0x18, - 0x36, - 0x18, +const struct UnkStruct_02006D98_3 UNK_020ECC10[] = { +{0x1E,0x21}, +{0x1F,0x21}, +{0x20,0x21}, +{0x1D,0x22}, +{0x1E,0x22}, +{0x1F,0x22}, +{0x20,0x22}, +{0x21,0x22}, +{0x1C,0x23}, +{0x1D,0x23}, +{0x1E,0x23}, +{0x1F,0x23}, +{0x20,0x23}, +{0x21,0x23}, +{0x22,0x23}, +{0x1C,0x24}, +{0x1D,0x24}, +{0x1E,0x24}, +{0x1F,0x24}, +{0x20,0x24}, +{0x21,0x24}, +{0x22,0x24}, +{0x1C,0x25}, +{0x1D,0x25}, +{0x1E,0x25}, +{0x1F,0x25}, +{0x20,0x25}, +{0x21,0x25}, +{0x22,0x25}, +{0x1C,0x26}, +{0x1D,0x26}, +{0x1E,0x26}, +{0x1F,0x26}, +{0x20,0x26}, +{0x21,0x26}, +{0x22,0x26}, +{0x1C,0x27}, +{0x1D,0x27}, +{0x1E,0x27}, +{0x1F,0x27}, +{0x20,0x27}, +{0x21,0x27}, +{0x22,0x27}, +{0x1D,0x28}, +{0x1E,0x28}, +{0x1F,0x28}, +{0x20,0x28}, +{0x21,0x28}, +{0x1E,0x29}, +{0x1F,0x29}, +{0x20,0x29}, +{0xFF,0xFF}, }; -const u8 UNK_020ECDCC[] = { 0x2B, - 0x21, - 0x2C, - 0x21, - 0x2D, - 0x21, - 0x29, - 0x22, - 0x2A, - 0x22, - 0x2B, - 0x22, - 0x2C, - 0x22, - 0x2D, - 0x22, - 0x2E, - 0x22, - 0x2F, - 0x22, - 0x28, - 0x23, - 0x29, - 0x23, - 0x2A, - 0x23, - 0x2B, - 0x23, - 0x2C, - 0x23, - 0x2D, - 0x23, - 0x2E, - 0x23, - 0x2F, - 0x23, - 0x30, - 0x23, - 0x28, - 0x24, - 0x29, - 0x24, - 0x2A, - 0x24, - 0x2B, - 0x24, - 0x2C, - 0x24, - 0x2D, - 0x24, - 0x2E, - 0x24, - 0x2F, - 0x24, - 0x30, - 0x24, - 0x28, - 0x25, - 0x29, - 0x25, - 0x2A, - 0x25, - 0x2B, - 0x25, - 0x2C, - 0x25, - 0x2D, - 0x25, - 0x2E, - 0x25, - 0x2F, - 0x25, - 0x30, - 0x25, - 0x28, - 0x26, - 0x29, - 0x26, - 0x2A, - 0x26, - 0x2B, - 0x26, - 0x2C, - 0x26, - 0x2D, - 0x26, - 0x2E, - 0x26, - 0x2F, - 0x26, - 0x30, - 0x26, - 0x28, - 0x27, - 0x29, - 0x27, - 0x2A, - 0x27, - 0x2B, - 0x27, - 0x2C, - 0x27, - 0x2D, - 0x27, - 0x2E, - 0x27, - 0x2F, - 0x27, - 0x30, - 0x27, - 0x28, - 0x28, - 0x29, - 0x28, - 0x2A, - 0x28, - 0x2B, - 0x28, - 0x2C, - 0x28, - 0x2D, - 0x28, - 0x2E, - 0x28, - 0x2F, - 0x28, - 0x30, - 0x28, - 0x29, - 0x29, - 0x2A, - 0x29, - 0x2B, - 0x29, - 0x2C, - 0x29, - 0x2D, - 0x29, - 0x2E, - 0x29, - 0x2F, - 0x29, - 0x2B, - 0x2A, - 0x2C, - 0x2A, - 0x2D, - 0x2A, - 0xFF, - 0xFF }; +const struct UnkStruct_02006D98_3 UNK_020ECDCC[] = { +{0x2B,0x21}, +{0x2C,0x21}, +{0x2D,0x21}, +{0x29,0x22}, +{0x2A,0x22}, +{0x2B,0x22}, +{0x2C,0x22}, +{0x2D,0x22}, +{0x2E,0x22}, +{0x2F,0x22}, +{0x28,0x23}, +{0x29,0x23}, +{0x2A,0x23}, +{0x2B,0x23}, +{0x2C,0x23}, +{0x2D,0x23}, +{0x2E,0x23}, +{0x2F,0x23}, +{0x30,0x23}, +{0x28,0x24}, +{0x29,0x24}, +{0x2A,0x24}, +{0x2B,0x24}, +{0x2C,0x24}, +{0x2D,0x24}, +{0x2E,0x24}, +{0x2F,0x24}, +{0x30,0x24}, +{0x28,0x25}, +{0x29,0x25}, +{0x2A,0x25}, +{0x2B,0x25}, +{0x2C,0x25}, +{0x2D,0x25}, +{0x2E,0x25}, +{0x2F,0x25}, +{0x30,0x25}, +{0x28,0x26}, +{0x29,0x26}, +{0x2A,0x26}, +{0x2B,0x26}, +{0x2C,0x26}, +{0x2D,0x26}, +{0x2E,0x26}, +{0x2F,0x26}, +{0x30,0x26}, +{0x28,0x27}, +{0x29,0x27}, +{0x2A,0x27}, +{0x2B,0x27}, +{0x2C,0x27}, +{0x2D,0x27}, +{0x2E,0x27}, +{0x2F,0x27}, +{0x30,0x27}, +{0x28,0x28}, +{0x29,0x28}, +{0x2A,0x28}, +{0x2B,0x28}, +{0x2C,0x28}, +{0x2D,0x28}, +{0x2E,0x28}, +{0x2F,0x28}, +{0x30,0x28}, +{0x29,0x29}, +{0x2A,0x29}, +{0x2B,0x29}, +{0x2C,0x29}, +{0x2D,0x29}, +{0x2E,0x29}, +{0x2F,0x29}, +{0x2B,0x2A}, +{0x2C,0x2A}, +{0x2D,0x2A}, +{0xFF,0xFF}, +}; const int UNK_020ECBD0[4][4] = { { 160, 160, 224, 176 }, { 160, 160, 224, 176 }, { 160, 176, 224, 192 }, { 160, 192, 224, 208 } }; +const int UNK_020ECD4C[4][2][4] = { + { + {0, 0, 0x50, 0x50}, {0x50, 0, 0xA0, 0x50} + }, { + + {0, 0x50, 0x50, 0xA0}, {0x50, 0x50, 0xA0, 0xA0} + + }, { -// the structure should be something like that but the symbol order is all wrong this way. Let just dump the raw bytes for now. - -// const int UNK_020ECD4C[4][2][4] = { -// { -// {0, 0, 0x50, 0x50}, {0x50, 0, 0xA0, 0x50} -// }, { - -// {0, 0x50, 0x50, 0xA0}, {0x50, 0x50, 0xA0, 0xA0} - -// }, { - -// {0, 0xA0, 0x50, 0xF0}, {0x50, 0xA0, 0xA0, 0xF0} - -// }, { - -// {0xA0, 0, 0xF0, 0x50}, {0xA0, 0x50, 0xF0, 0xA0} - -// } -// }; - -const u8 UNK_020ECD4C[] = { - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xF0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0xF0, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0x00, - 0xF0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, - 0x50, - 0x00, - 0x00, - 0x00, - 0xF0, - 0x00, - 0x00, - 0x00, - 0xA0, - 0x00, - 0x00, - 0x00, + {0, 0xA0, 0x50, 0xF0}, {0x50, 0xA0, 0xA0, 0xF0} + + }, { + + {0xA0, 0, 0xF0, 0x50}, {0xA0, 0x50, 0xF0, 0xA0} + + } }; struct UnkStruct_02006D98_3 *UNK_02105AE8[] = { - // ugly hack to fix extra padding added by the compiler - (struct UnkStruct_02006D98_3 *)(UNK_020ECCE0 + 2), - (struct UnkStruct_02006D98_3 *)UNK_020ECC78, - (struct UnkStruct_02006D98_3 *)UNK_020ECC10, - (struct UnkStruct_02006D98_3 *)UNK_020ECDCC, + UNK_020ECCE2, + UNK_020ECC78, + UNK_020ECC10, + UNK_020ECDCC, }; extern void NNS_G2dSetupSoftwareSpriteCamera(void); @@ -815,10 +449,10 @@ THUMB_FUNC void FUN_02006ED4(struct UnkStruct_02006D98 *param0) if (param0->unk000[st18].unk54_1 != 0) { u32 r6 = param0->unk000[st18].unk44 + - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][0]; + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][0]; u32 r12 = param0->unk000[st18].unk46; u32 r1 = param0->unk000[st18].unk45 + - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][1]; + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][1]; u32 r7 = param0->unk000[st18].unk47; u32 r0 = r12 + r6; @@ -846,10 +480,10 @@ THUMB_FUNC void FUN_02006ED4(struct UnkStruct_02006D98 *param0) param0->unk000[st18].unk28 + param0->unk000[st18].unk30, arg3, arg4, - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][0], - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][1], - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][2], - (*((int(*)[4][2][4]) & UNK_020ECD4C))[st18][param0->unk000[st18].unk5B][3]); + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][0], + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][1], + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][2], + UNK_020ECD4C[st18][param0->unk000[st18].unk5B][3]); } if (param0->unk000[st18].unk6C.unk0_0 == 0 || param0->unk000[st18].unk6C.unk0_5 == 0 || |