summaryrefslogtreecommitdiff
path: root/arm9/src
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/src')
-rw-r--r--arm9/src/unk_02006D98.c892
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 ||