commented menu stuff

This commit is contained in:
YamaArashi 2015-02-07 12:27:36 -08:00
parent c9b778fb00
commit 83023cda19
15 changed files with 173 additions and 153 deletions

View file

@ -28,6 +28,26 @@ NPC_MOVEMENT_UP EQU $40
NPC_MOVEMENT_LEFT EQU $80 NPC_MOVEMENT_LEFT EQU $80
NPC_MOVEMENT_RIGHT EQU $C0 NPC_MOVEMENT_RIGHT EQU $C0
; text box IDs
MESSAGE_BOX EQU $01
FIELD_MOVE_MON_MENU EQU $04
JP_MOCHIMONO_MENU_TEMPLATE EQU $05
USE_TOSS_MENU_TEMPLATE EQU $06
JP_SAVE_MESSAGE_MENU_TEMPLATE EQU $08
JP_SPEED_OPTIONS_MENU_TEMPLATE EQU $09
BATTLE_MENU_TEMPLATE EQU $0b
SWITCH_STATS_CANCEL_MENU_TEMPLATE EQU $0c
LIST_MENU_BOX EQU $0d
BUY_SELL_QUIT_MENU_TEMPLATE EQU $0e
MONEY_BOX_TEMPLATE EQU $0f
MON_SPRITE_POPUP EQU $11
JP_AH_MENU_TEMPLATE EQU $12
MONEY_BOX EQU $13
TWO_OPTION_MENU EQU $14
BUY_SELL_QUIT_MENU EQU $15
JP_POKEDEX_MENU_TEMPLATE EQU $1a
SAFARI_BATTLE_MENU_TEMPLATE EQU $1b
; two option menu constants ; two option menu constants
YES_NO_MENU EQU 0 YES_NO_MENU EQU 0
NORTH_WEST_MENU EQU 1 NORTH_WEST_MENU EQU 1

View file

@ -98,7 +98,7 @@ SpecialEffectsCont: ; 3c049 (f:4049)
SlidePlayerAndEnemySilhouettesOnScreen: ; 3c04c (f:404c) SlidePlayerAndEnemySilhouettesOnScreen: ; 3c04c (f:404c)
call LoadPlayerBackPic call LoadPlayerBackPic
ld a, $1 ; the usual text box at the bottom of the screen ld a, MESSAGE_BOX ; the usual text box at the bottom of the screen
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
hlCoord 1, 5 hlCoord 1, 5
@ -1137,7 +1137,7 @@ DoUseNextMonDialogue: ; 3c79b (f:479b)
.displayYesNoBox .displayYesNoBox
hlCoord 13, 9 hlCoord 13, 9
ld bc, $a0e ld bc, $a0e
ld a, $14 ; yes/no text box ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld a, [wd12e] ld a, [wd12e]
@ -1454,7 +1454,7 @@ EnemySendOutFirstMon: ; 3c92a (f:492a)
call PrintText call PrintText
hlCoord 0, 7 hlCoord 0, 7
ld bc,$0801 ld bc,$0801
ld a,$14 ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID call DisplayTextBoxID
ld a,[wCurrentMenuItem] ld a,[wCurrentMenuItem]
@ -2080,9 +2080,9 @@ DisplayBattleMenu: ; 3ceb3 (f:4eb3)
.nonstandardbattle .nonstandardbattle
ld a, [W_BATTLETYPE] ld a, [W_BATTLETYPE]
cp $2 ; safari cp $2 ; safari
ld a, $b ; safari menu id ld a, BATTLE_MENU_TEMPLATE
jr nz, .menuselected jr nz, .menuselected
ld a, $1b ; regular menu id ld a, SAFARI_BATTLE_MENU_TEMPLATE
.menuselected .menuselected
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
@ -2402,7 +2402,7 @@ PartyMenuOrRockOrRun:
call GoBackToPartyMenu call GoBackToPartyMenu
jr .checkIfPartyMonWasSelected jr .checkIfPartyMonWasSelected
.partyMonWasSelected .partyMonWasSelected
ld a, $c ; switch/stats/cancel menu ld a, SWITCH_STATS_CANCEL_MENU_TEMPLATE
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld hl, wTopMenuItemY ld hl, wTopMenuItemY

View file

@ -716,7 +716,7 @@ TradeCenter_Trade:
ld bc, $080b ld bc, $080b
ld a, TRADE_CANCEL_MENU ld a, TRADE_CANCEL_MENU
ld [wTwoOptionMenuID], a ld [wTwoOptionMenuID], a
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
call LoadScreenTilesFromBuffer1 call LoadScreenTilesFromBuffer1

View file

@ -9,10 +9,10 @@ Func_1c98a: ; 1c98a (7:498a)
ld bc, $80f ld bc, $80f
ld a, NO_YES_MENU ld a, NO_YES_MENU
ld [wTwoOptionMenuID], a ld [wTwoOptionMenuID], a
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
and a and a
jp z, Init jp z, Init
callba Func_73b6a callba Func_73b6a

View file

@ -66,7 +66,7 @@ DisplayMonFrontSpriteInBox: ; 5dbd9 (17:5bd9)
xor a xor a
ld [hWY], a ld [hWY], a
call SaveScreenTilesToBuffer1 call SaveScreenTilesToBuffer1
ld a, $11 ld a, MON_SPRITE_POPUP
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
call UpdateSprites call UpdateSprites

View file

@ -2097,7 +2097,7 @@ ItemUseTMHM: ; e479 (3:6479)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc,$080f ld bc,$080f
ld a,$14 ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; yes/no menu call DisplayTextBoxID ; yes/no menu
ld a,[wCurrentMenuItem] ld a,[wCurrentMenuItem]
@ -2488,7 +2488,7 @@ TossItem_: ; e6f1 (3:66f1)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc,$080f ld bc,$080f
ld a,$14 ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; yes/no menu call DisplayTextBoxID ; yes/no menu
ld a,[wd12e] ld a,[wd12e]

View file

@ -1,7 +1,7 @@
LearnMove: ; 6e43 (1:6e43) LearnMove: ; 6e43 (1:6e43)
call SaveScreenTilesToBuffer1 call SaveScreenTilesToBuffer1
ld a, [wWhichPokemon] ; wWhichPokemon ld a, [wWhichPokemon]
ld hl, wPartyMonNicks ; wPartyMonNicks ld hl, wPartyMonNicks
call GetPartyMonName call GetPartyMonName
ld hl, wcd6d ld hl, wcd6d
ld de, wd036 ld de, wd036
@ -9,9 +9,9 @@ LearnMove: ; 6e43 (1:6e43)
call CopyData call CopyData
DontAbandonLearning: ; 6e5b (1:6e5b) DontAbandonLearning: ; 6e5b (1:6e5b)
ld hl, wPartyMon1Moves ; wPartyMon1Moves ld hl, wPartyMon1Moves
ld bc, $2c ld bc, $2c
ld a, [wWhichPokemon] ; wWhichPokemon ld a, [wWhichPokemon]
call AddNTimes call AddNTimes
ld d, h ld d, h
ld e, l ld e, l
@ -43,7 +43,7 @@ DontAbandonLearning: ; 6e5b (1:6e5b)
push hl push hl
push de push de
dec a dec a
ld hl, Moves ; $4000 ld hl, Moves
ld bc, $6 ld bc, $6
call AddNTimes call AddNTimes
ld de, wHPBarMaxHP ld de, wHPBarMaxHP
@ -53,12 +53,12 @@ DontAbandonLearning: ; 6e5b (1:6e5b)
pop de pop de
pop hl pop hl
ld [hl], a ld [hl], a
ld a, [W_ISINBATTLE] ; W_ISINBATTLE ld a, [W_ISINBATTLE]
and a and a
jp z, PrintLearnedMove jp z, PrintLearnedMove
ld a, [wWhichPokemon] ; wWhichPokemon ld a, [wWhichPokemon]
ld b, a ld b, a
ld a, [wPlayerMonNumber] ; wPlayerMonNumber ld a, [wPlayerMonNumber]
cp b cp b
jp nz, PrintLearnedMove jp nz, PrintLearnedMove
ld h, d ld h, d
@ -68,7 +68,7 @@ DontAbandonLearning: ; 6e5b (1:6e5b)
call CopyData call CopyData
ld bc, $11 ld bc, $11
add hl, bc add hl, bc
ld de, wBattleMonPP ; wBattleMonPP ld de, wBattleMonPP
ld bc, $4 ld bc, $4
call CopyData call CopyData
jp PrintLearnedMove jp PrintLearnedMove
@ -78,10 +78,10 @@ AbandonLearning: ; 6eda (1:6eda)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc, $80f ld bc, $80f
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID ; yes/no menu
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
and a and a
jp nz, DontAbandonLearning jp nz, DontAbandonLearning
ld hl, DidNotLearnText ld hl, DidNotLearnText
@ -101,11 +101,11 @@ TryingToLearn: ; 6f07 (1:6f07)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc, $80f ld bc, $80f
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID ; yes/no menu
pop hl pop hl
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
rra rra
ret c ret c
ld bc, $fffc ld bc, $fffc
@ -133,7 +133,7 @@ TryingToLearn: ; 6f07 (1:6f07)
ld a, [$fff6] ld a, [$fff6]
res 2, a res 2, a
ld [$fff6], a ld [$fff6], a
ld hl, wTopMenuItemY ; wTopMenuItemY ld hl, wTopMenuItemY
ld a, $8 ld a, $8
ld [hli], a ld [hli], a
ld a, $5 ld a, $5
@ -158,7 +158,7 @@ TryingToLearn: ; 6f07 (1:6f07)
bit 1, a bit 1, a
jr nz, .asm_6fab jr nz, .asm_6fab
push hl push hl
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
ld c, a ld c, a
ld b, $0 ld b, $0
add hl, bc add hl, bc

View file

@ -2,7 +2,7 @@ AskName: ; 64eb (1:64eb)
call SaveScreenTilesToBuffer1 call SaveScreenTilesToBuffer1
call GetPredefRegisters call GetPredefRegisters
push hl push hl
ld a, [W_ISINBATTLE] ; W_ISINBATTLE ld a, [W_ISINBATTLE]
dec a dec a
ld hl, wTileMap ld hl, wTileMap
ld b, $4 ld b, $4
@ -15,11 +15,11 @@ AskName: ; 64eb (1:64eb)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc, $80f ld bc, $80f
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
pop hl pop hl
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
and a and a
jr nz, .asm_654c jr nz, .asm_654c
ld a, [wUpdateSpritesEnabled] ld a, [wUpdateSpritesEnabled]
@ -30,7 +30,7 @@ AskName: ; 64eb (1:64eb)
ld a, $2 ld a, $2
ld [wd07d], a ld [wd07d], a
call DisplayNamingScreen call DisplayNamingScreen
ld a, [W_ISINBATTLE] ; W_ISINBATTLE ld a, [W_ISINBATTLE]
and a and a
jr nz, .asm_653e jr nz, .asm_653e
call ReloadMapSpriteTilePatterns call ReloadMapSpriteTilePatterns
@ -66,9 +66,9 @@ Func_655c: ; 655c (1:655c)
ld a, [wcf4b] ld a, [wcf4b]
cp $50 cp $50
jr z, .asm_6594 jr z, .asm_6594
ld hl, wPartyMonNicks ; wPartyMonNicks ld hl, wPartyMonNicks
ld bc, $b ld bc, $b
ld a, [wWhichPokemon] ; wWhichPokemon ld a, [wWhichPokemon]
call AddNTimes call AddNTimes
ld e, l ld e, l
ld d, h ld d, h
@ -99,22 +99,22 @@ DisplayNamingScreen: ; 6596 (1:6596)
call TextBoxBorder call TextBoxBorder
call PrintNamingText call PrintNamingText
ld a, $3 ld a, $3
ld [wTopMenuItemY], a ; wTopMenuItemY ld [wTopMenuItemY], a
ld a, $1 ld a, $1
ld [wTopMenuItemX], a ; wTopMenuItemX ld [wTopMenuItemX], a
ld [wLastMenuItem], a ; wLastMenuItem ld [wLastMenuItem], a
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
ld a, $ff ld a, $ff
ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld [wMenuWatchedKeys], a
ld a, $7 ld a, $7
ld [wMaxMenuItem], a ; wMaxMenuItem ld [wMaxMenuItem], a
ld a, $50 ld a, $50
ld [wcf4b], a ld [wcf4b], a
xor a xor a
ld hl, wHPBarMaxHP + 1 ld hl, wHPBarMaxHP + 1
ld [hli], a ld [hli], a
ld [hli], a ld [hli], a
ld [W_SUBANIMTRANSFORM], a ; W_SUBANIMTRANSFORM ld [W_SUBANIMTRANSFORM], a
.asm_65ed .asm_65ed
call PrintAlphabet call PrintAlphabet
call GBPalNormal call GBPalNormal
@ -126,16 +126,16 @@ DisplayNamingScreen: ; 6596 (1:6596)
.asm_65fc .asm_65fc
call PlaceMenuCursor call PlaceMenuCursor
.asm_65ff .asm_65ff
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
push af push af
callba AnimatePartyMon_ForceSpeed1 callba AnimatePartyMon_ForceSpeed1
pop af pop af
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
call JoypadLowSensitivity call JoypadLowSensitivity
ld a, [hJoyPressed] ld a, [hJoyPressed]
and a and a
jr z, .asm_65ff jr z, .asm_65ff
ld hl, .unknownPointerTable_665e ; $665e ld hl, .unknownPointerTable_665e
.asm_661a .asm_661a
sla a sla a
jr c, .asm_6624 jr c, .asm_6624
@ -165,10 +165,10 @@ DisplayNamingScreen: ; 6596 (1:6596)
call GoPAL_SET_CF1C call GoPAL_SET_CF1C
call GBPalNormal call GBPalNormal
xor a xor a
ld [W_SUBANIMTRANSFORM], a ; W_SUBANIMTRANSFORM ld [W_SUBANIMTRANSFORM], a
ld hl, wd730 ld hl, wd730
res 6, [hl] res 6, [hl]
ld a, [W_ISINBATTLE] ; W_ISINBATTLE ld a, [W_ISINBATTLE]
and a and a
jp z, LoadTextBoxTilePatterns jp z, LoadTextBoxTilePatterns
ld hl, LoadHudTilePatterns ld hl, LoadHudTilePatterns
@ -207,21 +207,21 @@ DisplayNamingScreen: ; 6596 (1:6596)
ld [wHPBarMaxHP + 1], a ld [wHPBarMaxHP + 1], a
ret ret
.asm_6692 .asm_6692
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
cp $5 cp $5
jr nz, .asm_66a0 jr nz, .asm_66a0
ld a, [wTopMenuItemX] ; wTopMenuItemX ld a, [wTopMenuItemX]
cp $11 cp $11
jr z, .asm_668c jr z, .asm_668c
.asm_66a0 .asm_66a0
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
cp $6 cp $6
jr nz, .asm_66ae jr nz, .asm_66ae
ld a, [wTopMenuItemX] ; wTopMenuItemX ld a, [wTopMenuItemX]
cp $1 cp $1
jr z, .asm_667e jr z, .asm_667e
.asm_66ae .asm_66ae
ld hl, wMenuCursorLocation ; wMenuCursorLocation ld hl, wMenuCursorLocation
ld a, [hli] ld a, [hli]
ld h, [hl] ld h, [hl]
ld l, a ld l, a
@ -270,10 +270,10 @@ DisplayNamingScreen: ; 6596 (1:6596)
ld [hl], $50 ld [hl], $50
ret ret
.asm_6702 .asm_6702
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
cp $6 cp $6
ret z ret z
ld a, [wTopMenuItemX] ; wTopMenuItemX ld a, [wTopMenuItemX]
cp $11 cp $11
jp z, .asm_6714 jp z, .asm_6714
inc a inc a
@ -283,10 +283,10 @@ DisplayNamingScreen: ; 6596 (1:6596)
ld a, $1 ld a, $1
jr .asm_6755 jr .asm_6755
.asm_6718 .asm_6718
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
cp $6 cp $6
ret z ret z
ld a, [wTopMenuItemX] ; wTopMenuItemX ld a, [wTopMenuItemX]
dec a dec a
jp z, .asm_6728 jp z, .asm_6728
dec a dec a
@ -295,30 +295,30 @@ DisplayNamingScreen: ; 6596 (1:6596)
ld a, $11 ld a, $11
jr .asm_6755 jr .asm_6755
.asm_672c .asm_672c
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
dec a dec a
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
and a and a
ret nz ret nz
ld a, $6 ld a, $6
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
ld a, $1 ld a, $1
jr .asm_6755 jr .asm_6755
.asm_673e .asm_673e
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
inc a inc a
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
cp $7 cp $7
jr nz, .asm_6750 jr nz, .asm_6750
ld a, $1 ld a, $1
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
jr .asm_6755 jr .asm_6755
.asm_6750 .asm_6750
cp $6 cp $6
ret nz ret nz
ld a, $1 ld a, $1
.asm_6755 .asm_6755
ld [wTopMenuItemX], a ; wTopMenuItemX ld [wTopMenuItemX], a
jp EraseMenuCursor jp EraseMenuCursor
LoadEDTile: ; 675b (1:675b) LoadEDTile: ; 675b (1:675b)
@ -402,9 +402,9 @@ Func_680e: ; 680e (1:680e)
jr nz, .asm_6867 jr nz, .asm_6867
call EraseMenuCursor call EraseMenuCursor
ld a, $11 ld a, $11
ld [wTopMenuItemX], a ; wTopMenuItemX ld [wTopMenuItemX], a
ld a, $5 ld a, $5
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
ld a, [wd07d] ld a, [wd07d]
cp $2 cp $2
ld a, $9 ld a, $9
@ -463,10 +463,10 @@ CalcStringLength: ; 68eb (1:68eb)
PrintNamingText: ; 68f8 (1:68f8) PrintNamingText: ; 68f8 (1:68f8)
hlCoord 0, 1 hlCoord 0, 1
ld a, [wd07d] ld a, [wd07d]
ld de, YourTextString ; $693f ld de, YourTextString
and a and a
jr z, .notNickname jr z, .notNickname
ld de, RivalsTextString ; $6945 ld de, RivalsTextString
dec a dec a
jr z, .notNickname jr z, .notNickname
ld a, [wcf91] ld a, [wcf91]
@ -482,13 +482,13 @@ PrintNamingText: ; 68f8 (1:68f8)
add hl, bc add hl, bc
ld [hl], $c9 ld [hl], $c9
hlCoord 1, 3 hlCoord 1, 3
ld de, NicknameTextString ; $6953 ld de, NicknameTextString
jr .placeString jr .placeString
.notNickname .notNickname
call PlaceString call PlaceString
ld l, c ld l, c
ld h, b ld h, b
ld de, NameTextString ; $694d ld de, NameTextString
.placeString .placeString
jp PlaceString jp PlaceString

View file

@ -29,8 +29,8 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
call LoadGBPal call LoadGBPal
jp RedisplayStartMenu jp RedisplayStartMenu
.chosePokemon .chosePokemon
call SaveScreenTilesToBuffer1 ; save screen call SaveScreenTilesToBuffer1
ld a,$04 ld a,FIELD_MOVE_MON_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; display pokemon menu options call DisplayTextBoxID ; display pokemon menu options
ld hl,wWhichTrade ld hl,wWhichTrade
@ -341,7 +341,7 @@ StartMenu_Item: ; 13302 (4:7302)
cp a,BICYCLE cp a,BICYCLE
jp z,.useOrTossItem jp z,.useOrTossItem
.notBicycle1 .notBicycle1
ld a,$06 ; use/toss menu ld a,USE_TOSS_MENU_TEMPLATE
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID call DisplayTextBoxID
ld hl,wTopMenuItemY ld hl,wTopMenuItemY

View file

@ -1,20 +1,20 @@
VendingMachineMenu: ; 74ee0 (1d:4ee0) VendingMachineMenu: ; 74ee0 (1d:4ee0)
ld hl, VendingMachineText1 ld hl, VendingMachineText1
call PrintText call PrintText
ld a, $13 ld a, MONEY_BOX
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
xor a xor a
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
ld [wLastMenuItem], a ; wLastMenuItem ld [wLastMenuItem], a
ld a, $3 ld a, $3
ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld [wMenuWatchedKeys], a
ld a, $3 ld a, $3
ld [wMaxMenuItem], a ; wMaxMenuItem ld [wMaxMenuItem], a
ld a, $5 ld a, $5
ld [wTopMenuItemY], a ; wTopMenuItemY ld [wTopMenuItemY], a
ld a, $1 ld a, $1
ld [wTopMenuItemX], a ; wTopMenuItemX ld [wTopMenuItemX], a
ld hl, wd730 ld hl, wd730
set 6, [hl] set 6, [hl]
hlCoord 0, 3 hlCoord 0, 3
@ -33,7 +33,7 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0)
call HandleMenuInput call HandleMenuInput
bit 1, a bit 1, a
jr nz, .asm_74f93 jr nz, .asm_74f93
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
cp $3 cp $3
jr z, .asm_74f93 jr z, .asm_74f93
xor a xor a
@ -66,10 +66,10 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0)
ld hl, VendingMachineText5 ld hl, VendingMachineText5
call PrintText call PrintText
ld hl, $ffde ld hl, $ffde
ld de, wPlayerMoney + 2 ; wd349 ld de, wPlayerMoney + 2
ld c, $3 ld c, $3
predef SubBCDPredef predef SubBCDPredef
ld a, $13 ld a, MONEY_BOX
ld [wTextBoxID], a ld [wTextBoxID], a
jp DisplayTextBoxID jp DisplayTextBoxID
.BagFull .BagFull

View file

@ -11,10 +11,10 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
ld [wPlayerMonNumber],a ld [wPlayerMonNumber],a
inc a inc a
ld [wcf93],a ld [wcf93],a
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; draw money text box call DisplayTextBoxID ; draw money text box
ld a,$15 ld a,BUY_SELL_QUIT_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; do buy/sell/quit menu call DisplayTextBoxID ; do buy/sell/quit menu
ld hl,wd128 ; pointer to this pokemart's inventory ld hl,wd128 ; pointer to this pokemart's inventory
@ -45,7 +45,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
call SaveScreenTilesToBuffer1 ; save screen call SaveScreenTilesToBuffer1 ; save screen
.sellMenuLoop .sellMenuLoop
call LoadScreenTilesFromBuffer1 ; restore saved screen call LoadScreenTilesFromBuffer1 ; restore saved screen
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; draw money text box call DisplayTextBoxID ; draw money text box
ld hl,wNumBagItems ld hl,wNumBagItems
@ -79,7 +79,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc,$080f ld bc,$080f
ld a,$14 ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; yes/no menu call DisplayTextBoxID ; yes/no menu
ld a,[wd12e] ld a,[wd12e]
@ -119,7 +119,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
call SaveScreenTilesToBuffer1 ; save screen call SaveScreenTilesToBuffer1 ; save screen
.buyMenuLoop .buyMenuLoop
call LoadScreenTilesFromBuffer1 ; restore saved screen call LoadScreenTilesFromBuffer1 ; restore saved screen
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; draw money text box call DisplayTextBoxID ; draw money text box
ld hl,wStringBuffer2 + 11 ld hl,wStringBuffer2 + 11
@ -150,7 +150,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
call PrintText call PrintText
hlCoord 14, 7 hlCoord 14, 7
ld bc,$080f ld bc,$080f
ld a,$14 ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; yes/no menu call DisplayTextBoxID ; yes/no menu
ld a,[wd12e] ld a,[wd12e]
@ -180,7 +180,7 @@ DisplayPokemartDialogue_: ; 6c20 (1:6c20)
jp .buyMenuLoop jp .buyMenuLoop
.returnToMainPokemartMenu .returnToMainPokemartMenu
call LoadScreenTilesFromBuffer1 call LoadScreenTilesFromBuffer1
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; draw money text box call DisplayTextBoxID ; draw money text box
ld hl,PokemartAnythingElseText ld hl,PokemartAnythingElseText

View file

@ -173,10 +173,10 @@ NowSavingString:
SaveSAVConfirm: ; 73768 (1c:7768) SaveSAVConfirm: ; 73768 (1c:7768)
call PrintText call PrintText
hlCoord 0, 7 hlCoord 0, 7
ld bc,$0801 ;arrow's coordinates |b = Y|c = X| ld bc,$0801
ld a,$14 ;one line shifting ($28 = 2 lines) ld a,TWO_OPTION_MENU
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ;handle Yes/No KeyPress call DisplayTextBoxID ; yes/no menu
ld a,[wCurrentMenuItem] ld a,[wCurrentMenuItem]
ret ret

View file

@ -137,7 +137,7 @@ MainSlotMachineLoop: ; 37395 (d:7395)
ld bc, $0d0f ld bc, $0d0f
xor a ; YES_NO_MENU xor a ; YES_NO_MENU
ld [wTwoOptionMenuID], a ld [wTwoOptionMenuID], a
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld a, [wCurrentMenuItem] ld a, [wCurrentMenuItem]

View file

@ -1325,7 +1325,7 @@ AddAmountSoldToMoney:: ; 2b9e (0:2b9e)
ld hl,$ffa1 ; total price of items ld hl,$ffa1 ; total price of items
ld c,3 ; length of money in bytes ld c,3 ; length of money in bytes
predef AddBCDPredef ; add total price to money predef AddBCDPredef ; add total price to money
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; redraw money text box call DisplayTextBoxID ; redraw money text box
ld a, (SFX_02_5a - SFX_Headers_02) / 3 ld a, (SFX_02_5a - SFX_Headers_02) / 3
@ -1398,7 +1398,7 @@ DisplayListMenuID:: ; 2be6 (0:2be6)
ld h,a ; hl = address of the list ld h,a ; hl = address of the list
ld a,[hl] ld a,[hl]
ld [wd12a],a ; [wd12a] = number of list entries ld [wd12a],a ; [wd12a] = number of list entries
ld a,$0d ; list menu text box ID ld a,LIST_MENU_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; draw the menu text box call DisplayTextBoxID ; draw the menu text box
call UpdateSprites ; disable sprites behind the text box call UpdateSprites ; disable sprites behind the text box
@ -2996,7 +2996,7 @@ YesNoChoice:: ; 35ec (0:35ec)
jr DisplayYesNoChoice jr DisplayYesNoChoice
Func_35f4:: ; 35f4 (0:35f4) Func_35f4:: ; 35f4 (0:35f4)
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call InitYesNoTextBoxParameters call InitYesNoTextBoxParameters
jp DisplayTextBoxID jp DisplayTextBoxID
@ -3023,7 +3023,7 @@ Func_361a:: ; 361a (0:361a)
hlCoord 12, 7 hlCoord 12, 7
ld bc, $080d ld bc, $080d
DisplayYesNoChoice:: ; 3628 (0:3628) DisplayYesNoChoice:: ; 3628 (0:3628)
ld a, $14 ld a, TWO_OPTION_MENU
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
jp LoadScreenTilesFromBuffer1 jp LoadScreenTilesFromBuffer1
@ -4193,7 +4193,7 @@ AutoTextBoxDrawingCommon:: ; 3c41 (0:3c41)
PrintText:: ; 3c49 (0:3c49) PrintText:: ; 3c49 (0:3c49)
; Print text hl at (1, 14). ; Print text hl at (1, 14).
push hl push hl
ld a,1 ld a,MESSAGE_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID call DisplayTextBoxID
call UpdateSprites call UpdateSprites

110
main.asm
View file

@ -797,7 +797,7 @@ SubtractAmountPaidFromMoney_: ; 6b21 (1:6b21)
ld hl,$ffa1 ; total price of items ld hl,$ffa1 ; total price of items
ld c,3 ; length of money in bytes ld c,3 ; length of money in bytes
predef SubBCDPredef ; subtract total price from money predef SubBCDPredef ; subtract total price from money
ld a,$13 ld a,MONEY_BOX
ld [wTextBoxID],a ld [wTextBoxID],a
call DisplayTextBoxID ; redraw money text box call DisplayTextBoxID ; redraw money text box
and a and a
@ -1166,7 +1166,7 @@ INCLUDE "engine/overworld/cable_club_npc.asm"
; function to draw various text boxes ; function to draw various text boxes
DisplayTextBoxID_: ; 72ea (1:72ea) DisplayTextBoxID_: ; 72ea (1:72ea)
ld a,[wTextBoxID] ld a,[wTextBoxID]
cp a,$14 cp a,TWO_OPTION_MENU
jp z,DisplayTwoOptionMenu jp z,DisplayTwoOptionMenu
ld c,a ld c,a
ld hl,TextBoxFunctionTable ld hl,TextBoxFunctionTable
@ -1294,9 +1294,9 @@ GetAddressOfScreenCoords: ; 7375 (1:7375)
; 00: text box ID ; 00: text box ID
; 01-02: function address ; 01-02: function address
TextBoxFunctionTable: ; 7387 (1:7387) TextBoxFunctionTable: ; 7387 (1:7387)
dbw $13, Func_74ba dbw MONEY_BOX, DisplayMoneyBox
dbw $15, Func_74ea dbw BUY_SELL_QUIT_MENU, DoBuySellQuitMenu
dbw $04, Func_76e1 dbw FIELD_MOVE_MON_MENU, DisplayFieldMoveMonMenu
db $ff ; terminator db $ff ; terminator
; Format: ; Format:
@ -1306,12 +1306,12 @@ TextBoxFunctionTable: ; 7387 (1:7387)
; 03: column of lower right corner ; 03: column of lower right corner
; 04: row of lower right corner ; 04: row of lower right corner
TextBoxCoordTable: ; 7391 (1:7391) TextBoxCoordTable: ; 7391 (1:7391)
db $01, 0, 12, 19, 17 db MESSAGE_BOX, 0, 12, 19, 17
db $03, 0, 0, 19, 14 db $03, 0, 0, 19, 14
db $07, 0, 0, 11, 6 db $07, 0, 0, 11, 6
db $0d, 4, 2, 19, 12 db LIST_MENU_BOX, 4, 2, 19, 12
db $10, 7, 0, 19, 17 db $10, 7, 0, 19, 17
db $11, 6, 4, 14, 13 db MON_SPRITE_POPUP, 6, 4, 14, 13
db $ff ; terminator db $ff ; terminator
; Format: ; Format:
@ -1325,57 +1325,57 @@ TextBoxCoordTable: ; 7391 (1:7391)
; 08: row of beginning of text ; 08: row of beginning of text
; table of window positions and corresponding text [key, start column, start row, end column, end row, text pointer [2 bytes], text column, text row] ; table of window positions and corresponding text [key, start column, start row, end column, end row, text pointer [2 bytes], text column, text row]
TextBoxTextAndCoordTable: ; 73b0 (1:73b0) TextBoxTextAndCoordTable: ; 73b0 (1:73b0)
db $05 ; text box ID db JP_MOCHIMONO_MENU_TEMPLATE
db 0,0,14,17 ; text box coordinates db 0,0,14,17 ; text box coordinates
dw JapaneseMochimonoText dw JapaneseMochimonoText
db 3,0 ; text coordinates db 3,0 ; text coordinates
db $06 ; text box ID db USE_TOSS_MENU_TEMPLATE
db 13,10,19,14 ; text box coordinates db 13,10,19,14 ; text box coordinates
dw UseTossText dw UseTossText
db 15,11 ; text coordinates db 15,11 ; text coordinates
db $08 ; text box ID db JP_SAVE_MESSAGE_MENU_TEMPLATE
db 0,0,7,5 ; text box coordinates db 0,0,7,5 ; text box coordinates
dw JapaneseSaveMessageText dw JapaneseSaveMessageText
db 2,2 ; text coordinates db 2,2 ; text coordinates
db $09 ; text box ID db JP_SPEED_OPTIONS_MENU_TEMPLATE
db 0,6,5,10 ; text box coordinates db 0,6,5,10 ; text box coordinates
dw JapaneseSpeedOptionsText dw JapaneseSpeedOptionsText
db 2,7 ; text coordinates db 2,7 ; text coordinates
db $0b ; text box ID db BATTLE_MENU_TEMPLATE
db 8,12,19,17 ; text box coordinates db 8,12,19,17 ; text box coordinates
dw BattleMenuText dw BattleMenuText
db 10,14 ; text coordinates db 10,14 ; text coordinates
db $1b ; text box ID db SAFARI_BATTLE_MENU_TEMPLATE
db 0,12,19,17 ; text box coordinates db 0,12,19,17 ; text box coordinates
dw SafariZoneBattleMenuText dw SafariZoneBattleMenuText
db 2,14 ; text coordinates db 2,14 ; text coordinates
db $0c ; text box ID db SWITCH_STATS_CANCEL_MENU_TEMPLATE
db 11,11,19,17 ; text box coordinates db 11,11,19,17 ; text box coordinates
dw SwitchStatsCancelText dw SwitchStatsCancelText
db 13,12 ; text coordinates db 13,12 ; text coordinates
db $0e ; text box ID db BUY_SELL_QUIT_MENU_TEMPLATE
db 0,0,10,6 ; text box coordinates db 0,0,10,6 ; text box coordinates
dw BuySellQuitText dw BuySellQuitText
db 2,1 ; text coordinates db 2,1 ; text coordinates
db $0f ; text box ID db MONEY_BOX_TEMPLATE
db 11,0,19,2 ; text box coordinates db 11,0,19,2 ; text box coordinates
dw MoneyText dw MoneyText
db 13,0 ; text coordinates db 13,0 ; text coordinates
db $12 ; text box ID db JP_AH_MENU_TEMPLATE
db 7,6,11,10 ; text box coordinates db 7,6,11,10 ; text box coordinates
dw JapaneseAhText dw JapaneseAhText
db 8,8 ; text coordinates db 8,8 ; text coordinates
db $1a ; text box ID db JP_POKEDEX_MENU_TEMPLATE
db 11,8,19,17 ; text box coordinates db 11,8,19,17 ; text box coordinates
dw JapanesePokedexMenu dw JapanesePokedexMenu
db 12,10 ; text coordinates db 12,10 ; text coordinates
@ -1431,10 +1431,10 @@ JapanesePokedexMenu: ; 74a1 (1:74a1)
next "ぶんぷをみる" next "ぶんぷをみる"
next "キャンセル@" next "キャンセル@"
Func_74ba: ; 74ba (1:74ba) DisplayMoneyBox: ; 74ba (1:74ba)
ld hl, wd730 ld hl, wd730
set 6, [hl] set 6, [hl]
ld a, $f ld a, MONEY_BOX_TEMPLATE
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
hlCoord 13, 1 hlCoord 13, 1
@ -1442,7 +1442,7 @@ Func_74ba: ; 74ba (1:74ba)
ld c, $6 ld c, $6
call ClearScreenArea call ClearScreenArea
hlCoord 12, 1 hlCoord 12, 1
ld de, wPlayerMoney ; wPlayerMoney ld de, wPlayerMoney
ld c, $a3 ld c, $a3
call PrintBCDNumber call PrintBCDNumber
ld hl, wd730 ld hl, wd730
@ -1452,53 +1452,53 @@ Func_74ba: ; 74ba (1:74ba)
CurrencyString: ; 74e2 (1:74e2) CurrencyString: ; 74e2 (1:74e2)
db " ¥@" db " ¥@"
Func_74ea: ; 74ea (1:74ea) DoBuySellQuitMenu: ; 74ea (1:74ea)
ld a, [wd730] ld a, [wd730]
set 6, a ; no printing delay set 6, a ; no printing delay
ld [wd730], a ld [wd730], a
xor a xor a
ld [wd12d], a ld [wd12d], a
ld a, $e ld a, BUY_SELL_QUIT_MENU_TEMPLATE
ld [wTextBoxID], a ld [wTextBoxID], a
call DisplayTextBoxID call DisplayTextBoxID
ld a, $3 ld a, A_BUTTON | B_BUTTON
ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld [wMenuWatchedKeys], a
ld a, $2 ld a, $2
ld [wMaxMenuItem], a ; wMaxMenuItem ld [wMaxMenuItem], a
ld a, $1 ld a, $1
ld [wTopMenuItemY], a ; wTopMenuItemY ld [wTopMenuItemY], a
ld a, $1 ld a, $1
ld [wTopMenuItemX], a ; wTopMenuItemX ld [wTopMenuItemX], a
xor a xor a
ld [wCurrentMenuItem], a ; wCurrentMenuItem ld [wCurrentMenuItem], a
ld [wLastMenuItem], a ; wLastMenuItem ld [wLastMenuItem], a
ld [wcc37], a ld [wcc37], a
ld a, [wd730] ld a, [wd730]
res 6, a ; turn on the printing delay res 6, a ; turn on the printing delay
ld [wd730], a ld [wd730], a
call HandleMenuInput call HandleMenuInput
call PlaceUnfilledArrowMenuCursor call PlaceUnfilledArrowMenuCursor
bit 0, a bit 0, a ; was A pressed?
jr nz, .asm_7539 jr nz, .pressedA
bit 1, a bit 1, a ; was B pressed? (always true since only A/B are watched)
jr z, .asm_7539 jr z, .pressedA
ld a, $2 ld a, $2
ld [wd12e], a ld [wd12e], a
jr .asm_754c jr .quit
.asm_7539 .pressedA
ld a, $1 ld a, $1
ld [wd12e], a ld [wd12e], a
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
ld [wd12d], a ld [wd12d], a
ld b, a ld b, a
ld a, [wMaxMenuItem] ; wMaxMenuItem ld a, [wMaxMenuItem]
cp b cp b
jr z, .asm_754c jr z, .quit
ret ret
.asm_754c .quit
ld a, $2 ld a, $2
ld [wd12e], a ld [wd12e], a
ld a, [wCurrentMenuItem] ; wCurrentMenuItem ld a, [wCurrentMenuItem]
ld [wd12d], a ld [wd12d], a
scf scf
ret ret
@ -1716,9 +1716,9 @@ TwoOptionMenuStrings: ; 7671 (1:7671)
.HealCancelMenu ; 76d5 (1:36d5) .HealCancelMenu ; 76d5 (1:36d5)
db "HEAL",$4E,"CANCEL@" db "HEAL",$4E,"CANCEL@"
Func_76e1: ; 76e1 (1:36e1) DisplayFieldMoveMonMenu: ; 76e1 (1:36e1)
xor a xor a
ld hl, wWhichTrade ; wWhichTrade ld hl, wWhichTrade
ld [hli], a ld [hli], a
ld [hli], a ld [hli], a
ld [hli], a ld [hli], a
@ -1737,7 +1737,7 @@ Func_76e1: ; 76e1 (1:36e1)
ld a, $c ld a, $c
ld [$fff7], a ld [$fff7], a
hlCoord 13, 12 hlCoord 13, 12
ld de, PokemonMenuEntries ; $77c2 ld de, PokemonMenuEntries
jp PlaceString jp PlaceString
.asm_770f .asm_770f
push af push af
@ -1778,10 +1778,10 @@ Func_76e1: ; 76e1 (1:36e1)
jr nz, .asm_7747 jr nz, .asm_7747
xor a xor a
ld [wTrainerScreenX], a ld [wTrainerScreenX], a
ld de, wWhichTrade ; wWhichTrade ld de, wWhichTrade
.asm_7752 .asm_7752
push hl push hl
ld hl, FieldMoveNames ; $778d ld hl, FieldMoveNames
ld a, [de] ld a, [de]
and a and a
jr z, .asm_7776 jr z, .asm_7776
@ -1817,7 +1817,7 @@ Func_76e1: ; 76e1 (1:36e1)
ld e, a ld e, a
ld d, $0 ld d, $0
add hl, de add hl, de
ld de, PokemonMenuEntries ; $77c2 ld de, PokemonMenuEntries
jp PlaceString jp PlaceString
FieldMoveNames: ; 778d (1:778d) FieldMoveNames: ; 778d (1:778d)
@ -1837,14 +1837,14 @@ PokemonMenuEntries: ; 77c2 (1:77c2)
next "CANCEL@" next "CANCEL@"
GetMonFieldMoves: ; 77d6 (1:77d6) GetMonFieldMoves: ; 77d6 (1:77d6)
ld a, [wWhichPokemon] ; wWhichPokemon ld a, [wWhichPokemon]
ld hl, wPartyMon1Moves ; wPartyMon1Moves ld hl, wPartyMon1Moves
ld bc, $2c ld bc, $2c
call AddNTimes call AddNTimes
ld d, h ld d, h
ld e, l ld e, l
ld c, $5 ld c, $5
ld hl, wWhichTrade ; wWhichTrade ld hl, wWhichTrade
.asm_77e9 .asm_77e9
push hl push hl
.asm_77ea .asm_77ea
@ -1855,7 +1855,7 @@ GetMonFieldMoves: ; 77d6 (1:77d6)
jr z, .asm_7821 jr z, .asm_7821
ld b, a ld b, a
inc de ; go to next move inc de ; go to next move
ld hl, FieldMoveDisplayData ; $7823 ld hl, FieldMoveDisplayData
.asm_77f6 .asm_77f6
ld a, [hli] ld a, [hli]
cp $ff cp $ff