Mercurial > repos > simple16
view bgcolor.s16 @ 27:351a0d0cce3b
Updated spec to make the 3rd and 4th controller IO ports as reserved
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 01 Apr 2016 21:51:46 -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