summaryrefslogtreecommitdiff
path: root/src/engine/reset_rtc_screen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine/reset_rtc_screen.c')
-rw-r--r--src/engine/reset_rtc_screen.c123
1 files changed, 117 insertions, 6 deletions
diff --git a/src/engine/reset_rtc_screen.c b/src/engine/reset_rtc_screen.c
index d052992ad..198bffaa7 100644
--- a/src/engine/reset_rtc_screen.c
+++ b/src/engine/reset_rtc_screen.c
@@ -27,15 +27,126 @@ struct ResetRtcStruct
extern u16 gSaveFileStatus;
-extern struct ResetRtcStruct gUnknown_08376420[];
-extern struct SpritePalette gUnknown_083764BC;
-extern struct SpriteTemplate gSpriteTemplate_83764E8;
-extern u8 gUnknown_08376500[];
-
void CB2_ResetRtcScreen(void);
void VBlankCB_ResetRtcScreen(void);
void Task_ResetRtcScreen(u8);
+static const struct ResetRtcStruct gUnknown_08376420[5] =
+{
+ {
+ .dataIndex = 3,
+ .minVal = 1,
+ .maxVal = 9999,
+ .left = 0,
+ .right = 2,
+ .unk8 = 0,
+ },
+ {
+ .dataIndex = 4,
+ .minVal = 0,
+ .maxVal = 23,
+ .left = 1,
+ .right = 3,
+ .unk8 = 0,
+ },
+ {
+ .dataIndex = 5,
+ .minVal = 0,
+ .maxVal = 59,
+ .left = 2,
+ .right = 4,
+ .unk8 = 0,
+ },
+ {
+ .dataIndex = 6,
+ .minVal = 0,
+ .maxVal = 59,
+ .left = 3,
+ .right = 5,
+ .unk8 = 0,
+ },
+ {
+ .dataIndex = 7,
+ .minVal = 0,
+ .maxVal = 0,
+ .left = 4,
+ .right = 0,
+ .unk8 = 6,
+ },
+};
+
+const struct OamData gOamData_837645C =
+{
+ .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 u8 gSpriteImage_8376464[] = INCBIN_U8("graphics/unknown_sprites/83764AC/0.4bpp");
+const u8 gSpriteImage_8376484[] = INCBIN_U8("graphics/unknown_sprites/83764AC/1.4bpp");
+
+const u16 Palette_3764A4[] = INCBIN_U16("graphics/unknown/83764A4.gbapal");
+
+const struct SpriteFrameImage gSpriteImageTable_83764AC[] =
+{
+ { gSpriteImage_8376464, 0x20 },
+ { gSpriteImage_8376484, 0x20 },
+};
+
+const struct SpritePalette gUnknown_083764BC =
+{
+ .data = Palette_3764A4,
+ .tag = 0x1000,
+};
+
+const union AnimCmd gSpriteAnim_83764C4[] =
+{
+ ANIMCMD_FRAME(0, 30),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_83764CC[] =
+{
+ ANIMCMD_FRAME(0, 158, .vFlip = TRUE),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd gSpriteAnim_83764D4[] =
+{
+ ANIMCMD_FRAME(1, 30),
+ ANIMCMD_JUMP(0),
+};
+
+const union AnimCmd *const gSpriteAnimTable_83764DC[] =
+{
+ gSpriteAnim_83764C4,
+ gSpriteAnim_83764CC,
+ gSpriteAnim_83764D4,
+};
+
+const struct SpriteTemplate gSpriteTemplate_83764E8 =
+{
+ .tileTag = 0xFFFF,
+ .paletteTag = 0x1000,
+ .oam = &gOamData_837645C,
+ .anims = gSpriteAnimTable_83764DC,
+ .images = gSpriteImageTable_83764AC,
+ .affineAnims = gDummySpriteAffineAnimTable,
+ .callback = SpriteCallbackDummy,
+};
+
+const u8 gUnknown_08376500[] = _(" : ");
+
void SpriteCB_ResetRtcCusor0(struct Sprite *sprite)
{
int state = gTasks[sprite->data0].data[2];
@@ -235,7 +346,7 @@ void Task_ResetRtc_1(u8 taskId)
{
s16 *data = gTasks[taskId].data;
u8 selection = data[2];
- struct ResetRtcStruct *selectionInfo = &gUnknown_08376420[selection - 1];
+ const struct ResetRtcStruct *selectionInfo = &gUnknown_08376420[selection - 1];
if (gMain.newKeys & B_BUTTON)
{