mirror of
https://github.com/thornAvery/kep-hack.git
synced 2025-09-17 02:40:50 +12:00
Clean up bg map and palette fade code in home.asm.
This commit is contained in:
parent
6d64c3e01d
commit
f59f03c685
212
home.asm
212
home.asm
|
@ -1336,70 +1336,36 @@ AutoBgMapTransfer:: ; 1d57 (0:1d57)
|
||||||
ld [H_AUTOBGTRANSFERPORTION],a ; store next portion
|
ld [H_AUTOBGTRANSFERPORTION],a ; store next portion
|
||||||
ld b,6
|
ld b,6
|
||||||
|
|
||||||
; unrolled loop and using pop for speed
|
|
||||||
TransferBgRows:: ; 1d9e (0:1d9e)
|
TransferBgRows:: ; 1d9e (0:1d9e)
|
||||||
|
; unrolled loop and using pop for speed
|
||||||
|
|
||||||
|
rept 20 / 2 - 1
|
||||||
pop de
|
pop de
|
||||||
ld [hl],e
|
ld [hl], e
|
||||||
inc l
|
inc l
|
||||||
ld [hl],d
|
ld [hl], d
|
||||||
inc l
|
inc l
|
||||||
|
endr
|
||||||
|
|
||||||
pop de
|
pop de
|
||||||
ld [hl],e
|
ld [hl], e
|
||||||
inc l
|
inc l
|
||||||
ld [hl],d
|
ld [hl], d
|
||||||
inc l
|
|
||||||
pop de
|
i ld a, 32 - (20 - 1)
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
inc l
|
|
||||||
pop de
|
|
||||||
ld [hl],e
|
|
||||||
inc l
|
|
||||||
ld [hl],d
|
|
||||||
ld a,13
|
|
||||||
add l
|
add l
|
||||||
ld l,a
|
ld l, a
|
||||||
jr nc,.noCarry
|
jr nc, .ok
|
||||||
inc h
|
inc h
|
||||||
.noCarry
|
.ok
|
||||||
dec b
|
dec b
|
||||||
jr nz,TransferBgRows
|
jr nz, TransferBgRows
|
||||||
ld a,[H_SPTEMP]
|
|
||||||
ld h,a
|
ld a, [H_SPTEMP]
|
||||||
ld a,[H_SPTEMP + 1]
|
ld h, a
|
||||||
ld l,a
|
ld a, [H_SPTEMP + 1]
|
||||||
ld sp,hl ; restore stack pointer
|
ld l, a
|
||||||
|
ld sp, hl
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; Copies [H_VBCOPYBGNUMROWS] rows from H_VBCOPYBGSRC to H_VBCOPYBGDEST.
|
; Copies [H_VBCOPYBGNUMROWS] rows from H_VBCOPYBGSRC to H_VBCOPYBGDEST.
|
||||||
|
@ -1590,9 +1556,9 @@ UpdateMovingBgTiles::
|
||||||
ld a, [$ffd8]
|
ld a, [$ffd8]
|
||||||
inc a
|
inc a
|
||||||
ld [$ffd8], a
|
ld [$ffd8], a
|
||||||
cp 20
|
cp $14
|
||||||
ret c
|
ret c
|
||||||
cp 21
|
cp $15
|
||||||
jr z, .flower
|
jr z, .flower
|
||||||
|
|
||||||
ld hl, vTileset + $14 * $10
|
ld hl, vTileset + $14 * $10
|
||||||
|
@ -1697,7 +1663,7 @@ rLCDC_DEFAULT EQU %11100011
|
||||||
|
|
||||||
ld sp, wStack
|
ld sp, wStack
|
||||||
|
|
||||||
ld hl, wc000 ; start of WRAM
|
ld hl, $c000 ; start of WRAM
|
||||||
ld bc, $2000 ; size of WRAM
|
ld bc, $2000 ; size of WRAM
|
||||||
.loop
|
.loop
|
||||||
ld [hl], 0
|
ld [hl], 0
|
||||||
|
@ -1907,102 +1873,78 @@ NOT_VBLANKED EQU 1
|
||||||
|
|
||||||
; These routines manage gradual fading
|
; These routines manage gradual fading
|
||||||
; (e.g., entering a doorway)
|
; (e.g., entering a doorway)
|
||||||
LoadGBPal:: ; 20ba (0:20ba)
|
LoadGBPal::
|
||||||
ld a,[wd35d] ;tells if cur.map is dark (requires HM5_FLASH?)
|
ld a, [wd35d] ;tells if cur.map is dark (requires HM5_FLASH?)
|
||||||
ld b,a
|
ld b, a
|
||||||
ld hl,GBPalTable_00 ;16
|
ld hl, FadePal4
|
||||||
ld a,l
|
ld a, l
|
||||||
sub b
|
sub b
|
||||||
ld l,a
|
ld l, a
|
||||||
jr nc,.jr0
|
jr nc, .ok
|
||||||
dec h
|
dec h
|
||||||
.jr0
|
.ok
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rBGP],a
|
ld [rBGP], a
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rOBP0],a
|
ld [rOBP0], a
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rOBP1],a
|
ld [rOBP1], a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
GBFadeOut1:: ; 20d1 (0:20d1)
|
GBFadeOut1::
|
||||||
ld hl,IncGradGBPalTable_01 ;0d
|
ld hl, FadePal1
|
||||||
ld b,$04
|
ld b, 4
|
||||||
jr GBFadeOutCommon
|
jr GBFadeOutCommon
|
||||||
|
|
||||||
GBFadeOut2:: ; 20d8 (0:20d8)
|
GBFadeOut2::
|
||||||
ld hl,IncGradGBPalTable_02 ;1c
|
ld hl, FadePal6
|
||||||
ld b,$03
|
ld b, 3
|
||||||
|
|
||||||
GBFadeOutCommon:: ; 20dd (0:20dd)
|
GBFadeOutCommon::
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rBGP],a
|
ld [rBGP], a
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rOBP0],a
|
ld [rOBP0], a
|
||||||
ld a,[hli]
|
ld a, [hli]
|
||||||
ld [rOBP1],a
|
ld [rOBP1], a
|
||||||
ld c,8
|
ld c, 8
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
dec b
|
dec b
|
||||||
jr nz,GBFadeOutCommon
|
jr nz, GBFadeOutCommon
|
||||||
ret
|
ret
|
||||||
|
|
||||||
GBFadeIn1:: ; 20ef (0:20ef)
|
GBFadeIn1::
|
||||||
ld hl,DecGradGBPalTable_01 ;18
|
ld hl, FadePal4 + 2
|
||||||
ld b,$04
|
ld b, 4
|
||||||
jr GBFadeInCommon
|
jr GBFadeInCommon
|
||||||
|
|
||||||
GBFadeIn2:: ; 20f6 (0:20f6)
|
GBFadeIn2::
|
||||||
ld hl,DecGradGBPalTable_02 ;21
|
ld hl, FadePal7 + 2
|
||||||
ld b,$03
|
ld b, 3
|
||||||
|
|
||||||
GBFadeInCommon:: ; 20fb (0:20fb)
|
GBFadeInCommon::
|
||||||
ld a,[hld]
|
ld a, [hld]
|
||||||
ld [rOBP1],a
|
ld [rOBP1], a
|
||||||
ld a,[hld]
|
ld a, [hld]
|
||||||
ld [rOBP0],a
|
ld [rOBP0], a
|
||||||
ld a,[hld]
|
ld a, [hld]
|
||||||
ld [rBGP],a
|
ld [rBGP], a
|
||||||
ld c,8
|
ld c, 8
|
||||||
call DelayFrames
|
call DelayFrames
|
||||||
dec b
|
dec b
|
||||||
jr nz,GBFadeInCommon
|
jr nz, GBFadeInCommon
|
||||||
ret
|
ret
|
||||||
|
|
||||||
IncGradGBPalTable_01:: ; 210d (0:210d)
|
FadePal1:: db %11111111, %11111111, %11111111
|
||||||
db %11111111 ;BG Pal
|
FadePal2:: db %11111110, %11111110, %11111000
|
||||||
db %11111111 ;OBJ Pal 1
|
FadePal3:: db %11111001, %11100100, %11100100
|
||||||
db %11111111 ;OBJ Pal 2
|
FadePal4:: db %11100100, %11010000, %11100000
|
||||||
;and so on...
|
; rBGP rOBP0 rOBP1
|
||||||
db %11111110
|
FadePal5:: db %11100100, %11010000, %11100000
|
||||||
db %11111110
|
FadePal6:: db %10010000, %10000000, %10010000
|
||||||
db %11111000
|
FadePal7:: db %01000000, %01000000, %01000000
|
||||||
|
FadePal8:: db %00000000, %00000000, %00000000
|
||||||
|
|
||||||
db %11111001
|
|
||||||
db %11100100
|
|
||||||
db %11100100
|
|
||||||
GBPalTable_00:: ; 2116 (0:2116)
|
|
||||||
db %11100100
|
|
||||||
db %11010000
|
|
||||||
DecGradGBPalTable_01:: ; 2118 (0:2118)
|
|
||||||
db %11100000
|
|
||||||
;19
|
|
||||||
db %11100100
|
|
||||||
db %11010000
|
|
||||||
db %11100000
|
|
||||||
IncGradGBPalTable_02:: ; 211c (0:211c)
|
|
||||||
db %10010000
|
|
||||||
db %10000000
|
|
||||||
db %10010000
|
|
||||||
|
|
||||||
db %01000000
|
|
||||||
db %01000000
|
|
||||||
DecGradGBPalTable_02:: ; 2121 (0:2121)
|
|
||||||
db %01000000
|
|
||||||
|
|
||||||
db %00000000
|
|
||||||
db %00000000
|
|
||||||
db %00000000
|
|
||||||
|
|
||||||
Serial:: ; 2125 (0:2125)
|
Serial:: ; 2125 (0:2125)
|
||||||
push af
|
push af
|
||||||
|
|
Loading…
Reference in a new issue