annotate level1/modules/cohr.asm @ 3169:1ff3d7673e36

mc09 l2: bring sys/makefile in line with latest organisation for other platforms Revise bootfiles/makefile to remove sysgo from bootfile - it can be found on the root of the disk.
author Neal Crook <foofoobedoo@gmail.com>
date Mon, 17 Apr 2017 22:59:28 +0100
parents e84a638d1c16
children 799037203bef
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
1 ********************************************************************
1e312b144f4d Major changes:
boisy
parents:
diff changeset
2 * CoHR - Hi-Res 51x24 Graphics Console Output Subroutine for VTIO
1e312b144f4d Major changes:
boisy
parents:
diff changeset
3 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
4 * $Id$
1e312b144f4d Major changes:
boisy
parents:
diff changeset
5 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
6 * Edt/Rev YYYY/MM/DD Modified by
1e312b144f4d Major changes:
boisy
parents:
diff changeset
7 * Comment
1e312b144f4d Major changes:
boisy
parents:
diff changeset
8 * ------------------------------------------------------------------
1e312b144f4d Major changes:
boisy
parents:
diff changeset
9 * 1 ????/??/??
1e312b144f4d Major changes:
boisy
parents:
diff changeset
10 * Original Dragon distribution version
1e312b144f4d Major changes:
boisy
parents:
diff changeset
11 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
12 * 2003/09/22 Rodney Hamilton
1e312b144f4d Major changes:
boisy
parents:
diff changeset
13 * Recoded fcb arrays, added labels & some comments
1e312b144f4d Major changes:
boisy
parents:
diff changeset
14 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
15 * 2004/11/15 P.Harvey-Smith
1e312b144f4d Major changes:
boisy
parents:
diff changeset
16 * Added code to turn off the drives on the Dragon Alpha.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
17 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
18 * 2004/12/01 P.Harvey-Smith
1e312b144f4d Major changes:
boisy
parents:
diff changeset
19 * Began converting drvr51 to CoHR, removed all keyboard
1e312b144f4d Major changes:
boisy
parents:
diff changeset
20 * related code, added symbolic defines for a lot of things.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
21 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
22 * 2004/12/02 P.Harvey-Smith
1e312b144f4d Major changes:
boisy
parents:
diff changeset
23 * Finished converting to c051 driver, moved all variable
1e312b144f4d Major changes:
boisy
parents:
diff changeset
24 * storage into ccio module (defined in cciodefs).
1e312b144f4d Major changes:
boisy
parents:
diff changeset
25 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
26 * 2005/04/09 P.Harvey-Smith
1e312b144f4d Major changes:
boisy
parents:
diff changeset
27 * Replaced all ; comment chars with * for benefit of native
1e312b144f4d Major changes:
boisy
parents:
diff changeset
28 * asm. Re-implemented (hopefully) non-destructive cursor which
1e312b144f4d Major changes:
boisy
parents:
diff changeset
29 * is XORed onto the screen. Commented character drawing routines
1e312b144f4d Major changes:
boisy
parents:
diff changeset
30 * and replaced the V51xx names with more meaningful ones.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
31 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
32 * 2005/04/24 P.Harvey-Smith
1e312b144f4d Major changes:
boisy
parents:
diff changeset
33 * Addded routines to flash the cursor, this is as it was in the
1e312b144f4d Major changes:
boisy
parents:
diff changeset
34 * Dragon Data 51 column driver.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
35 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
36 nam CoHR
1e312b144f4d Major changes:
boisy
parents:
diff changeset
37 ttl Hi-Res 51x24 Graphics Console Output Subroutine for VTIO
1e312b144f4d Major changes:
boisy
parents:
diff changeset
38
1e312b144f4d Major changes:
boisy
parents:
diff changeset
39 ifp1
2032
3176d0ac7213 Rearranging directory for ports
boisy
parents: 1933
diff changeset
40 use defsfile
2624
b8c7b7fbf3c9 Major changes:
Boisy Pitre <boisy.pitre@nuance.com>
parents: 2032
diff changeset
41 use cocovtio.d
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
42 endc
1e312b144f4d Major changes:
boisy
parents:
diff changeset
43
1e312b144f4d Major changes:
boisy
parents:
diff changeset
44 tylg set Systm+Objct
1e312b144f4d Major changes:
boisy
parents:
diff changeset
45 atrv set ReEnt+rev
1e312b144f4d Major changes:
boisy
parents:
diff changeset
46 rev set $00
1e312b144f4d Major changes:
boisy
parents:
diff changeset
47 edition set 1
1e312b144f4d Major changes:
boisy
parents:
diff changeset
48
1e312b144f4d Major changes:
boisy
parents:
diff changeset
49 mod eom,name,tylg,atrv,start,size
1e312b144f4d Major changes:
boisy
parents:
diff changeset
50
1e312b144f4d Major changes:
boisy
parents:
diff changeset
51 size equ .
1e312b144f4d Major changes:
boisy
parents:
diff changeset
52
1e312b144f4d Major changes:
boisy
parents:
diff changeset
53 fcb UPDAT.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
54
1e312b144f4d Major changes:
boisy
parents:
diff changeset
55
1e312b144f4d Major changes:
boisy
parents:
diff changeset
56 ScreenSize equ $1800 * Screen Size in Bytes
1e312b144f4d Major changes:
boisy
parents:
diff changeset
57
1e312b144f4d Major changes:
boisy
parents:
diff changeset
58 name fcs /CoHR/
1e312b144f4d Major changes:
boisy
parents:
diff changeset
59 fcb edition
1e312b144f4d Major changes:
boisy
parents:
diff changeset
60
1e312b144f4d Major changes:
boisy
parents:
diff changeset
61 start lbra Init
1e312b144f4d Major changes:
boisy
parents:
diff changeset
62 lbra Write
1e312b144f4d Major changes:
boisy
parents:
diff changeset
63 lbra GetStat
1e312b144f4d Major changes:
boisy
parents:
diff changeset
64 lbra SetStat
1e312b144f4d Major changes:
boisy
parents:
diff changeset
65 lbra Term
1e312b144f4d Major changes:
boisy
parents:
diff changeset
66
1e312b144f4d Major changes:
boisy
parents:
diff changeset
67 Init
1e312b144f4d Major changes:
boisy
parents:
diff changeset
68 pshs u,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
69 ldd #ScreenSize+$100 * Request a screenful of ram + $100 bytes
1e312b144f4d Major changes:
boisy
parents:
diff changeset
70 os9 F$SRqMem
1e312b144f4d Major changes:
boisy
parents:
diff changeset
71 bcs InitExit * Error : exit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
72 tfr u,d
1e312b144f4d Major changes:
boisy
parents:
diff changeset
73 ldu $01,s * Restore saved u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
74 tfr d,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
75 bita #$01 * Check that memory block starts at even page
1e312b144f4d Major changes:
boisy
parents:
diff changeset
76 beq L0066 * Yes base of screen = base of memory block
1e312b144f4d Major changes:
boisy
parents:
diff changeset
77 leax >$0100,x * no Move to next page
1e312b144f4d Major changes:
boisy
parents:
diff changeset
78 bra L0068
1e312b144f4d Major changes:
boisy
parents:
diff changeset
79 L0066 adda #$18
1e312b144f4d Major changes:
boisy
parents:
diff changeset
80 L0068 stx V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
81 tfr d,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
82 ldd #$0100
1e312b144f4d Major changes:
boisy
parents:
diff changeset
83 os9 F$SRtMem * Return unneeded page to OS
1e312b144f4d Major changes:
boisy
parents:
diff changeset
84 ldu $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
85
1e312b144f4d Major changes:
boisy
parents:
diff changeset
86 clr V.51CursorOn,u * Flag cursor off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
87 lbsr DoHome
1e312b144f4d Major changes:
boisy
parents:
diff changeset
88 lbsr DoReverseOff
1e312b144f4d Major changes:
boisy
parents:
diff changeset
89 lbsr DoCLS
1e312b144f4d Major changes:
boisy
parents:
diff changeset
90 ldb V.COLoad,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
91 orb #ModCoHR * set to CoHR found (?)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
92
1e312b144f4d Major changes:
boisy
parents:
diff changeset
93 leax FlashCursor,pcr * Get address of cursor flash routine
1e312b144f4d Major changes:
boisy
parents:
diff changeset
94 stx V.Flash,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
95
1e312b144f4d Major changes:
boisy
parents:
diff changeset
96 InitSaveExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
97 stb V.COLoad,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
98 clrb
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
99 lda #$FF
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
100 sta V.CColr,u * Flag Cursor as not hidden
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
101
1e312b144f4d Major changes:
boisy
parents:
diff changeset
102 InitExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
103 puls pc,u,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
104
1e312b144f4d Major changes:
boisy
parents:
diff changeset
105 InitFlag fcb $00
1e312b144f4d Major changes:
boisy
parents:
diff changeset
106
1e312b144f4d Major changes:
boisy
parents:
diff changeset
107 Term pshs y,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
108 pshs u * save U
1e312b144f4d Major changes:
boisy
parents:
diff changeset
109 ldd #ScreenSize * Graphics memory size
1e312b144f4d Major changes:
boisy
parents:
diff changeset
110 ldu V.51ScrnA,u * get pointer to memory
1e312b144f4d Major changes:
boisy
parents:
diff changeset
111 os9 F$SRtMem * return to system
1e312b144f4d Major changes:
boisy
parents:
diff changeset
112 puls u * restore U
1e312b144f4d Major changes:
boisy
parents:
diff changeset
113 ldb V.COLoad,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
114 andb #~ModCoHR * Set CoHR unot loaded
1e312b144f4d Major changes:
boisy
parents:
diff changeset
115 bra InitSaveExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
116
1e312b144f4d Major changes:
boisy
parents:
diff changeset
117 * Write
1e312b144f4d Major changes:
boisy
parents:
diff changeset
118 * Entry: A = char to write
1e312b144f4d Major changes:
boisy
parents:
diff changeset
119 * Y = path desc ptr
1e312b144f4d Major changes:
boisy
parents:
diff changeset
120
1e312b144f4d Major changes:
boisy
parents:
diff changeset
121 Write
1e312b144f4d Major changes:
boisy
parents:
diff changeset
122
1e312b144f4d Major changes:
boisy
parents:
diff changeset
123 L012C inc V.Noflash,u * Flag do not flash cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
124 ldb V.51EscSeq,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
125 bne L0165
1e312b144f4d Major changes:
boisy
parents:
diff changeset
126 cmpa #$1B * escape?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
127 bne CheckForNormal
1e312b144f4d Major changes:
boisy
parents:
diff changeset
128 inc V.51EscSeq,u * flag ESC seq
1e312b144f4d Major changes:
boisy
parents:
diff changeset
129
1e312b144f4d Major changes:
boisy
parents:
diff changeset
130 WriteExit2
1e312b144f4d Major changes:
boisy
parents:
diff changeset
131 clr V.NoFlash,u * Allow cursor to flash
1e312b144f4d Major changes:
boisy
parents:
diff changeset
132 clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
133 L0139 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
134
1e312b144f4d Major changes:
boisy
parents:
diff changeset
135
1e312b144f4d Major changes:
boisy
parents:
diff changeset
136 CheckForNormal
1e312b144f4d Major changes:
boisy
parents:
diff changeset
137 cmpa #$20
1e312b144f4d Major changes:
boisy
parents:
diff changeset
138 bcs DoCtrlChar * Control charater ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
139 cmpa #$7F
1e312b144f4d Major changes:
boisy
parents:
diff changeset
140 bcc DoCtrlChar * or upper bit set
1e312b144f4d Major changes:
boisy
parents:
diff changeset
141 bra DoNormalChar
1e312b144f4d Major changes:
boisy
parents:
diff changeset
142
1e312b144f4d Major changes:
boisy
parents:
diff changeset
143 DoCtrlChar
1e312b144f4d Major changes:
boisy
parents:
diff changeset
144 leax >CtrlCharDispatch,pcr
1e312b144f4d Major changes:
boisy
parents:
diff changeset
145 L0148 tst ,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
146 bne L0150
1e312b144f4d Major changes:
boisy
parents:
diff changeset
147 CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
148 clr V.51EscSeq,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
149 WriteExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
150 clr V.NoFlash,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
151 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
152
1e312b144f4d Major changes:
boisy
parents:
diff changeset
153 L0150 cmpa ,x+
1e312b144f4d Major changes:
boisy
parents:
diff changeset
154 bne L0161
1e312b144f4d Major changes:
boisy
parents:
diff changeset
155 ldd ,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
156 leax >CtrlCharDispatch,pcr
1e312b144f4d Major changes:
boisy
parents:
diff changeset
157 leax d,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
158 stx V.51CtrlDispatch,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
159 jsr ,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
160 bra WriteExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
161
1e312b144f4d Major changes:
boisy
parents:
diff changeset
162 L0161 leax $02,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
163 bra L0148
1e312b144f4d Major changes:
boisy
parents:
diff changeset
164
1e312b144f4d Major changes:
boisy
parents:
diff changeset
165 L0165 inc V.51EscSeq,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
166 leax >EscCharDispatch,pcr
1e312b144f4d Major changes:
boisy
parents:
diff changeset
167 cmpb #$01
1e312b144f4d Major changes:
boisy
parents:
diff changeset
168 beq L0148
1e312b144f4d Major changes:
boisy
parents:
diff changeset
169 jmp [V.51CtrlDispatch,u]
1e312b144f4d Major changes:
boisy
parents:
diff changeset
170
1e312b144f4d Major changes:
boisy
parents:
diff changeset
171 DoNormalChar
1e312b144f4d Major changes:
boisy
parents:
diff changeset
172 pshs y,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
173 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
174 puls y,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
175 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
176 bsr DrawCharacter
1e312b144f4d Major changes:
boisy
parents:
diff changeset
177 tst V.51UnderlineFlag,u * Are we underlining ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
178 beq L0185 * no : update cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
179 lda #$F8 * Yes : do underline, then update cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
180 leay <-$40,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
181 lbsr L0236
1e312b144f4d Major changes:
boisy
parents:
diff changeset
182
1e312b144f4d Major changes:
boisy
parents:
diff changeset
183 L0185 lda V.51XPos,u * Get current X pos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
184 inca * increment it
1e312b144f4d Major changes:
boisy
parents:
diff changeset
185 cmpa #$33 * past end of line ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
186 bcs L01A2 * no : continue
1e312b144f4d Major changes:
boisy
parents:
diff changeset
187 clr V.51XPos,u * Yes reset x=0
1e312b144f4d Major changes:
boisy
parents:
diff changeset
188 lda V.51YPos,u * increment y pos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
189 inca
1e312b144f4d Major changes:
boisy
parents:
diff changeset
190 cmpa #$18 * Past last line ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
191 bcs L019D * No : continue
1e312b144f4d Major changes:
boisy
parents:
diff changeset
192 lbsr SoScrollScreen * Yes : scroll screen one line
1e312b144f4d Major changes:
boisy
parents:
diff changeset
193 bra L01A5
1e312b144f4d Major changes:
boisy
parents:
diff changeset
194 L019D sta V.51YPos,u * Ypdate Y pos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
195 bra L01A5
1e312b144f4d Major changes:
boisy
parents:
diff changeset
196
1e312b144f4d Major changes:
boisy
parents:
diff changeset
197 L01A2 sta V.51XPos,u * Update X pos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
198 L01A5
1e312b144f4d Major changes:
boisy
parents:
diff changeset
199 ldd V.51XPos,u * Update old Cursor pos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
200 std V.51OldCursorPosX,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
201 dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
202 lbsr DoDisplayCursor * Display cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
203
1e312b144f4d Major changes:
boisy
parents:
diff changeset
204 lbra WriteExit2
1e312b144f4d Major changes:
boisy
parents:
diff changeset
205 clrb * Flag no error
1e312b144f4d Major changes:
boisy
parents:
diff changeset
206 rts * Return to caller
1e312b144f4d Major changes:
boisy
parents:
diff changeset
207
1e312b144f4d Major changes:
boisy
parents:
diff changeset
208 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
209 * Draw the normal character $20..$7f, in the a register
1e312b144f4d Major changes:
boisy
parents:
diff changeset
210 * at position stored in V.51Xpos,V.51Ypos
1e312b144f4d Major changes:
boisy
parents:
diff changeset
211 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
212
1e312b144f4d Major changes:
boisy
parents:
diff changeset
213 DrawCharacter
1e312b144f4d Major changes:
boisy
parents:
diff changeset
214 tfr a,b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
215 subb #$20 * Make b an offset into table
1e312b144f4d Major changes:
boisy
parents:
diff changeset
216 clra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
217 leax >CharacterShapes,pcr * point to character shape table
1e312b144f4d Major changes:
boisy
parents:
diff changeset
218 lslb * Multiply b by 4 into d (4 bytes/character)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
219 rola
1e312b144f4d Major changes:
boisy
parents:
diff changeset
220 lslb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
221 rola
1e312b144f4d Major changes:
boisy
parents:
diff changeset
222 leax d,x * Point X at required character's bitmap
1e312b144f4d Major changes:
boisy
parents:
diff changeset
223 ldb #$05 * Work out pixel X co-ordinate of current cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
224 lda V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
225 mul
1e312b144f4d Major changes:
boisy
parents:
diff changeset
226 pshs b * Save pixel x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
227 lsra * Divide pixel-x by 8, to get byte offset into line
1e312b144f4d Major changes:
boisy
parents:
diff changeset
228 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
229 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
230 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
231 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
232 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
233 puls a * restore pixel X
1e312b144f4d Major changes:
boisy
parents:
diff changeset
234 anda #$07 * Calculate offset within byte where character begins
1e312b144f4d Major changes:
boisy
parents:
diff changeset
235 pshs b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
236 sta V.51BytePixOffset,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
237 tst V.51XORFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
238 bne L01FF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
239 tfr a,b * Calculate a mask for character data
1e312b144f4d Major changes:
boisy
parents:
diff changeset
240 lda #$F8 * shifts $f8 right b times
1e312b144f4d Major changes:
boisy
parents:
diff changeset
241 tstb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
242 beq L01FA * Done all bits ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
243 L01E5 lsra * shift mask right
1e312b144f4d Major changes:
boisy
parents:
diff changeset
244 decb * decrement count
1e312b144f4d Major changes:
boisy
parents:
diff changeset
245 bhi L01E5 * done all ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
246 bne L01EE * have we shifted any mask bits off right hand end ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
247 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
248 bra L01FA
1e312b144f4d Major changes:
boisy
parents:
diff changeset
249
1e312b144f4d Major changes:
boisy
parents:
diff changeset
250 L01EE pshs b * Save count on stack
1e312b144f4d Major changes:
boisy
parents:
diff changeset
251 ldb #$80 * start to build mask for second byte as well
1e312b144f4d Major changes:
boisy
parents:
diff changeset
252 L01F2 lsra * shift bits from bottom of a to top of b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
253 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
254 dec ,s * decrement count
1e312b144f4d Major changes:
boisy
parents:
diff changeset
255 bne L01F2 * if any shifts left loop again
1e312b144f4d Major changes:
boisy
parents:
diff changeset
256 leas $01,s * drop count
1e312b144f4d Major changes:
boisy
parents:
diff changeset
257
1e312b144f4d Major changes:
boisy
parents:
diff changeset
258 * When we reach here we should have a pair of bytes in d which indicate where exactly the
1e312b144f4d Major changes:
boisy
parents:
diff changeset
259 * character should be drawn, this may be partly in each
1e312b144f4d Major changes:
boisy
parents:
diff changeset
260
1e312b144f4d Major changes:
boisy
parents:
diff changeset
261 L01FA coma
1e312b144f4d Major changes:
boisy
parents:
diff changeset
262 comb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
263 std V.51ScreenMask1,u * Save screen mask
1e312b144f4d Major changes:
boisy
parents:
diff changeset
264
1e312b144f4d Major changes:
boisy
parents:
diff changeset
265 * The code below works out the offset of the character cell to be updated, this works because
1e312b144f4d Major changes:
boisy
parents:
diff changeset
266 * the y co ordinate is loaded into the high byte of d, effectivley multiplying it by 256, since
1e312b144f4d Major changes:
boisy
parents:
diff changeset
267 * each screen line is 32 bytes wide, and each character is 8 pixels tall this works out as 8x32=256
1e312b144f4d Major changes:
boisy
parents:
diff changeset
268
1e312b144f4d Major changes:
boisy
parents:
diff changeset
269 L01FF ldy V.51ScrnA,u * Point y at screen memory address
1e312b144f4d Major changes:
boisy
parents:
diff changeset
270 lda V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
271 ldb ,s+ * Retrieve byte offset from stack
1e312b144f4d Major changes:
boisy
parents:
diff changeset
272 leay d,y * calculate screen address.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
273 lda #$04 * get character data byte count, 4 bytes of 8 nibbles
1e312b144f4d Major changes:
boisy
parents:
diff changeset
274 pshs a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
275 inc V.51CursorChanged,u * flag character at cursor being changed
1e312b144f4d Major changes:
boisy
parents:
diff changeset
276
1e312b144f4d Major changes:
boisy
parents:
diff changeset
277 L0211 lda ,x * get a byte from character data
1e312b144f4d Major changes:
boisy
parents:
diff changeset
278 anda #$F0 * mask out even line
1e312b144f4d Major changes:
boisy
parents:
diff changeset
279 bsr L0236 * update screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
280 lda ,x+ * Get again
1e312b144f4d Major changes:
boisy
parents:
diff changeset
281 anda #$0F * mask out odd line
1e312b144f4d Major changes:
boisy
parents:
diff changeset
282 bsr L0227 * update screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
283 dec ,s * Decrement character data byte counter
1e312b144f4d Major changes:
boisy
parents:
diff changeset
284 bne L0211 * all done ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
285 dec V.51CursorChanged,u * Flag character update finished
1e312b144f4d Major changes:
boisy
parents:
diff changeset
286 clrb * flag no error
1e312b144f4d Major changes:
boisy
parents:
diff changeset
287 puls pc,b * return to caller
1e312b144f4d Major changes:
boisy
parents:
diff changeset
288
1e312b144f4d Major changes:
boisy
parents:
diff changeset
289
1e312b144f4d Major changes:
boisy
parents:
diff changeset
290 L0227 ldb V.51BytePixOffset,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
291 subb #$04
1e312b144f4d Major changes:
boisy
parents:
diff changeset
292 bhi L023B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
293 beq L0250
1e312b144f4d Major changes:
boisy
parents:
diff changeset
294 L0230 lsla
1e312b144f4d Major changes:
boisy
parents:
diff changeset
295 incb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
296 bne L0230
1e312b144f4d Major changes:
boisy
parents:
diff changeset
297 bra L0250
1e312b144f4d Major changes:
boisy
parents:
diff changeset
298
1e312b144f4d Major changes:
boisy
parents:
diff changeset
299 L0236 ldb V.51BytePixOffset,u * Retrieve byte pixel offset
1e312b144f4d Major changes:
boisy
parents:
diff changeset
300 beq L0250
1e312b144f4d Major changes:
boisy
parents:
diff changeset
301
1e312b144f4d Major changes:
boisy
parents:
diff changeset
302 L023B lsra * manipulate character data into correct position
1e312b144f4d Major changes:
boisy
parents:
diff changeset
303 decb * in a similar way to the mask above
1e312b144f4d Major changes:
boisy
parents:
diff changeset
304 bhi L023B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
305 bne L0244
1e312b144f4d Major changes:
boisy
parents:
diff changeset
306 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
307 bra L0250
1e312b144f4d Major changes:
boisy
parents:
diff changeset
308 L0244 pshs b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
309 ldb #$80
1e312b144f4d Major changes:
boisy
parents:
diff changeset
310 L0248 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
311 rorb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
312 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
313 bne L0248
1e312b144f4d Major changes:
boisy
parents:
diff changeset
314 leas $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
315
1e312b144f4d Major changes:
boisy
parents:
diff changeset
316 L0250 tst V.51XORFlag,u * are we XORing data direct to screen ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
317 bne L0273 * Yes : just do it
1e312b144f4d Major changes:
boisy
parents:
diff changeset
318 tst V.51ReverseFlag,u * are we in reverse mode ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
319 beq L0262 * no : just output data
1e312b144f4d Major changes:
boisy
parents:
diff changeset
320 coma * set mask up for reverse mode
1e312b144f4d Major changes:
boisy
parents:
diff changeset
321 comb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
322 eora V.51ScreenMask1,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
323 eorb V.51ScreenMask2,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
324
1e312b144f4d Major changes:
boisy
parents:
diff changeset
325 L0262 pshs b,a * combine mask and screen data
1e312b144f4d Major changes:
boisy
parents:
diff changeset
326 ldd V.51ScreenMask1,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
327 anda ,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
328 andb $01,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
329 addd ,s++
1e312b144f4d Major changes:
boisy
parents:
diff changeset
330
1e312b144f4d Major changes:
boisy
parents:
diff changeset
331 L026D std ,y * screen update
1e312b144f4d Major changes:
boisy
parents:
diff changeset
332 leay <$20,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
333 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
334
1e312b144f4d Major changes:
boisy
parents:
diff changeset
335 L0273 eora ,y * XOR onto screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
336 eorb $01,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
337 bra L026D
1e312b144f4d Major changes:
boisy
parents:
diff changeset
338
1e312b144f4d Major changes:
boisy
parents:
diff changeset
339 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
340 * $07 - BEL (ding!)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
341 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
342
1e312b144f4d Major changes:
boisy
parents:
diff changeset
343 DoBell
1e312b144f4d Major changes:
boisy
parents:
diff changeset
344 ldx #$FF20
1e312b144f4d Major changes:
boisy
parents:
diff changeset
345 ldb #$64
1e312b144f4d Major changes:
boisy
parents:
diff changeset
346 L027E lda ,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
347 eora #$C0
1e312b144f4d Major changes:
boisy
parents:
diff changeset
348 sta ,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
349 lda #$19
1e312b144f4d Major changes:
boisy
parents:
diff changeset
350 L0286 deca
1e312b144f4d Major changes:
boisy
parents:
diff changeset
351 nop
1e312b144f4d Major changes:
boisy
parents:
diff changeset
352 nop
1e312b144f4d Major changes:
boisy
parents:
diff changeset
353 bne L0286
1e312b144f4d Major changes:
boisy
parents:
diff changeset
354 decb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
355 bne L027E
1e312b144f4d Major changes:
boisy
parents:
diff changeset
356 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
357 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
358 * $08 - BS (left arrow)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
359 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
360 DoBackspace
1e312b144f4d Major changes:
boisy
parents:
diff changeset
361 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
362 dec V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
363 bpl DoBSUpdateCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
364 lda #$32
1e312b144f4d Major changes:
boisy
parents:
diff changeset
365 sta V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
366 bra DoCursorUp1
1e312b144f4d Major changes:
boisy
parents:
diff changeset
367 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
368 * $1b44 - (cursor up)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
369 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
370 DoCursorUp
1e312b144f4d Major changes:
boisy
parents:
diff changeset
371 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
372 DoCursorUp1
1e312b144f4d Major changes:
boisy
parents:
diff changeset
373 dec V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
374 bpl L02A6
1e312b144f4d Major changes:
boisy
parents:
diff changeset
375 clr V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
376 lbsr L035E
1e312b144f4d Major changes:
boisy
parents:
diff changeset
377 L02A6 lbsr L0484
1e312b144f4d Major changes:
boisy
parents:
diff changeset
378 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
379
1e312b144f4d Major changes:
boisy
parents:
diff changeset
380 DoBSUpdateCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
381 lbsr L0484
1e312b144f4d Major changes:
boisy
parents:
diff changeset
382 lbsr DoDisplayCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
383 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
384
1e312b144f4d Major changes:
boisy
parents:
diff changeset
385 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
386 * $0a, $1b45 - LF, (cursor down)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
387 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
388
1e312b144f4d Major changes:
boisy
parents:
diff changeset
389 DoLineFeed
1e312b144f4d Major changes:
boisy
parents:
diff changeset
390 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
391 lda V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
392 inca
1e312b144f4d Major changes:
boisy
parents:
diff changeset
393 cmpa #$18
1e312b144f4d Major changes:
boisy
parents:
diff changeset
394 bcs L02B9
1e312b144f4d Major changes:
boisy
parents:
diff changeset
395 lbsr SoScrollScreen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
396 bra L02BC
1e312b144f4d Major changes:
boisy
parents:
diff changeset
397 L02B9 sta V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
398 L02BC lbsr DoDisplayCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
399 bra L02A6
1e312b144f4d Major changes:
boisy
parents:
diff changeset
400
1e312b144f4d Major changes:
boisy
parents:
diff changeset
401 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
402 * $0d - CR (return)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
403 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
404
1e312b144f4d Major changes:
boisy
parents:
diff changeset
405 DoCarrageReturn
1e312b144f4d Major changes:
boisy
parents:
diff changeset
406 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
407 clr V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
408 bra L02A6
1e312b144f4d Major changes:
boisy
parents:
diff changeset
409
1e312b144f4d Major changes:
boisy
parents:
diff changeset
410 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
411 * $0c - FF (clear screen)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
412 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
413 DoCLS
1e312b144f4d Major changes:
boisy
parents:
diff changeset
414 ldy V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
415 leay >$0080,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
416 lda #$18
1e312b144f4d Major changes:
boisy
parents:
diff changeset
417 pshs a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
418 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
419 L02D2 bsr L0314
1e312b144f4d Major changes:
boisy
parents:
diff changeset
420 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
421 bne L02D2
1e312b144f4d Major changes:
boisy
parents:
diff changeset
422 leas $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
423 clra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
424 clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
425 std V.51OldCursorPosX,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
426 std V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
427 dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
428 ldx #$FF20
1e312b144f4d Major changes:
boisy
parents:
diff changeset
429 lda $02,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
430 ora #$F0
1e312b144f4d Major changes:
boisy
parents:
diff changeset
431 sta $02,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
432 ldx #$FFC0
1e312b144f4d Major changes:
boisy
parents:
diff changeset
433 lda #$06
1e312b144f4d Major changes:
boisy
parents:
diff changeset
434 ldb #$03
1e312b144f4d Major changes:
boisy
parents:
diff changeset
435 bsr L0305
1e312b144f4d Major changes:
boisy
parents:
diff changeset
436 lda V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
437 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
438 ldb #$07
1e312b144f4d Major changes:
boisy
parents:
diff changeset
439 bsr L0305
1e312b144f4d Major changes:
boisy
parents:
diff changeset
440 clr V.51CursorOn,u * Flag cursor is off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
441 lbsr DoDisplayCursor * Display cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
442 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
443
1e312b144f4d Major changes:
boisy
parents:
diff changeset
444 L0305 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
445 bcc L030E
1e312b144f4d Major changes:
boisy
parents:
diff changeset
446 leax $01,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
447 sta ,x+
1e312b144f4d Major changes:
boisy
parents:
diff changeset
448 bra L0310
1e312b144f4d Major changes:
boisy
parents:
diff changeset
449 L030E sta ,x++
1e312b144f4d Major changes:
boisy
parents:
diff changeset
450 L0310 decb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
451 bne L0305
1e312b144f4d Major changes:
boisy
parents:
diff changeset
452 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
453
1e312b144f4d Major changes:
boisy
parents:
diff changeset
454 L0314 lda #$10
1e312b144f4d Major changes:
boisy
parents:
diff changeset
455 L0316 pshs a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
456 lda V.51ReverseFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
457 tfr a,b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
458 L031D std <-$80,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
459 std <-$60,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
460 std <-$40,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
461 std <-$20,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
462 std <$20,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
463 std <$40,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
464 std <$60,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
465 std ,y++
1e312b144f4d Major changes:
boisy
parents:
diff changeset
466 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
467 bne L031D
1e312b144f4d Major changes:
boisy
parents:
diff changeset
468 leay >$00E0,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
469 puls pc,b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
470
1e312b144f4d Major changes:
boisy
parents:
diff changeset
471 SoScrollScreen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
472 ldy V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
473 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
474 pshs u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
475 leau >$0100,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
476 lda #$10
1e312b144f4d Major changes:
boisy
parents:
diff changeset
477 bsr L037C
1e312b144f4d Major changes:
boisy
parents:
diff changeset
478 puls u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
479 dec V.51OldCursorPosY,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
480
1e312b144f4d Major changes:
boisy
parents:
diff changeset
481 L0354 leay >$0080,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
482 bsr L0314
1e312b144f4d Major changes:
boisy
parents:
diff changeset
483 dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
484 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
485
1e312b144f4d Major changes:
boisy
parents:
diff changeset
486 L035E ldy V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
487 leay >$17F0,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
488 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
489 pshs u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
490 leau >-$0100,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
491 lda #$F0
1e312b144f4d Major changes:
boisy
parents:
diff changeset
492 bsr L037C
1e312b144f4d Major changes:
boisy
parents:
diff changeset
493 leay ,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
494 puls u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
495 inc V.51OldCursorPosY,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
496 bra L0354
1e312b144f4d Major changes:
boisy
parents:
diff changeset
497
1e312b144f4d Major changes:
boisy
parents:
diff changeset
498 L037C ldb #$17
1e312b144f4d Major changes:
boisy
parents:
diff changeset
499 pshs b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
500 L0380 ldb #$10
1e312b144f4d Major changes:
boisy
parents:
diff changeset
501
1e312b144f4d Major changes:
boisy
parents:
diff changeset
502 L0382 ldx ,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
503 stx ,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
504 ldx $02,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
505 stx $02,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
506 ldx $04,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
507 stx $04,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
508 ldx $06,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
509 stx $06,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
510 ldx $08,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
511 stx $08,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
512 ldx $0A,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
513 stx $0A,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
514 ldx $0C,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
515 stx $0C,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
516 ldx $0E,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
517 stx $0E,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
518 leay a,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
519 leau a,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
520 decb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
521 bne L0382
1e312b144f4d Major changes:
boisy
parents:
diff changeset
522 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
523 bne L0380
1e312b144f4d Major changes:
boisy
parents:
diff changeset
524 puls pc,b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
525
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
526 DelLine
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
527 clrb
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
528 stb V.51XPos,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
529 lbsr DoDisplayCursor
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
530 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
531 * $1b42 - clear to end of line
1e312b144f4d Major changes:
boisy
parents:
diff changeset
532 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
533 DoClrEOL
1e312b144f4d Major changes:
boisy
parents:
diff changeset
534 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
535 bsr L03BA
1e312b144f4d Major changes:
boisy
parents:
diff changeset
536 dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
537 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
538 L03BA
1e312b144f4d Major changes:
boisy
parents:
diff changeset
539 ldb V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
540 pshs b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
541 bitb #$07
1e312b144f4d Major changes:
boisy
parents:
diff changeset
542 bne L03CB
1e312b144f4d Major changes:
boisy
parents:
diff changeset
543 lda #$05
1e312b144f4d Major changes:
boisy
parents:
diff changeset
544 mul
1e312b144f4d Major changes:
boisy
parents:
diff changeset
545 bra L03F3
1e312b144f4d Major changes:
boisy
parents:
diff changeset
546 L03CB lda #$01
1e312b144f4d Major changes:
boisy
parents:
diff changeset
547 pshs a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
548 L03CF lda #$20
1e312b144f4d Major changes:
boisy
parents:
diff changeset
549 lbsr DrawCharacter
1e312b144f4d Major changes:
boisy
parents:
diff changeset
550 lda V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
551 inca
1e312b144f4d Major changes:
boisy
parents:
diff changeset
552 sta V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
553 cmpa #$33
1e312b144f4d Major changes:
boisy
parents:
diff changeset
554 bcs L03E3
1e312b144f4d Major changes:
boisy
parents:
diff changeset
555 leas $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
556 bra L040D
1e312b144f4d Major changes:
boisy
parents:
diff changeset
557 L03E3 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
558 bpl L03CF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
559 lda V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
560 ldb #$05
1e312b144f4d Major changes:
boisy
parents:
diff changeset
561 mul
1e312b144f4d Major changes:
boisy
parents:
diff changeset
562 bitb #$08
1e312b144f4d Major changes:
boisy
parents:
diff changeset
563 bne L03CF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
564 leas $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
565 L03F3 lsrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
566 lsrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
567 lsrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
568 ldy V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
569 lda V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
570 leay d,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
571 leay >$0080,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
572 lda #$20
1e312b144f4d Major changes:
boisy
parents:
diff changeset
573 pshs b
1e312b144f4d Major changes:
boisy
parents:
diff changeset
574 suba ,s+
1e312b144f4d Major changes:
boisy
parents:
diff changeset
575 lsra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
576 lbsr L0316
1e312b144f4d Major changes:
boisy
parents:
diff changeset
577 L040D puls a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
578 sta V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
579 lbsr DoDisplayCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
580 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
581 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
582 * $1b4A - clear to end of screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
583 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
584 DoClearEOS
1e312b144f4d Major changes:
boisy
parents:
diff changeset
585 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
586 bsr L03BA
1e312b144f4d Major changes:
boisy
parents:
diff changeset
587 lda #$17
1e312b144f4d Major changes:
boisy
parents:
diff changeset
588 suba V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
589 bls L042A
1e312b144f4d Major changes:
boisy
parents:
diff changeset
590 pshs a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
591 L0421 lbsr L0314
1e312b144f4d Major changes:
boisy
parents:
diff changeset
592 dec ,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
593 bne L0421
1e312b144f4d Major changes:
boisy
parents:
diff changeset
594 leas $01,s
1e312b144f4d Major changes:
boisy
parents:
diff changeset
595 L042A dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
596 lbsr DoDisplayCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
597 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
598
1e312b144f4d Major changes:
boisy
parents:
diff changeset
599 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
600 *$0b - (cursor home)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
601 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
602 DoHome
1e312b144f4d Major changes:
boisy
parents:
diff changeset
603 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
604 clr V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
605 clr V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
606 lbsr DoDisplayCursor
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
607 lbra L02A6
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
608
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
609 *
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
610 * $05 XX - set cursor off/on/color per XX-32 from COVDG (only on/off supported)
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
611 *
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
612 SetCrsr ldb #$01 need additional byte
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
613 leax <CrsrSw,pcr
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
614 bra L01E5V
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
615 CrsrSw lda <V.NChr2,u get next char
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
616 suba #C$SPAC take out ASCII space
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
617 bne L01BBV branch if not zero - show cursor
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
618 clr V.CColr,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
619 lbra CancelEscSequence
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
620 L01BBV
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
621 ldb #$FF
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
622 stb V.CColr,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
623 lbra CancelEscSequence
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
624
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
625 *
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
626 * $02 XX YY - move cursor to col XX-32, row YY-32 from COVDG
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
627 *
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
628 CurXY ldb #$02 we want to claim next two chars
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
629 leax <DoCurXY,pcr point to processing routine
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
630 L01E5V stx <V.RTAdd,u store routine to return to
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
631 stb <V.NGChr,u get two more chars
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
632 clrb
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
633 rts
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
634
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
635 DoCurXY lbsr DoEraseCursor hide cursor
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
636 ldb <V.NChr2,u get ASCII Y-pos
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
637 subb #C$SPAC take out ASCII space
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
638 stb V.51YPos,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
639 ldb <V.NChar,u get X-pos
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
640 subb #C$SPAC take out ASCII space
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
641 stb V.51XPos,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
642 lbsr DoDisplayCursor
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
643 lbra L02A6
1e312b144f4d Major changes:
boisy
parents:
diff changeset
644
1e312b144f4d Major changes:
boisy
parents:
diff changeset
645 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
646 * $1b41xxyy - move cursor to col xx (0-50) row yy (0-23)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
647 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
648 DoGotoXY
1e312b144f4d Major changes:
boisy
parents:
diff changeset
649 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
650 ldb V.51EscSeq,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
651 subb #$02
1e312b144f4d Major changes:
boisy
parents:
diff changeset
652 bne L0442
1e312b144f4d Major changes:
boisy
parents:
diff changeset
653 clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
654 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
655 L0442 decb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
656 bne L0450
1e312b144f4d Major changes:
boisy
parents:
diff changeset
657 cmpa #51
1e312b144f4d Major changes:
boisy
parents:
diff changeset
658 bcs L044B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
659 lda #50
1e312b144f4d Major changes:
boisy
parents:
diff changeset
660 L044B sta V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
661 L044D clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
662 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
663 L0450 cmpa #24
1e312b144f4d Major changes:
boisy
parents:
diff changeset
664 bcs L0456
1e312b144f4d Major changes:
boisy
parents:
diff changeset
665 lda #23
1e312b144f4d Major changes:
boisy
parents:
diff changeset
666 L0456 sta V.51YPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
667 L0459 lbsr DoDisplayCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
668 lbra L02A6
1e312b144f4d Major changes:
boisy
parents:
diff changeset
669
1e312b144f4d Major changes:
boisy
parents:
diff changeset
670 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
671 * $1b43 - (cursor right)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
672 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
673 DoCursorRight
1e312b144f4d Major changes:
boisy
parents:
diff changeset
674 lbsr DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
675 inc V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
676 lda V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
677 cmpa #$33
1e312b144f4d Major changes:
boisy
parents:
diff changeset
678 bcs L0459
1e312b144f4d Major changes:
boisy
parents:
diff changeset
679 clr V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
680 lbra DoLineFeed
1e312b144f4d Major changes:
boisy
parents:
diff changeset
681 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
682 * $1b46 - reverse on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
683 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
684 DoReverseOn
1e312b144f4d Major changes:
boisy
parents:
diff changeset
685 lda #$FF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
686 coma
1e312b144f4d Major changes:
boisy
parents:
diff changeset
687 L046F sta V.51ReverseFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
688 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
689
1e312b144f4d Major changes:
boisy
parents:
diff changeset
690 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
691 * $1b47 - reverse off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
692 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
693 DoReverseOff
1e312b144f4d Major changes:
boisy
parents:
diff changeset
694 lda #$FF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
695 bra L046F
1e312b144f4d Major changes:
boisy
parents:
diff changeset
696
1e312b144f4d Major changes:
boisy
parents:
diff changeset
697 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
698 * $1b48 - underline on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
699 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
700 DoUnderlineOn
1e312b144f4d Major changes:
boisy
parents:
diff changeset
701 lda #$FF
1e312b144f4d Major changes:
boisy
parents:
diff changeset
702 L047B sta V.51UnderlineFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
703 lbra CancelEscSequence
1e312b144f4d Major changes:
boisy
parents:
diff changeset
704
1e312b144f4d Major changes:
boisy
parents:
diff changeset
705 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
706 * $1b49 - underline off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
707 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
708 DoUnderlineOff
1e312b144f4d Major changes:
boisy
parents:
diff changeset
709 clra
1e312b144f4d Major changes:
boisy
parents:
diff changeset
710 bra L047B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
711
1e312b144f4d Major changes:
boisy
parents:
diff changeset
712
1e312b144f4d Major changes:
boisy
parents:
diff changeset
713 L0484 ldd V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
714 inc V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
715 std V.51OldCursorPosX,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
716 bra L04B9
1e312b144f4d Major changes:
boisy
parents:
diff changeset
717
1e312b144f4d Major changes:
boisy
parents:
diff changeset
718 L0494 pshs b,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
719 ldd V.51OldCursorPosX,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
720 inc V.51XORFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
721 tstb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
722 bmi L04AB
1e312b144f4d Major changes:
boisy
parents:
diff changeset
723 cmpb #$18
1e312b144f4d Major changes:
boisy
parents:
diff changeset
724 bcc L04AB
1e312b144f4d Major changes:
boisy
parents:
diff changeset
725 std V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
726 lda #$7F
1e312b144f4d Major changes:
boisy
parents:
diff changeset
727 lbsr DrawCharacter
1e312b144f4d Major changes:
boisy
parents:
diff changeset
728
1e312b144f4d Major changes:
boisy
parents:
diff changeset
729 L04AB puls b,a
1e312b144f4d Major changes:
boisy
parents:
diff changeset
730 std V.51XPos,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
731 std V.51OldCursorPosX,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
732 dec V.51XORFlag,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
733 L04B9 dec V.51CursorChanged,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
734 clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
735 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
736
1e312b144f4d Major changes:
boisy
parents:
diff changeset
737 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
738 * Display and Erase cursor routines, work by xoring cursor character onto the
1e312b144f4d Major changes:
boisy
parents:
diff changeset
739 * screen, the variable V.51CursorOn, is implemented such that it prevents
1e312b144f4d Major changes:
boisy
parents:
diff changeset
740 * multiple calls to these routines from acting as an inverse, so that they
1e312b144f4d Major changes:
boisy
parents:
diff changeset
741 * may be called from any code, irispective of if the cursor is already on/off.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
742 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
743
1e312b144f4d Major changes:
boisy
parents:
diff changeset
744 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
745 * Display Cursor.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
746 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
747 DoDisplayCursor
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
748 tst V.CColr,u
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
749 beq NoCrsr
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
750 inc V.NoFlash,u * Flag in flash
1e312b144f4d Major changes:
boisy
parents:
diff changeset
751 tst V.51CursorOn,u * Get cursor on flag
1e312b144f4d Major changes:
boisy
parents:
diff changeset
752 bne DoCursorOnEnd * Yes : don't re-display
1e312b144f4d Major changes:
boisy
parents:
diff changeset
753 bsr DoCursorCommon * Display cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
754 inc V.51CursorOn,u * Flag cursor on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
755 DoCursorOnEnd
1e312b144f4d Major changes:
boisy
parents:
diff changeset
756 dec V.NoFlash,u * Flag flash done
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
757 NoCrsr rts
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
758 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
759 * Erase cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
760 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
761 DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
762 inc V.NoFlash,u * Flag in Flash
1e312b144f4d Major changes:
boisy
parents:
diff changeset
763 tst V.51Cursoron,u * Get cursor on flag
1e312b144f4d Major changes:
boisy
parents:
diff changeset
764 beq DoEraseCursorEnd * no : don't atempt to turn off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
765 bsr DoCursorCommon * Hide cursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
766 clr V.51CursorOn,u * Flag cursor off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
767 DoEraseCursorEnd
1e312b144f4d Major changes:
boisy
parents:
diff changeset
768 dec V.NoFlash,u * Flag Flash done
1e312b144f4d Major changes:
boisy
parents:
diff changeset
769 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
770
1e312b144f4d Major changes:
boisy
parents:
diff changeset
771 DoCursorCommon
1e312b144f4d Major changes:
boisy
parents:
diff changeset
772 lda #$7f * Cursor character $7f = block
1e312b144f4d Major changes:
boisy
parents:
diff changeset
773 inc V.51XORFlag,u * Flag xor on screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
774 lbsr DrawCharacter * Draw it
1e312b144f4d Major changes:
boisy
parents:
diff changeset
775 dec V.51XORFlag,u * Flag no xor on screen
1e312b144f4d Major changes:
boisy
parents:
diff changeset
776 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
777
1e312b144f4d Major changes:
boisy
parents:
diff changeset
778 L04CA clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
779 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
780 GetStat
1e312b144f4d Major changes:
boisy
parents:
diff changeset
781 cmpa #$06
1e312b144f4d Major changes:
boisy
parents:
diff changeset
782 beq L04CA
1e312b144f4d Major changes:
boisy
parents:
diff changeset
783 cmpa #$02
1e312b144f4d Major changes:
boisy
parents:
diff changeset
784 bne SetStat
1e312b144f4d Major changes:
boisy
parents:
diff changeset
785 ldx $06,y
1e312b144f4d Major changes:
boisy
parents:
diff changeset
786 ldd V.51ScrnA,u
1e312b144f4d Major changes:
boisy
parents:
diff changeset
787 std $04,x
1e312b144f4d Major changes:
boisy
parents:
diff changeset
788 clrb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
789 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
790
1e312b144f4d Major changes:
boisy
parents:
diff changeset
791 SetStat comb
1e312b144f4d Major changes:
boisy
parents:
diff changeset
792 ldb #E$UnkSvc
1e312b144f4d Major changes:
boisy
parents:
diff changeset
793 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
794
1e312b144f4d Major changes:
boisy
parents:
diff changeset
795 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
796 * Flash cursor, called by IRQ routine from VTIO
1e312b144f4d Major changes:
boisy
parents:
diff changeset
797 *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
798
1e312b144f4d Major changes:
boisy
parents:
diff changeset
799 FlashCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
800 tst V.NoFlash,u * Should we flash ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
801 bne FlashExit * No: just return
1e312b144f4d Major changes:
boisy
parents:
diff changeset
802 tst V.51CursorOn,u * Is cursor on ?
1e312b144f4d Major changes:
boisy
parents:
diff changeset
803 bne FlashOff * Yep : turn off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
804 bra DoDisplayCursor * Else turn it on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
805 FlashOff
1e312b144f4d Major changes:
boisy
parents:
diff changeset
806 bra DoEraseCursor
1e312b144f4d Major changes:
boisy
parents:
diff changeset
807 FlashExit
1e312b144f4d Major changes:
boisy
parents:
diff changeset
808 rts
1e312b144f4d Major changes:
boisy
parents:
diff changeset
809
1e312b144f4d Major changes:
boisy
parents:
diff changeset
810
1e312b144f4d Major changes:
boisy
parents:
diff changeset
811 * control characters dispatch table
1e312b144f4d Major changes:
boisy
parents:
diff changeset
812 CtrlCharDispatch
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
813 fcb $01
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
814 fdb DoHome-CtrlCharDispatch * COVDG CurHome
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
815 fcb $02
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
816 fdb CurXY-CtrlCharDispatch * COVDG CURSOR XY
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
817 fcb $03
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
818 fdb DelLine-CtrlCharDispatch * COVDG ERASE LINE
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
819 fcb $04
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
820 fdb DoClrEOL-CtrlCharDispatch * COVDG ErEOLine
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
821 fcb $05
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
822 fdb SetCrsr-CtrlCharDispatch * COVDG CURSOR ON/OFF
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
823 fcb $06
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
824 fdb DoCursorRight-CtrlCharDispatch * COVDG CurRght
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
825 fcb $07 BEL * (beep)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
826 fdb DoBell-CtrlCharDispatch $FC0B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
827 fcb $08 BS * (left arrow)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
828 fdb DoBackspace-CtrlCharDispatch * $FC23
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
829 fcb $09
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
830 fdb DoCursorUp-CtrlCharDispatch * COVDG CurUp
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
831 fcb $0A LF * (down arrow)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
832 fdb DoLineFeed-CtrlCharDispatch * $FC3E
1e312b144f4d Major changes:
boisy
parents:
diff changeset
833 fcb $0D CR * (return)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
834 fdb DoCarrageReturn-CtrlCharDispatch *$FC50
1e312b144f4d Major changes:
boisy
parents:
diff changeset
835 fcb $0C FF * (clear screen)
1e312b144f4d Major changes:
boisy
parents:
diff changeset
836 fdb DoCLS-CtrlCharDispatch $FC55
1e312b144f4d Major changes:
boisy
parents:
diff changeset
837 fcb $0B * (cursor home)
2966
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
838 * Since few applications use CoHR $0B, support COVDG $0B instead
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
839 * fdb DoHome-CtrlCharDispatch $FDC2 * Was CoHR DoHome
e84a638d1c16 cohr: Support both COVDG control codes and COHR Esc codes
Ken H. <dragon.atv@gmail.com>
parents: 2624
diff changeset
840 fdb DoClearEOS-CtrlCharDispatch * COVDG ErEOScrn
1933
1e312b144f4d Major changes:
boisy
parents:
diff changeset
841 fcb $00
1e312b144f4d Major changes:
boisy
parents:
diff changeset
842
1e312b144f4d Major changes:
boisy
parents:
diff changeset
843 * escape sequences dispatch table
1e312b144f4d Major changes:
boisy
parents:
diff changeset
844 EscCharDispatch
1e312b144f4d Major changes:
boisy
parents:
diff changeset
845 fcb $41 * cursor xy
1e312b144f4d Major changes:
boisy
parents:
diff changeset
846 fdb DoGotoXY-CtrlCharDispatch * $FDCB
1e312b144f4d Major changes:
boisy
parents:
diff changeset
847 fcb $42 * clear EOL
1e312b144f4d Major changes:
boisy
parents:
diff changeset
848 fdb DoClrEOL-CtrlCharDispatch * $FD41
1e312b144f4d Major changes:
boisy
parents:
diff changeset
849 fcb $43 * cursor right
1e312b144f4d Major changes:
boisy
parents:
diff changeset
850 fdb DoCursorRight-CtrlCharDispatch * $FDEE
1e312b144f4d Major changes:
boisy
parents:
diff changeset
851 fcb $44 * cursor up
1e312b144f4d Major changes:
boisy
parents:
diff changeset
852 fdb DoCursorUp-CtrlCharDispatch * $FC2D
1e312b144f4d Major changes:
boisy
parents:
diff changeset
853 fcb $45 * cursor down
1e312b144f4d Major changes:
boisy
parents:
diff changeset
854 fdb DoLineFeed-CtrlCharDispatch * $FC3E
1e312b144f4d Major changes:
boisy
parents:
diff changeset
855 fcb $46 * reverse on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
856 fdb DoReverseOn-CtrlCharDispatch * $FDFE
1e312b144f4d Major changes:
boisy
parents:
diff changeset
857 fcb $47 * reverse off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
858 fdb DoReverseOff-CtrlCharDispatch * $FE07
1e312b144f4d Major changes:
boisy
parents:
diff changeset
859 fcb $48 * underline on
1e312b144f4d Major changes:
boisy
parents:
diff changeset
860 fdb DoUnderlineOn-CtrlCharDispatch * $FE0B
1e312b144f4d Major changes:
boisy
parents:
diff changeset
861 fcb $49 * underline off
1e312b144f4d Major changes:
boisy
parents:
diff changeset
862 fdb DoUnderlineOff-CtrlCharDispatch * $FE13
1e312b144f4d Major changes:
boisy
parents:
diff changeset
863 fcb $4A * clear EOS
1e312b144f4d Major changes:
boisy
parents:
diff changeset
864 fdb DoClearEOS-CtrlCharDispatch * $FDA5
1e312b144f4d Major changes:
boisy
parents:
diff changeset
865 fcb $00
1e312b144f4d Major changes:
boisy
parents:
diff changeset
866
1e312b144f4d Major changes:
boisy
parents:
diff changeset
867 CharacterShapes
1e312b144f4d Major changes:
boisy
parents:
diff changeset
868 * 4x8 bitmap table for characters $20-$7f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
869 * each nibble represents a row of 4 dots
1e312b144f4d Major changes:
boisy
parents:
diff changeset
870 * chars 20-27
1e312b144f4d Major changes:
boisy
parents:
diff changeset
871 fcb $00,$00,$00,$00 .... .@.. .@.@ .@@. ..@. @..@ .@.. .@..
1e312b144f4d Major changes:
boisy
parents:
diff changeset
872 fcb $44,$40,$40,$00 .... .@.. .@.@ @@@@ .@@@ ...@ @.@. .@..
1e312b144f4d Major changes:
boisy
parents:
diff changeset
873 fcb $55,$00,$00,$00 .... .@.. .... .@@. @... ..@. .@.. ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
874 fcb $6F,$6F,$60,$00 .... .... .... @@@@ .@@. .@.. @.@. ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
875 fcb $27,$86,$1E,$20 .... .@.. .... .@@. ...@ @... @@.@ ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
876 fcb $91,$24,$89,$00 .... .... .... .... @@@. @..@ .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
877 fcb $4A,$4A,$D0,$00 .... .... .... .... ..@. .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
878 fcb $44,$00,$00,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
879 * chars 29-2f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
880 fcb $24,$44,$20,$00 ..@. .@.. @..@ .@.. .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
881 fcb $42,$22,$40,$00 .@.. ..@. .@@. .@.. .... .... .... ...@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
882 fcb $96,$F6,$90,$00 .@.. ..@. @@@@ @@@. .... @@@@ .... ..@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
883 fcb $44,$E4,$40,$00 .@.. ..@. .@@. .@.. ..@. .... .@@. .@..
1e312b144f4d Major changes:
boisy
parents:
diff changeset
884 fcb $00,$02,$24,$00 ..@. .@.. @..@ .@.. ..@. .... .@@. @...
1e312b144f4d Major changes:
boisy
parents:
diff changeset
885 fcb $00,$F0,$00,$00 .... .... .... .... .@.. .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
886 fcb $00,$06,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
887 fcb $01,$24,$80,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
888 * chars 30-37
1e312b144f4d Major changes:
boisy
parents:
diff changeset
889 fcb $69,$BD,$60,$00 .@@. ..@. .@@. @@@. ..@. @@@@ .@@@ @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
890 fcb $26,$22,$70,$00 @..@ .@@. @..@ ...@ .@@. @... @... ...@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
891 fcb $69,$2C,$F0,$00 @.@@ ..@. ..@. .@@. @.@. @@@. @@@. ..@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
892 fcb $E1,$61,$E0,$00 @@.@ ..@. @@.. ...@ @@@@ ...@ @..@ .@..
1e312b144f4d Major changes:
boisy
parents:
diff changeset
893 fcb $26,$AF,$20,$00 .@@. .@@@ @@@@ @@@. ..@. @@@. .@@. .@..
1e312b144f4d Major changes:
boisy
parents:
diff changeset
894 fcb $F8,$E1,$E0,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
895 fcb $78,$E9,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
896 fcb $F1,$24,$40,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
897 * chars 38-3f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
898 fcb $69,$69,$60,$00 .@@. .@@. .... .... ..@. .... .@.. .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
899 fcb $69,$71,$60,$00 @..@ @..@ .... .... .@.. @@@@ ..@. @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
900 fcb $00,$40,$40,$00 .@@. .@@@ .@.. ..@. @... .... ...@ ..@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
901 fcb $00,$20,$24,$00 @..@ ...@ .... .... .@.. @@@@ ..@. ..@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
902 fcb $24,$84,$20,$00 .@@. .@@. .@.. ..@. ..@. .... .@.. ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
903 fcb $0F,$0F,$00,$00 .... .... .... .@.. .... .... .... ..@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
904 fcb $42,$12,$40,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
905 fcb $69,$22,$02,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
906 * chars 40-47
1e312b144f4d Major changes:
boisy
parents:
diff changeset
907 fcb $69,$BB,$87,$00 .@@. .@@. @@@. .@@@ @@@. @@@@ @@@@ .@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
908 fcb $69,$F9,$90,$00 @..@ @..@ @..@ @... @..@ @... @... @...
1e312b144f4d Major changes:
boisy
parents:
diff changeset
909 fcb $E9,$E9,$E0,$00 @.@@ @@@@ @@@. @... @..@ @@@. @@@. @.@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
910 fcb $78,$88,$70,$00 @.@@ @..@ @..@ @... @..@ @... @... @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
911 fcb $E9,$99,$E0,$00 @... @..@ @@@. .@@@ @@@. @@@@ @... .@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
912 fcb $F8,$E8,$F0,$00 .@@@ .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
913 fcb $F8,$E8,$80,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
914 fcb $78,$B9,$70,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
915 * chars 48-4f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
916 fcb $99,$F9,$90,$00 @..@ @@@. @@@@ @..@ @... @@@@ @..@ .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
917 fcb $E4,$44,$E0,$00 @..@ .@.. ..@. @.@. @... @@.@ @@.@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
918 fcb $F2,$2A,$40,$00 @@@@ .@.. ..@. @@.. @... @@.@ @.@@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
919 fcb $9A,$CA,$90,$00 @..@ .@.. @.@. @.@. @... @..@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
920 fcb $88,$88,$F0,$00 @..@ @@@. .@.. @..@ @@@@ @..@ @..@ .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
921 fcb $FD,$D9,$90,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
922 fcb $9D,$B9,$90,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
923 fcb $69,$99,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
924 * chars 50-57
1e312b144f4d Major changes:
boisy
parents:
diff changeset
925 fcb $E9,$E8,$80,$00 @@@. .@@. @@@. .@@@ @@@. @..@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
926 fcb $69,$9B,$70,$00 @..@ @..@ @..@ @... .@.. @..@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
927 fcb $E9,$EA,$90,$00 @@@. @..@ @@@. .@@. .@.. @..@ @..@ @@.@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
928 fcb $78,$61,$E0,$00 @... @.@@ @.@. ...@ .@.. @..@ .@@. @@.@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
929 fcb $E4,$44,$40,$00 @... .@@@ @..@ @@@. .@.. .@@. .@@. @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
930 fcb $99,$99,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
931 fcb $99,$96,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
932 fcb $99,$DD,$F0,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
933 * chars 58-5f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
934 fcb $99,$69,$90,$00 @..@ @..@ @@@@ @@@. .... .@@@ .@@. ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
935 fcb $99,$71,$E0,$00 @..@ @..@ ...@ @... @... ...@ @..@ ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
936 fcb $F1,$68,$F0,$00 .@@. .@@@ .@@. @... .@.. ...@ .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
937 fcb $E8,$88,$E0,$00 @..@ ...@ @... @... ..@. ...@ .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
938 fcb $08,$42,$10,$00 @..@ @@@. @@@@ @@@. ...@ .@@@ .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
939 fcb $71,$11,$70,$00 .... .... .... .... .... .... .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
940 fcb $69,$00,$00,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
941 fcb $00,$00,$0F,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
942 * chars 60-67
1e312b144f4d Major changes:
boisy
parents:
diff changeset
943 fcb $22,$00,$00,$00 ..@. .... @... .... ...@ .... ..@@ ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
944 fcb $07,$99,$70,$00 ..@. .@@@ @@@. .@@@ .@@@ .@@@ .@.. .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
945 fcb $8E,$99,$E0,$00 .... @..@ @..@ @... @..@ @.@. @@@@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
946 fcb $07,$88,$70,$00 .... @..@ @..@ @... @..@ @@.. .@.. @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
947 fcb $17,$99,$70,$00 .... .@@@ @@@. .@@@ .@@@ .@@@ .@.. .@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
948 fcb $07,$AC,$70,$00 .... .... .... .... .... .... .... ...@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
949 fcb $34,$F4,$40,$00 .... .... .... .... .... .... .... @@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
950 fcb $06,$99,$71,$E0 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
951 * chars 68-6f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
952 fcb $8E,$99,$90,$00 @... .@.. ..@. @... .@.. .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
953 fcb $40,$44,$40,$00 @@@. .... .... @.@. .@.. .@@@ .@@@ .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
954 fcb $20,$22,$22,$C0 @..@ .@.. ..@. @@.. .@.. @@.@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
955 fcb $8A,$CA,$90,$00 @..@ .@.. ..@. @.@. .@.. @@.@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
956 fcb $44,$44,$40,$00 @..@ .@.. ..@. @..@ .@.. @..@ @..@ .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
957 fcb $0E,$DD,$90,$00 .... .... ..@. .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
958 fcb $0E,$99,$90,$00 .... .... @@.. .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
959 fcb $06,$99,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
960 * chars 70-77
1e312b144f4d Major changes:
boisy
parents:
diff changeset
961 fcb $0E,$99,$E8,$80 .... .... .... .... .@.. .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
962 fcb $07,$99,$71,$10 @@@. .@@@ .@@@ .@@@ @@@@ @..@ @..@ @..@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
963 fcb $07,$88,$80,$00 @..@ @..@ @... @@.. .@.. @..@ @..@ @@.@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
964 fcb $07,$C3,$E0,$00 @..@ @..@ @... ..@@ .@.. @..@ .@@. @@.@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
965 fcb $4F,$44,$30,$00 @@@. .@@@ @... @@@. ..@@ .@@@ .@@. .@@.
1e312b144f4d Major changes:
boisy
parents:
diff changeset
966 fcb $09,$99,$70,$00 @... ...@ .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
967 fcb $09,$96,$60,$00 @... ...@ .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
968 fcb $09,$DD,$60,$00 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
969 * chars 78-7f
1e312b144f4d Major changes:
boisy
parents:
diff changeset
970 fcb $09,$66,$90,$00 .... .... .... ..@@ .@.. @@.. .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
971 fcb $09,$99,$71,$E0 @..@ @..@ @@@@ .@.. .@.. ..@. .@.@ @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
972 fcb $0F,$24,$F0,$00 .@@. @..@ ..@. @@.. .... ..@@ @.@. @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
973 fcb $34,$C4,$30,$00 .@@. @..@ .@.. .@.. .@.. ..@. .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
974 fcb $44,$04,$40,$00 @..@ .@@@ @@@@ ..@@ .@.. @@.. .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
975 fcb $C2,$32,$C0,$00 .... ...@ .... .... .... .... .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
976 fcb $05,$A0,$00,$00 .... @@@. .... .... .... .... .... @@@@
1e312b144f4d Major changes:
boisy
parents:
diff changeset
977 fcb $FF,$FF,$FF,$F0 .... .... .... .... .... .... .... ....
1e312b144f4d Major changes:
boisy
parents:
diff changeset
978
1e312b144f4d Major changes:
boisy
parents:
diff changeset
979 emod
1e312b144f4d Major changes:
boisy
parents:
diff changeset
980 eom equ *
1e312b144f4d Major changes:
boisy
parents:
diff changeset
981 end