APPENDIX TWELVE

DISPLAY LIST COMMANDS AND ANTIC MODES

As we saw at SDLSTL (560), the display list is actually a little program for ANTIC, telling it what the screen is to look like. It has its own special commands, as summarized in Figure 63. To use this chart, decide which of the HSC, VSC, LMS, and DLI options you want (see SDLSTL for a description of each), find the column that has the corresponding boxes LABELED in at the top, and then follow it down to the instruction you want.

Since this is a chart that assembly language programmers are going to use a lot, I'll also include a hexadecimal version (Figure 64).


 
 
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
HSC
 




VSC
VSC


VSC
VSC


VSC
VSC


VSC
VSC






LMS
LMS
LMS
LMS




LMS
LMS
LMS
LMS










DLI
DLI
DLI
DLI
DLI
DLI
DLI
DLI
 
BLK
1
0







128







BLK 2
16







144







BLK 3
32







160







BLK 4
48







176







BLK 5
64






192







BLK 6
80







208







BLK 7
96







224







BLK 8
112







240







JMP

1







129







JVB

65







193







CHR
2
2
18
34
50
66
82
98
114
130
146
162
178
194
210
226
242
CHR 3
3
19
35
51
67
83
99
115
131
147
163
179
195
211
227
243
CHR 4
4
20
36
52
68
84
100
116
132
148
164
180
196
212
228
244
CHR 5
5
21
37
53
69
85
101
117
133
149
165
181
197
213
229
245
CHR 6
6
22
38
54
70
86
102
118
134
150
166
182
198
214
230
246
CHR 7
7
23
39
55
71
87
103
119
135
151
167
183
199
215
231
247
MAP
8
8
24
40
56
72
88
104
120
136
152
168
184
200
216
232
248
MAP 9
9
25
41
57
73
89
105
121
137
153
169
185
201
217
233
249
MAP 10
10
26
42
58
74
90
106
122
138
154
170
186
202
218
234
250
MAP 11
11
27
43
59
75
91
107
123
139
155
171
187
203
219
235
251
MAP 12
12
28
44
60
76
92
108
124
140
156
172
188
204
220
236
252
MAP 13
13
29
45
61
77
93
109
125
141
157
173
189
205
221
237
253
MAP 14
14
30
46
62
78
94
110
126
142
158
174
190
206
222
238
254
MAP  15
15
31
47
63
79
95
111
127
143
159
175
191
207
223
239
255

            FIGURE 63. Display list command chart


 
 
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
 
HSC
HSC
 




VSC
VSC


VSC
VSC


VSC
VSC


VSC
VSC






LMS
LMS
LMS
LMS




LMS
LMS
LMS
LMS










DLI
DLI
DLI
DLI
DLI
DLI
DLI
DLI
 
BLK
1
00







80







BLK 2
10







90







BLK 3
20







A0







BLK 4
30







B0







BLK 5
40







C0







BLK 6
50







D0







BLK 7
60







E0







BLK 8
70







F0







JMP

01







81







JVB

41







C1







CHR
2
02
12
22
32
42
52
62
72
82
92
A2
B2
C2
D2
E2
F2
CHR 3
03
13
23
33
43
53
63
73
83
93
A3
B3
C3
D3
E3
F3
CHR 4
04
14
24
34
44
54
64
74
84
94
A4
B4
C4
D4
D4
F4
CHR 5
05
15
25
35
45
55
65
75
85
95
A5
B5
C5
D5
E5
F5
CHR 6
06
16
26
36
46
56
66
76
86
96
A6
B6
C6
D6
E6
F6
CHR 7
07
17
27
37
47
57
67
77
87
97
A7
B7
C7
D7
E7
F7
MAP
8
08
18
28
38
48
58
68
78
88
98
A8
B8
C8
D8
E8
F8
MAP 9
09
19
29
39
49
59
69
79
89
99
A9
B9
C9
D9
E9
F9
MAP A
0A
1A
2A
3A
4A
5A
6A
7A
8A
9A
AA
BA
CA
DA
EA
FA
MAP B
0B
1B
2B
3B
4B
5B
6B
7B
8B
9B
AB
BB
CB
DB
EB
FB
MAP C
0C
1C
2C
3C
4C
5C
6C
7C
8C
9C
AC
BC
CC
DC
EC
FC
MAP D
0D
1D
2D
3D
4D
5D
6D
7D
8D
9D
AD
BD
CD
DD
ED
FD
MAP E
0E
1E
2E
3E
4E
5E
6E
7E
8E
9E
AE
BE
CE
DE
EE
FE
MAP  F
0F
1F
2F
3F
4F
5F
6F
7F
8F
9F
AF
BF
CF
DF
EF
FF

        FIGURE 64. Display list command chart, hex version


Let's take a look now at the various CHR and MAP modes:

CHR 2 is GRAPHICS 0.

CHR 3
is the same as GRAPHICS 0 except that the characters are 10-scan-lines high instead of 8. This allows you to have lowercase descenders, which means that the tails on "g", "j", "p", "q", and "y" can drop below the rest of the letters as they should. How do you use this mode? The first step is to redefine the character set. Actually, you only have to change the lowercase letters. What will happen is ANTIC will take the first two bytes of the character description and stick them on the end of the character. It will then make the first two scan lines of the character blank. For nonlowercase characters, it will leave the bytes in order and make the last two scan lines blank. Just in case that doesn't make any sense, let's look at it in pictures (Figure 65).

  
 
In memory:
 
 

00000000
00001100

01100110
01111000

01100110
00000000

01100110
01100110

00111100
01100110

00011000
01100110

00011000
01100110

00011000
00111110


 
On the screen:
 

(0)
##  ##


(1)
##  ##


(2)
##  ##


(3)
 ####

##  ##
(4)
  ##

##  ##
(5)
  ##

##  ##
(6)
  ##

##  ##
(7)


 #####
(8)


   ##
(9)


####

        FIGURE 65. Scan lines with lower-case letters

You should note that because each character is now 10-scan-lines high, you can only have 19 rows on the screen (192/10). Make sure of this when you change the display list.

CHR 4 lets you have multi-colored characters. That's right, you can have as many as four different colors in the same character. Let's take a look at how this works.

ANTIC mode four characters are the same size as graphics mode zero characters. The difference, however, is in the size of the pixels that make up the character. The pixels in both modes are one scan line high, but in ANTIC mode four they are as wide as graphics mode seven pixels (one color clock) rather than graphics mode eight. Why? In order to have four colors, a pixel must be represented by at least two bits. That means that the ANTIC mode four pixels have to be twice as wide as those in graphics mode zero, which use one-bit-per-pixel.



Because a character in ANTIC mode four is only four by eight pixels, they aren't of much use for letters and stuff. They are, however, great for graphics. Whatever you end up using them for, How ANTIC interprets a character description byte in this mode is shown in Figure 66.

Now you may be wondering what happens if you try and print a character in inverse video (i.e., an ATASCII value greater than 127). Do all the colors reverse? No, only the pixels with a value of "11" will change; Instead of getting their color from COLOR2 they will get it from COLORS. This means that you can have all five colors at the same time!

To design a character set for this mode, just follow the instructions given for a regular character set, keeping the preceding changes in mind.

BITS 7         6
5         4
3         2
1        0
USE
 
PIXEL 1 PIXEL 2
PIXEL 3 PIXEL 4
PIXEL
VALUE
 
COLOR REGISTER
00
COLOR4 (background)
01
COLOR0
10
COLOR1
11
COLOR2

            FIGURE 66. Character description via ANTIC


CHR 5
is the same as CHR 4 except the characters are now twice as high. Otherwise there's no difference.

CHR 6 is GRAPHICS 1.

CHR 7 is GRAPHICS 2.

MAP 8 is GRAPHICS 3.

MAP 9 is GRAPHICS 4.

MAP 10 is GRAPHICS 5.

MAP 11 is GRAPHICS 6.

MAP 12 is the same as MAP l l except the pixels are one scan line high instead of two.

MAP 13 is GRAPHICS 7.

MAP 14 is the same as MAP 13 except the pixels are one scan line high instead of two. See DINDEX at location 87 for an example of this mode.

MAP 15 is GRAPHICS 8.


Return to Table of Contents | Previous Chapter | Next Chapter