annotate bgcolor.s16 @ 16:ae58e7c3c328

Poll events regularly to avoid unresponsive app warnings. Handle quit event
author Michael Pavone <pavone@retrodev.com>
date Sun, 27 Mar 2016 21:42:10 -0700
parents 769120da2c1f
children cc885122e9e3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
14
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
1
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
2 ;r0 = VDP address
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
3 ;r1 = current color
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
4 ;r2 = color increment
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
5 ;r3 = target line
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
6 ;r4 = screen bottom
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
7 ;r5 = scratch
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
8 ;r6 = right edge
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
9 ;r7 = counter
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
10 ldim 248, r4
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
11 ldimh 0, r4
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
12 ;320 == $140
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
13 ldim $40, r6
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
14 ldimh 1, r6
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
15 top
11
04d8efe7a1f0 Initial stab at video output and background color rendering. Fixed address decoding in address port write handler.
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
16 ldim 0, r0
04d8efe7a1f0 Initial stab at video output and background color rendering. Fixed address decoding in address port write handler.
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
17 ldimh $FF, r0
14
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
18 ldim 0, r1
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
19 ldim 1, r2
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
20 ldim 8, r3
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
21 ldim 16, r7
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
22
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
23 linestart
11
04d8efe7a1f0 Initial stab at video output and background color rendering. Fixed address decoding in address port write handler.
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
24 outi 14, r0
14
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
25 waitline
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
26 ini $C, r5
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
27 cmp r5, r3
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
28 bne waitline
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
29
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
30 waithblank
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
31 ini $D, r5
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
32 cmp r5, r6
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
33 bgr waithblank
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
34
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
35 outi 15, r1
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
36 add r2, r1, r1
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
37 addi 4, r3
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
38
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
39 addi -1, r7
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
40 bne normal
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
41 ldim 16, r7
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
42 ;TODO: replace with lsli once it works in the assembler
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
43 add r2, r2, r2
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
44 add r2, r2, r2
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
45 add r2, r2, r2
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
46 add r2, r2, r2
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
47 ldim 0, r1
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
48
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
49 normal
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
50
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
51 cmp r3, r4
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
52 beq top
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
53 bra linestart
769120da2c1f Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents: 11
diff changeset
54