summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
authorZumi Daxuya <daxuya.zumi+code@protonmail.com>2020-12-16 20:59:36 +0700
committerZumi Daxuya <daxuya.zumi+code@protonmail.com>2020-12-16 21:04:40 +0700
commit906ec5730c0ad831f68143b227b850189b0baed9 (patch)
tree1ea572f74ce6199feee30e777bf9e21a9da87b24 /engine
parentdd5fd058034e087165afe5e6b6ffc669781fffd6 (diff)
Disassemble sound test debug menu
Diffstat (limited to 'engine')
-rw-r--r--engine/menu/debug_menu.asm290
1 files changed, 289 insertions, 1 deletions
diff --git a/engine/menu/debug_menu.asm b/engine/menu/debug_menu.asm
index e33d61c..a754c1b 100644
--- a/engine/menu/debug_menu.asm
+++ b/engine/menu/debug_menu.asm
@@ -25,7 +25,7 @@ DebugMenu::
DebugJumpTable::
dw DebugMenuOptionFight
dw DebugMenuOptionField
- dw Function094c ; sound test
+ dw DebugMenuSoundTest ; to home bank
dw DebugMenuOptionSubGames
dw DebugMenuOptionMonsterTest
dw DebugMenuOptionName
@@ -105,3 +105,291 @@ DebugMenuOptionName::
ld a, $e4
ldh [rBGP], a
jp DebugMenu
+
+SECTION "engine/menu/debug_menu.asm@Sound Test", ROMX
+
+_DebugMenuSoundTest::
+ call ClearTileMap
+ call LoadFontExtra
+ call ClearSprites
+ call GetMemSGBLayout
+ xor a
+ ldh [hDebugMenuSoundMenuIndex], a
+ call .DetermineDescriptionPointer
+
+.RefreshScreenAndLoop:
+ call WaitBGMap
+
+.Loop:
+ call ClearJoypad
+ call GetJoypad
+ ldh a, [hJoyDown]
+ and a
+ jr z, .Loop
+
+ bit A_BUTTON_F, a
+ jr nz, .a_pressed
+
+ bit B_BUTTON_F, a
+ jr nz, .b_pressed
+
+ bit START_F, a
+ jr nz, .start_pressed
+
+ bit D_UP_F, a
+ jr nz, .up_pressed
+
+ bit D_DOWN_F, a
+ jr nz, .down_pressed
+
+ ret
+
+.a_pressed
+ ldh a, [hDebugMenuSoundBank]
+ ld c, a
+ ldh a, [hDebugMenuSoundID]
+ jr .RefreshScreenAndLoop
+
+.up_pressed
+ ldh a, [hDebugMenuSoundMenuIndex]
+ inc a
+ cp 55
+ jr nz, .SetIndex
+
+ xor a
+
+.SetIndex:
+ ldh [hDebugMenuSoundMenuIndex], a
+ call .DetermineDescriptionPointer
+ jr .RefreshScreenAndLoop
+
+.down_pressed
+ ldh a, [hDebugMenuSoundMenuIndex]
+ dec a
+ cp -1
+ jr nz, .SetIndex2
+
+ ld a, 54
+
+.SetIndex2:
+ ldh [hDebugMenuSoundMenuIndex], a
+ call .DetermineDescriptionPointer
+ jr .RefreshScreenAndLoop
+
+.start_pressed
+ ldh a, [hDebugMenuSoundBank]
+ ld c, a
+ ld a, -1
+ jr .RefreshScreenAndLoop
+
+.b_pressed
+ ldh a, [hDebugMenuSoundBank]
+ ld c, a
+ ld a, 10
+ ld [wcdb5], a
+ ld [wcdb6], a
+ ld a, -1
+ ld [wcdb4], a
+ jr .RefreshScreenAndLoop
+
+.DetermineDescriptionPointer:
+ ld hl, .TextPointers
+ ldh a, [hDebugMenuSoundMenuIndex]
+ add a
+ add a ; a * 8
+ ld d, 0
+ ld e, a
+ add hl, de
+ ld a, [hli]
+ ldh [hDebugMenuSoundID], a
+ ld a, [hli]
+ ldh [hDebugMenuSoundBank], a
+ ld a, [hli]
+ ld e, a
+ ld d, [hl]
+ call CopyStringToStringBuffer2
+ call .DisplayText
+ ret
+
+.DisplayText:
+ ld hl, hDebugMenuSoundMenuIndex
+ inc [hl]
+ ld hl, .String
+ call PrintText
+ ld hl, hDebugMenuSoundMenuIndex
+ dec [hl]
+ ld c, 3
+ call DelayFrames
+ ret
+
+.String:
+ deciram hDebugMenuSoundMenuIndex, 1, 1
+ text "<LINE>@"
+ text_from_ram wStartDay
+ text " "
+ done
+
+.TextPointers:
+; id? bank? description
+ dbbw $00, $3A, SoundTest_PalletTownText
+ dbbw $00, $3A, SoundTest_PokecenterText
+ dbbw $00, $3A, SoundTest_PokegymText
+ dbbw $07, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $0C, $3A, SoundTest_PokeEvolutionText
+ dbbw $08, $3A, SoundTest_HealingText
+ dbbw $02, $3A, SoundTest_QuestionMarkText
+ dbbw $03, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_QuestionMarkText
+ dbbw $00, $3A, SoundTest_ReservedText
+ dbbw $00, $3A, SoundTest_OakText
+ dbbw $00, $3A, SoundTest_RivalText
+ dbbw $00, $3A, SoundTest_StAnneText
+ dbbw $66, $3A, SoundTest_Fanfare3Text
+ dbbw $68, $3A, SoundTest_Fanfare5Text
+ dbbw $69, $3A, SoundTest_Fanfare6Text
+ dbbw $63, $3A, SoundTest_FanfareText
+ dbbw $21, $3A, SoundTest_FluteText
+ dbbw $04, $3B, SoundTest_BattleText
+ dbbw $05, $3B, SoundTest_BattleText
+ dbbw $00, $3B, SoundTest_BattleText
+ dbbw $00, $3B, SoundTest_ChampionBattleText
+ dbbw $0B, $3B, SoundTest_VictoryText
+ dbbw $00, $3B, SoundTest_VictoryText
+ dbbw $00, $3B, SoundTest_VictoryText
+ dbbw $67, $3B, SoundTest_Fanfare4Text
+ dbbw $68, $3B, SoundTest_Fanfare5Text_2
+ dbbw $6B, $3B, SoundTest_Fanfare8Text
+ dbbw $00, $3C, SoundTest_TitleText
+ dbbw $00, $3C, SoundTest_EndingText
+ dbbw $00, $3C, SoundTest_HallOfFameText
+ dbbw $00, $3C, SoundTest_KenkiYujiyoText
+ dbbw $00, $3C, SoundTest_JigglypuffSongText
+ dbbw $09, $3C, SoundTest_BikeText
+ dbbw $00, $3C, SoundTest_SurfText
+ dbbw $00, $3C, SoundTest_CasinoText
+ dbbw $00, $3C, SoundTest_IntroBattleText
+ dbbw $00, $3C, SoundTest_DungeonText
+ dbbw $00, $3C, SoundTest_DungeonText
+ dbbw $00, $3C, SoundTest_DungeonText
+ dbbw $00, $3C, SoundTest_DungeonText
+ dbbw $00, $3C, SoundTest_TouText
+ dbbw $00, $3C, SoundTest_TouText
+ dbbw $0A, $3C, SoundTest_DealerText
+ dbbw $00, $3C, SoundTest_DealerText
+ dbbw $00, $3C, SoundTest_DealerText
+ dbbw $66, $3C, SoundTest_Fanfare3Text_2
+ dbbw $69, $3C, SoundTest_Fanfare6Text_2
+ dbbw -1 -1, .TextPointers
+
+SoundTest_PalletTownText:
+ db "マサラタウン@"
+
+SoundTest_PokecenterText:
+ db "#センター@"
+
+SoundTest_PokegymText:
+ db "#ジム@"
+
+SoundTest_PokeEvolutionText:
+ db "#しんか@"
+
+SoundTest_HealingText:
+ db "あさあさあさ@"
+
+SoundTest_ReservedText:
+ db "つれていかれる@"
+
+SoundTest_OakText:
+ db "オーキドとともに@"
+
+SoundTest_RivalText:
+ db "ライバル@"
+
+SoundTest_StAnneText:
+ db "サントアンヌゴウ@"
+
+SoundTest_FluteText:
+ db "ふえ@"
+
+SoundTest_BattleText:
+ db "せんとう@"
+
+SoundTest_ChampionBattleText:
+ db "さいしゆうせんとう@"
+
+SoundTest_VictoryText:
+ db "かち@"
+
+SoundTest_FanfareText:
+ db "フぁンファーレ@"
+
+SoundTest_Fanfare3Text:
+ db "フぁンファーレ3@"
+
+SoundTest_Fanfare5Text:
+ db "フぁンファーレ5@"
+
+SoundTest_Fanfare6Text:
+ db "フぁンファーレ6@"
+
+SoundTest_Fanfare4Text:
+ db "フぁンファーレ4@"
+
+SoundTest_Fanfare5Text_2:
+ db "フぁンファーレ5@"
+
+SoundTest_Fanfare8Text:
+ db "フぁンファーレ8@"
+
+SoundTest_Fanfare3Text_2:
+ db "フぁンファーレ3@"
+
+SoundTest_Fanfare6Text_2:
+ db "フぁンファーレ6@"
+
+SoundTest_TitleText:
+ db "タイトル@"
+
+SoundTest_EndingText:
+ db "エンディング@"
+
+SoundTest_HallOfFameText:
+ db "でんどういり@"
+
+SoundTest_KenkiYujiyoText:
+ db "けんきゆうじよ@"
+
+SoundTest_JigglypuffSongText:
+ db "プりンノうた@"
+
+SoundTest_BikeText:
+ db "じてんしや@"
+
+SoundTest_SurfText:
+ db "うみ@"
+
+SoundTest_CasinoText:
+ db "カジノ@"
+
+SoundTest_IntroBattleText:
+ db "オープニングデモ@"
+
+SoundTest_DungeonText:
+ db "どうくつ@"
+
+SoundTest_TouText:
+ db "とう@"
+
+SoundTest_DealerText:
+ db "ディーラー@"
+
+SoundTest_QuestionMarkText:
+ db "?@"
+