6db94b78ea
The LYC flag was previously found to remain in an eventual high state after LCD disable. An extension to this is that it might be possible to trigger LYC IRQs via STAT write in such a case and some testing (tests included) suggests that this is possible. Adjust accordingly.
116 lines
1.7 KiB
NASM
116 lines
1.7 KiB
NASM
.size 8000
|
|
|
|
.text@100
|
|
jp lbegin
|
|
|
|
.data@143
|
|
80
|
|
|
|
.text@150
|
|
lbegin:
|
|
ld b, 91
|
|
call lwaitly_b
|
|
ld a, 92
|
|
ldff(45), a
|
|
ld a, 40
|
|
ldff(41), a
|
|
ld a, 02
|
|
ldff(ff), a
|
|
xor a, a
|
|
ldff(0f), a
|
|
halt
|
|
ldff(40), a
|
|
ld a, ff
|
|
ldff(45), a
|
|
xor a, a
|
|
ldff(41), a
|
|
ldff(0f), a
|
|
ld a, 40
|
|
ldff(41), a
|
|
ldff a, (0f)
|
|
jp lprint_a
|
|
|
|
.text@7000
|
|
lprint_a:
|
|
ld b, a
|
|
swap a
|
|
and a, 0f
|
|
ld(9800), a
|
|
ld a, b
|
|
and a, 0f
|
|
ld(9801), a
|
|
ld bc, 7a00
|
|
ld hl, 8000
|
|
ld d, 00
|
|
lprint_copytiles:
|
|
ld a, (bc)
|
|
inc bc
|
|
ld(hl++), a
|
|
dec d
|
|
jrnz lprint_copytiles
|
|
ld a, c0
|
|
ldff(47), a
|
|
ld a, 80
|
|
ldff(68), a
|
|
ld a, ff
|
|
ldff(69), a
|
|
ldff(69), a
|
|
ldff(69), a
|
|
ldff(69), a
|
|
ldff(69), a
|
|
ldff(69), a
|
|
xor a, a
|
|
ldff(69), a
|
|
ldff(69), a
|
|
xor a, a
|
|
ldff(42), a
|
|
ldff(43), a
|
|
ld a, 91
|
|
ldff(40), a
|
|
lprint_limbo:
|
|
jr lprint_limbo
|
|
|
|
.text@7400
|
|
lwaitly_b:
|
|
ld c, 44
|
|
lwaitly_b_loop:
|
|
ldff a, (c)
|
|
cmp a, b
|
|
jrnz lwaitly_b_loop
|
|
ret
|
|
|
|
.data@7a00
|
|
00 00 7f 7f 41 41 41 41
|
|
41 41 41 41 41 41 7f 7f
|
|
00 00 08 08 08 08 08 08
|
|
08 08 08 08 08 08 08 08
|
|
00 00 7f 7f 01 01 01 01
|
|
7f 7f 40 40 40 40 7f 7f
|
|
00 00 7f 7f 01 01 01 01
|
|
3f 3f 01 01 01 01 7f 7f
|
|
00 00 41 41 41 41 41 41
|
|
7f 7f 01 01 01 01 01 01
|
|
00 00 7f 7f 40 40 40 40
|
|
7e 7e 01 01 01 01 7e 7e
|
|
00 00 7f 7f 40 40 40 40
|
|
7f 7f 41 41 41 41 7f 7f
|
|
00 00 7f 7f 01 01 02 02
|
|
04 04 08 08 10 10 10 10
|
|
00 00 3e 3e 41 41 41 41
|
|
3e 3e 41 41 41 41 3e 3e
|
|
00 00 7f 7f 41 41 41 41
|
|
7f 7f 01 01 01 01 7f 7f
|
|
00 00 08 08 22 22 41 41
|
|
7f 7f 41 41 41 41 41 41
|
|
00 00 7e 7e 41 41 41 41
|
|
7e 7e 41 41 41 41 7e 7e
|
|
00 00 3e 3e 41 41 40 40
|
|
40 40 40 40 41 41 3e 3e
|
|
00 00 7e 7e 41 41 41 41
|
|
41 41 41 41 41 41 7e 7e
|
|
00 00 7f 7f 40 40 40 40
|
|
7f 7f 40 40 40 40 7f 7f
|
|
00 00 7f 7f 40 40 40 40
|
|
7f 7f 40 40 40 40 40 40
|
|
|