view vint.s16 @ 35:5a5e02d1acf1

No need to initialize name table with starting values other than zero as we copy the relevant parts during VBlank anyway
author Michael Pavone <pavone@retrodev.com>
date Sun, 03 Apr 2016 20:51:23 -0700
parents 083347ccd508
children 03177ff78094
line wrap: on
line source

	ldim vectors, r0
	setvbr r0
	;current color value
	ldim 0, r0
	;color increment
	ldim $11, r3
	ldimh $1, r3
	;color max
	ldim $FF, r5
	ldimh $F, r5
	;counter
	ldim 1, r4
	;Palette RAM address
	ldim 0, r1
	ldimh $FF, r1
	;enable interrupt
	ori 2, sr
	;enable display
	ldim 0, r2
	ldimh $80, r2
	outi $D, r2
wait
	bra wait
	;shouldn't get here, disable display so it's clear something broke
	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 $F, r0
	cmp r0, r5
	beq down
resume
	add r3, r0, r0
	beq up
	ldim 5, r4
done
	reti r13
down
	ldim $EF, r3
	ldimh $FE, r3
	bra resume
up
	ldim $11, r3
	ldimh $1, r3
	ldim 5, r4
	reti r13