Use labels instead of constants for HRAM
Use explicit ldh instruction to access HRAM locations, don't rely on optimizing ld
This commit is contained in:
@@ -11,10 +11,10 @@ Credits::
|
||||
.okay
|
||||
ld [wJumptableIndex], a
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wGBCPalettes)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
call ClearBGPalettes
|
||||
call ClearTileMap
|
||||
@@ -69,18 +69,18 @@ Credits::
|
||||
call ByteFill
|
||||
|
||||
ld a, rSCX - $ff00
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hLCDCPointer], a
|
||||
|
||||
call GetCreditsPalette
|
||||
call SetPalettes
|
||||
ld a, [hVBlank]
|
||||
ldh a, [hVBlank]
|
||||
push af
|
||||
ld a, $5
|
||||
ld [hVBlank], a
|
||||
ldh [hVBlank], a
|
||||
ld a, $1
|
||||
ld [hInMenu], a
|
||||
ldh [hInMenu], a
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld [wCreditsPos], a
|
||||
ld [wCreditsUnusedCD21], a
|
||||
ld [wCreditsTimer], a
|
||||
@@ -97,16 +97,16 @@ Credits::
|
||||
.exit_credits
|
||||
call ClearBGPalettes
|
||||
xor a
|
||||
ld [hLCDCPointer], a
|
||||
ld [hBGMapAddress], a
|
||||
ldh [hLCDCPointer], a
|
||||
ldh [hBGMapAddress], a
|
||||
pop af
|
||||
ld [hVBlank], a
|
||||
ldh [hVBlank], a
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
Credits_HandleAButton:
|
||||
ld a, [hJoypadDown]
|
||||
ldh a, [hJoypadDown]
|
||||
and A_BUTTON
|
||||
ret z
|
||||
ld a, [wJumptableIndex]
|
||||
@@ -114,7 +114,7 @@ Credits_HandleAButton:
|
||||
ret
|
||||
|
||||
Credits_HandleBButton:
|
||||
ld a, [hJoypadDown]
|
||||
ldh a, [hJoypadDown]
|
||||
and B_BUTTON
|
||||
ret z
|
||||
ld a, [wJumptableIndex]
|
||||
@@ -177,7 +177,7 @@ Credits_LoopBack:
|
||||
|
||||
Credits_PrepBGMapUpdate:
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
jp Credits_Next
|
||||
|
||||
Credits_UpdateGFXRequestPath:
|
||||
@@ -194,13 +194,13 @@ Credits_UpdateGFXRequestPath:
|
||||
|
||||
Credits_RequestGFX:
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $8
|
||||
ld [wRequested2bpp], a
|
||||
jp Credits_Next
|
||||
|
||||
Credits_LYOverride:
|
||||
ld a, [rLY]
|
||||
ldh a, [rLY]
|
||||
cp $30
|
||||
jr c, Credits_LYOverride
|
||||
ld a, [wCreditsLYOverride]
|
||||
@@ -240,7 +240,7 @@ ParseCredits:
|
||||
; First, let's clear the current text display,
|
||||
; starting from line 5.
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
hlcoord 0, 5
|
||||
ld bc, 20 * 12
|
||||
ld a, " "
|
||||
@@ -352,9 +352,9 @@ ParseCredits:
|
||||
ld [wCreditsTimer], a
|
||||
|
||||
xor a
|
||||
ld [hBGMapThird], a
|
||||
ldh [hBGMapThird], a
|
||||
ld a, 1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
|
||||
.done
|
||||
jp Credits_Next
|
||||
@@ -394,9 +394,9 @@ ParseCredits:
|
||||
|
||||
ConstructCreditsTilemap:
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $c
|
||||
ld [hBGMapAddress], a
|
||||
ldh [hBGMapAddress], a
|
||||
|
||||
ld a, $28
|
||||
hlcoord 0, 0
|
||||
@@ -438,8 +438,8 @@ ConstructCreditsTilemap:
|
||||
|
||||
call WaitBGMap2
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ld [hBGMapAddress], a
|
||||
ldh [hBGMapMode], a
|
||||
ldh [hBGMapAddress], a
|
||||
hlcoord 0, 0
|
||||
call .InitTopPortion
|
||||
call WaitBGMap2
|
||||
|
@@ -4,14 +4,14 @@ Copyright_GFPresents:
|
||||
call ClearBGPalettes
|
||||
call ClearTileMap
|
||||
ld a, HIGH(vBGMap0)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
xor a ; LOW(vBGMap0)
|
||||
ld [hBGMapAddress], a
|
||||
ld [hJoyDown], a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hBGMapAddress], a
|
||||
ldh [hJoyDown], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call WaitBGMap
|
||||
ld b, SCGB_GAMEFREAK_LOGO
|
||||
call GetSGBLayout
|
||||
@@ -27,7 +27,7 @@ Copyright_GFPresents:
|
||||
call .GetGFLogoGFX
|
||||
.joy_loop
|
||||
call JoyTextDelay
|
||||
ld a, [hJoyLast]
|
||||
ldh a, [hJoyLast]
|
||||
and BUTTONS
|
||||
jr nz, .pressed_button
|
||||
ld a, [wJumptableIndex]
|
||||
@@ -54,10 +54,10 @@ Copyright_GFPresents:
|
||||
lb bc, BANK(GameFreakLogo), 28
|
||||
call Get1bpp
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, IntroLogoGFX
|
||||
ld de, wDecompressScratch
|
||||
@@ -75,7 +75,7 @@ Copyright_GFPresents:
|
||||
call Request2bpp
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
farcall ClearSpriteAnims
|
||||
depixel 10, 11, 4, 0
|
||||
@@ -94,12 +94,12 @@ Copyright_GFPresents:
|
||||
ld [wJumptableIndex], a
|
||||
ld [wIntroSceneFrameCounter], a
|
||||
ld [wIntroSceneTimer], a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
lb de, %11100100, %11100100
|
||||
call DmgToCgbObjPals
|
||||
ret
|
||||
@@ -304,18 +304,18 @@ GameFreakLogoScene4:
|
||||
ld hl, GameFreakLogoPalettes
|
||||
add hl, de
|
||||
add hl, de
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wOBPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, [hli]
|
||||
ld [wOBPals2 + 12], a
|
||||
ld a, [hli]
|
||||
ld [wOBPals2 + 13], a
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
.asm_e47a3
|
||||
@@ -334,18 +334,18 @@ INCBIN "gfx/splash/logo1.1bpp"
|
||||
INCBIN "gfx/splash/logo2.1bpp"
|
||||
|
||||
CrystalIntro:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wGBCPalettes)
|
||||
ld [rSVBK], a
|
||||
ld a, [hInMenu]
|
||||
ldh [rSVBK], a
|
||||
ldh a, [hInMenu]
|
||||
push af
|
||||
ld a, [hVBlank]
|
||||
ldh a, [hVBlank]
|
||||
push af
|
||||
call .InitRAMAddrs
|
||||
.loop
|
||||
call JoyTextDelay
|
||||
ld a, [hJoyLast]
|
||||
ldh a, [hJoyLast]
|
||||
and BUTTONS
|
||||
jr nz, .ShutOffMusic
|
||||
ld a, [wJumptableIndex]
|
||||
@@ -365,27 +365,27 @@ CrystalIntro:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
pop af
|
||||
ld [hVBlank], a
|
||||
ldh [hVBlank], a
|
||||
pop af
|
||||
ld [hInMenu], a
|
||||
ldh [hInMenu], a
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
.InitRAMAddrs:
|
||||
xor a
|
||||
ld [hVBlank], a
|
||||
ldh [hVBlank], a
|
||||
ld a, $1
|
||||
ld [hInMenu], a
|
||||
ldh [hInMenu], a
|
||||
xor a
|
||||
ld [hMapAnims], a
|
||||
ldh [hMapAnims], a
|
||||
ld [wJumptableIndex], a
|
||||
ret
|
||||
|
||||
@@ -442,14 +442,14 @@ IntroScene1:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap001
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroUnownsGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
@@ -459,10 +459,10 @@ IntroScene1:
|
||||
ld hl, IntroTilemap002
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette2
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -472,14 +472,14 @@ IntroScene1:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -518,24 +518,24 @@ IntroScene3:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap003
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroBackgroundGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
ld hl, IntroTilemap004
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette1
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -545,14 +545,14 @@ IntroScene3:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call Intro_ResetLYOverrides
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -580,15 +580,15 @@ IntroScene5:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hBGMapMode], a
|
||||
ldh [hLCDCPointer], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap005
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroUnownsGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
@@ -598,10 +598,10 @@ IntroScene5:
|
||||
ld hl, IntroTilemap006
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette2
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -611,14 +611,14 @@ IntroScene5:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -678,10 +678,10 @@ IntroScene7:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap003
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
@@ -691,7 +691,7 @@ IntroScene7:
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroSuicuneRunGFX
|
||||
ld de, vTiles0 tile $00
|
||||
call Intro_DecompressRequest2bpp_255Tiles
|
||||
@@ -704,10 +704,10 @@ IntroScene7:
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, IntroPalette1
|
||||
ld de, wBGPals1
|
||||
@@ -720,15 +720,15 @@ IntroScene7:
|
||||
call CopyBytes
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call Intro_ResetLYOverrides
|
||||
farcall ClearSpriteAnims
|
||||
depixel 13, 27, 4, 0
|
||||
@@ -775,7 +775,7 @@ IntroScene8:
|
||||
IntroScene9:
|
||||
; Set up the next scene (same bg).
|
||||
xor a
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hLCDCPointer], a
|
||||
call ClearSprites
|
||||
hlcoord 0, 0, wAttrMap
|
||||
; first 12 rows have palette 1
|
||||
@@ -791,18 +791,18 @@ IntroScene9:
|
||||
ld a, $3
|
||||
call ByteFill
|
||||
ld a, $2
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
call DelayFrame
|
||||
call DelayFrame
|
||||
call DelayFrame
|
||||
ld a, $c ; $980c
|
||||
ld [hBGMapAddress], a
|
||||
ldh [hBGMapAddress], a
|
||||
call DelayFrame
|
||||
call DelayFrame
|
||||
call DelayFrame
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ld [hBGMapAddress], a
|
||||
ldh [hBGMapMode], a
|
||||
ldh [hBGMapAddress], a
|
||||
ld [wGlobalAnimXOffset], a
|
||||
xor a
|
||||
ld [wIntroSceneFrameCounter], a
|
||||
@@ -848,25 +848,25 @@ IntroScene11:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hBGMapMode], a
|
||||
ldh [hLCDCPointer], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap007
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroUnownsGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
ld hl, IntroTilemap008
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette2
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -876,14 +876,14 @@ IntroScene11:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -972,14 +972,14 @@ IntroScene13:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap003
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroSuicuneRunGFX
|
||||
ld de, vTiles0 tile $00
|
||||
call Intro_DecompressRequest2bpp_255Tiles
|
||||
@@ -989,10 +989,10 @@ IntroScene13:
|
||||
ld hl, IntroTilemap004
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette1
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -1002,14 +1002,14 @@ IntroScene13:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
depixel 13, 11, 4, 0
|
||||
ld a, SPRITE_ANIM_INDEX_INTRO_SUICUNE
|
||||
@@ -1027,9 +1027,9 @@ IntroScene13:
|
||||
|
||||
IntroScene14:
|
||||
; Suicune runs then jumps.
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
sub 10
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld hl, wIntroSceneFrameCounter
|
||||
ld a, [hl]
|
||||
inc [hl]
|
||||
@@ -1076,14 +1076,14 @@ IntroScene15:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap009
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroSuicuneJumpGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
@@ -1098,10 +1098,10 @@ IntroScene15:
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
call Intro_LoadTilemap
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette5
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -1111,15 +1111,15 @@ IntroScene15:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, $90
|
||||
ld [hSCY], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
depixel 8, 5
|
||||
@@ -1142,11 +1142,11 @@ IntroScene16:
|
||||
cp $80
|
||||
jr nc, .done
|
||||
call Intro_Scene16_AnimateSuicune
|
||||
ld a, [hSCY]
|
||||
ldh a, [hSCY]
|
||||
and a
|
||||
ret z
|
||||
add 8
|
||||
ld [hSCY], a
|
||||
ldh [hSCY], a
|
||||
ret
|
||||
.done
|
||||
call NextIntroScene
|
||||
@@ -1158,24 +1158,24 @@ IntroScene17:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap011
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroSuicuneCloseGFX
|
||||
ld de, vTiles1 tile $00
|
||||
call Intro_DecompressRequest2bpp_255Tiles
|
||||
ld hl, IntroTilemap012
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette4
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -1185,14 +1185,14 @@ IntroScene17:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -1208,11 +1208,11 @@ IntroScene18:
|
||||
inc [hl]
|
||||
cp $60
|
||||
jr nc, .done
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
cp $60
|
||||
ret z
|
||||
add 8
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ret
|
||||
.done
|
||||
call NextIntroScene
|
||||
@@ -1224,14 +1224,14 @@ IntroScene19:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap013
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroSuicuneBackGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
@@ -1246,10 +1246,10 @@ IntroScene19:
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
call Intro_LoadTilemap
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette5
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -1259,15 +1259,15 @@ IntroScene19:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, $d8
|
||||
ld [hSCY], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
ld hl, wSpriteAnimDict
|
||||
xor a
|
||||
@@ -1296,9 +1296,9 @@ IntroScene20:
|
||||
jr nc, .AppearUnown
|
||||
cp $28
|
||||
ret nc
|
||||
ld a, [hSCY]
|
||||
ldh a, [hSCY]
|
||||
inc a
|
||||
ld [hSCY], a
|
||||
ldh [hSCY], a
|
||||
ret
|
||||
|
||||
.AppearUnown:
|
||||
@@ -1335,7 +1335,7 @@ IntroScene21:
|
||||
ld c, 3
|
||||
call DelayFrames
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld [wIntroSceneFrameCounter], a
|
||||
ld [wIntroSceneTimer], a
|
||||
call NextIntroScene
|
||||
@@ -1401,24 +1401,24 @@ IntroScene26:
|
||||
call ClearSprites
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroTilemap015
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, IntroCrystalUnownsGFX
|
||||
ld de, vTiles2 tile $00
|
||||
call Intro_DecompressRequest2bpp_128Tiles
|
||||
ld hl, IntroTilemap017
|
||||
debgcoord 0, 0
|
||||
call Intro_DecompressRequest2bpp_64Tiles
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, IntroPalette3
|
||||
ld de, wBGPals1
|
||||
ld bc, 16 palettes
|
||||
@@ -1428,14 +1428,14 @@ IntroScene26:
|
||||
ld bc, 16 palettes
|
||||
call CopyBytes
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall ClearSpriteAnims
|
||||
call Intro_SetCGBPalUpdate
|
||||
xor a
|
||||
@@ -1503,10 +1503,10 @@ Intro_Scene24_ApplyPaletteFade:
|
||||
adc h
|
||||
ld h, a
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld de, wBGPals2
|
||||
ld b, 8 ; number of BG pals
|
||||
.loop1
|
||||
@@ -1522,9 +1522,9 @@ Intro_Scene24_ApplyPaletteFade:
|
||||
dec b
|
||||
jr nz, .loop1
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
.FadePals:
|
||||
@@ -1592,10 +1592,10 @@ CrystalIntro_UnownFade:
|
||||
|
||||
ld c, a
|
||||
ld b, $0
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push hl
|
||||
push bc
|
||||
@@ -1646,9 +1646,9 @@ CrystalIntro_UnownFade:
|
||||
ld [hli], a
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
.BWFade:
|
||||
@@ -1693,10 +1693,10 @@ Intro_Scene20_AppearUnown:
|
||||
add a
|
||||
add a
|
||||
ld c, a
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push bc
|
||||
ld de, wBGPals2
|
||||
@@ -1724,9 +1724,9 @@ Intro_Scene20_AppearUnown:
|
||||
call CopyBytes
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
.pal1
|
||||
@@ -1757,10 +1757,10 @@ endr
|
||||
ld c, a
|
||||
ld b, $0
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push hl
|
||||
ld hl, .FastFadePalettes
|
||||
@@ -1787,9 +1787,9 @@ endr
|
||||
ld [hli], a
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
.FastFadePalettes:
|
||||
@@ -1809,10 +1809,10 @@ hue = hue + -1
|
||||
endr
|
||||
|
||||
Intro_LoadTilemap:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, wDecompressScratch
|
||||
decoord 0, 0
|
||||
@@ -1835,7 +1835,7 @@ Intro_LoadTilemap:
|
||||
jr nz, .row
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
Intro_Scene16_AnimateSuicune:
|
||||
@@ -1848,7 +1848,7 @@ Intro_Scene16_AnimateSuicune:
|
||||
|
||||
.PrepareForSuicuneSwap:
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ret
|
||||
|
||||
Intro_ColoredSuicuneFrameSwap:
|
||||
@@ -1869,7 +1869,7 @@ Intro_ColoredSuicuneFrameSwap:
|
||||
or b
|
||||
jr nz, .loop
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ret
|
||||
|
||||
Intro_RustleGrass:
|
||||
@@ -1902,14 +1902,14 @@ Intro_RustleGrass:
|
||||
|
||||
Intro_SetCGBPalUpdate:
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
ret
|
||||
|
||||
Intro_ClearBGPals:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals2)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, wBGPals2
|
||||
ld bc, 16 palettes
|
||||
@@ -1917,18 +1917,18 @@ Intro_ClearBGPals:
|
||||
call ByteFill
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
call DelayFrame
|
||||
call DelayFrame
|
||||
ret
|
||||
|
||||
Intro_DecompressRequest2bpp_128Tiles:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push de
|
||||
ld de, wDecompressScratch
|
||||
@@ -1940,14 +1940,14 @@ Intro_DecompressRequest2bpp_128Tiles:
|
||||
call Request2bpp
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
Intro_DecompressRequest2bpp_255Tiles:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push de
|
||||
ld de, wDecompressScratch
|
||||
@@ -1959,14 +1959,14 @@ Intro_DecompressRequest2bpp_255Tiles:
|
||||
call Request2bpp
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
Intro_DecompressRequest2bpp_64Tiles:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
push de
|
||||
ld de, wDecompressScratch
|
||||
@@ -1978,14 +1978,14 @@ Intro_DecompressRequest2bpp_64Tiles:
|
||||
call Request2bpp
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
Intro_ResetLYOverrides:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wLYOverrides)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, wLYOverrides
|
||||
ld bc, wLYOverridesEnd - wLYOverrides
|
||||
@@ -1993,16 +1993,16 @@ Intro_ResetLYOverrides:
|
||||
call ByteFill
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld a, rSCX - $ff00
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hLCDCPointer], a
|
||||
ret
|
||||
|
||||
Intro_PerspectiveScrollBG:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wLYOverrides)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
; Scroll the grass every frame.
|
||||
; Scroll the trees every other frame and at half speed.
|
||||
; This creates an illusion of perspective.
|
||||
@@ -2024,9 +2024,9 @@ Intro_PerspectiveScrollBG:
|
||||
ld bc, $31
|
||||
call ByteFill
|
||||
ld a, [wLYOverrides + 0]
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
||||
IntroSuicuneRunGFX:
|
||||
|
@@ -4,7 +4,7 @@ EvolutionAnimation:
|
||||
push bc
|
||||
ld a, [wCurSpecies]
|
||||
push af
|
||||
ld a, [rOBP0]
|
||||
ldh a, [rOBP0]
|
||||
push af
|
||||
ld a, [wBaseDexNo]
|
||||
push af
|
||||
@@ -14,7 +14,7 @@ EvolutionAnimation:
|
||||
pop af
|
||||
ld [wBaseDexNo], a
|
||||
pop af
|
||||
ld [rOBP0], a
|
||||
ldh [rOBP0], a
|
||||
pop af
|
||||
ld [wCurSpecies], a
|
||||
pop bc
|
||||
@@ -30,7 +30,7 @@ EvolutionAnimation:
|
||||
|
||||
.EvolutionAnimation:
|
||||
ld a, %11100100
|
||||
ld [rOBP0], a
|
||||
ldh [rOBP0], a
|
||||
|
||||
ld de, MUSIC_NONE
|
||||
call PlayMusic
|
||||
@@ -46,7 +46,7 @@ EvolutionAnimation:
|
||||
ld [wLowHealthAlarm], a
|
||||
call WaitBGMap
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, [wEvolutionOldSpecies]
|
||||
ld [wPlayerHPPal], a
|
||||
|
||||
@@ -74,7 +74,7 @@ EvolutionAnimation:
|
||||
ld [wCurSpecies], a
|
||||
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
call .check_statused
|
||||
jr c, .skip_cry
|
||||
|
||||
@@ -205,7 +205,7 @@ EvolutionAnimation:
|
||||
.ReplaceFrontpic:
|
||||
push bc
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
hlcoord 7, 2
|
||||
lb bc, 7, 7
|
||||
ld de, SCREEN_WIDTH - 7
|
||||
@@ -222,7 +222,7 @@ EvolutionAnimation:
|
||||
dec b
|
||||
jr nz, .loop1
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
call WaitBGMap
|
||||
pop bc
|
||||
ret
|
||||
@@ -231,7 +231,7 @@ EvolutionAnimation:
|
||||
call DelayFrame
|
||||
push bc
|
||||
call JoyTextDelay
|
||||
ld a, [hJoyDown]
|
||||
ldh a, [hJoyDown]
|
||||
pop bc
|
||||
and B_BUTTON
|
||||
jr nz, .pressed_b
|
||||
@@ -326,7 +326,7 @@ EvolutionAnimation:
|
||||
push bc
|
||||
callfar PlaySpriteAnimations
|
||||
; a = (([hVBlankCounter] + 4) / 2) % NUM_PALETTES
|
||||
ld a, [hVBlankCounter]
|
||||
ldh a, [hVBlankCounter]
|
||||
and %1110
|
||||
srl a
|
||||
inc a
|
||||
|
@@ -1,5 +1,5 @@
|
||||
GBCOnlyScreen:
|
||||
ld a, [hCGB]
|
||||
ldh a, [hCGB]
|
||||
and a
|
||||
ret nz
|
||||
|
||||
@@ -10,13 +10,13 @@ GBCOnlyScreen:
|
||||
|
||||
ld hl, GBCOnlyGFX
|
||||
ld de, wGBCOnlyDecompressBuffer
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, 0 ; this has the same effect as selecting bank 1
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
call Decompress
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld de, wGBCOnlyDecompressBuffer
|
||||
ld hl, vTiles2
|
||||
|
@@ -14,8 +14,8 @@ InitDisplayForHallOfFame:
|
||||
xor a
|
||||
call ByteFill
|
||||
xor a
|
||||
ld [hSCY], a
|
||||
ld [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ldh [hSCX], a
|
||||
call EnableLCD
|
||||
ld hl, .SavingRecordDontTurnOff
|
||||
call PrintText
|
||||
@@ -53,18 +53,18 @@ InitDisplayForRedCredits:
|
||||
dec c
|
||||
jr nz, .load_white_palettes
|
||||
xor a
|
||||
ld [hSCY], a
|
||||
ld [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ldh [hSCX], a
|
||||
call EnableLCD
|
||||
call WaitBGMap2
|
||||
call SetPalettes
|
||||
ret
|
||||
|
||||
ResetDisplayBetweenHallOfFameMons:
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wDecompressScratch)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ld hl, wDecompressScratch
|
||||
ld bc, wScratchAttrMap - wDecompressScratch
|
||||
ld a, " "
|
||||
@@ -75,5 +75,5 @@ ResetDisplayBetweenHallOfFameMons:
|
||||
ld c, 4 tiles
|
||||
call Request2bpp
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
ret
|
||||
|
@@ -5,7 +5,7 @@ _TitleScreen:
|
||||
|
||||
; Turn BG Map update off
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
|
||||
; Reset timing variables
|
||||
ld hl, wJumptableIndex
|
||||
@@ -19,7 +19,7 @@ _TitleScreen:
|
||||
|
||||
; VRAM bank 1
|
||||
ld a, 1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
|
||||
; Decompress running Suicune gfx
|
||||
ld hl, TitleSuicuneGFX
|
||||
@@ -86,7 +86,7 @@ _TitleScreen:
|
||||
|
||||
; Back to VRAM bank 0
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
|
||||
; Decompress logo
|
||||
ld hl, TitleLogoGFX
|
||||
@@ -126,11 +126,11 @@ _TitleScreen:
|
||||
call InitializeBackground
|
||||
|
||||
; Save WRAM bank
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
; WRAM bank 5
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
; Update palette colors
|
||||
ld hl, TitleScreenPalettes
|
||||
@@ -145,14 +145,14 @@ _TitleScreen:
|
||||
|
||||
; Restore WRAM bank
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
; LY/SCX trickery starts here
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wLYOverrides)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
; Make alternating lines come in from opposite sides
|
||||
|
||||
@@ -178,34 +178,34 @@ _TitleScreen:
|
||||
|
||||
; Let LCD Stat know we're messing around with SCX
|
||||
ld a, rSCX - $ff00
|
||||
ld [hLCDCPointer], a
|
||||
ldh [hLCDCPointer], a
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
; Reset audio
|
||||
call ChannelsOff
|
||||
call EnableLCD
|
||||
|
||||
; Set sprite size to 8x16
|
||||
ld a, [rLCDC]
|
||||
ldh a, [rLCDC]
|
||||
set rLCDC_SPRITE_SIZE, a
|
||||
ld [rLCDC], a
|
||||
ldh [rLCDC], a
|
||||
|
||||
ld a, +112
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, 8
|
||||
ld [hSCY], a
|
||||
ldh [hSCY], a
|
||||
ld a, 7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, -112
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
|
||||
; Update BG Map 0 (bank 0)
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
|
||||
xor a
|
||||
ld [wd002], a
|
||||
@@ -237,12 +237,12 @@ SuicuneFrameIterator:
|
||||
add hl, de
|
||||
ld d, [hl]
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
call LoadSuicuneFrame
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
ld a, $3
|
||||
ld [hBGMapThird], a
|
||||
ldh [hBGMapThird], a
|
||||
ret
|
||||
|
||||
.Frames:
|
||||
|
@@ -115,10 +115,10 @@ RunTradeAnimScript:
|
||||
ld [hl], e
|
||||
inc hl
|
||||
ld [hl], d
|
||||
ld a, [hMapAnims]
|
||||
ldh a, [hMapAnims]
|
||||
push af
|
||||
xor a
|
||||
ld [hMapAnims], a
|
||||
ldh [hMapAnims], a
|
||||
ld hl, wVramState
|
||||
ld a, [hl]
|
||||
push af
|
||||
@@ -141,7 +141,7 @@ RunTradeAnimScript:
|
||||
pop af
|
||||
ld [wVramState], a
|
||||
pop af
|
||||
ld [hMapAnims], a
|
||||
ldh [hMapAnims], a
|
||||
ret
|
||||
|
||||
.TradeAnimLayout:
|
||||
@@ -153,17 +153,17 @@ RunTradeAnimScript:
|
||||
call DisableLCD
|
||||
call LoadFontsBattleExtra
|
||||
callfar ClearSpriteAnims
|
||||
ld a, [hCGB]
|
||||
ldh a, [hCGB]
|
||||
and a
|
||||
jr z, .NotCGB
|
||||
ld a, $1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld hl, vTiles0
|
||||
ld bc, sScratch - vTiles0
|
||||
xor a
|
||||
call ByteFill
|
||||
ld a, $0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
|
||||
.NotCGB:
|
||||
hlbgcoord 0, 0
|
||||
@@ -184,12 +184,12 @@ RunTradeAnimScript:
|
||||
ld a, BANK(TradeArrowGFX)
|
||||
call FarCopyBytes
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ld [hSCY], a
|
||||
ldh [hSCX], a
|
||||
ldh [hSCY], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
farcall GetTrademonFrontpic
|
||||
call EnableLCD
|
||||
call LoadTradeBallAndCableGFX
|
||||
@@ -349,11 +349,11 @@ TradeAnim_InitTubeAnim:
|
||||
call TradeAnim_TubeAnimJumptable
|
||||
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $70
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call EnableLCD
|
||||
call LoadTradeBubbleGFX
|
||||
|
||||
@@ -390,9 +390,9 @@ TradeAnim_InitTubeAnim:
|
||||
|
||||
TradeAnim_TubeToOT2:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
add $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
cp $50
|
||||
ret nz
|
||||
ld a, TRADEANIMSTATE_1
|
||||
@@ -402,9 +402,9 @@ TradeAnim_TubeToOT2:
|
||||
|
||||
TradeAnim_TubeToOT3:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
add $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
cp $a0
|
||||
ret nz
|
||||
ld a, TRADEANIMSTATE_2
|
||||
@@ -414,9 +414,9 @@ TradeAnim_TubeToOT3:
|
||||
|
||||
TradeAnim_TubeToOT4:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
add $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
and a
|
||||
ret nz
|
||||
call TradeAnim_IncrementJumptableIndex
|
||||
@@ -424,9 +424,9 @@ TradeAnim_TubeToOT4:
|
||||
|
||||
TradeAnim_TubeToPlayer3:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
sub $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
cp $b0
|
||||
ret nz
|
||||
ld a, TRADEANIMSTATE_1
|
||||
@@ -436,9 +436,9 @@ TradeAnim_TubeToPlayer3:
|
||||
|
||||
TradeAnim_TubeToPlayer4:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
sub $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
cp $60
|
||||
ret nz
|
||||
xor a ; TRADEANIMSTATE_0
|
||||
@@ -448,9 +448,9 @@ TradeAnim_TubeToPlayer4:
|
||||
|
||||
TradeAnim_TubeToPlayer5:
|
||||
call TradeAnim_FlashBGPals
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
sub $2
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
and a
|
||||
ret nz
|
||||
call TradeAnim_IncrementJumptableIndex
|
||||
@@ -475,9 +475,9 @@ TradeAnim_TubeToPlayer8:
|
||||
ld a, " "
|
||||
call ByteFill
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call EnableLCD
|
||||
call LoadTradeBallAndCableGFX
|
||||
call WaitBGMap
|
||||
@@ -592,7 +592,7 @@ TradeAnim_PlaceTrademonStatsOnTubeAnim:
|
||||
call ClearBGPalettes
|
||||
call WaitTop
|
||||
ld a, HIGH(vBGMap1)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call ClearTileMap
|
||||
hlcoord 0, 0
|
||||
ld bc, SCREEN_WIDTH
|
||||
@@ -622,7 +622,7 @@ TradeAnim_PlaceTrademonStatsOnTubeAnim:
|
||||
call WaitBGMap
|
||||
call WaitTop
|
||||
ld a, HIGH(vBGMap0)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call ClearTileMap
|
||||
ret
|
||||
|
||||
@@ -630,7 +630,7 @@ TradeAnim_EnterLinkTube1:
|
||||
call ClearTileMap
|
||||
call WaitTop
|
||||
ld a, $a0
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
call DelayFrame
|
||||
hlcoord 8, 2
|
||||
ld de, TradeLinkTubeTilemap
|
||||
@@ -649,11 +649,11 @@ TradeAnim_EnterLinkTube1:
|
||||
ret
|
||||
|
||||
TradeAnim_EnterLinkTube2:
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
and a
|
||||
jr z, .done
|
||||
add $4
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ret
|
||||
|
||||
.done
|
||||
@@ -663,100 +663,100 @@ TradeAnim_EnterLinkTube2:
|
||||
ret
|
||||
|
||||
TradeAnim_ExitLinkTube:
|
||||
ld a, [hSCX]
|
||||
ldh a, [hSCX]
|
||||
cp $a0
|
||||
jr z, .done
|
||||
sub $4
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ret
|
||||
|
||||
.done
|
||||
call ClearTileMap
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
TradeAnim_SetupGivemonScroll:
|
||||
ld a, $8f
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $88
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ld a, $50
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
TradeAnim_DoGivemonScroll:
|
||||
ld a, [hWX]
|
||||
ldh a, [hWX]
|
||||
cp $7
|
||||
jr z, .done
|
||||
sub $4
|
||||
ld [hWX], a
|
||||
ld a, [hSCX]
|
||||
ldh [hWX], a
|
||||
ldh a, [hSCX]
|
||||
sub $4
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
ret
|
||||
|
||||
.done
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
xor a
|
||||
ld [hSCX], a
|
||||
ldh [hSCX], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
TradeAnim_FrontpicScrollStart:
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $50
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
TradeAnim_TextboxScrollStart:
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
TradeAnim_ScrollOutRight:
|
||||
call WaitTop
|
||||
ld a, HIGH(vBGMap1)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call WaitBGMap
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
xor a
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
call DelayFrame
|
||||
call WaitTop
|
||||
ld a, HIGH(vBGMap0)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call ClearTileMap
|
||||
call TradeAnim_IncrementJumptableIndex
|
||||
ret
|
||||
|
||||
TradeAnim_ScrollOutRight2:
|
||||
ld a, [hWX]
|
||||
ldh a, [hWX]
|
||||
cp $a1
|
||||
jr nc, .done
|
||||
add $4
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ret
|
||||
|
||||
.done
|
||||
ld a, HIGH(vBGMap1)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call WaitBGMap
|
||||
ld a, $7
|
||||
ld [hWX], a
|
||||
ldh [hWX], a
|
||||
ld a, $90
|
||||
ld [hWY], a
|
||||
ldh [hWY], a
|
||||
ld a, HIGH(vBGMap0)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
call TradeAnim_AdvanceScriptPointer
|
||||
ret
|
||||
|
||||
@@ -843,7 +843,7 @@ TradeAnim_ShowFrontpic:
|
||||
call TradeAnim_BlankTileMap
|
||||
hlcoord 7, 2
|
||||
xor a
|
||||
ld [hGraphicStartTile], a
|
||||
ldh [hGraphicStartTile], a
|
||||
lb bc, 7, 7
|
||||
predef PlaceGraphic
|
||||
call WaitBGMap
|
||||
@@ -927,7 +927,7 @@ TrademonStats_MonTemplate:
|
||||
call WaitTop
|
||||
call TradeAnim_BlankTileMap
|
||||
ld a, HIGH(vBGMap1)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
hlcoord 3, 0
|
||||
ld b, $6
|
||||
ld c, $d
|
||||
@@ -947,7 +947,7 @@ TrademonStats_Egg:
|
||||
call WaitTop
|
||||
call TradeAnim_BlankTileMap
|
||||
ld a, HIGH(vBGMap1)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
hlcoord 3, 0
|
||||
ld b, 6
|
||||
ld c, 13
|
||||
@@ -967,7 +967,7 @@ TrademonStats_WaitBGMap:
|
||||
call WaitBGMap
|
||||
call WaitTop
|
||||
ld a, HIGH(vBGMap0)
|
||||
ld [hBGMapAddress + 1], a
|
||||
ldh [hBGMapAddress + 1], a
|
||||
ret
|
||||
|
||||
TrademonStats_PrintSpeciesNumber:
|
||||
@@ -1312,7 +1312,7 @@ TradeAnim_CopyBoxFromDEtoHL:
|
||||
ret
|
||||
|
||||
TradeAnim_NormalPals:
|
||||
ld a, [hSGB]
|
||||
ldh a, [hSGB]
|
||||
and a
|
||||
ld a, %11100100 ; 3,2,1,0
|
||||
jr z, .not_sgb
|
||||
@@ -1346,7 +1346,7 @@ TradeAnim_FlashBGPals:
|
||||
ld a, [wcf65]
|
||||
and $7
|
||||
ret nz
|
||||
ld a, [rBGP]
|
||||
ldh a, [rBGP]
|
||||
xor %00111100
|
||||
call DmgToCgbBGPals
|
||||
ret
|
||||
|
@@ -5,7 +5,7 @@ UnusedTitleScreen:
|
||||
|
||||
; Turn BG Map update off
|
||||
xor a
|
||||
ld [hBGMapMode], a
|
||||
ldh [hBGMapMode], a
|
||||
|
||||
; Reset timing variables
|
||||
ld hl, wJumptableIndex
|
||||
@@ -34,11 +34,11 @@ UnusedTitleScreen:
|
||||
ld bc, BG_MAP_WIDTH * BG_MAP_HEIGHT
|
||||
.copy
|
||||
ld a, 0
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
ld a, 1
|
||||
ld [rVBK], a
|
||||
ldh [rVBK], a
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
@@ -53,17 +53,17 @@ UnusedTitleScreen:
|
||||
call CopyBytes
|
||||
|
||||
call EnableLCD
|
||||
ld a, [rLCDC]
|
||||
ldh a, [rLCDC]
|
||||
set rLCDC_SPRITES_ENABLE, a
|
||||
set rLCDC_SPRITE_SIZE, a
|
||||
ld [rLCDC], a
|
||||
ldh [rLCDC], a
|
||||
|
||||
call DelayFrame
|
||||
|
||||
ld a, [rSVBK]
|
||||
ldh a, [rSVBK]
|
||||
push af
|
||||
ld a, BANK(wBGPals1)
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld hl, UnusedTitleBG_Palettes
|
||||
ld de, wBGPals1
|
||||
@@ -86,10 +86,10 @@ UnusedTitleScreen:
|
||||
call CopyBytes
|
||||
|
||||
pop af
|
||||
ld [rSVBK], a
|
||||
ldh [rSVBK], a
|
||||
|
||||
ld a, $1
|
||||
ld [hCGBPalUpdate], a
|
||||
ldh [hCGBPalUpdate], a
|
||||
|
||||
ld de, MUSIC_TITLE
|
||||
call PlayMusic
|
||||
@@ -158,7 +158,7 @@ Function10ed51:
|
||||
call _TitleScreen
|
||||
.loop
|
||||
call JoyTextDelay
|
||||
ld a, [hJoyLast]
|
||||
ldh a, [hJoyLast]
|
||||
ld b, a
|
||||
and 1
|
||||
jr nz, .done
|
||||
|
Reference in New Issue
Block a user