mirror of
https://github.com/pret/pokered.git
synced 2024-10-22 22:55:31 +00:00
73 lines
1.2 KiB
NASM
73 lines
1.2 KiB
NASM
; These routines manage gradual fading
|
|
; (e.g., entering a doorway)
|
|
LoadGBPal::
|
|
ld a, [wMapPalOffset] ; tells if wCurMap is dark (requires HM5_FLASH?)
|
|
ld b, a
|
|
ld hl, FadePal4
|
|
ld a, l
|
|
sub b
|
|
ld l, a
|
|
jr nc, .ok
|
|
dec h
|
|
.ok
|
|
ld a, [hli]
|
|
ldh [rBGP], a
|
|
ld a, [hli]
|
|
ldh [rOBP0], a
|
|
ld a, [hli]
|
|
ldh [rOBP1], a
|
|
ret
|
|
|
|
GBFadeInFromBlack::
|
|
ld hl, FadePal1
|
|
ld b, 4
|
|
jr GBFadeIncCommon
|
|
|
|
GBFadeOutToWhite::
|
|
ld hl, FadePal6
|
|
ld b, 3
|
|
|
|
GBFadeIncCommon:
|
|
ld a, [hli]
|
|
ldh [rBGP], a
|
|
ld a, [hli]
|
|
ldh [rOBP0], a
|
|
ld a, [hli]
|
|
ldh [rOBP1], a
|
|
ld c, 8
|
|
call DelayFrames
|
|
dec b
|
|
jr nz, GBFadeIncCommon
|
|
ret
|
|
|
|
GBFadeOutToBlack::
|
|
ld hl, FadePal4 + 2
|
|
ld b, 4
|
|
jr GBFadeDecCommon
|
|
|
|
GBFadeInFromWhite::
|
|
ld hl, FadePal7 + 2
|
|
ld b, 3
|
|
|
|
GBFadeDecCommon:
|
|
ld a, [hld]
|
|
ldh [rOBP1], a
|
|
ld a, [hld]
|
|
ldh [rOBP0], a
|
|
ld a, [hld]
|
|
ldh [rBGP], a
|
|
ld c, 8
|
|
call DelayFrames
|
|
dec b
|
|
jr nz, GBFadeDecCommon
|
|
ret
|
|
|
|
FadePal1:: dc 3,3,3,3, 3,3,3,3, 3,3,3,3
|
|
FadePal2:: dc 3,3,3,2, 3,3,3,2, 3,3,2,0
|
|
FadePal3:: dc 3,3,2,1, 3,2,1,0, 3,2,1,0
|
|
FadePal4:: dc 3,2,1,0, 3,1,0,0, 3,2,0,0
|
|
; rBGP rOBP0 rOBP1
|
|
FadePal5:: dc 3,2,1,0, 3,1,0,0, 3,2,0,0
|
|
FadePal6:: dc 2,1,0,0, 2,0,0,0, 2,1,0,0
|
|
FadePal7:: dc 1,0,0,0, 1,0,0,0, 1,0,0,0
|
|
FadePal8:: dc 0,0,0,0, 0,0,0,0, 0,0,0,0
|