Add README.md
[pdp8.git] / sw / os8 / v3d / sources / system / dectapes / dectape3 / RF08NS.PA
CommitLineData
7af5ad59
PH
1/3 RF08 NON SYSTEM HANDLER / NULL:
2/
3/
4/
5/
6/
7/
8/
9/
10/
11/COPYRIGHT (C) 1974,1975 BY DIGITAL EQUIPMENT CORPORATION
12/
13/
14/
15/
16/
17/
18/
19/
20/
21/
22/THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE
23/AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
24/CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY
25/FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT.
26/
27/THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER
28/UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED
29/(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH
30/SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL.
31/
32/DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE
33/OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY
34/DIGITAL.
35/
36/
37/
38/
39/
40/
41/
42/
43/
44/
45\f/ SR
46
47 RF08=1 /CHANGE TO 0 FOR DF32 HANDLER
48
49 *0
50
51 -2
52 IFNZRO RF08 <
53 DEVICE RF;DEVICE RF;4064;RF&177;ZBLOCK 2
54 >
55 IFZERO RF08 <
56 DEVICE DF;DEVICE DF;4124;DF&177;ZBLOCK 2
57 >
58 DEVICE RF;DEVICE NULL;0240;NULL&177;ZBLOCK 2
59
60 SCA=7751
61 SWC=7750
62
63 RFVERSION="A&77
64 NULLVERSION="A&77
65\f *200
66
67INITLC, 0 /PATCH TO 232 TO HAVE NULL STORE ^Z IN BUFFER
68SYSER, CLA CLL CML RAR /4000
69 ISZ SYSCNT /TRY AGAIN?
70 SKP CLA
71 JMP SFIELD /WHY BOTHER
72 CLA CLL CMA RTL
73 TAD RF
74 DCA RF /RESET PARAMETERS AND TRY AGAIN
75 JMP RETRY
76T1, 0
77T2, 0
78
79CTLC, 0
80 KRS
81 AND (177
82 TAD (-3
83 SNA CLA
84 KSF
85 JMP I CTLC
86CIFCDF, CIF CDF 0 /RETURN TO OS/8 IF USER TYPED ^C
87 JMP I S7600
88 ZBLOCK 224-.
89 IFNZRO .-224 <ADRERR,QQQQ> /ENTRY PT MUST BE RELATIVE 24
90\fDF,
91RF, RFVERSION
92 CLA CLL CMA RTL /-3
93 DCA SYSCNT /# TRYS ON ERROR
94RETRY, TAD I RF /HANDLER RUNS IN USER'S DATA FIELD
95 RAL
96 CLA RTL
97 TAD S6603
98 DCA SFUN /EITHER A READ OR WRITE
99 TAD I RF
100 AND S70
101 DCA SFIELD /GET FIELD OF BUFFER
102 TAD I RF
103 RAL
104 AND S7600
105 CIA
106 DCA T1 /SET UP WORD COUNT
107 CLA CMA
108 ISZ RF
109 TAD I RF
110 DCA T2 /BUFFER ADDRESS-1
111 ISZ RF
112 RDF
113 TAD SCDF
114 DCA RESRDF
115SCDF, CDF 0
116 TAD T1
117 DCA I (SWC
118 TAD T2
119 DCA I (SCA
120RESRDF, HLT /RESTORE USER'S DATA FIELD
121 IFZERO RF08 <
122 TAD I RF
123 RTL
124 AND S3700
125 >
126 TAD SFIELD
127 6615 /LOAD DISK EXTENDED MEMORY
128S7600, 7600
129 IFNZRO RF08 <
130 TAD I RF
131 RTR
132 RTR
133 AND S377
134 6643 /LOAD HIGH ORDER
135 >
136 TAD I RF
137 RTR
138 RTR
139 RAR
140 AND S7400
141SFUN, HLT /BECOMES DISK IOT.(READ OR WRITE)
142 RDF
143 TAD CIFCDF
144 DCA SFIELD
145 IFZERO RF08 <6622>
146 IFNZRO RF08 <6623>
147 JMP .-1
148 JMS CTLC
149 ISZ RF
150 6621 /SKIP ON ERROR
151 IFNZRO RF08 <SKP /SENSE OF SKIP IS REVERSED>
152 JMP SYSER
153 ISZ RF
154SFIELD, HLT /RETURN TO PROPER FIELD
155 6601 /CLEAR TROUBLESOME FLAG
156 JMP I RF
157
158 IFZERO RF08 <S3700, 3700>
159 IFNZRO RF08 <S377, 0377>
160\fNULL, NULLVERSION
161 CLA
162 RDF
163 TAD CIFCDF
164 DCA NULRET
165 JMS CTLC
166 TAD I NULL /GET FN WORD
167 DCA SFUN
168 ISZ NULL /POINT TO CORE LOC
169 TAD I NULL /GET START OF BUFFER
170 DCA T1
171 ISZ NULL /POINT TO BLOCK NUMBER
172 ISZ NULL /POINT TO ERROR RETURN
173 TAD SFUN
174 SPA CLA
175 JMP BYE /LEAVE BUFFER ALONE ON A WRITE
176 TAD SFUN
177 AND S70 /ISOLATE FIELD OF BUFFER
178 TAD SCDF
179 DCA NFIELD
180 TAD SFUN
181 CLL RAL
182 AND S7600 /GET NO. OF WDS IN BUFFER
183 CIA
184 DCA T2
185 TAD INITLC
186NFIELD, HLT /GO TO FIELD OF BUFFER
187 DCA I T1 /ZERO BUFFER
188 ISZ T1
189 ISZ T2
190 JMP .-3
191BYE, TAD SFUN
192 RAL /PUT R/W BIT IN LINK
193 CLA CML RAL /AC=1 IF READING
194 SNA
195 ISZ NULL /POINT TO GOOD RETURN IF WRITE
196NULRET, HLT /BACK TO USER'S DATA FIELD, INST FIELD
197 JMP I NULL /RETURN
198
199SYSCNT, 0
200S6603, 6603
201S70, 70
202S7400, 7400
203 $
204\f