diff options
-rw-r--r-- | data/matsuda_debug_menu.s | 201 | ||||
-rw-r--r-- | data/tileset_anim.s | 637 | ||||
-rw-r--r-- | include/matsuda_debug_menu.h | 26 | ||||
-rw-r--r-- | ld_script.txt | 4 | ||||
-rw-r--r-- | src/debug/matsuda_debug_menu.c | 250 | ||||
-rw-r--r-- | src/engine/tileset_anim.c | 425 |
6 files changed, 625 insertions, 918 deletions
diff --git a/data/matsuda_debug_menu.s b/data/matsuda_debug_menu.s deleted file mode 100644 index c4f7adcb7..000000000 --- a/data/matsuda_debug_menu.s +++ /dev/null @@ -1,201 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - -@ 83C9150 - .string "テストです$" @ "test" - -gMatsudaDebugMenu_ActionContestText: - .string "Contest$" - -gMatsudaDebugMenu_ActionContestResultsText: - .string "Contest results$" - .string "パラメータへんこう$" @ "Change parameter" - .string "わざ へんこう$" @ "Change move" - -gMatsudaDebugMenu_ActionContestCommText: - .string "Contest (comm.)$" - -gMatsudaDebugMenu_ActionCommTestText: - .string "Init comm. data$" - -gMatsudaDebugMenu_ActionSetHighScoreText: - .string "Set highest score$" - -gMatsudaDebugMenu_ActionResetHighScoreText: - .string "Reset highest score$" - -gMatsudaDebugMenu_ActionSetAllArtMuseumText: - .string "Set all art museum items$" - - .align 2 -gMatsudaDebugMenuActions:: @ 83C91F0 - .4byte gMatsudaDebugMenu_ActionContestText, MatsudaDebugMenu_Contest - .4byte gMatsudaDebugMenu_ActionContestResultsText, MatsudaDebugMenu_ContestResults - .4byte gMatsudaDebugMenu_ActionContestCommText, MatsudaDebugMenu_ContestComm - .4byte gMatsudaDebugMenu_ActionCommTestText, MatsudaDebugMenu_CommTest - .4byte gMatsudaDebugMenu_ActionSetHighScoreText, MatsudaDebugMenu_SetHighScore - .4byte gMatsudaDebugMenu_ActionResetHighScoreText, MatsudaDebugMenu_ResetHighScore - .4byte gMatsudaDebugMenu_ActionSetAllArtMuseumText, MatsudaDebugMenu_SetArtMuseumItems - -gMatsudaDebugMenu_UnknownByteArray:: @ 83C9228 - .byte 0xFC, 0x02, 0x0F, 0x00, 0xFF - -Unknown_083C922D: - .incbin "graphics/unknown/ball.4bpp" - - .align 1 -Unknown_083C924E: - .incbin "graphics/unknown/ball.gbapal" - -gUnknown_083C926E:: @ 83C926E - .byte 2, 0 - .byte 17, 0 - .byte 2, 2 - .byte 17, 2 - -gMatsudaDebugMenuContestTopLeft:: @ 83C9276 - .byte 0, 6 - .byte 15, 6 - .byte 0, 8 - .byte 15, 8 - .byte 0, 10 - .byte 15, 10 - -gUnknown_083C9282:: @ 83C9282 - .byte 7, 6 - .byte 22, 6 - .byte 7, 8 - .byte 22, 8 - .byte 7, 10 - .byte 22, 10 - -gUnknown_083C928E:: @ 83C928E - .byte 2, 14 - .byte 17, 14 - .byte 2, 16 - .byte 17, 16 - -gUnknown_083C9296:: @ 83C9296 - .byte 0x08, 0x80, 0x08, 0x80, 0x10, 0x10, 0x30, 0xA8, 0x30, 0xA8, 0x30, 0xA8, 0x08, 0x80, 0x08, 0x80, 0x10, 0x88 - -gUnknown_083C92A8:: @ 83C92A8 - .byte 0x08, 0x18, 0x28, 0x38, 0x48, 0x58, 0x78, 0x88, 0x98 - - .align 2 -gUnknown_083C92B4:: @ 83C92B4 - obj_tiles Unknown_083C922D, 32, 0x04b0 - - .align 2 -gUnknown_083C92BC:: @ 83C92BC - obj_pal Unknown_083C924E, 0x04B0 - - .align 2 -gOamData_83C92C4:: @ 83C92C4 - .2byte 0x0000 - .2byte 0x0000 - .2byte 0x0000 - - .align 2 -gSpriteTemplate_83C92CC:: @ 83C92CC - spr_template 1200, 1200, gOamData_83C92C4, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80AA754 - - .align 2 -gUnknown_083C92E4:: @ 83C92E4 - .4byte sub_80AA8C8 - .4byte sub_80AA8D8 - .4byte sub_80AA8E8 - .4byte sub_80AA8F8 - .4byte sub_80AAC5C - .4byte sub_80AAC5C - .4byte sub_80AA930 - .4byte sub_80AA974 - .4byte sub_80AA9B8 - .4byte sub_80AA9FC - .4byte sub_80AAA40 - .4byte sub_80AAA84 - .4byte sub_80AAAF0 - .4byte sub_80AAB30 - .4byte sub_80AAB70 - .4byte sub_80AABB0 - .4byte sub_80AABF0 - .4byte sub_80AAD44 - -gMatsudaDebugMenu_StartText:: @ 83C932C - .string "{COLOR CYAN}{HIGHLIGHT RED}$" - .string "かいし$" @ Start - -gMatsudaDebugMenu_GoBackText:: @ 83C9337 - .string "もどる$" @ Go Back - -gMatsudaDebugMenu_BattlePointsText:: @ 83C933B -.ifdef ENGLISH - .string "{COLOR MAGENTA}BP.$" -.else - .string "{COLOR MAGENTA}BP,$" -.endif - -MatsudaDebugMenuText_Cool: - .string "かっこよさ$" @ coolness -MatsudaDebugMenuText_Cute: - .string "かわいさ$" @ cuteness -MatsudaDebugMenuText_Beauty: - .string "うつくしさ$" @ beauty -MatsudaDebugMenuText_Smart: - .string "かしこさ$" @ smartness -MatsudaDebugMenuText_Tough: - .string "たくましさ$" @ toughness -MatsudaDebugMenuText_Sheen: - .string "けづや$" @ sheen - - .align 2 -gMatsudaDebugMenuTextList1:: @ 83C9364 - .4byte MatsudaDebugMenuText_Cool - .4byte MatsudaDebugMenuText_Cute - .4byte MatsudaDebugMenuText_Beauty - .4byte MatsudaDebugMenuText_Smart - .4byte MatsudaDebugMenuText_Tough - .4byte MatsudaDebugMenuText_Sheen - -MatsudaDebugMenuText_CoolContest: - .string "かっこよさコンテスト$" @ Cool Contest -MatsudaDebugMenuText_BeautyContest: - .string "うつくしさコンテスト$" @ Beauty Contest -MatsudaDebugMenuText_CuteContest: - .string "かわいさコンテスト $" @ Cute Contest -MatsudaDebugMenuText_SmartContest: - .string "かしこさコンテスト $" @ Smart Contest -MatsudaDebugMenuText_ToughContest: - .string "たくましさコンテスト$" @ Tough Contest - - .align 2 -gMatsudaDebugMenuTextList2:: @ 83C93B4 - .4byte MatsudaDebugMenuText_CoolContest - .4byte MatsudaDebugMenuText_BeautyContest - .4byte MatsudaDebugMenuText_CuteContest - .4byte MatsudaDebugMenuText_SmartContest - .4byte MatsudaDebugMenuText_ToughContest - -MatsudaDebugMenuText_Fallarbor: - .string "ハジツゲ/ノーマル$" @ Fallarbor / Normal -MatsudaDebugMenuText_Verdanturf: - .string "シダケ/スーパー $" @ Verdanturf / Super -MatsudaDebugMenuText_Slateport: - .string "カイナ/ハイパー $" @ Slateport / Hyper -MatsudaDebugMenuText_Lilycove: - .string "ミナモ/マスター $" @ Lilycove / Master - - .align 2 -gMatsudaDebugMenuTextList3:: @ 83C93F0 - .4byte MatsudaDebugMenuText_Fallarbor @ Normal - .4byte MatsudaDebugMenuText_Verdanturf @ Super - .4byte MatsudaDebugMenuText_Slateport @ Hyper - .4byte MatsudaDebugMenuText_Lilycove @ Master - -@ OamData - .align 2 -gUnknown_083C9400:: @ 83C9400 - .2byte 0x4000 - .2byte 0x4000 - .2byte 0xF3FF diff --git a/data/tileset_anim.s b/data/tileset_anim.s deleted file mode 100644 index e34d50953..000000000 --- a/data/tileset_anim.s +++ /dev/null @@ -1,637 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .section .rodata - - .align 2 -TilesetAnimTiles_General_0_1: @ 8376D84 - .incbin "data/tilesets/primary/general/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_General_0_0: @ 8376E04 - .incbin "data/tilesets/primary/general/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_General_0_2: @ 8376E84 - .incbin "data/tilesets/primary/general/anim/0/2.4bpp" - - .space 32 - - .align 2 -gTilesetAnimTable_General_0:: @ 8376F24 - .4byte TilesetAnimTiles_General_0_0 - .4byte TilesetAnimTiles_General_0_1 - .4byte TilesetAnimTiles_General_0_0 - .4byte TilesetAnimTiles_General_0_2 - - .align 2 -TilesetAnimTiles_General_1_0: @ 8376F34 - .incbin "data/tilesets/primary/general/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_General_1_1: @ 83772F4 - .incbin "data/tilesets/primary/general/anim/1/1.4bpp" - - .align 2 -TilesetAnimTiles_General_1_2: @ 83776B4 - .incbin "data/tilesets/primary/general/anim/1/2.4bpp" - - .align 2 -TilesetAnimTiles_General_1_3: @ 8377A74 - .incbin "data/tilesets/primary/general/anim/1/3.4bpp" - - .align 2 -TilesetAnimTiles_General_1_4: @ 8377E34 - .incbin "data/tilesets/primary/general/anim/1/4.4bpp" - - .align 2 -TilesetAnimTiles_General_1_5: @ 83781F4 - .incbin "data/tilesets/primary/general/anim/1/5.4bpp" - - .align 2 -TilesetAnimTiles_General_1_6: @ 83785B4 - .incbin "data/tilesets/primary/general/anim/1/6.4bpp" - - .align 2 -TilesetAnimTiles_General_1_7: @ 8378974 - .incbin "data/tilesets/primary/general/anim/1/7.4bpp" - - .align 2 -gTilesetAnimTable_General_1:: @ 8378D34 - .4byte TilesetAnimTiles_General_1_0 - .4byte TilesetAnimTiles_General_1_1 - .4byte TilesetAnimTiles_General_1_2 - .4byte TilesetAnimTiles_General_1_3 - .4byte TilesetAnimTiles_General_1_4 - .4byte TilesetAnimTiles_General_1_5 - .4byte TilesetAnimTiles_General_1_6 - .4byte TilesetAnimTiles_General_1_7 - - .align 2 -TilesetAnimTiles_General_2_0: @ 8378D54 - .incbin "data/tilesets/primary/general/anim/2/0.4bpp" - - .align 2 -TilesetAnimTiles_General_2_1: @ 8378E94 - .incbin "data/tilesets/primary/general/anim/2/1.4bpp" - - .align 2 -TilesetAnimTiles_General_2_2: @ 8378FD4 - .incbin "data/tilesets/primary/general/anim/2/2.4bpp" - - .align 2 -TilesetAnimTiles_General_2_3: @ 8379114 - .incbin "data/tilesets/primary/general/anim/2/3.4bpp" - - .align 2 -TilesetAnimTiles_General_2_4: @ 8379254 - .incbin "data/tilesets/primary/general/anim/2/4.4bpp" - - .align 2 -TilesetAnimTiles_General_2_5: @ 8379394 - .incbin "data/tilesets/primary/general/anim/2/5.4bpp" - - .align 2 -TilesetAnimTiles_General_2_6: @ 83794D4 - .incbin "data/tilesets/primary/general/anim/2/6.4bpp" - - .align 2 -gTilesetAnimTable_General_2:: @ 8379614 - .4byte TilesetAnimTiles_General_2_0 - .4byte TilesetAnimTiles_General_2_1 - .4byte TilesetAnimTiles_General_2_2 - .4byte TilesetAnimTiles_General_2_3 - .4byte TilesetAnimTiles_General_2_4 - .4byte TilesetAnimTiles_General_2_5 - .4byte TilesetAnimTiles_General_2_6 - .4byte TilesetAnimTiles_General_2_0 - - .align 2 -TilesetAnimTiles_General_3_0: @ 8379634 - .incbin "data/tilesets/primary/general/anim/3/0.4bpp" - - .align 2 -TilesetAnimTiles_General_3_1: @ 83796F4 - .incbin "data/tilesets/primary/general/anim/3/1.4bpp" - - .align 2 -TilesetAnimTiles_General_3_2: @ 83797B4 - .incbin "data/tilesets/primary/general/anim/3/2.4bpp" - - .align 2 -TilesetAnimTiles_General_3_3: @ 8379874 - .incbin "data/tilesets/primary/general/anim/3/3.4bpp" - - .align 2 -gTilesetAnimTable_General_3:: @ 8379934 - .4byte TilesetAnimTiles_General_3_0 - .4byte TilesetAnimTiles_General_3_1 - .4byte TilesetAnimTiles_General_3_2 - .4byte TilesetAnimTiles_General_3_3 - - .align 2 -TilesetAnimTiles_General_4_0: @ 8379944 - .incbin "data/tilesets/primary/general/anim/4/0.4bpp" - - .align 2 -TilesetAnimTiles_General_4_1: @ 8379A84 - .incbin "data/tilesets/primary/general/anim/4/1.4bpp" - - .align 2 -TilesetAnimTiles_General_4_2: @ 8379BC4 - .incbin "data/tilesets/primary/general/anim/4/2.4bpp" - - .align 2 -TilesetAnimTiles_General_4_3: @ 8379D04 - .incbin "data/tilesets/primary/general/anim/4/3.4bpp" - - .align 2 -gTilesetAnimTable_General_4:: @ 8379E44 - .4byte TilesetAnimTiles_General_4_0 - .4byte TilesetAnimTiles_General_4_1 - .4byte TilesetAnimTiles_General_4_2 - .4byte TilesetAnimTiles_General_4_3 - - .align 2 -TilesetAnimTiles_Lavaridge_0: @ 8379E54 - .incbin "data/tilesets/secondary/lavaridge/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_Lavaridge_1: @ 8379ED4 - .incbin "data/tilesets/secondary/lavaridge/anim/1.4bpp" - - .align 2 -TilesetAnimTiles_Lavaridge_2: @ 8379F54 - .incbin "data/tilesets/secondary/lavaridge/anim/2.4bpp" - - .align 2 -TilesetAnimTiles_Lavaridge_3: @ 8379FD4 - .incbin "data/tilesets/secondary/lavaridge/anim/3.4bpp" - - .align 2 -gTilesetAnimTable_Lavaridge:: @ 837A054 - .4byte TilesetAnimTiles_Lavaridge_0 - .4byte TilesetAnimTiles_Lavaridge_1 - .4byte TilesetAnimTiles_Lavaridge_2 - .4byte TilesetAnimTiles_Lavaridge_3 - - .align 2 -TilesetAnimTiles_Pacifidlog_0_0: @ 837A064 - .incbin "data/tilesets/secondary/pacifidlog/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_0_1: @ 837A424 - .incbin "data/tilesets/secondary/pacifidlog/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_0_2: @ 837A7E4 - .incbin "data/tilesets/secondary/pacifidlog/anim/0/2.4bpp" - - .align 2 -gTilesetAnimTable_Pacifidlog_0:: @ 837ABA4 - .4byte TilesetAnimTiles_Pacifidlog_0_0 - .4byte TilesetAnimTiles_Pacifidlog_0_1 - .4byte TilesetAnimTiles_Pacifidlog_0_2 - .4byte TilesetAnimTiles_Pacifidlog_0_1 - - .align 2 -TilesetAnimTiles_Underwater_0: @ 837ABB4 - .incbin "data/tilesets/secondary/underwater/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_Underwater_1: @ 837AC34 - .incbin "data/tilesets/secondary/underwater/anim/1.4bpp" - - .align 2 -TilesetAnimTiles_Underwater_2: @ 837ACB4 - .incbin "data/tilesets/secondary/underwater/anim/2.4bpp" - - .align 2 -TilesetAnimTiles_Underwater_3: @ 837AD34 - .incbin "data/tilesets/secondary/underwater/anim/3.4bpp" - - .align 2 -gTilesetAnimTable_Underwater:: @ 837ADB4 - .4byte TilesetAnimTiles_Underwater_0 - .4byte TilesetAnimTiles_Underwater_1 - .4byte TilesetAnimTiles_Underwater_2 - .4byte TilesetAnimTiles_Underwater_3 - - .align 2 -TilesetAnimTiles_Pacifidlog_1_0: @ 837ADC4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_1: @ 837AEC4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/1.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_2: @ 837AFC4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/2.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_3: @ 837B0C4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/3.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_4: @ 837B1C4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/4.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_5: @ 837B2C4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/5.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_6: @ 837B3C4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/6.4bpp" - - .align 2 -TilesetAnimTiles_Pacifidlog_1_7: @ 837B4C4 - .incbin "data/tilesets/secondary/pacifidlog/anim/1/7.4bpp" - - .align 2 -gTilesetAnimTable_Pacifidlog_1:: @ 837B5C4 - .4byte TilesetAnimTiles_Pacifidlog_1_0 - .4byte TilesetAnimTiles_Pacifidlog_1_1 - .4byte TilesetAnimTiles_Pacifidlog_1_2 - .4byte TilesetAnimTiles_Pacifidlog_1_3 - .4byte TilesetAnimTiles_Pacifidlog_1_4 - .4byte TilesetAnimTiles_Pacifidlog_1_5 - .4byte TilesetAnimTiles_Pacifidlog_1_6 - .4byte TilesetAnimTiles_Pacifidlog_1_7 - - .align 2 -TilesetAnimTiles_Mauville_0_0: @ 837B5E4 - .incbin "data/tilesets/secondary/mauville/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_0_1: @ 837B664 - .incbin "data/tilesets/secondary/mauville/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_0_2: @ 837B6E4 - .incbin "data/tilesets/secondary/mauville/anim/0/2.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_0_3: @ 837B764 - .incbin "data/tilesets/secondary/mauville/anim/0/3.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_0_4: @ 837B7E4 - .incbin "data/tilesets/secondary/mauville/anim/0/4.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_1_0: @ 837B864 - .incbin "data/tilesets/secondary/mauville/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_1_1: @ 837B8E4 - .incbin "data/tilesets/secondary/mauville/anim/1/1.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_1_2: @ 837B964 - .incbin "data/tilesets/secondary/mauville/anim/1/2.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_1_3: @ 837B9E4 - .incbin "data/tilesets/secondary/mauville/anim/1/3.4bpp" - - .align 2 -TilesetAnimTiles_Mauville_1_4: @ 837BA64 - .incbin "data/tilesets/secondary/mauville/anim/1/4.4bpp" - - .align 2 -gUnknown_0837BAE4:: @ 837BAE4 - .4byte 0x06004C00 - .4byte 0x06004C80 - .4byte 0x06004D00 - .4byte 0x06004D80 - .4byte 0x06004E00 - .4byte 0x06004E80 - .4byte 0x06004F00 - .4byte 0x06004F80 - - .align 2 -gUnknown_0837BB04:: @ 837BB04 - .4byte 0x06005000 - .4byte 0x06005080 - .4byte 0x06005100 - .4byte 0x06005180 - .4byte 0x06005200 - .4byte 0x06005280 - .4byte 0x06005300 - .4byte 0x06005380 - - .align 2 -gTilesetAnimTable_Mauville_0A:: @ 837BB24 - .4byte TilesetAnimTiles_Mauville_0_0 - .4byte TilesetAnimTiles_Mauville_0_0 - .4byte TilesetAnimTiles_Mauville_0_1 - .4byte TilesetAnimTiles_Mauville_0_2 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_3 - .4byte TilesetAnimTiles_Mauville_0_2 - .4byte TilesetAnimTiles_Mauville_0_1 - - .align 2 -gTilesetAnimTable_Mauville_1A:: @ 837BB54 - .4byte TilesetAnimTiles_Mauville_1_0 - .4byte TilesetAnimTiles_Mauville_1_0 - .4byte TilesetAnimTiles_Mauville_1_1 - .4byte TilesetAnimTiles_Mauville_1_2 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_3 - .4byte TilesetAnimTiles_Mauville_1_2 - .4byte TilesetAnimTiles_Mauville_1_1 - - .align 2 -gTilesetAnimTable_Mauville_0B:: @ 837BB84 - .4byte TilesetAnimTiles_Mauville_0_0 - .4byte TilesetAnimTiles_Mauville_0_0 - .4byte TilesetAnimTiles_Mauville_0_4 - .4byte TilesetAnimTiles_Mauville_0_4 - - .align 2 -gTilesetAnimTable_Mauville_1B:: @ 837BB94 - .4byte TilesetAnimTiles_Mauville_1_0 - .4byte TilesetAnimTiles_Mauville_1_0 - .4byte TilesetAnimTiles_Mauville_1_4 - .4byte TilesetAnimTiles_Mauville_1_4 - - .align 2 -TilesetAnimTiles_Rustboro_0_0: @ 837BBA4 - .incbin "data/tilesets/secondary/rustboro/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_1: @ 837BC24 - .incbin "data/tilesets/secondary/rustboro/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_2: @ 837BCA4 - .incbin "data/tilesets/secondary/rustboro/anim/0/2.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_3: @ 837BD24 - .incbin "data/tilesets/secondary/rustboro/anim/0/3.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_4: @ 837BDA4 - .incbin "data/tilesets/secondary/rustboro/anim/0/4.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_5: @ 837BE24 - .incbin "data/tilesets/secondary/rustboro/anim/0/5.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_6: @ 837BEA4 - .incbin "data/tilesets/secondary/rustboro/anim/0/6.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_0_7: @ 837BF24 - .incbin "data/tilesets/secondary/rustboro/anim/0/7.4bpp" - - .align 2 -gUnknown_0837BFA4:: @ 837BFA4 - .4byte 0x06005000 - .4byte 0x06005080 - .4byte 0x06005100 - .4byte 0x06005180 - .4byte 0x06005200 - .4byte 0x06005280 - .4byte 0x06005300 - .4byte 0x06005380 - - .align 2 -gTilesetAnimTable_Rustboro_0:: @ 837BFC4 - .4byte TilesetAnimTiles_Rustboro_0_0 - .4byte TilesetAnimTiles_Rustboro_0_1 - .4byte TilesetAnimTiles_Rustboro_0_2 - .4byte TilesetAnimTiles_Rustboro_0_3 - .4byte TilesetAnimTiles_Rustboro_0_4 - .4byte TilesetAnimTiles_Rustboro_0_5 - .4byte TilesetAnimTiles_Rustboro_0_6 - .4byte TilesetAnimTiles_Rustboro_0_7 - - .align 2 -TilesetAnimTiles_Rustboro_1_0: @ 837BFE4 - .incbin "data/tilesets/secondary/rustboro/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_Rustboro_1_1: @ 837C064 - .incbin "data/tilesets/secondary/rustboro/anim/1/1.4bpp" - - .align 2 -gTilesetAnimTable_Rustboro_1:: @ 837C0E4 - .4byte TilesetAnimTiles_Rustboro_1_0 - .4byte TilesetAnimTiles_Rustboro_1_1 - - .align 2 -TilesetAnimTiles_Cave_0: @ 837C0EC - .incbin "data/tilesets/secondary/cave/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_Cave_1: @ 837C16C - .incbin "data/tilesets/secondary/cave/anim/1.4bpp" - - .align 2 -TilesetAnimTiles_Cave_2: @ 837C1EC - .incbin "data/tilesets/secondary/cave/anim/2.4bpp" - - .align 2 -TilesetAnimTiles_Cave_3: @ 837C26C - .incbin "data/tilesets/secondary/cave/anim/3.4bpp" - - .incbin "data/tilesets/secondary/cave/anim/unused/0.4bpp" - .incbin "data/tilesets/secondary/cave/anim/unused/1.4bpp" - .incbin "data/tilesets/secondary/cave/anim/unused/2.4bpp" - .incbin "data/tilesets/secondary/cave/anim/unused/3.4bpp" - - .space 32 - - .align 2 -gTilesetAnimTable_Cave:: @ 837C50C - .4byte TilesetAnimTiles_Cave_0 - .4byte TilesetAnimTiles_Cave_1 - .4byte TilesetAnimTiles_Cave_2 - .4byte TilesetAnimTiles_Cave_3 - - .align 2 -TilesetAnimTiles_EverGrande_0: @ 837C51C - .incbin "data/tilesets/secondary/ever_grande/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_1: @ 837C59C - .incbin "data/tilesets/secondary/ever_grande/anim/1.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_2: @ 837C61C - .incbin "data/tilesets/secondary/ever_grande/anim/2.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_3: @ 837C69C - .incbin "data/tilesets/secondary/ever_grande/anim/3.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_4: @ 837C71C - .incbin "data/tilesets/secondary/ever_grande/anim/4.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_5: @ 837C79C - .incbin "data/tilesets/secondary/ever_grande/anim/5.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_6: @ 837C81C - .incbin "data/tilesets/secondary/ever_grande/anim/6.4bpp" - - .align 2 -TilesetAnimTiles_EverGrande_7: @ 837C89C - .incbin "data/tilesets/secondary/ever_grande/anim/7.4bpp" - - .space 32 - - .align 2 -gUnknown_0837C93C:: @ 837C93C - .4byte 0x06005C00 - .4byte 0x06005C80 - .4byte 0x06005D00 - .4byte 0x06005D80 - .4byte 0x06005E00 - .4byte 0x06005E80 - .4byte 0x06005F00 - .4byte 0x06005F80 - - .align 2 -gTilesetAnimTable_EverGrande:: @ 837C95C - .4byte TilesetAnimTiles_EverGrande_0 - .4byte TilesetAnimTiles_EverGrande_1 - .4byte TilesetAnimTiles_EverGrande_2 - .4byte TilesetAnimTiles_EverGrande_3 - .4byte TilesetAnimTiles_EverGrande_4 - .4byte TilesetAnimTiles_EverGrande_5 - .4byte TilesetAnimTiles_EverGrande_6 - .4byte TilesetAnimTiles_EverGrande_7 - - .align 2 -TilesetAnimTiles_Building_0: @ 837C97C - .incbin "data/tilesets/primary/building/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_Building_1: @ 837C9FC - .incbin "data/tilesets/primary/building/anim/1.4bpp" - - .align 2 -gTilesetAnimTable_Building:: @ 837CA7C - .4byte TilesetAnimTiles_Building_0 - .4byte TilesetAnimTiles_Building_1 - - .align 2 -TilesetAnimTiles_SootopolisGym_0_0: @ 837CA84 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_SootopolisGym_0_1: @ 837CC04 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_SootopolisGym_0_2: @ 837CD84 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/0/2.4bpp" - - .align 2 -TilesetAnimTiles_SootopolisGym_1_0: @ 837CF04 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_SootopolisGym_1_1: @ 837D184 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/1/1.4bpp" - - .align 2 -TilesetAnimTiles_SootopolisGym_1_2: @ 837D404 - .incbin "data/tilesets/secondary/sootopolis_gym/anim/1/2.4bpp" - - .align 2 -gTilesetAnimTable_SootopolisGym_0:: @ 837D684 - .4byte TilesetAnimTiles_SootopolisGym_0_0 - .4byte TilesetAnimTiles_SootopolisGym_0_1 - .4byte TilesetAnimTiles_SootopolisGym_0_2 - - .align 2 -gTilesetAnimTable_SootopolisGym_1:: @ 837D690 - .4byte TilesetAnimTiles_SootopolisGym_1_0 - .4byte TilesetAnimTiles_SootopolisGym_1_1 - .4byte TilesetAnimTiles_SootopolisGym_1_2 - - .align 2 -TilesetAnimTiles_EliteFour_1_0: @ 837D69C - .incbin "data/tilesets/secondary/elite_four/anim/1/0.4bpp" - - .align 2 -TilesetAnimTiles_EliteFour_1_1: @ 837D71C - .incbin "data/tilesets/secondary/elite_four/anim/1/1.4bpp" - - .align 2 -TilesetAnimTiles_EliteFour_0_0: @ 837D79C - .incbin "data/tilesets/secondary/elite_four/anim/0/0.4bpp" - - .align 2 -TilesetAnimTiles_EliteFour_0_1: @ 837D7BC - .incbin "data/tilesets/secondary/elite_four/anim/0/1.4bpp" - - .align 2 -TilesetAnimTiles_EliteFour_0_2: @ 837D7DC - .incbin "data/tilesets/secondary/elite_four/anim/0/2.4bpp" - - .align 2 -TilesetAnimTiles_EliteFour_0_3: @ 837D7FC - .incbin "data/tilesets/secondary/elite_four/anim/0/3.4bpp" - - .space 32 - - .align 2 -gTilesetAnimTable_EliteFour_0:: @ 837D83C - .4byte TilesetAnimTiles_EliteFour_0_0 - .4byte TilesetAnimTiles_EliteFour_0_1 - .4byte TilesetAnimTiles_EliteFour_0_2 - .4byte TilesetAnimTiles_EliteFour_0_3 - - .align 2 -gTilesetAnimTable_EliteFour_1:: @ 837D84C - .4byte TilesetAnimTiles_EliteFour_1_0 - .4byte TilesetAnimTiles_EliteFour_1_1 - - .align 2 -TilesetAnimTiles_MauvilleGym_0: @ 837D854 - .incbin "data/tilesets/secondary/mauville_gym/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_MauvilleGym_1: @ 837DA54 - .incbin "data/tilesets/secondary/mauville_gym/anim/1.4bpp" - - .space 32 - - .align 2 -gTilesetAnimTable_MauvilleGym:: @ 837DC74 - .4byte TilesetAnimTiles_MauvilleGym_0 - .4byte TilesetAnimTiles_MauvilleGym_1 - - .align 2 -TilesetAnimTiles_BikeShop_0: @ 837DC7C - .incbin "data/tilesets/secondary/bike_shop/anim/0.4bpp" - - .align 2 -TilesetAnimTiles_BikeShop_1: @ 837DD9C - .incbin "data/tilesets/secondary/bike_shop/anim/1.4bpp" - - .space 32 - - .align 2 -gTilesetAnimTable_BikeShop:: @ 837DEDC - .4byte TilesetAnimTiles_BikeShop_0 - .4byte TilesetAnimTiles_BikeShop_1 diff --git a/include/matsuda_debug_menu.h b/include/matsuda_debug_menu.h index 5df53d688..60f2dc48c 100644 --- a/include/matsuda_debug_menu.h +++ b/include/matsuda_debug_menu.h @@ -7,5 +7,31 @@ void sub_80AB184(void); void sub_80AA280(u8); void sub_80AA5E8(u8); void sub_80AA658(u8); +u8 MatsudaDebugMenu_Contest(void); +u8 MatsudaDebugMenu_ContestResults(void); +u8 MatsudaDebugMenu_ContestComm(void); +u8 MatsudaDebugMenu_CommTest(void); +u8 MatsudaDebugMenu_SetHighScore(void); +u8 MatsudaDebugMenu_ResetHighScore(void); +u8 MatsudaDebugMenu_SetArtMuseumItems(void); +void sub_80AA754(struct Sprite *sprite); +void sub_80AA8C8(struct Sprite *, s8); +void sub_80AA8D8(struct Sprite *, s8); +void sub_80AA8E8(struct Sprite *, s8); +void sub_80AA8F8(struct Sprite *, s8); +void sub_80AAC5C(struct Sprite *, s8); +void sub_80AAC5C(struct Sprite *, s8); +void sub_80AA930(struct Sprite *, s8); +void sub_80AA974(struct Sprite *, s8); +void sub_80AA9B8(struct Sprite *, s8); +void sub_80AA9FC(struct Sprite *, s8); +void sub_80AAA40(struct Sprite *, s8); +void sub_80AAA84(struct Sprite *, s8); +void sub_80AAAF0(struct Sprite *, s8); +void sub_80AAB30(struct Sprite *, s8); +void sub_80AAB70(struct Sprite *, s8); +void sub_80AABB0(struct Sprite *, s8); +void sub_80AABF0(struct Sprite *, s8); +void sub_80AAD44(struct Sprite *, s8); #endif diff --git a/ld_script.txt b/ld_script.txt index d9a4a1c0b..268d0690a 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -351,7 +351,7 @@ SECTIONS { src/field/party_menu.o(.rodata); src/field/start_menu.o(.rodata); src/engine/menu.o(.rodata); - data/tileset_anim.o(.rodata); + src/engine/tileset_anim.o(.rodata); src/engine/palette.o(.rodata); src/engine/sound.o(.rodata); data/battle_anim.o(.rodata); @@ -385,7 +385,7 @@ SECTIONS { src/field/item_menu.o(.rodata); data/battle_anim_80A7E7C.o(.rodata); src/field/item.o(.rodata); - data/matsuda_debug_menu.o(.rodata); + src/debug/matsuda_debug_menu.o(.rodata); data/contest.o(.rodata); src/field/shop.o(.rodata); src/field/berry.o(.rodata); diff --git a/src/debug/matsuda_debug_menu.c b/src/debug/matsuda_debug_menu.c index 3378e4e0a..dcb6fa2d8 100644 --- a/src/debug/matsuda_debug_menu.c +++ b/src/debug/matsuda_debug_menu.c @@ -41,32 +41,8 @@ extern u16 gUnknown_030041B8; extern struct Window gUnknown_03004210; extern u8 (*gCallback_03004AE8)(void); -extern u8 gUnknown_083C926E[][2]; -extern u8 gUnknown_083C9282[]; -extern const u8 gUnknown_083C928E[][2]; -extern u8 gUnknown_083C9296[]; -extern u8 gUnknown_083C92A8[]; -extern u8 gMatsudaDebugMenu_GoBackText[]; -extern u8 gMatsudaDebugMenu_BattlePointsText[]; -extern u8 gMatsudaDebugMenu_StartText[]; - -extern struct SpritePalette gUnknown_083C92BC; -extern struct SpriteSheet gUnknown_083C92B4; -extern struct SpriteTemplate gSpriteTemplate_83C92CC; -extern void (*gUnknown_083C92E4[][2])(struct Sprite *, s8); -extern u32 gUnknown_083C9400[2]; - - -extern u8 gMatsudaDebugMenu_UnknownByteArray[]; -extern u8* gMatsudaDebugMenuTextList1[]; -extern u8* gMatsudaDebugMenuTextList2[]; -extern u8* gMatsudaDebugMenuTextList3[]; -extern u8 gMatsudaDebugMenuContestTopLeft[][2]; - extern bool8 gReceivedRemoteLinkPlayers; -extern struct MenuAction gMatsudaDebugMenuActions[]; - static bool8 sub_80A9B78(void); static void sub_80A9BE4(u8 taskId); static void sub_80A9C98(u8); @@ -85,6 +61,191 @@ static void sub_80AA5BC(u8); static void sub_80AA614(u8, u8); static void sub_80AAD08(struct Sprite *, s8); +// unused +const u8 gText_Unused83C9150[] = _("テストです"); // "test" +const u8 gMatsudaDebugMenu_ActionContestText[] = _("Contest"); +const u8 gMatsudaDebugMenu_ActionContestResultsText[] = _("Contest results"); +// unused +const u8 gMatsudaDebugMenu_ActionChangePerimeterText[] = _("パラメータへんこう"); // "Change parameter" +// unused +const u8 gMatsudaDebugMenu_ActionChangeMoveText[] = _("わざ へんこう"); // "Change move" +const u8 gMatsudaDebugMenu_ActionContestCommText[] = _("Contest (comm.)"); +const u8 gMatsudaDebugMenu_ActionCommTestText[] = _("Init comm. data"); +const u8 gMatsudaDebugMenu_ActionSetHighScoreText[] = _("Set highest score"); +const u8 gMatsudaDebugMenu_ActionResetHighScoreText[] = _("Reset highest score"); +const u8 gMatsudaDebugMenu_ActionSetAllArtMuseumText[] = _("Set all art museum items"); + +const struct MenuAction gMatsudaDebugMenuActions[] = +{ + {gMatsudaDebugMenu_ActionContestText, MatsudaDebugMenu_Contest}, + {gMatsudaDebugMenu_ActionContestResultsText, MatsudaDebugMenu_ContestResults}, + {gMatsudaDebugMenu_ActionContestCommText, MatsudaDebugMenu_ContestComm}, + {gMatsudaDebugMenu_ActionCommTestText, MatsudaDebugMenu_CommTest}, + {gMatsudaDebugMenu_ActionSetHighScoreText, MatsudaDebugMenu_SetHighScore}, + {gMatsudaDebugMenu_ActionResetHighScoreText, MatsudaDebugMenu_ResetHighScore}, + {gMatsudaDebugMenu_ActionSetAllArtMuseumText, MatsudaDebugMenu_SetArtMuseumItems}, +}; + +const u8 gMatsudaDebugMenu_UnknownByteArray[] = {0xFC, 0x02, 0x0F, 0x00, 0xFF}; +const u8 Unknown_083C922D[] = INCBIN_U8("graphics/unknown/ball.4bpp"); +const u16 Unknown_083C924E[] = INCBIN_U16("graphics/unknown/ball.gbapal"); + +const u8 gUnknown_083C926E[][2] = +{ + {2, 0}, + {17, 0}, + {2, 2}, + {17, 2}, +}; + +const u8 gMatsudaDebugMenuContestTopLeft[][2] = +{ + {0, 6}, + {15, 6}, + {0, 8}, + {15, 8}, + {0, 10}, + {15, 10}, +}; + +const u8 gUnknown_083C9282[] = +{ + // TODO: 2d array? + 7, 6, + 22, 6, + 7, 8, + 22, 8, + 7, 10, + 22, 10, +}; + +const u8 gUnknown_083C928E[][2] = +{ + {2, 14}, + {17, 14}, + {2, 16}, + {17, 16}, +}; + +const u8 gUnknown_083C9296[] = {0x08, 0x80, 0x08, 0x80, 0x10, 0x10, 0x30, 0xA8, 0x30, 0xA8, 0x30, 0xA8, 0x08, 0x80, 0x08, 0x80, 0x10, 0x88}; +const u8 gUnknown_083C92A8[] = {0x08, 0x18, 0x28, 0x38, 0x48, 0x58, 0x78, 0x88, 0x98}; + +const struct SpriteSheet gUnknown_083C92B4[] = {Unknown_083C922D, 32, 0x4B0}; +const struct SpritePalette gUnknown_083C92BC[] = {Unknown_083C924E, 0x4B0}; + +const struct OamData gOamData_83C92C4 = +{ + .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 struct SpriteTemplate gSpriteTemplate_83C92CC = +{ + .tileTag = 1200, + .paletteTag = 1200, + .oam = &gOamData_83C92C4, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = sub_80AA754, +}; + +static void (* const gUnknown_083C92E4[][2])(struct Sprite *, s8) = +{ + {sub_80AA8C8, sub_80AA8D8}, + {sub_80AA8E8, sub_80AA8F8}, + {sub_80AAC5C, sub_80AAC5C}, + {sub_80AA930, sub_80AA974}, + {sub_80AA9B8, sub_80AA9FC}, + {sub_80AAA40, sub_80AAA84}, + {sub_80AAAF0, sub_80AAB30}, + {sub_80AAB70, sub_80AABB0}, + {sub_80AABF0, sub_80AAD44}, +}; + +static const u8 gMatsudaDebugMenu_StartText[] = _("{COLOR CYAN}{HIGHLIGHT RED}"); +static const u8 gMatsudaDebugMenu_StartJapText[] = _("かいし"); // because StartText is only called by StringCopy, this part appears to be unused. +static const u8 gMatsudaDebugMenu_GoBackText[] = _("もどる"); + +#ifdef GERMAN +static const u8 gMatsudaDebugMenu_BattlePointsText[] = _("{COLOR MAGENTA}BP,"); +#else +static const u8 gMatsudaDebugMenu_BattlePointsText[] = _("{COLOR MAGENTA}BP."); +#endif + +static const u8 MatsudaDebugMenuText_Cool[] = _("かっこよさ"); // cool +static const u8 MatsudaDebugMenuText_Cute[] = _("かわいさ"); // cute +static const u8 MatsudaDebugMenuText_Beauty[] = _("うつくしさ"); // beauty +static const u8 MatsudaDebugMenuText_Smart[] = _("かしこさ"); // smart +static const u8 MatsudaDebugMenuText_Tough[] = _("たくましさ"); // tough +static const u8 MatsudaDebugMenuText_Sheen[] = _("けづや"); // sheen + +static const u8 *const gMatsudaDebugMenuTextList1[] = +{ + MatsudaDebugMenuText_Cool, + MatsudaDebugMenuText_Cute, + MatsudaDebugMenuText_Beauty, + MatsudaDebugMenuText_Smart, + MatsudaDebugMenuText_Tough, + MatsudaDebugMenuText_Sheen, +}; + +static const u8 MatsudaDebugMenuText_CoolContest[] = _("かっこよさコンテスト"); +static const u8 MatsudaDebugMenuText_BeautyContest[] = _("うつくしさコンテスト"); +static const u8 MatsudaDebugMenuText_CuteContest[] = _("かわいさコンテスト "); +static const u8 MatsudaDebugMenuText_SmartContest[] = _("かしこさコンテスト "); +static const u8 MatsudaDebugMenuText_ToughContest[] = _("たくましさコンテスト"); + +static const u8 *const gMatsudaDebugMenuTextList2[] = +{ + MatsudaDebugMenuText_CoolContest, + MatsudaDebugMenuText_BeautyContest, + MatsudaDebugMenuText_CuteContest, + MatsudaDebugMenuText_SmartContest, + MatsudaDebugMenuText_ToughContest, +}; + +static const u8 MatsudaDebugMenuText_Fallarbor[] = _("ハジツゲ/ノーマル"); // Fallarbor / Normal +static const u8 MatsudaDebugMenuText_Verdanturf[] = _("シダケ/スーパー "); // Verdanturf / Super +static const u8 MatsudaDebugMenuText_Slateport[] = _("カイナ/ハイパー "); // Slateport / Hyper +static const u8 MatsudaDebugMenuText_Lilycove[] = _("ミナモ/マスター "); // Lilycove / Master + +static const u8 *const gMatsudaDebugMenuTextList3[] = +{ + MatsudaDebugMenuText_Fallarbor, + MatsudaDebugMenuText_Verdanturf, + MatsudaDebugMenuText_Slateport, + MatsudaDebugMenuText_Lilycove, +}; + +static const struct OamData gUnknown_083C9400 = +{ + .y = 0, + .affineMode = 0, + .objMode = 0, + .mosaic = 0, + .bpp = 0, + .shape = 1, + .x = 0, + .matrixNum = 0, + .size = 1, + .tileNum = 1023, + .priority = 0, + .paletteNum = 15, + .affineParam = 0, +}; + u8 unref_sub_80A9B28(void) { MenuZeroFillScreen(); @@ -112,7 +273,7 @@ static bool8 sub_80A9B78(void) } } -s8 MatsudaDebugMenu_ContestResults(void) +u8 MatsudaDebugMenu_ContestResults(void) { BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, 0); CreateTask(sub_80A9BE4, 0xFF); @@ -132,20 +293,20 @@ static void sub_80A9BE4(u8 taskId) } } -s8 MatsudaDebugMenu_Contest(void) +u8 MatsudaDebugMenu_Contest(void) { gIsLinkContest = 0; sub_80AA10C(); return 0; } -s8 MatsudaDebugMenu_ContestComm(void) +u8 MatsudaDebugMenu_ContestComm(void) { sub_80AA10C(); return 0; } -s8 MatsudaDebugMenu_CommTest(void) +u8 MatsudaDebugMenu_CommTest(void) { u8 newTaskId; u8 newTaskId2; @@ -397,8 +558,8 @@ static void sub_80AA10C(void) sub_80AA5E8(gScriptContestRank); sub_8003460(&gMenuWindow, gMatsudaDebugMenu_GoBackText, 0xD6, 0x12, 0x12); sub_8003460(&gMenuWindow, gMatsudaDebugMenu_BattlePointsText, 0xDC, zero, 0xC); - LoadSpriteSheet(&gUnknown_083C92B4); - LoadSpritePalette(&gUnknown_083C92BC); + LoadSpriteSheet(gUnknown_083C92B4); + LoadSpritePalette(gUnknown_083C92BC); sub_80AA280(3); sub_80AA658(3); sub_80AA614(3, zero); @@ -608,7 +769,7 @@ static u8 sub_80AA908(u32 a1, u8 a2, s8 a3) // first param is unused. return val; } -void sub_80AA930(struct Sprite *sprite, u8 var2) +void sub_80AA930(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -616,7 +777,7 @@ void sub_80AA930(struct Sprite *sprite, u8 var2) sub_80AA340(sprite->data2); } -void sub_80AA974(struct Sprite *sprite, u8 var2) +void sub_80AA974(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -624,7 +785,7 @@ void sub_80AA974(struct Sprite *sprite, u8 var2) sub_80AA388(sprite->data2); } -void sub_80AA9B8(struct Sprite *sprite, u8 var2) +void sub_80AA9B8(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -632,7 +793,7 @@ void sub_80AA9B8(struct Sprite *sprite, u8 var2) sub_80AA3D0(sprite->data2); } -void sub_80AA9FC(struct Sprite *sprite, u8 var2) +void sub_80AA9FC(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -640,7 +801,7 @@ void sub_80AA9FC(struct Sprite *sprite, u8 var2) sub_80AA418(sprite->data2); } -void sub_80AAA40(struct Sprite *sprite, u8 var2) +void sub_80AAA40(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -648,7 +809,7 @@ void sub_80AAA40(struct Sprite *sprite, u8 var2) sub_80AA460(sprite->data2); } -void sub_80AAA84(struct Sprite *sprite, u8 var2) +void sub_80AAA84(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -669,7 +830,7 @@ static u16 sub_80AAAC8(u32 a1, u16 a2, s8 a3) // first param is unused. return val; } -void sub_80AAAF0(struct Sprite *sprite, u8 var2) +void sub_80AAAF0(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -677,7 +838,7 @@ void sub_80AAAF0(struct Sprite *sprite, u8 var2) sub_80AA4F0(sprite->data2, 0); } -void sub_80AAB30(struct Sprite *sprite, u8 var2) +void sub_80AAB30(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -685,7 +846,7 @@ void sub_80AAB30(struct Sprite *sprite, u8 var2) sub_80AA4F0(sprite->data2, 1); } -void sub_80AAB70(struct Sprite *sprite, u8 var2) +void sub_80AAB70(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -693,7 +854,7 @@ void sub_80AAB70(struct Sprite *sprite, u8 var2) sub_80AA4F0(sprite->data2, 2); } -void sub_80AABB0(struct Sprite *sprite, u8 var2) +void sub_80AABB0(struct Sprite *sprite, s8 var2) { u8 val = sprite->data2; @@ -1013,16 +1174,14 @@ void sub_80AAF30(void) sub_80B2A7C(0xFE); } -//Don't know size of return type -int MatsudaDebugMenu_SetHighScore(void) +u8 MatsudaDebugMenu_SetHighScore(void) { sub_80AAF30(); CloseMenu(); return 1; } -//Don't know size of return type -int MatsudaDebugMenu_ResetHighScore(void) +u8 MatsudaDebugMenu_ResetHighScore(void) { s32 i; @@ -1037,8 +1196,7 @@ int MatsudaDebugMenu_ResetHighScore(void) return 1; } -//Don't know size of return type -int MatsudaDebugMenu_SetArtMuseumItems(void) +u8 MatsudaDebugMenu_SetArtMuseumItems(void) { s32 i; diff --git a/src/engine/tileset_anim.c b/src/engine/tileset_anim.c index f892e5e9a..abd38edad 100644 --- a/src/engine/tileset_anim.c +++ b/src/engine/tileset_anim.c @@ -1,39 +1,10 @@ #include "global.h" #include "tileset_anim.h" -extern u8 *gTilesetAnimTable_General_0[]; -extern u8 *gTilesetAnimTable_General_1[]; -extern u8 *gTilesetAnimTable_General_2[]; -extern u8 *gTilesetAnimTable_General_3[]; -extern u8 *gTilesetAnimTable_General_4[]; -extern u8 *gTilesetAnimTable_Lavaridge[]; -extern u8 *gTilesetAnimTable_Pacifidlog_0[]; -extern u8 *gTilesetAnimTable_Underwater[]; -extern u8 *gTilesetAnimTable_Pacifidlog_1[]; -extern u8 *gUnknown_0837BAE4[]; -extern u8 *gUnknown_0837BB04[]; -extern u8 *gTilesetAnimTable_Mauville_0A[]; -extern u8 *gTilesetAnimTable_Mauville_1A[]; -extern u8 *gTilesetAnimTable_Mauville_0B[]; -extern u8 *gTilesetAnimTable_Mauville_1B[]; -extern u8 *gUnknown_0837BFA4[]; -extern u8 *gTilesetAnimTable_Rustboro_0[]; -extern u8 *gTilesetAnimTable_Rustboro_1[]; -extern u8 *gTilesetAnimTable_Cave[]; -extern u8 *gUnknown_0837C93C[]; -extern u8 *gTilesetAnimTable_EverGrande[]; -extern u8 *gTilesetAnimTable_Building[]; -extern u8 *gTilesetAnimTable_SootopolisGym_0[]; -extern u8 *gTilesetAnimTable_SootopolisGym_1[]; -extern u8 *gTilesetAnimTable_EliteFour_0[]; -extern u8 *gTilesetAnimTable_EliteFour_1[]; -extern u8 *gTilesetAnimTable_MauvilleGym[]; -extern u8 *gTilesetAnimTable_BikeShop[]; - struct Dma { - void *src; - void *dest; + const void *src; + const void *dest; u16 size; }; @@ -89,13 +60,403 @@ static void sub_807399C(u16); static void sub_8073974(u16); static void sub_80739EC(u16); +static const u8 TilesetAnimTiles_General_0_1[] = INCBIN_U8("data/tilesets/primary/general/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_General_0_0[] = INCBIN_U8("data/tilesets/primary/general/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_General_0_2[] = INCBIN_U8("data/tilesets/primary/general/anim/0/2.4bpp"); +asm(".space 32"); + +static const u8 *const gTilesetAnimTable_General_0[] = +{ + TilesetAnimTiles_General_0_0, + TilesetAnimTiles_General_0_1, + TilesetAnimTiles_General_0_0, + TilesetAnimTiles_General_0_2, +}; + +static const u8 TilesetAnimTiles_General_1_0[] = INCBIN_U8("data/tilesets/primary/general/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_General_1_1[] = INCBIN_U8("data/tilesets/primary/general/anim/1/1.4bpp"); +static const u8 TilesetAnimTiles_General_1_2[] = INCBIN_U8("data/tilesets/primary/general/anim/1/2.4bpp"); +static const u8 TilesetAnimTiles_General_1_3[] = INCBIN_U8("data/tilesets/primary/general/anim/1/3.4bpp"); +static const u8 TilesetAnimTiles_General_1_4[] = INCBIN_U8("data/tilesets/primary/general/anim/1/4.4bpp"); +static const u8 TilesetAnimTiles_General_1_5[] = INCBIN_U8("data/tilesets/primary/general/anim/1/5.4bpp"); +static const u8 TilesetAnimTiles_General_1_6[] = INCBIN_U8("data/tilesets/primary/general/anim/1/6.4bpp"); +static const u8 TilesetAnimTiles_General_1_7[] = INCBIN_U8("data/tilesets/primary/general/anim/1/7.4bpp"); + +static const u8 *const gTilesetAnimTable_General_1[] = +{ + TilesetAnimTiles_General_1_0, + TilesetAnimTiles_General_1_1, + TilesetAnimTiles_General_1_2, + TilesetAnimTiles_General_1_3, + TilesetAnimTiles_General_1_4, + TilesetAnimTiles_General_1_5, + TilesetAnimTiles_General_1_6, + TilesetAnimTiles_General_1_7, +}; + +static const u8 TilesetAnimTiles_General_2_0[] = INCBIN_U8("data/tilesets/primary/general/anim/2/0.4bpp"); +static const u8 TilesetAnimTiles_General_2_1[] = INCBIN_U8("data/tilesets/primary/general/anim/2/1.4bpp"); +static const u8 TilesetAnimTiles_General_2_2[] = INCBIN_U8("data/tilesets/primary/general/anim/2/2.4bpp"); +static const u8 TilesetAnimTiles_General_2_3[] = INCBIN_U8("data/tilesets/primary/general/anim/2/3.4bpp"); +static const u8 TilesetAnimTiles_General_2_4[] = INCBIN_U8("data/tilesets/primary/general/anim/2/4.4bpp"); +static const u8 TilesetAnimTiles_General_2_5[] = INCBIN_U8("data/tilesets/primary/general/anim/2/5.4bpp"); +static const u8 TilesetAnimTiles_General_2_6[] = INCBIN_U8("data/tilesets/primary/general/anim/2/6.4bpp"); + +static const u8 *const gTilesetAnimTable_General_2[] = +{ + TilesetAnimTiles_General_2_0, + TilesetAnimTiles_General_2_1, + TilesetAnimTiles_General_2_2, + TilesetAnimTiles_General_2_3, + TilesetAnimTiles_General_2_4, + TilesetAnimTiles_General_2_5, + TilesetAnimTiles_General_2_6, + TilesetAnimTiles_General_2_0, +}; + +static const u8 TilesetAnimTiles_General_3_0[] = INCBIN_U8("data/tilesets/primary/general/anim/3/0.4bpp"); +static const u8 TilesetAnimTiles_General_3_1[] = INCBIN_U8("data/tilesets/primary/general/anim/3/1.4bpp"); +static const u8 TilesetAnimTiles_General_3_2[] = INCBIN_U8("data/tilesets/primary/general/anim/3/2.4bpp"); +static const u8 TilesetAnimTiles_General_3_3[] = INCBIN_U8("data/tilesets/primary/general/anim/3/3.4bpp"); + +static const u8 *const gTilesetAnimTable_General_3[] = +{ + TilesetAnimTiles_General_3_0, + TilesetAnimTiles_General_3_1, + TilesetAnimTiles_General_3_2, + TilesetAnimTiles_General_3_3, +}; + +static const u8 TilesetAnimTiles_General_4_0[] = INCBIN_U8("data/tilesets/primary/general/anim/4/0.4bpp"); +static const u8 TilesetAnimTiles_General_4_1[] = INCBIN_U8("data/tilesets/primary/general/anim/4/1.4bpp"); +static const u8 TilesetAnimTiles_General_4_2[] = INCBIN_U8("data/tilesets/primary/general/anim/4/2.4bpp"); +static const u8 TilesetAnimTiles_General_4_3[] = INCBIN_U8("data/tilesets/primary/general/anim/4/3.4bpp"); + +static const u8 *const gTilesetAnimTable_General_4[] = +{ + TilesetAnimTiles_General_4_0, + TilesetAnimTiles_General_4_1, + TilesetAnimTiles_General_4_2, + TilesetAnimTiles_General_4_3, +}; + +static const u8 TilesetAnimTiles_Lavaridge_0[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/0.4bpp"); +static const u8 TilesetAnimTiles_Lavaridge_1[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/1.4bpp"); +static const u8 TilesetAnimTiles_Lavaridge_2[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/2.4bpp"); +static const u8 TilesetAnimTiles_Lavaridge_3[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/3.4bpp"); + +static const u8 *const gTilesetAnimTable_Lavaridge[] = +{ + TilesetAnimTiles_Lavaridge_0, + TilesetAnimTiles_Lavaridge_1, + TilesetAnimTiles_Lavaridge_2, + TilesetAnimTiles_Lavaridge_3, +}; + +static const u8 TilesetAnimTiles_Pacifidlog_0_0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_0_1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_0_2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/2.4bpp"); + +static const u8 *const gTilesetAnimTable_Pacifidlog_0[] = +{ + TilesetAnimTiles_Pacifidlog_0_0, + TilesetAnimTiles_Pacifidlog_0_1, + TilesetAnimTiles_Pacifidlog_0_2, + TilesetAnimTiles_Pacifidlog_0_1, +}; + +static const u8 TilesetAnimTiles_Underwater_0[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/0.4bpp"); +static const u8 TilesetAnimTiles_Underwater_1[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/1.4bpp"); +static const u8 TilesetAnimTiles_Underwater_2[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/2.4bpp"); +static const u8 TilesetAnimTiles_Underwater_3[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/3.4bpp"); + +static const u8 *const gTilesetAnimTable_Underwater[] = +{ + TilesetAnimTiles_Underwater_0, + TilesetAnimTiles_Underwater_1, + TilesetAnimTiles_Underwater_2, + TilesetAnimTiles_Underwater_3, +}; + +static const u8 TilesetAnimTiles_Pacifidlog_1_0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/1.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/2.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_3[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/3.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_4[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/4.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_5[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/5.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_6[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/6.4bpp"); +static const u8 TilesetAnimTiles_Pacifidlog_1_7[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/7.4bpp"); + +static const u8 *const gTilesetAnimTable_Pacifidlog_1[] = +{ + TilesetAnimTiles_Pacifidlog_1_0, + TilesetAnimTiles_Pacifidlog_1_1, + TilesetAnimTiles_Pacifidlog_1_2, + TilesetAnimTiles_Pacifidlog_1_3, + TilesetAnimTiles_Pacifidlog_1_4, + TilesetAnimTiles_Pacifidlog_1_5, + TilesetAnimTiles_Pacifidlog_1_6, + TilesetAnimTiles_Pacifidlog_1_7, +}; + +static const u8 TilesetAnimTiles_Mauville_0_0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_Mauville_0_1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_Mauville_0_2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/2.4bpp"); +static const u8 TilesetAnimTiles_Mauville_0_3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/3.4bpp"); +static const u8 TilesetAnimTiles_Mauville_0_4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/4.4bpp"); + +static const u8 TilesetAnimTiles_Mauville_1_0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_Mauville_1_1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/1.4bpp"); +static const u8 TilesetAnimTiles_Mauville_1_2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/2.4bpp"); +static const u8 TilesetAnimTiles_Mauville_1_3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/3.4bpp"); +static const u8 TilesetAnimTiles_Mauville_1_4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/4.4bpp"); + +static const void *const gUnknown_0837BAE4[] = +{ + (void *)(VRAM + 0x4C00), + (void *)(VRAM + 0x4C80), + (void *)(VRAM + 0x4D00), + (void *)(VRAM + 0x4D80), + (void *)(VRAM + 0x4E00), + (void *)(VRAM + 0x4E80), + (void *)(VRAM + 0x4F00), + (void *)(VRAM + 0x4F80), +}; + +static const void *const gUnknown_0837BB04[] = +{ + (void *)(VRAM + 0x5000), + (void *)(VRAM + 0x5080), + (void *)(VRAM + 0x5100), + (void *)(VRAM + 0x5180), + (void *)(VRAM + 0x5200), + (void *)(VRAM + 0x5280), + (void *)(VRAM + 0x5300), + (void *)(VRAM + 0x5380), +}; + +static const u8 *const gTilesetAnimTable_Mauville_0A[] = +{ + TilesetAnimTiles_Mauville_0_0, + TilesetAnimTiles_Mauville_0_0, + TilesetAnimTiles_Mauville_0_1, + TilesetAnimTiles_Mauville_0_2, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_3, + TilesetAnimTiles_Mauville_0_2, + TilesetAnimTiles_Mauville_0_1, +}; + +static const u8 *const gTilesetAnimTable_Mauville_1A[] = +{ + TilesetAnimTiles_Mauville_1_0, + TilesetAnimTiles_Mauville_1_0, + TilesetAnimTiles_Mauville_1_1, + TilesetAnimTiles_Mauville_1_2, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_3, + TilesetAnimTiles_Mauville_1_2, + TilesetAnimTiles_Mauville_1_1, +}; + +static const u8 *const gTilesetAnimTable_Mauville_0B[] = +{ + TilesetAnimTiles_Mauville_0_0, + TilesetAnimTiles_Mauville_0_0, + TilesetAnimTiles_Mauville_0_4, + TilesetAnimTiles_Mauville_0_4, +}; + +static const u8 *const gTilesetAnimTable_Mauville_1B[] = +{ + TilesetAnimTiles_Mauville_1_0, + TilesetAnimTiles_Mauville_1_0, + TilesetAnimTiles_Mauville_1_4, + TilesetAnimTiles_Mauville_1_4, +}; + +static const u8 TilesetAnimTiles_Rustboro_0_0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_2[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/2.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_3[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/3.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_4[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/4.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_5[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/5.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_6[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/6.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_0_7[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/7.4bpp"); + +static const void *const gUnknown_0837BFA4[] = +{ + (void *)(VRAM + 0x5000), + (void *)(VRAM + 0x5080), + (void *)(VRAM + 0x5100), + (void *)(VRAM + 0x5180), + (void *)(VRAM + 0x5200), + (void *)(VRAM + 0x5280), + (void *)(VRAM + 0x5300), + (void *)(VRAM + 0x5380), +}; + +static const u8 *const gTilesetAnimTable_Rustboro_0[] = +{ + TilesetAnimTiles_Rustboro_0_0, + TilesetAnimTiles_Rustboro_0_1, + TilesetAnimTiles_Rustboro_0_2, + TilesetAnimTiles_Rustboro_0_3, + TilesetAnimTiles_Rustboro_0_4, + TilesetAnimTiles_Rustboro_0_5, + TilesetAnimTiles_Rustboro_0_6, + TilesetAnimTiles_Rustboro_0_7, +}; + +static const u8 TilesetAnimTiles_Rustboro_1_0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_Rustboro_1_1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/1.4bpp"); + +static const u8 *const gTilesetAnimTable_Rustboro_1[] = +{ + TilesetAnimTiles_Rustboro_1_0, + TilesetAnimTiles_Rustboro_1_1, +}; + +static const u8 TilesetAnimTiles_Cave_0[] = INCBIN_U8("data/tilesets/secondary/cave/anim/0.4bpp"); +static const u8 TilesetAnimTiles_Cave_1[] = INCBIN_U8("data/tilesets/secondary/cave/anim/1.4bpp"); +static const u8 TilesetAnimTiles_Cave_2[] = INCBIN_U8("data/tilesets/secondary/cave/anim/2.4bpp"); +static const u8 TilesetAnimTiles_Cave_3[] = INCBIN_U8("data/tilesets/secondary/cave/anim/3.4bpp"); +// unused anim tiles for cave +static const u8 TilesetAnimTiles_Cave_4[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/0.4bpp"); +static const u8 TilesetAnimTiles_Cave_5[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/1.4bpp"); +static const u8 TilesetAnimTiles_Cave_6[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/2.4bpp"); +static const u8 TilesetAnimTiles_Cave_7[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/3.4bpp"); +asm(".space 32"); + +static const u8 *const gTilesetAnimTable_Cave[] = +{ + TilesetAnimTiles_Cave_0, + TilesetAnimTiles_Cave_1, + TilesetAnimTiles_Cave_2, + TilesetAnimTiles_Cave_3, +}; + +static const u8 TilesetAnimTiles_EverGrande_0[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/0.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_1[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/1.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_2[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/2.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_3[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/3.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_4[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/4.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_5[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/5.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_6[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/6.4bpp"); +static const u8 TilesetAnimTiles_EverGrande_7[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/7.4bpp"); +asm(".space 32"); + +static const void *const gUnknown_0837C93C[] = +{ + (void *)(VRAM + 0x5C00), + (void *)(VRAM + 0x5C80), + (void *)(VRAM + 0x5D00), + (void *)(VRAM + 0x5D80), + (void *)(VRAM + 0x5E00), + (void *)(VRAM + 0x5E80), + (void *)(VRAM + 0x5F00), + (void *)(VRAM + 0x5F80), +}; + +static const u8 *const gTilesetAnimTable_EverGrande[] = +{ + TilesetAnimTiles_EverGrande_0, + TilesetAnimTiles_EverGrande_1, + TilesetAnimTiles_EverGrande_2, + TilesetAnimTiles_EverGrande_3, + TilesetAnimTiles_EverGrande_4, + TilesetAnimTiles_EverGrande_5, + TilesetAnimTiles_EverGrande_6, + TilesetAnimTiles_EverGrande_7, +}; + +static const u8 TilesetAnimTiles_Building_0[] = INCBIN_U8("data/tilesets/primary/building/anim/0.4bpp"); +static const u8 TilesetAnimTiles_Building_1[] = INCBIN_U8("data/tilesets/primary/building/anim/1.4bpp"); + +static const u8 *const gTilesetAnimTable_Building[] = +{ + TilesetAnimTiles_Building_0, + TilesetAnimTiles_Building_1, +}; + +static const u8 TilesetAnimTiles_SootopolisGym_0_0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_SootopolisGym_0_1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_SootopolisGym_0_2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/2.4bpp"); +static const u8 TilesetAnimTiles_SootopolisGym_1_0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_SootopolisGym_1_1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/1.4bpp"); +static const u8 TilesetAnimTiles_SootopolisGym_1_2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/2.4bpp"); + +static const u8 *const gTilesetAnimTable_SootopolisGym_0[] = +{ + TilesetAnimTiles_SootopolisGym_0_0, + TilesetAnimTiles_SootopolisGym_0_1, + TilesetAnimTiles_SootopolisGym_0_2, +}; + +static const u8 *const gTilesetAnimTable_SootopolisGym_1[] = +{ + TilesetAnimTiles_SootopolisGym_1_0, + TilesetAnimTiles_SootopolisGym_1_1, + TilesetAnimTiles_SootopolisGym_1_2, +}; + +static const u8 TilesetAnimTiles_EliteFour_1_0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/0.4bpp"); +static const u8 TilesetAnimTiles_EliteFour_1_1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/1.4bpp"); +static const u8 TilesetAnimTiles_EliteFour_0_0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/0.4bpp"); +static const u8 TilesetAnimTiles_EliteFour_0_1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/1.4bpp"); +static const u8 TilesetAnimTiles_EliteFour_0_2[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/2.4bpp"); +static const u8 TilesetAnimTiles_EliteFour_0_3[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/3.4bpp"); +asm(".space 32"); + +static const u8 *const gTilesetAnimTable_EliteFour_0[] = +{ + TilesetAnimTiles_EliteFour_0_0, + TilesetAnimTiles_EliteFour_0_1, + TilesetAnimTiles_EliteFour_0_2, + TilesetAnimTiles_EliteFour_0_3, +}; + +static const u8 *const gTilesetAnimTable_EliteFour_1[] = +{ + TilesetAnimTiles_EliteFour_1_0, + TilesetAnimTiles_EliteFour_1_1, +}; + +static const u8 TilesetAnimTiles_MauvilleGym_0[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/0.4bpp"); +static const u8 TilesetAnimTiles_MauvilleGym_1[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/1.4bpp"); +asm(".space 32"); + +static const u8 *const gTilesetAnimTable_MauvilleGym[] = +{ + TilesetAnimTiles_MauvilleGym_0, + TilesetAnimTiles_MauvilleGym_1, +}; + +static const u8 TilesetAnimTiles_BikeShop_0[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/0.4bpp"); +static const u8 TilesetAnimTiles_BikeShop_1[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/1.4bpp"); +asm(".space 32"); + +static const u8 *const gTilesetAnimTable_BikeShop[] = +{ + TilesetAnimTiles_BikeShop_0, + TilesetAnimTiles_BikeShop_1, +}; + static void ClearTilesetAnimDmas(void) { gNumTilesetAnimDmas = 0; CpuFill32(0, &gTilesetAnimDmas, sizeof(gTilesetAnimDmas)); } -static void QueueTilesetAnimDma(void *src, void *dest, u16 size) +static void QueueTilesetAnimDma(const void *src, const void *dest, u16 size) { if (gNumTilesetAnimDmas < 20) { |