diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2017-12-18 19:16:44 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2017-12-18 19:16:44 -0500 |
commit | 3196def6040f9f376881a0be000789e751030089 (patch) | |
tree | b9ebb4227aaafd4a720cff5ea059fd3a8616d73b | |
parent | 056c37152abc109418a938d8c878b8d771cb8f78 (diff) |
Decompile data: naming_screen
-rw-r--r-- | data/naming_screen.s | 169 | ||||
-rw-r--r-- | include/graphics.h | 15 | ||||
-rw-r--r-- | ld_script.txt | 1 | ||||
-rw-r--r-- | src/engine/naming_screen.c | 167 |
4 files changed, 177 insertions, 175 deletions
diff --git a/data/naming_screen.s b/data/naming_screen.s deleted file mode 100644 index 60aba1345..000000000 --- a/data/naming_screen.s +++ /dev/null @@ -1,169 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - - .align 2 -gSubspriteTable_83CE4B0:: @ 83CE4B0 - subsprite -20, -16, 1, 0, 32x8 - subsprite 12, -16, 1, 4, 8x8 - subsprite -20, -8, 1, 5, 32x8 - subsprite 12, -8, 1, 9, 8x8 - subsprite -20, 0, 1, 10, 32x8 - subsprite 12, 0, 1, 14, 8x8 - subsprite -20, 8, 1, 15, 32x8 - subsprite 12, 8, 1, 19, 8x8 - -@ unreferenced - .align 2 -gSubspriteTable_83CE4F0:: @ 83CE4F0 - subsprite -12, -4, 1, 0, 8x8 - subsprite 4, -4, 1, 1, 8x8 - - .align 2 -gSubspriteTable_83CE500:: @ 83CE500 - subsprite -12, -4, 1, 0, 16x8 - subsprite 4, -4, 1, 2, 8x8 - - .align 2 -gSubspriteTable_83CE510:: @ 83CE510 - subsprite -20, -12, 1, 0, 32x8 - subsprite 12, -12, 1, 4, 8x8 - subsprite -20, -4, 1, 5, 32x8 - subsprite 12, -4, 1, 9, 8x8 - subsprite -20, 4, 1, 10, 32x8 - subsprite 12, 4, 1, 14, 8x8 - - .align 2 -gSubspriteTable_83CE540:: @ 83CE540 - subsprite -8, -12, 3, 0, 16x8 - subsprite -8, -4, 3, 2, 16x8 - subsprite -8, 4, 3, 4, 16x8 - - .align 2 -gSubspriteTables_83CE558:: @ 83CE558 - .4byte 8, gSubspriteTable_83CE4B0 - - .align 2 -gSubspriteTables_83CE560:: @ 83CE560 - .4byte 2, gSubspriteTable_83CE500 - .4byte 2, gSubspriteTable_83CE500 - .4byte 2, gSubspriteTable_83CE500 - - .align 2 -gSubspriteTables_83CE578:: @ 83CE578 - .4byte 6, gSubspriteTable_83CE510 - - .align 2 -gSubspriteTables_83CE580:: @ 83CE580 - .4byte 3, gSubspriteTable_83CE540 - - .align 2 -gSpriteImageTable_83CE588:: @ 83CE588 - obj_frame_tiles gSpriteImage_83CE094, 0xc0 - obj_frame_tiles gSpriteImage_83CE154, 0xc0 - - .align 2 -gSpriteAnim_83CE598:: @ 83CE598 - obj_image_anim_frame 0, 1 - obj_image_anim_jump 0 - - .align 2 -gSpriteAnim_83CE5A0:: @ 83CE5A0 - obj_image_anim_frame 4, 8 - obj_image_anim_frame 8, 8 - obj_image_anim_end - - .align 2 -gSpriteAnim_83CE5AC:: @ 83CE5AC - obj_image_anim_frame 0, 2 - obj_image_anim_frame 1, 2 - obj_image_anim_jump 0 - - .align 2 -gSpriteAnimTable_83CE5B8:: @ 83CE5B8 - .4byte gSpriteAnim_83CE598 - - .align 2 -gSpriteAnimTable_83CE5BC:: @ 83CE5BC - .4byte gSpriteAnim_83CE598 - .4byte gSpriteAnim_83CE5A0 - - .align 2 -gSpriteAnimTable_83CE5C4:: @ 83CE5C4 - .4byte gSpriteAnim_83CE5AC - - .align 2 -gSpriteTemplate_83CE5C8:: @ 83CE5C8 - spr_template 2, 4, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6B34 - - .align 2 -gSpriteTemplate_83CE5E0:: @ 83CE5E0 - spr_template 3, 1, gOamData_83CE4A8, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gSpriteTemplate_83CE5F8:: @ 83CE5F8 - spr_template 4, 4, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gSpriteTemplate_83CE610:: @ 83CE610 - spr_template 0, 6, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gSpriteTemplate_83CE628:: @ 83CE628 - spr_template 1, 6, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gSpriteTemplate_83CE640:: @ 83CE640 - spr_template 7, 5, gOamData_83CE4A0, gSpriteAnimTable_83CE5BC, NULL, gDummySpriteAffineAnimTable, sub_80B6998 - - .align 2 -gSpriteTemplate_83CE658:: @ 83CE658 - spr_template 10, 3, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6D9C - - .align 2 -gSpriteTemplate_83CE670:: @ 83CE670 - spr_template 11, 3, gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6DE8 - - .align 2 -gSpriteTemplate_83CE688:: @ 83CE688 - spr_template 0xFFFF, 0, gOamData_83CE498, gSpriteAnimTable_83CE5C4, gSpriteImageTable_83CE588, gDummySpriteAffineAnimTable, SpriteCallbackDummy - - .align 2 -gUnknown_083CE6A0:: @ 83CE6A0 - obj_tiles gNamingScreenBackButtonTiles, 0x1E0, 0 - obj_tiles gNamingScreenOKButtonTiles, 0x1E0, 1 - obj_tiles gNamingScreenChangeKeyboardBoxTiles, 0x280, 2 - obj_tiles gNamingScreenChangeKeyboardButtonTiles, 0x100, 3 - obj_tiles gNamingScreenLowerTextTiles, 0x60, 4 - obj_tiles gNamingScreenUpperTextTiles, 0x60, 5 - obj_tiles gNamingScreenOthersTextTiles, 0x60, 6 - obj_tiles gNamingScreenCursorTiles, 0x80, 7 - obj_tiles gNamingScreenActiveCursorSmallTiles, 0x80, 8 - obj_tiles gNamingScreenActiveCursorBigTiles, 0x80, 9 - obj_tiles gNamingScreenRightPointingTriangleTiles, 0x20, 10 - obj_tiles gNamingScreenUnderscoreTiles, 0x20, 11 - null_obj_tiles - - .align 2 -gUnknown_083CE708:: @ 83CE708 - obj_pal gNamingScreenPalettes + 0x20 * 0, 0 - obj_pal gNamingScreenPalettes + 0x20 * 1, 1 - obj_pal gNamingScreenPalettes + 0x20 * 2, 2 - obj_pal gNamingScreenPalettes + 0x20 * 3, 3 - obj_pal gNamingScreenPalettes + 0x20 * 4, 4 - obj_pal gNamingScreenPalettes + 0x20 * 5, 5 - obj_pal gNamingScreenPalettes + 0x20 * 4, 6 - null_obj_pal - - .align 2 -gUnknown_083CE748:: @ 83CE748 - .incbin "graphics/naming_screen/lower_keyboard_map.bin" - - .align 2 -gUnknown_083CEBF8:: @ 83CEBF8 - .incbin "graphics/naming_screen/upper_keyboard_map.bin" - - .align 2 -gUnknown_083CF0A8:: @ 83CF0A8 - .incbin "graphics/naming_screen/others_keyboard_map.bin" diff --git a/include/graphics.h b/include/graphics.h index 7c23e90ab..07ee1f76c 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -2611,4 +2611,19 @@ extern const u16 gTradeMonBoxTilemap[]; extern const u8 gUnknown_08D00000[]; extern const u16 gUnknown_08D00524[]; extern const u8 gUnknown_08D004E0[]; + +extern const u8 gNamingScreenBackButtonTiles[]; +extern const u8 gNamingScreenOKButtonTiles[]; +extern const u8 gNamingScreenChangeKeyboardBoxTiles[]; +extern const u8 gNamingScreenChangeKeyboardButtonTiles[]; +extern const u8 gNamingScreenLowerTextTiles[]; +extern const u8 gNamingScreenUpperTextTiles[]; +extern const u8 gNamingScreenOthersTextTiles[]; +extern const u8 gNamingScreenCursorTiles[]; +extern const u8 gNamingScreenActiveCursorSmallTiles[]; +extern const u8 gNamingScreenActiveCursorBigTiles[]; +extern const u8 gNamingScreenRightPointingTriangleTiles[]; +extern const u8 gNamingScreenUnderscoreTiles[]; +extern const u16 gNamingScreenPalettes[][16]; + #endif // GUARD_GRAPHICS_H diff --git a/ld_script.txt b/ld_script.txt index f502d1097..0b7370866 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -522,7 +522,6 @@ SECTIONS { src/field/berry.o(.rodata); src/field/script_menu.o(.rodata); src/engine/naming_screen.o(.rodata); - data/naming_screen.o(.rodata); src/field/money.o(.rodata); data/contest_effect.o(.rodata); src/engine/record_mixing.o(.data); diff --git a/src/engine/naming_screen.c b/src/engine/naming_screen.c index 6bad83593..440504d5a 100644 --- a/src/engine/naming_screen.c +++ b/src/engine/naming_screen.c @@ -1,6 +1,7 @@ #include "global.h" #include "naming_screen.h" #include "data2.h" +#include "graphics.h" #include "field_effect.h" #include "field_map_obj.h" #include "field_player_avatar.h" @@ -29,12 +30,11 @@ extern u16 gKeyRepeatStartDelay; extern u8 CreateMonIcon(u16 species, void (*callback)(struct Sprite *), s16 x, s16 y, u8 subpriority, u32 personality); -const u32 gSpriteImage_83CE094[] = INCBIN_U32("graphics/naming_screen/pc_icon/0.4bpp"); -const u32 gSpriteImage_83CE154[] = INCBIN_U32("graphics/naming_screen/pc_icon/1.4bpp"); +const u8 gSpriteImage_83CE094[] = INCBIN_U8("graphics/naming_screen/pc_icon/0.4bpp"); +const u8 gSpriteImage_83CE154[] = INCBIN_U8("graphics/naming_screen/pc_icon/1.4bpp"); struct NamingScreenData *const namingScreenDataPtr = &namingScreenData; -extern u16 *const gUnknown_083CE28C[]; extern const struct SubspriteTable gSubspriteTables_83CE558[]; extern const struct SubspriteTable gSubspriteTables_83CE560[]; extern const struct SubspriteTable gSubspriteTables_83CE578[]; @@ -51,7 +51,6 @@ extern const struct SpriteTemplate gSpriteTemplate_83CE688; extern const struct SpriteSheet gUnknown_083CE6A0[]; extern const struct SpritePalette gUnknown_083CE708[]; extern const u8 gNamingScreenMenu_Gfx[]; -extern const u16 gNamingScreenPalettes[]; extern const u16 gUnknown_083CE748[]; extern const u16 gUnknown_083CEBF8[]; extern const u16 gUnknown_083CF0A8[]; @@ -2030,4 +2029,162 @@ const struct OamData gOamData_83CE4A8 = .affineParam = 0, }; -//TODO: dump sprite data + +const struct Subsprite gSubspriteTable_83CE4B0[] = { + { -20, -16, ST_OAM_H_RECTANGLE, 1, 0, 1 }, + { 12, -16, ST_OAM_SQUARE, 0, 4, 1 }, + { -20, -8, ST_OAM_H_RECTANGLE, 1, 5, 1 }, + { 12, -8, ST_OAM_SQUARE, 0, 9, 1 }, + { -20, 0, ST_OAM_H_RECTANGLE, 1, 10, 1 }, + { 12, 0, ST_OAM_SQUARE, 0, 14, 1 }, + { -20, 8, ST_OAM_H_RECTANGLE, 1, 15, 1 }, + { 12, 8, ST_OAM_SQUARE, 0, 19, 1 } +}; + +const struct Subsprite gSubspriteTable_83CE4F0[] = { + { -12, -4, ST_OAM_SQUARE, 0, 0, 1 }, + { 4, -4, ST_OAM_SQUARE, 0, 1, 1 } +}; + +const struct Subsprite gSubspriteTable_83CE500[] = { + { -12, -4, ST_OAM_H_RECTANGLE, 0, 0, 1 }, + { 4, -4, ST_OAM_SQUARE, 0, 2, 1 } +}; + +const struct Subsprite gSubspriteTable_83CE510[] = { + { -20, -12, ST_OAM_H_RECTANGLE, 1, 0, 1 }, + { 12, -12, ST_OAM_SQUARE, 0, 4, 1 }, + { -20, -4, ST_OAM_H_RECTANGLE, 1, 5, 1 }, + { 12, -4, ST_OAM_SQUARE, 0, 9, 1 }, + { -20, 4, ST_OAM_H_RECTANGLE, 1, 10, 1 }, + { 12, 4, ST_OAM_SQUARE, 0, 14, 1 } +}; + +const struct Subsprite gSubspriteTable_83CE540[] = { + { -8, -12, ST_OAM_H_RECTANGLE, 0, 0, 3 }, + { -8, -4, ST_OAM_H_RECTANGLE, 0, 2, 3 }, + { -8, 4, ST_OAM_H_RECTANGLE, 0, 4, 3 } +}; + +const struct SubspriteTable gSubspriteTables_83CE558[] = { + { 8, gSubspriteTable_83CE4B0 } +}; + +const struct SubspriteTable gSubspriteTables_83CE560[] = { + { 2, gSubspriteTable_83CE500 }, + { 2, gSubspriteTable_83CE500 }, + { 2, gSubspriteTable_83CE500 } +}; + +const struct SubspriteTable gSubspriteTables_83CE578[] = { + { 6, gSubspriteTable_83CE510 } +}; + +const struct SubspriteTable gSubspriteTables_83CE580[] = { + { 3, gSubspriteTable_83CE540 } +}; + +const struct SpriteFrameImage gSpriteImageTable_83CE588[] = { + { gSpriteImage_83CE094, 0xc0 }, + { gSpriteImage_83CE154, 0xc0 } +}; + +const union AnimCmd gSpriteAnim_83CE598[] = { + ANIMCMD_FRAME(0, 1), + ANIMCMD_JUMP(0) +}; + +const union AnimCmd gSpriteAnim_83CE5A0[] = { + ANIMCMD_FRAME(4, 8), + ANIMCMD_FRAME(8, 8), + ANIMCMD_END +}; + +const union AnimCmd gSpriteAnim_83CE5AC[] = { + ANIMCMD_FRAME(0, 2), + ANIMCMD_FRAME(1, 2), + ANIMCMD_JUMP(0) +}; + +const union AnimCmd *const gSpriteAnimTable_83CE5B8[] = { + gSpriteAnim_83CE598 +}; + +const union AnimCmd *const gSpriteAnimTable_83CE5BC[] = { + gSpriteAnim_83CE598, + gSpriteAnim_83CE5A0 +}; + +const union AnimCmd *const gSpriteAnimTable_83CE5C4[] = { + gSpriteAnim_83CE5AC +}; + +const struct SpriteTemplate gSpriteTemplate_83CE5C8 = { + 2, 4, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6B34 +}; + +const struct SpriteTemplate gSpriteTemplate_83CE5E0 = { + 3, 1, &gOamData_83CE4A8, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct SpriteTemplate gSpriteTemplate_83CE5F8 = { + 4, 4, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct SpriteTemplate gSpriteTemplate_83CE610 = { + 0, 6, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct SpriteTemplate gSpriteTemplate_83CE628 = { + 1, 6, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct SpriteTemplate gSpriteTemplate_83CE640 = { + 7, 5, &gOamData_83CE4A0, gSpriteAnimTable_83CE5BC, NULL, gDummySpriteAffineAnimTable, sub_80B6998 +}; + +const struct SpriteTemplate gSpriteTemplate_83CE658 = { + 10, 3, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6D9C +}; + +const struct SpriteTemplate gSpriteTemplate_83CE670 = { + 11, 3, &gOamData_83CE498, gSpriteAnimTable_83CE5B8, NULL, gDummySpriteAffineAnimTable, sub_80B6DE8 +}; + +const struct SpriteTemplate gSpriteTemplate_83CE688 = { + 0xFFFF, 0, &gOamData_83CE498, gSpriteAnimTable_83CE5C4, gSpriteImageTable_83CE588, gDummySpriteAffineAnimTable, SpriteCallbackDummy +}; + +const struct SpriteSheet gUnknown_083CE6A0[] = { + { gNamingScreenBackButtonTiles, 0x1E0, 0 }, + { gNamingScreenOKButtonTiles, 0x1E0, 1 }, + { gNamingScreenChangeKeyboardBoxTiles, 0x280, 2 }, + { gNamingScreenChangeKeyboardButtonTiles, 0x100, 3 }, + { gNamingScreenLowerTextTiles, 0x60, 4 }, + { gNamingScreenUpperTextTiles, 0x60, 5 }, + { gNamingScreenOthersTextTiles, 0x60, 6 }, + { gNamingScreenCursorTiles, 0x80, 7 }, + { gNamingScreenActiveCursorSmallTiles, 0x80, 8 }, + { gNamingScreenActiveCursorBigTiles, 0x80, 9 }, + { gNamingScreenRightPointingTriangleTiles, 0x20, 10 }, + { gNamingScreenUnderscoreTiles, 0x20, 11 }, + {} +}; + +const struct SpritePalette gUnknown_083CE708[] = { + {gNamingScreenPalettes[0], 0}, + {gNamingScreenPalettes[1], 1}, + {gNamingScreenPalettes[2], 2}, + {gNamingScreenPalettes[3], 3}, + {gNamingScreenPalettes[4], 4}, + {gNamingScreenPalettes[5], 5}, + {gNamingScreenPalettes[4], 6}, + {} +}; + +const u16 gUnknown_083CE748[] = INCBIN_U16("graphics/naming_screen/lower_keyboard_map.bin"); + +const u16 gUnknown_083CEBF8[] = INCBIN_U16("graphics/naming_screen/upper_keyboard_map.bin"); + +const u16 gUnknown_083CF0A8[] = INCBIN_U16("graphics/naming_screen/others_keyboard_map.bin"); + |