diff options
Diffstat (limited to 'home')
43 files changed, 726 insertions, 726 deletions
diff --git a/home/audio.asm b/home/audio.asm index dd115449d..917d52953 100644 --- a/home/audio.asm +++ b/home/audio.asm @@ -6,16 +6,16 @@ MapSetup_Sound_Off:: push bc push af - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_MapSetup_Sound_Off) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a call _MapSetup_Sound_Off pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a pop af @@ -30,16 +30,16 @@ UpdateSound:: push bc push af - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_UpdateSound) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a call _UpdateSound pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a pop af @@ -50,14 +50,14 @@ UpdateSound:: _LoadMusicByte:: ; wCurMusicByte = [a:de] - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ld a, [de] ld [wCurMusicByte], a ld a, BANK(LoadMusicByte) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ret @@ -69,10 +69,10 @@ PlayMusic:: push bc push af - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_PlayMusic) ; and BANK(_MapSetup_Sound_Off) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ld a, e @@ -87,7 +87,7 @@ PlayMusic:: .end pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a pop af pop bc @@ -103,10 +103,10 @@ PlayMusic2:: push bc push af - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_PlayMusic) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a push de @@ -117,7 +117,7 @@ PlayMusic2:: call _PlayMusic pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a pop af @@ -134,12 +134,12 @@ PlayCry:: push bc push af - ld a, [hROMBank] + ldh a, [hROMBank] push af ; Cries are stuck in one bank. ld a, BANK(PokemonCries) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ld hl, PokemonCries @@ -162,13 +162,13 @@ endr ld [wCryLength + 1], a ld a, BANK(_PlayCry) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a call _PlayCry pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a pop af @@ -196,10 +196,10 @@ PlaySFX:: jr c, .done .play - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_PlaySFX) - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ld a, e @@ -207,7 +207,7 @@ PlaySFX:: call _PlaySFX pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a .done @@ -525,11 +525,11 @@ TerminateExpBarSound:: xor a ld [wChannel5Flags1], a ld [wSoundInput], a - ld [rNR10], a - ld [rNR11], a - ld [rNR12], a - ld [rNR13], a - ld [rNR14], a + ldh [rNR10], a + ldh [rNR11], a + ldh [rNR12], a + ldh [rNR13], a + ldh [rNR14], a ret ChannelsOff:: diff --git a/home/battle.asm b/home/battle.asm index e88adef02..407ef44c8 100644 --- a/home/battle.asm +++ b/home/battle.asm @@ -1,6 +1,6 @@ UserPartyAttr:: push af - ld a, [hBattleTurn] + ldh a, [hBattleTurn] and a jr nz, .ot pop af @@ -11,7 +11,7 @@ UserPartyAttr:: OpponentPartyAttr:: push af - ld a, [hBattleTurn] + ldh a, [hBattleTurn] and a jr z, .ot pop af @@ -52,22 +52,22 @@ ResetDamage:: SetPlayerTurn:: xor a - ld [hBattleTurn], a + ldh [hBattleTurn], a ret SetEnemyTurn:: ld a, 1 - ld [hBattleTurn], a + ldh [hBattleTurn], a ret UpdateOpponentInParty:: - ld a, [hBattleTurn] + ldh a, [hBattleTurn] and a jr z, UpdateEnemyMonInParty jr UpdateBattleMonInParty UpdateUserInParty:: - ld a, [hBattleTurn] + ldh a, [hBattleTurn] and a jr z, UpdateBattleMonInParty jr UpdateEnemyMonInParty @@ -120,14 +120,14 @@ INCLUDE "home/battle_vars.asm" FarCopyRadioText:: inc hl - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [hli] ld e, a ld a, [hli] ld d, a ld a, [hli] - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ld a, e ld l, a @@ -137,7 +137,7 @@ FarCopyRadioText:: ld bc, 2 * SCREEN_WIDTH call CopyBytes pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ret @@ -169,7 +169,7 @@ BattleTextBox:: StdBattleTextBox:: ; Open a textbox and print battle text at 20:hl. - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(BattleText) diff --git a/home/battle_vars.asm b/home/battle_vars.asm index a455fce20..2ed86484d 100644 --- a/home/battle_vars.asm +++ b/home/battle_vars.asm @@ -23,7 +23,7 @@ GetBattleVarAddr:: ; Enemy turn uses the second byte instead. ; This lets battle variable calls be side-neutral. - ld a, [hBattleTurn] + ldh a, [hBattleTurn] and a jr z, .getvar inc hl diff --git a/home/copy.asm b/home/copy.asm index 68ed240e3..803432dc5 100644 --- a/home/copy.asm +++ b/home/copy.asm @@ -1,7 +1,7 @@ ; Functions to copy data from ROM. Get2bpp_2:: - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a jp z, Copy2bpp @@ -10,7 +10,7 @@ Get2bpp_2:: ret Get1bpp_2:: - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a jp z, Copy1bpp @@ -19,10 +19,10 @@ Get1bpp_2:: ret FarCopyBytesDouble_DoubleBankSwitch:: - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call FarCopyBytesDouble @@ -33,11 +33,11 @@ FarCopyBytesDouble_DoubleBankSwitch:: OldDMATransfer:: dec c - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af xor a - ld [hBGMapMode], a - ld a, [hROMBank] + ldh [hBGMapMode], a + ldh a, [hROMBank] push af ld a, b rst Bankswitch @@ -45,16 +45,16 @@ OldDMATransfer:: .loop ; load the source and target MSB and LSB ld a, d - ld [rHDMA1], a ; source MSB + ldh [rHDMA1], a ; source MSB ld a, e and $f0 - ld [rHDMA2], a ; source LSB + ldh [rHDMA2], a ; source LSB ld a, h and $1f - ld [rHDMA3], a ; target MSB + ldh [rHDMA3], a ; target MSB ld a, l and $f0 - ld [rHDMA4], a ; target LSB + ldh [rHDMA4], a ; target LSB ; stop when c < 8 ld a, c cp $8 @@ -64,7 +64,7 @@ OldDMATransfer:: ld c, a ; DMA transfer state ld a, $f - ld [hDMATransfer], a + ldh [hDMATransfer], a call DelayFrame ; add $100 to hl and de ld a, l @@ -84,13 +84,13 @@ OldDMATransfer:: .done ld a, c and $7f ; pretty silly, considering at most bits 0-2 would be set - ld [hDMATransfer], a + ldh [hDMATransfer], a call DelayFrame pop af rst Bankswitch pop af - ld [hBGMapMode], a + ldh [hBGMapMode], a ret ReplaceKrisSprite:: @@ -135,10 +135,10 @@ DecompressRequest2bpp:: FarCopyBytes:: ; copy bc bytes from a:hl to de - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call CopyBytes @@ -151,10 +151,10 @@ FarCopyBytesDouble:: ; Copy bc bytes from a:hl to bc*2 bytes at de, ; doubling each byte in the process. - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch ; switcheroo, de <> hl @@ -186,29 +186,29 @@ FarCopyBytesDouble:: Request2bpp:: ; Load 2bpp at b:de to occupy c tiles of hl. - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, b rst Bankswitch - ld a, [hTilesPerCycle] + ldh a, [hTilesPerCycle] push af ld a, $8 - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a ld a, [wLinkMode] cp LINK_MOBILE jr nz, .NotMobile - ld a, [hMobile] + ldh a, [hMobile] and a jr nz, .NotMobile ld a, $6 - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a .NotMobile: ld a, e @@ -233,17 +233,17 @@ Request2bpp:: jr nz, .wait pop af - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a pop af rst Bankswitch pop af - ld [hBGMapMode], a + ldh [hBGMapMode], a ret .iterate - ld a, [hTilesPerCycle] + ldh a, [hTilesPerCycle] ld [wRequested2bpp], a .wait2 @@ -260,29 +260,29 @@ Request2bpp:: Request1bpp:: ; Load 1bpp at b:de to occupy c tiles of hl. - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, b rst Bankswitch - ld a, [hTilesPerCycle] + ldh a, [hTilesPerCycle] push af ld a, $8 - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a ld a, [wLinkMode] cp LINK_MOBILE jr nz, .NotMobile - ld a, [hMobile] + ldh a, [hMobile] and a jr nz, .NotMobile ld a, $6 - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a .NotMobile: ld a, e @@ -307,17 +307,17 @@ Request1bpp:: jr nz, .wait pop af - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a pop af rst Bankswitch pop af - ld [hBGMapMode], a + ldh [hBGMapMode], a ret .iterate - ld a, [hTilesPerCycle] + ldh a, [hTilesPerCycle] ld [wRequested1bpp], a .wait2 @@ -333,7 +333,7 @@ Request1bpp:: jr .loop Get2bpp:: - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a jp nz, Request2bpp @@ -362,7 +362,7 @@ Copy2bpp:: jp FarCopyBytes Get1bpp:: - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a jp nz, Request1bpp diff --git a/home/copy2.asm b/home/copy2.asm index fdf55b2e3..018986cf2 100644 --- a/home/copy2.asm +++ b/home/copy2.asm @@ -54,31 +54,31 @@ ByteFill:: GetFarByte:: ; retrieve a single byte from a:hl, and return it in a. ; bankswitch to new bank - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch ; get byte from new bank ld a, [hl] - ld [hBuffer], a + ldh [hBuffer], a ; bankswitch to previous bank pop af rst Bankswitch ; return retrieved value in a - ld a, [hBuffer] + ldh a, [hBuffer] ret GetFarHalfword:: ; retrieve a halfword from a:hl, and return it in hl. ; bankswitch to new bank - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch ; get halfword from new bank, put it in hl @@ -92,40 +92,40 @@ GetFarHalfword:: ret FarCopyWRAM:: - ld [hBuffer], a - ld a, [rSVBK] + ldh [hBuffer], a + ldh a, [rSVBK] push af - ld a, [hBuffer] - ld [rSVBK], a + ldh a, [hBuffer] + ldh [rSVBK], a call CopyBytes pop af - ld [rSVBK], a + ldh [rSVBK], a ret GetFarWRAMByte:: - ld [hBuffer], a - ld a, [rSVBK] + ldh [hBuffer], a + ldh a, [rSVBK] push af - ld a, [hBuffer] - ld [rSVBK], a + ldh a, [hBuffer] + ldh [rSVBK], a ld a, [hl] - ld [hBuffer], a + ldh [hBuffer], a pop af - ld [rSVBK], a - ld a, [hBuffer] + ldh [rSVBK], a + ldh a, [hBuffer] ret GetFarWRAMWord:: - ld [hBuffer], a - ld a, [rSVBK] + ldh [hBuffer], a + ldh a, [rSVBK] push af - ld a, [hBuffer] - ld [rSVBK], a + ldh a, [hBuffer] + ldh [rSVBK], a ld a, [hli] ld h, [hl] ld l, a pop af - ld [rSVBK], a + ldh [rSVBK], a ret diff --git a/home/copy_tilemap.asm b/home/copy_tilemap.asm index 2c6c47244..e5fbcc07e 100644 --- a/home/copy_tilemap.asm +++ b/home/copy_tilemap.asm @@ -1,35 +1,35 @@ LoadTileMapToTempTileMap:: ; Load wTileMap into wTempTileMap - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wTempTileMap) - ld [rSVBK], a + ldh [rSVBK], a hlcoord 0, 0 decoord 0, 0, wTempTileMap ld bc, wTileMapEnd - wTileMap call CopyBytes pop af - ld [rSVBK], a + ldh [rSVBK], a ret Call_LoadTempTileMapToTileMap:: xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call LoadTempTileMapToTileMap ld a, 1 - ld [hBGMapMode], a + ldh [hBGMapMode], a ret LoadTempTileMapToTileMap:: ; Load wTempTileMap into wTileMap - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wTempTileMap) - ld [rSVBK], a + ldh [rSVBK], a hlcoord 0, 0, wTempTileMap decoord 0, 0 ld bc, wTileMapEnd - wTileMap call CopyBytes pop af - ld [rSVBK], a + ldh [rSVBK], a ret diff --git a/home/cry.asm b/home/cry.asm index 43f20b1af..856134b3e 100644 --- a/home/cry.asm +++ b/home/cry.asm @@ -55,7 +55,7 @@ LoadCry:: call GetCryIndex ret c - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(PokemonCries) rst Bankswitch diff --git a/home/decompress.asm b/home/decompress.asm index d4bab7a6a..35070ad04 100644 --- a/home/decompress.asm +++ b/home/decompress.asm @@ -2,7 +2,7 @@ FarDecompress:: ; Decompress graphics data from a:hl to de. ld [wLZBank], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [wLZBank] rst Bankswitch diff --git a/home/double_speed.asm b/home/double_speed.asm index de075e65e..b3839e320 100644 --- a/home/double_speed.asm +++ b/home/double_speed.asm @@ -19,9 +19,9 @@ NormalSpeed:: SwitchSpeed:: set 0, [hl] xor a - ld [rIF], a - ld [rIE], a + ldh [rIF], a + ldh [rIE], a ld a, $30 - ld [rJOYP], a + ldh [rJOYP], a stop ; rgbasm adds a nop after this instruction by default ret diff --git a/home/fade.asm b/home/fade.asm index 56f0197e6..bc8bf2721 100644 --- a/home/fade.asm +++ b/home/fade.asm @@ -13,15 +13,15 @@ Unreferenced_Function48c:: .okay ld a, [hli] - ld [rBGP], a + ldh [rBGP], a ld a, [hli] - ld [rOBP0], a + ldh [rOBP0], a ld a, [hli] - ld [rOBP1], a + ldh [rOBP1], a ret RotateFourPalettesRight:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg ld hl, IncGradGBPalTable_00 @@ -34,7 +34,7 @@ RotateFourPalettesRight:: jr RotatePalettesRight RotateThreePalettesRight:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg ld hl, IncGradGBPalTable_05 @@ -63,7 +63,7 @@ RotatePalettesRight:: ret RotateFourPalettesLeft:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg ld hl, IncGradGBPalTable_04 - 1 @@ -76,7 +76,7 @@ RotateFourPalettesLeft:: jr RotatePalettesLeft RotateThreePalettesLeft:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg ld hl, IncGradGBPalTable_07 - 1 diff --git a/home/farcall.asm b/home/farcall.asm index cb87b1774..102460666 100644 --- a/home/farcall.asm +++ b/home/farcall.asm @@ -2,10 +2,10 @@ FarCall_de:: ; Call a:de. ; Preserves other registers. - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call .de jr ReturnFarCall @@ -18,10 +18,10 @@ FarCall_hl:: ; Call a:hl. ; Preserves other registers. - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call FarJump_hl diff --git a/home/game_time.asm b/home/game_time.asm index 0300db73d..a545631cd 100644 --- a/home/game_time.asm +++ b/home/game_time.asm @@ -11,15 +11,15 @@ ResetGameTime:: GameTimer:: nop - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wGameTime) - ld [rSVBK], a + ldh [rSVBK], a call UpdateGameTimer pop af - ld [rSVBK], a + ldh [rSVBK], a ret UpdateGameTimer:: diff --git a/home/handshake.asm b/home/handshake.asm index 1d3f43d6a..44c659496 100644 --- a/home/handshake.asm +++ b/home/handshake.asm @@ -29,14 +29,14 @@ AskSerial:: ; handshake ld a, $88 - ld [rSB], a + ldh [rSB], a ; switch to internal clock ld a, %00000001 - ld [rSC], a + ldh [rSC], a ; start transfer ld a, %10000001 - ld [rSC], a + ldh [rSC], a ret diff --git a/home/init.asm b/home/init.asm index dc1f538be..0c670737a 100644 --- a/home/init.asm +++ b/home/init.asm @@ -2,12 +2,12 @@ Reset:: di call MapSetup_Sound_Off xor a - ld [hMapAnims], a + ldh [hMapAnims], a call ClearPalettes xor a - ld [rIF], a + ldh [rIF], a ld a, 1 ; VBlank int - ld [rIE], a + ldh [rIE], a ei ld hl, wcfbe @@ -28,40 +28,40 @@ _Start:: ld a, $1 .load - ld [hCGB], a + ldh [hCGB], a ld a, $1 - ld [hSystemBooted], a + ldh [hSystemBooted], a Init:: di xor a - ld [rIF], a - ld [rIE], a - ld [rRP], a - ld [rSCX], a - ld [rSCY], a - ld [rSB], a - ld [rSC], a - ld [rWX], a - ld [rWY], a - ld [rBGP], a - ld [rOBP0], a - ld [rOBP1], a - ld [rTMA], a - ld [rTAC], a + ldh [rIF], a + ldh [rIE], a + ldh [rRP], a + ldh [rSCX], a + ldh [rSCY], a + ldh [rSB], a + ldh [rSC], a + ldh [rWX], a + ldh [rWY], a + ldh [rBGP], a + ldh [rOBP0], a + ldh [rOBP1], a + ldh [rTMA], a + ldh [rTAC], a ld [WRAM1_Begin], a ld a, %100 ; Start timer at 4096Hz - ld [rTAC], a + ldh [rTAC], a .wait - ld a, [rLY] + ldh a, [rLY] cp LY_VBLANK + 1 jr nz, .wait xor a - ld [rLCDC], a + ldh [rLCDC], a ; Clear WRAM bank 0 ld hl, WRAM0_Begin @@ -77,22 +77,22 @@ Init:: ld sp, wStack ; Clear HRAM - ld a, [hCGB] + ldh a, [hCGB] push af - ld a, [hSystemBooted] + ldh a, [hSystemBooted] push af xor a ld hl, HRAM_Begin ld bc, HRAM_End - HRAM_Begin call ByteFill pop af - ld [hSystemBooted], a + ldh [hSystemBooted], a pop af - ld [hCGB], a + ldh [hCGB], a call ClearWRAM ld a, 1 - ld [rSVBK], a + ldh [rSVBK], a call ClearVRAM call ClearSprites call ClearsScratch @@ -103,21 +103,21 @@ Init:: call WriteOAMDMACodeToHRAM xor a - ld [hMapAnims], a - ld [hSCX], a - ld [hSCY], a - ld [rJOYP], a + ldh [hMapAnims], a + ldh [hSCX], a + ldh [hSCY], a + ldh [rJOYP], a ld a, $8 ; HBlank int enable - ld [rSTAT], a + ldh [rSTAT], a ld a, $90 - ld [hWY], a - ld [rWY], a + ldh [hWY], a + ldh [rWY], a ld a, 7 - ld [hWX], a - ld [rWX], a + ldh [hWX], a + ldh [rWX], a ld a, LCDC_DEFAULT ; %11100011 ; LCD on @@ -128,17 +128,17 @@ Init:: ; OBJ 8x8 ; OBJ on ; BG on - ld [rLCDC], a + ldh [rLCDC], a ld a, CONNECTION_NOT_ESTABLISHED - ld [hSerialConnectionStatus], a + ldh [hSerialConnectionStatus], a farcall InitCGBPals ld a, HIGH(vBGMap1) - ld [hBGMapAddress + 1], a + ldh [hBGMapAddress + 1], a xor a ; LOW(vBGMap1) - ld [hBGMapAddress], a + ldh [hBGMapAddress], a farcall StartClock @@ -146,16 +146,16 @@ Init:: ld [MBC3LatchClock], a ld [MBC3SRamEnable], a - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .no_double_speed call NormalSpeed .no_double_speed xor a - ld [rIF], a + ldh [rIF], a ld a, %1111 ; VBlank, LCDStat, Timer, Serial interrupts - ld [rIE], a + ldh [rIE], a ei call DelayFrame @@ -171,11 +171,11 @@ ClearVRAM:: ; Wipe VRAM banks 0 and 1 ld a, 1 - ld [rVBK], a + ldh [rVBK], a call .clear xor a ; 0 - ld [rVBK], a + ldh [rVBK], a .clear ld hl, VRAM_Begin ld bc, VRAM_End - VRAM_Begin @@ -190,7 +190,7 @@ ClearWRAM:: ld a, 1 .bank_loop push af - ld [rSVBK], a + ldh [rSVBK], a xor a ld hl, WRAM1_Begin ld bc, WRAM1_End - WRAM1_Begin diff --git a/home/item.asm b/home/item.asm index 282157e55..9e15879d4 100644 --- a/home/item.asm +++ b/home/item.asm @@ -16,7 +16,7 @@ TossItem:: push hl push de push bc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_TossItem) rst Bankswitch @@ -33,7 +33,7 @@ TossItem:: ReceiveItem:: push bc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_ReceiveItem) rst Bankswitch @@ -54,7 +54,7 @@ CheckItem:: push hl push de push bc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_CheckItem) rst Bankswitch diff --git a/home/joypad.asm b/home/joypad.asm index 392be760b..7a1174b10 100644 --- a/home/joypad.asm +++ b/home/joypad.asm @@ -8,9 +8,9 @@ JoypadInt:: ClearJoypad:: xor a ; Pressed this frame (delta) - ld [hJoyPressed], a + ldh [hJoyPressed], a ; Currently pressed - ld [hJoyDown], a + ldh [hJoyDown], a ret Joypad:: @@ -38,10 +38,10 @@ Joypad:: ; We can only get four inputs at a time. ; We take d-pad first for no particular reason. ld a, R_DPAD - ld [rJOYP], a + ldh [rJOYP], a ; Read twice to give the request time to take. - ld a, [rJOYP] - ld a, [rJOYP] + ldh a, [rJOYP] + ldh a, [rJOYP] ; The Joypad register output is in the lo nybble (inversed). ; We make the hi nybble of our new container d-pad input. @@ -55,10 +55,10 @@ Joypad:: ; Buttons make 8 total inputs (A, B, Select, Start). ; We can fit this into one byte. ld a, R_BUTTONS - ld [rJOYP], a + ldh [rJOYP], a ; Wait for input to stabilize. rept 6 - ld a, [rJOYP] + ldh a, [rJOYP] endr ; Buttons take the lo nybble. cpl @@ -68,30 +68,30 @@ endr ; Reset the joypad register since we're done with it. ld a, $30 - ld [rJOYP], a + ldh [rJOYP], a ; To get the delta we xor the last frame's input with the new one. - ld a, [hJoypadDown] ; last frame + ldh a, [hJoypadDown] ; last frame ld e, a xor b ld d, a ; Released this frame: and e - ld [hJoypadReleased], a + ldh [hJoypadReleased], a ; Pressed this frame: ld a, d and b - ld [hJoypadPressed], a + ldh [hJoypadPressed], a ; Add any new presses to the list of collective presses: ld c, a - ld a, [hJoypadSum] + ldh a, [hJoypadSum] or c - ld [hJoypadSum], a + ldh [hJoypadSum], a ; Currently pressed: ld a, b - ld [hJoypadDown], a + ldh [hJoypadDown], a ; Now that we have the input, we can do stuff with it. @@ -130,28 +130,28 @@ GetJoypad:: jr z, .auto ; To get deltas, take this and last frame's input. - ld a, [hJoypadDown] ; real input + ldh a, [hJoypadDown] ; real input ld b, a - ld a, [hJoyDown] ; last frame mirror + ldh a, [hJoyDown] ; last frame mirror ld e, a ; Released this frame: xor b ld d, a and e - ld [hJoyReleased], a + ldh [hJoyReleased], a ; Pressed this frame: ld a, d and b - ld [hJoyPressed], a + ldh [hJoyPressed], a ; It looks like the collective presses got commented out here. ld c, a ; Currently pressed: ld a, b - ld [hJoyDown], a ; frame input + ldh [hJoyDown], a ; frame input .quit pop bc @@ -167,7 +167,7 @@ GetJoypad:: ; A value of $ff will immediately end the stream. ; Read from the input stream. - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [wAutoInputBank] rst Bankswitch @@ -224,8 +224,8 @@ GetJoypad:: pop af rst Bankswitch ld a, b - ld [hJoyPressed], a ; pressed - ld [hJoyDown], a ; input + ldh [hJoyPressed], a ; pressed + ldh [hJoyDown], a ; input jr .quit StartAutoInput:: @@ -241,9 +241,9 @@ StartAutoInput:: ld [wAutoInputLength], a ; Reset input mirrors. xor a - ld [hJoyPressed], a ; pressed this frame - ld [hJoyReleased], a ; released this frame - ld [hJoyDown], a ; currently pressed + ldh [hJoyPressed], a ; pressed this frame + ldh [hJoyReleased], a ; released this frame + ldh [hJoyDown], a ; currently pressed ld a, AUTO_INPUT ld [wInputType], a @@ -269,11 +269,11 @@ JoyTitleScreenInput:: call JoyTextDelay pop bc - ld a, [hJoyDown] + ldh a, [hJoyDown] cp D_UP | SELECT | B_BUTTON jr z, .keycombo - ld a, [hJoyLast] + ldh a, [hJoyLast] and START | A_BUTTON jr nz, .keycombo @@ -291,33 +291,33 @@ JoyWaitAorB:: .loop call DelayFrame call GetJoypad - ld a, [hJoyPressed] + ldh a, [hJoyPressed] and A_BUTTON | B_BUTTON ret nz call RTC jr .loop WaitButton:: - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, 1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call WaitBGMap call JoyWaitAorB pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ret JoyTextDelay:: call GetJoypad - ld a, [hInMenu] + ldh a, [hInMenu] and a - ld a, [hJoyPressed] + ldh a, [hJoyPressed] jr z, .ok - ld a, [hJoyDown] + ldh a, [hJoyDown] .ok - ld [hJoyLast], a - ld a, [hJoyPressed] + ldh [hJoyLast], a + ldh a, [hJoyPressed] and a jr z, .checkframedelay ld a, 15 @@ -329,7 +329,7 @@ JoyTextDelay:: and a jr z, .restartframedelay xor a - ld [hJoyLast], a + ldh [hJoyLast], a ret .restartframedelay @@ -338,14 +338,14 @@ JoyTextDelay:: ret WaitPressAorB_BlinkCursor:: - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] push af - ld a, [hObjectStructIndexBuffer] + ldh a, [hObjectStructIndexBuffer] push af xor a - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ld a, 6 - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a .loop push hl @@ -354,20 +354,20 @@ WaitPressAorB_BlinkCursor:: pop hl call JoyTextDelay - ld a, [hJoyLast] + ldh a, [hJoyLast] and A_BUTTON | B_BUTTON jr z, .loop pop af - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a pop af - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ret SimpleWaitPressAorB:: .loop call JoyTextDelay - ld a, [hJoyLast] + ldh a, [hJoyLast] and A_BUTTON | B_BUTTON jr z, .loop ret @@ -388,10 +388,10 @@ ButtonSound:: jp DelayFrames .wait_input - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, $1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ld a, [wInputType] or a jr z, .input_wait_loop @@ -400,22 +400,22 @@ ButtonSound:: .input_wait_loop call .blink_cursor call JoyTextDelay - ld a, [hJoyPressed] + ldh a, [hJoyPressed] and A_BUTTON | B_BUTTON jr nz, .received_input call RTC ld a, $1 - ld [hBGMapMode], a + ldh [hBGMapMode], a call DelayFrame jr .input_wait_loop .received_input pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ret .blink_cursor - ld a, [hVBlankCounter] + ldh a, [hVBlankCounter] and %00010000 ; bit 4, a jr z, .cursor_off ld a, "▼" @@ -436,37 +436,37 @@ BlinkCursor:: cp b pop bc jr nz, .place_arrow - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] dec a - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ret nz - ld a, [hObjectStructIndexBuffer] + ldh a, [hObjectStructIndexBuffer] dec a - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a ret nz ld a, "─" ld [hl], a ld a, -1 - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ld a, 6 - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a ret .place_arrow - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] and a ret z dec a - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ret nz dec a - ld [hMapObjectIndexBuffer], a - ld a, [hObjectStructIndexBuffer] + ldh [hMapObjectIndexBuffer], a + ldh a, [hObjectStructIndexBuffer] dec a - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a ret nz ld a, 6 - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a ld a, "▼" ld [hl], a ret diff --git a/home/lcd.asm b/home/lcd.asm index 7ea53d453..68edf9b0f 100644 --- a/home/lcd.asm +++ b/home/lcd.asm @@ -1,8 +1,8 @@ ; LCD handling Unreferenced_Function547:: - ld a, [hLCDCPointer] - cp rSCX - $ff00 + ldh a, [hLCDCPointer] + cp LOW(rSCX) ret nz ld c, a ld a, [wLYOverrides] @@ -11,18 +11,18 @@ Unreferenced_Function547:: LCD:: push af - ld a, [hLCDCPointer] + ldh a, [hLCDCPointer] and a jr z, .done ; At this point it's assumed we're in WRAM bank 5! push bc - ld a, [rLY] + ldh a, [rLY] ld c, a ld b, HIGH(wLYOverrides) ld a, [bc] ld b, a - ld a, [hLCDCPointer] + ldh a, [hLCDCPointer] ld c, a ld a, b ld [$ff00+c], a @@ -36,37 +36,37 @@ DisableLCD:: ; Turn the LCD off ; Don't need to do anything if the LCD is already off - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a ret z xor a - ld [rIF], a - ld a, [rIE] + ldh [rIF], a + ldh a, [rIE] ld b, a ; Disable VBlank res 0, a ; vblank - ld [rIE], a + ldh [rIE], a .wait ; Wait until VBlank would normally happen - ld a, [rLY] + ldh a, [rLY] cp LY_VBLANK + 1 jr nz, .wait - ld a, [rLCDC] + ldh a, [rLCDC] and $ff ^ (1 << rLCDC_ENABLE) - ld [rLCDC], a + ldh [rLCDC], a xor a - ld [rIF], a + ldh [rIF], a ld a, b - ld [rIE], a + ldh [rIE], a ret EnableLCD:: - ld a, [rLCDC] + ldh a, [rLCDC] set rLCDC_ENABLE, a - ld [rLCDC], a + ldh [rLCDC], a ret diff --git a/home/map.asm b/home/map.asm index a38b791fb..b04399317 100644 --- a/home/map.asm +++ b/home/map.asm @@ -49,7 +49,7 @@ GetMapSceneID:: ; Searches the scene script table for the map group and number loaded in bc, and returns the wram pointer in de. ; If the map is not in the scene script table, returns carry. push bc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(MapScenes) rst Bankswitch @@ -97,7 +97,7 @@ OverworldTextModeSwitch:: ret LoadMapPart:: - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [wTilesetBlocksBank] @@ -207,10 +207,10 @@ endr ReturnToMapFromSubmenu:: ld a, MAPSETUP_SUBMENU - ld [hMapEntryMethod], a + ldh [hMapEntryMethod], a farcall RunMapSetupScript xor a - ld [hMapEntryMethod], a + ldh [hMapEntryMethod], a ret CheckWarpTile:: @@ -236,7 +236,7 @@ GetDestinationWarpNumber:: farcall CheckWarpCollision ret nc - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank @@ -306,7 +306,7 @@ GetDestinationWarpNumber:: ret CopyWarpData:: - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank @@ -708,14 +708,14 @@ LoadBlockData:: ret ChangeMap:: - ld a, [hROMBank] + ldh a, [hROMBank] push af ld hl, wOverworldMapBlocks ld a, [wMapWidth] - ld [hConnectedMapWidth], a + ldh [hConnectedMapWidth], a add $6 - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a ld c, a ld b, 0 add hl, bc @@ -734,7 +734,7 @@ ChangeMap:: ld b, a .row push hl - ld a, [hConnectedMapWidth] + ldh a, [hConnectedMapWidth] ld c, a .col ld a, [de] @@ -743,7 +743,7 @@ ChangeMap:: dec c jr nz, .col pop hl - ld a, [hConnectionStripLength] + ldh a, [hConnectionStripLength] add l ld l, a jr nc, .okay @@ -775,9 +775,9 @@ FillMapConnections:: ld a, [wNorthConnectionStripLocation + 1] ld d, a ld a, [wNorthConnectionStripLength] - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a ld a, [wNorthConnectedMapWidth] - ld [hConnectedMapWidth], a + ldh [hConnectedMapWidth], a call FillNorthConnectionStrip .South: @@ -798,9 +798,9 @@ FillMapConnections:: ld a, [wSouthConnectionStripLocation + 1] ld d, a ld a, [wSouthConnectionStripLength] - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a ld a, [wSouthConnectedMapWidth] - ld [hConnectedMapWidth], a + ldh [hConnectedMapWidth], a call FillSouthConnectionStrip .West: @@ -823,7 +823,7 @@ FillMapConnections:: ld a, [wWestConnectionStripLength] ld b, a ld a, [wWestConnectedMapWidth] - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a call FillWestConnectionStrip .East: @@ -846,7 +846,7 @@ FillMapConnections:: ld a, [wEastConnectionStripLength] ld b, a ld a, [wEastConnectedMapWidth] - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a call FillEastConnectionStrip .Done: @@ -859,7 +859,7 @@ FillSouthConnectionStrip:: push de push hl - ld a, [hConnectionStripLength] + ldh a, [hConnectionStripLength] ld b, a .x ld a, [hli] @@ -869,7 +869,7 @@ FillSouthConnectionStrip:: jr nz, .x pop hl - ld a, [hConnectedMapWidth] + ldh a, [hConnectedMapWidth] ld e, a ld d, 0 add hl, de @@ -891,7 +891,7 @@ FillEastConnectionStrip:: .loop ld a, [wMapWidth] add 6 - ld [hConnectedMapWidth], a + ldh [hConnectedMapWidth], a push de @@ -907,13 +907,13 @@ FillEastConnectionStrip:: inc de pop hl - ld a, [hConnectionStripLength] + ldh a, [hConnectionStripLength] ld e, a ld d, 0 add hl, de pop de - ld a, [hConnectedMapWidth] + ldh a, [hConnectedMapWidth] add e ld e, a jr nc, .okay @@ -953,7 +953,7 @@ CallMapScript:: RunMapCallback:: ; Will run the first callback found with execution index equal to a. ld b, a - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank call .FindCallback @@ -1018,7 +1018,7 @@ ExecuteCallbackScript:: ret MapTextbox:: - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, b @@ -1028,12 +1028,12 @@ MapTextbox:: call SpeechTextBox call SafeUpdateSprites ld a, 1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call ApplyTilemap pop hl call PrintTextBoxText xor a - ld [hOAMUpdate], a + ldh [hOAMUpdate], a pop af rst Bankswitch @@ -1042,10 +1042,10 @@ MapTextbox:: Call_a_de:: ; Call a:de. - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call .de @@ -1060,7 +1060,7 @@ Call_a_de:: GetMovementData:: ; Initialize the movement data for object c at b:hl - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, b rst Bankswitch @@ -1078,7 +1078,7 @@ GetScriptByte:: push hl push bc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [wScriptBank] rst Bankswitch @@ -1125,7 +1125,7 @@ CoordinatesEventText:: db "@" CheckObjectMask:: - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] ld e, a ld d, $0 ld hl, wObjectMasks @@ -1134,7 +1134,7 @@ CheckObjectMask:: ret MaskObject:: - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] ld e, a ld d, $0 ld hl, wObjectMasks @@ -1143,7 +1143,7 @@ MaskObject:: ret UnmaskObject:: - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] ld e, a ld d, $0 ld hl, wObjectMasks @@ -1163,7 +1163,7 @@ ScrollMapDown:: ld d, a call UpdateBGMapRow ld a, $1 - ld [hBGMapUpdate], a + ldh [hBGMapUpdate], a ret ScrollMapUp:: @@ -1186,7 +1186,7 @@ ScrollMapUp:: ld d, a call UpdateBGMapRow ld a, $1 - ld [hBGMapUpdate], a + ldh [hBGMapUpdate], a ret ScrollMapRight:: @@ -1201,7 +1201,7 @@ ScrollMapRight:: ld d, a call UpdateBGMapColumn ld a, $1 - ld [hBGMapUpdate], a + ldh [hBGMapUpdate], a ret ScrollMapLeft:: @@ -1223,7 +1223,7 @@ ScrollMapLeft:: ld d, a call UpdateBGMapColumn ld a, $1 - ld [hBGMapUpdate], a + ldh [hBGMapUpdate], a ret BackupBGMapRow:: @@ -1284,7 +1284,7 @@ UpdateBGMapRow:: dec c jr nz, .loop ld a, SCREEN_WIDTH - ld [hBGMapTileCount], a + ldh [hBGMapTileCount], a ret UpdateBGMapColumn:: @@ -1310,7 +1310,7 @@ UpdateBGMapColumn:: dec c jr nz, .loop ld a, SCREEN_HEIGHT - ld [hBGMapTileCount], a + ldh [hBGMapTileCount], a ret Unreferenced_Function2816:: @@ -1328,10 +1328,10 @@ LoadTilesetGFX:: ld a, [wTilesetBank] ld e, a - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wDecompressScratch) - ld [rSVBK], a + ldh [rSVBK], a ld a, e ld de, wDecompressScratch @@ -1342,10 +1342,10 @@ LoadTilesetGFX:: ld bc, $60 tiles call CopyBytes - ld a, [rVBK] + ldh a, [rVBK] push af ld a, $1 - ld [rVBK], a + ldh [rVBK], a ld hl, wDecompressScratch + $60 tiles ld de, vTiles2 @@ -1353,10 +1353,10 @@ LoadTilesetGFX:: call CopyBytes pop af - ld [rVBK], a + ldh [rVBK], a pop af - ld [rSVBK], a + ldh [rSVBK], a ; These tilesets support dynamic per-mapgroup roof tiles. ld a, [wMapTileset] @@ -1373,7 +1373,7 @@ LoadTilesetGFX:: .skip_roof xor a - ld [hTileAnimFrame], a + ldh [hTileAnimFrame], a ret BufferScreen:: @@ -1412,7 +1412,7 @@ SaveScreen:: ld de, wScreenSave ld a, [wMapWidth] add 6 - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a ld a, [wPlayerStepDirection] and a jr z, .down @@ -1426,7 +1426,7 @@ SaveScreen:: .up ld de, wScreenSave + SCREEN_META_WIDTH - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] ld c, a ld b, 0 add hl, bc @@ -1458,7 +1458,7 @@ LoadNeighboringBlockData:: ld l, a ld a, [wMapWidth] add 6 - ld [hConnectionStripLength], a + ldh [hConnectionStripLength], a ld de, wScreenSave ld b, SCREEN_META_WIDTH ld c, SCREEN_META_HEIGHT @@ -1483,7 +1483,7 @@ SaveScreen_LoadNeighbor:: .okay pop hl - ld a, [hConnectionStripLength] + ldh a, [hConnectionStripLength] ld c, a ld b, 0 add hl, bc @@ -1772,7 +1772,7 @@ CheckFacingBGEvent:: ret z ld c, a - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank call CheckIfFacingTileCoordIsBGEvent @@ -1826,7 +1826,7 @@ CheckCurrentMapCoordEvents:: ret z ; Copy the coord event count into c. ld c, a - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank call .CoordEventCheck @@ -1893,7 +1893,7 @@ CheckCurrentMapCoordEvents:: FadeToMenu:: xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call LoadStandardMenuHeader farcall FadeOutPalettes call ClearSprites @@ -1943,7 +1943,7 @@ ReturnToMapWithSpeechTextbox:: call UpdateTimePals call DelayFrame ld a, $1 - ld [hMapAnims], a + ldh [hMapAnims], a pop af ret @@ -1953,7 +1953,7 @@ ReloadTilesetAndPalettes:: farcall RefreshSprites call LoadStandardFont call LoadFontsExtra - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [wMapGroup] ld b, a @@ -2023,7 +2023,7 @@ GetMapField:: ld c, a GetAnyMapField:: ; bankswitch - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(MapGroupPointers) rst Bankswitch @@ -2067,7 +2067,7 @@ GetAnyMapAttributesBank:: CopyMapPartial:: ; Copy map data bank, tileset, environment, and map data address ; from the current map's entry within its group. - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(MapGroupPointers) rst Bankswitch diff --git a/home/map_objects.asm b/home/map_objects.asm index 6bc30d571..4cc28b07d 100644 --- a/home/map_objects.asm +++ b/home/map_objects.asm @@ -20,7 +20,7 @@ GetSpriteVTile:: ld hl, wUsedSprites + 2 ld c, SPRITE_GFX_LIST_CAPACITY - 1 ld b, a - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] cp 0 jr z, .nope ld a, b @@ -54,7 +54,7 @@ DoesSpriteHaveFacings:: push hl ld b, a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_DoesSpriteHaveFacings) rst Bankswitch @@ -96,7 +96,7 @@ GetTileCollision:: ld d, 0 add hl, de - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(TileCollisionTable) rst Bankswitch @@ -210,14 +210,14 @@ GetMapObject:: CheckObjectVisibility:: ; Sets carry if the object is not visible on the screen. - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a call GetMapObject ld hl, MAPOBJECT_OBJECT_STRUCT_ID add hl, bc ld a, [hl] cp -1 jr z, .not_visible - ld [hObjectStructIndexBuffer], a + ldh [hObjectStructIndexBuffer], a call GetObjectStruct and a ret @@ -301,21 +301,21 @@ CheckObjectTime:: ret ; unused - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a call GetMapObject call CopyObjectStruct ret _CopyObjectStruct:: - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a call UnmaskObject - ld a, [hMapObjectIndexBuffer] + ldh a, [hMapObjectIndexBuffer] call GetMapObject farcall CopyObjectStruct ret ApplyDeletionToMapObject:: - ld [hMapObjectIndexBuffer], a + ldh [hMapObjectIndexBuffer], a call GetMapObject ld hl, MAPOBJECT_OBJECT_STRUCT_ID add hl, bc @@ -394,7 +394,7 @@ Unreferenced_Function19b8: LoadMovementDataPointer:: ; Load the movement data pointer for object a. ld [wMovementObject], a - ld a, [hROMBank] + ldh a, [hROMBank] ld [wMovementDataPointer], a ld a, l ld [wMovementDataPointer + 1], a @@ -484,7 +484,7 @@ endr CopySpriteMovementData:: ld l, a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(SpriteMovementData) rst Bankswitch @@ -551,7 +551,7 @@ endr _GetMovementByte:: ; Switch to the movement data bank - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [hli] rst Bankswitch diff --git a/home/menu.asm b/home/menu.asm index d10b6e936..5060a915a 100644 --- a/home/menu.asm +++ b/home/menu.asm @@ -9,7 +9,7 @@ CopyMenuHeader:: ld de, wMenuHeader ld bc, wMenuHeaderEnd - wMenuHeader call CopyBytes - ld a, [hROMBank] + ldh a, [hROMBank] ld [wMenuDataBank], a ret @@ -59,7 +59,7 @@ Call_ExitMenu:: VerticalMenu:: xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call MenuBox call UpdateSprites call PlaceVerticalMenuItems @@ -229,17 +229,17 @@ DrawVariableLengthMenuBox:: MenuWriteText:: xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call GetMenuIndexSet ; sort out the text call RunMenuItemPrintingFunction ; actually write it call SafeUpdateSprites - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, $1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call ApplyTilemap pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ret AutomaticGetMenuBottomCoord:: @@ -455,10 +455,10 @@ ClearWindowData:: ld hl, w2DMenuCursorInitY call .bytefill - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wWindowStack) - ld [rSVBK], a + ldh [rSVBK], a xor a ld hl, wWindowStackBottom @@ -470,7 +470,7 @@ ClearWindowData:: ld [wWindowStackPointer + 1], a pop af - ld [rSVBK], a + ldh [rSVBK], a ret .bytefill @@ -505,10 +505,10 @@ MenuTextBoxWaitButton:: ret Place2DMenuItemName:: - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call PlaceString @@ -518,21 +518,21 @@ Place2DMenuItemName:: ret _2DMenu:: - ld a, [hROMBank] + ldh a, [hROMBank] ld [wMenuData_2DMenuItemStringsBank], a farcall _2DMenu_ ld a, [wMenuCursorBuffer] ret InterpretBattleMenu:: - ld a, [hROMBank] + ldh a, [hROMBank] ld [wMenuData_2DMenuItemStringsBank], a farcall _InterpretBattleMenu ld a, [wMenuCursorBuffer] ret InterpretMobileMenu:: - ld a, [hROMBank] + ldh a, [hROMBank] ld [wMenuData_2DMenuItemStringsBank], a farcall _InterpretMobileMenu ld a, [wMenuCursorBuffer] diff --git a/home/mobile.asm b/home/mobile.asm index 21af7a73b..e87cdcab4 100644 --- a/home/mobile.asm +++ b/home/mobile.asm @@ -20,7 +20,7 @@ Function3e32:: .okay ld hl, $c822 set 6, [hl] - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(Function110030) ld [$c981], a @@ -51,7 +51,7 @@ Function3e60:: ret MobileReceive:: - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_MobileReceive) ld [$c981], a @@ -71,17 +71,17 @@ Timer:: push de push hl - ld a, [hMobile] + ldh a, [hMobile] and a jr z, .pop_ret xor a - ld [rTAC], a + ldh [rTAC], a ; Turn off timer interrupt - ld a, [rIF] + ldh a, [rIF] and 1 << VBLANK | 1 << LCD_STAT | 1 << SERIAL | 1 << JOYPAD - ld [rIF], a + ldh [rIF], a ld a, [$c86a] or a @@ -91,11 +91,11 @@ Timer:: bit 1, a jr nz, .skip_Timer - ld a, [rSC] + ldh a, [rSC] and 1 << rSC_ON jr nz, .skip_Timer - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_Timer) ld [$c981], a @@ -109,11 +109,11 @@ Timer:: rst Bankswitch .skip_Timer - ld a, [rTMA] - ld [rTIMA], a + ldh a, [rTMA] + ldh [rTIMA], a ld a, 1 << rTAC_ON | rTAC_65536_HZ - ld [rTAC], a + ldh [rTAC], a .pop_ret pop hl @@ -124,7 +124,7 @@ Timer:: Unreferenced_Function3ed7:: ld [$dc02], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(Function114243) rst Bankswitch diff --git a/home/mon_data.asm b/home/mon_data.asm index bcfe49ddb..dec80383c 100644 --- a/home/mon_data.asm +++ b/home/mon_data.asm @@ -10,7 +10,7 @@ GetBaseData:: push bc push de push hl - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(BaseData) rst Bankswitch diff --git a/home/mon_stats.asm b/home/mon_stats.asm index 318d32c9c..d064d4798 100644 --- a/home/mon_stats.asm +++ b/home/mon_stats.asm @@ -89,7 +89,7 @@ _PrepMonFrontpic:: predef GetMonFrontpic pop hl xor a - ld [hGraphicStartTile], a + ldh [hGraphicStartTile], a lb bc, 7, 7 predef PlaceGraphic xor a diff --git a/home/movement.asm b/home/movement.asm index 2c19b6355..4700f48cf 100644 --- a/home/movement.asm +++ b/home/movement.asm @@ -163,10 +163,10 @@ ScrollingMenuJoypad:: GetMenuJoypad:: push bc push af - ld a, [hJoyLast] + ldh a, [hJoyLast] and D_PAD ld b, a - ld a, [hJoyPressed] + ldh a, [hJoyPressed] and BUTTONS or b ld b, a diff --git a/home/names.asm b/home/names.asm index 63043863d..434eb17d5 100644 --- a/home/names.asm +++ b/home/names.asm @@ -12,7 +12,7 @@ NamesPointers:: GetName:: ; Return name wCurSpecies from name list wNamedObjectTypeBuffer in wStringBuffer1. - ld a, [hROMBank] + ldh a, [hROMBank] push af push hl push bc @@ -112,7 +112,7 @@ GetBasePokemonName:: GetPokemonName:: ; Get Pokemon name for wNamedObjectIndexBuffer. - ld a, [hROMBank] + ldh a, [hROMBank] push af push hl ld a, BANK(PokemonNames) diff --git a/home/palettes.asm b/home/palettes.asm index d5b6abff5..d5c645d78 100644 --- a/home/palettes.asm +++ b/home/palettes.asm @@ -6,28 +6,28 @@ UpdatePalsIfCGB:: ; return carry if successful ; check cgb - ld a, [hCGB] + ldh a, [hCGB] and a ret z UpdateCGBPals:: ; return carry if successful ; any pals to update? - ld a, [hCGBPalUpdate] + ldh a, [hCGBPalUpdate] and a ret z ForceUpdateCGBPals:: - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wBGPals2) - ld [rSVBK], a + ldh [rSVBK], a ld hl, wBGPals2 ; copy 8 pals to bgpd ld a, 1 << rBGPI_AUTO_INCREMENT - ld [rBGPI], a + ldh [rBGPI], a ld c, LOW(rBGPD) ld b, 8 / 2 .bgp @@ -43,7 +43,7 @@ endr ; copy 8 pals to obpd ld a, 1 << rOBPI_AUTO_INCREMENT - ld [rOBPI], a + ldh [rOBPI], a ld c, LOW(rOBPD) ld b, 8 / 2 .obp @@ -56,11 +56,11 @@ endr jr nz, .obp pop af - ld [rSVBK], a + ldh [rSVBK], a ; clear pal update queue xor a - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a scf ret @@ -70,38 +70,38 @@ DmgToCgbBGPals:: ; input: a -> bgp - ld [rBGP], a + ldh [rBGP], a push af ; Don't need to be here if DMG - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .end push hl push de push bc - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wBGPals2) - ld [rSVBK], a + ldh [rSVBK], a ; copy & reorder bg pal buffer ld hl, wBGPals2 ; to ld de, wBGPals1 ; from ; order - ld a, [rBGP] + ldh a, [rBGP] ld b, a ; all pals ld c, 8 call CopyPals ; request pal update ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a pop af - ld [rSVBK], a + ldh [rSVBK], a pop bc pop de pop hl @@ -116,49 +116,49 @@ DmgToCgbObjPals:: ; e -> obp2 ld a, e - ld [rOBP0], a + ldh [rOBP0], a ld a, d - ld [rOBP1], a + ldh [rOBP1], a - ld a, [hCGB] + ldh a, [hCGB] and a ret z push hl push de push bc - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wOBPals2) - ld [rSVBK], a + ldh [rSVBK], a ; copy & reorder obj pal buffer ld hl, wOBPals2 ; to ld de, wOBPals1 ; from ; order - ld a, [rOBP0] + ldh a, [rOBP0] ld b, a ; all pals ld c, 8 call CopyPals ; request pal update ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a pop af - ld [rSVBK], a + ldh [rSVBK], a pop bc pop de pop hl ret DmgToCgbObjPal0:: - ld [rOBP0], a + ldh [rOBP0], a push af ; Don't need to be here if not CGB - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg @@ -166,22 +166,22 @@ DmgToCgbObjPal0:: push de push bc - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wOBPals2) - ld [rSVBK], a + ldh [rSVBK], a ld hl, wOBPals2 palette 0 ld de, wOBPals1 palette 0 - ld a, [rOBP0] + ldh a, [rOBP0] ld b, a ld c, 1 call CopyPals ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a pop af - ld [rSVBK], a + ldh [rSVBK], a pop bc pop de @@ -192,10 +192,10 @@ DmgToCgbObjPal0:: ret DmgToCgbObjPal1:: - ld [rOBP1], a + ldh [rOBP1], a push af - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg @@ -203,22 +203,22 @@ DmgToCgbObjPal1:: push de push bc - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wOBPals2) - ld [rSVBK], a + ldh [rSVBK], a ld hl, wOBPals2 palette 1 ld de, wOBPals1 palette 1 - ld a, [rOBP1] + ldh a, [rOBP1] ld b, a ld c, 1 call CopyPals ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a pop af - ld [rSVBK], a + ldh [rSVBK], a pop bc pop de @@ -281,12 +281,12 @@ endr ret ClearVBank1:: - ld a, [hCGB] + ldh a, [hCGB] and a ret z ld a, 1 - ld [rVBK], a + ldh [rVBK], a ld hl, VRAM_Begin ld bc, VRAM_End - VRAM_Begin @@ -294,28 +294,28 @@ ClearVBank1:: call ByteFill ld a, 0 - ld [rVBK], a + ldh [rVBK], a ret ret_d90:: ret ReloadSpritesNoPalettes:: - ld a, [hCGB] + ldh a, [hCGB] and a ret z - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wBGPals2) - ld [rSVBK], a + ldh [rSVBK], a ld hl, wBGPals2 ld bc, (8 palettes) + (2 palettes) xor a call ByteFill pop af - ld [rSVBK], a + ldh [rSVBK], a ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a call DelayFrame ret diff --git a/home/predef.asm b/home/predef.asm index bfb5e4690..10550d126 100644 --- a/home/predef.asm +++ b/home/predef.asm @@ -3,7 +3,7 @@ Predef:: ; Preserves bc, de, hl and f. ld [wPredefID], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(GetPredefPointer) diff --git a/home/print_text.asm b/home/print_text.asm index 8a8a7dd9f..98f50c7c1 100644 --- a/home/print_text.asm +++ b/home/print_text.asm @@ -55,7 +55,7 @@ PrintLetterDelay:: jr nz, .wait ; Wait one frame if holding A or B. - ld a, [hJoyDown] + ldh a, [hJoyDown] bit A_BUTTON_F, a jr z, .checkb jr .delay @@ -74,7 +74,7 @@ PrintLetterDelay:: .end pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a pop bc pop de pop hl @@ -107,10 +107,10 @@ MobilePrintNum:: ret FarPrintText:: - ld [hBuffer], a - ld a, [hROMBank] + ldh [hBuffer], a + ldh a, [hROMBank] push af - ld a, [hBuffer] + ldh a, [hBuffer] rst Bankswitch call PrintText diff --git a/home/queue_script.asm b/home/queue_script.asm index 40a971dc9..27dafa3ff 100644 --- a/home/queue_script.asm +++ b/home/queue_script.asm @@ -1,6 +1,6 @@ QueueScript:: ; Push pointer hl in the current bank to wQueuedScriptBank. - ld a, [hROMBank] + ldh a, [hROMBank] FarQueueScript:: ; Push pointer a:hl to wQueuedScriptBank. diff --git a/home/random.asm b/home/random.asm index e436e4ff6..9d62b9b65 100644 --- a/home/random.asm +++ b/home/random.asm @@ -13,17 +13,17 @@ Random:: push bc - ld a, [rDIV] + ldh a, [rDIV] ld b, a - ld a, [hRandomAdd] + ldh a, [hRandomAdd] adc b - ld [hRandomAdd], a + ldh [hRandomAdd], a - ld a, [rDIV] + ldh a, [rDIV] ld b, a - ld a, [hRandomSub] + ldh a, [hRandomSub] sbc b - ld [hRandomSub], a + ldh [hRandomSub], a pop bc ret @@ -34,7 +34,7 @@ BattleRandom:: ; It handles all RNG calls in the battle engine, allowing ; link battles to remain in sync using a shared PRNG. - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_BattleRandom) rst Bankswitch @@ -67,7 +67,7 @@ RandomRange:: push bc .loop call Random - ld a, [hRandomAdd] + ldh a, [hRandomAdd] ld c, a add b jr c, .loop diff --git a/home/rst.asm b/home/rst.asm index c3abae80d..c3402f14a 100644 --- a/home/rst.asm +++ b/home/rst.asm @@ -8,7 +8,7 @@ SECTION "rst8", ROM0 ; rst FarCall jp FarCall_hl SECTION "rst10", ROM0 ; rst Bankswitch - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ret diff --git a/home/scrolling_menu.asm b/home/scrolling_menu.asm index cf8e02fa8..1ed9d0682 100644 --- a/home/scrolling_menu.asm +++ b/home/scrolling_menu.asm @@ -1,6 +1,6 @@ ScrollingMenu:: call CopyMenuData - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_ScrollingMenu) @@ -43,18 +43,18 @@ InitScrollingMenu:: JoyTextDelay_ForcehJoyDown:: call DelayFrame - ld a, [hInMenu] + ldh a, [hInMenu] push af ld a, $1 - ld [hInMenu], a + ldh [hInMenu], a call JoyTextDelay pop af - ld [hInMenu], a + ldh [hInMenu], a - ld a, [hJoyLast] + ldh a, [hJoyLast] and D_RIGHT + D_LEFT + D_UP + D_DOWN ld c, a - ld a, [hJoyPressed] + ldh a, [hJoyPressed] and A_BUTTON + B_BUTTON + SELECT + START or c ld c, a diff --git a/home/serial.asm b/home/serial.asm index 663f74d3b..1d790a79a 100644 --- a/home/serial.asm +++ b/home/serial.asm @@ -6,7 +6,7 @@ Serial:: push de push hl - ld a, [hMobileReceive] + ldh a, [hMobileReceive] and a jr nz, .mobile @@ -14,24 +14,24 @@ Serial:: bit 0, a jr nz, .printer - ld a, [hSerialConnectionStatus] + ldh a, [hSerialConnectionStatus] inc a ; is it equal to CONNECTION_NOT_ESTABLISHED? jr z, .establish_connection - ld a, [rSB] - ld [hSerialReceive], a + ldh a, [rSB] + ldh [hSerialReceive], a - ld a, [hSerialSend] - ld [rSB], a + ldh a, [hSerialSend] + ldh [rSB], a - ld a, [hSerialConnectionStatus] + ldh a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK jr z, .player2 ld a, 0 << rSC_ON - ld [rSC], a + ldh [rSC], a ld a, 1 << rSC_ON - ld [rSC], a + ldh [rSC], a jr .player2 .mobile @@ -43,43 +43,43 @@ Serial:: jr .end .establish_connection - ld a, [rSB] + ldh a, [rSB] cp USING_EXTERNAL_CLOCK jr z, .player1 cp USING_INTERNAL_CLOCK jr nz, .player2 .player1 - ld [hSerialReceive], a - ld [hSerialConnectionStatus], a + ldh [hSerialReceive], a + ldh [hSerialConnectionStatus], a cp USING_INTERNAL_CLOCK jr z, ._player2 xor a - ld [rSB], a + ldh [rSB], a ld a, 3 - ld [rDIV], a + ldh [rDIV], a .wait_bit_7 - ld a, [rDIV] + ldh a, [rDIV] bit 7, a jr nz, .wait_bit_7 ld a, 0 << rSC_ON - ld [rSC], a + ldh [rSC], a ld a, 1 << rSC_ON - ld [rSC], a + ldh [rSC], a jr .player2 ._player2 xor a - ld [rSB], a + ldh [rSB], a .player2 ld a, TRUE - ld [hSerialReceivedNewData], a + ldh [hSerialReceivedNewData], a ld a, SERIAL_NO_DATA_BYTE - ld [hSerialSend], a + ldh [hSerialSend], a .end pop hl @@ -90,10 +90,10 @@ Serial:: Serial_ExchangeBytes:: ld a, $1 - ld [hSerialIgnoringInitialData], a + ldh [hSerialIgnoringInitialData], a .loop ld a, [hl] - ld [hSerialSend], a + ldh [hSerialSend], a call Serial_ExchangeByte push bc ld b, a @@ -102,7 +102,7 @@ Serial_ExchangeBytes:: .wait dec a jr nz, .wait - ld a, [hSerialIgnoringInitialData] + ldh a, [hSerialIgnoringInitialData] and a ld a, b pop bc @@ -111,7 +111,7 @@ Serial_ExchangeBytes:: cp SERIAL_PREAMBLE_BYTE jr nz, .loop xor a - ld [hSerialIgnoringInitialData], a + ldh [hSerialIgnoringInitialData], a jr .loop .load @@ -126,20 +126,20 @@ Serial_ExchangeBytes:: Serial_ExchangeByte:: .loop xor a - ld [hSerialReceivedNewData], a - ld a, [hSerialConnectionStatus] + ldh [hSerialReceivedNewData], a + ldh a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK jr nz, .not_player_2 ld a, (0 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a ld a, (1 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a .not_player_2 .loop2 - ld a, [hSerialReceivedNewData] + ldh a, [hSerialReceivedNewData] and a jr nz, .reset_ffca - ld a, [hSerialConnectionStatus] + ldh a, [hSerialConnectionStatus] cp USING_EXTERNAL_CLOCK jr nz, .not_player_1_or_wLinkTimeoutFrames_zero call CheckwLinkTimeoutFramesNonzero @@ -159,7 +159,7 @@ Serial_ExchangeByte:: jp SerialDisconnected .not_player_1_or_wLinkTimeoutFrames_zero - ld a, [rIE] + ldh a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) cp 1 << SERIAL jr nz, .loop2 @@ -171,7 +171,7 @@ Serial_ExchangeByte:: dec a ld [wcf5d + 1], a jr nz, .loop2 - ld a, [hSerialConnectionStatus] + ldh a, [hSerialConnectionStatus] cp USING_EXTERNAL_CLOCK jr z, .reset_ffca @@ -182,8 +182,8 @@ Serial_ExchangeByte:: .reset_ffca xor a - ld [hSerialReceivedNewData], a - ld a, [rIE] + ldh [hSerialReceivedNewData], a + ldh a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) sub 1 << SERIAL jr nz, .rIE_not_equal_8 @@ -194,7 +194,7 @@ Serial_ExchangeByte:: ld [wcf5d + 1], a .rIE_not_equal_8 - ld a, [hSerialReceive] + ldh a, [hSerialReceive] cp SERIAL_NO_DATA_BYTE ret nz call CheckwLinkTimeoutFramesNonzero @@ -214,13 +214,13 @@ Serial_ExchangeByte:: jr z, SerialDisconnected .linkTimeoutFrames_zero - ld a, [rIE] + ldh a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) cp 1 << SERIAL ld a, SERIAL_NO_DATA_BYTE ret z ld a, [hl] - ld [hSerialSend], a + ldh [hSerialSend], a call DelayFrame jp .loop @@ -252,18 +252,18 @@ Serial_ExchangeLinkMenuSelection:: ld de, wOtherPlayerLinkMode ld c, 2 ld a, TRUE - ld [hSerialIgnoringInitialData], a + ldh [hSerialIgnoringInitialData], a .asm_847 call DelayFrame ld a, [hl] - ld [hSerialSend], a + ldh [hSerialSend], a call Serial_ExchangeByte ld b, a inc hl - ld a, [hSerialIgnoringInitialData] + ldh a, [hSerialIgnoringInitialData] and a ld a, FALSE - ld [hSerialIgnoringInitialData], a + ldh [hSerialIgnoringInitialData], a jr nz, .asm_847 ld a, b ld [de], a @@ -348,14 +348,14 @@ LinkTransfer:: call .Receive ld a, [wPlayerLinkAction] add b - ld [hSerialSend], a - ld a, [hSerialConnectionStatus] + ldh [hSerialSend], a + ldh a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK jr nz, .player_1 ld a, (0 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a ld a, (1 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a .player_1 call .Receive @@ -363,13 +363,13 @@ LinkTransfer:: ret .Receive: - ld a, [hSerialReceive] + ldh a, [hSerialReceive] ld [wOtherPlayerLinkMode], a and $f0 cp b ret nz xor a - ld [hSerialReceive], a + ldh [hSerialReceive], a ld a, [wOtherPlayerLinkMode] and $f ld [wOtherPlayerLinkAction], a @@ -378,14 +378,14 @@ LinkTransfer:: LinkDataReceived:: ; Let the other system know that the data has been received. xor a - ld [hSerialSend], a - ld a, [hSerialConnectionStatus] + ldh [hSerialSend], a + ldh a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK ret nz ld a, (0 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a ld a, (1 << rSC_ON) | 1 - ld [rSC], a + ldh [rSC], a ret Unreferenced_Function919:: @@ -393,11 +393,11 @@ Unreferenced_Function919:: and a ret nz ld a, USING_INTERNAL_CLOCK - ld [rSB], a + ldh [rSB], a xor a - ld [hSerialReceive], a + ldh [hSerialReceive], a ld a, 0 << rSC_ON - ld [rSC], a + ldh [rSC], a ld a, 1 << rSC_ON - ld [rSC], a + ldh [rSC], a ret diff --git a/home/sprite_anims.asm b/home/sprite_anims.asm index 5f3ef82d2..7f271575e 100644 --- a/home/sprite_anims.asm +++ b/home/sprite_anims.asm @@ -1,5 +1,5 @@ PushLYOverrides:: - ld a, [hLCDCPointer] + ldh a, [hLCDCPointer] and a ret z @@ -19,7 +19,7 @@ PushLYOverrides:: _InitSpriteAnimStruct:: ld [wSpriteAnimIDBuffer], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(InitSpriteAnimStruct) @@ -35,7 +35,7 @@ _InitSpriteAnimStruct:: ReinitSpriteAnimFrame:: ld [wSpriteAnimIDBuffer], a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_ReinitSpriteAnimFrame) diff --git a/home/sprite_updates.asm b/home/sprite_updates.asm index d263363a6..e070a2bbe 100644 --- a/home/sprite_updates.asm +++ b/home/sprite_updates.asm @@ -1,6 +1,6 @@ DisableSpriteUpdates:: xor a - ld [hMapAnims], a + ldh [hMapAnims], a ld a, [wVramState] res 0, a ld [wVramState], a @@ -15,5 +15,5 @@ EnableSpriteUpdates:: set 0, a ld [wVramState], a ld a, $1 - ld [hMapAnims], a + ldh [hMapAnims], a ret diff --git a/home/stone_queue.asm b/home/stone_queue.asm index b635cee16..ac920b4b3 100644 --- a/home/stone_queue.asm +++ b/home/stone_queue.asm @@ -1,5 +1,5 @@ HandleStoneQueue:: - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank diff --git a/home/text.asm b/home/text.asm index ef952942d..8d3d0e7ec 100644 --- a/home/text.asm +++ b/home/text.asm @@ -28,7 +28,7 @@ ClearTileMap:: call ByteFill ; Update the BG Map. - ld a, [rLCDC] + ldh a, [rLCDC] bit rLCDC_ENABLE, a ret z jp WaitBGMap @@ -309,12 +309,12 @@ PlaceWatashi: print_name PlaceWatashiText PlaceKokoWa: print_name PlaceKokoWaText PlaceMoveTargetsName:: - ld a, [hBattleTurn] + ldh a, [hBattleTurn] xor 1 jr PlaceMoveUsersName.place PlaceMoveUsersName:: - ld a, [hBattleTurn] + ldh a, [hBattleTurn] .place: push de @@ -599,15 +599,15 @@ TextScroll:: Text_WaitBGMap:: push bc - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, 1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call WaitBGMap pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a pop bc ret @@ -626,7 +626,7 @@ UnloadBlinkingCursor:: FarString:: ld b, a - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, b @@ -744,7 +744,7 @@ TextCommand_FAR:: ; little endian ; [$16][addr][bank] - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, [hli] @@ -753,7 +753,7 @@ TextCommand_FAR:: ld d, a ld a, [hli] - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a push hl @@ -763,7 +763,7 @@ TextCommand_FAR:: pop hl pop af - ld [hROMBank], a + ldh [hROMBank], a ld [MBC3RomBank], a ret @@ -905,7 +905,7 @@ TextCommand_EXIT:: push hl push bc call GetJoypad - ld a, [hJoyDown] + ldh a, [hJoyDown] and A_BUTTON | B_BUTTON jr nz, .done ld c, 30 @@ -986,7 +986,7 @@ TextCommand_DOTS:: ld a, "…" ld [hli], a call GetJoypad - ld a, [hJoyDown] + ldh a, [hJoyDown] and A_BUTTON | B_BUTTON jr nz, .next ld c, 10 diff --git a/home/tilemap.asm b/home/tilemap.asm index 711118ae0..b8dfb7697 100644 --- a/home/tilemap.asm +++ b/home/tilemap.asm @@ -3,36 +3,36 @@ ClearBGPalettes:: WaitBGMap:: ; Tell VBlank to update BG Map ld a, 1 ; BG Map 0 tiles - ld [hBGMapMode], a + ldh [hBGMapMode], a ; Wait for it to do its magic ld c, 4 call DelayFrames ret WaitBGMap2:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .bg0 ld a, 2 - ld [hBGMapMode], a + ldh [hBGMapMode], a ld c, 4 call DelayFrames .bg0 ld a, 1 - ld [hBGMapMode], a + ldh [hBGMapMode], a ld c, 4 call DelayFrames ret IsCGB:: - ld a, [hCGB] + ldh a, [hCGB] and a ret ApplyTilemap:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, .dmg @@ -41,19 +41,19 @@ ApplyTilemap:: jr z, .dmg ld a, 1 - ld [hBGMapMode], a + ldh [hBGMapMode], a jr CopyTilemapAtOnce .dmg ; WaitBGMap ld a, 1 - ld [hBGMapMode], a + ldh [hBGMapMode], a ld c, 4 call DelayFrames ret CGBOnly_CopyTilemapAtOnce:: - ld a, [hCGB] + ldh a, [hCGB] and a jr z, WaitBGMap @@ -65,52 +65,52 @@ CopyTilemapAtOnce:: ret .CopyTilemapAtOnce: - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a - ld a, [hMapAnims] + ldh a, [hMapAnims] push af xor a - ld [hMapAnims], a + ldh [hMapAnims], a .wait - ld a, [rLY] + ldh a, [rLY] cp $7f jr c, .wait di ld a, BANK(vTiles3) - ld [rVBK], a + ldh [rVBK], a hlcoord 0, 0, wAttrMap call .StackPointerMagic ld a, BANK(vTiles0) - ld [rVBK], a + ldh [rVBK], a hlcoord 0, 0 call .StackPointerMagic .wait2 - ld a, [rLY] + ldh a, [rLY] cp $7f jr c, .wait2 ei pop af - ld [hMapAnims], a + ldh [hMapAnims], a pop af - ld [hBGMapMode], a + ldh [hBGMapMode], a ret .StackPointerMagic: ; Copy all tiles to vBGMap ld [hSPBuffer], sp ld sp, hl - ld a, [hBGMapAddress + 1] + ldh a, [hBGMapAddress + 1] ld h, a ld l, 0 ld a, SCREEN_HEIGHT - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a ld b, 1 << 1 ; not in v/hblank ld c, LOW(rSTAT) @@ -131,14 +131,14 @@ endr ld de, BG_MAP_WIDTH - SCREEN_WIDTH add hl, de - ld a, [hTilesPerCycle] + ldh a, [hTilesPerCycle] dec a - ld [hTilesPerCycle], a + ldh [hTilesPerCycle], a jr nz, .loop - ld a, [hSPBuffer] + ldh a, [hSPBuffer] ld l, a - ld a, [hSPBuffer + 1] + ldh a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -146,14 +146,14 @@ endr SetPalettes:: ; Inits the Palettes ; depending on the system the monochromes palettes or color palettes - ld a, [hCGB] + ldh a, [hCGB] and a jr nz, .SetPalettesForGameBoyColor ld a, %11100100 - ld [rBGP], a + ldh [rBGP], a ld a, %11010000 - ld [rOBP0], a - ld [rOBP1], a + ldh [rOBP0], a + ldh [rOBP1], a ret .SetPalettesForGameBoyColor: @@ -169,23 +169,23 @@ ClearPalettes:: ; Make all palettes white ; CGB: make all the palette colors white - ld a, [hCGB] + ldh a, [hCGB] and a jr nz, .cgb ; DMG: just change palettes to 0 (white) xor a - ld [rBGP], a - ld [rOBP0], a - ld [rOBP1], a + ldh [rBGP], a + ldh [rOBP0], a + ldh [rOBP1], a ret .cgb - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wBGPals2) - ld [rSVBK], a + ldh [rSVBK], a ; Fill wBGPals2 and wOBPals2 with $ffff (white) ld hl, wBGPals2 @@ -194,11 +194,11 @@ ClearPalettes:: call ByteFill pop af - ld [rSVBK], a + ldh [rSVBK], a ; Request palette update ld a, 1 - ld [hCGBPalUpdate], a + ldh [hCGBPalUpdate], a ret GetMemSGBLayout:: @@ -206,11 +206,11 @@ GetMemSGBLayout:: GetSGBLayout:: ; load sgb packets unless dmg - ld a, [hCGB] + ldh a, [hCGB] and a jr nz, .sgb - ld a, [hSGB] + ldh a, [hSGB] and a ret z diff --git a/home/time.asm b/home/time.asm index caf857a68..8f6879397 100644 --- a/home/time.asm +++ b/home/time.asm @@ -2,7 +2,7 @@ AskTimer:: push af - ld a, [hMobile] + ldh a, [hMobile] and a jr z, .not_mobile call Timer @@ -42,25 +42,25 @@ GetClock:: ld [hl], RTC_S ld a, [de] maskbits 60 - ld [hRTCSeconds], a + ldh [hRTCSeconds], a ld [hl], RTC_M ld a, [de] maskbits 60 - ld [hRTCMinutes], a + ldh [hRTCMinutes], a ld [hl], RTC_H ld a, [de] maskbits 24 - ld [hRTCHours], a + ldh [hRTCHours], a ld [hl], RTC_DL ld a, [de] - ld [hRTCDayLo], a + ldh [hRTCDayLo], a ld [hl], RTC_DH ld a, [de] - ld [hRTCDayHi], a + ldh [hRTCDayHi], a ; unlatch clock / disable clock r/w call CloseSRAM @@ -71,16 +71,16 @@ FixDays:: ; mod by 140 ; check if day count > 255 (bit 8 set) - ld a, [hRTCDayHi] ; DH + ldh a, [hRTCDayHi] ; DH bit 0, a jr z, .daylo ; reset dh (bit 8) res 0, a - ld [hRTCDayHi], a ; DH + ldh [hRTCDayHi], a ; DH ; mod 140 ; mod twice since bit 8 (DH) was set - ld a, [hRTCDayLo] ; DL + ldh a, [hRTCDayLo] ; DL .modh sub 140 jr nc, .modh @@ -90,7 +90,7 @@ FixDays:: add 140 ; update dl - ld [hRTCDayLo], a ; DL + ldh [hRTCDayLo], a ; DL ; flag for sRTCStatusFlags ld a, %01000000 @@ -98,7 +98,7 @@ FixDays:: .daylo ; quit if fewer than 140 days have passed - ld a, [hRTCDayLo] ; DL + ldh a, [hRTCDayLo] ; DL cp 140 jr c, .quit @@ -109,7 +109,7 @@ FixDays:: add 140 ; update dl - ld [hRTCDayLo], a ; DL + ldh [hRTCDayLo], a ; DL ; flag for sRTCStatusFlags ld a, %00100000 @@ -132,7 +132,7 @@ FixTime:: ; store time in wCurDay, hHours, hMinutes, hSeconds ; second - ld a, [hRTCSeconds] ; S + ldh a, [hRTCSeconds] ; S ld c, a ld a, [wStartSecond] add c @@ -140,11 +140,11 @@ FixTime:: jr nc, .updatesec add 60 .updatesec - ld [hSeconds], a + ldh [hSeconds], a ; minute ccf ; carry is set, so turn it off - ld a, [hRTCMinutes] ; M + ldh a, [hRTCMinutes] ; M ld c, a ld a, [wStartMinute] adc c @@ -152,11 +152,11 @@ FixTime:: jr nc, .updatemin add 60 .updatemin - ld [hMinutes], a + ldh [hMinutes], a ; hour ccf ; carry is set, so turn it off - ld a, [hRTCHours] ; H + ldh a, [hRTCHours] ; H ld c, a ld a, [wStartHour] adc c @@ -164,11 +164,11 @@ FixTime:: jr nc, .updatehr add 24 .updatehr - ld [hHours], a + ldh [hHours], a ; day ccf ; carry is set, so turn it off - ld a, [hRTCDayLo] ; DL + ldh a, [hRTCDayLo] ; DL ld c, a ld a, [wStartDay] adc c @@ -184,11 +184,11 @@ InitTimeOfDay:: InitDayOfWeek:: call UpdateTime - ld a, [hHours] + ldh a, [hHours] ld [wStringBuffer2 + 1], a - ld a, [hMinutes] + ldh a, [hMinutes] ld [wStringBuffer2 + 2], a - ld a, [hSeconds] + ldh a, [hSeconds] ld [wStringBuffer2 + 3], a jr InitTime ; useless @@ -203,11 +203,11 @@ PanicResetClock:: .ClearhRTC: xor a - ld [hRTCSeconds], a - ld [hRTCMinutes], a - ld [hRTCHours], a - ld [hRTCDayLo], a - ld [hRTCDayHi], a + ldh [hRTCSeconds], a + ldh [hRTCMinutes], a + ldh [hRTCHours], a + ldh [hRTCDayLo], a + ldh [hRTCDayHi], a ret SetClock:: @@ -233,23 +233,23 @@ SetClock:: ; seconds ld [hl], RTC_S - ld a, [hRTCSeconds] + ldh a, [hRTCSeconds] ld [de], a ; minutes ld [hl], RTC_M - ld a, [hRTCMinutes] + ldh a, [hRTCMinutes] ld [de], a ; hours ld [hl], RTC_H - ld a, [hRTCHours] + ldh a, [hRTCHours] ld [de], a ; day lo ld [hl], RTC_DL - ld a, [hRTCDayLo] + ldh a, [hRTCDayLo] ld [de], a ; day hi ld [hl], RTC_DH - ld a, [hRTCDayHi] + ldh a, [hRTCDayHi] res 6, a ; make sure timer is active ld [de], a diff --git a/home/trainers.asm b/home/trainers.asm index 5def6cf17..ec475e218 100644 --- a/home/trainers.asm +++ b/home/trainers.asm @@ -1,5 +1,5 @@ CheckTrainerBattle2:: - ld a, [hROMBank] + ldh a, [hROMBank] push af call SwitchToMapScriptsBank @@ -93,7 +93,7 @@ CheckTrainerBattle:: .startbattle pop de pop af - ld [hLastTalked], a + ldh [hLastTalked], a ld a, b ld [wEngineBuffer2], a ld a, c @@ -110,7 +110,7 @@ LoadTrainer_continue:: call GetMapScriptsBank ld [wEngineBuffer1], a - ld a, [hLastTalked] + ldh a, [hLastTalked] call GetMapObject ld hl, MAPOBJECT_SCRIPT_POINTER diff --git a/home/vblank.asm b/home/vblank.asm index 5e87dbcdf..c26963636 100644 --- a/home/vblank.asm +++ b/home/vblank.asm @@ -12,7 +12,7 @@ VBlank:: push de push hl - ld a, [hVBlank] + ldh a, [hVBlank] and 7 ld e, a @@ -63,29 +63,29 @@ VBlank0:: inc [hl] ; advance random variables - ld a, [rDIV] + ldh a, [rDIV] ld b, a - ld a, [hRandomAdd] + ldh a, [hRandomAdd] adc b - ld [hRandomAdd], a + ldh [hRandomAdd], a - ld a, [rDIV] + ldh a, [rDIV] ld b, a - ld a, [hRandomSub] + ldh a, [hRandomSub] sbc b - ld [hRandomSub], a + ldh [hRandomSub], a - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a - ld a, [hSCX] - ld [rSCX], a - ld a, [hSCY] - ld [rSCY], a - ld a, [hWY] - ld [rWY], a - ld a, [hWX] - ld [rWX], a + ldh a, [hSCX] + ldh [rSCX], a + ldh a, [hSCY] + ldh [rSCY], a + ldh a, [hWY] + ldh [rWY], a + ldh a, [hWX] + ldh [rWX], a ; There's only time to call one of these in one vblank. ; Calls are in order of priority. @@ -106,7 +106,7 @@ VBlank0:: .done - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] and a jr nz, .done_oam call hTransferVirtualOAM @@ -136,25 +136,25 @@ VBlank0:: ld a, BANK(_UpdateSound) rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch - ld a, [hSeconds] - ld [hSecondsBackup], a + ldh a, [hSeconds] + ldh [hSecondsBackup], a ret VBlank2:: ; sound only - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a ld a, BANK(_UpdateSound) rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch xor a @@ -169,13 +169,13 @@ VBlank1:: ; oam ; sound / lcd stat - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a - ld a, [hSCX] - ld [rSCX], a - ld a, [hSCY] - ld [rSCY], a + ldh a, [hSCX] + ldh [rSCX], a + ldh a, [hSCY] + ldh [rSCY], a call UpdatePals jr c, .done @@ -190,57 +190,57 @@ VBlank1:: ld [wVBlankOccurred], a ; get requested ints - ld a, [rIF] + ldh a, [rIF] ld b, a ; discard requested ints xor a - ld [rIF], a + ldh [rIF], a ; enable lcd stat ld a, %10 ; lcd stat - ld [rIE], a + ldh [rIE], a ; rerequest serial int if applicable (still disabled) ; request lcd stat ld a, b and %1000 ; serial or %10 ; lcd stat - ld [rIF], a + ldh [rIF], a ei ld a, BANK(_UpdateSound) rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch di ; get requested ints - ld a, [rIF] + ldh a, [rIF] ld b, a ; discard requested ints xor a - ld [rIF], a + ldh [rIF], a ; enable ints besides joypad ld a, %1111 ; serial timer lcdstat vblank - ld [rIE], a + ldh [rIE], a ; rerequest ints ld a, b - ld [rIF], a + ldh [rIF], a ret UpdatePals:: ; update pals for either dmg or cgb - ld a, [hCGB] + ldh a, [hCGB] and a jp nz, UpdateCGBPals ; update gb pals ld a, [wBGP] - ld [rBGP], a + ldh [rBGP], a ld a, [wOBP0] - ld [rOBP0], a + ldh [rOBP0], a ld a, [wOBP1] - ld [rOBP1], a + ldh [rOBP1], a and a ret @@ -253,15 +253,15 @@ VBlank3:: ; oam ; sound / lcd stat - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a - ld a, [hSCX] - ld [rSCX], a - ld a, [hSCY] - ld [rSCY], a + ldh a, [hSCX] + ldh [rSCX], a + ldh a, [hSCY] + ldh [rSCY], a - ld a, [hCGBPalUpdate] + ldh a, [hCGBPalUpdate] and a call nz, ForceUpdateCGBPals jr c, .done @@ -275,24 +275,24 @@ VBlank3:: xor a ld [wVBlankOccurred], a - ld a, [rIF] + ldh a, [rIF] push af xor a - ld [rIF], a + ldh [rIF], a ld a, %10 ; lcd stat - ld [rIE], a - ld [rIF], a + ldh [rIE], a + ldh [rIF], a ei ld a, BANK(_UpdateSound) rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch di ; request lcdstat - ld a, [rIF] + ldh a, [rIF] ld b, a ; and any other ints pop af @@ -300,13 +300,13 @@ VBlank3:: ld b, a ; reset ints xor a - ld [rIF], a + ldh [rIF], a ; enable ints besides joypad ld a, %1111 ; serial timer lcdstat vblank - ld [rIE], a + ldh [rIE], a ; request ints ld a, b - ld [rIF], a + ldh [rIF], a ret VBlank4:: @@ -317,8 +317,8 @@ VBlank4:: ; serial ; sound - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a call UpdateBGMap call Serve2bppRequest @@ -336,7 +336,7 @@ VBlank4:: rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch ret @@ -348,11 +348,11 @@ VBlank5:: ; joypad ; - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a - ld a, [hSCX] - ld [rSCX], a + ldh a, [hSCX] + ldh [rSCX], a call UpdatePalsIfCGB jr c, .done @@ -367,25 +367,25 @@ VBlank5:: call Joypad xor a - ld [rIF], a + ldh [rIF], a ld a, %10 ; lcd stat - ld [rIE], a + ldh [rIE], a ; request lcd stat - ld [rIF], a + ldh [rIF], a ei ld a, BANK(_UpdateSound) rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch di xor a - ld [rIF], a + ldh [rIF], a ; enable ints besides joypad ld a, %1111 ; serial timer lcdstat vblank - ld [rIE], a + ldh [rIE], a ret VBlank6:: @@ -394,8 +394,8 @@ VBlank6:: ; dma transfer ; sound - ld a, [hROMBank] - ld [hROMBankBackup], a + ldh a, [hROMBank] + ldh [hROMBankBackup], a ; inc frame counter ld hl, hVBlankCounter @@ -416,6 +416,6 @@ VBlank6:: rst Bankswitch call _UpdateSound - ld a, [hROMBankBackup] + ldh a, [hROMBankBackup] rst Bankswitch ret diff --git a/home/video.asm b/home/video.asm index 4b519fca0..6f90cb518 100644 --- a/home/video.asm +++ b/home/video.asm @@ -3,17 +3,17 @@ DMATransfer:: ; Return carry if the transfer is completed. - ld a, [hDMATransfer] + ldh a, [hDMATransfer] and a ret z ; Start transfer - ld [rHDMA5], a + ldh [rHDMA5], a ; Execution is halted until the transfer is complete. xor a - ld [hDMATransfer], a + ldh [hDMATransfer], a scf ret @@ -25,11 +25,11 @@ UpdateBGMapBuffer:: ; Return carry on success. - ld a, [hBGMapUpdate] + ldh a, [hBGMapUpdate] and a ret z - ld a, [rVBK] + ldh a, [rVBK] push af ld [hSPBuffer], sp @@ -50,7 +50,7 @@ rept 2 ; Palettes ld a, 1 - ld [rVBK], a + ldh [rVBK], a ld a, [hli] ld [bc], a @@ -61,7 +61,7 @@ rept 2 ; Tiles ld a, 0 - ld [rVBK], a + ldh [rVBK], a ld a, [de] inc de @@ -73,35 +73,35 @@ rept 2 endr ; We've done 2 16x8 blocks - ld a, [hBGMapTileCount] + ldh a, [hBGMapTileCount] dec a dec a - ld [hBGMapTileCount], a + ldh [hBGMapTileCount], a jr nz, .next - ld a, [hSPBuffer] + ldh a, [hSPBuffer] ld l, a - ld a, [hSPBuffer + 1] + ldh a, [hSPBuffer + 1] ld h, a ld sp, hl pop af - ld [rVBK], a + ldh [rVBK], a xor a - ld [hBGMapUpdate], a + ldh [hBGMapUpdate], a scf ret WaitTop:: ; Wait until the top third of the BG Map is being updated. - ld a, [hBGMapMode] + ldh a, [hBGMapMode] and a ret z - ld a, [hBGMapThird] + ldh a, [hBGMapThird] and a jr z, .done @@ -110,13 +110,13 @@ WaitTop:: .done xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a ret UpdateBGMap:: ; Update the BG Map, in thirds, from wTileMap and wAttrMap. - ld a, [hBGMapMode] + ldh a, [hBGMapMode] and a ret z @@ -129,18 +129,18 @@ UpdateBGMap:: ; BG Map 1 dec a - ld a, [hBGMapAddress] + ldh a, [hBGMapAddress] ld l, a - ld a, [hBGMapAddress + 1] + ldh a, [hBGMapAddress + 1] ld h, a push hl xor a ; LOW(vBGMap1) - ld [hBGMapAddress], a + ldh [hBGMapAddress], a ld a, HIGH(vBGMap1) - ld [hBGMapAddress + 1], a + ldh [hBGMapAddress + 1], a - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af cp 3 call z, .Tiles @@ -150,20 +150,20 @@ UpdateBGMap:: pop hl ld a, l - ld [hBGMapAddress], a + ldh [hBGMapAddress], a ld a, h - ld [hBGMapAddress + 1], a + ldh [hBGMapAddress + 1], a ret .Attr: ld a, 1 - ld [rVBK], a + ldh [rVBK], a hlcoord 0, 0, wAttrMap call .update ld a, 0 - ld [rVBK], a + ldh [rVBK], a ret .Tiles: @@ -173,7 +173,7 @@ UpdateBGMap:: ld [hSPBuffer], sp ; Which third? - ld a, [hBGMapThird] + ldh a, [hBGMapThird] and a ; 0 jr z, .top dec a ; 1 @@ -187,9 +187,9 @@ THIRD_HEIGHT EQU SCREEN_HEIGHT / 3 add hl, de ld sp, hl - ld a, [hBGMapAddress + 1] + ldh a, [hBGMapAddress + 1] ld h, a - ld a, [hBGMapAddress] + ldh a, [hBGMapAddress] ld l, a ld de, 2 * THIRD_HEIGHT * BG_MAP_WIDTH @@ -204,9 +204,9 @@ THIRD_HEIGHT EQU SCREEN_HEIGHT / 3 add hl, de ld sp, hl - ld a, [hBGMapAddress + 1] + ldh a, [hBGMapAddress + 1] ld h, a - ld a, [hBGMapAddress] + ldh a, [hBGMapAddress] ld l, a ld de, THIRD_HEIGHT * BG_MAP_WIDTH @@ -219,9 +219,9 @@ THIRD_HEIGHT EQU SCREEN_HEIGHT / 3 .top ld sp, hl - ld a, [hBGMapAddress + 1] + ldh a, [hBGMapAddress + 1] ld h, a - ld a, [hBGMapAddress] + ldh a, [hBGMapAddress] ld l, a ; Next time: middle third @@ -229,7 +229,7 @@ THIRD_HEIGHT EQU SCREEN_HEIGHT / 3 .start ; Which third to update next time - ld [hBGMapThird], a + ldh [hBGMapThird], a ; Rows of tiles in a third ld a, SCREEN_HEIGHT / 3 @@ -255,9 +255,9 @@ endr dec a jr nz, .row - ld a, [hSPBuffer] + ldh a, [hSPBuffer] ld l, a - ld a, [hSPBuffer + 1] + ldh a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -270,7 +270,7 @@ Serve1bppRequest:: ret z ; Back out if we're too far into VBlank - ld a, [rLY] + ldh a, [rLY] cp LY_VBLANK ret c cp LY_VBLANK + 2 @@ -333,9 +333,9 @@ endr ld [wRequested1bppSource], sp - ld a, [hSPBuffer] + ldh a, [hSPBuffer] ld l, a - ld a, [hSPBuffer + 1] + ldh a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -348,7 +348,7 @@ Serve2bppRequest:: ret z ; Back out if we're too far into VBlank - ld a, [rLY] + ldh a, [rLY] cp LY_VBLANK ret c cp LY_VBLANK + 2 @@ -410,9 +410,9 @@ endr ld [wRequested2bppSource], sp - ld a, [hSPBuffer] + ldh a, [hSPBuffer] ld l, a - ld a, [hSPBuffer + 1] + ldh a, [hSPBuffer + 1] ld h, a ld sp, hl ret @@ -420,38 +420,38 @@ endr AnimateTileset:: ; Only call during the first fifth of VBlank - ld a, [hMapAnims] + ldh a, [hMapAnims] and a ret z ; Back out if we're too far into VBlank - ld a, [rLY] + ldh a, [rLY] cp LY_VBLANK ret c cp LY_VBLANK + 7 ret nc - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(_AnimateTileset) rst Bankswitch - ld a, [rSVBK] + ldh a, [rSVBK] push af ld a, BANK(wTilesetAnim) - ld [rSVBK], a + ldh [rSVBK], a - ld a, [rVBK] + ldh a, [rVBK] push af ld a, 0 - ld [rVBK], a + ldh [rVBK], a call _AnimateTileset pop af - ld [rVBK], a + ldh [rVBK], a pop af - ld [rSVBK], a + ldh [rSVBK], a pop af rst Bankswitch ret diff --git a/home/window.asm b/home/window.asm index 6d9bd5311..ff0576e63 100644 --- a/home/window.asm +++ b/home/window.asm @@ -1,6 +1,6 @@ RefreshScreen:: call ClearWindowData - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(ReanchorBGMap_NoOAMUpdate) ; and BANK(LoadFonts_NoOAMUpdate) rst Bankswitch @@ -14,15 +14,15 @@ RefreshScreen:: ret CloseText:: - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, $1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call .CloseText pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ld hl, wVramState res 6, [hl] ret @@ -30,14 +30,14 @@ CloseText:: .CloseText: call ClearWindowData xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call OverworldTextModeSwitch call _OpenAndCloseMenu_HDMATransferTileMapAndAttrMap xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a call SafeUpdateSprites ld a, $90 - ld [hWY], a + ldh [hWY], a call ReplaceKrisSprite farcall ReturnFromMapSetupScript farcall LoadOverworldFont @@ -45,7 +45,7 @@ CloseText:: OpenText:: call ClearWindowData - ld a, [hROMBank] + ldh a, [hROMBank] push af ld a, BANK(ReanchorBGMap_NoOAMUpdate) ; and BANK(LoadFonts_NoOAMUpdate) rst Bankswitch @@ -60,36 +60,36 @@ OpenText:: ret _OpenAndCloseMenu_HDMATransferTileMapAndAttrMap:: - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af ld a, $1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a farcall OpenAndCloseMenu_HDMATransferTileMapAndAttrMap pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ret SafeUpdateSprites:: - ld a, [hOAMUpdate] + ldh a, [hOAMUpdate] push af - ld a, [hBGMapMode] + ldh a, [hBGMapMode] push af xor a - ld [hBGMapMode], a + ldh [hBGMapMode], a ld a, $1 - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call UpdateSprites xor a - ld [hOAMUpdate], a + ldh [hOAMUpdate], a call DelayFrame pop af - ld [hBGMapMode], a + ldh [hBGMapMode], a pop af - ld [hOAMUpdate], a + ldh [hOAMUpdate], a ret ; unused |