Mercurial > repos > simple16
view bgcolor.s16 @ 38:3b7910575a00
Implemented basic keyboard support
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 04 Apr 2016 09:13:14 -0700 |
parents | cc885122e9e3 |
children | 6e7bfe83d2b0 |
line wrap: on
line source
;r0 = VDP address ;r1 = current color ;r2 = color increment ;r3 = target line ;r4 = screen bottom ;r5 = scratch ;r6 = right edge ;r7 = counter ;r8 = secondary counter ldim 248, r4 ldimh 0, r4 ;320 == $140 ldim $40, r6 ldimh 1, r6 top ldim 0, r0 ldimh $FF, r0 ldim 0, r1 ldim 1, r2 ldim 8, r3 ldim 16, r7 ldim 0, r8 linestart outi 14, r0 waitline ini $C, r5 cmp r5, r3 bne waitline waithblank ini $D, r5 cmp r5, r6 bgr waithblank outi 15, r1 add r2, r1, r1 addi 2, r3 addi -1, r7 bne normal ldim 16, r7 ldim 0, r1 addi 1, r8 cmpi 3, r8 beq cyan cmpi 5, r8 beq magenta cmpi 6, r8 beq grey ;TODO: replace with lsli once it works in the assembler add r2, r2, r2 add r2, r2, r2 add r2, r2, r2 add r2, r2, r2 normal cmp r3, r4 bcs top bra linestart cyan ldim $11, r2 bra normal magenta ldim $01, r2 ldimh $01, r2 bra normal grey ldim $11, r2 ldimh $01, r2 bra normal