annotate level1/modules/aciapak.asm @ 1287:10957d54bf16

Made all modules rev 0
author boisy
date Sat, 30 Aug 2003 20:16:51 +0000
parents 4e235f213651
children
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 * ACIAPAK - RS-232 Pak 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 *
1287
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
6 * Edt/Rev YYYY/MM/DD Modified by
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
7 * Comment
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
8 * ------------------------------------------------------------------
1287
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
9 * 10 1985/??/??
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
10 * From Tandy OS-9 Level One VR 02.00.00
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
11
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
12 nam ACIAPAK
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
13 ttl RS-232 Pak driver
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
14
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
15 * Disassembled 98/08/23 20:25:56 by Disasm v1.6 (C) 1988 by RML
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
16
1287
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
17 IFP1
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
18 use defsfile
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
19 use scfdefs
1287
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
20 ENDC
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
21
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
22 tylg set Drivr+Objct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
23 atrv set ReEnt+rev
1287
10957d54bf16 Made all modules rev 0
boisy
parents: 1213
diff changeset
24 rev set $00
201
668388823050 Fixed headers to be consistent
boisy
parents: 0
diff changeset
25 edition set 10
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
26
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
27 mod eom,name,tylg,atrv,start,size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
28
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
29 rmb V.SCF SCF storage requirements
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
30 u001D rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
31 u001E rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
32 u001F rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
33 u0020 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
34 u0021 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
35 u0022 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
36 u0023 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
37 u0024 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
38 u0025 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
39 u0027 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
40 u0028 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
41 u0029 rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
42 u002A rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
43 u002B rmb 1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
44 orgDFIRQ rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
45 u002E rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
46 u0030 rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
47 u0032 rmb 25
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
48 u004B rmb 34
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
49 u006D rmb 17
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
50 u007E rmb 2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
51 u0080 rmb 128
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
52 size equ .
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
53
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
54 fcb UPDAT.
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
55
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
56 name fcs /ACIAPAK/
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
57 fcb edition
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
58
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
59 start lbra Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
60 lbra Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
61 lbra Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
62 lbra GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
63 lbra SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
64 lbra Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
65
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
66 IRQPckt fcb $00,$80,$0A
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
67
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
68 * Driver supplied D.FIRQ routine
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
69 FIRQRtn tst ,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
70 bmi L003B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
71 leas -$01,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
72 pshs y,x,dp,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
73 lda $08,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
74 stu $07,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
75 ora #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
76 pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
77 L003B jmp [>D.SvcIRQ]
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
78
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
79 * Init
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
80 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
81 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
82 * Y = address of device descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
83 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
84 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
85 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
86 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
87 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
88 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
89 Init ldx V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
90 stb $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
91 ldd <IT.COL,y get column size
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
92 std <u002A,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
93 ldd <IT.PAR,y get parity/baud rate
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
94 lbsr L01CF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
95 ldd V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
96 addd #$0001
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
97 leax >IRQPckt,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
98 leay >L024E,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
99 os9 F$IRQ
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
100 bcs L0085
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
101 pshs cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
102 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
103 ldd <D.FIRQ get current D.FIRQ vector
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
104 std <orgDFIRQ,u save it off locally
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
105 leax >FIRQRtn,pcr get our D.FIRQ routine
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
106 stx <D.FIRQ and put it in system global vector
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 256
diff changeset
107 lda >PIA1Base+3
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
108 anda #$FC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
109 ora #$01
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 256
diff changeset
110 sta >PIA1Base+3
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 256
diff changeset
111 lda >PIA1Base+2
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
112 puls cc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
113 lda #$03
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
114 sta >MPI.Slct
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
115 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
116 L0085 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
117
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
118 L0086 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
119 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
120 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
121 lda $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
122 ldb $01,x
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 256
diff changeset
123 ldb >PIA1Base+2
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
124 ldb $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
125 bmi L00FB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
126 lda #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
127 sta <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
128 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
129 andb #$60
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
130 std <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
131 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
132 std <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
133 std <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
134 sta <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
135 std <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
136 andcc #^IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
137 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
138
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
139 * Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
140 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
141 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
142 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
143 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
144 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
145 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
146 * A = character read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
147 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
148 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
149 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
150 L00B2 bsr L00FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
151 Read lda <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
152 ble L00CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
153 ldb <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
154 cmpb #$0A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
155 bhi L00CC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
156 ldb V.XON,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
157 orb #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
158 stb <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
159 ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
160 lbsr L037D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
161 L00CC tst <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
162 bne L00FB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
163 ldb <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
164 leax <u002E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
165 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
166 cmpb <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
167 beq L00B2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
168 abx
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
169 lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
170 dec <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
171 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
172 cmpb #$4F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
173 bls L00EA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
174 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
175 L00EA stb <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
176 ldb V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
177 beq L015E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
178 stb <PD.ERR,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
179 clr V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
180 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
181 ldb #E$Read
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
182 bra L015F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
183 L00FB comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
184 ldb #E$NotRdy
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
185 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
186 L00FF pshs x,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
187 lda V.BUSY,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
188 sta V.WAKE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
189 andcc #^IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
190 ldx #$0000
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
191 os9 F$Sleep
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
192 ldx <D.Proc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
193 ldb <P$Signal,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
194 beq L0118
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
195 cmpb #S$Intrpt
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
196 bls L012E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
197 L0118 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
198 lda P$State,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
199 bita #Condem
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
200 bne L012E
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
201 ldb #E$HangUp
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
202 lda V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
203 bita #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
204 bne L0129
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
205 puls pc,x,b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
206 L0129 inc <PD.PST,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
207 clr V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
208 L012E leas $06,s
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
209 coma
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
210 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
211
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
212 * Write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
213 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
214 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
215 * A = character to write
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
216 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
217 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
218 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
219 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
220 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
221 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
222 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
223 L0132 bsr L00FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
224 Write leax <u007E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
225 ldb <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
226 abx
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
227 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
228 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
229 cmpb #$81
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
230 bls L0143
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
231 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
232 L0143 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
233 cmpb <u0021,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
234 beq L0132
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
235 stb <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
236 lda <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
237 beq L015E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
238 anda #$FD
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
239 sta <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
240 bne L015E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
241 ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
242 lbsr L037D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
243 L015E clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
244 L015F andcc #^IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
245 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
246
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
247 * GetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
248 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
249 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
250 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
251 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
252 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
253 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
254 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
255 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
256 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
257 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
258 GetStat ldx PD.RGS,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
259 cmpa #SS.Ready
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
260 bne L0171
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
261 ldb <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
262 beq L00FB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
263 stb R$B,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
264 L016F clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
265 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
266 L0171 cmpa #SS.EOF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
267 beq L016F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
268 cmpa #SS.ScSiz
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
269 beq L0184
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
270 cmpa #SS.ComSt
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
271 bne L0191
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
272 ldd <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
273 std R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
274 bra L016F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
275 L0184 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
276 ldb <u002A,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
277 std R$X,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
278 ldb <u002B,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
279 std R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
280 bra L016F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
281 L0191 comb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
282 ldb #E$UnkSvc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
283 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
284
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
285 * SetStat
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
286 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
287 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
288 * A = function code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
289 * Y = address of path descriptor
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
290 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
291 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
292 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
293 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
294 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
295 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
296 SetStat ldx PD.RGS,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
297 cmpa #SS.SSig
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
298 bne L01B2
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
299 lda PD.CPR,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
300 ldb R$X+1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
301 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
302 tst <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
303 bne L01AB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
304 std <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
305 bra L015E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
306 L01AB andcc #^IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
307 os9 F$Send
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
308 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
309 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
310 L01B2 cmpa #SS.Open
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
311 beq L01FA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
312 cmpa #SS.Close
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
313 beq L020A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
314 cmpa #SS.Relea
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
315 bne L01C9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
316 lda PD.CPR,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
317 cmpa <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
318 bne L016F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
319 clr <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
320 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
321 L01C9 cmpa #SS.ComSt
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
322 bne L0191
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
323 ldd R$Y,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
324 L01CF std <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
325 andb #$E0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
326 pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
327 ldb <u0029,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
328 andb #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
329 leax <L01F2,pcr
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
330 ldb b,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
331 orb ,s+
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
332 anda #$E0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
333 sta V.TYPE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
334 ldx V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
335 lda $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
336 anda #$1F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
337 ora V.TYPE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
338 std $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
339 bra L0227
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
340 L01F2 fdb $1316,$1718,$1a1c,$1e1f
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
341 L01FA ldb #$09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
342 lda R$Y+1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
343 cmpa #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
344 bne L0227
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
345 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
346 lbsr L037D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
347 lbra L0086
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
348 L020A lda R$Y+1,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
349 bne L0227
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
350 ldb #$0B
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
351 lda <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
352 bita #$10
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
353 beq L0218
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
354 L0217 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
355 L0218 pshs b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
356 bsr L022C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
357 bcs L0217
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
358 puls b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
359 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
360 lbsr L037D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
361 andcc #^IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
362 L0227 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
363 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
364
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
365 L0229 lbsr L00FF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
366 L022C ldb <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
367 orcc #IntMasks
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
368 cmpb <u0021,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
369 bne L0229
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
370 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
371
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
372 * Term
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
373 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
374 * Entry:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
375 * U = address of device memory area
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
376 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
377 * Exit:
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
378 * CC = carry set on error
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
379 * B = error code
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
380 *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
381 Term ldx <D.Proc
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
382 lda P$ID,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
383 sta V.BUSY,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
384 sta V.LPRC,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
385 bsr L0217
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
386 ldd <orgDFIRQ,u get saved D.FIRQ vector
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
387 std <D.FIRQ and put it back in system global
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
388 ldx #$0000
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
389 os9 F$IRQ deinstall IRQ svc routine
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
390 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
391 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
392
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
393 * ISR
1213
4e235f213651 Lots of changes: bootscripts and bootlists added, sources massaged...
boisy
parents: 256
diff changeset
394 L024E ldb >PIA1Base+2
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
395 ldx V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
396 sta <u0027,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
397 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
398 andb #$60
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
399 cmpb <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
400 beq L0299
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
401 tfr b,a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
402 eorb <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
403 sta <u0024,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
404 lda <u0027,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
405 bitb #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
406 beq L028C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
407 bita #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
408 beq L028C
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
409 lda <u0028,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
410 bita #$10
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
411 beq L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
412 ldx <V.PDLHd,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
413 beq L0286
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
414 L027E inc <PD.PST,x
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
415 ldx <PD.PLP,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
416 bne L027E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
417 L0286 lda #$20
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
418 bsr L02F6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
419 bra L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
420 L028C bitb #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
421 beq L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
422 bita #$40
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
423 lbne L03AF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
424 lbra L039E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
425 L0299 bita #$08
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
426 bne L02FB
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
427 bita #$10
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
428 beq L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
429 lda <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
430 bpl L02B6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
431 anda #$7F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
432 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
433 eora V.XON,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
434 sta <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
435 lda <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
436 bne L02DC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
437 bra L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
438 L02B6 leay <u007E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
439 ldb <u0021,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
440 cmpb <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
441 beq L02D4
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
442 clra
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
443 lda d,y
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
444 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
445 cmpb #$81
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
446 bls L02CA
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
447 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
448 L02CA stb <u0021,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
449 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
450 cmpb <u0020,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
451 bne L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
452 L02D4 lda <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
453 ora #$02
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
454 sta <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
455 L02DC ldb #$09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
456 lbsr L037F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
457 L02E1 ldb #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
458 lda V.WAKE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
459 L02E5 beq L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
460 clr V.WAKE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
461 L02E9 os9 F$Send
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
462 L02EC ldx V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
463 lda $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
464 lbmi L024E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
465 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
466 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
467 L02F6 ora V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
468 sta V.ERR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
469 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
470 L02FB bita #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
471 beq L030F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
472 tfr a,b
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
473 tst ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
474 anda #$07
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
475 bsr L02F6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
476 lda $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
477 sta $01,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
478 sta $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
479 bra L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
480 L030F lda ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
481 beq L032A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
482 cmpa V.INTR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
483 beq L038D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
484 cmpa V.QUIT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
485 beq L0391
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
486 cmpa V.PCHR,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
487 beq L0385
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
488 cmpa V.XON,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
489 beq L039E
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
490 cmpa <V.XOFF,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
491 lbeq L03AF
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
492 L032A leax <u002E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
493 ldb <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
494 abx
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
495 sta ,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
496 incb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
497 cmpb #$4F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
498 bls L0339
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
499 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
500 L0339 cmpb <u001E,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
501 bne L0344
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
502 lda #$04
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
503 bsr L02F6
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
504 bra L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
505 L0344 stb <u001D,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
506 inc <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
507 tst <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
508 beq L0357
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
509 ldd <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
510 clr <u0025,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
511 bra L02E9
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
512 L0357 lda <V.XOFF,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
513 beq L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
514 ldb <u001F,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
515 cmpb #$46
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
516 lbcs L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
517 ldb <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
518 lbne L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
519 anda #$7F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
520 sta <V.XOFF,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
521 ora #$80
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
522 sta <u0023,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
523 ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
524 bsr L037D
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
525 lbra L02E1
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
526 L037D ldx V.PORT,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
527 L037F orb V.TYPE,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
528 stb $02,x
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
529 clrb
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
530 rts
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
531 L0385 ldx V.DEV2,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
532 beq L032A
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
533 sta V.PAUS,x
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
534 bra L032A
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
535 L038D ldb #S$Intrpt
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
536 bra L0393
256
9e9648e17298 Additional source improvements
boisy
parents: 201
diff changeset
537 L0391 ldb #S$Abort
0
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
538 L0393 pshs a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
539 lda V.LPRC,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
540 lbsr L02E5
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
541 puls a
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
542 bra L032A
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
543 L039E lda <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
544 anda #$FE
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
545 sta <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
546 bne L03AC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
547 ldb #$05
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
548 bsr L037F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
549 L03AC lbra L02EC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
550 L03AF lda <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
551 bne L03B8
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
552 ldb #$09
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
553 bsr L037F
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
554 L03B8 ora #$01
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
555 sta <u0022,u
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
556 bra L03AC
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
557
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
558 emod
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
559 eom equ *
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
560 end
6641a883d6b0 Initial revision
boisy
parents:
diff changeset
561