Mercurial > repos > simple16
annotate bgcolor.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 | 8e39a877c651 |
children |
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 |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
10 ;r8 = secondary counter |
43
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
11 ldim 1, r0 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
12 ldim 240, r4 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
13 ldimh 0, r4 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
14 ;320 == $140 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
15 ldim $40, r6 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
16 ldimh 1, r6 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
17 top |
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 |
43
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
20 ldim 5, r3 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
21 ldimh 1, r3 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
22 ldim 32, r7 |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
23 ldim 0, r8 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
24 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
25 ldim increments, r9 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
26 ldimh increments, r9 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
27 |
43
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
28 waitfirst |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
29 ini $C, r5 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
30 cmp r5, r3 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
31 bne waitfirst |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
32 ldim -1, r3 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
33 bra waithblank |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
34 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
35 linestart |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
36 ld16 r9, r8, r2 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
37 waitline |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
38 ini $C, r5 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
39 cmp r5, r3 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
40 bne waitline |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
41 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
42 waithblank |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
43 ini $D, r5 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
44 cmp r5, r6 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
45 bgr waithblank |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
46 |
43
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
47 outi 14, r0 |
6e7bfe83d2b0
Changed the design to vastly simplify the video hardware and support a 23-bit address space on the CPU
Michael Pavone <pavone@retrodev.com>
parents:
18
diff
changeset
|
48 outi 14, r1 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
49 add r2, r1, r1 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
50 addi 1, r3 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
51 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
52 addi -1, r7 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
53 bne normal |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
54 ldim 32, r7 |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
55 ldim 0, r1 |
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
56 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
57 addi 2, r8 |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
58 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
59 |
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
60 normal |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
61 cmp r3, r4 |
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
62 bcs top |
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
63 bra linestart |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
64 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
65 increments: |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
66 dc.w $0001 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
67 dc.w $0040 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
68 dc.w $0800 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
69 dc.w $0041 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
70 dc.w $0840 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
71 dc.w $0801 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
72 dc.w $0841 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
73 dc.w $0841 |
18
cc885122e9e3
More colors in the bgcolor sample
Michael Pavone <pavone@retrodev.com>
parents:
14
diff
changeset
|
74 |
14
769120da2c1f
Make bgcolor demo fancier
Michael Pavone <pavone@retrodev.com>
parents:
11
diff
changeset
|
75 |
50
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
76 |
8e39a877c651
Switch from RGB 444 to RGB 565 for palette entries
Michael Pavone <pavone@retrodev.com>
parents:
43
diff
changeset
|
77 |