diff options
author | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-06-09 15:10:49 -0400 |
---|---|---|
committer | U-Fish-PC\Daniel <corrnondacqb@yahoo.com> | 2014-06-09 15:10:49 -0400 |
commit | d266f788b4ba251c5a41f47745c941d81e5d7d88 (patch) | |
tree | 004892d1cc02111732dcb81ef9734ab13ab49ef5 /home/fade.asm | |
parent | 683a62cc1cb7d07b4c88eeec9333c415da8f0bdc (diff) | |
parent | fc123e360b147221b5b44d265cdf38feabe99bbe (diff) |
Merge branch 'master' of https://github.com/yenatch/pokered
Diffstat (limited to 'home/fade.asm')
-rw-r--r-- | home/fade.asm | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/home/fade.asm b/home/fade.asm new file mode 100644 index 00000000..9b55eaf2 --- /dev/null +++ b/home/fade.asm @@ -0,0 +1,73 @@ +; These routines manage gradual fading +; (e.g., entering a doorway) +LoadGBPal:: + ld a, [wd35d] ;tells if cur.map 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] + ld [rBGP], a + ld a, [hli] + ld [rOBP0], a + ld a, [hli] + ld [rOBP1], a + ret + +GBFadeOut1:: + ld hl, FadePal1 + ld b, 4 + jr GBFadeOutCommon + +GBFadeOut2:: + ld hl, FadePal6 + ld b, 3 + +GBFadeOutCommon:: + ld a, [hli] + ld [rBGP], a + ld a, [hli] + ld [rOBP0], a + ld a, [hli] + ld [rOBP1], a + ld c, 8 + call DelayFrames + dec b + jr nz, GBFadeOutCommon + ret + +GBFadeIn1:: + ld hl, FadePal4 + 2 + ld b, 4 + jr GBFadeInCommon + +GBFadeIn2:: + ld hl, FadePal7 + 2 + ld b, 3 + +GBFadeInCommon:: + ld a, [hld] + ld [rOBP1], a + ld a, [hld] + ld [rOBP0], a + ld a, [hld] + ld [rBGP], a + ld c, 8 + call DelayFrames + dec b + jr nz, GBFadeInCommon + ret + +FadePal1:: db %11111111, %11111111, %11111111 +FadePal2:: db %11111110, %11111110, %11111000 +FadePal3:: db %11111001, %11100100, %11100100 +FadePal4:: db %11100100, %11010000, %11100000 +; rBGP rOBP0 rOBP1 +FadePal5:: db %11100100, %11010000, %11100000 +FadePal6:: db %10010000, %10000000, %10010000 +FadePal7:: db %01000000, %01000000, %01000000 +FadePal8:: db %00000000, %00000000, %00000000 |