1 /2 TC08 HANDLER FOR BUILD
11 /COPYRIGHT (C) 1974,1975 BY DIGITAL EQUIPMENT CORPORATION
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 MANUAL.
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.
32 /DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE
33 /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY
45 \f/1 TC08 HANDLER FOR BUILD
48 DEVICE TC;DEVICE DTA0;4160;10;ZBLOCK 2
49 DEVICE TC;DEVICE DTA1;4160;11;ZBLOCK 2
50 DEVICE TC;DEVICE DTA2;4160;12;ZBLOCK 2
51 DEVICE TC;DEVICE DTA3;4160;13;ZBLOCK 2
52 DEVICE TC;DEVICE DTA4;4160;14;ZBLOCK 2
53 DEVICE TC;DEVICE DTA5;4160;15;ZBLOCK 2
54 DEVICE TC;DEVICE DTA6;4160;16;ZBLOCK 2
55 DEVICE TC;DEVICE DTA7;4160;17;ZBLOCK 2
66 /DECTAPE HANDLERS(PAGE RELOCATABLE) FOR PS/8 MONITOR
85 DCA DERRCT /SET TO REPEAT THREE TIMES IN CASE OF ERROR
88 TAD DTATAD /GENERATE "TAD DTAN" WHERE DTAN IS THE ONE THAT
89 DCA DTANO /WAS CALLED.
91 TAD DTANO /ALSO GENERATE "DCA DTAN" SO WE CAN RESTORE IT
95 DCA DSTOP /STORE CALLING FIELD FOR RETURNING
96 DTANO, 0 /GET CALLING ADDRESS
99 DTADCA, 0 /RESTORE ENTRY POINT
101 DTAISZ, ISZ DTANO /BUMP DTANO FOR VARIOUS GROOVY REASONS
102 /WHICH WILL BE APPARENT LATER
104 DCA DFUN /STORE AWAY FUNCTION WORD FOR FUTURE USE
106 DT7140, CLL CMA /THE "CLL" IS ONLY NECESSARY TO FORM THE 7140
108 DCA DLOC /BUFFER ADDRESS -1
111 CLL RAL /MULTIPLY BY 2 FOR 256-WORD SIMULATED RECORDS
112 DCA DBLOCK /DECTAPE BLOCK #
119 CLA CML /COMPLEMENT OF BIT 11 OF DFUN NOW IN THE LINK
120 TAD DTANO /DTANO = "TAD DTAN+1"
122 RTR /THESE TWO ROTATES FORM THE FLLOWING NUMBER
123 /IN THE AC: YYYF00101000, WHERE YYY =DTAN+1
124 /AND F IS THE COMPLEMENT OF DFUN(11)
125 TAD DT7140 /THE MAGIC STEP - THIS SIMULTANEOUSLY BUMPS DOWN
126 /THE RECORD NUMBER IN AC(0-2) AND TRANSFORMS
127 /THE REST OF THE AC TO F10001000 WHICH IS A
128 /SEARCH IN DIRECTION F(F=1 MEANS BACKWARDS) WITH
131 DTLB /SET DECTAPE FIELD TO 0 FOR SEARCHING
132 JMP DC+3 /JUMP INTO THE BLOCK SEARCH ROUTINE
133 DERR, RTL /DECTAPE STATUS REGISTER B IS USUALLY IN THE AC HERE
135 D7600, 7600 /GET THE "END OF TAPE" FLAG INTO THE LINK AND CLEAR THE AC
136 TAD D200 /GET MOTION BIT
137 DC, SZL /AND, IF LINK IS ON
138 DTATAD, TAD D400 /REVERSE DIRECTION OF MOTION
144 KSF /CHECK FOR ^C TYPED
146 TAD D7600 /**PROBLEM: LINK IS RANDOM YET MUST BE 0
147 DCA DTA /FAKE DTA SO WE GO TO LOC 7600 IN FIELD 0
148 JMP DSTOP1 /AFTER STOPPING THE TAPE
150 JMP .-1 /WAIT FOR SEARCH TO COMPLETE
151 SPA /HAS AN ERROR OCCURED?
152 JMP DERR /DO SOMETHING APPROPRIATE
156 SNL CLA /WAS MOTIOZ OF TAPE FORWARDS?
157 TAD D3 /NO, SO ONLY SUCCEED IF WE ARE 3 BLOCKS IN FRONT
162 CMA /AFTER THIS OPERATION WE HAVE THE FOLLOWING 4 POSSIBILITIES
163 /1)AC=0, L=1 /SEARCH COMPLETE
164 /2)AC=0, L=0 /RIGHT PLACE ON TAPE,WRONG DIRECTION
165 /3)AC .GT. 0, L=0 /WEVE PASSED THE CORRECT BLOCK
166 /4)AC .GT. 0, L=1 /WE HAVENT REACHED THE CORRECT BLOCK YET
172 DCA I CA /SET THE CURRENT ADDRESS REGISTER TO THE BUFFER -1
174 DTLB /SET FIELD TO BUFFER FIELD
178 DCA DBLKCT /GET UNCOMPLEMENTED WORD COUNT INTO DBLKCT
182 RTL /FORM A 50 IF L=1, A 30 IF L=0
183 DL, DTXA /XOR IN 50(WRITE) OR 30(READ) OR 0(CONTINUE PREVIOUS OP)
185 DCA I WC /READ/WRITE 128 WORDS FROM/INTO EACH BLOCK
188 CLL CML /SET ERROR FLAG ON INITIALLY
191 ISZ DERRCT /ERROR-IS IT THE THIRD?
192 \f JMP DTATRY /NO-TRY AGAIN
193 JMP DSTOP /3 ERRORS-STOP TAPE!
196 SNA /BUMP WORD COUNT BY -128 AND SEE IF 0
197 \f /ALSO REVERSE LINK.
198 JMP DOVER /YES - DONE
199 DCA DBLKCT /RESTORE BUMPED WORD COUNT
201 DOVER, ISZ DTA /SKIP ERROR RETURN
202 DSTOP, HLT /RESTORE CALLING FIELD
203 DSTOP1, TAD D200 /STOP THE TAPE
205 DCA DTANO /INITIALIZE DTANO FOR THE NEXT CALL
206 RAR /GET ERROR CODE FROM LINK INTO AC0