diff options
Diffstat (limited to 'engine/menu')
-rw-r--r-- | engine/menu/bills_pc.asm | 214 | ||||
-rwxr-xr-x | engine/menu/diploma.asm | 30 | ||||
-rwxr-xr-x | engine/menu/league_pc.asm | 86 | ||||
-rwxr-xr-x | engine/menu/main_menu.asm | 281 | ||||
-rwxr-xr-x | engine/menu/naming_screen.asm | 198 | ||||
-rwxr-xr-x | engine/menu/oaks_pc.asm | 5 | ||||
-rwxr-xr-x | engine/menu/party_menu.asm | 53 | ||||
-rwxr-xr-x | engine/menu/pc.asm | 12 | ||||
-rwxr-xr-x | engine/menu/players_pc.asm | 101 | ||||
-rwxr-xr-x | engine/menu/pokedex.asm | 195 | ||||
-rwxr-xr-x | engine/menu/prize_menu.asm | 122 | ||||
-rwxr-xr-x | engine/menu/start_menu.asm | 16 | ||||
-rwxr-xr-x | engine/menu/start_sub_menus.asm | 312 | ||||
-rwxr-xr-x | engine/menu/status_screen.asm | 207 | ||||
-rwxr-xr-x | engine/menu/vending_machine.asm | 38 |
15 files changed, 846 insertions, 1024 deletions
diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index 0c468a2b..3edaadd8 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -2,13 +2,13 @@ Func_213c8:: ; 213c8 (8:53c8) xor a ld [H_AUTOBGTRANSFERENABLED], a ; $ffba call SaveScreenTilesToBuffer2 - ld a, [$d5a2] + ld a, [wd5a2] and a jr nz, .asm_213f3 - ld a, [$d74b] + ld a, [wd74b] bit 5, a jr z, .asm_213ea - ld a, [$d5a2] + ld a, [wd5a2] and a jr nz, .asm_213f3 ld hl, wTileMap @@ -28,70 +28,62 @@ Func_213c8:: ; 213c8 (8:53c8) call TextBoxBorder call UpdateSprites ld a, $3 - ld [wMaxMenuItem], a ; $cc28 - ld a, [$d7f1] + ld [wMaxMenuItem], a ; wMaxMenuItem + ld a, [wd7f1] bit 0, a jr nz, .asm_21414 - FuncCoord 2, 2 ; $c3ca - ld hl, Coord + hlCoord 2, 2 ld de, SomeonesPCText ; $548b jr .asm_2141a .asm_21414 - FuncCoord 2, 2 ; $c3ca - ld hl, Coord + hlCoord 2, 2 ld de, BillsPCText ; $5497 .asm_2141a call PlaceString - FuncCoord 2, 4 ; $c3f2 - ld hl, Coord - ld de, W_PLAYERNAME ; $d158 + hlCoord 2, 4 + ld de, wPlayerName ; wd158 call PlaceString ld l, c ld h, b ld de, PlayersPCText ; $54a0 call PlaceString - ld a, [$d74b] + ld a, [wd74b] bit 5, a jr z, .asm_21462 - FuncCoord 2, 6 ; $c41a - ld hl, Coord + hlCoord 2, 6 ld de, OaksPCText ; $54a5 call PlaceString - ld a, [$d5a2] + ld a, [wd5a2] and a jr z, .asm_2145a ld a, $4 - ld [wMaxMenuItem], a ; $cc28 - FuncCoord 2, 8 ; $c442 - ld hl, Coord + ld [wMaxMenuItem], a ; wMaxMenuItem + hlCoord 2, 8 ld de, PKMNLeaguePCText ; $54b2 call PlaceString - FuncCoord 2, 10 ; $c46a - ld hl, Coord + hlCoord 2, 10 ld de, LogOffPCText ; $54ba jr .asm_2146d .asm_2145a - FuncCoord 2, 8 ; $c442 - ld hl, Coord + hlCoord 2, 8 ld de, LogOffPCText ; $54ba jr .asm_2146d .asm_21462 ld a, $2 - ld [wMaxMenuItem], a ; $cc28 - FuncCoord 2, 6 ; $c41a - ld hl, Coord + ld [wMaxMenuItem], a ; wMaxMenuItem + hlCoord 2, 6 ld de, LogOffPCText ; $54ba .asm_2146d call PlaceString ld a, $3 - ld [wMenuWatchedKeys], a ; $cc29 + ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld a, $2 - ld [wTopMenuItemY], a ; $cc24 + ld [wTopMenuItemY], a ; wTopMenuItemY ld a, $1 - ld [wTopMenuItemX], a ; $cc25 + ld [wTopMenuItemX], a ; wTopMenuItemX xor a - ld [wCurrentMenuItem], a ; $cc26 - ld [wLastMenuItem], a ; $cc2a + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wLastMenuItem], a ; wLastMenuItem ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a ; $ffba ret @@ -116,14 +108,14 @@ LogOffPCText: ; 214ba (8:54ba) Func_214c2:: ; 214c2 (8:54c2) BillsPC_:: ; 0x214c2 - ld hl, $d730 + ld hl, wd730 set 6, [hl] xor a - ld [$ccd3], a + ld [wccd3], a inc a ; MONSTER_NAME ld [W_LISTTYPE], a call LoadHpBarAndStatusTilePatterns - ld a, [wListScrollOffset] ; $cc36 + ld a, [wListScrollOffset] ; wcc36 push af ld a, [wFlags_0xcd60] bit 3, a @@ -135,9 +127,9 @@ BillsPC_:: ; 0x214c2 Func_214e8: ; 214e8 (8:54e8) BillsPCMenu: - ld a, [$ccd3] - ld [wCurrentMenuItem], a ; $cc26 - ld hl, $9780 + ld a, [wccd3] + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld hl, vChars2 + $780 ld de, PokeballTileGraphics ; $697e ld bc, (BANK(PokeballTileGraphics) << 8) + $01 call CopyVideoData @@ -146,11 +138,10 @@ BillsPCMenu: ld b, $a ld c, $c call TextBoxBorder - FuncCoord 2, 2 ; $c3ca - ld hl, Coord + hlCoord 2, 2 ld de, BillsPCMenuText ; $56e1 call PlaceString - ld hl, wTopMenuItemY ; $cc24 + ld hl, wTopMenuItemY ; wTopMenuItemY ld a, $2 ld [hli], a dec a @@ -164,34 +155,30 @@ BillsPCMenu: xor a ld [hli], a ld [hli], a - ld hl, wListScrollOffset ; $cc36 + ld hl, wListScrollOffset ; wcc36 ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; $cc2f + ld [wPlayerMonNumber], a ; wPlayerMonNumber ld hl, WhatText call PrintText - FuncCoord 9, 14 ; $c4c1 - ld hl, Coord + hlCoord 9, 14 ld b, $2 ld c, $9 call TextBoxBorder - ld a, [$d5a0] + ld a, [wd5a0] and $7f cp $9 jr c, .asm_2154f sub $9 - FuncCoord 17, 16 ; $c4f1 - ld hl, Coord + hlCoord 17, 16 ld [hl], $f7 add $f6 jr .asm_21551 .asm_2154f add $f7 .asm_21551 - FuncCoord 18, 16 ; $c4f2 - ld [Coord], a - FuncCoord 10, 16 ; $c4ea - ld hl, Coord + Coorda 18, 16 + hlCoord 10, 16 ld de, BoxNoPCText ; $5713 call PlaceString ld a, $1 @@ -201,8 +188,8 @@ BillsPCMenu: bit 1, a jp nz, Func_21588 ; b button call PlaceUnfilledArrowMenuCursor - ld a, [wCurrentMenuItem] ; $cc26 - ld [$ccd3], a + ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld [wccd3], a and a jp z, Func_21618 ; withdraw cp $1 @@ -225,44 +212,44 @@ Func_21588: ; 21588 (8:5588) res 5, [hl] call LoadScreenTilesFromBuffer2 pop af - ld [wListScrollOffset], a ; $cc36 - ld hl, $d730 + ld [wListScrollOffset], a ; wcc36 + ld hl, wd730 res 6, [hl] ret Func_215ac: ; 215ac (8:55ac) BillsPCDeposit: - ld a, [W_NUMINPARTY] ; $d163 + ld a, [wPartyCount] ; wPartyCount dec a jr nz, .asm_215bb ld hl, CantDepositLastMonText call PrintText jp BillsPCMenu .asm_215bb - ld a, [W_NUMINBOX] ; $da80 + ld a, [W_NUMINBOX] ; wda80 cp $14 jr nz, .asm_215cb ld hl, BoxFullText ; $5802 call PrintText jp BillsPCMenu .asm_215cb - ld hl, W_NUMINPARTY ; $d163 + ld hl, wPartyCount ; wPartyCount call Func_216be jp c, BillsPCMenu call Func_2174b jp nc, BillsPCMenu - ld a, [$cf91] + ld a, [wcf91] call GetCryData call PlaySoundWaitForCurrent ld a, $1 - ld [$cf95], a + ld [wcf95], a call Func_3a68 xor a - ld [$cf95], a + ld [wcf95], a call RemovePokemon call WaitForSoundToFinish - ld hl, wWhichTrade ; $cd3d - ld a, [$d5a0] + ld hl, wWhichTrade ; wWhichTrade + ld a, [wd5a0] and $7f cp $9 jr c, .asm_2160a @@ -281,36 +268,36 @@ BillsPCDeposit: jp BillsPCMenu Func_21618: ; 21618 (8:5618) - ld a, [W_NUMINBOX] ; $da80 + ld a, [W_NUMINBOX] ; wda80 and a jr nz, .asm_21627 ld hl, NoMonText ; $580c call PrintText jp Func_214e8 .asm_21627 - ld a, [W_NUMINPARTY] ; $d163 + ld a, [wPartyCount] ; wPartyCount cp $6 jr nz, .asm_21637 ld hl, CantTakeMonText ; $5811 call PrintText jp Func_214e8 .asm_21637 - ld hl, W_NUMINBOX ; $da80 + ld hl, W_NUMINBOX ; wda80 call Func_216be jp c, Func_214e8 call Func_2174b jp nc, Func_214e8 - ld a, [wWhichPokemon] ; $cf92 - ld hl, $de06 + ld a, [wWhichPokemon] ; wWhichPokemon + ld hl, wBoxMonNicks call GetPartyMonName - ld a, [$cf91] + ld a, [wcf91] call GetCryData call PlaySoundWaitForCurrent xor a - ld [$cf95], a + ld [wcf95], a call Func_3a68 ld a, $1 - ld [$cf95], a + ld [wcf95], a call RemovePokemon call WaitForSoundToFinish ld hl, MonIsTakenOutText ; $5807 @@ -318,27 +305,27 @@ Func_21618: ; 21618 (8:5618) jp Func_214e8 Func_21673: ; 21673 (8:5673) - ld a, [W_NUMINBOX] ; $da80 + ld a, [W_NUMINBOX] ; wda80 and a jr nz, .asm_21682 ld hl, NoMonText ; $580c call PrintText jp Func_214e8 .asm_21682 - ld hl, W_NUMINBOX ; $da80 + ld hl, W_NUMINBOX ; wda80 call Func_216be jp c, Func_214e8 ld hl, OnceReleasedText ; $581b call PrintText call YesNoChoice - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem and a jr nz, .asm_21682 inc a - ld [$cf95], a + ld [wcf95], a call RemovePokemon call WaitForSoundToFinish - ld a, [$cf91] + ld a, [wcf91] call PlayCry ld hl, MonWasReleasedText ; $5820 call PrintText @@ -350,19 +337,19 @@ Func_216b3: ; 216b3 (8:56b3) Func_216be: ; 216be (8:56be) ld a, l - ld [$cf8b], a + ld [wcf8b], a ld a, h - ld [$cf8c], a + ld [wcf8c], a xor a - ld [$cf93], a - ld [wListMenuID], a ; $cf94 + ld [wcf93], a + ld [wListMenuID], a ; wListMenuID inc a ; MONSTER_NAME ld [W_LISTTYPE], a - ld a, [$cc2b] - ld [wCurrentMenuItem], a ; $cc26 + ld a, [wcc2b] + ld [wCurrentMenuItem], a ; wCurrentMenuItem call DisplayListMenuID - ld a, [wCurrentMenuItem] ; $cc26 - ld [$cc2b], a + ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld [wcc2b], a ret BillsPCMenuText: ; 216e1 (8:56e1) @@ -372,21 +359,21 @@ BoxNoPCText: ; 21713 (8:5713) db "BOX No.@" Func_2171b:: ; 2171b (8:571b) - ld hl, $d173 - ld bc, $002c + ld hl, wPartyMon1Moves + ld bc, wPartyMon2 - wPartyMon1 jr .asm_21729 ; 0x21721 $6 - ld hl, $da9e - ld bc, $0021 + ld hl, wBoxMon1Moves + ld bc, wBoxMon2 - wBoxMon1 .asm_21729 - ld a, [$cf92] + ld a, [wWhichPokemon] call AddNTimes - ld b, $4 + ld b, NUM_MOVES .asm_21731 ld a, [hli] push hl push bc ld hl, HMMoveArray ; $5745 - ld de, $0001 + ld de, 1 call IsInArray pop bc pop hl @@ -405,25 +392,22 @@ HMMoveArray: ; 21745 (8:5745) db $ff Func_2174b: ; 2174b (8:574b) - FuncCoord 9, 10 ; $c471 - ld hl, Coord + hlCoord 9, 10 ld b, $6 ld c, $9 call TextBoxBorder - ld a, [$ccd3] + ld a, [wccd3] and a ld de, DepositPCText ; $57cb jr nz, .asm_21761 ld de, WithdrawPCText ; $57d3 .asm_21761 - FuncCoord 11, 12 ; $c49b - ld hl, Coord + hlCoord 11, 12 call PlaceString - FuncCoord 11, 14 ; $c4c3 - ld hl, Coord + hlCoord 11, 14 ld de, StatsCancelPCText ; $57dc call PlaceString - ld hl, wTopMenuItemY ; $cc24 + ld hl, wTopMenuItemY ; wTopMenuItemY ld a, $c ld [hli], a ld a, $a @@ -437,16 +421,16 @@ Func_2174b: ; 2174b (8:574b) ld [hli], a xor a ld [hl], a - ld hl, wListScrollOffset ; $cc36 + ld hl, wListScrollOffset ; wcc36 ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; $cc2f - ld [$cc2b], a + ld [wPlayerMonNumber], a ; wPlayerMonNumber + ld [wcc2b], a .asm_2178f call HandleMenuInput bit 1, a jr nz, .asm_2179f - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem and a jr z, .asm_217a1 dec a @@ -459,17 +443,15 @@ Func_2174b: ; 2174b (8:574b) ret .asm_217a3 call SaveScreenTilesToBuffer1 - ld a, [$ccd3] + ld a, [wccd3] and a ld a, $0 jr nz, .asm_217b0 ld a, $2 .asm_217b0 - ld [$cc49], a - ld a, $36 - call Predef ; indirect jump to StatusScreen (12953 (4:6953)) - ld a, $37 - call Predef ; indirect jump to StatusScreen2 (12b57 (4:6b57)) + ld [wcc49], a + predef StatusScreen + predef StatusScreen2 call LoadScreenTilesFromBuffer1 call ReloadTilesetTilePatterns call GoPAL_SET_CF1C @@ -537,16 +519,16 @@ PrintJustAMomentText1:: ; 5824 (8:5825) ld a, [$ffaa] cp $1 ret z - ld a, [$c109] + ld a, [wSpriteStateData1 + 9] cp $c ret nz - ld a, [$d35e] + ld a, [W_CURMAP] cp $ef ld a, $2 jr z, .asm_2183a inc a .asm_2183a - ld [$d12b], a + ld [W_ISLINKBATTLE], a call EnableAutoTextBoxDrawing ld a, $22 jp PrintPredefTextID @@ -555,16 +537,16 @@ PrintJustAMomentText2:: ; 5845 (8:5845) ld a, [$ffaa] cp $2 ret z - ld a, [$c109] + ld a, [wSpriteStateData1 + 9] cp $8 ret nz - ld a, [$d35e] + ld a, [W_CURMAP] cp $ef ld a, $2 jr z, .asm_2185a inc a .asm_2185a - ld [$d12b], a + ld [W_ISLINKBATTLE], a call EnableAutoTextBoxDrawing ld a, $22 jp PrintPredefTextID @@ -573,7 +555,7 @@ JustAMomentText:: ; 21865 (8:5865) TX_FAR _JustAMomentText db "@" - ld a, [$c109] + ld a, [wSpriteStateData1 + 9] cp $4 ret nz call EnableAutoTextBoxDrawing diff --git a/engine/menu/diploma.asm b/engine/menu/diploma.asm index 3b9413a2..023c6177 100755 --- a/engine/menu/diploma.asm +++ b/engine/menu/diploma.asm @@ -3,19 +3,18 @@ DisplayDiploma: ; 566e2 (15:66e2) call GBPalWhiteOutWithDelay3 call ClearScreen xor a - ld [$cfcb], a - ld hl, $d730 + ld [wcfcb], a + ld hl, wd730 set 6, [hl] call DisableLCD ld hl, CircleTile ; $7d88 - ld de, $9700 + ld de, vChars2 + $700 ld bc, $0010 ld a, BANK(CircleTile) call FarCopyData2 ld hl, wTileMap ld bc, $1012 - ld a, $27 - call Predef + predef Func_5ab0 ld hl, DiplomaTextPointersAndCoords ; $6784 ld c, $5 .asm_56715 @@ -34,12 +33,11 @@ DisplayDiploma: ; 566e2 (15:66e2) pop bc dec c jr nz, .asm_56715 ; 0x56725 $ee - FuncCoord 10, 4 ; $c3fa - ld hl, Coord - ld de, W_PLAYERNAME + hlCoord 10, 4 + ld de, wPlayerName call PlaceString callba Func_44dd - ld hl, $c301 + ld hl, wOAMBuffer + $01 ld bc, $8028 .asm_5673e ld a, [hl] @@ -60,7 +58,7 @@ DisplayDiploma: ; 566e2 (15:66e2) ld a, $90 ld [$ff48], a call WaitForTextScrollButtonPress - ld hl, $d730 + ld hl, wd730 res 6, [hl] call GBPalWhiteOutWithDelay3 call Func_3dbe @@ -68,7 +66,7 @@ DisplayDiploma: ; 566e2 (15:66e2) jp GBPalNormal Func_56777: ; 56777 (15:6777) - ld hl, W_PLAYERNAME + ld hl, wPlayerName ld bc, $ff00 .asm_5677d ld a, [hli] @@ -79,15 +77,15 @@ Func_56777: ; 56777 (15:6777) DiplomaTextPointersAndCoords: ; 56784 (15:6784) dw DiplomaText - dw $c3cd + dw wTileMap + $2d dw DiplomaPlayer - dw $c3f3 + dw wTileMap + $53 dw DiplomaEmptyText - dw $c3ff + dw wTileMap + $5f dw DiplomaCongrats - dw $c41a + dw wTileMap + $7a dw DiplomaGameFreak - dw $c4e9 + dw wTileMap + $149 DiplomaText: db $70,"Diploma",$70,"@" diff --git a/engine/menu/league_pc.asm b/engine/menu/league_pc.asm index 5e4e3436..4833e57d 100755 --- a/engine/menu/league_pc.asm +++ b/engine/menu/league_pc.asm @@ -1,37 +1,37 @@ PKMNLeaguePC: ; 0x7657e ld hl, AccessedHoFPCText call PrintText - ld hl, $D730 + ld hl, wd730 set 6, [hl] push hl - ld a, [$CFCB] + ld a, [wcfcb] push af ld a, [$ffD7] push af xor a ld [$ffD7], a ld [W_SPRITEFLIPPED], a - ld [$CFCB], a - ld [$CD41], a - ld [$CD42], a - ld a, [$D5A2] + ld [wcfcb], a + ld [wTrainerScreenX], a + ld [wcd42], a + ld a, [wd5a2] ld b, a - cp a, $33 + cp NUM_HOF_TEAMS + 1 jr c, .first - ld b, $32 + ld b, NUM_HOF_TEAMS sub b - ld [$CD42], a + ld [wcd42], a .first - ld hl, $CD42 + ld hl, wcd42 inc [hl] push bc - ld a, [$CD41] - ld [$CD3D], a - callba Func_73b3f + ld a, [wTrainerScreenX] + ld [wWhichTrade], a + callba LoadHallOfFameTeams call Func_765e5 pop bc jr c, .second - ld hl, $CD41 + ld hl, wTrainerScreenX inc [hl] ld a, [hl] cp b @@ -40,7 +40,7 @@ PKMNLeaguePC: ; 0x7657e pop af ld [$ffD7], a pop af - ld [$CFCB], a + ld [wcfcb], a pop hl res 6, [hl] call GBPalWhiteOutWithDelay3 @@ -49,28 +49,28 @@ PKMNLeaguePC: ; 0x7657e jp GBPalNormal Func_765e5: ; 765e5 (1d:65e5) - ld c, 6 -.third + ld c, PARTY_LENGTH +.loop push bc call Func_76610 call WaitForTextScrollButtonPress - ld a, [H_CURRENTPRESSEDBUTTONS] + ld a, [hJoyHeld] bit 1, a - jr nz, .fifth - ld hl, $CC6B - ld de, $CC5B - ld bc, $0050 + jr nz, .exit + ld hl, wHallOfFame + HOF_MON + ld de, wHallOfFame + ld bc, HOF_TEAM - HOF_MON call CopyData pop bc - ld a, [$CC5B] - cp a, $FF - jr z, .fourth + ld a, [wHallOfFame + 0] + cp $ff + jr z, .done dec c - jr nz, .third -.fourth + jr nz, .loop +.done and a ret -.fifth +.exit pop bc scf ret @@ -78,38 +78,34 @@ Func_765e5: ; 765e5 (1d:65e5) Func_76610: ; 76610 (1d:6610) call GBPalWhiteOutWithDelay3 call ClearScreen - ld hl, $CC5B + ld hl, wHallOfFame ld a, [hli] - ld [$CD3D], a - ld [$CF91], a - ld [$D0B5], a - ld [$CFD9], a - ld [$CF1D], a + ld [wWhichTrade], a + ld [wcf91], a + ld [wd0b5], a + ld [wBattleMonSpecies2], a + ld [wcf1d], a ld a, [hli] - ld [$CD3F], a - ld de, $CD6D + ld [wTrainerFacingDirection], a + ld de, wcd6d ld bc, $000B call CopyData ld b, $0B ld c, 0 call GoPAL_SET - FuncCoord 12, 5 ; $c410 - ld hl, Coord + hlCoord 12, 5 call GetMonHeader call LoadFrontSpriteByMonIndex call GBPalNormal - FuncCoord 0, 13 ; $c4a4 - ld hl, Coord + hlCoord 0, 13 ld b, 2 ld c, $12 call TextBoxBorder - FuncCoord 1, 15 ; $c4cd - ld hl, Coord + hlCoord 1, 15 ld de, HallOfFameNoText call PlaceString - FuncCoord 16, 15 ; $c4dc - ld hl, Coord - ld de, $CD42 + hlCoord 16, 15 + ld de, wcd42 ld bc, $0103 call PrintNumber ld b, BANK(Func_702f0) diff --git a/engine/menu/main_menu.asm b/engine/menu/main_menu.asm index 7e34feca..4044da43 100755 --- a/engine/menu/main_menu.asm +++ b/engine/menu/main_menu.asm @@ -2,82 +2,77 @@ MainMenu: ; 5af2 (1:5af2) ; Check save file call Func_5bff xor a - ld [$D08A],a + ld [wd08a],a inc a - ld [$D088],a + ld [wd088],a call Func_609e jr nc,.next0 ; Predef 52 loads the save from SRAM to RAM - ld a,$52 - call Predef + predef LoadSAV .next0 ld c,20 call DelayFrames xor a - ld [$D12B],a - ld hl,$CC2B + ld [W_ISLINKBATTLE],a + ld hl,wcc2b ld [hli],a ld [hli],a ld [hli],a ld [hl],a - ld [$D07C],a - ld hl,$D72E + ld [W_ANIMATIONID],a + ld hl,wd72e res 6,[hl] call ClearScreen call GoPAL_SET_CF1C call LoadTextBoxTilePatterns call LoadFontTilePatterns - ld hl,$D730 + ld hl,wd730 set 6,[hl] - ld a,[$D088] + ld a,[wd088] cp a,1 jr z,.next1 - FuncCoord 0,0 - ld hl,Coord + hlCoord 0, 0 ld b,6 ld c,13 call TextBoxBorder - FuncCoord 2,2 - ld hl,Coord + hlCoord 2, 2 ld de,ContinueText call PlaceString jr .next2 .next1 - FuncCoord 0,0 - ld hl,Coord + hlCoord 0, 0 ld b,4 ld c,13 call TextBoxBorder - FuncCoord 2,2 - ld hl,Coord + hlCoord 2, 2 ld de,NewGameText call PlaceString .next2 - ld hl,$D730 + ld hl,wd730 res 6,[hl] call UpdateSprites ; OAM? xor a - ld [$CC26],a - ld [$CC2A],a - ld [$CC34],a + ld [wCurrentMenuItem],a + ld [wLastMenuItem],a + ld [wMenuJoypadPollCount],a inc a - ld [$CC25],a + ld [wTopMenuItemX],a inc a - ld [$CC24],a + ld [wTopMenuItemY],a ld a,$B - ld [$CC29],a - ld a,[$D088] - ld [$CC28],a + ld [wMenuWatchedKeys],a + ld a,[wd088] + ld [wMaxMenuItem],a call HandleMenuInput bit 1,a jp nz,LoadTitlescreenGraphics ; load title screen (gfx and arrangement) ld c,20 call DelayFrames - ld a,[$CC26] + ld a,[wCurrentMenuItem] ld b,a - ld a,[$D088] + ld a,[wd088] cp a,2 jp z,.next3 inc b ; adjust MenuArrow_Counter @@ -89,19 +84,19 @@ MainMenu: ; 5af2 (1:5af2) jp z,Func_5d52 ; if press_A on NewGame call DisplayOptionMenu ; if press_a on Options ld a,1 - ld [$D08A],a + ld [wd08a],a jp .next0 .next4 call ContinueGame - ld hl,$D126 + ld hl,wd126 set 5,[hl] .next6 xor a - ld [H_NEWLYPRESSEDBUTTONS],a - ld [H_NEWLYRELEASEDBUTTONS],a - ld [H_CURRENTPRESSEDBUTTONS],a - call GetJoypadState - ld a,[H_CURRENTPRESSEDBUTTONS] + ld [hJoyPressed],a + ld [hJoyReleased],a + ld [hJoyHeld],a + call Joypad + ld a,[hJoyHeld] bit 0,a jr nz,.next5 bit 1,a @@ -111,52 +106,50 @@ MainMenu: ; 5af2 (1:5af2) call GBPalWhiteOutWithDelay3 call ClearScreen ld a,4 - ld [$D52A],a + ld [wd52a],a ld c,10 call DelayFrames - ld a,[$D5A2] + ld a,[wd5a2] and a jp z,Func_5d5f ld a,[W_CURMAP] ; map ID cp a,HALL_OF_FAME jp nz,Func_5d5f xor a - ld [$D71A],a - ld hl,$D732 + ld [wd71a],a + ld hl,wd732 set 2,[hl] call Func_62ce jp Func_5d5f Func_5bff: ; 5bff (1:5bff) ld a,1 - ld [$D358],a + ld [wd358],a ld a,3 - ld [$D355],a + ld [W_OPTIONS],a ret LinkMenu: ; 5c0a (1:5c0a) xor a - ld [$d358], a - ld hl, $d72e + ld [wd358], a + ld hl, wd72e set 6, [hl] ld hl, TextTerminator_6b20 ; $6b20 call PrintText call SaveScreenTilesToBuffer1 ld hl, WhereWouldYouLikeText call PrintText - FuncCoord 5, 5 ; $c409 - ld hl, Coord + hlCoord 5, 5 ld b, $6 ld c, $d call TextBoxBorder call UpdateSprites - FuncCoord 7, 7 ; $c433 - ld hl, Coord + hlCoord 7, 7 ld de, TradeCenterText call PlaceString xor a - ld [$cd37], a - ld [$d72d], a - ld hl, wTopMenuItemY ; $cc24 + ld [wcd37], a + ld [wd72d], a + ld hl, wTopMenuItemY ; wTopMenuItemY ld a, $7 ld [hli], a ld a, $6 @@ -176,19 +169,19 @@ LinkMenu: ; 5c0a (1:5c0a) add a add a ld b, a - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem add b add $d0 - ld [$cc42], a - ld [$cc43], a + ld [wcc42], a + ld [wcc43], a .asm_5c66 call Func_2247 - ld a, [$cc3d] + ld a, [wcc3d] ld b, a and $f0 cp $d0 jr z, .asm_5c7d - ld a, [$cc3e] + ld a, [wcc3e] ld b, a and $f0 cp $d0 @@ -197,12 +190,12 @@ LinkMenu: ; 5c0a (1:5c0a) ld a, b and $c jr nz, .asm_5c8b - ld a, [$cc42] + ld a, [wcc42] and $c jr z, .asm_5c52 jr .asm_5ca1 .asm_5c8b - ld a, [$cc42] + ld a, [wcc42] and $c jr z, .asm_5c98 ld a, [$ffaa] @@ -210,9 +203,9 @@ LinkMenu: ; 5c0a (1:5c0a) jr z, .asm_5ca1 .asm_5c98 ld a, b - ld [$cc42], a + ld [wcc42], a and $3 - ld [wCurrentMenuItem], a ; $cc26 + ld [wCurrentMenuItem], a ; wCurrentMenuItem .asm_5ca1 ld a, [$ffaa] cp $2 @@ -225,10 +218,10 @@ LinkMenu: ; 5c0a (1:5c0a) ld b, $7f ld c, $7f ld d, $ec - ld a, [$cc42] + ld a, [wcc42] and $8 jr nz, .asm_5ccc - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $2 jr z, .asm_5ccc ld c, d @@ -239,58 +232,55 @@ LinkMenu: ; 5c0a (1:5c0a) ld c, d .asm_5ccc ld a, b - FuncCoord 6, 7 ; $c432 - ld [Coord], a + Coorda 6, 7 ld a, c - FuncCoord 6, 9 ; $c45a - ld [Coord], a + Coorda 6, 9 ld a, d - FuncCoord 6, 11 ; $c482 - ld [Coord], a + Coorda 6, 11 ld c, $28 call DelayFrames call LoadScreenTilesFromBuffer1 - ld a, [$cc42] + ld a, [wcc42] and $8 jr nz, .asm_5d2d - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $2 jr z, .asm_5d2d xor a - ld [$d700], a - ld a, [wCurrentMenuItem] ; $cc26 + ld [wd700], a + ld a, [wCurrentMenuItem] ; wCurrentMenuItem and a ld a, TRADE_CENTER jr nz, .asm_5cfc ld a, BATTLE_CENTER .asm_5cfc - ld [$d72d], a + ld [wd72d], a ld hl, PleaseWaitText call PrintText ld c, $32 call DelayFrames - ld hl, $d732 + ld hl, wd732 res 1, [hl] - ld a, [W_ANIMATIONID] ; $d07c - ld [$d71a], a + ld a, [W_ANIMATIONID] ; W_ANIMATIONID + ld [wd71a], a call Func_62ce ld c, $14 call DelayFrames xor a - ld [wMenuJoypadPollCount], a ; $cc34 - ld [$cc42], a + ld [wMenuJoypadPollCount], a ; wMenuJoypadPollCount + ld [wcc42], a inc a - ld [W_ISLINKBATTLE], a ; $d12b - ld [$cc47], a + ld [W_ISLINKBATTLE], a ; W_ISLINKBATTLE + ld [wcc47], a jr Func_5d5f .asm_5d2d xor a - ld [wMenuJoypadPollCount], a ; $cc34 + ld [wMenuJoypadPollCount], a ; wMenuJoypadPollCount call Delay3 call Func_72d7 ld hl, LinkCanceledText call PrintText - ld hl, $d72e + ld hl, wd72e res 6, [hl] ret @@ -307,7 +297,7 @@ LinkCanceledText: ; 5d4d (1:5d4d) db "@" Func_5d52: ; 5d52 (1:5d52) - ld hl, $d732 + ld hl, wd732 res 1, [hl] call OakSpeech ld c, $14 @@ -315,16 +305,16 @@ Func_5d52: ; 5d52 (1:5d52) Func_5d5f: ; 5d5f (1:5d5f) xor a - ld [H_NEWLYPRESSEDBUTTONS], a - ld [H_CURRENTPRESSEDBUTTONS], a + ld [hJoyPressed], a + ld [hJoyHeld], a ld [$ffb5], a - ld [$d72d], a - ld hl, $d732 + ld [wd72d], a + ld hl, wd732 set 0, [hl] call ResetPlayerSpriteData ld c, $14 call DelayFrames - ld a, [$cc47] + ld a, [wcc47] and a ret nz jp EnterMap @@ -344,27 +334,21 @@ TradeCenterText: ; 5d97 (1:5d97) ContinueGame: ; 5db5 (1:5db5) xor a ld [H_AUTOBGTRANSFERENABLED], a ; $ffba - FuncCoord 4, 7 ; $c430 - ld hl, Coord + hlCoord 4, 7 ld b, $8 ld c, $e call TextBoxBorder - FuncCoord 5, 9 ; $c459 - ld hl, Coord + hlCoord 5, 9 ld de, SaveScreenInfoText call PlaceString - FuncCoord 12, 9 ; $c460 - ld hl, Coord - ld de, W_PLAYERNAME ; $d158 + hlCoord 12, 9 + ld de, wPlayerName ; wd158 call PlaceString - FuncCoord 17, 11 ; $c48d - ld hl, Coord + hlCoord 17, 11 call Func_5e2f - FuncCoord 16, 13 ; $c4b4 - ld hl, Coord + hlCoord 16, 13 call Func_5e42 - FuncCoord 13, 15 ; $c4d9 - ld hl, Coord + hlCoord 13, 15 call Func_5e55 ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a ; $ffba @@ -374,23 +358,23 @@ ContinueGame: ; 5db5 (1:5db5) PrintSaveScreenText: ; 5def (1:5def) xor a ld [H_AUTOBGTRANSFERENABLED], a - ld hl, $c3a4 + ld hl, wTileMap + $4 ld b, $8 ld c, $e call TextBoxBorder call LoadTextBoxTilePatterns call UpdateSprites - ld hl, $c3cd + ld hl, wTileMap + $2d ld de, SaveScreenInfoText call PlaceString - ld hl, $c3d4 - ld de, W_PLAYERNAME + ld hl, wTileMap + $34 + ld de, wPlayerName call PlaceString - ld hl, $c401 + ld hl, wTileMap + $61 call Func_5e2f - ld hl, $c428 + ld hl, wTileMap + $88 call Func_5e42 - ld hl, $c44d + ld hl, wTileMap + $ad call Func_5e55 ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a @@ -403,27 +387,27 @@ Func_5e2f: ; 5e2f (1:5e2f) ld b, $1 call CountSetBits pop hl - ld de, $d11e + ld de, wd11e ld bc, $102 jp PrintNumber Func_5e42: ; 5e42 (1:5e42) push hl - ld hl, wPokedexOwned ; $d2f7 + ld hl, wPokedexOwned ; wPokedexOwned ld b, wPokedexOwnedEnd - wPokedexOwned call CountSetBits pop hl - ld de, $d11e + ld de, wd11e ld bc, $103 jp PrintNumber Func_5e55: ; 5e55 (1:5e55) - ld de, $da41 + ld de, W_PLAYTIMEHOURS + 1 ld bc, $103 call PrintNumber ld [hl], $6d inc hl - ld de, $da43 + ld de, W_PLAYTIMEMINUTES + 1 ld bc, $8102 jp PrintNumber @@ -434,47 +418,40 @@ SaveScreenInfoText: ; 5e6a (1:5e6a) next "TIME@" DisplayOptionMenu: ; 5e8a (1:5e8a) - FuncCoord 0,0 - ld hl,Coord + hlCoord 0, 0 ld b,3 ld c,18 call TextBoxBorder - FuncCoord 0,5 - ld hl,Coord + hlCoord 0, 5 ld b,3 ld c,18 call TextBoxBorder - FuncCoord 0,10 - ld hl,Coord + hlCoord 0, 10 ld b,3 ld c,18 call TextBoxBorder - FuncCoord 1,1 - ld hl,Coord + hlCoord 1, 1 ld de,TextSpeedOptionText call PlaceString - FuncCoord 1,6 - ld hl,Coord + hlCoord 1, 6 ld de,BattleAnimationOptionText call PlaceString - FuncCoord 1,11 - ld hl,Coord + hlCoord 1, 11 ld de,BattleStyleOptionText call PlaceString - FuncCoord 2,16 - ld hl,Coord + hlCoord 2, 16 ld de,OptionMenuCancelText call PlaceString xor a ld [wCurrentMenuItem],a ld [wLastMenuItem],a inc a - ld [$d358],a - ld [$cd40],a + ld [wd358],a + ld [wTrainerScreenY],a ld a,3 ; text speed cursor Y coordinate ld [wTopMenuItemY],a call SetCursorPositionsFromOptions - ld a,[$cd3d] ; text speed cursor X coordinate + ld a,[wWhichTrade] ; text speed cursor X coordinate ld [wTopMenuItemX],a ld a,$01 ld [H_AUTOBGTRANSFERENABLED],a ; enable auto background transfer @@ -483,7 +460,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) call PlaceMenuCursor call SetOptionsFromCursorPositions .getJoypadStateLoop - call GetJoypadStateLowSensitivity + call JoypadLowSensitivity ld a,[$ffb5] ld b,a and a,%11111011 ; any key besides select pressed? @@ -524,7 +501,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .downPressed cp a,16 ld b,-13 - ld hl,$cd3d + ld hl,wWhichTrade jr z,.updateMenuVariables ld b,5 cp a,3 @@ -539,7 +516,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .upPressed cp a,8 ld b,-5 - ld hl,$cd3d + ld hl,wWhichTrade jr z,.updateMenuVariables cp a,13 inc hl @@ -558,17 +535,17 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) call PlaceUnfilledArrowMenuCursor jp .loop .cursorInBattleAnimation - ld a,[$cd3e] ; battle animation cursor X coordinate + ld a,[wTrainerEngageDistance] ; battle animation cursor X coordinate xor a,$0b ; toggle between 1 and 10 - ld [$cd3e],a + ld [wTrainerEngageDistance],a jp .eraseOldMenuCursor .cursorInBattleStyle - ld a,[$cd3f] ; battle style cursor X coordinate + ld a,[wTrainerFacingDirection] ; battle style cursor X coordinate xor a,$0b ; toggle between 1 and 10 - ld [$cd3f],a + ld [wTrainerFacingDirection],a jp .eraseOldMenuCursor .pressedLeftInTextSpeed - ld a,[$cd3d] ; text speed cursor X coordinate + ld a,[wWhichTrade] ; text speed cursor X coordinate cp a,1 jr z,.updateTextSpeedXCoord cp a,7 @@ -579,7 +556,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) sub a,7 jr .updateTextSpeedXCoord .pressedRightInTextSpeed - ld a,[$cd3d] ; text speed cursor X coordinate + ld a,[wWhichTrade] ; text speed cursor X coordinate cp a,14 jr z,.updateTextSpeedXCoord cp a,7 @@ -589,7 +566,7 @@ DisplayOptionMenu: ; 5e8a (1:5e8a) .fromFastToMedium add a,6 .updateTextSpeedXCoord - ld [$cd3d],a ; text speed cursor X coordinate + ld [wWhichTrade],a ; text speed cursor X coordinate jp .eraseOldMenuCursor TextSpeedOptionText: ; 5fc0 (1:5fc0) @@ -610,7 +587,7 @@ OptionMenuCancelText: ; 6018 (1:6018) ; sets the options variable according to the current placement of the menu cursors in the options menu SetOptionsFromCursorPositions: ; 601f (1:601f) ld hl,TextSpeedOptionData - ld a,[$cd3d] ; text speed cursor X coordinate + ld a,[wWhichTrade] ; text speed cursor X coordinate ld c,a .loop ld a,[hli] @@ -621,7 +598,7 @@ SetOptionsFromCursorPositions: ; 601f (1:601f) .textSpeedMatchFound ld a,[hl] ld d,a - ld a,[$cd3e] ; battle animation cursor X coordinate + ld a,[wTrainerEngageDistance] ; battle animation cursor X coordinate dec a jr z,.battleAnimationOn .battleAnimationOff @@ -630,7 +607,7 @@ SetOptionsFromCursorPositions: ; 601f (1:601f) .battleAnimationOn res 7,d .checkBattleStyle - ld a,[$cd3f] ; battle style cursor X coordinate + ld a,[wTrainerFacingDirection] ; battle style cursor X coordinate dec a jr z,.battleStyleShift .battleStyleSet @@ -655,31 +632,27 @@ SetCursorPositionsFromOptions: ; 604c (1:604c) pop bc dec hl ld a,[hl] - ld [$cd3d],a ; text speed cursor X coordinate - FuncCoord 0,3 - ld hl,Coord + ld [wWhichTrade],a ; text speed cursor X coordinate + hlCoord 0, 3 call .placeUnfilledRightArrow sla c ld a,1 ; On jr nc,.storeBattleAnimationCursorX ld a,10 ; Off .storeBattleAnimationCursorX - ld [$cd3e],a ; battle animation cursor X coordinate - FuncCoord 0,8 - ld hl,Coord + ld [wTrainerEngageDistance],a ; battle animation cursor X coordinate + hlCoord 0, 8 call .placeUnfilledRightArrow sla c ld a,1 jr nc,.storeBattleStyleCursorX ld a,10 .storeBattleStyleCursorX - ld [$cd3f],a ; battle style cursor X coordinate - FuncCoord 0,13 - ld hl,Coord + ld [wTrainerFacingDirection],a ; battle style cursor X coordinate + hlCoord 0, 13 call .placeUnfilledRightArrow ; cursor in front of Cancel - FuncCoord 0,16 - ld hl,Coord + hlCoord 0, 16 ld a,1 .placeUnfilledRightArrow ld e,a diff --git a/engine/menu/naming_screen.asm b/engine/menu/naming_screen.asm index ea6f7de7..17aa96e6 100755 --- a/engine/menu/naming_screen.asm +++ b/engine/menu/naming_screen.asm @@ -1,37 +1,36 @@ -AskForMonNickname: ; 64eb (1:64eb) +AskName: ; 64eb (1:64eb) call SaveScreenTilesToBuffer1 - call Load16BitRegisters + call GetPredefRegisters push hl - ld a, [W_ISINBATTLE] ; $d057 + ld a, [W_ISINBATTLE] ; W_ISINBATTLE dec a ld hl, wTileMap ld b, $4 ld c, $b call z, ClearScreenArea ; only if in wild batle - ld a, [$cf91] - ld [$d11e], a + ld a, [wcf91] + ld [wd11e], a call GetMonName ld hl, DoYouWantToNicknameText call PrintText - FuncCoord 14, 7 ; $c43a - ld hl, Coord + hlCoord 14, 7 ld bc, $80f ld a, $14 - ld [$d125], a + ld [wd125], a call DisplayTextBoxID pop hl - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem and a jr nz, .asm_654c - ld a, [$cfcb] + ld a, [wcfcb] push af xor a - ld [$cfcb], a + ld [wcfcb], a push hl ld a, $2 - ld [$d07d], a + ld [wd07d], a call DisplayNamingScreen - ld a, [W_ISINBATTLE] ; $d057 + ld a, [W_ISINBATTLE] ; W_ISINBATTLE and a jr nz, .asm_653e call Func_3e08 @@ -39,14 +38,14 @@ AskForMonNickname: ; 64eb (1:64eb) call LoadScreenTilesFromBuffer1 pop hl pop af - ld [$cfcb], a - ld a, [$cf4b] + ld [wcfcb], a + ld a, [wcf4b] cp $50 ret nz .asm_654c ld d, h ld e, l - ld hl, $cd6d + ld hl, wcd6d ld bc, $000b jp CopyData @@ -55,25 +54,25 @@ DoYouWantToNicknameText: ; 0x6557 db "@" Func_655c: ; 655c (1:655c) - ld hl, $cee9 + ld hl, wHPBarMaxHP xor a - ld [$cfcb], a + ld [wcfcb], a ld a, $2 - ld [$d07d], a + ld [wd07d], a call DisplayNamingScreen call GBPalWhiteOutWithDelay3 call Func_3dbe call LoadGBPal - ld a, [$cf4b] + ld a, [wcf4b] cp $50 jr z, .asm_6594 - ld hl, W_PARTYMON1NAME ; $d2b5 + ld hl, wPartyMonNicks ; wPartyMonNicks ld bc, $b - ld a, [wWhichPokemon] ; $cf92 + ld a, [wWhichPokemon] ; wWhichPokemon call AddNTimes ld e, l ld d, h - ld hl, $cee9 + ld hl, wHPBarMaxHP ld bc, $b call CopyData and a @@ -84,7 +83,7 @@ Func_655c: ; 655c (1:655c) DisplayNamingScreen: ; 6596 (1:6596) push hl - ld hl, $d730 + ld hl, wd730 set 6, [hl] call GBPalWhiteOutWithDelay3 call ClearScreen @@ -94,47 +93,46 @@ DisplayNamingScreen: ; 6596 (1:6596) call LoadHpBarAndStatusTilePatterns call LoadEDTile callba Func_7176c - FuncCoord 0, 4 ; $c3f0 - ld hl, Coord + hlCoord 0, 4 ld b, $9 ld c, $12 call TextBoxBorder call PrintNamingText ld a, $3 - ld [wTopMenuItemY], a ; $cc24 + ld [wTopMenuItemY], a ; wTopMenuItemY ld a, $1 - ld [wTopMenuItemX], a ; $cc25 - ld [wLastMenuItem], a ; $cc2a - ld [wCurrentMenuItem], a ; $cc26 + ld [wTopMenuItemX], a ; wTopMenuItemX + ld [wLastMenuItem], a ; wLastMenuItem + ld [wCurrentMenuItem], a ; wCurrentMenuItem ld a, $ff - ld [wMenuWatchedKeys], a ; $cc29 + ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld a, $7 - ld [wMaxMenuItem], a ; $cc28 + ld [wMaxMenuItem], a ; wMaxMenuItem ld a, $50 - ld [$cf4b], a + ld [wcf4b], a xor a - ld hl, $ceea + ld hl, wHPBarMaxHP + 1 ld [hli], a ld [hli], a - ld [W_SUBANIMTRANSFORM], a ; $d08b + ld [W_SUBANIMTRANSFORM], a ; W_SUBANIMTRANSFORM .asm_65ed call PrintAlphabet call GBPalNormal .asm_65f3 - ld a, [$ceea] + ld a, [wHPBarMaxHP + 1] and a jr nz, .asm_662d call Func_680e .asm_65fc call PlaceMenuCursor .asm_65ff - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem push af callba AnimatePartyMon_ForceSpeed1 pop af - ld [wCurrentMenuItem], a ; $cc26 - call GetJoypadStateLowSensitivity - ld a, [H_NEWLYPRESSEDBUTTONS] + ld [wCurrentMenuItem], a ; wCurrentMenuItem + call JoypadLowSensitivity + ld a, [hJoyPressed] and a jr z, .asm_65ff ld hl, .unknownPointerTable_665e ; $665e @@ -158,19 +156,19 @@ DisplayNamingScreen: ; 6596 (1:6596) jp [hl] .asm_662d pop de - ld hl, $cf4b + ld hl, wcf4b ld bc, $b call CopyData call GBPalWhiteOutWithDelay3 call ClearScreen - call CleanLCD_OAM + call ClearSprites call GoPAL_SET_CF1C call GBPalNormal xor a - ld [W_SUBANIMTRANSFORM], a ; $d08b - ld hl, $d730 + ld [W_SUBANIMTRANSFORM], a ; W_SUBANIMTRANSFORM + ld hl, wd730 res 6, [hl] - ld a, [W_ISINBATTLE] ; $d057 + ld a, [W_ISINBATTLE] ; W_ISINBATTLE and a jp z, LoadTextBoxTilePatterns ld hl, Func_3ee5b @@ -200,52 +198,52 @@ DisplayNamingScreen: ; 6596 (1:6596) ld de, .asm_65ed ; $65ed push de .asm_6683 - ld a, [$ceeb] + ld a, [wHPBarOldHP] xor $1 - ld [$ceeb], a + ld [wHPBarOldHP], a ret .asm_668c ld a, $1 - ld [$ceea], a + ld [wHPBarMaxHP + 1], a ret .asm_6692 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $5 jr nz, .asm_66a0 - ld a, [wTopMenuItemX] ; $cc25 + ld a, [wTopMenuItemX] ; wTopMenuItemX cp $11 jr z, .asm_668c .asm_66a0 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $6 jr nz, .asm_66ae - ld a, [wTopMenuItemX] ; $cc25 + ld a, [wTopMenuItemX] ; wTopMenuItemX cp $1 jr z, .asm_667e .asm_66ae - ld hl, wMenuCursorLocation ; $cc30 + ld hl, wMenuCursorLocation ; wMenuCursorLocation ld a, [hli] ld h, [hl] ld l, a inc hl ld a, [hl] - ld [$ceed], a + ld [wHPBarNewHP], a call CalcStringLength - ld a, [$ceed] + ld a, [wHPBarNewHP] cp $e5 ld de, Dakutens ; $6885 jr z, .asm_66e3 cp $e4 ld de, Handakutens ; $68d6 jr z, .asm_66e3 - ld a, [$d07d] + ld a, [wd07d] cp $2 jr nc, .checkMonNameLength - ld a, [$cee9] + ld a, [wHPBarMaxHP] cp $7 ; max length of player/rival names jr .checkNameLength .checkMonNameLength - ld a, [$cee9] + ld a, [wHPBarMaxHP] cp $a ; max length of pokemon nicknames .checkNameLength jr c, .addLetter @@ -257,14 +255,14 @@ DisplayNamingScreen: ; 6596 (1:6596) ret nc dec hl .addLetter - ld a, [$ceed] + ld a, [wHPBarNewHP] ld [hli], a ld [hl], $50 ld a, (SFX_02_40 - SFX_Headers_02) / 3 call PlaySound ret .deleteLetter - ld a, [$cee9] + ld a, [wHPBarMaxHP] and a ret z call CalcStringLength @@ -272,10 +270,10 @@ DisplayNamingScreen: ; 6596 (1:6596) ld [hl], $50 ret .asm_6702 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $6 ret z - ld a, [wTopMenuItemX] ; $cc25 + ld a, [wTopMenuItemX] ; wTopMenuItemX cp $11 jp z, .asm_6714 inc a @@ -285,10 +283,10 @@ DisplayNamingScreen: ; 6596 (1:6596) ld a, $1 jr .asm_6755 .asm_6718 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $6 ret z - ld a, [wTopMenuItemX] ; $cc25 + ld a, [wTopMenuItemX] ; wTopMenuItemX dec a jp z, .asm_6728 dec a @@ -297,35 +295,35 @@ DisplayNamingScreen: ; 6596 (1:6596) ld a, $11 jr .asm_6755 .asm_672c - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem dec a - ld [wCurrentMenuItem], a ; $cc26 + ld [wCurrentMenuItem], a ; wCurrentMenuItem and a ret nz ld a, $6 - ld [wCurrentMenuItem], a ; $cc26 + ld [wCurrentMenuItem], a ; wCurrentMenuItem ld a, $1 jr .asm_6755 .asm_673e - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem inc a - ld [wCurrentMenuItem], a ; $cc26 + ld [wCurrentMenuItem], a ; wCurrentMenuItem cp $7 jr nz, .asm_6750 ld a, $1 - ld [wCurrentMenuItem], a ; $cc26 + ld [wCurrentMenuItem], a ; wCurrentMenuItem jr .asm_6755 .asm_6750 cp $6 ret nz ld a, $1 .asm_6755 - ld [wTopMenuItemX], a ; $cc25 + ld [wTopMenuItemX], a ; wTopMenuItemX jp EraseMenuCursor LoadEDTile: ; 675b (1:675b) ld de, ED_Tile - ld hl, $8f00 + ld hl, vFont + $700 ld bc, $1 jp CopyVideoDataDouble @@ -335,14 +333,13 @@ ED_Tile: ; 6767 (1:6767) PrintAlphabet: ; 676f (1:676f) xor a ld [H_AUTOBGTRANSFERENABLED], a ; $ffba - ld a, [$ceeb] + ld a, [wHPBarOldHP] and a ld de, LowerCaseAlphabet ; $679e jr nz, .asm_677e ld de, UpperCaseAlphabet ; $67d6 .asm_677e - FuncCoord 2, 5 ; $c406 - ld hl, Coord + hlCoord 2, 5 ld bc, $509 .asm_6784 push bc @@ -372,18 +369,15 @@ UpperCaseAlphabet: ; 67d6 (1:67d6) Func_680e: ; 680e (1:680e) call CalcStringLength ld a, c - ld [$cee9], a - FuncCoord 10, 2 ; $c3d2 - ld hl, Coord + ld [wHPBarMaxHP], a + hlCoord 10, 2 ld bc, $10a call ClearScreenArea - FuncCoord 10, 2 ; $c3d2 - ld hl, Coord - ld de, $cf4b + hlCoord 10, 2 + ld de, wcf4b call PlaceString - FuncCoord 10, 3 ; $c3e6 - ld hl, Coord - ld a, [$d07d] + hlCoord 10, 3 + ld a, [wd07d] cp $2 jr nc, .asm_6835 ld b, $7 @@ -396,9 +390,9 @@ Func_680e: ; 680e (1:680e) ld [hli], a dec b jr nz, .asm_6839 - ld a, [$d07d] + ld a, [wd07d] cp $2 - ld a, [$cee9] + ld a, [wHPBarMaxHP] jr nc, .asm_684b cp $7 jr .asm_684d @@ -408,10 +402,10 @@ Func_680e: ; 680e (1:680e) jr nz, .asm_6867 call EraseMenuCursor ld a, $11 - ld [wTopMenuItemX], a ; $cc25 + ld [wTopMenuItemX], a ; wTopMenuItemX ld a, $5 - ld [wCurrentMenuItem], a ; $cc26 - ld a, [$d07d] + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld a, [wd07d] cp $2 ld a, $9 jr nc, .asm_6867 @@ -419,8 +413,7 @@ Func_680e: ; 680e (1:680e) .asm_6867 ld c, a ld b, $0 - FuncCoord 10, 3 ; $c3e6 - ld hl, Coord + hlCoord 10, 3 add hl, bc ld [hl], $77 ret @@ -436,7 +429,7 @@ Func_6871: ; 6871 (1:6871) ret nc inc hl ld a, [hl] - ld [$ceed], a + ld [wHPBarNewHP], a ret Dakutens: ; 6885 (1:6885) @@ -455,9 +448,9 @@ Handakutens: ; 68d6 (1:68d6) db "ハパ", "ヒピ", "フプ", "へぺ", "ホポ" db $ff -; calculates the length of the string at $cf4b and stores it in c +; calculates the length of the string at wcf4b and stores it in c CalcStringLength: ; 68eb (1:68eb) - ld hl, $cf4b + ld hl, wcf4b ld c, $0 .asm_68f0 ld a, [hl] @@ -468,30 +461,27 @@ CalcStringLength: ; 68eb (1:68eb) jr .asm_68f0 PrintNamingText: ; 68f8 (1:68f8) - FuncCoord 0, 1 ; $c3b4 - ld hl, Coord - ld a, [$d07d] + hlCoord 0, 1 + ld a, [wd07d] ld de, YourTextString ; $693f and a jr z, .notNickname ld de, RivalsTextString ; $6945 dec a jr z, .notNickname - ld a, [$cf91] - ld [$cd5d], a + ld a, [wcf91] + ld [wcd5d], a push af callba Func_71882 pop af - ld [$d11e], a + ld [wd11e], a call GetMonName - FuncCoord 4, 1 ; $c3b8 - ld hl, Coord + hlCoord 4, 1 call PlaceString ld hl, $1 add hl, bc ld [hl], $c9 - FuncCoord 1, 3 ; $c3dd - ld hl, Coord + hlCoord 1, 3 ld de, NicknameTextString ; $6953 jr .placeString .notNickname diff --git a/engine/menu/oaks_pc.asm b/engine/menu/oaks_pc.asm index 937786c1..6e7edda2 100755 --- a/engine/menu/oaks_pc.asm +++ b/engine/menu/oaks_pc.asm @@ -5,11 +5,10 @@ OpenOaksPC: ; 1e915 (7:6915) ld hl, GetDexRatedText call PrintText call YesNoChoice - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem and a jr nz, .asm_1e932 - ld a, $56 - call Predef ; indirect jump to DisplayDexRating (44169 (11:4169)) + predef DisplayDexRating .asm_1e932 ld hl, ClosedOaksPCText call PrintText diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm index dbb6a40e..4e47361b 100755 --- a/engine/menu/party_menu.asm +++ b/engine/menu/party_menu.asm @@ -1,4 +1,4 @@ -; [$D07D] = menu type / message ID +; [wd07d] = menu type / message ID ; if less than $F0, it is a menu type ; menu types: ; 00: normal pokemon menu (e.g. Start menu) @@ -25,18 +25,17 @@ DrawPartyMenu_: ; 12cd2 (4:6cd2) callba Func_71791 ; load pokemon icon graphics RedrawPartyMenu_: ; 12ce3 (4:6ce3) - ld a,[$D07D] + ld a,[wd07d] cp a,$04 jp z,.printMessage call ErasePartyMenuCursors - callba SendBlkPacket_PartyMenu ; loads some data to $cf2e - FuncCoord 3,0 - ld hl,Coord - ld de,W_PARTYMON1 + callba SendBlkPacket_PartyMenu ; loads some data to wcf2e + hlCoord 3, 0 + ld de,wPartySpecies xor a ld c,a ld [$FF8C],a ; loop counter - ld [$CF2D],a + ld [wcf2d],a .loop ld a,[de] cp a,$FF ; reached the terminator? @@ -46,7 +45,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) push hl ld a,c push hl - ld hl,W_PARTYMON1NAME + ld hl,wPartyMonNicks call GetPartyMonName pop hl call PlaceString ; print the pokemon's name @@ -58,7 +57,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) call LoadMonData pop hl push hl - ld a,[$CC35] + ld a,[wcc35] and a ; is the player swapping pokemon positions? jr z,.skipUnfilledRightArrow ; if the player is swapping pokemon positions @@ -76,7 +75,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) inc hl inc hl .skipUnfilledRightArrow - ld a,[$D07D] ; menu type + ld a,[wd07d] ; menu type cp a,$03 jr z,.teachMoveMenu cp a,$05 @@ -84,7 +83,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) push hl ld bc,14 ; 14 columns to the right add hl,bc - ld de,$CF9C + ld de,wcf9c call PrintStatusCondition pop hl push hl @@ -93,8 +92,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) set 0,a ld [$FFF6],a add hl,bc - ld a,$60 - call Predef ; draw HP bar and prints current / max HP + predef Func_128f6 ; draw HP bar and prints current / max HP ld a,[$FFF6] res 0,a ld [$FFF6],a @@ -103,8 +101,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) jr .printLevel .teachMoveMenu push hl - ld a,$43 - call Predef ; check if the pokemon can learn the move + predef CanLearnTM ; check if the pokemon can learn the move pop hl ld de,.ableToLearnMoveText ld a,c @@ -137,25 +134,25 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) push hl ld hl,EvosMovesPointerTable ld b,0 - ld a,[$CF98] ; pokemon ID + ld a,[wcf98] ; pokemon ID dec a add a rl b ld c,a add hl,bc - ld de,$CD6D + ld de,wcd6d ld a,BANK(EvosMovesPointerTable) ld bc,2 call FarCopyData - ld hl,$CD6D + ld hl,wcd6d ld a,[hli] ld h,[hl] ld l,a - ld de,$CD6D + ld de,wcd6d ld a,BANK(EvosMovesPointerTable) ld bc,13 call FarCopyData - ld hl,$CD6D + ld hl,wcd6d ld de,.notAbleToEvolveText ; loop through the pokemon's evolution entries .checkEvolutionsLoop @@ -170,7 +167,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) dec hl dec hl ld b,[hl] - ld a,[$D156] ; evolution stone item ID + ld a,[wd156] ; evolution stone item ID inc hl inc hl inc hl @@ -194,12 +191,12 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) ld b,$0A call GoPAL_SET .printMessage - ld hl,$D730 + ld hl,wd730 ld a,[hl] push af push hl set 6,[hl] ; turn off letter printing delay - ld a,[$D07D] ; message ID + ld a,[wd07d] ; message ID cp a,$F0 jr nc,.printItemUseMessage add a @@ -230,8 +227,8 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) ld h,[hl] ld l,a push hl - ld a,[$CF06] - ld hl,W_PARTYMON1NAME + ld a,[wcf06] + ld hl,wPartyMonNicks call GetPartyMonName pop hl call PrintText @@ -315,14 +312,14 @@ RareCandyText: ; 12ec0 (4:6ec0) db "@" SetPartyMenuHealthBarColor: ; 12ec7 (4:6ec7) - ld hl, $cf1f - ld a, [$cf2d] + ld hl, wcf1f + ld a, [wcf2d] ld c, a ld b, $0 add hl, bc call GetHealthBarColor ld b, $fc call GoPAL_SET - ld hl, $cf2d + ld hl, wcf2d inc [hl] ret diff --git a/engine/menu/pc.asm b/engine/menu/pc.asm index a860c4b3..4df6c826 100755 --- a/engine/menu/pc.asm +++ b/engine/menu/pc.asm @@ -74,7 +74,7 @@ BillsPC: ; 17ee4 (5:7ee4) ld a, (SFX_02_47 - SFX_Headers_02) / 3 call PlaySound ;XXX: play sound or stop music call WaitForSoundToFinish ;XXX: wait for sound to be done - ld a, [$D7F1] ;has to do with having met Bill + ld a, [wd7f1] ;has to do with having met Bill bit 0, a jr nz, .billsPC ;if you've met bill, use that bill's instead of someone's ld hl, AccessedSomeonesPCText @@ -86,7 +86,7 @@ BillsPC: ; 17ee4 (5:7ee4) callba BillsPC_ ReloadMainMenu: ; 17f06 (5:7f06) xor a - ld [$CC3C], a + ld [wcc3c], a call ReloadMapData call UpdateSprites ;XXX: moves sprites jp PCMainMenu @@ -117,7 +117,7 @@ AccessedMyPCText: ; 17f32 (5:7f32) ; removes one of the specified item ID [$FFdb] from bag (if existent) RemoveItemByID: ; 17f37 (5:7f37) - ld hl, wBagItems ; $d31e + ld hl, wBagItems ; wd31e ld a, [$ffdb] ld b, a xor a @@ -135,8 +135,8 @@ RemoveItemByID: ; 17f37 (5:7f37) jr .asm_17f40 .asm_17f4f ld a, $1 - ld [$cf96], a + ld [wcf96], a ld a, [$ffdc] - ld [wWhichPokemon], a ; $cf92 - ld hl, wNumBagItems ; $d31d + ld [wWhichPokemon], a ; wWhichPokemon + ld hl, wNumBagItems ; wNumBagItems jp RemoveItemFromInventory diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index a89b745d..4ff1b16f 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -1,12 +1,12 @@ PlayerPC: ; 78e6 (1:78e6) - ld hl, $d730 + ld hl, wd730 set 6, [hl] ld a, ITEM_NAME ld [W_LISTTYPE], a call SaveScreenTilesToBuffer1 xor a - ld [$cc2c], a - ld [$ccd3], a + ld [wcc2c], a + ld [wccd3], a ld a, [wFlags_0xcd60] bit 3, a jr nz, Func_790c @@ -16,8 +16,8 @@ PlayerPC: ; 78e6 (1:78e6) call PrintText Func_790c: ; 790c (1:790c) - ld a, [$ccd3] - ld [wCurrentMenuItem], a ; $cc26 + ld a, [wccd3] + ld [wCurrentMenuItem], a ; wCurrentMenuItem ld hl, wFlags_0xcd60 set 5, [hl] call LoadScreenTilesFromBuffer2 @@ -26,11 +26,10 @@ Func_790c: ; 790c (1:790c) ld c, $e call TextBoxBorder call UpdateSprites - FuncCoord 2, 2 ; $c3ca - ld hl, Coord + hlCoord 2, 2 ld de, PlayersPCMenuEntries ; $7af5 call PlaceString - ld hl, wTopMenuItemY ; $cc24 + ld hl, wTopMenuItemY ; wTopMenuItemY ld a, $2 ld [hli], a dec a @@ -43,18 +42,18 @@ Func_790c: ; 790c (1:790c) ld [hli], a xor a ld [hl], a - ld hl, wListScrollOffset ; $cc36 + ld hl, wListScrollOffset ; wcc36 ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; $cc2f + ld [wPlayerMonNumber], a ; wPlayerMonNumber ld hl, WhatDoYouWantText call PrintText call HandleMenuInput bit 1, a jp nz, Func_796d call PlaceUnfilledArrowMenuCursor - ld a, [wCurrentMenuItem] ; $cc26 - ld [$ccd3], a + ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld [wccd3], a and a jp z, Func_7a12 dec a @@ -74,19 +73,19 @@ Func_796d: ; 796d (1:796d) res 5, [hl] call LoadScreenTilesFromBuffer2 xor a - ld [wListScrollOffset], a ; $cc36 - ld [$cc2c], a - ld hl, $d730 + ld [wListScrollOffset], a ; wcc36 + ld [wcc2c], a + ld hl, wd730 res 6, [hl] xor a - ld [$cc3c], a + ld [wcc3c], a ret Func_7995: ; 7995 (1:7995) xor a - ld [wCurrentMenuItem], a ; $cc26 - ld [wListScrollOffset], a ; $cc36 - ld a, [wNumBagItems] ; $d31d + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wListScrollOffset], a ; wcc36 + ld a, [wNumBagItems] ; wNumBagItems and a jr nz, Func_79ab ld hl, NothingToDepositText @@ -96,21 +95,21 @@ Func_7995: ; 7995 (1:7995) Func_79ab: ; 79ab (1:79ab) ld hl, WhatToDepositText call PrintText - ld hl, wNumBagItems ; $d31d + ld hl, wNumBagItems ; wNumBagItems ld a, l - ld [$cf8b], a + ld [wcf8b], a ld a, h - ld [$cf8c], a + ld [wcf8c], a xor a - ld [$cf93], a + ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; $cf94 + ld [wListMenuID], a ; wListMenuID call DisplayListMenuID jp c, Func_790c call IsKeyItem ld a, $1 - ld [$cf96], a - ld a, [$d124] + ld [wcf96], a + ld a, [wd124] and a jr nz, .asm_79e7 ld hl, DepositHowManyText @@ -119,14 +118,14 @@ Func_79ab: ; 79ab (1:79ab) cp $ff jp z, Func_79ab .asm_79e7 - ld hl, wNumBoxItems ; $d53a + ld hl, wNumBoxItems ; wNumBoxItems call AddItemToInventory jr c, .asm_79f8 ld hl, NoRoomToStoreText call PrintText jp Func_79ab .asm_79f8 - ld hl, wNumBagItems ; $d31d + ld hl, wNumBagItems ; wNumBagItems call RemoveItemFromInventory call WaitForSoundToFinish ld a, (SFX_02_55 - SFX_Headers_02) / 3 @@ -138,9 +137,9 @@ Func_79ab: ; 79ab (1:79ab) Func_7a12: ; 7a12 (1:7a12) xor a - ld [wCurrentMenuItem], a ; $cc26 - ld [wListScrollOffset], a ; $cc36 - ld a, [wNumBoxItems] ; $d53a + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wListScrollOffset], a ; wcc36 + ld a, [wNumBoxItems] ; wNumBoxItems and a jr nz, Func_7a28 ld hl, NothingStoredText @@ -150,21 +149,21 @@ Func_7a12: ; 7a12 (1:7a12) Func_7a28: ; 7a28 (1:7a28) ld hl, WhatToWithdrawText call PrintText - ld hl, wNumBoxItems ; $d53a + ld hl, wNumBoxItems ; wNumBoxItems ld a, l - ld [$cf8b], a + ld [wcf8b], a ld a, h - ld [$cf8c], a + ld [wcf8c], a xor a - ld [$cf93], a + ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; $cf94 + ld [wListMenuID], a ; wListMenuID call DisplayListMenuID jp c, Func_790c call IsKeyItem ld a, $1 - ld [$cf96], a - ld a, [$d124] + ld [wcf96], a + ld a, [wd124] and a jr nz, .asm_7a64 ld hl, WithdrawHowManyText @@ -173,14 +172,14 @@ Func_7a28: ; 7a28 (1:7a28) cp $ff jp z, Func_7a28 .asm_7a64 - ld hl, wNumBagItems ; $d31d + ld hl, wNumBagItems ; wNumBagItems call AddItemToInventory jr c, .asm_7a75 ld hl, CantCarryMoreText call PrintText jp Func_7a28 .asm_7a75 - ld hl, wNumBoxItems ; $d53a + ld hl, wNumBoxItems ; wNumBoxItems call RemoveItemFromInventory call WaitForSoundToFinish ld a, (SFX_02_55 - SFX_Headers_02) / 3 @@ -192,9 +191,9 @@ Func_7a28: ; 7a28 (1:7a28) Func_7a8f: ; 7a8f (1:7a8f) xor a - ld [wCurrentMenuItem], a ; $cc26 - ld [wListScrollOffset], a ; $cc36 - ld a, [wNumBoxItems] ; $d53a + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wListScrollOffset], a ; wcc36 + ld a, [wNumBoxItems] ; wNumBoxItems and a jr nz, Func_7aa5 ld hl, NothingStoredText @@ -204,15 +203,15 @@ Func_7a8f: ; 7a8f (1:7a8f) Func_7aa5: ; 7aa5 (1:7aa5) ld hl, WhatToTossText call PrintText - ld hl, wNumBoxItems ; $d53a + ld hl, wNumBoxItems ; wNumBoxItems ld a, l - ld [$cf8b], a + ld [wcf8b], a ld a, h - ld [$cf8c], a + ld [wcf8c], a xor a - ld [$cf93], a + ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; $cf94 + ld [wListMenuID], a ; wListMenuID push hl call DisplayListMenuID pop hl @@ -221,11 +220,11 @@ Func_7aa5: ; 7aa5 (1:7aa5) call IsKeyItem pop hl ld a, $1 - ld [$cf96], a - ld a, [$d124] + ld [wcf96], a + ld a, [wd124] and a jr nz, .asm_7aef - ld a, [$cf91] + ld a, [wcf91] call IsItemHM jr c, .asm_7aef push hl diff --git a/engine/menu/pokedex.asm b/engine/menu/pokedex.asm index dbb9f57f..63e440f8 100755 --- a/engine/menu/pokedex.asm +++ b/engine/menu/pokedex.asm @@ -1,4 +1,4 @@ -DisplayPokedexMenu_: ; 40000 (10:4000) +ShowPokedexMenu: ; 40000 (10:4000) call GBPalWhiteOut call ClearScreen call UpdateSprites ; move sprites @@ -9,7 +9,7 @@ DisplayPokedexMenu_: ; 40000 (10:4000) ld [wListScrollOffset],a ld [wLastMenuItem],a inc a - ld [$d11e],a + ld [wd11e],a ld [$ffb7],a .setUpGraphics ld b,$08 @@ -22,7 +22,7 @@ DisplayPokedexMenu_: ; 40000 (10:4000) xor a ld [hli],a ; top menu item X inc a - ld [$cc37],a + ld [wcc37],a inc hl inc hl ld a,6 @@ -32,12 +32,12 @@ DisplayPokedexMenu_: ; 40000 (10:4000) jr c,.goToSideMenu ; if the player chose a pokemon from the list .exitPokedex xor a - ld [$cc37],a + ld [wcc37],a ld [wCurrentMenuItem],a ld [wLastMenuItem],a ld [$ffb7],a - ld [$cd3a],a - ld [$cd3b],a + ld [wcd3a],a + ld [wcd3b],a pop af ld [wListScrollOffset],a call GBPalWhiteOutWithDelay3 @@ -68,10 +68,10 @@ HandlePokedexSideMenu: ; 4006d (10:406d) push af add b inc a - ld [$d11e],a - ld a,[$d11e] + ld [wd11e],a + ld a,[wd11e] push af - ld a,[$cd3d] + ld a,[wWhichTrade] push af ld hl,wPokedexSeen call IsPokemonBitSet @@ -91,7 +91,7 @@ HandlePokedexSideMenu: ; 4006d (10:406d) ld [hli],a ; menu watched keys (A button and B button) xor a ld [hli],a ; old menu item ID - ld [$cc37],a + ld [wcc37],a .handleMenuInput call HandleMenuInput bit 1,a ; was the B button pressed? @@ -108,9 +108,9 @@ HandlePokedexSideMenu: ; 4006d (10:406d) ld b,1 .exitSideMenu pop af - ld [$cd3d],a + ld [wWhichTrade],a pop af - ld [$d11e],a + ld [wd11e],a pop af ld [wListScrollOffset],a pop af @@ -118,8 +118,7 @@ HandlePokedexSideMenu: ; 4006d (10:406d) pop af ld [wCurrentMenuItem],a push bc - FuncCoord 0,3 - ld hl,Coord + hlCoord 0, 3 ld de,20 ld bc,$7f0d ; 13 blank tiles call DrawTileLine ; cover up the menu cursor in the pokemon list @@ -127,8 +126,7 @@ HandlePokedexSideMenu: ; 4006d (10:406d) ret .buttonBPressed push bc - FuncCoord 15,10 - ld hl,Coord + hlCoord 15, 10 ld de,20 ld bc,$7f07 ; 7 blank tiles call DrawTileLine ; cover up the menu cursor in the side menu @@ -140,13 +138,12 @@ HandlePokedexSideMenu: ; 4006d (10:406d) jr .exitSideMenu ; play pokemon cry .choseCry - ld a,[$d11e] + ld a,[wd11e] call GetCryData ; get cry data call PlaySound ; play sound jr .handleMenuInput .choseArea - ld a,$4a - call Predef ; display pokemon areas + predef LoadTownMap_Nest ; display pokemon areas ld b,0 jr .exitSideMenu @@ -156,53 +153,43 @@ HandlePokedexListMenu: ; 40111 (10:4111) xor a ld [H_AUTOBGTRANSFERENABLED],a ; draw the horizontal line separating the seen and owned amounts from the menu - FuncCoord 15,8 - ld hl,Coord + hlCoord 15, 8 ld a,$7a ; horizontal line tile ld [hli],a ld [hli],a ld [hli],a ld [hli],a ld [hli],a - FuncCoord 14,0 - ld hl,Coord + hlCoord 14, 0 ld [hl],$71 ; vertical line tile - FuncCoord 14,1 - ld hl,Coord + hlCoord 14, 1 call DrawPokedexVerticalLine - FuncCoord 14,9 - ld hl,Coord + hlCoord 14, 9 call DrawPokedexVerticalLine ld hl,wPokedexSeen ld b,wPokedexSeenEnd - wPokedexSeen call CountSetBits - ld de,$d11e - FuncCoord 16,3 - ld hl,Coord + ld de,wd11e + hlCoord 16, 3 ld bc,$0103 call PrintNumber ; print number of seen pokemon ld hl,wPokedexOwned ld b,wPokedexOwnedEnd - wPokedexOwned call CountSetBits - ld de,$d11e - FuncCoord 16,6 - ld hl,Coord + ld de,wd11e + hlCoord 16, 6 ld bc,$0103 call PrintNumber ; print number of owned pokemon - FuncCoord 16,2 - ld hl,Coord + hlCoord 16, 2 ld de,PokedexSeenText call PlaceString - FuncCoord 16,5 - ld hl,Coord + hlCoord 16, 5 ld de,PokedexOwnText call PlaceString - FuncCoord 1,1 - ld hl,Coord + hlCoord 1, 1 ld de,PokedexContentsText call PlaceString - FuncCoord 16,10 - ld hl,Coord + hlCoord 16, 10 ld de,PokedexMenuItemsText call PlaceString ; find the highest pokedex number among the pokemon the player has seen @@ -220,20 +207,18 @@ HandlePokedexListMenu: ; 40111 (10:4111) jr .maxSeenPokemonLoop .storeMaxSeenPokemon ld a,b - ld [$cd3d],a ; max seen pokemon + ld [wWhichTrade],a ; max seen pokemon .loop xor a ld [H_AUTOBGTRANSFERENABLED],a - FuncCoord 4,2 - ld hl,Coord + hlCoord 4, 2 ld bc,$0e0a call ClearScreenArea - FuncCoord 1,3 - ld hl,Coord + hlCoord 1, 3 ld a,[wListScrollOffset] - ld [$d11e],a + ld [wd11e],a ld d,7 - ld a,[$cd3d] + ld a,[wWhichTrade] cp a,7 jr nc,.printPokemonLoop ld d,a @@ -242,15 +227,15 @@ HandlePokedexListMenu: ; 40111 (10:4111) ; loop to print pokemon pokedex numbers and names ; if the player has owned the pokemon, it puts a pokeball beside the name .printPokemonLoop - ld a,[$d11e] + ld a,[wd11e] inc a - ld [$d11e],a + ld [wd11e],a push af push de push hl ld de,-20 add hl,de - ld de,$d11e + ld de,wd11e ld bc,$8103 call PrintNumber ; print the pokedex number ld de,20 @@ -285,7 +270,7 @@ HandlePokedexListMenu: ; 40111 (10:4111) add hl,bc pop de pop af - ld [$d11e],a + ld [wd11e],a dec d jr nz,.printPokemonLoop ld a,01 @@ -309,7 +294,7 @@ HandlePokedexListMenu: ; 40111 (10:4111) bit 7,a ; was Down pressed? jr z,.checkIfRightPressed .downPressed ; scroll down one row - ld a,[$cd3d] + ld a,[wWhichTrade] cp a,7 jp c,.loop sub a,7 @@ -324,7 +309,7 @@ HandlePokedexListMenu: ; 40111 (10:4111) bit 4,a ; was Right pressed? jr z,.checkIfLeftPressed .rightPressed ; scroll down 7 rows - ld a,[$cd3d] + ld a,[wWhichTrade] cp a,7 jp c,.loop sub a,6 @@ -385,15 +370,14 @@ PokedexMenuItemsText: ; 402af (10:42af) ; tests if a pokemon's bit is set in the seen or owned pokemon bit fields ; INPUT: -; [$d11e] = pokedex number +; [wd11e] = pokedex number ; hl = address of bit field IsPokemonBitSet: ; 402c2 (10:42c2) - ld a,[$d11e] + ld a,[wd11e] dec a ld c,a ld b,2 - ld a,$10 - call Predef + predef FlagActionPredef ld a,c and a ret @@ -407,67 +391,56 @@ ShowPokedexData: ; 402d1 (10:42d1) ; function to display pokedex data from inside the pokedex ShowPokedexDataInternal: ; 402e2 (10:42e2) - ld hl,$d72c + ld hl,wd72c set 1,[hl] ld a,$33 ; 3/7 volume ld [$ff24],a call GBPalWhiteOut ; zero all palettes call ClearScreen - ld a,[$d11e] ; pokemon ID - ld [$cf91],a + ld a,[wd11e] ; pokemon ID + ld [wcf91],a push af ld b,04 call GoPAL_SET pop af - ld [$d11e],a + ld [wd11e],a ld a,[$ffd7] push af xor a ld [$ffd7],a - FuncCoord 0,0 - ld hl,Coord + hlCoord 0, 0 ld de,1 ld bc,$6414 call DrawTileLine ; draw top border - FuncCoord 0,17 - ld hl,Coord + hlCoord 0, 17 ld b,$6f call DrawTileLine ; draw bottom border - FuncCoord 0,1 - ld hl,Coord + hlCoord 0, 1 ld de,20 ld bc,$6610 call DrawTileLine ; draw left border - FuncCoord 19,1 - ld hl,Coord + hlCoord 19, 1 ld b,$67 call DrawTileLine ; draw right border - FuncCoord 0,0 ld a,$63 ; upper left corner tile - ld [Coord],a - FuncCoord 19,0 + Coorda 0, 0 ld a,$65 ; upper right corner tile - ld [Coord],a - FuncCoord 0,17 + Coorda 19, 0 ld a,$6c ; lower left corner tile - ld [Coord],a - FuncCoord 19,17 + Coorda 0, 17 ld a,$6e ; lower right corner tile - ld [Coord],a - FuncCoord 0,9 - ld hl,Coord + Coorda 19, 17 + hlCoord 0, 9 ld de,PokedexDataDividerLine call PlaceString ; draw horizontal divider line - FuncCoord 9,6 - ld hl,Coord + hlCoord 9, 6 ld de,HeightWeightText call PlaceString call GetMonName - FuncCoord 9,2 - ld hl,Coord + hlCoord 9, 2 call PlaceString ld hl,PokedexEntryPointers - ld a,[$d11e] + ld a,[wd11e] dec a ld e,a ld d,0 @@ -476,30 +449,28 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) ld a,[hli] ld e,a ld d,[hl] ; de = address of pokedex entry - FuncCoord 9,4 - ld hl,Coord + hlCoord 9, 4 call PlaceString ; print species name ld h,b ld l,c push de - ld a,[$d11e] + ld a,[wd11e] push af call IndexToPokedex - FuncCoord 2,8 - ld hl,Coord + hlCoord 2, 8 ld a, "№" ld [hli],a ld a,$f2 ld [hli],a - ld de,$d11e + ld de,wd11e ld bc,$8103 call PrintNumber ; print pokedex number ld hl,wPokedexOwned call IsPokemonBitSet pop af - ld [$d11e],a - ld a,[$cf91] - ld [$d0b5],a + ld [wd11e],a + ld a,[wcf91] + ld [wd0b5],a pop de push af push bc @@ -508,10 +479,9 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) call Delay3 call GBPalNormal call GetMonHeader ; load pokemon picture location - FuncCoord 1,1 - ld hl,Coord + hlCoord 1, 1 call LoadFlippedFrontSpriteByMonIndex ; draw pokemon picture - ld a,[$cf91] + ld a,[wcf91] call PlayCry ; play pokemon cry pop hl pop de @@ -522,16 +492,14 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) jp z,.waitForButtonPress ; if the pokemon has not been owned, don't print the height, weight, or description inc de ; de = address of feet (height) ld a,[de] ; reads feet, but a is overwritten without being used - FuncCoord 12,6 - ld hl,Coord + hlCoord 12, 6 ld bc,$0102 call PrintNumber ; print feet (height) ld a,$60 ; feet symbol tile (one tick) ld [hl],a inc de inc de ; de = address of inches (height) - FuncCoord 15,6 - ld hl,Coord + hlCoord 15, 6 ld bc,$8102 call PrintNumber ; print inches (height) ld a,$61 ; inches symbol tile (two ticks) @@ -552,13 +520,11 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) dec de ld a,[de] ; a = lower byte of weight ld [hl],a ; store lower byte of weight in [$ff8c] - FuncCoord 11,8 ld de,$ff8b - ld hl,Coord + hlCoord 11, 8 ld bc,$0205 ; no leading zeroes, right-aligned, 2 bytes, 5 digits call PrintNumber ; print weight - FuncCoord 14,8 - ld hl,Coord + hlCoord 14, 8 ld a,[$ff8c] sub a,10 ld a,[$ff8b] @@ -576,15 +542,14 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) ld [$ff8b],a ; restore original value of [$ff8b] pop hl inc hl ; hl = address of pokedex description text - FuncCoord 1,11 - ld bc,Coord + bcCoord 1, 11 ld a,2 ld [$fff4],a call TextCommandProcessor ; print pokedex description text xor a ld [$fff4],a .waitForButtonPress - call GetJoypadStateLowSensitivity + call JoypadLowSensitivity ld a,[$ffb5] and a,%00000011 ; A button and B button jr z,.waitForButtonPress @@ -595,7 +560,7 @@ ShowPokedexDataInternal: ; 402e2 (10:42e2) call GoPAL_SET_CF1C call LoadTextBoxTilePatterns call GBPalNormal - ld hl,$d72c + ld hl,wd72c res 1,[hl] ld a,$77 ; max volume ld [$ff24],a @@ -637,10 +602,10 @@ DrawTileLine: ; 40474 (10:4474) INCLUDE "data/pokedex_entries.asm" PokedexToIndex: ; 40ff9 (10:4ff9) - ; converts the Pokédex number at $D11E to an index + ; converts the Pokédex number at wd11e to an index push bc push hl - ld a,[$D11E] + ld a,[wd11e] ld b,a ld c,0 ld hl,PokedexOrder @@ -652,23 +617,23 @@ PokedexToIndex: ; 40ff9 (10:4ff9) jr nz,.loop ld a,c - ld [$D11E],a + ld [wd11e],a pop hl pop bc ret IndexToPokedex: ; 41010 (10:5010) - ; converts the indexédex number at $D11E to a Pokédex number + ; converts the indexédex number at wd11e to a Pokédex number push bc push hl - ld a,[$D11E] + ld a,[wd11e] dec a ld hl,PokedexOrder ld b,0 ld c,a add hl,bc ld a,[hl] - ld [$D11E],a + ld [wd11e],a pop hl pop bc ret diff --git a/engine/menu/prize_menu.asm b/engine/menu/prize_menu.asm index 79de7029..141b9beb 100755 --- a/engine/menu/prize_menu.asm +++ b/engine/menu/prize_menu.asm @@ -5,25 +5,24 @@ CeladonPrizeMenu: ; 5271b (14:671b) ld hl,RequireCoinCaseTextPtr jp PrintText .havingCoinCase - ld hl,$D730 + ld hl,wd730 set 6,[hl] ld hl,ExchangeCoinsForPrizesTextPtr call PrintText ; the following are the menu settings xor a - ld [$CC26],a - ld [$CC2A],a + ld [wCurrentMenuItem],a + ld [wLastMenuItem],a ld a,$03 - ld [$CC29],a + ld [wMenuWatchedKeys],a ld a,$03 - ld [$CC28],a + ld [wMaxMenuItem],a ld a,$04 - ld [$CC24],a + ld [wTopMenuItemY],a ld a,$01 - ld [$CC25],a + ld [wTopMenuItemX],a call PrintPrizePrice ; 687A - FuncCoord 0,2 - ld hl,Coord + hlCoord 0, 2 ld b,$08 ld c,$10 call TextBoxBorder @@ -34,12 +33,12 @@ CeladonPrizeMenu: ; 5271b (14:671b) call HandleMenuInput ; menu choice handler bit 1,a ; keypress = B (Cancel) jr nz,.NoChoice - ld a,[$CC26] + ld a,[wCurrentMenuItem] cp a,$03 ; "NO,THANKS" choice jr z,.NoChoice call HandlePrizeChoice ; 14:68C6 .NoChoice - ld hl,$D730 + ld hl,wd730 res 6,[hl] ret @@ -60,14 +59,14 @@ GetPrizeMenuId: ; 5278e (14:678e) ; determine which one among the three ; prize-texts has been selected ; using the text ID (stored in [$FF8C]) -; load the three prizes at $D13D-$D13F -; load the three prices at $D141-$D146 +; load the three prizes at wd13d-wd13f +; load the three prices at wd141-wd146 ; display the three prizes' names ; (distinguishing between Pokemon names ; and Items (specifically TMs) names) ld a,[$FF8C] sub a,$03 ; prize-texts' id are 3, 4 and 5 - ld [$D12F],a ; prize-texts' id (relative, i.e. 0, 1 or 2) + ld [wd12f],a ; prize-texts' id (relative, i.e. 0, 1 or 2) add a add a ld d,$00 @@ -85,59 +84,51 @@ GetPrizeMenuId: ; 5278e (14:678e) ld a,[hli] ld h,[hl] ld l,a - ld de,$D141 + ld de,wd141 ld bc,$0006 call CopyData - ld a,[$D12F] + ld a,[wd12f] cp a,$02 ;is TM_menu? jr nz,.putMonName ld a,[W_PRIZE1] - ld [$D11E],a + ld [wd11e],a call GetItemName - FuncCoord 2,4 - ld hl,Coord + hlCoord 2, 4 call PlaceString ld a,[W_PRIZE2] - ld [$D11E],a + ld [wd11e],a call GetItemName - FuncCoord 2,6 - ld hl,Coord + hlCoord 2, 6 call PlaceString ld a,[W_PRIZE3] - ld [$D11E],a + ld [wd11e],a call GetItemName - FuncCoord 2,8 - ld hl,Coord + hlCoord 2, 8 call PlaceString jr .putNoThanksText .putMonName ; 14:67EC ld a,[W_PRIZE1] - ld [$D11E],a + ld [wd11e],a call GetMonName - FuncCoord 2,4 - ld hl,Coord + hlCoord 2, 4 call PlaceString ld a,[W_PRIZE2] - ld [$D11E],a + ld [wd11e],a call GetMonName - FuncCoord 2,6 - ld hl,Coord + hlCoord 2, 6 call PlaceString ld a,[W_PRIZE3] - ld [$D11E],a + ld [wd11e],a call GetMonName - FuncCoord 2,8 - ld hl,Coord + hlCoord 2, 8 call PlaceString .putNoThanksText ; 14:6819 - FuncCoord 2,10 - ld hl,Coord + hlCoord 2, 10 ld de,NoThanksText call PlaceString ; put prices on the right side of the textbox - ld de,$D141 - FuncCoord 13,5 - ld hl,Coord + ld de,wd141 + hlCoord 13, 5 ; reg. c: ; [low nybble] number of bytes ; [bit 765 = %100] space-padding (not zero-padding) @@ -145,36 +136,30 @@ GetPrizeMenuId: ; 5278e (14:678e) ; Function $15CD displays BCD value (same routine ; used by text-command $02) call PrintBCDNumber ; Print_BCD - ld de,$D143 - FuncCoord 13,7 - ld hl,Coord + ld de,wd143 + hlCoord 13, 7 ld c,(%1 << 7 | 2) call PrintBCDNumber - ld de,$D145 - FuncCoord 13,9 - ld hl,Coord + ld de,wd145 + hlCoord 13, 9 ld c,(1 << 7 | 2) jp PrintBCDNumber INCLUDE "data/prizes.asm" PrintPrizePrice: ; 5287a (14:687a) - FuncCoord 11,0 - ld hl,Coord + hlCoord 11, 0 ld b,$01 ld c,$07 call TextBoxBorder call UpdateSprites ; XXX save OAM? - FuncCoord 12,0 - ld hl,Coord + hlCoord 12, 0 ld de,.CoinText call PlaceString - FuncCoord 13,1 - ld hl,Coord + hlCoord 13, 1 ld de,.SixSpacesText call PlaceString - FuncCoord 13,1 - ld hl,Coord + hlCoord 13, 1 ld de,wPlayerCoins ld c,%10000010 call PrintBCDNumber @@ -187,11 +172,11 @@ PrintPrizePrice: ; 5287a (14:687a) db " @" LoadCoinsToSubtract: ; 528b1 (14:68b1) - ld a,[$D139] ; backup of selected menu_entry + ld a,[wd139] ; backup of selected menu_entry add a ld d,$00 ld e,a - ld hl,$D141 ; first prize's price + ld hl,wd141 ; first prize's price add hl,de ; get selected prize's price xor a ld [$FF9F],a @@ -202,15 +187,15 @@ LoadCoinsToSubtract: ; 528b1 (14:68b1) ret HandlePrizeChoice: ; 528c6 (14:68c6) - ld a,[$CC26] ; selected menu_entry - ld [$D139],a + ld a,[wCurrentMenuItem] ; selected menu_entry + ld [wd139],a ld d,$00 ld e,a ld hl,W_PRIZE1 add hl,de ld a,[hl] - ld [$D11E],a - ld a,[$D12F] + ld [wd11e],a + ld a,[wd12f] cp a,$02 ; is prize a TM? jr nz,.GetMonName call GetItemName @@ -221,16 +206,16 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ld hl,SoYouWantPrizeTextPtr call PrintText call YesNoChoice ; yes/no textbox - ld a,[$CC26] ; yes/no answer (Y=0, N=1) + ld a,[wCurrentMenuItem] ; yes/no answer (Y=0, N=1) and a jr nz,.PrintOhFineThen call LoadCoinsToSubtract call HasEnoughCoins jr c,.NotEnoughCoins - ld a,[$D12F] + ld a,[wd12f] cp a,$02 jr nz,.GiveMon - ld a,[$D11E] + ld a,[wd11e] ld b,a ld a,1 ld c,a @@ -238,8 +223,8 @@ HandlePrizeChoice: ; 528c6 (14:68c6) jr nc,.BagFull jr .SubtractCoins .GiveMon ; 14:6912 - ld a,[$D11E] - ld [$CF91],a + ld a,[wd11e] + ld [wcf91],a push af call GetPrizeMonLevel ; 14:6977 ld c,a @@ -247,7 +232,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ld b,a call GivePokemon push af - ld a,[$CCD3] ; XXX is there room? + ld a,[wccd3] ; XXX is there room? and a call z,WaitForTextScrollButtonPress pop af @@ -257,8 +242,7 @@ HandlePrizeChoice: ; 528c6 (14:68c6) ld hl,$FFA1 ld de,wPlayerCoins + 1 ld c,$02 ; how many bytes - ld a,$0C - call Predef ; subtract coins (BCD daa operations) + predef SubBCDPredef ; subtract coins (BCD daa operations) jp PrintPrizePrice .BagFull ld hl,PrizeRoomBagIsFullTextPtr @@ -299,7 +283,7 @@ OhFineThenTextPtr: ; 52971 (14:6971) db "@" GetPrizeMonLevel: ; 52977 (14:6977) - ld a,[$CF91] + ld a,[wcf91] ld b,a ld hl,PrizeMonLevelDictionary .loop ; 14:697E @@ -310,7 +294,7 @@ GetPrizeMonLevel: ; 52977 (14:6977) jr .loop .matchFound ; 14:6985 ld a,[hl] - ld [$D127],a + ld [W_CURENEMYLVL],a ret INCLUDE "data/prize_mon_levels.asm" diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm index 774f604d..be172a67 100755 --- a/engine/menu/start_menu.asm +++ b/engine/menu/start_menu.asm @@ -2,8 +2,8 @@ DisplayStartMenu:: ; 2acd (0:2acd) ld a,$04 ; hardcoded Bank, not sure what's it refers to ld [H_LOADEDROMBANK],a ld [$2000],a ; ROM bank 4 - ld a,[$d700] ; walking/biking/surfing - ld [$d11a],a + ld a,[wd700] ; walking/biking/surfing + ld [wd11a],a ld a, (SFX_02_3f - SFX_Headers_02) / 3 ; Start menu sound call PlaySound @@ -24,7 +24,7 @@ RedisplayStartMenu:: ; 2adf (0:2adf) and a jr nz,.loop ; if the player pressed tried to go past the top item, wrap around to the bottom - ld a,[$d74b] + ld a,[wd74b] bit 5,a ; does the player have the pokedex? ld a,6 ; there are 7 menu items with the pokedex, so the max index is 6 jr nz,.wrapMenuItemId @@ -37,7 +37,7 @@ RedisplayStartMenu:: ; 2adf (0:2adf) bit 7,a jr z,.buttonPressed ; if the player pressed tried to go past the bottom item, wrap around to the top - ld a,[$d74b] + ld a,[wd74b] bit 5,a ; does the player have the pokedex? ld a,[wCurrentMenuItem] ld c,7 ; there are 7 menu items with the pokedex @@ -54,12 +54,12 @@ RedisplayStartMenu:: ; 2adf (0:2adf) .buttonPressed ; A, B, or Start button pressed call PlaceUnfilledArrowMenuCursor ld a,[wCurrentMenuItem] - ld [$cc2d],a ; save current menu item ID + ld [wcc2d],a ; save current menu item ID ld a,b and a,%00001010 ; was the Start button or B button pressed? jp nz,CloseStartMenu call SaveScreenTilesToBuffer2 ; copy background from wTileMap to wTileMapBackup2 - ld a,[$d74b] + ld a,[wd74b] bit 5,a ; does the player have the pokedex? ld a,[wCurrentMenuItem] jr nz,.displayMenuItem @@ -80,8 +80,8 @@ RedisplayStartMenu:: ; 2adf (0:2adf) ; EXIT falls through to here CloseStartMenu:: ; 2b70 (0:2b70) - call GetJoypadState - ld a,[H_NEWLYPRESSEDBUTTONS] + call Joypad + ld a,[hJoyPressed] bit 0,a ; was A button newly pressed? jr nz,CloseStartMenu call LoadTextBoxTilePatterns diff --git a/engine/menu/start_sub_menus.asm b/engine/menu/start_sub_menus.asm index 60893d81..7c6fe4d6 100755 --- a/engine/menu/start_sub_menus.asm +++ b/engine/menu/start_sub_menus.asm @@ -1,6 +1,5 @@ StartMenu_Pokedex: ; 13095 (4:7095) - ld a,$29 - call Predef + predef ShowPokedexMenu call LoadScreenTilesFromBuffer2 ; restore saved screen call Delay3 call LoadGBPal @@ -8,19 +7,19 @@ StartMenu_Pokedex: ; 13095 (4:7095) jp RedisplayStartMenu StartMenu_Pokemon: ; 130a9 (4:70a9) - ld a,[W_NUMINPARTY] + ld a,[wPartyCount] and a jp z,RedisplayStartMenu xor a - ld [$cc35],a - ld [$d07d],a - ld [$cfcb],a + ld [wcc35],a + ld [wd07d],a + ld [wcfcb],a call DisplayPartyMenu jr .checkIfPokemonChosen .loop xor a - ld [$cc35],a - ld [$d07d],a + ld [wcc35],a + ld [wd07d],a call GoBackToPartyMenu .checkIfPokemonChosen jr nc,.chosePokemon @@ -32,9 +31,9 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) .chosePokemon call SaveScreenTilesToBuffer1 ; save screen ld a,$04 - ld [$d125],a + ld [wd125],a call DisplayTextBoxID ; display pokemon menu options - ld hl,$cd3d + ld hl,wWhichTrade ld bc,$020c ; max menu item ID, top menu item Y ld e,5 .adjustMenuVariablesLoop @@ -82,32 +81,30 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) jp z,.choseStats ld c,a ld b,0 - ld hl,$cd3d + ld hl,wWhichTrade add hl,bc jp .choseOutOfBattleMove .choseSwitch - ld a,[W_NUMINPARTY] + ld a,[wPartyCount] cp a,2 ; is there more than one pokemon in the party? jp c,StartMenu_Pokemon ; if not, no switching call SwitchPartyMon_Stats ld a,$04 ; swap pokemon positions menu - ld [$d07d],a + ld [wd07d],a call GoBackToPartyMenu jp .checkIfPokemonChosen .choseStats - call CleanLCD_OAM + call ClearSprites xor a - ld [$cc49],a - ld a,$36 - call Predef - ld a,$37 - call Predef + ld [wcc49],a + predef StatusScreen + predef StatusScreen2 call ReloadMapData jp StartMenu_Pokemon .choseOutOfBattleMove push hl ld a,[wWhichPokemon] - ld hl,W_PARTYMON1NAME + ld hl,wPartyMonNicks call GetPartyMonName pop hl ld a,[hl] @@ -138,26 +135,25 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) call CheckIfInOutsideMap jr z,.canFly ld a,[wWhichPokemon] - ld hl,W_PARTYMON1NAME + ld hl,wPartyMonNicks call GetPartyMonName ld hl,.cannotFlyHereText call PrintText jp .loop .canFly call ChooseFlyDestination - ld a,[$d732] + ld a,[wd732] bit 3,a ; did the player decide to fly? jp nz,.goBackToMap call LoadFontTilePatterns - ld hl,$d72e + ld hl,wd72e set 1,[hl] jp StartMenu_Pokemon .cut bit 1,a ; does the player have the Cascade Badge? jp z,.newBadgeRequired - ld a,$3c - call Predef - ld a,[$cd6a] + predef UsedCut + ld a,[wcd6a] and a jp z,.loop jp CloseTextDisplay @@ -165,15 +161,15 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) bit 4,a ; does the player have the Soul Badge? jp z,.newBadgeRequired callba CheckForForcedBikeSurf - ld hl,$d728 + ld hl,wd728 bit 1,[hl] res 1,[hl] jp z,.loop ld a,SURFBOARD - ld [$cf91],a - ld [$d152],a + ld [wcf91],a + ld [wd152],a call UseItem - ld a,[$cd6a] + ld a,[wcd6a] and a jp z,.loop call GBPalWhiteOutWithDelay3 @@ -181,15 +177,14 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) .strength bit 3,a ; does the player have the Rainbow Badge? jp z,.newBadgeRequired - ld a,$5b - call Predef + predef PrintStrengthTxt call GBPalWhiteOutWithDelay3 jp .goBackToMap .flash bit 0,a ; does the player have the Boulder Badge? jp z,.newBadgeRequired xor a - ld [$d35d],a + ld [wd35d],a ld hl,.flashLightsAreaText call PrintText call GBPalWhiteOutWithDelay3 @@ -199,10 +194,10 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) db "@" .dig ld a,ESCAPE_ROPE - ld [$cf91],a - ld [$d152],a + ld [wcf91],a + ld [wd152],a call UseItem - ld a,[$cd6a] + ld a,[wcd6a] and a jp z,.loop call GBPalWhiteOutWithDelay3 @@ -211,7 +206,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) call CheckIfInOutsideMap jr z,.canTeleport ld a,[wWhichPokemon] - ld hl,W_PARTYMON1NAME + ld hl,wPartyMonNicks call GetPartyMonName ld hl,.cannotUseTeleportNowText call PrintText @@ -219,10 +214,10 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) .canTeleport ld hl,.warpToLastPokemonCenterText call PrintText - ld hl,$d732 + ld hl,wd732 set 3,[hl] set 6,[hl] - ld hl,$d72e + ld hl,wd72e set 1,[hl] res 4,[hl] ld c,60 @@ -239,9 +234,9 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) TX_FAR _CannotFlyHereText db "@" .softboiled - ld hl,W_PARTYMON1_MAXHP + ld hl,wPartyMon1MaxHP ld a,[wWhichPokemon] - ld bc,44 + ld bc,wPartyMon2 - wPartyMon1 call AddNTimes ld a,[hli] ld [H_DIVIDEND],a @@ -251,7 +246,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) ld [H_DIVISOR],a ld b,2 ; number of bytes call Divide - ld bc,-33 + ld bc,wPartyMon1HP - wPartyMon1MaxHP add hl,bc ld a,[hld] ld b,a @@ -261,14 +256,14 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) ld a,[H_QUOTIENT + 2] sbc b jp nc,.notHealthyEnough - ld a,[$cc2b] + ld a,[wcc2b] push af ld a,POTION - ld [$cf91],a - ld [$d152],a + ld [wcf91],a + ld [wd152],a call UseItem pop af - ld [$cc2b],a + ld [wcc2b],a jp .loop .notHealthyEnough ; if current HP is less than 1/5 of max HP ld hl,.notHealthyEnoughText @@ -290,8 +285,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9) ; writes a blank tile to all possible menu cursor positions on the party menu ErasePartyMenuCursors: ; 132ed (4:72ed) - FuncCoord 0,1 - ld hl,Coord + hlCoord 0, 1 ld bc,2 * 20 ; menu cursor positions are 2 rows apart ld a,6 ; 6 menu cursor positions .loop @@ -314,19 +308,19 @@ StartMenu_Item: ; 13302 (4:7302) jr .exitMenu .notInLinkBattle ld bc,wNumBagItems - ld hl,$cf8b + ld hl,wcf8b ld a,c ld [hli],a - ld [hl],b ; store item bag pointer at $cf8b (for DisplayListMenuID) + ld [hl],b ; store item bag pointer at wcf8b (for DisplayListMenuID) xor a - ld [$cf93],a + ld [wcf93],a ld a,ITEMLISTMENU ld [wListMenuID],a - ld a,[$cc2c] + ld a,[wcc2c] ld [wCurrentMenuItem],a call DisplayListMenuID ld a,[wCurrentMenuItem] - ld [$cc2c],a + ld [wcc2c],a jr nc,.choseItem .exitMenu call LoadScreenTilesFromBuffer2 ; restore saved screen @@ -336,23 +330,19 @@ StartMenu_Item: ; 13302 (4:7302) .choseItem ; erase menu cursor (blank each tile in front of an item name) ld a," " - FuncCoord 5,4 - ld [Coord],a - FuncCoord 5,6 - ld [Coord],a - FuncCoord 5,8 - ld [Coord],a - FuncCoord 5,10 - ld [Coord],a + Coorda 5, 4 + Coorda 5, 6 + Coorda 5, 8 + Coorda 5, 10 call PlaceUnfilledArrowMenuCursor xor a - ld [$cc35],a - ld a,[$cf91] + ld [wcc35],a + ld a,[wcf91] cp a,BICYCLE jp z,.useOrTossItem .notBicycle1 ld a,$06 ; use/toss menu - ld [$d125],a + ld [wd125],a call DisplayTextBoxID ld hl,wTopMenuItemY ld a,11 @@ -374,14 +364,14 @@ StartMenu_Item: ; 13302 (4:7302) jr z,.useOrTossItem jp ItemMenuLoop .useOrTossItem ; if the player made the choice to use or toss the item - ld a,[$cf91] - ld [$d11e],a + ld a,[wcf91] + ld [wd11e],a call GetItemName - call CopyStringToCF4B ; copy name to $cf4b - ld a,[$cf91] + call CopyStringToCF4B ; copy name to wcf4b + ld a,[wcf91] cp a,BICYCLE jr nz,.notBicycle2 - ld a,[$d732] + ld a,[wd732] bit 5,a jr z,.useItem_closeMenu ld hl,CannotGetOffHereText @@ -392,15 +382,15 @@ StartMenu_Item: ; 13302 (4:7302) and a jr nz,.tossItem .useItem - ld [$d152],a - ld a,[$cf91] + ld [wd152],a + ld a,[wcf91] cp a,HM_01 jr nc,.useItem_partyMenu ld hl,UsableItems_CloseMenu ld de,1 call IsInArray jr c,.useItem_closeMenu - ld a,[$cf91] + ld a,[wcf91] ld hl,UsableItems_PartyMenu ld de,1 call IsInArray @@ -409,34 +399,34 @@ StartMenu_Item: ; 13302 (4:7302) jp ItemMenuLoop .useItem_closeMenu xor a - ld [$d152],a + ld [wd152],a call UseItem - ld a,[$cd6a] + ld a,[wcd6a] and a jp z,ItemMenuLoop jp CloseStartMenu .useItem_partyMenu - ld a,[$cfcb] + ld a,[wcfcb] push af call UseItem - ld a,[$cd6a] + ld a,[wcd6a] cp a,$02 jp z,.partyMenuNotDisplayed call GBPalWhiteOutWithDelay3 call Func_3dbe pop af - ld [$cfcb],a + ld [wcfcb],a jp StartMenu_Item .partyMenuNotDisplayed pop af - ld [$cfcb],a + ld [wcfcb],a jp ItemMenuLoop .tossItem call IsKeyItem - ld a,[$d124] + ld a,[wd124] and a jr nz,.skipAskingQuantity - ld a,[$cf91] + ld a,[wcf91] call IsItemHM jr c,.skipAskingQuantity call DisplayChooseQuantityMenu @@ -515,8 +505,7 @@ StartMenu_TrainerInfo: ; 13460 (4:7460) xor a ld [$ffd7],a call DrawTrainerInfo - ld a,$2e - call Predef ; draw badges + predef DrawBadges ; draw badges ld b,$0d call GoPAL_SET call GBPalNormal @@ -535,101 +524,89 @@ StartMenu_TrainerInfo: ; 13460 (4:7460) DrawTrainerInfo: ; 1349a (4:749a) ld de,RedPicFront ld bc,(BANK(RedPicFront) << 8) | $01 - ld a,$3b - call Predef + predef Predef3B call DisableLCD - FuncCoord 0,2 - ld hl,Coord + hlCoord 0, 2 ld a," " call TrainerInfo_DrawVerticalLine - FuncCoord 1,2 - ld hl,Coord + hlCoord 1, 2 call TrainerInfo_DrawVerticalLine - ld hl,$9070 - ld de,$9000 - ld bc,$01c0 + ld hl,vChars2 + $70 + ld de,vChars2 + ld bc,$70 * 4 call CopyData ld hl,TrainerInfoTextBoxTileGraphics ; $7b98 ; trainer info text box tile patterns - ld de,$9770 + ld de,vChars2 + $770 ld bc,$0080 push bc call TrainerInfo_FarCopyData ld hl,BlankLeaderNames ; $7c28 - ld de,$9600 + ld de,vChars2 + $600 ld bc,$0170 call TrainerInfo_FarCopyData pop bc ld hl,BadgeNumbersTileGraphics ; $7d98 ; badge number tile patterns - ld de,$8d80 + ld de,vChars1 + $580 call TrainerInfo_FarCopyData ld hl,GymLeaderFaceAndBadgeTileGraphics ; $6a9e ; gym leader face and badge tile patterns - ld de,$9200 + ld de,vChars2 + $200 ld bc,$0400 ld a,$03 call FarCopyData2 ld hl,TextBoxGraphics ; $6288 ld de,$00d0 add hl,de ; hl = colon tile pattern - ld de,$8d60 + ld de,vChars1 + $560 ld bc,$0010 ld a,$04 push bc call FarCopyData2 pop bc ld hl,TrainerInfoTextBoxTileGraphics + $80 ; $7c18 ; background tile pattern - ld de,$8d70 + ld de,vChars1 + $570 call TrainerInfo_FarCopyData call EnableLCD - ld hl,$cd3d + ld hl,wWhichTrade ld a,18 + 1 ld [hli],a dec a ld [hli],a ld [hl],1 - FuncCoord 0,0 - ld hl,Coord + hlCoord 0, 0 call TrainerInfo_DrawTextBox - ld hl,$cd3d + ld hl,wWhichTrade ld a,16 + 1 ld [hli],a dec a ld [hli],a ld [hl],3 - FuncCoord 1,10 - ld hl,Coord + hlCoord 1, 10 call TrainerInfo_DrawTextBox - FuncCoord 0,10 - ld hl,Coord + hlCoord 0, 10 ld a,$d7 call TrainerInfo_DrawVerticalLine - FuncCoord 19,10 - ld hl,Coord + hlCoord 19, 10 call TrainerInfo_DrawVerticalLine - FuncCoord 6,9 - ld hl,Coord + hlCoord 6, 9 ld de,TrainerInfo_BadgesText call PlaceString - FuncCoord 2,2 - ld hl,Coord + hlCoord 2, 2 ld de,TrainerInfo_NameMoneyTimeText call PlaceString - FuncCoord 7,2 - ld hl,Coord - ld de,W_PLAYERNAME + hlCoord 7, 2 + ld de,wPlayerName call PlaceString - FuncCoord 8,4 - ld hl,Coord + hlCoord 8, 4 ld de,wPlayerMoney ld c,$e3 call PrintBCDNumber - FuncCoord 9,6 - ld hl,Coord - ld de,$da41 ; hours + hlCoord 9, 6 + ld de,W_PLAYTIMEHOURS + 1 ; hours ld bc,$4103 call PrintNumber ld [hl],$d6 ; colon tile ID inc hl - ld de,$da43 ; minutes + ld de,W_PLAYTIMEMINUTES + 1 ; minutes ld bc,$8102 jp PrintNumber @@ -650,15 +627,15 @@ TrainerInfo_BadgesText: ; 13597 (4:7597) ; height is always 6 ; INPUT: ; hl = destination address -; [$cd3d] = width + 1 -; [$cd3e] = width -; [$cd3f] = distance from the end of a text box row to the start of the next +; [wWhichTrade] = width + 1 +; [wTrainerEngageDistance] = width +; [wTrainerFacingDirection] = distance from the end of a text box row to the start of the next TrainerInfo_DrawTextBox: ; 135a0 (4:75a0) ld a,$79 ; upper left corner tile ID ld de,$7a7b ; top edge and upper right corner tile ID's call TrainerInfo_DrawHorizontalEdge ; draw top edge call TrainerInfo_NextTextBoxRow - ld a,[$cd3d] ; width of the text box plus one + ld a,[wWhichTrade] ; width of the text box plus one ld e,a ld d,0 ld c,6 ; height of the text box @@ -674,7 +651,7 @@ TrainerInfo_DrawTextBox: ; 135a0 (4:75a0) TrainerInfo_DrawHorizontalEdge: ; 135c3 (4:75c3) ld [hli],a ; place left corner tile - ld a,[$cd3e] ; width of the text box + ld a,[wTrainerEngageDistance] ; width of the text box ld c,a ld a,d .loop @@ -686,7 +663,7 @@ TrainerInfo_DrawHorizontalEdge: ; 135c3 (4:75c3) ret TrainerInfo_NextTextBoxRow: ; 135d0 (4:75d0) - ld a,[$cd3f] ; distance to the start of the next row + ld a,[wTrainerFacingDirection] ; distance to the start of the next row .loop inc hl dec a @@ -708,11 +685,10 @@ TrainerInfo_DrawVerticalLine: ; 135d8 (4:75d8) ret StartMenu_SaveReset: ; 135e3 (4:75e3) - ld a,[$d72e] + ld a,[wd72e] bit 6,a ; is the player using the link feature? - jp nz,InitGame - ld a,$3f - call Predef ; save the game + jp nz,Init + predef SaveSAV ; save the game call LoadScreenTilesFromBuffer2 ; restore saved screen jp HoldTextDisplayOpen @@ -729,9 +705,9 @@ StartMenu_Option: ; 135f6 (4:75f6) SwitchPartyMon: ; 13613 (4:7613) call SwitchPartyMon_Stats - ld a, [wWhichTrade] ; $cd3d + ld a, [wWhichTrade] ; wWhichTrade call SwitchPartyMon_OAM - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem call SwitchPartyMon_OAM jp RedrawPartyMenu_ @@ -762,42 +738,42 @@ SwitchPartyMon_OAM: ; 13625 (4:7625) jp PlaySound SwitchPartyMon_Stats: ; 13653 (4:7653) - ld a, [$cc35] + ld a, [wcc35] and a jr nz, .asm_13661 - ld a, [wWhichPokemon] ; $cf92 + ld a, [wWhichPokemon] ; wWhichPokemon inc a - ld [$cc35], a + ld [wcc35], a ret .asm_13661 xor a - ld [$d07d], a - ld a, [$cc35] + ld [wd07d], a + ld a, [wcc35] dec a ld b, a - ld a, [wCurrentMenuItem] ; $cc26 - ld [wWhichTrade], a ; $cd3d + ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld [wWhichTrade], a ; wWhichTrade cp b jr nz, .asm_1367b xor a - ld [$cc35], a - ld [$d07d], a + ld [wcc35], a + ld [wd07d], a ret .asm_1367b ld a, b - ld [$cc35], a + ld [wcc35], a push hl push de - ld hl, W_PARTYMON1 ; $d164 + ld hl, wPartySpecies ld d, h ld e, l - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem add l ld l, a jr nc, .asm_1368e inc h .asm_1368e - ld a, [$cc35] + ld a, [wcc35] add e ld e, a jr nc, .asm_13696 @@ -809,67 +785,67 @@ SwitchPartyMon_Stats: ; 13653 (4:7653) ld [hl], a ld a, [H_DIVIDEND] ; $ff95 (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) ld [de], a - ld hl, W_PARTYMON1_NUM ; $d16b (aliases: W_PARTYMON1DATA) - ld bc, $2c - ld a, [wCurrentMenuItem] ; $cc26 + ld hl, wPartyMons + ld bc, wPartyMon2 - wPartyMon1 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem call AddNTimes push hl - ld de, $cc97 + ld de, wcc97 ld bc, $2c call CopyData - ld hl, W_PARTYMON1_NUM ; $d16b (aliases: W_PARTYMON1DATA) + ld hl, wPartyMons ld bc, $2c - ld a, [$cc35] + ld a, [wcc35] call AddNTimes pop de push hl ld bc, $2c call CopyData pop de - ld hl, $cc97 + ld hl, wcc97 ld bc, $2c call CopyData - ld hl, W_PARTYMON1OT ; $d273 - ld a, [wCurrentMenuItem] ; $cc26 + ld hl, wPartyMonOT ; wd273 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem call SkipFixedLengthTextEntries push hl - ld de, $cc97 + ld de, wcc97 ld bc, $b call CopyData - ld hl, W_PARTYMON1OT ; $d273 - ld a, [$cc35] + ld hl, wPartyMonOT ; wd273 + ld a, [wcc35] call SkipFixedLengthTextEntries pop de push hl ld bc, $b call CopyData pop de - ld hl, $cc97 + ld hl, wcc97 ld bc, $b call CopyData - ld hl, W_PARTYMON1NAME ; $d2b5 - ld a, [wCurrentMenuItem] ; $cc26 + ld hl, wPartyMonNicks ; wPartyMonNicks + ld a, [wCurrentMenuItem] ; wCurrentMenuItem call SkipFixedLengthTextEntries push hl - ld de, $cc97 + ld de, wcc97 ld bc, $b call CopyData - ld hl, W_PARTYMON1NAME ; $d2b5 - ld a, [$cc35] + ld hl, wPartyMonNicks ; wPartyMonNicks + ld a, [wcc35] call SkipFixedLengthTextEntries pop de push hl ld bc, $b call CopyData pop de - ld hl, $cc97 + ld hl, wcc97 ld bc, $b call CopyData - ld a, [$cc35] - ld [wWhichTrade], a ; $cd3d + ld a, [wcc35] + ld [wWhichTrade], a ; wWhichTrade xor a - ld [$cc35], a - ld [$d07d], a + ld [wcc35], a + ld [wd07d], a pop de pop hl ret diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm index cfce493e..65b06e9d 100755 --- a/engine/menu/status_screen.asm +++ b/engine/menu/status_screen.asm @@ -1,18 +1,18 @@ ; Predef 0x37 StatusScreen: ; 12953 (4:6953) call LoadMonData - ld a, [$cc49] + ld a, [wcc49] cp $2 ; 2 means we're in a PC box jr c, .DontRecalculate ; 0x1295b $14 - ld a, [$cf9b] - ld [$cfb9], a - ld [$d127], a - ld hl, $cfa8 - ld de, $cfba + ld a, [wcf9b] + ld [wcfb9], a + ld [W_CURENEMYLVL], a + ld hl, wcfa8 + ld de, wcfba ld b, $1 call CalcStats ; Recalculate stats .DontRecalculate - ld hl, $d72c + ld hl, wd72c set 1, [hl] ld a, $33 ld [$ff24], a ; Reduce the volume @@ -21,27 +21,26 @@ StatusScreen: ; 12953 (4:6953) call UpdateSprites ; move sprites (?) call LoadHpBarAndStatusTilePatterns ld de, BattleHudTiles1 ; $6080 ; source - ld hl, $96d0 ; dest + ld hl, vChars2 + $6d0 ; dest ld bc, (BANK(BattleHudTiles1) << 8) + $03 ; bank bytes/8 call CopyVideoDataDouble ; ·│ :L and halfarrow line end ld de, BattleHudTiles2 ; $6098 - ld hl, $9780 + ld hl, vChars2 + $780 ld bc, (BANK(BattleHudTiles2) << 8) + $01 call CopyVideoDataDouble ; │ ld de, BattleHudTiles3 ; $60b0 - ld hl, $9760 + ld hl, vChars2 + $760 ld bc, (BANK(BattleHudTiles3) << 8) + $02 call CopyVideoDataDouble ; ─┘ ld de, PTile - ld hl, $9720 + ld hl, vChars2 + $720 ld bc,(BANK(PTile) << 8 | $01) call CopyVideoDataDouble ; P (for PP), inline ld a, [$ffd7] push af xor a ld [$ffd7], a - FuncCoord 19,1 - ld hl, Coord + hlCoord 19, 1 ld bc, $060a call DrawLineBox ; Draws the box around name, HP and status ld de, $fffa @@ -49,86 +48,71 @@ StatusScreen: ; 12953 (4:6953) ld [hl], $f2 ; . after No ("." is a different one) dec hl ld [hl], "№" - FuncCoord 19,9 - ld hl, Coord + hlCoord 19, 9 ld bc, $0806 call DrawLineBox ; Draws the box around types, ID No. and OT - FuncCoord 10,9 - ld hl, Coord + hlCoord 10, 9 ld de, Type1Text call PlaceString ; "TYPE1/" - FuncCoord 11,3 - ld hl, Coord - PREDEF DrawHPBarPredef ; predef $5f - ld hl, $cf25 + hlCoord 11, 3 + predef DrawHP ; predef $5f + ld hl, wcf25 call GetHealthBarColor ld b, $3 call GoPAL_SET ; SGB palette - FuncCoord 16,6 - ld hl, Coord - ld de, $cf9c + hlCoord 16, 6 + ld de, wcf9c call PrintStatusCondition jr nz, .StatusWritten ; 0x129fc $9 - FuncCoord 16,6 - ld hl, Coord + hlCoord 16, 6 ld de, OKText call PlaceString ; "OK" .StatusWritten - FuncCoord 9,6 - ld hl, Coord + hlCoord 9, 6 ld de, StatusText call PlaceString ; "STATUS/" - FuncCoord 14,2 - ld hl, Coord + hlCoord 14, 2 call PrintLevel ; Pokémon level - ld a, [$d0b8] - ld [$d11e], a - ld [$d0b5], a - ld a, $3a - call Predef - FuncCoord 3,7 - ld hl, Coord - ld de, $d11e + ld a, [W_MONHDEXNUM] + ld [wd11e], a + ld [wd0b5], a + predef IndexToPokedex + hlCoord 3, 7 + ld de, wd11e ld bc, $8103 ; Zero-padded, 3 call PrintNumber ; Pokémon no. - FuncCoord 11,10 - ld hl, Coord - ld a, $4b - call Predef ; Prints the type (?) + hlCoord 11, 10 + predef Func_27d6b ; Prints the type (?) ld hl, NamePointers2 ; $6a9d call .unk_12a7e ld d, h ld e, l - FuncCoord 9,1 - ld hl, Coord + hlCoord 9, 1 call PlaceString ; Pokémon name ld hl, OTPointers ; $6a95 call .unk_12a7e ld d, h ld e, l - FuncCoord 12,16 - ld hl, Coord + hlCoord 12, 16 call PlaceString ; OT - FuncCoord 12,14 - ld hl, Coord - ld de, $cfa4 + hlCoord 12, 14 + ld de, wcfa4 ld bc, $8205 ; 5 call PrintNumber ; ID Number ld d, $0 call PrintStatsBox call Delay3 call GBPalNormal - FuncCoord 1, 0 ; $c3a1 - ld hl, Coord + hlCoord 1, 0 call LoadFlippedFrontSpriteByMonIndex ; draw Pokémon picture - ld a, [$cf91] + ld a, [wcf91] call PlayCry ; play Pokémon cry call WaitForTextScrollButtonPress ; wait for button pop af ld [$ffd7], a ret .unk_12a7e ; 0x12a7e ; I don't know what this does, iterates over pointers? - ld a, [$cc49] + ld a, [wcc49] add a ld c, a ld b, $0 @@ -136,22 +120,22 @@ StatusScreen: ; 12953 (4:6953) ld a, [hli] ld h, [hl] ld l, a - ld a, [$cc49] + ld a, [wcc49] cp $3 ret z ld a, [wWhichPokemon] jp SkipFixedLengthTextEntries OTPointers: ; 12a95 (4:6a95) - dw W_PARTYMON1OT - dw W_ENEMYMON1OT - dw W_BOXMON1OT + dw wPartyMonOT + dw wEnemyMonOT + dw wBoxMonOT dw W_DAYCAREMONOT NamePointers2: ; 12a9d (4:6a9d) - dw W_PARTYMON1NAME - dw W_ENEMYMON1NAME - dw W_BOXMON1NAME + dw wPartyMonNicks + dw wEnemyMonNicks + dw wBoxMonNicks dw W_DAYCAREMONNAME Type1Text: ; 12aa5 (4:6aa5) @@ -197,23 +181,19 @@ PrintStatsBox: ; 12ae4 (4:6ae4) ld a, d and a ; a is 0 from the status screen jr nz, .DifferentBox ; 0x12ae6 $12 - FuncCoord 0,8 - ld hl, Coord + hlCoord 0, 8 ld b, $8 ld c, $8 call TextBoxBorder ; Draws the box - FuncCoord 1,9 ; Start printing stats from here - ld hl, Coord + hlCoord 1, 9 ; Start printing stats from here ld bc, $0019 ; Number offset jr .PrintStats ; 0x12af8 $10 .DifferentBox - FuncCoord 9,2 - ld hl, Coord + hlCoord 9, 2 ld b, $8 ld c, $9 call TextBoxBorder - FuncCoord 11, 3 ; $c3e7 - ld hl, Coord + hlCoord 11, 3 ld bc, $0018 .PrintStats push bc @@ -223,14 +203,14 @@ PrintStatsBox: ; 12ae4 (4:6ae4) pop hl pop bc add hl, bc - ld de, $cfbc + ld de, wcfbc ld bc, $0203 ; three digits call PrintStat - ld de, $cfbe + ld de, wcfbe call PrintStat - ld de, $cfc0 + ld de, wcfc0 call PrintStat - ld de, $cfc2 + ld de, wcfc2 jp PrintNumber PrintStat push hl @@ -253,37 +233,32 @@ StatusScreen2: ; 12b57 (4:6b57) ld [$ffd7], a ld [$ffba], a ld bc, $0005 - ld hl, $d0dc + ld hl, wd0dc call FillMemory - ld hl, $cfa0 - ld de, $d0dc + ld hl, wcfa0 + ld de, wd0dc ld bc, $0004 call CopyData callab Func_39b87 - FuncCoord 9,2 - ld hl, Coord + hlCoord 9, 2 ld bc, $050a call ClearScreenArea ; Clear under name - FuncCoord 19, 3 ; $c3ef - ld hl, Coord + hlCoord 19, 3 ld [hl], $78 - FuncCoord 0,8 - ld hl, Coord + hlCoord 0, 8 ld b, $8 ld c, $12 call TextBoxBorder ; Draw move container - FuncCoord 2,9 - ld hl, Coord - ld de, $d0e1 + hlCoord 2, 9 + ld de, wd0e1 call PlaceString ; Print moves - ld a, [$cd6c] + ld a, [wcd6c] inc a ld c, a ld a, $4 sub c ld b, a ; Number of moves ? - FuncCoord 11,10 - ld hl, Coord + hlCoord 11, 10 ld de, $0028 ld a, $72 call Func_12ccb ; Print "PP" @@ -294,9 +269,8 @@ StatusScreen2: ; 12b57 (4:6b57) ld a, "-" call Func_12ccb ; Fill the rest with -- .InitPP ; 12bbb - ld hl, $cfa0 - FuncCoord 14,10 - ld de, Coord + ld hl, wcfa0 + deCoord 14, 10 ld b, $0 .PrintPP ; 12bc3 ld a, [hli] @@ -322,16 +296,16 @@ StatusScreen2: ; 12b57 (4:6b57) add hl, bc ld a, [hl] and $3f - ld [$cd71], a + ld [wcd71], a ld h, d ld l, e push hl - ld de, $cd71 + ld de, wcd71 ld bc, $0102 call PrintNumber ld a, "/" ld [hli], a - ld de, $d11e + ld de, wd11e ld bc, $0102 call PrintNumber pop hl @@ -346,47 +320,40 @@ StatusScreen2: ; 12b57 (4:6b57) cp $4 jr nz, .PrintPP ; 0x12c0f $b2 .PPDone - FuncCoord 9,3 - ld hl, Coord + hlCoord 9, 3 ld de, EXPPointsText call PlaceString - ld a, [$cfb9] ; level + ld a, [wcfb9] ; level push af - cp 100 + cp MAX_LEVEL jr z, .Level100 ; 0x12c20 $4 inc a - ld [$cfb9], a ; Increase temporarily if not 100 + ld [wcfb9], a ; Increase temporarily if not 100 .Level100 - FuncCoord 14,6 - ld hl, Coord + hlCoord 14, 6 ld [hl], $70 ; 1-tile "to" inc hl inc hl call PrintLevel pop af - ld [$cfb9], a - ld de, $cfa6 - FuncCoord 12,4 - ld hl, Coord + ld [wcfb9], a + ld de, wcfa6 + hlCoord 12, 4 ld bc, $0307 call PrintNumber ; exp call .asm_12c86 - ld de, $cfa6 - FuncCoord 7,6 - ld hl, Coord + ld de, wcfa6 + hlCoord 7, 6 ld bc, $0307 call PrintNumber - FuncCoord 9,0 - ld hl, Coord + hlCoord 9, 0 call Func_12cc3 - FuncCoord 9,1 - ld hl, Coord + hlCoord 9, 1 call Func_12cc3 - ld a, [$d0b8] - ld [$d11e], a + ld a, [W_MONHDEXNUM] + ld [wd11e], a call GetMonName - FuncCoord 9,1 - ld hl, Coord + hlCoord 9, 1 call PlaceString ld a, $1 ld [$ffba], a @@ -394,20 +361,20 @@ StatusScreen2: ; 12b57 (4:6b57) call WaitForTextScrollButtonPress ; wait for button pop af ld [$ffd7], a - ld hl, $d72c + ld hl, wd72c res 1, [hl] ld a, $77 ld [$ff24], a call GBPalWhiteOut jp ClearScreen .asm_12c86 ; This does some magic with lvl/exp? - ld a, [$cfb9] ; Load level - cp $64 + ld a, [wcfb9] ; Load level + cp MAX_LEVEL jr z, .asm_12ca7 ; 0x12c8b $1a ; If 100 inc a ld d, a callab CalcExperience - ld hl, $cfa8 + ld hl, wcfa8 ld a, [$ff98] sub [hl] ld [hld], a @@ -419,7 +386,7 @@ StatusScreen2: ; 12b57 (4:6b57) ld [hld], a ret .asm_12ca7 - ld hl, $cfa6 + ld hl, wcfa6 xor a ld [hli], a ld [hli], a diff --git a/engine/menu/vending_machine.asm b/engine/menu/vending_machine.asm index 1f0ed084..c2968e2f 100755 --- a/engine/menu/vending_machine.asm +++ b/engine/menu/vending_machine.asm @@ -2,41 +2,38 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0) ld hl, VendingMachineText1 call PrintText ld a, $13 - ld [$d125], a + ld [wd125], a call DisplayTextBoxID xor a - ld [wCurrentMenuItem], a ; $cc26 - ld [wLastMenuItem], a ; $cc2a + ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wLastMenuItem], a ; wLastMenuItem ld a, $3 - ld [wMenuWatchedKeys], a ; $cc29 + ld [wMenuWatchedKeys], a ; wMenuWatchedKeys ld a, $3 - ld [wMaxMenuItem], a ; $cc28 + ld [wMaxMenuItem], a ; wMaxMenuItem ld a, $5 - ld [wTopMenuItemY], a ; $cc24 + ld [wTopMenuItemY], a ; wTopMenuItemY ld a, $1 - ld [wTopMenuItemX], a ; $cc25 - ld hl, $d730 + ld [wTopMenuItemX], a ; wTopMenuItemX + ld hl, wd730 set 6, [hl] - FuncCoord 0, 3 ; $c3dc - ld hl, Coord + hlCoord 0, 3 ld b, $8 ld c, $c call TextBoxBorder call UpdateSprites - FuncCoord 2, 5 ; $c406 - ld hl, Coord + hlCoord 2, 5 ld de, DrinkText call PlaceString - FuncCoord 9, 6 ; $c421 - ld hl, Coord + hlCoord 9, 6 ld de, DrinkPriceText call PlaceString - ld hl, $d730 + ld hl, wd730 res 6, [hl] call HandleMenuInput bit 1, a jr nz, .asm_74f93 - ld a, [wCurrentMenuItem] ; $cc26 + ld a, [wCurrentMenuItem] ; wCurrentMenuItem cp $3 jr z, .asm_74f93 xor a @@ -69,12 +66,11 @@ VendingMachineMenu: ; 74ee0 (1d:4ee0) ld hl, VendingMachineText5 call PrintText ld hl, $ffde - ld de, wPlayerMoney + 2 ; $d349 + ld de, wPlayerMoney + 2 ; wd349 ld c, $3 - ld a, $c - call Predef ; indirect jump to Func_f836 (f836 (3:7836)) + predef SubBCDPredef ld a, $13 - ld [$d125], a + ld [wd125], a jp DisplayTextBoxID .BagFull ld hl, VendingMachineText6 @@ -116,7 +112,7 @@ VendingMachineText7: ; 74fe2 (1d:4fe2) Func_74fe7: ; 74fe7 (1d:4fe7) ld hl, VendingPrices - ld a, [$cc26] + ld a, [wCurrentMenuItem] add a add a ld d, $0 |