Add README.md
[pdp8.git] / sw / os8 / v3d / sources / system / dectapes / dectape3 / TC08SY.PA
CommitLineData
7af5ad59
PH
1/2 TC08 SYSTEM HANDLER
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 VERSION="B&77
46 *0
47 -2
48 DEVICE TC08;DEVICE SYS;4161;2007;0;1341
49 DEVICE TC08;DEVICE DTA0;4161;1007;0;1341
50\f STARTB-ENDB-1 /NEGATIVE OF LENGTH OF BOOTSTRAP
51
52 NOPUNCH
53 *7600
54 ENPUNCH
55
56STARTB, TAD B600 /THIS CODE ONLY EXECUTED ON DMS-TYPE BOOTSTRAP
57 DTCA DTXA /ALL IT DOES IS SIMULATE THE OTHER TYPE OF BOOTSTRAP
58 DTSF /MORAL: DISK MONITOR SYSTEM SUCKS
59 JMP .-1
60 DCA BOOTX
61 DCA BOOTX+1 /FUDGE TO MAKE USE OF SOME COMMON CODE
62 TAD B620
63 JMP BOOT3 /START READING OVER OURSELVES WITH RECORD 0 AGAIN
64 ZBLOCK 7611-.
65BM7642, -7641 /MUST BE BEFORE 7617
66BOOT1, TAD 7755
67 TAD BM7642
68 SNA CLA /WATCH THE PROGRESS OF THE READ
69 JMP BOOT2 /WHEN IT GETS PAST 7643, SWITCH TO FIELD 1
70 NOP /LOADS OVER DTSF IN 7616
71 JMP BOOT1 /LOADS OVER JMP .-1 IN 7617 - STARTS BOOTSTRAP
72BOOT2, TAD B10
73 DTLB /ZAP A 10 INTO STATUS REG B TO LOAD INTO FIELD 1
74 DTSF /FROM HERE ON - LOAD THE FIELD 1 RESIDENT INTO FIELD 1
75 JMP .-1
76BOOT3, DTXA /CONTINUE READING NEXT RECORD(ALSO SEE CODE AT 7600)
77 DTLB /INTO FIELD 0
78 TAD B7577
79 DCA 7755 /PAGE 7600
80 DCA 7754
81BOOTX, CDF CIF 10
82 JMP 7642 /JUMP INTO WAIT LOOP IN FIELD 1
83 JMP BOOT1 /DISK MONITOR FUDGE - JUMP INTO WAITING LOOP
84B7577, 7577
85B10, 10
86B600, 600
87B620, 620
88 ZBLOCK 7642-.
89 DCA 7744
90 DTSF /THIS IS LOADED INTO FIELD 1 WITH MONITOR RESIDENT
91 JMP .-1 /IT IS IN THE CD OUTPUT AREA AND SO WILL BE ZAPPED
92 CDF CIF 0 /BY THE KEYBOARD MONITOR
93ENDB, JMP 7605 /OK, FIELD 0 RESIDENT READ IN, START UP MONITOR
94
95 /BOOTSTRAP FOR DECTAPE MONITOR IS THE SAME AS FOR THE
96 /DEC LIBRARY SYSTEM, RL MONITOR AND POLY BASIC - OR JUST
97 /READ RECORD 0 INTO 7600 AND TRANSFER TO 7600 A LA DISK
98 /MONITOR SYSTEM ON DECTAPE
99\f DTRB=6772
100 DTLB=6774
101 DTXA=6764
102 DTCA=6762
103 DTRA=6761
104 DTSF=6771
105
106 *200
107
108 NOPUNCH
109 *7600
110 ENPUNCH
111
112 SBLOCK=7776 /RELIC FROM OS/8 ASSEMBLY
113 ZBLOCK 7
114SHNDLR, VERSION
115 CLA CLL CMA RTL
116 DCA SYSCNT /3 TRIES ON ERROR
117 RDF
118 TAD SCIF
119 DCA SFIELD /RETURN FIELD SETUP
120 TAD I SHNDLR
121 DCA SFUN
122 ISZ SHNDLR
123 CLA CMA
124 TAD I SHNDLR
125 DCA SLOC /BUFFER ADDRESS-1
126 ISZ SHNDLR
127STRY, TAD S410 /SETUP DTA0 TO DO SEARCH REVERSE
128 DTCA DTXA /BUT MOTION BIT IS NOT ON
129 DTLB
130 CLA CMA CLL RAL
131 DCA SCA /7776=SBLOCK FROM OS/8 ASSEMBLY
132 TAD SFUN
133 RTR
134 RTR
135SERR, RTL
136 RAL /LAST 4 INST. PUT MOTION BIT IN LINK
137 /IF THIS BIT WAS SET IN THE CALLING
138 /SEQUENCE, SEARCH STARTS FORWARD.
139S7600, 7600
140 TAD S200
141SC, SZL
142 TAD S400
143 DTXA /ZAP MOTION BIT ON
144 DTSF DTRB
145 JMP .-1
146 SPA /CHECK FOR ANY ERRORS
147 JMP SERR
148 DTRA /NO ERRORS
149 RTL
150 CMA RTL /COMPLEMENT OF DIRECTION TO LINK
151 /IF LINK ON, SEARCHING FORWARD.
152 SNL CLA
153 CML RTL
154 TAD SBLOCK /SEARCH FOR ONE RECORD BEFORE THE
155 /REQUIRED ONE. THEN REVERSE DIRECTION
156 CMA
157 TAD I SHNDLR
158 TAD I SHNDLR /X+X=2*X; RECORDS TO BLOCKS
159 NOP
160 NOP
161 CMA
162 SZA CLA /IS IT PROPER RECORD?
163 JMP SC
164 SNL /YES..IF LINK IS ON,WAS FWD SRCH
165 JMP SC+1 /REVERSE..REVERSE TAPE MOTION
166 /AND SEARCH FORWARD
167 TAD SLOC
168 DCA SCA
169 TAD SFUN
170 DTLB /SET UP FIELD
171 TAD SFUN
172 CLL RAL
173 AND S7600
174 DCA SBLKCT /BLOCK COUNT
175 RAL /FUNCTION TO BIT 11
176 IFNZRO .-7700 <NZERR>
177 SKP
178 HLT /TO PROTECT AGAINST BAD PROGRAMMERS
179 IAC
180 CLL CML RTL
181 RTL /FORMS EITHER READ OR WRITE
182SL, DTXA
183 TAD S7600
184 DCA SWC /TRANSFER 200 (8)
185 DTSF DTRB
186 JMP .-1
187 CLL CML /IN CASE OF FATAL ERROR
188 SPA CLA
189 JMP SERR2
190 TAD SBLKCT
191 TAD S7600
192 SNA /ALL DONE?
193 JMP SOVER /YES
194 DCA SBLKCT
195 JMP SL
196SERR2, ISZ SYSCNT /TRY AGAIN?
197 JMP STRY
198 SKP /DON'T BOTHER
199SOVER, ISZ SHNDLR
200 ISZ SHNDLR
201 TAD S200 /STOP THE TAPE
202 DTXA
203 RAR /GIVE FATAL RETURN
204SFIELD, HLT
205 JMP I SHNDLR
206\fSCIF, CIF 0
207S400, 400
208S200, 200
209S410, 410
210 SBLKCT=7753
211 SYSCNT=7750
212 SFUN=7751
213 SLOC=7752
214 SWC=7754
215 SCA=7755
216 $
217\f