1 /1 BATCH INPUT STREAM HANDLER
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 DOCUMENT.
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
47 DEVICE BAT /DEVICE TYPE NAME
48 DEVICE BAT /DEVICE NAME
49 2220 /READ ONLY, CODE=22
61 TAD BATCDF /MAKE CDF CIF
62 DCA BATXIT /SAVE FOR EXIT
63 TAD BATISZ /RESET SUCCESS ISZ
68 DCA BATWC /SAVE WORD COUNT (DIVIDED BY 2)
71 TAD BATCDF /CREATE CDF TO BUFFER FIELD
76 DCA BATCA /GET ADDRESS OF BUFFER
78 ISZ BAT /IGNORE BLOCK NUMBER
79 TAD BATWC /WAS COMMAND WRITE OR BUFFER LENGTH ZERO?
81 JMP BATER1 /YES - ERROR
83 TAD I BA7777 /IS BATCH RUNNING?
86 JMP BATER2 /NO - ERROR
89 TAD BATCDF /CREATE CDF TO BATCH FIELD
90 DCA BATCAL /CREATE CDF CIF TO BATCH FIELD
94 BATLP, JMS BATGET /GET CHAR
95 DCA I BATCA /SAVE IN BUFFER
96 JMS BATGET /GET NEXT CHAR
97 DCA BATTMP /SAVE IT FOR PACKING
98 JMS BATGET /GET NEXT CHAR
103 AND BA7400 /ADD FIRST HALF
104 TAD I BATCA /TO FIRST CHAR
105 DCA I BATCA /SAVE THEM IN BUFFER
106 ISZ BATCA /UPDATE POINTER
107 BA7400, 7400 /PROTECT THE ISZ
108 TAD BATTM2 /GET SECOND HALF OF CHAR
112 TAD BATTMP /ADD TO SECOND CHAR
113 DCA I BATCA /SAVE IN BUFFER
114 ISZ BATCA /UPDATE POINTER
115 BA0070, 0070 /PROTECT THE ISZ
119 ISZ BAT /SUCCESS RETURN (ON EOF THIS BECOMES CLA IAC)
120 BATXIT, HLT /CDF CIF TO USER FIELD
123 BATWC, 0 /WORD COUNT (DIVIDED BY 2)
124 BATCA, 0 /POINTER INTO BUFFER
126 BATCHR, 0 /CHAR RETURNED BY BATGET
134 \f/THIS ROUTINE GETS THE NEXT CHARACTER TO BE PUT INTO THE BUFFER
136 0 /IF LAST CHAR WAS <CR> THIS IS "JMP BATLF"
137 BATCAL, HLT /CIF CDF BATCH FIELD (ON EOF THIS IS "JMP BATBUF")
139 TAD (-2214 /VERIFY MAGIC LOCATION IN BATCH
140 SZA /AGAINST EQUALLY MAGIC CONTENTS
143 JMP BATER2 /BATCH IS DESTROYED!
144 CDF /WE ARE IN FIELD ZERO
145 JMS I BATINN /CALL THE BATCH INPUT ROUTINE
146 JMP BATEOF /NO SKIP = END OF FILE
147 DCA BATCHR /SAVE CHARACTER RETURNED
149 TAD BMCR /CARRIAGE RETURN?
152 TAD BCRMLF /LINE FEED?
154 JMP BATCAL /YES - IGNORE IT
155 TAD BLFMDO /DOLLAR SIGN?
158 BATGEX, DCA BCRFLG /NO SPECIAL CHAR
159 TAD BATCHR /RETURN WITH CHAR IN AC
160 BATBUF, HLT /CDF USER BUFFER
164 BATCR, TAD BLFJMP /SET NEXT CALL TO RETURN <LF>
166 CLA CMA /SET TO INDICATE <CR>
169 BATLF, DCA BATGET+1 /ZAP THE JMP TO HERE
173 BATDO, TAD BCRFLG /IS THE "$" FIRST ON THIS LINE?
175 JMP BATGEX /NO - NOTHING SPECIAL
176 TAD I BA7777 /YES - SET FLAG SO THAT
177 RTR /THE BATCH INPUT ROUTINE
178 STL RTL /WILL PUT THE DOLLAR-SIGN BACK
180 /RETURN CURRENT CHARACTER AGAIN
181 BATEOF, TAD BATCTZ /RETURN CTRL-Z THIS TIME
183 DCA BATXIT-1 /SET HANDLER TO RETURN TO ERROR RETURN
184 TAD BATGEJ /SET BATGET TO RETURN ZEROES
186 JMP BATCR+2 /AND FLAG NEW LINE FOR NEXT CALL
188 BATINN, BATIN /ENTRY ADDRESS OF BATCH INPUT ROUTINE
197 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$