summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-12-18 08:23:06 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2017-12-18 08:23:06 -0500
commit0df0c486d4bdb7bf8bf87759a3fae2009d42288c (patch)
treeafa08bdbf4ccc0f9065648947be2c49c987fb996
parentb378532eb525682511e0e81d90c7181a265753c2 (diff)
Decompile German menu cursor data
-rw-r--r--data-de/menu_cursor.s387
-rw-r--r--src/data/menu_cursor_de.h345
-rw-r--r--src/data/menu_cursor_en.h363
-rw-r--r--src/engine/menu_cursor.c363
4 files changed, 713 insertions, 745 deletions
diff --git a/data-de/menu_cursor.s b/data-de/menu_cursor.s
deleted file mode 100644
index 5f5fcd2d7..000000000
--- a/data-de/menu_cursor.s
+++ /dev/null
@@ -1,387 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-OutlineCursorTiles_00:
- .incbin "graphics/interface/outline_cursor_00.4bpp"
-
- .align 2
-OutlineCursorTiles_01:
- .incbin "graphics/interface/outline_cursor_01.4bpp"
-
- .align 2
-OutlineCursorTiles_02:
- .incbin "graphics/interface/outline_cursor_02.4bpp"
-
- .align 2
-OutlineCursorTiles_03:
- .incbin "graphics/interface/outline_cursor_03.4bpp"
-
- .align 2
-OutlineCursorTiles_04:
- .incbin "graphics/interface/outline_cursor_04.4bpp"
-
- .align 2
-OutlineCursorTiles_05:
- .incbin "graphics/interface/outline_cursor_05.4bpp"
-
- .align 2
-OutlineCursorTiles_06:
- .incbin "graphics/interface/outline_cursor_06.4bpp"
-
- .align 2
-OutlineCursorTiles_07:
- .incbin "graphics/interface/outline_cursor_07.4bpp"
-
- .align 2
-OutlineCursorTiles_08:
- .incbin "graphics/interface/outline_cursor_08.4bpp"
-
- .align 2
-OutlineCursorTiles_09:
- .incbin "graphics/interface/outline_cursor_09.4bpp"
-
- .align 2
-OutlineCursorTiles_10:
- .incbin "graphics/interface/outline_cursor_10.4bpp"
-
- .align 2
-OutlineCursorTiles_11:
- .incbin "graphics/interface/outline_cursor_11.4bpp"
-
- .align 2
-OutlineCursorTiles_12:
- .incbin "graphics/interface/outline_cursor_12.4bpp"
-
- .align 2
-OutlineCursorTiles_13:
- .incbin "graphics/interface/outline_cursor_13.4bpp"
-
- .align 2
-OutlineCursorTiles_14:
- .incbin "graphics/interface/outline_cursor_14.4bpp"
-
- .align 2
-OutlineCursorTiles_15:
- .incbin "graphics/interface/outline_cursor_15.4bpp"
-
- .align 2
-gOamData_842F11C:: @ 842F11C
- .2byte 0x8000
- .2byte 0x0000
- .2byte 0x0000
-
- .align 2
-gOamData_842F124:: @ 842F124
- .2byte 0x8800
- .2byte 0x0000
- .2byte 0x0000
-
- .align 2
-gOamData_842F12C:: @ 842F12C
- .2byte 0x8000
- .2byte 0x0000
- .2byte 0x0000
-
- .align 2
-gSpriteAnim_842F134:: @ 842F134
- obj_image_anim_frame 0, 63
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_842F13C:: @ 842F13C
- .4byte gSpriteAnim_842F134
-
- .align 2
-gUnknown_0842F140:: @ 842F140
- obj_tiles OutlineCursorTiles_00, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_01, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_02, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_03, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_04, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_05, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_06, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_07, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_08, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_09, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_10, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_11, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_12, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_13, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_14, 0x380, 0xFFF0
- obj_tiles OutlineCursorTiles_15, 0x380, 0xFFF0
-
- .align 2
-gUnknown_0842F1C0:: @ 842F1C0
- obj_tiles OutlineCursorTiles_00, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_01, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_02, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_03, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_04, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_05, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_06, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_07, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_08, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_09, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_10, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_11, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_12, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_13, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_14, 0x380, 0xFFF1
- obj_tiles OutlineCursorTiles_15, 0x380, 0xFFF1
-
- .align 2
-gUnknown_0842F240:: @ 842F240
- obj_pal gUnknown_0203A360, 0xfff0
-
- .align 2
-gUnknown_0842F248:: @ 842F248
- obj_pal gUnknown_0203A360, 0xfff1
-
- .align 2
-gSpriteTemplate_842F250:: @ 842F250
- spr_template 65520, 65520, gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_842F268:: @ 842F268
- spr_template 65520, 0xFFFF, gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_842F280:: @ 842F280
- spr_template 65520, 0xFFFF, gOamData_842F124, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_842F298:: @ 842F298
- spr_template 65521, 65521, gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSpriteTemplate_842F2B0:: @ 842F2B0
- spr_template 65521, 0xFFFF, gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
- .align 2
-gSubspriteTable_842F2C8:: @ 842F2C8
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F2D8:: @ 842F2D8
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F2F0:: @ 842F2F0
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 4, 8x32
- subsprite 17, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F310:: @ 842F310
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 25, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F328:: @ 842F328
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F340:: @ 842F340
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 12, 32x32
- subsprite 41, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F360:: @ 842F360
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 17, -1, 0, 12, 32x32
- subsprite 49, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F380:: @ 842F380
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 25, -1, 0, 12, 32x32
- subsprite 57, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F3A0:: @ 842F3A0
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 65, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F3C0:: @ 842F3C0
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 12, 32x32
- subsprite 41, -1, 0, 12, 32x32
- subsprite 73, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F3E8:: @ 842F3E8
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 49, -1, 0, 12, 32x32
- subsprite 81, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F410:: @ 842F410
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 57, -1, 0, 12, 32x32
- subsprite 89, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F438:: @ 842F438
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 65, -1, 0, 12, 32x32
- subsprite 97, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F460:: @ 842F460
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 12, 32x32
- subsprite 41, -1, 0, 12, 32x32
- subsprite 73, -1, 0, 12, 32x32
- subsprite 105, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F490:: @ 842F490
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 65, -1, 0, 12, 32x32
- subsprite 81, -1, 0, 12, 32x32
- subsprite 113, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F4C0:: @ 842F4C0
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 65, -1, 0, 12, 32x32
- subsprite 89, -1, 0, 12, 32x32
- subsprite 121, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F4F0:: @ 842F4F0
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 12, 32x32
- subsprite 33, -1, 0, 12, 32x32
- subsprite 65, -1, 0, 12, 32x32
- subsprite 97, -1, 0, 12, 32x32
- subsprite 129, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F520:: @ 842F520
- subsprite -1, -1, 0, 0, 8x32
- subsprite 1, -1, 0, 4, 8x32
- subsprite 9, -1, 0, 12, 32x32
- subsprite 41, -1, 0, 12, 32x32
- subsprite 73, -1, 0, 12, 32x32
- subsprite 105, -1, 0, 12, 32x32
- subsprite 137, -1, 0, 8, 8x32
-
- .align 2
-gSubspriteTable_842F558:: @ 842F558
- subsprite -1, -1, 0, 0, 8x16
- subsprite 7, -1, 0, 12, 32x32
- subsprite 35, -1, 0, 8, 8x16
-
- .align 2
-gUnknown_0842F5BC:: @ 842F5BC
- .4byte gSubspriteTable_842F558
-
- .align 2
-gSubspriteTables_842F5C0:: @ 842F5C0
- .4byte 1, gMenuCursorSubsprites
- .4byte 1, gMenuCursorSubsprites
- .4byte 2, gMenuCursorSubsprites
- .4byte 3, gMenuCursorSubsprites
- .4byte 4, gMenuCursorSubsprites
- .4byte 5, gMenuCursorSubsprites
- .4byte 6, gMenuCursorSubsprites
- .4byte 7, gMenuCursorSubsprites
- .4byte 8, gMenuCursorSubsprites
- .4byte 9, gMenuCursorSubsprites
- .4byte 10, gMenuCursorSubsprites
- .4byte 11, gMenuCursorSubsprites
- .4byte 12, gMenuCursorSubsprites
- .4byte 13, gMenuCursorSubsprites
- .4byte 14, gMenuCursorSubsprites
- .4byte 15, gMenuCursorSubsprites
- .4byte 16, gMenuCursorSubsprites
- .4byte 17, gMenuCursorSubsprites
- .4byte 18, gMenuCursorSubsprites
- .4byte 19, gMenuCursorSubsprites
- .4byte 20, gMenuCursorSubsprites
- .4byte 21, gMenuCursorSubsprites
- .4byte 22, gMenuCursorSubsprites
- .4byte 23, gMenuCursorSubsprites
- .4byte 24, gMenuCursorSubsprites
- .4byte 25, gMenuCursorSubsprites
- .4byte 26, gMenuCursorSubsprites
- .4byte 27, gMenuCursorSubsprites
- .4byte 28, gMenuCursorSubsprites
- .4byte 29, gMenuCursorSubsprites
- .4byte 30, gMenuCursorSubsprites
- .4byte 31, gMenuCursorSubsprites
-
- .align 2
-gSubspriteTables_842F6C0:: @ 842F6C0
- .4byte 2, gSubspriteTable_842F2C8
- .4byte 2, gSubspriteTable_842F2C8
- .4byte 3, gSubspriteTable_842F2D8
- .4byte 4, gSubspriteTable_842F2F0
- .4byte 3, gSubspriteTable_842F310
- .4byte 3, gSubspriteTable_842F328
- .4byte 4, gSubspriteTable_842F340
- .4byte 4, gSubspriteTable_842F360
- .4byte 4, gSubspriteTable_842F380
- .4byte 4, gSubspriteTable_842F3A0
- .4byte 5, gSubspriteTable_842F3C0
- .4byte 5, gSubspriteTable_842F3E8
- .4byte 5, gSubspriteTable_842F410
- .4byte 5, gSubspriteTable_842F438
- .4byte 6, gSubspriteTable_842F460
- .4byte 6, gSubspriteTable_842F490
- .4byte 6, gSubspriteTable_842F4C0
- .4byte 6, gSubspriteTable_842F4F0
- .4byte 7, gSubspriteTable_842F520
-
- .align 2
-gUnknown_0842F758:: @ 842F758
- .4byte 3, gMenuCursorSubsprites
- .4byte 0xFFFF0000, 6
- .4byte 0xFFFF0000, 134
- .4byte 0xFFFF0000, 200
- .4byte 0xFFFF0000, 70
-
- .align 2
-gUnknown_0842F780:: @ 842F780
- .4byte 0xFFFF0000, 6
-
- .align 2
-gUnknown_0842F788:: @ 842F788
- .4byte 0xFFFF0000, 200
-
- .align 2
-gUnknown_0842F790:: @ 842F790
- .4byte 0xFFFF0000, 70
-
-gUnknown_0842F798:: @ 842F798
- .4byte 0xFFFF0000, 134
diff --git a/src/data/menu_cursor_de.h b/src/data/menu_cursor_de.h
new file mode 100644
index 000000000..0e5b65c07
--- /dev/null
+++ b/src/data/menu_cursor_de.h
@@ -0,0 +1,345 @@
+#ifndef GUARD_DATA_MENU_CURSOR_H
+#define GUARD_DATA_MENU_CURSOR_H
+
+const u8 OutlineCursorTiles_00[] = INCBIN_U8("graphics/interface/outline_cursor_00.4bpp");
+const u8 OutlineCursorTiles_01[] = INCBIN_U8("graphics/interface/outline_cursor_01.4bpp");
+const u8 OutlineCursorTiles_02[] = INCBIN_U8("graphics/interface/outline_cursor_02.4bpp");
+const u8 OutlineCursorTiles_03[] = INCBIN_U8("graphics/interface/outline_cursor_03.4bpp");
+const u8 OutlineCursorTiles_04[] = INCBIN_U8("graphics/interface/outline_cursor_04.4bpp");
+const u8 OutlineCursorTiles_05[] = INCBIN_U8("graphics/interface/outline_cursor_05.4bpp");
+const u8 OutlineCursorTiles_06[] = INCBIN_U8("graphics/interface/outline_cursor_06.4bpp");
+const u8 OutlineCursorTiles_07[] = INCBIN_U8("graphics/interface/outline_cursor_07.4bpp");
+const u8 OutlineCursorTiles_08[] = INCBIN_U8("graphics/interface/outline_cursor_08.4bpp");
+const u8 OutlineCursorTiles_09[] = INCBIN_U8("graphics/interface/outline_cursor_09.4bpp");
+const u8 OutlineCursorTiles_10[] = INCBIN_U8("graphics/interface/outline_cursor_10.4bpp");
+const u8 OutlineCursorTiles_11[] = INCBIN_U8("graphics/interface/outline_cursor_11.4bpp");
+const u8 OutlineCursorTiles_12[] = INCBIN_U8("graphics/interface/outline_cursor_12.4bpp");
+const u8 OutlineCursorTiles_13[] = INCBIN_U8("graphics/interface/outline_cursor_13.4bpp");
+const u8 OutlineCursorTiles_14[] = INCBIN_U8("graphics/interface/outline_cursor_14.4bpp");
+const u8 OutlineCursorTiles_15[] = INCBIN_U8("graphics/interface/outline_cursor_15.4bpp");
+
+const struct OamData gOamData_842F11C = {
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE
+};
+const struct OamData gOamData_842F124 = {
+ .objMode = ST_OAM_OBJ_WINDOW,
+ .shape = ST_OAM_V_RECTANGLE
+};
+const struct OamData gOamData_842F12C = {
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE
+};
+
+const union AnimCmd gSpriteAnim_842F134[] = {
+ ANIMCMD_FRAME(0, 63),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_842F13C[] = {
+ gSpriteAnim_842F134
+};
+
+const struct SpriteSheet gUnknown_0842F140[] = {
+ { OutlineCursorTiles_00, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_01, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_02, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_03, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_04, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_05, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_06, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_07, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_08, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_09, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_10, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_11, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_12, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_13, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_14, 0x380, 0xFFF0 },
+ { OutlineCursorTiles_15, 0x380, 0xFFF0 }
+};
+
+const struct SpriteSheet gUnknown_0842F1C0[] = {
+ { OutlineCursorTiles_00, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_01, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_02, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_03, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_04, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_05, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_06, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_07, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_08, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_09, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_10, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_11, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_12, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_13, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_14, 0x380, 0xFFF1 },
+ { OutlineCursorTiles_15, 0x380, 0xFFF1 }
+};
+
+const struct SpritePalette gUnknown_0842F240 = {
+ gUnknown_0203A360, 0xfff0
+};
+const struct SpritePalette gUnknown_0842F248 = {
+ gUnknown_0203A360, 0xfff1
+};
+
+const struct SpriteTemplate gSpriteTemplate_842F250[] = {
+ {
+ 0xfff0, 0xfff0, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff0, 0xffff, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff0, 0xffff, &gOamData_842F124, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }
+};
+const struct SpriteTemplate gSpriteTemplate_842F298[] = {
+ {
+ 0xfff1, 0xfff1, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff1, 0xffff, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }
+};
+
+
+const struct Subsprite gSubspriteTable_842F2C8[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F2D8[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F2F0[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 17, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F310[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 25, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F328[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F340[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 41, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F360[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 17, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 49, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F380[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 25, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 57, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3A0[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 65, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3C0[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 41, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 73, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3E8[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 49, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 81, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F410[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 57, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 89, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F438[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 65, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 97, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F460[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 41, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 73, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 105, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F490[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 65, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 81, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 113, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F4C0[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 65, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 89, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 121, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F4F0[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 33, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 65, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 97, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 129, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F520[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 1, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 },
+ { 9, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 41, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 73, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 105, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 137, -1, ST_OAM_V_RECTANGLE, 1, 0, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F558[] = {
+ { -1, -1, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 7, -1, ST_OAM_SQUARE, 2, 0, 0 },
+ { 35, -1, ST_OAM_V_RECTANGLE, 0, 0, 0 }
+};
+
+const struct Subsprite *const gUnknown_0842F5BC[] = {
+ gSubspriteTable_842F558
+};
+
+const struct SubspriteTable gSubspriteTables_842F5C0[] = {
+ {1, gMenuCursorSubsprites},
+ {1, gMenuCursorSubsprites},
+ {2, gMenuCursorSubsprites},
+ {3, gMenuCursorSubsprites},
+ {4, gMenuCursorSubsprites},
+ {5, gMenuCursorSubsprites},
+ {6, gMenuCursorSubsprites},
+ {7, gMenuCursorSubsprites},
+ {8, gMenuCursorSubsprites},
+ {9, gMenuCursorSubsprites},
+ {10, gMenuCursorSubsprites},
+ {11, gMenuCursorSubsprites},
+ {12, gMenuCursorSubsprites},
+ {13, gMenuCursorSubsprites},
+ {14, gMenuCursorSubsprites},
+ {15, gMenuCursorSubsprites},
+ {1, gMenuCursorSubsprites},
+ {17, gMenuCursorSubsprites},
+ {18, gMenuCursorSubsprites},
+ {19, gMenuCursorSubsprites},
+ {20, gMenuCursorSubsprites},
+ {21, gMenuCursorSubsprites},
+ {22, gMenuCursorSubsprites},
+ {23, gMenuCursorSubsprites},
+ {24, gMenuCursorSubsprites},
+ {25, gMenuCursorSubsprites},
+ {26, gMenuCursorSubsprites},
+ {27, gMenuCursorSubsprites},
+ {28, gMenuCursorSubsprites},
+ {29, gMenuCursorSubsprites},
+ {30, gMenuCursorSubsprites},
+ {31, gMenuCursorSubsprites}
+};
+
+const struct SubspriteTable gSubspriteTables_842F6C0[] = {
+ {2, gSubspriteTable_842F2C8},
+ {2, gSubspriteTable_842F2C8},
+ {3, gSubspriteTable_842F2D8},
+ {4, gSubspriteTable_842F2F0},
+ {3, gSubspriteTable_842F310},
+ {3, gSubspriteTable_842F328},
+ {4, gSubspriteTable_842F340},
+ {4, gSubspriteTable_842F360},
+ {4, gSubspriteTable_842F380},
+ {4, gSubspriteTable_842F3A0},
+ {5, gSubspriteTable_842F3C0},
+ {5, gSubspriteTable_842F3E8},
+ {5, gSubspriteTable_842F410},
+ {5, gSubspriteTable_842F438},
+ {6, gSubspriteTable_842F460},
+ {6, gSubspriteTable_842F490},
+ {6, gSubspriteTable_842F4C0},
+ {6, gSubspriteTable_842F4F0},
+ {7, gSubspriteTable_842F520}
+};
+
+const struct SubspriteTable gUnknown_0842F758[] = {
+ {3, gMenuCursorSubsprites}
+};
+
+const struct Subsprite gUnknown_0842F760 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 1
+};
+
+const struct Subsprite gUnknown_0842F768 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 1, .tileOffset = 8
+};
+
+const struct Subsprite gUnknown_0842F770 = {
+ .y = -1, .shape = ST_OAM_SQUARE, .size = 2, .tileOffset = 12
+};
+
+const struct Subsprite gUnknown_0842F778 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 1, .tileOffset = 4
+};
+
+const struct Subsprite gUnknown_0842F780 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 2, .tileOffset = 6
+};
+
+const struct Subsprite gUnknown_0842F788 = {
+ .y = -1, .shape = ST_OAM_SQUARE, .size = 2, .tileOffset = 12
+};
+
+const struct Subsprite gUnknown_0842F790 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 1, .tileOffset = 4
+};
+
+const struct Subsprite gUnknown_0842F798 = {
+ .y = -1, .shape = ST_OAM_V_RECTANGLE, .size = 1, .tileOffset = 8
+};
+
+#endif //GUARD_DATA_MENU_CURSOR_H
diff --git a/src/data/menu_cursor_en.h b/src/data/menu_cursor_en.h
new file mode 100644
index 000000000..a926f2629
--- /dev/null
+++ b/src/data/menu_cursor_en.h
@@ -0,0 +1,363 @@
+#ifndef GUARD_DATA_MENU_CURSOR_H
+#define GUARD_DATA_MENU_CURSOR_H
+
+const u8 OutlineCursorTiles_00[] = INCBIN_U8("graphics/interface/outline_cursor_00.4bpp");
+const u8 OutlineCursorTiles_01[] = INCBIN_U8("graphics/interface/outline_cursor_01.4bpp");
+const u8 OutlineCursorTiles_02[] = INCBIN_U8("graphics/interface/outline_cursor_02.4bpp");
+const u8 OutlineCursorTiles_03[] = INCBIN_U8("graphics/interface/outline_cursor_03.4bpp");
+const u8 OutlineCursorTiles_04[] = INCBIN_U8("graphics/interface/outline_cursor_04.4bpp");
+const u8 OutlineCursorTiles_05[] = INCBIN_U8("graphics/interface/outline_cursor_05.4bpp");
+const u8 OutlineCursorTiles_06[] = INCBIN_U8("graphics/interface/outline_cursor_06.4bpp");
+const u8 OutlineCursorTiles_07[] = INCBIN_U8("graphics/interface/outline_cursor_07.4bpp");
+const u8 OutlineCursorTiles_08[] = INCBIN_U8("graphics/interface/outline_cursor_08.4bpp");
+const u8 OutlineCursorTiles_09[] = INCBIN_U8("graphics/interface/outline_cursor_09.4bpp");
+const u8 OutlineCursorTiles_10[] = INCBIN_U8("graphics/interface/outline_cursor_10.4bpp");
+const u8 OutlineCursorTiles_11[] = INCBIN_U8("graphics/interface/outline_cursor_11.4bpp");
+const u8 OutlineCursorTiles_12[] = INCBIN_U8("graphics/interface/outline_cursor_12.4bpp");
+const u8 OutlineCursorTiles_13[] = INCBIN_U8("graphics/interface/outline_cursor_13.4bpp");
+const u8 OutlineCursorTiles_14[] = INCBIN_U8("graphics/interface/outline_cursor_14.4bpp");
+const u8 OutlineCursorTiles_15[] = INCBIN_U8("graphics/interface/outline_cursor_15.4bpp");
+
+const struct OamData gOamData_842F11C = {
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE
+};
+const struct OamData gOamData_842F124 = {
+ .objMode = ST_OAM_OBJ_WINDOW,
+ .shape = ST_OAM_V_RECTANGLE
+};
+const struct OamData gOamData_842F12C = {
+ .objMode = ST_OAM_OBJ_NORMAL,
+ .shape = ST_OAM_V_RECTANGLE
+};
+
+const union AnimCmd gSpriteAnim_842F134[] = {
+ ANIMCMD_FRAME(0, 63),
+ ANIMCMD_END
+};
+
+const union AnimCmd *const gSpriteAnimTable_842F13C[] = {
+ gSpriteAnim_842F134
+};
+
+const struct SpriteSheet gUnknown_0842F140[] = {
+ { OutlineCursorTiles_00, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_01, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_02, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_03, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_04, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_05, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_06, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_07, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_08, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_09, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_10, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_11, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_12, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_13, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_14, 0x1C0, 0xFFF0 },
+ { OutlineCursorTiles_15, 0x1C0, 0xFFF0 }
+};
+
+const struct SpriteSheet gUnknown_0842F1C0[] = {
+ { OutlineCursorTiles_00, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_01, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_02, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_03, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_04, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_05, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_06, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_07, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_08, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_09, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_10, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_11, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_12, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_13, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_14, 0x1C0, 0xFFF1 },
+ { OutlineCursorTiles_15, 0x1C0, 0xFFF1 }
+};
+
+const struct SpritePalette gUnknown_0842F240 = {
+ gUnknown_0203A360, 0xfff0
+};
+const struct SpritePalette gUnknown_0842F248 = {
+ gUnknown_0203A360, 0xfff1
+};
+
+const struct SpriteTemplate gSpriteTemplate_842F250[] = {
+ {
+ 0xfff0, 0xfff0, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff0, 0xffff, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff0, 0xffff, &gOamData_842F124, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }
+};
+const struct SpriteTemplate gSpriteTemplate_842F298[] = {
+ {
+ 0xfff1, 0xfff1, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }, {
+ 0xfff1, 0xffff, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
+ }
+};
+
+
+const struct Subsprite gSubspriteTable_842F2C8[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F2D8[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F2F0[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 17, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F310[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 25, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F328[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F340[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 41, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F360[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 17, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 49, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F380[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 25, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 57, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3A0[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 65, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3C0[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 73, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F3E8[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 49, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 81, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F410[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 57, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 89, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F438[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 97, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F460[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 73, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 105, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F490[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 81, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 113, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F4C0[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 89, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 121, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F4F0[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 97, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 129, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F520[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
+ { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 73, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 105, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 137, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite gSubspriteTable_842F558[] = {
+ { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
+ { 7, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
+ { 35, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
+};
+
+const struct Subsprite *const gUnknown_0842F570[] = {
+ gSubspriteTable_842F2C8,
+ gSubspriteTable_842F2C8,
+ gSubspriteTable_842F2D8,
+ gSubspriteTable_842F2F0,
+ gSubspriteTable_842F310,
+ gSubspriteTable_842F328,
+ gSubspriteTable_842F340,
+ gSubspriteTable_842F360,
+ gSubspriteTable_842F380,
+ gSubspriteTable_842F3A0,
+ gSubspriteTable_842F3C0,
+ gSubspriteTable_842F3E8,
+ gSubspriteTable_842F410,
+ gSubspriteTable_842F438,
+ gSubspriteTable_842F460,
+ gSubspriteTable_842F490,
+ gSubspriteTable_842F4C0,
+ gSubspriteTable_842F4F0,
+ gSubspriteTable_842F520
+};
+
+const struct Subsprite *const gUnknown_0842F5BC[] = {
+ gSubspriteTable_842F558
+};
+
+const struct SubspriteTable gSubspriteTables_842F5C0[] = {
+ {1, gMenuCursorSubsprites},
+ {1, gMenuCursorSubsprites},
+ {2, gMenuCursorSubsprites},
+ {3, gMenuCursorSubsprites},
+ {4, gMenuCursorSubsprites},
+ {5, gMenuCursorSubsprites},
+ {6, gMenuCursorSubsprites},
+ {7, gMenuCursorSubsprites},
+ {8, gMenuCursorSubsprites},
+ {9, gMenuCursorSubsprites},
+ {10, gMenuCursorSubsprites},
+ {11, gMenuCursorSubsprites},
+ {12, gMenuCursorSubsprites},
+ {13, gMenuCursorSubsprites},
+ {14, gMenuCursorSubsprites},
+ {15, gMenuCursorSubsprites},
+ {1, gMenuCursorSubsprites},
+ {17, gMenuCursorSubsprites},
+ {18, gMenuCursorSubsprites},
+ {19, gMenuCursorSubsprites},
+ {20, gMenuCursorSubsprites},
+ {21, gMenuCursorSubsprites},
+ {22, gMenuCursorSubsprites},
+ {23, gMenuCursorSubsprites},
+ {24, gMenuCursorSubsprites},
+ {25, gMenuCursorSubsprites},
+ {26, gMenuCursorSubsprites},
+ {27, gMenuCursorSubsprites},
+ {28, gMenuCursorSubsprites},
+ {29, gMenuCursorSubsprites},
+ {30, gMenuCursorSubsprites},
+ {31, gMenuCursorSubsprites}
+};
+
+const struct SubspriteTable gSubspriteTables_842F6C0[] = {
+ {2, gSubspriteTable_842F2C8},
+ {2, gSubspriteTable_842F2C8},
+ {3, gSubspriteTable_842F2D8},
+ {4, gSubspriteTable_842F2F0},
+ {3, gSubspriteTable_842F310},
+ {3, gSubspriteTable_842F328},
+ {4, gSubspriteTable_842F340},
+ {4, gSubspriteTable_842F360},
+ {4, gSubspriteTable_842F380},
+ {4, gSubspriteTable_842F3A0},
+ {5, gSubspriteTable_842F3C0},
+ {5, gSubspriteTable_842F3E8},
+ {5, gSubspriteTable_842F410},
+ {5, gSubspriteTable_842F438},
+ {6, gSubspriteTable_842F460},
+ {6, gSubspriteTable_842F490},
+ {6, gSubspriteTable_842F4C0},
+ {6, gSubspriteTable_842F4F0},
+ {7, gSubspriteTable_842F520}
+};
+
+const struct SubspriteTable gUnknown_0842F758[] = {
+ {3, gMenuCursorSubsprites}
+};
+
+const struct Subsprite gUnknown_0842F760 = {
+ .shape = ST_OAM_V_RECTANGLE
+};
+
+const struct Subsprite gUnknown_0842F768 = {
+ .shape = ST_OAM_V_RECTANGLE, .tileOffset = 4
+};
+
+const struct Subsprite gUnknown_0842F770 = {
+ .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 6
+};
+
+const struct Subsprite gUnknown_0842F778 = {
+ .shape = ST_OAM_V_RECTANGLE, .tileOffset = 2
+};
+
+const struct Subsprite gUnknown_0842F780 = {
+ .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 6
+};
+
+const struct Subsprite gUnknown_0842F788 = {
+ .shape = ST_OAM_V_RECTANGLE, .tileOffset = 2
+};
+
+const struct Subsprite gUnknown_0842F790 = {
+ .shape = ST_OAM_V_RECTANGLE, .tileOffset = 4
+};
+
+#endif //GUARD_DATA_MENU_CURSOR_H
diff --git a/src/engine/menu_cursor.c b/src/engine/menu_cursor.c
index 8dc01c063..960d3cc87 100644
--- a/src/engine/menu_cursor.c
+++ b/src/engine/menu_cursor.c
@@ -11,364 +11,11 @@ EWRAM_DATA u8 gUnknown_0203A3D2 = 0;
EWRAM_DATA u8 gUnknown_0203A3D3 = 0;
EWRAM_DATA u8 gUnknown_0203A3D4 = 0;
-const u8 OutlineCursorTiles_00[] = INCBIN_U8("graphics/interface/outline_cursor_00.4bpp");
-const u8 OutlineCursorTiles_01[] = INCBIN_U8("graphics/interface/outline_cursor_01.4bpp");
-const u8 OutlineCursorTiles_02[] = INCBIN_U8("graphics/interface/outline_cursor_02.4bpp");
-const u8 OutlineCursorTiles_03[] = INCBIN_U8("graphics/interface/outline_cursor_03.4bpp");
-const u8 OutlineCursorTiles_04[] = INCBIN_U8("graphics/interface/outline_cursor_04.4bpp");
-const u8 OutlineCursorTiles_05[] = INCBIN_U8("graphics/interface/outline_cursor_05.4bpp");
-const u8 OutlineCursorTiles_06[] = INCBIN_U8("graphics/interface/outline_cursor_06.4bpp");
-const u8 OutlineCursorTiles_07[] = INCBIN_U8("graphics/interface/outline_cursor_07.4bpp");
-const u8 OutlineCursorTiles_08[] = INCBIN_U8("graphics/interface/outline_cursor_08.4bpp");
-const u8 OutlineCursorTiles_09[] = INCBIN_U8("graphics/interface/outline_cursor_09.4bpp");
-const u8 OutlineCursorTiles_10[] = INCBIN_U8("graphics/interface/outline_cursor_10.4bpp");
-const u8 OutlineCursorTiles_11[] = INCBIN_U8("graphics/interface/outline_cursor_11.4bpp");
-const u8 OutlineCursorTiles_12[] = INCBIN_U8("graphics/interface/outline_cursor_12.4bpp");
-const u8 OutlineCursorTiles_13[] = INCBIN_U8("graphics/interface/outline_cursor_13.4bpp");
-const u8 OutlineCursorTiles_14[] = INCBIN_U8("graphics/interface/outline_cursor_14.4bpp");
-const u8 OutlineCursorTiles_15[] = INCBIN_U8("graphics/interface/outline_cursor_15.4bpp");
-
-const struct OamData gOamData_842F11C = {
- .objMode = ST_OAM_OBJ_NORMAL,
- .shape = ST_OAM_V_RECTANGLE
-};
-const struct OamData gOamData_842F124 = {
- .objMode = ST_OAM_OBJ_WINDOW,
- .shape = ST_OAM_V_RECTANGLE
-};
-const struct OamData gOamData_842F12C = {
- .objMode = ST_OAM_OBJ_NORMAL,
- .shape = ST_OAM_V_RECTANGLE
-};
-
-const union AnimCmd gSpriteAnim_842F134[] = {
- ANIMCMD_FRAME(0, 63),
- ANIMCMD_END
-};
-
-const union AnimCmd *const gSpriteAnimTable_842F13C[] = {
- gSpriteAnim_842F134
-};
-
-const struct SpriteSheet gUnknown_0842F140[] = {
- { OutlineCursorTiles_00, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_01, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_02, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_03, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_04, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_05, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_06, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_07, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_08, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_09, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_10, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_11, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_12, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_13, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_14, 0x1C0, 0xFFF0 },
- { OutlineCursorTiles_15, 0x1C0, 0xFFF0 }
-};
-
-const struct SpriteSheet gUnknown_0842F1C0[] = {
- { OutlineCursorTiles_00, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_01, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_02, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_03, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_04, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_05, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_06, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_07, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_08, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_09, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_10, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_11, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_12, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_13, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_14, 0x1C0, 0xFFF1 },
- { OutlineCursorTiles_15, 0x1C0, 0xFFF1 }
-};
-
-const struct SpritePalette gUnknown_0842F240 = {
- gUnknown_0203A360, 0xfff0
-};
-const struct SpritePalette gUnknown_0842F248 = {
- gUnknown_0203A360, 0xfff1
-};
-
-const struct SpriteTemplate gSpriteTemplate_842F250[] = {
- {
- 0xfff0, 0xfff0, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- }, {
- 0xfff0, 0xffff, &gOamData_842F11C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- }, {
- 0xfff0, 0xffff, &gOamData_842F124, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- }
-};
-const struct SpriteTemplate gSpriteTemplate_842F298[] = {
- {
- 0xfff1, 0xfff1, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- }, {
- 0xfff1, 0xffff, &gOamData_842F12C, gSpriteAnimTable_842F13C, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy
- }
-};
-
-
-const struct Subsprite gSubspriteTable_842F2C8[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F2D8[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F2F0[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 17, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F310[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 25, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F328[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F340[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 41, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F360[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 17, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 49, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F380[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 25, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 57, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F3A0[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 65, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F3C0[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 73, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F3E8[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 49, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 81, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F410[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 57, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 89, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F438[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 97, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F460[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 73, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 105, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F490[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 81, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 113, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F4C0[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 89, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 121, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F4F0[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 33, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 65, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 97, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 129, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F520[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 1, 0, ST_OAM_V_RECTANGLE, 0, 2, 0 },
- { 9, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 41, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 73, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 105, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 137, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite gSubspriteTable_842F558[] = {
- { -1, 0, ST_OAM_V_RECTANGLE, 0, 0, 0 },
- { 7, 0, ST_OAM_H_RECTANGLE, 2, 6, 0 },
- { 35, 0, ST_OAM_V_RECTANGLE, 0, 4, 0 }
-};
-
-const struct Subsprite *const gUnknown_0842F570[] = {
- gSubspriteTable_842F2C8,
- gSubspriteTable_842F2C8,
- gSubspriteTable_842F2D8,
- gSubspriteTable_842F2F0,
- gSubspriteTable_842F310,
- gSubspriteTable_842F328,
- gSubspriteTable_842F340,
- gSubspriteTable_842F360,
- gSubspriteTable_842F380,
- gSubspriteTable_842F3A0,
- gSubspriteTable_842F3C0,
- gSubspriteTable_842F3E8,
- gSubspriteTable_842F410,
- gSubspriteTable_842F438,
- gSubspriteTable_842F460,
- gSubspriteTable_842F490,
- gSubspriteTable_842F4C0,
- gSubspriteTable_842F4F0,
- gSubspriteTable_842F520
-};
-
-const struct Subsprite *const gUnknown_0842F5BC[] = {
- gSubspriteTable_842F558
-};
-
-const struct SubspriteTable gSubspriteTables_842F5C0[] = {
- {1, gMenuCursorSubsprites},
- {1, gMenuCursorSubsprites},
- {2, gMenuCursorSubsprites},
- {3, gMenuCursorSubsprites},
- {4, gMenuCursorSubsprites},
- {5, gMenuCursorSubsprites},
- {6, gMenuCursorSubsprites},
- {7, gMenuCursorSubsprites},
- {8, gMenuCursorSubsprites},
- {9, gMenuCursorSubsprites},
- {10, gMenuCursorSubsprites},
- {11, gMenuCursorSubsprites},
- {12, gMenuCursorSubsprites},
- {13, gMenuCursorSubsprites},
- {14, gMenuCursorSubsprites},
- {15, gMenuCursorSubsprites},
- {1, gMenuCursorSubsprites},
- {17, gMenuCursorSubsprites},
- {18, gMenuCursorSubsprites},
- {19, gMenuCursorSubsprites},
- {20, gMenuCursorSubsprites},
- {21, gMenuCursorSubsprites},
- {22, gMenuCursorSubsprites},
- {23, gMenuCursorSubsprites},
- {24, gMenuCursorSubsprites},
- {25, gMenuCursorSubsprites},
- {26, gMenuCursorSubsprites},
- {27, gMenuCursorSubsprites},
- {28, gMenuCursorSubsprites},
- {29, gMenuCursorSubsprites},
- {30, gMenuCursorSubsprites},
- {31, gMenuCursorSubsprites}
-};
-
-const struct SubspriteTable gSubspriteTables_842F6C0[] = {
- {2, gSubspriteTable_842F2C8},
- {2, gSubspriteTable_842F2C8},
- {3, gSubspriteTable_842F2D8},
- {4, gSubspriteTable_842F2F0},
- {3, gSubspriteTable_842F310},
- {3, gSubspriteTable_842F328},
- {4, gSubspriteTable_842F340},
- {4, gSubspriteTable_842F360},
- {4, gSubspriteTable_842F380},
- {4, gSubspriteTable_842F3A0},
- {5, gSubspriteTable_842F3C0},
- {5, gSubspriteTable_842F3E8},
- {5, gSubspriteTable_842F410},
- {5, gSubspriteTable_842F438},
- {6, gSubspriteTable_842F460},
- {6, gSubspriteTable_842F490},
- {6, gSubspriteTable_842F4C0},
- {6, gSubspriteTable_842F4F0},
- {7, gSubspriteTable_842F520}
-};
-
-const struct SubspriteTable gUnknown_0842F758[] = {
- {3, gMenuCursorSubsprites}
-};
-
-const struct Subsprite gUnknown_0842F760 = {
- .shape = ST_OAM_V_RECTANGLE
-};
-
-const struct Subsprite gUnknown_0842F768 = {
- .shape = ST_OAM_V_RECTANGLE, .tileOffset = 4
-};
-
-const struct Subsprite gUnknown_0842F770 = {
- .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 6
-};
-
-const struct Subsprite gUnknown_0842F778 = {
- .shape = ST_OAM_V_RECTANGLE, .tileOffset = 2
-};
-
-const struct Subsprite gUnknown_0842F780 = {
- .shape = ST_OAM_H_RECTANGLE, .size = 2, .tileOffset = 6
-};
-
-const struct Subsprite gUnknown_0842F788 = {
- .shape = ST_OAM_V_RECTANGLE, .tileOffset = 2
-};
-
-const struct Subsprite gUnknown_0842F790 = {
- .shape = ST_OAM_V_RECTANGLE, .tileOffset = 4
-};
+#if ENGLISH
+#include "../src/data/menu_cursor_en.h"
+#elif GERMAN
+#include "../src/data/menu_cursor_de.h"
+#endif // ENGLISH/GERMAN
void sub_814A590(void)
{