Mercurial > repos > simple16
view vint.s16 @ 55:f9846719aa26
Remove old 48K limit in assembler
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 31 Aug 2016 22:41:05 -0700 |
parents | 03177ff78094 |
children |
line wrap: on
line source
ldim vectors, r0 setvbr r0 ;current color value ldim 0, r0 ;color increment ldim $41, r3 ldimh $8, r3 ;color max ldim $DF, r5 ldimh $FF, r5 ;counter ldim 1, r4 ;Palette RAM address/length ldim 1, r1 ;enable interrupt ori 2, sr ;enable VINT generation ldim 0, r2 ldimh $20, r2 outi $D, r2 wait bra wait ;shouldn't get here, disable VINT so it's clear something broke xori 2, sr ldimh $0, r2 outi $D, r2 bra wait vectors: dc.w 0 dc.w vint_handler vint_handler addi -1, r4 bne done outi $E, r1 outi $E, r0 cmp r0, r5 beq down resume add r3, r0, r0 beq up ldim 5, r4 done reti r13 down ldim $BF, r3 ldimh $F7, r3 bra resume up ldim $41, r3 ldimh $8, r3 ldim 5, r4 reti r13