1 |
22 |
dilbert57 |
Assembler release DWC_2.0 version 2.11
|
2 |
|
|
May 6, 2004 (c) Motorola (free ware)
|
3 |
|
|
0001 NAM FLEX SOURCE
|
4 |
|
|
0000 INCLUDE "f9-moneq.txt"
|
5 |
|
|
|
6 |
|
|
|
7 |
|
|
f9-moneq.txt page 2
|
8 |
|
|
0002 *
|
9 |
|
|
0003 ***************************************************
|
10 |
|
|
0004 * MEMORY MAP EQUATES *
|
11 |
|
|
0005 ***************************************************
|
12 |
|
|
0006 E000 MONIO EQU $E000 I/O SPACE
|
13 |
|
|
0007 DFC0 MONRAM EQU $DFC0 STACK SPACE
|
14 |
|
|
0008 F800 MONROM EQU $F800 START OF ROM
|
15 |
|
|
0009 F000 MONEXT EQU $F000 EXTENDED COMMANDS
|
16 |
|
|
0010 *MONEXT EQU $1000 EXTENDED COMMANDS
|
17 |
|
|
0011 *
|
18 |
|
|
0012 ***************************************************
|
19 |
|
|
0013 * SYS09BUG VARIABLE SPACE
|
20 |
|
|
0014 ***************************************************
|
21 |
|
|
0015 *
|
22 |
|
|
0016 DFC0 STACK EQU MONRAM+0 TOP OF INTERNAL STACK / USER VECTOR
|
23 |
|
|
0017 DFC2 SWI3 EQU MONRAM+2 SOFTWARE INTERRUPT VECTOR #3
|
24 |
|
|
0018 DFC4 SWI2 EQU MONRAM+4 SOFTWARE INTERRUPT VECTOR #2
|
25 |
|
|
0019 DFC6 FIRQ EQU MONRAM+6 FAST INTERRUPT VECTOR
|
26 |
|
|
0020 DFC8 IRQ EQU MONRAM+8 INTERRUPT VECTOR
|
27 |
|
|
0021 DFCA SWI EQU MONRAM+10 SOFTWARE INTERRUPT VECTOR
|
28 |
|
|
0022 DFCC SVCVO EQU MONRAM+12 SUPERVISOR CALL VECTOR ORGIN
|
29 |
|
|
0023 DFCE SVCVL EQU MONRAM+14 SUPERVISOR CALL VECTOR LIMIT
|
30 |
|
|
0024 DFD0 LRARAM EQU MONRAM+16 LRA ADDRESSES
|
31 |
|
|
0025 DFE0 CPORT EQU MONRAM+32 RE-VECTORABLE CONTROL PORT
|
32 |
|
|
0026 DFE2 ECHO EQU MONRAM+34 ECHO FLAG
|
33 |
|
|
0027 DFE3 BPTBL EQU MONRAM+35 BREAKPOINT TABLE BASE ADDR
|
34 |
|
|
0028 **************************************************
|
35 |
|
|
0029 * VDU BYTES *
|
36 |
|
|
0030 **************************************************
|
37 |
|
|
0031 *
|
38 |
|
|
0032 **** ALWAYS KEEP COLADX AND ROWADX TOGETHER ******
|
39 |
|
|
0033 DFFB COLADX EQU MONRAM+59 CURSOR COLUMN
|
40 |
|
|
0034 DFFC ROWADX EQU MONRAM+60 CURSOR ROW
|
41 |
|
|
0035 **************************************************
|
42 |
|
|
0036 *
|
43 |
|
|
0037 DFFD NEWROW EQU MONRAM+61 NEW ROW TEMP FOR ESCAPE
|
44 |
|
|
0038 DFFE ESCFLG EQU MONRAM+62 ESCAPE SEQUENCE ACTIVE
|
45 |
|
|
0039 *
|
46 |
|
|
0040 ***************************************************
|
47 |
|
|
0041 * SERIAL PORT *
|
48 |
|
|
0042 ***************************************************
|
49 |
|
|
0043 *
|
50 |
|
|
0044 E000 ACIAS EQU MONIO+$00 CONTROL PORT
|
51 |
|
|
0045 *
|
52 |
|
|
0046 ***************************************************
|
53 |
|
|
0047 * PS/2 KEYBOARD PORT *
|
54 |
|
|
0048 ***************************************************
|
55 |
|
|
0049 *
|
56 |
|
|
0050 E020 PS2KBD EQU MONIO+$20 PS/2 KEYBOARD PORT
|
57 |
|
|
0051 *
|
58 |
|
|
0052 ***************************************************
|
59 |
|
|
0053 * ADM3A DISPLAY DRIVER VARIABLES *
|
60 |
|
|
0054 ***************************************************
|
61 |
|
|
0055 *
|
62 |
|
|
0056 ** VIDEO DISPLAY DEFINITIONS
|
63 |
|
|
0057 *
|
64 |
|
|
0058 E030 VDU EQU MONIO+$30
|
65 |
|
|
0059 0000 VDUCHR EQU 0 CHARACTER REGISTER
|
66 |
|
|
0060 0001 VDUATT EQU 1 ATTRIBUTE REGISTER
|
67 |
|
|
0061 0002 VDUCOL EQU 2 CURSOR COLUMN
|
68 |
|
|
0062 0003 VDUROW EQU 3 CURSOR ROW
|
69 |
|
|
0063 0004 VDUOFF EQU 4 ROW OFFSET
|
70 |
|
|
0064 *
|
71 |
|
|
0065 0050 LINLEN EQU 80 LENGTH OF A LINE
|
72 |
|
|
0066 0019 NUMLIN EQU 25 NUMBER OF LINES
|
73 |
|
|
0067 *
|
74 |
|
|
0068 ***************************************************
|
75 |
|
|
0069 * Serial PROM register
|
76 |
|
|
0070 ***************************************************
|
77 |
|
|
0071 *
|
78 |
|
|
0072 ** CONFIGURATION PROM DEFINITIONS
|
79 |
|
|
0073 *
|
80 |
|
|
0074 E0C0 PROMREG EQU MONIO+$C0
|
81 |
|
|
0075 0001 PCLKHI EQU $01 Toggle PROM Clock High
|
82 |
|
|
0076 0000 PCLKLO EQU $00 Toggle PROM Clock Low
|
83 |
|
|
0077 0002 PRSTHI EQU $02 Toggle PROM Reset High
|
84 |
|
|
0078 0000 PRSTLO EQU $00 Toggle PROM Reset Low
|
85 |
|
|
0079 AA55 SYNCHI EQU $AA55 Synch Pattern High Word
|
86 |
|
|
0080 FF00 SYNCLO EQU $FF00 Synch Pattern Low Word
|
87 |
|
|
0081 *
|
88 |
|
|
0082 *
|
89 |
|
|
0083 ***************************************************
|
90 |
|
|
0084 * Dynamic Address Translation Registers
|
91 |
|
|
0085 ***************************************************
|
92 |
|
|
0086 *
|
93 |
|
|
0087 ** DAT Table
|
94 |
|
|
0088 *
|
95 |
|
|
0089 FFF0 IC11 EQU $FFF0 DAT RAM CHIP
|
96 |
|
|
0090 *
|
97 |
|
|
0091 ***************************************************
|
98 |
|
|
0092 * START OF ROM *
|
99 |
|
|
0093 ***************************************************
|
100 |
|
|
0094 *
|
101 |
|
|
0095 F800 MONITV EQU MONROM+0 FDB MONITOR
|
102 |
|
|
0096 F802 NXTCMV EQU MONROM+2 FDB NEXTCMD
|
103 |
|
|
0097 F804 INCHV EQU MONROM+4 FDB INCH
|
104 |
|
|
0098 F806 INCHEV EQU MONROM+6 FDB INCHE
|
105 |
|
|
0099 F808 INCHKV EQU MONROM+8 FDB INCHEK
|
106 |
|
|
0100 F80A OUTCHV EQU MONROM+10 FDB OUTCH
|
107 |
|
|
0101 F80C PDATAV EQU MONROM+12 FDB PDATA
|
108 |
|
|
0102 F80E PCRLFV EQU MONROM+14 FDB PCRLF
|
109 |
|
|
0103 F810 PSTRGV EQU MONROM+16 FDB PSTRNG
|
110 |
|
|
0104 F812 LRAV EQU MONROM+18 FDB LRA
|
111 |
|
|
0002 END
|
112 |
|
|
0000 INCLUDE "f9-equ.txt"
|
113 |
|
|
0001 0000 Z0000 EQU $0000
|
114 |
|
|
0002 0005 Z0005 EQU $0005
|
115 |
|
|
0003 0044 Z0044 EQU $0044
|
116 |
|
|
0004 00A0 Z00A0 EQU $00A0
|
117 |
|
|
0005 C07F ZC07F EQU $C07F
|
118 |
|
|
0006 C080 LINBUF EQU $C080
|
119 |
|
|
0007 C0FF ZC0FF EQU $C0FF
|
120 |
|
|
0003 END
|
121 |
|
|
0000 INCLUDE "f9-spool.txt"
|
122 |
|
|
0001 *
|
123 |
|
|
0002 ** PRINTER SPOOLING
|
124 |
|
|
0003 *
|
125 |
|
|
0004 C700 ORG $C700
|
126 |
|
|
0005 C700 7E C7 21 PRSPL1 JMP ZC721
|
127 |
|
|
0006 C703 7E C7 03 PRSPL2 JMP *
|
128 |
|
|
0007 C706 7E C7 47 PRSPL3 JMP ZC747
|
129 |
|
|
0008 C709 7E C7 85 PRSPL4 JMP ZC785
|
130 |
|
|
0009 C70C 7E C7 95 PRSPL5 JMP ZC795
|
131 |
|
|
0010 C70F 7E C7 1F PRSPL6 JMP ZC71F
|
132 |
|
|
0011 *
|
133 |
|
|
0012 ** SPOOLER SCRATCH AREA
|
134 |
|
|
0013 *
|
135 |
|
|
0014 C712 0C 00 00 00 00 C8 ZC712 FCB $0C,$00,$00,$00,$00,$C8,$10
|
136 |
|
|
10
|
137 |
|
|
0015 C719 C8 10 ZC719 FCB $C8,$10
|
138 |
|
|
0016 C71B 00 QCNT FCB $00
|
139 |
|
|
0017 C71C 00 ZC71C FCB $00
|
140 |
|
|
0018 C71D 00 ZC71D FCB $00
|
141 |
|
|
0019 C71E 00 ZC71E FCB $00
|
142 |
|
|
0020 *
|
143 |
|
|
0021 C71F 3B ZC71F RTI
|
144 |
|
|
0022 C720 12 NOP
|
145 |
|
|
0023 *
|
146 |
|
|
0024 C721 1A 10 ZC721 ORCC #$10
|
147 |
|
|
0025 C723 BE CC 31 LDX ZCC31
|
148 |
|
|
0026 C726 10 EF 02 STS 2,X
|
149 |
|
|
0027 C729 7D CC 34 TST ZCC34
|
150 |
|
|
0028 C72C 26 11 BNE ZC73F
|
151 |
|
|
0029 C72E 8E CC FC LDX #ZCCFC
|
152 |
|
|
0030 C731 7C CC 34 INC ZCC34
|
153 |
|
|
0031 C734 6D 84 TST ,X
|
154 |
|
|
0032 C736 27 07 BEQ ZC73F
|
155 |
|
|
0033 C738 BF CC 31 ZC738 STX ZCC31
|
156 |
|
|
0034 C73B 10 EE 02 LDS $02,X
|
157 |
|
|
0035 C73E 3B RTI
|
158 |
|
|
0036 *
|
159 |
|
|
0037 C73F 8E CC F8 ZC73F LDX #ZCCF8
|
160 |
|
|
0038 C742 7F CC 34 CLR ZCC34
|
161 |
|
|
0039 C745 20 F1 BRA ZC738
|
162 |
|
|
0040 *
|
163 |
|
|
0041 C747 1A 10 ZC747 ORCC #$10
|
164 |
|
|
0042 C749 7D C7 1B TST QCNT
|
165 |
|
|
0043 C74C 27 29 BEQ ZC777
|
166 |
|
|
0044 C74E BE C7 19 LDX ZC719
|
167 |
|
|
0045 C751 A6 84 LDA ,X
|
168 |
|
|
0046 C753 34 02 PSHS A
|
169 |
|
|
0047 C755 EC 01 LDD $01,X
|
170 |
|
|
0048 C757 8E CA C0 LDX #ZCAC0
|
171 |
|
|
0049 C75A ED 88 40 STD $40,X
|
172 |
|
|
0050 C75D 35 02 PULS A
|
173 |
|
|
0051 C75F A7 03 STA $03,X
|
174 |
|
|
0052 C761 6F 84 CLR ,X
|
175 |
|
|
0053 C763 86 01 LDA #$01
|
176 |
|
|
0054 C765 A7 02 STA $02,X
|
177 |
|
|
0055 C767 6F 88 22 CLR $22,X
|
178 |
|
|
0056 C76A 6F 88 3B CLR $3B,X
|
179 |
|
|
0057 C76D 7D C7 1E ZC76D TST ZC71E
|
180 |
|
|
0058 C770 27 29 BEQ ZC79B
|
181 |
|
|
0059 C772 11 3F SWI3
|
182 |
|
|
0060 C774 12 NOP
|
183 |
|
|
0061 C775 20 F6 BRA ZC76D
|
184 |
|
|
0062 *
|
185 |
|
|
0063 C777 1C EF ZC777 ANDCC #$EF
|
186 |
|
|
0064 C779 AD 9F D3 ED ZC779 JSR [TOFVEC]
|
187 |
|
|
0065 C77D 7F CC FC CLR ZCCFC
|
188 |
|
|
0066 C780 11 3F SWI3
|
189 |
|
|
0067 C782 12 NOP
|
190 |
|
|
0068 C783 20 F4 BRA ZC779
|
191 |
|
|
0069 *
|
192 |
|
|
0070 C785 1A 10 ZC785 ORCC #$10
|
193 |
|
|
0071 C787 7D CC 30 TST ZCC30
|
194 |
|
|
0072 C78A 27 05 BEQ ZC791
|
195 |
|
|
0073 C78C 11 3F SWI3
|
196 |
|
|
0074 C78E 12 NOP
|
197 |
|
|
0075 C78F 20 F4 BRA ZC785
|
198 |
|
|
0076 *
|
199 |
|
|
0077 C791 7C CC 30 ZC791 INC ZCC30
|
200 |
|
|
0078 C794 39 RTS
|
201 |
|
|
0079 *
|
202 |
|
|
0080 C795 7F CC 30 ZC795 CLR ZCC30
|
203 |
|
|
0081 C798 1C EF ANDCC #$EF
|
204 |
|
|
0082 C79A 39 RTS
|
205 |
|
|
0083 *
|
206 |
|
|
0084 C79B 7D C7 1D ZC79B TST ZC71D
|
207 |
|
|
0085 C79E 26 27 BNE ZC7C7
|
208 |
|
|
0086 C7A0 8E CA C0 LDX #ZCAC0
|
209 |
|
|
0087 C7A3 BD D4 06 JSR FMS
|
210 |
|
|
0088 C7A6 26 1F BNE ZC7C7
|
211 |
|
|
0089 C7A8 7D C7 1C TST ZC71C
|
212 |
|
|
0090 C7AB 27 0F BEQ ZC7BC
|
213 |
|
|
0091 C7AD 7F C7 1C CLR ZC71C
|
214 |
|
|
0092 C7B0 81 0A CMPA #$0A
|
215 |
|
|
0093 C7B2 27 0F BEQ ZC7C3
|
216 |
|
|
0094 C7B4 34 02 PSHS A
|
217 |
|
|
0095 C7B6 86 0A LDA #$0A
|
218 |
|
|
0096 C7B8 8D 3C BSR ZC7F6
|
219 |
|
|
0097 C7BA 35 02 PULS A
|
220 |
|
|
0098 C7BC 81 0D ZC7BC CMPA #$0D
|
221 |
|
|
0099 C7BE 26 03 BNE ZC7C3
|
222 |
|
|
0100 C7C0 B7 C7 1C STA ZC71C
|
223 |
|
|
0101 C7C3 8D 31 ZC7C3 BSR ZC7F6
|
224 |
|
|
0102 C7C5 20 D4 BRA ZC79B
|
225 |
|
|
0103 *
|
226 |
|
|
0104 C7C7 86 0D ZC7C7 LDA #$0D
|
227 |
|
|
0105 C7C9 8D 2B BSR ZC7F6
|
228 |
|
|
0106 C7CB 86 0A LDA #$0A
|
229 |
|
|
0107 C7CD 8D 27 BSR ZC7F6
|
230 |
|
|
0108 C7CF B6 C7 12 LDA ZC712
|
231 |
|
|
0109 C7D2 8D 22 BSR ZC7F6
|
232 |
|
|
0110 C7D4 7F C7 1D CLR ZC71D
|
233 |
|
|
0111 C7D7 BE C7 19 LDX ZC719
|
234 |
|
|
0112 C7DA 6D 03 TST $03,X
|
235 |
|
|
0113 C7DC 27 05 BEQ ZC7E3
|
236 |
|
|
0114 C7DE 6A 03 DEC $03,X
|
237 |
|
|
0115 C7E0 7E C7 47 JMP ZC747
|
238 |
|
|
0116 *
|
239 |
|
|
0117 C7E3 30 04 ZC7E3 LEAX $04,X
|
240 |
|
|
0118 C7E5 8C C8 40 CMPX #FCB
|
241 |
|
|
0119 C7E8 26 03 BNE ZC7ED
|
242 |
|
|
0120 C7EA 8E C8 10 LDX #ZC810
|
243 |
|
|
0121 C7ED BF C7 19 ZC7ED STX ZC719
|
244 |
|
|
0122 C7F0 7A C7 1B DEC QCNT
|
245 |
|
|
0123 C7F3 7E C7 47 JMP ZC747
|
246 |
|
|
0124 *
|
247 |
|
|
0125 C7F6 BD CC D8 ZC7F6 JSR PCHK
|
248 |
|
|
0126 C7F9 2B 05 BMI ZC800
|
249 |
|
|
0127 C7FB 11 3F SWI3
|
250 |
|
|
0128 C7FD 12 NOP
|
251 |
|
|
0129 C7FE 20 F6 BRA ZC7F6
|
252 |
|
|
0130 *
|
253 |
|
|
0131 C800 7E CC E4 ZC800 JMP POUT
|
254 |
|
|
0132 C810 ZC810 EQU $C810
|
255 |
|
|
0133 C838 ZC838 EQU $C838
|
256 |
|
|
0004 END
|
257 |
|
|
0000 INCLUDE "f9-sfcb.txt"
|
258 |
|
|
0001 *
|
259 |
|
|
0002 ** SYSTEM FILE CONTROL BLOCK
|
260 |
|
|
0003 *
|
261 |
|
|
0004 C840 ORG $C840
|
262 |
|
|
0005 C840 FF FCB FCB $FF
|
263 |
|
|
0006 C841 00 FCB $00
|
264 |
|
|
0007 C842 00 FCB $00
|
265 |
|
|
0008 C843 00 FCB $00
|
266 |
|
|
0009 C844 53 54 41 52 54 55 ZC844 FCC "STARTUP"
|
267 |
|
|
50
|
268 |
|
|
0010 C84B 00 FCB $00
|
269 |
|
|
0011 C84C 54 58 54 FCC "TXT"
|
270 |
|
|
0012 C84F 00 FCB $00
|
271 |
|
|
0005 END
|
272 |
|
|
0000 INCLUDE "f9-init.txt"
|
273 |
|
|
0001 *
|
274 |
|
|
0002 ** FLEX INITIATION
|
275 |
|
|
0003 *
|
276 |
|
|
0004 CA00 ORG $CA00
|
277 |
|
|
0005 CA00 20 06 ZCA00 BRA ZCA08
|
278 |
|
|
0006 CA02 BD CA AC ZCA02 JSR >ZCAAC
|
279 |
|
|
0007 CA05 39 RTS
|
280 |
|
|
0008 CA06 C0 A0 ZCA06 SUBB #$A0
|
281 |
|
|
0009 CA08 86 39 ZCA08 LDA #$39
|
282 |
|
|
0010 CA0A B7 D3 FD STA >ZD3FD
|
283 |
|
|
0011 CA0D BE CC 2B LDX >MEMEND
|
284 |
|
|
0012 CA10 30 89 00 A1 LEAX $00A1,X
|
285 |
|
|
0013 CA14 BF CA 06 STX >ZCA06
|
286 |
|
|
0014 CA17 AD 9F D3 F1 JSR [TINVEC]
|
287 |
|
|
0015 CA1B BE D3 FB LDX >INVEC
|
288 |
|
|
0016 CA1E BF CD 0A STX >INCH+1
|
289 |
|
|
0017 CA21 BF CD 0D STX >INCH2+1
|
290 |
|
|
0018 CA24 BE D3 F9 LDX >OUTVEC
|
291 |
|
|
0019 CA27 BF CD 10 STX >OUTCH+1
|
292 |
|
|
0020 CA2A BF CD 13 STX >OUTCH2+1
|
293 |
|
|
0021 CA2D BE D3 F7 LDX >STAVEC
|
294 |
|
|
0022 CA30 BF CD 4F STX >ZCD4E+1
|
295 |
|
|
0023 CA33 8E 00 A0 LDX #Z00A0
|
296 |
|
|
0024 CA36 C6 B9 LDB #$B9
|
297 |
|
|
0025 CA38 A6 84 ZCA38 LDA ,X
|
298 |
|
|
0026 CA3A E7 84 STB ,X
|
299 |
|
|
0027 CA3C 12 NOP
|
300 |
|
|
0028 CA3D E1 84 CMPB ,X
|
301 |
|
|
0029 CA3F 26 0B BNE ZCA4C
|
302 |
|
|
0030 CA41 A7 84 STA ,X
|
303 |
|
|
0031 CA43 30 89 04 00 LEAX $0400,X
|
304 |
|
|
0032 CA47 BC CA 06 CMPX >ZCA06
|
305 |
|
|
0033 CA4A 26 EC BNE ZCA38
|
306 |
|
|
0034 CA4C 30 89 FF 5F ZCA4C LEAX $FF5F,X
|
307 |
|
|
0035 CA50 BF CC 2B STX >MEMEND
|
308 |
|
|
0036 CA53 8E CD 03 LDX #WARMS
|
309 |
|
|
0037 CA56 BF CC 16 STX >ESCVEC
|
310 |
|
|
0038 CA59 8E CA DC LDX #TTLSTR
|
311 |
|
|
0039 CA5C BD CE 81 JSR >PSTRG1
|
312 |
|
|
0040 CA5F BD CE B5 JSR >PCRLF1
|
313 |
|
|
0041 CA62 8D 9E BSR ZCA02
|
314 |
|
|
0042 CA64 BD CE B5 JSR >PCRLF1
|
315 |
|
|
0043 CA67 8E C8 40 LDX #FCB
|
316 |
|
|
0044 CA6A 86 01 LDA #$01
|
317 |
|
|
0045 CA6C A7 84 STA ,X
|
318 |
|
|
0046 CA6E BD D4 06 JSR >FMS
|
319 |
|
|
0047 CA71 27 08 BEQ ZCA7B
|
320 |
|
|
0048 CA73 A6 01 LDA $01,X
|
321 |
|
|
0049 CA75 BD D2 00 JSR >ZD200
|
322 |
|
|
0050 CA78 7E CD 67 JMP >WARM1
|
323 |
|
|
0051
|
324 |
|
|
0052 CA7B 8E C0 80 ZCA7B LDX #LINBUF
|
325 |
|
|
0053 CA7E BF CC 14 ZCA7E STX >LINPTR
|
326 |
|
|
0054 CA81 8E C8 40 LDX #FCB
|
327 |
|
|
0055 CA84 BD D4 06 JSR >FMS
|
328 |
|
|
0056 CA87 27 05 BEQ ZCA8E
|
329 |
|
|
0057 CA89 34 30 PSHS Y,X
|
330 |
|
|
0058 CA8B 7E D2 D7 JMP >ZD2D7
|
331 |
|
|
0059
|
332 |
|
|
0060 CA8E BE CC 14 ZCA8E LDX >LINPTR
|
333 |
|
|
0061 CA91 A7 80 STA ,X+
|
334 |
|
|
0062 CA93 81 0D CMPA #$0D
|
335 |
|
|
0063 CA95 26 E7 BNE ZCA7E
|
336 |
|
|
0064 CA97 8E C8 40 LDX #FCB
|
337 |
|
|
0065 CA9A BD D1 F4 JSR >ZD1F4
|
338 |
|
|
0066 CA9D 8E C0 80 LDX #LINBUF
|
339 |
|
|
0067 CAA0 BF CC 14 STX >LINPTR
|
340 |
|
|
0068 CAA3 8E CD 67 LDX #WARM1
|
341 |
|
|
0069 CAA6 BF CC 43 STX >ZCC43
|
342 |
|
|
0070 CAA9 7E D3 2E JMP >ZD32E
|
343 |
|
|
0071
|
344 |
|
|
0072 CAAC 8E CA EC ZCAAC LDX #DATSTR
|
345 |
|
|
0073 CAAF BD CE 81 JSR >PSTRG1
|
346 |
|
|
0074 CAB2 BD CE 2B JSR >INBUF1
|
347 |
|
|
0075 CAB5 8D 14 BSR ZCACB
|
348 |
|
|
0076 CAB7 25 F3 BCS ZCAAC
|
349 |
|
|
0077 CAB9 B7 CC 0E STA >MONTH
|
350 |
|
|
0078 CABC 8D 0D BSR ZCACB
|
351 |
|
|
0079 CABE 25 EC BCS ZCAAC
|
352 |
|
|
0080 CAC0 B7 CC 0F ZCAC0 STA >DAY
|
353 |
|
|
0081 CAC3 8D 06 BSR ZCACB
|
354 |
|
|
0082 CAC5 25 E5 BCS ZCAAC
|
355 |
|
|
0083 CAC7 B7 CC 10 STA >YEAR
|
356 |
|
|
0084 CACA 39 RTS
|
357 |
|
|
0085
|
358 |
|
|
0086 CACB BD D1 75 ZCACB JSR >INDEC1
|
359 |
|
|
0087 CACE 25 0B BCS ZCADB
|
360 |
|
|
0088 CAD0 B6 CC 1C LDA >LODOFF+1
|
361 |
|
|
0089 CAD3 5D TSTB
|
362 |
|
|
0090 CAD4 27 03 BEQ ZCAD9
|
363 |
|
|
0091 CAD6 1C FE ANDCC #$FE
|
364 |
|
|
0092 CAD8 39 RTS
|
365 |
|
|
0093
|
366 |
|
|
0094 CAD9 1A 01 ZCAD9 ORCC #$01
|
367 |
|
|
0095 CADB 39 ZCADB RTS
|
368 |
|
|
0096
|
369 |
|
|
0097 CADC 36 38 30 39 20 46 TTLSTR FCC "6809 FLEX V3.01"
|
370 |
|
|
4C 45 58 20 56 33
|
371 |
|
|
2E 30 31
|
372 |
|
|
0098 CAEB 04 FCB $04
|
373 |
|
|
0099 CAEC 44 41 54 45 20 28 DATSTR FCC "DATE (MM,DD,YY)? "
|
374 |
|
|
4D 4D 2C 44 44 2C
|
375 |
|
|
59 59 29 3F 20
|
376 |
|
|
0100 CAFD 04 FCB $04
|
377 |
|
|
0006 END
|
378 |
|
|
0000 INCLUDE "f9-var.txt"
|
379 |
|
|
0001 *
|
380 |
|
|
0002 ** TTYSET PARAMETERS
|
381 |
|
|
0003 *
|
382 |
|
|
0004 CC00 ORG $CC00
|
383 |
|
|
0005 CC00 08 BSPCHR FCB $08
|
384 |
|
|
0006 CC01 18 DELCHR FCB $18
|
385 |
|
|
0007 CC02 3A EOLCHR FCB $3A
|
386 |
|
|
0008 CC03 19 DEPCNT FCB 25
|
387 |
|
|
0009 CC04 00 WIDCNT FCB $00
|
388 |
|
|
0010 CC05 04 NULCNT FCB $04
|
389 |
|
|
0011 CC06 40 TABCHR FCB '@
|
390 |
|
|
0012 CC07 00 BSECHR FCB $00
|
391 |
|
|
0013 CC08 00 EJTCNT FCB $00
|
392 |
|
|
0014 CC09 FF PAUSE FCB $FF
|
393 |
|
|
0015 CC0A 1B ESCCHR FCB $1B
|
394 |
|
|
0016 CC0B 00 SYSDRV FCB 0
|
395 |
|
|
0017 CC0C 01 WRKDRV FCB 1
|
396 |
|
|
0018 CC0D 00 ZCC0D FCB $00
|
397 |
|
|
0019 CC0E DATERG EQU *
|
398 |
|
|
0020 CC0E 00 MONTH FCB $00
|
399 |
|
|
0021 CC0F 00 DAY FCB $00
|
400 |
|
|
0022 CC10 00 YEAR FCB $00
|
401 |
|
|
0023 CC11 00 LASTRM FCB $00
|
402 |
|
|
0024 CC12 00 00 UCTVEC FDB $0000
|
403 |
|
|
0025 CC14 00 00 LINPTR FDB $0000
|
404 |
|
|
0026 CC16 00 00 ESCVEC FDB $0000
|
405 |
|
|
0027 CC18 00 CURCHR FCB $00
|
406 |
|
|
0028 CC19 00 PRVCHR FCB $00
|
407 |
|
|
0029 CC1A 00 CURLIN FCB $00
|
408 |
|
|
0030 CC1B 00 00 LODOFF FDB $0000
|
409 |
|
|
0031 CC1D 00 TRNFLG FCB $00
|
410 |
|
|
0032 CC1E 00 00 TRNVEC FDB $0000
|
411 |
|
|
0033 CC20 00 ERRTYP FCB $00
|
412 |
|
|
0034 CC21 00 SIOFLG FCB $00
|
413 |
|
|
0035 CC22 00 OUTSWT FCB $00
|
414 |
|
|
0036 CC23 00 INPSWT FCB $00
|
415 |
|
|
0037 CC24 00 00 FOPADR FDB $0000
|
416 |
|
|
0038 CC26 00 00 FIPADR FDB $0000
|
417 |
|
|
0039 CC28 00 CMDFLG FCB $00
|
418 |
|
|
0040 CC29 00 CURCOL FCB $00
|
419 |
|
|
0041 CC2A 00 FCB $00
|
420 |
|
|
0042 CC2B BF FF MEMEND FDB $BFFF
|
421 |
|
|
0043 CC2D 00 00 ERRVEC FDB $0000
|
422 |
|
|
0044 CC2F 01 FIEFLG FCB $01
|
423 |
|
|
0045 CC30 00 ZCC30 FCB $00
|
424 |
|
|
0046 CC31 00 00 00 ZCC31 FCB $00,$00,$00
|
425 |
|
|
0047 CC34 00 00 00 00 00 00 ZCC34 FCB $00,$00,$00,$00,$00,$00,$00
|
426 |
|
|
00
|
427 |
|
|
0048 CC3D ZCC3D EQU $CC3D
|
428 |
|
|
0049 CC3F ZCC3F EQU $CC3F
|
429 |
|
|
0050 CC43 ZCC43 EQU $CC43
|
430 |
|
|
0051 CC45 ZCC45 EQU $CC45
|
431 |
|
|
0052 CC47 ZCC47 EQU $CC47
|
432 |
|
|
0053 CC49 ORG $CC49
|
433 |
|
|
0054 CC49 60 MAPUP FCB $60 MAP LOWER TO UPPERCASE
|
434 |
|
|
0055 CC4A ZCC4A EQU $CC4A
|
435 |
|
|
0056 CC4B ZCC4B EQU $CC4B
|
436 |
|
|
0057 CC4C ZCC4C EQU $CC4C
|
437 |
|
|
0058 CC4D ZCC4D EQU $CC4D
|
438 |
|
|
0007 END
|
439 |
|
|
0000 INCLUDE "f9-data.txt"
|
440 |
|
|
0001 *
|
441 |
|
|
0002 ** STRINGS AND MESSAGES
|
442 |
|
|
0003 *
|
443 |
|
|
0004 CC4E ORG $CC4E
|
444 |
|
|
0005 CC4E 2B 2B 2B PMTSTR FCC "+++"
|
445 |
|
|
0006 CC51 04 FCB $04
|
446 |
|
|
0007 CC52 3F 3F 3F QRYSTR FCC "???"
|
447 |
|
|
0008 CC55 04 FCB $04
|
448 |
|
|
0009 CC56 57 48 41 54 3F WOTMSG FCC "WHAT?"
|
449 |
|
|
0010 CC5B 04 FCB $04
|
450 |
|
|
0011 CC5C 43 41 4E 27 54 20 NTRMSG FCC "CAN'T TRANSFER"
|
451 |
|
|
54 52 41 4E 53 46
|
452 |
|
|
45 52
|
453 |
|
|
0012 CC6A 04 FCB $04
|
454 |
|
|
0013 CC6B 4E 4F 54 20 46 4F NFDMSG FCC "NOT FOUND"
|
455 |
|
|
55 4E 44
|
456 |
|
|
0014 CC74 04 FCB $04
|
457 |
|
|
0015 CC75 44 49 53 4B 20 45 DERMSG FCC "DISK ERROR #"
|
458 |
|
|
52 52 4F 52 20 23
|
459 |
|
|
0016 CC81 04 FCB $04
|
460 |
|
|
0017 CC82 44 52 49 56 45 53 DNRMSG FCC "DRIVES NOT READY"
|
461 |
|
|
20 4E 4F 54 20 52
|
462 |
|
|
45 41 44 59
|
463 |
|
|
0018 CC92 04 FCB $04
|
464 |
|
|
0019 *
|
465 |
|
|
0020 ** MEMORY RESIDENT COMMANDS
|
466 |
|
|
0021 *
|
467 |
|
|
0022 CC93 47 45 54 CMDTBL FCC "GET"
|
468 |
|
|
0023 CC96 00 FCB $00
|
469 |
|
|
0024 CC97 D2 0F FDB GETCMD
|
470 |
|
|
0025 CC99 4D 4F 4E FCC "MON"
|
471 |
|
|
0026 CC9C 00 FCB $00
|
472 |
|
|
0027 CC9D D3 4B FDB ZD34B
|
473 |
|
|
0028 CC9F 00 FCB $00
|
474 |
|
|
0029 *
|
475 |
|
|
0030 ** DECIMAL CONVERSION TABLE
|
476 |
|
|
0031 *
|
477 |
|
|
0032 CCA0 27 10 DECTBL FDB 10000
|
478 |
|
|
0033 CCA2 03 E8 FDB 1000
|
479 |
|
|
0034 CCA4 00 64 FDB 100
|
480 |
|
|
0035 CCA6 00 0A FDB 10
|
481 |
|
|
0008 END
|
482 |
|
|
0000 INCLUDE "f9-cli.txt"
|
483 |
|
|
0001 *********************************************
|
484 |
|
|
0002 *
|
485 |
|
|
0003 * FLEX COMMAND LINE INTERPRETER & SUBROUTINES
|
486 |
|
|
0004 *
|
487 |
|
|
0005 *********************************************
|
488 |
|
|
0006 CD00 ORG $CD00
|
489 |
|
|
0007 *
|
490 |
|
|
0008 ** FLEX JUMPS
|
491 |
|
|
0009 *
|
492 |
|
|
0010 CD00 7E CD 57 COLDS JMP >COLD1
|
493 |
|
|
0011 CD03 7E CD 67 WARMS JMP >WARM1
|
494 |
|
|
0012 CD06 7E CD B1 RENTER JMP >RENT1
|
495 |
|
|
0013 CD09 7E CD 09 INCH JMP >INCH
|
496 |
|
|
0014 CD0C 7E CD 0C INCH2 JMP >INCH2
|
497 |
|
|
0015 CD0F 7E CD 0F OUTCH JMP >OUTCH
|
498 |
|
|
0016 CD12 7E CD 12 OUTCH2 JMP >OUTCH2
|
499 |
|
|
0017 CD15 7E CE FB GETCHR JMP >GETCH1
|
500 |
|
|
0018 CD18 7E CF 41 PUTCHR JMP >PUTCH1
|
501 |
|
|
0019 CD1B 7E CE 2B INBUFF JMP >INBUF1
|
502 |
|
|
0020 CD1E 7E CE 81 PSTRNG JMP >PSTRG1
|
503 |
|
|
0021 CD21 7E CF ED CLASS JMP >CLASS1
|
504 |
|
|
0022 CD24 7E CE B5 PCRLF JMP >PCRLF1
|
505 |
|
|
0023 CD27 7E D0 0E NXTCH JMP >NXTCH1
|
506 |
|
|
0024 CD2A 7E CD EA RSTRIO JMP >RSTIO1
|
507 |
|
|
0025 CD2D 7E D0 36 GETFIL JMP >GETFL1
|
508 |
|
|
0026 CD30 7E D1 A2 LOAD JMP >LOAD1
|
509 |
|
|
0027 CD33 7E D0 EB SETEXT JMP >SETEX1
|
510 |
|
|
0028 CD36 7E D3 49 ADDBX JMP >ADDBX1
|
511 |
|
|
0029 CD39 7E CF 86 OUTDEC JMP >OUTDC1
|
512 |
|
|
0030 CD3C 7E CF D4 OUTHEX JMP >OUTHX1
|
513 |
|
|
0031 CD3F 7E D2 7F RPTERR JMP >RPTER1
|
514 |
|
|
0032 CD42 7E D1 2F GETHEX JMP >GETHX1
|
515 |
|
|
0033 CD45 7E CF D0 OUTADR JMP >OUTAD1
|
516 |
|
|
0034 CD48 7E D1 75 INDEC JMP >INDEC1
|
517 |
|
|
0035 CD4B 7E D3 29 DOCMND JMP >DOCMD1
|
518 |
|
|
0036 CD4E 7E CD 4E ZCD4E JMP >ZCD4E
|
519 |
|
|
0037 CD51 7E CE 05 JMP >ZCE05
|
520 |
|
|
0038 CD54 7E CE 05 JMP >ZCE05
|
521 |
|
|
0039 *
|
522 |
|
|
0040 ** COLD START ENTRY
|
523 |
|
|
0041 *
|
524 |
|
|
0042 CD57 10 CE C0 7F COLD1 LDS #ZC07F
|
525 |
|
|
0043 CD5B 7F CC 11 ZCD5B CLR >LASTRM
|
526 |
|
|
0044 CD5E BD D4 00 JSR >ZD400
|
527 |
|
|
0045 CD61 7F CC 28 CLR >CMDFLG
|
528 |
|
|
0046 CD64 BD D3 FD JSR >ZD3FD
|
529 |
|
|
0047 *
|
530 |
|
|
0048 ** WARM START ENTRY
|
531 |
|
|
0049 *
|
532 |
|
|
0050 CD67 10 CE C0 7F WARM1 LDS #ZC07F
|
533 |
|
|
0051 CD6B BD DE 18 JSR >WARMDR
|
534 |
|
|
0052 CD6E 8E CD 03 LDX #WARMS
|
535 |
|
|
0053 CD71 BF CC 16 STX >ESCVEC
|
536 |
|
|
0054 CD74 8E C7 00 LDX #PRSPL1
|
537 |
|
|
0055 CD77 AF 9F D3 E9 STX [SWIVVC]
|
538 |
|
|
0056 CD7B BE D3 E7 LDX >IHNDVC
|
539 |
|
|
0057 CD7E AF 9F D3 EB STX [IRQVVC]
|
540 |
|
|
0058 CD82 8E CC F8 LDX #ZCCF8
|
541 |
|
|
0059 CD85 BF CC 31 STX >ZCC31
|
542 |
|
|
0060 CD88 7F CC 34 CLR >ZCC34
|
543 |
|
|
0061 CD8B 7F CC 4C CLR >ZCC4C
|
544 |
|
|
0062 CD8E 8D 5A BSR RSTIO1
|
545 |
|
|
0063 CD90 B6 CC 11 LDA >LASTRM
|
546 |
|
|
0064 CD93 B1 CC 02 CMPA >EOLCHR
|
547 |
|
|
0065 CD96 26 05 BNE ZCD9D
|
548 |
|
|
0066 CD98 7C CC 15 INC >LINPTR+1
|
549 |
|
|
0067 CD9B 20 14 BRA RENT1
|
550 |
|
|
0068
|
551 |
|
|
0069 CD9D 7D CC 28 ZCD9D TST >CMDFLG
|
552 |
|
|
0070 CDA0 10 26 05 97 LBNE ZD33B
|
553 |
|
|
0071 CDA4 BD D4 03 JSR >FMSCLS
|
554 |
|
|
0072 CDA7 26 B2 BNE ZCD5B
|
555 |
|
|
0073 CDA9 8E CC 4E LDX #PMTSTR
|
556 |
|
|
0074 CDAC BD CE 81 JSR >PSTRG1
|
557 |
|
|
0075 CDAF 8D 7A BSR INBUF1
|
558 |
|
|
0076 *
|
559 |
|
|
0077 ** MAIN CONTROL LOOP
|
560 |
|
|
0078 *
|
561 |
|
|
0079 CDB1 BD D0 D4 RENT1 JSR >ZD0D4
|
562 |
|
|
0080 CDB4 81 0D CMPA #$0D
|
563 |
|
|
0081 CDB6 27 E5 BEQ ZCD9D
|
564 |
|
|
0082 CDB8 8E C8 40 ZCDB8 LDX #FCB
|
565 |
|
|
0083 CDBB 7C CC 0D INC >ZCC0D
|
566 |
|
|
0084 CDBE BD D0 36 JSR >GETFL1
|
567 |
|
|
0085 CDC1 25 16 BCS ZCDD9
|
568 |
|
|
0086 CDC3 8E CC 93 LDX #CMDTBL
|
569 |
|
|
0087 CDC6 8D 3E BSR ZCE06
|
570 |
|
|
0088 CDC8 27 09 BEQ ZCDD3
|
571 |
|
|
0089 CDCA BE CC 12 LDX >UCTVEC
|
572 |
|
|
0090 CDCD 27 07 BEQ ZCDD6
|
573 |
|
|
0091 CDCF 8D 35 BSR ZCE06
|
574 |
|
|
0092 CDD1 26 03 BNE ZCDD6
|
575 |
|
|
0093 CDD3 6E 98 01 ZCDD3 JMP [$01,X]
|
576 |
|
|
0094
|
577 |
|
|
0095 CDD6 BD D2 2E ZCDD6 JSR >ZD22E
|
578 |
|
|
0096 CDD9 8E CC 56 ZCDD9 LDX #WOTMSG
|
579 |
|
|
0097 CDDC 86 15 LDA #$15
|
580 |
|
|
0098 CDDE B7 CC 20 ZCDDE STA >ERRTYP
|
581 |
|
|
0099 CDE1 BD CE 81 ZCDE1 JSR >PSTRG1
|
582 |
|
|
0100 CDE4 7F CC 11 ZCDE4 CLR >LASTRM
|
583 |
|
|
0101 CDE7 7E CD 67 JMP >WARM1
|
584 |
|
|
0102 *
|
585 |
|
|
0103 ** RESTORE IO VECTORS
|
586 |
|
|
0104 *
|
587 |
|
|
0105 CDEA BE CD 13 RSTIO1 LDX >OUTCH2+1
|
588 |
|
|
0106 CDED BF CD 10 STX >OUTCH+1
|
589 |
|
|
0107 CDF0 BE CD 0D LDX >INCH2+1
|
590 |
|
|
0108 CDF3 BF CD 0A STX >INCH+1
|
591 |
|
|
0109 CDF6 7F CC 23 CLR >INPSWT
|
592 |
|
|
0110 CDF9 7F CC 22 CLR >OUTSWT
|
593 |
|
|
0111 CDFC 7F CC 21 CLR >SIOFLG
|
594 |
|
|
0112 CDFF 7F CC 26 CLR >FIPADR
|
595 |
|
|
0113 CE02 7F CC 24 CLR >FOPADR
|
596 |
|
|
0114 CE05 39 ZCE05 RTS
|
597 |
|
|
0115
|
598 |
|
|
0116 CE06 10 8E C8 44 ZCE06 LDY #ZC844
|
599 |
|
|
0117 CE0A A6 A0 ZCE0A LDA ,Y+
|
600 |
|
|
0118 CE0C 81 5F CMPA #$5F
|
601 |
|
|
0119 CE0E 23 02 BLS ZCE12
|
602 |
|
|
0120 CE10 80 20 SUBA #$20
|
603 |
|
|
0121 CE12 A1 80 ZCE12 CMPA ,X+
|
604 |
|
|
0122 CE14 26 08 BNE ZCE1E
|
605 |
|
|
0123 CE16 6D 84 TST ,X
|
606 |
|
|
0124 CE18 26 F0 BNE ZCE0A
|
607 |
|
|
0125 CE1A 6D A4 TST ,Y
|
608 |
|
|
0126 CE1C 27 0C BEQ ZCE2A
|
609 |
|
|
0127 CE1E 6D 80 ZCE1E TST ,X+
|
610 |
|
|
0128 CE20 26 FC BNE ZCE1E
|
611 |
|
|
0129 CE22 30 02 LEAX $02,X
|
612 |
|
|
0130 CE24 6D 84 TST ,X
|
613 |
|
|
0131 CE26 26 DE BNE ZCE06
|
614 |
|
|
0132 CE28 1C FB ANDCC #$FB
|
615 |
|
|
0133 CE2A 39 ZCE2A RTS
|
616 |
|
|
0134 *
|
617 |
|
|
0135 ** GET USER COMMAND LINE
|
618 |
|
|
0136 *
|
619 |
|
|
0137 CE2B 8E C0 80 INBUF1 LDX #LINBUF
|
620 |
|
|
0138 CE2E BF CC 14 STX >LINPTR
|
621 |
|
|
0139 CE31 BD CE FB ZCE31 JSR >GETCH1
|
622 |
|
|
0140 CE34 B1 CC 01 CMPA >DELCHR
|
623 |
|
|
0141 CE37 27 1D BEQ ZCE56
|
624 |
|
|
0142 CE39 B1 CC 00 CMPA >BSPCHR
|
625 |
|
|
0143 CE3C 27 1F BEQ ZCE5D
|
626 |
|
|
0144 CE3E 81 0D CMPA #$0D
|
627 |
|
|
0145 CE40 27 0D BEQ ZCE4F
|
628 |
|
|
0146 CE42 81 0A CMPA #$0A
|
629 |
|
|
0147 CE44 27 32 BEQ ZCE78
|
630 |
|
|
0148 CE46 81 1F CMPA #$1F
|
631 |
|
|
0149 CE48 23 E7 BLS ZCE31
|
632 |
|
|
0150 CE4A 8C C0 FF ZCE4A CMPX #ZC0FF
|
633 |
|
|
0151 CE4D 27 E2 BEQ ZCE31
|
634 |
|
|
0152 CE4F A7 80 ZCE4F STA ,X+
|
635 |
|
|
0153 CE51 81 0D CMPA #$0D
|
636 |
|
|
0154 CE53 26 DC BNE ZCE31
|
637 |
|
|
0155 CE55 39 RTS
|
638 |
|
|
0156
|
639 |
|
|
0157 CE56 8E CC 52 ZCE56 LDX #QRYSTR
|
640 |
|
|
0158 CE59 8D 26 BSR PSTRG1
|
641 |
|
|
0159 CE5B 20 CE BRA INBUF1
|
642 |
|
|
0160
|
643 |
|
|
0161 CE5D 8C C0 80 ZCE5D CMPX #LINBUF
|
644 |
|
|
0162 CE60 27 F4 BEQ ZCE56
|
645 |
|
|
0163 CE62 30 1F LEAX -$01,X
|
646 |
|
|
0164 CE64 B6 CC 07 LDA >BSECHR
|
647 |
|
|
0165 CE67 81 08 CMPA #$08
|
648 |
|
|
0166 CE69 26 08 BNE ZCE73
|
649 |
|
|
0167 CE6B 86 20 LDA #$20
|
650 |
|
|
0168 CE6D BD CF 66 JSR >ZCF66
|
651 |
|
|
0169 CE70 B6 CC 07 LDA >BSECHR
|
652 |
|
|
0170 CE73 BD CF 66 ZCE73 JSR >ZCF66
|
653 |
|
|
0171 CE76 20 B9 BRA ZCE31
|
654 |
|
|
0172
|
655 |
|
|
0173 CE78 86 0D ZCE78 LDA #$0D
|
656 |
|
|
0174 CE7A BD CF 41 JSR >PUTCH1
|
657 |
|
|
0175 CE7D 86 20 LDA #$20
|
658 |
|
|
0176 CE7F 20 C9 BRA ZCE4A
|
659 |
|
|
0177
|
660 |
|
|
0178 CE81 8D 32 PSTRG1 BSR PCRLF1
|
661 |
|
|
0179 CE83 A6 84 ZCE83 LDA ,X
|
662 |
|
|
0180 CE85 81 04 CMPA #$04
|
663 |
|
|
0181 CE87 27 6F BEQ ZCEF8
|
664 |
|
|
0182 CE89 BD CF 41 JSR >PUTCH1
|
665 |
|
|
0183 CE8C 30 01 LEAX $01,X
|
666 |
|
|
0184 CE8E 20 F3 BRA ZCE83
|
667 |
|
|
0185
|
668 |
|
|
0186 CE90 BD CD 4E ZCE90 JSR >ZCD4E
|
669 |
|
|
0187 CE93 27 65 BEQ ZCEFA
|
670 |
|
|
0188 CE95 AD 9F D3 E5 JSR [ZD3E5]
|
671 |
|
|
0189 CE99 B1 CC 0A CMPA >ESCCHR
|
672 |
|
|
0190 CE9C 26 5C BNE ZCEFA
|
673 |
|
|
0191 CE9E 7F CC 1A ZCE9E CLR >CURLIN
|
674 |
|
|
0192 CEA1 AD 9F D3 E5 ZCEA1 JSR [ZD3E5]
|
675 |
|
|
0193 CEA5 B1 CC 0A CMPA >ESCCHR
|
676 |
|
|
0194 CEA8 27 50 BEQ ZCEFA
|
677 |
|
|
0195 CEAA 81 03 CMPA #$03 CTRL C
|
678 |
|
|
0196 CEAC 26 F3 BNE ZCEA1
|
679 |
|
|
0197 CEAE 7F CC 11 CLR >LASTRM
|
680 |
|
|
0198 CEB1 6E 9F CC 16 JMP [ESCVEC]
|
681 |
|
|
0199 *
|
682 |
|
|
0200 ** PRINT CR, LINEFEED
|
683 |
|
|
0201 *
|
684 |
|
|
0202 CEB5 7D CC 21 PCRLF1 TST >SIOFLG
|
685 |
|
|
0203 CEB8 26 27 BNE ZCEE1
|
686 |
|
|
0204 CEBA 8D D4 BSR ZCE90
|
687 |
|
|
0205 CEBC B6 CC 03 LDA >DEPCNT
|
688 |
|
|
0206 CEBF 27 20 BEQ ZCEE1
|
689 |
|
|
0207 CEC1 B1 CC 1A CMPA >CURLIN
|
690 |
|
|
0208 CEC4 22 18 BHI ZCEDE
|
691 |
|
|
0209 CEC6 7F CC 1A CLR >CURLIN
|
692 |
|
|
0210 CEC9 7D CC 09 TST >PAUSE
|
693 |
|
|
0211 CECC 27 02 BEQ ZCED0
|
694 |
|
|
0212 CECE 8D CE BSR ZCE9E
|
695 |
|
|
0213 CED0 34 04 ZCED0 PSHS B
|
696 |
|
|
0214 CED2 F6 CC 08 LDB >EJTCNT
|
697 |
|
|
0215 CED5 27 05 BEQ ZCEDC
|
698 |
|
|
0216 CED7 8D 08 ZCED7 BSR ZCEE1
|
699 |
|
|
0217 CED9 5A DECB
|
700 |
|
|
0218 CEDA 26 FB BNE ZCED7
|
701 |
|
|
0219 CEDC 35 04 ZCEDC PULS B
|
702 |
|
|
0220 CEDE 7C CC 1A ZCEDE INC >CURLIN
|
703 |
|
|
0221 CEE1 86 0D ZCEE1 LDA #$0D
|
704 |
|
|
0222 CEE3 8D 5C BSR PUTCH1
|
705 |
|
|
0223 CEE5 86 0A LDA #$0A
|
706 |
|
|
0224 CEE7 8D 58 BSR PUTCH1
|
707 |
|
|
0225 CEE9 34 04 PSHS B
|
708 |
|
|
0226 CEEB F6 CC 05 LDB >NULCNT
|
709 |
|
|
0227 CEEE 27 06 BEQ ZCEF6
|
710 |
|
|
0228 CEF0 4F ZCEF0 CLRA
|
711 |
|
|
0229 CEF1 8D 4E BSR PUTCH1
|
712 |
|
|
0230 CEF3 5A DECB
|
713 |
|
|
0231 CEF4 26 FA BNE ZCEF0
|
714 |
|
|
0232 CEF6 35 04 ZCEF6 PULS B
|
715 |
|
|
0233 CEF8 1C FE ZCEF8 ANDCC #$FE
|
716 |
|
|
0234 CEFA 39 ZCEFA RTS
|
717 |
|
|
0235 *
|
718 |
|
|
0236 ** GET A CHARACTER HONOURING TTYSET
|
719 |
|
|
0237 *
|
720 |
|
|
0238 CEFB 7D CC 23 GETCH1 TST >INPSWT
|
721 |
|
|
0239 CEFE 26 1A BNE ZCF1A
|
722 |
|
|
0240 CF00 7D CC 26 TST >FIPADR
|
723 |
|
|
0241 CF03 27 10 BEQ ZCF15
|
724 |
|
|
0242 CF05 8D 1A BSR ZCF21
|
725 |
|
|
0243 CF07 7D CC 2F TST >FIEFLG
|
726 |
|
|
0244 CF0A 27 11 BEQ ZCF1D
|
727 |
|
|
0245 CF0C 7D CC 24 TST >FOPADR
|
728 |
|
|
0246 CF0F 27 0C BEQ ZCF1D
|
729 |
|
|
0247 CF11 8D 53 BSR ZCF66
|
730 |
|
|
0248 CF13 20 08 BRA ZCF1D
|
731 |
|
|
0249 CF15 BD CD 09 ZCF15 JSR >INCH
|
732 |
|
|
0250 CF18 20 03 BRA ZCF1D
|
733 |
|
|
0251
|
734 |
|
|
0252 CF1A BD CD 0C ZCF1A JSR >INCH2
|
735 |
|
|
0253 CF1D 7F CC 1A ZCF1D CLR >CURLIN
|
736 |
|
|
0254 CF20 39 RTS
|
737 |
|
|
0255
|
738 |
|
|
0256 CF21 BF CC 47 ZCF21 STX >ZCC47
|
739 |
|
|
0257 CF24 BE CC 26 LDX >FIPADR
|
740 |
|
|
0258 CF27 20 06 BRA ZCF2F
|
741 |
|
|
0259
|
742 |
|
|
0260 CF29 BF CC 47 ZCF29 STX >ZCC47
|
743 |
|
|
0261 CF2C BE CC 24 LDX >FOPADR
|
744 |
|
|
0262 CF2F BD D4 06 ZCF2F JSR >FMS
|
745 |
|
|
0263 CF32 26 04 BNE ZCF38
|
746 |
|
|
0264 CF34 BE CC 47 LDX >ZCC47
|
747 |
|
|
0265 CF37 39 RTS
|
748 |
|
|
0266
|
749 |
|
|
0267 CF38 7F CC 24 ZCF38 CLR >FOPADR
|
750 |
|
|
0268 CF3B BD D2 7F JSR >RPTER1
|
751 |
|
|
0269 CF3E 7E CD 03 JMP >WARMS
|
752 |
|
|
0270 *
|
753 |
|
|
0271 ** OUTPUT CHARACTER HONOURING TTYSET
|
754 |
|
|
0272 *
|
755 |
|
|
0273 CF41 7D CC 21 PUTCH1 TST >SIOFLG
|
756 |
|
|
0274 CF44 26 20 BNE ZCF66
|
757 |
|
|
0275 CF46 81 1F CMPA #$1F
|
758 |
|
|
0276 CF48 22 05 BHI ZCF4F
|
759 |
|
|
0277 CF4A 7F CC 29 CLR >CURCOL
|
760 |
|
|
0278 CF4D 20 17 BRA ZCF66
|
761 |
|
|
0279
|
762 |
|
|
0280 CF4F 7C CC 29 ZCF4F INC >CURCOL
|
763 |
|
|
0281 CF52 34 02 PSHS A
|
764 |
|
|
0282 CF54 B6 CC 04 LDA >WIDCNT
|
765 |
|
|
0283 CF57 27 0B BEQ ZCF64
|
766 |
|
|
0284 CF59 B1 CC 29 CMPA >CURCOL
|
767 |
|
|
0285 CF5C 24 06 BCC ZCF64
|
768 |
|
|
0286 CF5E BD CE B5 JSR >PCRLF1
|
769 |
|
|
0287 CF61 7C CC 29 INC >CURCOL
|
770 |
|
|
0288 CF64 35 02 ZCF64 PULS A
|
771 |
|
|
0289 CF66 34 02 ZCF66 PSHS A
|
772 |
|
|
0290 CF68 7D CC 22 TST >OUTSWT
|
773 |
|
|
0291 CF6B 26 13 BNE ZCF80
|
774 |
|
|
0292 CF6D 7D CC 24 TST >FOPADR
|
775 |
|
|
0293 CF70 27 04 BEQ ZCF76
|
776 |
|
|
0294 CF72 8D B5 BSR ZCF29
|
777 |
|
|
0295 CF74 20 0D BRA ZCF83
|
778 |
|
|
0296
|
779 |
|
|
0297 CF76 7D CC 26 ZCF76 TST >FIPADR
|
780 |
|
|
0298 CF79 26 08 BNE ZCF83
|
781 |
|
|
0299 CF7B BD CD 0F JSR >OUTCH
|
782 |
|
|
0300 CF7E 20 03 BRA ZCF83
|
783 |
|
|
0301 CF80 BD CD 12 ZCF80 JSR >OUTCH2
|
784 |
|
|
0302 CF83 35 02 ZCF83 PULS A
|
785 |
|
|
0303 CF85 39 RTS
|
786 |
|
|
0304
|
787 |
|
|
0305 CF86 7F CC 4A OUTDC1 CLR >ZCC4A
|
788 |
|
|
0306 CF89 F7 CC 1D STB >TRNFLG
|
789 |
|
|
0307 CF8C 86 04 LDA #$04
|
790 |
|
|
0308 CF8E B7 CC 4D STA >ZCC4D
|
791 |
|
|
0309 CF91 EC 84 LDD ,X
|
792 |
|
|
0310 CF93 8E CC A0 LDX #DECTBL
|
793 |
|
|
0311 CF96 8D 0B ZCF96 BSR ZCFA3
|
794 |
|
|
0312 CF98 30 02 LEAX $02,X
|
795 |
|
|
0313 CF9A 7A CC 4D DEC >ZCC4D
|
796 |
|
|
0314 CF9D 26 F7 BNE ZCF96
|
797 |
|
|
0315 CF9F 1F 98 TFR B,A
|
798 |
|
|
0316 CFA1 20 3D BRA OUTHXR
|
799 |
|
|
0317
|
800 |
|
|
0318 CFA3 7F CC 4B ZCFA3 CLR >ZCC4B
|
801 |
|
|
0319 CFA6 10 A3 84 ZCFA6 CMPD ,X
|
802 |
|
|
0320 CFA9 25 07 BCS ZCFB2
|
803 |
|
|
0321 CFAB A3 84 SUBD ,X
|
804 |
|
|
0322 CFAD 7C CC 4B INC >ZCC4B
|
805 |
|
|
0323 CFB0 20 F4 BRA ZCFA6
|
806 |
|
|
0324
|
807 |
|
|
0325 CFB2 34 02 ZCFB2 PSHS A
|
808 |
|
|
0326 CFB4 B6 CC 4B LDA >ZCC4B
|
809 |
|
|
0327 CFB7 26 10 BNE ZCFC9
|
810 |
|
|
0328 CFB9 7D CC 4A TST >ZCC4A
|
811 |
|
|
0329 CFBC 26 0B BNE ZCFC9
|
812 |
|
|
0330 CFBE 7D CC 1D TST >TRNFLG
|
813 |
|
|
0331 CFC1 27 0B BEQ ZCFCE
|
814 |
|
|
0332 CFC3 86 20 LDA #$20
|
815 |
|
|
0333 CFC5 8D 23 BSR ZCFEA
|
816 |
|
|
0334 CFC7 20 05 BRA ZCFCE
|
817 |
|
|
0335
|
818 |
|
|
0336 CFC9 7C CC 4A ZCFC9 INC >ZCC4A
|
819 |
|
|
0337 CFCC 8D 12 BSR OUTHXR
|
820 |
|
|
0338 CFCE 35 82 ZCFCE PULS PC,A
|
821 |
|
|
0339 *
|
822 |
|
|
0340 ** DISPLAY HEX ADDRESS
|
823 |
|
|
0341 *
|
824 |
|
|
0342 CFD0 8D 02 OUTAD1 BSR OUTHX1
|
825 |
|
|
0343 CFD2 30 01 LEAX $01,X
|
826 |
|
|
0344 *
|
827 |
|
|
0345 ** OUPUT HEX BYTE
|
828 |
|
|
0346 *
|
829 |
|
|
0347 CFD4 A6 84 OUTHX1 LDA ,X
|
830 |
|
|
0348 CFD6 8D 04 BSR OUTHXL
|
831 |
|
|
0349 CFD8 A6 84 LDA ,X
|
832 |
|
|
0350 CFDA 20 04 BRA OUTHXR
|
833 |
|
|
0351
|
834 |
|
|
0352 CFDC 44 OUTHXL LSRA
|
835 |
|
|
0353 CFDD 44 LSRA
|
836 |
|
|
0354 CFDE 44 LSRA
|
837 |
|
|
0355 CFDF 44 LSRA
|
838 |
|
|
0356 CFE0 84 0F OUTHXR ANDA #$0F
|
839 |
|
|
0357 CFE2 8B 30 ADDA #$30
|
840 |
|
|
0358 CFE4 81 39 CMPA #$39
|
841 |
|
|
0359 CFE6 23 02 BLS ZCFEA
|
842 |
|
|
0360 CFE8 8B 07 ADDA #$07
|
843 |
|
|
0361 CFEA 7E CF 41 ZCFEA JMP >PUTCH1
|
844 |
|
|
0362 *
|
845 |
|
|
0363 ** CLASSIFY CHARACTER ALHA/NUMERIC
|
846 |
|
|
0364 *
|
847 |
|
|
0365 CFED 81 30 CLASS1 CMPA #'0
|
848 |
|
|
0366 CFEF 25 14 BCS ZD005
|
849 |
|
|
0367 CFF1 81 39 CMPA #'9
|
850 |
|
|
0368 CFF3 23 16 BLS ZD00B
|
851 |
|
|
0369 CFF5 81 41 CMPA #'A
|
852 |
|
|
0370 CFF7 25 0C BCS ZD005
|
853 |
|
|
0371 CFF9 81 5A CMPA #'Z
|
854 |
|
|
0372 CFFB 23 0E BLS ZD00B
|
855 |
|
|
0373 CFFD 81 61 CMPA #'a $61
|
856 |
|
|
0374 CFFF 25 04 BCS ZD005
|
857 |
|
|
0375 D001 81 7A CMPA #'z $7A
|
858 |
|
|
0376 D003 23 06 BLS ZD00B
|
859 |
|
|
0377 D005 1A 01 ZD005 ORCC #$01
|
860 |
|
|
0378 D007 B7 CC 11 STA >LASTRM
|
861 |
|
|
0379 D00A 39 RTS
|
862 |
|
|
0380 D00B 1C FE ZD00B ANDCC #$FE
|
863 |
|
|
0381 D00D 39 RTS
|
864 |
|
|
0382 *
|
865 |
|
|
0383 ** GET NEXT CHARACTER FROM FILE
|
866 |
|
|
0384 *
|
867 |
|
|
0385 D00E 34 10 NXTCH1 PSHS X
|
868 |
|
|
0386 D010 BE CC 14 LDX >LINPTR
|
869 |
|
|
0387 D013 B6 CC 18 LDA >CURCHR
|
870 |
|
|
0388 D016 B7 CC 19 STA >PRVCHR
|
871 |
|
|
0389 D019 A6 80 ZD019 LDA ,X+
|
872 |
|
|
0390 D01B B7 CC 18 STA >CURCHR
|
873 |
|
|
0391 D01E 81 0D CMPA #$0D
|
874 |
|
|
0392 D020 27 10 BEQ ZD032
|
875 |
|
|
0393 D022 B1 CC 02 CMPA >EOLCHR
|
876 |
|
|
0394 D025 27 0B BEQ ZD032
|
877 |
|
|
0395 D027 BF CC 14 STX >LINPTR
|
878 |
|
|
0396 D02A 81 20 CMPA #$20
|
879 |
|
|
0397 D02C 26 04 BNE ZD032
|
880 |
|
|
0398 D02E A1 84 CMPA ,X
|
881 |
|
|
0399 D030 27 E7 BEQ ZD019
|
882 |
|
|
0400 D032 8D B9 ZD032 BSR CLASS1
|
883 |
|
|
0401 D034 35 90 PULS PC,X
|
884 |
|
|
0402 *
|
885 |
|
|
0403 ** PARSE FILE SPEC. IN LINE BUFFER
|
886 |
|
|
0404 *
|
887 |
|
|
0405 D036 86 15 GETFL1 LDA #$15
|
888 |
|
|
0406 D038 A7 01 STA $01,X
|
889 |
|
|
0407 D03A 86 FF LDA #$FF
|
890 |
|
|
0408 D03C A7 03 STA $03,X
|
891 |
|
|
0409 D03E 6F 04 CLR $04,X
|
892 |
|
|
0410 D040 6F 0C CLR $0C,X
|
893 |
|
|
0411 D042 BD D0 D4 JSR >ZD0D4
|
894 |
|
|
0412 D045 86 08 LDA #$08
|
895 |
|
|
0413 D047 B7 CC 4B STA >ZCC4B
|
896 |
|
|
0414 D04A 8D 34 BSR ZD080
|
897 |
|
|
0415 D04C 25 2E BCS ZD07C
|
898 |
|
|
0416 D04E 26 0F BNE ZD05F
|
899 |
|
|
0417 D050 8D 2E BSR ZD080
|
900 |
|
|
0418 D052 25 28 BCS ZD07C
|
901 |
|
|
0419 D054 26 09 BNE ZD05F
|
902 |
|
|
0420 D056 BC CC 3F CMPX >ZCC3F
|
903 |
|
|
0421 D059 27 6C BEQ ZD0C7
|
904 |
|
|
0422 D05B 8D 23 BSR ZD080
|
905 |
|
|
0423 D05D 23 68 BLS ZD0C7
|
906 |
|
|
0424 D05F BE CC 3F ZD05F LDX >ZCC3F
|
907 |
|
|
0425 D062 6D 04 TST $04,X
|
908 |
|
|
0426 D064 27 61 BEQ ZD0C7
|
909 |
|
|
0427 D066 6D 03 TST $03,X
|
910 |
|
|
0428 D068 2A 0F BPL ZD079
|
911 |
|
|
0429 D06A 7D CC 0D TST >ZCC0D
|
912 |
|
|
0430 D06D 27 05 BEQ ZD074
|
913 |
|
|
0431 D06F B6 CC 0B LDA >SYSDRV
|
914 |
|
|
0432 D072 20 03 BRA ZD077
|
915 |
|
|
0433
|
916 |
|
|
0434 D074 B6 CC 0C ZD074 LDA >WRKDRV
|
917 |
|
|
0435 D077 A7 03 ZD077 STA $03,X
|
918 |
|
|
0436 D079 7F CC 0D ZD079 CLR >ZCC0D
|
919 |
|
|
0437 D07C BE CC 3F ZD07C LDX >ZCC3F
|
920 |
|
|
0438 D07F 39 RTS
|
921 |
|
|
0439
|
922 |
|
|
0440 D080 8D 8C ZD080 BSR NXTCH1
|
923 |
|
|
0441 D082 25 43 BCS ZD0C7
|
924 |
|
|
0442 D084 81 39 CMPA #$39
|
925 |
|
|
0443 D086 22 15 BHI ZD09D
|
926 |
|
|
0444 D088 BE CC 3F LDX >ZCC3F
|
927 |
|
|
0445 D08B 6D 03 TST $03,X
|
928 |
|
|
0446 D08D 2A 38 BPL ZD0C7
|
929 |
|
|
0447 D08F 84 03 ANDA #$03
|
930 |
|
|
0448 D091 A7 03 STA $03,X
|
931 |
|
|
0449 D093 BD D0 0E JSR >NXTCH1
|
932 |
|
|
0450 D096 24 2F BCC ZD0C7
|
933 |
|
|
0451 D098 81 2E ZD098 CMPA #$2E
|
934 |
|
|
0452 D09A 1C FE ANDCC #$FE
|
935 |
|
|
0453 D09C 39 RTS
|
936 |
|
|
0454
|
937 |
|
|
0455 D09D F6 CC 4B ZD09D LDB >ZCC4B
|
938 |
|
|
0456 D0A0 2B 25 BMI ZD0C7
|
939 |
|
|
0457 D0A2 34 04 PSHS B
|
940 |
|
|
0458 D0A4 C0 05 SUBB #$05
|
941 |
|
|
0459 D0A6 F7 CC 4B STB >ZCC4B
|
942 |
|
|
0460 D0A9 35 04 PULS B
|
943 |
|
|
0461 D0AB B1 CC 49 ZD0AB CMPA >MAPUP
|
944 |
|
|
0462 D0AE 25 02 BCS ZD0B2
|
945 |
|
|
0463 D0B0 80 20 SUBA #$20
|
946 |
|
|
0464 D0B2 A7 04 ZD0B2 STA $04,X
|
947 |
|
|
0465 D0B4 30 01 LEAX $01,X
|
948 |
|
|
0466 D0B6 5A DECB
|
949 |
|
|
0467 D0B7 BD D0 0E JSR >NXTCH1
|
950 |
|
|
0468 D0BA 24 08 BCC ZD0C4
|
951 |
|
|
0469 D0BC 81 2D CMPA #$2D
|
952 |
|
|
0470 D0BE 27 04 BEQ ZD0C4
|
953 |
|
|
0471 D0C0 81 5F CMPA #$5F
|
954 |
|
|
0472 D0C2 26 06 BNE ZD0CA
|
955 |
|
|
0473 D0C4 5D ZD0C4 TSTB
|
956 |
|
|
0474 D0C5 26 E4 BNE ZD0AB
|
957 |
|
|
0475 D0C7 1A 01 ZD0C7 ORCC #$01
|
958 |
|
|
0476 D0C9 39 RTS
|
959 |
|
|
0477
|
960 |
|
|
0478 D0CA 5D ZD0CA TSTB
|
961 |
|
|
0479 D0CB 27 CB BEQ ZD098
|
962 |
|
|
0480 D0CD 6F 04 CLR $04,X
|
963 |
|
|
0481 D0CF 30 01 LEAX $01,X
|
964 |
|
|
0482 D0D1 5A DECB
|
965 |
|
|
0483 D0D2 20 F6 BRA ZD0CA
|
966 |
|
|
0484
|
967 |
|
|
0485 D0D4 BF CC 3F ZD0D4 STX >ZCC3F
|
968 |
|
|
0486 D0D7 BE CC 14 LDX >LINPTR
|
969 |
|
|
0487 D0DA A6 84 ZD0DA LDA ,X
|
970 |
|
|
0488 D0DC 81 20 CMPA #$20
|
971 |
|
|
0489 D0DE 26 04 BNE ZD0E4
|
972 |
|
|
0490 D0E0 30 01 LEAX $01,X
|
973 |
|
|
0491 D0E2 20 F6 BRA ZD0DA
|
974 |
|
|
0492 D0E4 BF CC 14 ZD0E4 STX >LINPTR
|
975 |
|
|
0493 D0E7 BE CC 3F LDX >ZCC3F
|
976 |
|
|
0494 D0EA 39 RTS
|
977 |
|
|
0495 *
|
978 |
|
|
0496 ** DEFAULT FILE EXTENSION
|
979 |
|
|
0497 *
|
980 |
|
|
0498 D0EB 34 30 SETEX1 PSHS Y,X
|
981 |
|
|
0499 D0ED E6 0C LDB $0C,X
|
982 |
|
|
0500 D0EF 26 18 BNE ZD109
|
983 |
|
|
0501 D0F1 10 8E D1 0B LDY #EXTTBL
|
984 |
|
|
0502 D0F5 81 0B CMPA #$0B
|
985 |
|
|
0503 D0F7 22 10 BHI ZD109
|
986 |
|
|
0504 D0F9 C6 03 LDB #$03
|
987 |
|
|
0505 D0FB 3D MUL
|
988 |
|
|
0506 D0FC 31 A5 LEAY B,Y
|
989 |
|
|
0507 D0FE C6 03 LDB #$03
|
990 |
|
|
0508 D100 A6 A0 ZD100 LDA ,Y+
|
991 |
|
|
0509 D102 A7 0C STA $0C,X
|
992 |
|
|
0510 D104 30 01 LEAX $01,X
|
993 |
|
|
0511 D106 5A DECB
|
994 |
|
|
0512 D107 26 F7 BNE ZD100
|
995 |
|
|
0513 D109 35 B0 ZD109 PULS PC,Y,X
|
996 |
|
|
0514 *
|
997 |
|
|
0515 ** STANDARD FILE NAME EXTTENSIONS
|
998 |
|
|
0516 *
|
999 |
|
|
0517 D10B 42 49 4E EXTTBL FCC "BIN"
|
1000 |
|
|
0518 D10E 54 58 54 FCC "TXT"
|
1001 |
|
|
0519 D111 43 4D 44 FCC "CMD"
|
1002 |
|
|
0520 D114 42 41 53 FCC "BAS"
|
1003 |
|
|
0521 D117 53 59 53 FCC "SYS"
|
1004 |
|
|
0522 D11A 42 41 4B FCC "BAK"
|
1005 |
|
|
0523 D11D 53 43 52 FCC "SCR"
|
1006 |
|
|
0524 D120 44 41 54 FCC "DAT"
|
1007 |
|
|
0525 D123 42 41 43 FCC "BAC"
|
1008 |
|
|
0526 D126 44 49 52 FCC "DIR"
|
1009 |
|
|
0527 D129 50 52 54 FCC "PRT"
|
1010 |
|
|
0528 D12C 4F 55 54 FCC "OUT"
|
1011 |
|
|
0529 *
|
1012 |
|
|
0530 ** READ A HEX ADDRESS FROM THE LINE BUFFER
|
1013 |
|
|
0531 *
|
1014 |
|
|
0532 D12F BD D2 1E GETHX1 JSR >ZD21E
|
1015 |
|
|
0533 D132 BD D0 0E ZD132 JSR >NXTCH1
|
1016 |
|
|
0534 D135 25 22 BCS ZD159
|
1017 |
|
|
0535 D137 8D 26 BSR ZD15F
|
1018 |
|
|
0536 D139 25 18 BCS ZD153
|
1019 |
|
|
0537 D13B 34 04 PSHS B
|
1020 |
|
|
0538 D13D C6 04 LDB #$04
|
1021 |
|
|
0539 D13F 78 CC 1C ZD13F ASL >LODOFF+1
|
1022 |
|
|
0540 D142 79 CC 1B ROL >LODOFF
|
1023 |
|
|
0541 D145 5A DECB
|
1024 |
|
|
0542 D146 26 F7 BNE ZD13F
|
1025 |
|
|
0543 D148 35 04 PULS B
|
1026 |
|
|
0544 D14A BB CC 1C ADDA >LODOFF+1
|
1027 |
|
|
0545 D14D B7 CC 1C STA >LODOFF+1
|
1028 |
|
|
0546 D150 5C INCB
|
1029 |
|
|
0547 D151 20 DF BRA ZD132
|
1030 |
|
|
0548
|
1031 |
|
|
0549 D153 BD D0 0E ZD153 JSR >NXTCH1
|
1032 |
|
|
0550 D156 24 FB BCC ZD153
|
1033 |
|
|
0551 D158 39 RTS
|
1034 |
|
|
0552
|
1035 |
|
|
0553 D159 BE CC 1B ZD159 LDX >LODOFF
|
1036 |
|
|
0554 D15C 1C FE ANDCC #$FE
|
1037 |
|
|
0555 D15E 39 RTS
|
1038 |
|
|
0556
|
1039 |
|
|
0557 D15F 80 47 ZD15F SUBA #$47
|
1040 |
|
|
0558 D161 2A 0F BPL ZD172
|
1041 |
|
|
0559 D163 8B 06 ADDA #$06
|
1042 |
|
|
0560 D165 2A 04 BPL ZD16B
|
1043 |
|
|
0561 D167 8B 07 ADDA #$07
|
1044 |
|
|
0562 D169 2A 07 BPL ZD172
|
1045 |
|
|
0563 D16B 8B 0A ZD16B ADDA #$0A
|
1046 |
|
|
0564 D16D 2B 03 BMI ZD172
|
1047 |
|
|
0565 D16F 1C FE ANDCC #$FE
|
1048 |
|
|
0566 D171 39 RTS
|
1049 |
|
|
0567
|
1050 |
|
|
0568 D172 1A 01 ZD172 ORCC #$01
|
1051 |
|
|
0569 D174 39 RTS
|
1052 |
|
|
0570
|
1053 |
|
|
0571 D175 BD D2 1E INDEC1 JSR >ZD21E
|
1054 |
|
|
0572 D178 BD D0 0E ZD178 JSR >NXTCH1
|
1055 |
|
|
0573 D17B 25 DC BCS ZD159
|
1056 |
|
|
0574 D17D 81 39 CMPA #$39
|
1057 |
|
|
0575 D17F 22 D2 BHI ZD153
|
1058 |
|
|
0576 D181 84 0F ANDA #$0F
|
1059 |
|
|
0577 D183 34 04 PSHS B
|
1060 |
|
|
0578 D185 34 02 PSHS A
|
1061 |
|
|
0579 D187 FC CC 1B LDD >LODOFF
|
1062 |
|
|
0580 D18A 58 ASLB
|
1063 |
|
|
0581 D18B 49 ROLA
|
1064 |
|
|
0582 D18C 58 ASLB
|
1065 |
|
|
0583 D18D 49 ROLA
|
1066 |
|
|
0584 D18E 58 ASLB
|
1067 |
|
|
0585 D18F 49 ROLA
|
1068 |
|
|
0586 D190 F3 CC 1B ADDD >LODOFF
|
1069 |
|
|
0587 D193 F3 CC 1B ADDD >LODOFF
|
1070 |
|
|
0588 D196 EB E0 ADDB ,S+
|
1071 |
|
|
0589 D198 89 00 ADCA #$00
|
1072 |
|
|
0590 D19A FD CC 1B STD >LODOFF
|
1073 |
|
|
0591 D19D 35 04 PULS B
|
1074 |
|
|
0592 D19F 5C INCB
|
1075 |
|
|
0593 D1A0 20 D6 BRA ZD178
|
1076 |
|
|
0594 *
|
1077 |
|
|
0595 ** LOAD BINARY FILE
|
1078 |
|
|
0596 *
|
1079 |
|
|
0597 D1A2 7F CC 1D LOAD1 CLR >TRNFLG
|
1080 |
|
|
0598 D1A5 8D 3D ZD1A5 BSR ZD1E4
|
1081 |
|
|
0599 D1A7 81 02 CMPA #$02
|
1082 |
|
|
0600 D1A9 27 15 BEQ ZD1C0
|
1083 |
|
|
0601 D1AB 81 16 CMPA #$16
|
1084 |
|
|
0602 D1AD 26 F6 BNE ZD1A5
|
1085 |
|
|
0603 D1AF 8D 33 BSR ZD1E4
|
1086 |
|
|
0604 D1B1 B7 CC 1E STA >TRNVEC
|
1087 |
|
|
0605 D1B4 8D 2E BSR ZD1E4
|
1088 |
|
|
0606 D1B6 B7 CC 1F STA >TRNVEC+1
|
1089 |
|
|
0607 D1B9 86 01 LDA #$01
|
1090 |
|
|
0608 D1BB B7 CC 1D STA >TRNFLG
|
1091 |
|
|
0609 D1BE 20 E5 BRA ZD1A5
|
1092 |
|
|
0610
|
1093 |
|
|
0611 D1C0 8D 22 ZD1C0 BSR ZD1E4
|
1094 |
|
|
0612 D1C2 1F 89 TFR A,B
|
1095 |
|
|
0613 D1C4 8D 1E BSR ZD1E4
|
1096 |
|
|
0614 D1C6 1E 89 EXG A,B
|
1097 |
|
|
0615 D1C8 F3 CC 1B ADDD >LODOFF
|
1098 |
|
|
0616 D1CB FD CC 3D STD >ZCC3D
|
1099 |
|
|
0617 D1CE 8D 14 BSR ZD1E4
|
1100 |
|
|
0618 D1D0 1F 89 TFR A,B
|
1101 |
|
|
0619 D1D2 4D TSTA
|
1102 |
|
|
0620 D1D3 27 D0 BEQ ZD1A5
|
1103 |
|
|
0621 D1D5 8D 0D ZD1D5 BSR ZD1E4
|
1104 |
|
|
0622 D1D7 BE CC 3D LDX >ZCC3D
|
1105 |
|
|
0623 D1DA A7 80 STA ,X+
|
1106 |
|
|
0624 D1DC BF CC 3D STX >ZCC3D
|
1107 |
|
|
0625 D1DF 5A DECB
|
1108 |
|
|
0626 D1E0 26 F3 BNE ZD1D5
|
1109 |
|
|
0627 D1E2 20 C1 BRA ZD1A5
|
1110 |
|
|
0628
|
1111 |
|
|
0629 D1E4 8E C8 40 ZD1E4 LDX #FCB
|
1112 |
|
|
0630 D1E7 BD D4 06 JSR >FMS
|
1113 |
|
|
0631 D1EA 27 11 BEQ ZD1FD
|
1114 |
|
|
0632 D1EC A6 01 LDA $01,X
|
1115 |
|
|
0633 D1EE 81 08 CMPA #$08
|
1116 |
|
|
0634 D1F0 26 0E BNE ZD200
|
1117 |
|
|
0635 D1F2 32 62 LEAS $02,S
|
1118 |
|
|
0636 D1F4 86 04 ZD1F4 LDA #$04
|
1119 |
|
|
0637 D1F6 A7 84 STA ,X
|
1120 |
|
|
0638 D1F8 BD D4 06 JSR >FMS
|
1121 |
|
|
0639 D1FB 26 0D BNE ZD20A
|
1122 |
|
|
0640 D1FD 1C FE ZD1FD ANDCC #$FE
|
1123 |
|
|
0641 D1FF 39 RTS
|
1124 |
|
|
0642
|
1125 |
|
|
0643 D200 B7 CC 20 ZD200 STA >ERRTYP
|
1126 |
|
|
0644 D203 81 04 CMPA #$04
|
1127 |
|
|
0645 D205 26 03 BNE ZD20A
|
1128 |
|
|
0646 D207 1A 01 ORCC #$01
|
1129 |
|
|
0647 D209 39 RTS
|
1130 |
|
|
0648
|
1131 |
|
|
0649 D20A 8D 73 ZD20A BSR RPTER1
|
1132 |
|
|
0650 D20C 7E CD E4 JMP >ZCDE4
|
1133 |
|
|
0651 *
|
1134 |
|
|
0652 ** 'GET' - LOAD BINARY FILE
|
1135 |
|
|
0653 *
|
1136 |
|
|
0654 D20F 86 00 GETCMD LDA #$00
|
1137 |
|
|
0655 D211 8D 35 BSR ZD248
|
1138 |
|
|
0656 D213 25 0F BCS ZD224
|
1139 |
|
|
0657 D215 8D 07 BSR ZD21E
|
1140 |
|
|
0658 D217 7C CC 4C INC >ZCC4C
|
1141 |
|
|
0659 D21A 8D 86 BSR LOAD1
|
1142 |
|
|
0660 D21C 20 F1 BRA GETCMD
|
1143 |
|
|
0661
|
1144 |
|
|
0662 D21E 4F ZD21E CLRA
|
1145 |
|
|
0663 D21F 5F CLRB
|
1146 |
|
|
0664 D220 FD CC 1B STD >LODOFF
|
1147 |
|
|
0665 D223 39 RTS
|
1148 |
|
|
0666
|
1149 |
|
|
0667 D224 F6 CC 4C ZD224 LDB >ZCC4C
|
1150 |
|
|
0668 D227 10 27 FB AE LBEQ ZCDD9
|
1151 |
|
|
0669 D22B 7E CD 03 JMP >WARMS
|
1152 |
|
|
0670
|
1153 |
|
|
0671 D22E 86 02 ZD22E LDA #$02
|
1154 |
|
|
0672 D230 8D 22 BSR ZD254
|
1155 |
|
|
0673 D232 8D EA BSR ZD21E
|
1156 |
|
|
0674 D234 BD D1 A2 JSR >LOAD1
|
1157 |
|
|
0675 D237 F6 CC 1D LDB >TRNFLG
|
1158 |
|
|
0676 D23A 27 04 BEQ ZD240
|
1159 |
|
|
0677 D23C 6E 9F CC 1E JMP [TRNVEC]
|
1160 |
|
|
0678
|
1161 |
|
|
0679 D240 8E CC 5C ZD240 LDX #NTRMSG
|
1162 |
|
|
0680 D243 86 81 LDA #$81
|
1163 |
|
|
0681 D245 7E CD DE JMP >ZCDDE
|
1164 |
|
|
0682
|
1165 |
|
|
0683 D248 34 02 ZD248 PSHS A
|
1166 |
|
|
0684 D24A 8E C8 40 LDX #FCB
|
1167 |
|
|
0685 D24D BD D0 36 JSR >GETFL1
|
1168 |
|
|
0686 D250 35 02 PULS A
|
1169 |
|
|
0687 D252 25 1A BCS ZD26E
|
1170 |
|
|
0688 D254 8E C8 40 ZD254 LDX #FCB
|
1171 |
|
|
0689 D257 BD D0 EB JSR >SETEX1
|
1172 |
|
|
0690 D25A 8E C8 40 LDX #FCB
|
1173 |
|
|
0691 D25D 86 01 LDA #$01
|
1174 |
|
|
0692 D25F A7 84 STA ,X
|
1175 |
|
|
0693 D261 BD D1 E4 JSR >ZD1E4
|
1176 |
|
|
0694 D264 10 25 00 BB LBCS ZD323
|
1177 |
|
|
0695 D268 86 FF LDA #$FF
|
1178 |
|
|
0696 D26A A7 88 3B STA $3B,X
|
1179 |
|
|
0697 D26D 39 RTS
|
1180 |
|
|
0698
|
1181 |
|
|
0699 D26E B6 CC 11 ZD26E LDA >LASTRM
|
1182 |
|
|
0700 D271 81 0D CMPA #$0D
|
1183 |
|
|
0701 D273 27 07 BEQ ZD27C
|
1184 |
|
|
0702 D275 B1 CC 02 CMPA >EOLCHR
|
1185 |
|
|
0703 D278 10 26 FB 5D LBNE ZCDD9
|
1186 |
|
|
0704 D27C 1A 01 ZD27C ORCC #$01
|
1187 |
|
|
0705 D27E 39 RTS
|
1188 |
|
|
0706
|
1189 |
|
|
0707 D27F 34 30 RPTER1 PSHS Y,X
|
1190 |
|
|
0708 D281 A6 01 LDA $01,X
|
1191 |
|
|
0709 D283 B7 CC 20 STA >ERRTYP
|
1192 |
|
|
0710 D286 27 63 BEQ ZD2EB
|
1193 |
|
|
0711 D288 BD CD EA JSR >RSTIO1
|
1194 |
|
|
0712 D28B 10 BE CC 2D LDY >ERRVEC
|
1195 |
|
|
0713 D28F 26 08 BNE ZD299
|
1196 |
|
|
0714 D291 81 10 CMPA #$10
|
1197 |
|
|
0715 D293 27 58 BEQ ZD2ED
|
1198 |
|
|
0716 D295 10 8E D3 61 LDY #ZD361
|
1199 |
|
|
0717 D299 8E C8 40 ZD299 LDX #FCB
|
1200 |
|
|
0718 D29C 6D 02 TST $02,X
|
1201 |
|
|
0719 D29E 27 09 BEQ ZD2A9
|
1202 |
|
|
0720 D2A0 86 04 LDA #$04
|
1203 |
|
|
0721 D2A2 A7 84 STA ,X
|
1204 |
|
|
0722 D2A4 BD D4 06 JSR >FMS
|
1205 |
|
|
0723 D2A7 26 2E BNE ZD2D7
|
1206 |
|
|
0724 D2A9 8E C8 38 ZD2A9 LDX #ZC838
|
1207 |
|
|
0725 D2AC C6 0B LDB #$0B
|
1208 |
|
|
0726 D2AE 8D 6E BSR ZD31E
|
1209 |
|
|
0727 D2B0 8E C8 40 LDX #FCB
|
1210 |
|
|
0728 D2B3 B6 CC 0B LDA >SYSDRV
|
1211 |
|
|
0729 D2B6 A7 03 STA $03,X
|
1212 |
|
|
0730 D2B8 86 01 LDA #$01
|
1213 |
|
|
0731 D2BA A7 84 STA ,X
|
1214 |
|
|
0732 D2BC BD D4 06 JSR >FMS
|
1215 |
|
|
0733 D2BF 26 16 BNE ZD2D7
|
1216 |
|
|
0734 D2C1 B6 CC 20 LDA >ERRTYP
|
1217 |
|
|
0735 D2C4 4A DECA
|
1218 |
|
|
0736 D2C5 47 ASRA
|
1219 |
|
|
0737 D2C6 47 ASRA
|
1220 |
|
|
0738 D2C7 4C INCA
|
1221 |
|
|
0739 D2C8 6F 88 20 CLR $20,X
|
1222 |
|
|
0740 D2CB A7 88 21 STA $21,X
|
1223 |
|
|
0741 D2CE 86 15 LDA #$15
|
1224 |
|
|
0742 D2D0 A7 84 STA ,X
|
1225 |
|
|
0743 D2D2 BD D4 06 JSR >FMS
|
1226 |
|
|
0744 D2D5 27 1E BEQ ZD2F5
|
1227 |
|
|
0745 D2D7 8E CC 75 ZD2D7 LDX #DERMSG
|
1228 |
|
|
0746 D2DA BD CE 81 JSR >PSTRG1
|
1229 |
|
|
0747 D2DD BE CC 3F LDX >ZCC3F
|
1230 |
|
|
0748 D2E0 B6 CC 20 LDA >ERRTYP
|
1231 |
|
|
0749 D2E3 A7 01 STA $01,X
|
1232 |
|
|
0750 D2E5 6F 84 CLR ,X
|
1233 |
|
|
0751 D2E7 5F CLRB
|
1234 |
|
|
0752 D2E8 BD CF 86 JSR >OUTDC1
|
1235 |
|
|
0753 D2EB 35 B0 ZD2EB PULS PC,Y,X
|
1236 |
|
|
0754
|
1237 |
|
|
0755 D2ED 8E CC 82 ZD2ED LDX #DNRMSG
|
1238 |
|
|
0756 D2F0 BD CE 81 JSR >PSTRG1
|
1239 |
|
|
0757 D2F3 20 F6 BRA ZD2EB
|
1240 |
|
|
0758
|
1241 |
|
|
0759 D2F5 BD CE B5 ZD2F5 JSR >PCRLF1
|
1242 |
|
|
0760 D2F8 8E C8 40 LDX #FCB
|
1243 |
|
|
0761 D2FB B6 CC 20 LDA >ERRTYP
|
1244 |
|
|
0762 D2FE 4A DECA
|
1245 |
|
|
0763 D2FF 84 03 ANDA #$03
|
1246 |
|
|
0764 D301 C6 3F LDB #$3F
|
1247 |
|
|
0765 D303 3D MUL
|
1248 |
|
|
0766 D304 CB 04 ADDB #$04
|
1249 |
|
|
0767 D306 E7 88 22 STB $22,X
|
1250 |
|
|
0768 D309 BD D4 06 ZD309 JSR >FMS
|
1251 |
|
|
0769 D30C 26 C9 BNE ZD2D7
|
1252 |
|
|
0770 D30E BD CF 41 JSR >PUTCH1
|
1253 |
|
|
0771 D311 81 0D CMPA #$0D
|
1254 |
|
|
0772 D313 26 F4 BNE ZD309
|
1255 |
|
|
0773 D315 86 04 LDA #$04
|
1256 |
|
|
0774 D317 A7 84 STA ,X
|
1257 |
|
|
0775 D319 BD D4 06 JSR >FMS
|
1258 |
|
|
0776 D31C 20 CD BRA ZD2EB
|
1259 |
|
|
0777 D31E 34 30 ZD31E PSHS Y,X
|
1260 |
|
|
0778 D320 7E D1 00 JMP >ZD100
|
1261 |
|
|
0779
|
1262 |
|
|
0780 D323 8E CC 6B ZD323 LDX #NFDMSG NOT FOUND
|
1263 |
|
|
0781 D326 7E CD E1 JMP >ZCDE1
|
1264 |
|
|
0782 *
|
1265 |
|
|
0783 ** CALL FLEX AS A SUBROUTINE
|
1266 |
|
|
0784 *
|
1267 |
|
|
0785 D329 35 06 DOCMD1 PULS B,A
|
1268 |
|
|
0786 D32B FD CC 43 STD >ZCC43
|
1269 |
|
|
0787 D32E 10 FF CC 45 ZD32E STS >ZCC45
|
1270 |
|
|
0788 D332 7F CC 20 CLR >ERRTYP
|
1271 |
|
|
0789 D335 7C CC 28 INC >CMDFLG
|
1272 |
|
|
0790 D338 7E CD B8 JMP >ZCDB8
|
1273 |
|
|
0791 D33B 7F CC 28 ZD33B CLR >CMDFLG
|
1274 |
|
|
0792 D33E 10 FE CC 45 LDS >ZCC45
|
1275 |
|
|
0793 D342 F6 CC 20 LDB >ERRTYP
|
1276 |
|
|
0794 D345 6E 9F CC 43 JMP [ZCC43]
|
1277 |
|
|
0795 *
|
1278 |
|
|
0796 ** ADD ACCB TO IX
|
1279 |
|
|
0797 *
|
1280 |
|
|
0798 D349 3A ADDBX1 ABX
|
1281 |
|
|
0799 D34A 39 RTS
|
1282 |
|
|
0800
|
1283 |
|
|
0801 D34B 7D CC FC ZD34B TST >ZCCFC
|
1284 |
|
|
0802 D34E 26 04 BNE ZD354
|
1285 |
|
|
0803 D350 6E 9F D3 F3 JMP [MONVEC]
|
1286 |
|
|
0804
|
1287 |
|
|
0805 D354 8E C8 40 ZD354 LDX #FCB
|
1288 |
|
|
0806 D357 86 1B LDA #$1B
|
1289 |
|
|
0807 D359 A7 01 STA $01,X
|
1290 |
|
|
0808 D35B BD D2 7F JSR >RPTER1
|
1291 |
|
|
0809 D35E 7E CD 67 JMP >WARM1
|
1292 |
|
|
0810
|
1293 |
|
|
0811 D361 45 52 52 4F 52 53 ZD361 FCC /ERRORS/
|
1294 |
|
|
0812 D367 00 00 FCB $00,$00
|
1295 |
|
|
0813 D369 53 59 53 FCC /SYS/
|
1296 |
|
|
0009 END
|
1297 |
|
|
0000 INCLUDE "f9-monio.txt"
|
1298 |
|
|
0001 *
|
1299 |
|
|
0002 ** TERMINAL AND PRINTER DRIVERS
|
1300 |
|
|
0003 ** SYS09BUG - Spartan 3 Starter Board
|
1301 |
|
|
0004 *
|
1302 |
|
|
0005 ** FLEX DRIVER MEMORY MAP:
|
1303 |
|
|
0006 ** C700 - C83F PRINTER SPOOLER
|
1304 |
|
|
0007 ** CCC0 - CCF7 PRINTER DRIVERS
|
1305 |
|
|
0008 ** D370 - D3FF CONSOLE DRIVERS
|
1306 |
|
|
0009 ** DE00 - DFAF DISK DRIVERS
|
1307 |
|
|
0010 *
|
1308 |
|
|
0011 *
|
1309 |
|
|
0012 ** INTERRUPT VECTORS
|
1310 |
|
|
0013 *
|
1311 |
|
|
0014 DFC8 IRQVEC EQU MONRAM+$08
|
1312 |
|
|
0015 DFC2 SWIVEC EQU MONRAM+$02 SWI3 VECTOR
|
1313 |
|
|
0016 *
|
1314 |
|
|
0017 ** PRINTER DRIVERS
|
1315 |
|
|
0018 *
|
1316 |
|
|
0019 CCC0 ORG $CCC0
|
1317 |
|
|
0020 CCC0 7E D3 70 PINIT JMP DUMRTS INITIATE PRINTER
|
1318 |
|
|
0021 CCD8 ORG $CCD8
|
1319 |
|
|
0022 CCD8 7E D3 70 PCHK JMP DUMRTS CHECK IF PRINTER READY
|
1320 |
|
|
0023 CCE4 ORG $CCE4
|
1321 |
|
|
0024 CCE4 7E D3 70 POUT JMP DUMRTS OUTPUT CHR. TO PRINTER
|
1322 |
|
|
0025 CCF8 ORG $CCF8
|
1323 |
|
|
0026 CCF8 01 00 00 00 ZCCF8 FCB $01,$00,$00,$00
|
1324 |
|
|
0027 CCFC 00 00 00 00 ZCCFC FCB $00,$00,$00,$00
|
1325 |
|
|
0028 *
|
1326 |
|
|
0029 ** CONSOLE DRIVER PATCHES:
|
1327 |
|
|
0030 *
|
1328 |
|
|
0031 D370 ORG $D370
|
1329 |
|
|
0032 D370 IHND EQU * INTERRUPT HANDLER
|
1330 |
|
|
0033 D370 TMON EQU * TIMER ON
|
1331 |
|
|
0034 D370 TMOFF EQU * TIMER OFF
|
1332 |
|
|
0035 D370 TMINT EQU * TIMER INITIALIZATION
|
1333 |
|
|
0036 D370 DUMRTS EQU *
|
1334 |
|
|
0037 D370 39 RTS
|
1335 |
|
|
0038 *
|
1336 |
|
|
0039 ** SBUG MONITOR I/O CALLS
|
1337 |
|
|
0040 *
|
1338 |
|
|
0041 D371 7E D3 70 TERINZ JMP DUMRTS INITIATE ACIA
|
1339 |
|
|
0042 D374 6E 9F F8 04 INCHNE JMP [MONROM+$04] INPUT WITHOUT ECHO
|
1340 |
|
|
0043 D378 6E 9F F8 00 MONITR JMP [MONROM+$00]
|
1341 |
|
|
0044 D37C 6E 9F F8 08 INCHEK JMP [MONROM+$08] CHECK FOR TERMINAL ENTRY
|
1342 |
|
|
0045 D380 6E 9F F8 0A OUTEEE JMP [MONROM+$0A] OUPUT CHARACTER
|
1343 |
|
|
0046 D384 6E 9F F8 06 INEEE JMP [MONROM+$06] INPUT WITH ECHO
|
1344 |
|
|
0047
|
1345 |
|
|
0048 *
|
1346 |
|
|
0049 ** AUTO BLOCK FDBS
|
1347 |
|
|
0050 *
|
1348 |
|
|
0051 D3E5 ORG $D3E5
|
1349 |
|
|
0052 D3E5 D3 74 ZD3E5 FDB INCHNE INPUT - NO ECHO
|
1350 |
|
|
0053 D3E7 D3 70 IHNDVC FDB IHND IRQ INTERRUPT HANDLER
|
1351 |
|
|
0054 D3E9 DF C2 SWIVVC FDB SWIVEC SWI3 VECTOR LOCATION
|
1352 |
|
|
0055 D3EB DF C8 IRQVVC FDB IRQVEC IRQ VECTOR LOCATION
|
1353 |
|
|
0056 D3ED D3 70 TOFVEC FDB TMOFF TIMER OFF ROUTINE
|
1354 |
|
|
0057 D3EF D3 70 TONVEC FDB TMON TIMER ON ROUTINE
|
1355 |
|
|
0058 D3F1 D3 70 TINVEC FDB TMINT TIMER INITIALIZE ROUTINE
|
1356 |
|
|
0059 D3F3 D3 78 MONVEC FDB MONITR MONITOR RETURN ADDRESS
|
1357 |
|
|
0060 D3F5 D3 71 TERVEC FDB TERINZ TERMINAL INITIATION
|
1358 |
|
|
0061 D3F7 D3 7C STAVEC FDB INCHEK CHECK TERMINAL STATUS
|
1359 |
|
|
0062 D3F9 D3 80 OUTVEC FDB OUTEEE TERMINAL CHAR OUTPUT
|
1360 |
|
|
0063 D3FB D3 84 INVEC FDB INEEE TERMINAL INPUT CHARACTER
|
1361 |
|
|
0064 D3FD 7E CA 00 ZD3FD JMP ZCA00
|
1362 |
|
|
0010 END
|
1363 |
|
|
0000 INCLUDE "f9-fms.txt"
|
1364 |
|
|
0001 *
|
1365 |
|
|
0002 ** FILE MANAGEMENT SYSTEM
|
1366 |
|
|
0003 *
|
1367 |
|
|
0004 D400 7E D4 36 ZD400 JMP >ZD436
|
1368 |
|
|
0005 D403 7E D4 59 FMSCLS JMP >ZD459
|
1369 |
|
|
0006 D406 7E D4 7B FMS JMP >FMS1
|
1370 |
|
|
0007 D409 20 44 49 53 4B 20 CPYMSG FCC / DISK OPERATING SYSTEM/
|
1371 |
|
|
4F 50 45 52 41 54
|
1372 |
|
|
49 4E 47 20 53 59
|
1373 |
|
|
53 54 45 4D
|
1374 |
|
|
0008 D41F 20 43 4F 50 59 52 FCC / COPYRIGHT (C) 1980 BY/
|
1375 |
|
|
49 47 48 54 20 28
|
1376 |
|
|
43 29 20 31 39 38
|
1377 |
|
|
30 20 42 59
|
1378 |
|
|
0009 D435 20 54 45 43 48 4E FCC / TECHNICAL SYSTEMS CONSULTANTS/
|
1379 |
|
|
49 43 41 4C 20 53
|
1380 |
|
|
59 53 54 45 4D 53
|
1381 |
|
|
20 43 4F 4E 53 55
|
1382 |
|
|
4C 54 41 4E 54 53
|
1383 |
|
|
0010 D409 ORG CPYMSG
|
1384 |
|
|
0011 D409 FCBPTR RMB 2
|
1385 |
|
|
0012 D40B CURFCB RMB 4
|
1386 |
|
|
0013 D40F ZD40F RMB 2
|
1387 |
|
|
0014 D411 ZD411 RMB 1
|
1388 |
|
|
0015 D412 ZD412 RMB 1
|
1389 |
|
|
0016 D413 ZD413 RMB 1
|
1390 |
|
|
0017 D414 ZD414 RMB 1
|
1391 |
|
|
0018 D415 ZD415 RMB 2
|
1392 |
|
|
0019 D417 ZD417 RMB 1
|
1393 |
|
|
0020 D418 ZD418 RMB 2
|
1394 |
|
|
0021 D41A ZD41A RMB 1
|
1395 |
|
|
0022 D41B ZD41B RMB 2
|
1396 |
|
|
0023 D41D ZD41D RMB 24
|
1397 |
|
|
0024 D435 FF VERFLG FCB $FF
|
1398 |
|
|
0025 *
|
1399 |
|
|
0026 **
|
1400 |
|
|
0027 *
|
1401 |
|
|
0028 D436 BD DE 15 ZD436 JSR >COLDDR
|
1402 |
|
|
0029 D439 8E D4 09 LDX #FCBPTR
|
1403 |
|
|
0030 D43C C6 0A LDB #$0A
|
1404 |
|
|
0031 D43E 8D 11 BSR ZD451
|
1405 |
|
|
0032 D440 8E 00 05 LDX #Z0005
|
1406 |
|
|
0033 D443 BF D4 13 STX >ZD413
|
1407 |
|
|
0034 D446 BF D4 15 STX >ZD415
|
1408 |
|
|
0035 D449 7F D4 1A CLR >ZD41A
|
1409 |
|
|
0036 D44C 8E D4 1B ZD44C LDX #ZD41B
|
1410 |
|
|
0037 D44F C6 1A LDB #$1A
|
1411 |
|
|
0038 D451 6F 80 ZD451 CLR ,X+
|
1412 |
|
|
0039 D453 5A DECB
|
1413 |
|
|
0040 D454 26 FB BNE ZD451
|
1414 |
|
|
0041 D456 7E C7 0C JMP >PRSPL5
|
1415 |
|
|
0042
|
1416 |
|
|
0043 D459 BD C7 09 ZD459 JSR >PRSPL4
|
1417 |
|
|
0044 D45C BE D4 09 ZD45C LDX >FCBPTR
|
1418 |
|
|
0045 D45F 27 EB BEQ ZD44C
|
1419 |
|
|
0046 D461 30 88 E4 LEAX -$1C,X
|
1420 |
|
|
0047 D464 BF D4 0B STX >CURFCB
|
1421 |
|
|
0048 D467 34 20 PSHS Y
|
1422 |
|
|
0049 D469 BD DA C3 JSR >CLOSE
|
1423 |
|
|
0050 D46C 35 20 PULS Y
|
1424 |
|
|
0051 D46E 24 EC BCC ZD45C
|
1425 |
|
|
0052 D470 BE D4 0B LDX >CURFCB
|
1426 |
|
|
0053 D473 6F 02 CLR $02,X
|
1427 |
|
|
0054 D475 BD C7 0C JSR >PRSPL5
|
1428 |
|
|
0055 D478 C6 FF LDB #$FF
|
1429 |
|
|
0056 D47A 39 RTS
|
1430 |
|
|
0057
|
1431 |
|
|
0058 *
|
1432 |
|
|
0059 ** FMS CALL, PROCESSING
|
1433 |
|
|
0060 *
|
1434 |
|
|
0061 D47B 7D CC FC FMS1 TST >ZCCFC
|
1435 |
|
|
0062 D47E 27 03 BEQ ZD483
|
1436 |
|
|
0063 D480 BD C7 09 JSR >PRSPL4
|
1437 |
|
|
0064 D483 34 24 ZD483 PSHS Y,B
|
1438 |
|
|
0065 D485 BF D4 0B STX >CURFCB
|
1439 |
|
|
0066 D488 6F 01 CLR $01,X
|
1440 |
|
|
0067 D48A E6 84 LDB ,X
|
1441 |
|
|
0068 D48C 26 22 BNE DOFUNC
|
1442 |
|
|
0069 *
|
1443 |
|
|
0070 ** READ/WRITE CHAR/BYTE
|
1444 |
|
|
0071 *
|
1445 |
|
|
0072 D48E E6 02 LDB $02,X
|
1446 |
|
|
0073 D490 27 1A BEQ ZD4AC
|
1447 |
|
|
0074 D492 C1 02 CMPB #$02
|
1448 |
|
|
0075 D494 27 11 BEQ ZD4A7
|
1449 |
|
|
0076 D496 BD D5 B4 JSR >ZD5B4
|
1450 |
|
|
0077 D499 BE D4 0B ZD499 LDX >CURFCB
|
1451 |
|
|
0078 D49C 25 26 BCS ZD4C4
|
1452 |
|
|
0079 D49E 7D CC FC TST >ZCCFC
|
1453 |
|
|
0080 D4A1 26 23 BNE ZD4C6
|
1454 |
|
|
0081 D4A3 5F CLRB
|
1455 |
|
|
0082 D4A4 35 24 PULS Y,B
|
1456 |
|
|
0083 D4A6 39 RTS
|
1457 |
|
|
0084
|
1458 |
|
|
0085 D4A7 BD D6 CF ZD4A7 JSR >ZD6CF
|
1459 |
|
|
0086 D4AA 20 ED BRA ZD499
|
1460 |
|
|
0087 D4AC C6 12 ZD4AC LDB #$12
|
1461 |
|
|
0088 D4AE 20 14 BRA ZD4C4
|
1462 |
|
|
0089
|
1463 |
|
|
0090 D4B0 C1 16 DOFUNC CMPB #$16
|
1464 |
|
|
0091 D4B2 23 04 BLS DOFUN1
|
1465 |
|
|
0092 D4B4 C6 01 LDB #$01
|
1466 |
|
|
0093 D4B6 20 0C BRA ZD4C4
|
1467 |
|
|
0094 D4B8 5A DOFUN1 DECB
|
1468 |
|
|
0095 D4B9 58 ASLB
|
1469 |
|
|
0096 D4BA 8E D4 CE LDX #FMSTBL
|
1470 |
|
|
0097 D4BD AD 95 JSR [B,X]
|
1471 |
|
|
0098 D4BF BE D4 0B LDX >CURFCB
|
1472 |
|
|
0099 D4C2 24 02 BCC ZD4C6
|
1473 |
|
|
0100 D4C4 E7 01 ZD4C4 STB $01,X
|
1474 |
|
|
0101 D4C6 BD C7 0C ZD4C6 JSR >PRSPL5
|
1475 |
|
|
0102 D4C9 6D 01 TST $01,X
|
1476 |
|
|
0103 D4CB 35 24 PULS Y,B
|
1477 |
|
|
0104 D4CD 39 RTS
|
1478 |
|
|
0105 *
|
1479 |
|
|
0106 ** FMS COMMAND VECTOR TABLE
|
1480 |
|
|
0107 *
|
1481 |
|
|
0108 D4CE D9 86 FMSTBL FDB OPENRD FC 1
|
1482 |
|
|
0109 D4D0 D9 D9 FDB OPENWR FC 2
|
1483 |
|
|
0110 D4D2 DA F9 FDB OPENUD FC 3
|
1484 |
|
|
0111 D4D4 DA C3 FDB CLOSE FC 4
|
1485 |
|
|
0112 D4D6 D5 E2 FDB REWIND FC 5
|
1486 |
|
|
0113 D4D8 D8 1D FDB OPNDIR FC 6
|
1487 |
|
|
0114 D4DA D8 38 FDB GETREC FC 7
|
1488 |
|
|
0115 D4DC D8 76 FDB PUTREC FC 8
|
1489 |
|
|
0116 D4DE D6 41 FDB RDSECT FC 9
|
1490 |
|
|
0117 D4E0 D6 9F FDB WRSECT FC 10
|
1491 |
|
|
0118 D4E2 D9 69 FDB RESV1 FC 11
|
1492 |
|
|
0119 D4E4 DB D6 FDB DELETE FC 12
|
1493 |
|
|
0120 D4E6 DB 2C FDB RENAME FC 13
|
1494 |
|
|
0121 D4E8 D6 99 FDB RESV2 FC 14
|
1495 |
|
|
0122 D4EA DA 87 FDB NXTSEC FC 15
|
1496 |
|
|
0123 D4EC D8 10 FDB OPNREC FC 16
|
1497 |
|
|
0124 D4EE D5 6F FDB GETBYT FC 17
|
1498 |
|
|
0125 D4F0 D5 90 FDB PUTBYT FC 18
|
1499 |
|
|
0126 D4F2 DB 07 FDB RESV3 FC 19
|
1500 |
|
|
0127 D4F4 DD BD FDB NXTDRV FC 20
|
1501 |
|
|
0128 D4F6 DC FB FDB POSREC FC 21
|
1502 |
|
|
0129 D4F8 DC E5 FDB BAKREC FC 22
|
1503 |
|
|
0130 *
|
1504 |
|
|
0131 **
|
1505 |
|
|
0132 *
|
1506 |
|
|
0133 D4FA 8D 20 ZD4FA BSR ZD51C
|
1507 |
|
|
0134 D4FC 26 05 BNE ZD503
|
1508 |
|
|
0135 D4FE C6 02 LDB #$02
|
1509 |
|
|
0136 D500 1A 01 ORCC #$01
|
1510 |
|
|
0137 D502 39 RTS
|
1511 |
|
|
0138
|
1512 |
|
|
0139 D503 ED 84 ZD503 STD ,X
|
1513 |
|
|
0140 D505 AE 84 LDX ,X
|
1514 |
|
|
0141 D507 6F 84 CLR ,X
|
1515 |
|
|
0142 D509 6F 01 CLR $01,X
|
1516 |
|
|
0143 D50B 39 RTS
|
1517 |
|
|
0144
|
1518 |
|
|
0145 D50C 8D 0E ZD50C BSR ZD51C
|
1519 |
|
|
0146 D50E 27 05 BEQ ZD515
|
1520 |
|
|
0147 D510 C6 0D LDB #$0D
|
1521 |
|
|
0148 D512 1A 01 ORCC #$01
|
1522 |
|
|
0149 D514 39 RTS
|
1523 |
|
|
0150
|
1524 |
|
|
0151 D515 EC 94 ZD515 LDD [,X]
|
1525 |
|
|
0152 D517 ED 84 STD ,X
|
1526 |
|
|
0153 D519 1C FE ANDCC #$FE
|
1527 |
|
|
0154 D51B 39 RTS
|
1528 |
|
|
0155
|
1529 |
|
|
0156 D51C FC D4 0B ZD51C LDD >CURFCB
|
1530 |
|
|
0157 D51F C3 00 1C ADDD #$001C
|
1531 |
|
|
0158 D522 8E D4 09 LDX #FCBPTR
|
1532 |
|
|
0159 D525 10 AE 84 ZD525 LDY ,X
|
1533 |
|
|
0160 D528 26 03 BNE ZD52D
|
1534 |
|
|
0161 D52A 1C FB ANDCC #$FB
|
1535 |
|
|
0162 D52C 39 RTS
|
1536 |
|
|
0163
|
1537 |
|
|
0164 D52D 10 A3 84 ZD52D CMPD ,X
|
1538 |
|
|
0165 D530 26 01 BNE ZD533
|
1539 |
|
|
0166 D532 39 RTS
|
1540 |
|
|
0167 D533 AE 84 ZD533 LDX ,X
|
1541 |
|
|
0168 D535 20 EE BRA ZD525
|
1542 |
|
|
0169
|
1543 |
|
|
0170 D537 BE D4 0B ZD537 LDX >CURFCB
|
1544 |
|
|
0171 D53A 4F CLRA
|
1545 |
|
|
0172 D53B 5F CLRB
|
1546 |
|
|
0173 D53C 8D 02 BSR ZD540
|
1547 |
|
|
0174 D53E C6 2F LDB #$2F
|
1548 |
|
|
0175 D540 A7 88 11 ZD540 STA $11,X
|
1549 |
|
|
0176 D543 30 01 LEAX $01,X
|
1550 |
|
|
0177 D545 5A DECB
|
1551 |
|
|
0178 D546 26 F8 BNE ZD540
|
1552 |
|
|
0179 D548 39 RTS
|
1553 |
|
|
0180
|
1554 |
|
|
0181 D549 BE D4 0B ZD549 LDX >CURFCB
|
1555 |
|
|
0182 D54C C6 0B LDB #$0B
|
1556 |
|
|
0183 D54E A6 04 ZD54E LDA $04,X
|
1557 |
|
|
0184 D550 A7 88 24 STA $24,X
|
1558 |
|
|
0185 D553 30 01 LEAX $01,X
|
1559 |
|
|
0186 D555 5A DECB
|
1560 |
|
|
0187 D556 26 F6 BNE ZD54E
|
1561 |
|
|
0188 D558 39 RTS
|
1562 |
|
|
0189
|
1563 |
|
|
0190 D559 BE D4 0B ZD559 LDX >CURFCB
|
1564 |
|
|
0191 D55C C6 0B LDB #$0B
|
1565 |
|
|
0192 D55E A6 04 ZD55E LDA $04,X
|
1566 |
|
|
0193 D560 34 02 PSHS A
|
1567 |
|
|
0194 D562 A6 88 24 LDA $24,X
|
1568 |
|
|
0195 D565 A1 E0 CMPA ,S+
|
1569 |
|
|
0196 D567 26 05 BNE ZD56E
|
1570 |
|
|
0197 D569 30 01 LEAX $01,X
|
1571 |
|
|
0198 D56B 5A DECB
|
1572 |
|
|
0199 D56C 26 F0 BNE ZD55E
|
1573 |
|
|
0200 D56E 39 ZD56E RTS
|
1574 |
|
|
0201 *
|
1575 |
|
|
0202 ** GET RANDOM BYTE FROM SECTOR
|
1576 |
|
|
0203 *
|
1577 |
|
|
0204 D56F BE D4 0B GETBYT LDX >CURFCB
|
1578 |
|
|
0205 D572 E6 02 LDB $02,X
|
1579 |
|
|
0206 D574 54 LSRB
|
1580 |
|
|
0207 D575 24 79 BCC ZD5F0
|
1581 |
|
|
0208 D577 E6 88 23 LDB $23,X
|
1582 |
|
|
0209 D57A 7E D6 00 JMP >ZD600
|
1583 |
|
|
0210
|
1584 |
|
|
0211 D57D BE D4 0B ZD57D LDX >CURFCB
|
1585 |
|
|
0212 D580 E6 88 22 LDB $22,X
|
1586 |
|
|
0213 D583 6C 88 22 INC $22,X
|
1587 |
|
|
0214 D586 3A ABX
|
1588 |
|
|
0215 D587 A7 88 40 STA $40,X
|
1589 |
|
|
0216 D58A 5C INCB
|
1590 |
|
|
0217 D58B 26 1F BNE ZD5AC
|
1591 |
|
|
0218 D58D 1A 01 ORCC #$01
|
1592 |
|
|
0219 D58F 39 RTS
|
1593 |
|
|
0220 *
|
1594 |
|
|
0221 ** PUT RANDOM BYTE IN SECTOR
|
1595 |
|
|
0222 *
|
1596 |
|
|
0223 D590 BE D4 0B PUTBYT LDX >CURFCB
|
1597 |
|
|
0224 D593 E6 02 LDB $02,X
|
1598 |
|
|
0225 D595 C4 03 ANDB #$03
|
1599 |
|
|
0226 D597 C1 03 CMPB #$03
|
1600 |
|
|
0227 D599 26 55 BNE ZD5F0
|
1601 |
|
|
0228 D59B CA 80 ORB #$80
|
1602 |
|
|
0229 D59D E7 02 STB $02,X
|
1603 |
|
|
0230 D59F E6 0F LDB $0F,X
|
1604 |
|
|
0231 D5A1 C5 80 BITB #$80
|
1605 |
|
|
0232 D5A3 26 0A BNE ZD5AF
|
1606 |
|
|
0233 D5A5 E6 88 23 LDB $23,X
|
1607 |
|
|
0234 D5A8 3A ABX
|
1608 |
|
|
0235 D5A9 A7 88 40 STA $40,X
|
1609 |
|
|
0236 D5AC 1C FE ZD5AC ANDCC #$FE
|
1610 |
|
|
0237 D5AE 39 RTS
|
1611 |
|
|
0238
|
1612 |
|
|
0239 D5AF C6 0B ZD5AF LDB #$0B
|
1613 |
|
|
0240 D5B1 1A 01 ORCC #$01
|
1614 |
|
|
0241 D5B3 39 RTS
|
1615 |
|
|
0242
|
1616 |
|
|
0243 D5B4 A6 88 3B ZD5B4 LDA $3B,X
|
1617 |
|
|
0244 D5B7 2B 3C BMI ZD5F5
|
1618 |
|
|
0245 D5B9 27 07 BEQ ZD5C2
|
1619 |
|
|
0246 D5BB 6A 88 3B DEC $3B,X
|
1620 |
|
|
0247 D5BE 86 20 LDA #$20
|
1621 |
|
|
0248 D5C0 20 1D BRA ZD5DF
|
1622 |
|
|
0249
|
1623 |
|
|
0250 D5C2 8D 31 ZD5C2 BSR ZD5F5
|
1624 |
|
|
0251 D5C4 25 1B BCS ZD5E1
|
1625 |
|
|
0252 D5C6 81 18 CMPA #$18
|
1626 |
|
|
0253 D5C8 22 15 BHI ZD5DF
|
1627 |
|
|
0254 D5CA 27 F6 BEQ ZD5C2
|
1628 |
|
|
0255 D5CC 81 09 CMPA #$09
|
1629 |
|
|
0256 D5CE 26 0C BNE ZD5DC
|
1630 |
|
|
0257 D5D0 8D 23 BSR ZD5F5
|
1631 |
|
|
0258 D5D2 25 0D BCS ZD5E1
|
1632 |
|
|
0259 D5D4 BE D4 0B LDX >CURFCB
|
1633 |
|
|
0260 D5D7 A7 88 3B STA $3B,X
|
1634 |
|
|
0261 D5DA 20 D8 BRA ZD5B4
|
1635 |
|
|
0262
|
1636 |
|
|
0263 D5DC 4D ZD5DC TSTA
|
1637 |
|
|
0264 D5DD 27 E3 BEQ ZD5C2
|
1638 |
|
|
0265 D5DF 1C FE ZD5DF ANDCC #$FE
|
1639 |
|
|
0266 D5E1 39 ZD5E1 RTS
|
1640 |
|
|
0267 *
|
1641 |
|
|
0268 ** REWIND FILE
|
1642 |
|
|
0269 *
|
1643 |
|
|
0270 D5E2 BD DA B1 REWIND JSR >ZDAB1
|
1644 |
|
|
0271 D5E5 25 09 BCS ZD5F0
|
1645 |
|
|
0272 D5E7 85 01 BITA #$01
|
1646 |
|
|
0273 D5E9 27 05 BEQ ZD5F0
|
1647 |
|
|
0274 D5EB A7 84 STA ,X
|
1648 |
|
|
0275 D5ED 7E D9 A0 JMP >ZD9A0
|
1649 |
|
|
0276
|
1650 |
|
|
0277 D5F0 C6 12 ZD5F0 LDB #$12
|
1651 |
|
|
0278 D5F2 1A 01 ORCC #$01
|
1652 |
|
|
0279 D5F4 39 RTS
|
1653 |
|
|
0280
|
1654 |
|
|
0281 D5F5 BE D4 0B ZD5F5 LDX >CURFCB
|
1655 |
|
|
0282 D5F8 E6 88 22 LDB $22,X
|
1656 |
|
|
0283 D5FB 27 0A BEQ ZD607
|
1657 |
|
|
0284 D5FD 6C 88 22 INC $22,X
|
1658 |
|
|
0285 D600 3A ZD600 ABX
|
1659 |
|
|
0286 D601 A6 88 40 LDA $40,X
|
1660 |
|
|
0287 D604 1C FE ANDCC #$FE
|
1661 |
|
|
0288 D606 39 RTS
|
1662 |
|
|
0289
|
1663 |
|
|
0290 D607 8D 03 ZD607 BSR ZD60C
|
1664 |
|
|
0291 D609 24 EA BCC ZD5F5
|
1665 |
|
|
0292 D60B 39 RTS
|
1666 |
|
|
0293
|
1667 |
|
|
0294 D60C BE D4 0B ZD60C LDX >CURFCB
|
1668 |
|
|
0295 D60F EC 88 40 LDD $40,X
|
1669 |
|
|
0296 D612 6C 88 21 INC $21,X
|
1670 |
|
|
0297 D615 26 03 BNE ZD61A
|
1671 |
|
|
0298 D617 6C 88 20 INC $20,X
|
1672 |
|
|
0299 D61A 10 83 00 00 ZD61A CMPD #$0000
|
1673 |
|
|
0300 D61E 27 1C BEQ ZD63C
|
1674 |
|
|
0301 D620 ED 88 1E ZD620 STD $1E,X
|
1675 |
|
|
0302 D623 34 02 PSHS A
|
1676 |
|
|
0303 D625 86 04 LDA #$04
|
1677 |
|
|
0304 D627 A7 88 22 STA $22,X
|
1678 |
|
|
0305 D62A 35 02 PULS A
|
1679 |
|
|
0306 D62C 8D 13 BSR RDSECT
|
1680 |
|
|
0307 D62E 24 10 BCC ZD640
|
1681 |
|
|
0308 D630 C5 80 BITB #$80
|
1682 |
|
|
0309 D632 27 04 BEQ ZD638
|
1683 |
|
|
0310 D634 C6 10 LDB #$10
|
1684 |
|
|
0311 D636 20 06 BRA ZD63E
|
1685 |
|
|
0312
|
1686 |
|
|
0313 D638 C6 09 ZD638 LDB #$09
|
1687 |
|
|
0314 D63A 20 02 BRA ZD63E
|
1688 |
|
|
0315
|
1689 |
|
|
0316 D63C C6 08 ZD63C LDB #$08
|
1690 |
|
|
0317 D63E 1A 01 ZD63E ORCC #$01
|
1691 |
|
|
0318 D640 39 ZD640 RTS
|
1692 |
|
|
0319 *
|
1693 |
|
|
0320 ** READ SINGLE SECTOR
|
1694 |
|
|
0321 *
|
1695 |
|
|
0322 D641 8D 25 RDSECT BSR ZD668
|
1696 |
|
|
0323 D643 BE D4 0B LDX >CURFCB
|
1697 |
|
|
0324 D646 BD DE 0C JSR >DRIVE
|
1698 |
|
|
0325 D649 25 12 BCS ZD65D
|
1699 |
|
|
0326 D64B 8D 11 ZD64B BSR ZD65E
|
1700 |
|
|
0327 D64D BD DE 00 JSR >READ
|
1701 |
|
|
0328 D650 26 03 BNE ZD655
|
1702 |
|
|
0329 D652 1C FE ANDCC #$FE
|
1703 |
|
|
0330 D654 39 RTS
|
1704 |
|
|
0331
|
1705 |
|
|
0332 D655 34 04 ZD655 PSHS B
|
1706 |
|
|
0333 D657 8D 17 BSR ZD670
|
1707 |
|
|
0334 D659 35 04 PULS B
|
1708 |
|
|
0335 D65B 24 EE BCC ZD64B
|
1709 |
|
|
0336 D65D 39 ZD65D RTS
|
1710 |
|
|
0337
|
1711 |
|
|
0338 D65E BE D4 0B ZD65E LDX >CURFCB
|
1712 |
|
|
0339 D661 EC 88 1E LDD $1E,X
|
1713 |
|
|
0340 D664 30 88 40 LEAX $40,X
|
1714 |
|
|
0341 D667 39 RTS
|
1715 |
|
|
0342
|
1716 |
|
|
0343 D668 4F ZD668 CLRA
|
1717 |
|
|
0344 D669 B7 D4 11 STA >ZD411
|
1718 |
|
|
0345 D66C B7 D4 12 STA >ZD412
|
1719 |
|
|
0346 D66F 39 RTS
|
1720 |
|
|
0347
|
1721 |
|
|
0348 D670 C5 10 ZD670 BITB #$10
|
1722 |
|
|
0349 D672 26 11 BNE ZD685
|
1723 |
|
|
0350 D674 C5 80 BITB #$80
|
1724 |
|
|
0351 D676 26 24 BNE ZD69C
|
1725 |
|
|
0352 D678 F6 D4 11 LDB >ZD411
|
1726 |
|
|
0353 D67B 5C INCB
|
1727 |
|
|
0354 D67C C1 07 CMPB #$07
|
1728 |
|
|
0355 D67E 27 05 BEQ ZD685
|
1729 |
|
|
0356 D680 F7 D4 11 STB >ZD411
|
1730 |
|
|
0357 D683 20 14 BRA RESV2
|
1731 |
|
|
0358
|
1732 |
|
|
0359 D685 7F D4 11 ZD685 CLR >ZD411
|
1733 |
|
|
0360 D688 F6 D4 12 LDB >ZD412
|
1734 |
|
|
0361 D68B 5C INCB
|
1735 |
|
|
0362 D68C C1 04 CMPB #$04
|
1736 |
|
|
0363 D68E 27 0C BEQ ZD69C
|
1737 |
|
|
0364 D690 F7 D4 12 STB >ZD412
|
1738 |
|
|
0365 D693 BE D4 0B LDX >CURFCB
|
1739 |
|
|
0366 D696 BD DE 09 JSR >RESTOR
|
1740 |
|
|
0367 *
|
1741 |
|
|
0368 ** RESERVED
|
1742 |
|
|
0369 *
|
1743 |
|
|
0370 D699 1C FE RESV2 ANDCC #$FE
|
1744 |
|
|
0371 D69B 39 RTS
|
1745 |
|
|
0372 D69C 1A 01 ZD69C ORCC #$01
|
1746 |
|
|
0373 D69E 39 RTS
|
1747 |
|
|
0374 *
|
1748 |
|
|
0375 ** WRITE SINGLE SECTOR
|
1749 |
|
|
0376 *
|
1750 |
|
|
0377 D69F 8D C7 WRSECT BSR ZD668
|
1751 |
|
|
0378 D6A1 BE D4 0B LDX >CURFCB
|
1752 |
|
|
0379 D6A4 BD DE 0C JSR >DRIVE
|
1753 |
|
|
0380 D6A7 25 20 BCS ZD6C9
|
1754 |
|
|
0381 D6A9 BE D4 0B ZD6A9 LDX >CURFCB
|
1755 |
|
|
0382 D6AC 8D B0 BSR ZD65E
|
1756 |
|
|
0383 D6AE BD DE 03 JSR >WRITE
|
1757 |
|
|
0384 D6B1 26 0A BNE ZD6BD
|
1758 |
|
|
0385 D6B3 B6 D4 35 LDA >VERFLG
|
1759 |
|
|
0386 D6B6 27 37 BEQ ZD6EF
|
1760 |
|
|
0387 D6B8 BD DE 06 JSR >VERIFY
|
1761 |
|
|
0388 D6BB 27 32 BEQ ZD6EF
|
1762 |
|
|
0389 D6BD C5 40 ZD6BD BITB #$40
|
1763 |
|
|
0390 D6BF 26 0B BNE ZD6CC
|
1764 |
|
|
0391 D6C1 34 04 PSHS B
|
1765 |
|
|
0392 D6C3 8D AB BSR ZD670
|
1766 |
|
|
0393 D6C5 35 04 PULS B
|
1767 |
|
|
0394 D6C7 24 E0 BCC ZD6A9
|
1768 |
|
|
0395 D6C9 39 ZD6C9 RTS
|
1769 |
|
|
0396
|
1770 |
|
|
0397 D6CA C6 20 LDB #$20
|
1771 |
|
|
0398 D6CC 1A 01 ZD6CC ORCC #$01
|
1772 |
|
|
0399 D6CE 39 RTS
|
1773 |
|
|
0400
|
1774 |
|
|
0401 D6CF BE D4 0B ZD6CF LDX >CURFCB
|
1775 |
|
|
0402 D6D2 E6 88 3B LDB $3B,X
|
1776 |
|
|
0403 D6D5 2B 3D BMI ZD714
|
1777 |
|
|
0404 D6D7 81 20 CMPA #$20
|
1778 |
|
|
0405 D6D9 26 0F BNE ZD6EA
|
1779 |
|
|
0406 D6DB 5C INCB
|
1780 |
|
|
0407 D6DC E7 88 3B STB $3B,X
|
1781 |
|
|
0408 D6DF C1 7F CMPB #$7F
|
1782 |
|
|
0409 D6E1 26 0C BNE ZD6EF
|
1783 |
|
|
0410 D6E3 20 0D BRA ZD6F2
|
1784 |
|
|
0411
|
1785 |
|
|
0412 D6E5 8D 0B ZD6E5 BSR ZD6F2
|
1786 |
|
|
0413 D6E7 24 E6 BCC ZD6CF
|
1787 |
|
|
0414 D6E9 39 RTS
|
1788 |
|
|
0415
|
1789 |
|
|
0416 D6EA 5D ZD6EA TSTB
|
1790 |
|
|
0417 D6EB 27 27 BEQ ZD714
|
1791 |
|
|
0418 D6ED 20 F6 BRA ZD6E5
|
1792 |
|
|
0419
|
1793 |
|
|
0420 D6EF 1C FE ZD6EF ANDCC #$FE
|
1794 |
|
|
0421 D6F1 39 RTS
|
1795 |
|
|
0422
|
1796 |
|
|
0423 D6F2 34 02 ZD6F2 PSHS A
|
1797 |
|
|
0424 D6F4 C1 01 CMPB #$01
|
1798 |
|
|
0425 D6F6 26 04 BNE ZD6FC
|
1799 |
|
|
0426 D6F8 86 20 LDA #$20
|
1800 |
|
|
0427 D6FA 20 10 BRA ZD70C
|
1801 |
|
|
0428
|
1802 |
|
|
0429 D6FC 86 09 ZD6FC LDA #$09
|
1803 |
|
|
0430 D6FE 8D 14 BSR ZD714
|
1804 |
|
|
0431 D700 35 02 PULS A
|
1805 |
|
|
0432 D702 25 0F BCS ZD713
|
1806 |
|
|
0433 D704 34 02 PSHS A
|
1807 |
|
|
0434 D706 BE D4 0B LDX >CURFCB
|
1808 |
|
|
0435 D709 A6 88 3B LDA $3B,X
|
1809 |
|
|
0436 D70C 6F 88 3B ZD70C CLR $3B,X
|
1810 |
|
|
0437 D70F 8D 03 BSR ZD714
|
1811 |
|
|
0438 D711 35 02 PULS A
|
1812 |
|
|
0439 D713 39 ZD713 RTS
|
1813 |
|
|
0440
|
1814 |
|
|
0441 D714 BE D4 0B ZD714 LDX >CURFCB
|
1815 |
|
|
0442 D717 E6 02 LDB $02,X
|
1816 |
|
|
0443 D719 C1 02 CMPB #$02
|
1817 |
|
|
0444 D71B 10 26 FE D1 LBNE ZD5F0
|
1818 |
|
|
0445 D71F E6 88 22 LDB $22,X
|
1819 |
|
|
0446 D722 C1 04 CMPB #$04
|
1820 |
|
|
0447 D724 26 08 BNE ZD72E
|
1821 |
|
|
0448 D726 34 02 PSHS A
|
1822 |
|
|
0449 D728 8D 21 BSR ZD74B
|
1823 |
|
|
0450 D72A 35 02 PULS A
|
1824 |
|
|
0451 D72C 25 0F BCS ZD73D
|
1825 |
|
|
0452 D72E BD D5 7D ZD72E JSR >ZD57D
|
1826 |
|
|
0453 D731 24 0A BCC ZD73D
|
1827 |
|
|
0454 D733 C6 04 LDB #$04
|
1828 |
|
|
0455 D735 BE D4 0B LDX >CURFCB
|
1829 |
|
|
0456 D738 E7 88 22 STB $22,X
|
1830 |
|
|
0457 D73B 1C FE ANDCC #$FE
|
1831 |
|
|
0458 D73D 39 ZD73D RTS
|
1832 |
|
|
0459
|
1833 |
|
|
0460 D73E BE D4 0B ZD73E LDX >CURFCB
|
1834 |
|
|
0461 D741 4F CLRA
|
1835 |
|
|
0462 D742 5F CLRB
|
1836 |
|
|
0463 D743 ED 88 20 STD $20,X
|
1837 |
|
|
0464 D746 ED 88 42 STD $42,X
|
1838 |
|
|
0465 D749 20 27 BRA ZD772
|
1839 |
|
|
0466
|
1840 |
|
|
0467 D74B E6 88 12 ZD74B LDB $12,X
|
1841 |
|
|
0468 D74E 26 22 BNE ZD772
|
1842 |
|
|
0469 D750 E6 88 17 LDB $17,X
|
1843 |
|
|
0470 D753 27 44 BEQ ZD799
|
1844 |
|
|
0471 D755 6F 88 17 CLR $17,X
|
1845 |
|
|
0472 D758 8D 3F BSR ZD799
|
1846 |
|
|
0473 D75A 25 2A BCS ZD786
|
1847 |
|
|
0474 D75C 8D E0 BSR ZD73E
|
1848 |
|
|
0475 D75E 25 26 BCS ZD786
|
1849 |
|
|
0476 D760 8D DC BSR ZD73E
|
1850 |
|
|
0477 D762 25 22 BCS ZD786
|
1851 |
|
|
0478 D764 BE D4 0B LDX >CURFCB
|
1852 |
|
|
0479 D767 C6 02 LDB #$02
|
1853 |
|
|
0480 D769 E7 88 17 STB $17,X
|
1854 |
|
|
0481 D76C EC 88 11 LDD $11,X
|
1855 |
|
|
0482 D76F 7E DC 82 JMP >ZDC82
|
1856 |
|
|
0483
|
1857 |
|
|
0484 D772 8D 0E ZD772 BSR ZD782
|
1858 |
|
|
0485 D774 BE D4 0B LDX >CURFCB
|
1859 |
|
|
0486 D777 ED 88 40 STD $40,X
|
1860 |
|
|
0487 D77A BD D6 9F JSR >WRSECT
|
1861 |
|
|
0488 D77D 24 1A BCC ZD799
|
1862 |
|
|
0489 D77F 7E DB C1 JMP >ZDBC1
|
1863 |
|
|
0490
|
1864 |
|
|
0491 D782 8D 03 ZD782 BSR ZD787
|
1865 |
|
|
0492 D784 EC 84 LDD ,X
|
1866 |
|
|
0493 D786 39 ZD786 RTS
|
1867 |
|
|
0494
|
1868 |
|
|
0495 D787 BE D4 0B ZD787 LDX >CURFCB
|
1869 |
|
|
0496 D78A E6 03 LDB $03,X
|
1870 |
|
|
0497 D78C 86 06 LDA #$06
|
1871 |
|
|
0498 D78E 3D MUL
|
1872 |
|
|
0499 D78F 8E D4 1D LDX #ZD41D
|
1873 |
|
|
0500 D792 3A ABX
|
1874 |
|
|
0501 D793 BF D4 1B STX >ZD41B
|
1875 |
|
|
0502 D796 6D 84 TST ,X
|
1876 |
|
|
0503 D798 39 RTS
|
1877 |
|
|
0504
|
1878 |
|
|
0505 D799 8D E7 ZD799 BSR ZD782
|
1879 |
|
|
0506 D79B 26 05 BNE ZD7A2
|
1880 |
|
|
0507 D79D C6 07 LDB #$07
|
1881 |
|
|
0508 D79F 1A 01 ZD79F ORCC #$01
|
1882 |
|
|
0509 D7A1 39 RTS
|
1883 |
|
|
0510
|
1884 |
|
|
0511 D7A2 BE D4 0B ZD7A2 LDX >CURFCB
|
1885 |
|
|
0512 D7A5 ED 88 13 STD $13,X
|
1886 |
|
|
0513 D7A8 6D 88 12 TST $12,X
|
1887 |
|
|
0514 D7AB 26 03 BNE ZD7B0
|
1888 |
|
|
0515 D7AD ED 88 11 STD $11,X
|
1889 |
|
|
0516 D7B0 6C 88 16 ZD7B0 INC $16,X
|
1890 |
|
|
0517 D7B3 26 03 BNE ZD7B8
|
1891 |
|
|
0518 D7B5 6C 88 15 INC $15,X
|
1892 |
|
|
0519 D7B8 6D 88 17 ZD7B8 TST $17,X
|
1893 |
|
|
0520 D7BB 27 0B BEQ ZD7C8
|
1894 |
|
|
0521 D7BD BD DC 43 JSR >ZDC43
|
1895 |
|
|
0522 D7C0 25 DD BCS ZD79F
|
1896 |
|
|
0523 D7C2 BE D4 0B LDX >CURFCB
|
1897 |
|
|
0524 D7C5 EC 88 13 LDD $13,X
|
1898 |
|
|
0525 D7C8 BD D6 20 ZD7C8 JSR >ZD620
|
1899 |
|
|
0526 D7CB 25 D2 BCS ZD79F
|
1900 |
|
|
0527 D7CD BE D4 0B LDX >CURFCB
|
1901 |
|
|
0528 D7D0 EC 88 40 LDD $40,X
|
1902 |
|
|
0529 D7D3 34 06 PSHS B,A
|
1903 |
|
|
0530 D7D5 8D B0 BSR ZD787
|
1904 |
|
|
0531 D7D7 35 06 PULS B,A
|
1905 |
|
|
0532 D7D9 ED 84 STD ,X
|
1906 |
|
|
0533 D7DB 26 0A BNE ZD7E7
|
1907 |
|
|
0534 D7DD 6F 02 CLR $02,X
|
1908 |
|
|
0535 D7DF 6F 03 CLR $03,X
|
1909 |
|
|
0536 D7E1 6F 04 CLR $04,X
|
1910 |
|
|
0537 D7E3 6F 05 CLR $05,X
|
1911 |
|
|
0538 D7E5 20 08 BRA ZD7EF
|
1912 |
|
|
0539
|
1913 |
|
|
0540 D7E7 10 AE 04 ZD7E7 LDY $04,X
|
1914 |
|
|
0541 D7EA 31 3F LEAY -$01,Y
|
1915 |
|
|
0542 D7EC 10 AF 04 STY $04,X
|
1916 |
|
|
0543 D7EF 4F ZD7EF CLRA
|
1917 |
|
|
0544 D7F0 BE D4 0B LDX >CURFCB
|
1918 |
|
|
0545 D7F3 6C 88 21 INC $21,X
|
1919 |
|
|
0546 D7F6 26 03 BNE ZD7FB
|
1920 |
|
|
0547 D7F8 6C 88 20 INC $20,X
|
1921 |
|
|
0548 D7FB 5F ZD7FB CLRB
|
1922 |
|
|
0549 D7FC A7 88 40 ZD7FC STA $40,X
|
1923 |
|
|
0550 D7FF 30 01 LEAX $01,X
|
1924 |
|
|
0551 D801 5A DECB
|
1925 |
|
|
0552 D802 26 F8 BNE ZD7FC
|
1926 |
|
|
0553 D804 BE D4 0B LDX >CURFCB
|
1927 |
|
|
0554 D807 EC 88 20 LDD $20,X
|
1928 |
|
|
0555 D80A ED 88 42 STD $42,X
|
1929 |
|
|
0556 D80D 1C FE ANDCC #$FE
|
1930 |
|
|
0557 D80F 39 RTS
|
1931 |
|
|
0558 *
|
1932 |
|
|
0559 ** OPEN SYSTEM INFO. RECORD
|
1933 |
|
|
0560 *
|
1934 |
|
|
0561 D810 5F OPNREC CLRB
|
1935 |
|
|
0562 D811 34 04 PSHS B
|
1936 |
|
|
0563 D813 C6 03 LDB #$03
|
1937 |
|
|
0564 D815 20 0E BRA ZD825
|
1938 |
|
|
0565 D817 BE D4 15 LDX >ZD415
|
1939 |
|
|
0566 D81A BF D4 13 STX >ZD413
|
1940 |
|
|
0567 D81D F6 D4 13 OPNDIR LDB >ZD413
|
1941 |
|
|
0568 D820 34 04 PSHS B
|
1942 |
|
|
0569 D822 F6 D4 14 LDB >ZD414
|
1943 |
|
|
0570 D825 BE D4 0B ZD825 LDX >CURFCB
|
1944 |
|
|
0571 D828 E7 88 41 STB $41,X
|
1945 |
|
|
0572 D82B 35 04 PULS B
|
1946 |
|
|
0573 D82D E7 88 40 STB $40,X
|
1947 |
|
|
0574 D830 7F D4 18 CLR >ZD418
|
1948 |
|
|
0575 D833 5F CLRB
|
1949 |
|
|
0576 D834 E7 88 22 STB $22,X
|
1950 |
|
|
0577 D837 39 RTS
|
1951 |
|
|
0578 *
|
1952 |
|
|
0579 ** GET INFO RECORD
|
1953 |
|
|
0580 *
|
1954 |
|
|
0581 D838 BE D4 0B GETREC LDX >CURFCB
|
1955 |
|
|
0582 D83B E6 88 22 LDB $22,X
|
1956 |
|
|
0583 D83E 26 1D BNE ZD85D
|
1957 |
|
|
0584 D840 BD D6 0C JSR >ZD60C
|
1958 |
|
|
0585 D843 25 30 BCS ZD875
|
1959 |
|
|
0586 D845 BE D4 0B LDX >CURFCB
|
1960 |
|
|
0587 D848 7D D4 18 TST >ZD418
|
1961 |
|
|
0588 D84B 26 05 BNE ZD852
|
1962 |
|
|
0589 D84D DC 44 LDD
|
1963 |
|
|
0590 D84F FD D4 18 STD >ZD418
|
1964 |
|
|
0591 D852 86 10 ZD852 LDA #$10
|
1965 |
|
|
0592 D854 A7 88 22 STA $22,X
|
1966 |
|
|
0593 D857 EC 88 1E LDD $1E,X
|
1967 |
|
|
0594 D85A ED 88 2F STD $2F,X
|
1968 |
|
|
0595 D85D A6 88 22 ZD85D LDA $22,X
|
1969 |
|
|
0596 D860 A7 88 31 STA $31,X
|
1970 |
|
|
0597 D863 C6 18 LDB #$18
|
1971 |
|
|
0598 D865 34 14 ZD865 PSHS X,B
|
1972 |
|
|
0599 D867 BD D5 F5 JSR >ZD5F5
|
1973 |
|
|
0600 D86A 35 14 PULS X,B
|
1974 |
|
|
0601 D86C A7 04 STA $04,X
|
1975 |
|
|
0602 D86E 30 01 LEAX $01,X
|
1976 |
|
|
0603 D870 5A DECB
|
1977 |
|
|
0604 D871 26 F2 BNE ZD865
|
1978 |
|
|
0605 D873 1C FE ANDCC #$FE
|
1979 |
|
|
0606 D875 39 ZD875 RTS
|
1980 |
|
|
0607 *
|
1981 |
|
|
0608 ** PUT INFORMATION RECORD
|
1982 |
|
|
0609 *
|
1983 |
|
|
0610 D876 BE D4 0B PUTREC LDX >CURFCB
|
1984 |
|
|
0611 D879 A6 88 31 LDA $31,X
|
1985 |
|
|
0612 D87C A7 88 22 STA $22,X
|
1986 |
|
|
0613 D87F C6 18 LDB #$18
|
1987 |
|
|
0614 D881 34 14 ZD881 PSHS X,B
|
1988 |
|
|
0615 D883 A6 04 LDA $04,X
|
1989 |
|
|
0616 D885 BD D7 14 JSR >ZD714
|
1990 |
|
|
0617 D888 35 14 PULS X,B
|
1991 |
|
|
0618 D88A 30 01 LEAX $01,X
|
1992 |
|
|
0619 D88C 5A DECB
|
1993 |
|
|
0620 D88D 26 F2 BNE ZD881
|
1994 |
|
|
0621 D88F 7E D6 9F JMP >WRSECT
|
1995 |
|
|
0622
|
1996 |
|
|
0623 D892 BE D4 0B ZD892 LDX >CURFCB
|
1997 |
|
|
0624 D895 A6 03 LDA $03,X
|
1998 |
|
|
0625 D897 A7 88 23 STA $23,X
|
1999 |
|
|
0626 D89A B6 D4 17 LDA >ZD417
|
2000 |
|
|
0627 D89D 7D D4 1A TST >ZD41A
|
2001 |
|
|
0628 D8A0 26 31 BNE ZD8D3
|
2002 |
|
|
0629 D8A2 A7 03 STA $03,X
|
2003 |
|
|
0630 D8A4 BE D4 15 LDX >ZD415
|
2004 |
|
|
0631 D8A7 BF D4 13 STX >ZD413
|
2005 |
|
|
0632 D8AA 8C 00 05 ZD8AA CMPX #Z0005
|
2006 |
|
|
0633 D8AD 27 0C BEQ ZD8BB
|
2007 |
|
|
0634 D8AF 8D 22 BSR ZD8D3
|
2008 |
|
|
0635 D8B1 23 37 BLS ZD8EA
|
2009 |
|
|
0636 D8B3 BE D4 18 LDX >ZD418
|
2010 |
|
|
0637 D8B6 BF D4 13 STX >ZD413
|
2011 |
|
|
0638 D8B9 20 EF BRA ZD8AA
|
2012 |
|
|
0639
|
2013 |
|
|
0640 D8BB BE D4 0B ZD8BB LDX >CURFCB
|
2014 |
|
|
0641 D8BE A6 88 23 LDA $23,X
|
2015 |
|
|
0642 D8C1 A7 03 STA $03,X
|
2016 |
|
|
0643 D8C3 2A 0E BPL ZD8D3
|
2017 |
|
|
0644 D8C5 BD DD BD ZD8C5 JSR >NXTDRV
|
2018 |
|
|
0645 D8C8 25 36 BCS ZD900
|
2019 |
|
|
0646 D8CA 8D 07 BSR ZD8D3
|
2020 |
|
|
0647 D8CC 23 1C BLS ZD8EA
|
2021 |
|
|
0648 D8CE BD DD AD JSR >ZDDAD
|
2022 |
|
|
0649 D8D1 20 F2 BRA ZD8C5
|
2023 |
|
|
0650
|
2024 |
|
|
0651 D8D3 BE D4 0B ZD8D3 LDX >CURFCB
|
2025 |
|
|
0652 D8D6 7F D4 1A CLR >ZD41A
|
2026 |
|
|
0653 D8D9 BD D5 49 JSR >ZD549
|
2027 |
|
|
0654 D8DC BD D8 1D JSR >OPNDIR
|
2028 |
|
|
0655 D8DF BD D8 38 ZD8DF JSR >GETREC
|
2029 |
|
|
0656 D8E2 24 07 BCC ZD8EB
|
2030 |
|
|
0657 D8E4 C1 08 CMPB #$08
|
2031 |
|
|
0658 D8E6 27 18 BEQ ZD900
|
2032 |
|
|
0659 D8E8 1A 01 ORCC #$01
|
2033 |
|
|
0660 D8EA 39 ZD8EA RTS
|
2034 |
|
|
0661
|
2035 |
|
|
0662 D8EB BE D4 0B ZD8EB LDX >CURFCB
|
2036 |
|
|
0663 D8EE A6 04 LDA $04,X
|
2037 |
|
|
0664 D8F0 27 0C BEQ ZD8FE
|
2038 |
|
|
0665 D8F2 2A 02 BPL ZD8F6
|
2039 |
|
|
0666 D8F4 8D 0F BSR ZD905
|
2040 |
|
|
0667 D8F6 BD D5 59 ZD8F6 JSR >ZD559
|
2041 |
|
|
0668 D8F9 26 E4 BNE ZD8DF
|
2042 |
|
|
0669 D8FB 1C FE ANDCC #$FE
|
2043 |
|
|
0670 D8FD 39 RTS
|
2044 |
|
|
0671
|
2045 |
|
|
0672 D8FE 8D 05 ZD8FE BSR ZD905
|
2046 |
|
|
0673 D900 1C FB ZD900 ANDCC #$FB
|
2047 |
|
|
0674 D902 1C FE ANDCC #$FE
|
2048 |
|
|
0675 D904 39 RTS
|
2049 |
|
|
0676
|
2050 |
|
|
0677 D905 A6 88 33 ZD905 LDA $33,X
|
2051 |
|
|
0678 D908 26 0C BNE ZD916
|
2052 |
|
|
0679 D90A EC 88 2F LDD $2F,X
|
2053 |
|
|
0680 D90D ED 88 32 STD $32,X
|
2054 |
|
|
0681 D910 A6 88 31 LDA $31,X
|
2055 |
|
|
0682 D913 A7 88 34 STA $34,X
|
2056 |
|
|
0683 D916 39 ZD916 RTS
|
2057 |
|
|
0684
|
2058 |
|
|
0685 D917 BD D7 87 ZD917 JSR >ZD787
|
2059 |
|
|
0686 D91A 26 17 BNE ZD933
|
2060 |
|
|
0687 D91C 8D 18 BSR ZD936
|
2061 |
|
|
0688 D91E 25 15 BCS ZD935
|
2062 |
|
|
0689 D920 C6 06 LDB #$06
|
2063 |
|
|
0690 D922 10 BE D4 0B LDY >CURFCB
|
2064 |
|
|
0691 D926 BE D4 1B LDX >ZD41B
|
2065 |
|
|
0692 D929 A6 A8 5D ZD929 LDA $5D,Y
|
2066 |
|
|
0693 D92C 31 21 LEAY $01,Y
|
2067 |
|
|
0694 D92E A7 80 STA ,X+
|
2068 |
|
|
0695 D930 5A DECB
|
2069 |
|
|
0696 D931 26 F6 BNE ZD929
|
2070 |
|
|
0697 D933 1C FE ZD933 ANDCC #$FE
|
2071 |
|
|
0698 D935 39 ZD935 RTS
|
2072 |
|
|
0699
|
2073 |
|
|
0700 D936 BD D8 10 ZD936 JSR >OPNREC
|
2074 |
|
|
0701 D939 BD D6 0C JSR >ZD60C
|
2075 |
|
|
0702 D93C 25 08 BCS ZD946
|
2076 |
|
|
0703 D93E BE D4 0B LDX >CURFCB
|
2077 |
|
|
0704 D941 C6 10 LDB #$10
|
2078 |
|
|
0705 D943 E7 88 22 STB $22,X
|
2079 |
|
|
0706 D946 39 ZD946 RTS
|
2080 |
|
|
0707
|
2081 |
|
|
0708 D947 BD D7 87 ZD947 JSR >ZD787
|
2082 |
|
|
0709 D94A 8D EA BSR ZD936
|
2083 |
|
|
0710 D94C 25 F8 BCS ZD946
|
2084 |
|
|
0711 D94E C6 06 LDB #$06
|
2085 |
|
|
0712 D950 10 BE D4 0B LDY >CURFCB
|
2086 |
|
|
0713 D954 BE D4 1B LDX >ZD41B
|
2087 |
|
|
0714 D957 A6 80 ZD957 LDA ,X+
|
2088 |
|
|
0715 D959 A7 A8 5D STA $5D,Y
|
2089 |
|
|
0716 D95C 31 21 LEAY $01,Y
|
2090 |
|
|
0717 D95E 5A DECB
|
2091 |
|
|
0718 D95F 26 F6 BNE ZD957
|
2092 |
|
|
0719 D961 BD D6 9F JSR >WRSECT
|
2093 |
|
|
0720 D964 24 E0 BCC ZD946
|
2094 |
|
|
0721 D966 7E DB C1 JMP >ZDBC1
|
2095 |
|
|
0722 *
|
2096 |
|
|
0723 **
|
2097 |
|
|
0724 *
|
2098 |
|
|
0725 D969 BE D4 0B RESV1 LDX >CURFCB
|
2099 |
|
|
0726 D96C 86 02 LDA #$02
|
2100 |
|
|
0727 D96E A7 02 STA $02,X
|
2101 |
|
|
0728 D970 EC 88 2F LDD $2F,X
|
2102 |
|
|
0729 D973 ED 88 1E STD $1E,X
|
2103 |
|
|
0730 D976 BD D6 41 JSR >RDSECT
|
2104 |
|
|
0731 D979 25 08 BCS ZD983
|
2105 |
|
|
0732 D97B BD D8 76 JSR >PUTREC
|
2106 |
|
|
0733 D97E 24 05 BCC ZD985
|
2107 |
|
|
0734 D980 7E DB C1 JMP >ZDBC1
|
2108 |
|
|
0735
|
2109 |
|
|
0736 D983 C6 0A ZD983 LDB #$0A
|
2110 |
|
|
0737 D985 39 ZD985 RTS
|
2111 |
|
|
0738 *
|
2112 |
|
|
0739 ** OPEN FOR READ
|
2113 |
|
|
0740 *
|
2114 |
|
|
0741 D986 BD D4 FA OPENRD JSR >ZD4FA
|
2115 |
|
|
0742 D989 25 3D BCS ZD9C8
|
2116 |
|
|
0743 D98B BD D8 92 JSR >ZD892
|
2117 |
|
|
0744 D98E 25 38 BCS ZD9C8
|
2118 |
|
|
0745 D990 26 3B BNE ZD9CD
|
2119 |
|
|
0746 D992 BE D4 0B LDX >CURFCB
|
2120 |
|
|
0747 D995 7D D4 1A TST >ZD41A
|
2121 |
|
|
0748 D998 27 06 BEQ ZD9A0
|
2122 |
|
|
0749 D99A A6 0F LDA $0F,X
|
2123 |
|
|
0750 D99C 85 20 BITA #$20
|
2124 |
|
|
0751 D99E 26 29 BNE ZD9C9
|
2125 |
|
|
0752 D9A0 BD DC C0 ZD9A0 JSR >ZDCC0
|
2126 |
|
|
0753 D9A3 25 2A BCS ZD9CF
|
2127 |
|
|
0754 D9A5 EC 88 11 LDD $11,X
|
2128 |
|
|
0755 D9A8 ED 88 40 STD $40,X
|
2129 |
|
|
0756 D9AB BD DA 76 JSR >ZDA76
|
2130 |
|
|
0757 D9AE E6 88 17 LDB $17,X
|
2131 |
|
|
0758 D9B1 27 13 BEQ ZD9C6
|
2132 |
|
|
0759 D9B3 34 04 ZD9B3 PSHS B
|
2133 |
|
|
0760 D9B5 BD D6 0C JSR >ZD60C
|
2134 |
|
|
0761 D9B8 35 04 PULS B
|
2135 |
|
|
0762 D9BA 25 0C BCS ZD9C8
|
2136 |
|
|
0763 D9BC 5A DECB
|
2137 |
|
|
0764 D9BD 26 F4 BNE ZD9B3
|
2138 |
|
|
0765 D9BF BE D4 0B LDX >CURFCB
|
2139 |
|
|
0766 D9C2 5F CLRB
|
2140 |
|
|
0767 D9C3 E7 88 22 STB $22,X
|
2141 |
|
|
0768 D9C6 1C FE ZD9C6 ANDCC #$FE
|
2142 |
|
|
0769 D9C8 39 ZD9C8 RTS
|
2143 |
|
|
0770
|
2144 |
|
|
0771 D9C9 C6 11 ZD9C9 LDB #$11
|
2145 |
|
|
0772 D9CB 20 02 BRA ZD9CF
|
2146 |
|
|
0773
|
2147 |
|
|
0774 D9CD C6 04 ZD9CD LDB #$04
|
2148 |
|
|
0775 D9CF 34 04 ZD9CF PSHS B
|
2149 |
|
|
0776 D9D1 BD D5 0C JSR >ZD50C
|
2150 |
|
|
0777 D9D4 35 04 PULS B
|
2151 |
|
|
0778 D9D6 1A 01 ORCC #$01
|
2152 |
|
|
0779 D9D8 39 RTS
|
2153 |
|
|
0780
|
2154 |
|
|
0781 D9D9 BE D4 0B OPENWR LDX >CURFCB
|
2155 |
|
|
0782 D9DC 6D 03 TST $03,X
|
2156 |
|
|
0783 D9DE 2A 08 BPL ZD9E8
|
2157 |
|
|
0784 D9E0 BD DD BD JSR >NXTDRV
|
2158 |
|
|
0785 D9E3 24 03 BCC ZD9E8
|
2159 |
|
|
0786 D9E5 C6 10 LDB #$10
|
2160 |
|
|
0787 D9E7 39 RTS
|
2161 |
|
|
0788
|
2162 |
|
|
0789 D9E8 BD D4 FA ZD9E8 JSR >ZD4FA
|
2163 |
|
|
0790 D9EB 25 E2 BCS ZD9CF
|
2164 |
|
|
0791 D9ED BD D5 37 JSR >ZD537
|
2165 |
|
|
0792 D9F0 BD D9 17 JSR >ZD917
|
2166 |
|
|
0793 D9F3 25 DA BCS ZD9CF
|
2167 |
|
|
0794 D9F5 BD D8 92 JSR >ZD892
|
2168 |
|
|
0795 D9F8 25 D5 BCS ZD9CF
|
2169 |
|
|
0796 D9FA 26 04 BNE ZDA00
|
2170 |
|
|
0797 D9FC C6 03 LDB #$03
|
2171 |
|
|
0798 D9FE 20 CF BRA ZD9CF
|
2172 |
|
|
0799
|
2173 |
|
|
0800 DA00 BD DC C0 ZDA00 JSR >ZDCC0
|
2174 |
|
|
0801 DA03 25 CA BCS ZD9CF
|
2175 |
|
|
0802 DA05 BE D4 0B LDX >CURFCB
|
2176 |
|
|
0803 DA08 C6 0A LDB #$0A
|
2177 |
|
|
0804 DA0A 6F 0F ZDA0A CLR $0F,X
|
2178 |
|
|
0805 DA0C 30 01 LEAX $01,X
|
2179 |
|
|
0806 DA0E 5A DECB
|
2180 |
|
|
0807 DA0F 26 F9 BNE ZDA0A
|
2181 |
|
|
0808 DA11 BE D4 0B LDX >CURFCB
|
2182 |
|
|
0809 DA14 EC 88 32 LDD $32,X
|
2183 |
|
|
0810 DA17 27 27 BEQ ZDA40
|
2184 |
|
|
0811 DA19 ED 88 2F STD $2F,X
|
2185 |
|
|
0812 DA1C A6 88 34 LDA $34,X
|
2186 |
|
|
0813 DA1F A7 88 31 STA $31,X
|
2187 |
|
|
0814 DA22 FC CC 0E LDD >DATERG
|
2188 |
|
|
0815 DA25 ED 88 19 STD $19,X
|
2189 |
|
|
0816 DA28 B6 CC 10 LDA >YEAR
|
2190 |
|
|
0817 DA2B A7 88 1B STA $1B,X
|
2191 |
|
|
0818 DA2E BD DD AD JSR >ZDDAD
|
2192 |
|
|
0819 DA31 BD D9 69 JSR >RESV1
|
2193 |
|
|
0820 DA34 25 99 BCS ZD9CF
|
2194 |
|
|
0821 DA36 8D 3E BSR ZDA76
|
2195 |
|
|
0822 DA38 86 04 LDA #$04
|
2196 |
|
|
0823 DA3A A7 88 22 STA $22,X
|
2197 |
|
|
0824 DA3D 1C FE ANDCC #$FE
|
2198 |
|
|
0825 DA3F 39 RTS
|
2199 |
|
|
0826
|
2200 |
|
|
0827 DA40 BE D4 0B ZDA40 LDX >CURFCB
|
2201 |
|
|
0828 DA43 6F 88 17 CLR $17,X
|
2202 |
|
|
0829 DA46 6C 88 12 INC $12,X
|
2203 |
|
|
0830 DA49 EC 88 2F LDD $2F,X
|
2204 |
|
|
0831 DA4C BD D6 20 JSR >ZD620
|
2205 |
|
|
0832 DA4F 25 0D BCS ZDA5E
|
2206 |
|
|
0833 DA51 BD D7 72 JSR >ZD772
|
2207 |
|
|
0834 DA54 25 08 BCS ZDA5E
|
2208 |
|
|
0835 DA56 BD D6 9F JSR >WRSECT
|
2209 |
|
|
0836 DA59 24 06 BCC ZDA61
|
2210 |
|
|
0837 DA5B BD DB C1 JSR >ZDBC1
|
2211 |
|
|
0838 DA5E 7E D9 CF ZDA5E JMP >ZD9CF
|
2212 |
|
|
0839
|
2213 |
|
|
0840 DA61 BE D4 0B ZDA61 LDX >CURFCB
|
2214 |
|
|
0841 DA64 EC 88 1E LDD $1E,X
|
2215 |
|
|
0842 DA67 ED 88 32 STD $32,X
|
2216 |
|
|
0843 DA6A 86 10 LDA #$10
|
2217 |
|
|
0844 DA6C A7 88 34 STA $34,X
|
2218 |
|
|
0845 DA6F BD D9 47 JSR >ZD947
|
2219 |
|
|
0846 DA72 25 EA BCS ZDA5E
|
2220 |
|
|
0847 DA74 20 8A BRA ZDA00
|
2221 |
|
|
0848
|
2222 |
|
|
0849 DA76 BE D4 0B ZDA76 LDX >CURFCB
|
2223 |
|
|
0850 DA79 A6 84 LDA ,X
|
2224 |
|
|
0851 DA7B A7 02 STA $02,X
|
2225 |
|
|
0852 DA7D 6F 84 CLR ,X
|
2226 |
|
|
0853 DA7F 6F 88 3B CLR $3B,X
|
2227 |
|
|
0854 DA82 4F CLRA
|
2228 |
|
|
0855 DA83 A7 88 22 STA $22,X
|
2229 |
|
|
0856 DA86 39 RTS
|
2230 |
|
|
0857 *
|
2231 |
|
|
0858 ** READ/WRITE NEXT SECTOR
|
2232 |
|
|
0859 *
|
2233 |
|
|
0860 DA87 8D 28 NXTSEC BSR ZDAB1
|
2234 |
|
|
0861 DA89 25 0E BCS ZDA99
|
2235 |
|
|
0862 DA8B 6F 84 CLR ,X
|
2236 |
|
|
0863 DA8D 44 LSRA
|
2237 |
|
|
0864 DA8E 10 25 FB 7A LBCS ZD60C
|
2238 |
|
|
0865 DA92 C6 04 LDB #$04
|
2239 |
|
|
0866 DA94 E7 88 22 STB $22,X
|
2240 |
|
|
0867 DA97 1C FE ANDCC #$FE
|
2241 |
|
|
0868 DA99 39 ZDA99 RTS
|
2242 |
|
|
0869
|
2243 |
|
|
0870 DA9A BE D4 0B ZDA9A LDX >CURFCB
|
2244 |
|
|
0871 DA9D A6 02 LDA $02,X
|
2245 |
|
|
0872 DA9F 81 83 CMPA #$83
|
2246 |
|
|
0873 DAA1 26 0B BNE ZDAAE
|
2247 |
|
|
0874 DAA3 86 03 LDA #$03
|
2248 |
|
|
0875 DAA5 A7 02 STA $02,X
|
2249 |
|
|
0876 DAA7 BD D6 9F ZDAA7 JSR >WRSECT
|
2250 |
|
|
0877 DAAA 10 25 01 13 LBCS ZDBC1
|
2251 |
|
|
0878 DAAE 1C FE ZDAAE ANDCC #$FE
|
2252 |
|
|
0879 DAB0 39 RTS
|
2253 |
|
|
0880
|
2254 |
|
|
0881 DAB1 8D E7 ZDAB1 BSR ZDA9A
|
2255 |
|
|
0882 DAB3 25 0D BCS ZDAC2
|
2256 |
|
|
0883 DAB5 BE D4 0B LDX >CURFCB
|
2257 |
|
|
0884 DAB8 A6 02 LDA $02,X
|
2258 |
|
|
0885 DABA 81 03 CMPA #$03
|
2259 |
|
|
0886 DABC 23 F0 BLS ZDAAE
|
2260 |
|
|
0887 DABE C6 12 LDB #$12
|
2261 |
|
|
0888 DAC0 1A 01 ORCC #$01
|
2262 |
|
|
0889 DAC2 39 ZDAC2 RTS
|
2263 |
|
|
0890
|
2264 |
|
|
0891 DAC3 8D EC CLOSE BSR ZDAB1
|
2265 |
|
|
0892 DAC5 25 31 BCS ZDAF8
|
2266 |
|
|
0893 DAC7 81 02 CMPA #$02
|
2267 |
|
|
0894 DAC9 27 08 BEQ ZDAD3
|
2268 |
|
|
0895 DACB BE D4 0B ZDACB LDX >CURFCB
|
2269 |
|
|
0896 DACE 6F 02 CLR $02,X
|
2270 |
|
|
0897 DAD0 7E D5 0C JMP >ZD50C
|
2271 |
|
|
0898
|
2272 |
|
|
0899 DAD3 A6 88 12 ZDAD3 LDA $12,X
|
2273 |
|
|
0900 DAD6 26 05 BNE ZDADD
|
2274 |
|
|
0901 DAD8 BD DB A7 JSR >ZDBA7
|
2275 |
|
|
0902 DADB 20 19 BRA ZDAF6
|
2276 |
|
|
0903
|
2277 |
|
|
0904 DADD 8D C8 ZDADD BSR ZDAA7
|
2278 |
|
|
0905 DADF 25 17 BCS ZDAF8
|
2279 |
|
|
0906 DAE1 BE D4 0B LDX >CURFCB
|
2280 |
|
|
0907 DAE4 6D 88 17 TST $17,X
|
2281 |
|
|
0908 DAE7 27 05 BEQ ZDAEE
|
2282 |
|
|
0909 DAE9 BD DC 98 JSR >ZDC98
|
2283 |
|
|
0910 DAEC 25 0A BCS ZDAF8
|
2284 |
|
|
0911 DAEE BD D9 69 ZDAEE JSR >RESV1
|
2285 |
|
|
0912 DAF1 25 05 BCS ZDAF8
|
2286 |
|
|
0913 DAF3 BD D9 47 JSR >ZD947
|
2287 |
|
|
0914 DAF6 24 D3 ZDAF6 BCC ZDACB
|
2288 |
|
|
0915 DAF8 39 ZDAF8 RTS
|
2289 |
|
|
0916 *
|
2290 |
|
|
0917 ** OPEN FOR UPDATE
|
2291 |
|
|
0918 *
|
2292 |
|
|
0919 DAF9 BD D9 86 OPENUD JSR >OPENRD
|
2293 |
|
|
0920 DAFC 25 28 BCS ZDB26
|
2294 |
|
|
0921 DAFE BD D6 0C JSR >ZD60C
|
2295 |
|
|
0922 DB01 25 23 BCS ZDB26
|
2296 |
|
|
0923 DB03 86 03 LDA #$03
|
2297 |
|
|
0924 DB05 20 18 BRA ZDB1F
|
2298 |
|
|
0925 *
|
2299 |
|
|
0926 **
|
2300 |
|
|
0927 *
|
2301 |
|
|
0928 DB07 BD D9 86 RESV3 JSR >OPENRD
|
2302 |
|
|
0929 DB0A 25 1A BCS ZDB26
|
2303 |
|
|
0930 DB0C BE D4 0B LDX >CURFCB
|
2304 |
|
|
0931 DB0F A6 0F LDA $0F,X
|
2305 |
|
|
0932 DB11 85 80 BITA #$80
|
2306 |
|
|
0933 DB13 26 12 BNE ZDB27
|
2307 |
|
|
0934 DB15 EC 88 13 LDD $13,X
|
2308 |
|
|
0935 DB18 BD D6 20 JSR >ZD620
|
2309 |
|
|
0936 DB1B 25 09 BCS ZDB26
|
2310 |
|
|
0937 DB1D 86 02 LDA #$02
|
2311 |
|
|
0938 DB1F BE D4 0B ZDB1F LDX >CURFCB
|
2312 |
|
|
0939 DB22 A7 02 STA $02,X
|
2313 |
|
|
0940 DB24 1C FE ANDCC #$FE
|
2314 |
|
|
0941 DB26 39 ZDB26 RTS
|
2315 |
|
|
0942
|
2316 |
|
|
0943 DB27 C6 0B ZDB27 LDB #$0B
|
2317 |
|
|
0944 DB29 1A 01 ORCC #$01
|
2318 |
|
|
0945 DB2B 39 RTS
|
2319 |
|
|
0946 *
|
2320 |
|
|
0947 ** RENAME FILE
|
2321 |
|
|
0948 *
|
2322 |
|
|
0949 DB2C 8D 35 RENAME BSR ZDB63
|
2323 |
|
|
0950 DB2E BD D8 92 JSR >ZD892
|
2324 |
|
|
0951 DB31 25 2A BCS ZDB5D
|
2325 |
|
|
0952 DB33 27 24 BEQ ZDB59
|
2326 |
|
|
0953 DB35 BE D4 0B LDX >CURFCB
|
2327 |
|
|
0954 DB38 C6 0B LDB #$0B
|
2328 |
|
|
0955 DB3A A6 88 24 ZDB3A LDA $24,X
|
2329 |
|
|
0956 DB3D A7 04 STA $04,X
|
2330 |
|
|
0957 DB3F 30 01 LEAX $01,X
|
2331 |
|
|
0958 DB41 5A DECB
|
2332 |
|
|
0959 DB42 26 F6 BNE ZDB3A
|
2333 |
|
|
0960 DB44 8D 4D BSR ZDB93
|
2334 |
|
|
0961 DB46 25 15 BCS ZDB5D
|
2335 |
|
|
0962 DB48 BE D4 0B LDX >CURFCB
|
2336 |
|
|
0963 DB4B A6 0F LDA $0F,X
|
2337 |
|
|
0964 DB4D 85 80 BITA #$80
|
2338 |
|
|
0965 DB4F 26 D6 BNE ZDB27
|
2339 |
|
|
0966 DB51 85 60 BITA #$60
|
2340 |
|
|
0967 DB53 26 09 BNE ZDB5E
|
2341 |
|
|
0968 DB55 8D 0C BSR ZDB63
|
2342 |
|
|
0969 DB57 20 55 BRA ZDBAE
|
2343 |
|
|
0970
|
2344 |
|
|
0971 DB59 C6 03 ZDB59 LDB #$03
|
2345 |
|
|
0972 DB5B 1A 01 ORCC #$01
|
2346 |
|
|
0973 DB5D 39 ZDB5D RTS
|
2347 |
|
|
0974 DB5E C6 0C ZDB5E LDB #$0C
|
2348 |
|
|
0975 DB60 1A 01 ORCC #$01
|
2349 |
|
|
0976 DB62 39 RTS
|
2350 |
|
|
0977
|
2351 |
|
|
0978 DB63 BE D4 0B ZDB63 LDX >CURFCB
|
2352 |
|
|
0979 DB66 86 0B LDA #$0B
|
2353 |
|
|
0980 DB68 B7 D4 11 STA >ZD411
|
2354 |
|
|
0981 DB6B A6 04 ZDB6B LDA $04,X
|
2355 |
|
|
0982 DB6D E6 88 35 LDB $35,X
|
2356 |
|
|
0983 DB70 A7 88 35 STA $35,X
|
2357 |
|
|
0984 DB73 E7 04 STB $04,X
|
2358 |
|
|
0985 DB75 30 01 LEAX $01,X
|
2359 |
|
|
0986 DB77 7A D4 11 DEC >ZD411
|
2360 |
|
|
0987 DB7A 26 EF BNE ZDB6B
|
2361 |
|
|
0988 DB7C BE D4 0B LDX >CURFCB
|
2362 |
|
|
0989 DB7F A6 0C LDA $0C,X
|
2363 |
|
|
0990 DB81 26 0C BNE ZDB8F
|
2364 |
|
|
0991 DB83 C6 03 LDB #$03
|
2365 |
|
|
0992 DB85 A6 88 3D ZDB85 LDA $3D,X
|
2366 |
|
|
0993 DB88 A7 0C STA $0C,X
|
2367 |
|
|
0994 DB8A 30 01 LEAX $01,X
|
2368 |
|
|
0995 DB8C 5A DECB
|
2369 |
|
|
0996 DB8D 26 F6 BNE ZDB85
|
2370 |
|
|
0997 DB8F BE D4 0B ZDB8F LDX >CURFCB
|
2371 |
|
|
0998 DB92 39 RTS
|
2372 |
|
|
0999
|
2373 |
|
|
1000 DB93 8D CE ZDB93 BSR ZDB63
|
2374 |
|
|
1001 DB95 BD D8 92 ZDB95 JSR >ZD892
|
2375 |
|
|
1002 DB98 25 07 BCS ZDBA1
|
2376 |
|
|
1003 DB9A 26 06 BNE ZDBA2
|
2377 |
|
|
1004 DB9C BE D4 0B LDX >CURFCB
|
2378 |
|
|
1005 DB9F 1C FE ANDCC #$FE
|
2379 |
|
|
1006 DBA1 39 ZDBA1 RTS
|
2380 |
|
|
1007
|
2381 |
|
|
1008 DBA2 C6 04 ZDBA2 LDB #$04
|
2382 |
|
|
1009 DBA4 1A 01 ORCC #$01
|
2383 |
|
|
1010 DBA6 39 RTS
|
2384 |
|
|
1011
|
2385 |
|
|
1012 DBA7 BE D4 0B ZDBA7 LDX >CURFCB
|
2386 |
|
|
1013 DBAA 86 FF LDA #$FF
|
2387 |
|
|
1014 DBAC A7 04 STA $04,X
|
2388 |
|
|
1015 DBAE BD D9 69 ZDBAE JSR >RESV1
|
2389 |
|
|
1016 DBB1 BE D4 0B LDX >CURFCB
|
2390 |
|
|
1017 DBB4 86 00 LDA #$00
|
2391 |
|
|
1018 DBB6 A7 02 STA $02,X
|
2392 |
|
|
1019 DBB8 39 RTS
|
2393 |
|
|
1020
|
2394 |
|
|
1021 DBB9 ED 88 40 ZDBB9 STD $40,X
|
2395 |
|
|
1022 DBBC BD D6 9F JSR >WRSECT
|
2396 |
|
|
1023 DBBF 24 14 BCC ZDBD5
|
2397 |
|
|
1024 DBC1 C5 40 ZDBC1 BITB #$40
|
2398 |
|
|
1025 DBC3 26 08 BNE ZDBCD
|
2399 |
|
|
1026 DBC5 C5 80 BITB #$80
|
2400 |
|
|
1027 DBC7 27 0A BEQ ZDBD3
|
2401 |
|
|
1028 DBC9 C6 10 LDB #$10
|
2402 |
|
|
1029 DBCB 20 06 BRA ZDBD3
|
2403 |
|
|
1030 DBCD C6 0B ZDBCD LDB #$0B
|
2404 |
|
|
1031 DBCF 20 02 BRA ZDBD3
|
2405 |
|
|
1032
|
2406 |
|
|
1033 DBD1 C6 0A LDB #$0A
|
2407 |
|
|
1034 DBD3 1A 01 ZDBD3 ORCC #$01
|
2408 |
|
|
1035 DBD5 39 ZDBD5 RTS
|
2409 |
|
|
1036 *
|
2410 |
|
|
1037 ** DELETE FILE
|
2411 |
|
|
1038 *
|
2412 |
|
|
1039 DBD6 BD D9 17 DELETE JSR >ZD917
|
2413 |
|
|
1040 DBD9 25 5E BCS ZDC39
|
2414 |
|
|
1041 DBDB 8D B8 BSR ZDB95
|
2415 |
|
|
1042 DBDD 25 5A BCS ZDC39
|
2416 |
|
|
1043 DBDF BE D4 0B LDX >CURFCB
|
2417 |
|
|
1044 DBE2 A6 0F LDA $0F,X
|
2418 |
|
|
1045 DBE4 85 80 BITA #$80
|
2419 |
|
|
1046 DBE6 26 52 BNE ZDC3A
|
2420 |
|
|
1047 DBE8 85 60 BITA #$60
|
2421 |
|
|
1048 DBEA 26 52 BNE ZDC3E
|
2422 |
|
|
1049 DBEC BD D7 87 JSR >ZD787
|
2423 |
|
|
1050 DBEF BE D4 1B LDX >ZD41B
|
2424 |
|
|
1051 DBF2 EC 02 LDD $02,X
|
2425 |
|
|
1052 DBF4 26 0F BNE ZDC05
|
2426 |
|
|
1053 DBF6 BE D4 0B LDX >CURFCB
|
2427 |
|
|
1054 DBF9 EC 88 11 LDD $11,X
|
2428 |
|
|
1055 DBFC 27 33 BEQ ZDC31
|
2429 |
|
|
1056 DBFE BE D4 1B LDX >ZD41B
|
2430 |
|
|
1057 DC01 ED 84 STD ,X
|
2431 |
|
|
1058 DC03 20 14 BRA ZDC19
|
2432 |
|
|
1059
|
2433 |
|
|
1060 DC05 BE D4 0B ZDC05 LDX >CURFCB
|
2434 |
|
|
1061 DC08 BD D6 20 JSR >ZD620
|
2435 |
|
|
1062 DC0B 25 2C BCS ZDC39
|
2436 |
|
|
1063 DC0D BE D4 0B LDX >CURFCB
|
2437 |
|
|
1064 DC10 EC 88 11 LDD $11,X
|
2438 |
|
|
1065 DC13 27 1C BEQ ZDC31
|
2439 |
|
|
1066 DC15 8D A2 BSR ZDBB9
|
2440 |
|
|
1067 DC17 25 20 BCS ZDC39
|
2441 |
|
|
1068 DC19 BE D4 0B ZDC19 LDX >CURFCB
|
2442 |
|
|
1069 DC1C EC 88 13 LDD $13,X
|
2443 |
|
|
1070 DC1F BE D4 1B LDX >ZD41B
|
2444 |
|
|
1071 DC22 ED 02 STD $02,X
|
2445 |
|
|
1072 DC24 BE D4 0B LDX >CURFCB
|
2446 |
|
|
1073 DC27 EC 88 15 LDD $15,X
|
2447 |
|
|
1074 DC2A BE D4 1B LDX >ZD41B
|
2448 |
|
|
1075 DC2D E3 04 ADDD $04,X
|
2449 |
|
|
1076 DC2F ED 04 STD $04,X
|
2450 |
|
|
1077 DC31 BD DB A7 ZDC31 JSR >ZDBA7
|
2451 |
|
|
1078 DC34 25 03 BCS ZDC39
|
2452 |
|
|
1079 DC36 BD D9 47 JSR >ZD947
|
2453 |
|
|
1080 DC39 39 ZDC39 RTS
|
2454 |
|
|
1081
|
2455 |
|
|
1082 DC3A C6 0B ZDC3A LDB #$0B
|
2456 |
|
|
1083 DC3C 20 02 BRA ZDC40
|
2457 |
|
|
1084 DC3E C6 0C ZDC3E LDB #$0C
|
2458 |
|
|
1085 DC40 1A 01 ZDC40 ORCC #$01
|
2459 |
|
|
1086 DC42 39 RTS
|
2460 |
|
|
1087
|
2461 |
|
|
1088 DC43 EC 88 1E ZDC43 LDD $1E,X
|
2462 |
|
|
1089 DC46 5C INCB
|
2463 |
|
|
1090 DC47 E1 88 3C CMPB $3C,X
|
2464 |
|
|
1091 DC4A 23 03 BLS ZDC4F
|
2465 |
|
|
1092 DC4C C6 01 LDB #$01
|
2466 |
|
|
1093 DC4E 4C INCA
|
2467 |
|
|
1094 DC4F 10 A3 88 13 ZDC4F CMPD $13,X
|
2468 |
|
|
1095 DC53 26 0E BNE ZDC63
|
2469 |
|
|
1096 DC55 A6 88 37 LDA $37,X
|
2470 |
|
|
1097 DC58 81 FF CMPA #$FF
|
2471 |
|
|
1098 DC5A 27 07 BEQ ZDC63
|
2472 |
|
|
1099 DC5C 4C INCA
|
2473 |
|
|
1100 DC5D A7 88 37 STA $37,X
|
2474 |
|
|
1101 DC60 1C FE ANDCC #$FE
|
2475 |
|
|
1102 DC62 39 RTS
|
2476 |
|
|
1103
|
2477 |
|
|
1104 DC63 8D 33 ZDC63 BSR ZDC98
|
2478 |
|
|
1105 DC65 25 30 BCS ZDC97
|
2479 |
|
|
1106 DC67 BE D4 0B LDX >CURFCB
|
2480 |
|
|
1107 DC6A A6 88 3A LDA $3A,X
|
2481 |
|
|
1108 DC6D 8B 03 ADDA #$03
|
2482 |
|
|
1109 DC6F 26 16 BNE ZDC87
|
2483 |
|
|
1110 DC71 EC 88 1E LDD $1E,X
|
2484 |
|
|
1111 DC74 10 A3 88 11 CMPD $11,X
|
2485 |
|
|
1112 DC78 27 05 BEQ ZDC7F
|
2486 |
|
|
1113 DC7A C6 17 LDB #$17
|
2487 |
|
|
1114 DC7C 1A 01 ORCC #$01
|
2488 |
|
|
1115 DC7E 39 RTS
|
2489 |
|
|
1116
|
2490 |
|
|
1117 DC7F EC 88 40 ZDC7F LDD $40,X
|
2491 |
|
|
1118 DC82 ED 88 38 ZDC82 STD $38,X
|
2492 |
|
|
1119 DC85 86 04 LDA #$04
|
2493 |
|
|
1120 DC87 A7 88 3A ZDC87 STA $3A,X
|
2494 |
|
|
1121 DC8A EC 88 13 LDD $13,X
|
2495 |
|
|
1122 DC8D ED 88 35 STD $35,X
|
2496 |
|
|
1123 DC90 86 01 LDA #$01
|
2497 |
|
|
1124 DC92 A7 88 37 STA $37,X
|
2498 |
|
|
1125 DC95 1C FE ANDCC #$FE
|
2499 |
|
|
1126 DC97 39 ZDC97 RTS
|
2500 |
|
|
1127
|
2501 |
|
|
1128 DC98 EC 88 38 ZDC98 LDD $38,X
|
2502 |
|
|
1129 DC9B BD D6 20 JSR >ZD620
|
2503 |
|
|
1130 DC9E 25 F7 BCS ZDC97
|
2504 |
|
|
1131 DCA0 BE D4 0B LDX >CURFCB
|
2505 |
|
|
1132 DCA3 1F 12 TFR X,Y
|
2506 |
|
|
1133 DCA5 E6 88 3A LDB $3A,X
|
2507 |
|
|
1134 DCA8 3A ABX
|
2508 |
|
|
1135 DCA9 C6 03 LDB #$03
|
2509 |
|
|
1136 DCAB A6 A8 35 ZDCAB LDA $35,Y
|
2510 |
|
|
1137 DCAE 31 21 LEAY $01,Y
|
2511 |
|
|
1138 DCB0 A7 88 40 STA $40,X
|
2512 |
|
|
1139 DCB3 30 01 LEAX $01,X
|
2513 |
|
|
1140 DCB5 5A DECB
|
2514 |
|
|
1141 DCB6 26 F3 BNE ZDCAB
|
2515 |
|
|
1142 DCB8 BD D6 9F JSR >WRSECT
|
2516 |
|
|
1143 DCBB 24 DA BCC ZDC97
|
2517 |
|
|
1144 DCBD 7E DB C1 JMP >ZDBC1
|
2518 |
|
|
1145
|
2519 |
|
|
1146 DCC0 BD D8 10 ZDCC0 JSR >OPNREC
|
2520 |
|
|
1147 DCC3 BD D6 0C JSR >ZD60C
|
2521 |
|
|
1148 DCC6 25 46 BCS ZDD0E
|
2522 |
|
|
1149 DCC8 BE D4 0B LDX >CURFCB
|
2523 |
|
|
1150 DCCB 4F CLRA
|
2524 |
|
|
1151 DCCC 5F CLRB
|
2525 |
|
|
1152 DCCD ED 88 20 STD $20,X
|
2526 |
|
|
1153 DCD0 A6 88 67 LDA $67,X
|
2527 |
|
|
1154 DCD3 A7 88 3C STA $3C,X
|
2528 |
|
|
1155 DCD6 5F CLRB
|
2529 |
|
|
1156 DCD7 6F 88 40 ZDCD7 CLR $40,X
|
2530 |
|
|
1157 DCDA 30 01 LEAX $01,X
|
2531 |
|
|
1158 DCDC 5A DECB
|
2532 |
|
|
1159 DCDD 26 F8 BNE ZDCD7
|
2533 |
|
|
1160 DCDF BE D4 0B LDX >CURFCB
|
2534 |
|
|
1161 DCE2 1C FE ANDCC #$FE
|
2535 |
|
|
1162 DCE4 39 RTS
|
2536 |
|
|
1163 *
|
2537 |
|
|
1164 ** BACKUP ONE RECORD
|
2538 |
|
|
1165 *
|
2539 |
|
|
1166 DCE5 BE D4 0B BAKREC LDX >CURFCB
|
2540 |
|
|
1167 DCE8 A6 88 17 LDA $17,X
|
2541 |
|
|
1168 DCEB 27 1D BEQ ZDD0A
|
2542 |
|
|
1169 DCED EC 88 20 LDD $20,X
|
2543 |
|
|
1170 DCF0 83 00 01 SUBD #$0001
|
2544 |
|
|
1171 DCF3 2A 03 BPL ZDCF8
|
2545 |
|
|
1172 DCF5 7E DD 9A JMP >ZDD9A
|
2546 |
|
|
1173 *
|
2547 |
|
|
1174 ** POSITION TO RECORD N
|
2548 |
|
|
1175 *
|
2549 |
|
|
1176 DCF8 ED 88 20 ZDCF8 STD $20,X
|
2550 |
|
|
1177 DCFB BD DA B1 POSREC JSR >ZDAB1
|
2551 |
|
|
1178 DCFE 25 0E BCS ZDD0E
|
2552 |
|
|
1179 DD00 46 RORA
|
2553 |
|
|
1180 DD01 24 07 BCC ZDD0A
|
2554 |
|
|
1181 DD03 6F 84 CLR ,X
|
2555 |
|
|
1182 DD05 A6 88 17 LDA $17,X
|
2556 |
|
|
1183 DD08 26 05 BNE ZDD0F
|
2557 |
|
|
1184 DD0A C6 12 ZDD0A LDB #$12
|
2558 |
|
|
1185 DD0C 1A 01 ORCC #$01
|
2559 |
|
|
1186 DD0E 39 ZDD0E RTS
|
2560 |
|
|
1187
|
2561 |
|
|
1188 DD0F 7F D4 11 ZDD0F CLR >ZD411
|
2562 |
|
|
1189 DD12 EC 88 11 LDD $11,X
|
2563 |
|
|
1190 DD15 10 AE 88 20 LDY $20,X
|
2564 |
|
|
1191 DD19 27 6A BEQ ZDD85
|
2565 |
|
|
1192 DD1B BD DD 9F JSR >ZDD9F
|
2566 |
|
|
1193 DD1E 25 EE BCS ZDD0E
|
2567 |
|
|
1194 DD20 4F CLRA
|
2568 |
|
|
1195 DD21 5F CLRB
|
2569 |
|
|
1196 DD22 6D 02 ZDD22 TST $02,X
|
2570 |
|
|
1197 DD24 27 74 BEQ ZDD9A
|
2571 |
|
|
1198 DD26 EB 02 ADDB $02,X
|
2572 |
|
|
1199 DD28 89 00 ADCA #$00
|
2573 |
|
|
1200 DD2A BF D4 0F STX >ZD40F
|
2574 |
|
|
1201 DD2D BE D4 0B LDX >CURFCB
|
2575 |
|
|
1202 DD30 10 A3 88 20 CMPD $20,X
|
2576 |
|
|
1203 DD34 24 2C BCC ZDD62
|
2577 |
|
|
1204 DD36 BE D4 0F LDX >ZD40F
|
2578 |
|
|
1205 DD39 30 03 LEAX $03,X
|
2579 |
|
|
1206 DD3B 34 02 PSHS A
|
2580 |
|
|
1207 DD3D B6 D4 11 LDA >ZD411
|
2581 |
|
|
1208 DD40 4C INCA
|
2582 |
|
|
1209 DD41 B7 D4 11 STA >ZD411
|
2583 |
|
|
1210 DD44 81 54 CMPA #$54
|
2584 |
|
|
1211 DD46 27 08 BEQ ZDD50
|
2585 |
|
|
1212 DD48 81 A8 CMPA #$A8
|
2586 |
|
|
1213 DD4A 35 02 PULS A
|
2587 |
|
|
1214 DD4C 27 4C BEQ ZDD9A
|
2588 |
|
|
1215 DD4E 20 D2 BRA ZDD22
|
2589 |
|
|
1216
|
2590 |
|
|
1217 DD50 34 04 ZDD50 PSHS B
|
2591 |
|
|
1218 DD52 BE D4 0B LDX >CURFCB
|
2592 |
|
|
1219 DD55 EC 88 40 LDD $40,X
|
2593 |
|
|
1220 DD58 8D 45 BSR ZDD9F
|
2594 |
|
|
1221 DD5A 25 3E BCS ZDD9A
|
2595 |
|
|
1222 DD5C 35 04 PULS B
|
2596 |
|
|
1223 DD5E 35 02 PULS A
|
2597 |
|
|
1224 DD60 20 C0 BRA ZDD22
|
2598 |
|
|
1225
|
2599 |
|
|
1226 DD62 A3 88 20 ZDD62 SUBD $20,X
|
2600 |
|
|
1227 DD65 BE D4 0F LDX >ZD40F
|
2601 |
|
|
1228 DD68 A6 02 LDA $02,X
|
2602 |
|
|
1229 DD6A 34 04 PSHS B
|
2603 |
|
|
1230 DD6C A0 E0 SUBA ,S+
|
2604 |
|
|
1231 DD6E 4A DECA
|
2605 |
|
|
1232 DD6F 1F 89 TFR A,B
|
2606 |
|
|
1233 DD71 A6 84 LDA ,X
|
2607 |
|
|
1234 DD73 EB 01 ADDB $01,X
|
2608 |
|
|
1235 DD75 BE D4 0B LDX >CURFCB
|
2609 |
|
|
1236 DD78 25 05 BCS ZDD7F
|
2610 |
|
|
1237 DD7A E1 88 3C ZDD7A CMPB $3C,X
|
2611 |
|
|
1238 DD7D 23 06 BLS ZDD85
|
2612 |
|
|
1239 DD7F E0 88 3C ZDD7F SUBB $3C,X
|
2613 |
|
|
1240 DD82 4C INCA
|
2614 |
|
|
1241 DD83 20 F5 BRA ZDD7A
|
2615 |
|
|
1242
|
2616 |
|
|
1243 DD85 BD D6 20 ZDD85 JSR >ZD620
|
2617 |
|
|
1244 DD88 25 14 BCS ZDD9E
|
2618 |
|
|
1245 DD8A BE D4 0B LDX >CURFCB
|
2619 |
|
|
1246 DD8D EC 88 42 LDD $42,X
|
2620 |
|
|
1247 DD90 10 A3 88 20 CMPD $20,X
|
2621 |
|
|
1248 DD94 27 14 BEQ ZDDAA
|
2622 |
|
|
1249 DD96 C6 19 LDB #$19
|
2623 |
|
|
1250 DD98 20 02 BRA ZDD9C
|
2624 |
|
|
1251
|
2625 |
|
|
1252 DD9A C6 18 ZDD9A LDB #$18
|
2626 |
|
|
1253 DD9C 1A 01 ZDD9C ORCC #$01
|
2627 |
|
|
1254 DD9E 39 ZDD9E RTS
|
2628 |
|
|
1255
|
2629 |
|
|
1256 DD9F BD D6 20 ZDD9F JSR >ZD620
|
2630 |
|
|
1257 DDA2 25 08 BCS ZDDAC
|
2631 |
|
|
1258 DDA4 BE D4 0B LDX >CURFCB
|
2632 |
|
|
1259 DDA7 C6 44 LDB #$44
|
2633 |
|
|
1260 DDA9 3A ABX
|
2634 |
|
|
1261 DDAA 1C FE ZDDAA ANDCC #$FE
|
2635 |
|
|
1262 DDAC 39 ZDDAC RTS
|
2636 |
|
|
1263
|
2637 |
|
|
1264 DDAD BE D4 0B ZDDAD LDX >CURFCB
|
2638 |
|
|
1265 DDB0 C6 0B LDB #$0B
|
2639 |
|
|
1266 DDB2 A6 88 24 ZDDB2 LDA $24,X
|
2640 |
|
|
1267 DDB5 A7 04 STA $04,X
|
2641 |
|
|
1268 DDB7 30 01 LEAX $01,X
|
2642 |
|
|
1269 DDB9 5A DECB
|
2643 |
|
|
1270 DDBA 26 F6 BNE ZDDB2
|
2644 |
|
|
1271 DDBC 39 RTS
|
2645 |
|
|
1272 *
|
2646 |
|
|
1273 ** FIND NEXT DRIVE
|
2647 |
|
|
1274 *
|
2648 |
|
|
1275 DDBD BE D4 0B NXTDRV LDX >CURFCB
|
2649 |
|
|
1276 DDC0 A6 03 LDA $03,X
|
2650 |
|
|
1277 DDC2 4C INCA
|
2651 |
|
|
1278 DDC3 81 04 CMPA #$04
|
2652 |
|
|
1279 DDC5 24 0F BCC ZDDD6
|
2653 |
|
|
1280 DDC7 A7 03 STA $03,X
|
2654 |
|
|
1281 DDC9 26 05 BNE ZDDD0
|
2655 |
|
|
1282 DDCB BD DE 0F JSR >DRVRDY
|
2656 |
|
|
1283 DDCE 20 03 BRA ZDDD3
|
2657 |
|
|
1284
|
2658 |
|
|
1285 DDD0 BD DE 12 ZDDD0 JSR >QUICK
|
2659 |
|
|
1286 DDD3 25 E8 ZDDD3 BCS NXTDRV
|
2660 |
|
|
1287 DDD5 39 RTS
|
2661 |
|
|
1288
|
2662 |
|
|
1289 DDD6 C6 10 ZDDD6 LDB #$10
|
2663 |
|
|
1290 DDD8 1A 01 ORCC #$01
|
2664 |
|
|
1291 DDDA 39 RTS
|
2665 |
|
|
0011 END
|
2666 |
|
|
0000 INCLUDE "f9-monex.txt"
|
2667 |
|
|
0001 *
|
2668 |
|
|
0002 ** FLEX 9 DISK DRIVERS
|
2669 |
|
|
0003 *
|
2670 |
|
|
0004 * FOR SYS09BUG ON THE DIGILENT SPARTAN 3 STARTER BOARD
|
2671 |
|
|
0005 * WITH I/O MAPPED AT $XE000
|
2672 |
|
|
0006 * AND ROM MAPPED AT $XF000
|
2673 |
|
|
0007 * THE DIGILENT SPARTAN 3 STARTER BOARD HAS 1MBYTE OF SRAM
|
2674 |
|
|
0008 * THE FIRST 64K IS USED BY FLEX,
|
2675 |
|
|
0009 * THE SECOND 128K IS USED AS A ROM DISK
|
2676 |
|
|
0010 * THE REMAINING RAM IS USED FOR A RAM DISK
|
2677 |
|
|
0011 *
|
2678 |
|
|
0012 *
|
2679 |
|
|
0013 0001 CFLAG EQU $01 CARRY FLAG
|
2680 |
|
|
0014 0002 VFLAG EQU $02 OVERFLOW FLAG
|
2681 |
|
|
0015 0004 ZFLAG EQU $04 ZERO FLAG
|
2682 |
|
|
0016 0008 NFLAG EQU $08 NEGATIVE FLAG
|
2683 |
|
|
0017 0010 IFLAG EQU $10 IRQ MASK CC
|
2684 |
|
|
0018 0020 HFLAG EQU $20 HALF CARRY
|
2685 |
|
|
0019 0040 FFLAG EQU $40 FIRQ MASK CC
|
2686 |
|
|
0020 0080 EFLAG EQU $80 ENTIRE FLAG
|
2687 |
|
|
0021 *
|
2688 |
|
|
0022 0000 MAPPAG EQU $00 PAGE $0000 DAT ADDRESS
|
2689 |
|
|
0023 FFF0 DATREG EQU IC11 DAT REGISTERS
|
2690 |
|
|
0024 *
|
2691 |
|
|
0025 * Serial Port
|
2692 |
|
|
0026 *
|
2693 |
|
|
0027 E000 ACIAC1 EQU ACIAS
|
2694 |
|
|
0028 E001 ACIAD1 EQU ACIAS+1
|
2695 |
|
|
0029 04E2 DELCON EQU 1250 Delay (Processor clock in MHz * 50)
|
2696 |
|
|
0030 *
|
2697 |
|
|
0031 * XMODEM Control characters
|
2698 |
|
|
0032 *
|
2699 |
|
|
0033 0001 SOH EQU $01
|
2700 |
|
|
0034 0004 EOT EQU $04
|
2701 |
|
|
0035 0006 ACK EQU $06
|
2702 |
|
|
0036 0015 NAK EQU $15
|
2703 |
|
|
0037 0018 CAN EQU $18
|
2704 |
|
|
0038 *
|
2705 |
|
|
0039 * DRIVE GEOMETRY
|
2706 |
|
|
0040 *
|
2707 |
|
|
0041 000E EMAXSEC EQU 14 ROM DISK
|
2708 |
|
|
0042 0030 EMAXTRK EQU 48 3 * 16 * 14 * 256 = 172,032 Bytes
|
2709 |
|
|
0043 0292 ETOTSEC EQU EMAXTRK*EMAXSEC-EMAXSEC
|
2710 |
|
|
0044 *
|
2711 |
|
|
0045 000E RMAXSEC EQU 14 RAM DISK
|
2712 |
|
|
0046 00C0 RMAXTRK EQU 192 12 * 16 * 14 * 256 = 688,128 Bytes
|
2713 |
|
|
0047 0A72 RTOTSEC EQU RMAXTRK*RMAXSEC-RMAXSEC
|
2714 |
|
|
0048 *
|
2715 |
|
|
0049 * DRIVE TYPES
|
2716 |
|
|
0050 *
|
2717 |
|
|
0051 0000 DTYPROM EQU 0 ROM DISK
|
2718 |
|
|
0052 0001 DTYPRAM EQU 1 RAM DISK
|
2719 |
|
|
0053 0002 DTYPFLS EQU 2 FLASH DISK
|
2720 |
|
|
0054 0003 DTYPNET EQU 3 FLEXNET DISK
|
2721 |
|
|
0055 *
|
2722 |
|
|
0056 DE00 ORG $DE00
|
2723 |
|
|
0057 *
|
2724 |
|
|
0058 * DISK DRIVER JUMP TABLE LAST UPDATE: 22/12/2006
|
2725 |
|
|
0059 * Disk driver for RAM Disk.
|
2726 |
|
|
0060 *
|
2727 |
|
|
0061 * 14 SECTORS PER TRACK
|
2728 |
|
|
0062 * 16 * N TRACKS PER DISK
|
2729 |
|
|
0063 *
|
2730 |
|
|
0064 * ROM DISK OCCUPIES $10000 - $1E000 ... $30000 - $3E000
|
2731 |
|
|
0065 * RAM DISK OCCUPIES $40000 - $4E000 ... $F0000 - $FE000
|
2732 |
|
|
0066 * Track Buffer page mapped at $E000 - $EFFF
|
2733 |
|
|
0067 * MAPPAG = $00 = 0 x $1000 (4 K pages)
|
2734 |
|
|
0068
|
2735 |
|
|
0069 * ON SWTPC ROM AT $XF000 AND IO AT $XE000
|
2736 |
|
|
0070 * APPEARS THROUGHOUT THE MEMORY SO MUST BE SKIPPED OVER
|
2737 |
|
|
0071 * WHEN USING RAM AS A RAMDISK.
|
2738 |
|
|
0072 * THE MSN OF THE TRACK MAPS INTO THE MSN OF THE DAT
|
2739 |
|
|
0073 * THE LSN OF THE TRACK NUMBER INDEXES INTO THE 4K RAM PAGE
|
2740 |
|
|
0074 * THE SECTOR MAPS INTO THE LSN OF THE DAT WHICH IS INVERTED
|
2741 |
|
|
0075 *
|
2742 |
|
|
0076 *
|
2743 |
|
|
0077 *
|
2744 |
|
|
0078 * FLEX disk jump table.
|
2745 |
|
|
0079 *
|
2746 |
|
|
0080 DE00 7E F0 57 READ JMP READSC
|
2747 |
|
|
0081 DE03 7E F0 5B WRITE JMP WRITSC
|
2748 |
|
|
0082 DE06 7E F0 5F VERIFY JMP BUSY
|
2749 |
|
|
0083 DE09 7E F0 63 RESTOR JMP RESTR1
|
2750 |
|
|
0084 DE0C 7E F0 6C DRIVE JMP DRVSEL
|
2751 |
|
|
0085 DE0F 7E F0 9F DRVRDY JMP CHKRDY
|
2752 |
|
|
0086 DE12 7E F0 A3 QUICK JMP CHKQIK
|
2753 |
|
|
0087 DE15 7E F0 A7 COLDDR JMP DINIT
|
2754 |
|
|
0088 DE18 7E F0 BF WARMDR JMP DWARM
|
2755 |
|
|
0089 DE1B 7E F0 C3 SEEK JMP SEEKTS
|
2756 |
|
|
0090 *
|
2757 |
|
|
0091 * RAM SPACE
|
2758 |
|
|
0092 *
|
2759 |
|
|
0093 DE1E 00 DRVNUM FCB 0
|
2760 |
|
|
0094 DE1F 00 TRACK FCB 0
|
2761 |
|
|
0095 DE20 00 SECTOR FCB 0
|
2762 |
|
|
0096 DE21 00 CHKSUM FCB 0
|
2763 |
|
|
0097 DE22 00 CCSAVE FCB 0
|
2764 |
|
|
0098 DE23 00 BLKNUM FCB 0 Xmodem block number
|
2765 |
|
|
0099 DE24 00 BYTCNT FCB 0 Xmodem byte count
|
2766 |
|
|
0100 DE25 00 00 XSTATE FDB 0 Xmodem State Vector
|
2767 |
|
|
0101 DE27 00 00 00 DELCNT FCB $00,$00,$00 Xmodem Poll timer
|
2768 |
|
|
0102 *
|
2769 |
|
|
0103 * Disc driver type table.
|
2770 |
|
|
0104 * Indexed by drive number
|
2771 |
|
|
0105 *
|
2772 |
|
|
0106 DE2A 00 DTYPTAB FCB DTYPROM Drive 0 (ROM Disk)
|
2773 |
|
|
0107 DE2B 01 FCB DTYPRAM Drive 1 (RAM Disk)
|
2774 |
|
|
0108 DE2C 02 FCB DTYPFLS Drive 2 (FLASH Disk)
|
2775 |
|
|
0109 DE2D 03 FCB DTYPNET Drive 3 (NETPC Disk)
|
2776 |
|
|
0110 *
|
2777 |
|
|
0111 * RAM Disk offset
|
2778 |
|
|
0112 * Indexed by drive type
|
2779 |
|
|
0113 *
|
2780 |
|
|
0114 DE2E 10 DOFFTAB FCB $10 ROM Disk $10000
|
2781 |
|
|
0115 DE2F 40 FCB $40 RAM DISK $40000
|
2782 |
|
|
0116 DE30 FF FCB $FF Flash Disk
|
2783 |
|
|
0117 DE31 FF FCB $FF NETPC Disk
|
2784 |
|
|
0118 *
|
2785 |
|
|
0119 DE32 REAVEC RMB 2 Disc driver jump table.
|
2786 |
|
|
0120 DE34 WRIVEC RMB 2
|
2787 |
|
|
0121 DE36 VERVEC RMB 2
|
2788 |
|
|
0122 DE38 RSTVEC RMB 2
|
2789 |
|
|
0123 DE3A DRVVEC RMB 2
|
2790 |
|
|
0124 DE3C CHKVEC RMB 2
|
2791 |
|
|
0125 DE3E QUIVEC RMB 2
|
2792 |
|
|
0126 DE40 INIVEC RMB 2
|
2793 |
|
|
0127 DE42 WARVEC RMB 2
|
2794 |
|
|
0128 DE44 SEEVEC RMB 2
|
2795 |
|
|
0129 *
|
2796 |
|
|
0130 * SECTOR BUFFER
|
2797 |
|
|
0131 *
|
2798 |
|
|
0132 DE46 BUFFER RMB 256
|
2799 |
|
|
0133 DF46 SYNCREG RMB 4 Prom input register
|
2800 |
|
|
0134 *
|
2801 |
|
|
0135 ****************************************
|
2802 |
|
|
0136 *
|
2803 |
|
|
0137 * START OF EXTENSION COMMANDS
|
2804 |
|
|
0138 *
|
2805 |
|
|
0139 ****************************************
|
2806 |
|
|
0140 *
|
2807 |
|
|
0141 F000 ORG MONEXT
|
2808 |
|
|
0142 F000 F7 BD FDB NEXTEXT Jump to next extended command
|
2809 |
|
|
0143 *
|
2810 |
|
|
0144 *
|
2811 |
|
|
0145 *****************************************
|
2812 |
|
|
0146 * Disk drivers *
|
2813 |
|
|
0147 * ------------ *
|
2814 |
|
|
0148 * The system dependant code for the *
|
2815 |
|
|
0149 * disc drivers fits here. Two tables *
|
2816 |
|
|
0150 * must be included. These are DTYPTAB a *
|
2817 |
|
|
0151 * four byte table that defines which of *
|
2818 |
|
|
0152 * the (up to four) following sets of *
|
2819 |
|
|
0153 * jump tables to use, and TABSRT the *
|
2820 |
|
|
0154 * jump tables themselves. For a full *
|
2821 |
|
|
0155 * description of the floppy drivers see *
|
2822 |
|
|
0156 * section 4 (pp9-14) of the general *
|
2823 |
|
|
0157 * Flex adaptation guide. *
|
2824 |
|
|
0158 *****************************************
|
2825 |
|
|
0159 *
|
2826 |
|
|
0160 * Mass storage drivers for embedded applications.
|
2827 |
|
|
0161 *
|
2828 |
|
|
0162 * Jump tables.
|
2829 |
|
|
0163 F002 F1 19 TABSRT FDB EREAD Drive type 0 (ROM disk).
|
2830 |
|
|
0164 F004 F1 41 FDB EWRITE
|
2831 |
|
|
0165 F006 F1 3F FDB ECHECK
|
2832 |
|
|
0166 F008 F1 3F FDB ECHECK
|
2833 |
|
|
0167 F00A F1 3F FDB ECHECK
|
2834 |
|
|
0168 F00C F1 3F FDB ECHECK
|
2835 |
|
|
0169 F00E F1 3F FDB ECHECK
|
2836 |
|
|
0170 F010 F0 52 FDB DDUMMY
|
2837 |
|
|
0171 F012 F0 52 FDB DDUMMY
|
2838 |
|
|
0172 F014 F0 52 FDB DDUMMY
|
2839 |
|
|
0173 *
|
2840 |
|
|
0174 F016 F1 19 FDB EREAD Drive type 1 (RAM disk).
|
2841 |
|
|
0175 F018 F1 41 FDB EWRITE
|
2842 |
|
|
0176 F01A F1 3F FDB ECHECK
|
2843 |
|
|
0177 F01C F1 3F FDB ECHECK
|
2844 |
|
|
0178 F01E F1 3F FDB ECHECK
|
2845 |
|
|
0179 F020 F1 3F FDB ECHECK
|
2846 |
|
|
0180 F022 F1 3F FDB ECHECK
|
2847 |
|
|
0181 F024 F0 52 FDB DDUMMY
|
2848 |
|
|
0182 F026 F0 52 FDB DDUMMY
|
2849 |
|
|
0183 F028 F0 52 FDB DDUMMY
|
2850 |
|
|
0184 *
|
2851 |
|
|
0185 F02A F0 52 FDB DDUMMY Drive type 2 (External Flash disk).
|
2852 |
|
|
0186 F02C F0 52 FDB DDUMMY
|
2853 |
|
|
0187 F02E F0 52 FDB DDUMMY
|
2854 |
|
|
0188 F030 F0 52 FDB DDUMMY
|
2855 |
|
|
0189 F032 F0 52 FDB DDUMMY
|
2856 |
|
|
0190 F034 F0 52 FDB DDUMMY
|
2857 |
|
|
0191 F036 F0 52 FDB DDUMMY
|
2858 |
|
|
0192 F038 F0 52 FDB DDUMMY
|
2859 |
|
|
0193 F03A F0 52 FDB DDUMMY
|
2860 |
|
|
0194 F03C F0 52 FDB DDUMMY
|
2861 |
|
|
0195 *
|
2862 |
|
|
0196 F03E F1 7A FDB NREAD Drive type 3 (NetPC drive via serial port).
|
2863 |
|
|
0197 F040 F1 E9 FDB NWRITE
|
2864 |
|
|
0198 F042 F2 49 FDB NVERIFY
|
2865 |
|
|
0199 F044 F2 4E FDB NCHECK
|
2866 |
|
|
0200 F046 F2 4E FDB NCHECK
|
2867 |
|
|
0201 F048 F2 4E FDB NCHECK
|
2868 |
|
|
0202 F04A F2 4E FDB NCHECK
|
2869 |
|
|
0203 F04C F0 52 FDB DDUMMY
|
2870 |
|
|
0204 F04E F0 52 FDB DDUMMY
|
2871 |
|
|
0205 F050 F0 52 FDB DDUMMY
|
2872 |
|
|
0206 *
|
2873 |
|
|
0207 *
|
2874 |
|
|
0208 * Dummy routine (no errors).
|
2875 |
|
|
0209 F052 5F DDUMMY CLRB
|
2876 |
|
|
0210 F053 5D TSTB Set (z)=1
|
2877 |
|
|
0211 F054 1C FE ANDCC #$FF-CFLAG Set (c)=0
|
2878 |
|
|
0212 F056 39 RTS
|
2879 |
|
|
0213 * *
|
2880 |
|
|
0214 **************************
|
2881 |
|
|
0215 * Main Flex entry points *
|
2882 |
|
|
0216 *************************
|
2883 |
|
|
0217 *
|
2884 |
|
|
0218 * Read sector routine.
|
2885 |
|
|
0219 * Entry: (X) = address where sector is to be placed.
|
2886 |
|
|
0220 * (A) = Track number.
|
2887 |
|
|
0221 * (B) = Sector number.
|
2888 |
|
|
0222 * Exit: (B) = Error code (z)=1 if no error.
|
2889 |
|
|
0223 F057 6E 9F DE 32 READSC JMP [REAVEC]
|
2890 |
|
|
0224 *
|
2891 |
|
|
0225 * Write track routine.
|
2892 |
|
|
0226 * Entry: (X) = Address of area of memory from which the data will be taken.
|
2893 |
|
|
0227 * (A) = Track number.
|
2894 |
|
|
0228 * (B) = Sector number.
|
2895 |
|
|
0229 * Exit: (B) = Error condition, (Z)=1 no an error.
|
2896 |
|
|
0230 F05B 6E 9F DE 34 WRITSC JMP [WRIVEC]
|
2897 |
|
|
0231 *
|
2898 |
|
|
0232 * Verify sector routine.
|
2899 |
|
|
0233 * Entry: no parameters.
|
2900 |
|
|
0234 * Exit: (B) = Error condition (Z)=1 if no error.
|
2901 |
|
|
0235 F05F 6E 9F DE 36 BUSY JMP [VERVEC]
|
2902 |
|
|
0236 *
|
2903 |
|
|
0237 * Restore drive to track 00.
|
2904 |
|
|
0238 * Entry: (X) = FCB address (3,X contains drive number).
|
2905 |
|
|
0239 * Exit: (B) = Error condition, (Z)=1 if no error.
|
2906 |
|
|
0240 F063 8D 07 RESTR1 BSR DRVSEL Select drive first.
|
2907 |
|
|
0241 F065 27 01 BEQ RST1
|
2908 |
|
|
0242 F067 39 RTS
|
2909 |
|
|
0243 F068 6E 9F DE 38 RST1 JMP [RSTVEC]
|
2910 |
|
|
0244 *
|
2911 |
|
|
0245 * Select current drive.
|
2912 |
|
|
0246 * Entry: (X) = FCB address (3,X contains drive number).
|
2913 |
|
|
0247 * Exit: (B) = Error condition, (Z)=0 and (c)=1 if error.
|
2914 |
|
|
0248 * (B) = $0F if non existant drive.
|
2915 |
|
|
0249 F06C 34 30 DRVSEL PSHS X,Y
|
2916 |
|
|
0250 F06E E6 03 LDB 3,X Get driver type.
|
2917 |
|
|
0251 F070 F7 DE 1E STB DRVNUM
|
2918 |
|
|
0252 F073 8E DE 2A LDX #DTYPTAB
|
2919 |
|
|
0253 F076 A6 85 LDA B,X
|
2920 |
|
|
0254 F078 81 FF CMPA #$FF Is the drive nonexistant?
|
2921 |
|
|
0255 F07A 26 08 BNE DRIVE1
|
2922 |
|
|
0256 F07C 35 30 PULS X,Y
|
2923 |
|
|
0257 F07E C6 0F LDB #$0F
|
2924 |
|
|
0258 F080 5D TSTB
|
2925 |
|
|
0259 F081 1A 01 ORCC #$01
|
2926 |
|
|
0260 F083 39 RTS
|
2927 |
|
|
0261 *
|
2928 |
|
|
0262 F084 C6 14 DRIVE1 LDB #20 Get correct table start address.
|
2929 |
|
|
0263 F086 3D MUL
|
2930 |
|
|
0264 F087 8E F0 02 LDX #TABSRT
|
2931 |
|
|
0265 F08A 30 8B LEAX D,X
|
2932 |
|
|
0266 F08C 10 8E DE 32 LDY #REAVEC Copy table into ram.
|
2933 |
|
|
0267 F090 C6 14 LDB #20
|
2934 |
|
|
0268 F092 A6 80 DRIVE2 LDA 0,X+
|
2935 |
|
|
0269 F094 A7 A0 STA 0,Y+
|
2936 |
|
|
0270 F096 5A DECB
|
2937 |
|
|
0271 F097 26 F9 BNE DRIVE2
|
2938 |
|
|
0272 F099 35 30 PULS X,Y
|
2939 |
|
|
0273 F09B 6E 9F DE 3A JMP [DRVVEC]
|
2940 |
|
|
0274 *
|
2941 |
|
|
0275 * Check for drive ready.
|
2942 |
|
|
0276 * Entry: (X) = FCB address (3,X contains drive number)>
|
2943 |
|
|
0277 * Exit: (B) = Error condition, (Z)=0 AND (C)=1 if drive is not ready.
|
2944 |
|
|
0278 F09F 6E 9F DE 3C CHKRDY JMP [CHKVEC]
|
2945 |
|
|
0279 *
|
2946 |
|
|
0280 * Quick drive ready check.
|
2947 |
|
|
0281 * Entry: (X) = FCB address (3,X contains drive number).
|
2948 |
|
|
0282 * Exit: (B) = Error condition, (Z)=0 AND (c)=1 if drive not ready.
|
2949 |
|
|
0283 F0A3 6E 9F DE 3E CHKQIK JMP [QUIVEC]
|
2950 |
|
|
0284 *
|
2951 |
|
|
0285 * Init (cold start).
|
2952 |
|
|
0286 * Entry: no parameters.
|
2953 |
|
|
0287 * Exit: no change.
|
2954 |
|
|
0288 F0A7 4F DINIT CLRA
|
2955 |
|
|
0289 F0A8 B7 DE 1E DINIT1 STA DRVNUM Init each valid drive in turn.
|
2956 |
|
|
0290 F0AB 8E DE 1B LDX #DRVNUM-3
|
2957 |
|
|
0291 F0AE 8D BC BSR DRVSEL
|
2958 |
|
|
0292 F0B0 25 04 BCS DINIT2
|
2959 |
|
|
0293 F0B2 AD 9F DE 40 JSR [INIVEC]
|
2960 |
|
|
0294 F0B6 B6 DE 1E DINIT2 LDA DRVNUM
|
2961 |
|
|
0295 F0B9 4C INCA
|
2962 |
|
|
0296 F0BA 81 04 CMPA #4
|
2963 |
|
|
0297 F0BC 26 EA BNE DINIT1
|
2964 |
|
|
0298 F0BE 39 RTS
|
2965 |
|
|
0299 *
|
2966 |
|
|
0300 * Warm start.
|
2967 |
|
|
0301 * Entry: no parameters.
|
2968 |
|
|
0302 * Exit: no change.
|
2969 |
|
|
0303 F0BF 6E 9F DE 42 DWARM JMP [WARVEC]
|
2970 |
|
|
0304 *
|
2971 |
|
|
0305 * Seek track.
|
2972 |
|
|
0306 * Entry: (A) = Track number.
|
2973 |
|
|
0307 * (B) = Sector number.
|
2974 |
|
|
0308 * Exit: (B) = Error condition, (Z)=1 if no error.
|
2975 |
|
|
0309 F0C3 6E 9F DE 44 SEEKTS JMP [SEEVEC]
|
2976 |
|
|
0310 *
|
2977 |
|
|
0311 *
|
2978 |
|
|
0312 *****************************************************
|
2979 |
|
|
0313 * ROMdisk drivers *
|
2980 |
|
|
0314 * --------------- *
|
2981 |
|
|
0315 * Drivers to support a ROMdisk in the external RAM *
|
2982 |
|
|
0316 * of the SYS09. The ROMdisk base address is $10000 *
|
2983 |
|
|
0317 *****************************************************
|
2984 |
|
|
0318 * Dummy return for ROM disk (write protected!)
|
2985 |
|
|
0319 *
|
2986 |
|
|
0320 * MAP RAM DISK INTO MEMORY SPACE
|
2987 |
|
|
0321 *
|
2988 |
|
|
0322 F0C7 1F A8 MAPIN TFR CC,A ; Save state of interrupt masks
|
2989 |
|
|
0323 F0C9 B7 DE 22 STA CCSAVE
|
2990 |
|
|
0324 F0CC 1A 50 ORCC #FFLAG+IFLAG ; Mask interrupts while IO mapped out
|
2991 |
|
|
0325 F0CE CE DE 2A LDU #DTYPTAB ; Point to Drive Type table
|
2992 |
|
|
0326 F0D1 F6 DE 1E LDB DRVNUM ; Get working drive number
|
2993 |
|
|
0327 F0D4 E6 C5 LDB B,U
|
2994 |
|
|
0328 F0D6 CE DE 2E LDU #DOFFTAB
|
2995 |
|
|
0329 F0D9 B6 DE 1F LDA TRACK
|
2996 |
|
|
0330 F0DC AB C5 ADDA B,U ; Add Base offset into RAM
|
2997 |
|
|
0331 F0DE 84 F0 ANDA #$F0 ; Mask MSN
|
2998 |
|
|
0332 F0E0 A7 E2 STA ,-S ; Save A on stack
|
2999 |
|
|
0333 *
|
3000 |
|
|
0334 F0E2 B6 DE 20 LDA SECTOR
|
3001 |
|
|
0335 F0E5 80 01 SUBA #1 ; Sectors 1 to 14 => 0 to 13
|
3002 |
|
|
0336 F0E7 88 0F EORA #$0F ; Complement LSNybble
|
3003 |
|
|
0337 F0E9 84 0F ANDA #$0F
|
3004 |
|
|
0338 *
|
3005 |
|
|
0339 F0EB AB E0 ADDA ,S+ ; Add sector to LSN of Track and pop
|
3006 |
|
|
0340 F0ED B7 FF F0 STA DATREG+MAPPAG
|
3007 |
|
|
0341 *
|
3008 |
|
|
0342 F0F0 B6 DE 1F LDA TRACK ; LSN of Track indexes into 4K page
|
3009 |
|
|
0343 F0F3 84 0F ANDA #$0F
|
3010 |
|
|
0344 F0F5 8B 00 ADDA #MAPPAG*16
|
3011 |
|
|
0345 F0F7 5F CLRB
|
3012 |
|
|
0346 F0F8 1F 03 TFR D,U
|
3013 |
|
|
0347 F0FA 39 RTS
|
3014 |
|
|
0348 *
|
3015 |
|
|
0349 * MAP RAM DISK OUT OF MEMORY
|
3016 |
|
|
0350 *
|
3017 |
|
|
0351 F0FB 86 00 MAPOUT LDA #MAPPAG ; Point to the Flex page
|
3018 |
|
|
0352 F0FD 88 0F EORA #$0F ; Complement LSNybble
|
3019 |
|
|
0353 F0FF B7 FF F0 STA DATREG+MAPPAG ; map in Flex page
|
3020 |
|
|
0354 F102 B6 DE 22 LDA CCSAVE ; restore interrupt masks
|
3021 |
|
|
0355 F105 1F 8A TFR A,CC
|
3022 |
|
|
0356 F107 39 RTS
|
3023 |
|
|
0357 *
|
3024 |
|
|
0358 * Seek track and sector
|
3025 |
|
|
0359 * A holds track number (0-32)
|
3026 |
|
|
0360 * B holds sector number (1-14)
|
3027 |
|
|
0361 *
|
3028 |
|
|
0362 F108 B7 DE 1F ESEEK STA TRACK
|
3029 |
|
|
0363 F10B F7 DE 20 STB SECTOR
|
3030 |
|
|
0364 F10E 1C FE ANDCC #$FE ; CLEAR CARRY
|
3031 |
|
|
0365 F110 1A 04 ORCC #$04 ; SET Z
|
3032 |
|
|
0366 F112 39 RTS
|
3033 |
|
|
0367 *
|
3034 |
|
|
0368 * MARK DISK READ ONLY
|
3035 |
|
|
0369 *
|
3036 |
|
|
0370 F113 C6 40 EDUMMY LDB #$40
|
3037 |
|
|
0371 F115 5D TSTB
|
3038 |
|
|
0372 F116 1A 01 ORCC #$01
|
3039 |
|
|
0373 F118 39 RTS
|
3040 |
|
|
0374 *
|
3041 |
|
|
0375 F119 34 70 EREAD PSHS X,Y,U push sequentialy to preserve order on stack
|
3042 |
|
|
0376 F11B 17 FF EA LBSR ESEEK
|
3043 |
|
|
0377 F11E 17 FF A6 LBSR MAPIN build external ram address
|
3044 |
|
|
0378 *
|
3045 |
|
|
0379 F121 10 8E DE 46 LDY #BUFFER
|
3046 |
|
|
0380 F125 5F CLRB
|
3047 |
|
|
0381 F126 A6 C0 ERLOOP1 LDA 0,U+ move 256 bytes to buffer from external RAM
|
3048 |
|
|
0382 F128 A7 A0 STA 0,Y+
|
3049 |
|
|
0383 F12A 5A DECB
|
3050 |
|
|
0384 F12B 26 F9 BNE ERLOOP1
|
3051 |
|
|
0385 *
|
3052 |
|
|
0386 F12D 17 FF CB LBSR MAPOUT
|
3053 |
|
|
0387 *
|
3054 |
|
|
0388 F130 10 8E DE 46 LDY #BUFFER
|
3055 |
|
|
0389 F134 5F CLRB
|
3056 |
|
|
0390 F135 A6 A0 ERLOOP2 LDA 0,Y+ move 256 bytes from buffer to Flex RAM
|
3057 |
|
|
0391 F137 A7 80 STA 0,X+
|
3058 |
|
|
0392 F139 5A DECB
|
3059 |
|
|
0393 F13A 26 F9 BNE ERLOOP2
|
3060 |
|
|
0394 *
|
3061 |
|
|
0395 F13C 5F CLRB
|
3062 |
|
|
0396 F13D 35 F0 PULS X,Y,U,PC restore all registers
|
3063 |
|
|
0397 *
|
3064 |
|
|
0398 * check for marker bytes $AA55 in first bytes of first track/sector
|
3065 |
|
|
0399 *
|
3066 |
|
|
0400 *ECHECK CLRA
|
3067 |
|
|
0401 * LDB #1
|
3068 |
|
|
0402 * LDX #BUFFER
|
3069 |
|
|
0403 * BSR EREAD
|
3070 |
|
|
0404 * LDD BUFFER
|
3071 |
|
|
0405 * CMPD #$AA55
|
3072 |
|
|
0406 * BNE EERR
|
3073 |
|
|
0407 * LBRA DDUMMY
|
3074 |
|
|
0408 *EERR LDB #$80 not ready bit set
|
3075 |
|
|
0409 * TSTB
|
3076 |
|
|
0410 * ORCC #$01
|
3077 |
|
|
0411 * RTS
|
3078 |
|
|
0412 F13F 5F ECHECK CLRB
|
3079 |
|
|
0413 F140 39 RTS
|
3080 |
|
|
0414 *
|
3081 |
|
|
0415 * Write Sector
|
3082 |
|
|
0416 *
|
3083 |
|
|
0417 F141 34 70 EWRITE PSHS X,Y,U
|
3084 |
|
|
0418 F143 17 FF C2 LBSR ESEEK
|
3085 |
|
|
0419 F146 CE DE 2A LDU #DTYPTAB ; Point to Drive Type table
|
3086 |
|
|
0420 F149 F6 DE 1E LDB DRVNUM ; Get working drive number
|
3087 |
|
|
0421 F14C E6 C5 LDB B,U ; Fetch Drive type
|
3088 |
|
|
0422 F14E C1 01 CMPB #DTYPRAM ; Is it a RAM Disk ?
|
3089 |
|
|
0423 F150 27 07 BEQ EWOK ; Yep, can write to it
|
3090 |
|
|
0424 F152 C1 00 CMPB #DTYPROM ; Allow writes to ROM Disk too
|
3091 |
|
|
0425 F154 27 03 BEQ EWOK
|
3092 |
|
|
0426 F156 16 FF BA LBRA EDUMMY ; Nope report read only
|
3093 |
|
|
0427 *
|
3094 |
|
|
0428 F159 10 8E DE 46 EWOK LDY #BUFFER
|
3095 |
|
|
0429 F15D 5F CLRB
|
3096 |
|
|
0430 F15E A6 80 EWLOOP1 LDA 0,X+ move 256 bytes to buffer from Flex RAM
|
3097 |
|
|
0431 F160 A7 A0 STA 0,Y+
|
3098 |
|
|
0432 F162 5A DECB
|
3099 |
|
|
0433 F163 26 F9 BNE EWLOOP1
|
3100 |
|
|
0434 *
|
3101 |
|
|
0435 F165 17 FF 5F LBSR MAPIN
|
3102 |
|
|
0436 *
|
3103 |
|
|
0437 F168 10 8E DE 46 LDY #BUFFER
|
3104 |
|
|
0438 F16C 5F CLRB
|
3105 |
|
|
0439 F16D A6 A0 EWLOOP2 LDA 0,Y+ move 256 bytes from buffer to external RAM
|
3106 |
|
|
0440 F16F A7 C0 STA 0,U+
|
3107 |
|
|
0441 F171 5A DECB
|
3108 |
|
|
0442 F172 26 F9 BNE EWLOOP2
|
3109 |
|
|
0443 *
|
3110 |
|
|
0444 F174 17 FF 84 LBSR MAPOUT
|
3111 |
|
|
0445 *
|
3112 |
|
|
0446 F177 5F CLRB
|
3113 |
|
|
0447 F178 35 F0 PULS X,Y,U,PC
|
3114 |
|
|
0448 *
|
3115 |
|
|
0449 *
|
3116 |
|
|
0450 *****************************************************
|
3117 |
|
|
0451 * FlexNet drivers *
|
3118 |
|
|
0452 * --------------- *
|
3119 |
|
|
0453 * Drivers to support a remote connection via the *
|
3120 |
|
|
0454 * serial port using the FlexNet protocol as defined *
|
3121 |
|
|
0455 * in FLEXNet_421B *
|
3122 |
|
|
0456 *****************************************************
|
3123 |
|
|
0457 *
|
3124 |
|
|
0458 *
|
3125 |
|
|
0459 * read sector from remote drive
|
3126 |
|
|
0460 *
|
3127 |
|
|
0461 F17A 34 04 NREAD PSHS B
|
3128 |
|
|
0462 F17C 34 02 PSHS A
|
3129 |
|
|
0463 F17E 7F DE 21 CLR CHKSUM clear checksum
|
3130 |
|
|
0464 F181 7F DE 22 CLR CHKSUM+1
|
3131 |
|
|
0465 *
|
3132 |
|
|
0466 F184 86 73 LDA #'s Send read sector command
|
3133 |
|
|
0467 F186 BD F2 85 JSR SCHAR
|
3134 |
|
|
0468 F189 24 4C BCC NRD_DNR if timeout, then flag drive not ready
|
3135 |
|
|
0469 *
|
3136 |
|
|
0470 F18B B6 DE 1E LDA DRVNUM send drive
|
3137 |
|
|
0471 F18E BD F2 85 JSR SCHAR
|
3138 |
|
|
0472 F191 24 44 BCC NRD_DNR
|
3139 |
|
|
0473 *
|
3140 |
|
|
0474 F193 35 02 PULS A send track
|
3141 |
|
|
0475 F195 BD F2 85 JSR SCHAR
|
3142 |
|
|
0476 F198 24 3D BCC NRD_DNR
|
3143 |
|
|
0477 *
|
3144 |
|
|
0478 F19A 35 02 PULS A send sector
|
3145 |
|
|
0479 F19C BD F2 85 JSR SCHAR
|
3146 |
|
|
0480 F19F 24 36 BCC NRD_DNR
|
3147 |
|
|
0481 *
|
3148 |
|
|
0482 * transfer 256 bytes
|
3149 |
|
|
0483 F1A1 5F CLRB
|
3150 |
|
|
0484 F1A2 BD F2 67 NREAD1 JSR RCHAR read byte
|
3151 |
|
|
0485 F1A5 24 30 BCC NRD_DNR if timeout, then flag drive not ready
|
3152 |
|
|
0486 F1A7 A7 80 STA 0,X+
|
3153 |
|
|
0487 F1A9 BB DE 22 ADDA CHKSUM+1 update checksum
|
3154 |
|
|
0488 F1AC B7 DE 22 STA CHKSUM+1
|
3155 |
|
|
0489 F1AF 24 03 BCC NREAD2
|
3156 |
|
|
0490 F1B1 7C DE 21 INC CHKSUM
|
3157 |
|
|
0491 F1B4 5A NREAD2 DECB
|
3158 |
|
|
0492 F1B5 26 EB BNE NREAD1
|
3159 |
|
|
0493 *
|
3160 |
|
|
0494 * compare checksums
|
3161 |
|
|
0495 F1B7 BD F2 67 JSR RCHAR get checksum msb
|
3162 |
|
|
0496 F1BA 24 1B BCC NRD_DNR
|
3163 |
|
|
0497 F1BC 34 02 PSHS A
|
3164 |
|
|
0498 F1BE BD F2 67 JSR RCHAR get checksum lsb
|
3165 |
|
|
0499 F1C1 24 14 BCC NRD_DNR
|
3166 |
|
|
0500 F1C3 1F 89 TFR A,B
|
3167 |
|
|
0501 F1C5 35 02 PULS A
|
3168 |
|
|
0502 F1C7 10 B3 DE 21 CMPD CHKSUM compare checksums
|
3169 |
|
|
0503 F1CB 26 0E BNE NRD_ERR if checksum error, then flag crc read error
|
3170 |
|
|
0504 *
|
3171 |
|
|
0505 F1CD 86 06 LDA #ACK no checksum error, send ACK char
|
3172 |
|
|
0506 F1CF BD F2 85 JSR SCHAR
|
3173 |
|
|
0507 F1D2 24 03 BCC NRD_DNR
|
3174 |
|
|
0508 F1D4 5F CLRB all OK, flag no error
|
3175 |
|
|
0509 F1D5 20 0D BRA NRD_END
|
3176 |
|
|
0510 *
|
3177 |
|
|
0511 F1D7 C6 10 NRD_DNR LDB #16 flag drive not ready
|
3178 |
|
|
0512 F1D9 20 09 BRA NRD_END
|
3179 |
|
|
0513 *
|
3180 |
|
|
0514 F1DB 86 15 NRD_ERR LDA #NAK send NAK
|
3181 |
|
|
0515 F1DD BD F2 85 JSR SCHAR
|
3182 |
|
|
0516 F1E0 24 F5 BCC NRD_DNR
|
3183 |
|
|
0517 F1E2 C6 09 LDB #09 flag crc read error
|
3184 |
|
|
0518 *
|
3185 |
|
|
0519 F1E4 F7 DE 21 NRD_END STB CHKSUM used by VERIFY
|
3186 |
|
|
0520 F1E7 5D TSTB
|
3187 |
|
|
0521 F1E8 39 RTS
|
3188 |
|
|
0522 *
|
3189 |
|
|
0523 *
|
3190 |
|
|
0524 * write sector to remote drive
|
3191 |
|
|
0525 *
|
3192 |
|
|
0526 F1E9 34 04 NWRITE PSHS B
|
3193 |
|
|
0527 F1EB 34 02 PSHS A
|
3194 |
|
|
0528 F1ED 7F DE 21 CLR CHKSUM clear checksum
|
3195 |
|
|
0529 F1F0 7F DE 22 CLR CHKSUM+1
|
3196 |
|
|
0530 *
|
3197 |
|
|
0531 F1F3 86 72 LDA #'r Send write sector command
|
3198 |
|
|
0532 F1F5 BD F2 85 JSR SCHAR
|
3199 |
|
|
0533 F1F8 24 DD BCC NRD_DNR if timeout, then flag drive not ready
|
3200 |
|
|
0534 *
|
3201 |
|
|
0535 F1FA B6 DE 1E LDA DRVNUM send drive
|
3202 |
|
|
0536 F1FD BD F2 85 JSR SCHAR
|
3203 |
|
|
0537 F200 24 D5 BCC NRD_DNR
|
3204 |
|
|
0538 *
|
3205 |
|
|
0539 F202 35 02 PULS A send track
|
3206 |
|
|
0540 F204 BD F2 85 JSR SCHAR
|
3207 |
|
|
0541 F207 24 CE BCC NRD_DNR
|
3208 |
|
|
0542 *
|
3209 |
|
|
0543 F209 35 02 PULS A send sector
|
3210 |
|
|
0544 F20B BD F2 85 JSR SCHAR
|
3211 |
|
|
0545 F20E 24 C7 BCC NRD_DNR
|
3212 |
|
|
0546 *
|
3213 |
|
|
0547 * transfer 256 bytes
|
3214 |
|
|
0548 F210 5F CLRB
|
3215 |
|
|
0549 F211 A6 80 NWRITE1 LDA 0,X+
|
3216 |
|
|
0550 F213 BD F2 85 JSR SCHAR write byte
|
3217 |
|
|
0551 F216 24 BF BCC NRD_DNR if timeout, then flag drive not ready
|
3218 |
|
|
0552 F218 BB DE 22 ADDA CHKSUM+1 update checksum
|
3219 |
|
|
0553 F21B B7 DE 22 STA CHKSUM+1
|
3220 |
|
|
0554 F21E 24 03 BCC NWRITE2
|
3221 |
|
|
0555 F220 7C DE 21 INC CHKSUM
|
3222 |
|
|
0556 F223 5A NWRITE2 DECB
|
3223 |
|
|
0557 F224 26 EB BNE NWRITE1
|
3224 |
|
|
0558 *
|
3225 |
|
|
0559 * compare checksums
|
3226 |
|
|
0560 F226 B6 DE 21 LDA CHKSUM
|
3227 |
|
|
0561 F229 BD F2 85 JSR SCHAR send checksum msb
|
3228 |
|
|
0562 F22C 24 A9 BCC NRD_DNR
|
3229 |
|
|
0563 F22E B6 DE 22 LDA CHKSUM+1
|
3230 |
|
|
0564 F231 BD F2 85 JSR SCHAR send checksum lsb
|
3231 |
|
|
0565 F234 24 A1 BCC NRD_DNR
|
3232 |
|
|
0566 *
|
3233 |
|
|
0567 F236 BD F2 67 JSR RCHAR get checksum response
|
3234 |
|
|
0568 F239 24 9C BCC NRD_DNR
|
3235 |
|
|
0569 F23B 81 06 CMPA #ACK
|
3236 |
|
|
0570 F23D 26 03 BNE NWR_ERR if checksum error, then flag write error
|
3237 |
|
|
0571 *
|
3238 |
|
|
0572 F23F 5F CLRB all OK, flag no error
|
3239 |
|
|
0573 F240 20 02 BRA NWR_END
|
3240 |
|
|
0574 *
|
3241 |
|
|
0575 F242 C6 0A NWR_ERR LDB #10 flag write error
|
3242 |
|
|
0576 *
|
3243 |
|
|
0577 F244 F7 DE 21 NWR_END STB CHKSUM used by VERIFY
|
3244 |
|
|
0578 F247 5D TSTB
|
3245 |
|
|
0579 F248 39 RTS
|
3246 |
|
|
0580 *
|
3247 |
|
|
0581 *
|
3248 |
|
|
0582 * verify last sector written to remote drive
|
3249 |
|
|
0583 *
|
3250 |
|
|
0584 F249 F6 DE 21 NVERIFY LDB CHKSUM test last checksum
|
3251 |
|
|
0585 F24C 5D TSTB
|
3252 |
|
|
0586 F24D 39 RTS
|
3253 |
|
|
0587 *
|
3254 |
|
|
0588 *
|
3255 |
|
|
0589 * quck check and check drive ready
|
3256 |
|
|
0590 *
|
3257 |
|
|
0591 F24E 86 51 NCHECK LDA #'Q quick check command
|
3258 |
|
|
0592 F250 BD F2 85 JSR SCHAR
|
3259 |
|
|
0593 F253 24 0C BCC NCK_ERR if timeout, then flag drive not ready
|
3260 |
|
|
0594
|
3261 |
|
|
0595 F255 BD F2 67 JSR RCHAR get response from host
|
3262 |
|
|
0596 F258 24 07 BCC NCK_ERR
|
3263 |
|
|
0597 F25A 81 06 CMPA #ACK
|
3264 |
|
|
0598 F25C 26 03 BNE NCK_ERR if NAK, then flag drive not ready
|
3265 |
|
|
0599
|
3266 |
|
|
0600 F25E 5F CLRB all OK, flag drive ready
|
3267 |
|
|
0601 F25F 20 04 BRA NCK_END
|
3268 |
|
|
0602 *
|
3269 |
|
|
0603 F261 C6 10 NCK_ERR LDB #16 report drive not ready
|
3270 |
|
|
0604 F263 1A 01 ORCC #$01 check needs carry set as well
|
3271 |
|
|
0605 *
|
3272 |
|
|
0606 F265 5D NCK_END TSTB
|
3273 |
|
|
0607 F266 39 RTS
|
3274 |
|
|
0608 *
|
3275 |
|
|
0609 *
|
3276 |
|
|
0610 * recieve char from remote drive.
|
3277 |
|
|
0611 * timeout if no response for approx 1s.
|
3278 |
|
|
0612 * Entry: no parameters
|
3279 |
|
|
0613 * Exit: (A) = recieved char, (C)=1 if valid char, (C)=0 if timeout.
|
3280 |
|
|
0614 *
|
3281 |
|
|
0615 F267 34 30 RCHAR PSHS X,Y
|
3282 |
|
|
0616 *
|
3283 |
|
|
0617 F269 8E 03 E8 LDX #1000 1000x inner loop
|
3284 |
|
|
0618 F26C 10 8E 04 E2 RCHAR1 LDY #DELCON delay constant for inner loop (approx 1ms).
|
3285 |
|
|
0619 F270 B6 E0 00 RCHAR2 LDA ACIAC1 test for recieved char
|
3286 |
|
|
0620 F273 47 ASRA
|
3287 |
|
|
0621 F274 25 0A BCS RCHAR3 get character
|
3288 |
|
|
0622 F276 31 3F LEAY -1,Y else, continue to count delay
|
3289 |
|
|
0623 F278 26 F6 BNE RCHAR2
|
3290 |
|
|
0624 F27A 30 1F LEAX -1,X
|
3291 |
|
|
0625 F27C 26 EE BNE RCHAR1
|
3292 |
|
|
0626 F27E 35 B0 PULS X,Y,PC return with error if timed out
|
3293 |
|
|
0627 *
|
3294 |
|
|
0628 F280 B6 E0 01 RCHAR3 LDA ACIAD1 return data (carry bit still set)
|
3295 |
|
|
0629 F283 35 B0 PULS X,Y,PC
|
3296 |
|
|
0630 *
|
3297 |
|
|
0631 *
|
3298 |
|
|
0632 * transmit char to remote drive.
|
3299 |
|
|
0633 * timeout if no response for approx 1s. (allows for use of hardware flow control)
|
3300 |
|
|
0634 * Entry: (A) = char to transmit
|
3301 |
|
|
0635 * Exit: (A) = recieved char, (C)=1 if valid char, (C)=0 if timeout.
|
3302 |
|
|
0636 *
|
3303 |
|
|
0637 F285 34 30 SCHAR PSHS X,Y
|
3304 |
|
|
0638 F287 34 02 PSHS A
|
3305 |
|
|
0639 *
|
3306 |
|
|
0640 F289 8E 03 E8 LDX #1000 1000x inner loop
|
3307 |
|
|
0641 F28C 10 8E 04 E2 SCHAR1 LDY #DELCON delay constant for inner loop (approx 1ms).
|
3308 |
|
|
0642 F290 B6 E0 00 SCHAR2 LDA ACIAC1 test for space in transmit FIFO
|
3309 |
|
|
0643 F293 47 ASRA
|
3310 |
|
|
0644 F294 47 ASRA
|
3311 |
|
|
0645 F295 25 0C BCS SCHAR3 send character
|
3312 |
|
|
0646 F297 31 3F LEAY -1,Y else, continue to count delay
|
3313 |
|
|
0647 F299 26 F5 BNE SCHAR2
|
3314 |
|
|
0648 F29B 30 1F LEAX -1,X
|
3315 |
|
|
0649 F29D 26 ED BNE SCHAR1
|
3316 |
|
|
0650 F29F 35 02 PULS A
|
3317 |
|
|
0651 F2A1 35 B0 PULS X,Y,PC return with error if timed out
|
3318 |
|
|
0652 *
|
3319 |
|
|
0653 F2A3 35 02 SCHAR3 PULS A
|
3320 |
|
|
0654 F2A5 B7 E0 01 STA ACIAD1 send data (carry bit still set)
|
3321 |
|
|
0655 F2A8 35 B0 PULS X,Y,PC
|
3322 |
|
|
0656 *
|
3323 |
|
|
0657 ** 'UF' Format RAMdisc to FLEX standard.
|
3324 |
|
|
0658 *
|
3325 |
|
|
0659 F2AA 0A 0D DISFOS FCB $0A,$0D
|
3326 |
|
|
0660 F2AC 46 6F 72 6D 61 74 FCC 'Formating RAMdisk... '
|
3327 |
|
|
69 6E 67 20 52 41
|
3328 |
|
|
4D 64 69 73 6B 2E
|
3329 |
|
|
2E 2E 20
|
3330 |
|
|
0661 F2C1 04 FCB 4
|
3331 |
|
|
0662 F2C2 0A 0D 04 MESS6 FCB $0A,$0D,4
|
3332 |
|
|
0663 F2C5 52 61 6D 64 69 73 FCC 'Ramdisk not allocated! '
|
3333 |
|
|
6B 20 6E 6F 74 20
|
3334 |
|
|
61 6C 6C 6F 63 61
|
3335 |
|
|
74 65 64 21 20
|
3336 |
|
|
0664 F2DC 04 FCB 4
|
3337 |
|
|
0665 *
|
3338 |
|
|
0666 F2DD 8E F2 AA UFSUB LDX #DISFOS
|
3339 |
|
|
0667 F2E0 BD F4 6A JSR PDATA1
|
3340 |
|
|
0668 F2E3 8E DE 2A LDX #DTYPTAB search for allocated ramdisk
|
3341 |
|
|
0669 F2E6 5F CLRB
|
3342 |
|
|
0670 F2E7 A6 85 FMT9 LDA B,X
|
3343 |
|
|
0671 F2E9 81 01 CMPA #DTYPRAM driver type 1 is ramdisk
|
3344 |
|
|
0672 F2EB 27 0C BEQ FFOUND
|
3345 |
|
|
0673 F2ED 5C INCB
|
3346 |
|
|
0674 F2EE C1 04 CMPB #4 end of table? then not allocated.
|
3347 |
|
|
0675 F2F0 26 F5 BNE FMT9
|
3348 |
|
|
0676 F2F2 8E F2 C2 LDX #MESS6
|
3349 |
|
|
0677 F2F5 BD F4 6A JSR PDATA1
|
3350 |
|
|
0678 F2F8 39 RTS
|
3351 |
|
|
0679 *
|
3352 |
|
|
0680 F2F9 F7 DE 1E FFOUND STB DRVNUM
|
3353 |
|
|
0681 F2FC 8E DE 1B LDX #DRVNUM-3
|
3354 |
|
|
0682 F2FF BD F0 6C JSR DRVSEL
|
3355 |
|
|
0683 *
|
3356 |
|
|
0684 * set up free chain
|
3357 |
|
|
0685 *
|
3358 |
|
|
0686 F302 8E DE 46 LDX #BUFFER clear out buffer
|
3359 |
|
|
0687 F305 4F CLRA
|
3360 |
|
|
0688 F306 5F CLRB
|
3361 |
|
|
0689 F307 A7 80 DFL1 STA 0,X+
|
3362 |
|
|
0690 F309 5A DECB
|
3363 |
|
|
0691 F30A 26 FB BNE DFL1
|
3364 |
|
|
0692 *
|
3365 |
|
|
0693 F30C 7F DE 1F CLR TRACK
|
3366 |
|
|
0694 F30F 86 01 LDA #1
|
3367 |
|
|
0695 F311 B7 DE 20 STA SECTOR
|
3368 |
|
|
0696 F314 8E DE 46 DFL2 LDX #BUFFER
|
3369 |
|
|
0697 F317 B6 DE 1F LDA TRACK
|
3370 |
|
|
0698 F31A A7 84 STA 0,X
|
3371 |
|
|
0699 F31C B6 DE 20 LDA SECTOR
|
3372 |
|
|
0700 F31F 4C INCA
|
3373 |
|
|
0701 F320 81 0F CMPA #RMAXSEC+1 last sector on track?
|
3374 |
|
|
0702 F322 26 04 BNE DFL3
|
3375 |
|
|
0703 F324 6C 84 INC 0,X
|
3376 |
|
|
0704 F326 86 01 LDA #1
|
3377 |
|
|
0705 F328 A7 01 DFL3 STA 1,X
|
3378 |
|
|
0706 F32A B6 DE 1F LDA TRACK
|
3379 |
|
|
0707 F32D F6 DE 20 LDB SECTOR
|
3380 |
|
|
0708 F330 BD F0 5B JSR WRITSC
|
3381 |
|
|
0709 F333 7C DE 20 INC SECTOR
|
3382 |
|
|
0710 F336 B6 DE 20 LDA SECTOR
|
3383 |
|
|
0711 F339 81 0F CMPA #RMAXSEC+1
|
3384 |
|
|
0712 F33B 26 D7 BNE DFL2
|
3385 |
|
|
0713 F33D 86 01 LDA #1
|
3386 |
|
|
0714 F33F B7 DE 20 STA SECTOR
|
3387 |
|
|
0715 F342 7C DE 1F INC TRACK
|
3388 |
|
|
0716 F345 B6 DE 1F LDA TRACK
|
3389 |
|
|
0717 F348 81 C0 CMPA #RMAXTRK
|
3390 |
|
|
0718 F34A 26 C8 BNE DFL2
|
3391 |
|
|
0719 * break free chain at last track/sector
|
3392 |
|
|
0720 F34C 8E DE 46 LDX #BUFFER
|
3393 |
|
|
0721 F34F 86 BF LDA #RMAXTRK-1
|
3394 |
|
|
0722 F351 C6 0E LDB #RMAXSEC
|
3395 |
|
|
0723 F353 BD F0 57 JSR READSC
|
3396 |
|
|
0724 F356 8E DE 46 LDX #BUFFER
|
3397 |
|
|
0725 F359 6F 84 CLR 0,X
|
3398 |
|
|
0726 F35B 6F 01 CLR 1,X
|
3399 |
|
|
0727 F35D 86 BF LDA #RMAXTRK-1
|
3400 |
|
|
0728 F35F C6 0E LDB #RMAXSEC
|
3401 |
|
|
0729 F361 BD F0 5B JSR WRITSC
|
3402 |
|
|
0730 * set up sector structure, SIR, directory etc
|
3403 |
|
|
0731 F364 8E DE 46 LDX #BUFFER
|
3404 |
|
|
0732 F367 4F CLRA
|
3405 |
|
|
0733 F368 C6 0E LDB #RMAXSEC
|
3406 |
|
|
0734 F36A BD F0 57 JSR READSC
|
3407 |
|
|
0735 F36D 8E DE 46 LDX #BUFFER
|
3408 |
|
|
0736 F370 6F 84 CLR 0,X break end of directory chain
|
3409 |
|
|
0737 F372 6F 01 CLR 1,X
|
3410 |
|
|
0738 F374 4F CLRA
|
3411 |
|
|
0739 F375 C6 0E LDB #RMAXSEC
|
3412 |
|
|
0740 F377 BD F0 5B JSR WRITSC
|
3413 |
|
|
0741 *
|
3414 |
|
|
0742 F37A 8E DE 46 LDX #BUFFER
|
3415 |
|
|
0743 F37D 4F CLRA
|
3416 |
|
|
0744 F37E C6 03 LDB #3 set up SIR
|
3417 |
|
|
0745 F380 BD F0 57 JSR READSC
|
3418 |
|
|
0746 F383 8E DE 46 LDX #BUFFER
|
3419 |
|
|
0747 F386 6F 84 CLR 0,X break forward link
|
3420 |
|
|
0748 F388 6F 01 CLR 1,X
|
3421 |
|
|
0749 F38A CC 52 41 LDD #$5241 set volume name (RAMDISK )
|
3422 |
|
|
0750 F38D ED 88 10 STD 16,X
|
3423 |
|
|
0751 F390 CC 4D 44 LDD #$4D44
|
3424 |
|
|
0752 F393 ED 88 12 STD 18,X
|
3425 |
|
|
0753 F396 CC 49 53 LDD #$4953
|
3426 |
|
|
0754 F399 ED 88 14 STD 20,X
|
3427 |
|
|
0755 F39C CC 4B 20 LDD #$4B20
|
3428 |
|
|
0756 F39F ED 88 16 STD 22,X
|
3429 |
|
|
0757 F3A2 CC 00 01 LDD #1 volume number
|
3430 |
|
|
0758 F3A5 ED 88 1B STD 27,X
|
3431 |
|
|
0759 F3A8 CC 01 01 LDD #$0101 first trk/sec 01-01
|
3432 |
|
|
0760 F3AB ED 88 1D STD 29,X
|
3433 |
|
|
0761 F3AE 86 BF LDA #RMAXTRK-1
|
3434 |
|
|
0762 F3B0 C6 0E LDB #RMAXSEC
|
3435 |
|
|
0763 F3B2 ED 88 1F STD 31,X
|
3436 |
|
|
0764 F3B5 ED 88 26 STD 38,X
|
3437 |
|
|
0765 F3B8 CC 0A 72 LDD #RTOTSEC total DATA sectors (2912-14)
|
3438 |
|
|
0766 F3BB ED 88 21 STD 33,X
|
3439 |
|
|
0767 *
|
3440 |
|
|
0768 F3BE 86 01 LDA #01 month set default creation date (SYS09's birthday!)
|
3441 |
|
|
0769 F3C0 A7 88 23 STA 35,X
|
3442 |
|
|
0770 F3C3 86 07 LDA #07 day
|
3443 |
|
|
0771 F3C5 A7 88 24 STA 36,X
|
3444 |
|
|
0772 F3C8 86 07 LDA #07 year
|
3445 |
|
|
0773 F3CA A7 88 25 STA 37,X
|
3446 |
|
|
0774 *
|
3447 |
|
|
0775 F3CD 4F RF3 CLRA
|
3448 |
|
|
0776 F3CE C6 03 LDB #3
|
3449 |
|
|
0777 F3D0 BD F0 5B JSR WRITSC
|
3450 |
|
|
0778 *
|
3451 |
|
|
0779 F3D3 8E DE 46 LDX #BUFFER
|
3452 |
|
|
0780 F3D6 4F CLRA
|
3453 |
|
|
0781 F3D7 C6 01 LDB #1
|
3454 |
|
|
0782 F3D9 BD F0 57 JSR READSC
|
3455 |
|
|
0783 F3DC 8E DE 46 LDX #BUFFER
|
3456 |
|
|
0784 F3DF 86 AA LDA #$AA set the init flag
|
3457 |
|
|
0785 F3E1 A7 84 STA 0,X
|
3458 |
|
|
0786 F3E3 86 55 LDA #$55
|
3459 |
|
|
0787 F3E5 A7 01 STA 1,X
|
3460 |
|
|
0788 F3E7 4F CLRA
|
3461 |
|
|
0789 F3E8 C6 01 LDB #1
|
3462 |
|
|
0790 F3EA 7E F0 5B JMP WRITSC
|
3463 |
|
|
0791 *
|
3464 |
|
|
0792 ********************************
|
3465 |
|
|
0793 * System specific Boot *
|
3466 |
|
|
0794 * command goes here. *
|
3467 |
|
|
0795 ********************************
|
3468 |
|
|
0796 *
|
3469 |
|
|
0797 * Boot FLEX from the FPGA's internal pre-loaded scratch RAM
|
3470 |
|
|
0798 *
|
3471 |
|
|
0799 F3ED 08 08 UBMESS FCB $08, $08
|
3472 |
|
|
0800 F3EF 42 6F 6F 74 69 6E FCC 'Booting internal FLEX....'
|
3473 |
|
|
67 20 69 6E 74 65
|
3474 |
|
|
72 6E 61 6C 20 46
|
3475 |
|
|
4C 45 58 2E 2E 2E
|
3476 |
|
|
2E
|
3477 |
|
|
0801 F408 0D 0A 04 FCB $0D,$0A,$04
|
3478 |
|
|
0802 *
|
3479 |
|
|
0803 F40B 8E F3 ED UBSUB LDX #UBMESS
|
3480 |
|
|
0804 F40E BD F4 6A JSR PDATA1
|
3481 |
|
|
0805 *
|
3482 |
|
|
0806 F411 8E D3 E5 LDX #$D3E5
|
3483 |
|
|
0807 F414 10 8E F4 34 LDY #CONTAB Overlay console driver table
|
3484 |
|
|
0808 F418 EC A1 UB1 LDD 0,Y++
|
3485 |
|
|
0809 F41A ED 81 STD 0,X++
|
3486 |
|
|
0810 F41C 8C D3 FD CMPX #$D3FD
|
3487 |
|
|
0811 F41F 26 F7 BNE UB1
|
3488 |
|
|
0812 *
|
3489 |
|
|
0813 F421 8E DE 00 LDX #$DE00 Overlay disk driver table
|
3490 |
|
|
0814 F424 10 8E F4 4C LDY #DISTAB
|
3491 |
|
|
0815 F428 EC A1 UB2 LDD 0,Y++
|
3492 |
|
|
0816 F42A ED 81 STD 0,X++
|
3493 |
|
|
0817 F42C 8C DE 1E CMPX #$DE1E
|
3494 |
|
|
0818 F42F 26 F7 BNE UB2
|
3495 |
|
|
0819 *
|
3496 |
|
|
0820 F431 7E CD 00 UBEND JMP $CD00
|
3497 |
|
|
0821 *
|
3498 |
|
|
0822 * FLEX console jump table.
|
3499 |
|
|
0823 F434 F4 76 CONTAB FDB INPNE INPUT NO ECHO
|
3500 |
|
|
0824 F436 F4 82 FDB DUMMY INTERRUPT HANDLER
|
3501 |
|
|
0825 F438 DF C2 FDB MONRAM+$02 SWI VECTOR
|
3502 |
|
|
0826 F43A DF C8 FDB MONRAM+$08 IRQ VECTOR
|
3503 |
|
|
0827 F43C F4 82 FDB DUMMY TIMER OFF
|
3504 |
|
|
0828 F43E F4 82 FDB DUMMY TIMER ON
|
3505 |
|
|
0829 F440 F4 82 FDB DUMMY TIMER INITIALIZATION
|
3506 |
|
|
0830 F442 F4 7E FDB CONTRL MONITOR
|
3507 |
|
|
0831 F444 F4 82 FDB DUMMY TERMINAL INITIALIZATION
|
3508 |
|
|
0832 F446 F4 7A FDB STATUS INPUT CHECK
|
3509 |
|
|
0833 F448 F4 6E FDB OUTP TERMINAL OUTPUT
|
3510 |
|
|
0834 F44A F4 72 FDB INPE TERMINAL INPUT WITH ECHO
|
3511 |
|
|
0835 *
|
3512 |
|
|
0836 * FLEX disk jump table.
|
3513 |
|
|
0837 F44C 7E F0 57 DISTAB JMP READSC
|
3514 |
|
|
0838 F44F 7E F0 5B JMP WRITSC
|
3515 |
|
|
0839 F452 7E F0 5F JMP BUSY
|
3516 |
|
|
0840 F455 7E F0 63 JMP RESTR1
|
3517 |
|
|
0841 F458 7E F0 6C JMP DRVSEL
|
3518 |
|
|
0842 F45B 7E F0 9F JMP CHKRDY
|
3519 |
|
|
0843 F45E 7E F0 A3 JMP CHKQIK
|
3520 |
|
|
0844 F461 7E F0 A7 JMP DINIT
|
3521 |
|
|
0845 F464 7E F0 BF JMP DWARM
|
3522 |
|
|
0846 F467 7E F0 C3 JMP SEEKTS
|
3523 |
|
|
0847 *
|
3524 |
|
|
0848 * Monitor jumps
|
3525 |
|
|
0849 *
|
3526 |
|
|
0850 F46A 6E 9F F8 0C PDATA1 JMP [PDATAV]
|
3527 |
|
|
0851 F46E 6E 9F F8 0A OUTP JMP [OUTCHV]
|
3528 |
|
|
0852 F472 6E 9F F8 06 INPE JMP [INCHEV]
|
3529 |
|
|
0853 F476 6E 9F F8 04 INPNE JMP [INCHV]
|
3530 |
|
|
0854 F47A 6E 9F F8 08 STATUS JMP [INCHKV]
|
3531 |
|
|
0855 F47E 6E 9F F8 00 CONTRL JMP [MONITV]
|
3532 |
|
|
0856 F482 39 DUMMY RTS
|
3533 |
|
|
0857 *
|
3534 |
|
|
0858 ** 'UL' LOAD ROM DISK VIA SERIAL PORT
|
3535 |
|
|
0859 *
|
3536 |
|
|
0860 F483 53 65 72 69 61 6C ULMES FCC 'Serial ROM Disk upload ...'
|
3537 |
|
|
20 52 4F 4D 20 44
|
3538 |
|
|
69 73 6B 20 75 70
|
3539 |
|
|
6C 6F 61 64 20 2E
|
3540 |
|
|
2E 2E
|
3541 |
|
|
0861 F49D 0D 0A 04 FCB $0D,$0A,$04
|
3542 |
|
|
0862 F4A0 52 4F 4D 20 44 69 ULMES1 FCC 'ROM Disk Loaded'
|
3543 |
|
|
73 6B 20 4C 6F 61
|
3544 |
|
|
64 65 64
|
3545 |
|
|
0863 F4AF 0D 0A 04 FCB $0D,$0A,$04
|
3546 |
|
|
0864 *
|
3547 |
|
|
0865 F4B2 8E F4 83 ULSUB LDX #ULMES
|
3548 |
|
|
0866 F4B5 BD F4 6A JSR PDATA1
|
3549 |
|
|
0867 *
|
3550 |
|
|
0868 F4B8 86 00 LDA #$00
|
3551 |
|
|
0869 F4BA B7 DE 1E STA DRVNUM
|
3552 |
|
|
0870 F4BD 4F CLRA TRACK 0
|
3553 |
|
|
0871 F4BE C6 01 LDB #$01 SECTOR 1
|
3554 |
|
|
0872 F4C0 B7 DE 1F ULLOOP0 STA TRACK
|
3555 |
|
|
0873 F4C3 F7 DE 20 STB SECTOR`
|
3556 |
|
|
0874 F4C6 17 FB FE LBSR MAPIN
|
3557 |
|
|
0875 *
|
3558 |
|
|
0876 F4C9 5F CLRB xfer 256 bytes at a time.
|
3559 |
|
|
0877 F4CA BD F4 ED ULLOOP1 JSR LRBYTE transfer should be hex bytes
|
3560 |
|
|
0878 F4CD A7 C0 STA ,U+
|
3561 |
|
|
0879 F4CF 5A DECB
|
3562 |
|
|
0880 F4D0 26 F8 BNE ULLOOP1
|
3563 |
|
|
0881 *
|
3564 |
|
|
0882 F4D2 17 FC 26 LBSR MAPOUT
|
3565 |
|
|
0883 *
|
3566 |
|
|
0884 F4D5 B6 DE 1F LDA TRACK
|
3567 |
|
|
0885 F4D8 F6 DE 20 LDB SECTOR
|
3568 |
|
|
0886 F4DB 5C INCB
|
3569 |
|
|
0887 F4DC C1 0F CMPB #EMAXSEC+1
|
3570 |
|
|
0888 F4DE 26 E0 BNE ULLOOP0
|
3571 |
|
|
0889 F4E0 C6 01 LDB #1
|
3572 |
|
|
0890 F4E2 4C INCA
|
3573 |
|
|
0891 F4E3 81 30 CMPA #EMAXTRK
|
3574 |
|
|
0892 F4E5 26 D9 BNE ULLOOP0
|
3575 |
|
|
0893 *
|
3576 |
|
|
0894 F4E7 8E F4 A0 ULEXIT LDX #ULMES1
|
3577 |
|
|
0895 F4EA 7E F4 6A JMP PDATA1
|
3578 |
|
|
0896 *
|
3579 |
|
|
0897 * Read a byte from the serial port
|
3580 |
|
|
0898 *
|
3581 |
|
|
0899 F4ED 34 04 LRBYTE PSHS B
|
3582 |
|
|
0900 F4EF 8D 0E BSR LRHEX Get hex digit.
|
3583 |
|
|
0901 F4F1 48 ASLA
|
3584 |
|
|
0902 F4F2 48 ASLA Shift to msb.
|
3585 |
|
|
0903 F4F3 48 ASLA
|
3586 |
|
|
0904 F4F4 48 ASLA
|
3587 |
|
|
0905 F4F5 1F 89 TFR A,B Save in B.
|
3588 |
|
|
0906 F4F7 8D 06 BSR LRHEX Get next digit.
|
3589 |
|
|
0907 F4F9 34 04 PSHS B
|
3590 |
|
|
0908 F4FB AB E0 ADDA 0,S+ Add together bytes.
|
3591 |
|
|
0909 F4FD 35 84 PULS B,PC
|
3592 |
|
|
0910 *
|
3593 |
|
|
0911 F4FF BD F5 28 LRHEX JSR INTER
|
3594 |
|
|
0912 F502 29 FB BVS LRHEX
|
3595 |
|
|
0913 F504 80 30 SUBA #$30 Remove ascii bias.
|
3596 |
|
|
0914 F506 2B F7 BMI LRHEX
|
3597 |
|
|
0915 F508 81 09 CMPA #$09 Number?
|
3598 |
|
|
0916 F50A 2F 0A BLE LRHEX1 Yes.
|
3599 |
|
|
0917 F50C 81 11 CMPA #$11 Keep testing.
|
3600 |
|
|
0918 F50E 2B EF BMI LRHEX
|
3601 |
|
|
0919 F510 81 16 CMPA #$16
|
3602 |
|
|
0920 F512 2E EB BGT LRHEX
|
3603 |
|
|
0921 F514 80 07 SUBA #$07
|
3604 |
|
|
0922 F516 39 LRHEX1 RTS
|
3605 |
|
|
0923 *
|
3606 |
|
|
0924 * ACIA INPUT TEST
|
3607 |
|
|
0925 *
|
3608 |
|
|
0926 F517 B6 E0 00 INTEST LDA ACIAC1
|
3609 |
|
|
0927 F51A 85 01 BITA #$01
|
3610 |
|
|
0928 F51C 39 RTS
|
3611 |
|
|
0929 *
|
3612 |
|
|
0930 * RESET ACIA
|
3613 |
|
|
0931 *
|
3614 |
|
|
0932 F51D 86 03 ACIRST LDA #$03 master reset
|
3615 |
|
|
0933 F51F B7 E0 00 STA ACIAC1
|
3616 |
|
|
0934 F522 86 11 LDA #$11
|
3617 |
|
|
0935 F524 B7 E0 00 STA ACIAC1
|
3618 |
|
|
0936 F527 39 RTS
|
3619 |
|
|
0937 *
|
3620 |
|
|
0938 * ACIA INPUT
|
3621 |
|
|
0939 *
|
3622 |
|
|
0940 F528 86 10 INTER LDA #16
|
3623 |
|
|
0941 F52A B7 DE 27 STA DELCNT+0
|
3624 |
|
|
0942 F52D 7F DE 28 CLR DELCNT+1
|
3625 |
|
|
0943 F530 7F DE 29 CLR DELCNT+2
|
3626 |
|
|
0944 F533 B6 E0 00 INTER0 LDA ACIAC1
|
3627 |
|
|
0945 F536 85 01 BITA #$01
|
3628 |
|
|
0946 F538 26 08 BNE INTER1
|
3629 |
|
|
0947 F53A 85 78 BITA #$78
|
3630 |
|
|
0948 F53C 27 0A BEQ INTER2
|
3631 |
|
|
0949 F53E 8D DD BSR ACIRST
|
3632 |
|
|
0950 F540 20 E6 BRA INTER
|
3633 |
|
|
0951 *
|
3634 |
|
|
0952 F542 B6 E0 01 INTER1 LDA ACIAD1
|
3635 |
|
|
0953 F545 1C 02 ANDCC #VFLAG
|
3636 |
|
|
0954 F547 39 RTS
|
3637 |
|
|
0955 *
|
3638 |
|
|
0956 F548 7A DE 29 INTER2 DEC DELCNT+2
|
3639 |
|
|
0957 F54B 26 E6 BNE INTER0
|
3640 |
|
|
0958 F54D 7A DE 28 DEC DELCNT+1
|
3641 |
|
|
0959 F550 26 E1 BNE INTER0
|
3642 |
|
|
0960 F552 7A DE 27 DEC DELCNT+0
|
3643 |
|
|
0961 F555 26 DC BNE INTER0
|
3644 |
|
|
0962 F557 4F CLRA
|
3645 |
|
|
0963 F558 1A 02 ORCC #VFLAG
|
3646 |
|
|
0964 F55A 39 RTS
|
3647 |
|
|
0965 *
|
3648 |
|
|
0966 * ACIA OUTPUT
|
3649 |
|
|
0967 *
|
3650 |
|
|
0968 F55B 34 02 OUTTER PSHS A
|
3651 |
|
|
0969 *
|
3652 |
|
|
0970 F55D B6 E0 00 OUTTE1 LDA ACIAC1
|
3653 |
|
|
0971 F560 85 02 BITA #$02
|
3654 |
|
|
0972 F562 26 08 BNE OUTTE2
|
3655 |
|
|
0973 F564 85 78 BITA #$78
|
3656 |
|
|
0974 F566 27 F5 BEQ OUTTE1
|
3657 |
|
|
0975 F568 8D B3 BSR ACIRST
|
3658 |
|
|
0976 F56A 20 F1 BRA OUTTE1
|
3659 |
|
|
0977 *
|
3660 |
|
|
0978 F56C 35 02 OUTTE2 PULS A
|
3661 |
|
|
0979 F56E B7 E0 01 STA ACIAD1
|
3662 |
|
|
0980 F571 39 RTS
|
3663 |
|
|
0981 *
|
3664 |
|
|
0982 ** 'UX' Xmodem ROM Disk upload
|
3665 |
|
|
0983 *
|
3666 |
|
|
0984 F572 0D 0A UXMES FCB $0D,$0A
|
3667 |
|
|
0985 F574 58 6D 6F 64 65 6D FCC 'Xmodem ROM Disk Upload'
|
3668 |
|
|
20 52 4F 4D 20 44
|
3669 |
|
|
69 73 6B 20 55 70
|
3670 |
|
|
6C 6F 61 64
|
3671 |
|
|
0986 F58A 04 FCB 4
|
3672 |
|
|
0987 F58B 0D 0A UXMES1 FCB $0D,$0A
|
3673 |
|
|
0988 F58D 55 70 6C 6F 61 64 FCC 'Upload Complete'
|
3674 |
|
|
20 43 6F 6D 70 6C
|
3675 |
|
|
65 74 65
|
3676 |
|
|
0989 F59C 04 FCB 4
|
3677 |
|
|
0990 F59D 0D 0A UXMES2 FCB $0D,$0A
|
3678 |
|
|
0991 F59F 55 70 6C 6F 61 64 FCC 'Upload Error'
|
3679 |
|
|
20 45 72 72 6F 72
|
3680 |
|
|
0992 F5AB 04 FCB 4
|
3681 |
|
|
0993 *
|
3682 |
|
|
0994 F5AC 8E F5 72 UXSUB LDX #UXMES
|
3683 |
|
|
0995 F5AF 17 FE B8 LBSR PDATA1
|
3684 |
|
|
0996 *
|
3685 |
|
|
0997 F5B2 86 01 LDA #1
|
3686 |
|
|
0998 F5B4 B7 DE 23 STA BLKNUM
|
3687 |
|
|
0999 F5B7 8E F6 1A LDX #XSTSTR
|
3688 |
|
|
1000 F5BA BF DE 25 STX XSTATE
|
3689 |
|
|
1001 *
|
3690 |
|
|
1002 F5BD 86 00 LDA #$00
|
3691 |
|
|
1003 F5BF B7 DE 1E STA DRVNUM
|
3692 |
|
|
1004 F5C2 4F CLRA TRACK 0
|
3693 |
|
|
1005 F5C3 C6 01 LDB #$01 SECTOR 1
|
3694 |
|
|
1006 F5C5 B7 DE 1F UXLOOP0 STA TRACK
|
3695 |
|
|
1007 F5C8 F7 DE 20 STB SECTOR
|
3696 |
|
|
1008 F5CB 17 FA F9 LBSR MAPIN
|
3697 |
|
|
1009 *
|
3698 |
|
|
1010 F5CE 5F CLRB xfer 256 bytes at a time.
|
3699 |
|
|
1011 F5CF 17 00 2B UXLOOP1 LBSR XBYTE transfer should be hex bytes
|
3700 |
|
|
1012 F5D2 25 20 BCS UXERR
|
3701 |
|
|
1013 F5D4 A7 C0 STA ,U+
|
3702 |
|
|
1014 F5D6 5A DECB
|
3703 |
|
|
1015 F5D7 26 F6 BNE UXLOOP1
|
3704 |
|
|
1016 *
|
3705 |
|
|
1017 F5D9 17 FB 1F LBSR MAPOUT
|
3706 |
|
|
1018 *
|
3707 |
|
|
1019 F5DC B6 DE 1F LDA TRACK
|
3708 |
|
|
1020 F5DF F6 DE 20 LDB SECTOR
|
3709 |
|
|
1021 F5E2 5C INCB
|
3710 |
|
|
1022 F5E3 C1 0F CMPB #EMAXSEC+1
|
3711 |
|
|
1023 F5E5 26 DE BNE UXLOOP0
|
3712 |
|
|
1024 F5E7 C6 01 LDB #1
|
3713 |
|
|
1025 F5E9 4C INCA
|
3714 |
|
|
1026 F5EA 81 30 CMPA #EMAXTRK
|
3715 |
|
|
1027 F5EC 26 D7 BNE UXLOOP0
|
3716 |
|
|
1028 *
|
3717 |
|
|
1029 F5EE 8E F5 8B UXEXIT LDX #UXMES1
|
3718 |
|
|
1030 F5F1 7E F4 6A JMP PDATA1
|
3719 |
|
|
1031 *
|
3720 |
|
|
1032 F5F4 17 FB 04 UXERR LBSR MAPOUT
|
3721 |
|
|
1033 F5F7 8E F5 9D LDX #UXMES2
|
3722 |
|
|
1034 F5FA 16 FE 6D LBRA PDATA1
|
3723 |
|
|
1035 *
|
3724 |
|
|
1036 * Get a Byte using XModem protocol
|
3725 |
|
|
1037 * Carry clear => no errors
|
3726 |
|
|
1038 * Carry set => errors
|
3727 |
|
|
1039 *
|
3728 |
|
|
1040 F5FD 34 10 XBYTE PSHS X
|
3729 |
|
|
1041 F5FF BE DE 25 LDX XSTATE
|
3730 |
|
|
1042 *
|
3731 |
|
|
1043 F602 17 FF 23 XBYTE0 LBSR INTER
|
3732 |
|
|
1044 F605 28 0A BVC XBYTE1
|
3733 |
|
|
1045 F607 86 15 LDA #NAK
|
3734 |
|
|
1046 F609 17 FF 4F LBSR OUTTER
|
3735 |
|
|
1047 F60C 8E F6 1A LDX #XSTSTR
|
3736 |
|
|
1048 F60F 20 F1 BRA XBYTE0
|
3737 |
|
|
1049 *
|
3738 |
|
|
1050 F611 AD 84 XBYTE1 JSR ,X
|
3739 |
|
|
1051 F613 26 ED BNE XBYTE0
|
3740 |
|
|
1052 F615 BF DE 25 STX XSTATE
|
3741 |
|
|
1053 F618 35 90 PULS X,PC
|
3742 |
|
|
1054 *
|
3743 |
|
|
1055 * START - LOOK FOR SOH (START OF HEADER) = $01
|
3744 |
|
|
1056 *
|
3745 |
|
|
1057 F61A 81 01 XSTSTR CMPA #SOH
|
3746 |
|
|
1058 F61C 26 06 BNE XSTSTR1
|
3747 |
|
|
1059 F61E 8E F6 3A LDX #XSTBLK
|
3748 |
|
|
1060 F621 1C FA ANDCC #$FF-CFLAG-ZFLAG No abort, no valid data (no exit)
|
3749 |
|
|
1061 F623 39 RTS
|
3750 |
|
|
1062 *
|
3751 |
|
|
1063 F624 81 04 XSTSTR1 CMPA #EOT
|
3752 |
|
|
1064 F626 26 08 BNE XSTSTR2
|
3753 |
|
|
1065 F628 86 06 LDA #ACK
|
3754 |
|
|
1066 F62A 17 FF 2E LBSR OUTTER
|
3755 |
|
|
1067 F62D 1A 05 ORCC #CFLAG+ZFLAG Set (c)=1 abort & exit
|
3756 |
|
|
1068 F62F 39 RTS
|
3757 |
|
|
1069 *
|
3758 |
|
|
1070 F630 81 18 XSTSTR2 CMPA #CAN
|
3759 |
|
|
1071 F632 26 03 BNE XSTSTR3
|
3760 |
|
|
1072 F634 1A 05 ORCC #CFLAG+ZFLAG Set (c)=1 abort & exit
|
3761 |
|
|
1073 F636 39 RTS
|
3762 |
|
|
1074 *
|
3763 |
|
|
1075 F637 1C FA XSTSTR3 ANDCC #$FF-CFLAG-ZFLAG
|
3764 |
|
|
1076 F639 39 RTS
|
3765 |
|
|
1077 *
|
3766 |
|
|
1078 * Got SOH
|
3767 |
|
|
1079 * Now get block number
|
3768 |
|
|
1080 *
|
3769 |
|
|
1081 F63A B1 DE 23 XSTBLK CMPA BLKNUM
|
3770 |
|
|
1082 F63D 26 06 BNE XSTBLKE
|
3771 |
|
|
1083 F63F 8E F6 50 LDX #XSTCOM
|
3772 |
|
|
1084 F642 1C FA ANDCC #$FF-CFLAG-ZFLAG No abort, No valid data (no exit)
|
3773 |
|
|
1085 F644 39 RTS
|
3774 |
|
|
1086 *
|
3775 |
|
|
1087 * Error in block number
|
3776 |
|
|
1088 *
|
3777 |
|
|
1089 F645 86 15 XSTBLKE LDA #NAK
|
3778 |
|
|
1090 F647 17 FF 11 LBSR OUTTER
|
3779 |
|
|
1091 F64A 8E F6 1A LDX #XSTSTR
|
3780 |
|
|
1092 F64D 1C FA ANDCC #$FF-CFLAG-ZFLAG No abort, No valid data (no exit)
|
3781 |
|
|
1093 F64F 39 RTS
|
3782 |
|
|
1094 *
|
3783 |
|
|
1095 * Get complement of block number
|
3784 |
|
|
1096 *
|
3785 |
|
|
1097 F650 43 XSTCOM COMA
|
3786 |
|
|
1098 F651 B1 DE 23 CMPA BLKNUM
|
3787 |
|
|
1099 F654 26 EF BNE XSTBLKE
|
3788 |
|
|
1100 F656 7F DE 21 CLR CHKSUM
|
3789 |
|
|
1101 F659 86 80 LDA #128
|
3790 |
|
|
1102 F65B B7 DE 24 STA BYTCNT
|
3791 |
|
|
1103 F65E 8E F6 64 LDX #XSTDAT
|
3792 |
|
|
1104 F661 1C FA ANDCC #$FF-CFLAG-ZFLAG No abort, No valid data (no exit)
|
3793 |
|
|
1105 F663 39 RTS
|
3794 |
|
|
1106 *
|
3795 |
|
|
1107 * Get data bytes
|
3796 |
|
|
1108 *
|
3797 |
|
|
1109 F664 34 02 XSTDAT PSHS A
|
3798 |
|
|
1110 F666 BB DE 21 ADDA CHKSUM
|
3799 |
|
|
1111 F669 B7 DE 21 STA CHKSUM
|
3800 |
|
|
1112 F66C 35 02 PULS A
|
3801 |
|
|
1113 F66E 7A DE 24 DEC BYTCNT
|
3802 |
|
|
1114 F671 26 03 BNE XSTDAT1
|
3803 |
|
|
1115 F673 8E F6 7B LDX #XSTCHK
|
3804 |
|
|
1116 F676 1C FE XSTDAT1 ANDCC #$FF-CFLAG No abort
|
3805 |
|
|
1117 F678 1A 04 ORCC #ZFLAG Valid data (exit)
|
3806 |
|
|
1118 F67A 39 RTS
|
3807 |
|
|
1119 *
|
3808 |
|
|
1120 * Byte count reached zero
|
3809 |
|
|
1121 * Check checksum byte
|
3810 |
|
|
1122 *
|
3811 |
|
|
1123 F67B B1 DE 21 XSTCHK CMPA CHKSUM
|
3812 |
|
|
1124 F67E 26 07 BNE XSTCHK1 retry if wrong checksum
|
3813 |
|
|
1125 *
|
3814 |
|
|
1126 * Checksum OK ...
|
3815 |
|
|
1127 * increment block number
|
3816 |
|
|
1128 * and send ACK
|
3817 |
|
|
1129 *
|
3818 |
|
|
1130 F680 7C DE 23 INC BLKNUM
|
3819 |
|
|
1131 F683 86 06 LDA #ACK
|
3820 |
|
|
1132 F685 20 0D BRA XSTCHK2
|
3821 |
|
|
1133 *
|
3822 |
|
|
1134 * Checksum Error detected ...
|
3823 |
|
|
1135 * Reset Sector counter in ACCB to last 128 byte boundary
|
3824 |
|
|
1136 * and send NAK
|
3825 |
|
|
1137 *
|
3826 |
|
|
1138 F687 34 04 XSTCHK1 PSHS B
|
3827 |
|
|
1139 F689 1F 30 TFR U,D
|
3828 |
|
|
1140 F68B 5A DECB
|
3829 |
|
|
1141 F68C C4 80 ANDB #128
|
3830 |
|
|
1142 F68E 1F 03 TFR D,U
|
3831 |
|
|
1143 F690 35 04 PULS B
|
3832 |
|
|
1144 F692 86 15 LDA #NAK
|
3833 |
|
|
1145 F694 17 FE C4 XSTCHK2 LBSR OUTTER
|
3834 |
|
|
1146 F697 8E F6 1A LDX #XSTSTR
|
3835 |
|
|
1147 F69A 1C FA ANDCC #$FF-CFLAG-ZFLAG No abort, no valid data (no exit)
|
3836 |
|
|
1148 F69C 39 RTS
|
3837 |
|
|
1149 *
|
3838 |
|
|
1150 ** 'UP' Load ROMdisk via config PROM.
|
3839 |
|
|
1151 *
|
3840 |
|
|
1152 F69D 08 08 UPMES FCB $08,$08
|
3841 |
|
|
1153 F69F 4C 6F 61 64 20 52 FCC 'Load ROM disk from config PROM.'
|
3842 |
|
|
4F 4D 20 64 69 73
|
3843 |
|
|
6B 20 66 72 6F 6D
|
3844 |
|
|
20 63 6F 6E 66 69
|
3845 |
|
|
67 20 50 52 4F 4D
|
3846 |
|
|
2E
|
3847 |
|
|
1154 F6BE 04 FCB 4
|
3848 |
|
|
1155 F6BF 46 6F 75 6E 64 20 UPMES1 FCC 'Found SYNC, loading data...'
|
3849 |
|
|
53 59 4E 43 2C 20
|
3850 |
|
|
6C 6F 61 64 69 6E
|
3851 |
|
|
67 20 64 61 74 61
|
3852 |
|
|
2E 2E 2E
|
3853 |
|
|
1156 F6DA 0A 0D 04 FCB $0A,$0D,4
|
3854 |
|
|
1157 F6DD 52 4F 4D 20 44 69 UPMES2 FCC 'ROM Disk Loaded.'
|
3855 |
|
|
73 6B 20 4C 6F 61
|
3856 |
|
|
64 65 64 2E
|
3857 |
|
|
1158 F6ED 0A 0D 04 FCB $0A,$0D,4
|
3858 |
|
|
1159 F6F0 52 4F 4D 20 44 69 UPMES3 FCC 'ROM Disk Not Found.'
|
3859 |
|
|
73 6B 20 4E 6F 74
|
3860 |
|
|
20 46 6F 75 6E 64
|
3861 |
|
|
2E
|
3862 |
|
|
1160 F703 0A 0D 04 FCB $0A,$0D,4
|
3863 |
|
|
1161 *
|
3864 |
|
|
1162 F706 8E F6 9D UPSUB LDX #UPMES
|
3865 |
|
|
1163 F709 BD F4 6A JSR PDATA1
|
3866 |
|
|
1164 *
|
3867 |
|
|
1165 F70C 8D 5A BSR UPRESET
|
3868 |
|
|
1166 F70E 10 8E 00 20 LDY #$0020 Set up count for 2 MBit
|
3869 |
|
|
1167 F712 8E 00 00 LDX #$0000
|
3870 |
|
|
1168 F715 8D 6C UPSUB1 BSR UPBIT Shift in bit
|
3871 |
|
|
1169 F717 8D 7C BSR UPSYNC Test for Sync pattern`
|
3872 |
|
|
1170 F719 27 15 BEQ UPSUB4 Skip if found
|
3873 |
|
|
1171 F71B 30 1F LEAX -1,X Count Down inner loop
|
3874 |
|
|
1172 F71D 8C 00 00 CMPX #$0000
|
3875 |
|
|
1173 F720 26 F3 BNE UPSUB1 Branch if inner loop not complete
|
3876 |
|
|
1174 F722 31 1F LEAY -1,X Count down outer loop
|
3877 |
|
|
1175 F724 10 8C 00 00 CMPY #$0000
|
3878 |
|
|
1176 F728 26 EB BNE UPSUB1 Branch if outer loop not complete
|
3879 |
|
|
1177 *
|
3880 |
|
|
1178 F72A 8E F6 F0 LDX #UPMES3 2MBits scanned, no synch, report error
|
3881 |
|
|
1179 F72D 7E F4 6A JMP PDATA1
|
3882 |
|
|
1180 *
|
3883 |
|
|
1181 F730 8E F6 BF UPSUB4 LDX #UPMES1 Sync found, now load disk
|
3884 |
|
|
1182 F733 BD F4 6A JSR PDATA1
|
3885 |
|
|
1183 *
|
3886 |
|
|
1184 F736 4F CLRA
|
3887 |
|
|
1185 F737 B7 DE 1E STA DRVNUM select Drive 0
|
3888 |
|
|
1186 F73A C6 01 LDB #$01
|
3889 |
|
|
1187 F73C B7 DE 1F UPSUB2 STA TRACK track 0
|
3890 |
|
|
1188 F73F F7 DE 20 STB SECTOR sector 1
|
3891 |
|
|
1189 *
|
3892 |
|
|
1190 F742 17 F9 82 LBSR MAPIN map in buffer
|
3893 |
|
|
1191 F745 5F CLRB 256 byte sector
|
3894 |
|
|
1192 F746 8D 67 UPSUB3 BSR UPBYTE read byte from prom
|
3895 |
|
|
1193 F748 A7 C0 STA ,U+ Store in buffer
|
3896 |
|
|
1194 F74A 5A DECB
|
3897 |
|
|
1195 F74B 26 F9 BNE UPSUB3 Loop until sector read`
|
3898 |
|
|
1196 F74D 17 F9 AB LBSR MAPOUT map out buffer
|
3899 |
|
|
1197 *
|
3900 |
|
|
1198 F750 B6 DE 1F LDA TRACK Advance sector
|
3901 |
|
|
1199 F753 F6 DE 20 LDB SECTOR
|
3902 |
|
|
1200 F756 5C INCB
|
3903 |
|
|
1201 F757 C1 0F CMPB #EMAXSEC+1 Wrap on max sector count
|
3904 |
|
|
1202 F759 26 E1 BNE UPSUB2
|
3905 |
|
|
1203 F75B C6 01 LDB #1
|
3906 |
|
|
1204 F75D 4C INCA Advance track
|
3907 |
|
|
1205 F75E 81 30 CMPA #EMAXTRK
|
3908 |
|
|
1206 F760 26 DA BNE UPSUB2
|
3909 |
|
|
1207 *
|
3910 |
|
|
1208 F762 8E F6 DD UPEXIT LDX #UPMES2 Load complete, report message
|
3911 |
|
|
1209 F765 7E F4 6A JMP PDATA1
|
3912 |
|
|
1210 *
|
3913 |
|
|
1211 * Reset Serial PROM
|
3914 |
|
|
1212 *
|
3915 |
|
|
1213 F768 86 02 UPRESET LDA #PRSTHI Strobe the reset line
|
3916 |
|
|
1214 F76A B7 E0 C0 STA PROMREG
|
3917 |
|
|
1215 F76D 86 00 LDA #PRSTLO
|
3918 |
|
|
1216 F76F B7 E0 C0 STA PROMREG
|
3919 |
|
|
1217 F772 8E 00 00 LDX #$0000 Delay a while`
|
3920 |
|
|
1218 F775 30 1F UPRST1 LEAX -1,X
|
3921 |
|
|
1219 F777 8C 00 00 CMPX #$0000
|
3922 |
|
|
1220 F77A 26 F9 BNE UPRST1
|
3923 |
|
|
1221 F77C BF DF 46 STX SYNCREG+0 Clear Sync Shift Register
|
3924 |
|
|
1222 F77F BF DF 48 STX SYNCREG+2
|
3925 |
|
|
1223 F782 39 RTS
|
3926 |
|
|
1224 *
|
3927 |
|
|
1225 * Input 1 Bit From PROM
|
3928 |
|
|
1226 *
|
3929 |
|
|
1227 F783 86 01 UPBIT LDA #PCLKHI
|
3930 |
|
|
1228 F785 B7 E0 C0 STA PROMREG
|
3931 |
|
|
1229 F788 86 00 LDA #PCLKLO
|
3932 |
|
|
1230 F78A B7 E0 C0 STA PROMREG
|
3933 |
|
|
1231 F78D B6 E0 C0 LDA PROMREG
|
3934 |
|
|
1232 F790 44 LSRA
|
3935 |
|
|
1233 F791 78 DF 49 ASL SYNCREG+3
|
3936 |
|
|
1234 F794 39 RTS
|
3937 |
|
|
1235 *
|
3938 |
|
|
1236 * Test for 32 bit Sync Word
|
3939 |
|
|
1237 *
|
3940 |
|
|
1238 F795 79 DF 48 UPSYNC ROL SYNCREG+2
|
3941 |
|
|
1239 F798 79 DF 47 ROL SYNCREG+1
|
3942 |
|
|
1240 F79B 79 DF 46 ROL SYNCREG+0
|
3943 |
|
|
1241 F79E CC FF 00 LDD #SYNCLO
|
3944 |
|
|
1242 F7A1 10 B3 DF 48 CMPD SYNCREG+2
|
3945 |
|
|
1243 F7A5 26 07 BNE UPSYNCX
|
3946 |
|
|
1244 F7A7 CC AA 55 LDD #SYNCHI
|
3947 |
|
|
1245 F7AA 10 B3 DF 46 CMPD SYNCREG+0
|
3948 |
|
|
1246 F7AE 39 UPSYNCX RTS
|
3949 |
|
|
1247 *
|
3950 |
|
|
1248 * Input 1 Byte From PROM
|
3951 |
|
|
1249 *
|
3952 |
|
|
1250 F7AF 34 04 UPBYTE PSHS B
|
3953 |
|
|
1251 F7B1 C6 08 LDB #8
|
3954 |
|
|
1252 F7B3 8D CE UPBYTE1 BSR UPBIT
|
3955 |
|
|
1253 F7B5 5A DECB
|
3956 |
|
|
1254 F7B6 26 FB BNE UPBYTE1
|
3957 |
|
|
1255 F7B8 B6 DF 49 LDA SYNCREG+3
|
3958 |
|
|
1256 F7BB 35 84 PULS B,PC
|
3959 |
|
|
1257 *
|
3960 |
|
|
1258 ***** NEXTCMD *****
|
3961 |
|
|
1259 *
|
3962 |
|
|
1260 F7BD 17 FC B2 NEXTEXT LBSR INPE GET ONE CHAR. FROM TERMINAL
|
3963 |
|
|
1261 F7C0 84 7F ANDA #$7F STRIP PARITY FROM CHAR.
|
3964 |
|
|
1262 F7C2 1F 89 TFR A,B
|
3965 |
|
|
1263 F7C4 86 20 LDA #$20
|
3966 |
|
|
1264 F7C6 17 FC A5 LBSR OUTP PRNT SPACE
|
3967 |
|
|
1265 F7C9 C1 60 CMPB #$60
|
3968 |
|
|
1266 F7CB 2F 02 BLE NXTEX0
|
3969 |
|
|
1267 F7CD C0 20 SUBB #$20
|
3970 |
|
|
1268 *
|
3971 |
|
|
1269 ***** DO TABLE LOOKUP *****
|
3972 |
|
|
1270 * FOR COMMAND FUNCTIONS
|
3973 |
|
|
1271 *
|
3974 |
|
|
1272 F7CF 8E F7 E5 NXTEX0 LDX #EXTTAB POINT TO JUMP TABLE
|
3975 |
|
|
1273 F7D2 E1 80 NXTEX1 CMPB ,X+ DOES COMMAND MATCH TABLE ENTRY ?
|
3976 |
|
|
1274 F7D4 27 0D BEQ JMPEXT BRANCH IF MATCH FOUND
|
3977 |
|
|
1275 F7D6 30 02 LEAX 2,X POINT TO NEXT ENTRY IN TABLE
|
3978 |
|
|
1276 F7D8 8C F7 F4 CMPX #EXTEND REACHED END OF TABLE YET ?
|
3979 |
|
|
1277 F7DB 26 F5 BNE NXTEX1 IF NOT END, CHECK NEXT ENTRY
|
3980 |
|
|
1278 F7DD 8E F7 F4 LDX #MSGWHAT POINT TO MSG "WHAT?"
|
3981 |
|
|
1279 F7E0 16 FC 87 LBRA PDATA1 PRINT MSG AND RETURN
|
3982 |
|
|
1280 F7E3 6E 94 JMPEXT JMP [,X] JUMP TO COMMAND ROUTINE
|
3983 |
|
|
1281 *
|
3984 |
|
|
1282 * EXTENDED COMMAND JUMP TABLE
|
3985 |
|
|
1283 *
|
3986 |
|
|
1284 F7E5 EXTTAB EQU *
|
3987 |
|
|
1285 F7E5 42 FCC 'B' BOOT FLEX
|
3988 |
|
|
1286 F7E6 F4 0B FDB UBSUB
|
3989 |
|
|
1287 F7E8 4C FCC 'L' LOAD ROM DISK OVER SERIAL PORT
|
3990 |
|
|
1288 F7E9 F4 B2 FDB ULSUB
|
3991 |
|
|
1289 F7EB 46 FCC 'F' FORMAT RAM DISK
|
3992 |
|
|
1290 F7EC F2 DD FDB UFSUB
|
3993 |
|
|
1291 F7EE 50 FCC 'P' LOAD ROM DISK FROM PROM
|
3994 |
|
|
1292 F7EF F7 06 FDB UPSUB
|
3995 |
|
|
1293 F7F1 58 FCC 'X' XMODEM ROM DISK UPLOAD
|
3996 |
|
|
1294 F7F2 F5 AC FDB UXSUB
|
3997 |
|
|
1295 *
|
3998 |
|
|
1296 F7F4 EXTEND EQU *
|
3999 |
|
|
1297 *
|
4000 |
|
|
1298 F7F4 57 48 41 54 20 3F MSGWHAT FCC "WHAT ?"
|
4001 |
|
|
1299 F7FA 0A 0D 04 FCB $0A,$0D,$04
|
4002 |
|
|
0012 END
|
4003 |
|
|
0013 END COLDS
|
4004 |
|
|
Program + Init Data = 7039 bytes
|
4005 |
|
|
Error count = 0
|