annotate level1/modules/ccio.asm @ 1349:b9df6b3f2eef

Rolled Level 2 unlink into here.
author boisy
date Wed, 17 Sep 2003 20:10:46 +0000
parents 63bfe1e5c5f4
children e19a38f50c3a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1 ********************************************************************
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
2 * CCIO - OS-9 Level One V2 CoCo I/O driver
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
3 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
4 * $Id$
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
5 *
1340
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
6 * Edt/Rev YYYY/MM/DD Modified by
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
7 * Comment
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 * ------------------------------------------------------------------
1340
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
9 * 12 ????/??/?? ???
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
10 * From Tandy OS-9 Level One VR 02.00.00.
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
11 *
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
12 * 12r1 2003/09/11 Rodney V. Hamilton
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
13 * Modified key table to include $7F, $1D, $1E and $1F codes.
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15 nam CCIO
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16 ttl OS-9 Level One V2 CoCo I/O driver
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
17
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18 ifp1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19 use defsfile
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
20 use scfdefs
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21 endc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 tylg set Drivr+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
24 atrv set ReEnt+rev
1340
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
25 rev set $01
201
668388823050 Fixed headers to be consistent
boisy
parents: 164
diff changeset
26 edition set 12
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28 mod eom,name,tylg,atrv,start,size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
30 rmb V.SCF
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 u001D rmb 7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 u0024 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 u0025 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 u0026 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 u0028 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 u0029 rmb 4
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
37 ScreenX rmb 1
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
38 ScreenY rmb 1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 u002F rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40 u0030 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 u0031 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 u0032 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 u0033 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44 u0035 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 u0037 rmb 9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 u0040 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 u0042 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 u0044 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 u0045 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 u0047 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 u0048 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 u0049 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
53 u004B rmb 5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
54 u0050 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55 u0051 rmb 1
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
56 WrChar rmb 1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
57 u0053 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58 u0055 rmb 6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 u005B rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 u005D rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 u005F rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
62 u0060 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 u0061 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64 u0063 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65 u0065 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
66 u0066 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67 u0067 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 u0068 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 u0069 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 u006A rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 u006B rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 u006C rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 u006D rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 u006E rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 u006F rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 u0070 rmb 1
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
77 trulocas rmb 1
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
78 SubEntry rmb 6
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
79 IBufHead rmb 1
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
80 IBufTail rmb 1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81 u007A rmb 128
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 size equ .
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
84 fcb UPDAT.+EXEC.
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
85
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 name fcs /CCIO/
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 fcb edition
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89 start lbra Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
90 lbra Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91 lbra Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 lbra GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93 lbra SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 lbra Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 * Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 * Y = address of device descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
101 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
103 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
104 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106 Init stu >D.KbdSta store devmem ptr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
107 clra
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
108 leax <u001D,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
109 ldb #$5D
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
110 L002E sta ,x+ clear mem
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
111 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
112 bne L002E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
113 coma A = $FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
114 comb B = $FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
115 stb <u0050,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
116 std <u005F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
117 std <u0061,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
118 lda #$3C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
119 sta <u0051,u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
120 leax >AltIRQ,pcr get IRQ routine ptr
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
121 stx >D.AltIRQ store in AltIRQ
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
122 leax >L03CC,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
123 stx <u005B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
124 leax >L050F,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
125 stx <u005D,u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
126 ldd <IT.PAR,y get parity and baud
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
127 lbra L05CE process them
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
128
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
129 * Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
130 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
131 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
132 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
133 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
134 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
135 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
136 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
137 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
138 Term pshs cc
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
139 orcc #IRQMask mask interrupts
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
140 ldx >D.Clock get clock vector
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
141 stx >D.AltIRQ and put back in AltIRQ
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
142 puls pc,cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
143
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
144 * Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
145 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
146 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
147 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
148 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
149 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
150 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
151 * A = character read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
152 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
153 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
154 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
155 Read leax <u007A,u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
156 ldb <IBufTail,u get tail pointer
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
157 orcc #IRQMask mask IRQ
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
158 cmpb <IBufHead,u same as head pointer
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
159 beq Put2Bed if so, buffer is empty, branch to sleep
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
160 abx X now points to curr char
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
161 lda ,x get char
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
162 bsr L009D
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
163 stb <IBufTail,u
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
164 andcc #^(IRQMask+Carry) unmask IRQ
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
165 rts
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
166
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
167 Put2Bed lda V.BUSY,u get calling process ID
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
168 sta V.WAKE,u store in V.WAKE
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
169 andcc #^IRQMask clear interrupts
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
170 ldx #$0000
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
171 os9 F$Sleep sleep forever
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
172 clr V.WAKE,u clear wake
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
173 ldx <D.Proc get pointer to current proc desc
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
174 ldb <P$Signal,x get signal recvd
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
175 beq Read branch if no signal
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
176 cmpb #S$Window window signal?
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
177 bcc Read branch if so
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
178 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
179 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
180 L009D incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
181 cmpb #$7F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
182 bls L00A3
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
183 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
184 L00A3 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
185
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
186 * IRQ routine for keyboard
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
187 AltIRQ ldu >D.KbdSta get keyboard static
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
188 ldb <u0032,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
189 beq L00B7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
190 ldb <u002F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
191 beq L00B7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
192 lda <u0030,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
193 lbsr L03CC
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
194 L00B7 ldx #PIA0Base
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
195 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
196 clrb
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
197 std <u006A,u clear
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
198 bsr L00E8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
199 bne L00CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
200 clr $02,x
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
201 lda ,x get byte from PIA
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
202 coma complement
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
203 anda #$7F strip off hi bit
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
204 bne L00F1 branch if any bit set
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
205 L00CC clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
206 clrb
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
207 std <u006E,u clear
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
208 coma A = $FF
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
209 tst <u006D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
210 bne L00DA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
211 sta <u005F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
212 L00DA stb <u006D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
213 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
214 sta <u0060,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
215 std <u0061,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
216 L00E4 jmp [>D.Clock]
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
217 L00E8 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
218 stb $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
219 ldb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
220 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
221 andb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
222 rts
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
223
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
224 L00F1 bsr L015C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
225 bmi L00CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
226 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
227 bsr L00E8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
228 bne L00CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
229 cmpa <u006F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
230 bne L010E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
231 ldb <u0051,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
232 beq L010A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
233 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
234 L0105 stb <u0051,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
235 bra L00E4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
236 L010A ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
237 bra L011A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
238 L010E sta <u006F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
239 ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
240 tst <u006B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
241 bne L0105
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
242 ldb #$3C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
243 L011A stb <u0051,u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
244 ldb <IBufHead,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
245 leax <u007A,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
246 abx
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
247 lbsr L009D
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
248 cmpb <IBufTail,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
249 beq L012F
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
250 stb <IBufHead,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
251 L012F sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
252 beq L014F
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
253 cmpa V.PCHR,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
254 bne L013F
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
255 ldx V.DEV2,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
256 beq L014F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
257 sta $08,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
258 bra L014F
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
259 L013F ldb #S$Intrpt
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
260 cmpa V.INTR,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
261 beq L014B
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
262 ldb #S$Abort
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
263 cmpa V.QUIT,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
264 bne L014F
257
c93ecc262253 More source enhancements
boisy
parents: 256
diff changeset
265 L014B lda V.LPRC,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
266 bra L0153
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
267 L014F ldb #S$Wake
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
268 lda V.WAKE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
269 L0153 beq L0158
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
270 os9 F$Send
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
271 L0158 clr V.WAKE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
272 bra L00E4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
273 L015C clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
274 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
275 std <u0066,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
276 std <u0068,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
277 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
278 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
279 std <u0063,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
280 sta <u0065,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
281 deca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
282 sta $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
283 L016F lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
284 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
285 anda #$7F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
286 beq L0183
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
287 ldb #$FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
288 L0178 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
289 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
290 bcc L017F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
291 lbsr L0221
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
292 L017F cmpb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
293 bcs L0178
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
294 L0183 inc <u0068,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
295 orcc #Carry
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
296 rol $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
297 bcs L016F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
298 lbsr L0289
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
299 bmi L020A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
300 cmpa <u005F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
301 bne L0199
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
302 inc <u006B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
303 L0199 sta <u005F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
304 beq L01B9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
305 suba #$1A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
306 bhi L01B9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
307 adda #$1A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
308 ldb <u0067,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
309 bne L01E9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
310 adda #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
311 ldb <u0066,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
312 eorb <u0050,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
313 andb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
314 bne L01E9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
315 adda #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
316 bra L01E9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
317 L01B9 ldb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
318 mul
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
319 lda <u0066,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
320 beq L01C4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
321 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
322 bra L01CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
323 L01C4 lda <u0067,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
324 beq L01CB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
325 addb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
326 L01CB lda <u006C,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
327 beq L01D4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
328 cmpb #$11
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
329 ble L0208
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
330 L01D4 cmpb #$4C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
331 blt L01DD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
332 inc <u0069,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
333 subb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
334 L01DD pshs x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
335 leax >L0321,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
336 lda b,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
337 puls x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
338 bmi L01FD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
339 L01E9 ldb <u0069,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
340 beq L01FA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
341 cmpa #$3F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
342 bls L01F8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
343 cmpa #$5B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
344 bcc L01F8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
345 ora #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
346 L01F8 ora #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
347 L01FA andcc #^Negative
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
348 rts
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
349
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
350 L01FD inc <u006D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
351 ldb <u006B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
352 bne L0208
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
353 com <u0050,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
354 L0208 orcc #Negative
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
355 L020A rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
356 L020B pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
357 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
358 orcc #Carry
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
359 inca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
360 L0211 rolb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
361 deca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
362 bne L0211
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
363 bra L0219
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
364 L0217 pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
365 L0219 orb <u006A,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
366 stb <u006A,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
367 puls pc,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
368 L0221 pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
369 cmpb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
370 bne L0230
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
371 lda <u0068,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
372 cmpa #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
373 blt L0230
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
374 bsr L020B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
375 L0230 lslb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
376 lslb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
377 lslb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
378 addb <u0068,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
379 beq L025D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
380 cmpb #$33
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
381 bne L0243
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
382 inc <u0069,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
383 ldb #$04
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
384 bra L0219
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
385 L0243 cmpb #$31
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
386 beq L024B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
387 cmpb #$34
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
388 bne L0252
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
389 L024B inc <u0067,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
390 ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
391 bra L0219
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
392 L0252 cmpb #$37
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
393 bne L0262
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
394 com <u0066,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
395 ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
396 bra L0219
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
397 L025D ldb #$04
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
398 bsr L0217
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
399 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
400 L0262 pshs x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
401 leax <u0063,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
402 bsr L026D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
403 puls x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
404 puls pc,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
405 L026D pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
406 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
407 bpl L0279
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
408 stb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
409 ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
410 puls pc,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
411 L0279 lda $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
412 bpl L0283
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
413 stb $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
414 ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
415 puls pc,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
416 L0283 stb $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
417 ldb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
418 puls pc,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
419 L0289 pshs y,x,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
420 bsr L02EE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
421 ldb <u006E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
422 beq L02C5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
423 leax <u0060,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
424 pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
425 L0297 leay <u0063,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
426 ldb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
427 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
428 bmi L02B6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
429 L02A0 cmpa ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
430 bne L02AA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
431 clr ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
432 com ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
433 bra L02B6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
434 L02AA leay $01,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
435 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
436 bne L02A0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
437 lda #$FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
438 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
439 dec <u006E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
440 L02B6 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
441 dec ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
442 bne L0297
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
443 leas $01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
444 ldb <u006E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
445 beq L02C5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
446 bsr L0309
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
447 L02C5 leax <u0063,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
448 lda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
449 L02CA ldb ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
450 bpl L02DE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
451 deca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
452 bne L02CA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
453 ldb <u006E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
454 beq L02EA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
455 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
456 leax <u0060,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
457 lda b,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
458 bra L02E8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
459 L02DE tfr b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
460 leax <u0060,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
461 bsr L026D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
462 stb <u006E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
463 L02E8 puls pc,y,x,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
464 L02EA orcc #Negative
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
465 puls pc,y,x,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
466 L02EE ldd <u0066,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
467 bne L0301
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
468 lda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
469 leax <u0063,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
470 L02F8 ldb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
471 beq L0302
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
472 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
473 deca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
474 bne L02F8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
475 L0301 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
476 L0302 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
477 stb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
478 inc <u0069,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
479 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
480 L0309 leax <u0060,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
481 bsr L0314
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
482 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
483 bsr L0314
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
484 leax -$01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
485 L0314 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
486 bpl L0320
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
487 ldb $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
488 bmi L0320
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
489 sta $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
490 stb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
491 L0320 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
492
1340
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
493 L0321 fcb $00,$40,$60 ALT @ `
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
494 fcb $0c,$1c,$13 UP
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
495 fcb $0a,$1a,$12 DOWN
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
496 fcb $08,$18,$10 LEFT
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
497 fcb $09,$19,$11 RIGHT
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
498 fcb $20,$20,$20 SPACEBAR
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
499 fcb $30,$30,$81 0 0 capslock
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
500 fcb $31,$21,$7c 1 ! |
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
501 fcb $32,$22,$00 2 " null
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
502 fcb $33,$23,$7e 3 # ~
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
503 fcb $34,$24,$1d 4 $ RS (was null)
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
504 fcb $35,$25,$1e 5 % GS (was null)
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
505 fcb $36,$26,$1f 6 & US (was null)
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
506 fcb $37,$27,$5e 7 ' ^
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
507 fcb $38,$28,$5b 8 ( [
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
508 fcb $39,$29,$5d 9 ) ]
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
509 fcb $3a,$2a,$00 : * null
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
510 fcb $3b,$2b,$7f ; + del (was null)
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
511 fcb $2c,$3c,$7b , < {
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
512 fcb $2d,$3d,$5f - = _
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
513 fcb $2e,$3e,$7d . > }
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
514 fcb $2f,$3f,$5c / ? \
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
515 fcb $0d,$0d,$0d ENTER key
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
516 fcb $00,$00,$00 CLEAR key
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
517 fcb $05,$03,$1b BREAK key
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
518 fcb $31,$33,$35 F1 key
63bfe1e5c5f4 Rodney added several additional codes that can be generated from the
boisy
parents: 1287
diff changeset
519 fcb $32,$34,$36 F2 key
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
520
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
521 * Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
522 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
523 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
524 * A = character to write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
525 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
526 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
527 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
528 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
529 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
530 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
531 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
532 Write ldb <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
533 bne L03A3
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
534 sta <WrChar,u
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
535 cmpa #C$SPAC
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
536 bcc L038E
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
537 cmpa #$1E escape sequence
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
538 bcc L03B8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
539 cmpa #$0F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
540 lbcc L063B
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
541 cmpa #C$BELL
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
542 lbeq Ding ring bell
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
543 L038E lda <u0053,u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
544 L0391 ldb #$03 offset into subroutine
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
545 L0393 leax <SubEntry,u get subroutine entry pointer in X
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
546 ldx a,x
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
547 beq NoIOMod branch if no module
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
548 lda <WrChar,u get character to write
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
549 L039D jmp b,x call i/o subroutine
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
550 NoIOMod comb
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
551 ldb #E$MNF
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
552 rts
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
553
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
554 L03A3 cmpb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
555 beq L03B0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
556 sta <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
557 clr <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
558 jmp [<u0026,u]
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
559 L03B0 sta <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
560 dec <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
561 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
562 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
563 L03B8 beq L03C5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
564 leax <L03C7,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
565 L03BD ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
566 L03BF stx <u0026,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
567 stb <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
568 L03C5 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
569 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
570 L03C7 ldb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
571 lbra L055F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
572 L03CC pshs x,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
573 stb <u002F,u
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
574 lda >PIA1Base+2
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
575 anda #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
576 ora ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
577 tstb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
578 bne L03DE
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
579 ora <trulocas,u
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
580 L03DE sta >PIA1Base+2
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
581 sta <u0030,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
582 tstb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
583 bne L03F5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
584 stb >$FFC0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
585 stb >$FFC2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
586 stb >$FFC4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
587 lda <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
588 bra L0401
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
589 L03F5 stb >$FFC0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
590 stb >$FFC3
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
591 stb >$FFC5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
592 lda <u0033,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
593 L0401 ldb #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
594 ldx #$FFC6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
595 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
596 L0407 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
597 bcs L0410
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
598 sta ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
599 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
600 bra L0414
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
601 L0410 leax $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
602 sta ,x+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
603 L0414 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
604 bne L0407
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
605 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
606 puls pc,x
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
607
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
608 GRFO fcs /GRFO/
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
609 CO32 fcs /CO32/
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
610 CO80 fcs /CO80/
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
611
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
612 * GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
613 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
614 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
615 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
616 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
617 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
618 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
619 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
620 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
621 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
622 *
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
623 GetStat sta <WrChar,u
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
624 cmpa #SS.Ready
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
625 bne L0439
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
626 lda <IBufTail,u get buff tail ptr
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
627 suba <IBufHead,u Num of chars ready in A
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
628 lbeq L0660 branch if empty
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
629 SSEOF clrb
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
630 rts
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
631 L0439 cmpa #SS.EOF
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
632 beq SSEOF
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
633 ldx PD.RGS,y
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
634 cmpa #SS.Joy
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
635 beq SSJOY
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
636 cmpa #SS.ScSiz
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
637 beq SSSCSIZ
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
638 cmpa #SS.KySns
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
639 beq SSKYSNS
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
640 cmpa #SS.DStat
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
641 lbeq SSDSTAT
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
642 ldb #$06
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
643 lbra L055F
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
644
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
645 SSKYSNS ldb <u006A,u get key sense info
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
646 stb R$A,x put in caller's A
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
647 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
648 rts
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
649
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
650 SSSCSIZ clra
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
651 ldb <ScreenX,u
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
652 std R$X,x
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
653 ldb <ScreenY,u
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
654 std R$Y,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
655 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
656 rts
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
657
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
658 * Get joytsick values
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
659 SSJOY pshs y,cc
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
660 orcc #IRQMask mask interrupts
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
661 lda #$FF
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
662 sta >PIA0Base+2
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
663 ldb >PIA0Base
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
664 ldy R$X,x get joystick number to poll
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
665 bne L0481
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
666 andb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
667 bne L0485
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
668 bra L0486
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
669 L0481 andb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
670 beq L0486
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
671 L0485 clra
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
672 L0486 sta R$A,x
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
673 lda >PIA0Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
674 ora #$08
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
675 ldy R$X,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
676 bne L0494
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
677 anda #$F7
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
678 L0494 sta >PIA0Base+3
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
679 lda >PIA0Base+1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
680 anda #$F7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
681 bsr L04B3
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
682 std R$X,x
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
683 lda >PIA0Base+1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
684 ora #$08
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
685 bsr L04B3
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
686 pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
687 ldd #$003F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
688 subd ,s++
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
689 std R$Y,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
690 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
691 puls pc,y,cc
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
692
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
693 L04B3 sta >PIA0Base+1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
694 lda #$7F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
695 ldb #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
696 bra L04C7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
697 L04BC lsrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
698 cmpb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
699 bhi L04C7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
700 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
701 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
702 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
703 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
704 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
705 L04C7 pshs b
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
706 sta >PIA1Base
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
707 tst >PIA0Base
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
708 bpl L04D5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
709 adda ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
710 bra L04BC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
711 L04D5 suba ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
712 bra L04BC
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
713
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
714 SSDSTAT lbsr L065B
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
715 bcs L050E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
716 ldd <u0045,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
717 bsr L050F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
718 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
719 andb ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
720 L04E7 bita #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
721 bne L04F6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
722 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
723 lsrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
724 tst <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
725 bmi L04E7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
726 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
727 lsrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
728 bra L04E7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
729 L04F6 pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
730 ldb <u004B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
731 andb #$FC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
732 orb ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
733 ldx $06,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
734 stb $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
735 ldd <u0045,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
736 std $06,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
737 ldd <u0033,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
738 std $04,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
739 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
740 L050E rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
741 L050F pshs y,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
742 ldb <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
743 bpl L0517
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
744 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
745 L0517 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
746 lsra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
747 pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
748 ldb #$BF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
749 subb $02,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
750 lda #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
751 mul
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
752 addb ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
753 adca #$00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
754 ldy <u0033,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
755 leay d,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
756 lda ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
757 sty ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
758 anda <u0044,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
759 ldx <u0042,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
760 lda a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
761 puls pc,y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
762
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
763 * SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
764 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
765 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
766 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
767 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
768 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
769 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
770 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
771 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
772 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
773 *
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
774 SetStat sta <WrChar,u
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
775 ldx PD.RGS,y
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
776 cmpa #SS.ComSt
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
777 lbeq SSCOMST
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
778 cmpa #SS.AAGBf
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
779 beq SSAAGBF
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
780 cmpa #SS.SLGBf
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
781 beq SSSLGBF
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
782 cmpa #SS.KySns
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
783 bne L055D
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
784 ldd R$X,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
785 beq L0558
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
786 ldb #$FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
787 L0558 stb <u006C,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
788 L055B clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
789 L055C rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
790 L055D ldb #$09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
791 L055F pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
792 lda <u0053,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
793 lbsr L0393
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
794 puls a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
795 bcc L055B
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
796 tst <SubEntry,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
797 beq L055C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
798 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
799 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
800 lbra L0393
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
801
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
802 * Reserve an additional graphics buffer (up to 2)
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
803 SSAAGBF ldb <u0031,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
804 lbeq L0660
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
805 pshs b get buffer number
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
806 leay <u0037,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
807 ldd ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
808 beq L058E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
809 leay $02,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
810 inc ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
811 ldd ,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
812 bne L059E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
813 L058E lbsr L0685
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
814 bcs L05A1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
815 std ,y
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
816 std R$X,x
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
817 puls b get buffer number off stack
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
818 clra clear hi byte of D
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
819 std R$Y,x and put in caller's Y
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
820 clrb call is ok
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
821 rts and return
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
822 L059E ldb #E$BMode
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
823 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
824 L05A1 puls pc,a
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
825
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
826 * Select a graphics buffer
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
827 SSSLGBF ldb <u0031,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
828 lbeq L0660
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
829 ldd R$Y,x get buffer number from caller
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
830 cmpd #$0002 compare against high
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
831 bhi BadMode branch if error
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
832 leay <u0035,u
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
833 lslb multiply by 2
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
834 ldd b,y get pointer
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
835 beq BadMode branch if error
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
836 std <u0033,u else save in current
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
837 ldd R$X,x get select flag
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
838 beq L05C3 if zero, do nothing
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
839 ldb #$01 else set display flag
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
840 L05C3 stb <u0032,u save display flag
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
841 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
842 rts
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
843 BadMode comb
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
844 ldb #E$BMode
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
845 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
846
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
847 SSCOMST ldd R$Y,x Get caller's Y
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
848 L05CE bita #$02 CO80?
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
849 bne GoCO80 branch if so
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
850 ldb #$10 assume true lower case TRUE
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
851 bita #$01 true lowercase bit set?
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
852 bne GoCO32 branch if so
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
853 clrb true lower case FALSE
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
854 GoCO32 stb <trulocas,u save flag for later
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
855 lda #$02
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
856 ldx #$2010 32x16
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
857 pshs u,y,x,a
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
858 leax >CO32,pcr
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
859 bra L05F4
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
860 GoCO80 lda #$04
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
861 ldx #$5018 80x24
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
862 pshs u,y,x,a
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
863 leax >CO80,pcr
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
864 L05F4 bsr L0601
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
865 puls u,y,x,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
866 bcs L0600
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
867 stx <ScreenX,u save screen size
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
868 sta <u0053,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
869 L0600 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
870 L0601 bita <u0070,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
871 beq L0608
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
872 L0606 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
873 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
874 L0608 pshs y,x,a
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
875 lbsr LinkSub
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
876 bcc L061F branch if link was successful
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
877 ldx $01,s get pointer to name on stack
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
878 pshs u
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
879 os9 F$Load try to load subroutine I/O module
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
880 puls u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
881 bcc L061F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
882 puls y,x,a
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
883 lbra NoIOMod
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
884 L061F leax <SubEntry,u
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
885 lda ,s get A off stack
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
886 sty a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
887 puls y,x,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
888 ldb #$00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
889 lbra L0393
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
890
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
891 * Link to subroutine
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
892 LinkSub pshs u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
893 lda #Systm+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
894 os9 F$Link
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
895 puls pc,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
896
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
897 L0637 fdb $0055,$aaff
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
898
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
899 L063B cmpa #$15
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
900 bcc L0664
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
901 cmpa #$0F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
902 beq L06B4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
903 suba #$10
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
904 bsr L065B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
905 bcs L0663
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
906 leax <L0651,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
907 lsla
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
908 ldd a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
909 jmp d,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
910
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
911 L0651 fdb $0140,$00fd,$0111,$0160,$016f
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
912
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
913 L065B ldb <u0031,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
914 bne L0606
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
915 L0660 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
916 ldb #E$NotRdy
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
917 L0663 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
918 L0664 bsr L065B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
919 bcs L0663
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
920 ldx <SubEntry,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
921 bne L0681
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
922 pshs y,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
923 bne L067F
164
20f0878b4a7f Added more verbosity to source
boisy
parents: 0
diff changeset
924 leax >GRFO,pcr
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
925 bsr LinkSub
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
926 bcc L067B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
927 puls pc,y,a
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
928 L067B sty <SubEntry,u
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
929 L067F puls y,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
930 L0681 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
931 lbra L0391
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
932 L0685 pshs u
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
933 ldd #6144+256
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
934 os9 F$SRqMem
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
935 bcc L0691
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
936 puls pc,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
937 L0691 tfr u,d
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
938 puls u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
939 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
940 bita #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
941 beq L069F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
942 adda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
943 bra L06A1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
944 L069F addb #$18
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
945 L06A1 pshs u,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
946 tfr b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
947 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
948 tfr d,u
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
949 ldd #256
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
950 os9 F$SRtMem
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
951 puls u,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
952 bcs L06B3
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
953 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
954 L06B3 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
955 L06B4 leax <L06BC,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
956 ldb #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
957 lbra L03BF
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
958
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
959 L06BC ldb <u0031,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
960 bne L06D1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
961 bsr L0685
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
962 bcs L06EF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
963 std <u0033,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
964 std <u0035,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
965 inc <u0031,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
966 lbsr L07B1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
967 L06D1 lda <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
968 sta <u004B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
969 anda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
970 leax >L0637,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
971 lda a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
972 sta <u0047,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
973 sta <u0048,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
974 lda <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
975 cmpa #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
976 bls L06F0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
977 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
978 ldb #E$BMode
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
979 L06EF rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
980 L06F0 tsta
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
981 beq L0710
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
982 ldd #$C003
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
983 std <u0049,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
984 lda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
985 sta <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
986 lda #$E0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
987 ldb <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
988 andb #$08
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
989 beq L0709
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
990 lda #$F0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
991 L0709 ldb #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
992 leax <L0742,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
993 bra L072D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
994 L0710 ldd #$8001
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
995 std <u0049,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
996 lda #$FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
997 tst <u0047,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
998 beq L0723
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
999 sta <u0047,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1000 sta <u0048,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1001 L0723 sta <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1002 lda #$F0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1003 ldb #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1004 leax <L0746,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1005 L072D stb <u0044,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1006 stx <u0042,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1007 ldb <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1008 andb #$04
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1009 lslb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1010 pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1011 ora ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1012 ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1013 lbra L03CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1014
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1015 L0742 fcb $c0,$30,$0c,$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1016 L0746 fcb $80,$40,$20,$10,$08,$04,$02,$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1017 fcb $30,$8C,$03,$16,$fC,$69,$6f,$C8,$28
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1018 fcb $A6,$C8,$24,$2B,$03,$6C,$C8,$28,$16
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1019 fcb $FF,$6F,$30,$C8,$35,$10,$8E,$00,$00
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1020 fcb $C6,$03,$34,$44
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1021
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
1022 L076D ldd #6144 size of graphics screen
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1023 ldu ,x++
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1024 beq L077A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1025 sty -$02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1026 os9 F$SRtMem
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1027 L077A dec ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1028 bgt L076D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1029 ldu ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1030 beq L0788
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
1031 ldd #512
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1032 os9 F$SRtMem
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1033 L0788 puls u,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1034 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1035 sta <u0031,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1036 lbra L03CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1037 leax <L0797,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1038 lbra L03BD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1039 L0797 lda <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1040 tst <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1041 bpl L07A7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1042 ldb #$FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1043 anda #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1044 beq L07B1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1045 bra L07B2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1046 L07A7 anda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1047 leax >L0637,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1048 ldb a,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1049 bra L07B2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1050 L07B1 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1051 L07B2 ldx <u0033,u
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
1052 leax >6144+1,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1053 L07B9 stb ,-x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1054 cmpx <u0033,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1055 bhi L07B9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1056 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1057 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1058 std <u0045,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1059 rts
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
1060
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
1061 * Ding - tickle CoCo's PIA to emit a sound
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
1062 Ding pshs b,a
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1063 lda >PIA0Base+1
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1064 ldb >PIA0Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1065 pshs b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1066 anda #$F7
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1067 andb #$F7
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1068 sta >PIA0Base+1
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1069 stb >PIA0Base+3
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1070 lda >PIA1Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1071 pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1072 ora #$08
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1073 sta >PIA1Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1074 ldb #$0A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1075 L07E6 lda #$FE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1076 bsr L0800
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1077 lda #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1078 bsr L0800
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1079 decb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1080 bne L07E6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1081 puls a
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1082 sta >PIA1Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1083 puls b,a
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1084 sta >PIA0Base+1
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1085 stb >PIA0Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1086 puls pc,b,a
307
1580bbd1e2fc Added more comments and source symbolics in ccio.asm
boisy
parents: 257
diff changeset
1087
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 317
diff changeset
1088 L0800 sta >PIA1Base
317
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
1089 * some type of settle delay
e6dcf1ac92b2 Modified ccio.asm for better comments, init.asm simplified
boisy
parents: 307
diff changeset
1090 lda #128
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1091 L0805 inca
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1092 bne L0805
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1093 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1094
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1095 emod
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1096 eom equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
1097 end