diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/engine/reset_rtc_screen.c | 123 | ||||
-rw-r--r-- | src/engine/text_window.c | 82 | ||||
-rw-r--r-- | src/pokemon/mon_markings.c | 4 |
3 files changed, 199 insertions, 10 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) { diff --git a/src/engine/text_window.c b/src/engine/text_window.c index 9a88789d1..81932650f 100644 --- a/src/engine/text_window.c +++ b/src/engine/text_window.c @@ -18,11 +18,89 @@ static void DrawMessageBox(struct Window *win, u8 left, u8 top, u8 width, u8 hei static u16 sTextWindowBaseTileNum; static u16 sMessageBoxBaseTileNum; -extern const struct FrameGraphics gUnknown_083761F0[20]; +extern const u8 gTextWindowFrame1_Gfx[]; +extern const u8 gTextWindowFrame2_Gfx[]; +extern const u8 gTextWindowFrame3_Gfx[]; +extern const u8 gTextWindowFrame4_Gfx[]; +extern const u8 gTextWindowFrame5_Gfx[]; +extern const u8 gTextWindowFrame6_Gfx[]; +extern const u8 gTextWindowFrame7_Gfx[]; +extern const u8 gTextWindowFrame8_Gfx[]; +extern const u8 gTextWindowFrame9_Gfx[]; +extern const u8 gTextWindowFrame10_Gfx[]; +extern const u8 gTextWindowFrame11_Gfx[]; +extern const u8 gTextWindowFrame12_Gfx[]; +extern const u8 gTextWindowFrame13_Gfx[]; +extern const u8 gTextWindowFrame14_Gfx[]; +extern const u8 gTextWindowFrame15_Gfx[]; +extern const u8 gTextWindowFrame16_Gfx[]; +extern const u8 gTextWindowFrame17_Gfx[]; +extern const u8 gTextWindowFrame18_Gfx[]; +extern const u8 gTextWindowFrame19_Gfx[]; +extern const u8 gTextWindowFrame20_Gfx[]; + +extern const u16 gTextWindowFrame1_Pal[]; +extern const u16 gTextWindowFrame2_Pal[]; +extern const u16 gTextWindowFrame3_Pal[]; +extern const u16 gTextWindowFrame4_Pal[]; +extern const u16 gTextWindowFrame5_Pal[]; +extern const u16 gTextWindowFrame6_Pal[]; +extern const u16 gTextWindowFrame7_Pal[]; +extern const u16 gTextWindowFrame8_Pal[]; +extern const u16 gTextWindowFrame9_Pal[]; +extern const u16 gTextWindowFrame10_Pal[]; +extern const u16 gTextWindowFrame11_Pal[]; +extern const u16 gTextWindowFrame12_Pal[]; +extern const u16 gTextWindowFrame13_Pal[]; +extern const u16 gTextWindowFrame14_Pal[]; +extern const u16 gTextWindowFrame15_Pal[]; +extern const u16 gTextWindowFrame16_Pal[]; +extern const u16 gTextWindowFrame17_Pal[]; +extern const u16 gTextWindowFrame18_Pal[]; +extern const u16 gTextWindowFrame19_Pal[]; +extern const u16 gTextWindowFrame20_Pal[]; -extern const u16 gMessageBoxTilemap[5][7]; extern const u8 gMessageBox_Gfx[]; +static const struct FrameGraphics gUnknown_083761F0[20] = +{ + {gTextWindowFrame1_Gfx, gTextWindowFrame1_Pal}, + {gTextWindowFrame2_Gfx, gTextWindowFrame2_Pal}, + {gTextWindowFrame3_Gfx, gTextWindowFrame3_Pal}, + {gTextWindowFrame4_Gfx, gTextWindowFrame4_Pal}, + {gTextWindowFrame5_Gfx, gTextWindowFrame5_Pal}, + {gTextWindowFrame6_Gfx, gTextWindowFrame6_Pal}, + {gTextWindowFrame7_Gfx, gTextWindowFrame7_Pal}, + {gTextWindowFrame8_Gfx, gTextWindowFrame8_Pal}, + {gTextWindowFrame9_Gfx, gTextWindowFrame9_Pal}, + {gTextWindowFrame10_Gfx, gTextWindowFrame10_Pal}, + {gTextWindowFrame11_Gfx, gTextWindowFrame11_Pal}, + {gTextWindowFrame12_Gfx, gTextWindowFrame12_Pal}, + {gTextWindowFrame13_Gfx, gTextWindowFrame13_Pal}, + {gTextWindowFrame14_Gfx, gTextWindowFrame14_Pal}, + {gTextWindowFrame15_Gfx, gTextWindowFrame15_Pal}, + {gTextWindowFrame16_Gfx, gTextWindowFrame16_Pal}, + {gTextWindowFrame17_Gfx, gTextWindowFrame17_Pal}, + {gTextWindowFrame18_Gfx, gTextWindowFrame18_Pal}, + {gTextWindowFrame19_Gfx, gTextWindowFrame19_Pal}, + {gTextWindowFrame20_Gfx, gTextWindowFrame20_Pal}, +}; + +//static const u16 gMessageBoxTilemap[5][7] = INCBIN_U16("graphics/text_window/message_box_map.bin"); +// 01 00 03 00 04 00 04 00 05 00 06 00 09 00 +// 0B 00 09 00 09 00 09 00 09 00 0B 04 09 00 +// 07 00 09 00 09 00 09 00 09 00 0A 00 09 00 +// 0B 08 09 00 09 00 09 00 09 00 0B 0C 09 00 +// 01 08 03 08 04 08 04 08 05 08 06 08 09 00 +static const u16 gMessageBoxTilemap[5][7] = +{ + {1, 3, 4, 4, 5, 6, 9}, + {11, 9, 9, 9, 9, 0x040B, 9}, + {7, 9, 9, 9, 9, 10, 9}, + {0x080B, 9, 9, 9, 9, 0x0C0B, 9}, + {0x0801, 0x0803, 0x0804, 0x0804, 0x0805, 0x0806, 9}, +}; + u16 SetTextWindowBaseTileNum(u16 baseTileNum) { sTextWindowBaseTileNum = baseTileNum; diff --git a/src/pokemon/mon_markings.c b/src/pokemon/mon_markings.c index 0cad8db59..9ea738c7b 100644 --- a/src/pokemon/mon_markings.c +++ b/src/pokemon/mon_markings.c @@ -24,8 +24,8 @@ struct PokemonMarkMenu /*0x000C*/ struct Sprite *menuWindowSprites[2]; // upper and lower halves of menu window /*0x0014*/ struct Sprite *menuMarkingSprites[4]; /*0x0024*/ struct Sprite *menuTextSprite; - /*0x0028*/ u8 *frameTiles; - /*0x002C*/ u16 *framePalette; + /*0x0028*/ const u8 *frameTiles; + /*0x002C*/ const u16 *framePalette; /*0x0030*/ u8 menuWindowSpriteTiles[0x1000]; /*0x1030*/ u8 filler1030[0x80]; /*0x10B0*/ u8 tileLoadState; |