summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCameron Hall <camthesaxman@users.noreply.github.com>2017-11-28 00:56:52 -0600
committerGitHub <noreply@github.com>2017-11-28 00:56:52 -0600
commit222f48714cdc5caeda5867289382671d44b88552 (patch)
tree03c336461a2b3969a1c17dad9ed24692c940b504
parent17f587ba309d842f8819d25e22272c1a1a450220 (diff)
parent90b6373b5bb98b380110dd666e0535a1450b2201 (diff)
Merge pull request #485 from camthesaxman/mon_markings_data
convert mon_markings data to C
-rw-r--r--data/mon_markings.s207
-rw-r--r--ld_script.txt2
-rw-r--r--src/pokemon/mon_markings.c271
3 files changed, 263 insertions, 217 deletions
diff --git a/data/mon_markings.s b/data/mon_markings.s
deleted file mode 100644
index b9ec7735f..000000000
--- a/data/mon_markings.s
+++ /dev/null
@@ -1,207 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gUnknown_083E49F4:: @ 83E49F4
- .incbin "graphics/misc/mon_markings.gbapal"
-
- .align 2
-gUnknown_083E4A14:: @ 83E4A14
- .incbin "graphics/misc/mon_markings.4bpp"
-
- .align 2
-gOamData_83E5214:: @ 83E5214
- .2byte 0x0
- .2byte 0xC000
- .2byte 0x0
-
- .align 2
-gOamData_83E521C:: @ 83E521C
- .2byte 0x0
- .2byte 0x0
- .2byte 0x0
-
- .align 2
-gSpriteAnim_83E5224:: @ 83E5224
- obj_image_anim_frame 0, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E522C:: @ 83E522C
- obj_image_anim_frame 1, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5234:: @ 83E5234
- obj_image_anim_frame 2, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E523C:: @ 83E523C
- obj_image_anim_frame 3, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5244:: @ 83E5244
- obj_image_anim_frame 4, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E524C:: @ 83E524C
- obj_image_anim_frame 5, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5254:: @ 83E5254
- obj_image_anim_frame 6, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E525C:: @ 83E525C
- obj_image_anim_frame 7, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5264:: @ 83E5264
- obj_image_anim_frame 8, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E526C:: @ 83E526C
- obj_image_anim_frame 9, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83E5274:: @ 83E5274
- .4byte gSpriteAnim_83E5224
- .4byte gSpriteAnim_83E522C
- .4byte gSpriteAnim_83E5234
- .4byte gSpriteAnim_83E523C
- .4byte gSpriteAnim_83E5244
- .4byte gSpriteAnim_83E524C
- .4byte gSpriteAnim_83E5254
- .4byte gSpriteAnim_83E525C
- .4byte gSpriteAnim_83E5264
- .4byte gSpriteAnim_83E526C
-
- .align 2
-gSpriteAnim_83E529C:: @ 83E529C
- obj_image_anim_frame 0, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52A4:: @ 83E52A4
- obj_image_anim_frame 64, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83E52AC:: @ 83E52AC
- .4byte gSpriteAnim_83E529C
- .4byte gSpriteAnim_83E52A4
-
- .align 2
-gOamData_83E52B4:: @ 83E52B4
- .2byte 0x4000
- .2byte 0x4000
- .2byte 0x0
-
- .align 2
-gSpriteAnim_83E52BC:: @ 83E52BC
- obj_image_anim_frame 0, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52C4:: @ 83E52C4
- obj_image_anim_frame 4, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52CC:: @ 83E52CC
- obj_image_anim_frame 8, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52D4:: @ 83E52D4
- obj_image_anim_frame 12, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52DC:: @ 83E52DC
- obj_image_anim_frame 16, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52E4:: @ 83E52E4
- obj_image_anim_frame 20, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52EC:: @ 83E52EC
- obj_image_anim_frame 24, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52F4:: @ 83E52F4
- obj_image_anim_frame 28, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E52FC:: @ 83E52FC
- obj_image_anim_frame 32, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5304:: @ 83E5304
- obj_image_anim_frame 36, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E530C:: @ 83E530C
- obj_image_anim_frame 40, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5314:: @ 83E5314
- obj_image_anim_frame 44, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E531C:: @ 83E531C
- obj_image_anim_frame 48, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5324:: @ 83E5324
- obj_image_anim_frame 52, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E532C:: @ 83E532C
- obj_image_anim_frame 56, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5334:: @ 83E5334
- obj_image_anim_frame 60, 5
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83E533C:: @ 83E533C
- .4byte gSpriteAnim_83E52BC
- .4byte gSpriteAnim_83E52C4
- .4byte gSpriteAnim_83E52CC
- .4byte gSpriteAnim_83E52D4
- .4byte gSpriteAnim_83E52DC
- .4byte gSpriteAnim_83E52E4
- .4byte gSpriteAnim_83E52EC
- .4byte gSpriteAnim_83E52F4
- .4byte gSpriteAnim_83E52FC
- .4byte gSpriteAnim_83E5304
- .4byte gSpriteAnim_83E530C
- .4byte gSpriteAnim_83E5314
- .4byte gSpriteAnim_83E531C
- .4byte gSpriteAnim_83E5324
- .4byte gSpriteAnim_83E532C
- .4byte gSpriteAnim_83E5334
diff --git a/ld_script.txt b/ld_script.txt
index 635dac99e..6664a6f8d 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -545,7 +545,7 @@ SECTIONS {
src/field/bike.o(.rodata);
data/easy_chat.o(.rodata);
data/pokenav.o(.rodata);
- data/mon_markings.o(.rodata);
+ src/pokemon/mon_markings.o(.rodata);
src/field/mauville_man.o(.rodata);
src/pokemon/mail.o(.rodata);
src/field/menu_helpers.o(.rodata);
diff --git a/src/pokemon/mon_markings.c b/src/pokemon/mon_markings.c
index 18bbef89b..b4144ea34 100644
--- a/src/pokemon/mon_markings.c
+++ b/src/pokemon/mon_markings.c
@@ -34,14 +34,267 @@ struct PokemonMarkMenu
extern u8 gPokenavConditionMenuMisc_Gfx[];
extern u16 gUnknown_08E966B8[];
-extern u16 gUnknown_083E49F4[];
-extern u8 gUnknown_083E4A14[];
-extern struct OamData gOamData_83E5214;
-extern struct OamData gOamData_83E521C;
-extern const union AnimCmd *const gSpriteAnimTable_83E5274[];
-extern const union AnimCmd *const gSpriteAnimTable_83E52AC[];
-extern struct OamData gOamData_83E52B4;
-extern const union AnimCmd *const gSpriteAnimTable_83E533C[];
+const u16 gUnknown_083E49F4[] = INCBIN_U16("graphics/misc/mon_markings.gbapal");
+const u8 gUnknown_083E4A14[] = INCBIN_U8("graphics/misc/mon_markings.4bpp");
+
+const struct OamData gOamData_83E5214 =
+{
+ .y = 0,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 3,
+ .tileNum = 0,
+ .priority = 0,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+
+const struct OamData gOamData_83E521C =
+{
+ .y = 0,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 0,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 0,
+ .tileNum = 0,
+ .priority = 0,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+
+const union AnimCmd gSpriteAnim_83E5224[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E522C[] =
+{
+ ANIMCMD_FRAME(1, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5234[] =
+{
+ ANIMCMD_FRAME(2, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E523C[] =
+{
+ ANIMCMD_FRAME(3, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5244[] =
+{
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E524C[] =
+{
+ ANIMCMD_FRAME(5, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5254[] =
+{
+ ANIMCMD_FRAME(6, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E525C[] =
+{
+ ANIMCMD_FRAME(7, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5264[] =
+{
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E526C[] =
+{
+ ANIMCMD_FRAME(9, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_83E5274[] =
+{
+ gSpriteAnim_83E5224,
+ gSpriteAnim_83E522C,
+ gSpriteAnim_83E5234,
+ gSpriteAnim_83E523C,
+ gSpriteAnim_83E5244,
+ gSpriteAnim_83E524C,
+ gSpriteAnim_83E5254,
+ gSpriteAnim_83E525C,
+ gSpriteAnim_83E5264,
+ gSpriteAnim_83E526C,
+};
+
+const union AnimCmd gSpriteAnim_83E529C[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52A4[] =
+{
+ ANIMCMD_FRAME(64, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_83E52AC[] =
+{
+ gSpriteAnim_83E529C,
+ gSpriteAnim_83E52A4,
+};
+
+const struct OamData gOamData_83E52B4 =
+{
+ .y = 0,
+ .affineMode = 0,
+ .objMode = 0,
+ .mosaic = 0,
+ .bpp = 0,
+ .shape = 1,
+ .x = 0,
+ .matrixNum = 0,
+ .size = 1,
+ .tileNum = 0,
+ .priority = 0,
+ .paletteNum = 0,
+ .affineParam = 0,
+};
+
+const union AnimCmd gSpriteAnim_83E52BC[] =
+{
+ ANIMCMD_FRAME(0, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52C4[] =
+{
+ ANIMCMD_FRAME(4, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52CC[] =
+{
+ ANIMCMD_FRAME(8, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52D4[] =
+{
+ ANIMCMD_FRAME(12, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52DC[] =
+{
+ ANIMCMD_FRAME(16, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52E4[] =
+{
+ ANIMCMD_FRAME(20, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52EC[] =
+{
+ ANIMCMD_FRAME(24, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52F4[] =
+{
+ ANIMCMD_FRAME(28, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E52FC[] =
+{
+ ANIMCMD_FRAME(32, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5304[] =
+{
+ ANIMCMD_FRAME(36, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E530C[] =
+{
+ ANIMCMD_FRAME(40, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5314[] =
+{
+ ANIMCMD_FRAME(44, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E531C[] =
+{
+ ANIMCMD_FRAME(48, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5324[] =
+{
+ ANIMCMD_FRAME(52, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E532C[] =
+{
+ ANIMCMD_FRAME(56, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd gSpriteAnim_83E5334[] =
+{
+ ANIMCMD_FRAME(60, 5),
+ ANIMCMD_END,
+};
+
+const union AnimCmd *const gSpriteAnimTable_83E533C[] =
+{
+ gSpriteAnim_83E52BC,
+ gSpriteAnim_83E52C4,
+ gSpriteAnim_83E52CC,
+ gSpriteAnim_83E52D4,
+ gSpriteAnim_83E52DC,
+ gSpriteAnim_83E52E4,
+ gSpriteAnim_83E52EC,
+ gSpriteAnim_83E52F4,
+ gSpriteAnim_83E52FC,
+ gSpriteAnim_83E5304,
+ gSpriteAnim_83E530C,
+ gSpriteAnim_83E5314,
+ gSpriteAnim_83E531C,
+ gSpriteAnim_83E5324,
+ gSpriteAnim_83E532C,
+ gSpriteAnim_83E5334,
+};
static EWRAM_DATA struct PokemonMarkMenu *sMenu = NULL;
@@ -378,6 +631,6 @@ struct Sprite *sub_80F7960(u16 tileTag, u16 paletteTag, const u16 *palette, u16
void sub_80F7A10(u8 markings, void *dest)
{
- void *src = gUnknown_083E4A14 + markings * 0x80;
+ const void *src = gUnknown_083E4A14 + markings * 0x80;
DmaCopy16(3, src, dest, 0x80);
}