summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordrifloony <drifloony@users.noreply.github.com>2017-07-13 21:36:52 -0700
committerdrifloony <drifloony@users.noreply.github.com>2017-07-13 21:37:49 -0700
commit1853efa954d88037729126f5494a53956c29fb43 (patch)
treee900ae1b8071f6e547bd8c01c813ad2626b60d77
parent10618d8a4a1694e63de75028677bdb6f5cd53803 (diff)
move ROM variables into menu_helpers.c
-rw-r--r--data/menu_helpers.s102
-rw-r--r--include/sprite.h2
-rw-r--r--ld_script.txt2
-rw-r--r--src/menu_helpers.c124
4 files changed, 111 insertions, 119 deletions
diff --git a/data/menu_helpers.s b/data/menu_helpers.s
deleted file mode 100644
index 29d42cb4b..000000000
--- a/data/menu_helpers.s
+++ /dev/null
@@ -1,102 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .section .rodata
-
- .align 2
-gSpriteImage_83E5808:: @ 83E5808
- .incbin "graphics/unknown_sprites/83E59A0/0.4bpp"
-
- .align 2
-gSpriteImage_83E5848:: @ 83E5848
- .incbin "graphics/unknown_sprites/83E59A0/1.4bpp"
-
- .align 2
-gSpriteImage_83E5888:: @ 83E5888
- .incbin "graphics/unknown_sprites/83E59B0/0.4bpp"
-
- .align 2
-gSpriteImage_83E58C8:: @ 83E58C8
- .incbin "graphics/unknown_sprites/83E59B0/1.4bpp"
-
- .align 2
-gSpriteImage_83E5908:: @ 83E5908
- .incbin "graphics/unknown_sprites/83E59C0/0.4bpp"
-
- .align 2
-gSpriteImage_83E5928:: @ 83E5928
- .incbin "graphics/unknown_sprites/83E59C0/1.4bpp"
-
- .align 2
-Palette_3E5948: @ 83E5948
- .incbin "graphics/interface/83E5948.gbapal"
-
- .align 2
-gUnknown_083E5968:: @ 83E5968
- obj_pal Palette_3E5948, 6
-
- .align 2
-gOamData_83E5970:: @ 83E5970
- .2byte 0x0000
- .2byte 0x0000
- .2byte 0x0001
-
- .align 2
-gOamData_83E5978:: @ 83E5978
- .2byte 0x4000
- .2byte 0x0000
- .2byte 0x0001
-
- .align 2
-gOamData_83E5980:: @ 83E5980
- .2byte 0x8000
- .2byte 0x0000
- .2byte 0x0001
-
- .align 2
-gSpriteAnim_83E5988:: @ 83E5988
- obj_image_anim_frame 0, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnim_83E5990:: @ 83E5990
- obj_image_anim_frame 1, 0
- obj_image_anim_end
-
- .align 2
-gSpriteAnimTable_83E5998:: @ 83E5998
- .4byte gSpriteAnim_83E5988
- .4byte gSpriteAnim_83E5990
-
- .align 2
-gSpriteImageTable_83E59A0:: @ 83E59A0
- obj_frame_tiles gSpriteImage_83E5808, 0x40
- obj_frame_tiles gSpriteImage_83E5848, 0x40
-
- .align 2
-gSpriteImageTable_83E59B0:: @ 83E59B0
- obj_frame_tiles gSpriteImage_83E5888, 0x40
- obj_frame_tiles gSpriteImage_83E58C8, 0x40
-
- .align 2
-gSpriteImageTable_83E59C0:: @ 83E59C0
- obj_frame_tiles gSpriteImage_83E5908, 0x20
- obj_frame_tiles gSpriteImage_83E5928, 0x20
-
- .align 2
-gSpriteTemplate_83E59D0:: @ 83E59D0
- spr_template 0xFFFF, 6, gOamData_83E5978, gSpriteAnimTable_83E5998, gSpriteImageTable_83E59A0, gDummySpriteAffineAnimTable, sub_80F9834
-
- .align 2
-gSpriteTemplate_83E59E8:: @ 83E59E8
- spr_template 0xFFFF, 6, gOamData_83E5980, gSpriteAnimTable_83E5998, gSpriteImageTable_83E59B0, gDummySpriteAffineAnimTable, sub_80F9834
-
- .align 2
-gSpriteTemplate_83E5A00:: @ 83E5A00
- spr_template 0xFFFF, 6, gOamData_83E5970, gSpriteAnimTable_83E5998, gSpriteImageTable_83E59C0, gDummySpriteAffineAnimTable, SpriteCallbackDummy
-
-gUnknown_083E5A18:: @ 83E5A18
- .string "{PALETTE 0}$"
-
-gUnknown_083E5A1C:: @ 83E5A1C
- .string "▶$"
diff --git a/include/sprite.h b/include/sprite.h
index a65e71bd9..733231eb5 100644
--- a/include/sprite.h
+++ b/include/sprite.h
@@ -19,7 +19,7 @@ struct CompressedSpriteSheet
struct SpriteFrameImage
{
- u8 *data;
+ const u8 *data;
u16 size;
};
diff --git a/ld_script.txt b/ld_script.txt
index 399302e27..49c96172b 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -426,7 +426,7 @@ SECTIONS {
data/mon_markings.o(.rodata);
data/mauville_old_man.o(.rodata);
data/mail.o(.rodata);
- data/menu_helpers.o(.rodata);
+ src/menu_helpers.o(.rodata);
src/heal_location.o(.rodata);
data/region_map.o(.rodata);
data/cute_sketch.o(.rodata);
diff --git a/src/menu_helpers.c b/src/menu_helpers.c
index b80901947..9915d67ac 100644
--- a/src/menu_helpers.c
+++ b/src/menu_helpers.c
@@ -14,19 +14,116 @@
#include "task.h"
#include "text.h"
+#define SCROLL_INDICATOR_PAL_TAG 6
+
+static void sub_80F9834(struct Sprite *sprite);
+
static EWRAM_DATA u8 gUnknown_020388C0[4] = {0};
static EWRAM_DATA struct YesNoFuncTable gUnknown_020388C4 = {0};
static TaskFunc gUnknown_0300074C;
-extern struct SpritePalette gUnknown_083E5968;
+static const u8 gSpriteImage_83E5808[] = INCBIN_U8("graphics/unknown_sprites/83E59A0/0.4bpp");
+
+static const u8 gSpriteImage_83E5848[] = INCBIN_U8("graphics/unknown_sprites/83E59A0/1.4bpp");
+
+static const u8 gSpriteImage_83E5888[] = INCBIN_U8("graphics/unknown_sprites/83E59B0/0.4bpp");
+
+static const u8 gSpriteImage_83E58C8[] = INCBIN_U8("graphics/unknown_sprites/83E59B0/1.4bpp");
+
+static const u8 gSpriteImage_83E5908[] = INCBIN_U8("graphics/unknown_sprites/83E59C0/0.4bpp");
+
+static const u8 gSpriteImage_83E5928[] = INCBIN_U8("graphics/unknown_sprites/83E59C0/1.4bpp");
+
+static const u16 Palette_3E5948[] = INCBIN_U16("graphics/interface/83E5948.gbapal");
+
+static const struct SpritePalette gUnknown_083E5968 = { Palette_3E5948, SCROLL_INDICATOR_PAL_TAG };
+
+static const struct OamData gOamData_83E5970 =
+{
+ .tileNum = 1
+};
+
+static const struct OamData gOamData_83E5978 =
+{
+ .shape = ST_OAM_H_RECTANGLE,
+ .tileNum = 1
+};
+
+static const struct OamData gOamData_83E5980 =
+{
+ .shape = ST_OAM_V_RECTANGLE,
+ .tileNum = 1
+};
+
+static const union AnimCmd gSpriteAnim_83E5988[] =
+{
+ ANIMCMD_FRAME(0, 0),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd gSpriteAnim_83E5990[] =
+{
+ ANIMCMD_FRAME(1, 0),
+ ANIMCMD_END,
+};
+
+static const union AnimCmd *const gSpriteAnimTable_83E5998[] =
+{
+ gSpriteAnim_83E5988,
+ gSpriteAnim_83E5990,
+};
+
+static const struct SpriteFrameImage gSpriteImageTable_83E59A0[] =
+{
+ { gSpriteImage_83E5808, 0x40 },
+ { gSpriteImage_83E5848, 0x40 },
+};
+
+static const struct SpriteFrameImage gSpriteImageTable_83E59B0[] =
+{
+ { gSpriteImage_83E5888, 0x40 },
+ { gSpriteImage_83E58C8, 0x40 },
+};
+
+static const struct SpriteFrameImage gSpriteImageTable_83E59C0[] =
+{
+ { gSpriteImage_83E5908, 0x20 },
+ { gSpriteImage_83E5928, 0x20 },
+};
+
+static const struct SpriteTemplate gSpriteTemplate_83E59D0 =
+{
+ .tileTag = 0xFFFF,
+ .paletteTag = SCROLL_INDICATOR_PAL_TAG,
+ .oam = &gOamData_83E5978,
+ .anims = gSpriteAnimTable_83E5998,
+ .images = gSpriteImageTable_83E59A0,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80F9834,
+};
-extern struct SpriteTemplate gSpriteTemplate_83E59D0;
-extern struct SpriteTemplate gSpriteTemplate_83E59E8;
-extern struct SpriteTemplate gSpriteTemplate_83E5A00;
+static const struct SpriteTemplate gSpriteTemplate_83E59E8 =
+{
+ .tileTag = 0xFFFF,
+ .paletteTag = SCROLL_INDICATOR_PAL_TAG,
+ .oam = &gOamData_83E5980,
+ .anims = gSpriteAnimTable_83E5998,
+ .images = gSpriteImageTable_83E59B0,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = sub_80F9834,
+};
-extern const u8 gUnknown_083E5A18[];
-extern const u8 gUnknown_083E5A1C[];
+static const struct SpriteTemplate gSpriteTemplate_83E5A00 =
+{
+ .tileTag = 0xFFFF,
+ .paletteTag = SCROLL_INDICATOR_PAL_TAG,
+ .oam = &gOamData_83E5970,
+ .anims = gSpriteAnimTable_83E5998,
+ .images = gSpriteImageTable_83E59C0,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
void sub_80F9020(void)
{
@@ -84,9 +181,7 @@ void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *funcTable)
static void PrintStringWithPalette(const u8 *str, u8 paletteNum, u8 left, u8 top)
{
- u8 paletteStr[4];
-
- memcpy(paletteStr, gUnknown_083E5A18, 4);
+ u8 paletteStr[] = _("{PALETTE 0}");
if (paletteNum != 0xFF)
{
@@ -121,9 +216,8 @@ void PrintNumberWithPalette(s32 value, u8 paletteNum, u8 n, u8 mode, u8 left, u8
// unused
void PrintTriangleCursorWithPalette(u8 left, u8 top, u8 paletteNum)
{
- u8 buffer[2];
- memcpy(buffer, gUnknown_083E5A1C, 2);
- PrintStringWithPalette(buffer, paletteNum, left, top);
+ u8 cursorStr[] = _("▶");
+ PrintStringWithPalette(cursorStr, paletteNum, left, top);
}
u8 sub_80F9284(void)
@@ -252,7 +346,7 @@ void sub_80F944C(void)
gUnknown_020388C0[i] = 0xFF;
}
- FreeSpritePaletteByTag(6);
+ FreeSpritePaletteByTag(SCROLL_INDICATOR_PAL_TAG);
LoadSpritePalette(&gUnknown_083E5968);
}
@@ -403,10 +497,10 @@ void LoadScrollIndicatorPalette(void)
void BuyMenuFreeMemory(void)
{
- FreeSpritePaletteByTag(6);
+ FreeSpritePaletteByTag(SCROLL_INDICATOR_PAL_TAG);
}
-void sub_80F9834(struct Sprite *sprite)
+static void sub_80F9834(struct Sprite *sprite)
{
if (sprite->data1 == 0)
{