Trailing-Edge
-
PDP-10 Archives
-
bb-m403a-bk
-
parser.lst
There are 2 other files named parser.lst in the archive. Click here to see a list.
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44
TABLE OF CONTENTS
35- 1467 DATAB -- COMMAND PARSER IMPURE DATA BASE 7709.20
36- 1605 .SSTTB -- SYNCHRONOUS SYSTEM TRAP VECTOR TABLE 7709.20
37- 1656 DATAB -- DTE-20 OPERATION BUFFERS 7709.20
38- 1675 DATAB -- INPUT / OUTPUT BUFFERS 7709.20
39- 1691 DATAB -- ASCII MESSAGES AND .RAD50 TABLES 7709.20
40- 1731 .CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
47- 2051 .CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP 7607.15
48- 2107 .CKARG -- CHECK FOR ALPHANUMERIC ARGUMENT 7709.21
49- 2146 .CKCOL -- CHECK FOR A EQUAL 7709.21
50- 2181 .CKCTC -- CHECK FOR CONTROL-C TYPED 7601.28
51- 2211 .CKEOC -- CHECK END OF COMMAND 7602.16
52- 2249 .CKEOS -- CHECK END OF SYMBOL 7709.21
53- 2277 .CKOBJ -- CHECK FOR A TRAILING OBJECT 7709.21
54- 2304 .CKRUN -- SUBROUTINE TO CHECK IF THE KL IS RUNNING 7601.12
55- 2355 .CKSYM -- FIND THE FIRST CHARACTER IN A SYMBOL 7709.21
56- 2384 .EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR 7512.03
57- 2448 .PARER -- ERROR DECODE AND PRINT ROUTINE 7609.24
59- 2528 .PARER -- SPECIAL ERROR ROUTINES 7609.24
64- 2672 .PTDIE -- RECURSIVE TRAP HANDLER 7609.24
65- 2709 .PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER 7609.24
68- 2829 .PTOAT -- TRAP AT 4 TRAP HANDLER 7601.15
69- 2922 FILE INTERFACE DATA
70- 3020 .FNDIR -- ROUTINE TO FIND DIRECTORY FILE ID
71- 3083 .LOKUP -- ROUTINE TO LOOK UP A FILE TO GET ITS FID
72- 3147 .ENTER -- ROUTINE TO ENTER A FILE
73- 3197 .OPEN -- ROUTINE TO OPEN A FILE
74- 3252 .EXTND -- ROUTINE TO EXTEND A FILE
75- 3301 .CLOSE -- ROUTINE TO CLOSE A FILE
76- 3365 .SETFN -- ROUTINE TO SET A FILE NAME IN A FILE NAME BLOCK
77- 3404 .READR -- ROUTINE TO READ A RECORD
78- 3460 .READW -- READ A WORD FROM A FILE
79- 3497 .READB -- READ A BYTE FROM A FILE
80- 3530 .READ -- ROUTINE TO READ A BLOCK
81- 3578 .WRITR -- ROUTINE TO WRITE A RECORD
82- 3634 .WRITW -- WRITE A WORD TO A FILE
83- 3670 .WRITB -- WRITE A BYTE TO A FILE
84- 3701 .WRITZ -- WRITE OUT CURRENT BLOCK
85- 3742 .WRITE -- ROUTINE TO WRITE A BLOCK
88- 3823 .BURST -- MBOX CLOCK BURST SUBROUTINE 7601.02
89- 3863 .CLDFB -- DTE-20 OPERATION BUFFER CLEAR SUBROUTINE 7508.26
90- 3902 .CLRFF -- CLEAR KL RUN FLOP SUBROUTINE 7609.10
92- 3959 .DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
96- 4099 .EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK 7512.01
98- 4163 .EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
103- 4351 .EXCTF -- FAST INTERNAL EXECUTE 7602.17
105- 4441 .FREAD -- DIAGNOSTIC FUNCTION READ SUBROUTINE 7609.15
107- 4518 .FWRIT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE 7609.15
109- 4615 .FXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE 7609.15
112- 4717 .KLCON -- KL CONTINUE SUBROUTINE 7710.11
114- 4782 .KLHLT -- SUBROUTINE TO STOP THE KL IN THE HALT LOOP 7601.09
116- 4872 .KLST -- SUBROUTINE TO START THE KL 7512.08
117- 4917 .KLSTP -- SUBROUTINE TO GET THE KL INTO THE HALT LOOP 7512.19
118- 4966 .KLRST -- SUBROUTINE TO RESTART THE KL 7512.22
120- 5025 .KLXCT -- KL INSTRUCTION EXECUTE SUBROUTINE 7509.10
121- 5064 .LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE 7601.02
123- 5110 .LDCPC -- KL CLOCK AND PARITY LOAD SUBROUTINES 7509.30
125- 5191 .LDCRA -- LOAD CRAM ADDRESS SUBROUTINE 7511.19
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44
TABLE OF CONTENTS
127- 5245 .MRCLR -- KL MASTER RESET SUBROUTINE 7607.15
129- 5316 .RDCPP -- SUBOUTINE TO READ THE KL CLOCK AND PARITY ENABLES 7510.09
132- 5446 .RDCRD -- SUBROUTINE TO READ THE KL CRAM DISP FIELD 7511.22
133- 5479 .RDCRM -- KL CONTROL RAM READ SUBROUTINE 7511.19
135- 5572 .RDCRO -- SUBROUTINE TO READ THE KL CRAM OUTPUT 7511.05
136- 5605 .RDFMA -- SUBROUTINE TO READ THE KL FM ADDRESS 7511.14
137- 5653 .RDFMO -- SUBROUTINE TO READ KL FAST MEMORY OUTPUT 7708.30
138- 5686 .RDFMP -- READ FM PARITY ERROR BIT
139- 5719 .RDIPE -- READ KL INTERNAL PARITY ERROR FLAGS 7511.13
140- 5770 .RESET -- KL RESET SUBROUTINES 7511.18
142- 5843 .RESTD -- DTE-20 RESET SUBROUTINE 7607.20
143- 5886 .RESTI -- RESET KL AND ENABLE NORMAL CLOCK AND PARITY 7607.19
144- 5932 .RESTP -- RESET KL AND SAVE CURRENT CLOCK AND PARITY 7511.19
146- 5982 .RSTKL -- SUBROUTINE TO RESTART THE KL 7611.17
147- 6012 .STCLK -- START KL CLOCK SUBROUTINE 7607.15
148- 6043 .STPKL -- SUBROUTINE TO STOP THE KL 7602.25
149- 6073 .STPXC -- STOP KL CLOCK SUBROUTINE 7601.09
150- 6107 .STRUN -- SET KL RUN FLOP SUBROUTINE 7601.09
151- 6139 .STUCD -- START KL MICROCODE SUBROUTINE 7511.22
153- 6210 .SYNXC -- SYNCH EBOX CLOCK SUBROUTINE 7509.03
154- 6241 .WRTAR -- SUBROUTINE TO WRITE THE KL AR REGISTER 7511.05
155- 6287 .WRCRM -- WRITE CONTROL RAM SUBROUTINE 7511.03
156- 6409 .NULLC -- THE NULL COMMAND 7602.10
158- 6451 .DOCMD -- DECODE A SINGLE COMMAND 7602.03
160- 6525 .EXITP -- THE COMMAND PARSER EXIT POINT 7605.17
161- 6578 .START -- COMMAND PARSER MAIN LOOP 7602.02
162- 6604 .RGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE 7509.16
164- 6673 .TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
168- 6790 .SSCAN -- ROUTINE TO SCAN A SYMBOL 7601.14
172- 6883 .REPTC -- THE "REPEAT" COMMAND 7703.25
174- 6973 .CMDTB -- THE MAIN COMMAND TABLE 7703.25
175- 7050 .DPETB -- THE DEPOSIT EXTENSION TABLE 7602.23
176- 7065 .DPOTB -- THE DEPOSIT COMMAND TABLE 7602.23
177- 7086 .EXETB -- THE EXAMINE EXTENSION TABLE 7602.16
178- 7101 .EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
179- 7169 .KLMTB -- THE KLINIK MODE TABLE 7702.16
180- 7187 .MONTB -- THE MONTH TABLE 7702.16
181- 7218 .NSETB -- NORMAL ERROR CODE TABLE 7710.11
182- 7318 .RESTB -- THE RESET COMMAND TABLE 7602.18
183- 7339 .SCCTB -- THE "SET / CLEAR CLOCK" COMMAND TABLE 7603.12
184- 7366 .SCMTB -- THE "SET / CLEAR MEMORY" COMMAND TABLE 7603.18
185- 7375 .SCCOT -- THE "SET CONSOLE" COMMAND TABLE 7602.12
186- 7388 .SCOTT -- THE "SET OUTPUT" COMMAND TABLE
187- 7399 .SCPTB -- THE SET / CLEAR "PARITY-STOP" TABLE 7603.10
188- 7418 .SETTB -- THE SET / CLEAR COMMAND TABLE 7703.25
189- 7461 .SPETB -- SPECIAL ERROR CODE TABLE 7702.16
190- 7480 .STRTB -- THE START COMMAND TABLE 7602.26
191- 7489 .WHATB -- THE WHAT COMMAND TABLE 7703.25
194- 7569 .SHIFT -- 16 BIT BY 16 BIT SHIFT OPERATIONS 7603.30
195- 7610 .TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE 7601.19
198- 7706 .TPCLR -- SUBROUTINE TO CLEAR A 48 BIT NUMBER 7601.19
199- 7758 .TPCMP -- SUBROUTINE TO COMPARE TWO 48 BIT NUMBERS 7610.19
200- 7798 .TPTST -- TEST A 48 BIT NUMBER FOR ZERO 7601.19
201- 7834 .TPADD -- SUBROUTINE TO ADD TWO 48 BIT NUMBERS 7601.15
202- 7868 .TPINC -- SUBROUTINE TO INCREMENT A 48 BIT NUMBER 7601.19
203- 7905 .TPSUB -- SUBROUTINE TO SUBTRACT TWO 48 BIT NUMBERS 7601.15
204- 7945 .TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE 7601.19
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44
TABLE OF CONTENTS
207- 8023 .TPSHI -- SHIFT A 48 BIT NUMBER BY A 16 BIT NUMBER 7601.19
208- 8073 .TPSHL -- SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER 7601.19
211- 8171 .TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE 7512.09
213- 8254 .DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS 7512.11
216- 8343 .EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
220- 8482 .GTCMD -- SUBROUTINE TO GET A COMMAND LINE 7601.22
221- 8525 .GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
223- 8655 .ELNCK -- TEST FOR A LEGAL PDP-11 NUMBER 7611.01
224- 8697 .GTELN -- SUBROUTINE TO GET A PDP-11 NUMBER 7602.05
225- 8728 .GTKLA -- SUBROUTINE TO GET A 22 BIT KL ADDRESS 7602.05
226- 8761 .GTNUM -- SUBROUTINE TO EVALUATE A NUMERIC EXPRESSION 7608.09
228- 8846 .GTOPC -- KL I/O OPCODE DECODER FOR ".GTNUM"
229- 8949 .GTEXP -- EXPRESSION EVALUATOR FOR ".GTNUM" 7603.03
231- 9009 .GTTRM -- TERM EVALUATOR FOR ".GTNUM" 7603.03
233- 9077 .GTFCT -- FACTOR EVALUATOR FOR ".GTNUM" 7603.03
236- 9198 .GTNBR -- NUMBER EVALUATOR FOR ".GTNUM" 7603.03
240- 9301 .TYAST -- SPECIAL CHARACTER OUTPUT SUBROUTINES 7601.23
242- 9365 .TYACE -- TYPE AC ADDR AND CONTENTS
243- 9438 .TYELA -- SUBROUTINE TO TYPE A PDP-11 ADDRESS 7601.23
244- 9482 .TYP3D -- SUBROUTINE TO TYPE A THREE DIGIT NUMBER 7601.23
245- 9528 .TYKLA -- SUBROUTINE TO TYPE A KL ADDRESS 7608.02
246- 9570 .TYKLN -- SUBROUTINE TO TYPE A KL NUMBER 7608.02
247- 9617 .TYNCM -- COMMON ENTRY POINT FOR ".TYNUM" 7601.23
249- 9690 .TYNUM -- GENERAL SUBROUTINE TO TYPE A FORMATTED NUMBER 7601.23
251- 9771 .TYLIN -- SUBROUTINE TO OUTPUT AN .ASCIZ MESSAGE AND A <CRLF> 7601.23
252- 9818 .TFCHR -- SUBROUTINE TO FORCE A CHARACTER TO THE CONSOLE DEVICE 7601.23
253- 9847 .TYCHR -- CONSOLE DEVICE OUTPUT SUBROUTINE 7601.23
255- 9902 .TYOUT -- CONSOLE OUTPUT SUBROUTINE 7601.23
257- 9972 .TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 1
1 .IIF NDF FTLCMN,.NLIST
2 .TITLE DEFINE -- LOCAL DEFINITION MODULE 7709.20
3
4 .IDENT "006270"
5
6 ;
7 ; COPYRIGHT (C) 1979 BY
8 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
9 ;
10 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
11 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
12 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
13 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
14 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
15 ;
16 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
17 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
18 ; CORPORATION.
19 ;
20 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
21 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
22 ;
23 ; MODULE: LOCAL DEFINITIONS
24 ;
25 ; VERSION: 06-27
26 ;
27 ; AUTHOR: R. BELANGER
28 ;
29 ; DATE: 7905.10
30 ;
31 ; THIS MODULE CONTAINS:
32 ;
33 ; 1) LOCAL MACRO DEFINITIONS
34 ; 2) LOCAL ASSEMBLY SWITCHES
35 ; 3) LOCAL DEFINITIONS
36 ; 4) LOCAL EQUATED SYMBOLS
37 ;
38 ; MODIFICATIONS:
39 ;
40 ; NO. DATE PROGRAMMER REASON
41 ; --- ---- ---------- ------
42 ; 001 11-DEC-77 A. PECKHAM DELETE LOCAL DEFINITIONS
43 ; OF PROTOCOL CHANGE AND
44 ; CONTROL-C EVENT FLAGS
45 ; 002 16-FEB-77 R. BELANGER REMOVE KLINIK CONDITIONALS
46 ;
47 ; SET VERSION OF THE PARSER HERE
48 ;
49 000006 PAR$$V = 6 ; VERSION 6
50 000027 PAR$$E = 27 ; EDIT 27
51 ;
52 ; THIS IS BEING EXPERIMENTED
53 ;
54 000126 PAR$$K = 'V ; KEY FOR RELEASE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 2
DEFINE -- COMMAND PARSER ASSEMBLY SWITCHES 7709.20
56 .SBTTL DEFINE -- COMMAND PARSER ASSEMBLY SWITCHES 7709.20
57
58 000000 FT1145=0 ; ASSEMBLE FOR PDP-11/45 IF .NE. 0
59 000001 FT1140=1 ; ASSEMBLE FOR PDP-11/40 IF .NE. 0
60 000000 FT1135=0 ; ASSEMBLE FOR PDP-11/35 IF .NE. 0
61 000000 FT1120=0 ; ASSEMBLE FOR PDP-11/20 IF .NE. 0
62 000000 FT1115=0 ; ASSEMBLE FOR PDP-11/15 IF .NE. 0
63 000000 FT1110=0 ; ASSEMBLE FOR PDP-11/10 IF .NE. 0
64 000000 FT1105=0 ; ASSEMBLE FOR PDP-11/05 IF .NE. 0
65 000000 FTBYTE=0 ; ASSEMBLE BYTE SUPPORT IF .NE 0
66 000000 FTCRAM=0 ; ASSEMBLE CRAM FEATURES IF .NE. 0
67 000001 FTDEBUG=1 ; ASSEMBLE DEBUG FEATURES IF .NE. 0
68 000000 FTDISP=0 ; ASSEMBLE DISPATCH TABLE IF .NE 0
69 000000 FTDRAM=0 ; ASSEMBLE DRAM FEATURES IF .NE. 0
70 000000 FTHELP=0 ; ASSEMBLE HELP FEATURE IF .NE. 0
71 000000 FTKLER=0 ; ASSEMBLE "KLERR" SUPPORT IF .NE. 0
72 000000 FTLCVT=0 ; ASSEMBLE LOWER CASE SUPPORT IF .NE. 0
73 000001 FTLIST=1 ; ASSEMBLE LPT SUPPORT IF .NE. 0
74 000001 FTTRAK=1 ; ASSEMBLE TRACK FEATURE IF .NE. 0
75 000001 FTTRP4=1 ; ASSEMBLE TRAP AT 4 CODE IF .NE. 0
76 000130 FTUCVR=130 ; MICROCODE FEATURE SWITCH
77 000001 FTKLE=1 ; KLERR SNAPSHOT SUPPORT FLAG
78 ;DEB880=0 ; DEFINED IF DEBUGGING ON RSX-11M SYS880
79
80 .IF NE FT1145
81 FT1140=1
82 .ENDC ; FT1145
83
84 .IF NE FT1140
85 000001 FT1135=1
86 .ENDC ; FT1140
87
88 .IF NE FT1135
89 000001 FT1120=1
90 .ENDC ; FT1135
91
92 .IF NE FT1120
93 000001 FT1115=1
94 .ENDC ; FT1135
95
96 .IF NE FT1115
97 000001 FT1110=1
98 .ENDC ; FT1115
99
100 .IF NE FT1110
101 000001 FT1105=1
102 .ENDC ; FT1110
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 3
DEFINE -- COMMAND PARSER MACRO CALLS 7709.20
104 .SBTTL DEFINE -- COMMAND PARSER MACRO CALLS 7709.20
105
106 .LIST MEB, SYM
107 .NLIST CND
108 .ENABL AMA
109
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 4
DEFINE -- LOCAL MACRO DEFINITIONS 7709.20
114 .SBTTL DEFINE -- LOCAL MACRO DEFINITIONS 7709.20
115
116 ; SUBROUTINE CALL MACROS
117
118 .MACRO CALL REG,DEST
119 .NTYPE $$,REG
120 .IF EQ $$&70
121 JSR REG,DEST
122 .IFF
123 JSR PC,REG
124 .ENDC ; IF EQ
125 .ENDM CALL
126
127 .MACRO CALLR DEST
128 JMP DEST
129 .ENDM CALLR
130
131 ; STACK OPERATION MACROS
132
133 .MACRO POP ARG
134 .IRP A,<ARG>
135 MOV (SP)+,A
136 .ENDR
137 .ENDM POP
138
139 .MACRO PUSH ARG
140 .IRP A,<ARG>
141 MOV A,-(SP)
142 .ENDR
143 .ENDM PUSH
144
145 ; SUBROUTINE RETURN MACRO
146
147 .MACRO RETURN REG
148 .IF NB <REG>
149 RTS REG
150 .IFF
151 RTS PC
152 .ENDC ; IF NB
153 .ENDM RETURN
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 5
DEFINE -- LOCAL MACRO DEFINITIONS 7709.20
155 ; DEFINE THE ERROR TRAP MACRO FOR ".PTTRP"
156
157 .MACRO ERROR$ CODE
158 PUSH #^R'CODE
159 TRAP TC.ERR
160 .ENDM ERROR$
161
162 ; DEFINE THE FATAL TRAP MACRO FOR ".PTTRP"
163
164 .MACRO FATAL$ CODE
165 FA$'CODE=.
166 PUSH #^R'CODE
167 TRAP TC.RST
168 .ENDM FATAL$
169
170 ; DEFINE THE CONTINUE TRAP MACRO FOR ".PTTRP"
171
172 .MACRO ERCON$ CODE
173 EC$'CODE=.
174 PUSH #^R'CODE
175 TRAP TC.CON
176 TST (SP)+
177 .ENDM ERCON$
178
179 ; DEFINE THE COMMAND TABLE MACRO
180
181 .MACRO COMND$ COMMAND,LGLBTS,DISPAT,NAM
182 .PSECT MESSAG
183 .IF NDF,NAM'MSG
184 $$$'NAM=0
185 NAM'MSG:: .ASCIZ %COMMAND%
186 .ENDC
187 .IF DF,$$PASS2
188 $$$'NAM=$$$'NAM+1
189 .IF EQ,$$$'NAM-1
190 NAM'MSG:: .ASCIZ %COMMAND%
191 .ENDC
192 .ENDC
193 .PSECT DATA
194 .WORD NAM'MSG ; POINTER TO "COMMAND" SYMBOL
195 .WORD LGLBTS ; LEGAL BITS
196 .WORD DISPAT ; ROUTINE TO CALL OR DATA
197 .ENDM COMND$
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 6
DEFINE -- LOCAL MACRO DEFINITIONS 7709.20
199 ; DEFINE THE NORMAL ERROR CODE MACRO
200
201 .MACRO NSERR$ COD,STRING
202 .PSECT ERRMSG
203 COD'ERM: .ASCIZ %COD - STRING%
204 .PSECT DATA
205 .RAD50 /COD/ ; "COD" IN .RAD50
206 .WORD COD'ERM ; POINTER TO MESSAGE
207 .ENDM NSERR$
208
209 ; DEFINE THE SPECIAL ERROR CODE MACRO
210
211 .MACRO SPERR$ COD,STRING
212 .PSECT ERRMSG
213 COD'ERM:
214 .ASCIZ %COD - STRING%
215 .PSECT DATA
216 .RAD50 /COD/ ; "COD" IN .RAD50
217 .WORD .SE'COD ; DISPATCH TO HANDLER
218 .WORD COD'ERM ; POINTER TO MESSAGE
219 .ENDM SPERR$
220
221 ; DEFINE AN "EXCHANGE" MACRO
222
223 .MACRO EXCH$ ARG1,ARG2
224 MOV ARG1,-(SP)
225 MOV ARG2,ARG1
226 MOV (SP)+,ARG2
227 .ENDM EXCH$
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 7
DEFINE -- SPECIAL KL MACROS AND DEFINITIONS 7709.20
229 .SBTTL DEFINE -- SPECIAL KL MACROS AND DEFINITIONS 7709.20
230
231 ; DEFINE KL I/O OPCODES
232
233 000000 BLKI=0 ; BLOCK IN
234 000001 DATAI=1 ; DATA IN
235 000002 BLKO=2 ; BLOCK OUT
236 000003 DATAO=3 ; DATA OUT
237 000004 CONO=4 ; CONDITIONS OUT
238 000005 CONI=5 ; CONDITIONS IN
239 000006 CONSZ=6 ; " " SKIP IF ZERO
240 000007 CONSO=7 ; " " " " ONES
241
242 ; DEFINE KL INTERNAL I/O DEVICES
243
244 000000 APR=0 ; ARITHMETIC PROCESSOR (ALU)
245 000004 PI=4 ; PRIORITY INTERRUPT SYSTEM
246 000010 PAG=10 ; PAGING SYSTEM
247 000014 CCA=14 ; CACHE CONTROL
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 8
DEFINE -- SPECIAL KL MACROS AND DEFINITIONS 7709.20
249 ; DEFINE KL INSTRUCTION MACRO
250
251 .MACRO IKL$ OP,DAC,DI,DAD,DXR
252 ADH=0
253 ADL=0
254 .IF NB,DAD
255 .IRPC AD1,DAD
256 .IIF GE,<ADL-10000>,ADH=ADL/10000
257 ADL=10*<ADL&7777>+AD1
258 .ENDR
259 .ENDC ; .IF NB
260 .IIF B,DAC,AC=0
261 .IIF NB,DAC,AC=DAC
262 .IIF B,DI,I=0
263 .IIF NB,DI,I=DI
264 .IIF B,DXR,XR=0
265 .IIF NB,DXR,XR=DXR
266 $$A=<ADL&377>
267 $$B=<<ADL/400>!<ADH*200&377>>
268 $$C=<AC&1*200+<I*100+<XR*4>>+<ADH/2>>
269 $$D=<OP&37*10+<AC/2>>
270 $$E=<OP/40>
271 $$F=0
272 .BYTE $$A,$$B
273 .BYTE $$C,$$D
274 .BYTE $$E,$$F
275 .ENDM IKL$
276
277 ; DEFINE KL I/O INSTRUCTION MACRO
278
279 .MACRO IOKL$ OP,DDV,DI,DAD,DXR
280 .IIF B,DI,I=0
281 .IIF NB,DI,I=DI
282 .IIF B,DXR,XR=0
283 .IIF NB,DXR,XR=DXR
284 ADH = 0
285 ADL = 0
286 .IRPC AD1,DAD
287 .IIF GE,<ADL-10000>, ADH=ADL/10000
288 ADL=10*<ADL&7777>+AD1
289 .ENDR
290 $$A=<ADL&377>
291 $$B=<<ADL/400>!<ADH*200&377>>
292 $$C=<OP&1*200+<I*100+<XR*4>>+<ADH/2>>
293 $$D=<DDV&374+<OP/2>>
294 $$E=<DDV/400+16>
295 $$F=0
296 .BYTE $$A,$$B
297 .BYTE $$C,$$D
298 .BYTE $$E,$$F
299 .ENDM IOKL$
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 9
DEFINE -- LOCAL DEFINITIONS 7709.20
301 .SBTTL DEFINE -- LOCAL DEFINITIONS 7709.20
302
303 ; LOCAL DEFINITIONS
304
305 000001 BIT00=000001 ; DEFINE LOW BITS FOR SYMMETRY
306 000002 BIT01=000002
307 000004 BIT02=000004
308 000010 BIT03=000010
309 000020 BIT04=000020
310 000040 BIT05=000040
311 000100 BIT06=000100
312 000200 BIT07=000200
313 000400 BIT08=000400
314 001000 BIT09=001000
315 002000 BIT10=002000
316 004000 BIT11=004000
317 010000 BIT12=010000
318 020000 BIT13=020000
319 040000 BIT14=040000
320 100000 BIT15=100000
321
322 ; DEFINE EXAMINE DEPOSIT MODE BYTES
323
324 000000 ED.EPT=0*40 ; EXEC PROCESS TABLE (RELATIVE)
325 000040 ED.EXV=1*40 ; EXEC VIRTUAL SPACE
326 000100 ED.UPT=2*40 ; USER PROCESS TABLE (RELATIVE)
327 000140 ED.USV=3*40 ; USER VIRTUAL SPACE
328 000200 ED.PHY=4*40 ; PHYSICAL ADDRESSES
329
330 ; DEFINE BITS IN ".PEWRD"
331
332 000001 PE.CES=1 ; CLOCK ERROR STOP
333 000002 PE.DRM=2 ; DRAM PARITY ERROR
334 000004 PE.CRM=4 ; CRAM PARITY ERROR
335 000010 PE.FMP=10 ; FAST MEMORY PARITY ERROR
336 000020 PE.FSS=20 ; FIELD SERVICE STOP
337 000037 PE.ALL=PE.CES!PE.DRM!PE.CRM!PE.FMP!PE.FSS
338
339 ; DEFINE BITS IN ".APRWD"
340
341 000001 AP.PWF=1 ; APR POWER FAIL
342 000002 AP.SAP=2 ; APR SBUS ADDRESS PARITY ERROR
343 000004 AP.CDP=4 ; APR CACHE DIRECTORY PARITY ERROR
344 000010 AP.MPE=10 ; APR MB (MEMORY) PARITY ERROR
345 000020 AP.IPF=20 ; APR I/O PAGE FAIL ERROR
346 000040 AP.NXM=40 ; APR NON-EX-MEM ERROR
347 000100 AP.SBE=100 ; APR SBUS ERROR
348 000177 AP.ALL=AP.PWF!AP.SAP!AP.CDP!AP.MPE!AP.IPF!AP.NXM!AP.SBE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 10
DEFINE -- LOCAL DEFINITIONS 7709.20
350 ; DEFINE OFFSETS INTO DTE-20 DIAG REGISTERS
351
352 000000 .DIAG1=0 ; DTE-20 DIAG1 WORD
353 000002 .DIAG2=2 ; DTE-20 DIAG2 WORD
354 000004 .DTSTW=4 ; DTE-20 STATUS WORD
355 000006 .DIAG3=6 ; DTE-20 DIAG3 WORD
356
357 ; DEFINE DTE-20 DIAG1 BITS
358
359 100000 D1.DS0=BIT15 ; DIAGNOSTIC SELECT CODE 00 [WRITE]
360 040000 D1.DS1=BIT14 ; " " " 01 "
361 020000 D1.DS2=BIT13 ; " " " 02 "
362 010000 D1.DS3=BIT12 ; " " " 03 "
363 004000 D1.DS4=BIT11 ; " " " 04 "
364 002000 D1.DS5=BIT10 ; " " " 05 "
365 001000 D1.DS6=BIT09 ; " " " 06 "
366 004000 D1.CES=BIT11 ; KL CLOCK ERROR STOP [READ]
367 002000 D1.RUN=BIT10 ; KL RUN FLAG [READ]
368 001000 D1.HLP=BIT09 ; KL IS IN HALT LOOP [READ]
369 000400 D1.DEX=BIT08 ; DTE-20 IS IN DEPOSIT / EXAMINE STATE [READ]
370 000200 D1.T10=BIT07 ; DTE-20 IS IN TO KL STATE [READ]
371 000200 D1.LBK=BIT07 ; PUT DTE-20 IN LOOPBACK MODE [WRITE]
372 000100 D1.T11=BIT06 ; DTE-20 IS IN TO 11 STATE [READ]
373 000040 D1.DDT=BIT05 ; SET DTE-20 DIAGNOSTIC MODE [WRITE]
374 ; DTE-20 IS IN DIAGNOSTIC MODE [READ]
375 000020 D1.V04=BIT04 ; VECTOR INTERRUPT ADDRESS BIT 04 [READ]
376 000020 D1.PLS=BIT04 ; GENERATE A CLOCK CYCLE IF D1.DDT SET [WRITE]
377 000010 D1.DFM=BIT03 ; CHANGE EX / DEP TO DIAG FUNCTIONS IF PRIVILEGED [WRITE]
378 000004 D1.XFR=BIT02 ; SEND DATA TO KL IF = 1 [READ]
379 ; RECEIVE DATA FROM KL IF = 0 [READ]
380
381 ; BIT 01 IS UNUSED [MBZ]
382
383 000001 D1.DCS=BIT00 ; DIAG COMMAND IN PROGRESS [READ]
384 ; SET DIAGNOSTIC COMMAND START IF = 1 [WRITE]
385 ; CLEAR DIAGNOSTIC COMMAND START IF = 0 [WRITE]
386 000442 D1.MBZ=D1.DEX!D1.DDT!BIT01 ; MUST BE ZERO ON WRITE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 11
DEFINE -- LOCAL DEFINITIONS 7709.20
388 ; DEFINE DTE-20 DIAG2 BITS
389
390 100000 D2.RA0=BIT15 ; RFM ADDRESS BIT 0 [READ]
391 040000 D2.RA1=BIT14 ; RFM ADDRESS BIT 1 [READ]
392 040000 D2.EBD=BIT14 ; SET EBUS DONE IF = 1 [WRITE]
393 ; CLEAR EBUS DONE IF = 0 [WRITE]
394 020000 D2.RA2=BIT13 ; RFM ADDRESS BIT 2 [READ]
395
396 ; BITS 11 THRU 7 ARE UNUSED [MBZ]
397
398 000100 D2.RST=BIT06 ; RESET THE DTE-20 IF = 1 [WRITE]
399
400 ; BIT 5 IS UNUSED [MBZ]
401
402 000020 D2.MS8=BIT04 ; MINOR STATE COUNTER BIT 8 [WRITE]
403 000010 D2.MS4=BIT03 ; " " " " 4 "
404 000004 D2.MS2=BIT02 ; " " " " 2 "
405 000002 D2.MS1=BIT01 ; " " " " 1 "
406
407 ; BIT 0 IS UNUSED [MBZ]
408
409 177641 D2.MBZ=BIT15!BIT14!BIT13!BIT12!BIT11!BIT10!BIT09!BIT08!BIT07!BIT05!BIT00
410
411 ; DEFINE DTE-20 DIAG3 BITS
412
413 100000 D3.SSL=BIT15 ; SWAP SELECT LEFT [READ]
414 040000 D3.PAR=BIT14 ; PARITY FLOP [READ]
415
416 ; BITS 13 THRU 08 ARE UNIBUS PARITY ERROR INFO [READ]
417
418 ; BITS 07 AND 06 ARE UNUSED [MBZ]
419
420 000040 D3.SCD=BIT05 ; SHIFT DATA IN 13-08 FOR NEXT READ [WRITE]
421 000020 D3.UPE=BIT04 ; DATO UNIBUS PARITY ERROR (DUPE) [READ]
422 000020 D3.CDD=BIT04 ; CLEAR DUPE AND DURE FLAGS
423 000010 D3.WEP=BIT03 ; WRITE EVEN UNIBUS PARITY FLOP [READ]
424 ; WRITE EVEN UNIBUS PARITY IF = 1 [WRITE]
425 ; WRITE ODD (GOOD) UNIBUS PARITY IF = 0 [WRITE]
426 000004 D3.URE=BIT02 ; DATO UNIBUS RECEIVE ERROR FLAG (DURE) [READ]
427 000002 D3.NPE=BIT01 ; NPR UNIBUS PARITY ERROR FLAG (NUPE) [READ]
428 ; CLEAR NUPE [WRITE]
429 000001 D3.TXB=BIT00 ; SET TO KL BYTE TRANSFER MODE [WRITE]
430
431 177704 D3.MBZ=BIT15!BIT14!BIT13!BIT12!BIT11!BIT10!BIT09!BIT08!BIT07!BIT06!BIT02
432
433 000001 D3.RST=D3.TXB ; DIAG WORD 3 RESET BIT
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 12
DEFINE -- LOCAL DEFINITIONS 7709.20
435 ; DEFINE DTE-20 STATUS BITS
436
437 100000 ST.TXD=BIT15 ; TO KL TRANSFER DONE FLAG [READ]
438 ; SET TO KL TRANSFER DONE [WRITE]
439 040000 ST.CTD=BIT14 ; CLEAR TO KL TRANSFER DONE FLAG [WRITE]
440 020000 ST.TXE=BIT13 ; TO KL ERROR DONE FLAG [READ]
441 ; SET TO KL ERROR DONE FLAG [WRITE]
442 010000 ST.RIZ=BIT12 ; DTE-20 RAM LOCATION IS ZEROES [READ]
443 010000 ST.CTE=BIT12 ; CLEAR TO KL ERROR DONE FLAG [WRITE]
444 004000 ST.EDB=BIT11 ; 11 DOORBELL FLAG [READ]
445 ; SET THE 11 DOORBELL FLAG [WRITE]
446 002000 ST.DW1=BIT10 ; YES, THIS BIT IS HERE
447 001000 ST.MPE=BIT09 ; 11 MEMORY PARITY ERROR DURING TO KL XFER [READ]
448 ; CLEAR ST.MPE [WRITE]
449 000400 ST.XDB=BIT08 ; KL DOORBELL FLAG [READ]
450 ; RING THE KL DOORBELL [WRITE]
451 000200 ST.TED=BIT07 ; TO 11 TRANSFER DONE FLAG [READ]
452 ; SET ST.TED [WRITE]
453 000100 ST.EBS=BIT06 ; E BUFFER SELECT [READ]
454 000100 ST.CED=BIT06 ; CLEAR ST.TED [WRITE]
455 000040 ST.NST=BIT05 ; TO 11 XFER STOPPED BECAUSE STOP BIT WAS SET [READ]
456 000040 ST.IEN=BIT05 ; ENABLE DTE-20 TO GENERATE BR REQUESTS IF = 1
457 000020 ST.EPE=BIT04 ; EBUS PARITY ERROR FLAG [READ]
458 ; CLEAR EBUS PARITY ERROR FLAG IF = 1 [WRITE]
459 000010 ST.MOD=BIT03 ; DTE-20 IS PRIVILEGED IF = 0 [READ]
460 ; " " RESTRICTED " " 1 "
461 000010 ST.IDS=BIT03 ; DISABLE DTE-20 BR REQUESTS [WRITE]
462 000004 ST.DXD=BIT02 ; DEPOSIT / EXAMINE DONE FLAG [READ]
463 000004 ST.SEP=BIT02 ; SET EBUS PARITY ERROR IF = 1 [WRITE]
464 000002 ST.TER=BIT01 ; TO 11 BYTE XFER ERROR FLAG [READ]
465 000002 ST.STE=BIT01 ; SET ST.TER IF = 1 [WRITE]
466 000001 ST.ION=BIT00 ; 11 CAN GENERATE BR REQUESTS [READ]
467 000001 ST.CLE=BIT00 ; CLEAR ST.TER IF = 1 [WRITE]
468
469 011121 ST.RST=ST.CTE!ST.MPE!ST.CED!ST.EPE!ST.CLE
470
471 000000 ST.MBZ=0 ; BIT MASK FOR WRITE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 13
DEFINE -- LOCAL DEFINITIONS 7709.20
473 ; DEFINE FLAG BITS IN ".KLFLG"
474
475 100000 KF.CLK=BIT15 ; KL CLOCK IS RUNNING IF .NE. 0
476 040000 KF.RUN=BIT14 ; KL RUN FLOP IS ON IF .NE. 0
477 020000 KF.MRS=BIT13 ; KL MASTER RESET FLOP IS ON IF .NE. 0
478 010000 KF.SIM=BIT12 ; KL IS IN SINGLE INSTRUCTION MODE IF .NE. 0
479 004000 KF.SMC=BIT11 ; KL IS IN SINGLE PULSE MBOX MODE IF .NE. 0
480 002000 KF.SPM=BIT10 ; " " " " " EBOX " " " "
481 001000 KF.BRM=BIT09 ; KL IS IN BURST MODE IF .NE. 0
482 000400 KF.KLO=BIT08 ; KL IS IN KL INSTRUCTION MODE IF .NE. 0
483 000200 KF.CON=BIT07 ; KL IS CONTINUABLE IF .NE. 0
484 000100 KF.CES=BIT06 ; KL IS IN CLOCK ERROR STOP STATE IF .NE. 0
485 000200 KF.DEF=KF.CON ; DEFAULT FLAGS (SEE ".INKLF")
486
487 ; DEFINE BITS IN ".TRKWD"
488
490 000001 TR.FXC=BIT00 ; TRACK FUNCTION EXECUTES IF .NE. 0
491 000002 TR.FRD=BIT01 ; TRACK FUNCTION READS IF .NE. 0
492 000004 TR.FWR=BIT02 ; TRACK FUNCTION EXECUTES IF .NE. 0
493 000010 TR.EXM=BIT03 ; TRACK MEMORY EXAMINES IF .NE. 0
494 000020 TR.DEP=BIT04 ; TRACK MEMORY DEPOSITS IF .NE. 0
495 000040 TR.DTE=BIT05 ; TRACK DTE-20 OPERATIONS IF .NE. 0
496 000077 TR.ALL=TR.FXC!TR.FRD!TR.FWR!TR.EXM!TR.DEP!TR.DTE
498
499 ; DEFINE KL PC FLAGS (FROM "C.MAC" V. 1, EDIT 24 7511.25)
500
501 010000 PC.OVF=BIT12 ; KL OVERFLOW FLAG (BIT 00)
502 004000 PC.CY0=BIT11 ; KL CARRY 0 FLAG (BIT 01)
503 002000 PC.CY1=BIT10 ; KL CARRY 1 FLAG (BIT 02)
504 001000 PC.FOV=BIT09 ; KL FLOATING OVERFLOW FLAG (BIT 03)
505 000400 PC.BIS=BIT08 ; KL BYTE INCREMENT SUPPRESSION FLAG (BIT 04)
506 000200 PC.USR=BIT07 ; KL USER MODE FLAG (BIT 05)
507 000100 PC.UIO=BIT06 ; KL USER IOT MODE FLAG (BIT 06)
508 000040 PC.LIP=BIT05 ; KL LAST INSTRUCTION PUBLIC FLAG (BIT 07)
509 000020 PC.AFI=BIT04 ; KL ADDRESS FAILURE INHIBIT FLAG (BIT 08)
510 000010 PC.AT1=BIT03 ; KL APR TRAP 1 FLAG (BIT 09)
511 000004 PC.AT0=BIT02 ; KL APR TRAP 0 FLAG (BIT 10)
512 000002 PC.FUF=BIT01 ; KL FLOATING UNDERFLOW FLAG (BIT 11)
513 000001 PC.NDV=BIT00 ; KL NO DIVIDE FLAG (BIT 12)
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 14
DEFINE -- LOCAL DEFINITIONS 7709.20
515 ; DEFINE DIAGNOSTIC FUNCTION EXECUTE CODES
516
517 000000 FX.000=0
518 000000 FX.CSP=FX.000 ; STOP THE KL CLOCK
519 000002 FX.001=1*2
520 000002 FX.CST=FX.001 ; START THE KL CLOCK
521 000004 FX.002=2*2
522 000004 FX.MBC=FX.002 ; PULSE THE MBOX CLOCK
523 000006 FX.003=3*2
524 000006 FX.EBC=FX.003 ; PULSE THE EBOX CLOCK
525 000010 FX.004=4*2
526 000010 FX.SYC=FX.004 ; SYNCH THE EBOX CLOCK LOW
527 000012 FX.005=5*2
528 000012 FX.BMC=FX.005 ; BURST THE MBOX CLOCK
529 000014 FX.006=6*2
530 000014 FX.CMR=FX.006 ; CLEAR MASTER RESET STATE
531 000016 FX.007=7*2
532 000016 FX.SMR=FX.007 ; SET MASTER RESET STATE
533
534 000020 FX.010=10*2
535 000020 FX.CRF=FX.010 ; CLEAR THE KL RUN FLOP
536 000022 FX.011=11*2
537 000022 FX.SRF=FX.011 ; SET THE KL RUN FLOP
538 000024 FX.012=12*2
539 000024 FX.CON=FX.012 ; SET THE KL CONTINUE FLOP
540 000026 FX.013=13*2
541 000030 FX.014=14*2
542 000030 FX.UIR=FX.014 ; UNLATCH THE IR
543 000032 FX.015=15*2
544 000032 FX.UDR=FX.015 ; UNLATCH THE DRAM REGISTER
545 000034 FX.016=16*2
546 000036 FX.017=17*2
547
548 000040 FX.020=20*2
549 000042 FX.021=21*2
550 000044 FX.022=22*2
551 000046 FX.023=23*2
552 000050 FX.024=24*2
553 000052 FX.025=25*2
554 000054 FX.026=26*2
555 000056 FX.027=27*2
556
557 000060 FX.030=30*2
558 000062 FX.031=31*2
559 000064 FX.032=32*2
560 000066 FX.033=33*2
561 000070 FX.034=34*2
562 000072 FX.035=35*2
563 000074 FX.036=36*2
564 000076 FX.037=37*2
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 15
DEFINE -- LOCAL DEFINITIONS 7709.20
566 ; DEFINE DIAGNOSTIC FUNCTION WRITE CODES
567
568 000100 FW.040=40*2
569 000102 FW.041=41*2
570 000104 FW.042=42*2
571 000104 FW.LBR=FW.042 ; LOAD BURST COUNTER RIGHT 4 BITS
572 000106 FW.043=43*2
573 000106 FW.LBL=FW.043 ; LOAD BURST COUNTER LEFT 4 BITS
574 000110 FW.044=44*2
575 000110 FW.CSR=FW.044 ; LOAD THE KL CLOCK SOURCE AND RATE
576
577 ; CLOCK SOURCE AND RATE CODES, EBUS 32-33 AND 34-35, RESPECTIVELY,
578 ; IN LOW BYTE OF CLOCK CONTROL WORD (".CLKWD").
579
580 000000 CS.NRM=0&14 ; KL NORMAL CLOCK SOURCE (EBUS 32-33)
581 000004 CS.CS1=4&14 ; KL CLOCK SOURCE 1
582 000010 CS.CS2=10&14 ; KL CLOCK SOURCE 2
583 000004 CS.FST=4&14 ; KL FAST CLOCK SOURCE
584 000004 CS.MGN=CS.FST ; KL MARGIN CLOCK SOURCE
585 000010 CS.EXT=10&14 ; KL EXTERNAL CLOCK SOURCE
586 000014 CS.UDF=14&14 ; UNDEFINED (DEFAULT TO FAST)
587 000014 CS.ALL=CS.CS1!CS.CS2 ; CLOCK SOURCE BIT MASK
588
589 000000 CR.NRM=0&3 ; KL NORMAL CLOCK SOURCE (EBUS 34-35)
590 000001 CR.CR1=1&3 ; KL CLOCK RATE 1
591 000002 CR.CR2=2&3 ; KL CLOCK RATE 2
592 000000 CR.FUL=0&3 ; KL CLOCK FULL SPEED
593 000001 CR.HLF=1&3 ; " " HALF "
594 000002 CR.QTR=2&3 ; " " QRTR "
595 000003 CR.SLO=3&3 ; " " SLOW "
596 000003 CR.ALL=CR.CR1!CR.CR2 ; CLOCK RATE BIT MASK
597
598 000112 FW.045=45*2
599 000112 FW.CDR=FW.045 ; LOAD THE KL CLOCK DISTRIBUTION REGISTER
600
601 ; CLOCK DISTRIBUTION DISABLE CODES, EBUS 33-35 TO THE KL, ALSO IN
602 ; THE HIGH BYTE OF THE CLOCK CONTROL WORD (".CLKWD").
603
604 002000 CD.CRC=<4&7>*400 ; DISABLE CONTROL RAM CLOCKS
605 001000 CD.DPC=<2&7>*400 ; DISABLE DATA PATHS CLOCKS
606 000400 CD.CLC=<1&7>*400 ; DISABLE CONTROL LOGIC CLOCKS
607 000000 CD.NRM=<0&7>*400 ; NORMAL CLOCK ENABLES
608 003400 CD.ALL=<7&7>*400 ; CLOCK DISABLE BIT MASK
609
610 000000 CC.NRM=0 ; NORMAL CLOCK CONTROL WORD
611 003417 CC.ALL=CS.ALL!CR.ALL!CD.ALL ; CLOCK CONTROL BIT MASK
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 16
DEFINE -- LOCAL DEFINITIONS 7709.20
613 000114 FW.046=46*2
614 000114 FW.IPE=FW.046 ; LOAD INTERNAL PARITY ENABLES
615
616 ; INTERNAL KL PARITY ENABLE CODES, EBUS 32 - 35 TO THE KL,
617 ; ALSO IN LOW BYTE OF THE PARITY STOP CONTROL WORD (".PSCWD").
618
619 000010 IP.FMP=10&17 ; FAST MEMORY PARITY STOP ENABLE
620 000004 IP.CRP=4&17 ; CRAM PARITY STOP ENABLE
621 000002 IP.DRP=2&17 ; DRAM PARITY STOP ENABLE
622 000001 IP.FSS=1&17 ; FIELD SERVICE STOP ENABLE
623 000016 IP.NRM=IP.FMP!IP.CRP!IP.DRP
624 000017 IP.ALL=IP.NRM!IP.FSS
625
626 000116 FW.047=47*2
627 000116 FW.APE=FW.047 ; LOAD AR/ARX PARITY ENABLES (ET AL.)
628
629 ; INTERNAL KL PARITY STOP CODES, EBUS 32 - 35 TO KL, "AP.EIP" MUST
630 ; BE SET TO ALLOW "IP.XXX" CONDITIONS TO STOP THE KL CLOCK
631 ; MAINTAINED IN HIGH BYTE OF THE PARITY STOP CONTROL WORD (".PSCWD").
632
633 001000 AP.ARP=<2&17>*400 ; ALLOW AR/ARX PARITY TO CAUSE A
634 ; PAGE FAIL TRAP IN THE KL
635 000400 AP.EIP=<1&17>*400 ; ENABLE INTERNAL PARITY ENABLES TO
636 ; STOP THE KL CLOCK
637 001400 AP.NRM=AP.EIP!AP.ARP ; NORMAL PARITY STOP ENABLES
638
639 001416 PS.NRM=AP.NRM!IP.NRM ; NORMAL PARITY STOP CONTROL WORD
640
641 000120 FW.050=50*2
642 000122 FW.051=51*2
643 000122 FW.CA1=FW.051 ; LOAD LOW CRAM ADDRESS
644 000124 FW.052=52*2
645 000124 FW.CA2=FW.052 ; LOAD HIGH CRAM ADDRESS
646 000126 FW.053=53*2
647 000126 FW.CRD=FW.053 ; LOAD CRAM DISPATCH
648 000130 FW.054=54*2
649 000130 FW.CR4=FW.054 ; LOAD CRAM BITS 60 THRU 78
650 000132 FW.055=55*2
651 000132 FW.CR3=FW.055 ; LOAD CRAM BITS 40 THRU 59
652 000134 FW.056=56*2
653 000134 FW.CR2=FW.056 ; LOAD CRAM BITS 20 THRU 39
654 000136 FW.057=57*2
655 000136 FW.CR1=FW.057 ; LOAD CRAM BITS 00 THRU 19
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 17
DEFINE -- LOCAL DEFINITIONS 7709.20
657 000140 FW.060=60*2
658 000140 FW.DR1=FW.060 ; LOAD DRAM A AND B EVEN
659 000142 FW.061=61*2
660 000142 FW.DR2=FW.061 ; LOAD DRAM A AND B ODD
661 000144 FW.062=62*2
662 000144 FW.DR3=FW.062 ; LOAD DRAM J COMMON
663 000146 FW.063=63*2
664 000146 FW.DJE=FW.063 ; LOAD DRAM J EVEN
665 000150 FW.064=64*2
666 000150 FW.DJO=FW.064 ; LOAD DRAM J ODD
667 000152 FW.065=65*2
668 000152 FW.IOJ=FW.065 ; DISABLE SPECIAL DECODE OF I/O AND JRST
669 000154 FW.066=66*2
670 000154 FW.IAC=FW.066 ; DISABLE IR AC OUTPUTS
671 000156 FW.067=67*2
672 000156 FW.KLO=FW.067 ; ENABLE KL OPCODES AND ACS
673
674 000160 FW.070=70*2
675 000160 FW.CHN=FW.070 ; CHANNEL CONTROL FUNCTIONS
676 000162 FW.071=71*2
677 000162 FW.MBX=FW.071 ; MBOX CONTROL FUNCTIONS
678 000164 FW.072=72*2
679 000166 FW.073=73*2
680 000170 FW.074=74*2
681 000172 FW.075=75*2
682 000174 FW.076=76*2
683 000174 FW.EBL=FW.076 ; EBUS REGISTER LOAD FUNCTION
684 000174 FW.SBR=FW.076 ; SBUS RESET FUNCTION
685 000176 FW.077=77*2
686 000176 FW.LAR=FW.077 ; LOAD AR REGISTER
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 18
DEFINE -- LOCAL DEFINITIONS 7709.20
688 ; DEFINE DIAGNOSTIC FUNCTION READ CODES
689
690 000200 FR.100=100*2
691 000200 FR.PI0=FR.100 ; PI BOARD READ 0
692 000202 FR.101=101*2
693 000202 FR.PI1=FR.101 ; PI BOARD READ 1
694 000204 FR.102=102*2
695 000206 FR.103=103*2
696 000210 FR.104=104*2
697 000212 FR.105=105*2
698 000214 FR.106=106*2
699 000216 FR.107=107*2
700
701 000220 FR.110=110*2
702 000220 FR.APR=FR.110 ; APR STATUS
703 000222 FR.111=111*2
704 000224 FR.112=112*2
705 000226 FR.113=113*2
706 000230 FR.114=114*2
707 000232 FR.115=115*2
708 000234 FR.116=116*2
709 000236 FR.117=117*2
710
711 000240 FR.120=120*2
712 000240 FR.RAR=FR.120 ; ARITHMETIC REGISTER [AR 00 - 35]
713 000242 FR.121=121*2
714 000242 FR.RBR=FR.121 ; BUFFER REGISTER [BR 00 - 35]
715 000244 FR.122=122*2
716 000244 FR.RMQ=FR.122 ; MQ REGISTER [MQ 00 - 35]
717 000246 FR.123=123*2
718 000246 FR.RFM=FR.123 ; FM REGISTER [FM 00 - 35]
719 000250 FR.124=124*2
720 000250 FR.BRX=FR.124 ; BR EXTENSION REGISTER [BRX 00 - 35]
721 000252 FR.125=125*2
722 000252 FR.ARX=FR.125 ; AR EXTENSION REGISTER [ARX 00 - 35]
723 000254 FR.126=126*2
724 000254 FR.ADX=FR.126 ; AD EXTENSION REGISTER [ADX 00 - 35]
725 000256 FR.127=127*2
726 000256 FR.RAD=FR.127 ; ADDER REGISTER [AD 00 - 35]
727
728 000260 FR.130=130*2
729 000260 FR.SC2=FR.130 ; SHIFT COUNT REGISTER 2
730 000260 FR.DA1=FR.130 ; DRAM ADDR 1
731 000262 FR.131=131*2
732 000262 FR.SC1=FR.131 ; SHIFT COUNT REGISTER 1
733 000262 FR.DA2=FR.131 ; DRAM ADDR 2
734 000264 FR.132=132*2
735 000264 FR.FE2=FR.132 ; FLOATING EXPONENT REGISTER 2
736 000266 FR.133=133*2
737 000266 FR.FE1=FR.133 ; FLOATING EXPONENT REGISTER 1
738 000270 FR.134=134*2
739 000272 FR.135=135*2
740 000274 FR.136=136*2
741 000276 FR.137=137*2
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 19
DEFINE -- LOCAL DEFINITIONS 7709.20
743 000300 FR.140=140*2
744 000302 FR.141=141*2
745 000302 FR.CRD=FR.141 ; READ CRAM DISP FIELD
746 000304 FR.142=142*2
747 000304 FR.SR2=FR.142 ; CRAM SBR RET 2
748 000306 FR.143=143*2
749 000306 FR.SR1=FR.143 ; CRAM SBR RET 1
750 000310 FR.144=144*2
751 000310 FR.CA2=FR.144 ; READ CRAM ADDRESS LOW
752 000310 FR.CR4=FR.CA2 ; CRAM DATA 60 - 78
753 000312 FR.145=145*2
754 000312 FR.CA1=FR.145 ; READ CRAM ADDRESS HIGH
755 000312 FR.CR3=FR.CA1 ; CRAM DATA 40 - 59
756 000314 FR.146=146*2
757 000314 FR.CR2=FR.146 ; CRAM DATA 20 - 39
758 000314 FR.CL2=FR.CR2 ; CRAM LOC 05 - 10
759 000316 FR.147=147*2
760 000316 FR.CR1=FR.147 ; CRAM DATA 00 - 19
761 000316 FR.CL1=FR.CR1 ; CRAM LOC 00 - 04
762
763 000320 FR.150=150*2
764 000320 FR.VM0=FR.150 ; VMA REGISTER 0
765 000322 FR.151=151*2
766 000322 FR.VM1=FR.151 ; VMA REGISTER 1
767 000324 FR.152=152*2
768 000324 FR.VM2=FR.152 ; VMA REGISTER 2
769 000326 FR.153=153*2
770 000326 FR.VM3=FR.153 ; VMA REGISTER 3
771 000330 FR.154=154*2
772 000330 FR.VM4=FR.154 ; VMA REGISTER 4
773 000332 FR.155=155*2
774 000332 FR.VM5=FR.155 ; VMA REGISTER 5
775 000334 FR.156=156*2
776 000334 FR.VM6=FR.156 ; VMA REGISTER 6
777 000336 FR.157=157*2
778 000336 FR.VM7=FR.157 ; VMA REGISTER 7
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 20
DEFINE -- LOCAL DEFINITIONS 7709.20
780 000340 FR.160=160*2
781 000342 FR.161=161*2
782 000344 FR.162=162*2
783 000346 FR.163=163*2
784 000350 FR.164=164*2
785 000352 FR.165=165*2
786 000354 FR.166=166*2
787 000356 FR.167=167*2
788 000356 FR.EBS=FR.167 ; [EBUS REG 00 THRU 35]
789
790 000360 FR.170=170*2
791 000362 FR.171=171*2
792 000364 FR.172=172*2
793 000366 FR.173=173*2
794 000370 FR.174=174*2
795 000372 FR.175=175*2
796 000374 FR.176=176*2
797 000376 FR.177=177*2
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 21
DEFINE -- LOCAL DEFINITIONS 7709.20
799 ; DEFINE EVENT FLAG CODES
800
801 000001 E.FHTO=^D1 ; KL HALT TIMEOUT EVENT FLAG
802 000002 E.FCID=^D2 ; CONSOLE DEVICE INPUT DONE EVENT FLAG
803 000003 E.FCOD=^D3 ; CONSOLE DEVICE OUTPUT DONE EVENT FLAG
804 000004 E.FKLN=^D4 ; KLINIK EVENT LOG DONE FLAG
805 000005 E.FLOD=^D5 ; LIST DEVICE OUTPUT DONE FLAG
806 000006 E.FFIL=^D6 ; FILE I/O DONE FLAG
807
808 ; DEFINE LOCAL OFFSETS FOR "QIOW$" DPBS
809
810 000014 Q.IOPL=14 ; **TEMPORARY**
811 000014 Q.IBUF=Q.IOPL ; INPUT BUFFER ADDRESS
812 000014 Q.OBUF=Q.IOPL ; OUTPUT BUFFER ADDRESS
813 000016 Q.BYCT=Q.IOPL+2 ; BUFFER BYTE COUNT (INPUT AND OUTPUT)
814 000020 Q.OVFC=Q.IOPL+4 ; OUTPUT CARRIAGE CONTROL CHARACTER
815
816 ; DEFINE THE LOGICAL UNIT NUMBERS
817
818 000001 CIDLUN=1 ; CONSOLE INPUT DEVICE LUN
819 000002 CODLUN=2 ; CONSOLE OUTPUT DEVICE LUN
820 000003 LSTLUN=3 ; LIST DEVICE LUN
821 000004 LOGLUN=4 ; LOG DEVICE LUN
822 000005 INDLUN=5 ; INDIRECT COMMAND FILE LUN
823
824 ; DEFINE THE VERTICAL FORMAT CODES FOR "QIOW$"
825
826 000000 VF.INT=000 ; <NULL> INTERNAL FORMAT CONTROL
827 000040 VF.SSP=040 ; <SPACE> SINGLE SPACE ALL LINES
828 000060 VF.DSP=060 ; "0" DOUBLE SPACE ALL LINES
829 000061 VF.FFD=061 ; "1" FORM FEED BEFORE OUTPUT
830 000053 VF.OVR=053 ; "+" OVER PRINT THE LINE
831 000044 VF.PRM=044 ; "$" PRINT LINE AS A PROMPT
832
833 ; DEFINE SOME SPECIAL CHARACTERS
834
835 000054 .COMMA=54 ; COMMA
836 000040 .SPACE=40 ; SPACE
837 000033 .ATLMD=33 ; ALT-MODE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 22
DEFINE -- LOCAL DEFINITIONS 7709.20
839 ; DEFINE THE BITS IN THE CHARACTER PROPERTY TABLE ".CHTAB" (Q.V.)
840
841 000000 CH.NUL=0 ; CHARACTER IS NULL
842 000001 CH.ALP=BIT00 ; CHARACTER IS ALPHABETIC
843 000002 CH.NUM=BIT01 ; CHARACTER IS NUMERIC
844 000004 CH.EOL=BIT02 ; CHARACTER MAY END A LINE
845 000010 CH.EOC=BIT03 ; CHARACTER MAY END A COMMAND
846 000020 CH.EOS=BIT04 ; CHARACTER MAY END A SYMBOL
847 000040 CH.PFX=BIT05 ; CHARACTER MAY PREFIX A SYMBOL
848 000100 CH.AOP=BIT06 ; CHARACTER IS AN ARITHMETIC OPERATOR
849 000200 CH.ILL=BIT07 ; CHARACTER IS ILLEGAL
850 000034 CH.END=CH.EOL!CH.EOC!CH.EOS ; CHARACTER IS AN END CHARACTER
851 000003 CH.ANM=CH.ALP!CH.NUM ; CHARACTER IS ALPHANUMERIC
852
853 ; DEFINE THE LEGAL BITS IN THE COMMAND TABLES (Q.V.)
854
855 000000 LG.NUL=0 ; NULL
856 000001 LG.OPR=BIT00 ; COMMAND IS LEGAL IN OPERATOR MODE
857 000002 LG.PRG=BIT01 ; COMMAND IS LEGAL IN PROGRAMMER MODE
858 000004 LG.MNT=BIT02 ; COMMAND IS LEGAL IN MAINTENANACE MODE
859 000010 LG.ARG=BIT03 ; COMMAND MAY ACCEPT ARGUMENTS
860 000020 LG.MAR=BIT04 ; COMMAND MAY ACCEPT MULTIPLE ARGUMENTS
861 000040 LG.MOD=BIT05 ; COMMAND MAY ACCEPT MODIFIERS
862 000100 LG.RNG=BIT06 ; COMMAND MAY ACCEPT RANGE ARGUMENTS
863 000200 LG.STR=BIT07 ; COMMAND MAY ACCEPT STRING ARGUMENTS
864 000400 LG.RPT=BIT08 ; COMMAND MAY BE REPEATED
865 000003 LG.PRM=LG.OPR!LG.PRG ; INSURE COMMAND IS LEGAL IN BOTH MODES
866 000007 LG.ALL=LG.PRM!LG.MNT ; INSURE COMMAND IS LEGAL IN ALL MODES
867
868 ; DEFINE THE TRAP STATUS CODES
869
870 000002 TC.CTC=2 ; CONTROL-C TRAP, ABORT, RESTART, AND RETURN
871 000001 TC.RST=1 ; ABORT PROCESS AND RESTART THE KL
872 000000 TC.ERR=0 ; ABORT PROCESS AND RETURN TO PARSER
873 000377 TC.CON=377 ; REPORT ERROR AND ATTEMPT RECOVERY
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 23
DEFINE -- LOCAL DEFINITIONS 7709.20
875 ; DEFINE KL OPCODES
876
877 000270 ADD=270 ; ADD
878 000273 ADDB=273 ; ADD TO BOTH
879 000271 ADDI=271 ; ADD IMMEDIATE
880 000272 ADDM=272 ; ADD TO MEMORY
881 ;
882 000404 AND=404 ; AND
883 000407 ANDB=407 ; AND TO BOTH
884 000410 ANDCA=410 ; AND COMPLEMENT OF AC
885 000413 ANDCAB=413 ; AND COMPLEMENT OF AC TO BOTH
886 000411 ANDCAI=411 ; AND COMPLEMENT OF AC IMMEDIATE
887 000412 ANDCAM=412 ; AND COMPLEMENT OF AC TO MEMORY
888 000440 ANDCB=440 ; AND COMPLEMENT OF BOTH
889 000443 ANDCBB=443 ; AND COMPLEMENT OF BOTH TO BOTH
890 000441 ANDCBI=441 ; AND COMPLEMENT OF BOTH IMMEDIATE
891 000442 ANDCBM=442 ; AND COMPLEMENT OF BOTH TO MEMORY
892 000420 ANDCM=420 ; AND COMPLEMENT OF MEMORY
893 000423 ANDCMB=423 ; AND COMPLEMENT OF MEMORY TO BOTH
894 000421 ANDCMI=421 ; AND COMPLEMENT OF MEMORY IMMEDIATE
895 000422 ANDCMM=422 ; AND COMPLEMENT OF MEMORY TO MEMORY
896 000405 ANDI=405 ; AND IMMEDIATE
897 000406 ANDM=406 ; AND TO MEMORY
898 ;
899 000253 AOBJN=253 ; ADD 1 TO BOTH HALVES, JUMP IF NEGATIVE
900 000252 AOBJP=252 ; ADD 1 TO BOTH HALVES, JUMP IF POSITIVE
901 ;
902 000340 AOJ=340 ; ADD 1 AND (DON'T) JUMP
903 000344 AOJA=344 ; ADD 1 AND JUMP ALWAYS
904 000342 AOJE=342 ; ADD 1 AND JUMP IF .EQ. 0
905 000347 AOJG=347 ; ADD 1 AND JUMP IF .GT. 0
906 000345 AOJGE=345 ; ADD 1 AND JUMP IF .GE. 0
907 000341 AOJL=341 ; ADD 1 AND JUMP IF .LT. 0
908 000343 AOJLE=343 ; ADD 1 AND JUMP IF .LE. 0
909 000346 AOJN=346 ; ADD 1 AND JUMP IF .NE. 0
910 ;
911 000350 AOS=350 ; ADD 1 AND (DON'T) SKIP
912 000354 AOSA=354 ; ADD 1 AND SKIP ALWAYS
913 000352 AOSE=352 ; ADD 1 AND SKIP IF .EQ. 0
914 000357 AOSG=357 ; ADD 1 AND SKIP IF .GT. 0
915 000355 AOSGE=355 ; ADD 1 AND SKIP IF .GT. 0
916 000351 AOSL=351 ; ADD 1 AND SKIP IF .LT. 0
917 000353 AOSLE=353 ; ADD 1 AND SKIP IF .LE. 0
918 000356 AOSN=356 ; ADD 1 AND SKIP IF .NE. 0
919 ;
920 000240 ASH=240 ; ARITHMETIC SHIFT
921 000244 ASHC=244 ; ARITHMETIC SHIFT COMBINED
922 ;
923 000251 BLT=251 ; BLOCK TRANSFER
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 24
DEFINE -- LOCAL DEFINITIONS 7709.20
925 000300 CAI=300 ; COMPARE AC IMMEDIATE, DON'T SKIP
926 000304 CAIA=304 ; COMPARE AC IMMEDIATE, SKIP ALWAYS
927 000302 CAIE=302 ; COMPARE AC IMMEDIATE, SKIP IF .EQ.
928 000307 CAIG=307 ; COMPARE AC IMMEDIATE, SKIP IF .GT.
929 000305 CAIGE=305 ; COMPARE AC IMMDEIATE, SKIP IF .GE.
930 000301 CAIL=301 ; COMAPRE AC IMMEDIATE, SKIP IF .LT.
931 000303 CAILE=303 ; COMPARE AC IMMEDIATE, SKIP IF .LE.
932 000306 CAIN=306 ; COMPARE AC IMMEDIATE, SKIP IF .NE.
933 ;
934 000040 CALL=040 ; "CALL" UUO
935 000047 CALLI=047 ; "CALLI" UUO
936 ;
937 000310 CAM=310 ; COMPARE AC TO MEMORY, DON'T SKIP
938 000314 CAMA=314 ; COMPARE AC TO MEMORY, ALWAYS SKIP
939 000312 CAME=312 ; COMPARE AC TO MEMORY, SKIP IF .EQ.
940 000317 CAMG=317 ; COMPARE AC TO MEMORY, SKIP IF .GT.
941 000315 CAMGE=315 ; COMPARE AC TO MEMORY, SKIP IF .GE.
942 000311 CAML=311 ; COMPARE AC TO MEMORY, SKIP IF .LT.
943 000313 CAMLE=313 ; COMPARE AC TO MEMORY, SKIP IF .LE.
944 000316 CAMN=316 ; COMPARE AC TO MEMORY, SKIP IF .NE.
945 ;
946 000400 CLEAR=400 ; CLEAR AC
947 000403 CLEARB=403 ; CLEAR BOTH
948 000401 CLEARI=401 ; CLEAR IMMEDIATE
949 000402 CLEARM=402 ; CLEAR MEMORY
950 ;
951 000070 CLOSE=070 ; "CLOSE" UUO
952 ;
953 000110 DFAD=110 ; DOUBLE FLOATING ADD
954 000113 DFDV=113 ; DOUBLE FLOATING DIVIDE
955 000112 DFMP=112 ; DOUBLE FLOATING MULTIPLY
956 000131 DFN=131 ; DOUBLE FLOATING NEGATE
957 000111 DFSB=111 ; DOUBLE FLOATING SUBTRACT
958 ;
959 000234 DIV=234 ; DIVIDE
960 000237 DIVB=237 ; DIVIDE BOTH
961 000235 DIVI=235 ; DIVIDE IMMEDIATE
962 000236 DIVM=236 ; DIVIDE MEMORY
963 ;
964 000120 DMOVE=120 ; DOUBLE MOVE
965 000124 DMOVEM=124 ; DOUBLE MOVE TO MEMORY
966 000121 DMOVN=121 ; DOUBLE MOVE NEGATED
967 000125 DMOVNM=125 ; DOUBLE MOVE NEGATED TO MEMORY
968 ;
969 000137 DPB=137 ; DEPOSIT BYTE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 25
DEFINE -- LOCAL DEFINITIONS 7709.20
971 000077 ENTER=077 ; "ENTER" UUO
972 ;
973 000444 EQV=444 ; EQUIVALENCE TO AC
974 000447 EQVB=447 ; EQUIVALENCE TO BOTH
975 000445 EQVI=445 ; EQUIVALENCE IMMEDIATE
976 000446 EQVM=446 ; EQUIVALENCE TO MEMORY
977 ;
978 000250 EXCH=250 ; EXCHANGE
979 000123 EXTEND=123 ; EXTEND
980 ;
981 000140 FAD=140 ; FLOATING ADD
982 000143 FADB=143 ; FLOATING ADD BOTH
983 000141 FADL=141 ; FLOATING ADD LONG
984 000142 FADM=142 ; FLOATING ADD MEMORY
985 ;
986 000144 FADR=144 ; FLOATING ADD, ROUNDED
987 000147 FADRB=147 ; FLOATING ADD, ROUNDED TO BOTH
988 000145 FADRI=145 ; FLOATING ADD, ROUNDED IMMEDIATE
989 000146 FADRM=146 ; FLOATING ADD, ROUNDED TO MEMORY
990 ;
991 000170 FDV=170 ; FLOATING DIVIDE
992 000173 FDVB=173 ; FLOATING DIVIDE TO BOTH
993 000171 FDVL=171 ; FLOATING DIVIDE LONG
994 000172 FDVM=172 ; FLOATING DIVIDE TO MEMORY
995 ;
996 000174 FDVR=174 ; FLOATING DIVIDE, ROUNDED
997 000177 FDVRB=177 ; FLOATING DIVIDE, ROUNDED TO BOTH
998 000175 FDVRI=175 ; FLOATING DIVIDE, ROUNDED IMMMEDIATE
999 000176 FDVRM=176 ; FLOATING DIVIDE, ROUNDED TO MEMORY
1000 ;
1001 000122 FIX=122 ; FIX
1002 000126 FIXR=126 ; FIX AND ROUND
1003 ;
1004 000127 FLTR=127 ; FLOAT AND ROUND
1005 ;
1006 000160 FMP=160 ; FLOATING MULTIPLY
1007 000163 FMPB=163 ; FLOATING MULTIPLY TO BOTH
1008 000161 FMPL=161 ; FLOATING MULTIPLY LONG
1009 000162 FMPM=162 ; FLOATING MULTIPLY TO MEMORY
1010 ;
1011 000164 FMPR=164 ; FLOATING MUTIPLY ROUNDED
1012 000167 FMPRB=167 ; FLOATING MULTIPLY ROUNDED, TO BOTH
1013 000165 FMPRI=165 ; FLOATING MULTIPLY ROUNDED, IMMEDIATE
1014 000166 FMPRM=166 ; FLOATING MULTIPLY ROUNDED, TO MEMORY
1015 ;
1016 000150 FSB=150 ; FLOATING SUBTRACT
1017 000153 FSBB=153 ; FLOATING SUBTRACT TO BOTH
1018 000151 FSBL=151 ; FLOATING SUBTRACT LONG
1019 000152 FSBM=152 ; FLOATING SUBTRACT TO MEMORY
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 26
DEFINE -- LOCAL DEFINITIONS 7709.20
1021 000154 FSBR=154 ; FLOATING SUBTRACT ROUNDED
1022 000157 FSBRB=157 ; FLOATING SUBTRACT ROUNDED, TO BOTH
1023 000155 FSBRI=155 ; FLOATING SUBTRACT ROUNDED, IMMEDIATE
1024 000156 FSBRM=156 ; FLOATING SUBTRACT ROUNDED, TO MEMORY
1025 ;
1026 000132 FSC=132 ; FLOATING SCALE
1027 ;
1028 000062 GETSTS=062 ; "GETSTS" UUO
1029 ;
1030 000500 HLL=500 ; HALFWORD LEFT TO LEFT
1031 000530 HLLE=530 ; " " " " EXTEND
1032 000531 HLLEI=531 ; " " " " " IMMEDIATE
1033 000532 HLLEM=532 ; " " " " " TO MEMORY
1034 000533 HLLES=533 ; " " " " " TO SELF
1035 ;
1036 000501 HLLI=501 ; HALFWORD LEFT TO LEFT IMMEDIATE
1037 000502 HLLM=502 ; " " " " TO MEMORY
1038 ;
1039 000520 HLLO=520 ; " " " " ONES
1040 000521 HLLOI=521 ; " " " " " IMMEDIATE
1041 000522 HLLOM=522 ; " " " " " MEMORY
1042 000523 HLLOS=523 ; " " " " " SELF
1043 ;
1044 000503 HLLS=503 ; HALFWORD LEFT TO LEFT SELF
1045 ;
1046 000510 HLLZ=510 ; HALFWORD LEFT TO LEFT ZERO, ET AL.
1047 000511 HLLZI=511
1048 000512 HLLZM=512
1049 000513 HLLZS=513
1050 ;
1051 000544 HLR=544 ; HALFWORD LEFT TO RIGHT
1052 ;
1053 000574 HLRE=574 ; HALFWORD LEFT TO RIGHT EXTEND, ET AL.
1054 000575 HLREI=575
1055 000576 HLREM=576
1056 000577 HLRES=577
1057 ;
1058 000564 HLRO=564 ; HALFWORD LEFT TO RIGHT ONES, ET AL.
1059 000565 HLROI=565
1060 000566 HLROM=566
1061 000567 HLROS=567
1062 ;
1063 000547 HLRS=547 ; HALFWORD LEFT TO RIGHT SELF
1064 ;
1065 000554 HLRZ=554 ; HALFWORD LEFT TO RIGHT ZEROS, ET AL.
1066 000555 HLRZI=555
1067 000556 HLRZM=556
1068 000557 HLRZS=557
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 27
DEFINE -- LOCAL DEFINITIONS 7709.20
1070 000504 HRL=504 ; HALFWORD RIGHT TO LEFT
1071 ;
1072 000534 HRLE=534 ; HALFWORD RIGHT TO LEFT EXTEND, ET AL.
1073 000535 HRLEI=535
1074 000536 HRLEM=536
1075 000537 HRLES=537
1076 ;
1077 000505 HRLI=505 ; HALFWORD RIGHT TO LEFT IMMEDIATE
1078 000506 HRLM=506 ; " " " " MEMORY
1079 ;
1080 000564 HRLO=564 ; HALFWORD RIGHT TO LEFT ONES, ET AL.
1081 000565 HRLOI=565
1082 000566 HRLOM=566
1083 000567 HRLOS=567
1084 ;
1085 000507 HRLS=507 ; HALFWORD RIGHT TO LEFT SELF
1086 ;
1087 000514 HRLZ=514 ; HALFWORD RIGHT TO LEFT ZERO, ET AL.
1088 000515 HRLZI=515
1089 000516 HRLZM=516
1090 000517 HRLZS=517
1091 ;
1092 000540 HRR=540 ; HALFWORD RIGHT TO RIGHT
1093 ;
1094 000570 HRRE=570 ; HALFWORD RIGHT TO RIGHT EXTEND, ET AL.
1095 000571 HRREI=571
1096 000572 HRREM=572
1097 000573 HRRES=573
1098 ;
1099 000541 HRRI=541 ; HALFWORD RIGHT TO RIGHT IMMEDIATE
1100 000542 HRRM=542 ; " " " " MEMORY
1101 ;
1102 000560 HRRO=560 ; HALFWORD RIGHT TO RIGHT ONES, ET AL.
1103 000561 HRROI=561
1104 000562 HRROM=562
1105 000563 HRROS=563
1106 ;
1107 000543 HRRS=543
1108 ;
1109 000550 HRRZ=550 ; HALFWORD RIGHT TO RIGHT ZERO, ET AL.
1110 000551 HRRZI=551
1111 000552 HRRZM=552
1112 000553 HRRZS=553
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 28
DEFINE -- LOCAL DEFINITIONS 7709.20
1114 000133 IBP=133 ; INCREMENT BYTE POINTER
1115 ;
1116 000230 IDIV=230 ; INTEGER DIVIDE
1117 000233 IDIVB=233 ; " " BOTH
1118 000231 IDIVI=231 ; " " IMMEDIATE
1119 000232 IDIVM=232 ; " " MEMORY
1120 ;
1121 000136 IDPB=136 ; INCREMENT AND DEPOSIT BYTE
1122 ;
1123 000134 ILDB=134 ; DECREMENT AND LOAD BYTE
1124 ;
1125 000220 IMUL=220 ; INTEGER MULTIPLY
1126 000223 IMULB=223 ; " " BOTH
1127 000221 IMULI=221 ; " " IMMEDIATE
1128 000222 IMULM=222 ; " " MEMORY
1129 ;
1130 000056 IN=056 ; "IN" UUO
1131 000064 INBUF=064 ; "INBUF" UUO
1132 000041 INIT=041 ; "INIT" UUO
1133 000066 INPUT=066 ; "INPUT" UUO
1134 ;
1135 000434 IOR=434 ; INCLUSIVE OR, ET AL.
1136 000437 IORB=437
1137 000435 IORI=435
1138 000436 IORM=436
1139 ;
1140 000255 JFCL=255 ; JUMP ON FLAGS AND CLEAR
1141 ;
1142 000243 JFFO=243 ; JUMP IF FOUND FIRST 1
1143 ;
1144 000267 JRA=267 ; JUMP AND RESTORE AC
1145 ;
1146 000254 JRST=254 ; JUMP AND RESTORE (PC FLAGS)
1147 ;
1148 000266 JSA=266 ; JUMP AND SAVE AC
1149 ;
1150 000265 JSP=265 ; JUMP AND SAVE PC
1151 ;
1152 000264 JSR=264 ; JUMP TO SUBROUTINE
1153 ;
1154 000104 JSYS=104 ; JSYS CALL
1155 ;
1156 000320 JUMP=320 ; JUMP (NEVER)
1157 000324 JUMPA=324 ; JUMP ALWAYS
1158 000322 JUMPE=322 ; JUMP IF AC .EQ. 0
1159 000327 JUMPG=327 ; JUMP IF AC .GT. 0
1160 000325 JUMPGE=325 ; JUMP IF AC .GE. 0
1161 000321 JUMPL=321 ; JUMP IF AC .LT. 0
1162 000323 JUMPLE=323 ; JUMP IF AC .LE. 0
1163 000326 JUMPN=326 ; JUMP IF AC .NE. 0
1164 ;
1165 000700 KLIOT=700 ; KL I/O INSTRUCTION BASE
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 29
DEFINE -- LOCAL DEFINITIONS 7709.20
1167 000135 LDB=135 ; LOAD BYTE
1168 ;
1169 000076 LOOKUP=076 ; "LOOKUP" UUO
1170 ;
1171 000242 LSH=242 ; LOGICAL SHIFT
1172 000246 LSHC=246 ; LOGICAL SHIFT COMBINED
1173 ;
1174 000257 MAP=257 ; MAP PAGED ADDRESS
1175 ;
1176 000200 MOVE=200 ; MOVE
1177 000201 MOVEI=201 ; MOVE IMMEDIATE
1178 000202 MOVEM=202 ; MOVE TO MEMORY
1179 000203 MOVES=203 ; MOVE TO SELF
1180 ;
1181 000214 MOVM=214 ; MOVE MAGNITUDE, ET AL.
1182 000215 MOVMI=215
1183 000216 MOVMM=216
1184 000217 MOVMS=217
1185 ;
1186 000210 MOVN=210 ; MOVE NEGATED, ET AL.
1187 000211 MOVNI=211
1188 000212 MOVNM=212
1189 000213 MOVNS=213
1190 ;
1191 000204 MOVS=204 ; MOVE SWAPPED, ET AL.
1192 000205 MOVSI=205
1193 000206 MOVSM=206
1194 000207 MOVSS=207
1195 ;
1196 000224 MUL=224 ; MULTIPLY
1197 000227 MULB=227 ; MULTIPLY BOTH
1198 000225 MULI=225 ; MULTIPLY IMMEDIATE
1199 000226 MULM=226 ; MULTIPLY MEMORY
1200 ;
1201 000050 OPEN=050 ; "OPEN" UUO
1202 ;
1203 000434 OR=IOR ; (INCLUSIVE) OR, ET AL.
1204 000437 ORB=IORB
1205 ;
1206 000454 ORCA=454 ; OR WITH COMPLEMENT OF AC
1207 000457 ORCAB=457 ; " " " " " BOTH
1208 000455 ORCAI=455 ; " " " " " IMMEDIATE
1209 000456 ORCAM=456 ; " " " " " MEMORY
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 30
DEFINE -- LOCAL DEFINITIONS 7709.20
1211 000470 ORCB=470 ; OR WITH COMPLEMENT OF BOTH, ET AL.
1212 000473 ORCBB=473
1213 000471 ORCBI=471
1214 000472 ORCBM=472
1215 ;
1216 000464 ORCM=464 ; OR WITH COMPLEMENT OF MEMORY, ET AL.
1217 000467 ORCMB=467
1218 000465 ORCMI=465
1219 000466 ORCMM=466
1220 ;
1221 000435 ORI=IORI ; (INCLUSIVE) OR, ET AL.
1222 000436 ORM=IORM
1223 ;
1224 000057 OUT=057 ; "OUT" UUO
1225 000065 OUTBUF=065 ; "OUTBUF" UUO
1226 000067 OUTPUT=067 ; "OUTPUT" UUO
1227 ;
1228 000262 POP=262 ; POP
1229 000263 POPJ=263 ; POP (RETURN) AND JUMP
1230 ;
1231 000261 PUSH=261 ; PUSH
1232 000260 PUSHJ=260 ; PUSH (RETURN) AND JUMP
1233 ;
1234 000071 RELEAS=071 ; "RELEAS(E)" UUO
1235 000055 RENAME=055 ; "RENAME" UUO
1236 ;
1237 000241 ROT=241 ; ROTATE
1238 000245 ROTC=245 ; ROTATE COMBINED
1239 ;
1240 000424 SETA=424 ; SET TO AC
1241 000427 SETAB=427 ; " " " BOTH
1242 000425 SETAI=425 ; " " " IMMEDIATE
1243 000426 SETAM=426 ; " " " MEMORY
1244 ;
1245 000450 SETCA=450 ; SET TO COMPLEMENT OF AC, ET AL.
1246 000453 SETCAB=453
1247 000451 SETCAI=451
1248 000452 SETCAM=452
1249 ;
1250 000460 SETCM=460 ; SET TO COMLEMENT OF MEMORY, ET AL.
1251 000463 SETCMB=463
1252 000461 SETCMI=461
1253 000462 SETCMM=462
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 31
DEFINE -- LOCAL DEFINITIONS 7709.20
1255 000414 SETM=414 ; SET TO MEMORY, ET AL
1256 000417 SETMB=417
1257 000415 SETMI=415
1258 000416 SETMM=416
1259 ;
1260 000474 SETO=474 ; SET TO ONES, ET AL.
1261 000477 SETOB=477
1262 000475 SETOI=475
1263 000476 SETOM=476
1264 ;
1265 000060 SETSTS=060 ; "SETSTS" UUO
1266 ;
1267 000400 SETZ=400 ; SET TO ZEROS, ET AL
1268 000403 SETZB=403
1269 000401 SETZI=401
1270 000402 SETZM=402
1271 ;
1272 000330 SKIP=330 ; SKIP (NEVER)
1273 000334 SKIPA=334 ; SKIP ALWAYS
1274 000332 SKIPE=332 ; SKIP IF MEMORY .EQ. 0
1275 000337 SKIPG=337 ; SKIP IF MEMORY .GT. 0
1276 000335 SKIPGE=335 ; SKIP IF MEMORY .GE. 0
1277 000331 SKIPL=331 ; SKIP IF MEMORY .LT. 0
1278 000333 SKIPLE=333 ; SKIP OF MEMORY .LE. 0
1279 000336 SKIPN=336 ; SKIP IF MEMORY .NE. 0
1280 ;
1281 000360 SOJ=360 ; SUBTRACT 1 AND NEVER JUMP
1282 000364 SOJA=364 ; SUBTRACT 1 (FROM AC) AND ALWAYS JUMP
1283 000362 SOJE=362 ; SUBTRACT 1 AND JUMP IF AC .EQ. 0
1284 000367 SOJG=367 ; SUBTRACT 1 AND JUMP IF AC .GT. 0
1285 000365 SOJGE=365 ; SUBTRACT 1 AND JUMP IF AC .GE. 0
1286 000361 SOJL=361 ; SUBTRACT 1 AND JUMP IF AC .LT. 0
1287 000363 SOJLE=363 ; SUBTRACT 1 AND JUMP IF AC .LE. 0
1288 000366 SOJN=366 ; SUBTRACT 1 AND JUMP IF AC .NE. 0
1289 ;
1290 000370 SOS=370 ; SUBTRACT 1 (FROM MEMORY) AND NEVER SKIP
1291 000374 SOSA=374 ; SUBTRACT 1 AND ALWAYS SKIP
1292 000372 SOSE=372 ; SUBTRACT 1 AND SKIP IF .EQ. 0
1293 000377 SOSG=377 ; SUBTRACT 1 AND SKIP IF .GT. 0
1294 000375 SOSGE=375 ; SUBTRACT 1 AND SKIP IF .GE. 0
1295 000371 SOSL=371 ; SUBTRACT 1 AND SKIP IF .LT. 0
1296 000373 SOSLE=373 ; SUBTRACT 1 AND SKIP IF .LE. 0
1297 000376 SOSN=376 ; SUBTRACT 1 AND SKIP IF .NE. 0
1298 ;
1299 000061 STATO=061 ; "STATO" UUO
1300 000062 STATUS=062 ; "STATUS" UUO
1301 000063 STATZ=063 ; "STATZ" UUO
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 32
DEFINE -- LOCAL DEFINITIONS 7709.20
1303 000274 SUB=274 ; SUBTRACT
1304 000277 SUBB=277 ; SUBTRACT BOTH
1305 000275 SUBI=275 ; SUBTRACT IMMEDIATE
1306 000276 SUBM=276 ; SUBTRACT MEMORY
1307 ;
1308 000106 SXCT=106 ; SECTION EXECUTE
1309 ;
1310 000650 TDC=650 ; TEST DIRECT COMPLEMENT NEVER SKIP
1311 000654 TDCA=654 ; " " " SKIP ALWAYS
1312 000652 TDCE=652 ; " " " " ON ZERO
1313 000656 TDCN=656 ; " " " " ON NON-ZERO
1314 ;
1315 000610 TDN=610 ; TEST DIRECT NO MODIFICATION, ET AL.
1316 000614 TDNA=614
1317 000612 TDNE=612
1318 000616 TDNN=616
1319 ;
1320 000670 TDO=670 ; TEST DIRECT ONES, ET AL.
1321 000674 TDOA=674
1322 000672 TDOE=672
1323 000676 TDON=676
1324 ;
1325 000630 TDZ=630 ; TEST DIRECT ZEROS, ET AL.
1326 000634 TDZA=634
1327 000632 TDZE=632
1328 000636 TDZN=636
1329 ;
1330 000641 TLC=641 ; TEST LEFT COMPLEMENT, ET AL.
1331 000645 TLCA=645
1332 000643 TLCE=643
1333 000647 TLCN=647
1334 ;
1335 000601 TLN=601 ; TEST LEFT NO MODIFICATION, ET AL.
1336 000605 TLNA=605
1337 000603 TLNE=603
1338 000607 TLNN=607
1339 ;
1340 000661 TLO=661 ; TEST LEFT ONES, ET AL.
1341 000665 TLOA=665
1342 000663 TLOE=663
1343 000667 TLON=667
1344 ;
1345 000621 TLZ=621 ; TEST LEFT ZEROS, ET AL.
1346 000625 TLZA=625
1347 000623 TLZE=623
1348 000627 TLZN=627
1349 ;
1350 000640 TRC=640 ; TEST RIGHT COMPLEMENT, ET AL.
1351 000644 TRCA=644
1352 000642 TRCE=642
1353 000646 TRCN=646
DEFINE -- LOCAL DEFINITION MODU MACRO M1113 10-NOV-81 17:44 PAGE 33
DEFINE -- LOCAL DEFINITIONS 7709.20
1355 000600 TRN=600 ; TEST RIGHT NO MODIFICATION, ET AL.
1356 000604 TRNA=604
1357 000602 TRNE=602
1358 000606 TRNN=606
1359 ;
1360 000660 TRO=660 ; TEST RIGHT ONES, ET AL.
1361 000664 TROA=664
1362 000662 TROE=662
1363 000666 TRON=666
1364 ;
1365 000620 TRZ=620 ; TEST RIGHT ZEROS, ET AL.
1366 000624 TRZA=624
1367 000622 TRZE=622
1368 000626 TRZN=626
1369 ;
1370 000651 TSC=651 ; TEST SWAPPED COMLEMENT, ET AL.
1371 000655 TSCA=655
1372 000653 TSCE=653
1373 000657 TSCN=657
1374 ;
1375 000611 TSN=611 ; TEST SWAPPED NO MODIFICATION, ET AL.
1376 000615 TSNA=615
1377 000613 TSNE=613
1378 000617 TSNN=617
1379 ;
1380 000671 TSO=671 ; TEST SWAPPED ONES, ET AL.
1381 000675 TSOA=675
1382 000673 TSOE=673
1383 000677 TSON=677
1384 ;
1385 000631 TSZ=631 ; TEST SWAPPED ZEROS, ET AL.
1386 000635 TSZA=635
1387 000633 TSZE=633
1388 000637 TSZN=637
1389 ;
1390 000051 TTCALL=051 ; "TTCALL" UUO
1391 ;
1392 000073 UGETF=073 ; "UGETF" UUO
1393 ;
1394 000100 UJEN=100 ; "UJEN" CALL
1395 ;
1396 000074 USETI=074 ; "USETI" UUO
1397 000075 USETO=075 ; "USETO" UUO
1398 ;
1399 000256 XCT=256 ; EXECUTE
1400 ;
1401 000430 XOR=430 ; EXCLUSIVE OR, ET AL.
1402 000433 XORB=433
1403 000431 XORI=431
1404 000432 XORM=432
1405
1406 .SBTTL COPYRIGHT PAGE
1407
1409 .TITLE DATAB -- COMMAND PARSER DATA BASE 7709.20
1410
1411 .IDENT "006130"
1412
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 33-1
COPYRIGHT PAGE
1413 ;
1414 ; COPYRIGHT (C) 1975, 1979 BY
1415 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
1416 ;
1417 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
1418 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
1419 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
1420 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
1421 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
1422 ;
1423 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
1424 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
1425 ; CORPORATION.
1426 ;
1427 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
1428 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
1429 ;
1430 ; MODULE: COMMAND PARSER DATA BASE
1431 ;
1432 ; VERSION: 06-13
1433 ;
1434 ; AUTHOR: R. BELANGER
1435 ;
1436 ; DATE: 7709.20
1437 ;
1438 ; THIS MODULE CONTAINS:
1439 ;
1440 ; 1) THE IMPURE DATA BASE FOR THE COMMAND PARSER
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 34
COPYRIGHT PAGE
1442 .MACRO PARVR$ KEY,FRM,VER,EDT,NUM
1443 .IF B,NUM
1444 .IF NB,FRM
1445 PARVR$ \KEY,\FRM,\VER,\EDT,0
1446 .IFF
1447 PARVR$ \KEY,200,\VER,\EDT,0
1448 .ENDC
1449 .MEXIT
1450 .IFF
1451 .IF GE,VER-10
1452 .IF GE,EDT-10
1453 .ASCIZ <KEY><FRM>\'VER'-'EDT'\<200>
1454 .IFF
1455 .ASCIZ <KEY><FRM>\'VER'-0'EDT'\<200>
1456 .ENDC
1457 .IFF
1458 .IF GE,EDT-10
1459 .ASCIZ <KEY><FRM>\0'VER'-'EDT'\<200>
1460 .IFF
1461 .ASCIZ <KEY><FRM>\0'VER'-0'EDT'\<200>
1462 .ENDC
1463 .ENDC
1464 .ENDC
1465 .ENDM PARVR$
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 35
DATAB -- COMMAND PARSER IMPURE DATA BASE 7709.20
1467 .SBTTL DATAB -- COMMAND PARSER IMPURE DATA BASE 7709.20
1468
1469 ; COMMAND PARSER VARIABLES ARE MAINTAINED IN THIS AREA
1470
1471 000000 .PSECT DATA
1472
1473 000000 .APRWD::
1474 000000 000000 .WORD 0 ; KL APR ERROR STATUS WORD
1475 000002 .CCMDN::
1476 000002 000021' .WORD PARNAM ; POINTER TO CURRENT COMMAND NAME
1477 000004 .CISTS::
1478 000004 000000 000000 .WORD 0,0 ; I/O STATUS BLOCK FOR CONSOLE INPUT
1479 000010 .CLKWD::
1480 000010 100000 .WORD BIT15 ; KL CLOCK CONTROL WORD
1481 000012 .COSTS::
1482 000012 000000 000000 .WORD 0,0 ; I/O STATUS BLOCK FOR CONSOLE OUTPUT
1483 000016 .CRAMA::
1484 000016 000000 .WORD 0 ; KL CRAM ADDRESSS
1485 000020 .CRAMR::
1486 000020 000000 000000 000000 .WORD 0,0,0 ; BLOCK FOR KL CRAM READ
1487 000026 000000 000000 000000 .WORD 0,0,0
1488 000034 000000 000000 000000 .WORD 0,0,0
1489 000042 .CRAMW::
1490 000042 000000 000000 000000 .WORD 0,0,0 ; BLOCK FOR CRAM WRITE
1491 000050 000000 000000 000000 .WORD 0,0,0
1492 000056 000000 000000 000000 .WORD 0,0,0
1494 000064 .DBGSW::
1495 000064 000000 .WORD 0 ; DEBUG SWITCH
1497 000066 .DPBFR::
1498 000066 000000 000000 000000 .WORD 0,0,0 ; KL DEPOSIT DATA BUFFER
1499 000074 .DPBFX::
1500 000074 000000 000000 000000 .WORD 0,0,0 ; KL AUXILLIARY DEPOSIT DATA BUFFER
1509 000102 .EDELA::
1510 000102 000000 .WORD 0 ; LAST PDP-11 EXAMINE / DEPOSIT ADDRESS
1511 000104 .EDKLA::
1512 000104 000000 000000 000000 .WORD 0,0,0 ; KL EXAMINE / DEPOSIT ADDRESS BUFFER
1513 000112 .EDKLX::
1514 000112 000000 000000 000000 .WORD 0,0,0 ; KL AUXILLIARY EXAM / DEPOS ADDRESS BUFFER
1515 000120 .ELDDW::
1516 000120 000000 .WORD 0 ; LAST PDP-11 DEPOSIT DATA
1517 000122 .ELEDW::
1518 000122 000000 .WORD 0 ; LAST PDP-11 EXAMINE DATA
1519 000124 .EXBFR::
1520 000124 000000 000000 000000 .WORD 0,0,0 ; KL EXAMINE DATA BUFFER
1521 000132 .INCHC::
1522 000132 000000 .WORD 0 ; INPUT CHARACTER COUNT
1523 000134 .IRADX::
1524 000134 000010 .WORD ^D8 ; INPUT RADIX
1525 000136 .KLINC::
1526 000136 000001 000000 000000 .WORD ^D1,0,0 ; KL EXAMINE DEPOSIT INCREMENT
1527 000144 .KLEDF:: ; [5.1006]KLE DEFAULT COMMAND FLAG
1528 000144 000001 .WORD 1
1529 000146 .KLEPT:: ; [5.1006]DEFAULT COMMAND TABLE POINTER
1530 000146 000000 .WORD 0
1531 000150 .KLEVL:: ; [5.1006]POINTER VALID FLAG
1532 000150 000 .BYTE 0
1533 000151 .KLSNP:: ; [5.1006]SNAPSHOT COMMAND IN PROGRESS
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 35-1
DATAB -- COMMAND PARSER IMPURE DATA BASE 7709.20
1534 000151 000 .BYTE 0
1535 000152 .PASS:: ; [4.1.1049]FM SWEEP PASS FLAG
1536 000152 000000 .WORD 0
1537 000154 .OUTLG::
1538 000154 000 .BYTE 0 ; [5.1000]LOG OUTPUT FLAG
1539 000155 .OUTLP::
1540 000155 000 .BYTE 0 ; [5.1000]PRINT OUTPUT FLAG
1541 000156 .OUTTY::
1542 000156 001 .BYTE 1 ; [5.1000]TYPE OUTPUT FLAG
1543 .EVEN
1544 000160 .LDSTS::
1545 000160 000000 000000 .WORD 0,0 ; I/O STATUS BLOCK FOR LIST DEVICE
1546 000164 .LGLWD::
1547 000164 000000 .WORD 0 ; LEGAL BITS OF CURRENT COMMAND
1548 000166 .LDZFL::
1549 000166 177777 .WORD -^D1 ; PRINT LEADING ZEROES FLAG
1550 000170 .MEMFL::
1551 000170 000000 .WORD 0 ; EXAMINE DEPOSIT MEMORY OFFSET
1552 000172 .NOTSW::
1553 000172 000000 .WORD 0 ; "NOT" SWITCH
1554 000174 .ORADX::
1555 000174 000010 .WORD ^D8 ; OUTPUT RADIX
1556 000176 .PEWRD::
1557 000176 000000 .WORD 0 ; KL PARITY ERROR FLAGS
1558 000200 .PITAB::
1559 000200 000000 000000 .WORD 0,0 ; EXAMINE PI DATA BLOCK
1560 000204 .PSCWD::
1561 000204 100000 .WORD BIT15 ; KL PARITY STOP CONTROL WORD
1562 000206 .RDXSV::
1563 000206 000010 .WORD ^D8 ; SAVED RADIX
1564 000210 .RELWD::
1565 000210 000000' .WORD .APRWD ; RELOCATION VALUE
1566 000212 .RPTCT::
1567 000212 000000 000000 000000 .WORD 0,0,0 ; REPEAT COUNT
1568 000220 .RPTPT::
1569 000220 000000 .WORD 0 ; POINTER TO STACKED REPEAT COUNT
1570 000222 .STRTV::
1571 000222 010340' .WORD .START ; START VECTOR
1572 000224 .SVESP::
1573 000224 000000 .WORD 0 ; TO REINIT STACK POINTER
1574 000226 .SVKLF::
1575 000226 000000 .WORD 0 ; SAVED COPY OF ".KLFLG"
1576 000230 .SWPIP:: ; SWEEP IN PROGRESS FLAG
1577 000230 000000 .WORD 0
1579 000232 .TRKWD::
1580 000232 000000 .WORD 0 ; "TRACK" FLAGS
1582 000234 .TRP4V::
1583 000234 001352' .WORD .PTOAT ; TRAP AT 4 VECTOR
1584 000236 .TRPEC::
1585 000236 000000 .WORD 0 ; ERROR CODE RETURNED FROM TRAP
1586 000240 .TRPIP::
1587 000240 000002 .WORD ^D2 ; TRAP IN PROGRESS INTERLOCK
1588 000242 .TRPPC::
1589 000242 000000 .WORD 0 ; TRAP PC
1590 000244 .TRPPS::
1591 000244 000000 .WORD 0 ; TRAP PSW
1592 000246 .TRPSB::
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 35-2
DATAB -- COMMAND PARSER IMPURE DATA BASE 7709.20
1593 000246 000000 .WORD 0 ; TRAP STATUS BYTE
1594 000250 .TRPTV::
1595 000250 000000 .WORD 0 ; TRAP TRAP VECTOR
1596 000252 .TYOBC::
1597 000252 000204 .WORD ^D132 ; CONSOLE OUTPUT BYTE COUNT
1598 000254 .TYOBP::
1599 000254 000544' .WORD .COBFR ; CONSOLE OUTPUT BYTE POINTER
1600 000256 .VFYFL::
1601 000256 000000 .WORD 0 ; DEPOSIT VERIFY FLAG
1602 000260 DATABX::
1603 000260 000137 000000G JMP .INICP ; EXIT TO INIT
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 36
.SSTTB -- SYNCHRONOUS SYSTEM TRAP VECTOR TABLE 7709.20
1605 .SBTTL .SSTTB -- SYNCHRONOUS SYSTEM TRAP VECTOR TABLE 7709.20
1606
1607 ; +
1608 ; .SSTTB -- SYNCHRONOUS SYSTEM TRAP VECTOR TABLE.
1609 ;
1610 ; THESE ARE THE ENTRY POINTS FOR ALL SYNCHRONOUS TRAPS IN THE KL FRONT
1611 ; END COMMAND PARSER. THE PARSER USES SYNCHRONOUS TRAPS, (SST'S),
1612 ; PRIMARILY TO HANDLE INTERNAL ERRORS VIA THE "TRAP" INSTRUCTION. SST'S
1613 ; MAY ALSO BE USED TO HANDLE ODD ADDRESS TRAPS, BREAKPOINTS, AND OTHER
1614 ; ERROR CONDITIONS, AS WELL AS THE PREVIOUSLY MENTIONED ERROR TRAPS.
1615 ;
1616 ; SYNCHRONOUS TRAPS ARE ENABLED BY THE "SVTK$" DIRECTIVE (Q.V.) AS
1617 ; ALLOWED BY THE ENTRIES IN ".SSTTB", THE SST VECTOR TABLE, BELOW.
1618 ; A NON-ZERO ENTRY IN ".SSTTB" INDICATES THAT CONTROL IS TO BE PASSED
1619 ; TO THE ADDRESS IN THAT ENTRY UPON OCCURANCE OF THE ASSOCIATED
1620 ; CONDITION. A ZERO ENTRY IN THE VECTOR TABLE INDICATES THAT THE
1621 ; SYSTEM IS TO HANDLE THE ASSOCIATED CONDITION.
1622 ;
1623 ; THE FORMAT OF THE SST VECTOR TABLE IS AS FOLLOWS:
1624 ;
1625 ; !===============================================!
1626 ; 00 ! ODD ADDRESS TRAP HANDLER ADDRESS !
1627 ; !-----------------------------------------------!
1628 ; 02 ! MEMORY PROTECTION VIOLATION HANDLER ADDRESS !
1629 ; !-----------------------------------------------!
1630 ; 04 ! T-BIT TRAP HANDLER ADDRESS !
1631 ; !-----------------------------------------------!
1632 ; 06 ! IOT TRAP HANDLER ADDRESS !
1633 ; !-----------------------------------------------!
1634 ; 10 ! RESERVED INSTRUCTION TRAP HANDLER ADDRESS !
1635 ; !-----------------------------------------------!
1636 ; 12 ! ILLEGAL EMT TRAP HANDLER ADDRESS !
1637 ; !-----------------------------------------------!
1638 ; 14 ! TRAP INSTRUCTION TRAP HANDLER ADDRESS !
1639 ; !-----------------------------------------------!
1640 ; 16 ! FLOATING POINT TRAP HANDLER ADDRESS !
1641 ; !===============================================!
1642 ;-
1643
1644 000264 .SSTTB::
1645 000264 000000 .WORD 0 ; ODD ADDRESS TRAP HANDLER
1646 000266 000000 .WORD 0 ; MEMORY PROTECTION VIOLATION
1647 000270 000000 .WORD 0 ; BREAKPOINT TRAP HANDLER
1648 000272 000000 .WORD 0 ; "IOT" INSTRUCTION TRAP
1649 000274 000000 .WORD 0 ; RESERVED INSTRUCTION TRAP
1650 000276 000000 .WORD 0 ; NON-STANDARD EMT TRAP
1651 000300 001124' .WORD .PTTRP ; "TRAP" INSTRUCTION TRAP
1652 000302 000000 .WORD 0 ; FLOATING POINT TRAP
1653 000010 SSTLEN==.-.SSTTB/2 ; LENGTH OF THIS TABLE
1654 000302' SSTTBE==.-2
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 37
DATAB -- DTE-20 OPERATION BUFFERS 7709.20
1656 .SBTTL DATAB -- DTE-20 OPERATION BUFFERS 7709.20
1657
1658 000304 .DFBLK::
1659 000304 .DFWB::
1660 000304 000000 000000 000000 .WORD 0,0,0 ; FUNCTION WRITE BUFFER
1661 000312 .DFRB::
1662 000312 000000 000000 000000 .WORD 0,0,0 ; FUNCTION READ BUFFER
1663
1664 000320 .DREG::
1665 000320 .DTDI1::
1666 000320 000000 .WORD 0 ; DTE-20 DIAG WORD 1 BUFFER
1667 000322 .DTDI2::
1668 000322 000000 .WORD 0 ; DTE-20 DIAG WORD 2 BUFFER
1669 000324 .DTSTS::
1670 000324 000000 .WORD 0 ; DTE-20 STATUS WORD BUFFER
1671 000326 .DTDI3::
1672 000326 000000 .WORD 0 ; DTE-20 DIAG WORD 3 BUFFER
1673 000330' DFBEND==.
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 38
DATAB -- INPUT / OUTPUT BUFFERS 7709.20
1675 .SBTTL DATAB -- INPUT / OUTPUT BUFFERS 7709.20
1676
1677 ; THESE ARE THE I/O BUFFERS
1678
1679 000330 .CIBFR::
1680 000330 .BLKW ^D70 ; CONSOLE DEVICE INPUT BUFFER
1681 000214 .CIBFL==.-.CIBFR
1682
1683 000544 .COBFR::
1684 000544 .BLKW ^D70 ; CONSOLE DEVICE OUTPUT BUFFER
1685 000204 .COBFL==^D132
1686
1687 000760 .COMND::
1688 000760 .BLKW ^D140 ; COMMAND BUFFER
1689 000430 .CMNDL==.-.COMND
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 39
DATAB -- ASCII MESSAGES AND .RAD50 TABLES 7709.20
1691 .SBTTL DATAB -- ASCII MESSAGES AND .RAD50 TABLES 7709.20
1692
1693 001410 .R50TB::
1694 001410 000022 .WORD <'0-36>-<50-50>
1695 001412 060 000 .ASCIZ %0%
1696 001414 177766 .WORD <'%-35>-<'0-36>
1697 001416 045 000 .ASCIZ /%/
1698 001420 000012 .WORD <'.-34>-<'%-35>
1699 001422 056 000 .ASCIZ %.%
1700 001424 177767 .WORD <'$-33>-<'.-34>
1701 001426 044 000 .ASCIZ %$%
1702 001430 000067 .WORD <'A-01>-<'$-33>
1703 001432 101 000 .ASCIZ %A%
1704 001434 177740 .WORD <' -00>-<'A-01>
1705 001436 000040 .WORD .SPACE
1706
1707 001440 .T50TB::
1708 001440 003100 .WORD 50*50
1709 001442 000050 .WORD 50
1710 001444 000001 .WORD 1
1711 001446 000000 .WORD 0
1712
1713 000000 .PSECT MESSAG
1714
1715 000000 CPVMSG::
1716 000000 PARVR$ PAR$$K,,PAR$$V,PAR$$E
000000 126 200 060 .ASCIZ <126><200>\06-27\<200>
000003 066 055 062
000006 067 200 000
1717 000011 PARMSG::
1718 000011 120 101 122 .ASCIZ %PAR -- %
000014 040 055 055
000017 040 000
1719 000021 PARNAM::
1720 000021 120 101 122 .ASCIZ %PARSER%
000024 123 105 122
000027 000
1721 000030 PROMPT::
1722 000030 120 101 122 .ASCIZ %PAR%
000033 000
1723 000034 KLEPRM::
1724 000034 113 114 105 .ASCIZ %KLE>%
000037 076 000
1725 000041 ONMSG::
1726 000041 117 116 000 .ASCIZ %ON%
1727 000044 OFFMSG::
1728 000044 117 106 106 .ASCIZ %OFF%
000047 000
1729 000000 .PSECT
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 40
.CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
1731 .SBTTL .CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
1732
1733 ;+
1734 ; .CHTAB -- THE CHARACTER PROPERTY TABLE
1735 ;
1736 ; THIS IS A TABLE OF ASCII CHARACTER PROPERTIES. THERE IS ONE ENTRY
1737 ; FOR EACH CHARACTER IN THE ASCII STANDARD CHARACTER SET. EACH ENTRY
1738 ; IS ONE BYTE LONG, AND CONTAINS BITS ASSOCIATED WITH THE GENERAL
1739 ; PROPETIES OF THE ASCII CHARACTER IT REPRESENTS. ".CHTAB" IS
1740 ; REFERENCED BY USING THE ASCII CHARACTER UNDER TEST AS AN OFFSET
1741 ; INTO THE TABLE. ONE ASCII CHARACTER MAY HAVE MULTIPLE CHARACTERISTICS.
1742 ; THE DEFINITIONS FOR THE CHARACTERISTIC BITS ARE IN "COMMON.MAC",
1743 ; (Q.V.), WHICH ARE:
1744 ;
1745 ; "CH.ALP" -- (BIT00) -- CHARACTER IS ALPHABETIC,
1746 ; "CH.NUM" -- (BIT01) -- CHARACTER IS NUMERIC,
1747 ; "CH.EOL" -- (BIT02) -- CHARACTER MAY END A LINE,
1748 ; "CH.EOC" -- (BIT03) -- CHARACTER MAY END A COMMAND,
1749 ; "CH.EOS" -- (BIT04) -- CHARACTER MAY SUFFIX A SYMBOL,
1750 ; "CH.PFX" -- (BIT05) -- CHARACTER MAY PREFIX A SYMBOL,
1751 ; "CH.AOP" -- (BIT06) -- CHARACTER MAY PREFIX AN ARITHMETIC OPERATOR,
1752 ; "CH.ILL" -- (BIT07) -- CHARACTER IS ILLEGAL.
1753 ;
1754 ; TABS, (ASCII 011), AND LOWER CASE ALPHABETICS ARE ILLEGAL CHARACTERS
1755 ; SINCE THE INPUT ROUTINES CONVERT THESE CHARACTERS TO SPACES AND
1756 ; UPPER CASE ALPHABETICS, RESPECTIVELY.
1757 ;-
1758
1759 001450 .PSECT DATA
1760
1761 001450 .CHTAB::
1762 001450 034 .BYTE CH.EOL!CH.EOC!CH.EOS ; <NULL> (000)
1763 001451 200 .BYTE CH.ILL ; ^A (001)
1764 001452 200 .BYTE CH.ILL ; ^B (002)
1765 001453 200 .BYTE CH.ILL ; ^C (003)
1766 001454 200 .BYTE CH.ILL ; ^D (004)
1767 001455 200 .BYTE CH.ILL ; ^E (005)
1768 001456 200 .BYTE CH.ILL ; ^F (006)
1769 001457 200 .BYTE CH.ILL ; ^G <BELL> (007)
1770 001460 200 .BYTE CH.ILL ; ^H (010)
1771 001461 200 .BYTE CH.ILL ; ^I <HORIZONTAL-TAB> (011)
1772 001462 200 .BYTE CH.ILL ; ^J <NEW-LINE> (012)
1773 001463 200 .BYTE CH.ILL ; ^K <VERTICAL-TAB> (013)
1774 001464 200 .BYTE CH.ILL ; ^L <FORM-FEED> (014)
1775 001465 200 .BYTE CH.ILL ; ^M <CARRIAGE-RETURN> (015)
1776 001466 200 .BYTE CH.ILL ; ^N (016)
1777 001467 200 .BYTE CH.ILL ; ^O (017)
1778 001470 200 .BYTE CH.ILL ; ^P (020)
1779 001471 200 .BYTE CH.ILL ; ^Q (021)
1780 001472 200 .BYTE CH.ILL ; ^R (022)
1781 001473 200 .BYTE CH.ILL ; ^S (023)
1782 001474 200 .BYTE CH.ILL ; ^T (024)
1783 001475 200 .BYTE CH.ILL ; ^U (025)
1784 001476 200 .BYTE CH.ILL ; ^V (026)
1785 001477 200 .BYTE CH.ILL ; ^W (027)
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 41
.CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
1787 001500 200 .BYTE CH.ILL ; ^X (030)
1788 001501 200 .BYTE CH.ILL ; ^Y (031)
1789 001502 200 .BYTE CH.ILL ; ^Z (032)
1790 001503 200 .BYTE CH.ILL ; <ALT-MODE> (033)
1791 001504 200 .BYTE CH.ILL ; ^\ (034)
1792 001505 200 .BYTE CH.ILL ; ^] (035)
1793 001506 200 .BYTE CH.ILL ; ^^ (036)
1794 001507 200 .BYTE CH.ILL ; ^_ (037)
1795 001510 020 .BYTE CH.EOS ; <SPACE> (040)
1796 001511 200 .BYTE CH.ILL ; ! (041)
1797 001512 020 .BYTE CH.EOS ; " (042)
1798 001513 200 .BYTE CH.ILL ; # (043)
1799 001514 200 .BYTE CH.ILL ; $ (044)
1800 001515 200 .BYTE CH.ILL ; % (045)
1801 001516 200 .BYTE CH.ILL ; & (046)
1802 001517 020 .BYTE CH.EOS ; ' (047)
1803 001520 140 .BYTE CH.AOP!CH.PFX ; ( (050)
1804 001521 100 .BYTE CH.AOP ; ) (051)
1805 001522 120 .BYTE CH.AOP!CH.EOS ; * (052)
1806 001523 160 .BYTE CH.AOP!CH.EOS!CH.PFX ; + (053)
1807 001524 030 .BYTE CH.EOS!CH.EOC ; , (054)
1808 001525 160 .BYTE CH.AOP!CH.EOS!CH.PFX ; - (055)
1809 001526 200 .BYTE CH.ILL ; . (056)
1810 001527 120 .BYTE CH.AOP!CH.EOS ; / (057)
1811 ;
1812 001530 002 .BYTE CH.NUM ; 0 (060)
1813 001531 002 .BYTE CH.NUM ; 1 (061)
1814 001532 002 .BYTE CH.NUM ; 2 (062)
1815 001533 002 .BYTE CH.NUM ; 3 (063)
1816 001534 002 .BYTE CH.NUM ; 4 (064)
1817 001535 002 .BYTE CH.NUM ; 5 (065)
1818 001536 002 .BYTE CH.NUM ; 6 (066)
1819 001537 002 .BYTE CH.NUM ; 7 (067)
1820 001540 002 .BYTE CH.NUM ; 8 (070)
1821 001541 002 .BYTE CH.NUM ; 9 (071)
1822 ;
1823 001542 030 .BYTE CH.EOS!CH.EOC ; : (072)
1824 001543 030 .BYTE CH.EOS!CH.EOC ; ; (073)
1825 001544 200 .BYTE CH.ILL ; < (074)
1826 001545 020 .BYTE CH.EOS ; = (075)
1827 001546 020 .BYTE CH.EOS ; > (076)
1828 001547 041 .BYTE CH.PFX!CH.ALP ; ? (077)
1829 001550 200 .BYTE CH.ILL ; @ (100)
DATAB -- COMMAND PARSER DATA B MACRO M1113 10-NOV-81 17:44 PAGE 42
.CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
1831 001551 001 .BYTE CH.ALP ; A (101)
1832 001552 101 .BYTE CH.ALP!CH.AOP ; B (102)
1833 001553 101 .BYTE CH.ALP!CH.AOP ; C (103)
1834 001554 101 .BYTE CH.ALP!CH.AOP ; D (104)
1835 001555 001 .BYTE CH.ALP ; E (105)
1836 001556 001 .BYTE CH.ALP ; F (106)
1837 001557 001 .BYTE CH.ALP ; G (107)
1838 001560 001 .BYTE CH.ALP ; H (110)
1839 001561 001 .BYTE CH.ALP ; I (111)
1840 001562 001 .BYTE CH.ALP ; J (112)
1841 001563 001 .BYTE CH.ALP ; K (113)
1842 001564 001 .BYTE CH.ALP ; L (114)
1843 001565 001 .BYTE CH.ALP ; M (115)
1844 001566 001 .BYTE CH.ALP ; N (116)
1845 001567 101 .BYTE CH.ALP!CH.AOP ; O (117)
1846 001570 001 .BYTE CH.ALP ; P (120)
1847 001571 001 .BYTE CH.ALP ; Q (121)
1848 001572 001 .BYTE CH.ALP ; R (122)
1849 001573 001 .BYTE CH.ALP ; S (123)
1850 001574 001 .BYTE CH.ALP ; T (124)
1851 001575 001 .BYTE CH.ALP ; U (125)
1852 001576 001 .BYTE CH.ALP ; V (126)
1853 001577 001 .BYTE CH.ALP ; W (127)
1854 001600 001 .BYTE CH.ALP ; X (130)
1855 001601 001 .BYTE CH.ALP ; Y (131)
1856 001602 001 .BYTE CH.ALP ; Z (132)
1857 ;
1858 001603 200 .BYTE CH.ILL ; [ (133)
1859 001604 200 .BYTE CH.ILL ; \ (134)
1860 001605 200 .BYTE CH.ILL ; ] (135)
1861 001606 140 .BYTE CH.AOP!CH.PFX ; ^ (136)
1862 001607 120 .BYTE CH.AOP!CH.EOS ; _ (137)
1863 001610 200 .BYTE CH.ILL ; @ (140)
1898 .EVEN
1899 000000 .PSECT
DEB880 -- DEBUG PARSER DATA BAS MACRO M1113 10-NOV-81 17:44 PAGE 44
.CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
1902 .TITLE DEB880 -- DEBUG PARSER DATA BASE
1903
1904 .IDENT "006110"
1905
1906 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 46
.CHTAB -- THE CHARACTER PROPERTY TABLE 7601.14
2005 .TITLE CHECK -- GENERAL ARGUMENT CHECK MODULE 7709.21
2006
2007 .IDENT "006020"
2008
2009 ;
2010 ; COPYRIGHT (C) 1979 BY
2011 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2012 ;
2013 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2014 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2015 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2016 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
2017 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2018 ;
2019 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2020 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2021 ; CORPORATION.
2022 ;
2023 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2024 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2025 ;
2026 ; MODULE: ALPANUMERIC ARGUMENT CHECK
2027 ;
2028 ; VERSION: 06-02
2029 ;
2030 ; AUTHOR: R. BELANGER
2031 ;
2032 ; DATE: 709.21
2033 ;
2034 ; THIS MODULE CONTAINS:
2035 ;
2036 ; 1) ALPHANUMERIC ARGUMENT CHECK CODE
2037 ; 2) TRAILING COLON CHECK CODE
2038 ; 3) END OF COMMAND CHECK CODE
2039 ; 4) END OF SYMBOL CHECK CODE
2040 ; 5) TRAILING OBJECT CHECK CODE
2041 ; 6) TRAILING SYMBOL CHECK CODE
2042 ;
2043 ; MODIFICATION:
2044 ;
2045 ; NO. DATE PROGRAMMER REASON
2046 ; --- ---- ---------- ------
2047 ; TCO 5.1002 18-SEP-79 K. LEFEBVRE ADD RETURN TO CES ON SWEEP
2048
2049 .MCALL CLEF$S
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 47
.CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP 7607.15
2051 .SBTTL .CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP 7607.15
2052
2053 ;+
2054 ; .CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP BY READING
2055 ; DTE-20 DIAG WORD 1.
2056 ;
2057 ; THIS SUBROUTINE CHECKS FOR THE KL CLOCK ERROR STOP ("D1.CES") FLAG
2058 ; IN THE DTE-20 DIAG1 REGISTER, AND WILL RETURN NORMALLY IF THE BIT IS OFF.
2059 ;
2060 ; SEQUENCE OF OPERATION:
2061 ;
2062 ; (A) READ DTE-20 DIAG WORD 1,
2063 ; (B) TEST THE CLOCK ERROR STOP FLAG FROM (A),
2064 ; (C) IF THE FLAG IS CLEAR, EXIT, ELSE GO TO (D),
2065 ; (D) RESET THE STATE OF ".KLFLG" AND ".SVKLF" (Q.V.),
2066 ; (E) FORCE A CONTEXT SWITCH INTO SECONDARY PROTOCOL,
2067 ; (F) RETURN A .RAD50 "CES" ERROR CODE VIA ERROR TRAP.
2068 ;
2069 ; INPUT ARGUMENTS:
2070 ;
2071 ; NONE.
2072 ;
2073 ; OUTPUT ARGUMENTS:
2074 ;
2075 ; R0 CONTAINS A COPY OF DTE-20 DIAG WORD 1.
2076 ; CC-C IS SET IF CES AND SWEEP IN PROGRESS
2077 ;
2078 ; ERROR CODES RETURNED:
2079 ;
2080 ; CES -- KL CLOCK ERROR STOP.
2081 ; DSF -- DTE-20 STATUS FAILURE.
2082 ;-
2083
2084 000000 .CESCK::
2088 000000 CALL .DTDW1 ; READ DIAG WORD 1
000000 004737 003530' JSR PC,.DTDW1
2089 000004 032700 004000 BIT #D1.CES,R0 ; IS CLOCK ERROR STOP LIT?
2090 000010 001002 BNE CESCES ; YES -- GIVE "CES" ERROR
2091 000012 000241 CLC ; [5.1002]NO -- CLEAR CARRY
2092 000014 RETURN ; JUST RETURN
000014 000207 RTS PC
2093 000016 CESCES:
2094 000016 CALL ..DTSP ; [5.1002]STOP ALL PROTOCOLS
000016 004737 000000G JSR PC,..DTSP
2095 000022 112737 000001 000000G MOVB #1,.NOERR ; AND DISABLE ERROR INTERRUPT
2096 000030 005037 000226' CLR .SVKLF ; DISALLOW RESTARTS
2097 000034 042737 140200 000000G BIC #KF.CON!KF.RUN!KF.CLK,.KLFLG
2098 ; CLEAR THE CLOCK AND CONTINUEABLE FLAGS
2099 000042 052737 000100 000000G BIS #KF.CES,.KLFLG ; FLAG THE CLOCK ERROR STOP
2100 000050 005737 000230' TST .SWPIP ; [5.1002]SWEEP IN PROGRESS?
2101 000054 001402 BEQ 10$ ; [5.1002]NO -- TAKE ERROR TRAP
2102 000056 000261 SEC ; [5.1002]YES -- SET CARRY
2103 000060 RETURN ; [5.1002]EXIT
000060 000207 RTS PC
2104 000062 10$: ERROR$ CES ; ERROR -- CLOCK ERROR STOP
000062 012746 011633 MOV #^RCES,-(SP)
000066 104400 TRAP TC.ERR
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 47-1
.CESCK -- SUBROUTINE TO CHECK FOR CLOCK ERROR STOP 7607.15
2105 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 48
.CKARG -- CHECK FOR ALPHANUMERIC ARGUMENT 7709.21
2107 .SBTTL .CKARG -- CHECK FOR ALPHANUMERIC ARGUMENT 7709.21
2108
2109 ;+
2110 ; .CKARG -- CHECK FOR AN ALPHANUMERIC ARGUMENT
2111 ;
2112 ; THIS ROUTINE WILL CHECK THE FIRST CHARACTER OF THE NEXT SYMBOL
2113 ; IN THE INPUT STREAM TO SEE IF IT IS ALPHABETIC OR NUMERIC.
2114 ;
2115 ; INPUT ARGUMENTS:
2116 ;
2117 ; R5 POINTS TO THE INPUT STREAM
2118 ;
2119 ; OUTPUT ARGUMENTS:
2120 ;
2121 ; R5 POINTS TO THE FIRST CHARACTER IN THE SYMBOL
2122 ; CC-N IS SET IF IT IS NUMERIC
2123 ; CC-Z IS SET IF IT IS ALPHABETIC
2124 ;
2125 ; ERROR CODES RETURNED:
2126 ;
2127 ; MRA -- MISSING REQUIRED ARGUMENT
2128 ;-
2129
2130 000070 .CKARG::
2131 000070 CALL .CKSYM ; GET OVER LEADING BLANKS
000070 004737 000374' JSR PC,.CKSYM
2132 000074 132764 000001 001450' BITB #CH.ALP,.CHTAB(R4)
2133 000102 001403 BEQ 10$ ; SEE IF IT IS NUMERIC
2134 000104 000250 CLN ; CLEAR CC-N
2135 000106 000264 SEZ ; SET CC-Z TO SAY ALPHABETIC
2136 000110 000406 BR 20$ ; AND EXIT
2137 ;
2138 000112 10$:
2139 000112 132764 000042 001450' BITB #CH.NUM!CH.PFX,.CHTAB(R4)
2140 000120 001417 BEQ CKCMRA ; NOT NUMERIC -- GIVE ERROR
2141 000122 000244 CLZ ; CLEAR CC-Z
2142 000124 000270 SEN ; SET CC-N TO SAY NUMERIC
2143 000126 20$:
2144 000126 RETURN ; TO CALLER
000126 000207 RTS PC
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 49
.CKCOL -- CHECK FOR A EQUAL 7709.21
2146 .SBTTL .CKCOL -- CHECK FOR A EQUAL 7709.21
2147
2148 ;+
2149 ; .CKCOL -- CHECK FOR A EQUAL
2150 ;
2151 ; THIS ROUTINE CHECKS FOR A EQUAL AFTER A SYMBOL
2152 ;
2153 ; INPUT ARGUMENTS:
2154 ;
2155 ; R5 POINTS TO THE INPUT STREAM
2156 ;
2157 ; OUTPUT ARGUMENTS:
2158 ;
2159 ; R5 POINTS TO THE FIRST CHARACTER AFTER THE EQUAL.
2160 ;
2161 ; ERROR CODES RETURNED:
2162 ;
2163 ; ILS -- ILLEGAL SEPARATOR CHARACTER.
2164 ; MRA -- MISSING REQUIRED ARGUMENT
2165 ;-
2166
2167 000130 .CKCOL::
2168 000130 112504 MOVB (R5)+,R4 ; GET THE CHARACTER
2169 000132 132764 000010 001450' BITB #CH.EOC,.CHTAB(R4)
2170 000140 001007 BNE CKCMRA ; MISSING ARGUMENT IF E-O-C
2171 000142 122704 000075 CMPB #'=,R4 ; IS IT A EQUAL?
2172 000146 001001 BNE CKCILS ; NO -- GIVE "ILS" ERROR
2173 000150 RETURN ; YES -- JUST RETURN
000150 000207 RTS PC
2174 000152 CKCILS:
2175 000152 ERROR$ ILS ; ERROR -- ILLEGAL SEPARATOR CHARACTER
000152 012746 035063 MOV #^RILS,-(SP)
000156 104400 TRAP TC.ERR
2176 ;
2177 000160 CKCMRA:
2178 000160 ERROR$ MRA ; ERROR -- MISSING REQUIRED ARGUMENT
000160 012746 052021 MOV #^RMRA,-(SP)
000164 104400 TRAP TC.ERR
2179 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 50
.CKCTC -- CHECK FOR CONTROL-C TYPED 7601.28
2181 .SBTTL .CKCTC -- CHECK FOR CONTROL-C TYPED 7601.28
2182
2183 ;+
2184 ; .CKCTC -- CHECK FOR CONTROL-C TYPED
2185 ;
2186 ; THIS SUBROUTINE CHECKS THE CONTROL-C EVENT FLAG, "E.FCTC" AND WILL
2187 ; RETURN TO THE CALLING ROUTINE IF IT IS CLEAR OR TRAP IF IT IS SET.
2188 ;
2189 ; INPUT ARGUMENTS:
2190 ;
2191 ; NONE.
2192 ;
2193 ; OUTPUT ARGUMENTS:
2194 ;
2195 ; NONE
2196 ;
2197 ; ERROR CODES RETURNED:
2198 ;
2199 ; NONE.
2200 ;-
2201
2202 000166 .CKCTC::
2203 000166 CLEF$S #E.FCTC ; CLEAR THE EVENT FLAG
000166 012746 000000G MOV #E.FCTC,-(SP)
000172 012746 MOV (PC)+,-(SP)
000174 037 002 .BYTE 31.,2
000176 104375 EMT 375
2204 000200 022737 000000G 000000G CMP #IS.SET,$DSW ; WAS IT SET?
2205 000206 001401 BEQ 10$ ; YES -- TRAP OUT
2206 000210 RETURN ; NO -- JUST RETURN
000210 000207 RTS PC
2207 000212 10$: ; PC OF CALL WILL BE IN ".TRPEC"
2208 000212 104402 TRAP TC.CTC ; .TRAP AND RESTART
2209 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 51
.CKEOC -- CHECK END OF COMMAND 7602.16
2211 .SBTTL .CKEOC -- CHECK END OF COMMAND 7602.16
2212
2213 ;+
2214 ; .CKEOC -- CHECK FOR END OF COMMAND
2215 ;
2216 ; THIS ROUTINE CHECKS FOR AN END OF COMMAND CHARACTER
2217 ;
2218 ; INPUT ARGUMENTS:
2219 ;
2220 ; R5 POINTS TO THE INPUT STREAM
2221 ;
2222 ; OUTPUT ARGUMENTS:
2223 ;
2224 ; R5 IS UNCHANGED
2225 ;
2226 ; ERROR CODES RETURNED:
2227 ;
2228 ; EOC -- END OF COMMAND REQUIRED
2229 ; ILS -- ILLEGAL SEPARATOR CHARACTER
2230 ;-
2231
2232 000214 .CKEOC::
2233 000214 111504 MOVB (R5),R4 ; GET THE CHARACTER
2234 000216 132764 000010 001450' BITB #CH.EOC,.CHTAB(R4)
2235 000224 001401 BEQ 10$ ; MAY BE ERROR IF NOT E-O-C
2236 000226 RETURN ; TO CALLER
000226 000207 RTS PC
2237 000230 10$:
2238 000230 PUSH R4 ; SAVE THE CHARACTER
000230 010446 MOV R4,-(SP)
2239 000232 CALL .CKSYM ; .LOOK FOR A NON-BLANK CHARACTER
000232 004737 000374' JSR PC,.CKSYM
2240 000236 122704 000077 CMPB #'?,R4 ; .IS THIS AN INQUIRY?
2241 000242 001402 BEQ CKEEOC ; .YES -- GIVE "EOC" ERROR
2242 000244 POP R4 ; .NO -- GIVE "ILS" ERROR
000244 012604 MOV (SP)+,R4
2243 000246 000741 BR CKCILS ; ERROR -- ILLEGAL SEPARATOR CHARACTER
2244 ;
2245 000250 CKEEOC:
2246 000250 ERROR$ EOC ; ERROR -- END OF COMMAND
000250 012746 020633 MOV #^REOC,-(SP)
000254 104400 TRAP TC.ERR
2247 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 52
.CKEOS -- CHECK END OF SYMBOL 7709.21
2249 .SBTTL .CKEOS -- CHECK END OF SYMBOL 7709.21
2250
2251 ;+
2252 ; .CKEOS -- CHECK FOR A NON-BLANK END OF SYMBOL
2253 ;
2254 ; THIS ROUTINE CHECKS FOR A NON-BLANK END-OF-SYMBOL CHARACTER
2255 ;
2256 ; INPUT ARGUMENTS:
2257 ;
2258 ; R5 POINTS TO THE END-OF-SYMBOL CHARACTER
2259 ;
2260 ; OUTPUT ARGUMENTS:
2261 ;
2262 ; R5 IS UNCHANGED
2263 ;
2264 ; ERROR CODES RETURNED:
2265 ;
2266 ; ILS -- ILLEGAL SEPARATOR CHRARACTER
2267 ;-
2268
2269 000256 .CKEOS::
2270 000256 111504 MOVB (R5),R4 ; GET THE CHARACTER INTO R4
2271 000260 132764 000020 001450' BITB #CH.EOS,.CHTAB(R4)
2272 000266 001731 BEQ CKCILS ; ILLEGAL IF NOT E-O-S
2273 000270 122704 000040 CMPB #.SPACE,R4 ; IS IS A <SPACE>?
2274 000274 001726 BEQ CKCILS ; YES -- COMPLAIN
2275 000276 RETURN ; NO -- JUST RETURN
000276 000207 RTS PC
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 53
.CKOBJ -- CHECK FOR A TRAILING OBJECT 7709.21
2277 .SBTTL .CKOBJ -- CHECK FOR A TRAILING OBJECT 7709.21
2278
2279 ;+
2280 ; .CKOBJ -- CHECK FOR A TRAILING OBJECT.
2281 ;
2282 ; THIS SUBROUTINE CHECKS TO SEE IF AN OBJECT SYMBOL FOLLOWS THE
2283 ; CURRENT SYMBOL.
2284 ;
2285 ; INPUT ARGUMENTS:
2286 ;
2287 ; NONE.
2288 ;
2289 ; OUTPUT ARGUMENTS:
2290 ;
2291 ; NONE.
2292 ;
2293 ; ERROR CODES RETURNED:
2294 ;
2295 ; MRA -- MISSING REQUIRED ARGUMENT.
2296 ;-
2297
2298 000300 .CKOBJ::
2299 000300 CALL .CKSYM ; GET OVER LEADING BLANKS
000300 004737 000374' JSR PC,.CKSYM
2300 000304 132764 000010 001450' BITB #CH.EOC,.CHTAB(R4)
2301 000312 001322 BNE CKCMRA ; ILLEGAL IF E-O-C
2302 000314 RETURN ; NOT E-O-C -- RETURN
000314 000207 RTS PC
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 54
.CKRUN -- SUBROUTINE TO CHECK IF THE KL IS RUNNING 7601.12
2304 .SBTTL .CKRUN -- SUBROUTINE TO CHECK IF THE KL IS RUNNING 7601.12
2305
2306 ;+
2307 ; .CKRUN -- SUBROUTINE TO CHECK IF THE KL IS RUNNING
2308 ; .CKRNP -- SPECIAL RUN CHECK FOR PROGRAMMER MODE
2309 ;
2310 ; THIS SUBROUTINE WILL CHECK IF THE KL IS RUNNING FROM ".KLFLG"
2311 ; OR IF THE FRONT END IS IN MAINTENANCE MODE.
2312 ;
2313 ; INPUT ARGUMENTS:
2314 ;
2315 ; NONE.
2316 ;
2317 ; OUTPUT ARGUMENTS:
2318 ;
2319 ; NONE.
2320 ;
2321 ; ERROR CODES RETURNED:
2322 ;
2323 ; KLR -- KL IS RUNNING.
2324 ;-
2325
2326 .ENABL LSB
2327
2328 000316 .CKRNP::
2329 000316 PUSH R0 ; SAVE R0
000316 010046 MOV R0,-(SP)
2330 000320 012700 000002 MOV #LG.PRG,R0 ; .SET PROGRAMMER ALLOWED
2331 000324 000402 BR 10$ ; .AND CONTINUE TEST
2332 ;
2333 000326 .CKRUN::
2334 000326 PUSH R0 ; SAVE R0
000326 010046 MOV R0,-(SP)
2335 000330 005000 CLR R0 ; .CLEAR R0
2336 000332 10$:
2337 000332 052700 000004 BIS #LG.MNT,R0 ; .SET MAINTENANCE ALLOWED
2338 000336 PUSH .KLFLG ; .SAVE ".KLFLG"
000336 013746 000000G MOV .KLFLG,-(SP)
2339 000342 005116 COM (SP) ; ..INVERT ".KLFLG"
2340 000344 032716 140000 BIT #KF.RUN!KF.CLK,(SP)
2341 000350 001003 BNE 20$ ; ..BRANCH IF THE KL IS NOT RUNNING
2342 000352 030037 000000G BIT R0,.FEMOD ; ..ARE WE IN ALLOWED MODE?
2343 000356 001403 BEQ CKRKLR ; ..NO -- GIVE "KLR" ERROR
2344 000360 20$:
2345 000360 005726 TST (SP)+ ; ..YES -- RESET THE STACK
2346 000362 POP R0 ; .RESTORE R0
000362 012600 MOV (SP)+,R0
2347 000364 RETURN ; TO CALLER
000364 000207 RTS PC
2348
2349 .DSABL LSB
2350
2351 000366 CKRKLR:
2352 000366 ERROR$ KLR ; ..ERROR -- KL IS RUNNING
000366 012746 043262 MOV #^RKLR,-(SP)
000372 104400 TRAP TC.ERR
2353 ;
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 55
.CKSYM -- FIND THE FIRST CHARACTER IN A SYMBOL 7709.21
2355 .SBTTL .CKSYM -- FIND THE FIRST CHARACTER IN A SYMBOL 7709.21
2356
2357 ;+
2358 ; .CKSYM -- SUBROUTINE TO FIND THE FIRST CHARACTER IN A SYMBOL.
2359 ;
2360 ; THIS SUBROUTINE WILL FIND THE FIRST NON-BLANK CHARACTER IN AN INPUT
2361 ; SYMBOL POINTED TO BY R5. THE SYMBOL IS THEN CHECKED TO SEE IF IT IS
2362 ; ALPAHBETIC, NUMERIC, OR A LEGAL PREFIX CHARACTER.
2363 ;
2364 ; INPUT ARGUMENTS:
2365 ;
2366 ; R5 POINTS TO THE INPUT STREAM.
2367 ;
2368 ; OUTPUT ARGUMENTS:
2369 ;
2370 ; R5 POINTS TO THE FIRST NON-BLANK CHARACTER.
2371 ;
2372 ; ERROR CODES RETURNED:
2373 ;
2374 ; NONE.
2375 ;-
2376
2377 000374 .CKSYM::
2378 000374 112504 MOVB (R5)+,R4 ; GET THE CHARACTER
2379 000376 122704 000040 CMPB #.SPACE,R4 ; IS IT A <SPACE>?
2380 000402 001774 BEQ .CKSYM ; YES -- DO NEXT CHARACTER
2381 000404 105745 TSTB -(R5) ; NO -- BACK THE POINTER UP
2382 000406 RETURN ; TO CALLER
000406 000207 RTS PC
CHECK -- GENERAL ARGUMENT CHECK MACRO M1113 10-NOV-81 17:44 PAGE 56
.EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR 7512.03
2384 .SBTTL .EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR 7512.03
2385
2386 ;+
2387 ; .EBPCK -- SUBROUTINE TO CHECK FOR EBUS PARITY ERRORS
2388 ;
2389 ; THIS SUBROUTINE WILL CAUSE AN ERROR TRAP IF THE EBUS PARITY ERROR
2390 ; FLAG IS TRUE IN THE DTE-20 STATUS WORD.
2391 ;
2392 ; INPUT ARGUMENTS:
2393 ;
2394 ; NONE.
2395 ;
2396 ; OUTPUT ARGUMENTS:
2397 ;
2398 ; R0 CONTAINS A COPY OF THE DTE-20 STATUS WORD
2399 ;
2400 ; ERROR CODES RETURNED:
2401 ;
2402 ; DSF -- DTE-20 STATUS FAILURE.
2403 ; EPE -- EBUS PARITY ERROR.
2404 ;-
2405
2406 000410 .EBPCK::
2407 000410 CALL .DTSTA ; READ DTE-20 STATUS WORD
000410 004737 003546' JSR PC,.DTSTA
2408 000414 032700 000020 BIT #ST.EPE,R0 ; EBUS PARITY ERROR?
2410 000420 001001 BNE EBPEPE ; YES -- GIVE "EPE" ERROR
2412 000422 RETURN ; NO -- JUST RETURN
000422 000207 RTS PC
2413 000424 EBPEPE:
2414 000424 ERROR$ EPE ; ERROR -- EBUS PARITY ERROR
000424 012746 020705 MOV #^REPE,-(SP)
000430 104400 TRAP TC.ERR
2415 ;
2416 .TITLE ERROR -- PARSER ERROR HANDLER MODULE 7609.24
2417
2418 .IDENT "006020"
2419 ;
2420 ; COPYRIGHT (C) 1975, 1979 BY
2421 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2422 ;
2423 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2424 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2425 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2426 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
2427 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2428 ;
2429 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2430 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2431 ; CORPORATION.
2432 ;
2433 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2434 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2435 ;
2436 ; MODULE: ERROR HANDLER
2437 ;
2438 ; VERSION: 06-02
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 56-1
.EBPCK -- SUBROUTINE TO CHECK EBUS PARITY ERROR 7512.03
2439 ;
2440 ; AUTHOR: R. BELANGER
2441 ;
2442 ; DATE: 7609.24
2443 ;
2444 ; THIS MODULE CONTAINS:
2445 ;
2446 ; 1) ERROR DECODER
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 57
.PARER -- ERROR DECODE AND PRINT ROUTINE 7609.24
2448 .SBTTL .PARER -- ERROR DECODE AND PRINT ROUTINE 7609.24
2449
2450 ;+
2451 ; .PARER -- ERROR DECODE AND PRINT ROUTINE.
2452 ;
2453 ; THIS ROUTINE WILL DECODE THE .RAD50 ERROR CODE PASSED TO IT IN R0
2454 ; AND PRINT AN APPROPRIATE ENGLISH ERROR MESSAGE. THIS ROUTINE IS
2455 ; CALLED FROM THE TRAP HANDLER, ".PTTRP".
2456 ;
2457 ; TWO ERROR CODE TABLES ARE SCANNED, ONE FOR SPECIAL ERRORS AND ONE FOR
2458 ; NORMAL ERRORS, UNTIL A MATCH IS FOUND. IF NO MATCH IS FOUND, ".PARER"
2459 ; WILL ISSUE A "UEC" ERROR CODE.
2460 ;
2461 ; THE SPECIAL ERROR CODES REQUIRE SPECIAL HANDLING BY SEPARATE ROUTINES,
2462 ; THIER ENTRIES LOOK LIKE THIS:
2463 ;
2464 ; !===============================!
2465 ; ! .RAD50 ERROR CODE !
2466 ; !-------------------------------!
2467 ; ! DISPATCH ADDRESS !
2468 ; !-------------------------------!
2469 ; ! MESSAGE POINTER !
2470 ; !===============================!
2471 ;
2472 ; THE NORMAL ERRORS SIMPLY REQUIRE THAT THE ERROR MESSAGE BE PRINTED
2473 ; AND THE ENTRIES IN THIER TABLE LOOK LIKE THIS:
2474 ;
2475 ; !===============================!
2476 ; ! .RAD50 ERROR CODE !
2477 ; !-------------------------------!
2478 ; ! MESSAGE POINTER !
2479 ; !===============================!
2480 ;
2481 ; INPUT ARGUMENTS:
2482 ;
2483 ; R0 HOLDS THE .RAD50 ERROR CODE
2484 ;
2485 ; OUTPUT ARGUMENTS:
2486 ;
2487 ; NONE.
2488 ;
2489 ; ERROR MESSAGES RETURNED:
2490 ;
2491 ; IF THE CONSOLE DEVICE CANNOT BE ATTACHED OR DEATCHED,
2492 ; THE PARSER EXITS.
2493 ;
2494 ; UEC -- UNMATCHED ERROR CODE.
2495 ;-
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 58
.PARER -- ERROR DECODE AND PRINT ROUTINE 7609.24
2497 000432 .PARER::
2498 000432 PUSH <R0,R1,R2> ; SAVE CALLER'S REGISTERS
000432 010046 MOV R0,-(SP)
000434 010146 MOV R1,-(SP)
000436 010246 MOV R2,-(SP)
2499 000440 012701 006622' MOV #.SPETB,R1 ; ...SPECIAL ERRORS GET CHECKED FIRST
2500 000444 10$:
2501 000444 012102 MOV (R1)+,R2 ; ...ERROR CODE TO R2
2502 000446 001405 BEQ 30$ ; ...END-OF-TABLE TRY OTHER ERROR CODES
2503 000450 020002 CMP R0,R2 ; ...DO THEY MATCH?
2504 000452 001402 BEQ 20$ ; ...YES -- DISPATCH TO SPECIAL HANDLER
2505 000454 022121 CMP (R1)+,(R1)+ ; ...NO -- GET OVER DISPATCH
2506 000456 000772 BR 10$ ; ...AND TRY THE NEXT ONE
2507 ;
2508 000460 20$:
2509 000460 000131 JMP @(R1)+ ; ...AWAY TO SPECIAL ROUTINE
2510 ;
2511 000462 30$:
2512 000462 012701 005444' MOV #.NSETB,R1 ; ...TABLE POINTER TO R1
2513 000466 40$:
2514 000466 012102 MOV (R1)+,R2 ; ...ERROR CODE TO R2
2515 000470 001521 BEQ PARUEC ; ...END-OF-TABLE -- GIVE UEC ERROR
2516 000472 020002 CMP R0,R2 ; ...DO THEY MATCH?
2517 000474 001402 BEQ 50$ ; ...YES -- PRINT THE MESSAGE
2518 000476 005721 TST (R1)+ ; ...NO -- GET OVER MESSAGE POINTER
2519 000500 000772 BR 40$ ; ...AND TRY NEXT CODE
2520 ;
2521 000502 50$:
2522 000502 CALL PARERC ; ...DO COMMON OUTPUT CODE
000502 004737 000662' JSR PC,PARERC
2523 000506 PARERX:
2524 000506 POP <R2,R1,R0> ; ...RESTORE THE REGISTERS
000506 012602 MOV (SP)+,R2
000510 012601 MOV (SP)+,R1
000512 012600 MOV (SP)+,R0
2525 000514 CALLR .TCRLF ; END THE LINE AND RETURN
000514 000137 015536' JMP .TCRLF
2526 ;
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 59
.PARER -- SPECIAL ERROR ROUTINES 7609.24
2528 .SBTTL .PARER -- SPECIAL ERROR ROUTINES 7609.24
2529
2530 .ENABL LSB
2531
2532 000520 .SEAMB::
2533 000520 .SENSK::
2534 000520 CALL PARERC ; ...DO COMMON CODE
000520 004737 000662' JSR PC,PARERC
2535 000524 10$:
2536 000524 112500 MOVB (R5)+,R0 ; ...LOAD THE OFFENDING SYMBOL
2537 000526 132760 000034 001450' BITB #CH.END,.CHTAB(R0)
2538 000534 001017 BNE 30$ ; ...UNTIL THE END
2539 000536 CALL .TYCHR ; ...OUTPUT THE CHARACTER
000536 004737 015504' JSR PC,.TYCHR
2540 000542 000770 BR 10$ ; ...CONTINUE
2541 ;
2542 000544 .SEILC::
2543 000544 .SEILS::
2544 000544 .SEIPC::
2545 000544 CALL PARERC ; ...DO COMMON CODE
000544 004737 000662' JSR PC,PARERC
2546 000550 110400 MOVB R4,R0 ; ...GET THE CHARACTER
2547 000552 122700 000040 CMPB #.SPACE,R0 ; ...IS IT A CONTROL CHARACTER?
2548 000556 003404 BLE 20$ ; ...NO -- JUST PRINT IT
2549 000560 CALL .TYUPA ; ...YES -- TYPE AN <UPARROW>
000560 004737 014576' JSR PC,.TYUPA
2550 000564 052700 000100 BIS #100,R0 ; ...MAKE IT A PRINTING CHARACTER
2551 000570 20$:
2552 000570 CALL .TYCHR ; ...PRINT THE CHARACTER
000570 004737 015504' JSR PC,.TYCHR
2553 000574 30$:
2554 000574 112700 000042 MOVB #'",R0 ; ...END QUOTE
2555 000600 CALL .TYCHR ; ...PRINT THAT
000600 004737 015504' JSR PC,.TYCHR
2556 000604 000740 BR PARERX ; ...AND EXIT
2557 ;
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 60
.PARER -- SPECIAL ERROR ROUTINES 7609.24
2559 000606 .SEFRF::
2560 000606 PUSH .KLDFR+2 ; ...SAVE THE READ CODE
000606 013746 000340' MOV .KLDFR+2,-(SP)
2561 000612 000405 BR 40$ ; ....TO COMMON CODE
2562 ;
2563 000614 .SEFWF::
2564 000614 PUSH .KLDFW+2 ; ...SAVE THE WRITE CODE
000614 013746 000352' MOV .KLDFW+2,-(SP)
2565 000620 000402 BR 40$ ; ....TO COMMON CODE
2566 ;
2567 000622 .SEFXF::
2568 000622 PUSH .KLDFX+2 ; ...SAVE THE EXECUTE CODE
000622 013746 000364' MOV .KLDFX+2,-(SP)
2569 000626 40$:
2570 000626 CALL PARERC ; ....DO COMMON STUFF
000626 004737 000662' JSR PC,PARERC
2571 000632 POP R0 ; ....GET THE CODE
000632 012600 MOV (SP)+,R0
2572 000634 000300 SWAB R0 ; ...SWAP THE BYTES
2573 000636 042700 177400 BIC #^C377,R0 ; ...CLEAR JUNK
2574 000642 006200 ASR R0 ; ...DIVIDE BY 2
2575 000644 CALL .TYP3D ; ...PRINT CODE
000644 004737 015016' JSR PC,.TYP3D
2576 000650 012700 000050' MOV #FLDMSG,R0 ; ...END MESSAGE
2577 000654 CALL .TYMSG ; ...PRINT IT
000654 004737 015446' JSR PC,.TYMSG
2578 000660 000712 BR PARERX ; ...AND EXIT
2579 ;
2580
2581 000050 .PSECT MESSAG
2582
2583 000050 FLDMSG:
2584 000050 040 106 101 .ASCIZ % FAILED%
000053 111 114 105
000056 104 000
2585 000662 .PSECT
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 61
.PARER -- SPECIAL ERROR ROUTINES 7609.24
2587 ; THIS IS THE COMMON ERROR CODE ROUTINE
2588
2589 000662 PARERC:
2590 000662 012700 000011' MOV #PARMSG,R0 ; ...PREAMBLE
2591 000666 CALL .TYMSG ; ...PRINT IT
000666 004737 015446' JSR PC,.TYMSG
2592 000672 012700 000133 MOV #'[,R0 ; ...LEFT BRACKET
2593 000676 CALL .TYCHR ; ...PRINT IT
000676 004737 015504' JSR PC,.TYCHR
2594 000702 013700 000002' MOV .CCMDN,R0 ; ...CURRENT COMMAND NAME
2595 000706 CALL .TYMSG ; ...PRINT IT
000706 004737 015446' JSR PC,.TYMSG
2596 000712 012700 000135 MOV #'],R0 ; ...RIGHT BRACKET
2597 000716 CALL .TYCHR ; ...PRINT IT
000716 004737 015504' JSR PC,.TYCHR
2598 000722 CALL .TYSPC ; ...<SPACE>
000722 004737 014566' JSR PC,.TYSPC
2599 000726 011100 MOV (R1),R0 ; ...ERROR MESSAGE
2600 000730 CALLR .TYMSG ; ...PRINT IT AND RETURN
000730 000137 015446' JMP .TYMSG
2601 ;
2602 000734 PARUEC:
2603 000734 PUSH R0 ; ...SAVE THE ERROR CODE
000734 010046 MOV R0,-(SP)
2604 000736 012701 001612' MOV #UECMSP,R1 ; ...."UEC" MESSAGE POINTER TO R1
2605 000742 CALL PARERC ; ....DO COMMON CODE
000742 004737 000662' JSR PC,PARERC
2606 000746 POP R0 ; ....RESTORE THE ERROR CODE
000746 012600 MOV (SP)+,R0
2607 000750 CALL .TYR50 ; ...PRINT IT
000750 004737 015756' JSR PC,.TYR50
2608 000754 000707 BR 30$ ; ...AND EXIT
2609 ;
2610
2611 .DSABL LSB
2612
2613 001612 .PSECT DATA
2614
2615 001612 UECMSP:
2616 001612 000060' .WORD UECMSG
2617
2618 000060 .PSECT MESSAG
2619
2620 000060 UECMSG:
2621 000060 125 116 115 .ASCIZ %UNMATCHED ERROR CODE "%
000063 101 124 103
000066 110 105 104
000071 040 105 122
000074 122 117 122
000077 040 103 117
000102 104 105 040
000105 042 000
2622
2623 000756 .PSECT
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 62
.PARER -- SPECIAL ERROR ROUTINES 7609.24
2625 000756 .SECES::
2626 000756 CALL PARERC ; ...DO COMMON CODE
000756 004737 000662' JSR PC,PARERC
2627 000762 CALL .RDIPE ; ...READ THE ERROR BITS
000762 004737 006670' JSR PC,.RDIPE
2628 000766 PUSH R0 ; ....SAVE THEM
000766 010046 MOV R0,-(SP)
2629 000770 001420 BEQ 30$ ; ....BAD NEWS IF NONE THERE
2630 000772 012701 001614' MOV #SPCEST,R1 ; ....TABLE POINTER TO R1
2631 000776 10$:
2632 000776 032716 000001 BIT #BIT00,(SP) ; ....IS THE BIT ON
2633 001002 001407 BEQ 20$ ; ....NO -- GO ON
2634 001004 011100 MOV (R1),R0 ; ....YES -- SAY SO
2635 001006 CALL .TYMSG ; ....PRINT IT
001006 004737 015446' JSR PC,.TYMSG
2636 001012 CALL .TYCOM ; ....PRINT A COMMA
001012 004737 014536' JSR PC,.TYCOM
2637 001016 CALL .TYSPC ; ....AND A SPACE
001016 004737 014566' JSR PC,.TYSPC
2638 001022 20$:
2639 001022 005721 TST (R1)+ ; ....ADVANCE THE POINTER
2640 001024 006216 ASR (SP) ; ....SHIFT THE ERROR BITS
2641 001026 001363 BNE 10$ ; ....AND KEEP GOING
2642 001030 000404 BR 40$ ; ....FINISHED -- EXIT
2643 ;
2644 001032 30$:
2645 001032 012700 000122' MOV #NEBMSG,R0 ; ....NO ERROR BIT ARE SET
2646 001036 CALL .TYMSG ; ....SAY SO
001036 004737 015446' JSR PC,.TYMSG
2647 001042 40$:
2648 001042 005726 TST (SP)+ ; ....FLUSH THE STACK
2649 001044 000620 BR PARERX ; ...AND EXIT
2650 ;
2651
2652 001614 .PSECT DATA
2653
2654 001614 SPCEST:
2655 001614 000107' .WORD ERSMSG
2656 001616 001521' .WORD DRMMSG
2657 001620 001376' .WORD CRMMSG
2658 001622 001020' .WORD FMMSG
2659 001624 001535' .WORD FSSMSG
2660
2661 001046 .PSECT
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 63
.PARER -- SPECIAL ERROR ROUTINES 7609.24
2663 000107 .PSECT MESSAG
2664
2665 000107 ERSMSG:
2666 000107 105 122 122 .ASCIZ %ERROR STOP%
000112 117 122 040
000115 123 124 117
000120 120 000
2667 000122 NEBMSG:
2668 000122 116 117 040 .ASCIZ %NO ERROR STOP BITS SET%
000125 105 122 122
000130 117 122 040
000133 123 124 117
000136 120 040 102
000141 111 124 123
000144 040 123 105
000147 124 000
2669
2670 001046 .PSECT
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 64
.PTDIE -- RECURSIVE TRAP HANDLER 7609.24
2672 .SBTTL .PTDIE -- RECURSIVE TRAP HANDLER 7609.24
2673
2674 ;+
2675 ; .PTDIE -- RECURSIVE TRAP HANDLER.
2676 ;
2677 ; THIS ROUTINE HANDLES RECURSIVE TRAPS, WHICH ARE FATAL ERRORS. THE
2678 ; OTHER TRAP HANDLERS IN "PARTRP" ENABLE THIS HANDLER BY PLACING ITS
2679 ; ENTRY POINT IN THE APPROPRIATE PLACE IN THE SST VECTOR TABLE.
2680 ; ".PTDIE" WILL PRINT A MESSAGE WITH THE PC OF THE RECURSIVE TRAP AND
2681 ; EXIT TO THE SYSTEM VIA AN "IOT" TRAP. THIS ROUTINE IS ENTERED WITH
2682 ; THE TRAP PC AND PSW ON THE STACK IN THE NORMAL MANNER.
2683 ;
2684 ; ERROR CODES RETURNED:
2685 ;
2686 ; NONE.
2687 ;-
2688
2689
2690 001046 .PTDIE::
2691 001046 005337 000240' DEC .TRPIP ; ..DECREMENT THE INTERLOCK
2692 001052 001423 BEQ 20$ ; ..KILL NOW IF RECURSIVE
2693 001054 PUSH R0 ; ..SAVE R0
001054 010046 MOV R0,-(SP)
2694 001056 012700 000264' MOV #.SSTTB,R0 ; ...TABLE POINTER TO R0
2695 001062 10$:
2696 001062 005020 CLR (R0)+ ; ...CLEAR THIS ENTRY
2697 001064 020027 000302' CMP R0,#SSTTBE ; ...ARE WE DONE?
2698 001070 003774 BLE 10$ ; ...NO -- KEEP GOING
2699 001072 CALL .TCRLF ; ...START THE LINE
001072 004737 015536' JSR PC,.TCRLF
2700 001076 012700 000151' MOV #PTRTEM,R0 ; ...RECURSIVE ERROR MESSAGE
2701 001102 CALL .TYLIN ; ...PRINT IT
001102 004737 015432' JSR PC,.TYLIN
2702 001106 016600 000002 MOV 2(SP),R0 ; ...GET THE TRAP PC
2703 001112 CALL .TYELN ; ...TYPE THAT
001112 004737 014752' JSR PC,.TYELN
2704 001116 CALL .TCRLF ; ...END THE LINE
001116 004737 015536' JSR PC,.TCRLF
2705 001122 20$:
2706 001122 000004 IOT ; ...AND GO AWAY
2707 ;
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 65
.PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER 7609.24
2709 .SBTTL .PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER 7609.24
2710
2711 ;+
2712 ; .PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER.
2713 ;
2714 ; THIS ROUTINE HANDLES TRAPS FROM THE "TRAP" INSTRUCTION, WHICH IS USED
2715 ; BY THE RSX20F COMMAND PARSER TO HANDLE INTERNAL ERRORS. THE ACTION
2716 ; TAKEN BY THIS ROUTINE IS DICTATED BY THE TRAP STATUS BYTE, WHICH IS
2717 ; THE FIRST ITEM ON THE STACK UPON ENTRY. THERE ARE FOUR STATUS CODES
2718 ; WHICH ARE RETURNED IN THE TRAP STATUS BYTE:
2719 ;
2720 ; (A) "TC.CTC" -- CONTROL-C TRAP -- SAME EFFECT AS "TC.RST", EXCEPT THAT NO
2721 ; ERROR MESSAGE IS TYPED. THE VALUE OF "TC.CTC" IS +2.
2722 ;
2723 ; (B) "TC.RST" -- ABORT THE CURRENT PROCESS AND ATTEMPT TO RESTORE THE
2724 ; STATE OF THE KL. THE "ABORT$" MACRO (Q.V.) GENERATES
2725 ; THIS CODE. THE PREVIOUS STATE OF THE KL MAY BE
2726 ; RECOVERED FROM THESE ERRORS. THE VALUE OF "TC.RST" IS +1.
2727 ;
2728 ; (C) "TC.ERR" -- SIMPLY ABORT THE CURRENT PROCESS AND RETURN TO THE MAIN
2729 ; THE MAIN PARSER. THE "ERROR$" MACRO (Q.V.) GENERATES
2730 ; THIS CODE. THESE ERRORS DO NOT USUALLY AFFECT THE STATE
2731 ; OF THE KL. THE VALUE OF "TC.ERR" IS 0.
2732 ;
2733 ; (D) "TC.CON" -- SIMPLY REPORT THE ERROR AND CONTINUE THE PROCESS.
2734 ; THIS CODE IS GENERATED BY THE "ERCON$" MACRO (Q.V.)
2735 ; THESE ERRORS ALLOW ERROR SPECIFIC RECOVERY TO BE
2736 ; ATTEMPTED. THE VALUE OF "TC.CON" IS -1.
2737 ;
2738 ; THE DECISION TO RECOVER OR NOT IS MADE BASED ON THE TRAP STATUS BYTE,
2739 ; AFTER WHICH THE ERROR CODE IS PICKED UP, DECODED AND PRINTED BY ".PARER".
2740 ;
2741 ; UPON ENTRY TO THE TRAP INSTRUCTION TRAP HANDLER, THE STACK CONTAINS
2742 ; THE FOLLOWING INFORMATION:
2743 ;
2744 ; !=======================================!
2745 ; 6(SP)==> ! TRAP ERROR CODE !
2746 ; !---------------------------------------!
2747 ; 4(SP)==> ! TRAP PROCESSOR STATUS WORD !
2748 ; !---------------------------------------!
2749 ; 2(SP)==> ! TRAP PROGRAM COUNTER !
2750 ; !---------------------------------------!
2751 ; (SP)==> ! TRAP STATUS BYTE * 2 !
2752 ; !=======================================!
2753 ;
2754 ; EXECUTION MAY BE RESUMED AFTER THE TRAP BY ISSUING AN "RTI" INSTRUCTION.
2755 ;
2756 ; ERROR CODES RETURNED:
2757 ;
2758 ; RTH -- RECURSION IN TRAP HANDLER.
2759 ; UEC -- UNMATCHED ERROR CODE.
2760 ;-
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 66
.PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER 7609.24
2762 001124 .PTTRP::
2763 001124 005037 000230' CLR .SWPIP ; [5.1002]CLEAR SWEEP IN PROGRESS FLAG
2764 001130 005337 000240' DEC .TRPIP ; ....DECREMENT THE TRAP IN PROGRESS FLAG
2765 001134 002471 BLT 30$ ; ....SECOND RECURSION -- KILL TASK
2766 001136 011637 000246' MOV (SP),.TRPSB ; ....SAVE THE TRAP STATUS BYTE
2767 001142 016637 000002 000242' MOV 2(SP),.TRPPC ; ....SAVE THE TRAP PC
2768 001150 016637 000004 000244' MOV 4(SP),.TRPPS ; ....SAVE THE TRAP PSW
2769 001156 016637 000006 000236' MOV 6(SP),.TRPEC ; ....SAVE THE TRAP ERROR CODE
2770 001164 CALL R5,.REGSV ; ....SAVE TRAP REGISTERS
001164 004537 010302' JSR R5,.REGSV
2771 001170 PUSH R0 ; ....SAVE R0 TOO
001170 010046 MOV R0,-(SP)
2772 001172 105737 000246' TSTB .TRPSB ; .....TEST THE TRAP STATUS BYTE
2773 001176 003405 BLE 10$ ; .....DON'T TRY TO RECOVER THE KL
2774 001200 005737 000226' TST .SVKLF ; .....DID WE SAVE THE PREVIOUS STATE?
2775 001204 001402 BEQ 10$ ; .....NO -- FORGET RECOVERY
2776 001206 CALL .RSTKL ; .....RESTORE THE KL
001206 004737 007204' JSR PC,.RSTKL
2777 001212 10$:
2778 001212 013737 000206' 000134' MOV .RDXSV,.IRADX ; .....RESET THE INPUT RADIX
2779 001220 013737 000206' 000174' MOV .RDXSV,.ORADX ; .....AND OUTPUT RADIX
2780 001226 122737 000004 000246' CMPB #TC.CTC*2,.TRPSB; .....WAS THIS A CONTROL-C TRAP?
2781 001234 001425 BEQ 20$ ; .....YES -- JUST RESTART THE PARSER
2782 001236 013700 000250' MOV .TRPTV,R0 ; .....NO -- IS THIS A NORMAL TRAP??
2783 001242 001406 BEQ 15$ ; .....YES -- GO ON
2784 001244 010006 MOV R0,SP ; .....NO -- RESET THE STACK
2785 001246 005237 000240' INC .TRPIP ; .....RESET TRAP IN PROGRESS FLAG
2786 001252 005037 000250' CLR .TRPTV ; .....RESET THE TRAP TRAP VECTOR
2787 001256 CALLR @(SP)+ ; .....AND GO AWAY TO OTHER ROUTINE
001256 000136 JMP @(SP)+
2788 ;
2789 001260 15$:
2790 001260 CALL .TCRLF ; .....GIVE A FREE <CRLF>
001260 004737 015536' JSR PC,.TCRLF
2791 001264 013700 000236' MOV .TRPEC,R0 ; .....GET THE ERROR CODE IN R0
2792 001270 CALL .PARER ; .....DECODE AND PRINT THE ERROR
001270 004737 000432' JSR PC,.PARER
2793 001274 005737 000240' TST .TRPIP ; .....IS THIS A RECURSIVE TRAP?
2794 001300 001407 BEQ 30$ ; .....YES -- GIVE UP
2795 001302 105737 000246' TSTB .TRPSB ; .....TEST THE TRAP STATUS BYTE
2796 001306 002413 BLT 40$ ; .....RECOVER THE ERROR
2797 001310 20$:
2798 001310 005237 000240' INC .TRPIP ; .....RESET TRAP IN PROGRESS FLAG
2799 001314 000177 000222' JMP @.STRTV ; .....RESTART THE PARSER
2800 ;
2801
2802 ; [CONTINUED ON THE FOLLOWING PAGE]
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 67
.PTTRP -- "TRAP" INSTRUCTION TRAP HANDLER 7609.24
2804 ; [CONTINUED FROM THE PREVIOUS PAGE]
2805
2806 001320 30$: ; .....HERE ON RECURSIVE TRAP
2807 001320 012700 000221' MOV #PTRTHM,R0 ; .....MESSAGE POINTER
2808 001324 CALL .TYLIN ; .....PRINT IT
001324 004737 015432' JSR PC,.TYLIN
2809 001330 CALL .TCRLF ; .....END THE LINE
001330 004737 015536' JSR PC,.TCRLF
2810 001334 000004 IOT ; .....AND GO "RIBIT"
2811 ;
2812 001336 40$: ; .....HERE TO RECOVER THE ERROR
2813 001336 005237 000240' INC .TRPIP ; .....DECREMENT THE INTERLOCK
2814 001342 POP R0 ; .....RESTORE R0
001342 012600 MOV (SP)+,R0
2815 001344 CALL @(SP)+ ; ....AND THE OTHER REGISTERS
001344 004736 JSR PC,@(SP)+
2816 001346 005726 TST (SP)+ ; ....GET OVER THE TRAP STATUS BYTE
2817 001350 000002 RTI ; ...TO WHEREVER WE WERE CALLED FROM
2818 ;
2819
2820 000151 .PSECT MESSAG
2821
2822 000151 PTRTEM:
2823 000151 120 101 122 .ASCIZ %PAR -- *FATAL* RECURSIVE TRAP FROM PC: %
000154 040 055 055
000157 040 052 106
000162 101 124 101
000165 114 052 040
000170 122 105 103
000173 125 122 123
000176 111 126 105
000201 040 124 122
000204 101 120 040
000207 106 122 117
000212 115 040 120
000215 103 072 040
000220 000
2824 000221 PTRTHM:
2825 000221 120 101 122 .ASCIZ %PAR -- RTH - RECURSION IN TRAP HANDLER%
000224 040 055 055
000227 040 122 124
000232 110 040 055
000235 040 122 105
000240 103 125 122
000243 123 111 117
000246 116 040 111
000251 116 040 124
000254 122 101 120
000257 040 110 101
000262 116 104 114
000265 105 122 000
2826
2827 001352 .PSECT
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 68
.PTOAT -- TRAP AT 4 TRAP HANDLER 7601.15
2829 .SBTTL .PTOAT -- TRAP AT 4 TRAP HANDLER 7601.15
2830
2831 ;+
2832 ; .PTOAT -- TRAP AT 4 TRAP HANDLER.
2833 ;
2834 ; THIS ROUTINE HANDLES TRAP AT 4 TRAPS FOR THE RSX20F COMMAND PARSER.
2835 ; AN ERROR MESSAGE WITH THE PC OF THE TRAP AT 4 TRAP IS PRINTED ON THE
2836 ; CONSOLE AND THE CURRENT OPERATION IS ABORTED. IF THE TRAP IS RECURSIVE,
2837 ; CONTROL IS PASSED TO ".PTDIE", AS THE TASK IS HOPELESSLY CONFUSED.
2838 ;
2839 ; UPON ENTRY TO THE TRAP AT 4 TRAP HANDLER, THE STACK CONTAINS
2840 ; THE FOLLOWING INFORMATION:
2841 ;
2842 ; !=======================================!
2843 ; 2(SP)==> ! TRAP PROCESSOR STATUS WORD !
2844 ; !---------------------------------------!
2845 ; (SP)==> ! TRAP PROGRAM COUNTER !
2846 ; !=======================================!
2847 ;
2848 ; ERROR CODES RETURNED:
2849 ;
2850 ; NONE.
2851 ;-
2852
2853 001352 .PTOAT::
2854 001352 POP .TRPPC ; ..SAVE THE TRAP PC
001352 012637 000242' MOV (SP)+,.TRPPC
2855 001356 POP .TRPPS ; .AND THE TRAP PSW
001356 012637 000244' MOV (SP)+,.TRPPS
2856 001362 CALL R5,.REGSV ; SAVE THE REGISTERS FROM TRAP
001362 004537 010302' JSR R5,.REGSV
2857 001366 PUSH R0 ; AND R0
001366 010046 MOV R0,-(SP)
2858 001370 012737 001046' 000264' MOV #.PTDIE,.SSTTB ; .SET UP TO DIE ON RECURSION
2859 001376 CALL .TCRLF ; .GIVE A FREE <CRLF>
001376 004737 015536' JSR PC,.TCRLF
2860 001402 012700 000270' MOV #PTOATM,R0 ; .GET THE MESSAGE POINTER
2861 001406 CALL .TYMSG ; .TYPE IT
001406 004737 015446' JSR PC,.TYMSG
2862 001412 013700 000102' MOV .EDELA,R0 ; .ADDRESS TO R0
2863 001416 CALL .TYELN ; .TYPE THAT
001416 004737 014752' JSR PC,.TYELN
2864 001422 CALL .TCRLF ; .AND A CRLF
001422 004737 015536' JSR PC,.TCRLF
2866 001426 005737 000064' TST .DBGSW ; .IS THE DEBUG SWITCH SET?
2867 001432 001403 BEQ 10$ ; .NO -- JUST RESTART
2868 001434 POP R0 ; .RESTORE R0
001434 012600 MOV (SP)+,R0
2869 001436 CALL @(SP)+ ; .AND THE REGISTERS
001436 004736 JSR PC,@(SP)+
2870 001440 000000 HALT ; SO WE CAN LOOK
2871 001442 10$:
2873 001442 005037 000264' CLR .SSTTB ; RESET THE TRAP VECTOR
2874 001446 000177 000222' JMP @.STRTV ; .AND START OVER
2875 ;
2876
2877 000270 .PSECT MESSAG
ERROR -- PARSER ERROR HANDLER M MACRO M1113 10-NOV-81 17:44 PAGE 68-1
.PTOAT -- TRAP AT 4 TRAP HANDLER 7601.15
2878
2879 000270 PTOATM:
2880 000270 120 101 122 .ASCIZ %PAR -- ILLEGAL MEMORY REFERENCE TO: %
000273 040 055 055
000276 040 111 114
000301 114 105 107
000304 101 114 040
000307 115 105 115
000312 117 122 131
000315 040 122 105
000320 106 105 122
000323 105 116 103
000326 105 040 124
000331 117 072 040
000334 000
2881
2882 001452 .PSECT
2883 .TITLE FILIO -- FILE INTERFACE ROUTINES
2884
2885 .IDENT "006150"
2886
2887 ; COPYRIGHT (C) 1975, 1978, 1979 BY
2888 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2889 ;
2890 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2891 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2892 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2893 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
2894 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2895 ;
2896 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2897 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2898 ; CORPORATION.
2899 ;
2900 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2901 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2902 ;
2903 ; MODULE: PARSER FILE INTERFACE ROUTINES
2904 ;
2905 ; VERSION: 06-15
2906 ;
2907 ; AUTHOR: K. LEFEBVRE
2908 ;
2909 ; DATE: 29-AUG-79
2910 ;
2911 ; THIS MODULE CONTAINS:
2912 ;
2913 ; 1) FILE ACCESSING ROUTINES
2914 ; 2) FILE READ ROUTINES
2915 ; 3) FILE WRITE ROUTINES
2916 ;
2917 ;
2918 ; THESE ROUTINES WERE ADDED FOR TCO 5.1000
2919
2920 .MCALL DIR$,ALUN$,QIOW$,QIOW$S
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 69
FILE INTERFACE DATA
2922 .SBTTL FILE INTERFACE DATA
2923
2924 001626 .PSECT DATA
2925
2927
2928 001626 .INDFG:: ; INDIRECT COMMAND FILE FLAG
2929 001626 000000 .WORD 0
2930
2932 001630 .FISTS:: ; FILE I/O STATUS BLOCK
2933 001630 000000 000000 .WORD 0,0
2934
2935 001000 .BUFSZ==1000 ; BUFFER SIZE
2936
2938
2939 001634 .INFN:: ; INDIRECT COMMAND FILE NAME
2940 001634 000000 000000 000000 .WORD 0,0,0 ; FILE NAME
2941 001642 012314 .RAD50 /CMD/ ; EXTENSION
2942 001644 000000 .WORD 0 ; VERSION
2943 001646 005 005 .BYTE 5,5 ; OWNER
2944 001650 054523 .WORD "SY ; DEVICE
2945 001652 000000 .WORD 0 ; UNIT
2946
2947 001654 .INVBN:: ; CURRENT VIRTUAL BLOCK NO.
2948 001654 000000 000000 .WORD 0,0
2949 001660 .INBBC:: ; INPUT BUFFER BYTE COUNT
2950 001660 000000 .WORD 0
2951 001662 .INPOS:: ; INPUT BUFFER CURRENT POSITION
2952 001662 000000 .WORD 0
2953 001664 .INBUF:: ; INPUT BUFFER
2954 001664 .BLKW .BUFSZ/2
2955
2956 002664 .INFNB:: ; INPUT FILE NAME BLOCK
2957 002664 000000 000000 000000 .WORD 0,0,0 ; N.FID
2958 002672 140123 140123 000000 .RAD50 /005005 / ; N.FNAM
2959 002700 015172 .RAD50 /DIR/ ; N.FTYP
2960 002702 000000 .WORD 0 ; N.FVER
2961 002704 000000 .WORD 0 ; N.STAT
2962 002706 000000 .WORD 0 ; N.NEXT
2963 002710 177777 177777 .WORD -1,-1 ; DIRECTORY FID
2964 002714 005 005 .BYTE 5,5 ; OWNER
2965
2966 002716 .INATT:: ; FILE ATTRIBUTES
2967 002716 000 .BYTE 0 ; RECORD TYPE
2968 002717 000 .BYTE 0 ; RECORD ATTRIBUTES
2969 002720 000000 .WORD 0 ; LARGEST RECORD SIZE
2970 002722 000000 000000 .WORD 0,0 ; HIGHEST ALLOCATED BLOCK
2971 002726 000000 000000 .WORD 0,0 ; HIGHEST USED BLOCK
2972 002732 000000 .WORD 0 ; FIRST FREE BYTE
2973
2975
2976 002734 .OTFN:: ; LOG FILE NAME
2977 002734 062072 073632 000000 .RAD50 /PARSER / ; FILE NAME
2978 002742 046537 .RAD50 /LOG/ ; EXTENSION
2979 002744 000000 .WORD 0 ; VERSION
2980 002746 005 005 .BYTE 5,5 ; OWNER
2981 002750 054523 .WORD "SY ; DEVICE
2982 002752 000000 .WORD 0 ; UNIT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 69-1
FILE INTERFACE DATA
2983
2984 002754 .OTVBN:: ; CURRENT VIRTUAL BLOCK NO.
2985 002754 000000 000000 .WORD 0,0
2986 002760 .OTBBC:: ; OUTPUT BUFFER BYTE COUNT
2987 002760 000000 .WORD 0
2988 002762 .OTPOS:: ; OUTPUT BUFFER CURRENT POSITION
2989 002762 000000 .WORD 0
2990 002764 .OTBUF:: ; OUTPUT BUFFER
2991 002764 .BLKW .BUFSZ/2
2992
2993 003764 .OTFNB:: ; OUTPUT FILE NAME BLOCK
2994 003764 000000 000000 000000 .WORD 0,0,0 ; N.FID
2995 003772 140123 140123 000000 .RAD50 /005005 / ; N.FNAM
2996 004000 015172 .RAD50 /DIR/ ; N.FTYP
2997 004002 000000 .WORD 0 ; N.FVER
2998 004004 000000 .WORD 0 ; N.STAT
2999 004006 000000 .WORD 0 ; N.NEXT
3000 004010 177777 177777 .WORD -1,-1 ; DIRECTORY FID
3001 004014 005 005 .BYTE 5,5 ; OWNER
3002
3003 004016 .OTATT:: ; FILE ATTRIBUTES
3004 004016 000 .BYTE 0 ; RECORD TYPE
3005 004017 000 .BYTE 0 ; RECORD ATTRIBUTES
3006 004020 000000 .WORD 0 ; LARGEST RECORD SIZE
3007 004022 000000 000000 .WORD 0,0 ; HIGHEST ALLOCATED BLOCK
3008 004026 000000 000000 .WORD 0,0 ; HIGHEST USED BLOCK
3009 004032 000000 .WORD 0 ; FIRST FREE BYTE
3010
3011 004034 .RECNT:: ; CURRENT RECORD SIZE
3012 004034 000000 .WORD 0
3013 004036 .RECPT:: ; CURRENT RECORD POSITION POINTER
3014 004036 004040' .WORD .RECRD
3015 004040 .RECRD::
3016 004040 .BLKB 80. ; CURRENT RECORD
3017
3018 001452 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 70
.FNDIR -- ROUTINE TO FIND DIRECTORY FILE ID
3020 .SBTTL .FNDIR -- ROUTINE TO FIND DIRECTORY FILE ID
3021
3022 ;+
3023 ;
3024 ; .FNDIR -- ROUTINE TO FIND THE [5,5] DIRECTORY FILE ID
3025 ;
3026 ; THIS ROUTINE WILL FIND THE FILE ID FOR THE [5,5] DIRECTORY IF
3027 ; IT HAS NOT ALREADY BEEN FOUND. IT WILL ALSO ASSIGN A LUN TO THE
3028 ; SYSTEM DEVICE.
3029 ;
3030 ; INPUT ARGUMENTS:
3031 ;
3032 ; R1=FILE NAME BLOCK
3033 ; R2=LUN
3034 ;
3035 ; OUTPUT ARGUMENTS:
3036 ;
3037 ; NONE
3038 ;
3039 ; ERROR CODES RETURNED:
3040 ;
3041 ; CAL -- CAN'T ASSIGN LUN
3042 ; DNF -- DIRECTORY FILE NOT FOUND
3043 ;-
3044
3045 001452 .FNDIR::
3046 001452 026127 000024 177777 CMP 24(R1),#-1 ; DIRECTORY FID ALREADY FOUND?
3047 001460 001032 BNE 10$ ; YES -- EXIT
3048 001462 010237 000002' MOV R2,FNDALU ; NO -- SET UP LUN
3049 001466 DIR$ #FNDALN ; ASSIGN LUN
001466 012746 000000' MOV #FNDALN,-(SP)
001472 104375 EMT 375
3050 001474 103425 BCS FNDCAL ; ERROR IF CC-C IS SET
3051 001476 010237 000014' MOV R2,FNDLUN ; SET LUN
3052 001502 010137 000036' MOV R1,FNDFNB ; SET FNB
3053 001506 DIR$ #FNDFNA ; GET FID
001506 012746 000010' MOV #FNDFNA,-(SP)
001512 104375 EMT 375
3054 001514 103420 BCS FNDDNF ; ERROR IF CC-C IS SET
3055 001516 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3056 001522 002415 BLT FNDDNF ; NO -- ERROR
3057 001524 016161 000000 000024 MOV 0(R1),24(R1) ; SAVE DIRECTORY FID
3058 001532 016161 000002 000026 MOV 2(R1),26(R1) ; SAVE DIRECTORY FID
3059 001540 016161 000004 000030 MOV 4(R1),30(R1) ; SAVE DIRECTORY FID
3060 001546 10$: RETURN ; DONE
001546 000207 RTS PC
3061 ;
3062 001550 FNDCAL:
3063 001550 ERROR$ CAL ; ERROR -- CAN'T ASSIGN LUN
001550 012746 011364 MOV #^RCAL,-(SP)
001554 104400 TRAP TC.ERR
3064 001556 FNDDNF:
3065 001556 ERROR$ DNF ; ERROR -- DIRECTORY FILE NOT FOUND
001556 012746 015466 MOV #^RDNF,-(SP)
001562 104400 TRAP TC.ERR
3066 ;
3067
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 70-1
.FNDIR -- ROUTINE TO FIND DIRECTORY FILE ID
3068 000000 .PSECT DPBS
3069
3070 000000 FNDALN: ; ASSIGN LUN DIRECTIVE
3071 000000 ALUN$ 0,SY,0
000000 007 004 .BYTE 7,4
000002 000000 .WORD 0
000004 123 .ASCII /S/
000005 131 .ASCII /Y/
000006 000000 .WORD 0
3072
3073 000002' FNDALU=FNDALN+A.LULU
3074
3075 000010 FNDFNA: ; FIND FID DIRECTIVE
3076 000010 QIOW$ IO.FNA,,E.FFIL,,.FISTS,,<,,,,,0>
000010 003 014 .BYTE 3,$$$ARG
000012 000000G .WORD IO.FNA
000014 000000 .WORD
000016 006 000 .BYTE E.FFIL,
000020 001630' .WORD .FISTS
000022 000000 .WORD
000024 000000 .WORD
000026 000000 .WORD
000030 000000 .WORD
000032 000000 .WORD
000034 000000 .WORD
000036 000000 .WORD 0
3077
3078 000014' FNDLUN=FNDFNA+Q.IOLU
3079 000036' FNDFNB=FNDFNA+Q.IOPL+12
3080
3081 001564 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 71
.LOKUP -- ROUTINE TO LOOK UP A FILE TO GET ITS FID
3083 .SBTTL .LOKUP -- ROUTINE TO LOOK UP A FILE TO GET ITS FID
3084
3085 ;+
3086 ; .LOKUP -- ROUTINE TO LOOK UP A FILE TO GET ITS FILE ID
3087 ;
3088 ; THIS ROUTINE WILL LOOK UP A FILE TO GET ITS FILE ID SO THAT ALL
3089 ; FUTURE OPERATIONS CAN BE DONE BY FILE ID. IF THE FILE IS NOT
3090 ; FOUND THEN THE CC-C BIT IS SET AND THE ROUTINE RETURNS.
3091 ;
3092 ; INPUT ARGUMENTS:
3093 ;
3094 ; R0=FILE NAME
3095 ; R1=FILE NAME BLOCK
3096 ; R2=LUN
3097 ;
3098 ; OUTPUT ARGUMENTS:
3099 ;
3100 ; CC-C IS SET IF FILE NOT FOUND
3101 ;
3102 ; ERROR CODES RETURNED:
3103 ;
3104 ; CAL -- CAN'T ASSIGN LUN
3105 ; DNF -- DIRECTORY FILE NOT FOUND
3106 ; FLF -- FILE LOOKUP FAILURE
3107 ;-
3108
3109 .ENABL LSB
3110
3111 001564 .REMOV::
3112 001564 012737 000000G 000042' MOV #IO.RNA,LOKIOF ; REMOVE FROM DIRECTORY
3113 001572 000403 BR 3$ ; GO ON
3114 001574 .LOKUP::
3115 001574 012737 000000G 000042' MOV #IO.FNA,LOKIOF ; FIND DIRECTORY
3116 001602 3$: CALL .FNDIR ; FIND THE DIRECTORY FID
001602 004737 001452' JSR PC,.FNDIR
3117 001606 CALL .SETFN ; SET THE FILE NAME IN THE FNB
001606 004737 002166' JSR PC,.SETFN
3118 001612 010237 000044' MOV R2,LOKLUN ; SET LUN
3119 001616 010137 000066' MOV R1,LOKFNB ; SET FNB
3120 001622 DIR$ #LOKFNA ; GET FID
001622 012746 000040' MOV #LOKFNA,-(SP)
001626 104375 EMT 375
3121 001630 103412 BCS LOKFLF ; ERROR IF CC-C IS SET
3122 001632 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3123 001636 002401 BLT 10$ ; NO -- SEE WHY
3124 001640 5$: RETURN ; YES -- RETURN
001640 000207 RTS PC
3125 001642 122737 000000G 001630' 10$: CMPB #IE.NSF,.FISTS ; NO SUCH FILE?
3126 001650 001002 BNE LOKFLF ; NO -- ERROR
3127 001652 000261 SEC ; YES -- SET CC-C
3128 001654 RETURN ; DONE
001654 000207 RTS PC
3129
3130 .DSABL LSB
3131 ;
3132 001656 LOKFLF:
3133 001656 ERROR$ FLF ; ERROR -- FILE LOOKUP FAILURE
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 71-1
.LOKUP -- ROUTINE TO LOOK UP A FILE TO GET ITS FID
001656 012746 023546 MOV #^RFLF,-(SP)
001662 104400 TRAP TC.ERR
3134 ;
3135
3136 000040 .PSECT DPBS
3137
3138 000040 LOKFNA: ; GET FID DIRECTIVE
3139 000040 QIOW$ 0,,E.FFIL,,.FISTS,,<,,,,,0>
000040 003 014 .BYTE 3,$$$ARG
000042 000000 .WORD 0
000044 000000 .WORD
000046 006 000 .BYTE E.FFIL,
000050 001630' .WORD .FISTS
000052 000000 .WORD
000054 000000 .WORD
000056 000000 .WORD
000060 000000 .WORD
000062 000000 .WORD
000064 000000 .WORD
000066 000000 .WORD 0
3140
3141 000042' LOKIOF=LOKFNA+Q.IOFN
3142 000044' LOKLUN=LOKFNA+Q.IOLU
3143 000066' LOKFNB=LOKFNA+Q.IOPL+12
3144
3145 001664 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 72
.ENTER -- ROUTINE TO ENTER A FILE
3147 .SBTTL .ENTER -- ROUTINE TO ENTER A FILE
3148
3149 ;+
3150 ; .ENTER -- ROUTINE TO ENTER A FILE INTO A DIRECTORY
3151 ;
3152 ; THIS ROUTINE WILL CREATE A FILE OF A GIVEN NAME AND THEN ENTER IT
3153 ; INTO A DIRECTORY.
3154 ;
3155 ; INPUT ARGUMENTS:
3156 ;
3157 ; NONE
3158 ;
3159 ; OUTPUT ARGUMENTS:
3160 ;
3161 ; NONE
3162 ;
3163 ; ERROR CODES RETURNED:
3164 ;
3165 ; FEN -- FILE ENTER FAILURE
3166 ;-
3167
3168 001664 .ENTER::
3169 001664 DIR$ #ENTCRE ; CREATE THE FILE
001664 012746 000070' MOV #ENTCRE,-(SP)
001670 104375 EMT 375
3170 001672 103416 BCS ENTFEN ; ERROR IF CC-C IS SET
3171 001674 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3172 001700 002413 BLT ENTFEN ; NO -- ERROR
3173 001702 DIR$ #ENTENA ; YES -- ENTER THE FILE IN A DIRECTORY
001702 012746 000114' MOV #ENTENA,-(SP)
001706 104375 EMT 375
3174 001710 103404 BCS 10$ ; ERROR IF CC-C IS SET
3175 001712 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED
3176 001716 002401 BLT 10$ ; NO -- ERROR
3177 001720 RETURN ; RETURN
001720 000207 RTS PC
3178 001722 10$: DIR$ #ENTDEL ; DELETE NEW FILE
001722 012746 000144' MOV #ENTDEL,-(SP)
001726 104375 EMT 375
3179 ;
3180 001730 ENTFEN:
3181 001730 ERROR$ FEN ; ERROR -- FILE ENTER FAILURE
001730 012746 023126 MOV #^RFEN,-(SP)
001734 104400 TRAP TC.ERR
3182 ;
3183
3184 000070 .PSECT DPBS
3185
3186 000070 ENTCRE: ; CREATE FILE DIRECTIVE
3187 000070 QIOW$ IO.CRE,LOGLUN,E.FFIL,,.FISTS,,<.OTFNB,,BIT15,1>
000070 003 012 .BYTE 3,$$$ARG
000072 000000G .WORD IO.CRE
000074 000004 .WORD LOGLUN
000076 006 000 .BYTE E.FFIL,
000100 001630' .WORD .FISTS
000102 000000 .WORD
000104 003764' .WORD .OTFNB
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 72-1
.ENTER -- ROUTINE TO ENTER A FILE
000106 000000 .WORD
000110 100000 .WORD BIT15
000112 000001 .WORD 1
3188
3189 000114 ENTENA: ; ENTER FILE DIRECTIVE
3190 000114 QIOW$ IO.ENA,LOGLUN,E.FFIL,,.FISTS,,<,,,,,.OTFNB>
000114 003 014 .BYTE 3,$$$ARG
000116 000000G .WORD IO.ENA
000120 000004 .WORD LOGLUN
000122 006 000 .BYTE E.FFIL,
000124 001630' .WORD .FISTS
000126 000000 .WORD
000130 000000 .WORD
000132 000000 .WORD
000134 000000 .WORD
000136 000000 .WORD
000140 000000 .WORD
000142 003764' .WORD .OTFNB
3191
3192 000144 ENTDEL: ; DELETE FILE DIRECTIVE
3193 000144 QIOW$ IO.DEL,LOGLUN,E.FFIL
000144 003 006 .BYTE 3,$$$ARG
000146 000000G .WORD IO.DEL
000150 000004 .WORD LOGLUN
000152 006 000 .BYTE E.FFIL,
000154 000000 .WORD
000156 000000 .WORD
3194
3195 001736 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 73
.OPEN -- ROUTINE TO OPEN A FILE
3197 .SBTTL .OPEN -- ROUTINE TO OPEN A FILE
3198
3199 ;+
3200 ; .OPEN -- ROUTINE TO OPEN A FILE WITH SOME ACCESS FUNCTION
3201 ;
3202 ; THIS ROUTINE WILL OPEN A FILE WITH SOME SPECIFIED ACCESS RIGHTS.
3203 ; IT WILL ALSO READ THE FILE ATTRIBUTES.
3204 ;
3205 ; INPUT ARGUMENTS:
3206 ;
3207 ; R1=FILE NAME BLOCK (FIRST 2 WORDS ARE FILE ID)
3208 ; R2=LUN
3209 ; R4=ACCESS FUNCTION
3210 ;
3211 ; OUTPUT ARGUMENTS:
3212 ;
3213 ; NONE
3214 ;
3215 ; ERROR CODES RETURNED:
3216 ;
3217 ; FOF -- FILE OPEN FAILURE
3218 ;-
3219
3220 001736 .OPEN::
3221 001736 010437 000162' MOV R4,OPEFUN ; SET FUNCTION
3222 001742 010237 000164' MOV R2,OPELUN ; SET LUN
3223 001746 010137 000174' MOV R1,OPEFID ; SET FID
3224 001752 010137 000210' MOV R1,OPEATT ; SET FILE ATTRIBUTES
3225 001756 062737 000032 000210' ADD #32,OPEATT ; POINT TO CORRECT ADDR
3226 001764 DIR$ #OPEACC ; OPEN THE FILE WITH SOME ACCESS
001764 012746 000160' MOV #OPEACC,-(SP)
001770 104375 EMT 375
3227 001772 103401 BCS OPEFOF ; ERROR IF CC-C IS SET
3228 001774 RETURN
001774 000207 RTS PC
3229 ;
3230 001776 OPEFOF:
3231 001776 ERROR$ FOF ; ERROR -- FILE OPEN FAILURE
001776 012746 023736 MOV #^RFOF,-(SP)
002002 104400 TRAP TC.ERR
3232 ;
3233
3234 000160 .PSECT DPBS
3235
3236 000160 OPEACC: ; OPEN FILE DIRECTIVE
3237 000160 QIOW$ 0,0,E.FFIL,,.FISTS,,<0,OPERAT,,,BIT15>
000160 003 013 .BYTE 3,$$$ARG
000162 000000 .WORD 0
000164 000000 .WORD 0
000166 006 000 .BYTE E.FFIL,
000170 001630' .WORD .FISTS
000172 000000 .WORD
000174 000000 .WORD 0
000176 000206' .WORD OPERAT
000200 000000 .WORD
000202 000000 .WORD
000204 100000 .WORD BIT15
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 73-1
.OPEN -- ROUTINE TO OPEN A FILE
3238
3239 000162' OPEFUN=OPEACC+Q.IOFN
3240 000164' OPELUN=OPEACC+Q.IOLU
3241 000174' OPEFID=OPEACC+Q.IOPL
3242
3243 000206 OPERAT:
3244 000206 374 016 .BYTE -4,16
3245 000210 000000 .WORD 0
3246 000212 000 000 .BYTE 0,0
3247
3248 000210' OPEATT=OPERAT+2
3249
3250 002004 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 74
.EXTND -- ROUTINE TO EXTEND A FILE
3252 .SBTTL .EXTND -- ROUTINE TO EXTEND A FILE
3253
3254 ;+
3255 ; .EXTND -- ROUTINE TO EXTEND A FILE BY ONE BLOCK
3256 ;
3257 ; THIS ROUTINE WILL EXTEND A CURRENTLY OPEN FILE WITH EXTEND ACCESS
3258 ; BY ONE BLOCK.
3259 ;
3260 ; INPUT ARGUMENTS:
3261 ;
3262 ; NONE
3263 ;
3264 ; OUTPUT ARGUMENTS:
3265 ;
3266 ; NONE
3267 ;
3268 ; ERROR CODES RETURNED:
3269 ;
3270 ; FEF -- FILE EXTEND FAILURE
3271 ;-
3272
3273 002004 .EXTND::
3274 002004 DIR$ #EXTEXT ; EXTEND THE FILE
002004 012746 000214' MOV #EXTEXT,-(SP)
002010 104375 EMT 375
3275 002012 103411 BCS EXTFEF ; ERROR IF CC-C IS SET
3276 002014 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3277 002020 002406 BLT EXTFEF ; NO -- ERROR
3278 002022 062737 000001 004024' ADD #1,.OTATT+6 ; INCREASE BLOCKS ALLOCATED
3279 002030 005537 004022' ADC .OTATT+4 ; PROPAGATE CARRY
3280 002034 RETURN ; DONE
002034 000207 RTS PC
3281 ;
3282 002036 EXTFEF:
3283 002036 013737 002762' 004032' MOV .OTPOS,.OTATT+14 ; SET NEXT FREE BYTE
3284 002044 162737 002764' 004032' SUB #.OTBUF,.OTATT+14 ; MAKE RELATIVE
3285 002052 012701 004016' MOV #.OTATT,R1 ; SET ATTRIBUTE ADDR
3286 002056 012702 000004 MOV #LOGLUN,R2 ; SET LUN
3288 002062 105037 000154' CLRB .OUTLG ; INDICATE FILE CLOSED
3290 002066 CALL .CLOSE ; CLOSE FILE
002066 004737 002114' JSR PC,.CLOSE
3291 002072 ERROR$ FEF ; ERROR -- FILE EXTEND FAILURE
002072 012746 023116 MOV #^RFEF,-(SP)
002076 104400 TRAP TC.ERR
3292 ;
3293
3294 000214 .PSECT DPBS
3295
3296 000214 EXTEXT: ; FILE EXTEND DIRECTIVE
3297 000214 QIOW$ IO.EXT,LOGLUN,E.FFIL,,.FISTS,,<,,BIT15,1>
000214 003 012 .BYTE 3,$$$ARG
000216 000000G .WORD IO.EXT
000220 000004 .WORD LOGLUN
000222 006 000 .BYTE E.FFIL,
000224 001630' .WORD .FISTS
000226 000000 .WORD
000230 000000 .WORD
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 74-1
.EXTND -- ROUTINE TO EXTEND A FILE
000232 000000 .WORD
000234 100000 .WORD BIT15
000236 000001 .WORD 1
3298
3299 002100 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 75
.CLOSE -- ROUTINE TO CLOSE A FILE
3301 .SBTTL .CLOSE -- ROUTINE TO CLOSE A FILE
3302
3303 ;+
3304 ; .CLOSE -- ROUTINE TO CLOSE A SPECIFIED FILE
3305 ;
3306 ; THIS ROUTINE WILL CLOSE AND DEACCESS A SPECIFIED FILE.
3307 ; IT WILL ALSO WRITE OUT THE CURRENT ATTRIBUTES.
3308 ;
3309 ; INPUT ARGUMENTS:
3310 ;
3311 ; R1=ATTRIBUTE BLOCK
3312 ; R2=LUN
3313 ;
3314 ; OUTPUT ARGUMENTS:
3315 ;
3316 ; NONE
3317 ;
3318 ; ERROR CODES RETURNED:
3319 ;
3320 ; FCF -- FILE CLOSE FAILURE
3321 ;-
3322
3323 .ENABL LSB
3324
3325 002100 .DELET::
3326 002100 012737 000000G 000242' MOV #IO.DEL,CLOIOF ; I/O FUNCTION FOR DELETE
3327 002106 005037 000256' CLR CLOATR ; NO ATTRIBUTES
3328 002112 000406 BR 5$ ; DO IT
3329 002114 .CLOSE::
3330 002114 012737 000000G 000242' MOV #IO.DAC,CLOIOF ; I/O FUNCTION FOR DEACCESS
3331 002122 012737 000260' 000256' MOV #CLOWAT,CLOATR ; WRITE ATTRIBUTES
3332 002130 010237 000244' 5$: MOV R2,CLOLUN ; SET LUN
3333 002134 010137 000262' MOV R1,CLOATT ; SET FILE ATTRIBUTES
3334 002140 DIR$ #CLODAC ; CLOSE FILE
002140 012746 000240' MOV #CLODAC,-(SP)
002144 104375 EMT 375
3335 002146 103404 BCS CLOFCF ; ERROR IF CC-C IS SET
3336 002150 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3337 002154 002401 BLT CLOFCF ; NO -- ERROR
3338 002156 RETURN ; YES -- DONE
002156 000207 RTS PC
3339 ;
3340
3341 .DSABL LSB
3342
3343 002160 CLOFCF:
3344 002160 ERROR$ FCF ; ERROR -- FILE CLOSE FAILURE
002160 012746 022776 MOV #^RFCF,-(SP)
002164 104400 TRAP TC.ERR
3345 ;
3346
3347 000240 .PSECT DPBS
3348
3349 000240 CLODAC: ; FILE CLOSE DIRECTIVE
3350 000240 QIOW$ 0,0,E.FFIL,,.FISTS,,<0,0>
000240 003 010 .BYTE 3,$$$ARG
000242 000000 .WORD 0
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 75-1
.CLOSE -- ROUTINE TO CLOSE A FILE
000244 000000 .WORD 0
000246 006 000 .BYTE E.FFIL,
000250 001630' .WORD .FISTS
000252 000000 .WORD
000254 000000 .WORD 0
000256 000000 .WORD 0
3351
3352 000242' CLOIOF=CLODAC+Q.IOFN
3353 000244' CLOLUN=CLODAC+Q.IOLU
3354 000256' CLOATR=CLODAC+Q.IOPL+2
3355
3356 000260 CLOWAT:
3357 000260 004 016 .BYTE 4,16
3358 000262 000000 .WORD 0
3359 000264 000 000 .BYTE 0,0
3360
3361 000262' CLOATT=CLOWAT+2
3362
3363 002166 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 76
.SETFN -- ROUTINE TO SET A FILE NAME IN A FILE NAME BLOCK
3365 .SBTTL .SETFN -- ROUTINE TO SET A FILE NAME IN A FILE NAME BLOCK
3366
3367 ;+
3368 ; .SETFN -- ROUTINE TO SET A FILE NAME IN A FILE NAME BLOCK
3369 ;
3370 ; THIS ROUTINE WILL INITIALIZE A FILE NAME BLOCK WITH A FILE NAME,
3371 ; VERSION NUMBER, AND STATUS VALUES.
3372 ;
3373 ; INPUT ARGUMENTS:
3374 ;
3375 ; R0=FILE NAME PTR
3376 ; R1=FILE NAME BLOCK ADDR
3377 ;
3378 ; OUTPUT ARGUMENTS:
3379 ;
3380 ; NONE
3381 ;
3382 ; ERROR CODES RETURNED:
3383 ;
3384 ; NONE
3385 ;-
3386
3387 002166 .SETFN::
3388 002166 PUSH <R1,R0> ; SAVE R0,R1
002166 010146 MOV R1,-(SP)
002170 010046 MOV R0,-(SP)
3389 002172 005021 CLR (R1)+ ; CLEAR FID
3390 002174 005021 CLR (R1)+ ; CLEAR FID
3391 002176 005021 CLR (R1)+ ; CLEAR FID
3392 002200 012021 MOV (R0)+,(R1)+ ; FILE NAME
3393 002202 012021 MOV (R0)+,(R1)+ ; FILE NAME
3394 002204 012021 MOV (R0)+,(R1)+ ; FILE NAME
3395 002206 012021 MOV (R0)+,(R1)+ ; EXTENSION
3396 002210 012021 MOV (R0)+,(R1)+ ; VERSION
3397 002212 005021 CLR (R1)+ ; STATUS
3398 002214 005011 CLR (R1) ; NEXT PTR
3399 002216 POP <R0,R1> ; RESTORE R0,R1
002216 012600 MOV (SP)+,R0
002220 012601 MOV (SP)+,R1
3400 002222 RETURN ; DONE
002222 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 77
.SETFN -- ROUTINE TO SET A FILE NAME IN A FILE NAME BLOCK
3403
3404 .SBTTL .READR -- ROUTINE TO READ A RECORD
3405
3406 ;+
3407 ; .READR -- ROUTINE TO READ A RECORD FROM THE INDIRECT COMMAND FILE.
3408 ;
3409 ; THIS ROUTINE WILL GET A RECORD (EQUIVILENT TO A TYPED COMMAND) FROM
3410 ; THE CURRENTLY OPEN INDIRECT COMMAND FILE. IT WILL INVISIBLY READ
3411 ; VIRTUAL BLOCKS INORDER TO BLOCK THE RECORDS. IF AN E-O-F IS
3412 ; ENCOUNTERED THE OPEN FILE IS CLOSED AND INPUT IS REDIRECTED TO CTY.
3413 ;
3414 ; INPUT ARGUMENTS:
3415 ;
3416 ; R2=OUTPUT BUFFER
3417 ; R3=STATUS BLOCK
3418 ;
3419 ; OUTPUT ARGUMENTS:
3420 ; R2 POINTS TO END OF RECORD
3421 ; 2(R3) CONTAINS BYTE COUNT OF RECORD
3422 ;
3423 ; ERROR CODES RETURNED:
3424 ;
3425 ; FRD -- FILE READ FAILURE
3426 ;-
3427
3428 002224 .READR::
3429 002224 PUSH <R0,R1> ; SAVE R1 AND R0
002224 010046 MOV R0,-(SP)
002226 010146 MOV R1,-(SP)
3430 002230 10$: CALL .READW ; READ RECORD LENGTH FROM FILE
002230 004737 002330' JSR PC,.READW
3431 002234 103415 BCS 30$ ; EOF IF CC-C IS SET
3432 002236 005700 TST R0 ; SEE IF A NULL RECORD?
3433 002240 001773 BEQ 10$ ; YES -- READ NEXT RECORD
3434 002242 010001 MOV R0,R1 ; NO -- SAVE BYTE COUNT
3435 002244 010063 000002 MOV R0,2(R3) ; SET RETURNED BYTE COUNT
3436 002250 20$: CALL .READB ; READ CHARACTER
002250 004737 002406' JSR PC,.READB
3437 002254 103405 BCS 30$ ; EOF IF CC-C IS SET
3438 002256 110022 MOVB R0,(R2)+ ; SAVE CHARACTER
3439 002260 077105 SOB R1,20$ ; DONE?
3440 002262 25$: POP <R1,R0> ; YES -- RESTORE R1 AND R0
002262 012601 MOV (SP)+,R1
002264 012600 MOV (SP)+,R0
3441 002266 RETURN ; RETURN
002266 000207 RTS PC
3442 002270 005037 001626' 30$: CLR .INDFG ; REDIRECT INPUT TO CTY
3443 002274 012701 002664' MOV #.INFNB,R1 ; INPUT FILE NAME BLOCK
3444 002300 012702 000005 MOV #INDLUN,R2 ; FILE LUN
3445 002304 CALL .CLOSE ; CLOSE FILE AND DEACCESS
002304 004737 002114' JSR PC,.CLOSE
3446 002310 012700 000335' MOV #EOFMSG,R0 ; E-O-F MESSAGE PTR
3447 002314 CALL .TYMSG ; OUTPUT MESSAGE
002314 004737 015446' JSR PC,.TYMSG
3448 002320 005063 000002 40$: CLR 2(R3) ; CLEAR BYTE COUNT
3449 002324 000261 SEC ; SET CC-C BIT
3450 002326 000755 BR 25$ ; DONE
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 77-1
.READR -- ROUTINE TO READ A RECORD
3451 ;
3452
3453 000335 .PSECT MESSAG
3454
3455 000335 EOFMSG:
3456 000335 040 074 105 .ASCIZ % <EOF> %
000340 117 106 076
000343 040 000
3457
3458 002330 .PSECT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 78
.READW -- READ A WORD FROM A FILE
3460 .SBTTL .READW -- READ A WORD FROM A FILE
3461
3462 ;+
3463 ; .READW -- ROUTINE TO READ A WORD FROM A FILE
3464 ;
3465 ; THIS ROUTINE WILL READ A WORD FROM THE CURRENTLY OPEN INDIRECT
3466 ; COMMAND FILE. IF THE CURRENT BLOCK IS EMPTY IT WILL READ IN THE
3467 ; NEXT ONE. THE WORD READ MUST BE WORD ALIGNED. IF AN E-O-F IS
3468 ; ENCOUNTERED THE CC-C BIT IS SET AND THE ROUTINE RETURNS.
3469 ;
3470 ; INPUT ARGUMENTS:
3471 ;
3472 ; NONE
3473 ;
3474 ; OUTPUT ARGUMENTS:
3475 ;
3476 ; R0 CONTAINS WORD READ
3477 ;
3478 ; ERROR CODES RETURNED:
3479 ;
3480 ; FRD -- FILE READ FAILURE
3481 ;-
3482
3483 002330 .READW::
3484 002330 032737 000001 001662' BIT #1,.INPOS ; ARE WE ON A WORD BOUNDRY?
3485 002336 001404 BEQ 10$ ; YES -- GO ON
3486 002340 005237 001662' INC .INPOS ; NO -- GET ON A WORD BOUNDRY
3487 002344 005337 001660' DEC .INBBC ; DECREMENT BYTE COUNT
3488 002350 005737 001660' 10$: TST .INBBC ; IS CURRENT BUFFER EMPTY?
3489 002354 003003 BGT 20$ ; NO -- GO ON
3490 002356 CALL .READ ; YES -- READ NEXT BLOCK
002356 004737 002440' JSR PC,.READ
3491 002362 103410 BCS 30$ ; EOF IF CC-C IS SET
3492 002364 017700 001662' 20$: MOV @.INPOS,R0 ; GET WORD INTO R0
3493 002370 062737 000002 001662' ADD #2,.INPOS ; UPDATE BUFFER POSITION PTR
3494 002376 162737 000002 001660' SUB #2,.INBBC ; UPDATE BUFFER BYTE COUNT
3495 002404 30$: RETURN ; DONE
002404 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 79
.READB -- READ A BYTE FROM A FILE
3497 .SBTTL .READB -- READ A BYTE FROM A FILE
3498
3499 ;+
3500 ; .READB -- ROUTINE TO READ A BYTE FROM A FILE
3501 ;
3502 ; THIS ROUTINE WILL READ A BYTE FROM THE CURRENTLY OPEN INDIRECT
3503 ; COMMAND FILE. IF THE CURRENT BLOCK IS EMPTY IT WILL READ IN THE
3504 ; NEXT ONE. IF AN E-O-F IS ENCOUNTERED THE CC-C BIT IS SET AND THE
3505 ; ROUTINE RETURNS.
3506 ;
3507 ; INPUT ARGUMENTS:
3508 ;
3509 ; NONE
3510 ;
3511 ; OUTPUT ARGUMENTS:
3512 ;
3513 ; R0 CONTAINS BYTE READ
3514 ;
3515 ; ERROR CODES RETURNED:
3516 ;
3517 ; FRD -- FILE READ FAILURE
3518 ;-
3519
3520 002406 .READB::
3521 002406 005737 001660' TST .INBBC ; IS CURRENT BUFFER EMPTY?
3522 002412 003003 BGT 10$ ; NO -- GO ON
3523 002414 CALL .READ ; YES -- READ NEXT BLOCK
002414 004737 002440' JSR PC,.READ
3524 002420 103406 BCS 20$ ; EOF IF CC-C IS SET
3525 002422 117700 001662' 10$: MOVB @.INPOS,R0 ; GET WORD INTO R0
3526 002426 005237 001662' INC .INPOS ; UPDATE BUFFER POSITION PTR
3527 002432 005337 001660' DEC .INBBC ; UPDATE BUFFER BYTE COUNT
3528 002436 20$: RETURN ; DONE
002436 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 80
.READ -- ROUTINE TO READ A BLOCK
3530 .SBTTL .READ -- ROUTINE TO READ A BLOCK
3531
3532 ;+
3533 ; .READ -- ROUTINE TO READ A BLOCK FROM INDIRECT COMMAND FILE
3534 ;
3535 ; THIS ROUTINE WILL READ A BLOCK FROM THE CURRENTLY OPEN INDIRECT
3536 ; COMMAND FILE. THE BUFFER COUNTS AND POINTERS WILL THEN BE SET.
3537 ; IF AN E-O-F IS ENCOUNTERED THE CC-C BIT IS SET AND THE ROUTINE
3538 ; RETURNS.
3539 ;
3540 ; INPUT ARGUMENTS:
3541 ;
3542 ; NONE
3543 ;
3544 ; OUTPUT ARGUMENTS:
3545 ;
3546 ; NONE
3547 ;
3548 ; ERROR CODES RETURNED:
3549 ;
3550 ; FRD -- FILE READ FAILURE
3551 ;-
3552
3553 002440 .READ::
3554 002440 062737 000001 001656' ADD #1,.INVBN+2 ; NEXT VIRTUAL BLOCK
3555 002446 005537 001654' ADC .INVBN ; PROPAGATE CARRY
3556 002452 023737 001656' 002730' CMP .INVBN+2,.INATT+12 ; EOF?
3557 002460 003041 BGT 10$ ; YES -- EXIT
3558 002462 QIOW$S #IO.RVB,#INDLUN,#E.FFIL,,#.FISTS,,<#.INBUF,#.BUFSZ,,.INVBN,.INVBN+2>
002462 013746 001656' MOV .INVBN+2,-(SP)
002466 013746 001654' MOV .INVBN,-(SP)
002472 005046 CLR -(SP)
002474 012746 001000 MOV #.BUFSZ,-(SP)
002500 012746 001664' MOV #.INBUF,-(SP)
002504 005046 CLR -(SP)
002506 012746 001630' MOV #.FISTS,-(SP)
002512 005046 CLR -(SP)
002514 112716 000006 MOVB #E.FFIL,(SP)
002520 012746 000005 MOV #INDLUN,-(SP)
002524 012746 000000G MOV #IO.RVB,-(SP)
002530 012746 MOV (PC)+,-(SP)
002532 003 013 .BYTE 3,$$$T1
002534 104375 EMT 375
3559 002536 103414 BCS REAFRD ; ERROR IF CC-C IS SET
3560 002540 105737 001630' TSTB .FISTS ; SEE IF WE REALLY SUCCEEDED?
3561 002544 002411 BLT REAFRD ; NO -- CHECK ERROR
3562 002546 012737 001664' 001662' MOV #.INBUF,.INPOS ; YES -- SET BUFFER POSITION PTR
3563 002554 013737 001632' 001660' MOV .FISTS+2,.INBBC ; SET BUFFER BYTE COUNT
3564 002562 RETURN ; DONE
002562 000207 RTS PC
3565 002564 000261 10$: SEC ; YES -- SET CC-C
3566 002566 RETURN ; DONE
002566 000207 RTS PC
3567 ;
3568 002570 REAFRD:
3569 002570 012701 002716' MOV #.INATT,R1 ; SET ATTRIBUTE ADDR
3570 002574 012702 000005 MOV #INDLUN,R2 ; SET LUN
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 80-1
.READ -- ROUTINE TO READ A BLOCK
3571 002600 005037 001626' CLR .INDFG ; INDICATE FILE CLOSED
3572 002604 CALL .CLOSE ; CLOSE FILE
002604 004737 002114' JSR PC,.CLOSE
3573 002610 20$: ERROR$ FRD ; ERROR -- FILE READ FAILURE
002610 012746 024124 MOV #^RFRD,-(SP)
002614 104400 TRAP TC.ERR
3574 ;
3575
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 81
.WRITR -- ROUTINE TO WRITE A RECORD
3578 .SBTTL .WRITR -- ROUTINE TO WRITE A RECORD
3579
3580 ;+
3581 ; .WRITR -- ROUTINE TO WRITE A RECORD TO THE LOG FILE
3582 ;
3583 ; THIS ROUTINE WILL WRITE A RECORD TO THE FILE PARSER.LOG WHEN
3584 ; OUTPUT IS DIRECTED TO THE LOG FILE.
3585 ;
3586 ; INPUT ARGUMENTS:
3587 ;
3588 ; R2=RECORD PTR
3589 ; R1=BYTE COUNT
3590 ;
3591 ; OUTPUT ARGUMENTS:
3592 ;
3593 ; NONE
3594 ;
3595 ; ERROR CODES RETURNED:
3596 ;
3597 ; FEF -- FILE EXTEND FAILURE
3598 ; FWT -- FILE WRITE FAILURE
3599 ;-
3600
3601 002616 .WRITR::
3602 002616 PUSH R0 ; SAVE R0
002616 010046 MOV R0,-(SP)
3603 002620 121227 000012 5$: CMPB (R2),#12 ; CHARACTER A <LF>?
3604 002624 001414 BEQ 7$ ; YES -- WRITE OUT RECORD
3605 002626 121227 000015 CMPB (R2),#15 ; NO -- CHARACTER A <CR>?
3606 002632 001444 BEQ 40$ ; YES -- PROCESS IT
3607 002634 112277 004036' MOVB (R2)+,@.RECPT ; NO -- WRITE CHAR TO RECORD
3608 002640 005237 004036' INC .RECPT ; UPDATE POINTER
3609 002644 005237 004034' INC .RECNT ; INCREMENT COUNT
3610 002650 077115 SOB R1,5$ ; DONE?
3611 002652 6$: POP R0 ; YES -- RESTORE R0
002652 012600 MOV (SP)+,R0
3612 002654 RETURN ; EXIT
002654 000207 RTS PC
3613 002656 7$: PUSH <R2,R1> ; SAVE R2,R1
002656 010246 MOV R2,-(SP)
002660 010146 MOV R1,-(SP)
3614 002662 012702 004040' MOV #.RECRD,R2 ; R2 POINTS TO RECORD
3615 002666 013701 004034' MOV .RECNT,R1 ; R1 HAS RECORD COUNT
3616 002672 020137 004020' CMP R1,.OTATT+2 ; IS THIS THE BIGGEST RECORD?
3617 002676 101402 BLOS 10$ ; NO -- GO ON
3618 002700 010137 004020' MOV R1,.OTATT+2 ; YES -- SAVE IT
3619 002704 010100 10$: MOV R1,R0 ; WRITE OUT RECORD BYTE COUNT
3620 002706 CALL .WRITW ; WRITE IT
002706 004737 002754' JSR PC,.WRITW
3621 002712 005701 TST R1 ; IS THIS A NULL RECORD?
3622 002714 001404 BEQ 30$ ; YES -- DONE
3623 002716 112200 20$: MOVB (R2)+,R0 ; NO -- GET NEXT BYTE OF RECORD
3624 002720 CALL .WRITB ; WRITE IT
002720 004737 003030' JSR PC,.WRITB
3625 002724 077104 SOB R1,20$ ; ALL BYTES WRITTEN?
3626 002726 30$: POP <R1,R2> ; YES -- RESTORE R2,R1
002726 012601 MOV (SP)+,R1
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 81-1
.WRITR -- ROUTINE TO WRITE A RECORD
002730 012602 MOV (SP)+,R2
3627 002732 012737 004040' 004036' MOV #.RECRD,.RECPT ; RESET RECORD POINTER
3628 002740 005037 004034' CLR .RECNT ; CLEAR RECORD COUNT
3629 002744 105722 40$: TSTB (R2)+ ; REMOVE NEW LINE CHARACTER
3630 002746 005301 DEC R1 ; REMOVE FROM COUNT
3631 002750 001323 BNE 5$ ; NO -- GO ON
3632 002752 000737 BR 6$ ; YES -- EXIT
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 82
.WRITW -- WRITE A WORD TO A FILE
3634 .SBTTL .WRITW -- WRITE A WORD TO A FILE
3635
3636 ;+
3637 ; .WRITW -- ROUTINE TO WRITE A WORD TO A FILE
3638 ;
3639 ; THIS ROUTINE WILL WRITE A WORD TO A CURRENTLY OPEN FILE. IF THE
3640 ; CURRENT BLOCK IS FULL THEN THE BLOCK WILL BE WRITTEN TO DISK AND
3641 ; THE WORD WILL BE WRITTEN TO THE NEW BLOCK.
3642 ;
3643 ; INPUT ARGUMENTS:
3644 ;
3645 ; R0=WORD TO WRITE
3646 ;
3647 ; OUTPUT ARGUMENTS:
3648 ;
3649 ; NONE
3650 ;
3651 ; ERROR CODES RETURNED:
3652 ;
3653 ; FEF -- FILE EXTEND FAILURE
3654 ; FWT -- FILE WRITE FAILURE
3655 ;-
3656
3657 002754 .WRITW::
3658 002754 032737 000001 002762' BIT #1,.OTPOS ; ARE WE ON A WORD BOUNDRY?
3659 002762 001404 BEQ 10$ ; YES -- GO ON
3660 002764 005237 002762' INC .OTPOS ; NO -- POSITION TO WORD BOUNDRY
3661 002770 005337 002760' DEC .OTBBC ; DECREMENT FREE BYTE COUNT
3662 002774 005737 002760' 10$: TST .OTBBC ; BLOCK FULL?
3663 003000 003002 BGT 20$ ; NO -- GO ON
3664 003002 CALL .WRITE ; YES -- WRITE OUT BLOCK
003002 004737 003160' JSR PC,.WRITE
3665 003006 010077 002762' 20$: MOV R0,@.OTPOS ; WRITE WORD TO BUFFER
3666 003012 062737 000002 002762' ADD #2,.OTPOS ; UPDATE BUFFER POINTER
3667 003020 162737 000002 002760' SUB #2,.OTBBC ; UPDATE BYTE COUNT
3668 003026 RETURN ; DONE
003026 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 83
.WRITB -- WRITE A BYTE TO A FILE
3670 .SBTTL .WRITB -- WRITE A BYTE TO A FILE
3671
3672 ;+
3673 ; .WRITB -- ROUTINE TO WRITE A BYTE TO A FILE
3674 ;
3675 ; THIS ROUTINE WILL WRITE A BYTE TO A BUFFER THAT WILL THEN BE WRITTEN
3676 ; TO DISK WHEN IT IS FULL.
3677 ;
3678 ; INPUT ARGUMENTS:
3679 ;
3680 ; R0=BYTE TO WRITE
3681 ;
3682 ; OUTPUT ARGUMENTS:
3683 ;
3684 ; NONE
3685 ;
3686 ; ERROR CODES RETURNED:
3687 ;
3688 ; FEF -- FILE EXTEND FAILURE
3689 ; FWT -- FILE WRITE FAILURE
3690 ;-
3691
3692 003030 .WRITB::
3693 003030 005737 002760' TST .OTBBC ; BUFFER FULL?
3694 003034 003002 BGT 10$ ; NO -- GO ON
3695 003036 CALL .WRITE ; YES -- WRITE OUT BLOCK
003036 004737 003160' JSR PC,.WRITE
3696 003042 110077 002762' 10$: MOVB R0,@.OTPOS ; WRITE BYE TO BUFFER
3697 003046 005237 002762' INC .OTPOS ; UPDATE POSITION
3698 003052 005337 002760' DEC .OTBBC ; UPDATE BYTE COUNT
3699 003056 RETURN ; DONE
003056 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 84
.WRITZ -- WRITE OUT CURRENT BLOCK
3701 .SBTTL .WRITZ -- WRITE OUT CURRENT BLOCK
3702
3703 ;+
3704 ; .WRITZ -- ROUTINE TO WRITE OUT CURRENT BUFFER
3705 ;
3706 ; THIS ROUTINE WILL WRITE OUT THE CURRENT BUFFER TO THE DISK FILE.
3707 ; IF THE BUFFER IS NOT FULL THE THE EXCESS SPACE IS ZEROED.
3708 ;
3709 ; INPUT ARGUMENTS:
3710 ;
3711 ; NONE
3712 ;
3713 ; OUTPUT ARGUMENTS:
3714 ;
3715 ; NONE
3716 ;
3717 ; ERROR CODES RETURNED:
3718 ;
3719 ; FEF -- FILE EXTEND FAILURE
3720 ; FWT -- FILE WRITE FAILURE
3721 ;-
3722
3723 003060 .WRITZ::
3724 003060 013737 002762' 004032' MOV .OTPOS,.OTATT+14 ; NEXT FREE BYTE
3725 003066 162737 002764' 004032' SUB #.OTBUF,.OTATT+14 ; MAKE RELATIVE ADDR
3726 003074 023727 002760' 000002 CMP .OTBBC,#2 ; MORE THAN 1 BYTE LEFT?
3727 003102 002413 BLT 10$ ; NO -- JUST ZERO BUFFER
3728 003104 013700 002760' MOV .OTBBC,R0 ; YES -- WRITE ZERO RECORD
3729 003110 032737 000001 002762' BIT #1,.OTPOS ; ON WORD BOUNDRY?
3730 003116 001401 BEQ 5$ ; YES -- GO ON
3731 003120 005300 DEC R0 ; NO -- DECREMENT COUNT
3732 003122 162700 000002 5$: SUB #2,R0 ; DISCOUNT RECORD COUNT FIELD
3733 003126 CALL .WRITW ; WRITE COUNT
003126 004737 002754' JSR PC,.WRITW
3734 003132 005737 002760' 10$: TST .OTBBC ; BUFFER FULL?
3735 003136 001405 BEQ 20$ ; YES -- DONE
3736 003140 112700 000000 MOVB #0,R0 ; WRITE OUT ZEROS
3737 003144 12$: CALL .WRITB ; NO -- FILL BUFFER
003144 004737 003030' JSR PC,.WRITB
3738 003150 000770 BR 10$ ; NEXT
3739 003152 20$: CALL .WRITE ; WRITE OUT BUFFER
003152 004737 003160' JSR PC,.WRITE
3740 003156 RETURN ; DONE
003156 000207 RTS PC
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 85
.WRITE -- ROUTINE TO WRITE A BLOCK
3742 .SBTTL .WRITE -- ROUTINE TO WRITE A BLOCK
3743
3744 ;+
3745 ; .WRITE -- ROUTINE TO WRITE A BLOCK TO A FILE
3746 ;
3747 ; THIS ROUTINE WILL WRITE A BLOCK TO A CURRENTLY OPEN FILE ON DISK.
3748 ; IF THE FILE SPACE IS FULL THE FILE WILL BE EXTENDED.
3749 ;
3750 ; INPUT ARGUMENTS:
3751 ;
3752 ; NONE
3753 ;
3754 ; OUTPUT ARGUMENTS:
3755 ;
3756 ; NONE
3757 ;
3758 ; ERROR CODES RETURNED:
3759 ;
3760 ; FEF -- FILE EXTEND FAILURE
3761 ; FWT -- FILE WRITE FAILURE
3762 ;-
3763
3764 003160 .WRITE::
3765 003160 062737 000001 002756' ADD #1,.OTVBN+2 ; NEXT VIRTUAL BLOCK
3766 003166 005537 002754' ADC .OTVBN ; PROPAGATE CARRY
3767 003172 10$: QIOW$S #IO.WVB,#LOGLUN,#E.FFIL,,#.FISTS,,<#.OTBUF,#.BUFSZ,,.OTVBN,.OTVBN+2>
003172 013746 002756' MOV .OTVBN+2,-(SP)
003176 013746 002754' MOV .OTVBN,-(SP)
003202 005046 CLR -(SP)
003204 012746 001000 MOV #.BUFSZ,-(SP)
003210 012746 002764' MOV #.OTBUF,-(SP)
003214 005046 CLR -(SP)
003216 012746 001630' MOV #.FISTS,-(SP)
003222 005046 CLR -(SP)
003224 112716 000006 MOVB #E.FFIL,(SP)
003230 012746 000004 MOV #LOGLUN,-(SP)
003234 012746 000000G MOV #IO.WVB,-(SP)
003240 012746 MOV (PC)+,-(SP)
003242 003 013 .BYTE 3,$$$T1
003244 104375 EMT 375
3768 003246 103427 BCS WRIFWT ; ERROR IF CC-C IS SET
3769 003250 105737 001630' TSTB .FISTS ; DID WE REALLY SUCCEED?
3770 003254 002415 BLT 20$ ; NO -- SEE WHY
3771 003256 013737 002756' 004030' MOV .OTVBN+2,.OTATT+12 ; SET HIGHEST USED BLOCK
3772 003264 013737 002754' 004026' MOV .OTVBN,.OTATT+10 ; SET HIGHEST USED BLOCK
3773 003272 012737 002764' 002762' MOV #.OTBUF,.OTPOS ; YES -- SET BUFFER POINTER
3774 003300 012737 001000 002760' MOV #.BUFSZ,.OTBBC ; SET BYTE COUNT
3775 003306 RETURN ; DONE
003306 000207 RTS PC
3776 003310 122737 000000G 001630' 20$: CMPB #IE.EOF,.FISTS ; E-O-F FOUND?
3777 003316 001003 BNE WRIFWT ; NO -- ERROR
3778 003320 CALL .EXTND ; YES -- EXTEND FILE
003320 004737 002004' JSR PC,.EXTND
3779 003324 000722 BR 10$ ; TRY AGAIN
3780 ;
3781 003326 WRIFWT:
3782 003326 ERROR$ FWT ; ERROR -- FILE WRITE FAILURE
FILIO -- FILE INTERFACE ROUTINE MACRO M1113 10-NOV-81 17:44 PAGE 85-1
.WRITE -- ROUTINE TO WRITE A BLOCK
003326 012746 024454 MOV #^RFWT,-(SP)
003332 104400 TRAP TC.ERR
3783 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 87
.WRITE -- ROUTINE TO WRITE A BLOCK
3786 .TITLE KL10F -- KL10 FUNCTION MODULE 7812.21
3787
3788 .IDENT "006140"
3789
3790 ;
3791 ; COPYRIGHT (C) 1975, 1979 BY
3792 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
3793 ;
3794 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
3795 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
3796 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
3797 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
3798 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
3799 ;
3800 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
3801 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
3802 ; CORPORATION.
3803 ;
3804 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
3805 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
3806 ;
3807 ; MODULE: KL10 FUNCTIONS
3808 ;
3809 ; VERSION: 06-14
3810 ;
3811 ; AUTHOR: R. BELANGER
3812 ;
3813 ; DATE: 7812.21
3814 ;
3815 ; THIS MODULE CONTAINS:
3816 ;
3817 ; 1) KL MBOX CLOCK BURST CODE
3818
3819 .MCALL $DEF,DIR$,MRKT$,PREX$,PRDP$,KLDR$,KLDW$,KLDX$,WTSE$S
3820
3821 003334 $DEF
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 88
.BURST -- MBOX CLOCK BURST SUBROUTINE 7601.02
3823 .SBTTL .BURST -- MBOX CLOCK BURST SUBROUTINE 7601.02
3824
3825 ;+
3826 ; .BRMBC -- SUBROUTINE TO STOP THE KL CLOCK AND BURST THE MBOX
3827 ; CLOCK AS IN ".BURST".
3828 ; .BURST -- SUBROUTINE TO BURST THE KL MBOX CLOCK
3829 ; A MAXIMUM OF 255 DECIMAL TICKS PER CALL.
3830 ;
3831 ; THIS SUBROUTINE LOADS THE KL BURST COUNT REGISTER
3832 ; AND RUNS THE MBOX CLOCK FROM THE BURST COUNT REGISTER. IT WILL
3833 ; FAIL IF A BURST COUNT .GT. 255 DECIMAL IS REQUESTED IN ONE CALL.
3834 ;
3835 ; INPUT ARGUMENTS:
3836 ;
3837 ; R0 CONTAINS THE BURST COUNT
3838 ;
3839 ; OUTPUT ARGUMENTS:
3840 ;
3841 ; NONE.
3842 ;
3843 ; ERROR CODES RETURNED:
3844 ;
3845 ; BAE -- BURST ARGUMENT ERROR.
3846 ; FWF -- FUNCTION WRITE FAILED.
3847 ; FXF -- FUNCTION EXECUTE FAILED.
3848 ;-
3849
3850 003334 .BRMBC::
3851 003334 CALL .STPXC ; STOP THE KL CLOCK
003334 004737 007302' JSR PC,.STPXC
3852 003340 .BURST::
3853 003340 022700 000377 CMP #^D255,R0 ; IS ARGUMENT .GT. 255 DECIMAL?
3854 003344 103406 BLO BCCTER ; YES -- ERROR
3855 003346 CALL .LDBRG ; NO -- LOAD THE BURST COUNTER
003346 004737 005456' JSR PC,.LDBRG
3856 003352 012700 000012 MOV #FX.BMC,R0 ; SET UP TO BURST THE MBOX CLOCK
3857 003356 CALLR .FXCT ; DO IT
003356 000137 004566' JMP .FXCT
3858 ;
3859 003362 BCCTER:
3860 003362 ERROR$ BAE ; ERROR -- ARGUMENT OUT OF RANGE
003362 012746 006255 MOV #^RBAE,-(SP)
003366 104400 TRAP TC.ERR
3861 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 89
.CLDFB -- DTE-20 OPERATION BUFFER CLEAR SUBROUTINE 7508.26
3863 .SBTTL .CLDFB -- DTE-20 OPERATION BUFFER CLEAR SUBROUTINE 7508.26
3864
3865 ;+
3866 ; .CLDFB -- SUBROUTINE TO CLEAR THE DTE-20 TRANSFER BUFFERS
3867 ; .CLDFR -- SUBROUTINE TO CLEAR THE DTE-20 READ BUFFER
3868 ; .CLDFW -- SUBROUTINE TO CLEAR THE DTE-20 WRITE BUFFER
3869 ;
3870 ; THE SUBROUTINES CLEAR THE INDICATED BUFFERS
3871 ;
3872 ; INPUT ARGUMENTS:
3873 ;
3874 ; NONE.
3875 ;
3876 ; OUTPUT ARGUMENTS:
3877 ;
3878 ; NONE.
3879 ;
3880 ; ERROR CODES RETURNED:
3881 ;
3882 ; NONE.
3883 ;-
3884
3885 .ENABL LSB
3886
3887 003370 .CLDFB::
3888 003370 CALL .CLDFW ; CLEAR THE WRITE HALF OF THE BUFFER
003370 004737 003404' JSR PC,.CLDFW
3889 003374 .CLDFR::
3890 003374 PUSH R0 ; SAVE R0
003374 010046 MOV R0,-(SP)
3891 003376 012700 000312' MOV #.DFRB,R0 ; .CLEAR THE FUNCTION READ BUFFER
3892 003402 000403 BR 10$ ; .
3893 ;
3894 003404 .CLDFW::
3895 003404 PUSH R0 ; SAVE R0
003404 010046 MOV R0,-(SP)
3896 003406 012700 000304' MOV #.DFWB,R0 ; .CLEAR THE FUNCTION WRITE BUFFER
3897 003412 10$:
3898 003412 CALL .TPCLR ; .CLEAR THE BUFFER
003412 004737 011356' JSR PC,.TPCLR
3899 003416 000414 BR 20$ ; .RESTORE R0 AND EXIT
3900 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 90
.CLRFF -- CLEAR KL RUN FLOP SUBROUTINE 7609.10
3902 .SBTTL .CLRFF -- CLEAR KL RUN FLOP SUBROUTINE 7609.10
3903
3904 ;+
3905 ; .CLRFF -- SUBROUTINE TO CLEAR THE KL RUN FLOP.
3906 ;
3907 ; THIS SUBROUTINE CLEARS THE KL RUN FLOP AND ISSUES A
3908 ; "MARK TIME" DIRECTIVE FOR THE CLOCK SHUTDOWN IN ".KLHLT".
3909 ;
3910 ; INPUT ARGUMENTS:
3911 ;
3912 ; NONE.
3913 ;
3914 ; OUTPUT ARGUMENTS:
3915 ;
3916 ; NONE
3917 ;
3918 ; ERROR CODES RETURNED:
3919 ;
3920 ; FXF -- FUNCTION EXECUTE FAILED.
3921 ;-
3922
3923 003420 .CLRFF::
3924 003420 000241 CLC ; CLEAR CC-C
3926 003422 DIR$ #.MTDPB ; REQUEST MARK TIME (FOR ".KLHLT")
003422 012746 000266' MOV #.MTDPB,-(SP)
003426 104375 EMT 375
3928 003430 PUSH R0 ; SAVE R0
003430 010046 MOV R0,-(SP)
3929 003432 112737 000001 000000G MOVB #1,.NOHLT ; TELL RSX20F NOT TO WORRY ABOUT THIS
3930 003440 012700 000020 MOV #FX.CRF,R0 ; .SET UP TO CLEAR KL RUN FLOP
3931 003444 CALL .FXCT ; .DO IT
003444 004737 004566' JSR PC,.FXCT
3932 003450 20$:
3933 003450 POP R0 ; .RESTORE R0
003450 012600 MOV (SP)+,R0
3934 003452 RETURN ; TO CALLER
003452 000207 RTS PC
3935
3936 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 91
.CLRFF -- CLEAR KL RUN FLOP SUBROUTINE 7609.10
3938 ; DPB FOR MARK TIME DIRECTIVE
3939
3940 ; !===============================================!
3941 ; 00 ! DPB SIZE ! DIC !
3942 ; !-----------------------------------------------!
3943 ; 02 ! EVENT FLAG !
3944 ; !-----------------------------------------------!
3945 ; 04 ! TIME INTERVAL IN CLOCK TICKS !
3946 ; !-----------------------------------------------!
3947 ; 06 ! RESCHEDULE INTERVAL IN CLOCK TICKS !
3948 ; !-----------------------------------------------!
3949 ; 10 ! AST HANDLER ENTRY POINT !
3950 ; !===============================================!
3951
3952 000266 .PSECT DPBS
3953
3954 000266 .MTDPB::
3955 000266 MRKT$ E.FHTO,30.,0,0
000266 027 005 .BYTE 23.,5
000270 000001 .WORD E.FHTO
000272 000036 .WORD 30.
000274 000000 .WORD 0
000276 000000 .WORD 0
3956
3957 003454 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 92
.DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
3959 .SBTTL .DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
3960
3961 ;+
3962 ; .DTDW1 -- SUBROUTINE TO READ DTE-20 DIAG WORD 1.
3963 ; .DTDW2 -- SUBROUTINE TO READ DTE-20 DIAG WORD 2.
3964 ; .DTSTA -- SUBROUTINE TO READ DTE-20 STATUS WORD.
3965 ; .DTDW3 -- SUBROUTINE TO READ DTE-20 DIAG WORD 3.
3966 ; .DWDW1 -- SUBROUTINE TO WRITE DTE-20 DIAG WORD 1.
3967 ; .DWDW2 -- SUBROUTINE TO WRITE DTE-20 DIAG WORD 2.
3968 ; .DWSTA -- SUBROUTINE TO WRITE DTE-20 STATUS WORD.
3969 ; .DWDW3 -- SUBROUTINE TO WRITE DTE-20 DIAG WORD 3.
3970 ;
3971 ; THESE SUBROUTINES READ OR WRITE THE CONTENT OF THE SPECIFIED
3972 ; DTE-20 REGISTER.
3973 ;
3974 ; THE CONTENT OF THE REGISTER TO BE WRITTEN IS PASSED IN R0.
3975 ; WHETHER A READ OR WRITE IS SPECIFIED, THE CONTENT OF THE REGISTER
3976 ; AFTER THE READ OR WRITE IS ALWAYS RETURNED IN R0 AND IN ".DREG".
3977 ;
3978 ; INPUT ARGUMENTS:
3979 ;
3980 ; (READ) NONE.
3981 ; (WRITE) R0 POINTS TO THE DATA TO BE WRITTEN.
3982 ;
3983 ; OUTPUT ARGUMENTS:
3984 ;
3985 ; R0 CONTAINS THE DATA FROM THE REGISTER WHICH WAS
3986 ; READ OR WRITTEN.
3987 ;
3988 ; ERROR CODES RETURNED:
3989 ;
3990 ; DSF -- DTE-20 STATUS FAILURE.
3991 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 93
.DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
3993 .ENABL LSB
3994
3995 003454 .DWDW1:: ; DIAG WORD 1 WRITE ENTRY
3996 003454 105037 000303' CLRB .REGRW+3 ; SET DIAG1 OFFSET
3997 003460 000413 BR 10$ ; DO COMMON WRITE CODE
3998 ;
3999 003462 .DWDW2:: ; DIAG WORD 2 WRITE ENTRY
4000 003462 112737 000002 000303' MOVB #.DIAG2,.REGRW+3; DIAG2 OFFSET
4001 003470 000407 BR 10$ ; DO COMMON WRITE CODE
4002 ;
4003 003472 .DWSTA:: ; STATUS WRITE ENTRY
4004 003472 112737 000004 000303' MOVB #.DTSTW,.REGRW+3; OFFSET FOR STATUS
4005 003500 000403 BR 10$ ; DO COMMON WRITE CODE
4006 ;
4007 003502 .DWDW3:: ; DIAG WORD 3 WRITE ENTRY
4008 003502 112737 000006 000303' MOVB #.DIAG3,.REGRW+3; SET DIAG WORD 3 OFFSET
4009 003510 10$: ; COMMON WRITE CODE
4010 003510 010037 000304' MOV R0,.REGRW+4 ; SET THE DATA POINTER IN THE DPB
4011 003514 113700 000303' MOVB .REGRW+3,R0 ; GET THE REGISTER OFFSET
4012 003520 046077 004160' 000304' BIC MBZTAB(R0),@.REGRW+4
4013 ; ZERO THE MBZ BITS
4014 003526 000420 BR 30$ ; WRITE IT
4015 ;
4016 003530 .DTDW1:: ; DIAG WORD 1 READ ENTRY
4017 003530 105037 000303' CLRB .REGRW+3 ; DIAG WORD 1 OFFSET IS 0
4018 003534 000413 BR 20$ ; GO READ IT
4019 ;
4020 003536 .DTDW2:: ; DIAG WORD 2 READ ENTRY
4021 003536 112737 000002 000303' MOVB #.DIAG2,.REGRW+3; DIAG WORD 2 OFFSET IS 2
4022 003544 000407 BR 20$ ; GO READ IT
4023 ;
4024 003546 .DTSTA:: ; STATUS WORD READ ENTRY
4025 003546 112737 000004 000303' MOVB #.DTSTW,.REGRW+3; SET THE OFFSET FOR THE STATUS WORD
4026 003554 000403 BR 20$ ; GO READ THE DTE-20 STATUS REGISTER
4027 ;
4028 003556 .DTDW3:: ; DIAG WORD 3 READ ENTRY
4029 003556 112737 000006 000303' MOVB #.DIAG3,.REGRW+3; SET THE OFFSET FOR DIAG WORD 3
4030
4031 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 94
.DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
4033 ; [CONTINUED FROM THE PREVIOUS PAGE]
4034
4035 003564 20$:
4036 003564 005037 000304' CLR .REGRW+4 ; THIS IS NOT A WRITE
4037 003570 30$: ; DATA BUFFER ALREADY LOADED FOR WRITE
4038 003570 005037 000320' CLR .DREG ; CLEAR RETURNED DATA BUFFER
4042 003574 DIR$ #.REGRW ; READ OR WRITE THE REGISTER
003574 012746 000300' MOV #.REGRW,-(SP)
003600 104375 EMT 375
4044 003602 103411 BCS DTEDSF ; ERROR IF CC-C IS SET
4045 003604 013700 000320' MOV .DREG,R0 ; PUT A COPY IN R0
4047 003610 032737 000040 000232' BIT #TR.DTE,.TRKWD ; NO -- ARE WE TRACKING DTE-20 OPS?
4048 003616 001402 BEQ 40$ ; NO -- JUST RETURN
4049 003620 CALLR .DTTRK ; YES -- TRACK IT AND RETURN
003620 000137 012316' JMP .DTTRK
4050 ;
4051 003624 40$:
4053 003624 RETURN ; GO AWAY
003624 000207 RTS PC
4054
4055 .DSABL LSB
4056
4057 003626 DTEDSF:
4058 003626 ERROR$ DSF ; ERROR -- DTE-20 REGISTER READ OR WRITE FAILED
003626 012746 015776 MOV #^RDSF,-(SP)
003632 104400 TRAP TC.ERR
4059 ;
4060
4061 ; TABLE TO CLEAR MBZ BITS ON REGISTER WRITE
4062
4063 004160 .PSECT DATA
4064
4065 004160 MBZTAB:
4066 004160 000442 .WORD D1.MBZ
4067 004162 177641 .WORD D2.MBZ
4068 004164 000000 .WORD ST.MBZ
4069 004166 177704 .WORD D3.MBZ
4070
4071 003634 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 95
.DTERW -- DTE-20 REGISTER READ / WRITE SUBROUTINES 7608.05
4073 ; DPB TO READ OR WRITE THE DTE-20 REGISTERS
4074
4075 ; !===============================================!
4076 ; 00 ! DPB SIZE ! DIC !
4077 ; !-----------------------------------------------!
4078 ; 02 ! REGISTER OFFSET ! DIRECTIVE CODE !
4079 ; !-----------------------------------------------!
4080 ; 04 ! POINTER TO DATA TO BE WRITTEN !
4081 ; !-----------------------------------------------!
4082 ; 06 ! DESTINATION ADDRESS FOR DATA READ !
4083 ; !-----------------------------------------------!
4084 ; 10 ! DTE-20 NUMBER !
4085 ; !===============================================!
4086
4087 000300 .PSECT DPBS
4088
4089 000300 .REGRW::
4090 000300 002411 .WORD 2411
4091 000302 017 000 .BYTE 17,0
4092 000304 000000 .WORD 0
4093 000306 000320' .WORD .DREG
4094 000310 000000 .WORD 0
4095 000310' RGDTEN==.-2
4096
4097 003634 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 96
.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK 7512.01
4099 .SBTTL .EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK 7512.01
4100
4101 ;+
4102 ; .EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK VIA MBOX CLOCKS
4103 ;
4104 ; THIS SUBROUTINE WILL SIMULATE AN EBOX CLOCK WITH MBOX CLOCKS.
4105 ; DOING THIS PREVENTS THE EBOX AND MBOX FROM BECOMING UNSYNCHRONIZED.
4106 ; THE EBOX CLOCK IS SYNCHED LOW ON EXIT.
4107 ;
4108 ; SEQUENCE OF OPERATION:
4109 ;
4110 ; (A) AN MBOX CLOCK IS ISSUED (FX.002),
4111 ; (B) THE STATE OF [CLK EBOX SRC H] IS TESTED:
4112 ; (1) IF FALSE GO TO (A),
4113 ; (2) IF TRUE GO TO (C),
4114 ; (C) THE EBOX CLOCK IS SYNCHED LOW.
4115 ;
4116 ; INPUT ARGUMENTS:
4117 ;
4118 ; NONE.
4119 ;
4120 ; OUTPUT ARGUMENTS:
4121 ;
4122 ; NONE.
4123 ;
4124 ; ERROR CODES RETURNED:
4125 ;
4126 ; CES -- CLOCK ERROR STOP.
4127 ; DSF -- DTE-20 STATUS FAILURE.
4128 ; ECT -- EBOX CLOCK TIMEOUT.
4129 ; FRF -- FUNCTION READ FAILED.
4130 ; FXF -- FUNCTION EXECUTE FAILED.
4131 ;
4132 ; NOTE:
4133 ;
4134 ; THIS SUBROUTINE ASSUMES THAT THE KL CLOCK IS OFF.
4135 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 97
.EBCLK -- SUBROUTINE TO SIMULATE AN EBOX CLOCK 7512.01
4137 003634 .EBCLK::
4138 003634 PUSH <R2,R1,R0> ; SAVE CALLER'S REGISTERS
003634 010246 MOV R2,-(SP)
003636 010146 MOV R1,-(SP)
003640 010046 MOV R0,-(SP)
4139 003642 CALL .CESCK ; ...SEE IF CLOCK ERROR STOP IS UP
003642 004737 000000' JSR PC,.CESCK
4140 003646 012702 000310 MOV #^D200,R2 ; ...TIMEOUT COUNT TO R2
4141 003652 10$:
4142 003652 005001 CLR R1 ; ...CLEAR R1
4143 003654 012700 000004 MOV #FX.MBC,R0 ; ...DO ONE MBOX CLOCK
4144 003660 CALL .FXCT ; ...DO IT
003660 004737 004566' JSR PC,.FXCT
4145 003664 012700 000210 MOV #FR.104,R0 ; ...READ STATE OF [CLK EBX SRC H]
4146 003670 CALL .FREAD ; ...DO IT
003670 004737 004362' JSR PC,.FREAD
4147 003674 032710 000004 BIT #BIT02,(R0) ; ...IS IT THERE?
4151 003700 001001 BNE 20$ ; ...YES -- SYNCH THE CLOCK AND EXIT
4152 003702 077215 SOB R2,10$ ; ...NO -- LOOP TILL COUNT EXHAUSTED
4153 003704 20$:
4154 003704 005702 TST R2 ; ...WHAT'S IN R2?
4155 003706 003405 BLE EBCECT ; ...TIMED OUT IF .LE. 0
4156 003710 POP <R0,R1,R2> ; ...RESTORE CALLER'S REGISTERS
003710 012600 MOV (SP)+,R0
003712 012601 MOV (SP)+,R1
003714 012602 MOV (SP)+,R2
4157 003716 CALLR .SYNXC ; FORCE SYNCH THE CLOCK AND EXIT
003716 000137 007454' JMP .SYNXC
4158 ;
4159 003722 EBCECT:
4160 003722 ERROR$ ECT ; ERROR -- EBOX CLOCK TIME OUT
003722 012746 017714 MOV #^RECT,-(SP)
003726 104400 TRAP TC.ERR
4161 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 98
.EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4163 .SBTTL .EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4164
4165 ;+
4166 ; .EXKLM -- SUBROUTINE TO EXAMINE KL MEMORY.
4167 ; .DPKLM -- SUBROUTINE TO DEPOSIT KL MEMORY.
4168 ;
4169 ; THIS SUBROUTINE EXAMINES OR DEPOSITS ONE LOCATION OF KL MEMORY.
4170 ;
4171 ; INPUT ARGUMENTS:
4172 ;
4173 ; R0 MUST CONTAIN ONE OF THE FOLLOWING ADDRESS SPACE CODES:
4174 ;
4175 ; (A) ED.EPT (000) EXEC PROCESS TABLE (RELATIVE),
4176 ; (B) ED.EXV (040) EXEC VIRTUAL ADDRESS SPACE,
4177 ; (C) ED.UPT (100) USER PROCESS TABLE (RELATIVE),
4178 ; (D) ED.USV (140) USER VIRTUAL ADDRESS SPACE,
4179 ; (E) ED.PHY (200) PHYSICAL ADDRESS SPACE.
4180 ;
4181 ; R1 MUST CONTAIN A POINTER TO A TWO WORD POINTER BLOCK OF THE FORM:
4182 ;
4183 ; !===================================!
4184 ; 00 ! POINTER TO KL ADDRESS !
4185 ; !-----------------------------------!
4186 ; 02 ! POINTER TO KL DATA !
4187 ; !===================================!
4188 ;
4189 ; THE KL ADDRESS POINTER MUST POINT TO A TWO WORD BLOCK OF THE FORM:
4190 ;
4191 ; !===================================!
4192 ; 00 ! KL ADDRESS 20 - 35 !
4193 ; !-----------------------------------!
4194 ; 02 ! KL ADDRESS 19 - 14 !
4195 ; !===================================!
4196 ;
4197 ; THE KL DATA POINTER POINTS TO A TRIPLET IN DEXWORD FORMAT.
4198 ;
4199 ; OUTPUT ARGUMENTS:
4200 ;
4201 ; SAME AS INPUT ARGUMENTS.
4202 ;
4203 ; ERROR CODES RETURNED:
4204 ;
4205 ; ESD -- EBOX STOPPED - DEPOSIT.
4206 ; ESE -- EBOX STOPPED - EXAMINE.
4207 ; EMF -- EXAMINE KL MEMORY FAILED.
4208 ; DMF -- DEPOSIT KL MEMORY FAILED.
4209 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 99
.EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4211 .ENABL LSB
4212
4213 003730 .EXKLM::
4214 003730 PUSH <R2,R3> ; SAVE R2 AND R3 ON THE STACK
003730 010246 MOV R2,-(SP)
003732 010346 MOV R3,-(SP)
4215 003734 012702 004170' MOV #.ETAB,R2 ; ..POINTER TO EXAMINE TABLE
4216 003740 CALL .EXDPM ; ..GO DO EXAMINE
003740 004737 004020' JSR PC,.EXDPM
4223 003744 032737 000010 000232' BIT #TR.EXM,.TRKWD ; ..ARE WE TRACKING EXAMINES?
4224 003752 001417 BEQ 10$ ; ..NO -- GO ON
4225 003754 CALL .EXTRK ; ..YES -- TRACK IT
003754 004737 012426' JSR PC,.EXTRK
4227 003760 000414 BR 10$ ; ..AND GO AWAY
4228 ;
4229 003762 .DPKLM::
4230 003762 PUSH <R2,R3> ; SAVE R2 AND R3 ON THE STACK
003762 010246 MOV R2,-(SP)
003764 010346 MOV R3,-(SP)
4231 003766 012702 004200' MOV #.DTAB,R2 ; ..POINTER TO DEPOSIT TABLE
4232 003772 CALL .EXDPM ; ..DO THE DEPOSIT
003772 004737 004020' JSR PC,.EXDPM
4239 003776 032737 000020 000232' BIT #TR.DEP,.TRKWD ; ..ARE WE TRACKING DEPOSITS?
4240 004004 001402 BEQ 10$ ; ..NO -- GO ON
4241 004006 CALL .DPTRK ; ..YES -- TRACK THE DEPOSIT
004006 004737 012440' JSR PC,.DPTRK
4243 004012 10$:
4244 004012 POP <R3,R2> ; ..RESTORE R2 AND R3
004012 012603 MOV (SP)+,R3
004014 012602 MOV (SP)+,R2
4245 004016 RETURN ; RETURN TO CALLER
004016 000207 RTS PC
4246
4247 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 100
.EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4249 ; THIS IS THE COMMON DEPOSIT / EXAMINE CODE
4250
4251 004020 .EXDPM::
4252 004020 000241 CLC ; CLEAR CC-C
4253 004022 012203 MOV (R2)+,R3 ; GET THE DPB POINTER INTO R3
4254 004024 110023 MOVB R0,(R3)+ ; PUT THE MODE INTO THE DPB
4255 004026 011123 MOV (R1),(R3)+ ; PUT THE POINTER TO THE KL ADDRESS IN THE DPB
4256 004030 016113 000002 MOV 2(R1),(R3) ; AND DESTINATION POINTER TOO
4257 004034 011303 MOV (R3),R3 ; GET ADDRESS OF CALLER'S DATA BLOCK
4258 004036 042763 177760 000004 BIC #177760,4(R3) ; CLEAR EXTRANEOUS BITS
4262 004044 DIR$ (R2)+ ; DO THE EXAMINE OR DEPOSIT
004044 012246 MOV (R2)+,-(SP)
004046 104375 EMT 375
4264 004050 103401 BCS 10$ ; ERROR IF CC-C IS SET
4265 004052 RETURN ; TO CALLER
004052 000207 RTS PC
4266 004054 10$:
4267 004054 022737 000000G 000000G CMP #IE.EBX,$DSW ; IS THE EBOX STOPPED?
4268 004062 001401 BEQ 20$ ; YES -- EBOX IS STOPPED
4269 004064 005722 TST (R2)+ ; NO -- OTHER ERROR
4270 004066 20$:
4271 004066 CALL .CESCK ; SEE IF CLOCK ERROR STOP IS UP
004066 004737 000000' JSR PC,.CESCK
4272 004072 103001 BCC 25$ ; [5.1002]CES SWEEP RETURN?
4273 004074 RETURN ; [5.1002]YES -- EXIT
004074 000207 RTS PC
4274 004076 25$: CALL .RESTD ; RESET THE DTE-20 SINCE IT MAY BE CONFUSED
004076 004737 007066' JSR PC,.RESTD
4275 004102 000132 JMP @(R2)+ ; GIVE THE EXAMINE ERROR TRAP
4276 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 101
.EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4278 ; TABLES FOR EXAMINE / DEPOSIT KL MEMORY
4279
4280 004170 .PSECT DATA
4281
4282 004170 .ETAB:
4283 004170 000327' .WORD .EXDPB+3 ; POINTER FOR EXAMINE MODE IN DPB
4284 004172 000324' .WORD .EXDPB ; EXAMINE DPB POINTER
4285 004174 004120' .WORD EXDESE ; EBOX STOPPED - EXAMINE
4286 004176 004142' .WORD EXDEMF ; EXAMINE KL FAILED
4287
4288 004200 .DTAB:
4289 004200 000315' .WORD .DPDPB+3 ; POINTER FOR DEPOSIT MODE IN DPB
4290 004202 000312' .WORD .DPDPB ; DEPOSIT DPB POINTER
4291 004204 004104' .WORD EXDESD ; EBOX STOPPED - DEPOSIT
4292 004206 004134' .WORD EXDDMF ; DEPOSIT KL FAILED
4293
4294 004104 .PSECT
4295
4296 004104 EXDESD:
4297 004104 042737 100000 000000G BIC #KF.CLK,.KLFLG ; FLAG THE EBOX STOP
4298 004112 ERROR$ ESD ; ERROR -- EBOX STOPPED - DEPOSIT
004112 012746 021074 MOV #^RESD,-(SP)
004116 104400 TRAP TC.ERR
4299 ;
4300 004120 EXDESE:
4301 004120 042737 100000 000000G BIC #KF.CLK,.KLFLG ; FLAG THE EBOX STOP
4302 004126 ERROR$ ESE ; ERROR -- EBOX STOPPED - EXAMINE
004126 012746 021075 MOV #^RESE,-(SP)
004132 104400 TRAP TC.ERR
4303 ;
4304 004134 EXDDMF:
4305 004134 ERROR$ DMF ; ERROR -- DEPOSIT MEMORY FAILED
004134 012746 015416 MOV #^RDMF,-(SP)
004140 104400 TRAP TC.ERR
4306 ;
4307 004142 EXDEMF:
4308 004142 ERROR$ EMF ; ERROR -- EXAMINE MEMORY FAILED
004142 012746 020516 MOV #^REMF,-(SP)
004146 104400 TRAP TC.ERR
4309 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 102
.EXDPM -- KL MEMORY EXAMINE / DEPOSIT SUBROUTINE 7702.24
4311 ; DPB FOR PRIVILEGED DEPOSIT
4312
4313 ; !===============================================!
4314 ; 00 ! DPB SIZE ! DIC !
4315 ; !-----------------------------------------------!
4316 ; 02 ! DEPOSIT TYPE ! DIRECTIVE CODE !
4317 ; !-----------------------------------------------!
4318 ; 04 ! KL DEPOSIT ADDRESS POINTER !
4319 ; !-----------------------------------------------!
4320 ; 06 ! KL DEPOSIT DATA POINTER !
4321 ; !-----------------------------------------------!
4322 ; 10 ! DTE-20 NUMBER !
4323 ; !===============================================!
4324
4325 000312 .PSECT DPBS
4326
4327 000312 .DPDPB::
4328 000312 PRDP$ 0,.EDKLA,.DPBFR,ED.PHY
000312 011 005 .BYTE DR.DTE,5
000314 016 200 .BYTE DF.PDP,ED.PHY
000316 000104' .WORD .EDKLA
000320 000066' .WORD .DPBFR
000322 000000 .WORD 0
4329 000322' DPDTEN==.-2
4330
4331 ; DPB FOR PRIVILEGED EXAMINE
4332
4333 ; !===============================================!
4334 ; 00 ! DPB SIZE ! DIC !
4335 ; !-----------------------------------------------!
4336 ; 02 ! EXAMINE TYPE ! DIRECTIVE CODE !
4337 ; !-----------------------------------------------!
4338 ; 04 ! KL ADDRESS WORD POINTER !
4339 ; !-----------------------------------------------!
4340 ; 06 ! DATA DESTINATION POINTER !
4341 ; !-----------------------------------------------!
4342 ; 10 ! DTE-20 NUMBER !
4343 ; !===============================================!
4344
4345 000324 .EXDPB::
4346 000324 PREX$ 0,.EDKLA,.EXBFR,ED.PHY
000324 011 005 .BYTE DR.DTE,5
000326 015 200 .BYTE DF.PEX,ED.PHY
000330 000104' .WORD .EDKLA
000332 000124' .WORD .EXBFR
000334 000000 .WORD 0
4347 000334' EXDTEN==.-2
4348
4349 004150 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 103
.EXCTF -- FAST INTERNAL EXECUTE 7602.17
4351 .SBTTL .EXCTF -- FAST INTERNAL EXECUTE 7602.17
4352
4353 ;+
4354 ; .EXCTF -- FST INTERNAL EXECUTE.
4355 ;
4356 ; THIS SUBROUTINE WILL EXECUTE A KL INSTRUCTION WITHOUT
4357 ; CLOCKING THE KL OUT THE HALT LOOP; THE KL IS SIMPLY
4358 ; CONTINUED
4359 ;
4360 ; INPUT ARGUMENTS:
4361 ;
4362 ; NONE.
4363 ;
4364 ; OUTPUT ARGUMENTS:
4365 ;
4366 ; NONE.
4367 ;
4368 ; ERROR CODES RETURNED:
4369 ;
4370 ; NONE
4371 ;-
4372
4373 004150 .EXCTF::
4374 004150 PUSH .KLFLG ; SAVE ".KLFLG"
004150 013746 000000G MOV .KLFLG,-(SP)
4375 004154 005116 COM (SP) ; .INVERT IT
4376 004156 032716 140000 BIT #KF.CLK!KF.RUN,(SP)
4377 004162 001013 BNE 10$ ; .NOT REALLY RUNNING -- DO OTHER XCT
4378 004164 005116 COM (SP) ; .RESET SAVED ".KLFLG"
4379 004166 PUSH R0 ; .SAVE R0
004166 010046 MOV R0,-(SP)
4380 004170 CALL .STPKL ; ..STOP THE KL
004170 004737 007256' JSR PC,.STPKL
4381 004174 POP R1 ; ..INSTRUCTION POINTER TO R1
004174 012601 MOV (SP)+,R1
4382 004176 CALL .KLXCT ; .EXECUTE THE INSTRUCTION
004176 004737 005426' JSR PC,.KLXCT
4383 004202 POP .SVKLF ; .SET UP ".SVKLF"
004202 012637 000226' MOV (SP)+,.SVKLF
4384 004206 CALLR .RSTKL ; RESTART THE KL
004206 000137 007204' JMP .RSTKL
4385 ;
4386 004212 10$:
4387 004212 005726 TST (SP)+ ; .FLUSH THE STACK
4388 004214 022020 CMP (R0)+,(R0)+ ; ADVANCE THE POINTER
4389 004216 PUSH <(R0),-(R0),-(R0)>
004216 011046 MOV (R0),-(SP)
004220 014046 MOV -(R0),-(SP)
004222 014046 MOV -(R0),-(SP)
4390 004224 010600 MOV SP,R0 ; ...POINT TO STACKED INSTRUCTION
4391
4392 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 104
.EXCTF -- FAST INTERNAL EXECUTE 7602.17
4394 ; [CONTINUED FROM THE PREVIOUS PAGE]
4395
4396 004226 .EXECT::
4397 004226 010001 MOV R0,R1 ; ...POINTER TO R1
4398 004230 PUSH .KLFLG ; ...SAVE ".KLFLG"
004230 013746 000000G MOV .KLFLG,-(SP)
4399 004234 CALL .KLXCT ; ....START THE EXECUTE
004234 004737 005426' JSR PC,.KLXCT
4400 004240 10$:
4401 004240 CALL .EBCLK ; ....GIVE ONE EBOX CLOCK
004240 004737 003634' JSR PC,.EBCLK
4402 004244 CALL .DTDW1 ; ....READ DTE-20 DIAG WORD 1
004244 004737 003530' JSR PC,.DTDW1
4403 004250 032700 001000 BIT #D1.HLP,R0 ; ....IS THE HALT LOOP UP?
4405 004254 001371 BNE 10$ ; ....YES -- WAIT TILL IT ISN'T
4407 004256 CALL .STCLK ; ....OUT OF HALT LOOP -- START THE CLOCK
004256 004737 007232' JSR PC,.STCLK
4408 004262 012701 005000 MOV #5000,R1 ; ....WAIT COUNT TO R1
4409 004266 20$:
4410 004266 CALL .DTDW1 ; ....READ DTE-20 DIAG WORD 1
004266 004737 003530' JSR PC,.DTDW1
4411 004272 032700 001000 BIT #D1.HLP,R0 ; ....LOOK FOR THE HALT LOOP AGAIN
4415 004276 001002 BNE 30$ ; ....IN THE HALT LOOP -- FINISH UP
4416 004300 077106 SOB R1,20$ ; ....NOT YET -- TRY AGAIN
4417 004302 000424 BR EXECTO ; ....EXECUTE TIMED OUT
4418 ;
4419 004304 30$:
4420 004304 005116 COM (SP) ; ....INVERT OLD ".KLFLG"
4421 004306 032716 140000 BIT #KF.CLK!KF.RUN,(SP) ; ....WAS THE KL RUNNING??
4422 004312 001003 BNE 40$ ; ....NO -- GO ON
4423 004314 CALL .KLCON ; ....YES -- CONTINUE THE KL
004314 004737 004736' JSR PC,.KLCON
4424 004320 000412 BR 60$ ; ....AND EXIT
4425 ;
4426 004322 40$:
4427 004322 032716 100000 BIT #KF.CLK,(SP) ; ....WAS THE CLOCK ON?
4428 004326 001402 BEQ 50$ ; ....YES -- GO ON
4429 004330 CALL .STPXC ; ....NO -- STOP IT
004330 004737 007302' JSR PC,.STPXC
4430 004334 50$:
4431 004334 032716 040000 BIT #KF.RUN,(SP) ; ....WAS THE RUN FLOP ON??
4432 004340 001002 BNE 60$ ; ....NO -- GO ON
4433 004342 CALL .STRUN ; ....YES -- SET IT
004342 004737 007332' JSR PC,.STRUN
4434 004346 60$:
4435 004346 062706 000010 ADD #^D8,SP ; ....RESET THE STACK
4436 004352 RETURN ; AND EXIT
004352 000207 RTS PC
4437 004354 EXECTO:
4438 004354 ERROR$ XTO ; ERROR -- EXECUTE TIMED OUT
004354 012746 114457 MOV #^RXTO,-(SP)
004360 104400 TRAP TC.ERR
4439 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 105
.FREAD -- DIAGNOSTIC FUNCTION READ SUBROUTINE 7609.15
4441 .SBTTL .FREAD -- DIAGNOSTIC FUNCTION READ SUBROUTINE 7609.15
4442
4443 ;+
4444 ; .FREAD -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION READ.
4445 ;
4446 ; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION READ.
4447 ;
4448 ; SEQUENCE OF OPERATION:
4449 ;
4450 ; THE DFR IS EXECUTED AND DATA LOADED THRU R1 IF R1 .NE. 0,
4451 ; IF R1 IS .EQ. 0 THE DATA IS NOT MOVED FROM ".DFRB".
4452 ;
4453 ; INPUT ARGUMENTS:
4454 ;
4455 ; R0 HOLDS THE FUNCTION READ CODE
4456 ; R1 POINTS TO A DESTINATION BUFFER
4457 ;
4458 ; OUTPUT ARGUMENTS:
4459 ;
4460 ; R0 POINTS TO THE SUBROUTINE DATA BLOCK
4461 ; R1 POINTS TO THE CALLER'S READ BLOCK
4462 ;
4463 ; ERROR CODES RETURNED:
4464 ;
4465 ; FRF -- FUNCTION READ FAILED.
4466 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 106
.FREAD -- DIAGNOSTIC FUNCTION READ SUBROUTINE 7609.15
4468 004362 .FREAD::
4469 004362 110037 000341' MOVB R0,.KLDFR+3 ; SET THE DFR# IN THE DPB
4473 004366 DIR$ #.KLDFR ; CALL THE EXEC TO DO THE READ
004366 012746 000336' MOV #.KLDFR,-(SP)
004372 104375 EMT 375
4475 004374 103420 BCS FRDFRF ; ERROR IF CC-C IS SET
4476 004376 012700 000312' MOV #.DFRB,R0 ; POINT TO TOP OF READ BLOCK
4477 004402 005701 TST R1 ; TEST R1
4478 004404 001405 BEQ 10$ ; EXIT IF R1 .EQ. 0
4479 004406 012021 MOV (R0)+,(R1)+ ; LOAD HIS BUFFER FROM OURS
4480 004410 012021 MOV (R0)+,(R1)+
4481 004412 011011 MOV (R0),(R1)
4482 004414 024040 CMP -(R0),-(R0) ; BACK THE POINTERS UP
4483 004416 024141 CMP -(R1),-(R1)
4484 004420 10$:
4486 004420 032737 000002 000232' BIT #TR.FRD,.TRKWD ; ARE WE TRACKING FUNCTION READS?
4487 004426 001402 BEQ 20$ ; NO -- JUST EXIT
4488 004430 CALL .FRTRK ; YES -- DO IT
004430 004737 012156' JSR PC,.FRTRK
4489 004434 20$:
4491 004434 RETURN ; TO CALLER
004434 000207 RTS PC
4492 004436 FRDFRF:
4493 004436 ERROR$ FRF ; ERROR -- FUNCTION READ FAILED
004436 012746 024126 MOV #^RFRF,-(SP)
004442 104400 TRAP TC.ERR
4494 ;
4495
4496 ; DPB FOR DIAGNOSTIC FUNCTION READ
4497
4498 ; !===============================================!
4499 ; 00 ! DPB SIZE ! DIC !
4500 ; !-----------------------------------------------!
4501 ; 02 ! DFR OPCODE ! DFR CODE !
4502 ; !-----------------------------------------------!
4503 ; 04 ! TRANSFER BUFFER ADDRESS !
4504 ; !-----------------------------------------------!
4505 ; 06 ! DIAGNOSTIC REGISTER BUFFER ADDRESS !
4506 ; !-----------------------------------------------!
4507 ; 10 ! DTE-20 NUMBER !
4508 ; !===============================================!
4509
4510 000336 .PSECT DPBS
4511
4512 000336 .KLDFR::
4513 000336 KLDR$ .-.,.DFBLK,.DREG,0
000336 002411 .WORD 400*5.+DR.DTE
000340 012 000 .BYTE DF.KLR,.-./400
000342 000304' .WORD .DFBLK
000344 000320' .WORD .DREG
000346 000000 .WORD 0
4514 000346' FRDTEN==.-2
4515
4516 004444 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 107
.FWRIT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE 7609.15
4518 .SBTTL .FWRIT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE 7609.15
4519
4520 ;+
4521 ; .FWRIT -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION WRITE.
4522 ;
4523 ; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION WRITE.
4524 ;
4525 ; SEQUENCE OF OPERATION:
4526 ;
4527 ; .FWRIT:
4528 ;
4529 ; (A) THE DATA IS LOADED THRU R1 IF R1 .NE. 0,
4530 ; IF R1 IS .EQ. 0 THE DATA IS ASSUMED TO BE IN ".DFWB",
4531 ; (B) THE FUNCTION WRITE IS EXECUTED.
4532 ;
4533 ; INPUT ARGUMENTS:
4534 ;
4535 ; R0 HOLDS THE FUNCTION WRITE CODE
4536 ; R1 POINTS TO A SOURCE BUFFER
4537 ;
4538 ; OUTPUT ARGUMENTS:
4539 ;
4540 ; R0 POINTS TO THE SUBROUTINE DATA BLOCK
4541 ; R1 POINTS TO THE CALLER'S WRITE BLOCK
4542 ;
4543 ; ERROR CODES RETURNED:
4544 ;
4545 ; FWF -- FUNCTION WRITE FAILED.
4546 ;-
4547
4548 004444 .FWRIT::
4549 004444 110037 000353' MOVB R0,.KLDFW+3 ; SET THE DFW# IN THE DPB
4550 004450 012700 000304' MOV #.DFWB,R0 ; POINT TO TOP OF WRITE BLOCK
4551 004454 005701 TST R1 ; TEST R1
4552 004456 001405 BEQ 10$ ; ALREADY IN ".DFWB" IF R1 .EQ. 0
4553 004460 012120 MOV (R1)+,(R0)+ ; LOAD THE DATA BLOCK
4554 004462 012120 MOV (R1)+,(R0)+
4555 004464 011110 MOV (R1),(R0)
4556 004466 024040 CMP -(R0),-(R0) ; BACK THE POINTERS UP
4557 004470 024141 CMP -(R1),-(R1)
4558
4559
4560 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 108
.FWRIT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE 7609.15
4562 ; [CONTINUED FROM THE PREVIOUS PAGE]
4563
4564 004472 10$:
4565 004472 042760 177760 000004 BIC #177760,4(R0) ; FLUSH EXTRANEOUS BITS
4569 004500 DIR$ #.KLDFW ; CALL THE EXEC TO DO THE WRITE
004500 012746 000350' MOV #.KLDFW,-(SP)
004504 104375 EMT 375
4571 004506 103424 BCS FWRFWF ; ERROR IF CC-C IS SET
4572 004510 PUSH R0 ; SAVE THE BUFFER POINTER
004510 010046 MOV R0,-(SP)
4573 004512 113700 000353' MOVB .KLDFW+3,R0 ; .GET THE WRITE CODE
4574 004516 120027 000110 CMPB R0,#FW.044 ; .DID WE WRITE THE CLOCK BOARD?
4575 004522 002406 BLT 20$ ; .NO -- JUST EXIT
4576 004524 120027 000116 CMPB R0,#FW.047 ; .MAYBE -- DID WE REALLY?
4577 004530 003003 BGT 20$ ; .NO -- JUST EXIT
4578 004532 042737 100000 000000G BIC #KF.CLK,.KLFLG ; .YES -- TURN THE CLOCK BIT OFF
4579 004540 20$:
4581 004540 032737 000004 000232' BIT #TR.FWR,.TRKWD ; .ARE WE TRACKING FUNCTION WRITES?
4582 004546 001402 BEQ 30$ ; .NO -- GO ON
4583 004550 CALL .FWTRK ; .YES -- LEAVE TRACKS ON CONSOLE
004550 004737 012176' JSR PC,.FWTRK
4584 004554 30$:
4586 004554 POP R0 ; .RESTORE THE BUFFER POINTER
004554 012600 MOV (SP)+,R0
4587 004556 RETURN ; YES -- RETURN TO CALLER
004556 000207 RTS PC
4588
4589 004560 FWRFWF:
4590 004560 ERROR$ FWF ; ERROR -- FUNCTION WRITE FAILED
004560 012746 024436 MOV #^RFWF,-(SP)
004564 104400 TRAP TC.ERR
4591 ;
4592
4593 ; DPB FOR DIAGNOSTIC FUNCTION WRITE
4594
4595 ; !===============================================!
4596 ; 00 ! DPB SIZE ! DIC !
4597 ; !-----------------------------------------------!
4598 ; 02 ! DFW OPCODE ! DFW CODE !
4599 ; !-----------------------------------------------!
4600 ; 04 ! TRANSFER BUFFER ADDRESS !
4601 ; !-----------------------------------------------!
4602 ; 06 ! DIAGNOSTIC REGISTER BUFFER ADDRESS !
4603 ; !-----------------------------------------------!
4604 ; 10 ! DTE-20 NUMBER !
4605 ; !===============================================!
4606
4607 000350 .PSECT DPBS
4608
4609 000350 .KLDFW::
4610 000350 KLDW$ .-.,.DFBLK,.DREG,0
000350 002411 .WORD 400*5.+DR.DTE
000352 013 000 .BYTE DF.KLW,.-./400
000354 000304' .WORD .DFBLK
000356 000320' .WORD .DREG
000360 000000 .WORD 0
4611 000360' FWDTEN==.-2
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 108-1
.FWRIT -- DIAGNOSTIC FUNCTION WRITE SUBROUTINE 7609.15
4612
4613 004566 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 109
.FXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE 7609.15
4615 .SBTTL .FXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE 7609.15
4616 ;+
4617 ; .FXCT -- SUBROUTINE TO EXECUTE A DIAGNOSTIC FUNCTION EXECUTE.
4618 ;
4619 ; THESE SUBROUTINES EXECUTE A DIAGNOSTIC FUNCTION EXECUTE AND MAINTAIN
4620 ; THE STATE OF THE KL CLOCK ("KF.CLK") AND RUN FLOP ("KF.RUN") FLAGS
4621 ; IN THE KL STATE FLAG WORD, ".KLFLG".
4622 ;
4623 ; SEQUENCE OF OPERATION:
4624 ;
4625 ; THE DFX IS SIMPLY EXECUTED.
4626 ;
4627 ; INPUT ARGUMENTS:
4628 ;
4629 ; R0 CONTAINS THE FUNCTION EXECUTE CODE
4630 ;
4631 ; OUTPUT ARGUMENTS:
4632 ;
4633 ; NONE.
4634 ;
4635 ; ERROR CODES RETURNED:
4636 ;
4637 ; FXF -- FUNCTION EXECUTE FAILED.
4638 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 110
.FXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE 7609.15
4640 004566 .FXCT::
4641 004566 110037 000365' MOVB R0,.KLDFX+3 ; SET THE EXECUTE CODE IN THE DPB
4645 004572 DIR$ #.KLDFX ; CALL THE EXEC TO DO THE DFX
004572 012746 000362' MOV #.KLDFX,-(SP)
004576 104375 EMT 375
4647 004600 103453 BCS FXCFXF ; ERROR IF CC-C IS SET
4648 004602 113746 000365' MOVB .KLDFX+3,-(SP) ; PUT THE EXECUTE CODE ON THE STACK
4649 004606 012700 100000 MOV #KF.CLK,R0 ; .FLAG BIT TO R0
4650 004612 121627 000002 CMPB (SP),#FX.CST ; .IS DFX CODE .EQ. 1?
4651 004616 001411 BEQ 10$ ; .YES -- DO CLOCK STARTED STUFF
4652 004620 121627 000016 CMPB (SP),#FX.SMR ; .NO -- IS DFX CODE .GT. 7?
4653 004624 101014 BHI 20$ ; .YES -- LEAVE NOW
4654 004626 030037 000000G BIT R0,.KLFLG ; .NO -- IS THE FLAG OFF ALREADY?
4655 004632 001426 BEQ 40$ ; .YES -- LEAVE NOW
4656 004634 040037 000000G BIC R0,.KLFLG ; .NO -- TURN IF OFF
4657 004640 000423 BR 40$ ; .AND GO AWAY
4658 ;
4659 004642 10$:
4660 004642 030037 000000G BIT R0,.KLFLG ; .IS THE FLAG ON ALREADY?
4661 004646 001020 BNE 40$ ; .YES -- LEAVE NOW
4662 004650 050037 000000G BIS R0,.KLFLG ; .NO -- LIGHT IT UP
4663 004654 000415 BR 40$ ; .AND EXIT
4664 ;
4665 004656 20$:
4666 004656 012700 040000 MOV #KF.RUN,R0 ; .DO RUN FLAG STUFF
4667 004662 121627 000022 CMPB (SP),#FX.SRF ; .SET THE RUN FLOP?
4668 004666 001003 BNE 30$ ; .NO -- GO ON
4669 004670 050037 000000G BIS R0,.KLFLG ; .YES -- SET THE FLAG
4670 004674 000405 BR 40$ ; .AND GO AWAY
4671 ;
4672 004676 30$:
4673 004676 121627 000020 CMPB (SP),#FX.CRF ; .CLEAR RUN FLOP?
4674 004702 001002 BNE 40$ ; .NO -- JUST GO AWAY
4675 004704 040037 000000G BIC R0,.KLFLG ; .YES -- CLEAR THE FLAG
4676
4677 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 111
.FXCT -- DIAGNOSTIC FUNCTION EXECUTE SUBROUTINE 7609.15
4679 ; [CONTINUED FROM THE PREVIOUS PAGE]
4680
4681 004710 40$:
4683 004710 032737 000001 000232' BIT #TR.FXC,.TRKWD ; .ARE WE TRACKING FUNCTION EXECUTES?
4684 004716 001402 BEQ 50$ ; .NO -- JUST EXIT
4685 004720 CALL .FXTRK ; .YES -- DO IT
004720 004737 012216' JSR PC,.FXTRK
4686 004724 50$:
4688 004724 POP R0 ; .RESTORE R0
004724 012600 MOV (SP)+,R0
4689 004726 RETURN ; TO CALLER
004726 000207 RTS PC
4690 004730 FXCFXF:
4691 004730 ERROR$ FXF ; FUNCTION EXECUTE FAILED
004730 012746 024506 MOV #^RFXF,-(SP)
004734 104400 TRAP TC.ERR
4692 ;
4693
4694 ; DIRECTIVE PARAMETER BLOCK DIAGNOSTIC FUNCTION EXECUTE
4695
4696 ; !===============================================!
4697 ; 00 ! DPB SIZE ! DIC !
4698 ; !-----------------------------------------------!
4699 ; 02 ! DFX OPCODE ! DFX CODE !
4700 ; !-----------------------------------------------!
4701 ; 04 ! TRANSFER BUFFER ADDRESS !
4702 ; !-----------------------------------------------!
4703 ; 06 ! DIAGNOSTIC REGISTER BUFFER ADDRESS !
4704 ; !-----------------------------------------------!
4705 ; 10 ! DTE-20 NUMBER !
4706 ; !===============================================!
4707
4708
4709 000362 .PSECT DPBS
4710
4711 000362 .KLDFX::
4712 000362 KLDX$ .-.,.DFBLK,.DREG,0
000362 002411 .WORD 400*5.+DR.DTE
000364 014 000 .BYTE DF.KLX,.-./400
000366 000304' .WORD .DFBLK
000370 000320' .WORD .DREG
000372 000000 .WORD 0
4713 000372' FXDTEN==.-2
4714
4715 004736 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 112
.KLCON -- KL CONTINUE SUBROUTINE 7710.11
4717 .SBTTL .KLCON -- KL CONTINUE SUBROUTINE 7710.11
4718
4719 ;+
4720 ; .KLCON -- SUBROUTINE TO CONTINUE THE KL.
4721 ; .KLGO -- SUBROUTINE TO FINISH STARTING THE KL.
4722 ;
4723 ; THIS SUBROUTINE STARTS THE KL CLOCK AND SETS THE KL
4724 ; RUN FLOP ".KLCON" SETS THE CONTINUE FLOP PRIOR TO THIS.
4725 ;
4726 ; SEQUENCE OF OPERATION:
4727 ;
4728 ; .KLCON:
4729 ;
4730 ; (A) THE KL CONTINUE FLOP IS SET,
4731 ;
4732 ; .KLGO:
4733 ;
4734 ; (A) THE KL CLOCK IS STARTED IF NOT IN SINGLE PULSE MODE,
4735 ; (B) THE KL RUN FLOP IS SET IF NOT IN SINGLE INSTRUCTION MODE
4736 ; OR SINGLE PULSE MODE.
4737 ;
4738 ; INPUT ARGUMENTS:
4739 ;
4740 ; NONE.
4741 ;
4742 ; OUTPUT ARGUMENTS:
4743 ;
4744 ; NONE.
4745 ;
4746 ; ERROR CODES RETURNED:
4747 ;
4748 ; CFH -- CAN'T FIND KL HALT LOOP.
4749 ; CSK -- CAN'T START KL.
4750 ; DSF -- DTE-20 STATUS FAILURE.
4751 ; FRF -- FUNCTION READ FAILED.
4752 ; FWF -- FUNCTION WRITE FAILED.
4753 ; FXF -- FUNCTION EXECUTE FAILED.
4754 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 113
.KLCON -- KL CONTINUE SUBROUTINE 7710.11
4756 004736 .KLCON::
4757 004736 PUSH R1 ; SAVE R1 ON THE STACK
004736 010146 MOV R1,-(SP)
4758 004740 012701 000000G MOV #.KLFLG,R1 ; .FLAG WORD POINTER TO R1
4759 004744 .KLGO::
4760 004744 032711 002000 BIT #KF.SPM,(R1) ; .SINGLE PULSE MODE?
4761 004750 001027 BNE 30$ ; .YES -- JUST EXIT
4762 004752 032711 010000 BIT #KF.SIM,(R1) ; .NO -- SINGLE INSTRUCTION MODE?
4763 004756 001002 BNE 10$ ; .YES -- GO ON
4764 004760 CALL .STRUN ; .NO -- SET THE KL RUN FLOP
004760 004737 007332' JSR PC,.STRUN
4765 004764 10$:
4766 004764 012700 000024 MOV #FX.CON,R0 ; .SET THE CONTINUE BUTTON
4767 004770 CALL .FXCT ; .DO IT
004770 004737 004566' JSR PC,.FXCT
4768 004774 032711 100000 BIT #KF.CLK,(R1) ; .IS THE CLOCK RUNNING?
4769 005000 001002 BNE 20$ ; .YES -- EXIT
4770 005002 CALL .STCLK ; .NO -- START THE KL CLOCK
005002 004737 007232' JSR PC,.STCLK
4771 005006 20$:
4772 005006 011100 MOV (R1),R0 ; .GET ".KLFLG" INTO R0
4773 005010 005100 COM R0 ; .INVERT IT
4774 005012 032700 140000 BIT #KF.CLK!KF.RUN,R0 ; .IS THE KL RUNNING??
4775 005016 001004 BNE 30$ ; .NO -- JUST EXIT
4776 005020 052711 000200 BIS #KF.CON,(R1) ; .YES -- KL IS NOW CONTINUEABLE
4777 005024 105037 000000G CLRB .NOHLT ; .LET RSX20F CATCH KL HALTS
4778 005030 30$:
4779 005030 POP R1 ; .RESTORE R1
005030 012601 MOV (SP)+,R1
4780 005032 RETURN ; EXIT
005032 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 114
.KLHLT -- SUBROUTINE TO STOP THE KL IN THE HALT LOOP 7601.09
4782 .SBTTL .KLHLT -- SUBROUTINE TO STOP THE KL IN THE HALT LOOP 7601.09
4783
4784 ;+
4785 ; .KLHLT -- SUBROUTINE TO STOP THE KL IN THE HALT LOOP
4786 ; AND SYNCH THE EBOX CLOCK LOW.
4787 ;
4788 ; THIS SUBROUTINE CLEARS THE KL RUN FLOP, GETS THE KL INTO
4789 ; THE MICROCODE HALT LOOP, AND TURNS THE KL CLOCK OFF.
4790 ;
4791 ; SEQUENCE OF OPERATION:
4792 ;
4793 ; (A) THE KL RUN FLOP IS TURNED OFF,
4794 ; (B) THE KL IS MOVED INTO THE UCODE HALT LOOP,
4795 ; (C) A SMALL WAIT IS TIMED OUT (TO LET KL I/O SETTLE)
4796 ; (D) THE KL CLOCK IS TURNED OFF,
4797 ; (E) THE KL CLOCK IS SYNCHED LOW.
4798 ;
4799 ; INPUT ARGUMENTS:
4800 ;
4801 ; NONE.
4802 ;
4803 ; OUTPUT ARGUMENTS:
4804 ;
4805 ; NONE.
4806 ;
4807 ; ERROR CODES RETURNED:
4808 ;
4809 ; CFH -- CAN'T FIND KL HALT LOOP.
4810 ; DSF -- DTE-20 STATUS FAILURE.
4811 ; FWF -- FUNCTION WRITE FAILED.
4812 ; FXF -- FUNCTION EXECUTE FAILED.
4813 ;
4814 ; NOTE: THIS SUBROUTINE EXITS WITH THE KL CLOCK OFF.
4815 ;-
4816
4817 005034 .KLHLT::
4818 005034 PUSH <R0,R1,R2> ; SAVE CALLER'S REGISTERS
005034 010046 MOV R0,-(SP)
005036 010146 MOV R1,-(SP)
005040 010246 MOV R2,-(SP)
4819 005042 CALL .DTDW1 ; ...READ DIAG WORD 1
005042 004737 003530' JSR PC,.DTDW1
4820 005046 032700 004000 BIT #D1.CES,R0 ; ...IS CLOCK ERROR STOP UP?
4822 005052 001016 BNE 40$ ; ...YES -- JUST EXIT
4824 005054 CALL .CLRFF ; ...NO -- CLEAR THE RUN FLOP
005054 004737 003420' JSR PC,.CLRFF
4825 005060 012701 000024 MOV #^D20,R1 ; ...SET UP WAIT COUNT
4826
4827 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 115
.KLHLT -- SUBROUTINE TO STOP THE KL IN THE HALT LOOP 7601.09
4829 ; [CONTINUED FROM THE PREVIOUS PAGE]
4830
4831 005064 10$:
4832 005064 CALL .DTDW1 ; ...READ THE DTE-20 DIAG WORD 1
005064 004737 003530' JSR PC,.DTDW1
4833 005070 032700 001000 BIT #D1.HLP,R0 ; ...IN THE HALT LOOP YET?
4837 005074 001001 BNE 20$ ; ...YES -- EXIT
4838 005076 077106 SOB R1,10$ ; ...NO -- TRY TILL COUNT EXHAUSTED
4839 005100 20$:
4840 005100 005701 TST R1 ; ...IS R1 .GT. 0?
4841 005102 003407 BLE 50$ ; ...NO -- GO MOVE THE CLOCK MANUALLY
4842 005104 30$:
4843 005104 CALL .STPXC ; ...STOP THE KL CLOCK
005104 004737 007302' JSR PC,.STPXC
4844 005110 40$:
4845 005110 POP <R2,R1,R0> ; ...RESTORE CALLER'S REGISTERS
005110 012602 MOV (SP)+,R2
005112 012601 MOV (SP)+,R1
005114 012600 MOV (SP)+,R0
4846 005116 CALLR .SYNXC ; SYNCH THE EBOX CLOCK LOW AND EXIT
005116 000137 007454' JMP .SYNXC
4847 ;
4848
4849 ; GET HERE IF WE CAN'T GET INTO HALT LOOP NORMALLY.
4850 ; THIS MEANS THAT:
4851 ;
4852 ; (A) MICROCODE WASN'T RUNNING, OR
4853 ; (B) MICROCODE WASN'T LOADED.
4854
4855 005122 50$:
4856 005122 CALL .STPXC ; ...MAKE SURE THE CLOCK IS OFF
005122 004737 007302' JSR PC,.STPXC
4857 005126 012702 000012 MOV #^D10,R2 ; ...ITERATION COUNT TO R2
4858 005132 60$:
4859 005132 012700 000310 MOV #^D200,R0 ; ...200 (DECIMAL) CLOCKS PER PASS
4860 005136 CALL .BURST ; ...BURST THE CLOCK
005136 004737 003340' JSR PC,.BURST
4861 005142 CALL .DTDW1 ; ...READ DTE-20 DIAG WORD 1
005142 004737 003530' JSR PC,.DTDW1
4862 005146 032700 001000 BIT #D1.HLP,R0 ; ...ARE WE IN HALT LOOP NOW?
4866 005152 001354 BNE 30$ ; ...YES -- GO STOP AND SYNCH THE CLOCK
4867 005154 077212 SOB R2,60$ ; ...NO -- LOOP TILL COUNT EXHAUSTED
4868 005156 KLHCFH:
4869 005156 ERROR$ CFH ; ERROR -- CAN'T FIND HALT LOOP
005156 012746 011670 MOV #^RCFH,-(SP)
005162 104400 TRAP TC.ERR
4870 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 116
.KLST -- SUBROUTINE TO START THE KL 7512.08
4872 .SBTTL .KLST -- SUBROUTINE TO START THE KL 7512.08
4873
4874 ; .KLST -- SUBROUTINE TO START THE KL.
4875 ;
4876 ; THIS SUBROUTINE STARTS THE KL FROM THE HALT LOOP AT THE ADDRESS
4877 ; POINTED T0 BY R1 IN THE CALL.
4878 ;
4879 ; SEQUENCE OF OPERATION:
4880 ;
4881 ; (A) THE KL IS STOPPED IN THE HALT LOOP,
4882 ; (B) THE PC WORD IS LOADED INTO THE AR REGISTER,
4883 ; (C) THE KL IS ALLOWED TO RUN THRU ".KLCON".
4884 ;
4885 ; INPUT ARGUMENTS:
4886 ;
4887 ; R1 POINTS TO A 23 BIT KL ADDRESS
4888 ;
4889 ; OUTPUT ARGUMENTS:
4890 ;
4891 ; NONE.
4892 ;
4893 ; ERROR CODES RETURNED:
4894 ;
4895 ; CFH -- CAN'T FIND KL HALT LOOP.
4896 ; CSK -- CAN'T START KL.
4897 ; DSF -- DTE-20 STATUS FAILURE.
4898 ; FRF -- FUNCTION READ FAILED.
4899 ; FWF -- FUNCTION WRITE FAILED.
4900 ; FXF -- FUNCTION EXECUTE FAILED.
4901 ;
4902 ; NOTE:
4903 ;
4904 ; THIS SUBROUTINE IS DEPENDENT UPON MICROCODE VERSION 122.
4905 ;-
4906
4907 005164 .KLST::
4908 005164 PUSH R1 ; SAVE POINTER ON THE STACK
005164 010146 MOV R1,-(SP)
4909 005166 CALL .KLHLT ; .HALT THE KL
005166 004737 005034' JSR PC,.KLHLT
4910 005172 011601 MOV (SP),R1 ; .GET THE POINTER
4911 005174 012700 000176 MOV #FW.LAR,R0 ; .LOAD THE AR REGISTER
4912 005200 CALL .FWRIT ; .DO IT
005200 004737 004444' JSR PC,.FWRIT
4913 005204 012701 000000G MOV #.KLFLG,R1 ; .POINT TO ".KLFLG"
4914 005210 000655 BR .KLGO ; .AND FINISH THE START
4915 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 117
.KLSTP -- SUBROUTINE TO GET THE KL INTO THE HALT LOOP 7512.19
4917 .SBTTL .KLSTP -- SUBROUTINE TO GET THE KL INTO THE HALT LOOP 7512.19
4918
4919 ;+
4920 ; .KLSTP -- SUBROUTINE TO PUT THE KL INTO THE HALT LOOP.
4921 ;
4922 ; THIS SUBROUTINE WILL PUT THE KL INTO THE MICROCODE HALT LOOP
4923 ; AND EXIT WITH THE KL CLOCK RUNNING.
4924 ;
4925 ; INPUT ARGUMENTS:
4926 ;
4927 ; NONE.
4928 ;
4929 ; OUTPUT ARGUMENTS:
4930 ;
4931 ; NONE.
4932 ;
4933 ; ERROR CODES RETURNED:
4934 ;
4935 ; CFH -- CAN'T FIND HALT LOOP.
4936 ; DSF -- DTE-20 STATUS FAILURE.
4937 ; FXF -- FUNCTION EXECUTE FAILED.
4938 ;-
4939
4940 005212 .KLSTP::
4941 005212 032737 100000 000000G BIT #KF.CLK,.KLFLG ; IS THE CLOCK OFF?
4942 005220 001001 BNE 10$ ; NO -- GO ON
4943 005222 000704 BR .KLHLT ; YES -- HALT THE KL
4944 ;
4945 005224 10$:
4946 005224 PUSH <R0,R1> ; SAVE R0 AND R1 ON THE STACK
005224 010046 MOV R0,-(SP)
005226 010146 MOV R1,-(SP)
4947 005230 012701 000144 MOV #^D100,R1 ; ..SETUP WAIT COUNT
4948 005234 CALL .CLRFF ; ..CLEAR THE RUN FLOP
005234 004737 003420' JSR PC,.CLRFF
4949 005240 20$:
4950 005240 CALL .DTDW1 ; ..READ DIAG WORD 1
005240 004737 003530' JSR PC,.DTDW1
4951 005244 032700 001000 BIT #D1.HLP,R0 ; ..ARE WE IN THE HALT LOOP?
4955 005250 001001 BNE 30$ ; ..YES -- GO ON
4956 005252 077106 SOB R1,20$ ; ..NO -- KEEP TRYING
4957 005254 30$:
4958 005254 005701 TST R1 ; ..IS R1 .GT. 0?
4959 005256 003403 BLE KLSCFH ; ..NO -- GIVE "CFH" ERROR
4960 005260 POP <R1,R0> ; ..YES -- RESTORE REGISTERS
005260 012601 MOV (SP)+,R1
005262 012600 MOV (SP)+,R0
4961 005264 RETURN ; TO CALLER
005264 000207 RTS PC
4962 005266 KLSCFH:
4963 005266 ERROR$ CFH ; ERROR -- CAN'T FIND KL HALT LOOP
005266 012746 011670 MOV #^RCFH,-(SP)
005272 104400 TRAP TC.ERR
4964 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 118
.KLRST -- SUBROUTINE TO RESTART THE KL 7512.22
4966 .SBTTL .KLRST -- SUBROUTINE TO RESTART THE KL 7512.22
4967
4968 ;+
4969 ; .KLRST -- SUBROUTINE TO RESTART THE KL.
4970 ;
4971 ; THIS SUBROUTINE WILL RESTART THE KL AS DIRECTED BY ".SVKLF",
4972 ; THE SAVED KL STATE FLAG WORD.
4973 ;
4974 ; INPUT ARGUMENTS:
4975 ;
4976 ; THE SAVED COPY OF ".KLFLG" IS IN ".SVKLF"
4977 ;
4978 ; OUTPUT ARGUMENTS:
4979 ;
4980 ; ".SVKLF" IS CLEARED.
4981 ;
4982 ; ERROR CODES RETURNED:
4983 ;
4984 ; CFH -- CAN'T FIND KL HALT LOOP.
4985 ; DSF -- DTE-20 STATUS FAILURE.
4986 ; FRF -- FUNCTION READ FAILED.
4987 ; FWF -- FUNCTION WRITE FAILED.
4988 ; FXF -- FUNCTION EXECUTE FAILED.
4989 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 119
.KLRST -- SUBROUTINE TO RESTART THE KL 7512.22
4991 005274 .KLRST::
4992 005274 PUSH <R1,R0> ; SAVE R0 AND R1
005274 010146 MOV R1,-(SP)
005276 010046 MOV R0,-(SP)
4993 005300 013701 000226' MOV .SVKLF,R1 ; ..GET COPY OF OLD FLAGS
4994 005304 032701 013000 BIT #KF.SPM!KF.SIM!KF.BRM,R1
4995 005310 001016 BNE 20$ ; ..BRANCH IF BURST, SINGLE INSTRUCTION OR PULSE MODE
4996 005312 005101 COM R1 ; ..INVERT R1
4997 005314 032701 140000 BIT #KF.RUN!KF.CLK,R1
4998 005320 001011 BNE 10$ ; ..BRANCH IF NOT RUNNING
4999 005322 CALL .STRUN ; ..SET THE RUN FLOP
005322 004737 007332' JSR PC,.STRUN
5000 005326 012700 000024 MOV #FX.CON,R0 ; ..NOW DO THE CONTINUE BUTTON
5001 005332 CALL .FXCT ; ..SO
005332 004737 004566' JSR PC,.FXCT
5002 005336 013701 000226' MOV .SVKLF,R1 ; ..ELSE GET THE WORD AGAIN
5003 005342 000406 BR 30$ ; ..AND GO AWAY
5004 ;
5005 005344 10$:
5006 005344 005101 COM R1 ; ..STRAIGHTEN R1 OUT
5007 005346 20$:
5008 005346 032701 040000 BIT #KF.RUN,R1 ; ..WAS RUN FLOP SET?
5009 005352 001402 BEQ 30$ ; ..NO -- GO ON
5010 005354 CALL .STRUN ; ..YES -- SET THE RUN FLOP
005354 004737 007332' JSR PC,.STRUN
5011 005360 30$:
5012 005360 032701 100000 BIT #KF.CLK,R1 ; ..WAS CLOCK RUNNING?
5013 005364 001413 BEQ 40$ ; ..NO -- JUST EXIT
5014 005366 032737 100000 000000G BIT #KF.CLK,.KLFLG ; ..YES -- IS THE CLOCK ALREADY ON?
5015 005374 001007 BNE 40$ ; ..YES -- JUST EXIT
5016 005376 CALL .STCLK ; ..NO -- START THE CLOCK
005376 004737 007232' JSR PC,.STCLK
5017 005402 032701 040000 BIT #KF.RUN,R1 ; ..DID WE LET IT RUN ?
5018 005406 001402 BEQ 40$ ; ..NO -- JUST EXIT
5019 005410 105037 000000G CLRB .NOHLT ; ..YES -- LET RSX20F CHECK FOR HALTS
5020 005414 40$:
5021 005414 POP <R0,R1> ; ..RESTORE R0 AND R1
005414 012600 MOV (SP)+,R0
005416 012601 MOV (SP)+,R1
5022 005420 005037 000226' CLR .SVKLF ; RESET ".SVKLF"
5023 005424 RETURN ; AND EXIT
005424 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 120
.KLXCT -- KL INSTRUCTION EXECUTE SUBROUTINE 7509.10
5025 .SBTTL .KLXCT -- KL INSTRUCTION EXECUTE SUBROUTINE 7509.10
5026
5027 ;+
5028 ; .KLXCT -- SUBROUTINE TO EXECUTE A KL INSTRUCTION.
5029 ;
5030 ; THIS SUBROUTINE LOADS A KL INSTRUCTION INTO THE AR REGISTER
5031 ; AND CAUSES THAT INSTRUCTION TO BE EXECUTED.
5032 ;
5033 ; SEQUENCE OF OPERATION:
5034 ;
5035 ; (A) THE KL IS STOPPED IN THE HALT LOOP WITH THE CLOCK OFF,
5036 ; (B) INSTRUCTION TO BE EXECUTED IS LOADED INTO THE AR,
5037 ; (C) THE KL CONTINUE FLOP IS SET.
5038 ;
5039 ; INPUT ARGUMENTS:
5040 ;
5041 ; R1 POINTS TO A 36 BIT KL INSTRUCTION WORD
5042 ;
5043 ; OUTPUT ARGUMENTS:
5044 ;
5045 ; NONE.
5046 ;
5047 ; ERROR CODES RETURNED:
5048 ;
5049 ; CFH -- CAN'T FIND KL HALT LOOP.
5050 ; DSF -- DTE-20 STATUS FAILURE.
5051 ; FRF -- FUNCTION READ FAILED.
5052 ; FWF -- FUNCTION WRITE FAILED.
5053 ; FXF -- FUNCTION EXECUTE FAILED.
5054 ;-
5055
5056 005426 .KLXCT::
5057 005426 CALL .KLHLT ; STOP THE KL IN THE HALT LOOP
005426 004737 005034' JSR PC,.KLHLT
5058 005432 012700 000176 MOV #FW.LAR,R0 ; LOAD THE AR REGISTER
5059 005436 CALL .FWRIT ; DO IT
005436 004737 004444' JSR PC,.FWRIT
5060 005442 012700 000024 MOV #FX.CON,R0 ; SET THE "CONTINUE BUTTON"
5061 005446 CALLR .FXCT ; DO IT AND RETURN
005446 000137 004566' JMP .FXCT
5062 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 121
.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE 7601.02
5064 .SBTTL .LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE 7601.02
5065
5066 ;+
5067 ; .LDBRC -- SUBROUTINE TO STOP THE KL CLOCK AND LOAD THE
5068 ; MBOX BURST COUNT REGISTER AS IN ".LDBRG".
5069 ; .LDBRG -- SUBROUTINE TO LOAD THE MBOX CLOCK BURST COUNTER.
5070 ;
5071 ; THIS SUBROUTINE LOADS THE KL MBOX BURST COUNT REGISTER
5072 ; WITH THE COUNT PASSED TO IT IN R0.
5073 ;
5074 ; INPUT ARGUMENTS:
5075 ;
5076 ; R0 CONTAINS THE CLOCK COUNT
5077 ;
5078 ; OUTPUT ARGUMENTS:
5079 ;
5080 ; NONE.
5081 ;
5082 ; ERROR CODES RETURNED:
5083 ;
5084 ; FWF -- FUNCTION WRITE FAILED.
5085 ; FXF -- FUNCTION EXECUTE FAILED.
5086 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 122
.LDBRG -- MBOX BURST COUNT LOAD SUBROUTINE 7601.02
5088 005452 .LDBRC::
5089 005452 CALL .STPXC ; STOP THE KL CLOCK
005452 004737 007302' JSR PC,.STPXC
5090 005456 .LDBRG::
5091 005456 PUSH <R1,R0> ; SAVE R1 AND R0 ON THE STACK
005456 010146 MOV R1,-(SP)
005460 010046 MOV R0,-(SP)
5092 005462 CALL .CLDFB ; ..CLEAR THE DFW BUFFERS
005462 004737 003370' JSR PC,.CLDFB
5093 005466 011600 MOV (SP),R0 ; ..GET THE BURST COUNT FROM THE STACK
5094 005470 042700 177760 BIC #177760,R0 ; ..CLEAR UNUSED BITS
5095 005474 010037 000304' MOV R0,.DFWB ; ..SET RIGHT COUNT IN THE BUFFER
5096 005500 012700 000104 MOV #FW.LBR,R0 ; ..SET UP TO LOAD THE RIGHT HALF
5097 005504 005001 CLR R1 ; ..CLEAR R1
5098 005506 CALL .FWRIT ; ..DO IT
005506 004737 004444' JSR PC,.FWRIT
5099 005512 011600 MOV (SP),R0 ; ..GET THE ORIGINAL COUNT FROM THE STACK
5100 005514 012701 177774 MOV #-^D4,R1 ; ..SHIFT COUNT TO R1
5101 005520 CALL .SHIFT ; ..SHIFT IT RIGHT 4 PLACES
005520 004737 011114' JSR PC,.SHIFT
5102 005524 042700 177760 BIC #177760,R0 ; ..CLEAR UNUSED BITS
5103 005530 010037 000304' MOV R0,.DFWB ; ..PUT THE HIGH COUNT IN THE WRITE BUFFER
5104 005534 005001 CLR R1 ; ..CLEAR R1
5105 005536 012700 000106 MOV #FW.LBL,R0 ; ..SET UP TO LOAD THE LEFT HALF
5106 005542 CALL .FWRIT ; ..DO IT
005542 004737 004444' JSR PC,.FWRIT
5107 005546 POP <R0,R1> ; ..RESTORE R0 AND R1
005546 012600 MOV (SP)+,R0
005550 012601 MOV (SP)+,R1
5108 005552 RETURN ; AND LEAVE
005552 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 123
.LDCPC -- KL CLOCK AND PARITY LOAD SUBROUTINES 7509.30
5110 .SBTTL .LDCPC -- KL CLOCK AND PARITY LOAD SUBROUTINES 7509.30
5111
5112 ;+
5113 ; .LDCLK -- SUBROUTINE TO LOAD THE KL CLOCK CONTROL REGISTERS.
5114 ; .LDPAR -- SUBROUTINE TO LOAD THE KL PARITY CONTROL REGISTERS.
5115 ;
5116 ; THESE SUBROUTINES SET UP THE KL CLOCK SOURCE, RATE, AND
5117 ; DISTRIBUTION REGISTERS OR THE PARITY CONTROL REGISTERS.
5118 ;
5119 ; SEQUENCE OF OPERATION:
5120 ;
5121 ; .LDCLK:
5122 ;
5123 ; (A) THE KL CLOCK SOURCE, RATE, AND DISTRIBUTION
5124 ; PARAMETERS ARE SET IN THE CLOCK CONTROL REGISTERS,
5125 ; (B) THE PARAMETERS WRITTEN IN (A) ARE SAVED IN THE
5126 ; CLOCK STATUS WORD (".CLKWD").
5127 ;
5128 ; .LDPAR:
5129 ;
5130 ; (A) THE KL INTERNAL PARITY CONTROL BITS ARE WRITTEN INTO THE
5131 ; PARITY CONTROL REGISTER,
5132 ; (B) THE CONTROL BITS WITTEN IN (A) ARE SAVED IN THE PARITY
5133 ; CONTROL WORD (".PSCWD").
5134 ;
5135 ; INPUT ARGUMENTS:
5136 ;
5137 ; R1 POINTS TO A PARAMETER WORD
5138 ;
5139 ; THE CLOCK PARAMETER POINTER POINTS TO A WORD WITH FORMAT:
5140 ;
5141 ; !========================================!
5142 ; ! DISTRIBUTION ! SOURCE AND RATE !
5143 ; !========================================!
5144 ;
5145 ; THE PARITY PARAMETER POINTER POINTS TO A WORD WITH FORMAT:
5146 ;
5147 ; !========================================!
5148 ; ! CONTROL BITS ! CLOCK STOP BITS !
5149 ; !========================================!
5150 ;
5151 ; OUTPUT ARGUMENTS:
5152 ;
5153 ; R0 CONTAINS A COPY OF THE UPDATED PARAMTER WORD
5154 ;
5155 ; ERROR CODES RETURNED:
5156 ;
5157 ; FWF -- FUNCTION WRITE FAILED.
5158 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 124
.LDCPC -- KL CLOCK AND PARITY LOAD SUBROUTINES 7509.30
5160 .ENABL LSB
5161
5162 005554 .LDCLK::
5163 005554 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
005554 004537 010302' JSR R5,.REGSV
5164 005560 012703 000010' MOV #.CLKWD,R3 ; CONTROL WORD POINTER TO R3
5165 005564 012704 000110 MOV #FW.CSR,R4 ; BASE CLOCK WRITE TO R4
5166 005570 000406 BR 10$ ; DO COMMON CODE
5167 ;
5168 005572 .LDPAR::
5169 005572 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
005572 004537 010302' JSR R5,.REGSV
5170 005576 012703 000204' MOV #.PSCWD,R3 ; CONTROL WORD POINTER TO R3
5171 005602 012704 000114 MOV #FW.IPE,R4 ; BASE PARITY WRITE TO R4
5172 ; FALL INTO COMMON CODE
5173 005606 10$:
5174 005606 010102 MOV R1,R2 ; CALLER'S PARAMETER POINTER TO R2
5175 005610 CALL .CLDFW ; CLEAR THE WRITE BUFFER
005610 004737 003404' JSR PC,.CLDFW
5176 005614 005001 CLR R1 ; CLEAR R1
5177 005616 111237 000304' MOVB (R2),.DFWB ; SET LOW BYTE PARAMETER
5178 005622 010400 MOV R4,R0 ; DFW CODE TO R0
5179 005624 CALL .FWRIT ; DO IT
005624 004737 004444' JSR PC,.FWRIT
5180 005630 112223 MOVB (R2)+,(R3)+ ; MARK THE NEW LOW BYTE CODE
5181 005632 005724 TST (R4)+ ; NEXT WRITE CODE
5182 005634 111210 MOVB (R2),(R0) ; SET THE HIGH BYTE PARAMETERS
5183 005636 010400 MOV R4,R0 ; DFW CODE TO R0
5184 005640 CALL .FWRIT ; DO IT
005640 004737 004444' JSR PC,.FWRIT
5185 005644 111223 MOVB (R2),(R3)+ ; MARK THE NEW HIGH BYTE CODE
5186 005646 014300 MOV -(R3),R0 ; PUT A COPY IN R0
5187 005650 RETURN ; EXIT
005650 000207 RTS PC
5188
5189 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 125
.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE 7511.19
5191 .SBTTL .LDCRA -- LOAD CRAM ADDRESS SUBROUTINE 7511.19
5192
5193 ;+
5194 ; .LDCRA -- SUBROUTINE TO LOAD A 12 BIT ADDRESS INTO THE
5195 ; KL CRAM ADDRESS REGISTER.
5196 ;
5197 ; THIS SUBROUTINE LOADS A 12 BIT CRAM ADDRESS INTO THE
5198 ; KL CRAM ADDRESS REGISTER.
5199 ;
5200 ; SEQUENCE OF OPERATION:
5201 ;
5202 ; (A) THE KL CLOCK IS TURNED OFF (BY (B)),
5203 ; (B) THE KL CRAM ADDRESS IS CLEARED BY ".RESET",
5204 ; (C) THE ADDRESS IS LOADED INTO CRAM DIAG ADDR.
5205 ;
5206 ; INPUT ARGUMENTS:
5207 ;
5208 ; R0 CONTAINS THE CRAM ADDRESS TO BE LOADED
5209 ;
5210 ; OUTPUT ARGUMENTS:
5211 ;
5212 ; NONE.
5213 ;
5214 ; ERROR CODES RETURNED:
5215 ;
5216 ; FWF -- FUNCTION WRITE FAILED.
5217 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 126
.LDCRA -- LOAD CRAM ADDRESS SUBROUTINE 7511.19
5219 005652 .LDCRA::
5220 005652 042700 170000 BIC #170000,R0 ; CLEAR UNUSED BITS
5221 005656 PUSH <R1,R0> ; PUT R0 AND R1 ON THE STACK
005656 010146 MOV R1,-(SP)
005660 010046 MOV R0,-(SP)
5222 005662 CALL .RESTP ; ..CLEAR CRAM DIAG ADDR AND CRAM ADDR
005662 004737 007132' JSR PC,.RESTP
5223 ; ..ALSO RETAIN CLOCK AND PARITY CONTROL
5224 005666 CALL .CLDFW ; ..CLEAR THE FW BUFFER
005666 004737 003404' JSR PC,.CLDFW
5225 005672 012700 000304' MOV #.DFWB,R0 ; ..SET UP THE BUFFER ADDRESS
5226 005676 011610 MOV (SP),(R0) ; ..LOAD THE ADDRESS FROM THE STACK
5227 005700 001427 BEQ 10$ ; ..LEAVE NOW IF ZERO
5228 005702 042710 174077 BIC #174077,(R0) ; ..CLEAR UNWANTED BITS
5229 005706 012701 000030 MOV #^D24,R1 ; ..SHIFT COUNT TO R1
5230 005712 CALL .TPSHI ; ..SHIFT IT OVER
005712 004737 011756' JSR PC,.TPSHI
5231 005716 005001 CLR R1 ; ..CLEAR R1
5232 005720 012700 000124 MOV #FW.CA2,R0 ; ..SET UP TO WRITE IT
5233 005724 CALL .FWRIT ; ..DO IT
005724 004737 004444' JSR PC,.FWRIT
5234 005730 011610 MOV (SP),(R0) ; ..GET ADDRESS FROM THE STACK AGAIN
5235 005732 042710 177700 BIC #177700,(R0) ; ..CLEAR UNWANTED BITS
5236 005736 012701 000036 MOV #^D30,R1 ; ..SHIFT COUNT TO R1
5237 005742 CALL .TPSHI ; ..SHIFT THAT OVER
005742 004737 011756' JSR PC,.TPSHI
5238 005746 005001 CLR R1 ; ..CLEAR R1
5239 005750 012700 000122 MOV #FW.CA1,R0 ; ..SET UP TO WRITE IT
5240 005754 CALL .FWRIT ; ..DO IT
005754 004737 004444' JSR PC,.FWRIT
5241 005760 10$:
5242 005760 POP <R0,R1> ; ..RESTORE REGISTERS
005760 012600 MOV (SP)+,R0
005762 012601 MOV (SP)+,R1
5243 005764 RETURN ; EXIT TO CALLER
005764 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 127
.MRCLR -- KL MASTER RESET SUBROUTINE 7607.15
5245 .SBTTL .MRCLR -- KL MASTER RESET SUBROUTINE 7607.15
5246
5247 ;+
5248 ; .MRCLR -- SUBROUTINE TO CLEAR THE KL IN THE MASTER RESET STATE.
5249 ;
5250 ; THIS SUBROUTINE SETS THE KL MASTER RESET FLOP AND ALLOWS THE
5251 ; KL CLOCK TO RUN, CLEARING THE KL.
5252 ;
5253 ; SEQUENCE OF OPERATION:
5254 ;
5255 ; (A) THE MASTER RESET FLOP IS SET,
5256 ; (B) THE KL CLOCK IS ALLOWED TO RUN FOR A SHORT TIME,
5257 ; (C) THE NXM TIMERS ARE RESYNCHRONIZED,
5258 ; (D) THE KL CLOCK IS STOPPED AND SYNCHED,
5259 ; (E) THE MASTER RESET FLOP IS CLEARED.
5260 ;
5261 ; INPUT ARGUMENTS:
5262 ;
5263 ; NONE.
5264 ;
5265 ; OUTPUT ARGUMENTS:
5266 ;
5267 ; NONE.
5268 ;
5269 ; ERROR CODES RETURNED:
5270 ;
5271 ; FRF -- FUNCTION READ FAILED.
5272 ; FWF -- FUNCTION WRITE FAILED.
5273 ; FXF -- FUNCTION EXECUTE FAILED.
5274 ;-
5275
5276 005766 .MRCLR::
5277 005766 PUSH <R0,R1,R2> ; SAVE REGISTERS
005766 010046 MOV R0,-(SP)
005770 010146 MOV R1,-(SP)
005772 010246 MOV R2,-(SP)
5278 005774 012700 000016 MOV #FX.SMR,R0 ; ...SET MASTER RESET FLOP
5279 006000 CALL .FXCT ; ...DO IT
006000 004737 004566' JSR PC,.FXCT
5280 006004 052737 020000 000000G BIS #KF.MRS,.KLFLG ; ...SET THE FLAG
5281 006012 CALL .STCLF ; ...FORCE START THE KL CLOCK
006012 004737 007240' JSR PC,.STCLF
5282 006016 012701 000764 MOV #^D500,R1 ; ...SET UP WAIT COUNT
5283
5284 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 128
.MRCLR -- KL MASTER RESET SUBROUTINE 7607.15
5286 ; [CONTINUED FROM THE PREVIOUS PAGE]
5287
5288 006022 10$:
5289 006022 077101 SOB R1,10$ ; ...STALL A WHILE
5290 006024 CALL .STPXC ; ...STOP THE KL CLOCK
006024 004737 007302' JSR PC,.STPXC
5291 006030 CALL .CLDFB ; ...CLEAR THE FUNCTION BUFFERS
006030 004737 003370' JSR PC,.CLDFB
5292 006034 012700 000160 MOV #FW.CHN,R0 ; ...CLEAR THE CHANNELS
5293 006040 CALL .FWRIT ; ...DO IT
006040 004737 004444' JSR PC,.FWRIT
5294 006044 012702 000003 MOV #^D3,R2 ; ...LOOP COUNT TO R2
5295 006050 20$: ; ...HERE TO RESYNCH THE NXM TIMERS
5296 006050 005001 CLR R1 ; ...CLEAR R1
5297 006052 012700 000344 MOV #FR.162,R0 ; ...LOOK FOR [A CHANGE COMING L]
5298 006056 CALL .FREAD ; ...DO THE READ
006056 004737 004362' JSR PC,.FREAD
5299 006062 032710 000010 BIT #BIT03,(R0) ; ...IS IT THERE?
5303 006066 001405 BEQ 30$ ; ...YES -- GO ON
5304 006070 012700 000004 MOV #FX.MBC,R0 ; ...NO -- STEP THE CLOCK
5305 006074 CALL .FXCT ; ...DO IT
006074 004737 004566' JSR PC,.FXCT
5306 006100 077215 SOB R2,20$ ; ...LOOP THREE TIMES MAX
5307 006102 30$:
5308 006102 CALL .SYNXC ; ...SYNCH THE CLOCK
006102 004737 007454' JSR PC,.SYNXC
5309 006106 012700 000014 MOV #FX.CMR,R0 ; ...CLEAR MASTER RESET FLOP
5310 006112 CALL .FXCT ; ...DO IT
006112 004737 004566' JSR PC,.FXCT
5311 006116 042737 020300 000000G BIC #KF.MRS!KF.CON!KF.CES,.KLFLG
5312 ; ...CLEAR THE FLAGS
5313 006124 POP <R2,R1,R0> ; ...RESTORE REGISTERS
006124 012602 MOV (SP)+,R2
006126 012601 MOV (SP)+,R1
006130 012600 MOV (SP)+,R0
5314 006132 RETURN ; EXIT TO CALLER
006132 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 129
.RDCPP -- SUBOUTINE TO READ THE KL CLOCK AND PARITY ENABLES 75
5316 .SBTTL .RDCPP -- SUBOUTINE TO READ THE KL CLOCK AND PARITY ENABLES 7510.09
5317
5318 ;+
5319 ; .RDCPP -- SUBROUTINE TO READ THE KL CLOCK AND INTERNAL PARITY
5320 ; CHECKING PARAMETERS.
5321 ;
5322 ; THIS SUBROUTINE READS THE KL CLOCK SOURCE, RATE AND DISTRIBUTION
5323 ; ENABLES AS WELL AS THE KL INTERNAL PARITY ENABLES AND MAINTAINS
5324 ; THEM IN ".CLKWD" AND ".PSCWD", RESPECTIVELY.
5325 ;
5326 ; INPUT ARGUMENTS:
5327 ;
5328 ; NONE.
5329 ;
5330 ; OUTPUT ARGUMENTS:
5331 ;
5332 ; ".CLKWD" AND ".PSCWD" CONTAIN THE UPDATED CLOCK AND
5333 ; PARITY ENABLES.
5334 ;
5335 ; ERROR CODES RETURNED:
5336 ;
5337 ; FRF -- FUNCTION READ FAILED.
5338 ;-
5339
5340 006134 .RDCPP::
5341 006134 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
006134 004537 010302' JSR R5,.REGSV
5342 006140 PUSH R0 ; R0 TOO
006140 010046 MOV R0,-(SP)
5343 006142 012704 000004 MOV #^D4,R4 ; .USE R4 AS A COUNTER
5344 006146 012703 004230' MOV #RDCPT1,R3 ; .BIT TEST TABLE POINTER TO R3
5345 006152 012705 004220' MOV #RDCPT3,R5 ; .SAVE AREA POINTER TO R5
5346 006156 10$:
5347 006156 112300 MOVB (R3)+,R0 ; .FR CODE TO R0
5348 006160 005001 CLR R1 ; .CLEAR R1
5349 006162 CALL .FREAD ; .READ A WORD
006162 004737 004362' JSR PC,.FREAD
5350 006166 011025 MOV (R0),(R5)+ ; .SAVE BITS 20 THRU 35 IN TABLE
5351 006170 077406 SOB R4,10$ ; .READ ALL FOUR OF THEM
5352 006172 005037 000010' CLR .CLKWD ; .CLEAR THE OLD CLOCK PARAMETERS
5353 006176 005037 000204' CLR .PSCWD ; .AND THE OLD PARITY STOP PARAMETERS
5354
5355 ; [CONTINUED ON THE FOLLOWING PAGE]
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 130
.RDCPP -- SUBOUTINE TO READ THE KL CLOCK AND PARITY ENABLES 75
5357 ; [CONTINUED FROM THE PREVIOUS PAGE]
5358
5359 006202 012700 000004 MOV #^D4,R0 ; .DO OUTER LOOP 4 TIMES
5360 006206 012705 004220' MOV #RDCPT3,R5 ; .KL SAVE AREA POINTER TO R5
5361 006212 20$:
5362 006212 012704 000004 MOV #^D4,R4 ; .DO INNER LOOP 4 TIMES
5363 006216 012702 004210' MOV #RDCPT2,R2 ; .KL MASK POINTER TO R2
5364 006222 30$:
5365 006222 012701 000010' MOV #.CLKWD,R1 ; .CLOCK WORD POINTER TO R1
5366 006226 020427 000002 CMP R4,#^D2 ; .IS INNER LOOP COUNT .GT. 2?
5367 006232 101004 BHI 50$ ; .YES -- CONTINUE
5368 006234 001001 BNE 40$ ; .NO -- IS IT .LT. 2?
5369 006236 005115 COM (R5) ; .NO -- INVERT THE WORD SO REST OF CODE WORKS
5370 006240 40$:
5371 006240 012701 000204' MOV #.PSCWD,R1 ; .DO PARITY WORD
5372 006244 50$:
5373 006244 041311 BIC (R3),(R1) ; .FLUSH THE BIT IN THE FLAG WORD
5374 006246 031215 BIT (R2),(R5) ; .TEST THE BIT WE READ IN THIS WORD
5375 006250 001401 BEQ 60$ ; .BRANCH IF BIT IS OFF
5376 006252 051311 BIS (R3),(R1) ; .TURN THE BIT ON IN THE FLAG WORD
5377 006254 60$:
5378 006254 022322 CMP (R3)+,(R2)+ ; .ADVANCE THE MASK POINTERS
5379 006256 077417 SOB R4,30$ ; .DO INNER LOOP 4 TIMES
5380 006260 005125 COM (R5)+ ; .ADVANCE THE SAVE AREA POINTER
5381 ; .AND STRAIGHTEN THE WORD OUT
5382 006262 077025 SOB R0,20$ ; .DO OUTER LOOP 4 TIMES
5383 006264 POP R0 ; .GIVE R0 BACK
006264 012600 MOV (SP)+,R0
5384 006266 RETURN ; AND GO AWAY
006266 000207 RTS PC
5385
5386 ; THESE BITS ARE USED TO MASK THE DATA FROM THE FUNCTION READS
5387
5388 004210 .PSECT DATA
5389
5390 004210 RDCPT2:
5391 004210 000010 .WORD BIT03 ; KL BIT 32
5392 004212 000004 .WORD BIT02 ; KL BIT 33
5393 004214 000002 .WORD BIT01 ; KL BIT 34
5394 004216 000001 .WORD BIT00 ; KL BIT 35
5395
5396 ; THE DATA FROM THE FUNCTION READS ARE STORED IN THIS TABLE
5397
5398 004220 RDCPT3:
5399 004220 000000 .WORD 0 ; FR.104 BITS 20 - 35
5400 004222 000000 .WORD 0 ; FR.105 BITS 20 - 35
5401 004224 000000 .WORD 0 ; FR.106 BITS 20 - 35
5402 004226 000000 .WORD 0 ; FR.107 BITS 20 - 35
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 131
.RDCPP -- SUBOUTINE TO READ THE KL CLOCK AND PARITY ENABLES 75
5404 ; TABLES USED TO READ AND SET CLOCK AND PARITY ENABLES
5405 ; THE FIRST FOUR BYTES IN THIS TABLE ARE THE FUNCTION READ CODES
5406 ; TO BE EXECUTED, THE REMAINING WORDS ARE USED TO SET OR CLEAR
5407 ; THE APPROPRIATE BITS IN ".CLKWD" AND ".PSCWD"
5408
5409 004230 RDCPT1:
5410 004230 210 .BYTE FR.104
5411 004231 212 .BYTE FR.105
5412 004232 214 .BYTE FR.106
5413 004233 216 .BYTE FR.107
5414 004234 000010 .WORD CS.CS2 ; CLK SOURCE 2 H [FR.104 - BIT 32]
5415 ; [FW 44 - BIT 32]
5416 004236 000000 .WORD 0 ; BLANK [FR.104 - BIT 33]
5417 004240 000010 .WORD IP.FMP ; FM PAR EN L [FR.104 - BIT 34]
5418 ; [FW 46 - BIT 32]
5419 004242 000000 .WORD 0 ; BLANK [FR.104 - BIT 35]
5420 004244 000004 .WORD CS.CS1 ; CLK SOURCE 1 H [FR.105 - BIT 32]
5421 ; [FW 44 - BIT 33]
5422 004246 002000 .WORD CD.CRC ; CLK CRAM DIS H [FR.105 - BIT 33]
5423 ; [FW 45 - BIT 33]
5424 004250 000004 .WORD IP.CRP ; CRAM PAR EN L [FR.105 - BIT 34]
5425 ; [FW 46 - BIT 33]
5426 004252 000000 .WORD 0 ; BLANK [FR.105 BIT - 35]
5427 004254 000002 .WORD CR.CR2 ; CLK RATE 2 H [FR.106 - BIT 32]
5428 ; [FW 44 - BIT 34]
5429 004256 001000 .WORD CD.DPC ; CLK EDP DIS H [FR.106 - BIT 33]
5430 ; [FW 45 - BIT 34]
5431 004260 000002 .WORD IP.DRP ; DRAM PAR EN L [FR.106 - BIT 34]
5432 ; [FW 46 - BIT 34]
5433 004262 001000 .WORD AP.ARP ; AR/ARX PAR EN L [FR.106 - BIT 35]
5434 ; [FW 47 - BIT 34]
5435 004264 000001 .WORD CR.CR1 ; CLK RATE 1 H [FR.107 - BIT 32]
5436 ; [FW 44 - BIT 35]
5437 004266 000400 .WORD CD.CLC ; CLK CTL DIS H [FR.107 - BIT 33]
5438 ; [FW 45 - BIT 35]
5439 004270 000001 .WORD IP.FSS ; FS STOP EN L [FR.107 -BIT 34]
5440 ; [FW 46 - BIT 35]
5441 004272 000400 .WORD AP.EIP ; CLK ERR STOP EN L [FR.107 - BIT 35]
5442 ; [FW 47 - BIT 35]
5443
5444 006270 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 132
.RDCRD -- SUBROUTINE TO READ THE KL CRAM DISP FIELD 7511.22
5446 .SBTTL .RDCRD -- SUBROUTINE TO READ THE KL CRAM DISP FIELD 7511.22
5447
5448 ;+
5449 ; .RDCRD -- SUBROUTINE TO READ THE KL CRAM DISP FIELD.
5450 ;
5451 ; THIS SUBROUTINE READS AND RETURNS THE CONTENT OF THE CRAM DISP FIELD
5452 ; IN R0.
5453 ;
5454 ; INPUT ARGUMENTS:
5455 ;
5456 ; NONE.
5457 ;
5458 ; OUTPUT ARGUMENTS:
5459 ;
5460 ; R0 CONTAINS THE CURRENT CRAM DISP FIELD
5461 ;
5462 ; ERROR CODES RETURNED:
5463 ;
5464 ; FRF -- FUNCTION READ FAILED.
5465 ;-
5466
5467 006270 .RDCRD::
5468 006270 PUSH R1 ; SAVE R1 ON THE STACK
006270 010146 MOV R1,-(SP)
5469 006272 005001 CLR R1 ; .CLEAR R1
5470 006274 012700 000302 MOV #FR.CRD,R0 ; .FR CODE TO R0
5471 006300 CALL .FREAD ; .READ IT
006300 004737 004362' JSR PC,.FREAD
5472 006304 012701 177742 MOV #-^D30,R1 ; .SHIFT COUNT TO R1
5473 006310 CALL .TPSHI ; .SHIFT IT
006310 004737 011756' JSR PC,.TPSHI
5474 006314 042710 177700 BIC #^C77,(R0) ; .MASK UNWANTED BITS
5475 006320 011000 MOV (R0),R0 ; .COPY TO R0
5476 006322 POP R1 ; .RESTORE R1
006322 012601 MOV (SP)+,R1
5477 006324 RETURN ; AND GO AWAY
006324 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 133
.RDCRM -- KL CONTROL RAM READ SUBROUTINE 7511.19
5479 .SBTTL .RDCRM -- KL CONTROL RAM READ SUBROUTINE 7511.19
5480
5481 ;+
5482 ; .RDCRM -- SUBROUTINE TO READ A LOCATION IN THE KL CONTROL RAM.
5483 ; .RDCRR -- SUBROUTINE TO READ THE OUTPUT OF THE CRAM REGISTER.
5484 ;
5485 ; THIS SUBROUTINE WILL READ ONE LOCATION IN THE KL CONTROL RAM.
5486 ;
5487 ; SEQUENCE OF OPERATION:
5488 ;
5489 ; .RDCRM:
5490 ;
5491 ; (A) THE KL IS HALTED IN THE HALT LOOP,
5492 ; (B) THE CONTROL RAM ADDRESS IS LOADED,
5493 ;
5494 ; .RDCRR:
5495 ;
5496 ; (C) THE CONTENT OF THE CURRENT CRAM ADDRESS IS READ.
5497 ;
5498 ; INPUT ARGUMENTS:
5499 ;
5500 ; R0 CONTAINS THE CRAM ADDRESS TO BE READ IN THE CALL TO ".RDCRM".
5501 ;
5502 ; OUTPUT ARGUMENTS:
5503 ;
5504 ; R0 CONTAINS A POINTER TO THE RAM DATA.
5505 ;
5506 ; THE FOLLOWING IS A PICTURE OF THRE DATA RETURNED BY THIS SUBROUTINE:
5507 ;
5508 ; WORD CRAM DATA
5509 ; ---- ---------
5510 ; +==================================+
5511 ; 00 | CRAM BITS 68 THRU 78 |
5512 ; +----------------------------------+
5513 ; 01 | CRAM BITS 60 THRU 66 |
5514 ; +----------------------------------+
5515 ; 02 | CRAM BITS 48 THRU 59 |
5516 ; +----------------------------------+
5517 ; 03 | CRAM BITS 40 THRU 47 |
5518 ; +----------------------------------+
5519 ; 04 | CRAM BITS 28 THRU 39 |
5520 ; +----------------------------------+
5521 ; 05 | CRAM BITS 20 THRU 27 |
5522 ; +----------------------------------+
5523 ; 06 | CRAM BITS 08 THRU 19 |
5524 ; +----------------------------------+
5525 ; 07 | CRAM BITS 00 THRU 07 |
5526 ; +----------------------------------+
5527 ; 08 | CRAM DISP BITS 00 THRU 04 |
5528 ; +==================================+
5529 ;
5530 ; ERROR CODES RETURNED:
5531 ;
5532 ; CAE -- CRAM ADDRESS ERROR.
5533 ; FRF -- FUNCTION READ FAILED.
5534 ; FWF -- FUNCTION WRITE FAILED.
5535 ; FXF -- FUNCTION EXECUTE FAILED.
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 133-1
.RDCRM -- KL CONTROL RAM READ SUBROUTINE 7511.19
5536 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 134
.RDCRM -- KL CONTROL RAM READ SUBROUTINE 7511.19
5538 006326 .RDCRM::
5539 006326 PUSH <R1,R2,R3,R4> ; SAVE CALLER'S REGISTERS
006326 010146 MOV R1,-(SP)
006330 010246 MOV R2,-(SP)
006332 010346 MOV R3,-(SP)
006334 010446 MOV R4,-(SP)
5540 006336 020027 002377 CMP R0,#2377 ; ....IS THE ADDRESS IN RANGE?
5541 006342 101052 BHI RDCRME ; ....NO -- GIVE "CRA" ERROR
5542 006344 CALL .LDCRA ; ....YES -- LOAD THE CRAM ADDRESS
006344 004737 005652' JSR PC,.LDCRA
5543 006350 012700 000006 MOV #FX.EBC,R0 ; ....NOW CLOCK THE DATA OUT OF THE RAM
5544 006354 CALL .FXCT ; ....DO IT
006354 004737 004566' JSR PC,.FXCT
5545 006360 .RDCRR:: ; ....HERE TO READ THE CRAM REGISTER
5546 006360 012702 000020' MOV #.CRAMR,R2 ; ....SAVE AREA POINTER TO R2
5547 006364 012704 000310 MOV #FR.CR4,R4 ; ....BASE READ TO R4
5548 006370 012703 000004 MOV #^D4,R3 ; ....USE R3 AS A COUNTER
5549 006374 10$:
5550 006374 005001 CLR R1 ; ....CLEAR R1
5551 006376 010400 MOV R4,R0 ; ....PASS THE FREAD CODE
5552 006400 CALL .FREAD ; ....DO IT
006400 004737 004362' JSR PC,.FREAD
5553 006404 012022 MOV (R0)+,(R2)+ ; ....LOAD CALLER'S BUFFER FROM OURS
5554 006406 012022 MOV (R0)+,(R2)+ ; ....
5555 006410 062704 000002 ADD #^D2,R4 ; ....INCREMENT THE FREAD CODE
5556 006414 077311 SOB R3,10$ ; ....LOOP TILL DONE
5557 006416 CALL .RDCRD ; ....READ THE DISPATCH FIELD
006416 004737 006270' JSR PC,.RDCRD
5558 006422 010012 MOV R0,(R2) ; ....PUT IT IN THE DATA BLOCK
5559 006424 CALL .CLDFW ; ....CLEAR THE FUNCTION WRITE BUFFER
006424 004737 003404' JSR PC,.CLDFW
5560 006430 005001 CLR R1 ; ....CLEAR R1
5561 006432 012700 000122 MOV #FW.CA1,R0 ; ....CLEAR CRAM DIAG ADDR
5562 006436 CALL .FWRIT ; ....SO
006436 004737 004444' JSR PC,.FWRIT
5563 006442 012700 000124 MOV #FW.CA2,R0 ; ....NOW THE OTHER HALF
5564 006446 CALL .FWRIT ; ....SO
006446 004737 004444' JSR PC,.FWRIT
5565 006452 012700 000020' MOV #.CRAMR,R0 ; ....POINT TO SAVE AREA
5566 006456 POP <R4,R3,R2,R1> ; ....RESTORE THE REGISTERS
006456 012604 MOV (SP)+,R4
006460 012603 MOV (SP)+,R3
006462 012602 MOV (SP)+,R2
006464 012601 MOV (SP)+,R1
5567 006466 RETURN ; TO CALLER
006466 000207 RTS PC
5568 006470 RDCRME:
5569 006470 ERROR$ CAE ; ERROR -- CRAM ADDRESS ERROR
006470 012746 011355 MOV #^RCAE,-(SP)
006474 104400 TRAP TC.ERR
5570 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 135
.RDCRO -- SUBROUTINE TO READ THE KL CRAM OUTPUT 7511.05
5572 .SBTTL .RDCRO -- SUBROUTINE TO READ THE KL CRAM OUTPUT 7511.05
5573
5574 ;+
5575 ; .RDCRO -- SUBROUTINE TO READ THE KL CRAM OUTPUT.
5576 ;
5577 ; THIS SUBROUTINE WILL READ THE CURRENT OUTPUT OF THE KL CRAM
5578 ; AND IS USEFUL ON CLOCK ERROR STOPS (Q.V.) WHICH ARE CAUSED BY
5579 ; CRAM PARITY ERRORS.
5580 ;
5581 ; INPUT ARGUMENTS:
5582 ;
5583 ; NONE.
5584 ;
5585 ; OUTPUT ARGUMENTS:
5586 ;
5587 ; R0 CONTAINS A POINTER TO A TEN WORD BLOCK WHICH CONTAINS THE
5588 ; CURRENT CRAM ADDRESS FOLLOWED BY THE CURRENT CRAM CONTENTS
5589 ;
5590 ; ERROR CODES RETURNED:
5591 ;
5592 ; CAE -- CRAM ADDRESS ERROR.
5593 ; FRF -- FUNCTION READ FAILED.
5594 ; FWF -- FUNCTION WRITE FAILED.
5595 ; FXF -- FUNCTION EXECUTE FAILED.
5596 ;-
5597
5598 006476 .RDCRO:
5599 006476 CALL .RDCRA ; READ THE CRAM ADDRESS
006476 004737 000000G JSR PC,.RDCRA
5600 006502 010037 000016' MOV R0,.CRAMA ; SAVE THE ADDRESS
5601 006506 CALL .RDCRR ; READ THE CRAM DATA
006506 004737 006360' JSR PC,.RDCRR
5602 006512 005740 TST -(R0) ; RETURN POINTER
5603 006514 RETURN ; TO CALLER
006514 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 136
.RDFMA -- SUBROUTINE TO READ THE KL FM ADDRESS 7511.14
5605 .SBTTL .RDFMA -- SUBROUTINE TO READ THE KL FM ADDRESS 7511.14
5606
5607 ;+
5608 ; .RDFMA -- SUBROUTINE TO READ THE KL FAST MEMORY ADDRESS REGISTER.
5609 ;
5610 ; THIS SUBROUTINE WILL READ AND RETURN THE KL FAST MEMORY ADDRESS
5611 ; A LOCATION POINTED TO BY R1 IN THE CALL. IF R1 IS ZERO, THE DATA
5612 ; IS RETURNED ONLY IN R0.
5613 ;
5614 ; INPUT ARGUMENTS:
5615 ;
5616 ; R1 POINTS TO A BUFFER FOR THE DATA
5617 ;
5618 ; OUTPUT ARGUMENTS:
5619 ;
5620 ; R0 CONTAINS THE DATA
5621 ; THE BUFFER POINTED TO BY R1 CONTAINS THE DATA
5622 ;
5623 ; THE FORMAT OF THE DATA RETURNED IS:
5624 ;
5625 ; !===============================================!
5626 ; ! FM BLOCK ! FM ADDRESS !
5627 ; !===============================================!
5628 ;
5629 ; ERROR CODES RETURNED:
5630 ;
5631 ; FRF -- FUNCTION READ FAILED.
5632 ;-
5633
5634 006516 .RDFMA::
5635 006516 PUSH R1 ; SAVE R1 ON THE STACK
006516 010146 MOV R1,-(SP)
5636 006520 005001 CLR R1 ; .CLEAR R1
5637 006522 012700 000230 MOV #FR.114,R0 ; .FR CODE TO READ FM ADDRESS
5638 006526 CALL .FREAD ; .READ IT
006526 004737 004362' JSR PC,.FREAD
5639 006532 012701 177753 MOV #-^D21,R1 ; .SHIFT COUNT TO R1
5640 006536 CALL .TPSHI ; .SHIFT IT
006536 004737 011756' JSR PC,.TPSHI
5641 006542 PUSH (R0) ; .SAVE THE WORD ON THE STACK
006542 011046 MOV (R0),-(SP)
5642 006544 042716 177760 BIC #177760,(SP) ; ..MASK FM ADDRESS
5643 006550 042710 176017 BIC #176017,(R0) ; ..MASK OUT THE FM BLOCK NUMBER
5644 006554 012701 000004 MOV #^D4,R1 ; ..SHIFT IT INTO THE HIGH BYTE
5645 006560 CALL .TPSHI ; ..SO
006560 004737 011756' JSR PC,.TPSHI
5646 006564 052610 BIS (SP)+,(R0) ; ..SET IN THE FAST MEMORY ADDRESS
5647 006566 011000 MOV (R0),R0 ; .GET IT INTO R0
5648 006570 POP R1 ; .DO WE HAVE A POINTER?
006570 012601 MOV (SP)+,R1
5649 006572 001401 BEQ 10$ ; NO -- JUST EXIT
5650 006574 010011 MOV R0,(R1) ; YES -- PUT IT WHERE HE WANTS IT
5651 006576 10$: RETURN ; AND LEAVE
006576 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 137
.RDFMO -- SUBROUTINE TO READ KL FAST MEMORY OUTPUT 7708.30
5653 .SBTTL .RDFMO -- SUBROUTINE TO READ KL FAST MEMORY OUTPUT 7708.30
5654
5655 ;+
5656 ; .RDFMO -- SUBROUTINE TO READ THE KL FAST MEMORY REGISTERS
5657 ;
5658 ; THIS SUBROUTINE WILL READ AND STORE THE FAST MEMORY ADDRESS AND
5659 ; OUTPUT IN A FOUR WORD BLOCK STARTING AT ".FMADR", AND IS USEFUL
5660 ; FOR GATHERING DATA ON FAST MEMORY PARITY ERRORS.
5661 ;
5662 ; INPUT ARGUMENTS:
5663 ;
5664 ; R0 POINTS TO OUTPUT BUFFER
5665 ;
5666 ; OUTPUT ARGUMENTS:
5667 ;
5668 ; R0 POINTS TO OUTPUT BUFFER
5669 ;
5670 ; ERROR CODES RETURNED:
5671 ;
5672 ; FRF -- FUNCTION READ FAILED.
5673 ;-
5674
5675 006600 .RDFMO::
5676 006600 PUSH <R1,R0> ; SAVE R0,R1 ON THE STACK
006600 010146 MOV R1,-(SP)
006602 010046 MOV R0,-(SP)
5677 006604 005001 CLR R1 ; ..CLEAR R1
5678 006606 CALL .RDFMA ; ..READ THE FAST MEMORY ADDRESS
006606 004737 006516' JSR PC,.RDFMA
5679 006612 011601 MOV (SP),R1 ; ..SET UP POINTER
5680 006614 010021 MOV R0,(R1)+ ; ..SAVE FM ADDRESS
5681 006616 012700 000246 MOV #FR.RFM,R0 ; ..READ FM REGISTER FUNCTION READ
5682 006622 CALL .FREAD ; ..READ IT
006622 004737 004362' JSR PC,.FREAD
5683 006626 POP <R0,R1> ; ..RESTORE R1,R0
006626 012600 MOV (SP)+,R0
006630 012601 MOV (SP)+,R1
5684 006632 RETURN ; TO CALLER
006632 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 138
.RDFMP -- READ FM PARITY ERROR BIT
5686 .SBTTL .RDFMP -- READ FM PARITY ERROR BIT
5687
5688 ;+
5689 ; .RDFMP -- SUBROUTINE TO READ FM PARITY BIT
5690 ;
5691 ; THIS ROUTINE WILL:
5692 ; 1. READ FM BLOCK,ADDR,AND PARITY
5693 ; 2. SHIFT PARITY BIT INTO R0
5694 ;
5695 ; INPUT ARGUMENTS:
5696 ;
5697 ; NONE
5698 ;
5699 ; OUTPUT ARGUMENTS:
5700 ;
5701 ; R0-PARITY ERROR BIT VALUE
5702 ;
5703 ; ERROR CODES RETURNED:
5704 ;
5705 ; FRF -- FUNCTION READ FAILED
5706 ;-
5707
5708 006634 .RDFMP::
5709 006634 005001 CLR R1 ; NO BUFFER FOR .FREAD OUTPUT
5710 006636 012700 000230 MOV #FR.114,R0 ; FUNCTION READ 114
5711 006642 CALL .FREAD ; DO READ
006642 004737 004362' JSR PC,.FREAD
5712 006646 103407 BCS 10$ ; ERROR
5713 006650 012701 177756 MOV #-^D18,R1 ; SHIFT KL BIT 17 TO ELEVEN BIT 0
5714 006654 CALL .TPSHI ; SHIFT IT
006654 004737 011756' JSR PC,.TPSHI
5715 006660 011000 MOV (R0),R0 ; GET VALUE
5716 006662 042700 177776 BIC #177776,R0 ; CLEAR ALL BUT BIT 0
5717 006666 10$: RETURN
006666 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 139
.RDIPE -- READ KL INTERNAL PARITY ERROR FLAGS 7511.13
5719 .SBTTL .RDIPE -- READ KL INTERNAL PARITY ERROR FLAGS 7511.13
5720
5721 ;+
5722 ; .RDIPE -- SUBROUTINE TO READ THE KL INTERNAL PARITY ERROR FLAGS.
5723 ;
5724 ; THIS SUBROUTINE READS THE INTERNAL KL PARITY ERROR FLAGS AND
5725 ; STORES THEM IN ".PEWRD" IN THE FOLLOWING FORMAT:
5726 ;
5727 ; (A) BIT00 ("PE.CES") [CLK ERROR STOP H],
5728 ; (B) BIT01 ("PE.DRM") [CLK DRAM PAR ERR H],
5729 ; (C) BIT02 ("PE.CRM") [CLK CRAM PAR ERR H],
5730 ; (D) BIT03 ("PE.FMP") [CLK FM PAR ERR H],
5731 ; (E) BIT04 ("PE.FSS") [CLK FS ERROR H].
5732 ;
5733 ; INPUT ARGUMENTS:
5734 ;
5735 ; NONE.
5736 ;
5737 ; OUTPUT ARGUMENTS:
5738 ; R0 CONTAINS A COPY OF THE FLAGS IN ".PEWRD".
5739 ;
5740 ; ERROR CODES RETURNED:
5741 ;
5742 ; FRF -- FUNCTION READ FAILED.
5743 ;-
5744
5745 006670 .RDIPE::
5746 006670 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
006670 004537 010302' JSR R5,.REGSV
5747 006674 012702 000204 MOV #FR.102,R2 ; BASE FUNCTION READ TO R2
5748 006700 012703 000040 MOV #BIT05,R3 ; MASK BIT TO R3
5749 006704 012704 000176' MOV #.PEWRD,R4 ; WORD POINTER TO R4
5750 006710 005014 CLR (R4) ; CLEAR THE WORD
5751 006712 012705 000001 MOV #BIT00,R5 ; BASE WORD MASK TO R5
5752 006716 005001 CLR R1 ; CLEAR R1
5753 006720 10$:
5754 006720 010200 MOV R2,R0 ; GET THE FR NUMBER
5755 006722 CALL .FREAD ; DO THE READ
006722 004737 004362' JSR PC,.FREAD
5756 006726 030310 BIT R3,(R0) ; IS THE BIT ON?
5757 006730 001401 BEQ 20$ ; NO -- GO ON
5758 006732 050514 BIS R5,(R4) ; YES -- SET THE BIT IN THE WORD
5759 006734 20$:
5760 006734 062702 000002 ADD #^D2,R2 ; NEXT FUNCTION READ
5761 006740 006305 ASL R5 ; SHIFT THE WORD MASK
5762 006742 020503 CMP R5,R3 ; ARE WE DONE?
5763 006744 001365 BNE 10$ ; NO -- KEEP GOING
5767 006746 011400 MOV (R4),R0 ; YES -- PUT THE WORD IN R0
5768 006750 RETURN ; AND GO AWAY
006750 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 140
.RESET -- KL RESET SUBROUTINES 7511.18
5770 .SBTTL .RESET -- KL RESET SUBROUTINES 7511.18
5771
5772 ;+
5773 ; .RESET -- SUBROUTINE TO RESET THE KL.
5774 ;
5775 ; THIS SUBROUTINE PERFORM ALL DIAGNOSTIC FUNCTIONS REQUIRED TO RESET
5776 ; THE KL MICROPROCESSOR AND SET UP CLOCK ENABLES AND PARITY STOPS.
5777 ;
5778 ; SEQUENCE OF OPERATION:
5779 ;
5780 ; (A) THE DTE-20 IS CLEARED,
5781 ; (B) THE MASTER RESET SUBROUTINE IS INVOKED,
5782 ; (C) THE MAJOR KL CONTROL REGISTERS ARE CLEARED
5783 ; (THIS IS A FULL KL MASTER RESET).
5784 ;
5785 ; INPUT ARGUMENTS:
5786 ;
5787 ; NONE.
5788 ;
5789 ; OUTPUT ARGUMENTS:
5790 ;
5791 ; NONE.
5792 ;
5793 ; ERROR CODES RETURNED:
5794 ;
5795 ; DSF -- DTE-20 STATUS FAILURE.
5796 ; FRF -- FUNCTION READ FAILED.
5797 ; FWF -- FUNCTION WRITE FAILED.
5798 ; FXF -- FUNCTION EXECUTE FAILED.
5799 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 141
.RESET -- KL RESET SUBROUTINES 7511.18
5801 006752 .RESET::
5802 006752 PUSH <R0,R1,R2> ; SAVE CALLER'S REGISTERS
006752 010046 MOV R0,-(SP)
006754 010146 MOV R1,-(SP)
006756 010246 MOV R2,-(SP)
5803 006760 CALL .RESTD ; ...RESET THE DTE-20
006760 004737 007066' JSR PC,.RESTD
5804 006764 012702 004274' MOV #RESETT,R2 ; ...FUNCTION TABLE POINTER TO R2
5805 006770 CALL .STPXC ; ...STOP THE KL CLOCK
006770 004737 007302' JSR PC,.STPXC
5806 006774 005046 CLR -(SP) ; ...CLEAR A TEMP BUFFER
5807 006776 010601 MOV SP,R1 ; ....POINT TO TEMP BUFFER
5808 007000 CALL .LDCLK ; ....CLEAR THE CLOCKS OUT
007000 004737 005554' JSR PC,.LDCLK
5809 007004 CALL .LDPAR ; ....RESET THE PARITY REGISTERS
007004 004737 005572' JSR PC,.LDPAR
5810 007010 CALL .MRCLR ; ....DO MASTER RESET STUFF
007010 004737 005766' JSR PC,.MRCLR
5811 007014 CALL .CLDFB ; ....CLEAR THE FUNCTION BUFFERS
007014 004737 003370' JSR PC,.CLDFB
5812 007020 10$:
5813 007020 005001 CLR R1 ; ....CLEAR R1
5814 007022 112200 MOVB (R2)+,R0 ; ....FUNCTION WRITE CODE TO R0
5815 007024 CALL .FWRIT ; ....DO THE WRITE
007024 004737 004444' JSR PC,.FWRIT
5816 007030 022702 004302' CMP #RSTEND,R2 ; ....ARE WE CLOSE TO END?
5817 007034 101371 BHI 10$ ; ....NO -- KEEP GOING
5818 007036 112210 MOVB (R2)+,(R0) ; ....YES -- GET THE DATA
5819 007040 111200 MOVB (R2),R0 ; ....FOR LAST WRITE
5820 007042 CALL .FWRIT ; ....DO IT
007042 004737 004444' JSR PC,.FWRIT
5821 007046 005726 TST (SP)+ ; ....CLEAR THE STACK
5822 007050 POP <R2,R1,R0> ; ...RESTORE REGISTERS
007050 012602 MOV (SP)+,R2
007052 012601 MOV (SP)+,R1
007054 012600 MOV (SP)+,R0
5823 007056 052737 000000G 000002G BIS #EF.CRI,.COMEF+2 ; DECLARE THE COMM REGION INVALID
5824 007064 RETURN ; TO CALLER
007064 000207 RTS PC
5825
5826 ; TABLE OF FUNCTION WRITE CODES FOR RESET
5827
5828 004274 .PSECT DATA
5829
5830 004274 RESETT:
5831 004274 104 .BYTE FW.LBR ; CLEAR BURST COUNTER - RIGHT
5832 004275 106 .BYTE FW.LBL ; CLEAR BURST COUNTER - LEFT
5833 004276 124 .BYTE FW.CA2 ; CLEAR CRAM DIAG ADDR - LEFT
5834 004277 122 .BYTE FW.CA1 ; CLEAR CRAM DIAG ADDR - RIGHT
5835 004300 156 .BYTE FW.KLO ; ENABLE KL OPCODES
5836 004301 174 .BYTE FW.EBL ; EBUS LOAD
5837 004302' RSTEND=.
5838 004302 012 .BYTE 12 ; DATA FOR
5839 004303 162 .BYTE FW.MBX ; MBOX CONTROL
5840 .EVEN
5841 007066 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 142
.RESTD -- DTE-20 RESET SUBROUTINE 7607.20
5843 .SBTTL .RESTD -- DTE-20 RESET SUBROUTINE 7607.20
5844
5845 ;+
5846 ; .RESTD -- SUBROUTINE TO RESET THE DTE-20.
5847 ;
5848 ; THIS SUBROUTINE RESETS THE DTE-20.
5849 ;
5850 ; SEQUENCE OF OPERATION:
5851 ;
5852 ; (A) THE DTE-20 IS CLEARED.
5853 ;
5854 ; INPUT ARGUMENTS:
5855 ;
5856 ; NONE.
5857 ;
5858 ; OUTPUT ARGUMENTS:
5859 ;
5860 ; NONE.
5861 ;
5862 ; ERROR CODES RETURNED:
5863 ;
5864 ; DSF -- DTE-20 STATUS FAILURE.
5865 ; FRF -- FUNCTION READ FAILED.
5866 ; FWF -- FUNCTION WRITE FAILED.
5867 ; FXF -- FUNCTION EXECUTE FAILED.
5868 ;-
5869
5870 007066 .RESTD::
5871 007066 012700 004304' MOV #D2RST,R0 ; DIAG WORD 2 RESET
5872 007072 CALL .DWDW2 ; WRITE IT
007072 004737 003462' JSR PC,.DWDW2
5873 007076 012700 004306' MOV #D3RST,R0 ; DIAG WORD 3 RESET
5874 007102 CALLR .DWDW3 ; WRITE IT
007102 000137 003502' JMP .DWDW3
5875 ;
5876
5877 004304 .PSECT DATA
5878
5879 004304 D2RST:
5880 004304 000100 .WORD D2.RST ; DIAG WORD 2 RESET
5881 004306 D3RST:
5882 004306 000001 .WORD D3.RST ; DIAG WORD 3 RESET
5883
5884 007106 .PSECT
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 143
.RESTI -- RESET KL AND ENABLE NORMAL CLOCK AND PARITY 7607.19
5886 .SBTTL .RESTI -- RESET KL AND ENABLE NORMAL CLOCK AND PARITY 7607.19
5887
5888 ;+
5889 ; .RESTI -- SUBROUTINE TO RESET THE KL AND SET UP NORMAL
5890 ; KL CLOCK ENABLES AND PARITY STOPS.
5891 ;
5892 ; THIS SUBROUTINE PERFORMS ALL DIAGNOSTIC FUNCTIONS REQUIRED TO RESET
5893 ; THE KL MICROPROCESSOR AND SET UP NORMAL CLOCK ENABLES AND PARITY STOPS
5894 ;
5895 ; SEQUENCE OF OPERATION:
5896 ;
5897 ; (A) ".RESET" IS INVOKED,
5898 ; (B) NORMAL KL CLOCKS ARE ENABLED,
5899 ; (C) NORMAL KL PARITY STOPS ARE ENABLED.
5900 ;
5901 ; INPUT ARGUMENTS:
5902 ;
5903 ; NONE.
5904 ;
5905 ; OUTPUT ARGUMENTS:
5906 ;
5907 ; NONE.
5908 ;
5909 ; ERROR CODES RETURNED:
5910 ;
5911 ; DSF -- DTE-20 STATUS FAILURE.
5912 ; FRF -- FUNCTION READ FAILED.
5913 ; FWF -- FUNCTION WRITE FAILED.
5914 ; FXF -- FUNCTION EXECUTE FAILED.
5915 ;-
5916
5917 .ENABL LSB
5918
5919 007106 .RESTI::
5920 007106 PUSH R1 ; SAVE R1
007106 010146 MOV R1,-(SP)
5921 007110 005046 CLR -(SP) ; .CLEAR A LOCATION ON THE STACK
5922 007112 CALL .RESET ; ..RESET THE KL
007112 004737 006752' JSR PC,.RESET
5923 007116 010601 MOV SP,R1 ; ..POINT TO SCRATCH BUFFER
5927 007120 CALL .LDCLK ; ..SET NORMAL CLOCK ENABLES
007120 004737 005554' JSR PC,.LDCLK
5928 007124 012716 001416 MOV #PS.NRM,(SP) ; ..SET UP NORMAL PARITY ENABLES
5929 007130 000417 BR 10$ ; ..AND GO SET THEM
5930 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 144
.RESTP -- RESET KL AND SAVE CURRENT CLOCK AND PARITY 7511.19
5932 .SBTTL .RESTP -- RESET KL AND SAVE CURRENT CLOCK AND PARITY 7511.19
5933
5934 ;+
5935 ; .RESTP -- SUBROUTINE TO RESET THE KL AND RESTORE THE
5936 ; PREVIOUS KL PARITY STOPS.
5937 ;
5938 ; THIS SUBROUTINE PERFORMS ALL DIAGNOSTIC FUNCTIONS REQUIRED TO RESET
5939 ; THE KL MICROPROCESSOR AND SET UP CURRENT CLOCK ENABLES AND PARITY STOPS
5940 ;
5941 ; SEQUENCE OF OPERATION:
5942 ;
5943 ; (A) ".RESET" IS INVOKED.
5944 ; (B) THE PREVIOUSLY ENABLED CLOCK AND PARITY CONTROLS ARE
5945 ; REENABLED.
5946 ;
5947 ; INPUT ARGUMENTS:
5948 ;
5949 ; NONE.
5950 ;
5951 ; OUTPUT ARGUMENTS:
5952 ;
5953 ; NONE.
5954 ;
5955 ; ERROR CODES RETURNED:
5956 ;
5957 ; DSF -- DTE-20 STATUS FAILURE.
5958 ; FRF -- FUNCTION READ FAILED.
5959 ; FWF -- FUNCTION WRITE FAILED.
5960 ; FXF -- FUNCTION EXECUTE FAILED.
5961 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 145
.RESTP -- RESET KL AND SAVE CURRENT CLOCK AND PARITY 7511.19
5963 007132 .RESTP::
5964 007132 PUSH R1 ; SAVE R1
007132 010146 MOV R1,-(SP)
5965 007134 CALL .STPXC ; .STOP THE KL CLOCK
007134 004737 007302' JSR PC,.STPXC
5966 007140 CALL .RDCPP ; .READ CURRENT CLOCK AND PARITY ENABLES
007140 004737 006134' JSR PC,.RDCPP
5967 007144 PUSH .PSCWD ; .SAVE THE PARITY CONTROL WORD
007144 013746 000204' MOV .PSCWD,-(SP)
5968 007150 PUSH .CLKWD ; ..SAVE THE CLOCK CONTROL WORD
007150 013746 000010' MOV .CLKWD,-(SP)
5969 007154 CALL .RESET ; ...DO A MASTER RESET
007154 004737 006752' JSR PC,.RESET
5970 007160 010601 MOV SP,R1 ; ...POINT TO THE CLOCK WORD
5971 007162 CALL .LDCLK ; ...LOAD THE CLOCKS AGAIN
007162 004737 005554' JSR PC,.LDCLK
5972 007166 005726 TST (SP)+ ; ...FLUSH SAVED CLOCK WORD
5973 007170 10$:
5974 007170 010601 MOV SP,R1 ; ..POINT TO THE PARITY WORD
5975 007172 CALL .LDPAR ; ..LOAD THE PARITY STOPS
007172 004737 005572' JSR PC,.LDPAR
5976 007176 005726 TST (SP)+ ; ..FLUSH THE PARITY WORD
5977 007200 POP R1 ; .RESTORE R1
007200 012601 MOV (SP)+,R1
5978 007202 RETURN ; AND GO AWAY
007202 000207 RTS PC
5979
5980 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 146
.RSTKL -- SUBROUTINE TO RESTART THE KL 7611.17
5982 .SBTTL .RSTKL -- SUBROUTINE TO RESTART THE KL 7611.17
5983
5984 ;+
5985 ; .RSTKL -- SUBROUTINE TO RESTART THE KL
5986 ;
5987 ; THIS SUBROUTINE WILL RESTART THE KL, IF IT WAS STOPPED BY ".STPKL".
5988 ;
5989 ; INPUT ARGUMENTS:
5990 ;
5991 ; THE STATE FLAGS IN ".SVKLF" REPRESENT THE STATE TO WHICH
5992 ; THE KL IS TO BE RESTORED.
5993 ;
5994 ; OUTPUT ARGUMENTS:
5995 ;
5996 ; ".SVKLF" IS CLEARED.
5997 ;
5998 ; ERROR CODES RETURNED:
5999 ;
6000 ; NONE.
6001 ;-
6002
6003 007204 .RSTKL::
6004 007204 032737 040000 000226' BIT #KF.RUN,.SVKLF ; DID WE STOP THE KL?
6005 007212 001404 BEQ 10$ ; NO -- JUST RETURN
6006 007214 CALL .KLRST ; YES -- RESTART THE KL
007214 004737 005274' JSR PC,.KLRST
6007 007220 105037 000000G CLRB .NOHLT ; LET RSX20F DETECT HALTS
6008 007224 10$:
6009 007224 005037 000226' CLR .SVKLF ; CLEAR SAVED FLAGS
6010 007230 RETURN ; TO CALLER
007230 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 147
.STCLK -- START KL CLOCK SUBROUTINE 7607.15
6012 .SBTTL .STCLK -- START KL CLOCK SUBROUTINE 7607.15
6013
6014 ;+
6015 ; .STCLK -- SUBROUTINE TO START THE KL CLOCK.
6016 ;
6017 ; THIS SUBROUTINE WILL START THE KL CLOCK.
6018 ;
6019 ; INPUT ARGUMENTS:
6020 ;
6021 ; NONE.
6022 ;
6023 ; OUTPUT ARGUMENTS:
6024 ;
6025 ; NONE.
6026 ;
6027 ; ERROR CODES RETURNED:
6028 ;
6029 ; CES -- CLOCK ERROR STOP.
6030 ; FXF -- FUNCTION EXECUTE FAILED.
6031 ;-
6032
6033 007232 .STCLK::
6034 007232 000241 CLC ; CLEAR CC-C
6035 007234 CALL .CESCK ; CHECK FOR CLOCK ERROR STOP
007234 004737 000000' JSR PC,.CESCK
6036 007240 .STCLF:: ; HERE TO START THE CLOCK ANYWAY
6037 007240 PUSH R0 ; SAVE R0
007240 010046 MOV R0,-(SP)
6038 007242 012700 000002 MOV #FX.CST,R0 ; .SET UP TO START THE KL CLOCK
6039 007246 CALL .FXCT ; .DO IT
007246 004737 004566' JSR PC,.FXCT
6040 007252 POP R0 ; .RESTORE R0
007252 012600 MOV (SP)+,R0
6041 007254 RETURN ; RETURN TO CALLER
007254 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 148
.STPKL -- SUBROUTINE TO STOP THE KL 7602.25
6043 .SBTTL .STPKL -- SUBROUTINE TO STOP THE KL 7602.25
6044
6045 ;+
6046 ; .STPKL -- SUBROUTINE TO STOP THE KL.
6047 ;
6048 ; THIS SUBROUTINE WILL STOP THE KL HALT LOOP IF IT BELIEVES THAT
6049 ; THE KL RUN FLOP IS SET ("KF.RUN" IN ".KLFLG").
6050 ;
6051 ; INPUT ARGUMENTS:
6052 ;
6053 ; THE STATE OF THE KL IS IN ".KLFLG"
6054 ;
6055 ; OUTPUT ARGUMENTS:
6056 ;
6057 ; THE CURRENT STATE OF THE KL IS IN ".KLFLG"
6058 ; THE PREVIOUS STATE OF THE KL IS IN ".SVKLF"
6059 ;
6060 ; ERROR CODES RETURNED:
6061 ;
6062 ; NONE.
6063 ;-
6064
6065 007256 .STPKL::
6066 007256 032737 040000 000000G BIT #KF.RUN,.KLFLG ; IS THE KL RUNNING?
6067 007264 001405 BEQ 10$ ; NO -- JUST EXIT
6068 007266 013737 000000G 000226' MOV .KLFLG,.SVKLF ; YES -- SAVE CURRENT KL STATE
6069 007274 CALL .KLSTP ; STOP THE KL
007274 004737 005212' JSR PC,.KLSTP
6070 007300 10$:
6071 007300 RETURN ; TO CALLER
007300 000207 RTS PC
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 149
.STPXC -- STOP KL CLOCK SUBROUTINE 7601.09
6073 .SBTTL .STPXC -- STOP KL CLOCK SUBROUTINE 7601.09
6074
6075 ;+
6076 ; .STPXC -- SUBROUTINE TO STOP THE KL CLOCK.
6077 ;
6078 ; THIS SUBROUTINE STOPS THE KL CLOCK.
6079 ;
6080 ; INPUT ARGUMENTS:
6081 ;
6082 ; NONE.
6083 ;
6084 ; OUTPUT ARGUMENTS:
6085 ;
6086 ; NONE
6087 ;
6088 ; ERROR CODES RETURNED:
6089 ;
6090 ; FXF -- FUNCTION EXECUTE FAILED
6091 ;-
6092
6093 .ENABL LSB
6094
6095 007302 .STPXC::
6096 007302 000241 CLC ; CLEAR CC-C
6098 007304 WTSE$S #E.FHTO ; WAIT FOR KL I/O TO SETTLE FROM ".CLRFF"
007304 012746 000001 MOV #E.FHTO,-(SP)
007310 012746 MOV (PC)+,-(SP)
007312 051 002 .BYTE 41.,2
007314 104375 EMT 375
6100 007316 PUSH R0 ; SAVE R0
007316 010046 MOV R0,-(SP)
6101 007320 112737 000001 000000G MOVB #1,.NOERR ; TELL RSX20F NOT TO PANIC ABOUT CLOCK STOP
6102 007326 005000 CLR R0 ; .SET UP TO STOP THE KL CLOCK
6103 ; .FUNCTION CODE IS ZERO
6104 007330 000404 BR 10$ ; .DO IT
6105 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 150
.STRUN -- SET KL RUN FLOP SUBROUTINE 7601.09
6107 .SBTTL .STRUN -- SET KL RUN FLOP SUBROUTINE 7601.09
6108
6109 ;+
6110 ; .STRUN -- SUBROUTINE TO SET THE KL RUN FLOP.
6111 ;
6112 ; THIS SUBROUTINE SETS THE KL RUN FLOP.
6113 ;
6114 ;
6115 ; INPUT ARGUMENTS:
6116 ;
6117 ; NONE.
6118 ;
6119 ; OUTPUT ARGUMENTS:
6120 ;
6121 ; NONE
6122 ;
6123 ; ERROR CODES RETURNED:
6124 ;
6125 ; FXF -- FUNCTION EXECUTE FAILED
6126 ;-
6127
6128 007332 .STRUN::
6129 007332 000241 CLC ; CLEAR CC-C
6130 007334 PUSH R0 ; SAVE R0
007334 010046 MOV R0,-(SP)
6131 007336 012700 000022 MOV #FX.SRF,R0 ; .SET UP TO SET KL RUN FLOP
6132 007342 10$:
6133 007342 CALL .FXCT ; .DO IT
007342 004737 004566' JSR PC,.FXCT
6134 007346 POP R0 ; .RESTORE R0
007346 012600 MOV (SP)+,R0
6135 007350 RETURN ; TO CALLER
007350 000207 RTS PC
6136
6137 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 151
.STUCD -- START KL MICROCODE SUBROUTINE 7511.22
6139 .SBTTL .STUCD -- START KL MICROCODE SUBROUTINE 7511.22
6140
6141 ;+
6142 ; .STUCD -- SUBROUTINE TO START THE KL MICROCODE AT THE
6143 ; ADDRESS SPECIFIED IN R0.
6144 ;
6145 ; SEQUENCE OF OPERATION:
6146 ;
6147 ; (A) THE KL RUN FLOP IS CLEARED,
6148 ; (B) THE KL RUN FLOP IS TURNED OFF,
6149 ; (C) THE KL IS CLEARED,
6150 ; (D) THE CRAM ADDRESS IS LOADED,
6151 ; (E) THE KL CLOCK IS RESTARTED.
6152 ;
6153 ; THE SUBROUTINE EXITS WHEN THE KL HAS FOUND THE HALT LOOP.
6154 ; IF THE HALT LOOP IS NOT FOUND, AN ERROR RETURN IS GIVEN.
6155 ;
6156 ; INPUT ARGUMENTS:
6157 ;
6158 ; R0 CONTAINS THE CRAM ADDRESS
6159 ;
6160 ; OUTPUT ARGUMENTS:
6161 ;
6162 ; NONE.
6163 ;
6164 ; ERROR CODES RETURNED:
6165 ;
6166 ; CAE -- CRAM ADDRESS ERROR.
6167 ; FRF -- FUNCTION READ FAILED.
6168 ; FWF -- FUNCTION WRITE FAILED.
6169 ; FXF -- FUNCTION EXECUTE FAILED
6170 ; UNL -- UCODE NOT LOADED.
6171 ;
6172 ; NOTE:
6173 ;
6174 ; THE NORMAL CRAM STARTING ADDRESS IS 0. ATTEMPTING TO
6175 ; START THE CONTROL RAM AT AN ADDRESS OTHER THAN 0 CAN
6176 ; PRODUCE STRANGE RESULTS. CAVEAT PROGRAMMATOR (OPERATOR).
6177 ; CONSIDER YOURSELF WARNED.
6178 ;-
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 152
.STUCD -- START KL MICROCODE SUBROUTINE 7511.22
6180 007352 .STUCD::
6181 007352 020027 002377 CMP R0,#2377 ; IS IT IN RANGE?
6182 007356 101030 BHI STUCAE ; NO -- GIVE "CAE" ERROR
6183 007360 PUSH <R1,R0> ; YES -- SAVE THE ADDRESS ON THE STACK
007360 010146 MOV R1,-(SP)
007362 010046 MOV R0,-(SP)
6184 007364 CALL .CLRFF ; ..CLEAR THE KL RUN FLOP
007364 004737 003420' JSR PC,.CLRFF
6185 007370 CALL .STPXC ; ..STOP THE KL CLOCK
007370 004737 007302' JSR PC,.STPXC
6186 007374 011600 MOV (SP),R0 ; ..CRAM ADDRESS TO R0
6187 007376 CALL .LDCRA ; ..LOAD IT
007376 004737 005652' JSR PC,.LDCRA
6188 007402 CALL .STCLK ; ..START THE KL CLOCK
007402 004737 007232' JSR PC,.STCLK
6189 007406 012701 000310 MOV #^D200,R1 ; ..SETUP WAIT LOOP
6190 007412 10$:
6191 007412 CALL .DTDW1 ; ..READ DTE-20 DIAG WORD 1
007412 004737 003530' JSR PC,.DTDW1
6192 007416 032700 001000 BIT #D1.HLP,R0 ; ..ARE WE IN THE HALT LOOP?
6196 007422 001001 BNE 20$ ; ..YES -- EXIT
6197 007424 077106 SOB R1,10$ ; ..NO -- TRY TILL COUNT EXHAUSTED
6198 007426 20$:
6199 007426 005701 TST R1 ; ..DID COUNT GET EXHAUSTED?
6200 007430 003406 BLE STUUNL ; ..YES -- WE LOST
6201 007432 POP <R0,R1> ; ..NO -- RESTORE R0 AND R1
007432 012600 MOV (SP)+,R0
007434 012601 MOV (SP)+,R1
6202 007436 RETURN ; TO CALLER
007436 000207 RTS PC
6203 007440 STUCAE:
6204 007440 ERROR$ CAE ; ERROR -- CRAM ADDRESSING ERROR
007440 012746 011355 MOV #^RCAE,-(SP)
007444 104400 TRAP TC.ERR
6205 ;
6206 007446 STUUNL:
6207 007446 ERROR$ UNL ; ERROR -- UCODE NOT LOADED
007446 012746 102574 MOV #^RUNL,-(SP)
007452 104400 TRAP TC.ERR
6208 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 153
.SYNXC -- SYNCH EBOX CLOCK SUBROUTINE 7509.03
6210 .SBTTL .SYNXC -- SYNCH EBOX CLOCK SUBROUTINE 7509.03
6211
6212 ;+
6213 ; .SYNXC -- SUBROUTINE TO SYNCH THE EBOX CLOCK LOW.
6214 ;
6215 ; THIS SUBROUTINE SYNCHS THE KL EBOX CLOCK LOW
6216 ;
6217 ;
6218 ; INPUT ARGUMENTS:
6219 ;
6220 ; NONE.
6221 ;
6222 ; OUTPUT ARGUMENTS:
6223 ;
6224 ; NONE
6225 ;
6226 ; ERROR CODES RETURNED:
6227 ;
6228 ; FXF -- FUNCTION EXECUTE FAILED
6229 ;-
6230
6231 .ENABL LSB
6232
6233 007454 .SYNXC::
6234 007454 000241 CLC ; CLEAR CC-C
6235 007456 PUSH R0 ; SAVE R0
007456 010046 MOV R0,-(SP)
6236 007460 012700 000010 MOV #FX.SYC,R0 ; .SET UP TO SYNCH EBOX CLOCK
6237 007464 CALL .FXCT ; .DO IT
007464 004737 004566' JSR PC,.FXCT
6238 007470 000411 BR 10$ ; .RESTORE R0 AND EXIT
6239 ;
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 154
.WRTAR -- SUBROUTINE TO WRITE THE KL AR REGISTER 7511.05
6241 .SBTTL .WRTAR -- SUBROUTINE TO WRITE THE KL AR REGISTER 7511.05
6242
6243 ;+
6244 ; .WRTAR -- SUBROUTINE TO WRITE THE KL AR REGISTER.
6245 ; .WRAR1 -- SUBROUTINE TO WRITE THE KL AR REGISTER WITHOUT
6246 ; STOPPING THE KL CLOCK.
6247 ;
6248 ; THIS SUBROUTINE WILL WRITE A 36 BIT WORD TO THE KL AR REGISTER.
6249 ;
6250 ; SEQUENCE OF OPERATION:
6251 ;
6252 ; .WRTAR:
6253 ;
6254 ; (A) THE KL CLOCK IS STOPPED,
6255 ;
6256 ; .WRAR1:
6257 ;
6258 ; (B) THE EBOX CLOCK IS SYNCHED LOW,
6259 ; (C) THE DATA IS WRITTEN INTO THE KL AR REGISTER.
6260 ;
6261 ; INPUT ARGUMENTS:
6262 ;
6263 ; R1 POINTS TO THE DATA TO BE WRITTEN
6264 ;
6265 ; OUTPUT ARGUMENTS:
6266 ;
6267 ; NONE.
6268 ;
6269 ; ERROR CODES RETURNED:
6270 ;
6271 ; FWF -- FUNCTION WRITE FAILED.
6272 ;-
6273
6274 007472 .WRTAR::
6275 007472 CALL .STPXC ; STOP THE KL CLOCK
007472 004737 007302' JSR PC,.STPXC
6276 007476 .WRAR1::
6277 007476 CALL .SYNXC ; FORCE THE EBOX CLOCK LOW
007476 004737 007454' JSR PC,.SYNXC
6278 007502 PUSH R0 ; SAVE R0
007502 010046 MOV R0,-(SP)
6279 007504 012700 000176 MOV #FW.LAR,R0 ; .FUNCTION WRITE CODE TO R0
6280 007510 CALL .FWRIT ; .LOAD THE AR
007510 004737 004444' JSR PC,.FWRIT
6281 007514 10$:
6282 007514 POP R0 ; .RESTORE R0
007514 012600 MOV (SP)+,R0
6283 007516 RETURN ; RETURN TO CALLER
007516 000207 RTS PC
6284
6285 .DSABL LSB
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 155
.WRCRM -- WRITE CONTROL RAM SUBROUTINE 7511.03
6287 .SBTTL .WRCRM -- WRITE CONTROL RAM SUBROUTINE 7511.03
6288
6289 ;+
6290 ; .WRCRM -- SUBROUTINE TO WRITE A LOCATION IN THE KL CONTROL RAM.
6291 ;
6292 ; THIS SUBROUTINE WILL WRITE ONE LOCATION IN THE KL CONTROL RAM.
6293 ; THE CRAM ADDRESS TO BE WRITTEN IS SPECIFIED IN R0.
6294 ;
6295 ; SEQUENCE OF OPERATION:
6296 ;
6297 ; (A) THE KL IS HALTED IN THE HALT LOOP,
6298 ; (B) THE CONTROL RAM ADDRESS IS LOADED,
6299 ; (C) THE CONTENT OF THAT CRAM ADDRESS IS WRITTEN.
6300 ;
6301 ; INPUT ARGUMENTS:
6302 ;
6303 ; R0 CONTAINS THE CRAM ADDRESS TO BE WRITTEN.
6304 ; R1 POINTS TO A NINE WORD DATA BLOCK TO BE WRITTEN.
6305 ;
6306 ; OUTPUT ARGUMENTS:
6307 ;
6308 ; NONE.
6309 ;
6310 ; THE FOLLOWING IS A PICTURE OF THE DATA WRITTEN BY THIS SUBROUTINE:
6311 ;
6312 ; WORD CRAM DATA
6313 ; ---- ---------
6314 ; +==================================+
6315 ; 00 | CRAM BITS 68 THRU 78 |
6316 ; +----------------------------------+
6317 ; 01 | CRAM BITS 60 THRU 66 |
6318 ; +----------------------------------+
6319 ; 02 | CRAM BITS 48 THRU 59 |
6320 ; +----------------------------------+
6321 ; 03 | CRAM BITS 40 THRU 47 |
6322 ; +----------------------------------+
6323 ; 04 | CRAM BITS 28 THRU 39 |
6324 ; +----------------------------------+
6325 ; 05 | CRAM BITS 20 THRU 27 |
6326 ; +----------------------------------+
6327 ; 06 | CRAM BITS 08 THRU 19 |
6328 ; +----------------------------------+
6329 ; 07 | CRAM BITS 00 THRU 07 |
6330 ; +----------------------------------+
6331 ; 08 | CRAM DISP BITS 00 THRU 04 |
6332 ; +==================================+
6333 ;
6334 ; ERROR CODES RETURNED:
6335 ;
6336 ; CAE -- CRAM ADDRESS ERROR.
6337 ; FRF -- FUNCTION READ FAILED.
6338 ; FWF -- FUNCTION WRITE FAILED.
6339 ; FXF -- FUNCTION EXECUTE FAILED.
6340 ;-
6341
6342 007520 .WRCRM::
6343 007520 020027 002377 CMP R0,#2377 ; IS THE ADDRESS IN RANGE?
KL10F -- KL10 FUNCTION MODULE MACRO M1113 10-NOV-81 17:44 PAGE 155-1
.WRCRM -- WRITE CONTROL RAM SUBROUTINE 7511.03
6344 007524 101063 BHI WRCRME ; NO -- GIVE "CAE" ERROR
6345 007526 PUSH <R4,R3,R2,R1,R0>; YES -- SAVE CALLER'S REGISTERS
007526 010446 MOV R4,-(SP)
007530 010346 MOV R3,-(SP)
007532 010246 MOV R2,-(SP)
007534 010146 MOV R1,-(SP)
007536 010046 MOV R0,-(SP)
6346 007540 010102 MOV R1,R2 ; .....CALLER'S POINTER TO R2
6347 007542 012704 000130 MOV #FW.CR4,R4 ; .....BASE WRITE TO R4
6348 007546 011600 MOV (SP),R0 ; .....GET CRAM ADDRESS FROM THE STACK
6349 007550 CALL .LDCRA ; .....LOAD IT
007550 004737 005652' JSR PC,.LDCRA
6350 007554 012703 000004 MOV #^D4,R3 ; .....USE R3 AS A COUNTER
6351 007560 012700 000304' 10$: MOV #.DFWB,R0 ; .....POINT TO THE WRITE BUFFER
6352 007564 012220 MOV (R2)+,(R0)+ ; .....LOAD OUR BUFFER FROM CALLER'S
6353 007566 012220 MOV (R2)+,(R0)+ ; .....
6354 007570 005010 CLR (R0) ; .....
6355 007572 005001 CLR R1 ; .....CLEAR R1
6356 007574 010400 MOV R4,R0 ; .....PASS THE FWRITE CODE
6357 007576 CALL .FWRIT ; .....DO IT
007576 004737 004444' JSR PC,.FWRIT
6358 007602 062704 000002 ADD #^D2,R4 ; .....INCREMENT THE FWRITE CODE
6359 007606 077314 SOB R3,10$ ; .....LOOP TILL DONE
6360 007610 011210 MOV (R2),(R0) ; .....LOAD THE CRAM DISP BITS
6361 007612 012701 000036 MOV #^D30,R1 ; .....SHIFT COUNT
6362 007616 CALL .TPSHI ; .....SHIFT IT
007616 004737 011756' JSR PC,.TPSHI
6363 007622 005001 CLR R1 ; .....CLEAR R1
6364 007624 012700 000126 MOV #FW.CRD,R0 ; .....WRITE CODE
6365 007630 CALL .FWRIT ; .....WRITE IT
007630 004737 004444' JSR PC,.FWRIT
6366 007634 CALL .CLDFW ; .....CLEAR THE FUNCTION WRITE BUFFER
007634 004737 003404' JSR PC,.CLDFW
6367 007640 012700 000122 MOV #FW.CA1,R0 ; .....CLEAR CRAM DIAG ADDR
6368 007644 CALL .FWRIT ; .....SO
007644 004737 004444' JSR PC,.FWRIT
6369 007650 012700 000124 MOV #FW.CA2,R0 ; .....NOW FOR THE OTHER HALF
6370 007654 CALL .FWRIT ; .....SO
007654 004737 004444' JSR PC,.FWRIT
6371 007660 POP <R0,R1,R2,R3,R4>; .....RESTORE REGISTERS
007660 012600 MOV (SP)+,R0
007662 012601 MOV (SP)+,R1
007664 012602 MOV (SP)+,R2
007666 012603 MOV (SP)+,R3
007670 012604 MOV (SP)+,R4
6372 007672 RETURN ; TO CALLER
007672 000207 RTS PC
6373 007674 WRCRME:
6374 007674 ERROR$ CAE ; ERROR -- CRAM ADDRESSING ERROR
007674 012746 011355 MOV #^RCAE,-(SP)
007700 104400 TRAP TC.ERR
6375 ;
6376 .TITLE NULLC -- NULL COMMAND MODULE 7603.30
6377
6378 .IDENT "005000"
6379
6380 ;
NULLC -- NULL COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:44 PAGE 155-2
.WRCRM -- WRITE CONTROL RAM SUBROUTINE 7511.03
6381 ; COPYRIGHT (C) 1975, 1979 BY
6382 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6383 ;
6384 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6385 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6386 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6387 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6388 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6389 ;
6390 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6391 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6392 ; CORPORATION.
6393 ;
6394 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6395 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6396 ;
6397 ; MODULE: NULL COMMAND
6398 ;
6399 ; VERSION: 01-01
6400 ;
6401 ; AUTHOR: R. BELANGER
6402 ;
6403 ; DATE: 7603.30
6404 ;
6405 ; THIS MODULE CONTAINS:
6406 ;
6407 ; 1) NULL COMMAND CODE
NULLC -- NULL COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:44 PAGE 156
.NULLC -- THE NULL COMMAND 7602.10
6409 .SBTTL .NULLC -- THE NULL COMMAND 7602.10
6410
6411 007702 .NULLC::
6412 007702 012737 000021' 000002' MOV #PARNAM,.CCMDN ; RESET THE COMMAND NAME
6413 007710 CALLR .CKEOC ; CHECK E-O-C CHARACTER
007710 000137 000214' JMP .CKEOC
6414 ;
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 157
.NULLC -- THE NULL COMMAND 7602.10
6416 .TITLE PARSE -- TOP-LEVEL COMMAND DECODER MODULE 7603.30
6417
6418 .IDENT "006270"
6419
6420 ;
6421 ; COPYRIGHT (C) 1975, 1979 BY
6422 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6423 ;
6424 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6425 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6426 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6427 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6428 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6429 ;
6430 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6431 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6432 ; CORPORATION.
6433 ;
6434 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6435 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6436 ;
6437 ; MODULE: TOP-LEVEL COMMAND DECODER
6438 ;
6439 ; VERSION: 06-27
6440 ;
6441 ; AUTHOR: R. BELANGER
6442 ;
6443 ; DATE: 7603.30
6444 ;
6445 ; THIS MODULE CONTAINS:
6446 ;
6447 ; 1) COMMAND DECODER
6448
6449 .MCALL DIR$,EXIT$S,QIOW$S,.ENB6,.INH6
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 158
.DOCMD -- DECODE A SINGLE COMMAND 7602.03
6451 .SBTTL .DOCMD -- DECODE A SINGLE COMMAND 7602.03
6452
6453 ;+
6454 ; .DOCMD -- DECODE AND DISPATCH FOR A SINGLE COMMAND
6455 ;
6456 ; THIS SUBROUTINE WILL DECODE THE INPUT STREAM FROM THE MAIN COMMAND
6457 ; SYMBOL TABLE, ".CMDTB", SET UP THE LEGAL BITS FOR EACH COMMAND
6458 ; DECODED, AND PERFORM THE DISPATCH FOR THAT COMMAND.
6459 ;
6460 ; INPUT ARGUMENTS:
6461 ;
6462 ; R0 POINTS TO A REPEAT COUNT
6463 ; R5 POINTS TO THE INPUT STREAM.
6464 ;
6465 ; OUTPUT ARGUMENTS:
6466 ;
6467 ; R0 POINTS TO THE COMMAND NAME POINTER IN THE COMMAND TABLE
6468 ;
6469 ; ERROR CODES RETURNED:
6470 ;
6471 ; CNR -- COMMAND IS NOT REPEATABLE
6472 ;-
6473
6474 007714 .DOCMD::
6475 007714 022020 CMP (R0)+,(R0)+ ; POINT TO THE END OF THE REPEAT COUNT
6476 007716 PUSH <(R0),-(R0),-(R0)>
007716 011046 MOV (R0),-(SP)
007720 014046 MOV -(R0),-(SP)
007722 014046 MOV -(R0),-(SP)
6477 007724 010600 MOV SP,R0 ; ...POINT TO THE REPEAT COUNT
6478 007726 PUSH R5 ; ...SAVE COMMAND LINE POINTER
007726 010546 MOV R5,-(SP)
6479 007730 PUSH R0 ; ....SAVE THE REPEAT COUNT POINTER
007730 010046 MOV R0,-(SP)
6480 007732 010037 000220' MOV R0,.RPTPT ; .....FOR "CLEAR REPEAT"
6481 007736 10$:
6482 007736 012700 004310' MOV #.CMDTB,R0 ; .....POINT TO THE COMMAND TABLE
6483 007742 012737 000021' 000002' MOV #PARNAM,.CCMDN ; ....."PARSER" IS CURRENT COMMAND
6484 007750 CALL .TSCAN ; .....SCAN THE TABLE
007750 004737 010510' JSR PC,.TSCAN
6485 007754 011037 000164' MOV (R0),.LGLWD ; .....SET UP THE LEGAL BITS FOR COMMAND
6486 007760 014037 000002' MOV -(R0),.CCMDN ; .....SET THE POINTER TO THIS NAME
6487
6488 ; [CONTINUED ON THE FOLLOWING PAGE]
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 159
.DOCMD -- DECODE A SINGLE COMMAND 7602.03
6490 ; [CONTINUED FROM THE PREVIOUS PAGE]
6491
6492 007764 20$:
6493 007764 CALL @4(R0) ; .....DO THE COMMAND
007764 004770 000004 JSR PC,@4(R0)
6494 007770 011600 MOV (SP),R0 ; .....POINT TO THE REPEAT COUNT
6495 007772 CALL .TPTST ; .....IS THERE REALLY ONE THERE
007772 004737 011460' JSR PC,.TPTST
6496 007776 001404 BEQ 30$ ; .....NO -- JUST GO ON
6497 010000 032737 000400 000164' BIT #LG.RPT,.LGLWD ; .....YES -- IS THIS COMMAND REPEATABLE?
6498 010006 001427 BEQ DOCCNR ; .....NO -- GIVE "CNR" ERROR
6499 010010 30$:
6500 010010 105725 TSTB (R5)+ ; .....YES -- IS THIS THE END??
6501 010012 001010 BNE 40$ ; .....NO -- GO ON SCANNING THIS LINE
6502 010014 105745 TSTB -(R5) ; .....YES -- BACK THE POINTER UP
6503 010016 CALL .TPDEC ; .....DECREMENT STACKED REPEAT COUNT
010016 004737 011534' JSR PC,.TPDEC
6504 010022 CALL .TPTST ; .....SEE WHAT THE COUNT IS
010022 004737 011460' JSR PC,.TPTST
6505 010026 003405 BLE 50$ ; .....DONE IF .LE. 0
6506 010030 016605 000002 MOV 2(SP),R5 ; .....RESTORE INPUT STREAM POINTER
6507 010034 40$:
6508 010034 005037 000164' CLR .LGLWD ; .....CLEAR THE LEGAL BITS
6509 010040 000736 BR 10$ ; .....AND REITERATE OR CONTINUE
6510 ;
6511 010042 50$:
6512 010042 062706 000012 ADD #^D10,SP ; .....FLUSH THE STACK
6514 010046 005737 000000G TST .KLERQ ; [5.1006]SNAPSHOT IN PROGRESS?
6515 010052 001401 BEQ 55$ ; [5.1006]NO -- DO ERROR CHECKS
6516 010054 RETURN ; [5.1006]YES -- DONE
010054 000207 RTS PC
6518 010056 55$: CALL .CESCK ; CHECK FOR CLOCK ERROR STOP
010056 004737 000000' JSR PC,.CESCK
6519 010062 CALLR .EBPCK ; AND EBUS PARITY ERROR
010062 000137 000410' JMP .EBPCK
6520 ;
6521 010066 DOCCNR:
6522 010066 ERROR$ CNR ; ERROR -- COMMAND IS NOT REPEATABLE
010066 012746 012402 MOV #^RCNR,-(SP)
010072 104400 TRAP TC.ERR
6523 ;
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 160
.EXITP -- THE COMMAND PARSER EXIT POINT 7605.17
6525 .SBTTL .EXITP -- THE COMMAND PARSER EXIT POINT 7605.17
6526
6527 ;+
6528 ; .EXITP -- THE COMMAND PARSER EXIT POINT.
6529 ;
6530 ; THIS ROUTINE IS THE COMMAND PARSER EXIT POINT
6531 ;
6532 ; INPUT ARGUMENTS:
6533 ;
6534 ; NONE.
6535 ;
6536 ; OUTPUT ARGUMENTS:
6537 ;
6538 ; NONE.
6539 ;
6540 ; ERROR CODES RETURNED:
6541 ;
6542 ; NONE.
6543 ;-
6544
6545 010074 .EXITP::
6547 010074 005737 000064' TST .DBGSW ; LOOK AT THE DEBUG SWITCH
6548 010100 001401 BEQ 5$ ; CLEAR -- DON'T HALT
6549 010102 000000 HALT ; FOR DEBUGGING
6550 010104 5$:
6552 010104 005737 001626' TST .INDFG ; [5.1000]INDIRECT FILE OPEN?
6553 010110 001410 BEQ 10$ ; [5.1000]NO -- GO ON
6554 010112 012701 002716' MOV #.INATT,R1 ; [5.1000]SET ATTRIBUTE ADDR
6555 010116 012702 000005 MOV #INDLUN,R2 ; [5.1000]SET LUN
6556 010122 005037 001626' CLR .INDFG ; [5.1000]INDICATE FILE CLOSED
6557 010126 CALL .CLOSE ; [5.1000]CLOSE FILE
010126 004737 002114' JSR PC,.CLOSE
6558 010132 105737 000154' 10$: TSTB .OUTLG ; [5.1000]LOG FILE OPEN?
6559 010136 001412 BEQ 20$ ; [5.1000]NO -- GO NO
6560 010140 105037 000154' CLRB .OUTLG ; [5.1000]INDICATE FILE CLOSED
6561 010144 CALL .WRITZ ; [5.1000]WRITE OUT CURRENT BLOCK
010144 004737 003060' JSR PC,.WRITZ
6562 010150 012701 004016' MOV #.OTATT,R1 ; [5.1000]YES -- SET ATTRIBUTE ADDR
6563 010154 012702 000004 MOV #LOGLUN,R2 ; [5.1000]SET LUN
6564 010160 CALL .CLOSE ; [5.1000]CLOSE FILE
010160 004737 002114' JSR PC,.CLOSE
6565 010164 20$: QIOW$S #IO.DET,#CIDLUN,#E.FCID,#0,#0,#0
010164 005046 CLR -(SP)
010166 005046 CLR -(SP)
010170 112746 000002 MOVB #E.FCID,-(SP)
010174 112766 000000 000001 MOVB #0,1(SP)
010202 012746 000001 MOV #CIDLUN,-(SP)
010206 012746 000000G MOV #IO.DET,-(SP)
010212 012746 MOV (PC)+,-(SP)
010214 003 006 .BYTE 3,$$$T1
010216 104375 EMT 375
6566 010220 005037 000000G CLR .KLERQ ; [5.1006]CLEAR SNAPSHOT FLAG
6567 010224 142737 000000G 000000G BICB #M.PARQ,.MISC ; CLEAR THE PRIORITY FLAG
6568 010232 .INH6 ; DISALLOW INTERRUPTS
010232 013746 177776 MOV @#PS,-(SP)
010236 112737 000300 177776 MOVB #300,@#PS
6569 010244 013705 000000G MOV CTYPTR,R5 ; POINT TO THE CTY
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 160-1
.EXITP -- THE COMMAND PARSER EXIT POINT 7605.17
6570 010250 042765 000000G 000000G BIC #TT.OUT,STSW1(R5) ; CLEAR ANY I/O IN PROGRESS WE MAY HAVE SCREWED
6571 010256 012703 000000G MOV #D.CDLS,R3 ;;; SEND A FREE ACK FOR THE CTY
6572 010262 CALL ..SACK ;;;
010262 004737 000000G JSR PC,..SACK
6573 010266 .ENB6 ; ALLOW INTERRUPTS
010266 012637 177776 MOV (SP)+,@#PS
6574 010272 EXIT$S ; EXIT
010272 012746 MOV (PC)+,-(SP)
010274 063 001 .BYTE 51.,1
010276 104375 EMT 375
6575 010300 000004 IOT ; HELP....
6576 ;
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 161
.START -- COMMAND PARSER MAIN LOOP 7602.02
6578 .SBTTL .START -- COMMAND PARSER MAIN LOOP 7602.02
6579
6580 ;+
6581 ; .START -- COMMAND PARSER MAIN LOOP.
6582 ;
6583 ; THIS IS THE MAIN LOOP AND TOPMOST LEVEL OF THE RSX20F CONSOLE
6584 ; COMMAND PARSER. CONTROL IS PASSED HERE ON STARTUP AND ON ERROR
6585 ; RESTARTS FROM ".PTTRP". THE PROMPT STRING IS OUTPUT TO THE CONSOLE
6586 ; OUTPUT DEVICE AND THE NEXT COMMAND STRING IS SOLICITED FROM
6587 ; THE OPERATOR.
6588 ;
6589 ; INPUT ARGUMENTS:
6590 ;
6591 ; NONE.
6592 ;
6593 ; OUTPUT ARGUMENTS:
6594 ;
6595 ; R0 POINTS TO THE REPEAT COUNT
6596 ; R5 POINTS TO THE INPUT STREAM
6597 ;
6598 ; ERROR CODES RETURNED:
6599 ;
6600 ; IF THE CONSOLE DEVICE CANNOT BE ATTACHED OR DETACHED, THE
6601 ; PARSER EXITS.
6602 ;-
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 162
.RGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE 7509.16
6604 .SBTTL .RGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE 7509.16
6605
6606 ;+
6607 ; .REGSV -- SUBROUTINE TO SAVE AND RESTORE R5 - R1 ON THE STACK.
6608 ;
6609 ; R1 - R5 ARE SAVED ON THE STACK, AND MAY BE RESTORED BY EITHER:
6610 ;
6611 ; RETURN ; RETURNS TO HIGHER LEVEL
6612 ; -OR-
6613 ; CALL @(SP)+ ; RETURNS TO SAME LEVEL
6614 ;
6615 ; NO REGISTERS ARE DESTROYED BY THIS SUBROUTINE, AND SUBSEQUENT CALLS
6616 ; WILL NEST.
6617 ;
6618 ; CALLING SEQUENCE IS:
6619 ;
6620 ; CALL R5,.REGSV
6621 ; ONLY RETURN
6622 ;-
6623
6624 010302 .REGSV:: ; DEFINE AS GLOBAL
6625 010302 PUSH <R4,R3,R2,R1,R5>
010302 010446 MOV R4,-(SP)
010304 010346 MOV R3,-(SP)
010306 010246 MOV R2,-(SP)
010310 010146 MOV R1,-(SP)
010312 010546 MOV R5,-(SP)
6626 010314 016605 000012 MOV 12(SP),R5 ; .....RESTORE R5
6627 010320 000241 CLC ; .....CLEAR CC-C
6628 010322 CALL @(SP)+ ; .....RETURN WITH RESTORE ADDRESS ON THE STACK
010322 004736 JSR PC,@(SP)+
6629
6630 ; HERE TO RESTORE R1 - R5 AND RETURN
6631
6632 010324 POP <R1,R2,R3,R4,R5>
010324 012601 MOV (SP)+,R1
010326 012602 MOV (SP)+,R2
010330 012603 MOV (SP)+,R3
010332 012604 MOV (SP)+,R4
010334 012605 MOV (SP)+,R5
6633 010336 RETURN ; RETURN
010336 000207 RTS PC
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 163
.RGSAV -- R1 - R5 SAVE AND RESTORE SUBROUTINE 7509.16
6635 010340 .START::
6636 010340 013706 000224' MOV .SVESP,SP ; INIT THE STACK POINTER
6637 010344 10$:
6638 010344 005037 000226' CLR .SVKLF ; RESET ".SVKLF"
6639 010350 012737 000021' 000002' MOV #PARNAM,.CCMDN ; SET UP PARSER NAME
6640 010356 CALL .TYINI ; INIT OUTPUT POINTERS
010356 004737 015722' JSR PC,.TYINI
6641 010362 012701 000000G MOV #.KLFLG,R1 ; POINT TO ".KLFLG"
6643 010366 012700 000034' MOV #KLEPRM,R0 ; [5.1006]KLE PROMPT
6644 010372 005737 000000G TST .KLERQ ; [5.1006]KL CRASH?
6645 010376 001003 BNE 12$ ; [5.1006]YES -- GET KLE INPUT
6646 010400 005037 000144' CLR .KLEDF ; [5.1006]NO -- CLEAR DEFAULT FLAG
6647 010404 000403 BR 15$ ; [5.1006]GO ON
6648 010406 12$: CALL .TYMSF ; [5.1006]YES -- OUTPUT PROMPT
010406 004737 015440' JSR PC,.TYMSF
6649 010412 000423 BR 35$ ; [5.1006]GET COMMANDS
6651 010414 012700 000030' 15$: MOV #PROMPT,R0 ; POINT TO THE PROMPT STRING
6652 010420 CALL .TYMSG ; PRINT IT
010420 004737 015446' JSR PC,.TYMSG
6653 010424 012700 000076 MOV #'>,R0 ; ASSUME THE KL IS RUNNING
6654 010430 032711 100000 BIT #KF.CLK,(R1) ; IS THE CLOCK ON?
6655 010434 001406 BEQ 20$ ; NO -- PRINT "#"
6656 010436 032711 040000 BIT #KF.RUN,(R1) ; YES -- IS THE RUN FLOP ON?
6657 010442 001005 BNE 30$ ; YES -- PRINT ">"
6658 010444 012700 000045 MOV #'%,R0 ; NO -- PRINT "%"
6659 010450 000402 BR 30$ ; GO DO IT
6660 ;
6661 010452 20$:
6662 010452 012700 000043 MOV #'#,R0 ; KL CLOCK IS OFF
6663 010456 30$:
6664 010456 CALL .TFCHR ; FORCE PRINT THE PROMPT CHARACTER
010456 004737 015470' JSR PC,.TFCHR
6665 010462 012705 000760' 35$: MOV #.COMND,R5 ; SET UP COMMAND BUFFER POINTER
6666 010466 CALL .GTCMD ; GO READ A COMMAND LINE
010466 004737 012574' JSR PC,.GTCMD
6667 010472 005037 000164' CLR .LGLWD ; FLUSH OLD LEGAL BITS
6668 010476 012700 000212' MOV #.RPTCT,R0 ; GET THE REPEAT COUNT POINTER
6669 010502 CALL .DOCMD ; NOW GO EXECUTE A COMMAND
010502 004737 007714' JSR PC,.DOCMD
6670 010506 000716 BR 10$ ; AND START OVER AGAIN
6671 ;
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 164
.TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
6673 .SBTTL .TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
6674
6675 ;+
6676 ; .TSCAN -- ROUTINE TO SCAN AN ".ASCIZ" SYMBOL TABLE.
6677 ;
6678 ; THIS ROUTINE WILL SCAN A SYMBOL TABLE AND RETURN THE DISPATCH
6679 ; ADDRESS ASSOCIATED WITH THE SYMBOL IN R0.
6680 ;
6681 ; THE ENTRIES IN THE SYMBOL TABLE ARE OF THE FORM:
6682 ;
6683 ; !=======================================!
6684 ; ! POINTER TO ".ASCIZ" SYMBOL !
6685 ; !---------------------------------------!
6686 ; ! LEGAL BITS FOR OBJECT !
6687 ; !---------------------------------------!
6688 ; ! DISPATCH FOR OBJECT !
6689 ; !=======================================!
6690 ;
6691 ; INPUT ARGUMENTS:
6692 ;
6693 ; R0 POINTS TO THE SYMBOL TABLE
6694 ;
6695 ; OUTPUT ARGUMENTS:
6696 ;
6697 ; R0 POINTS TO THE "LEGAL" BITS OF THE MATCHED SYMBOL
6698 ;
6699 ; ERROR CODES RETURNED:
6700 ;
6701 ; AMB -- AMBIGUOUS KEYWORD.
6702 ; NSK -- NON-EXISTENT KEYWORD.
6703 ; WRM -- WRONG MODE FOR COMMAND.
6704 ;-
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 165
.TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
6706 010510 .TSCAN::
6707 010510 CALL .CKCTC ; SEE IF "^C" WAS TYPED
010510 004737 000166' JSR PC,.CKCTC
6708 010514 CALL .CKSYM ; GET OVER LEADING BLANKS
010514 004737 000374' JSR PC,.CKSYM
6709 010520 122704 000077 CMPB #'?,R4 ; IS THIS AN INQUIRY?
6710 010524 001442 BEQ 50$ ; YES -- DISPLAY THE TABLE
6711 010526 PUSH R1 ; NO -- SAVE R1 ON THE STACK
010526 010146 MOV R1,-(SP)
6712 010530 PUSH R5 ; .SAVE THE INPUT POINTER
010530 010546 MOV R5,-(SP)
6713 010532 010001 MOV R0,R1 ; ..TABLE POINTER TO R1
6714 010534 PUSH R5 ; ..SAVE THE INPUT POINTER AGAIN
010534 010546 MOV R5,-(SP)
6715 010536 005046 CLR -(SP) ; ...CLEAR A SCRATCH AREA
6716 010540 10$:
6717 010540 012100 MOV (R1)+,R0 ; ....GET THE ADDRESS OF THE SYMBOL
6718 010542 CALL .SSCAN ; ....SCAN IT
010542 004737 010760' JSR PC,.SSCAN
6719 010546 103412 BCS 30$ ; ....NO MATCH -- TRY NEXT ENTRY
6720 010550 001004 BNE 20$ ; ....MATCH -- SAVE POINTER AND CONTINUE
6721 010552 010100 MOV R1,R0 ; ....EXACT MATCH -- PUT THE POINTER IN R0
6722 010554 010566 000004 MOV R5,4(SP) ; ....FIX THE INPUT POINTER
6723 010560 000414 BR 40$ ; ....AND SET UP FOR EXIT
6724 ;
6725 010562 20$:
6726 010562 005716 TST (SP) ; ....HAVE WE ALREADY FOUND A MATCH?
6727 010564 001062 BNE TSCAMB ; ....YES -- GIVE "AMB" ERROR
6728 010566 010116 MOV R1,(SP) ; ....NO -- SAVE POINTER AND GO ON
6729 010570 010566 000004 MOV R5,4(SP) ; ....SAVE THE BUFFER POINTER
6730 010574 30$:
6731 010574 016605 000002 MOV 2(SP),R5 ; ....RESET THE INPUT POINTER
6732 010600 022121 CMP (R1)+,(R1)+ ; ....ADVANCE THE POINTER
6733 010602 005711 TST (R1) ; ....IS THIS THE END OF THE TABLE?
6734 010604 001355 BNE 10$ ; ....NO -- TRY THIS SYMBOL
6735 010606 011600 MOV (SP),R0 ; ....YES -- DID WE FIND A MATCH?
6736 010610 001455 BEQ TSCNSK ; ....NO -- GIVE "NSK" ERROR
6737 010612 40$:
6738 010612 033710 000000G BIT .FEMOD,(R0) ; ....YES -- CAN WE DO THIS COMMAND?
6739 010616 001455 BEQ TSCWRM ; ....NO -- GIVE "WRM" ERROR
6740 010620 022626 CMP (SP)+,(SP)+ ; ....YES -- CLEAR THE STACK
6741 010622 POP R5 ; ..RETURN UPDATED LINE POINTER
010622 012605 MOV (SP)+,R5
6742 010624 111504 MOVB (R5),R4 ; .PUT THE DELIMITER IN R4
6743 010626 POP R1 ; .RESTORE R1
010626 012601 MOV (SP)+,R1
6744 010630 RETURN ; WITH POINTER TO LEGAL BITS IN R0
010630 000207 RTS PC
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 166
.TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
6746 010632 50$:
6747 010632 105725 TSTB (R5)+ ; GET OVER THE "?"
6748 010634 CALL .CKEOC ; CHECK FOR E-O-C
010634 004737 000214' JSR PC,.CKEOC
6749 010640 010001 MOV R0,R1 ; TABLE POINTER TO R1
6750 010642 CALL .TCRLF ; TYPE A <CRLF>
010642 004737 015536' JSR PC,.TCRLF
6751 010646 013700 000002' MOV .CCMDN,R0 ; CURRENT COMMAND NAME
6752 010652 CALL .TYMSG ; PRINT THAT
010652 004737 015446' JSR PC,.TYMSG
6753 010656 012700 000345' MOV #TDMSG0,R0 ; REST OF LINE
6754 010662 CALL .TYLIN ; PRINT IT
010662 004737 015432' JSR PC,.TYLIN
6755 010666 60$:
6756 010666 012100 MOV (R1)+,R0 ; NAME POINTER TO R0
6757 010670 001414 BEQ 80$ ; EXIT IF NULL
6758 010672 031137 000000G BIT (R1),.FEMOD ; COMMAND LEGAL IN THIS MODE?
6759 010676 001407 BEQ 70$ ; NO -- GO ON
6760 010700 105760 000001 TSTB 1(R0) ; [5.1012]ONE CHAR COMMAND?
6761 010704 001404 BEQ 70$ ; [5.1012]YES -- SKIP IT
6762 010706 CALL .TYSPC ; YES -- SPACE OVER
010706 004737 014566' JSR PC,.TYSPC
6763 010712 CALL .TYLIN ; PRINT THIS NAME
010712 004737 015432' JSR PC,.TYLIN
6764 010716 70$:
6765 010716 022121 CMP (R1)+,(R1)+ ; POINT TO THE NEXT NAME
6766 010720 000762 BR 60$ ; AND GO ON
6767 ;
6768 010722 80$:
6769 010722 013706 000224' MOV .SVESP,SP ; RESET THE STACK
6770 010726 000177 000222' JMP @.STRTV ; AND START OVER
6771 ;
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 167
.TSCAN -- ROUTINE TO SCAN A SYMBOL TABLE 7703.25
6773 010732 TSCAMB:
6774 010732 016605 000002 MOV 2(SP),R5 ; RESET INPUT POINTER
6775 010736 ERROR$ AMB ; .ERROR -- MULTIPLE MATCH
010736 012746 004112 MOV #^RAMB,-(SP)
010742 104400 TRAP TC.ERR
6776 ;
6777 010744 TSCNSK:
6778 010744 ERROR$ NSK ; .ERROR -- NON-EXISTENT KEYWORD
010744 012746 055203 MOV #^RNSK,-(SP)
010750 104400 TRAP TC.ERR
6779 ;
6780 010752 TSCWRM:
6781 010752 ERROR$ WRM ; .ERROR -- WRONG MODE FOR COMMAND
010752 012746 111235 MOV #^RWRM,-(SP)
010756 104400 TRAP TC.ERR
6782 ;
6783
6784 000345 .PSECT MESSAG
6785
6786 000345 TDMSG0:
6787 000345 040 103 117 .ASCIZ % COMMANDS ARE:%
000350 115 115 101
000353 116 104 123
000356 040 101 122
000361 105 072 000
6788 010760 .PSECT
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 168
.SSCAN -- ROUTINE TO SCAN A SYMBOL 7601.14
6790 .SBTTL .SSCAN -- ROUTINE TO SCAN A SYMBOL 7601.14
6791
6792 ;+
6793 ; .SSCAN -- ROUTINE TO SCAN A SYMBOL IN THE INPUT STREAM FOR A MATCH
6794 ; WITH AN ".ASCIZ" SYMBOL IN A TABLE.
6795 ;
6796 ; THIS ROUTINE WILL FIND A MATCH OR NON-MATCH ON A SYMBOL POINTED TO
6797 ; BY R5 WITH THE ".ASCIZ" SYMBOLS IN THE TABLE POINTED TO BY R0.
6798 ;
6799 ; INPUT ARGUMENTS:
6800 ;
6801 ; R0 POINTS TO AN ".ASCIZ" SYMBOL IN A TABLE DESCRIBED IN
6802 ; ".TSCAN" (Q.V.).
6803 ; R5 POINTS TO THE INPUT STREAM, OR THE OTHER SYMBOL TO BE
6804 ; MATCHED.
6805 ;
6806 ; OUTPUT ARGUMENTS:
6807 ;
6808 ; ON FAILURE, (NO MATCH):
6809 ; R5 POINTS TO THE BEGINNING OF THE SYMBOL IN THE INPUT STREAM
6810 ; R4 CONTAINS THE LAST CHARACTER PROCESSED IN THE INPUT STREAM
6811 ; CC-C IS SET.
6812 ;
6813 ; ON SUCCESS, (MATCH):
6814 ; R5 POINTS TO THE DELIMITER AFTER THE SYMBOL
6815 ; R4 CONTAINS THAT DELIMITER CHARACTER
6816 ; CC-C IS CLEAR
6817 ; IF CC-Z IS SET, THE MATCH WAS EXACT.
6818 ;
6819 ; ERROR CODES RETURNED:
6820 ;
6821 ; ILS -- ILLEGAL SEPARATOR CHARCATER.
6822 ;-
PARSE -- TOP-LEVEL COMMAND DECO MACRO M1113 10-NOV-81 17:44 PAGE 169
.SSCAN -- ROUTINE TO SCAN A SYMBOL 7601.14
6824 010760 .SSCAN::
6825 010760 121510 CMPB (R5),(R0) ; TEST CHARACTERS FOR MATCH
6826 010762 001006 BNE 20$ ; NO MATCH -- CHECK DELIMITER
6827 010764 105720 TSTB (R0)+ ; ADVANCE THE POINTERS
6828 010766 001402 BEQ 10$ ; MATCH ON ".ASCIZ" SYMBOLS?
6829 010770 105725 TSTB (R5)+ ; NO -- ADVANCE OTHER POINTER
6830 010772 000772 BR .SSCAN ; AND TRY NEXT TWO CHARACTERS
6831 ;
6832 010774 10$:
6833 010774 105740 TSTB -(R0) ; BACK THE POINTER UP
6834 010776 000405 BR 30$ ; AND EXIT
6835 ;
6836 011000 20$:
6837 011000 111504 MOVB (R5),R4 ; GET LAST CHARACTER FROM INPUT
6838 011002 132764 000034 001450' BITB #CH.END,.CHTAB(R4)
6839 011010 001402 BEQ 40$ ; NOT LEGAL DELIMITER -- GIVE NO MATCH
6840 011012 30$:
6841 011012 105710 TSTB (R0) ; LOOK AT THE LAST CHARACTER IN OUR SYMBOL
6842 011014 000401 BR 50$ ; AND EXIT
6843 ;
6844 011016 40$:
6845 011016 000261 SEC ; SET CC-C TO SAY "NO MATCH"
6846 011020 50$:
6847 011020 RETURN ; TO CALLER
011020 000207 RTS PC
REPTC -- REPEAT COMMAND MODULE MACRO M1113 10-NOV-81 17:44 PAGE 171
.SSCAN -- ROUTINE TO SCAN A SYMBOL 7601.14
6850 .TITLE REPTC -- REPEAT COMMAND MODULE 7703.25
6851
6852 .IDENT "005000"
6853
6854 ;
6855 ; COPYRIGHT (C) 1975, 1979 BY
6856 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6857 ;
6858 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6859 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6860 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6861 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6862 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6863 ;
6864 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6865 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6866 ; CORPORATION.
6867 ;
6868 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6869 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6870 ;
6871 ; MODULE: REPEAT COMMAND
6872 ;
6873 ; VERSION: 05-00
6874 ;
6875 ; AUTHOR: R. BELANGER
6876 ;
6877 ; DATE: 7703.25
6878 ;
6879 ; THIS MODULE CONTAINS:
6880 ;
6881 ; 1) REPEAT COMMAND CODE
REPTC -- REPEAT COMMAND MODULE MACRO M1113 10-NOV-81 17:44 PAGE 172
.REPTC -- THE "REPEAT" COMMAND 7703.25
6883 .SBTTL .REPTC -- THE "REPEAT" COMMAND 7703.25
6884
6885 ;+
6886 ; .REPTC -- THE "REPEAT" COMMAND
6887 ;
6888 ; THIS ROUTINE WILL ACCEPT AND CHECK A 36 BIT REPEAT COUNT BEFORE
6889 ; CALLING THE TOP LEVEL OF THE COMMAND PARSER.
6890 ;
6891 ; INPUT ARGUMENTS:
6892 ;
6893 ; NONE.
6894 ;
6895 ; OUTPUT ARGUMENTS:
6896 ;
6897 ; R0 POINTS TO A 36 BIT REPEAT COUNT
6898 ;
6899 ; ERROR CODES RETURNED:
6900 ;
6901 ; IRC -- ILLEGAL REPEAT COUNT
6902 ;-
6903
6904 011022 .REPTC::
6905 011022 013737 000134' 000206' MOV .IRADX,.RDXSV ; SAVE CURRENT INPUT RADIX
6906 011030 012737 000012 000134' MOV #^D10,.IRADX ; SET IT TO DECIMAL
6907 011036 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
6908 011040 005046 CLR -(SP) ; .
6909 011042 005046 CLR -(SP) ; ..
6910 011044 010600 MOV SP,R0 ; ...POINT TO IT
6911 011046 CALL .GTKLN ; ...READ THE NUMBER
011046 004737 013266' JSR PC,.GTKLN
6912 011052 013737 000206' 000134' MOV .RDXSV,.IRADX ; ...RESET INPUT RADIX
6913 011060 CALL .TPTST ; ...SEE WHAT WE GOT
011060 004737 011460' JSR PC,.TPTST
6914 011064 003410 BLE REPIRC ; ...ILLEGAL IF .LE. 0
6915 011066 CALL .CKEOC ; ...CHECK E-O-C
011066 004737 000214' JSR PC,.CKEOC
6916 011072 105725 TSTB (R5)+ ; ...GET OVER THE E-O-C CHARACTER
6917 011074 CALL .DOCMD ; ...CONTINUE PROCESSING THE LINE
011074 004737 007714' JSR PC,.DOCMD
6918 011100 062706 000006 ADD #^D6,SP ; ...FLUSH THE STACK
6919 011104 RETURN ; TO CALLER
011104 000207 RTS PC
6920 011106 REPIRC:
6921 011106 ERROR$ IRC ; ERROR -- ILLEGAL REPEAT COUNT
011106 012746 035423 MOV #^RIRC,-(SP)
011112 104400 TRAP TC.ERR
6922 ;
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 173
.REPTC -- THE "REPEAT" COMMAND 7703.25
6924 .TITLE TABLE -- COMMAND PARSER COMMAND TABLES 7812.20
6925
6926 .IDENT "006250"
6927
6928 ;
6929 ; COPYRIGHT (C) 1975, 1979 BY
6930 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6931 ;
6932 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6933 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6934 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6935 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6936 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6937 ;
6938 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6939 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6940 ; CORPORATION.
6941 ;
6942 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6943 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6944 ;
6945 ; MODULE: MAIN COMMAND PARSER TABLES
6946 ;
6947 ; VERSION: 06-25
6948 ;
6949 ; AUTHOR: R. BELANGER
6950 ;
6951 ; DATE: 7812.20
6952 ;
6953 ; THIS MODULE CONTAINS:
6954 ;
6955 ; 1) THE MAIN COMMAND TABLES
6956 ;
6957 ; MODIFICATIONS:
6958 ;
6959 ; NO. DATE PROGRAMMER REASON
6960 ; --- ---- ---------- ------
6961 ; 001 28-FEB-77 R. BELANGER ADD DISCONNECT COMMAND
6962 ;
6963 ; [5.1000] 24-AUG-79 K. LEFEBVRE ADD "TAKE" COMMAND
6964 ; ADD "SET OUTPUT" COMMAND
6965 ; [5.1002] 14-SEP-79 K. LEFEBVRE ADD "SET AC-BLOCK" COMMAND
6966 ; ADD "SWEEP" COMMAND
6967 ; [5.1010] 17-OCT-79 K.LEFEBVRE ADD "SHOW" COMMAND
6968 ; [5.1011] 19-OCT-79 R.BELANGER ADD "WHAT HARDWARE" COMMAND
6969 ; [5.1012] 19-OCT-79 R.BELANGER ADD "MARK-MICROCODE" COMMAND
6970 ; ADD "UNMARK-MICROCODE" COMMAND
6971 ; 002 05-NOV-80 S. LEAPLINE ADD "AUTO-TAKE" COMMAND
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 174
.CMDTB -- THE MAIN COMMAND TABLE 7703.25
6973 .SBTTL .CMDTB -- THE MAIN COMMAND TABLE 7703.25
6974
6975 004310 .PSECT DATA
6976
6977 004310 .CMDTB::
6978 004310 COMND$ ,<LG.OPR!LG.RPT>,.NULLC,NUL
000364 000 NULMSG:: .ASCIZ %%
004310 000364' .WORD NULMSG ; POINTER TO "" SYMBOL
004312 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
004314 007702' .WORD .NULLC ; ROUTINE TO CALL OR DATA
6979 ;
6980 004316 COMND$ ABORT,LG.OPR,.ABRTC,ABO
000365 101 102 117 ABOMSG:: .ASCIZ %ABORT%
000370 122 124 000
004316 000365' .WORD ABOMSG ; POINTER TO "ABORT" SYMBOL
004320 000001 .WORD LG.OPR ; LEGAL BITS
004322 000000G .WORD .ABRTC ; ROUTINE TO CALL OR DATA
6981 ;
6982 004324 COMND$ CLEAR,<LG.OPR!LG.RPT>,.CLRCM,CLR
000373 103 114 105 CLRMSG:: .ASCIZ %CLEAR%
000376 101 122 000
004324 000373' .WORD CLRMSG ; POINTER TO "CLEAR" SYMBOL
004326 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
004330 000000G .WORD .CLRCM ; ROUTINE TO CALL OR DATA
6983 ;
6984 004332 COMND$ CONTINUE,<LG.PRG!LG.RPT>,.CONTC,CNT
000401 103 117 116 CNTMSG:: .ASCIZ %CONTINUE%
000404 124 111 116
000407 125 105 000
004332 000401' .WORD CNTMSG ; POINTER TO "CONTINUE" SYMBOL
004334 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004336 000000G .WORD .CONTC ; ROUTINE TO CALL OR DATA
6985 ;
6986 004340 COMND$ DEPOSIT,<LG.PRG!LG.RPT>,.DPOSC,DEP
000412 104 105 120 DEPMSG:: .ASCIZ %DEPOSIT%
000415 117 123 111
000420 124 000
004340 000412' .WORD DEPMSG ; POINTER TO "DEPOSIT" SYMBOL
004342 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004344 000000G .WORD .DPOSC ; ROUTINE TO CALL OR DATA
6987 ;
6988 004346 COMND$ DISCONNECT,LG.ALL,.DISCC,DIS
000422 104 111 123 DISMSG:: .ASCIZ %DISCONNECT%
000425 103 117 116
000430 116 105 103
000433 124 000
004346 000422' .WORD DISMSG ; POINTER TO "DISCONNECT" SYMBOL
004350 000007 .WORD LG.ALL ; LEGAL BITS
004352 000000G .WORD .DISCC ; ROUTINE TO CALL OR DATA
6989 ;
6990 004354 COMND$ EXAMINE,<LG.OPR!LG.RPT>,.EXAMC,EXA
000435 105 130 101 EXAMSG:: .ASCIZ %EXAMINE%
000440 115 111 116
000443 105 000
004354 000435' .WORD EXAMSG ; POINTER TO "EXAMINE" SYMBOL
004356 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
004360 000000G .WORD .EXAMC ; ROUTINE TO CALL OR DATA
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 174-1
.CMDTB -- THE MAIN COMMAND TABLE 7703.25
6991 ;
6992 004362 COMND$ FREAD,<LG.MNT!LG.RPT>,.DFRED,FRD
000445 106 122 105 FRDMSG:: .ASCIZ %FREAD%
000450 101 104 000
004362 000445' .WORD FRDMSG ; POINTER TO "FREAD" SYMBOL
004364 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
004366 000000G .WORD .DFRED ; ROUTINE TO CALL OR DATA
6993 ;
6994 004370 COMND$ FWRITE,<LG.MNT!LG.RPT>,.DFWRT,FWR
000453 106 127 122 FWRMSG:: .ASCIZ %FWRITE%
000456 111 124 105
000461 000
004370 000453' .WORD FWRMSG ; POINTER TO "FWRITE" SYMBOL
004372 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
004374 000000G .WORD .DFWRT ; ROUTINE TO CALL OR DATA
6995 ;
6996 004376 COMND$ FXCT,<LG.MNT!LG.RPT>,.DFXCT,FXC
000462 106 130 103 FXCMSG:: .ASCIZ %FXCT%
000465 124 000
004376 000462' .WORD FXCMSG ; POINTER TO "FXCT" SYMBOL
004400 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
004402 000000G .WORD .DFXCT ; ROUTINE TO CALL OR DATA
6997 ;
6998 004404 COMND$ HALT,<LG.PRG!LG.RPT>,.HALTC,HLT
000467 110 101 114 HLTMSG:: .ASCIZ %HALT%
000472 124 000
004404 000467' .WORD HLTMSG ; POINTER TO "HALT" SYMBOL
004406 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004410 000000G .WORD .HALTC ; ROUTINE TO CALL OR DATA
6999 ;
7004 004412 COMND$ INITIALIZE,<LG.PRG!LG.RPT>,.INITC,INI
000474 111 116 111 INIMSG:: .ASCIZ %INITIALIZE%
000477 124 111 101
000502 114 111 132
000505 105 000
004412 000474' .WORD INIMSG ; POINTER TO "INITIALIZE" SYMBOL
004414 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004416 000000G .WORD .INITC ; ROUTINE TO CALL OR DATA
7005 ;
7006 004420 COMND$ JUMP,LG.OPR,.JUMPC,JMP
000507 112 125 115 JMPMSG:: .ASCIZ %JUMP%
000512 120 000
004420 000507' .WORD JMPMSG ; POINTER TO "JUMP" SYMBOL
004422 000001 .WORD LG.OPR ; LEGAL BITS
004424 000000G .WORD .JUMPC ; ROUTINE TO CALL OR DATA
7007 ;
7008 004426 COMND$ M,LG.OPR,.RUNCM,M
000514 115 000 MMSG:: .ASCIZ %M%
004426 000514' .WORD MMSG ; POINTER TO "M" SYMBOL
004430 000001 .WORD LG.OPR ; LEGAL BITS
004432 000000G .WORD .RUNCM ; ROUTINE TO CALL OR DATA
7009 ;
7010 004434 COMND$ MARK-MICROCODE,LG.MNT,.MARKC,MRK
000516 115 101 122 MRKMSG:: .ASCIZ %MARK-MICROCODE%
000521 113 055 115
000524 111 103 122
000527 117 103 117
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 174-2
.CMDTB -- THE MAIN COMMAND TABLE 7703.25
000532 104 105 000
004434 000516' .WORD MRKMSG ; POINTER TO "MARK-MICROCODE" SYMBOL
004436 000004 .WORD LG.MNT ; LEGAL BITS
004440 000000G .WORD .MARKC ; ROUTINE TO CALL OR DATA
7011 ;
7012 004442 COMND$ MCR,LG.OPR,.RUNCM,MCR
000535 115 103 122 MCRMSG:: .ASCIZ %MCR%
000540 000
004442 000535' .WORD MCRMSG ; POINTER TO "MCR" SYMBOL
004444 000001 .WORD LG.OPR ; LEGAL BITS
004446 000000G .WORD .RUNCM ; ROUTINE TO CALL OR DATA
7013 ;
7014 004450 COMND$ R,LG.OPR,.RUNCM,R
000541 122 000 RMSG:: .ASCIZ %R%
004450 000541' .WORD RMSG ; POINTER TO "R" SYMBOL
004452 000001 .WORD LG.OPR ; LEGAL BITS
004454 000000G .WORD .RUNCM ; ROUTINE TO CALL OR DATA
7015 ;
7016 004456 COMND$ REPEAT,<LG.OPR!LG.RPT>,.REPTC,RPT
000543 122 105 120 RPTMSG:: .ASCIZ %REPEAT%
000546 105 101 124
000551 000
004456 000543' .WORD RPTMSG ; POINTER TO "REPEAT" SYMBOL
004460 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
004462 011022' .WORD .REPTC ; ROUTINE TO CALL OR DATA
7017 ;
7018 004464 COMND$ RESET,<LG.PRG!LG.RPT>,.RESTC,RST
000552 122 105 123 RSTMSG:: .ASCIZ %RESET%
000555 105 124 000
004464 000552' .WORD RSTMSG ; POINTER TO "RESET" SYMBOL
004466 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004470 000000G .WORD .RESTC ; ROUTINE TO CALL OR DATA
7019 ;
7020 004472 COMND$ RUN,LG.OPR,.RUNCM,RUN
000560 122 125 116 RUNMSG:: .ASCIZ %RUN%
000563 000
004472 000560' .WORD RUNMSG ; POINTER TO "RUN" SYMBOL
004474 000001 .WORD LG.OPR ; LEGAL BITS
004476 000000G .WORD .RUNCM ; ROUTINE TO CALL OR DATA
7021 ;
7022 004500 COMND$ SET,<LG.OPR!LG.RPT>,.SETCM,SET
000564 123 105 124 SETMSG:: .ASCIZ %SET%
000567 000
004500 000564' .WORD SETMSG ; POINTER TO "SET" SYMBOL
004502 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
004504 000000G .WORD .SETCM ; ROUTINE TO CALL OR DATA
7023 ;
7024 004506 COMND$ SHOW,LG.OPR,.WHATC,SHO
000570 123 110 117 SHOMSG:: .ASCIZ %SHOW%
000573 127 000
004506 000570' .WORD SHOMSG ; POINTER TO "SHOW" SYMBOL
004510 000001 .WORD LG.OPR ; LEGAL BITS
004512 000000G .WORD .WHATC ; ROUTINE TO CALL OR DATA
7025 ;
7026 004514 COMND$ SHUTDOWN,LG.OPR,.SHUTC,SHU
000575 123 110 125 SHUMSG:: .ASCIZ %SHUTDOWN%
000600 124 104 117
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 174-3
.CMDTB -- THE MAIN COMMAND TABLE 7703.25
000603 127 116 000
004514 000575' .WORD SHUMSG ; POINTER TO "SHUTDOWN" SYMBOL
004516 000001 .WORD LG.OPR ; LEGAL BITS
004520 000000G .WORD .SHUTC ; ROUTINE TO CALL OR DATA
7027 ;
7029 004522 COMND$ SNAPSHOT,LG.MNT,.SNAP,SNP
000606 123 116 101 SNPMSG:: .ASCIZ %SNAPSHOT%
000611 120 123 110
000614 117 124 000
004522 000606' .WORD SNPMSG ; POINTER TO "SNAPSHOT" SYMBOL
004524 000004 .WORD LG.MNT ; LEGAL BITS
004526 000000G .WORD .SNAP ; ROUTINE TO CALL OR DATA
7031 ;
7032 004530 COMND$ START,<LG.PRG!LG.RPT>,.STRTC,STR
000617 123 124 101 STRMSG:: .ASCIZ %START%
000622 122 124 000
004530 000617' .WORD STRMSG ; POINTER TO "START" SYMBOL
004532 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004534 000000G .WORD .STRTC ; ROUTINE TO CALL OR DATA
7033 ;
7034 004536 COMND$ SWEEP,<LG.MNT!LG.RPT>,.SWPC,SWP
000625 123 127 105 SWPMSG:: .ASCIZ %SWEEP%
000630 105 120 000
004536 000625' .WORD SWPMSG ; POINTER TO "SWEEP" SYMBOL
004540 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
004542 000000G .WORD .SWPC ; ROUTINE TO CALL OR DATA
7035 ;
7036 004544 COMND$ TAKE,<LG.OPR>,.TAKEC,TAK
000633 124 101 113 TAKMSG:: .ASCIZ %TAKE%
000636 105 000
004544 000633' .WORD TAKMSG ; POINTER TO "TAKE" SYMBOL
004546 000001 .WORD LG.OPR ; LEGAL BITS
004550 000000G .WORD .TAKEC ; ROUTINE TO CALL OR DATA
7037 ;
7038 004552 COMND$ UNMARK-MICROCODE,LG.MNT,.UMRKC,UNM
000640 125 116 115 UNMMSG:: .ASCIZ %UNMARK-MICROCODE%
000643 101 122 113
000646 055 115 111
000651 103 122 117
000654 103 117 104
000657 105 000
004552 000640' .WORD UNMMSG ; POINTER TO "UNMARK-MICROCODE" SYMBOL
004554 000004 .WORD LG.MNT ; LEGAL BITS
004556 000000G .WORD .UMRKC ; ROUTINE TO CALL OR DATA
7039 ;
7040 004560 COMND$ QUIT,LG.OPR,.QUITC,QUT
000661 121 125 111 QUTMSG:: .ASCIZ %QUIT%
000664 124 000
004560 000661' .WORD QUTMSG ; POINTER TO "QUIT" SYMBOL
004562 000001 .WORD LG.OPR ; LEGAL BITS
004564 000000G .WORD .QUITC ; ROUTINE TO CALL OR DATA
7041 ;
7042 004566 COMND$ WHAT,LG.OPR,.WHATC,WHA
000666 127 110 101 WHAMSG:: .ASCIZ %WHAT%
000671 124 000
004566 000666' .WORD WHAMSG ; POINTER TO "WHAT" SYMBOL
004570 000001 .WORD LG.OPR ; LEGAL BITS
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 174-4
.CMDTB -- THE MAIN COMMAND TABLE 7703.25
004572 000000G .WORD .WHATC ; ROUTINE TO CALL OR DATA
7043 ;
7044 004574 COMND$ XCT,<LG.PRG!LG.RPT>,.EXCTC,XCT
000673 130 103 124 XCTMSG:: .ASCIZ %XCT%
000676 000
004574 000673' .WORD XCTMSG ; POINTER TO "XCT" SYMBOL
004576 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004600 000000G .WORD .EXCTC ; ROUTINE TO CALL OR DATA
7045 ;
7046 004602 COMND$ ZERO,LG.PRG,.ZEROC,ZER
000677 132 105 122 ZERMSG:: .ASCIZ %ZERO%
000702 117 000
004602 000677' .WORD ZERMSG ; POINTER TO "ZERO" SYMBOL
004604 000002 .WORD LG.PRG ; LEGAL BITS
004606 000000G .WORD .ZEROC ; ROUTINE TO CALL OR DATA
7047 ;
7048 004610 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 175
.DPETB -- THE DEPOSIT EXTENSION TABLE 7602.23
7050 .SBTTL .DPETB -- THE DEPOSIT EXTENSION TABLE 7602.23
7051
7052 004612 .DPETB::
7053 004612 COMND$ DECREMENT,<LG.RPT!LG.OPR>,.DPOSD,DCR
000704 104 105 103 DCRMSG:: .ASCIZ %DECREMENT%
000707 122 105 115
000712 105 116 124
000715 000
004612 000704' .WORD DCRMSG ; POINTER TO "DECREMENT" SYMBOL
004614 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004616 000000G .WORD .DPOSD ; ROUTINE TO CALL OR DATA
7054 ;
7055 004620 COMND$ INCREMENT,<LG.RPT!LG.OPR>,.DPOSI,INC
000716 111 116 103 INCMSG:: .ASCIZ %INCREMENT%
000721 122 105 115
000724 105 116 124
000727 000
004620 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
004622 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004624 000000G .WORD .DPOSI ; ROUTINE TO CALL OR DATA
7056 ;
7057 004626 COMND$ NEXT,<LG.RPT!LG.OPR>,.DPOSN,NXT
000730 116 105 130 NXTMSG:: .ASCIZ %NEXT%
000733 124 000
004626 000730' .WORD NXTMSG ; POINTER TO "NEXT" SYMBOL
004630 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004632 000000G .WORD .DPOSN ; ROUTINE TO CALL OR DATA
7058 ;
7059 004634 COMND$ PREVIOUS,<LG.RPT!LG.OPR>,.DPOSP,PRV
000735 120 122 105 PRVMSG:: .ASCIZ %PREVIOUS%
000740 126 111 117
000743 125 123 000
004634 000735' .WORD PRVMSG ; POINTER TO "PREVIOUS" SYMBOL
004636 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004640 000000G .WORD .DPOSP ; ROUTINE TO CALL OR DATA
7060 ;
7061 004642 COMND$ THIS,<LG.RPT!LG.OPR>,.DPOSZ,THS
000746 124 110 111 THSMSG:: .ASCIZ %THIS%
000751 123 000
004642 000746' .WORD THSMSG ; POINTER TO "THIS" SYMBOL
004644 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004646 000000G .WORD .DPOSZ ; ROUTINE TO CALL OR DATA
7062 ;
7063 004650 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 176
.DPOTB -- THE DEPOSIT COMMAND TABLE 7602.23
7065 .SBTTL .DPOTB -- THE DEPOSIT COMMAND TABLE 7602.23
7066
7067 004652 .DPOTB::
7068 004652 COMND$ AR,<LG.PRG!LG.RPT>,.DEPAR,AR
000753 101 122 000 ARMSG:: .ASCIZ %AR%
004652 000753' .WORD ARMSG ; POINTER TO "AR" SYMBOL
004654 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004656 000000G .WORD .DEPAR ; ROUTINE TO CALL OR DATA
7069 ;
7070 004660 COMND$ ELEVEN,<LG.PRG!LG.RPT>,.DPOEL,ELE
000756 105 114 105 ELEMSG:: .ASCIZ %ELEVEN%
000761 126 105 116
000764 000
004660 000756' .WORD ELEMSG ; POINTER TO "ELEVEN" SYMBOL
004662 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004664 000000G .WORD .DPOEL ; ROUTINE TO CALL OR DATA
7071 ;
7072 004666 COMND$ TEN,<LG.PRG!LG.RPT>,.DPOKL,TEN
000765 124 105 116 TENMSG:: .ASCIZ %TEN%
000770 000
004666 000765' .WORD TENMSG ; POINTER TO "TEN" SYMBOL
004670 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
004672 000000G .WORD .DPOKL ; ROUTINE TO CALL OR DATA
7073 ;
7074 004674 COMND$ DECREMENT,<LG.RPT!LG.OPR>,.DPOSD,DCR
004674 000704' .WORD DCRMSG ; POINTER TO "DECREMENT" SYMBOL
004676 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004700 000000G .WORD .DPOSD ; ROUTINE TO CALL OR DATA
7075 ;
7076 004702 COMND$ INCREMENT,<LG.RPT!LG.OPR>,.DPOSI,INC
004702 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
004704 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004706 000000G .WORD .DPOSI ; ROUTINE TO CALL OR DATA
7077 ;
7078 004710 COMND$ NEXT,<LG.RPT!LG.OPR>,.DPOSN,NXT
004710 000730' .WORD NXTMSG ; POINTER TO "NEXT" SYMBOL
004712 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004714 000000G .WORD .DPOSN ; ROUTINE TO CALL OR DATA
7079 ;
7080 004716 COMND$ PREVIOUS,<LG.RPT!LG.OPR>,.DPOSP,PRV
004716 000735' .WORD PRVMSG ; POINTER TO "PREVIOUS" SYMBOL
004720 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004722 000000G .WORD .DPOSP ; ROUTINE TO CALL OR DATA
7081 ;
7082 004724 COMND$ THIS,<LG.RPT!LG.OPR>,.DPOSZ,THS
004724 000746' .WORD THSMSG ; POINTER TO "THIS" SYMBOL
004726 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004730 000000G .WORD .DPOSZ ; ROUTINE TO CALL OR DATA
7083 ;
7084 004732 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 177
.EXETB -- THE EXAMINE EXTENSION TABLE 7602.16
7086 .SBTTL .EXETB -- THE EXAMINE EXTENSION TABLE 7602.16
7087
7088 004734 .EXETB::
7089 004734 COMND$ DECREMENT,<LG.RPT!LG.OPR>,.EXAMD,DCR
004734 000704' .WORD DCRMSG ; POINTER TO "DECREMENT" SYMBOL
004736 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004740 000000G .WORD .EXAMD ; ROUTINE TO CALL OR DATA
7090 ;
7091 004742 COMND$ INCREMENT,<LG.RPT!LG.OPR>,.EXAMI,INC
004742 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
004744 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004746 000000G .WORD .EXAMI ; ROUTINE TO CALL OR DATA
7092 ;
7093 004750 COMND$ NEXT,<LG.RPT!LG.OPR>,.EXAMN,NXT
004750 000730' .WORD NXTMSG ; POINTER TO "NEXT" SYMBOL
004752 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004754 000000G .WORD .EXAMN ; ROUTINE TO CALL OR DATA
7094 ;
7095 004756 COMND$ PREVIOUS,<LG.RPT!LG.OPR>,.EXAMP,PRV
004756 000735' .WORD PRVMSG ; POINTER TO "PREVIOUS" SYMBOL
004760 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004762 000000G .WORD .EXAMP ; ROUTINE TO CALL OR DATA
7096 ;
7097 004764 COMND$ THIS,<LG.RPT!LG.OPR>,.EXAMZ,THS
004764 000746' .WORD THSMSG ; POINTER TO "THIS" SYMBOL
004766 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
004770 000000G .WORD .EXAMZ ; ROUTINE TO CALL OR DATA
7098 ;
7099 004772 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 178
.EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
7101 .SBTTL .EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
7102
7103 004774 .EXMTB::
7104 004774 COMND$ AD,<LG.PRG!LG.RPT>,.EXAD,AD
000771 101 104 000 ADMSG:: .ASCIZ %AD%
004774 000771' .WORD ADMSG ; POINTER TO "AD" SYMBOL
004776 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005000 000000G .WORD .EXAD ; ROUTINE TO CALL OR DATA
7105 ;
7106 005002 COMND$ ADX,<LG.PRG!LG.RPT>,.EXADX,ADX
000774 101 104 130 ADXMSG:: .ASCIZ %ADX%
000777 000
005002 000774' .WORD ADXMSG ; POINTER TO "ADX" SYMBOL
005004 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005006 000000G .WORD .EXADX ; ROUTINE TO CALL OR DATA
7107 ;
7108 005010 COMND$ AR,<LG.PRG!LG.RPT>,.EXARR,AR
005010 000753' .WORD ARMSG ; POINTER TO "AR" SYMBOL
005012 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005014 000000G .WORD .EXARR ; ROUTINE TO CALL OR DATA
7109 ;
7110 005016 COMND$ ARX,<LG.PRG!LG.RPT>,.EXARX,ARX
001000 101 122 130 ARXMSG:: .ASCIZ %ARX%
001003 000
005016 001000' .WORD ARXMSG ; POINTER TO "ARX" SYMBOL
005020 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005022 000000G .WORD .EXARX ; ROUTINE TO CALL OR DATA
7111 ;
7112 005024 COMND$ BR,<LG.PRG!LG.RPT>,.EXBRR,BR
001004 102 122 000 BRMSG:: .ASCIZ %BR%
005024 001004' .WORD BRMSG ; POINTER TO "BR" SYMBOL
005026 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005030 000000G .WORD .EXBRR ; ROUTINE TO CALL OR DATA
7113 ;
7114 005032 COMND$ BRX,<LG.PRG!LG.RPT>,.EXBRX,BRX
001007 102 122 130 BRXMSG:: .ASCIZ %BRX%
001012 000
005032 001007' .WORD BRXMSG ; POINTER TO "BRX" SYMBOL
005034 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005036 000000G .WORD .EXBRX ; ROUTINE TO CALL OR DATA
7115 ;
7116 005040 COMND$ EBUS,<LG.PRG!LG.RPT>,.EXEBS,EBS
001013 105 102 125 EBSMSG:: .ASCIZ %EBUS%
001016 123 000
005040 001013' .WORD EBSMSG ; POINTER TO "EBUS" SYMBOL
005042 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005044 000000G .WORD .EXEBS ; ROUTINE TO CALL OR DATA
7117 ;
7118 005046 COMND$ FM,<LG.PRG!LG.RPT>,.EXFMR,FM
001020 106 115 000 FMMSG:: .ASCIZ %FM%
005046 001020' .WORD FMMSG ; POINTER TO "FM" SYMBOL
005050 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005052 000000G .WORD .EXFMR ; ROUTINE TO CALL OR DATA
7119 ;
7120 005054 COMND$ MQ,<LG.PRG!LG.RPT>,.EXMQR,MQ
001023 115 121 000 MQMSG:: .ASCIZ %MQ%
005054 001023' .WORD MQMSG ; POINTER TO "MQ" SYMBOL
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 178-1
.EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
005056 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005060 000000G .WORD .EXMQR ; ROUTINE TO CALL OR DATA
7121 ;
7122 005062 COMND$ PC,<LG.ALL!LG.RPT>,.EXVPC,PC
001026 120 103 000 PCMSG:: .ASCIZ %PC%
005062 001026' .WORD PCMSG ; POINTER TO "PC" SYMBOL
005064 000407 .WORD LG.ALL!LG.RPT ; LEGAL BITS
005066 000000G .WORD .EXVPC ; ROUTINE TO CALL OR DATA
7123 ;
7124 000012 EXRTBL==<.-.EXMTB>/6
7125 005070 COMND$ AB,<LG.PRG!LG.RPT>,.EXVAB,AB
001031 101 102 000 ABMSG:: .ASCIZ %AB%
005070 001031' .WORD ABMSG ; POINTER TO "AB" SYMBOL
005072 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005074 000000G .WORD .EXVAB ; ROUTINE TO CALL OR DATA
7126 ;
7127 005076 COMND$ CRADDR,<LG.PRG!LG.RPT>,.EXCRA,CRA
001034 103 122 101 CRAMSG:: .ASCIZ %CRADDR%
001037 104 104 122
001042 000
005076 001034' .WORD CRAMSG ; POINTER TO "CRADDR" SYMBOL
005100 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005102 000000G .WORD .EXCRA ; ROUTINE TO CALL OR DATA
7128 ;
7129 005104 COMND$ CRLOC,<LG.PRG!LG.RPT>,.EXCRL,CRL
001043 103 122 114 CRLMSG:: .ASCIZ %CRLOC%
001046 117 103 000
005104 001043' .WORD CRLMSG ; POINTER TO "CRLOC" SYMBOL
005106 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005110 000000G .WORD .EXCRL ; ROUTINE TO CALL OR DATA
7130 ;
7131 005112 COMND$ DRADDR,<LG.PRG!LG.RPT>,.EXDRA,DRA
001051 104 122 101 DRAMSG:: .ASCIZ %DRADDR%
001054 104 104 122
001057 000
005112 001051' .WORD DRAMSG ; POINTER TO "DRADDR" SYMBOL
005114 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005116 000000G .WORD .EXDRA ; ROUTINE TO CALL OR DATA
7132 ;
7133 005120 COMND$ DTE-20,<LG.PRG!LG.RPT>,.EXDTE,DTE
001060 104 124 105 DTEMSG:: .ASCIZ %DTE-20%
001063 055 062 060
001066 000
005120 001060' .WORD DTEMSG ; POINTER TO "DTE-20" SYMBOL
005122 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005124 000000G .WORD .EXDTE ; ROUTINE TO CALL OR DATA
7134 ;
7135 005126 COMND$ ELEVEN,<LG.OPR!LG.RPT>,.EXMEL,ELE
005126 000756' .WORD ELEMSG ; POINTER TO "ELEVEN" SYMBOL
005130 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
005132 000000G .WORD .EXMEL ; ROUTINE TO CALL OR DATA
7136 ;
7137 005134 COMND$ FE,<LG.PRG!LG.RPT>,.EXFER,FER
001067 106 105 000 FERMSG:: .ASCIZ %FE%
005134 001067' .WORD FERMSG ; POINTER TO "FE" SYMBOL
005136 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005140 000000G .WORD .EXFER ; ROUTINE TO CALL OR DATA
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 178-2
.EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
7138 ;
7139 005142 COMND$ FLAGS,<LG.PRG!LG.RPT>,.EXAMF,FLG
001072 106 114 101 FLGMSG:: .ASCIZ %FLAGS%
001075 107 123 000
005142 001072' .WORD FLGMSG ; POINTER TO "FLAGS" SYMBOL
005144 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005146 000000G .WORD .EXAMF ; ROUTINE TO CALL OR DATA
7140 ;
7141 005150 COMND$ KL,<LG.ALL!LG.RPT>,.EXAMK,KL
001100 113 114 000 KLMSG:: .ASCIZ %KL%
005150 001100' .WORD KLMSG ; POINTER TO "KL" SYMBOL
005152 000407 .WORD LG.ALL!LG.RPT ; LEGAL BITS
005154 000000G .WORD .EXAMK ; ROUTINE TO CALL OR DATA
7142 ;
7143 005156 COMND$ PI,<LG.PRG!LG.RPT>,.EXMPI,PI
001103 120 111 000 PIMSG:: .ASCIZ %PI%
005156 001103' .WORD PIMSG ; POINTER TO "PI" SYMBOL
005160 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005162 000000G .WORD .EXMPI ; ROUTINE TO CALL OR DATA
7144 ;
7145 005164 COMND$ REGISTERS,<LG.PRG!LG.RPT>,.EXREG,REG
001106 122 105 107 REGMSG:: .ASCIZ %REGISTERS%
001111 111 123 124
001114 105 122 123
001117 000
005164 001106' .WORD REGMSG ; POINTER TO "REGISTERS" SYMBOL
005166 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005170 000000G .WORD .EXREG ; ROUTINE TO CALL OR DATA
7146 ;
7147 005172 COMND$ TEN,<LG.OPR!LG.RPT>,.EXMKL,TEN
005172 000765' .WORD TENMSG ; POINTER TO "TEN" SYMBOL
005174 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
005176 000000G .WORD .EXMKL ; ROUTINE TO CALL OR DATA
7148 ;
7149 005200 COMND$ VMA,<LG.PRG!LG.RPT>,.EXVMA,VMA
001120 126 115 101 VMAMSG:: .ASCIZ %VMA%
001123 000
005200 001120' .WORD VMAMSG ; POINTER TO "VMA" SYMBOL
005202 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005204 000000G .WORD .EXVMA ; ROUTINE TO CALL OR DATA
7150 ;
7151 005206 COMND$ VMAH,<LG.PRG!LG.RPT>,.EXVMH,VMH
001124 126 115 101 VMHMSG:: .ASCIZ %VMAH%
001127 110 000
005206 001124' .WORD VMHMSG ; POINTER TO "VMAH" SYMBOL
005210 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005212 000000G .WORD .EXVMH ; ROUTINE TO CALL OR DATA
7152 ;
7153 005214 COMND$ SBR,<LG.PRG!LG.RPT>,.EXSBR,SBR
001131 123 102 122 SBRMSG:: .ASCIZ %SBR%
001134 000
005214 001131' .WORD SBRMSG ; POINTER TO "SBR" SYMBOL
005216 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005220 000000G .WORD .EXSBR ; ROUTINE TO CALL OR DATA
7154 ;
7155 005222 COMND$ SC,<LG.PRG!LG.RPT>,.EXSCR,SCR
001135 123 103 000 SCRMSG:: .ASCIZ %SC%
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 178-3
.EXMTB -- THE EXAMINE COMMAND TABLE 7703.25
005222 001135' .WORD SCRMSG ; POINTER TO "SC" SYMBOL
005224 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
005226 000000G .WORD .EXSCR ; ROUTINE TO CALL OR DATA
7156 ;
7157 005230 COMND$ DECREMENT,<LG.RPT!LG.OPR>,.EXAMD,DCR
005230 000704' .WORD DCRMSG ; POINTER TO "DECREMENT" SYMBOL
005232 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
005234 000000G .WORD .EXAMD ; ROUTINE TO CALL OR DATA
7158 ;
7159 005236 COMND$ INCREMENT,<LG.RPT!LG.OPR>,.EXAMI,INC
005236 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
005240 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
005242 000000G .WORD .EXAMI ; ROUTINE TO CALL OR DATA
7160 ;
7161 005244 COMND$ NEXT,<LG.RPT!LG.OPR>,.EXAMN,NXT
005244 000730' .WORD NXTMSG ; POINTER TO "NEXT" SYMBOL
005246 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
005250 000000G .WORD .EXAMN ; ROUTINE TO CALL OR DATA
7162 ;
7163 005252 COMND$ PREVIOUS,<LG.RPT!LG.OPR>,.EXAMP,PRV
005252 000735' .WORD PRVMSG ; POINTER TO "PREVIOUS" SYMBOL
005254 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
005256 000000G .WORD .EXAMP ; ROUTINE TO CALL OR DATA
7164 ;
7165 005260 COMND$ THIS,<LG.RPT!LG.OPR>,.EXAMZ,THS
005260 000746' .WORD THSMSG ; POINTER TO "THIS" SYMBOL
005262 000401 .WORD LG.RPT!LG.OPR ; LEGAL BITS
005264 000000G .WORD .EXAMZ ; ROUTINE TO CALL OR DATA
7166 ;
7167 005266 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 179
.KLMTB -- THE KLINIK MODE TABLE 7702.16
7169 .SBTTL .KLMTB -- THE KLINIK MODE TABLE 7702.16
7170
7171 005270 .KLMTB::
7172 005270 COMND$ MAINTENANCE,LG.ALL,LG.ALL,MNT
001140 115 101 111 MNTMSG:: .ASCIZ %MAINTENANCE%
001143 116 124 105
001146 116 101 116
001151 103 105 000
005270 001140' .WORD MNTMSG ; POINTER TO "MAINTENANCE" SYMBOL
005272 000007 .WORD LG.ALL ; LEGAL BITS
005274 000007 .WORD LG.ALL ; ROUTINE TO CALL OR DATA
7173 ;
7174 005276 COMND$ OPERATOR,LG.ALL,LG.OPR,OPR
001154 117 120 105 OPRMSG:: .ASCIZ %OPERATOR%
001157 122 101 124
001162 117 122 000
005276 001154' .WORD OPRMSG ; POINTER TO "OPERATOR" SYMBOL
005300 000007 .WORD LG.ALL ; LEGAL BITS
005302 000001 .WORD LG.OPR ; ROUTINE TO CALL OR DATA
7175 ;
7176 005304 COMND$ PROGRAMMER,LG.ALL,LG.PRM,PRG
001165 120 122 117 PRGMSG:: .ASCIZ %PROGRAMMER%
001170 107 122 101
001173 115 115 105
001176 122 000
005304 001165' .WORD PRGMSG ; POINTER TO "PROGRAMMER" SYMBOL
005306 000007 .WORD LG.ALL ; LEGAL BITS
005310 000003 .WORD LG.PRM ; ROUTINE TO CALL OR DATA
7177 ;
7178 005312 000000 .WORD 0 ; END OF TABLE MARKER
7179
7180 005314 .KLMT1::
7181 005314 COMND$ REMOTE,LG.ALL,1,REM
001200 122 105 115 REMMSG:: .ASCIZ %REMOTE%
001203 117 124 105
001206 000
005314 001200' .WORD REMMSG ; POINTER TO "REMOTE" SYMBOL
005316 000007 .WORD LG.ALL ; LEGAL BITS
005320 000001 .WORD 1 ; ROUTINE TO CALL OR DATA
7182 ;
7183 005322 COMND$ USER,LG.ALL,-1,USR
001207 125 123 105 USRMSG:: .ASCIZ %USER%
001212 122 000
005322 001207' .WORD USRMSG ; POINTER TO "USER" SYMBOL
005324 000007 .WORD LG.ALL ; LEGAL BITS
005326 177777 .WORD -1 ; ROUTINE TO CALL OR DATA
7184 ;
7185 005330 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 180
.MONTB -- THE MONTH TABLE 7702.16
7187 .SBTTL .MONTB -- THE MONTH TABLE 7702.16
7188
7189
7190 005332 .MONTB::
7191 005332 COMND$ JANUARY,LG.ALL,1.,JAN
001214 112 101 116 JANMSG:: .ASCIZ %JANUARY%
001217 125 101 122
001222 131 000
005332 001214' .WORD JANMSG ; POINTER TO "JANUARY" SYMBOL
005334 000007 .WORD LG.ALL ; LEGAL BITS
005336 000001 .WORD 1. ; ROUTINE TO CALL OR DATA
7192 ;
7193 005340 COMND$ FEBRUARY,LG.ALL,2.,FEB
001224 106 105 102 FEBMSG:: .ASCIZ %FEBRUARY%
001227 122 125 101
001232 122 131 000
005340 001224' .WORD FEBMSG ; POINTER TO "FEBRUARY" SYMBOL
005342 000007 .WORD LG.ALL ; LEGAL BITS
005344 000002 .WORD 2. ; ROUTINE TO CALL OR DATA
7194 ;
7195 005346 COMND$ MARCH,LG.ALL,3.,MAR
001235 115 101 122 MARMSG:: .ASCIZ %MARCH%
001240 103 110 000
005346 001235' .WORD MARMSG ; POINTER TO "MARCH" SYMBOL
005350 000007 .WORD LG.ALL ; LEGAL BITS
005352 000003 .WORD 3. ; ROUTINE TO CALL OR DATA
7196 ;
7197 005354 COMND$ APRIL,LG.ALL,4.,APR
001243 101 120 122 APRMSG:: .ASCIZ %APRIL%
001246 111 114 000
005354 001243' .WORD APRMSG ; POINTER TO "APRIL" SYMBOL
005356 000007 .WORD LG.ALL ; LEGAL BITS
005360 000004 .WORD 4. ; ROUTINE TO CALL OR DATA
7198 ;
7199 005362 COMND$ MAY,LG.ALL,5.,MAY
001251 115 101 131 MAYMSG:: .ASCIZ %MAY%
001254 000
005362 001251' .WORD MAYMSG ; POINTER TO "MAY" SYMBOL
005364 000007 .WORD LG.ALL ; LEGAL BITS
005366 000005 .WORD 5. ; ROUTINE TO CALL OR DATA
7200 ;
7201 005370 COMND$ JUNE,LG.ALL,6.,JUN
001255 112 125 116 JUNMSG:: .ASCIZ %JUNE%
001260 105 000
005370 001255' .WORD JUNMSG ; POINTER TO "JUNE" SYMBOL
005372 000007 .WORD LG.ALL ; LEGAL BITS
005374 000006 .WORD 6. ; ROUTINE TO CALL OR DATA
7202 ;
7203 005376 COMND$ JULY,LG.ALL,7.,JUL
001262 112 125 114 JULMSG:: .ASCIZ %JULY%
001265 131 000
005376 001262' .WORD JULMSG ; POINTER TO "JULY" SYMBOL
005400 000007 .WORD LG.ALL ; LEGAL BITS
005402 000007 .WORD 7. ; ROUTINE TO CALL OR DATA
7204 ;
7205 005404 COMND$ AUGUST,LG.ALL,8.,AUG
001267 101 125 107 AUGMSG:: .ASCIZ %AUGUST%
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 180-1
.MONTB -- THE MONTH TABLE 7702.16
001272 125 123 124
001275 000
005404 001267' .WORD AUGMSG ; POINTER TO "AUGUST" SYMBOL
005406 000007 .WORD LG.ALL ; LEGAL BITS
005410 000010 .WORD 8. ; ROUTINE TO CALL OR DATA
7206 ;
7207 005412 COMND$ SEPTEMBER,LG.ALL,9.,SEP
001276 123 105 120 SEPMSG:: .ASCIZ %SEPTEMBER%
001301 124 105 115
001304 102 105 122
001307 000
005412 001276' .WORD SEPMSG ; POINTER TO "SEPTEMBER" SYMBOL
005414 000007 .WORD LG.ALL ; LEGAL BITS
005416 000011 .WORD 9. ; ROUTINE TO CALL OR DATA
7208 ;
7209 005420 COMND$ OCTOBER,LG.ALL,10.,OCT
001310 117 103 124 OCTMSG:: .ASCIZ %OCTOBER%
001313 117 102 105
001316 122 000
005420 001310' .WORD OCTMSG ; POINTER TO "OCTOBER" SYMBOL
005422 000007 .WORD LG.ALL ; LEGAL BITS
005424 000012 .WORD 10. ; ROUTINE TO CALL OR DATA
7210 ;
7211 005426 COMND$ NOVEMBER,LG.ALL,11.,NOV
001320 116 117 126 NOVMSG:: .ASCIZ %NOVEMBER%
001323 105 115 102
001326 105 122 000
005426 001320' .WORD NOVMSG ; POINTER TO "NOVEMBER" SYMBOL
005430 000007 .WORD LG.ALL ; LEGAL BITS
005432 000013 .WORD 11. ; ROUTINE TO CALL OR DATA
7212 ;
7213 005434 COMND$ DECEMBER,LG.ALL,12.,DEC
001331 104 105 103 DECMSG:: .ASCIZ %DECEMBER%
001334 105 115 102
001337 105 122 000
005434 001331' .WORD DECMSG ; POINTER TO "DECEMBER" SYMBOL
005436 000007 .WORD LG.ALL ; LEGAL BITS
005440 000014 .WORD 12. ; ROUTINE TO CALL OR DATA
7214 ;
7215 005442 000000 .WORD 0 ; END OF TABLE MARKER
7216
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
7218 .SBTTL .NSETB -- NORMAL ERROR CODE TABLE 7710.11
7219
7220 005444 .NSETB::
7221 005444 NSERR$ APE,<KL APR ERROR>
000000 101 120 105 APEERM: .ASCIZ %APE - KL APR ERROR%
000003 040 055 040
000006 113 114 040
000011 101 120 122
000014 040 105 122
000017 122 117 122
000022 000
005444 004305 .RAD50 /APE/ ; "APE" IN .RAD50
005446 000000' .WORD APEERM ; POINTER TO MESSAGE
7222 ;
7223 005450 NSERR$ BAE,<BURST ARGUMENT ERROR>
000023 102 101 105 BAEERM: .ASCIZ %BAE - BURST ARGUMENT ERROR%
000026 040 055 040
000031 102 125 122
000034 123 124 040
000037 101 122 107
000042 125 115 105
000045 116 124 040
000050 105 122 122
000053 117 122 000
005450 006255 .RAD50 /BAE/ ; "BAE" IN .RAD50
005452 000023' .WORD BAEERM ; POINTER TO MESSAGE
7224 ;
7225 005454 NSERR$ CAE,<KL CRAM ADDRESS ERROR>
000056 103 101 105 CAEERM: .ASCIZ %CAE - KL CRAM ADDRESS ERROR%
000061 040 055 040
000064 113 114 040
000067 103 122 101
000072 115 040 101
000075 104 104 122
000100 105 123 123
000103 040 105 122
000106 122 117 122
000111 000
005454 011355 .RAD50 /CAE/ ; "CAE" IN .RAD50
005456 000056' .WORD CAEERM ; POINTER TO MESSAGE
7226 005460 NSERR$ CAL,<CAN'T ASSIGN LUN>
000112 103 101 114 CALERM: .ASCIZ %CAL - CAN'T ASSIGN LUN%
000115 040 055 040
000120 103 101 116
000123 047 124 040
000126 101 123 123
000131 111 107 116
000134 040 114 125
000137 116 000
005460 011364 .RAD50 /CAL/ ; "CAL" IN .RAD50
005462 000112' .WORD CALERM ; POINTER TO MESSAGE
7227 005464 NSERR$ CAP,<CAN'T ATTACH LINEPRINTER>
000141 103 101 120 CAPERM: .ASCIZ %CAP - CAN'T ATTACH LINEPRINTER%
000144 040 055 040
000147 103 101 116
000152 047 124 040
000155 101 124 124
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-1
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
000160 101 103 110
000163 040 114 111
000166 116 105 120
000171 122 111 116
000174 124 105 122
000177 000
005464 011370 .RAD50 /CAP/ ; "CAP" IN .RAD50
005466 000141' .WORD CAPERM ; POINTER TO MESSAGE
7228 005470 NSERR$ CBO,<COMMAND BUFFER OVERFLOW>
000200 103 102 117 CBOERM: .ASCIZ %CBO - COMMAND BUFFER OVERFLOW%
000203 040 055 040
000206 103 117 115
000211 115 101 116
000214 104 040 102
000217 125 106 106
000222 105 122 040
000225 117 126 105
000230 122 106 114
000233 117 127 000
005470 011437 .RAD50 /CBO/ ; "CBO" IN .RAD50
005472 000200' .WORD CBOERM ; POINTER TO MESSAGE
7229 005474 NSERR$ CDI,<SET/CLEAR DATE ILLEGAL IN PRIMARY PROTOCOL>
000236 103 104 111 CDIERM: .ASCIZ %CDI - SET/CLEAR DATE ILLEGAL IN PRIMARY PROTOCOL%
000241 040 055 040
000244 123 105 124
000247 057 103 114
000252 105 101 122
000255 040 104 101
000260 124 105 040
000263 111 114 114
000266 105 107 101
000271 114 040 111
000274 116 040 120
000277 122 111 115
000302 101 122 131
000305 040 120 122
000310 117 124 117
000313 103 117 114
000316 000
005474 011551 .RAD50 /CDI/ ; "CDI" IN .RAD50
005476 000236' .WORD CDIERM ; POINTER TO MESSAGE
7230 005500 NSERR$ CFH,<CAN'T FIND KL HALT LOOP>
000317 103 106 110 CFHERM: .ASCIZ %CFH - CAN'T FIND KL HALT LOOP%
000322 040 055 040
000325 103 101 116
000330 047 124 040
000333 106 111 116
000336 104 040 113
000341 114 040 110
000344 101 114 124
000347 040 114 117
000352 117 120 000
005500 011670 .RAD50 /CFH/ ; "CFH" IN .RAD50
005502 000317' .WORD CFHERM ; POINTER TO MESSAGE
7231 005504 NSERR$ CLE,<CONSOLE LIMIT EXCEEDED>
000355 103 114 105 CLEERM: .ASCIZ %CLE - CONSOLE LIMIT EXCEEDED%
000360 040 055 040
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-2
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
000363 103 117 116
000366 123 117 114
000371 105 040 114
000374 111 115 111
000377 124 040 105
000402 130 103 105
000405 105 104 105
000410 104 000
005504 012245 .RAD50 /CLE/ ; "CLE" IN .RAD50
005506 000355' .WORD CLEERM ; POINTER TO MESSAGE
7232 005510 NSERR$ CNR,<COMMAND IS NOT REPEATABLE>
000412 103 116 122 CNRERM: .ASCIZ %CNR - COMMAND IS NOT REPEATABLE%
000415 040 055 040
000420 103 117 115
000423 115 101 116
000426 104 040 111
000431 123 040 116
000434 117 124 040
000437 122 105 120
000442 105 101 124
000445 101 102 114
000450 105 000
005510 012402 .RAD50 /CNR/ ; "CNR" IN .RAD50
005512 000412' .WORD CNRERM ; POINTER TO MESSAGE
7233 005514 NSERR$ CPE,<CAN'T PHASE EBOX>
000452 103 120 105 CPEERM: .ASCIZ %CPE - CAN'T PHASE EBOX%
000455 040 055 040
000460 103 101 116
000463 047 124 040
000466 120 110 101
000471 123 105 040
000474 105 102 117
000477 130 000
005514 012505 .RAD50 /CPE/ ; "CPE" IN .RAD50
005516 000452' .WORD CPEERM ; POINTER TO MESSAGE
7234 005520 NSERR$ CRH,<CAN'T READ HARDWARE OPTIONS>
000501 103 122 110 CRHERM: .ASCIZ %CRH - CAN'T READ HARDWARE OPTIONS%
000504 040 055 040
000507 103 101 116
000512 047 124 040
000515 122 105 101
000520 104 040 110
000523 101 122 104
000526 127 101 122
000531 105 040 117
000534 120 124 111
000537 117 116 123
000542 000
005520 012630 .RAD50 /CRH/ ; "CRH" IN .RAD50
005522 000501' .WORD CRHERM ; POINTER TO MESSAGE
7235 ;
7239 005524 NSERR$ DAV,<DATE ALREADY VALID>
000543 104 101 126 DAVERM: .ASCIZ %DAV - DATE ALREADY VALID%
000546 040 055 040
000551 104 101 124
000554 105 040 101
000557 114 122 105
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-3
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
000562 101 104 131
000565 040 126 101
000570 114 111 104
000573 000
005524 014476 .RAD50 /DAV/ ; "DAV" IN .RAD50
005526 000543' .WORD DAVERM ; POINTER TO MESSAGE
7240 005530 NSERR$ DBT,<DATE BEFORE TODAY>
000574 104 102 124 DBTERM: .ASCIZ %DBT - DATE BEFORE TODAY%
000577 040 055 040
000602 104 101 124
000605 105 040 102
000610 105 106 117
000613 122 105 040
000616 124 117 104
000621 101 131 000
005530 014544 .RAD50 /DBT/ ; "DBT" IN .RAD50
005532 000574' .WORD DBTERM ; POINTER TO MESSAGE
7241 005534 NSERR$ DCK,<DIVIDE CHECK>
000624 104 103 113 DCKERM: .ASCIZ %DCK - DIVIDE CHECK%
000627 040 055 040
000632 104 111 126
000635 111 104 105
000640 040 103 110
000643 105 103 113
000646 000
005534 014603 .RAD50 /DCK/ ; "DCK" IN .RAD50
005536 000624' .WORD DCKERM ; POINTER TO MESSAGE
7242 005540 NSERR$ DMF,<DEPOSIT KL MEMORY FAILED>
000647 104 115 106 DMFERM: .ASCIZ %DMF - DEPOSIT KL MEMORY FAILED%
000652 040 055 040
000655 104 105 120
000660 117 123 111
000663 124 040 113
000666 114 040 115
000671 105 115 117
000674 122 131 040
000677 106 101 111
000702 114 105 104
000705 000
005540 015416 .RAD50 /DMF/ ; "DMF" IN .RAD50
005542 000647' .WORD DMFERM ; POINTER TO MESSAGE
7243 005544 NSERR$ DOR,<DATE OUT OF RANGE>
000706 104 117 122 DORERM: .ASCIZ %DOR - DATE OUT OF RANGE%
000711 040 055 040
000714 104 101 124
000717 105 040 117
000722 125 124 040
000725 117 106 040
000730 122 101 116
000733 107 105 000
005544 015552 .RAD50 /DOR/ ; "DOR" IN .RAD50
005546 000706' .WORD DORERM ; POINTER TO MESSAGE
7244 005550 NSERR$ DNF,<DIRECTORY FILE NOT FOUND>
000736 104 116 106 DNFERM: .ASCIZ %DNF - DIRECTORY FILE NOT FOUND%
000741 040 055 040
000744 104 111 122
000747 105 103 124
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-4
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
000752 117 122 131
000755 040 106 111
000760 114 105 040
000763 116 117 124
000766 040 106 117
000771 125 116 104
000774 000
005550 015466 .RAD50 /DNF/ ; "DNF" IN .RAD50
005552 000736' .WORD DNFERM ; POINTER TO MESSAGE
7245 005554 NSERR$ DNP,<DTE-20 IS NOT PRIVILEGED>
000775 104 116 120 DNPERM: .ASCIZ %DNP - DTE-20 IS NOT PRIVILEGED%
001000 040 055 040
001003 104 124 105
001006 055 062 060
001011 040 111 123
001014 040 116 117
001017 124 040 120
001022 122 111 126
001025 111 114 105
001030 107 105 104
001033 000
005554 015500 .RAD50 /DNP/ ; "DNP" IN .RAD50
005556 000775' .WORD DNPERM ; POINTER TO MESSAGE
7246 005560 NSERR$ DSF,<DTE-20 STATUS FAILED>
001034 104 123 106 DSFERM: .ASCIZ %DSF - DTE-20 STATUS FAILED%
001037 040 055 040
001042 104 124 105
001045 055 062 060
001050 040 123 124
001053 101 124 125
001056 123 040 106
001061 101 111 114
001064 105 104 000
005560 015776 .RAD50 /DSF/ ; "DSF" IN .RAD50
005562 001034' .WORD DSFERM ; POINTER TO MESSAGE
7247 005564 NSERR$ DTC,<DTE-20 CONFUSED - RUN AND HALT LOOP>
001067 104 124 103 DTCERM: .ASCIZ %DTC - DTE-20 CONFUSED - RUN AND HALT LOOP%
001072 040 055 040
001075 104 124 105
001100 055 062 060
001103 040 103 117
001106 116 106 125
001111 123 105 104
001114 040 055 040
001117 122 125 116
001122 040 101 116
001125 104 040 110
001130 101 114 124
001133 040 114 117
001136 117 120 000
005564 016043 .RAD50 /DTC/ ; "DTC" IN .RAD50
005566 001067' .WORD DTCERM ; POINTER TO MESSAGE
7248 ;
7249 005570 NSERR$ ECT,<EBOX CLOCK TIMEOUT>
001141 105 103 124 ECTERM: .ASCIZ %ECT - EBOX CLOCK TIMEOUT%
001144 040 055 040
001147 105 102 117
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-5
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
001152 130 040 103
001155 114 117 103
001160 113 040 124
001163 111 115 105
001166 117 125 124
001171 000
005570 017714 .RAD50 /ECT/ ; "ECT" IN .RAD50
005572 001141' .WORD ECTERM ; POINTER TO MESSAGE
7250 005574 NSERR$ EMF,<EXAMINE KL MEMORY FAILED>
001172 105 115 106 EMFERM: .ASCIZ %EMF - EXAMINE KL MEMORY FAILED%
001175 040 055 040
001200 105 130 101
001203 115 111 116
001206 105 040 113
001211 114 040 115
001214 105 115 117
001217 122 131 040
001222 106 101 111
001225 114 105 104
001230 000
005574 020516 .RAD50 /EMF/ ; "EMF" IN .RAD50
005576 001172' .WORD EMFERM ; POINTER TO MESSAGE
7251 005600 NSERR$ EOC,<END OF COMMAND REQUIRED>
001231 105 117 103 EOCERM: .ASCIZ %EOC - END OF COMMAND REQUIRED%
001234 040 055 040
001237 105 116 104
001242 040 117 106
001245 040 103 117
001250 115 115 101
001253 116 104 040
001256 122 105 121
001261 125 111 122
001264 105 104 000
005600 020633 .RAD50 /EOC/ ; "EOC" IN .RAD50
005602 001231' .WORD EOCERM ; POINTER TO MESSAGE
7252 005604 NSERR$ EPE,<EBUS PARITY ERROR>
001267 105 120 105 EPEERM: .ASCIZ %EPE - EBUS PARITY ERROR%
001272 040 055 040
001275 105 102 125
001300 123 040 120
001303 101 122 111
001306 124 131 040
001311 105 122 122
001314 117 122 000
005604 020705 .RAD50 /EPE/ ; "EPE" IN .RAD50
005606 001267' .WORD EPEERM ; POINTER TO MESSAGE
7253 005610 NSERR$ ESD,<EBOX STOPPED - DEPOSIT>
001317 105 123 104 ESDERM: .ASCIZ %ESD - EBOX STOPPED - DEPOSIT%
001322 040 055 040
001325 105 102 117
001330 130 040 123
001333 124 117 120
001336 120 105 104
001341 040 055 040
001344 104 105 120
001347 117 123 111
001352 124 000
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-6
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
005610 021074 .RAD50 /ESD/ ; "ESD" IN .RAD50
005612 001317' .WORD ESDERM ; POINTER TO MESSAGE
7254 005614 NSERR$ ESE,<EBOX STOPPED - EXAMINE>
001354 105 123 105 ESEERM: .ASCIZ %ESE - EBOX STOPPED - EXAMINE%
001357 040 055 040
001362 105 102 117
001365 130 040 123
001370 124 117 120
001373 120 105 104
001376 040 055 040
001401 105 130 101
001404 115 111 116
001407 105 000
005614 021075 .RAD50 /ESE/ ; "ESE" IN .RAD50
005616 001354' .WORD ESEERM ; POINTER TO MESSAGE
7255 ;
7256 005620 NSERR$ FCF,<FILE CLOSE FAILURE>
001411 106 103 106 FCFERM: .ASCIZ %FCF - FILE CLOSE FAILURE%
001414 040 055 040
001417 106 111 114
001422 105 040 103
001425 114 117 123
001430 105 040 106
001433 101 111 114
001436 125 122 105
001441 000
005620 022776 .RAD50 /FCF/ ; "FCF" IN .RAD50
005622 001411' .WORD FCFERM ; POINTER TO MESSAGE
7257 005624 NSERR$ FEF,<FILE EXTEND FAILURE>
001442 106 105 106 FEFERM: .ASCIZ %FEF - FILE EXTEND FAILURE%
001445 040 055 040
001450 106 111 114
001453 105 040 105
001456 130 124 105
001461 116 104 040
001464 106 101 111
001467 114 125 122
001472 105 000
005624 023116 .RAD50 /FEF/ ; "FEF" IN .RAD50
005626 001442' .WORD FEFERM ; POINTER TO MESSAGE
7258 005630 NSERR$ FEN,<FILE ENTER FAILURE>
001474 106 105 116 FENERM: .ASCIZ %FEN - FILE ENTER FAILURE%
001477 040 055 040
001502 106 111 114
001505 105 040 105
001510 116 124 105
001513 122 040 106
001516 101 111 114
001521 125 122 105
001524 000
005630 023126 .RAD50 /FEN/ ; "FEN" IN .RAD50
005632 001474' .WORD FENERM ; POINTER TO MESSAGE
7259 005634 NSERR$ FLF,<FILE LOOKUP FAILURE>
001525 106 114 106 FLFERM: .ASCIZ %FLF - FILE LOOKUP FAILURE%
001530 040 055 040
001533 106 111 114
001536 105 040 114
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-7
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
001541 117 117 113
001544 125 120 040
001547 106 101 111
001552 114 125 122
001555 105 000
005634 023546 .RAD50 /FLF/ ; "FLF" IN .RAD50
005636 001525' .WORD FLFERM ; POINTER TO MESSAGE
7260 005640 NSERR$ FOF,<FILE OPEN FAILURE>
001557 106 117 106 FOFERM: .ASCIZ %FOF - FILE OPEN FAILURE%
001562 040 055 040
001565 106 111 114
001570 105 040 117
001573 120 105 116
001576 040 106 101
001601 111 114 125
001604 122 105 000
005640 023736 .RAD50 /FOF/ ; "FOF" IN .RAD50
005642 001557' .WORD FOFERM ; POINTER TO MESSAGE
7261 005644 NSERR$ FRD,<FILE READ FAILURE>
001607 106 122 104 FRDERM: .ASCIZ %FRD - FILE READ FAILURE%
001612 040 055 040
001615 106 111 114
001620 105 040 122
001623 105 101 104
001626 040 106 101
001631 111 114 125
001634 122 105 000
005644 024124 .RAD50 /FRD/ ; "FRD" IN .RAD50
005646 001607' .WORD FRDERM ; POINTER TO MESSAGE
7262 005650 NSERR$ FSW,<FM SWEEP ERROR>
001637 106 123 127 FSWERM: .ASCIZ %FSW - FM SWEEP ERROR%
001642 040 055 040
001645 106 115 040
001650 123 127 105
001653 105 120 040
001656 105 122 122
001661 117 122 000
005650 024217 .RAD50 /FSW/ ; "FSW" IN .RAD50
005652 001637' .WORD FSWERM ; POINTER TO MESSAGE
7263 005654 NSERR$ FWT,<FILE WRITE FAILURE>
001664 106 127 124 FWTERM: .ASCIZ %FWT - FILE WRITE FAILURE%
001667 040 055 040
001672 106 111 114
001675 105 040 127
001700 122 111 124
001703 105 040 106
001706 101 111 114
001711 125 122 105
001714 000
005654 024454 .RAD50 /FWT/ ; "FWT" IN .RAD50
005656 001664' .WORD FWTERM ; POINTER TO MESSAGE
7264 ;
7265 005660 NSERR$ IDF,<ILLEGAL DATE FORMAT>
001715 111 104 106 IDFERM: .ASCIZ %IDF - ILLEGAL DATE FORMAT%
001720 040 055 040
001723 111 114 114
001726 105 107 101
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-8
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
001731 114 040 104
001734 101 124 105
001737 040 106 117
001742 122 115 101
001745 124 000
005660 034346 .RAD50 /IDF/ ; "IDF" IN .RAD50
005662 001715' .WORD IDFERM ; POINTER TO MESSAGE
7266 005664 NSERR$ IFC,<ILLEGAL FUNCTION CODE>
001747 111 106 103 IFCERM: .ASCIZ %IFC - ILLEGAL FUNCTION CODE%
001752 040 055 040
001755 111 114 114
001760 105 107 101
001763 114 040 106
001766 125 116 103
001771 124 111 117
001774 116 040 103
001777 117 104 105
002002 000
005664 034463 .RAD50 /IFC/ ; "IFC" IN .RAD50
005666 001747' .WORD IFCERM ; POINTER TO MESSAGE
7267 005670 NSERR$ ILI,<ILLEGAL INSTRUCTION>
002003 111 114 111 ILIERM: .ASCIZ %ILI - ILLEGAL INSTRUCTION%
002006 040 055 040
002011 111 114 114
002014 105 107 101
002017 114 040 111
002022 116 123 124
002025 122 125 103
002030 124 111 117
002033 116 000
005670 035051 .RAD50 /ILI/ ; "ILI" IN .RAD50
005672 002003' .WORD ILIERM ; POINTER TO MESSAGE
7268 005674 NSERR$ IOC,<ILLEGAL KL OPCODE>
002035 111 117 103 IOCERM: .ASCIZ %IOC - ILLEGAL KL OPCODE%
002040 040 055 040
002043 111 114 114
002046 105 107 101
002051 114 040 113
002054 114 040 117
002057 120 103 117
002062 104 105 000
005674 035233 .RAD50 /IOC/ ; "IOC" IN .RAD50
005676 002035' .WORD IOCERM ; POINTER TO MESSAGE
7269 005700 NSERR$ IRC,<ILLEGAL REPEAT COUNT>
002065 111 122 103 IRCERM: .ASCIZ %IRC - ILLEGAL REPEAT COUNT%
002070 040 055 040
002073 111 114 114
002076 105 107 101
002101 114 040 122
002104 105 120 105
002107 101 124 040
002112 103 117 125
002115 116 124 000
005700 035423 .RAD50 /IRC/ ; "IRC" IN .RAD50
005702 002065' .WORD IRCERM ; POINTER TO MESSAGE
7270 005704 NSERR$ IRE,<ILLEGAL RECURSION>
002120 111 122 105 IREERM: .ASCIZ %IRE - ILLEGAL RECURSION%
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-9
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
002123 040 055 040
002126 111 114 114
002131 105 107 101
002134 114 040 122
002137 105 103 125
002142 122 123 111
002145 117 116 000
005704 035425 .RAD50 /IRE/ ; "IRE" IN .RAD50
005706 002120' .WORD IREERM ; POINTER TO MESSAGE
7271 005710 NSERR$ ITF,<ILLEGAL TIME FORMAT>
002150 111 124 106 ITFERM: .ASCIZ %ITF - ILLEGAL TIME FORMAT%
002153 040 055 040
002156 111 114 114
002161 105 107 101
002164 114 040 124
002167 111 115 105
002172 040 106 117
002175 122 115 101
002200 124 000
005710 035546 .RAD50 /ITF/ ; "ITF" IN .RAD50
005712 002150' .WORD ITFERM ; POINTER TO MESSAGE
7272 005714 NSERR$ ITN,<ILLEGAL TASK NAME>
002202 111 124 116 ITNERM: .ASCIZ %ITN - ILLEGAL TASK NAME%
002205 040 055 040
002210 111 114 114
002213 105 107 101
002216 114 040 124
002221 101 123 113
002224 040 116 101
002227 115 105 000
005714 035556 .RAD50 /ITN/ ; "ITN" IN .RAD50
005716 002202' .WORD ITNERM ; POINTER TO MESSAGE
7273 ;
7274 005720 NSERR$ KCN,<KL CLOCK IS OFF>
002232 113 103 116 KCNERM: .ASCIZ %KCN - KL CLOCK IS OFF%
002235 040 055 040
002240 113 114 040
002243 103 114 117
002246 103 113 040
002251 111 123 040
002254 117 106 106
002257 000
005720 042506 .RAD50 /KCN/ ; "KCN" IN .RAD50
005722 002232' .WORD KCNERM ; POINTER TO MESSAGE
7275 005724 NSERR$ KLA,<KL ADDRESS ERROR>
002260 113 114 101 KLAERM: .ASCIZ %KLA - KL ADDRESS ERROR%
002263 040 055 040
002266 113 114 040
002271 101 104 104
002274 122 105 123
002277 123 040 105
002302 122 122 117
002305 122 000
005724 043241 .RAD50 /KLA/ ; "KLA" IN .RAD50
005726 002260' .WORD KLAERM ; POINTER TO MESSAGE
7276 005730 NSERR$ KLR,<ILLEGAL WHILE KL IS RUNNING>
002307 113 114 122 KLRERM: .ASCIZ %KLR - ILLEGAL WHILE KL IS RUNNING%
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-10
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
002312 040 055 040
002315 111 114 114
002320 105 107 101
002323 114 040 127
002326 110 111 114
002331 105 040 113
002334 114 040 111
002337 123 040 122
002342 125 116 116
002345 111 116 107
002350 000
005730 043262 .RAD50 /KLR/ ; "KLR" IN .RAD50
005732 002307' .WORD KLRERM ; POINTER TO MESSAGE
7277 005734 NSERR$ KNC,<KL IS NOT CONTINUABLE>
002351 113 116 103 KNCERM: .ASCIZ %KNC - KL IS NOT CONTINUABLE%
002354 040 055 040
002357 113 114 040
002362 111 123 040
002365 116 117 124
002370 040 103 117
002373 116 124 111
002376 116 125 101
002401 102 114 105
002404 000
005734 043363 .RAD50 /KNC/ ; "KNC" IN .RAD50
005736 002351' .WORD KNCERM ; POINTER TO MESSAGE
7278 005740 NSERR$ KWE,<KLINIK WINDOW ERROR>
002405 113 127 105 KWEERM: .ASCIZ %KWE - KLINIK WINDOW ERROR%
002410 040 055 040
002413 113 114 111
002416 116 111 113
002421 040 127 111
002424 116 104 117
002427 127 040 105
002432 122 122 117
002435 122 000
005740 044135 .RAD50 /KWE/ ; "KWE" IN .RAD50
005742 002405' .WORD KWEERM ; POINTER TO MESSAGE
7279 ;
7280 005744 NSERR$ MRA,<MISSING REQUIRED ARGUMENT>
002437 115 122 101 MRAERM: .ASCIZ %MRA - MISSING REQUIRED ARGUMENT%
002442 040 055 040
002445 115 111 123
002450 123 111 116
002453 107 040 122
002456 105 121 125
002461 111 122 105
002464 104 040 101
002467 122 107 125
002472 115 105 116
002475 124 000
005744 052021 .RAD50 /MRA/ ; "MRA" IN .RAD50
005746 002437' .WORD MRAERM ; POINTER TO MESSAGE
7281 005750 NSERR$ MRH,<HARDWARE OPTIONS MUST BE READ>
002477 115 122 110 MRHERM: .ASCIZ %MRH - HARDWARE OPTIONS MUST BE READ%
002502 040 055 040
002505 110 101 122
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-11
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
002510 104 127 101
002513 122 105 040
002516 117 120 124
002521 111 117 116
002524 123 040 115
002527 125 123 124
002532 040 102 105
002535 040 122 105
002540 101 104 000
005750 052030 .RAD50 /MRH/ ; "MRH" IN .RAD50
005752 002477' .WORD MRHERM ; POINTER TO MESSAGE
7282 ;
7283 005754 NSERR$ NDI,<NULL DATE ILLEGAL>
002543 116 104 111 NDIERM: .ASCIZ %NDI - NULL DATE ILLEGAL%
002546 040 055 040
002551 116 125 114
002554 114 040 104
002557 101 124 105
002562 040 111 114
002565 114 105 107
002570 101 114 000
005754 054051 .RAD50 /NDI/ ; "NDI" IN .RAD50
005756 002543' .WORD NDIERM ; POINTER TO MESSAGE
7284 005760 NSERR$ NER,<NUMERIC EXPRESSION REQUIRED>
002573 116 105 122 NERERM: .ASCIZ %NER - NUMERIC EXPRESSION REQUIRED%
002576 040 055 040
002601 116 125 115
002604 105 122 111
002607 103 040 105
002612 130 120 122
002615 105 123 123
002620 111 117 116
002623 040 122 105
002626 121 125 111
002631 122 105 104
002634 000
005760 054132 .RAD50 /NER/ ; "NER" IN .RAD50
005762 002573' .WORD NERERM ; POINTER TO MESSAGE
7285 005764 NSERR$ NOR,<INPUT NUMBER OUT OF RANGE>
002635 116 117 122 NORERM: .ASCIZ %NOR - INPUT NUMBER OUT OF RANGE%
002640 040 055 040
002643 111 116 120
002646 125 124 040
002651 116 125 115
002654 102 105 122
002657 040 117 125
002662 124 040 117
002665 106 040 122
002670 101 116 107
002673 105 000
005764 054752 .RAD50 /NOR/ ; "NOR" IN .RAD50
005766 002635' .WORD NORERM ; POINTER TO MESSAGE
7286 005770 NSERR$ NPI,<NULL PASSWORD ILLEGAL>
002675 116 120 111 NPIERM: .ASCIZ %NPI - NULL PASSWORD ILLEGAL%
002700 040 055 040
002703 116 125 114
002706 114 040 120
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-12
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
002711 101 123 123
002714 127 117 122
002717 104 040 111
002722 114 114 105
002725 107 101 114
002730 000
005770 055011 .RAD50 /NPI/ ; "NPI" IN .RAD50
005772 002675' .WORD NPIERM ; POINTER TO MESSAGE
7287 005774 NSERR$ NSF,<NO SUCH FILE>
002731 116 123 106 NSFERM: .ASCIZ %NSF - NO SUCH FILE%
002734 040 055 040
002737 116 117 040
002742 123 125 103
002745 110 040 106
002750 111 114 105
002753 000
005774 055176 .RAD50 /NSF/ ; "NSF" IN .RAD50
005776 002731' .WORD NSFERM ; POINTER TO MESSAGE
7288 006000 NSERR$ NST,<NO SUCH TASK>
002754 116 123 124 NSTERM: .ASCIZ %NST - NO SUCH TASK%
002757 040 055 040
002762 116 117 040
002765 123 125 103
002770 110 040 124
002773 101 123 113
002776 000
006000 055214 .RAD50 /NST/ ; "NST" IN .RAD50
006002 002754' .WORD NSTERM ; POINTER TO MESSAGE
7289 006004 NSERR$ NTI,<NULL TIME ILLEGAL>
002777 116 124 111 NTIERM: .ASCIZ %NTI - NULL TIME ILLEGAL%
003002 040 055 040
003005 116 125 114
003010 114 040 124
003013 111 115 105
003016 040 111 114
003021 114 105 107
003024 101 114 000
006004 055251 .RAD50 /NTI/ ; "NTI" IN .RAD50
006006 002777' .WORD NTIERM ; POINTER TO MESSAGE
7290 ;
7291 006010 NSERR$ OAI,<ODD ADDRESS ILLEGAL>
003027 117 101 111 OAIERM: .ASCIZ %OAI - ODD ADDRESS ILLEGAL%
003032 040 055 040
003035 117 104 104
003040 040 101 104
003043 104 122 105
003046 123 123 040
003051 111 114 114
003054 105 107 101
003057 114 000
006010 056761 .RAD50 /OAI/ ; "OAI" IN .RAD50
006012 003027' .WORD OAIERM ; POINTER TO MESSAGE
7292 006014 NSERR$ OFC,<ODD FUNCTION CODE>
003061 117 106 103 OFCERM: .ASCIZ %OFC - ODD FUNCTION CODE%
003064 040 055 040
003067 117 104 104
003072 040 106 125
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-13
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
003075 116 103 124
003100 111 117 116
003103 040 103 117
003106 104 105 000
006014 057263 .RAD50 /OFC/ ; "OFC" IN .RAD50
006016 003061' .WORD OFCERM ; POINTER TO MESSAGE
7293 ;
7294 006020 NSERR$ PTL,<PASSWORD TOO LONG>
003111 120 124 114 PTLERM: .ASCIZ %PTL - PASSWORD TOO LONG%
003114 040 055 040
003117 120 101 123
003122 123 127 117
003125 122 104 040
003130 124 117 117
003133 040 114 117
003136 116 107 000
006020 063454 .RAD50 /PTL/ ; "PTL" IN .RAD50
006022 003111' .WORD PTLERM ; POINTER TO MESSAGE
7295 ;
7296 006024 NSERR$ RPM,<RIGHT PARENTHESES MISSING>
003141 122 120 115 RPMERM: .ASCIZ %RPM - RIGHT PARENTHESES MISSING%
003144 040 055 040
003147 122 111 107
003152 110 124 040
003155 120 101 122
003160 105 116 124
003163 110 105 123
003166 105 123 040
003171 115 111 123
003174 123 111 116
003177 107 000
006024 071415 .RAD50 /RPM/ ; "RPM" IN .RAD50
006026 003141' .WORD RPMERM ; POINTER TO MESSAGE
7297 ;
7298 006030 NSERR$ SCF,<SET CLOCK FAILED>
003201 123 103 106 SCFERM: .ASCIZ %SCF - SET CLOCK FAILED%
003204 040 055 040
003207 123 105 124
003212 040 103 114
003215 117 103 113
003220 040 106 101
003223 111 114 105
003226 104 000
006030 073476 .RAD50 /SCF/ ; "SCF" IN .RAD50
006032 003201' .WORD SCFERM ; POINTER TO MESSAGE
7299 006034 NSERR$ SKI,<SET KLINIK ILLEGAL WHILE KLINIK ACTIVE>
003230 123 113 111 SKIERM: .ASCIZ %SKI - SET KLINIK ILLEGAL WHILE KLINIK ACTIVE%
003233 040 055 040
003236 123 105 124
003241 040 113 114
003244 111 116 111
003247 113 040 111
003252 114 114 105
003255 107 101 114
003260 040 127 110
003263 111 114 105
003266 040 113 114
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-14
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
003271 111 116 111
003274 113 040 101
003277 103 124 111
003302 126 105 000
006034 074201 .RAD50 /SKI/ ; "SKI" IN .RAD50
006036 003230' .WORD SKIERM ; POINTER TO MESSAGE
7300 006040 NSERR$ SPF,<SET PARITY FAILED>
003305 123 120 106 SPFERM: .ASCIZ %SPF - SET PARITY FAILED%
003310 040 055 040
003313 123 105 124
003316 040 120 101
003321 122 111 124
003324 131 040 106
003327 101 111 114
003332 105 104 000
006040 074506 .RAD50 /SPF/ ; "SPF" IN .RAD50
006042 003305' .WORD SPFERM ; POINTER TO MESSAGE
7301 006044 NSERR$ SZI,<START AT ZERO ILLEGAL>
003335 123 132 111 SZIERM: .ASCIZ %SZI - START AT ZERO ILLEGAL%
003340 040 055 040
003343 123 124 101
003346 122 124 040
003351 101 124 040
003354 132 105 122
003357 117 040 111
003362 114 114 105
003365 107 101 114
003370 000
006044 075331 .RAD50 /SZI/ ; "SZI" IN .RAD50
006046 003335' .WORD SZIERM ; POINTER TO MESSAGE
7302 ;
7303 006050 NSERR$ TAA,<TASK IS ALREADY ACTIVE>
003371 124 101 101 TAAERM: .ASCIZ %TAA - TASK IS ALREADY ACTIVE%
003374 040 055 040
003377 124 101 123
003402 113 040 111
003405 123 040 101
003410 114 122 105
003413 101 104 131
003416 040 101 103
003421 124 111 126
003424 105 000
006050 076451 .RAD50 /TAA/ ; "TAA" IN .RAD50
006052 003371' .WORD TAAERM ; POINTER TO MESSAGE
7304 006054 NSERR$ TOR,<TIME OUT OF RANGE>
003426 124 117 122 TORERM: .ASCIZ %TOR - TIME OUT OF RANGE%
003431 040 055 040
003434 124 111 115
003437 105 040 117
003442 125 124 040
003445 117 106 040
003450 122 101 116
003453 107 105 000
006054 077552 .RAD50 /TOR/ ; "TOR" IN .RAD50
006056 003426' .WORD TORERM ; POINTER TO MESSAGE
7305 ;
7306 006060 NSERR$ UNL,<KL MICROCODE NOT LOADED>
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-15
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
003456 125 116 114 UNLERM: .ASCIZ %UNL - KL MICROCODE NOT LOADED%
003461 040 055 040
003464 113 114 040
003467 115 111 103
003472 122 117 103
003475 117 104 105
003500 040 116 117
003503 124 040 114
003506 117 101 104
003511 105 104 000
006060 102574 .RAD50 /UNL/ ; "UNL" IN .RAD50
006062 003456' .WORD UNLERM ; POINTER TO MESSAGE
7307 ;
7308 006064 NSERR$ VFY,<DEPOSIT VERIFY FAILED>
003514 126 106 131 VFYERM: .ASCIZ %VFY - DEPOSIT VERIFY FAILED%
003517 040 055 040
003522 104 105 120
003525 117 123 111
003530 124 040 126
003533 105 122 111
003536 106 131 040
003541 106 101 111
003544 114 105 104
003547 000
006064 105211 .RAD50 /VFY/ ; "VFY" IN .RAD50
006066 003514' .WORD VFYERM ; POINTER TO MESSAGE
7309 ;
7310 006070 NSERR$ WRM,<COMMAND NOT AVAILABLE IN THIS CONSOLE MODE>
003550 127 122 115 WRMERM: .ASCIZ %WRM - COMMAND NOT AVAILABLE IN THIS CONSOLE MODE%
003553 040 055 040
003556 103 117 115
003561 115 101 116
003564 104 040 116
003567 117 124 040
003572 101 126 101
003575 111 114 101
003600 102 114 105
003603 040 111 116
003606 040 124 110
003611 111 123 040
003614 103 117 116
003617 123 117 114
003622 105 040 115
003625 117 104 105
003630 000
006070 111235 .RAD50 /WRM/ ; "WRM" IN .RAD50
006072 003550' .WORD WRMERM ; POINTER TO MESSAGE
7311 ;
7312 006074 NSERR$ YOR,<YEAR OUT OF RANGE>
003631 131 117 122 YORERM: .ASCIZ %YOR - YEAR OUT OF RANGE%
003634 040 055 040
003637 131 105 101
003642 122 040 117
003645 125 124 040
003650 117 106 040
003653 122 101 116
003656 107 105 000
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 181-16
.NSETB -- NORMAL ERROR CODE TABLE 7710.11
006074 117252 .RAD50 /YOR/ ; "YOR" IN .RAD50
006076 003631' .WORD YORERM ; POINTER TO MESSAGE
7313 ;
7314 006100 NSERR$ XTO,<KL EXECUTE TIMED OUT>
003661 130 124 117 XTOERM: .ASCIZ %XTO - KL EXECUTE TIMED OUT%
003664 040 055 040
003667 113 114 040
003672 105 130 105
003675 103 125 124
003700 105 040 124
003703 111 115 105
003706 104 040 117
003711 125 124 000
006100 114457 .RAD50 /XTO/ ; "XTO" IN .RAD50
006102 003661' .WORD XTOERM ; POINTER TO MESSAGE
7315 ;
7316 006104 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 182
.RESTB -- THE RESET COMMAND TABLE 7602.18
7318 .SBTTL .RESTB -- THE RESET COMMAND TABLE 7602.18
7319
7320 006106 .RESTB::
7321 006106 COMND$ ALL,<LG.PRG!LG.RPT>,.RSALL,ALL
001342 101 114 114 ALLMSG:: .ASCIZ %ALL%
001345 000
006106 001342' .WORD ALLMSG ; POINTER TO "ALL" SYMBOL
006110 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006112 000000G .WORD .RSALL ; ROUTINE TO CALL OR DATA
7322 ;
7323 006114 COMND$ APR,<LG.PRG!LG.RPT>,.RSAPR,CPU
001346 101 120 122 CPUMSG:: .ASCIZ %APR%
001351 000
006114 001346' .WORD CPUMSG ; POINTER TO "APR" SYMBOL
006116 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006120 000000G .WORD .RSAPR ; ROUTINE TO CALL OR DATA
7324 ;
7325 006122 COMND$ DTE-20,<LG.PRG!LG.RPT>,.RSDTE,DTE
006122 001060' .WORD DTEMSG ; POINTER TO "DTE-20" SYMBOL
006124 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006126 000000G .WORD .RSDTE ; ROUTINE TO CALL OR DATA
7326 ;
7327 006130 COMND$ ERROR,<LG.RPT!LG.PRG>,.RSERR,ERR
001352 105 122 122 ERRMSG:: .ASCIZ %ERROR%
001355 117 122 000
006130 001352' .WORD ERRMSG ; POINTER TO "ERROR" SYMBOL
006132 000402 .WORD LG.RPT!LG.PRG ; LEGAL BITS
006134 000000G .WORD .RSERR ; ROUTINE TO CALL OR DATA
7328 ;
7329 006136 COMND$ INITIALIZE,<LG.PRG!LG.RPT>,.RSTIN,INI
006136 000474' .WORD INIMSG ; POINTER TO "INITIALIZE" SYMBOL
006140 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006142 000000G .WORD .RSTIN ; ROUTINE TO CALL OR DATA
7330 ;
7331 006144 COMND$ IO,<LG.PRG!LG.RPT>,.RSTIO,IO
001360 111 117 000 IOMSG:: .ASCIZ %IO%
006144 001360' .WORD IOMSG ; POINTER TO "IO" SYMBOL
006146 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006150 000000G .WORD .RSTIO ; ROUTINE TO CALL OR DATA
7332 ;
7333 006152 COMND$ PAG,<LG.PRG!LG.RPT>,.RSPAG,PAG
001363 120 101 107 PAGMSG:: .ASCIZ %PAG%
001366 000
006152 001363' .WORD PAGMSG ; POINTER TO "PAG" SYMBOL
006154 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006156 000000G .WORD .RSPAG ; ROUTINE TO CALL OR DATA
7334 ;
7335 006160 COMND$ PI,<LG.PRG!LG.RPT>,.RSTPI,PI
006160 001103' .WORD PIMSG ; POINTER TO "PI" SYMBOL
006162 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006164 000000G .WORD .RSTPI ; ROUTINE TO CALL OR DATA
7336 ;
7337 006166 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 183
.SCCTB -- THE "SET / CLEAR CLOCK" COMMAND TABLE 7603.12
7339 .SBTTL .SCCTB -- THE "SET / CLEAR CLOCK" COMMAND TABLE 7603.12
7340
7341 006170 .SCCTB::
7342 006170 COMND$ NORMAL,<LG.MNT!LG.RPT>,.SCCLN,NRM
001367 116 117 122 NRMMSG:: .ASCIZ %NORMAL%
001372 115 101 114
001375 000
006170 001367' .WORD NRMMSG ; POINTER TO "NORMAL" SYMBOL
006172 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006174 000000G .WORD .SCCLN ; ROUTINE TO CALL OR DATA
7343 ;
7344 006176 COMND$ CRAM,<LG.MNT!LG.RPT>,.SCCEC,CRM
001376 103 122 101 CRMMSG:: .ASCIZ %CRAM%
001401 115 000
006176 001376' .WORD CRMMSG ; POINTER TO "CRAM" SYMBOL
006200 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006202 000000G .WORD .SCCEC ; ROUTINE TO CALL OR DATA
7345 ;
7346 006204 COMND$ DATA-PATH,<LG.MNT!LG.RPT>,.SCCED,DPT
001403 104 101 124 DPTMSG:: .ASCIZ %DATA-PATH%
001406 101 055 120
001411 101 124 110
001414 000
006204 001403' .WORD DPTMSG ; POINTER TO "DATA-PATH" SYMBOL
006206 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006210 000000G .WORD .SCCED ; ROUTINE TO CALL OR DATA
7347 ;
7348 006212 COMND$ CONTROL,<LG.MNT!LG.RPT>,.SCCEE,CTL
001415 103 117 116 CTLMSG:: .ASCIZ %CONTROL%
001420 124 122 117
001423 114 000
006212 001415' .WORD CTLMSG ; POINTER TO "CONTROL" SYMBOL
006214 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006216 000000G .WORD .SCCEE ; ROUTINE TO CALL OR DATA
7349 ;
7350 006220 COMND$ EXTERNAL,<LG.MNT!LG.RPT>,.SCCSE,EXT
001425 105 130 124 EXTMSG:: .ASCIZ %EXTERNAL%
001430 105 122 116
001433 101 114 000
006220 001425' .WORD EXTMSG ; POINTER TO "EXTERNAL" SYMBOL
006222 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006224 000000G .WORD .SCCSE ; ROUTINE TO CALL OR DATA
7351 ;
7352 006226 COMND$ INTERNAL,<LG.MNT!LG.RPT>,.SCCSI,INT
001436 111 116 124 INTMSG:: .ASCIZ %INTERNAL%
001441 105 122 116
001444 101 114 000
006226 001436' .WORD INTMSG ; POINTER TO "INTERNAL" SYMBOL
006230 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006232 000000G .WORD .SCCSI ; ROUTINE TO CALL OR DATA
7353 ;
7354 006234 COMND$ MARGIN,<LG.MNT!LG.RPT>,.SCCSM,MGN
001447 115 101 122 MGNMSG:: .ASCIZ %MARGIN%
001452 107 111 116
001455 000
006234 001447' .WORD MGNMSG ; POINTER TO "MARGIN" SYMBOL
006236 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 183-1
.SCCTB -- THE "SET / CLEAR CLOCK" COMMAND TABLE 7603.12
006240 000000G .WORD .SCCSM ; ROUTINE TO CALL OR DATA
7355 ;
7356 006242 COMND$ FULL,<LG.MNT!LG.RPT>,.SCCRF,FUL
001456 106 125 114 FULMSG:: .ASCIZ %FULL%
001461 114 000
006242 001456' .WORD FULMSG ; POINTER TO "FULL" SYMBOL
006244 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006246 000000G .WORD .SCCRF ; ROUTINE TO CALL OR DATA
7357 ;
7358 006250 COMND$ HALF,<LG.MNT!LG.RPT>,.SCCRH,HLF
001463 110 101 114 HLFMSG:: .ASCIZ %HALF%
001466 106 000
006250 001463' .WORD HLFMSG ; POINTER TO "HALF" SYMBOL
006252 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006254 000000G .WORD .SCCRH ; ROUTINE TO CALL OR DATA
7359 ;
7360 006256 COMND$ QUARTER,<LG.MNT!LG.RPT>,.SCCRQ,QTR
001470 121 125 101 QTRMSG:: .ASCIZ %QUARTER%
001473 122 124 105
001476 122 000
006256 001470' .WORD QTRMSG ; POINTER TO "QUARTER" SYMBOL
006260 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006262 000000G .WORD .SCCRQ ; ROUTINE TO CALL OR DATA
7361 ;
7362 006264 COMND$ SLOW,<LG.MNT!LG.RPT>,.SCCRS,SLO
001500 123 114 117 SLOMSG:: .ASCIZ %SLOW%
001503 127 000
006264 001500' .WORD SLOMSG ; POINTER TO "SLOW" SYMBOL
006266 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006270 000000G .WORD .SCCRS ; ROUTINE TO CALL OR DATA
7363 ;
7364 006272 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 184
.SCMTB -- THE "SET / CLEAR MEMORY" COMMAND TABLE 7603.18
7366 .SBTTL .SCMTB -- THE "SET / CLEAR MEMORY" COMMAND TABLE 7603.18
7367
7368 006274 .SCMTB::
7369 006274 COMND$ ELEVEN,LG.OPR,.SCMEL,ELE
006274 000756' .WORD ELEMSG ; POINTER TO "ELEVEN" SYMBOL
006276 000001 .WORD LG.OPR ; LEGAL BITS
006300 000000G .WORD .SCMEL ; ROUTINE TO CALL OR DATA
7370 ;
7371 006302 COMND$ TEN,LG.OPR,.SCMKL,TEN
006302 000765' .WORD TENMSG ; POINTER TO "TEN" SYMBOL
006304 000001 .WORD LG.OPR ; LEGAL BITS
006306 000000G .WORD .SCMKL ; ROUTINE TO CALL OR DATA
7372 ;
7373 006310 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 185
.SCCOT -- THE "SET CONSOLE" COMMAND TABLE 7602.12
7375 .SBTTL .SCCOT -- THE "SET CONSOLE" COMMAND TABLE 7602.12
7376
7377 006312 .SCCOT::
7378 006312 COMND$ MAINTENANCE,LG.OPR,.SCCOM,MNT
006312 001140' .WORD MNTMSG ; POINTER TO "MAINTENANCE" SYMBOL
006314 000001 .WORD LG.OPR ; LEGAL BITS
006316 000000G .WORD .SCCOM ; ROUTINE TO CALL OR DATA
7379 ;
7380 006320 COMND$ OPERATOR,LG.OPR,.SCCOO,OPR
006320 001154' .WORD OPRMSG ; POINTER TO "OPERATOR" SYMBOL
006322 000001 .WORD LG.OPR ; LEGAL BITS
006324 000000G .WORD .SCCOO ; ROUTINE TO CALL OR DATA
7381 ;
7382 006326 COMND$ PROGRAMMER,LG.OPR,.SCCOP,PRG
006326 001165' .WORD PRGMSG ; POINTER TO "PROGRAMMER" SYMBOL
006330 000001 .WORD LG.OPR ; LEGAL BITS
006332 000000G .WORD .SCCOP ; ROUTINE TO CALL OR DATA
7383 ;
7384 006334 COMND$ USER,LG.OPR,.SCCOU,USR
006334 001207' .WORD USRMSG ; POINTER TO "USER" SYMBOL
006336 000001 .WORD LG.OPR ; LEGAL BITS
006340 000000G .WORD .SCCOU ; ROUTINE TO CALL OR DATA
7385 ;
7386 006342 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 186
.SCOTT -- THE "SET OUTPUT" COMMAND TABLE
7388 .SBTTL .SCOTT -- THE "SET OUTPUT" COMMAND TABLE
7389
7390 006344 .SCOTT::
7391 006344 COMND$ LOG,LG.OPR,.SCOTL,LOG
001505 114 117 107 LOGMSG:: .ASCIZ %LOG%
001510 000
006344 001505' .WORD LOGMSG ; POINTER TO "LOG" SYMBOL
006346 000001 .WORD LG.OPR ; LEGAL BITS
006350 000000G .WORD .SCOTL ; ROUTINE TO CALL OR DATA
7392 ;
7393 006352 COMND$ LPT,LG.OPR,.SCOTP,LPT
001511 114 120 124 LPTMSG:: .ASCIZ %LPT%
001514 000
006352 001511' .WORD LPTMSG ; POINTER TO "LPT" SYMBOL
006354 000001 .WORD LG.OPR ; LEGAL BITS
006356 000000G .WORD .SCOTP ; ROUTINE TO CALL OR DATA
7394 ;
7395 006360 COMND$ TTY,LG.OPR,.SCOTY,TTY
001515 124 124 131 TTYMSG:: .ASCIZ %TTY%
001520 000
006360 001515' .WORD TTYMSG ; POINTER TO "TTY" SYMBOL
006362 000001 .WORD LG.OPR ; LEGAL BITS
006364 000000G .WORD .SCOTY ; ROUTINE TO CALL OR DATA
7396 ;
7397 006366 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 187
.SCPTB -- THE SET / CLEAR "PARITY-STOP" TABLE 7603.10
7399 .SBTTL .SCPTB -- THE SET / CLEAR "PARITY-STOP" TABLE 7603.10
7400
7401 006370 .SCPTB::
7402 006370 COMND$ ALL,LG.MNT,.SCPAL,ALL
006370 001342' .WORD ALLMSG ; POINTER TO "ALL" SYMBOL
006372 000004 .WORD LG.MNT ; LEGAL BITS
006374 000000G .WORD .SCPAL ; ROUTINE TO CALL OR DATA
7403 ;
7404 006376 COMND$ AR,LG.MNT,.SCPAR,AR
006376 000753' .WORD ARMSG ; POINTER TO "AR" SYMBOL
006400 000004 .WORD LG.MNT ; LEGAL BITS
006402 000000G .WORD .SCPAR ; ROUTINE TO CALL OR DATA
7405 ;
7406 006404 COMND$ CRAM,LG.MNT,.SCPCR,CRM
006404 001376' .WORD CRMMSG ; POINTER TO "CRAM" SYMBOL
006406 000004 .WORD LG.MNT ; LEGAL BITS
006410 000000G .WORD .SCPCR ; ROUTINE TO CALL OR DATA
7407 ;
7408 006412 COMND$ DRAM,LG.MNT,.SCPDR,DRM
001521 104 122 101 DRMMSG:: .ASCIZ %DRAM%
001524 115 000
006412 001521' .WORD DRMMSG ; POINTER TO "DRAM" SYMBOL
006414 000004 .WORD LG.MNT ; LEGAL BITS
006416 000000G .WORD .SCPDR ; ROUTINE TO CALL OR DATA
7409 ;
7410 006420 COMND$ ENABLE,LG.MNT,.SCPEN,ENB
001526 105 116 101 ENBMSG:: .ASCIZ %ENABLE%
001531 102 114 105
001534 000
006420 001526' .WORD ENBMSG ; POINTER TO "ENABLE" SYMBOL
006422 000004 .WORD LG.MNT ; LEGAL BITS
006424 000000G .WORD .SCPEN ; ROUTINE TO CALL OR DATA
7411 ;
7412 006426 COMND$ FM,LG.MNT,.SCPFM,FM
006426 001020' .WORD FMMSG ; POINTER TO "FM" SYMBOL
006430 000004 .WORD LG.MNT ; LEGAL BITS
006432 000000G .WORD .SCPFM ; ROUTINE TO CALL OR DATA
7413 ;
7414 006434 COMND$ FS-STOP,LG.MNT,.SCPFS,FSS
001535 106 123 055 FSSMSG:: .ASCIZ %FS-STOP%
001540 123 124 117
001543 120 000
006434 001535' .WORD FSSMSG ; POINTER TO "FS-STOP" SYMBOL
006436 000004 .WORD LG.MNT ; LEGAL BITS
006440 000000G .WORD .SCPFS ; ROUTINE TO CALL OR DATA
7415 ;
7416 006442 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 188
.SETTB -- THE SET / CLEAR COMMAND TABLE 7703.25
7418 .SBTTL .SETTB -- THE SET / CLEAR COMMAND TABLE 7703.25
7419
7420 006444 .SETTB::
7421 006444 COMND$ AC-BLOCK,<LG.MNT>,.SCACB,ACB
001545 101 103 055 ACBMSG:: .ASCIZ %AC-BLOCK%
001550 102 114 117
001553 103 113 000
006444 001545' .WORD ACBMSG ; POINTER TO "AC-BLOCK" SYMBOL
006446 000004 .WORD LG.MNT ; LEGAL BITS
006450 000000G .WORD .SCACB ; ROUTINE TO CALL OR DATA
7422 ;
7423 006452 COMND$ AUTO-TAKE,LG.OPR,.SCTAK,AUT
001556 101 125 124 AUTMSG:: .ASCIZ %AUTO-TAKE%
001561 117 055 124
001564 101 113 105
001567 000
006452 001556' .WORD AUTMSG ; POINTER TO "AUTO-TAKE" SYMBOL
006454 000001 .WORD LG.OPR ; LEGAL BITS
006456 000000G .WORD .SCTAK ; ROUTINE TO CALL OR DATA
7424 ;
7425 006460 COMND$ CLOCK,<LG.MNT!LG.RPT>,.SCCLK,CLK
001570 103 114 117 CLKMSG:: .ASCIZ %CLOCK%
001573 103 113 000
006460 001570' .WORD CLKMSG ; POINTER TO "CLOCK" SYMBOL
006462 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006464 000000G .WORD .SCCLK ; ROUTINE TO CALL OR DATA
7426 ;
7427 006466 COMND$ CONSOLE,LG.OPR,.SCCON,CON
001576 103 117 116 CONMSG:: .ASCIZ %CONSOLE%
001601 123 117 114
001604 105 000
006466 001576' .WORD CONMSG ; POINTER TO "CONSOLE" SYMBOL
006470 000001 .WORD LG.OPR ; LEGAL BITS
006472 000000G .WORD .SCCON ; ROUTINE TO CALL OR DATA
7428 ;
7429 006474 COMND$ DATE,LG.PRG,.SCDAT,DAT
001606 104 101 124 DATMSG:: .ASCIZ %DATE%
001611 105 000
006474 001606' .WORD DATMSG ; POINTER TO "DATE" SYMBOL
006476 000002 .WORD LG.PRG ; LEGAL BITS
006500 000000G .WORD .SCDAT ; ROUTINE TO CALL OR DATA
7430 ;
7431 006502 COMND$ FAULT-CONTINUE,LG.PRG,.SFREC,FLT
001613 106 101 125 FLTMSG:: .ASCIZ %FAULT-CONTINUE%
001616 114 124 055
001621 103 117 116
001624 124 111 116
001627 125 105 000
006502 001613' .WORD FLTMSG ; POINTER TO "FAULT-CONTINUE" SYMBOL
006504 000002 .WORD LG.PRG ; LEGAL BITS
006506 000000G .WORD .SFREC ; ROUTINE TO CALL OR DATA
7432 ;
7433 006510 COMND$ FS-STOP,<LG.MNT!LG.RPT>,.SCFSS,FSS
006510 001535' .WORD FSSMSG ; POINTER TO "FS-STOP" SYMBOL
006512 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006514 000000G .WORD .SCFSS ; ROUTINE TO CALL OR DATA
7434 ;
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 188-1
.SETTB -- THE SET / CLEAR COMMAND TABLE 7703.25
7435 006516 COMND$ INCREMENT,LG.OPR,.SCINC,INC
006516 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
006520 000001 .WORD LG.OPR ; LEGAL BITS
006522 000000G .WORD .SCINC ; ROUTINE TO CALL OR DATA
7436 ;
7437 006524 COMND$ KLINIK,LG.ALL,.SCKLN,KLI
001632 113 114 111 KLIMSG:: .ASCIZ %KLINIK%
001635 116 111 113
001640 000
006524 001632' .WORD KLIMSG ; POINTER TO "KLINIK" SYMBOL
006526 000007 .WORD LG.ALL ; LEGAL BITS
006530 000000G .WORD .SCKLN ; ROUTINE TO CALL OR DATA
7438 ;
7439 006532 COMND$ MEMORY,LG.OPR,.SCMEM,MEM
001641 115 105 115 MEMMSG:: .ASCIZ %MEMORY%
001644 117 122 131
001647 000
006532 001641' .WORD MEMMSG ; POINTER TO "MEMORY" SYMBOL
006534 000001 .WORD LG.OPR ; LEGAL BITS
006536 000000G .WORD .SCMEM ; ROUTINE TO CALL OR DATA
7440 ;
7441 006540 COMND$ NOT,<LG.OPR!LG.RPT>,.SCNOT,NOT
001650 116 117 124 NOTMSG:: .ASCIZ %NOT%
001653 000
006540 001650' .WORD NOTMSG ; POINTER TO "NOT" SYMBOL
006542 000401 .WORD LG.OPR!LG.RPT ; LEGAL BITS
006544 000000G .WORD .SCNOT ; ROUTINE TO CALL OR DATA
7442 ;
7443 006546 COMND$ OFFSET,LG.PRG,.SCOFS,OFS
001654 117 106 106 OFSMSG:: .ASCIZ %OFFSET%
001657 123 105 124
001662 000
006546 001654' .WORD OFSMSG ; POINTER TO "OFFSET" SYMBOL
006550 000002 .WORD LG.PRG ; LEGAL BITS
006552 000000G .WORD .SCOFS ; ROUTINE TO CALL OR DATA
7444 ;
7445 006554 COMND$ OUTPUT,LG.OPR,.SCOUT,OUT
001663 117 125 124 OUTMSG:: .ASCIZ %OUTPUT%
001666 120 125 124
001671 000
006554 001663' .WORD OUTMSG ; POINTER TO "OUTPUT" SYMBOL
006556 000001 .WORD LG.OPR ; LEGAL BITS
006560 000000G .WORD .SCOUT ; ROUTINE TO CALL OR DATA
7446 ;
7447 006562 COMND$ PARITY-STOP,<LG.MNT!LG.RPT>,.SCPST,PST
001672 120 101 122 PSTMSG:: .ASCIZ %PARITY-STOP%
001675 111 124 131
001700 055 123 124
001703 117 120 000
006562 001672' .WORD PSTMSG ; POINTER TO "PARITY-STOP" SYMBOL
006564 000404 .WORD LG.MNT!LG.RPT ; LEGAL BITS
006566 000000G .WORD .SCPST ; ROUTINE TO CALL OR DATA
7448 ;
7449 006570 COMND$ RELOAD,LG.PRG,.SCRLD,RLD
001706 122 105 114 RLDMSG:: .ASCIZ %RELOAD%
001711 117 101 104
001714 000
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 188-2
.SETTB -- THE SET / CLEAR COMMAND TABLE 7703.25
006570 001706' .WORD RLDMSG ; POINTER TO "RELOAD" SYMBOL
006572 000002 .WORD LG.PRG ; LEGAL BITS
006574 000000G .WORD .SCRLD ; ROUTINE TO CALL OR DATA
7450 ;
7451 006576 COMND$ REPEAT,LG.OPR,.SCRPT,RPT
006576 000543' .WORD RPTMSG ; POINTER TO "REPEAT" SYMBOL
006600 000001 .WORD LG.OPR ; LEGAL BITS
006602 000000G .WORD .SCRPT ; ROUTINE TO CALL OR DATA
7452 ;
7453 006604 COMND$ RETRY,<LG.PRG!LG.MNT>,.SCRTY,RTY
001715 122 105 124 RTYMSG:: .ASCIZ %RETRY%
001720 122 131 000
006604 001715' .WORD RTYMSG ; POINTER TO "RETRY" SYMBOL
006606 000006 .WORD LG.PRG!LG.MNT ; LEGAL BITS
006610 000000G .WORD .SCRTY ; ROUTINE TO CALL OR DATA
7454 ;
7456 006612 COMND$ TRACKS,LG.PRG,.SCTRK,TRK
001723 124 122 101 TRKMSG:: .ASCIZ %TRACKS%
001726 103 113 123
001731 000
006612 001723' .WORD TRKMSG ; POINTER TO "TRACKS" SYMBOL
006614 000002 .WORD LG.PRG ; LEGAL BITS
006616 000000G .WORD .SCTRK ; ROUTINE TO CALL OR DATA
7457 ;
7459 006620 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 189
.SPETB -- SPECIAL ERROR CODE TABLE 7702.16
7461 .SBTTL .SPETB -- SPECIAL ERROR CODE TABLE 7702.16
7462
7463 006622 .SPETB::
7464 006622 SPERR$ AMB,<AMBIGUOUS KEYWORD ">
003714 101 115 102 .ASCIZ %AMB - AMBIGUOUS KEYWORD "%
003717 040 055 040
003722 101 115 102
003725 111 107 125
003730 117 125 123
003733 040 113 105
003736 131 127 117
003741 122 104 040
003744 042 000
006622 004112 .RAD50 /AMB/ ; "AMB" IN .RAD50
006624 000520' .WORD .SEAMB ; DISPATCH TO HANDLER
006626 003714' .WORD AMBERM ; POINTER TO MESSAGE
7465 ;
7466 006630 SPERR$ CES,<CLOCK ERROR STOP - >
003746 103 105 123 .ASCIZ %CES - CLOCK ERROR STOP - %
003751 040 055 040
003754 103 114 117
003757 103 113 040
003762 105 122 122
003765 117 122 040
003770 123 124 117
003773 120 040 055
003776 040 000
006630 011633 .RAD50 /CES/ ; "CES" IN .RAD50
006632 000756' .WORD .SECES ; DISPATCH TO HANDLER
006634 003746' .WORD CESERM ; POINTER TO MESSAGE
7467 ;
7468 006636 SPERR$ FRF,<FUNCTION READ >
004000 106 122 106 .ASCIZ %FRF - FUNCTION READ %
004003 040 055 040
004006 106 125 116
004011 103 124 111
004014 117 116 040
004017 122 105 101
004022 104 040 000
006636 024126 .RAD50 /FRF/ ; "FRF" IN .RAD50
006640 000606' .WORD .SEFRF ; DISPATCH TO HANDLER
006642 004000' .WORD FRFERM ; POINTER TO MESSAGE
7469 006644 SPERR$ FWF,<FUNCTION WRITE >
004025 106 127 106 .ASCIZ %FWF - FUNCTION WRITE %
004030 040 055 040
004033 106 125 116
004036 103 124 111
004041 117 116 040
004044 127 122 111
004047 124 105 040
004052 000
006644 024436 .RAD50 /FWF/ ; "FWF" IN .RAD50
006646 000614' .WORD .SEFWF ; DISPATCH TO HANDLER
006650 004025' .WORD FWFERM ; POINTER TO MESSAGE
7470 006652 SPERR$ FXF,<FUNCTION EXECUTE >
004053 106 130 106 .ASCIZ %FXF - FUNCTION EXECUTE %
004056 040 055 040
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 189-1
.SPETB -- SPECIAL ERROR CODE TABLE 7702.16
004061 106 125 116
004064 103 124 111
004067 117 116 040
004072 105 130 105
004075 103 125 124
004100 105 040 000
006652 024506 .RAD50 /FXF/ ; "FXF" IN .RAD50
006654 000622' .WORD .SEFXF ; DISPATCH TO HANDLER
006656 004053' .WORD FXFERM ; POINTER TO MESSAGE
7471 ;
7472 006660 SPERR$ ILC,<ILLEGAL CHARACTER ">
004103 111 114 103 .ASCIZ %ILC - ILLEGAL CHARACTER "%
004106 040 055 040
004111 111 114 114
004114 105 107 101
004117 114 040 103
004122 110 101 122
004125 101 103 124
004130 105 122 040
004133 042 000
006660 035043 .RAD50 /ILC/ ; "ILC" IN .RAD50
006662 000544' .WORD .SEILC ; DISPATCH TO HANDLER
006664 004103' .WORD ILCERM ; POINTER TO MESSAGE
7473 006666 SPERR$ ILS,<ILLEGAL SEPARATOR CHARACTER ">
004135 111 114 123 .ASCIZ %ILS - ILLEGAL SEPARATOR CHARACTER "%
004140 040 055 040
004143 111 114 114
004146 105 107 101
004151 114 040 123
004154 105 120 101
004157 122 101 124
004162 117 122 040
004165 103 110 101
004170 122 101 103
004173 124 105 122
004176 040 042 000
006666 035063 .RAD50 /ILS/ ; "ILS" IN .RAD50
006670 000544' .WORD .SEILS ; DISPATCH TO HANDLER
006672 004135' .WORD ILSERM ; POINTER TO MESSAGE
7474 006674 SPERR$ IPC,<ILLEGAL PASSWORD CHARACTER ">
004201 111 120 103 .ASCIZ %IPC - ILLEGAL PASSWORD CHARACTER "%
004204 040 055 040
004207 111 114 114
004212 105 107 101
004215 114 040 120
004220 101 123 123
004223 127 117 122
004226 104 040 103
004231 110 101 122
004234 101 103 124
004237 105 122 040
004242 042 000
006674 035303 .RAD50 /IPC/ ; "IPC" IN .RAD50
006676 000544' .WORD .SEIPC ; DISPATCH TO HANDLER
006700 004201' .WORD IPCERM ; POINTER TO MESSAGE
7475 ;
7476 006702 SPERR$ NSK,<NO SUCH KEYWORD ">
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 189-2
.SPETB -- SPECIAL ERROR CODE TABLE 7702.16
004244 116 123 113 .ASCIZ %NSK - NO SUCH KEYWORD "%
004247 040 055 040
004252 116 117 040
004255 123 125 103
004260 110 040 113
004263 105 131 127
004266 117 122 104
004271 040 042 000
006702 055203 .RAD50 /NSK/ ; "NSK" IN .RAD50
006704 000520' .WORD .SENSK ; DISPATCH TO HANDLER
006706 004244' .WORD NSKERM ; POINTER TO MESSAGE
7477 ;
7478 006710 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 190
.STRTB -- THE START COMMAND TABLE 7602.26
7480 .SBTTL .STRTB -- THE START COMMAND TABLE 7602.26
7481
7482 006712 .STRTB::
7483 006712 COMND$ TEN,<LG.PRG!LG.RPT>,.STRTT,TEN
006712 000765' .WORD TENMSG ; POINTER TO "TEN" SYMBOL
006714 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006716 000000G .WORD .STRTT ; ROUTINE TO CALL OR DATA
7484 ;
7485 006720 COMND$ MICROCODE,<LG.PRG!LG.RPT>,.STRTU,UCD
001732 115 111 103 UCDMSG:: .ASCIZ %MICROCODE%
001735 122 117 103
001740 117 104 105
001743 000
006720 001732' .WORD UCDMSG ; POINTER TO "MICROCODE" SYMBOL
006722 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006724 000000G .WORD .STRTU ; ROUTINE TO CALL OR DATA
7486 ;
7487 006726 000000 .WORD 0 ; END OF TABLE MARKER
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 191
.WHATB -- THE WHAT COMMAND TABLE 7703.25
7489 .SBTTL .WHATB -- THE WHAT COMMAND TABLE 7703.25
7490
7491 006730 .WHATB::
7492 006730 COMND$ AC-BLOCK,<LG.MNT>,.WHACB,ACB
006730 001545' .WORD ACBMSG ; POINTER TO "AC-BLOCK" SYMBOL
006732 000004 .WORD LG.MNT ; LEGAL BITS
006734 000000G .WORD .WHACB ; ROUTINE TO CALL OR DATA
7493 ;
7494 006736 COMND$ AUTO-TAKE,LG.OPR,.WHTAK,AUT
006736 001556' .WORD AUTMSG ; POINTER TO "AUTO-TAKE" SYMBOL
006740 000001 .WORD LG.OPR ; LEGAL BITS
006742 000000G .WORD .WHTAK ; ROUTINE TO CALL OR DATA
7495 ;
7496 006744 COMND$ CLOCK,<LG.PRG!LG.RPT>,.WHTCL,CLK
006744 001570' .WORD CLKMSG ; POINTER TO "CLOCK" SYMBOL
006746 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
006750 000000G .WORD .WHTCL ; ROUTINE TO CALL OR DATA
7497 ;
7498 006752 COMND$ CONSOLE,LG.OPR,.WHCON,CON
006752 001576' .WORD CONMSG ; POINTER TO "CONSOLE" SYMBOL
006754 000001 .WORD LG.OPR ; LEGAL BITS
006756 000000G .WORD .WHCON ; ROUTINE TO CALL OR DATA
7499 ;
7500 006760 COMND$ DATE,<LG.ALL!LG.RPT>,.WHDAT,DAT
006760 001606' .WORD DATMSG ; POINTER TO "DATE" SYMBOL
006762 000407 .WORD LG.ALL!LG.RPT ; LEGAL BITS
006764 000000G .WORD .WHDAT ; ROUTINE TO CALL OR DATA
7501 ;
7502 006766 COMND$ FAULT-CONTINUE,LG.ALL,.WHREC,FLT
006766 001613' .WORD FLTMSG ; POINTER TO "FAULT-CONTINUE" SYMBOL
006770 000007 .WORD LG.ALL ; LEGAL BITS
006772 000000G .WORD .WHREC ; ROUTINE TO CALL OR DATA
7503 ;
7504 006774 COMND$ HARDWARE,LG.OPR,.WHRDW,HAR
001744 110 101 122 HARMSG:: .ASCIZ %HARDWARE%
001747 104 127 101
001752 122 105 000
006774 001744' .WORD HARMSG ; POINTER TO "HARDWARE" SYMBOL
006776 000001 .WORD LG.OPR ; LEGAL BITS
007000 000000G .WORD .WHRDW ; ROUTINE TO CALL OR DATA
7505 ;
7506 007002 COMND$ INCREMENT,LG.OPR,.WHINC,INC
007002 000716' .WORD INCMSG ; POINTER TO "INCREMENT" SYMBOL
007004 000001 .WORD LG.OPR ; LEGAL BITS
007006 000000G .WORD .WHINC ; ROUTINE TO CALL OR DATA
7507 ;
7508 007010 COMND$ KLINIK,LG.ALL,.WHKLN,KLI
007010 001632' .WORD KLIMSG ; POINTER TO "KLINIK" SYMBOL
007012 000007 .WORD LG.ALL ; LEGAL BITS
007014 000000G .WORD .WHKLN ; ROUTINE TO CALL OR DATA
7509 ;
7510 007016 COMND$ MEMORY,LG.OPR,.WHMEM,MEM
007016 001641' .WORD MEMMSG ; POINTER TO "MEMORY" SYMBOL
007020 000001 .WORD LG.OPR ; LEGAL BITS
007022 000000G .WORD .WHMEM ; ROUTINE TO CALL OR DATA
7511 ;
7512 007024 COMND$ OFFSET,LG.PRG,.WHOFS,OFS
TABLE -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 191-1
.WHATB -- THE WHAT COMMAND TABLE 7703.25
007024 001654' .WORD OFSMSG ; POINTER TO "OFFSET" SYMBOL
007026 000002 .WORD LG.PRG ; LEGAL BITS
007030 000000G .WORD .WHOFS ; ROUTINE TO CALL OR DATA
7513 ;
7514 007032 COMND$ OUTPUT,LG.OPR,.WHOUT,OUT
007032 001663' .WORD OUTMSG ; POINTER TO "OUTPUT" SYMBOL
007034 000001 .WORD LG.OPR ; LEGAL BITS
007036 000000G .WORD .WHOUT ; ROUTINE TO CALL OR DATA
7515 ;
7516 007040 COMND$ PARITY-STOP,<LG.PRG!LG.RPT>,.WHTPS,PST
007040 001672' .WORD PSTMSG ; POINTER TO "PARITY-STOP" SYMBOL
007042 000402 .WORD LG.PRG!LG.RPT ; LEGAL BITS
007044 000000G .WORD .WHTPS ; ROUTINE TO CALL OR DATA
7517 ;
7518 007046 COMND$ RELOAD,LG.PRG,.WHRLD,RLD
007046 001706' .WORD RLDMSG ; POINTER TO "RELOAD" SYMBOL
007050 000002 .WORD LG.PRG ; LEGAL BITS
007052 000000G .WORD .WHRLD ; ROUTINE TO CALL OR DATA
7519 ;
7520 007054 COMND$ REPEAT,LG.OPR,.WHRPT,RPT
007054 000543' .WORD RPTMSG ; POINTER TO "REPEAT" SYMBOL
007056 000001 .WORD LG.OPR ; LEGAL BITS
007060 000000G .WORD .WHRPT ; ROUTINE TO CALL OR DATA
7521 ;
7522 007062 COMND$ RETRY,<LG.PRG!LG.MNT>,.WHRTY,RTY
007062 001715' .WORD RTYMSG ; POINTER TO "RETRY" SYMBOL
007064 000006 .WORD LG.PRG!LG.MNT ; LEGAL BITS
007066 000000G .WORD .WHRTY ; ROUTINE TO CALL OR DATA
7523 ;
7525 007070 COMND$ TRACKS,LG.PRG,.WHTRK,TRK
007070 001723' .WORD TRKMSG ; POINTER TO "TRACKS" SYMBOL
007072 000002 .WORD LG.PRG ; LEGAL BITS
007074 000000G .WORD .WHTRK ; ROUTINE TO CALL OR DATA
7526 ;
7528 007076 COMND$ VERSION,LG.OPR,.WHATV,VER
001755 126 105 122 VERMSG:: .ASCIZ %VERSION%
001760 123 111 117
001763 116 000
007076 001755' .WORD VERMSG ; POINTER TO "VERSION" SYMBOL
007100 000001 .WORD LG.OPR ; LEGAL BITS
007102 000000G .WORD .WHATV ; ROUTINE TO CALL OR DATA
7529 ;
7530 007104 000000 .WORD 0 ; END OF TABLE MARKER
7531 011114 .PSECT
7532
7533 000000 $$PASS2=0
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 193
.WHATB -- THE WHAT COMMAND TABLE 7703.25
7536 .TITLE TPSIM -- TRIPLE PRECISION ARITHMETIC SIMULATOR MODULE 7603.30
7537
7538 .IDENT "005000"
7539
7540 ;
7541 ; COPYRIGHT (C) 1975, 1979 BY
7542 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
7543 ;
7544 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
7545 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
7546 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
7547 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
7548 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
7549 ;
7550 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
7551 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
7552 ; CORPORATION.
7553 ;
7554 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
7555 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
7556 ;
7557 ; MODULE: TRIPLE PRECISION ARITHMETIC SIMULATOR
7558 ;
7559 ; VERSION: 05-00
7560 ;
7561 ; AUTHOR: R. BELANGER
7562 ;
7563 ; DATE: 7603.30
7564 ;
7565 ; THIS MODULE CONTAINS:
7566 ;
7567 ; 1) TRIPLE PRECISION ARITHMETIC SIMULATOR
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 194
.SHIFT -- 16 BIT BY 16 BIT SHIFT OPERATIONS 7603.30
7569 .SBTTL .SHIFT -- 16 BIT BY 16 BIT SHIFT OPERATIONS 7603.30
7570
7571 ;+
7572 ; .SHIFT -- 16 BIT BY 16 BIT SHIFT OPERATIONS
7573 ;
7574 ; THIS SUBROUTINE SHIFTS THE NUMBER IN R0 AS SPECIFIED BY THE SHIFT
7575 ; COUNT IN R1.
7576 ;
7577 ; INPUT ARGUMENTS:
7578 ;
7579 ; R0 HOLDS THE NUMBER TO BE SHIFTED
7580 ; R1 HOLDS A 16 BIT SHIFT COUNT
7581 ;
7582 ; OUTPUT ARGUMENTS:
7583 ;
7584 ; R0 HOLDS THE SHIFTED NUMBER
7585 ; R1 HOLDS THE SHIFT COUNT
7586 ;
7587 ; ERROR CODES RETURNED:
7588 ;
7589 ; NONE
7590 ;-
7591
7592 011114 .SHIFT::
7593 011114 PUSH R1 ; SAVE R1 ON THE STACK
011114 010146 MOV R1,-(SP)
7594 011116 001407 BEQ 30$ ; .EXIT IF .EQ. 0
7595 011120 002403 BLT 20$ ; .SHIFT RIGHT IF NEGATIVE
7596 011122 10$:
7597 011122 006300 ASL R0 ; .SHIFT IT LEFT
7598 011124 077102 SOB R1,10$ ; .TILL COUNT IS EXHAUSTED
7599 011126 000403 BR 30$ ; .EXIT
7600 ;
7601 011130 20$:
7602 011130 006200 ASR R0 ; .SHIFT IT RIGHT
7603 011132 005201 INC R1 ; .COUNT THE SHIFT
7604 011134 001375 BNE 20$ ; .TILL COUNT EXHAUSTED
7605 011136 30$:
7606 011136 POP R1 ; .RESTORE R1 FROM THE STACK
011136 012601 MOV (SP)+,R1
7607 011140 000241 CLC ; CLEAR CC-C
7608 011142 RETURN ; RETURN
011142 000207 RTS PC
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 195
.TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE 7601.19
7610 .SBTTL .TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE 7601.19
7611
7612 ;+
7613 ; .TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE.
7614 ;
7615 ; THIS SUBROUTINE WILL DIVIDE THE 48 BIT DIVIDEND POINTED TO BY R0
7616 ; BY THE 48 BIT DIVISOR POINTED TO BY R1 IN THE CALL. ON RETURN,
7617 ; R0 POINTS TO A 48 BIT QUOTIENT, AND R2 POINTS TO A 48 BIT REMAINDER.
7618 ;
7619 ; INPUT ARGUMENTS:
7620 ;
7621 ; R0 POINTS TO THE DIVIDEND
7622 ; R1 POINTS TO THE DIVISOR
7623 ;
7624 ; OUTPUT ARGUMENTS:
7625 ;
7626 ; R0 POINTS TO THE QUOTIENT
7627 ; R1 POINTS TO THE REMAINDER
7628 ; THE DIVISOR AND DIVIDEND ARE DESTROYED
7629 ;
7630 ; ERROR CODES RETURNED:
7631 ;
7632 ; DCK -- DIVIDE CHECK.
7633 ;-
7634
7635 007106 .PSECT DATA
7636
7637 007106 TPDRMN:
7638 007106 000000 000000 000000 .WORD 0,0,0 ; SPACE FOR REMAINDER
7639 007114 TPDDVS:
7640 007114 000000 000000 000000 .WORD 0,0,0 ; SPACE FOR DIVISOR
7641 007122 TPDDVD:
7642 007122 000000 000000 000000 .WORD 0,0,0 ; SPACE FOR DIVIDEND / QUOTIENT
7643
7644 011144 .PSECT
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 196
.TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE 7601.19
7646 .ENABL LSB
7647
7648 011144 .TPDIV::
7649 011144 PUSH <R3,R2,R1,R0> ; SAVE CALLER'S REGISTERS
011144 010346 MOV R3,-(SP)
011146 010246 MOV R2,-(SP)
011150 010146 MOV R1,-(SP)
011152 010046 MOV R0,-(SP)
7650 011154 CALL .TPXTN ; ....SIGN EXTEND THE DIVIDEND
011154 004737 011404' JSR PC,.TPXTN
7651 011160 010100 MOV R1,R0 ; ....POINT TO THE DIVISOR
7652 011162 CALL .TPXTN ; ....AND SIGN EXTEND IT
011162 004737 011404' JSR PC,.TPXTN
7653 011166 CALL .TPTST ; ....SEE IF IT IS ZERO OR NEGATIVE
011166 004737 011460' JSR PC,.TPTST
7654 011172 003466 BLE TPDDCK ; ....YES -- GIVE "DCK" ERROR
7655 011174 011600 MOV (SP),R0 ; ....NO -- RESTORE DIVIDEND POINTER
7656 011176 012703 000060 MOV #^D48,R3 ; ....ITERATION COUNT TO R3
7657 011202 012702 007106' MOV #TPDRMN,R2 ; ....DATA BLOCK POINTER TO R2
7658 011206 005022 CLR (R2)+ ; ....CLEAR THE REMAINDER
7659 011210 005022 CLR (R2)+ ; ....
7660 011212 005022 CLR (R2)+ ; ....
7661 011214 012122 MOV (R1)+,(R2)+ ; ....LOAD THE DIVISOR
7662 011216 012122 MOV (R1)+,(R2)+ ; ....
7663 011220 012122 MOV (R1)+,(R2)+ ; ....
7664 011222 012022 MOV (R0)+,(R2)+ ; ....LOAD THE DIVIDEND
7665 011224 012022 MOV (R0)+,(R2)+ ; ....
7666 011226 012022 MOV (R0)+,(R2)+ ; ....
7667 011230 012700 007106' MOV #TPDRMN,R0 ; ....REMAINDER POINTER TO R0
7668 011234 012701 007114' MOV #TPDDVS,R1 ; ....DIVISOR POINTER TO R1
7669 011240 012702 007122' MOV #TPDDVD,R2 ; ....DIVIDEND POINTER TO R2
7670
7671 ; [CONTINUED ON THE FOLLOWING PAGE]
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 197
.TPDIV -- 48 BIT INTEGER DIVIDE SUBROUTINE 7601.19
7673 ; [CONTINUED FROM THE PREVIOUS PAGE]
7674
7675 011244 10$:
7676 011244 006312 ASL (R2) ; ....SHIFT THE DIVIDEND LEFT
7677 011246 006162 000002 ROL 2(R2) ; ....
7678 011252 006162 000004 ROL 4(R2) ; ....
7679 011256 006110 ROL (R0) ; ....INTO THE REMAINDER
7680 011260 006160 000002 ROL 2(R0) ; ....
7681 011264 006160 000004 ROL 4(R0) ; ....
7682 011270 CALL .TPCMP ; ....SEE IF REMAINDER IS .GE. DIVISOR
011270 004737 011424' JSR PC,.TPCMP
7683 011274 103407 BLO 20$ ; ....NO -- JUST KEEP GOING
7684 011276 CALL .TPSUB ; ....YES -- SUBTRACT DIVISOR FROM REMAINDER
011276 004737 011546' JSR PC,.TPSUB
7685 011302 PUSH R0 ; ....SAVE REMAINDER POINTER
011302 010046 MOV R0,-(SP)
7686 011304 010200 MOV R2,R0 ; .....QUOTIENT POINTER TO R0
7687 011306 CALL .TPINC ; .....INCREMENT THE QUOTIENT
011306 004737 011522' JSR PC,.TPINC
7688 011312 POP R0 ; .....RESTORE REMAINDER POINTER
011312 012600 MOV (SP)+,R0
7689 011314 20$:
7690 011314 077325 SOB R3,10$ ; ....LOOP TILL COUNT IS EXHAUSTED
7691 011316 POP <R0,R1> ; ....GET R0 AND R1 FROM THE STACK
011316 012600 MOV (SP)+,R0
011320 012601 MOV (SP)+,R1
7692 011322 012220 MOV (R2)+,(R0)+ ; ..UNLOAD THE QUOTIENT
7693 011324 012220 MOV (R2)+,(R0)+ ; ..
7694 011326 011210 MOV (R2),(R0) ; ..
7695 011330 012702 007106' MOV #TPDRMN,R2 ; ..POINT TO THE REMAINDER
7696 011334 012221 MOV (R2)+,(R1)+ ; ..UNLOAD THE REMAINDER
7697 011336 012221 MOV (R2)+,(R1)+ ; ..
7698 011340 011211 MOV (R2),(R1) ; ..
7699 011342 POP <R2,R3> ; ..RESTORE OTHER REGISTERS
011342 012602 MOV (SP)+,R2
011344 012603 MOV (SP)+,R3
7700 011346 000506 BR 50$ ; AND GO AWAY
7701 ;
7702 011350 TPDDCK:
7703 011350 ERROR$ DCK ; ERROR -- DIVIDE CHECK
011350 012746 014603 MOV #^RDCK,-(SP)
011354 104400 TRAP TC.ERR
7704 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 198
.TPCLR -- SUBROUTINE TO CLEAR A 48 BIT NUMBER 7601.19
7706 .SBTTL .TPCLR -- SUBROUTINE TO CLEAR A 48 BIT NUMBER 7601.19
7707
7708 ;+
7709 ; .TPCLR -- SUBROUTINE TO CLEAR A 48 BIT NUMBER
7710 ; .TPCOM -- SUBROUTINE TO COMPLEMENT A 48 BIT NUMBER.
7711 ; .TPNEG -- SUBROUTINE TO NEGATE A 48 BIT NUMBER.
7712 ; .TPXTN -- SUBROUTINE TO SIGN EXTEND A 36 BIT NUMBER INTO A 48 BIT NUMBER
7713 ;
7714 ; THESE SUBROUTINE PERFORM THE FUNCTIONS INDICATED. ALL SUBROUTINES
7715 ; ACCEPT A DESTINATION POINTER IN R0. ALL SUBROUTINES
7716 ; RETURN THE POINTER UNALTERED. NO OTHER REGISTERS ARE ALTERED
7717 ; BY THESE ROUTINES.
7718 ;
7719 ; INPUT ARGUMENTS:
7720 ;
7721 ; R0 POINTS TO THE DESTINATION OPERAND
7722 ;
7723 ; OUTPUT ARGUMENTS:
7724 ;
7725 ; R0 POINTS TO THE DESINATION OPERAND
7726 ;
7727 ; ERROR CODES RETURNED:
7728 ;
7729 ; NONE.
7730 ;-
7731
7732 011356 .TPCLR:: ; CLEAR A 48 BIT WORD
7733 011356 005020 CLR (R0)+ ; SO
7734 011360 005020 CLR (R0)+
7735 011362 005010 CLR (R0)
7736 011364 000500 BR 60$ ; RESET R0 AND RETURN
7737 ;
7738
7739 011366 .TPCOM:: ; COMPLEMENT A 48 BIT NUMBER
7740 011366 005120 COM (R0)+ ; COMPLEMENT
7741 011370 005120 COM (R0)+ ; EACH WORD
7742 011372 005110 COM (R0) ; IN THE TRIPLET
7743 011374 000474 BR 60$ ; RESET R0 AND RETURN
7744 ;
7745
7746 011376 .TPNEG:: ; NEGATE A 48 BIT NUMBER
7747 011376 CALL .TPCOM ; FIRST COMPLEMENT THE NUMBER
011376 004737 011366' JSR PC,.TPCOM
7748 011402 000447 BR .TPINC ; -0 + NOT(0)+1 AND RETURN
7749 ;
7750
7751 011404 .TPXTN::
7752 011404 032760 000010 000004 BIT #10,4(R0) ; TEST THE SIGN BIT
7753 011412 001466 BEQ 70$ ; EXIT IF POSITIVE
7754 011414 052760 177760 000004 BIS #^C17,4(R0) ; SIGN EXTEND IF NEGATIVE
7755 011422 000462 BR 70$ ; EXIT
7756 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 199
.TPCMP -- SUBROUTINE TO COMPARE TWO 48 BIT NUMBERS 7610.19
7758 .SBTTL .TPCMP -- SUBROUTINE TO COMPARE TWO 48 BIT NUMBERS 7610.19
7759
7760 ;+
7761 ; .TPCMP -- SUBROUTINE TO COMPARE TWO 48 BIT NUMBERS.
7762 ;
7763 ; THIS SUBROUTINE WILL COMPARE THE 48 BIT NUMBER POINTED TO BY
7764 ; R0 AND THE 48 BIT NUMBER POINTED TO BY R1 IN THE CALL.
7765 ;
7766 ; INPUT ARGUMENTS:
7767 ;
7768 ; R0 POINTS TO THE FIRST NUMBER
7769 ; R1 POINTS TO THE SECOND NUMBER
7770 ;
7771 ; OUTPUT ARGUMENTS:
7772 ;
7773 ; R0 POINTS TO THE FIRST NUMBER
7774 ; R1 POINTS TO THE SECOND NUMBER
7775 ; CC-N IS SET IF (R0) .LT. (R1)
7776 ; CC-Z IS SET IF (R0) .EQ. (R1)
7777 ; CC-Z IS CLEAR IF (R0) .GT. (R1)
7778 ;
7779 ; ERROR CODES RETURNED:
7780 ;
7781 ; NONE.
7782 ;-
7783
7784 011424 .TPCMP:: ; COMPARE TWO 48 BIT NUMBERS
7785 011424 026061 000004 000004 CMP 4(R0),4(R1) ; COMPARE THE HIGH WORDS
7786 011432 001056 BNE 70$ ; NOT EQUAL -- EXIT
7787 011434 026061 000002 000002 CMP 2(R0),2(R1) ; COMPARE THE MIDDLE WORDS
7788 011442 001001 BNE 30$ ; NOT EQUAL -- EXIT
7789 011444 021011 CMP (R0),(R1) ; COMPARE THE LOW WORDS
7790 011446 30$:
7791 011446 000250 CLN ; CLEAR CC-N
7792 011450 000242 CLV ; CLEAR CC-V
7793 011452 103046 BCC 70$ ; BRANCH IF NON-NEGATIVE
7794 011454 000270 SEN ; NEGATIVE -- SET CC-N
7795 011456 000444 BR 70$ ; EXIT
7796 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 200
.TPTST -- TEST A 48 BIT NUMBER FOR ZERO 7601.19
7798 .SBTTL .TPTST -- TEST A 48 BIT NUMBER FOR ZERO 7601.19
7799
7800 ;+
7801 ; .TPTST -- TEST A 48 BIT NUMBER FOR ZERO.
7802 ;
7803 ; THIS SUBROUTINE WILL TEST THE 48 BIT NUMBER POINTED TO BY R0 TO
7804 ; SEE IF IT ZERO OR NON-ZERO. IF THE NUMBER IS ZERO, CC-Z IS SET
7805 ; ON RETURN, IF NON-ZERO, CC-Z IS CLEAR SET ON RETURN.
7806 ; NO REGISTERS ARE ALTERED BY THIS SUBROUTINE.
7807 ;
7808 ; INPUT ARGUMENTS:
7809 ;
7810 ; R0 POINTS TO THE NUMBER TO BE TESTED
7811 ;
7812 ; OUTPUT ARGUMENTS:
7813 ;
7814 ; R0 POINTS TO THE TESTED NUMBER
7815 ; CC-Z IS SET IF THE NUMBER IS ZERO
7816 ; CC-Z IS CLEAR IF THE NUMBER IS NON-ZERO
7817 ;
7818 ; ERROR CODES RETURNED:
7819 ;
7820 ; NONE.
7821 ;-
7822
7823 011460 .TPTST:: ; TEST A TRIPLE PRECISION NUMBER FOR ZERO
7824 011460 005760 000004 TST 4(R0) ; TEST THE HIGH WORD
7825 011464 001041 BNE 70$ ; NON ZERO?
7826 011466 005760 000002 TST 2(R0) ; TEST THE MIDDLE WORD
7827 011472 001001 BNE 40$ ; NON ZERO?
7828 011474 005710 TST (R0) ; TEST THE LOW WORD
7829 011476 40$:
7830 011476 000250 CLN ; CLEAR CC-N
7831 011500 000433 BR 70$ ; EXIT
7832 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 201
.TPADD -- SUBROUTINE TO ADD TWO 48 BIT NUMBERS 7601.15
7834 .SBTTL .TPADD -- SUBROUTINE TO ADD TWO 48 BIT NUMBERS 7601.15
7835
7836 ;+
7837 ; .TPADD -- SUBROUTINE TO ADD TWO 48 BIT NUMBERS.
7838 ;
7839 ; THIS SUBROUTINE ADDS TWO 48 BIT ADDENDS WHICH ARE POINTED TO BY
7840 ; R0 AND R1 IN THE CALL, AND RETURNS A POINTER TO THE SUM IN R0.
7841 ; THE ADDEND POINTED TO BY R1 IS ADDED TO THAT POINTED TO BY R0.
7842 ;
7843 ; INPUT ARGUMENTS:
7844 ;
7845 ; R0 POINTS TO THE FIRST ADDEND
7846 ; R1 POINTS TO THE SECOND ADDEND
7847 ;
7848 ; OUTPUT ARGUMENTS:
7849 ;
7850 ; R0 POINTS TO THE SUM
7851 ; R1 POINTS TO THE SECOND ADDEND
7852 ;
7853 ; ERROR CODES RETURNED:
7854 ;
7855 ; NONE.
7856 ;-
7857
7858 011502 .TPADD::
7859 011502 062120 ADD (R1)+,(R0)+ ; ADD LOW ORDER PARTS
7860 011504 005510 ADC (R0) ; CARRY ANY OVERFLOW
7861 011506 005560 000002 ADC 2(R0) ; AND ANY OVER FLOW FROM THAT
7862 011512 062120 ADD (R1)+,(R0)+ ; ADD MIDDLE WORD
7863 011514 005510 ADC (R0) ; FIX CARRIES
7864 011516 061110 ADD (R1),(R0) ; ADD HIGH ORDER PARTS
7865 011520 000421 BR 50$ ; RESET REGISTERS ANS EXIT
7866 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 202
.TPINC -- SUBROUTINE TO INCREMENT A 48 BIT NUMBER 7601.19
7868 .SBTTL .TPINC -- SUBROUTINE TO INCREMENT A 48 BIT NUMBER 7601.19
7869
7870 ;+
7871 ; .TPINC -- SUBROUTINE TO INCREMENT A 48 BIT NUMBER.
7872 ; .TPDEC -- SUBROUTINE TO DECREMENT A 48 BIT NUMBER.
7873 ;
7874 ; THESE SUBROUTINES WILL INCREMENT OR DECREMENT A 48 BIT NUMBER
7875 ; POINTED TO BY R0 IN THE CALL. ON RETURN, THE POINTER IN R0 IS
7876 ; UNCHANGED. NO OTHER REGISTERS ARE ALTERED BY THESE SUBROUTINES.
7877 ;
7878 ; INPUT ARGUMENTS:
7879 ;
7880 ; R0 POINTS TO THE OPERAND
7881 ;
7882 ; OUTPUT ARGUMENTS:
7883 ;
7884 ; R0 POINTS TO THE OPERAND
7885 ;
7886 ; ERROR CODES RETURNED:
7887 ;
7888 ; NONE.
7889 ;-
7890
7891 011522 .TPINC:: ; INCREMENT A 48 BIT NUMBER
7892 011522 062720 000001 ADD #1,(R0)+ ; DO THE INCREMENT
7893 011526 005520 ADC (R0)+ ; AND CARRY THE CARRIES
7894 011530 005510 ADC (R0)
7895 011532 000415 BR 60$ ; AND EXIT
7896 ;
7897
7898 011534 .TPDEC:: ; DECREMENT A 48 BIT NUMBER
7899 011534 162720 000001 SUB #1,(R0)+ ; DO THE DECREMENT
7900 011540 005620 SBC (R0)+ ; AND STRAIGHTEN OUT THE CARRIES
7901 011542 005610 SBC (R0)
7902 011544 000410 BR 60$ ; ADJUST R0 AND RETURN
7903 ;
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 203
.TPSUB -- SUBROUTINE TO SUBTRACT TWO 48 BIT NUMBERS 7601.15
7905 .SBTTL .TPSUB -- SUBROUTINE TO SUBTRACT TWO 48 BIT NUMBERS 7601.15
7906
7907 ;+
7908 ; .TPSUB -- SUBROUTINE TO SUBTRACT TWO 48 BIT NUMBERS.
7909 ;
7910 ; THIS SUBROUTINE WILL SUBTRACT TWO 48 BIT NUMBERS POINTED TO BY R0,
7911 ; (MINUEND), AND R1 (SUBTRAHEND) IN THE CALL, AND WILL RETURN A
7912 ; POINTER TO THE DIFFERENCE IN R0.
7913 ;
7914 ; INPUT ARGUMENTS:
7915 ;
7916 ; R0 POINTS TO THE MINUEND
7917 ; R1 POINTS TO THE SUBTRAHEND
7918 ;
7919 ; OUTPUT ARGUMENTS:
7920 ;
7921 ; R0 POINTS TO THE DIFFERENCE
7922 ; R1 POINTS TO THE SUBTRAHEND
7923 ;
7924 ; ERROR CODES RETURNED:
7925 ;
7926 ; NONE.
7927 ;-
7928
7929 011546 .TPSUB::
7930 011546 162120 SUB (R1)+,(R0)+ ; SUBTRACT LOW ORDER PARTS
7931 011550 005610 SBC (R0) ; CARRY ANY OVERFLOW
7932 011552 005660 000002 SBC 2(R0) ; AND ANY OVERFLOWS FROM THAT
7933 011556 162120 SUB (R1)+,(R0)+
7934 011560 005610 SBC (R0) ; FIX CARRIES
7935 011562 161110 SUB (R1),(R0) ; SUBTRACT HIGH ORDER PARTS
7936 011564 50$:
7937 011564 024141 CMP -(R1),-(R1) ; RESET R1
7938 011566 60$:
7939 011566 024040 CMP -(R0),-(R0) ; RESET R0
7940 011570 70$:
7941 011570 RETURN ; AND EXIT
011570 000207 RTS PC
7942
7943 .DSABL LSB
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 204
.TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE 7601.19
7945 .SBTTL .TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE 7601.19
7946
7947 ;+
7948 ; .TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE.
7949 ;
7950 ; THIS SUBROUTINE WILL MULTIPLY THE 48 BIT MULTIPLICAND POINTED
7951 ; TO BY R0 BY THE 48 BIT MULTIPLIER POINTER IN R1, AND RETURN A
7952 ; POINTER TO THE 48 BIT PRODUCT IN R0. THE MULTIPLIER IS UNCHANGED,
7953 ; AND NO OTHER REGISTERS ARE ALTERED BY THIS SUBROUTINE.
7954 ;
7955 ; INPUT ARGUMENTS:
7956 ;
7957 ; R0 POINTS TO THE MULTIPLICAND
7958 ; R1 POINTS TO THE MULTIPLIER
7959 ;
7960 ; OUTPUT ARGUMENTS:
7961 ;
7962 ; R0 POINTS TO THE PRODUCT
7963 ; R1 POINTS TO THE MULTIPLIER
7964 ;
7965 ; ERROR CODES RETURNED:
7966 ;
7967 ; NONE.
7968 ;-
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 205
.TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE 7601.19
7970 011572 .TPMUL::
7971 011572 PUSH <R2,R1,R0> ; SAVE CALLER'S REGISTERS
011572 010246 MOV R2,-(SP)
011574 010146 MOV R1,-(SP)
011576 010046 MOV R0,-(SP)
7972 011600 CALL .TPTST ; ...SEE IF MULTIPLICAND .EQ. 0
011600 004737 011460' JSR PC,.TPTST
7973 011604 001460 BEQ 50$ ; ...YES -- QUIT NOW
7974 011606 010100 MOV R1,R0 ; ...NO -- POINT TO MULTIPLIER
7975 011610 CALL .TPTST ; ...SEE IF IT IS .EQ. 0
011610 004737 011460' JSR PC,.TPTST
7976 011614 001004 BNE 10$ ; ...NO -- ALL OK
7977 011616 011600 MOV (SP),R0 ; ...YES -- GET MULTIPLICAND POINTER
7978 011620 CALL .TPCLR ; ...AND MAKE IT .EQ. 0
011620 004737 011356' JSR PC,.TPCLR
7979 011624 000450 BR 50$ ; ...RETURN TO CALLER
7980 ;
7981 011626 10$:
7982 011626 011600 MOV (SP),R0 ; ...R0 POINTS TO MULTIPLCAND
7983 011630 PUSH <(R1)+,(R1)+,(R1),R1>
011630 012146 MOV (R1)+,-(SP)
011632 012146 MOV (R1)+,-(SP)
011634 011146 MOV (R1),-(SP)
011636 010146 MOV R1,-(SP)
7984 011640 024141 CMP -(R1),-(R1) ; .......CALLER'S MULTIPLIER SAVED
7985 011642 010102 MOV R1,R2 ; .......R2 POINTS TO THE MULTIPLIER
7986 011644 010001 MOV R0,R1 ; .......R1 POINTS TO THE MULTIPLICAND
7987 011646 005046 CLR -(SP) ; .......CLEAR A BUFFER ON THE STACK
7988 011650 005046 CLR -(SP) ; ........
7989 011652 005046 CLR -(SP) ; .........
7990 011654 010600 MOV SP,R0 ; ..........R0 POINTS TO TEMPORARY RESULT
7991 011656 20$:
7992 011656 006062 000004 ROR 4(R2) ; ..........SHIFT THE MULTIPLIER RIGHT
7993 011662 006062 000002 ROR 2(R2) ; ..........
7994 011666 006012 ROR (R2) ; ..........
7995 011670 103002 BCC 30$ ; ..........DID WE GET A CARRY?
7996 011672 CALL .TPADD ; ..........YES -- ADD THE MULTIPLICAND
011672 004737 011502' JSR PC,.TPADD
7997 011676 30$:
7998 011676 006311 ASL (R1) ; ..........DOUBLE MULTIPLICAND IN ANY CASE
7999 011700 006161 000002 ROL 2(R1) ; ..........
8000 011704 006161 000004 ROL 4(R1) ; ..........
8001 011710 PUSH R0 ; ..........SAVE RESULT POINTER
011710 010046 MOV R0,-(SP)
8002 011712 010200 MOV R2,R0 ; ...........POINT TO MULTIPLIER
8003 011714 CALL .TPTST ; ...........IS IT .EQ. 0?
011714 004737 011460' JSR PC,.TPTST
8004 011720 001402 BEQ 40$ ; ...........YES -- SET UP FOR RETURN
8005 011722 POP R0 ; ...........NO -- RESTORE R0
011722 012600 MOV (SP)+,R0
8006 011724 000754 BR 20$ ; ..........AND CONTINUE
8007 ;
8008
8009 ; [CONTINUED ON THE FOLLOWING PAGE]
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 206
.TPMUL -- 48 BIT INTEGER MULTPLY SUBROUTINE 7601.19
8011 ; [CONTINUED FROM THE PREVIOUS PAGE]
8012
8013 ; HERE TO RETURN PRODUCT AND EXIT
8014
8015 011726 40$:
8016 011726 POP R0 ; ...........GET RID OF MULTIPLIER POINTER
011726 012600 MOV (SP)+,R0
8017 011730 POP <(R1)+,(R1)+,(R1)>
011730 012621 MOV (SP)+,(R1)+
011732 012621 MOV (SP)+,(R1)+
011734 012611 MOV (SP)+,(R1)
8018 011736 POP <R1,(R1),-(R1),-(R1)>
011736 012601 MOV (SP)+,R1
011740 012611 MOV (SP)+,(R1)
011742 012641 MOV (SP)+,-(R1)
011744 012641 MOV (SP)+,-(R1)
8019 011746 50$:
8020 011746 POP <R0,R1,R2> ; ...RESTORE REGISTERS
011746 012600 MOV (SP)+,R0
011750 012601 MOV (SP)+,R1
011752 012602 MOV (SP)+,R2
8021 011754 RETURN ; TO CALLER
011754 000207 RTS PC
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 207
.TPSHI -- SHIFT A 48 BIT NUMBER BY A 16 BIT NUMBER 7601.19
8023 .SBTTL .TPSHI -- SHIFT A 48 BIT NUMBER BY A 16 BIT NUMBER 7601.19
8024
8025 ;+
8026 ; .TPSHI -- SUBROUTINE TO SHIFT A 48 BIT NUMBER BY A 16 BIT NUMBER.
8027 ;
8028 ; THIS SUBROUTINE SHIFTS THE 48 BIT NUMBER POINTED TO BY R0 BY THE
8029 ; 16 BIT NUMBER IN R1 IN THE CALL. ON RETURN R0 POINTS TO THE SHIFTED
8030 ; 48 BIT NUMBER. THE DIRECTION OF THE SHIFT IS DETERMINED BY THE SIGN
8031 ; OF THE 16 BIT NUMBER IN R1. NO REGISTERS ARE ALTERED BY THIS ROUTINE.
8032 ;
8033 ; INPUT ARGUMENTS:
8034 ;
8035 ; R0 POINTS TO THE NUMBER TO BE SHIFTED
8036 ; R1 HOLDS THE 16 BIT SHIFT COUNT
8037 ;
8038 ; OUTPUT ARGUMENTS:
8039 ;
8040 ; R0 POINTS TO THE SHIFTED NUMBER
8041 ; R0 HOLDS THE 16 BIT SHIFT COUNT
8042 ;
8043 ; ERROR CODES RETURNED:
8044 ;
8045 ; NONE.
8046 ;-
8047
8048 011756 .TPSHI::
8049 011756 PUSH R1 ; SAVE R1 FROM DESTRUCTION
011756 010146 MOV R1,-(SP)
8050 011760 001416 BEQ 30$ ; .ON ZERO DO NOTHING
8051 011762 003002 BGT 10$ ; .REALLY MEANS LEFT
8052 011764 005401 NEG R1 ; .MEANS RIGHT, SO NEGATE
8053 011766 000406 BR 20$ ; .AND GO RIGHT
8054 ;
8055 011770 10$:
8056 011770 006320 ASL (R0)+ ; .CLEAR CC-C AND SHIFT
8057 011772 006120 ROL (R0)+ ; .USE CC-C AND SHIFT
8058 011774 006110 ROL (R0) ; .
8059 011776 024040 CMP -(R0),-(R0) ; .POINT BACK TO BEGINNING
8060 012000 077105 SOB R1,10$ ; .AND LOOP 'TILL DONE
8061 012002 000405 BR 30$ ; .DONE -- EXIT
8062 ;
8063 012004 20$: ; .HERE TO SHIFT RIGHT
8064 012004 022020 CMP (R0)+,(R0)+ ; .FIX POINTER TO POINT TO HIGH PART
8065 012006 006210 ASR (R0) ; .SHIFT HIGH PART
8066 012010 006040 ROR -(R0) ; .THEN MIDDLE PART
8067 012012 006040 ROR -(R0) ; .THEN LOW PART
8068 012014 077105 SOB R1,20$ ; .UNTIL DONE
8069 012016 30$:
8070 012016 POP R1 ; .RESTORE R1
012016 012601 MOV (SP)+,R1
8071 012020 RETURN ; AND RETURN TO CALLER
012020 000207 RTS PC
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 208
.TPSHL -- SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER 7601.19
8073 .SBTTL .TPSHL -- SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER 7601.19
8074
8075 ;+
8076 ; .TPSHL -- SUBROUTINE TO SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER.
8077 ;
8078 ; THIS SUBROUTINE WILL SHIFT THE 48 BIT NUMBER POINTED TO BY R0 BY
8079 ; THE 48 BIT NUMBER POINTED TO BY R1 IN THE CALL. BOTH POINTERS ARE
8080 ; RETURNED UNALTERED, AND NO OTHER REGISTERS ARE ALTERED BY THE
8081 ; SUBROUTINE. THE DIRECTION OF THE SHIFT IS DETERMINED BY THE SIGN
8082 ; OF THE 48 BIT NUMBER POINTED TO BY R1.
8083 ;
8084 ; INPUT ARGUMENTS:
8085 ;
8086 ; R0 POINTS TO THE NUMBER TO BE SHIFTED
8087 ; R1 POINTS TO THE SHIFT COUNT
8088 ;
8089 ; OUTPUT ARGUMENTS:
8090 ;
8091 ; R0 POINTS TO THE SHIFTED NUMBER
8092 ; R1 POINTS TO THE SHIFT COUNT
8093 ;
8094 ; ERROR CODES RETURNED:
8095 ;
8096 ; NONE.
8097 ;-
8098
8099 012022 .TPSHL::
8100 012022 PUSH <(R1)+,(R1)+,(R1),R1>
012022 012146 MOV (R1)+,-(SP)
012024 012146 MOV (R1)+,-(SP)
012026 011146 MOV (R1),-(SP)
012030 010146 MOV R1,-(SP)
8101 012032 024141 CMP -(R1),-(R1) ; ....BACK THE POINTER UP
8102 012034 PUSH <R2,R0> ; ....SAVE R2 AND R0
012034 010246 MOV R2,-(SP)
012036 010046 MOV R0,-(SP)
8103 012040 010100 MOV R1,R0 ; ......POINT TO THE SHIFT COUNT
8104 012042 CALL .TPXTN ; ......DO THE SIGN EXTENSION
012042 004737 011404' JSR PC,.TPXTN
8105 012046 CALL .TPTST ; ......SEE WHAT IT IS
012046 004737 011460' JSR PC,.TPTST
8106 012052 001432 BEQ 30$ ; ......EXIT IF .EQ. ZERO
8107 012054 002415 BLT 20$ ; ......SHIFT RIGHT IF .LT. ZERO
8108
8109 ; [CONTINUED ON THE FOLLOWING PAGE]
TPSIM -- TRIPLE PRECISION ARITH MACRO M1113 10-NOV-81 17:44 PAGE 209
.TPSHL -- SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER 7601.19
8111 ; [CONTINUED FROM THE PREVIOUS PAGE]
8112
8113 012056 10$: ; ......HERE TO SHIFT LEFT
8114 012056 010002 MOV R0,R2 ; ......SHIFT COUNT POINTER TO R2
8115 012060 011600 MOV (SP),R0 ; ......POINT TO THE NUMBER
8116 012062 012701 000001 MOV #^D1,R1 ; ......SUBSTITUTE SHIFT COUNT
8117 012066 CALL .TPSHI ; ......SHIFT IT ONCE
012066 004737 011756' JSR PC,.TPSHI
8118 012072 010200 MOV R2,R0 ; ......REAL SHIFT COUNT POINTER TO R0
8119 012074 CALL .TPDEC ; ......DECREMENT IT
012074 004737 011534' JSR PC,.TPDEC
8120 012100 CALL .TPTST ; ......ARE WE DONE?
012100 004737 011460' JSR PC,.TPTST
8121 012104 001364 BNE 10$ ; ......NO -- KEEP GOING
8122 012106 000414 BR 30$ ; ......YES -- EXIT
8123 ;
8124 012110 20$: ; ......HERE TO SHIFT RIGHT
8125 012110 010002 MOV R0,R2 ; ......SHIFT COUNT TO R2
8126 012112 011600 MOV (SP),R0 ; ......POINT TO THE NUMBER
8127 012114 012701 177777 MOV #-^D1,R1 ; ......SUBSTITUTE SHIFT COUNT
8128 012120 CALL .TPSHI ; ......SHIFT IT
012120 004737 011756' JSR PC,.TPSHI
8129 012124 010200 MOV R2,R0 ; ......REAL SHIFT COUNT POINTER TO R0
8130 012126 CALL .TPINC ; ......INCREMENT IT
012126 004737 011522' JSR PC,.TPINC
8131 012132 CALL .TPTST ; ......ARE WE DONE?
012132 004737 011460' JSR PC,.TPTST
8132 012136 001364 BNE 20$ ; ......NO -- KEEP GOING
8133 012140 30$:
8134 012140 POP <R0,R2> ; ......RESTORE R0 AND R2
012140 012600 MOV (SP)+,R0
012142 012602 MOV (SP)+,R2
8135 012144 POP <R1,(R1),-(R1),-(R1)>
012144 012601 MOV (SP)+,R1
012146 012611 MOV (SP)+,(R1)
012150 012641 MOV (SP)+,-(R1)
012152 012641 MOV (SP)+,-(R1)
8136 012154 RETURN ; RETURN TO CALLER
012154 000207 RTS PC
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 210
.TPSHL -- SHIFT A 48 BIT NUMBER BY A 48 BIT NUMBER 7601.19
8138 .TITLE TRACK -- DIAGNOSTIC FUNCTION TRACK MODULE 7603.30
8139
8140 .IDENT "005000"
8141
8142 ;
8143 ; COPYRIGHT (C) 1975, 1979 BY
8144 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
8145 ;
8146 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
8147 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
8148 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
8149 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
8150 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
8151 ;
8152 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
8153 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
8154 ; CORPORATION.
8155 ;
8156 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
8157 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
8158 ;
8159 ; MODULE: DAIGNOSTIC FUNCTION TRACK
8160 ;
8161 ; VERSION: 05-00
8162 ;
8163 ; AUTHOR: R. BELANGER
8164 ;
8165 ; DATE: 7603.30
8166 ;
8167 ; THIS MODULE CONTAINS:
8168 ;
8169 ; 1) DIAGNOSTIC FUNCTION TRACK CODE
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 211
.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE 7512.09
8171 .SBTTL .TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE 7512.09
8172
8173 ;+
8174 ; .FRTRK -- SUBROUTINE TO TRACK A FUNCTION READ.
8175 ; .FWTRK -- SUBROUTINE TO TRACK A FUNCTION WRITE.
8176 ; .FXTRK -- SUBROUTINE TO TRACK A FUNCTION EXECUTE.
8177 ;
8178 ; THESE SUBROUTINES TRACK A FUNCTION READ, WRITE, OR EXECUTE
8179 ; BY DISPLAYING THE FUNCTION CODE AND THE CONTENT OF THE BUFFER
8180 ; ON THE FRONT END OUTPUT DEVICE.
8181 ;
8182 ; THESE SUBROUTINES ARE CALLED INTERNALLY AND ARE DEPENDENT UPON THE
8183 ; STATE OF THE SWITCHES IN ".TRKWD". THE ".TRKWD" SWITCHES ARE TURNED
8184 ; ON OR OFF BY THE "SET" AND "CLEAR TRACK" COMMANDS, RESPECTIVELY.
8185 ;
8186 ; ERROR CODES RETURNED:
8187 ;
8188 ; NONE.
8189 ;-
8190
8192
8193 .ENABL LSB
8194
8195 012156 .FRTRK::
8196 012156 PUSH R0 ; SAVE R0 ON THE STACK
012156 010046 MOV R0,-(SP)
8197 012160 PUSH .KLDFR+2 ; .SAVE THE FR CODE TOO
012160 013746 000340' MOV .KLDFR+2,-(SP)
8198 012164 PUSH #.DFRB ; ..AND THE BUFFER ADDRESS
012164 012746 000312' MOV #.DFRB,-(SP)
8199 012170 012700 001765' MOV #TFRMSG,R0 ; ...MESSAGE POINTER TO R0
8200 012174 000416 BR 10$ ; ...DO THE TRACKING
8201 ;
8202 012176 .FWTRK::
8203 012176 PUSH R0 ; SAVE R0 ON THE STACK
012176 010046 MOV R0,-(SP)
8204 012200 PUSH .KLDFW+2 ; .SAVE THE FW CODE
012200 013746 000352' MOV .KLDFW+2,-(SP)
8205 012204 PUSH #.DFWB ; ..AND THE BUFFER ADDRESS
012204 012746 000304' MOV #.DFWB,-(SP)
8206 012210 012700 002002' MOV #TFWMSG,R0 ; ...MESSAGE POINTER TO R0
8207 012214 000406 BR 10$ ; ...GO TRACK IT
8208 ;
8209 012216 .FXTRK::
8210 012216 PUSH R0 ; SAVE R0 ON THE STACK
012216 010046 MOV R0,-(SP)
8211 012220 PUSH .KLDFX+2 ; .SAVE THE FX CODE
012220 013746 000364' MOV .KLDFX+2,-(SP)
8212 012224 005046 CLR -(SP) ; ..NO BUFFER ADDRESS
8213 012226 012700 002017' MOV #TFXMSG,R0 ; ...MESSAGE POINTER TO R0
8214 ; BR 10$ ; ...AND FALL INTO COMMON CODE
8215 ;
8216
8217 ; [CONTINUED ON THE FOLLOWING PAGE]
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 212
.TRACK -- DIAGNOSTIC FUNCTION TRACK SUBROUTINE 7512.09
8219 ; [CONTINUED FROM THE PREVIOUS PAGE]
8220
8221 012232 10$:
8222 012232 012737 177777 000166' MOV #-^D1,.LDZFL ; ...PRINT LEADING ZEROES
8223 012240 CALL .TYMSG ; ...PRINT THE MESSAGE
012240 004737 015446' JSR PC,.TYMSG
8224 012244 016600 000002 MOV 2(SP),R0 ; ...GET THE FUNCTION CODE
8225 012250 000300 SWAB R0 ; ...SWAP THE BYTES
8226 012252 042700 177400 BIC #177400,R0 ; ...FLUSH JUNK FROM HIGH BYTE
8227 012256 006200 ASR R0 ; ...DIVIDE IT BY 2
8228 012260 CALL .TYP3D ; ...TYPE THAT
012260 004737 015016' JSR PC,.TYP3D
8229 012264 011600 MOV (SP),R0 ; ...BUFFER ADDRESS?
8230 012266 001406 BEQ 20$ ; ...NO -- JUST EXIT
8231 012270 CALL .TYSLS ; ...YES -- TYPE A SLASH AND
012270 004737 014556' JSR PC,.TYSLS
8232 012274 CALL .TYSPC ; ...TYPE A <SPACE> AND
012274 004737 014566' JSR PC,.TYSPC
8233 012300 CALL .TYKLN ; ...TYPE ITS CONTENT
012300 004737 015142' JSR PC,.TYKLN
8234 012304 20$:
8235 012304 CALL .TCRLF ; ...NOW A <CRLF>
012304 004737 015536' JSR PC,.TCRLF
8236 012310 022626 CMP (SP)+,(SP)+ ; ...GET RID OF BUFFER POINTER AND CODE
8237 012312 POP R0 ; .RESTORE R0
012312 012600 MOV (SP)+,R0
8238 012314 RETURN ; AND GO AWAY
012314 000207 RTS PC
8239
8240 .DSABL LSB
8241
8242 001765 .PSECT MESSAG
8243
8244 001765 TFRMSG:
8245 001765 011 124 122 .ASCIZ % TRACK > FR %
001770 101 103 113
001773 040 076 040
001776 106 122 040
002001 000
8246 002002 TFWMSG:
8247 002002 011 124 122 .ASCIZ % TRACK > FW %
002005 101 103 113
002010 040 076 040
002013 106 127 040
002016 000
8248 002017 TFXMSG:
8249 002017 011 124 122 .ASCIZ % TRACK > FX %
002022 101 103 113
002025 040 076 040
002030 106 130 040
002033 000
8250 012316 .PSECT
8251
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 213
.DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS 7512.11
8254 .SBTTL .DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS 7512.11
8255
8256 ;+
8257 ; .DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS
8258 ;
8259 ; THIS SUBROUTINE WILL TRACK DTE-20 OPERATIONS AND PRINT ALL DTE-20
8260 ; REFERENCES BY THE COMMAND PARSER ON THE CONSOLE OUTPUT DEVICE.
8261 ; THIS SUBROUTINE IS CALLED INTERNALLY, DEPENDENT UPON THE STATE OF
8262 ; THE DTE-20 TRACK FLAG ("TR.DTE") IN THE TRACK CONTROL WORD, ".TRKWD."
8263 ;
8264 ; CALLING SEQUENCE IS:
8265 ;
8266 ; CALL .DTTRK ; TRACK THE DTE-20
8267 ; ; ONLY RETURN
8268 ;
8269 ; THE DTE-20 REGISTER OPERATED UPON IS IDENTIFIED BY ONE OF THE FOLLOWING:
8270 ;
8271 ; (A) DIAG 1 - DIAG WORD 1,
8272 ; (B) DIAG 2 - DIAG WORD 2,
8273 ; (C) STATUS - STATUS WORD,
8274 ; (D) DIAG 3 - DIAG WORD 3.
8275 ;
8276 ; A READ OPERATION IS IDENTIFIED BY "RD", AND A WRITE OPERATION BY "WR".
8277 ;
8278 ; NO REGISTERS ARE ALTERED BY THIS SUBROUTINE.
8279 ;
8280 ; ERROR CODES RETURNED:
8281 ;
8282 ; NONE.
8283 ;-
8284
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 214
.DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS 7512.11
8287 012316 .DTTRK::
8288 012316 012737 177777 000166' MOV #-^D1,.LDZFL ; PRINT LEADING ZEROES
8289 012324 PUSH R0 ; SAVE R0
012324 010046 MOV R0,-(SP)
8290 012326 012700 002034' MOV #DTRMSG,R0 ; .MESSAGE POINTER TO R0
8291 012332 CALL .TYMSG ; .PRINT IT
012332 004737 015446' JSR PC,.TYMSG
8292 012336 113700 000303' MOVB .REGRW+3,R0 ; .GET THE REGISTER OFFSET
8293 012342 016000 007130' MOV REGTAB(R0),R0 ; .REGISTER MESSAGE POINTER TO R0
8294 012346 CALL .TYMSG ; .TYPE IT
012346 004737 015446' JSR PC,.TYMSG
8295 012352 CALL .TYSPC ; .NOW A <SPACE>
012352 004737 014566' JSR PC,.TYSPC
8296 012356 005737 000304' TST .REGRW+4 ; .IS THIS A WRITE?
8297 012362 001002 BNE 10$ ; .YES -- GO ON
8298 012364 011600 MOV (SP),R0 ; .NO -- DATA TO R0
8299 012366 000402 BR 20$ ; .GO PRINT IT
8300 ;
8301 012370 10$:
8302 012370 017700 000304' MOV @.REGRW+4,R0 ; .GET WRITTEN DATA
8303 012374 20$:
8304 012374 CALL .TYELN ; .PRINT THE DATA
012374 004737 014752' JSR PC,.TYELN
8305 012400 012700 002115' MOV #DRDMSG,R0 ; .READ MESSAGE POINTER TO R0
8306 012404 005737 000304' TST .REGRW+4 ; .WAS IT A WRITE?
8307 012410 001402 BEQ 30$ ; .YES -- GO ON
8308 012412 012700 002121' MOV #DWRMSG,R0 ; .NO -- WRITE MESSAGE POINTER TO R0
8309 012416 30$:
8310 012416 CALL .TYLIN ; .PRINT IT AND A <CRLF>
012416 004737 015432' JSR PC,.TYLIN
8311 012422 POP R0 ; .RESTORE R0
012422 012600 MOV (SP)+,R0
8312 012424 RETURN ; TO CALLER
012424 000207 RTS PC
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 215
.DTTRK -- SUBROUTINE TO TRACK DTE-20 OPERATIONS 7512.11
8314 007130 .PSECT DATA
8315
8316 007130 REGTAB:
8317 007130 002055' .WORD DW1MSG ; MESSAGE POINTERS
8318 007132 002065' .WORD DW2MSG
8319 007134 002075' .WORD STAMSG
8320 007136 002105' .WORD DW3MSG
8321
8322 002034 .PSECT MESSAG
8323 002034 DTRMSG:
8324 002034 011 124 122 .ASCIZ % TRACK > DTE-20 %
002037 101 103 113
002042 040 076 040
002045 104 124 105
002050 055 062 060
002053 040 000
8325
8326 002055 DW1MSG:
8327 002055 104 111 101 .ASCIZ %DIAG 1/%
002060 107 040 061
002063 057 000
8328 002065 DW2MSG:
8329 002065 104 111 101 .ASCIZ %DIAG 2/%
002070 107 040 062
002073 057 000
8330 002075 STAMSG:
8331 002075 123 124 101 .ASCIZ %STATUS/%
002100 124 125 123
002103 057 000
8332 002105 DW3MSG:
8333 002105 104 111 101 .ASCIZ %DIAG 3/%
002110 107 040 063
002113 057 000
8334
8335 002115 DRDMSG:
8336 002115 040 122 104 .ASCIZ % RD%
002120 000
8337 002121 DWRMSG:
8338 002121 040 127 122 .ASCIZ % WR%
002124 000
8339 012426 .PSECT
8340
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 216
.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
8343 .SBTTL .EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
8344
8345 ;+
8346 ; .EXTRK -- SUBROUTINE TO TRACK A KL EXAMINE.
8347 ; .DPTRK -- SUBROUTINE TO TRACK A KL DEPOSIT.
8348 ;
8349 ; THESE SUBROUTINES WILL TRACK A KL EXAMINE OR DEPOSIT BY
8350 ; DISPLAYING THE ADDRESS, DATA, AND REFERENCE TYPE OF THE EXAMINE
8351 ; OR DEPOSIT ON THE CONSOLE DEVICE AS IT IS EXECUTED.
8352 ;
8353 ; THESE SUBROUTINES ARE CALLED INTERNALLY DEPENDENT ON THE STATE OF
8354 ; THE TRACK CONTROL WORD ".TRKWD".
8355 ;
8356 ; THE SWITCHES IN ".TRKWD" ARE TURNED ON OR OFF BY THE "SET" AND
8357 ; "CLEAR TRACK" COMMANDS, RESPECTIVELY.
8358 ;
8359 ; NO REGISTERS ARE ALTERED BY THESE SUBROUTINES.
8360 ;
8361 ; ERROR CODES RETURNED:
8362 ;
8363 ; NONE.
8364 ;-
8365
8367
8368 .ENABL LSB
8369
8370 012426 .EXTRK::
8371 012426 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
012426 004537 010302' JSR R5,.REGSV
8372 012432 012705 002151' MOV #ETRMSG,R5 ; PREAMBLE TO TYPE
8373 012436 000404 BR 10$ ; DO COMMON CODE
8374 ;
8375 012440 .DPTRK::
8376 012440 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
012440 004537 010302' JSR R5,.REGSV
8377 012444 012705 002166' MOV #DTKMSG,R5 ; PREAMBLE TO TYPE
8378 ; AND FALL INTO COMMON CODE
8379
8380 ; [CONTINUED ON THE FOLLOWING PAGE]
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 217
.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
8382 ; [CONTINUED FROM THE PREVIOUS PAGE]
8383
8384 012450 10$:
8385 012450 PUSH R0 ; SAVE R0 ON THE STACK
012450 010046 MOV R0,-(SP)
8386 012452 011100 MOV (R1),R0 ; .GET ADDRESS POINTER
8387 012454 012702 007140' MOV #TRADDR,R2 ; .POINT TO OUR BLOCK
8388 012460 012022 MOV (R0)+,(R2)+ ; .AND LOAD IT
8389 012462 012022 MOV (R0)+,(R2)+ ; .
8390 012464 005012 CLR (R2) ; .ZERO THE LAST WORD
8391 012466 016100 000002 MOV 2(R1),R0 ; .GET DATA POINTER
8392 012472 012702 007146' MOV #TRDATA,R2 ; .POINT TO OUR BLOCK
8393 012476 012022 MOV (R0)+,(R2)+ ; .AND LOAD IT
8394 012500 012022 MOV (R0)+,(R2)+ ; .
8395 012502 011012 MOV (R0),(R2) ; .
8396 012504 010500 MOV R5,R0 ; .PREAMBLE POINTER TO R0
8397 012506 CALL .TYMSG ; .PRINT IT
012506 004737 015446' JSR PC,.TYMSG
8398 012512 012700 007140' MOV #TRADDR,R0 ; .POINT TO ADDRESS
8399 012516 CALL .TYKLA ; .PRINT IT
012516 004737 015072' JSR PC,.TYKLA
8400 012522 CALL .TYSLS ; .TYPE A SLASH
012522 004737 014556' JSR PC,.TYSLS
8401 012526 CALL .TYSPC ; .AND A <SPACE>
012526 004737 014566' JSR PC,.TYSPC
8402 012532 012700 007146' MOV #TRDATA,R0 ; .POINT TO DATA
8403 012536 CALL .TYKLN ; .PRINT IT
012536 004737 015142' JSR PC,.TYKLN
8404 012542 CALL .TYSPC ; .AND A <SPACE>
012542 004737 014566' JSR PC,.TYSPC
8405 012546 011600 MOV (SP),R0 ; .GET TYPE
8406 012550 006200 ASR R0 ; .DIVIDE BY 16
8407 012552 006200 ASR R0 ; .
8408 012554 006200 ASR R0 ; .
8409 012556 006200 ASR R0 ; .
8410 012560 016000 007154' MOV EDTYTB(R0),R0 ; .GET TYPE POINTER
8411 012564 CALL .TYLIN ; .PRINT IT AND A <CRLF>
012564 004737 015432' JSR PC,.TYLIN
8412 012570 POP R0 ; .AND R0
012570 012600 MOV (SP)+,R0
8413 012572 RETURN ; TO CALLER
012572 000207 RTS PC
8414
8415 .DSABL LSB
TRACK -- DIAGNOSTIC FUNCTION TR MACRO M1113 10-NOV-81 17:44 PAGE 218
.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
8417 007140 .PSECT DATA
8418
8419 007140 TRADDR:
8420 007140 000000 000000 000000 .WORD 0,0,0 ; SPACE FOR ADDRESS
8421 007146 TRDATA:
8422 007146 000000 000000 000000 .WORD 0,0,0 ; SPACE FOR DATA
8423 007154 EDTYTB: ; POINTERS FOR TYPE MESSAGES
8424 007154 002125' .WORD EDEPT ; EPT SPACE
8425 007156 002131' .WORD EDEXV ; EXEC VIRTUAL SPACE
8426 007160 002135' .WORD EDUPT ; UPT SPACE
8427 007162 002141' .WORD EDUSV ; USER VIRTUAL
8428 007164 002145' .WORD EDPHY ; PHYSICAL SPACE
8429
8430 002125 .PSECT MESSAG
8431 002125 EDEPT:
8432 002125 105 120 124 .ASCIZ %EPT%
002130 000
8433 002131 EDEXV:
8434 002131 105 126 123 .ASCIZ %EVS%
002134 000
8435 002135 EDUPT:
8436 002135 125 120 124 .ASCIZ %UPT%
002140 000
8437 002141 EDUSV:
8438 002141 125 126 123 .ASCIZ %UVS%
002144 000
8439 002145 EDPHY:
8440 002145 120 110 131 .ASCIZ %PHY%
002150 000
8441 002151 ETRMSG:
8442 002151 011 124 122 .ASCIZ % TRACK > EX %
002154 101 103 113
002157 040 076 040
002162 105 130 040
002165 000
8443 002166 DTKMSG:
8444 002166 011 124 122 .ASCIZ % TRACK > DP %
002171 101 103 113
002174 040 076 040
002177 104 120 040
002202 000
8445 012574 .PSECT
8446
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 219
.EDTRK -- EXAMINE / DEPOSIT TRACK SUBROUTINE 7512.09
8449 .TITLE TYINP -- COMMAND PARSER COMMAND INPUT MODULE 7603.30
8450
8451 .IDENT "006110"
8452
8453 ;
8454 ; COPYRIGHT (C) 1975, 1979 BY
8455 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
8456 ;
8457 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
8458 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
8459 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
8460 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
8461 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
8462 ;
8463 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
8464 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
8465 ; CORPORATION.
8466 ;
8467 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
8468 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
8469 ;
8470 ; MODULE: COMMAND PARSER COMMAND INPUT
8471 ;
8472 ; VERSION: 06-11
8473 ;
8474 ; AUTHOR: R. BELANGER
8475 ;
8476 ; DATE: 7603.30
8477 ;
8478 ; THIS MODULE CONTAINS:
8479 ;
8480 ; 1) COMMAND LINE INPUT CODE
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 220
.GTCMD -- SUBROUTINE TO GET A COMMAND LINE 7601.22
8482 .SBTTL .GTCMD -- SUBROUTINE TO GET A COMMAND LINE 7601.22
8483
8484 ;+
8485 ; .GTCMD -- SUBROUTINE TO GET A COMMAND LINE FROM THE CONSOLE INPUT
8486 ; BUFFER.
8487 ;
8488 ; THIS SUBROUTINE WILL GET A COMMAND LINE FROM THE CONSOLE INPUT DEVICE
8489 ; BUFFER AND PLACE IT INTO THE COMMAND BUFFER.
8490 ;
8491 ; INPUT ARGUMENTS:
8492 ;
8493 ; R5 POINTS TO THE DESTINATION BUFFER.
8494 ;
8495 ; OUTPUT ARGUMENTS:
8496 ;
8497 ; R5 POINTS TO THE BEGINNING OF THE COMMAND BUFFER
8498 ; ".INCHC" HAS THE COUNT OF THE CHARACTERS IN THE COMMAND BUFFER
8499 ; THE LAST CHARACTER IN THE COMMAND BUFFER IS A "<NULL>".
8500 ;
8501 ; ERROR CODES RETURNED:
8502 ;
8503 ; IF THE CONSOLE INPUT FAILS, THE PARSER WILL EXIT.
8504 ;
8505 ; CBO -- COMMAND BUFFER OVERFLOW.
8506 ; ILC -- ILLEGAL CHARACTER.
8507 ;-
8508
8509 012574 .GTCMD::
8510 012574 010501 MOV R5,R1 ; COMMAND BUFFER POINTER TO R1
8511 012576 10$:
8512 012576 PUSH R1 ; SAVE R1 ON THE STACK
012576 010146 MOV R1,-(SP)
8513 012600 CALL .GTLIN ; .GO GET THE COMMAND LINE
012600 004737 012630' JSR PC,.GTLIN
8514 012604 022601 CMP (SP)+,R1 ; .DID THE POINTER CHANGE?
8515 012606 001407 BEQ 20$ ; NO -- JUST EXIT
8516 012610 122741 000055 CMPB #'-,-(R1) ; YES -- WAS LAST CHARACTER LINE CONTINUATION?
8517 012614 001004 BNE 20$ ; NO -- EXIT
8518 012616 111100 MOVB (R1),R0 ; YES -- PROMPT FOR CONTINUATION
8519 012620 CALL .TFCHR ; FORCE PRINT THE PROMPT
012620 004737 015470' JSR PC,.TFCHR
8520 012624 000764 BR 10$ ; AND GO GET THE REST OF THE LINE
8521 ;
8522 012626 20$:
8523 012626 RETURN ; TO CALLER
012626 000207 RTS PC
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 221
.GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
8525 .SBTTL .GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
8526
8527 ;+
8528 ; .GTLIN -- SUBROUTINE TO GET AN INPUT LINE FROM THE CONSOLE
8529 ;
8530 ; THIS SUBROUTINE WILL GET A LINE OF INPUT FROM THE CONSOLE DEVICE
8531 ; AND PERFORM THE FOLLOWING CHARACTER CONVERSIONS:
8532 ;
8533 ; (A) LOWER CASE CHARACTERS ARE CONVERTED TO UPPER CASE
8534 ; (B) "<TAB>" IS CONVERTED TO "<SPACE>"
8535 ;
8536 ; INPUT ARGUMENTS:
8537 ;
8538 ; R1 POINTS TO THE BEGINNING OF THE DESTINATION BUFFER
8539 ;
8540 ; OUTPUT ARGUMENTS:
8541 ;
8542 ; R1 POINTS TO THE END OF THE DESTINATION BUFFER
8543 ;
8544 ; ERROR CODES RETURNED:
8545 ;
8546 ; IF THE CONSOLE INPUT FAILS, THE PARSER WILL EXIT.
8547 ;
8548 ; CBO -- COMMAND BUFFER OVERFLOW.
8549 ; FRD -- FILE READ FAILURE
8550 ; ILC -- ILLEGAL CHARACTER.
8551 ;-
8552
8553 .MCALL DIR$, QIOW$
8554
8555 012630 .GTLIN::
8556 012630 PUSH <R0,R2,R3,R4> ; SAVE SOME REGISTERS
012630 010046 MOV R0,-(SP)
012632 010246 MOV R2,-(SP)
012634 010346 MOV R3,-(SP)
012636 010446 MOV R4,-(SP)
8557 012640 012700 000330' MOV #.CIBFR,R0 ; ...INPUT BUFFER POINTER TO R0
8558 012644 005037 000132' CLR .INCHC ; ...CLEAR THE CHARACTER COUNTER
8559 012650 005737 001626' TST .INDFG ; [5.1000]IS INPUT REDIRECTED TO FILE?
8561 012654 001011 BNE 10$ ; [5.1000]YES -- GET INPUT FROM FILE
8562 012656 005737 000144' TST .KLEDF ; [5.1006]NO -- GET DEFAULT COMMANDS?
8563 012662 001427 BEQ 12$ ; [5.1006]NO -- GET INPUT FROM CTY
8564 012664 CALL .KLE ; [5.1006]YES -- GET COMMANDS
012664 004737 000000G JSR PC,.KLE
8565 012670 005737 000006' TST .CISTS+2 ; [5.1006]ANY COMMAND?
8566 012674 001442 BEQ 15$ ; [5.1006]NO -- DONE
8567 012676 000407 BR 11$ ; [5.1006]YES -- ECHO COMMANDS
8571 012700 012702 000330' 10$: MOV #.CIBFR,R2 ; [5.1000]YES -- SET UP INPUT BUFFER
8572 012704 012703 000004' MOV #.CISTS,R3 ; [5.1000]STATUS PTR
8573 012710 CALL .READR ; [5.1000]GET THE COMMAND
012710 004737 002224' JSR PC,.READR
8574 012714 103432 BCS 15$ ; [5.1000]EOF ENCOUNTERED
8575 012716 012737 000330' 000430' 11$: MOV #.CIBFR,.CDOBP ; [5.1000]SET ECHO BUFFER
8576 012724 013737 000006' 000432' MOV .CISTS+2,.CDOBC ; [5.1000]SET BYTE COUNT
8577 012732 001423 BEQ 15$ ; [5.1000]NULL COMMAND?
8578 012734 CALL .TYOUT ; [5.1000]NO -- ECHO IT
012734 004737 015564' JSR PC,.TYOUT
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 221-1
.GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
8579 012740 000420 BR 15$ ; [5.1000]PROCESS COMMAND
8580 012742 12$: DIR$ #.CDINP ; ...READ THE LINE INTO INPUT BUFFER
012742 012746 000374' MOV #.CDINP,-(SP)
012746 104375 EMT 375
8581 012750 103457 BCS 70$ ; ...GIVE CONSOLE INPUT FAILED ERROR
8582 012752 105737 000004' TSTB .CISTS ; ...TEST THE STATUS BYTE
8583 012756 002454 BLT 70$ ; ...GIVE CONSOLE INPUT FAILED ERROR
8584 012760 012737 000330' 000452' MOV #.CIBFR,.LDOBP ; [5.1000]NO -- SET LOG,LPT OUTPUT BUFFER
8585 012766 013737 000006' 000454' MOV .CISTS+2,.LDOBC ; [5.1000]SET BYTE COUNT
8586 012774 001402 BEQ 15$ ; [5.1000]NULL COMMAND?
8587 012776 CALL .TYOU1 ; [5.1000]NO -- ECHO COMMAND TO LPT,LOG
012776 004737 015644' JSR PC,.TYOU1
8588 013002 15$: CALL .TCRLF ; ...ACKNOWLEDGE THE LINE
013002 004737 015536' JSR PC,.TCRLF
8589 013006 013703 000006' MOV .CISTS+2,R3 ; ...INPUT BYTE COUNT TO R3
8590 013012 001415 BEQ 40$ ; ...NULL LINE IF .EQ. 0
8591 013014 20$:
8592 013014 112004 MOVB (R0)+,R4 ; ...GET THE CHARACTER INTO R4
8593 013016 001441 BEQ GTLILC ; ...ILLEGAL IF <NULL>
8594 013020 105764 001450' TSTB .CHTAB(R4) ; ...SEE IF IT IS A LEGAL CHARACTER
8595 013024 002420 BLT 50$ ; ...NO -- SEE IF IT IS REALLY ILLEGAL
8596
8597 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 222
.GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
8599 ; [CONTINUED FROM THE PREVIOUS PAGE]
8600
8601 013026 30$:
8602 013026 110421 MOVB R4,(R1)+ ; ...PUT IT INTO THE OUTPUT BUFFER
8603 013030 005237 000132' INC .INCHC ; ...INCREMENT THE CHARACTER COUNT
8604 013034 023727 000132' 000430 CMP .INCHC,#.CMNDL ; ...HAVE WE OVERFLOWED?
8605 013042 003024 BGT GTLCBO ; ...YES -- GIVE ERROR
8606 013044 077315 SOB R3,20$ ; ...NO -- LOOP TILL DONE THIS LINE
8607 013046 40$:
8608 013046 105011 CLRB (R1) ; ...MARK THE END OF LINE
8609 013050 POP <R4,R3,R2,R0> ; ...RESTORE THE REGISTERS
013050 012604 MOV (SP)+,R4
013052 012603 MOV (SP)+,R3
013054 012602 MOV (SP)+,R2
013056 012600 MOV (SP)+,R0
8610 013060 005737 000132' TST .INCHC ; TEST THE INPUT BYTE COUNT
8611 013064 RETURN ; TO CALLER
013064 000207 RTS PC
8612 013066 50$: ; ...HERE TO CHECK ILLEGAL CHARACTERS
8613 013066 122704 000041 CMPB #'!,R4 ; ...WAS IT A COMMENT?
8614 013072 001765 BEQ 40$ ; ...YES -- JUST EXIT
8615 013074 122704 000011 CMPB #11,R4 ; ...NO -- WAS IT A <TAB>?
8619 013100 001010 BNE GTLILC ; ...NO -- GIVE "ILC" ERROR
8621 013102 112704 000040 MOVB #.SPACE,R4 ; ...YES -- MAKE IT A <SPACE>
8622 013106 000747 BR 30$ ; ...AND PUT IT IN THE BUFFER
8623 ;
8634 013110 70$:
8635 013110 CALLR .EXITP ; EXIT GRACEFULLY
013110 000137 010074' JMP .EXITP
8636 ;
8637 013114 GTLCBO:
8638 013114 ERROR$ CBO ; ERROR -- COMMAND BUFFER OVERFLOW
013114 012746 011437 MOV #^RCBO,-(SP)
013120 104400 TRAP TC.ERR
8639 ;
8640 013122 GTLILC:
8641 013122 ERROR$ ILC ; ERROR -- ILLEGAL CHARACTER
013122 012746 035043 MOV #^RILC,-(SP)
013126 104400 TRAP TC.ERR
8642 ;
8643 ; THIS IS THE CONSOLE INPUT DPB
8644
8645 000374 .PSECT DPBS
8646
8647 000374 .CDINP::
8648 000374 QIOW$ IO.RLB,CIDLUN,E.FCID,0,.CISTS,0,<.CIBFR,.CIBFL>
000374 003 010 .BYTE 3,$$$ARG
000376 000000G .WORD IO.RLB
000400 000001 .WORD CIDLUN
000402 002 000 .BYTE E.FCID,0
000404 000004' .WORD .CISTS
000406 000000 .WORD 0
000410 000330' .WORD .CIBFR
000412 000214 .WORD .CIBFL
8649
8650 000410' .CDIBP=.CDINP+Q.IOPL ; CONSOLE INPUT BYTE POINTER
8651 000412' .CDIBC=.CDINP+Q.BYCT ; CONSOLE INPUT BYTE COUNT
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 222-1
.GTLIN -- SUBROUTINE TO INPUT A LINE FROM THE CONSOLE 7601.22
8652
8653 013130 .PSECT
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 223
.ELNCK -- TEST FOR A LEGAL PDP-11 NUMBER 7611.01
8655 .SBTTL .ELNCK -- TEST FOR A LEGAL PDP-11 NUMBER 7611.01
8656
8657 ;+
8658 ; .ELNCK -- SUBROUTINE TO TEST FOR A LEGAL PDP-11 NUMBER
8659 ;
8660 ; THIS SUBROUTINE WILL TEST A NUMBER TO SEE IF IT IS A LEGAL PDP-11
8661 ; NUMBER. THIS IS REQUIRED BECAUSE THE NUMERIC INPUT ROUTINES HANDLE
8662 ; ONLY 36 BIT NUMBERS.
8663 ;
8664 ; INPUT ARGUMENTS:
8665 ;
8666 ; R0 POINTS TO THE PDP-11 NUMBER TO BE TESTED
8667 ;
8668 ; OUTPUT ARGUMENTS:
8669 ;
8670 ; R0 POINTS TO THE PDP-11 NUMBER
8671 ;
8672 ; ERROR CODES RETURNED:
8673 ;
8674 ; NOR -- INPUT NUMBER OUT OF RANGE.
8675 ;-
8676
8677 013130 .ELNCK::
8678 013130 032760 000010 000004 BIT #10,4(R0) ; IS THIS A NEGATIVE NUMBER?
8679 013136 001411 BEQ 10$ ; NO -- POSITIVE
8680 013140 022760 177777 000004 CMP #-^D1,4(R0) ; YES -- ARE ALL THE BITS ON?
8681 013146 001014 BNE ELNNOR ; NO -- GIVE "NOR" ERROR
8682 013150 022760 177777 000002 CMP #-^D1,2(R0) ; YES -- HOW ABOUT THE SECOND WORD?
8683 013156 001010 BNE ELNNOR ; NO -- GIVE "NOR" ERROR
8684 013160 000406 BR 20$ ; YES -- ALL OK, EXIT
8685 ;
8686 013162 10$:
8687 013162 005760 000004 TST 4(R0) ; SEE IF HIGH WORD IS .EQ. ZERO
8688 013166 001004 BNE ELNNOR ; NO -- GIVE "NOR" ERROR
8689 013170 005760 000002 TST 2(R0) ; IS SECOND WORD .EQ. ZERO?
8690 013174 001001 BNE ELNNOR ; NO -- GIVE "NOR" ERROR
8691 013176 20$:
8692 013176 RETURN ; TO CALLER
013176 000207 RTS PC
8693 013200 ELNNOR:
8694 013200 000137 014520' JMP GTNNOR ; GIVE "NOR" ERROR
8695 ;
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 224
.GTELN -- SUBROUTINE TO GET A PDP-11 NUMBER 7602.05
8697 .SBTTL .GTELN -- SUBROUTINE TO GET A PDP-11 NUMBER 7602.05
8698
8699 ;+
8700 ; .GTELN -- SUBROUTINE TO GET A PDP-11 NUMBER
8701 ;
8702 ; THIS SUBROUTINE WILL RETURN A PDP-11 NUMBER IN R0.
8703 ;
8704 ; INPUT ARGUMENTS:
8705 ;
8706 ; NONE.
8707 ;
8708 ; OUTPUT ARGUMENTS:
8709 ;
8710 ; R0 HOLDS THE PDP-11 NUMBER.
8711 ;
8712 ; ERROR CODES RETURNED:
8713 ;
8714 ; NOR -- INPUT NUMBER OUT OF RANGE.
8715 ;-
8716
8717 013204 .GTELN::
8718 013204 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
8719 013206 005046 CLR -(SP) ; .
8720 013210 005046 CLR -(SP) ; ..
8721 013212 010600 MOV SP,R0 ; ...
8722 013214 CALL .GTNUM ; ...GET A NUMBER
013214 004737 013266' JSR PC,.GTNUM
8723 013220 CALL .ELNCK ; ...SEE IF IS REALLY A PDP-11 NUMBER
013220 004737 013130' JSR PC,.ELNCK
8724 013224 011000 MOV (R0),R0 ; ...PUT THE NUMBER IN R0
8725 013226 062706 000006 ADD #^D6,SP ; ...RESET THE STACK
8726 013232 RETURN ; TO CALLER
013232 000207 RTS PC
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 225
.GTKLA -- SUBROUTINE TO GET A 22 BIT KL ADDRESS 7602.05
8728 .SBTTL .GTKLA -- SUBROUTINE TO GET A 22 BIT KL ADDRESS 7602.05
8729
8730 ;+
8731 ; .GTKLA -- SUBROUTINE TO GET A 22 BIT KL ADDRESS.
8732 ;
8733 ; THIS SUBROUTINE WILL READ AND RETURN A 36 BIT NUMBER AS A 22 BIT
8734 ; ADDRESS IN THE BUFFER POINTED TO BY R0 IN THE CALL.
8735 ;
8736 ; INPUT ARGUMENTS:
8737 ;
8738 ; R0 POINTS TO A THREE WORD BUFFER
8739 ;
8740 ; OUTPUT ARGUMENTS:
8741 ;
8742 ; R0 POINTS TO THE 22 BIT KL ADDRESS
8743 ;
8744 ; ERROR CODES RETURNED:
8745 ;
8746 ; KLA -- KL ADDRESS ERROR.
8747 ; NOR -- NUMBER OUT OF RANGE
8748 ;-
8749
8750 013234 .GTKLA::
8751 013234 CALL .GTNUM ; GET A NUMBER
013234 004737 013266' JSR PC,.GTNUM
8752 013240 005760 000004 TST 4(R0) ; CHECK FOR A LEGAL ADDRESS
8753 013244 001005 BNE GTKKLA ; BAD NEWS -- OUT OF RANGE
8754 013246 032760 177600 000002 BIT #^C177,2(R0) ; LOOK AT SECOND WORD
8755 013254 001001 BNE GTKKLA ; SAME HERE -- OUT OF RANGE
8756 013256 RETURN ; TO CALLER
013256 000207 RTS PC
8757 013260 GTKKLA:
8758 013260 ERROR$ KLA ; ERROR -- KL ADDRESS ERROR
013260 012746 043241 MOV #^RKLA,-(SP)
013264 104400 TRAP TC.ERR
8759 ;
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 226
.GTNUM -- SUBROUTINE TO EVALUATE A NUMERIC EXPRESSION 7608.09
8761 .SBTTL .GTNUM -- SUBROUTINE TO EVALUATE A NUMERIC EXPRESSION 7608.09
8762
8763 ;+
8764 ; .GTNUM -- SUBROUTINE TO EVALUATE A NUMERIC EXPRESSION
8765 ; .GTKLN -- ".GTNUM" BY ANOTHER NAME
8766 ;
8767 ; THIS SUBROUTINE WILL READ AND CONVERT A NUMERIC EXPRESSION FROM
8768 ; THE INPUT STREAM AND RETURN A POINTER TO THE NUMBER IN R0
8769 ;
8770 ; INPUT ARGUMENTS:
8771 ;
8772 ; R0 POINTS TO THE DESTINATION OF THE NUMBER
8773 ; R5 POINTS TO THE INPUT STREAM
8774 ;
8775 ; OUTPUT ARGUMENTS:
8776 ;
8777 ; R0 POINTS TO THE NUMBER
8778 ; R5 POINTS TO THE FIRST CHARACTER AFTER THE NUMBER
8779 ;
8780 ; ERROR CODES RETURNED:
8781 ;
8782 ; ILC -- ILLEGAL CHARACTER.
8783 ; NOR -- NUMBER OUT OF RANGE.
8784 ;-
8785
8786 013266 .GTNUM::
8787 013266 .GTKLN::
8788 013266 PUSH R1 ; SAVE R1
013266 010146 MOV R1,-(SP)
8789 013270 CALL .CKSYM ; .GET OVER LEADING BLANKS
013270 004737 000374' JSR PC,.CKSYM
8790 013274 122715 000077 CMPB #'?,(R5) ; .IS THIS AN INQUIRY?
8791 013300 001474 BEQ GTNNER ; .YES -- SAY SO
8792 013302 CALL .TPCLR ; .NO -- CLEAR CALLER'S NUMBER
013302 004737 011356' JSR PC,.TPCLR
8793 013306 CALL .CKARG ; [5.1018]IS ARGUMENT NUMERIC?
013306 004737 000070' JSR PC,.CKARG
8794 013312 100403 BMI 5$ ; [5.1018]YES -- GET IT
8795 013314 CALL .GTOPC ; <*>NO -- DECODE OPCODE
013314 004737 013500' JSR PC,.GTOPC
8796 013320 000405 BR 7$ ; [5.1018]GET RIGHT HALF
8797 013322 5$: CALL .GTEXP ; .READ THIS EXPRESSION
013322 004737 013672' JSR PC,.GTEXP
8798 013326 122715 000040 CMPB #.SPACE,(R5) ; .IS THE TERMINATOR A <SPACE>?
8799 013332 001053 BNE 30$ ; .NO -- JUST EXIT
8800 013334 7$: CALL .CKARG ; .YES -- SEE IF NUMERIC ARGUMENT FOLLOWS
013334 004737 000070' JSR PC,.CKARG
8801 013340 001454 BEQ GTNNER ; .NOT NUMERIC -- GIVE "NER" ERROR
8802 013342 CALL .TPTST ; .NUMERIC -- SEE IF PREVIOUS IS NEGATIVE
013342 004737 011460' JSR PC,.TPTST
8803 013346 002407 BLT 10$ ; .NEGATIVE -- DON'T DO RANGE CHECK
8804 013350 032760 177774 000002 BIT #^C3,2(R0) ; .IS THE NUMBER IN RANGE?
8805 013356 001043 BNE GTNORE ; .NO -- GIVE "NOR" ERROR
8806 013360 005760 000004 TST 4(R0) ; .IS IT REALLY IN RANGE?
8807 013364 001040 BNE GTNORE ; .NO -- GIVE "NOR" ERROR
8808
8809 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 227
.GTNUM -- SUBROUTINE TO EVALUATE A NUMERIC EXPRESSION 7608.09
8811 ; [CONTINUED FROM THE PREVIOUS PAGE]
8812
8813 013366 10$:
8814 013366 012701 000022 MOV #^D18,R1 ; .SHIFT COUNT TO R1
8815 013372 CALL .TPSHI ; .SHIFT IT
013372 004737 011756' JSR PC,.TPSHI
8816 013376 010001 MOV R0,R1 ; .SAVE THE POINTER TO THE CURRENT NUMBER
8817 013400 005046 CLR -(SP) ; .CLEAR A NEW BUFFER
8818 013402 005046 CLR -(SP) ; ..
8819 013404 005046 CLR -(SP) ; ...
8820 013406 010600 MOV SP,R0 ; ....POINT TO THE BUFFER
8821 013410 PUSH R1 ; ....SAVE THE OLD POINTER
013410 010146 MOV R1,-(SP)
8822 013412 CALL .GTEXP ; .....READ THE NEW EXPRESSION
013412 004737 013672' JSR PC,.GTEXP
8823 013416 CALL .CKEOS ; .....MUST HAVE E-O-S AT THIS POINT
013416 004737 000256' JSR PC,.CKEOS
8824 013422 CALL .TPTST ; .....SEE IF THIS NUMBER IS NEGATIVE
013422 004737 011460' JSR PC,.TPTST
8825 013426 003005 BGT 20$ ; .....YES -- GO ON
8826 013430 005060 000004 CLR 4(R0) ; .....YES -- FIX IT UP
8827 013434 042760 177774 000002 BIC #^C3,2(R0) ; .....SO
8828 013442 20$:
8829 013442 POP R1 ; .....GET THE POINTER TO THE FIRST PART
013442 012601 MOV (SP)+,R1
8830 013444 052021 BIS (R0)+,(R1)+ ; ....ASSEMBLE THE NEW NUMBER
8831 013446 052021 BIS (R0)+,(R1)+ ; ....FROM BOTH HALVES
8832 013450 051011 BIS (R0),(R1) ; ....SO
8833 013452 062706 000006 ADD #^D6,SP ; ....RESET THE STACK
8834 013456 024141 CMP -(R1),-(R1) ; .BACK THE POINTER UP
8835 013460 010100 MOV R1,R0 ; .PUT IT IN R0
8836 013462 30$:
8837 013462 POP R1 ; .RESTORE R1
013462 012601 MOV (SP)+,R1
8838 013464 RETURN ; TO CALLER
013464 000207 RTS PC
8839 013466 GTNORE:
8840 013466 000137 014520' JMP GTNNOR ; GIVE "NOR" ERROR
8841 ;
8842 013472 GTNNER:
8843 013472 ERROR$ NER ; ERROR -- NUMERIC EXPRESSION REQUIRED
013472 012746 054132 MOV #^RNER,-(SP)
013476 104400 TRAP TC.ERR
8844 ;
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 228
.GTOPC -- KL I/O OPCODE DECODER FOR ".GTNUM"
8846 .SBTTL .GTOPC -- KL I/O OPCODE DECODER FOR ".GTNUM"
8847
8848 ;+
8849 ; .GTOPC -- KL I/O OPCODE DECODER ROUTINE
8850 ;
8851 ; THIS ROUTINE WILL DECODE AN ARGUMENT OF THE FORM "FUNC DEV" WHERE
8852 ; FUNC IS ONE OF THE FOLLOWING "CONO,CONI,DATAO,DATAI,BLKO,BLKI,CONSO,
8853 ; CONSZ" AND DEV IS A DEVICE CODE. THE ROUTINE WILL RETURN IN THE THREE
8854 ; WORD BLOCK POINTED TO BY R0 THE LEFT HALF OF THE 36 BIT KL INSTRUCTION
8855 ; IN THE FIRST 18 BITS.
8856
8857 ; THIS ROUTINE ADDED FOR TCO 5.1018
8858 ;
8859 ; INPUT ARGUMENTS:
8860 ;
8861 ; R0 POINTS TO THE 3 WORD DESTINATION BLOCK
8862 ; R5 POINTS TO INPUT STREAM
8863 ;
8864 ; OUTPUT ARGUMENTS:
8865 ;
8866 ; R0 POINTS TO NUMBER WITH LEFT HALF FILLED IN
8867 ; R5 POINTS TO FIRST CHARACTER AFTER "FUNC DEV"
8868 ;
8869 ; ERROR CODES RETURNED:
8870 ;
8871 ; ILI -- ILLEGAL INSTRUCTION
8872 ; NER -- NUMERIC EXPRESSION REQUIRED
8873 ; NOR -- NUMBER OUT OF RANGE
8874 ;-
8875
8876 013500 .GTOPC::
8877 013500 PUSH <R0,R1,R5> ; SAVE REGISTERS
013500 010046 MOV R0,-(SP)
013502 010146 MOV R1,-(SP)
013504 010546 MOV R5,-(SP)
8878 013506 005010 CLR (R0) ; CLEAR BITS 20-35
8879 013510 052710 100000 BIS #100000,(R0) ; SET BIT 20 FOR I/O OPCODE
8880 013514 052760 000003 000002 BIS #3,2(R0) ; SET BITS 18-19 FOR I/O OPCODE
8881 013522 012701 007166' MOV #IOTAB,R1 ; TABLE PTR TO R1
8882 013526 012100 10$: MOV (R1)+,R0 ; TEXT PTR TO R0
8883 013530 001455 BEQ GTNILI ; TABLE DONE?
8884 013532 011605 MOV (SP),R5 ; RESTORE R5 (CHANGED ON PARTIAL MATCH)
8885 013534 CALL .SSCAN ; NO -- CHECK FOR MATCH
013534 004737 010760' JSR PC,.SSCAN
8886 013540 103772 BCS 10$ ; NO MATCH
8887 013542 001371 BNE 10$ ; NOT EXACT MATCH
8888 013544 005726 TST (SP)+ ; R5 NO LONGER NEEDED
8889 013546 162701 007170' SUB #IOTAB+2,R1 ; GET TABLE OFFSET
8890 013552 006301 ASL R1 ; PUT INSTR CODE IN POSITION
8891 013554 006301 ASL R1
8892 013556 006301 ASL R1
8893 013560 006301 ASL R1
8894 013562 016600 000002 MOV 2(SP),R0 ; RESTORE R0
8895 013566 050110 BIS R1,(R0) ; SET INSTR CODE
8896 013570 122715 000040 CMPB #' ,(R5) ; NEXT CHAR A SPACE?
8897 013574 001033 BNE GTNILI ; NO -- ERROR
8898 013576 CALL .CKARG ; YES -- NEXT ARGUMENT NUMERIC?
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 228-1
.GTOPC -- KL I/O OPCODE DECODER FOR ".GTNUM"
013576 004737 000070' JSR PC,.CKARG
8899 013602 100333 BPL GTNNER ; NO -- ERROR
8900 013604 CALL .GTELN ; YES -- GET DEVICE CODE
013604 004737 013204' JSR PC,.GTELN
8901 013610 020027 000774 CMP R0,#774 ; IN RANGE?
8902 013614 101324 BHI GTNORE ; NO -- TOO LARGE ERROR
8903 013616 032700 000003 BIT #3,R0 ; YES -- ILLEGAL BITS ON?
8904 013622 001321 BNE GTNORE ; YES -- ERROR
8905 013624 006300 ASL R0 ; NO -- PUT DEVICE CODE IN POSITION
8906 013626 006300 ASL R0
8907 013630 006300 ASL R0
8908 013632 006300 ASL R0
8909 013634 006300 ASL R0
8910 013636 006300 ASL R0
8911 013640 010001 MOV R0,R1 ; STORE VALUE IN R1
8912 013642 016600 000002 MOV 2(SP),R0 ; RESTORE R0
8913 013646 050110 BIS R1,(R0) ; SET DEVICE CODE
8914 013650 122725 000054 CMPB #',,(R5)+ ; NEXT CHAR A COMMA?
8915 013654 001003 BNE GTNILI ; NO -- ERROR
8916 013656 POP <R1,R0> ; YES -- RESTORE REGISTERS
013656 012601 MOV (SP)+,R1
013660 012600 MOV (SP)+,R0
8917 013662 RETURN
013662 000207 RTS PC
8918 ;
8919 013664 GTNILI:
8920 013664 ERROR$ ILI ; ERROR -- ILLEGAL INSTRUCTION
013664 012746 035051 MOV #^RILI,-(SP)
013670 104400 TRAP TC.ERR
8921 ;
8922
8923 007166 .PSECT DATA
8924
8925 007166 IOTAB:
8926 007166 002203' .WORD BLKIS
8927 007170 002210' .WORD DATAIS
8928 007172 002216' .WORD BLKOS
8929 007174 002223' .WORD DATAOS
8930 007176 002231' .WORD CONOS
8931 007200 002236' .WORD CONIS
8932 007202 002243' .WORD CONSZS
8933 007204 002251' .WORD CONSOS
8934 007206 000000 .WORD 0
8935
8936 002203 .PSECT MESSAG
8937
8938 002203 102 114 113 BLKIS: .ASCIZ /BLKI/
002206 111 000
8939 002210 104 101 124 DATAIS: .ASCIZ /DATAI/
002213 101 111 000
8940 002216 102 114 113 BLKOS: .ASCIZ /BLKO/
002221 117 000
8941 002223 104 101 124 DATAOS: .ASCIZ /DATAO/
002226 101 117 000
8942 002231 103 117 116 CONOS: .ASCIZ /CONO/
002234 117 000
8943 002236 103 117 116 CONIS: .ASCIZ /CONI/
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 228-2
.GTOPC -- KL I/O OPCODE DECODER FOR ".GTNUM"
002241 111 000
8944 002243 103 117 116 CONSZS: .ASCIZ /CONSZ/
002246 123 132 000
8945 002251 103 117 116 CONSOS: .ASCIZ /CONSO/
002254 123 117 000
8946
8947 013672 .PSECT
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 229
.GTEXP -- EXPRESSION EVALUATOR FOR ".GTNUM" 7603.03
8949 .SBTTL .GTEXP -- EXPRESSION EVALUATOR FOR ".GTNUM" 7603.03
8950
8951 ;+
8952 ; .GTEXP -- EXPRESSION EVALUATOR FOR ".GTNUM"
8953 ;
8954 ; THIS ROUTINE EVALUATES NUMERIC EXPRESSIONS FOR ".GTNUM".
8955 ;
8956 ; DEFINITION OF AN EXPRESSION:
8957 ;
8958 ; EXP=TERM+TERM!TERM-TERM!TERM+TERM+....!TERM-TERM-....!TERM
8959 ;
8960 ; INPUT ARGUMENTS:
8961 ;
8962 ; R0 POINTS TO A THREE WORD BUFFER
8963 ;
8964 ; OUTPUT ARGUMENTS:
8965 ;
8966 ; R0 POINTS TO THE EVALUATED EXPRESSION
8967 ;
8968 ; ERROR CODES RETURNED:
8969 ;
8970 ; NONE.
8971 ;-
8972
8973 013672 .GTEXP::
8974 013672 CALL .GTTRM ; GET THE NEXT TERM
013672 004737 013766' JSR PC,.GTTRM
8975 013676 10$:
8976 013676 122715 000053 CMPB #'+,(R5) ; DID HE SAY ADD?
8977 013702 001404 BEQ 20$ ; YES -- GO DO THE ADDITION
8978 013704 122715 000055 CMPB #'-,(R5) ; NO -- DID HE SAY SUBTRACT?
8979 013710 001404 BEQ 30$ ; YES -- GO DO THE SUBTRACTION
8980 013712 RETURN ; NO -- JUST RETURN
013712 000207 RTS PC
8981
8982 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 230
.GTEXP -- EXPRESSION EVALUATOR FOR ".GTNUM" 7603.03
8984 ; [CONTINUED FROM THE PREVIOUS PAGE]
8985
8986 013714 20$:
8987 013714 012702 011502' MOV #.TPADD,R2 ; DISPATCH ADDRESS TO R2
8988 013720 000402 BR 40$ ; TO COMMON ROUTINE
8989 ;
8990 013722 30$:
8991 013722 012702 011546' MOV #.TPSUB,R2 ; DISPATCH ADDRESS TO R2
8992 013726 40$:
8993 013726 112504 MOVB (R5)+,R4 ; GET OVER THE OPERATOR CHARACTER
8994 013730 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
8995 013732 005046 CLR -(SP) ; .
8996 013734 005046 CLR -(SP) ; ..
8997 013736 010601 MOV SP,R1 ; ...SCRATCH POINTER TO R1
8998 013740 PUSH R2 ; ...SAVE THE DISPATCH ADDRESS
013740 010246 MOV R2,-(SP)
8999 013742 PUSH R0 ; ....AND PREVIOUS POINTER
013742 010046 MOV R0,-(SP)
9000 013744 010100 MOV R1,R0 ; .....CURRENT POINTER TO R0
9001 013746 CALL .GTTRM ; .....GET THE NEXT TERM
013746 004737 013766' JSR PC,.GTTRM
9002 013752 010001 MOV R0,R1 ; .....CURRENT POINTER TO R1
9003 013754 POP R0 ; .....RESTORE PREVIOUS POINTER
013754 012600 MOV (SP)+,R0
9004 013756 CALL @(SP)+ ; ....DO THE ADDITION OR SUBTRACTION
013756 004736 JSR PC,@(SP)+
9005 013760 062706 000006 ADD #^D6,SP ; ...RESET THE STACK
9006 013764 000744 BR 10$ ; AND SEE IF THERE IS MORE
9007 ;
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 231
.GTTRM -- TERM EVALUATOR FOR ".GTNUM" 7603.03
9009 .SBTTL .GTTRM -- TERM EVALUATOR FOR ".GTNUM" 7603.03
9010
9011 ;+
9012 ; .GTTRM -- TERM EVALUATOR FOR ".GTNUM"
9013 ;
9014 ; THIS ROUTINE EVALUATES NUMERIC TERMS FOR ".GTNUM".
9015 ;
9016 ; DEFINITION OF A TERM:
9017 ;
9018 ; TERM=FACTOR*FACTOR!FACTOR/FACTOR!FACTOR*FACTOR*....!FACTOR/FACTOR/....!FACTOR
9019 ;
9020 ; INPUT ARGUMENTS:
9021 ;
9022 ; R0 POINTS TO A THREE WORD BUFFER
9023 ;
9024 ; OUTPUT ARGUMENTS:
9025 ;
9026 ; R0 POINTS TO THE EVALUATED TERM
9027 ;
9028 ; ERROR CODES RETURNED:
9029 ;
9030 ; NONE.
9031 ;-
9032
9033 013766 .GTTRM::
9034 013766 CALL .GTFCT ; GET THE NEXT FACTOR
013766 004737 014100' JSR PC,.GTFCT
9035 013772 001411 BEQ 20$ ; EXIT IF NULL ARGUMENT
9036 013774 10$:
9037 013774 122715 000137 CMPB #'_,(R5) ; DID HE SAY SHIFT?
9038 014000 001407 BEQ 30$ ; YES -- GO DO THE SHIFT
9039 014002 122715 000052 CMPB #'*,(R5) ; NO -- DID HE SAY MULTIPLY?
9040 014006 001412 BEQ 50$ ; YES -- GO DO THE MULTIPLICATION
9041 014010 122715 000057 CMPB #'/,(R5) ; NO -- DID HE SAY DIVIDE?
9042 014014 001404 BEQ 40$ ; YES -- GO DO THE DIVISION
9043 014016 20$:
9044 014016 RETURN ; NO -- JUST RETURN
014016 000207 RTS PC
9045
9046 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 232
.GTTRM -- TERM EVALUATOR FOR ".GTNUM" 7603.03
9048 ; [CONTINUED FROM THE PREVIOUS PAGE]
9049
9050 014020 30$:
9051 014020 012702 012022' MOV #.TPSHL,R2 ; DISPATCH TO R2
9052 014024 000405 BR 60$ ; TO COMMON CODE
9053 ;
9054 014026 40$:
9055 014026 012702 011144' MOV #.TPDIV,R2 ; DISPATCH TO R2
9056 014032 000402 BR 60$ ; TO COMMON ROUTINE
9057 ;
9058 014034 50$:
9059 014034 012702 011572' MOV #.TPMUL,R2 ; DISPATCH TO R2
9060 014040 60$:
9061 014040 112504 MOVB (R5)+,R4 ; GET OVER THE OPERATOR CHARACTER
9062 014042 005046 CLR -(SP) ; CREATE A SCRATCH BUFFER ON THE STACK
9063 014044 005046 CLR -(SP) ; .
9064 014046 005046 CLR -(SP) ; ..
9065 014050 010601 MOV SP,R1 ; ...SCRATCH POINTER TO R1
9066 014052 PUSH R2 ; ...SAVE THE DISPATCH POINTER
014052 010246 MOV R2,-(SP)
9067 014054 PUSH R0 ; ....SAVE PREVIOUS NUMBER POINTER
014054 010046 MOV R0,-(SP)
9068 014056 010100 MOV R1,R0 ; .....CURRENT POINTER TO R0
9069 014060 CALL .GTFCT ; .....GET THE NEXT FACTOR
014060 004737 014100' JSR PC,.GTFCT
9070 014064 010001 MOV R0,R1 ; .....POINTER TO R1
9071 014066 POP R0 ; .....PREVIOUS POINTER TO R0
014066 012600 MOV (SP)+,R0
9072 014070 CALL @(SP)+ ; ....DO DIVISION OR MULTIPLICATION
014070 004736 JSR PC,@(SP)+
9073 014072 062706 000006 ADD #^D6,SP ; ...CLEAR THE STACK
9074 014076 000736 BR 10$ ; AND SEE IF THERE IS MORE
9075 ;
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 233
.GTFCT -- FACTOR EVALUATOR FOR ".GTNUM" 7603.03
9077 .SBTTL .GTFCT -- FACTOR EVALUATOR FOR ".GTNUM" 7603.03
9078
9079 ;+
9080 ; .GTFCT -- FACTOR EVALUATOR FOR ".GTNUM"
9081 ;
9082 ; THIS ROUTINE EVALUATES NUMERIC FACTORS FOR ".GTNUM".
9083 ;
9084 ; DEFINITION OF AN FACTOR:
9085 ;
9086 ; FACTOR=(EXP)!+FACTOR!-FACTOR!NUMBER
9087 ;
9088 ; INPUT ARGUMENTS:
9089 ;
9090 ; R0 POINTS TO A THREE WORD BUFFER
9091 ;
9092 ; OUTPUT ARGUMENTS:
9093 ;
9094 ; R0 POINTS TO THE EVALUATED FACTOR
9095 ;
9096 ; ERROR CODES RETURNED:
9097 ;
9098 ; NONE.
9099 ;-
9100
9101 .ENABL LSB
9102
9103 014100 .GTFCT::
9104 014100 122715 000136 CMPB #'^,(R5) ; SPECIAL RADIX?
9105 014104 001435 BEQ 30$ ; YES -- GO HANDLE IT
9106 014106 122715 000050 CMPB #'(,(R5) ; NO -- DOES THE FIRST CHARACTER OPEN EXPRESSION?
9107 014112 001517 BEQ 65$ ; YES -- GO HANDLE IT
9108 014114 122715 000053 CMPB #'+,(R5) ; NO -- IS IT A <PLUS>?
9109 014120 001503 BEQ 60$ ; YES -- GO HANDLE <PLUS>
9110 014122 122715 000055 CMPB #'-,(R5) ; NO -- IS IT A <MINUS>?
9111 014126 001500 BEQ 60$ ; YES -- GO HANDLE <MINUS>
9112 014130 CALL .GTNBR ; NO -- GO GET A NUMBER
014130 004737 014374' JSR PC,.GTNBR
9113 014134 10$:
9114 014134 122715 000047 CMPB #'',(R5) ; RELOCATE?
9115 014140 001404 BEQ 20$ ; YES -- DO IT
9116 014142 122715 000042 CMPB #'",(R5) ; NO -- UNRELOCATE?
9117 014146 001401 BEQ 20$ ; YES -- DO IT
9118 014150 15$:
9119 014150 RETURN ; TO CALLER
014150 000207 RTS PC
9120
9121 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 234
.GTFCT -- FACTOR EVALUATOR FOR ".GTNUM" 7603.03
9123 ; [CONTINUED FROM THE PREVIOUS PAGE]
9124
9125 014152 20$:
9126 014152 PUSH R1 ; SAVE R1
014152 010146 MOV R1,-(SP)
9127 014154 013701 000210' MOV .RELWD,R1 ; .RELOCATION TO R1
9128 014160 122715 000042 CMPB #'",(R5) ; .UNRELOCATE?
9129 014164 001001 BNE 25$ ; .NO -- GO ON
9130 014166 005401 NEG R1 ; .YES -- NEGATE IT
9131 014170 25$:
9132 014170 060110 ADD R1,(R0) ; .COMPUTE THE FACTOR
9133 014172 105725 TSTB (R5)+ ; .GET OVER THE SYMBOL
9134 014174 POP R1 ; .RESTORE R1
014174 012601 MOV (SP)+,R1
9135 014176 000764 BR 15$ ; AND EXIT
9136 ;
9137 014200 30$:
9138 014200 105725 TSTB (R5)+ ; GET OVER THE UP-ARROW
9139 014202 112546 MOVB (R5)+,-(SP) ; SAVE THE NEXT CHARACTER
9140 014204 CALL .CKARG ; .LOOK FOR A TRAILING ARGUMENT
014204 004737 000070' JSR PC,.CKARG
9141 014210 001417 BEQ GTFILC ; .ERROR IF CC-Z IS SET
9142 014212 POP R4 ; .RESTORE THE CHARACTER
014212 012604 MOV (SP)+,R4
9143 014214 122704 000103 CMPB #'C,R4 ; .COMPLEMENT?
9144 014220 001436 BEQ 55$ ; .YES -- PROCESS COMPLEMENT
9145 014222 PUSH .IRADX ; .NO -- SAVE THE CURRENT RADIX
014222 013746 000134' MOV .IRADX,-(SP)
9146 014226 122704 000104 CMPB #'D,R4 ; .DECIMAL?
9147 014232 001415 BEQ 40$ ; .YES -- PROCESS DECIMAL
9148 014234 122704 000102 CMPB #'B,R4 ; .NO -- BINARY?
9149 014240 001406 BEQ 35$ ; .YES -- PROCESS BINARY
9150 014242 122704 000117 CMPB #'O,R4 ; .NO -- OCTAL?
9151 014246 001413 BEQ 45$ ; .YES -- PROCESS OCTAL
9152 014250 GTFILC:
9153 014250 ERROR$ ILC ; .NO -- GIVE "ILC" ERROR
014250 012746 035043 MOV #^RILC,-(SP)
014254 104400 TRAP TC.ERR
9154 ;
9155
9156 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 235
.GTFCT -- FACTOR EVALUATOR FOR ".GTNUM" 7603.03
9158 ; [CONTINUED FROM THE PREVIOUS PAGE]
9159
9160 014256 35$:
9161 014256 012737 000002 000134' MOV #^D2,.IRADX ; .SET THE RADIX TO BINARY
9162 014264 000407 BR 50$ ; .TO COMMON CODE
9163 ;
9164 014266 40$:
9165 014266 012737 000012 000134' MOV #^D10,.IRADX ; .SET THE RADIX TO DECIMAL
9166 014274 000403 BR 50$ ; .TO COMMON CODE
9167 ;
9168 014276 45$:
9169 014276 012737 000010 000134' MOV #^D8,.IRADX ; .SET THE RADIX TO OCTAL
9170 014304 50$:
9171 014304 CALL .GTFCT ; .GET THE FACTOR
014304 004737 014100' JSR PC,.GTFCT
9172 014310 POP .IRADX ; .RESTORE THE ORIGINAL RADIX
014310 012637 000134' MOV (SP)+,.IRADX
9173 014314 000707 BR 10$ ; AND EXIT
9174 ;
9175 014316 55$:
9176 014316 CALL .GTFCT ; GET THE FACTOR
014316 004737 014100' JSR PC,.GTFCT
9177 014322 CALL .TPCOM ; AND INVERT IT
014322 004737 011366' JSR PC,.TPCOM
9178 014326 000702 BR 10$ ; EXIT
9179 ;
9180 014330 60$:
9181 014330 112546 MOVB (R5)+,-(SP) ; SAVE THE NEXT CHARACTER
9182 014332 CALL .GTFCT ; .GO LOOK FOR MORE
014332 004737 014100' JSR PC,.GTFCT
9183 014336 122726 000055 CMPB #'-,(SP)+ ; .WAS THE PREFIX A <MINUS>?
9184 014342 001274 BNE 10$ ; NO -- JUST EXIT
9185 014344 CALL .TPNEG ; YES -- NEGATE IT
014344 004737 011376' JSR PC,.TPNEG
9186 014350 000671 BR 10$ ; AND EXIT
9187 ;
9188 014352 65$:
9189 014352 112504 MOVB (R5)+,R4 ; GET OVER THE PAREN
9190 014354 CALL .GTEXP ; READ THIS EXPRESSION
014354 004737 013672' JSR PC,.GTEXP
9191 014360 122725 000051 CMPB #'),(R5)+ ; DID WE END IT PROPERLY?
9192 014364 001663 BEQ 10$ ; YES -- JUST EXIT
9193 014366 ERROR$ RPM ; NO -- ERROR -- RIGHT PARENTHESES MISSING
014366 012746 071415 MOV #^RRPM,-(SP)
014372 104400 TRAP TC.ERR
9194 ;
9195
9196 .DSABL LSB
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 236
.GTNBR -- NUMBER EVALUATOR FOR ".GTNUM" 7603.03
9198 .SBTTL .GTNBR -- NUMBER EVALUATOR FOR ".GTNUM" 7603.03
9199
9200 ;+
9201 ; .GTNBR -- NUMBER EVALUATOR FOR ".GTNUM"
9202 ;
9203 ; THIS ROUTINE EVALUATES NUMBERS FOR ".GTNUM".
9204 ;
9205 ; INPUT ARGUMENTS:
9206 ;
9207 ; R0 POINTS TO A THREE WORD BUFFER
9208 ;
9209 ; OUTPUT ARGUMENTS:
9210 ;
9211 ; R0 POINTS TO THE EVALUATED NUMBER
9212 ;
9213 ; ERROR CODES RETURNED:
9214 ;
9215 ; NONE.
9216 ;-
9217
9218 014374 .GTNBR::
9219 014374 005037 000132' CLR .INCHC ; CLEAR THE CHARACTER COUNT
9220 014400 PUSH R1 ; SAVE R1
014400 010146 MOV R1,-(SP)
9221 014402 005046 CLR -(SP) ; .SET UP THE INPUT RADIX
9222 014404 005046 CLR -(SP) ; ..
9223 014406 PUSH .IRADX ; ...SO
014406 013746 000134' MOV .IRADX,-(SP)
9224 014412 010601 MOV SP,R1 ; ....POINT TO THE INPUT RADIX
9225 014414 10$:
9226 014414 112504 MOVB (R5)+,R4 ; ....GET THE CHARACTER INTO R4
9227 014416 132764 000002 001450' BITB #CH.NUM,.CHTAB(R4)
9228 014424 001422 BEQ 20$ ; ....EXIT IF NON-NUMERIC
9229 014426 005237 000132' INC .INCHC ; ....INCREMENT THE CHARACTER COUNT
9230 014432 142704 177760 BICB #^C17,R4 ; ....FLUSH ASCII
9231 014436 120411 CMPB R4,(R1) ; ....DID WE EXCEED THE INPUT RADIX?
9232 014440 002027 BGE GTNNOR ; ....YES -- GIVE "NOR" ERROR
9233 014442 CALL .TPMUL ; ....NO -- MAKE ROOM FOR THIS DIGIT
014442 004737 011572' JSR PC,.TPMUL
9234 014446 PUSH (R1) ; ....SAVE THE RADIX
014446 011146 MOV (R1),-(SP)
9235 014450 010411 MOV R4,(R1) ; .....SET UP TO ADD THIS DIGIT
9236 014452 CALL .TPADD ; .....TO THE CUMULATIVE RESULT
014452 004737 011502' JSR PC,.TPADD
9237 014456 032760 177760 000004 BIT #^C17,4(R0) ; .....HAVE WE OVERFLOWED THE NUMBER?
9238 014464 001015 BNE GTNNOR ; .....YES -- GIVE "NOR" ERROR
9239 014466 POP (R1) ; .....NO -- RESTORE THE RADIX
014466 012611 MOV (SP)+,(R1)
9240 014470 000751 BR 10$ ; ....AND CONTINUE
9241 ;
9242
9243 ; [CONTINUED ON THE FOLLOWING PAGE]
TYINP -- COMMAND PARSER COMMAND MACRO M1113 10-NOV-81 17:44 PAGE 237
.GTNBR -- NUMBER EVALUATOR FOR ".GTNUM" 7603.03
9245 ; [CONTINUED FROM THE PREVIOUS PAGE]
9246
9247 014472 20$:
9248 014472 062706 000006 ADD #^D6,SP ; ....FLUSH THE STACK
9249 014476 POP R1 ; .RESTORE R1
014476 012601 MOV (SP)+,R1
9250 014500 105745 TSTB -(R5) ; BACK THE INPUT POINTER UP
9251 014502 005737 000132' TST .INCHC ; LOOK AT THE CHARACTER COUNT
9252 014506 001401 BEQ GTNMRA ; GIVE "MRA" ERROR IF NONE THERE
9253 014510 RETURN ; TO CALLER
014510 000207 RTS PC
9254 014512 GTNMRA:
9255 014512 ERROR$ MRA ; ERROR -- MISSING REQUIRED ARGUMENT
014512 012746 052021 MOV #^RMRA,-(SP)
014516 104400 TRAP TC.ERR
9256 ;
9257 014520 GTNNOR:
9258 014520 ERROR$ NOR ; ERROR -- NUMBER OUT OF RANGE
014520 012746 054752 MOV #^RNOR,-(SP)
014524 104400 TRAP TC.ERR
9259 ;
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 239
.GTNBR -- NUMBER EVALUATOR FOR ".GTNUM" 7603.03
9262 .TITLE TYOUT -- GENERAL TERMINAL OUTPUT MODULE 7603.30
9263
9264 .IDENT "006110"
9265
9266 ;
9267 ; COPYRIGHT (C) 1975, 1979 BY
9268 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
9269 ;
9270 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
9271 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
9272 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
9273 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
9274 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
9275 ;
9276 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
9277 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
9278 ; CORPORATION.
9279 ;
9280 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
9281 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
9282 ;
9283 ; MODULE: GENERAL TERMINAL OUTPUT
9284 ;
9285 ; VERSION: 06-11
9286 ;
9287 ; AUTHOR: R. BELANGER
9288 ;
9289 ; DATE: 7603.30
9290 ;
9291 ; THIS MODULE CONTAINS:
9292 ;
9293 ; 1) GENERAL TERMINAL OUTPUT CODE
9294 ;
9295 ; MODIFICATIONS:
9296 ;
9297 ; NO. DATE PROGRAMMER REASON
9298 ; --- ---- ---------- ------
9299 ; [5.1000] 24-AUG-79 K. LEFEBVRE ADD LINE PRINTER SUPPORT
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 240
.TYAST -- SPECIAL CHARACTER OUTPUT SUBROUTINES 7601.23
9301 .SBTTL .TYAST -- SPECIAL CHARACTER OUTPUT SUBROUTINES 7601.23
9302
9303 ;+
9304 ; .TYAST -- SUBROUTINE TO TYPE AN <ASTERISK> ON THE CONSOLE OUTPUT DEVICE.
9305 ; .TYCOL -- SUBROUTINE TO TYPE A <COLON> ON THE CONSOLE OUTPUT DEVICE.
9306 ; .TYCOM -- SUBROUTINE TO TYPE A <COMMA> ON THE CONSOLE OUTPUT DEVICE.
9307 ; .TYMIN -- SUBROUTINE TO TYPE A <MINUS> ON THE CONSOLE OUTPUT DEVICE.
9308 ; .TYSLS -- SUBROUTINE TO TYPE A <SLASH> ON THE CONSOLE OUTPUT DEVICE.
9309 ; .TYSPC -- SUBROUTINE TO TYPE A <SPACE> ON THE CONSOLE OUTPUT DEVICE.
9310 ; .TYUPA -- SUBROUTINE TO TYPE AN <UP-ARROW> ON THE CONSOLE OUTPUT DEVICE.
9311 ;
9312 ; THESE SUBROUTINES TYPE THE INDICATED CHARACTER(S) ON THE CONSOLE
9313 ; OUTPUT DEVICE.
9314 ;
9315 ; INPUT ARGUMENTS:
9316 ;
9317 ; NONE.
9318 ;
9319 ; OUTPUT ARGUMENTS:
9320 ;
9321 ; NONE.
9322 ;
9323 ; ERROR CODES RETURNED:
9324 ;
9325 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9326 ;-
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 241
.TYAST -- SPECIAL CHARACTER OUTPUT SUBROUTINES 7601.23
9328 .ENABL LSB
9329
9330 014526 .TYCOL::
9331 014526 PUSH R0 ; SAVE R0
014526 010046 MOV R0,-(SP)
9332 014530 012700 000072 MOV #':,R0 ; .<COLON> TO R0
9333 014534 000423 BR 10$ ; .DO OUTPUT
9334 ;
9335 014536 .TYCOM::
9336 014536 PUSH R0 ; SAVE R0
014536 010046 MOV R0,-(SP)
9337 014540 012700 000054 MOV #',,R0 ; .<COMMA> TO R0
9338 014544 000417 BR 10$ ; .OUTPUT IT
9339 ;
9340 014546 .TYMIN::
9341 014546 PUSH R0 ; SAVE R0
014546 010046 MOV R0,-(SP)
9342 014550 012700 000055 MOV #'-,R0 ; <HYPHEN> TO R0
9343 014554 000413 BR 10$ ; .DO OUTPUT
9344 ;
9345 014556 .TYSLS::
9346 014556 PUSH R0 ; SAVE R0
014556 010046 MOV R0,-(SP)
9347 014560 012700 000057 MOV #'/,R0 ; .<SLASH> TO R0
9348 014564 000407 BR 10$ ; .OUTPUT IT
9349 ;
9350 014566 .TYSPC::
9351 014566 PUSH R0 ; SAVE R0
014566 010046 MOV R0,-(SP)
9352 014570 012700 000040 MOV #.SPACE,R0 ; .<SPACE> TO R0
9353 014574 000403 BR 10$ ; .OUTPUT IT
9354 ;
9355 014576 .TYUPA::
9356 014576 PUSH R0 ; SAVE R0
014576 010046 MOV R0,-(SP)
9357 014600 012700 000136 MOV #'^,R0 ; .<UP-ARROW> TO R0
9358 014604 10$:
9359 014604 CALL .TYCHR ; .OUTPUT IT
014604 004737 015504' JSR PC,.TYCHR
9360 014610 POP R0 ; .RESTORE R0
014610 012600 MOV (SP)+,R0
9361 014612 RETURN ; TO CALLER
014612 000207 RTS PC
9362
9363 .DSABL LSB
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 242
.TYACE -- TYPE AC ADDR AND CONTENTS
9365 .SBTTL .TYACE -- TYPE AC ADDR AND CONTENTS
9366
9367 ;+
9368 ; .TYACE -- SUBROUTINE TO TYPE AC ADDR AND CONTENTS
9369 ;
9370 ; THIS ROUTINE WILL TYPE:
9371 ; N:AAAAAA/ DDDDDD DDDDDD
9372 ; N-AC BLOCK NUMBER
9373 ; A-AC ADDR
9374 ; D-AC DATA
9375 ;
9376 ; INPUT ARGUMENTS:
9377 ;
9378 ; +---------------+
9379 ; R0=> ! BLOCK ! ADDR !
9380 ; +---------------+
9381 ; ! KL BITS 20-35 !
9382 ; +---------------+
9383 ; ! KL BITS 4-19 !
9384 ; +---------------+
9385 ; ! KL BITS 0-3 !
9386 ; +---------------+
9387 ;
9388 ; OUTPUT ARGUMENTS:
9389 ;
9390 ; NONE
9391 ;
9392 ; ERROR CODES RETURNED:
9393 ;
9394 ; NONE
9395 ;-
9396
9397 014614 .TYACE::
9398 014614 PUSH R0 ; SAVE R0
014614 010046 MOV R0,-(SP)
9399 014616 113700 000152' MOVB .PASS,R0 ; PASS NO.
9400 014622 005200 INC R0 ; MAKE 1 OR 2
9401 014624 062700 000060 ADD #'0,R0 ; MAKE ASCII
9402 014630 110037 002274' MOVB R0,PRMFM+13. ; PUT IN MESSAGE
9403 014634 012700 002257' MOV #PRMFM,R0 ; FM SWEEP PROMPT
9404 014640 CALL .TYMSG ; TYPE IT
014640 004737 015446' JSR PC,.TYMSG
9405 014644 POP R0 ; RESTORE R0
014644 012600 MOV (SP)+,R0
9406 014646 .TYAC1::PUSH R2 ; ALT. ENTRY PT., SAVE R2
014646 010246 MOV R2,-(SP)
9407 014650 010002 MOV R0,R2 ; SAVE R0
9408 014652 011000 MOV (R0),R0 ; GET FIRST WORD OF DATA
9409 014654 000300 SWAB R0 ; GET BLOCK NO. IN LOW BYTE
9410 014656 042700 177600 BIC #177600,R0 ; CLEAR ADDR
9411 014662 062700 000060 ADD #'0,R0 ; CONVERT TO ASCII
9412 014666 CALL .TYCHR ; TYPE IT
014666 004737 015504' JSR PC,.TYCHR
9413 014672 CALL .TYCOL ; TYPE COLON
014672 004737 014526' JSR PC,.TYCOL
9414 014676 012237 007210' MOV (R2)+,ADRTMP ; GET FIRST DATA VALUE
9415 014702 042737 177600 007210' BIC #177600,ADRTMP ; CLEAR BLOCK NO.
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 242-1
.TYACE -- TYPE AC ADDR AND CONTENTS
9416 014710 012700 007210' MOV #ADRTMP,R0 ; PTR TO AC ADDR
9417 014714 CALL .TYKLA ; TYPE KL ADDR
014714 004737 015072' JSR PC,.TYKLA
9418 014720 CALL .TYSLS ; TYPE SLASH
014720 004737 014556' JSR PC,.TYSLS
9419 014724 CALL .TYSPC ; TYPE SPACE
014724 004737 014566' JSR PC,.TYSPC
9420 014730 010200 MOV R2,R0 ; PTR TO AC DATA
9421 014732 CALL .TYKLN ; TYPE KL DATA
014732 004737 015142' JSR PC,.TYKLN
9422 014736 CALL .TCRLF ; TYPE CR-LF
014736 004737 015536' JSR PC,.TCRLF
9423 014742 POP R2 ; RESTORE R2
014742 012602 MOV (SP)+,R2
9424 014744 RETURN
014744 000207 RTS PC
9425
9426 007210 .PSECT DATA
9427
9428 007210 000000 ADRTMP: .WORD 0 ; TEMPORARY ADDR LOCATION
9429 007212 000000 .WORD 0
9430 007214 000000 .WORD 0
9431
9432 002257 .PSECT MESSAG
9433
9434 002257 040 040 040 PRMFM: .ASCIZ / FM SWEEP X> /
002262 040 106 115
002265 040 123 127
002270 105 105 120
002273 040 130 076
002276 040 000
9435
9436 014746 .PSECT
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 243
.TYELA -- SUBROUTINE TO TYPE A PDP-11 ADDRESS 7601.23
9438 .SBTTL .TYELA -- SUBROUTINE TO TYPE A PDP-11 ADDRESS 7601.23
9439
9440 ;+
9441 ; .TYELA -- SUBROUTINE TO TYPE A PDP-11 ADDRESS
9442 ; .TYELN -- SUBROUTINE TO TYPE A PDP-11 NUMBER
9443 ;
9444 ; THIS SUBROUTINE WILL TYPE AND FORMAT A PDP-11 NUMBER ACCORDING TO THE
9445 ; CURRENT OUTPUT RADIX IN ".ORADX". STANDARD FORMATS ARE:
9446 ;
9447 ; (A) BINARY: 3 DIGITS AND A SPACE -- XXX<SP>XXX<SP>.....
9448 ; (B) OCTAL: 6 DIGITS -- XXXXXX
9449 ; (C) DECIMAL: NO FORMATTING
9450 ;
9451 ; INPUT ARGUMENTS:
9452 ;
9453 ; R0 HOLDS THE NUMBER TO BE PRINTED
9454 ;
9455 ; OUTPUT ARGUMENTS (TO ".TYNCM"):
9456 ;
9457 ; R0 POINTS TO THE NUMBER TO BE PRINTED (ON THE STACK)
9458 ; R3 POINTS TO A FORMAT TABLE
9459 ;
9460 ; ERROR CODES RETURNED:
9461 ;
9462 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9463 ;-
9464 .ENABL LSB
9465
9466
9467 014746 .TYELA::
9468 014746 005037 000166' CLR .LDZFL ; NO LEADING ZEROES
9469 014752 .TYELN::
9470 014752 PUSH <R3,R2,R1,R0> ; SAVE CALLER'S REGISTERS
014752 010346 MOV R3,-(SP)
014754 010246 MOV R2,-(SP)
014756 010146 MOV R1,-(SP)
014760 010046 MOV R0,-(SP)
9471 014762 005003 CLR R3 ; ....ASSUME UNFORMATTED RADIX
9472 014764 022737 000002 000174' CMP #^D2,.ORADX ; ....BINARY?
9473 014772 001002 BNE 10$ ; ....NO
9474 014774 012703 007232' MOV #ELNBIN,R3 ; ....BINARY FORMAT TABLE TO R3
9475 015000 10$:
9476 015000 022737 000012 000174' CMP #^D10,.ORADX ; ....DECIMAL?
9477 015006 001424 BEQ 30$ ; ....YES
9478 015010 012703 007250' MOV #ELNOCT,R3 ; ....OCTAL FORMAT TABLE TO R3
9479 015014 000421 BR 30$ ; ....SET UP POINTERS AND EXIT
9480 ;
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 244
.TYP3D -- SUBROUTINE TO TYPE A THREE DIGIT NUMBER 7601.23
9482 .SBTTL .TYP3D -- SUBROUTINE TO TYPE A THREE DIGIT NUMBER 7601.23
9483
9484 ;+
9485 ; .TYP3D -- SUBROUTINE TO TYPE A THREE DIGIT NUMBER
9486 ;
9487 ; THIS SUBROUTINE WILL TYPE AND FORMAT A PDP-11 NUMBER ACCORDING TO THE
9488 ; CURRENT OUTPUT RADIX IN ".ORADX". STANDARD FORMATS ARE:
9489 ;
9490 ; (A) BINARY: 3 DIGITS AND A SPACE -- XXX<SP>XXX<SP>.....
9491 ; (B) OCTAL: 3 DIGITS -- XXX
9492 ; (C) DECIMAL: NO FORMATTING
9493 ;
9494 ; INPUT ARGUMENTS:
9495 ;
9496 ; R0 HOLDS THE NUMBER TO BE PRINTED
9497 ;
9498 ; OUTPUT ARGUMENTS (TO ".TYNCM"):
9499 ;
9500 ; R0 POINTS TO THE BYTE TO BE PRINTED (ON THE STACK)
9501 ; R3 POINTS TO A FORMAT TABLE
9502 ;
9503 ; ERROR CODES RETURNED:
9504 ;
9505 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9506 ;-
9507
9508 015016 .TYP3D::
9509 015016 PUSH <R3,R2,R1,R0> ; SAVE CALLER'S REGISTERS
015016 010346 MOV R3,-(SP)
015020 010246 MOV R2,-(SP)
015022 010146 MOV R1,-(SP)
015024 010046 MOV R0,-(SP)
9510 015026 005003 CLR R3 ; ....ASSUME UNFORMATTED RADIX
9511 015030 022737 000002 000174' CMP #^D2,.ORADX ; ....BINARY?
9512 015036 001002 BNE 20$ ; ....NO
9513 015040 012703 007240' MOV #ELBBIN,R3 ; ....BINARY FORMAT TABLE TO R3
9514 015044 20$:
9515 015044 022737 000012 000174' CMP #^D10,.ORADX ; ....DECIMAL?
9516 015052 001402 BEQ 30$ ; ....YES
9517 015054 012703 007244' MOV #ELBOCT,R3 ; ....OCTAL FORMAT TABLE TO R3
9518 015060 30$:
9519 015060 005046 CLR -(SP) ; ....SET UP BUFFERS ON THE STACK
9520 015062 005046 CLR -(SP) ; .....
9521 015064 PUSH R0 ; ......NUMBER TO BE TYPED
015064 010046 MOV R0,-(SP)
9522 015066 010600 MOV SP,R0 ; .......POINT TO IT
9523 015070 000455 BR .TYNCM ; .......AND GO TO COMMON ROUTINE
9524 ;
9525
9526 .DSABL LSB
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 245
.TYKLA -- SUBROUTINE TO TYPE A KL ADDRESS 7608.02
9528 .SBTTL .TYKLA -- SUBROUTINE TO TYPE A KL ADDRESS 7608.02
9529
9530 ;+
9531 ; .TYKLA -- SUBROUTINE TO TYPE A KL ADDRESS
9532 ;
9533 ; THIS SUBROUTINE WILL TYPE AND FORMAT A KL ADDRESS ACCORDING TO THE
9534 ; CURRENT OUTPUT RADIX IN ".ORADX". STANDARD FORMATS ARE:
9535 ;
9536 ; (A) BINARY: 3 DIGITS AND A SPACE -- XXX<SP>XXX<SP>.....
9537 ; (B) OCTAL: HALFWORD FORMAT -- XX<SP>XXXXXX
9538 ; (C) DECIMAL: NO FORMATTING
9539 ;
9540 ; INPUT ARGUMENTS:
9541 ;
9542 ; R0 POINTS TO THE KL ADDRESS TO BE PRINTED
9543 ;
9544 ; OUTPUT ARGUMENTS (TO ".TYNCM"):
9545 ;
9546 ; R0 POINTS TO THE ADDRESS TO BE PRINTED (ON THE STACK)
9547 ; R3 POINTS TO A FORMAT TABLE
9548 ;
9549 ; ERROR CODES RETURNED:
9550 ;
9551 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9552 ;-
9553
9554 .ENABL LSB
9555
9556 015072 .TYKLA::
9557 015072 005037 000166' CLR .LDZFL ; NO LEADING ZEROES
9558 015076 PUSH <R3,R2,R1,R0> ; SAVE CALLER'S REGISTERS
015076 010346 MOV R3,-(SP)
015100 010246 MOV R2,-(SP)
015102 010146 MOV R1,-(SP)
015104 010046 MOV R0,-(SP)
9559 015106 005003 CLR R3 ; ....ASSUME UNFORMATTED RADIX
9560 015110 022737 000002 000174' CMP #^D2,.ORADX ; ....BINARY?
9561 015116 001002 BNE 10$ ; ....NO
9562 015120 012703 007226' MOV #KLABIN,R3 ; ....BINARY FORMAT TABLE TO R3
9563 015124 10$:
9564 015124 022737 000012 000174' CMP #^D10,.ORADX ; ....DECIMAL?
9565 015132 001424 BEQ 30$ ; ....YES
9566 015134 012703 007252' MOV #KLAOCT,R3 ; ....OCTAL FORMAT TABLE TO R3
9567 015140 000421 BR 30$ ; ....GO DO COMMON CODE
9568 ;
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 246
.TYKLN -- SUBROUTINE TO TYPE A KL NUMBER 7608.02
9570 .SBTTL .TYKLN -- SUBROUTINE TO TYPE A KL NUMBER 7608.02
9571
9572 ;+
9573 ; .TYKLN -- SUBROUTINE TO TYPE A KL NUMBER
9574 ;
9575 ; THIS SUBROUTINE WILL TYPE AND FORMAT A KL NUMBER ACCORDING TO THE
9576 ; CURRENT OUTPUT RADIX IN ".ORADX". STANDARD FORMATS ARE:
9577 ;
9578 ; (A) BINARY: 3 DIGITS AND A SPACE -- XXX<SP>XXX<SP>.....
9579 ; (B) OCTAL: 6 DIGITS AND A SPACE -- XXXXXX<SP>XXXXXX
9580 ; (C) DECIMAL: NO FORMATTING
9581 ;
9582 ; INPUT ARGUMENTS:
9583 ;
9584 ; R0 POINTS TO THE NUMBER TO BE PRINTED
9585 ;
9586 ; OUTPUT ARGUMENTS (TO ".TYNCM"):
9587 ;
9588 ; R0 POINTS TO THE NUMBER TO BE PRINTED (ON THE STACK)
9589 ; R3 POINTS TO A FORMAT TABLE
9590 ;
9591 ; ERROR CODES RETURNED:
9592 ;
9593 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9594 ;-
9595
9596 015142 .TYKLN::
9597 015142 PUSH <R3,R2,R1,R0> ; SAVE CALLER'S REGISTERS
015142 010346 MOV R3,-(SP)
015144 010246 MOV R2,-(SP)
015146 010146 MOV R1,-(SP)
015150 010046 MOV R0,-(SP)
9598 015152 005003 CLR R3 ; ....ASSUME UNFORMATTED RADIX
9599 015154 022737 000002 000174' CMP #^D2,.ORADX ; ....BINARY?
9600 015162 001002 BNE 20$ ; ....NO
9601 015164 012703 007216' MOV #KLNBIN,R3 ; ....BINARY FORMAT TABLE TO R3
9602 015170 20$:
9603 015170 022737 000012 000174' CMP #^D10,.ORADX ; ....DECIMAL?
9604 015176 001402 BEQ 30$ ; ....YES
9605 015200 012703 007246' MOV #KLNOCT,R3 ; ....OCTAL FORMAT TABLE TO R3
9606 015204 30$:
9607 015204 062700 000006 ADD #^D6,R0 ; ....POINT TO THE END OF THE NUMBER
9608 015210 PUSH -(R0) ; ....SET IT ON THE STACK
015210 014046 MOV -(R0),-(SP)
9609 015212 042710 177760 BIC #^C17,(R0) ; .....TRUNCATE TO 36 BITS
9610 015216 PUSH <-(R0),-(R0)> ; .....PUT THE REST ON THE STACK
015216 014046 MOV -(R0),-(SP)
015220 014046 MOV -(R0),-(SP)
9611 015222 010600 MOV SP,R0 ; .......POINT TO THE STACKED NUMBER
9612 ; BR .TYNCM ; .......AND GO TO COMMON ROUTINE
9613 ;
9614
9615 .DSABL LSB
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 247
.TYNCM -- COMMON ENTRY POINT FOR ".TYNUM" 7601.23
9617 .SBTTL .TYNCM -- COMMON ENTRY POINT FOR ".TYNUM" 7601.23
9618
9619 ;+
9620 ; .TYNCM -- COMMON ENTRY POINT FOR ".TYNUM".
9621 ;
9622 ; THIS SUBROUTINE SETS UP THE REMAINDER OF THE ARGUMENTS REQUIRED
9623 ; BY ".TYNUM" FROM ".TYELN" AND ".TYKLN".
9624 ;
9625 ; INPUT ARGUMENTS:
9626 ;
9627 ; R1, R2, AND R3 ARE ON THE STACK
9628 ; R0 POINTS TO THE NUMBER TO BE PRINTED (ON THE STACK)
9629 ; R3 POINTS TO A FORMAT TABLE
9630 ;
9631 ; OUTPUT ARGUMENTS:
9632 ;
9633 ; R0 POINTS TO THE ORIGINAL NUMBER
9634 ;
9635 ; ERROR CODES RETURNED:
9636 ;
9637 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9638 ;-
9639
9640 015224 .TYNCM::
9641 015224 005046 CLR -(SP) ; .......SPACE FOR DIVISOR
9642 015226 005046 CLR -(SP) ; ........
9643 015230 005046 CLR -(SP) ; .........
9644 015232 010601 MOV SP,R1 ; ..........POINT TO IT
9645 015234 005002 CLR R2 ; ..........CLEAR R2
9646 015236 005737 000166' TST .LDZFL ; ..........ARE WE PRINTING LEADING ZEROS/
9647 015242 001006 BNE 10$ ; ..........YES -- GO ON
9648 015244 CALL .TPTST ; ..........NO -- IS THIS NUMBER .EQ. 0?
015244 004737 011460' JSR PC,.TPTST
9649 015250 001003 BNE 10$ ; ..........NO -- JUST PRINT IT
9650 015252 005003 CLR R3 ; ..........YES -- CALL IT UNFORMATTED
9651 015254 005337 000166' DEC .LDZFL ; ..........AND SAY WE PRINT ZEROES
9652 015260 10$:
9653 015260 CALL .TYNUM ; ..........FORMAT AND PRINT THE NUMBER
015260 004737 015302' JSR PC,.TYNUM
9654 015264 062706 000014 ADD #^D12,SP ; ..........FLUSH THE STACK
9655 015270 POP <R0,R1,R2,R3> ; ....RESTORE THE REGISTERS
015270 012600 MOV (SP)+,R0
015272 012601 MOV (SP)+,R1
015274 012602 MOV (SP)+,R2
015276 012603 MOV (SP)+,R3
9656 015300 RETURN ; TO CALLER
015300 000207 RTS PC
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 248
.TYNCM -- COMMON ENTRY POINT FOR ".TYNUM" 7601.23
9658 ; THESE ARE THE FORMAT TABLES
9659
9660 007216 .PSECT DATA
9661
9662 007216 KLNBIN:: ; KL BINARY TABLE
9663 007216 003 040 .BYTE 3,.SPACE ; 3 DIGITS AND A SPACE
9664 007220 003 040 .BYTE 3,.SPACE
9665 007222 003 040 .BYTE 3,.SPACE
9666 007224 003 040 .BYTE 3,.SPACE
9667 007226 KLABIN:: ; KL ADDRESS BINARY
9668 007226 003 040 .BYTE 3,.SPACE
9669 007230 003 040 .BYTE 3,.SPACE
9670 007232 ELNBIN:: ; ELEVEN BINARY TABLE
9671 007232 003 040 .BYTE 3,.SPACE
9672 007234 003 040 .BYTE 3,.SPACE
9673 007236 003 040 .BYTE 3,.SPACE
9674 007240 ELBBIN:: ; PDP-11 BYTE BINARY TABLE
9675 007240 003 040 .BYTE 3,.SPACE
9676 007242 003 040 .BYTE 3,.SPACE
9677 007244 ELBOCT:: ; PDP-11 BYTE OCTAL TABLE
9678 007244 003 000 .BYTE 3,0 ; END OF TABLE
9679
9680 007246 KLNOCT:: ; KL OCTAL TABLE
9681 007246 006 040 .BYTE 6,.SPACE ; 6 DIGITS AND A SPACE
9682 007250 ELNOCT:: ; PDP-11 OCTAL TABLE
9683 007250 006 000 .BYTE 6,0 ; END OF TABLE
9684 007252 KLAOCT:: ; KL ADDRESS OCTAL
9685 007252 006 040 .BYTE 6,.SPACE
9686 007254 002 000 .BYTE 2,0
9687 .EVEN
9688 015302 .PSECT
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 249
.TYNUM -- GENERAL SUBROUTINE TO TYPE A FORMATTED NUMBER 7601.2
9690 .SBTTL .TYNUM -- GENERAL SUBROUTINE TO TYPE A FORMATTED NUMBER 7601.23
9691
9692 ;+
9693 ; .TYNUM -- GENERAL SUBROUTINE TO TYPE A FORMATTED NUMBER ON THE
9694 ; CONSOLE OUTPUT DEVICE.
9695 ;
9696 ; THIS SUBROUTINE WILL TYPE A FORMATTED NUMBER IN THE RADIX SPECIFIED
9697 ; IN ".ORADX" ON THE CONSOLE OUTPUT DEVICE.
9698 ;
9699 ; INPUT ARGUMENTS:
9700 ;
9701 ; R0 POINTS TO THE 36 BIT NUMBER TO BE TYPED
9702 ; R1 POINTS TO A TRIPLET TO BE USED AS A DIVISOR / REMAINDER BUFFER
9703 ; R2 IS CLEAR
9704 ; R3 POINTS TO A FORMAT CONTROL TABLE
9705 ;
9706 ; OUTPUT ARGUMENTS:
9707 ;
9708 ; R0, R1, R2, AND R3 ARE CLOBBERED
9709 ; THE NUMBER POINTED TO BY R0 IS CLOBBERED
9710 ; THE FORMATTED NUMBER IS PLACED IN THE OUTPUT BUFFER
9711 ;
9712 ; ERROR CODES RETURNED:
9713 ;
9714 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9715 ;-
9716
9717 015302 .TYNUM::
9718 015302 005703 TST R3 ; CHECK THE FORMAT POINTER
9719 015304 001422 BEQ 50$ ; UNFORMATTED IF .EQ. 0
9720 015306 112302 MOVB (R3)+,R2 ; ITERATION COUNT TO R2
9721 015310 001410 BEQ 40$ ; JUST A FORMAT CHARACTER IF .EQ. 0
9722 015312 10$:
9723 015312 000417 BR 50$ ; CONVERT ONE DIGIT
9724 ;
9725 015314 20$:
9726 015314 005702 TST R2 ; TEST ITERATION COUNT
9727 015316 001004 BNE 30$ ; FORMATTED NUMBER -- DO ITERATION COUNT
9728 015320 CALL .TPTST ; HAS THE QUOTIENT GONE TO ZERO?
015320 004737 011460' JSR PC,.TPTST
9729 015324 001441 BEQ 80$ ; YES -- PRINT THE NUMBER
9730 015326 000411 BR 50$ ; NO -- KEEP GOING UNTIL IT DOES
9731 ;
9732 015330 30$:
9733 015330 077210 SOB R2,10$ ; LOOP THRU THIS SET OF ITERATIONS
9734
9735 ; [CONTINUED ON THE FOLLOWING PAGE]
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 250
.TYNUM -- GENERAL SUBROUTINE TO TYPE A FORMATTED NUMBER 7601.2
9737 ; [CONTINUED FROM THE PREVIOUS PAGE]
9738
9739 015332 40$:
9740 015332 112302 MOVB (R3)+,R2 ; FORMAT CONTROL CHARACTER TO R2
9741 015334 001435 BEQ 80$ ; DONE IF .EQ. 0
9742 015336 162702 000060 SUB #60,R2 ; SINCE OUTPUT ROUTINE WILL ADD 60
9743 015342 PUSH R2 ; <PUSH>PUT THE FORMAT CHARACTER IN THE STACK
015342 010246 MOV R2,-(SP)
9744 015344 PUSH #60$ ; <PUSH>FAKE THE PRINT ROUTINE OUT
015344 012746 015402' MOV #60$,-(SP)
9745 015350 000754 BR .TYNUM ; AND DO THE NEXT PART
9746 ;
9747 015352 50$: ; HERE TO CONVERT ONE DIGIT
9748 015352 PUSH R0 ; SAVE R0
015352 010046 MOV R0,-(SP)
9749 015354 010100 MOV R1,R0 ; MOVE R1 TO R0
9750 015356 CALL .TPCLR ; .CLEAR REMAINDER OUT
015356 004737 011356' JSR PC,.TPCLR
9751 015362 POP R0 ; .RESTORE R0
015362 012600 MOV (SP)+,R0
9752 015364 013711 000174' MOV .ORADX,(R1) ; OUTPUT RADIX AS DIVISOR
9753 015370 CALL .TPDIV ; DO THE DIVISION
015370 004737 011144' JSR PC,.TPDIV
9754 015374 PUSH (R1) ; <PUSH> SAVE THE DIGIT
015374 011146 MOV (R1),-(SP)
9755 015376 CALL 20$ ; AND GO GET MORE
015376 004737 015314' JSR PC,20$
9756 ;
9757 015402 60$: ; HERE TO UNSTACK THE NUMBER
9758 015402 POP R0 ; <POP>GET THE NUMBER OFF THE STACK
015402 012600 MOV (SP)+,R0
9759 015404 005737 000166' TST .LDZFL ; PRINT LEADING ZEROES?
9760 015410 001004 BNE 70$ ; YES -- DO IT
9761 015412 005700 TST R0 ; NO -- SEE IF .EQ. 0 OR FORMAT
9762 015414 003405 BLE 80$ ; YES -- DON'T PRINT IT
9763 015416 005337 000166' DEC .LDZFL ; NO -- SET THE FLAG AND PRINT
9764 015422 70$:
9765 015422 062700 000060 ADD #60,R0 ; ASCIIZE IT
9766 015426 000426 BR .TYCHR ; PRINT IT
9767 ;
9768 015430 80$:
9769 015430 RETURN ; FOR NEXT NUMBER OR TO CALLER
015430 000207 RTS PC
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 251
.TYLIN -- SUBROUTINE TO OUTPUT AN .ASCIZ MESSAGE AND A <CRLF>
9771 .SBTTL .TYLIN -- SUBROUTINE TO OUTPUT AN .ASCIZ MESSAGE AND A <CRLF> 7601.23
9772
9773 ;+
9774 ; .TYLIN -- SUBROUTINE TO OUTPUT AN ".ASCIZ" MESSAGE APPENDED BY A <CRLF>
9775 ; .TYMSG -- SUBROUTINE TO OUTPUT AN ".ASCIZ" MESSAGE TO THE CONSOLE
9776 ; OUTPUT DEVICE.
9777 ;
9778 ; THESE SUBROUTINES WILL OUTPUT AN ".ASCIZ" MESSAGE TO THE CONSOLE
9779 ; OUTPUT DEVICE. ".TYLIN" WILL APPEND A <CRLF> SEQUENCE TO THE
9780 ; MESSAGE (FORCING THE BUFFER TO BE OUTPUT).
9781 ;
9782 ; INPUT ARGUMENTS:
9783 ;
9784 ; R0 POINTS TO THE .ASCIZ MESSAGE
9785 ;
9786 ; OUTPUT ARGUMENTS:
9787 ;
9788 ; NONE.
9789 ;
9790 ; ERROR CODES RETURNED:
9791 ;
9792 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9793 ;-
9794
9795 .ENABL LSB
9796
9797 015432 .TYLIN::
9798 015432 CALL .TYMSG ; OUTPUT THE MESSAGE
015432 004737 015446' JSR PC,.TYMSG
9799 015436 000437 BR .TCRLF ; OUTPUT A <CRLF> AND EXIT
9800 ;
9801 015440 .TYMSF::
9802 015440 CALL .TYMSG ; PRINT THE MESSAGE
015440 004737 015446' JSR PC,.TYMSG
9803 015444 000413 BR 30$ ; FORCE IT AND EXIT
9804 ;
9805 015446 .TYMSG::
9806 015446 PUSH R1 ; SAVE R1
015446 010146 MOV R1,-(SP)
9807 015450 010001 MOV R0,R1 ; .MESSAGE POINTER TO R1
9808 015452 10$:
9809 015452 112100 MOVB (R1)+,R0 ; .GET THE CHARACTER INTO R0
9810 015454 001403 BEQ 20$ ; .EXIT IF <NULL>
9811 015456 CALL .TYCHR ; .OUTPUT THE CHARACTER
015456 004737 015504' JSR PC,.TYCHR
9812 015462 000773 BR 10$ ; .AND GO GET THE NEXT CHARACTER
9813 ;
9814 015464 20$:
9815 015464 POP R1 ; .RESTORE R1
015464 012601 MOV (SP)+,R1
9816 015466 RETURN ; TO CALLER
015466 000207 RTS PC
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 252
.TFCHR -- SUBROUTINE TO FORCE A CHARACTER TO THE CONSOLE DEVIC
9818 .SBTTL .TFCHR -- SUBROUTINE TO FORCE A CHARACTER TO THE CONSOLE DEVICE 7601.23
9819
9820 ;+
9821 ; .TFCHR -- FORCED CHARACTER OUTPUT SUBROUTINE
9822 ;
9823 ; THIS SUBROUTINE WILL FORCE PRINT ONE CHARACTER TO THE CONSOLE
9824 ; OUTPUT DEVICE.
9825 ;
9826 ; INPUT ARGUMENTS:
9827 ;
9828 ; R0 CONTAINS THE CHARACTER TO BE FORCED TO THE OUTPUT DEVICE
9829 ;
9830 ; OUTPUT ARGUMENTS:
9831 ;
9832 ; THE OUTPUT BYTE COUNTERS AND BYTE POINTER ARE UPDATED.
9833 ;
9834 ; ERROR CODES RETURNED:
9835 ;
9836 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9837 ;-
9838
9839 015470 .TFCHR::
9840 015470 CALL .TYCHR ; LOAD THE CHARACTER INTO THE BUFFER
015470 004737 015504' JSR PC,.TYCHR
9841 015474 30$:
9842 015474 005737 000432' TST .CDOBC ; WAS THE BUFFER DUMPED?
9843 015500 001430 BEQ 40$ ; YES -- JUST EXIT
9844 015502 000430 BR .TYOUT ; NO -- FORCE THE BUFFER OUT
9845 ;
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 253
.TYCHR -- CONSOLE DEVICE OUTPUT SUBROUTINE 7601.23
9847 .SBTTL .TYCHR -- CONSOLE DEVICE OUTPUT SUBROUTINE 7601.23
9848
9849 ;+
9850 ; .TYCHR -- CONSOLE DEVICE OUTPUT SUBROUTINE
9851 ; .TCRLF -- OUTPUT A <CRLF>
9852 ;
9853 ; THIS SUBROUTINE WILL LOAD ON ASCII CHARACTER INTO THE CONSOLE
9854 ; DEVICE OUTPUT BUFFER AND WILL DUMP THE BUFFER TO THE CONSOLE
9855 ; OUTPUT DEVICE ON:
9856 ;
9857 ; (A) APPEARANCE OF A <NEW-LINE> CHARACTER IN THE INPUT STREAM
9858 ;
9859 ; (B) OUTPUT BUFFER OVERFLOW
9860 ;
9861 ; INPUT ARGUMENTS:
9862 ;
9863 ; R0 CONTAINS THE CHARACTER TO BE OUTPUT.
9864 ;
9865 ; OUTPUT ARGUMENTS:
9866 ;
9867 ; THE OUTPUT BYTE POINTER AND BYTE COUNTERS ARE UPDATED
9868 ; OR REINITIALIZED IF THE BUFFER WAS DUMPED.
9869 ;
9870 ; ERROR CODES RETURNED:
9871 ;
9872 ; IF THE CONSOLE OUTPUT FAILS, THE PARSER EXITS.
9873 ;-
9874
9875 015504 .TYCHR::
9876 015504 110077 000254' MOVB R0,@.TYOBP ; PUT THE CHARACTER IN THE BUFFER
9877 015510 005237 000254' INC .TYOBP ; POINT TO THE NEXT BYTE
9878 015514 005237 000432' INC .CDOBC ; INCREMENT THE OUTPUT BYTE COUNT
9879 015520 005337 000252' DEC .TYOBC ; DECREMENT THE LINE CONTROL COUNTER
9880 015524 001404 BEQ .TCRLF ; END-OF-LINE -- FORCE OUTPUT
9881 015526 122700 000012 CMPB #12,R0 ; WAS IT A "<NEW-LINE>"?
9882 015532 001013 BNE 40$ ; NO -- JUST EXIT
9883 015534 000413 BR .TYOUT ; YES -- OUTPUT THE LINE AND RETURN
9884 ;
9885
9886 ; [CONTINUED ON THE FOLLOWING PAGE]
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 254
.TYCHR -- CONSOLE DEVICE OUTPUT SUBROUTINE 7601.23
9888 ; [CONTINUED FROM THE PREVIOUS PAGE]
9889
9890 015536 .TCRLF:: ; HERE ON OUTPUT BUFFER END
9891 015536 PUSH R0 ; SAVE R0
015536 010046 MOV R0,-(SP)
9892 015540 012700 000015 MOV #15,R0 ; .<CARRIAGE-RETURN>
9893 015544 CALL .TYCHR ; .TO BUFFER
015544 004737 015504' JSR PC,.TYCHR
9894 015550 012700 000012 MOV #12,R0 ; .<NEW-LINE>
9895 015554 CALL .TYCHR ; .TO BUFFER
015554 004737 015504' JSR PC,.TYCHR
9896 015560 POP R0 ; .RESTORE R0
015560 012600 MOV (SP)+,R0
9897 015562 40$:
9898 015562 RETURN ; AND EXIT
015562 000207 RTS PC
9899
9900 .DSABL LSB
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 255
.TYOUT -- CONSOLE OUTPUT SUBROUTINE 7601.23
9902 .SBTTL .TYOUT -- CONSOLE OUTPUT SUBROUTINE 7601.23
9903
9904 ;+
9905 ; .TYINI -- CONSOLE DEVICE INITIALIZATION
9906 ; .TYOUT -- CONSOLE OUTPUT SUBROUTINE
9907 ;
9908 ; THESE SUBROUTINES WILL OUTPUT THE BUFFER TO THE CONSOLE OUTPUT DEVICE.
9909 ;
9910 ; INPUT ARGUMENTS:
9911 ;
9912 ; NONE.
9913 ;
9914 ; OUTPUT ARGUMENTS:
9915 ;
9916 ; THE OUTPUT BUFFER POINTER AND BYTE COUNTS ARE RESET
9917 ;
9918 ; ERROR CODES RETURNED:
9919 ;
9920 ; IF THE OUTPUT FAILS THE PARSER EXITS.
9921 ;-
9922
9923
9924 .MCALL DIR$, QIOW$
9925
9926 .ENABL LSB
9927
9928 015564 .TYOUT::
9929 015564 105737 000156' TSTB .OUTTY ; [5.1000]TYPE OUTPUT?
9930 015570 001417 BEQ 10$ ; [5.1000]NO -- NEXT DEVICE
9931 015572 DIR$ #.ATCID ; YES -- ATTACH THE CONSOLE DEVICE
015572 012746 000460' MOV #.ATCID,-(SP)
015576 104375 EMT 375
9932 015600 103464 BCS TYODIE ; ERROR IF CC-C IS SET
9933 015602 DIR$ #.CDOUT ; OUTPUT THE BUFFER TO CONSOLE
015602 012746 000414' MOV #.CDOUT,-(SP)
015606 104375 EMT 375
9934 015610 103460 BCS TYODIE ; ERROR IF CC-C IS SET
9935 015612 105737 000012' TSTB .COSTS ; DID WE REALLY SUCCEED?
9936 015616 002455 BLT TYODIE ; NO -- COMPLAIN BITTERLY
9937 015620 DIR$ #.DTCID ; DETACH CONSOLE
015620 012746 000474' MOV #.DTCID,-(SP)
015624 104375 EMT 375
9938 015626 103451 BCS TYODIE ; ERROR IF CC-C IS SET
9939 015630 013737 000430' 000452' 10$: MOV .CDOBP,.LDOBP ; [5.1000]SET BUFFER POINTER
9940 015636 013737 000432' 000454' MOV .CDOBC,.LDOBC ; [5.1000]SET BYTE COUNT
9941 015644 .TYOU1:: ; [5.1000]ALT ENTRY POINT FOR CMD ECHO
9942 015644 105737 000155' TSTB .OUTLP ; [5.1000]PRINT OUTPUT?
9943 015650 001407 BEQ 20$ ; [5.1000]NO -- NEXT DEVICE
9944 015652 DIR$ #.LDOUT ; [5.1000]YES -- OUTPUT BUFFER
015652 012746 000436' MOV #.LDOUT,-(SP)
015656 104375 EMT 375
9945 015660 103434 BCS TYODIE ; [5.1000]ERROR IF CC-C IS SET
9946 015662 105737 000160' TSTB .LDSTS ; [5.1000]DID WE REALLY SUCCEED
9947 015666 002431 BLT TYODIE ; [5.1000]NO -- COMPLAIN BITTERLY
9948 015670 105737 000154' 20$: TSTB .OUTLG ; [5.1000]LOG OUTPUT?
9949 015674 001412 BEQ 30$ ; [5.1000]NO -- DONE OUTPUTTING
9950 015676 PUSH <R1,R2> ; [5.1000]YES -- SAVE REGISTERS
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 255-1
.TYOUT -- CONSOLE OUTPUT SUBROUTINE 7601.23
015676 010146 MOV R1,-(SP)
015700 010246 MOV R2,-(SP)
9951 015702 013702 000452' MOV .LDOBP,R2 ; [5.1000]SET BUFFER POINTER
9952 015706 013701 000454' MOV .LDOBC,R1 ; [5.1000]SET BYTE COUNTER
9953 015712 CALL .WRITR ; [5.1000]LOG IT
015712 004737 002616' JSR PC,.WRITR
9954 015716 POP <R2,R1> ; [5.1000]RESTORE REGISTERS
015716 012602 MOV (SP)+,R2
015720 012601 MOV (SP)+,R1
9955 015722 30$:
9956
9957 ; [CONTINUED ON THE FOLLOWING PAGE]
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 256
.TYOUT -- CONSOLE OUTPUT SUBROUTINE 7601.23
9959 ; [CONTINUED FROM THE PREVIOUS PAGE]
9960
9961 015722 .TYINI:: ; HERE TO INIT OUTPUT POINTERS
9962 015722 005037 000432' CLR .CDOBC ; RESET BUFFER BYTE COUNT
9963 015726 012737 000544' 000430' MOV #.COBFR,.CDOBP ; [5.1000]RESET BUFFER PTR
9964 015734 012737 000204 000252' MOV #.COBFL,.TYOBC ; RESET OUTPUT LINE CONTROL
9965 015742 012737 000544' 000254' MOV #.COBFR,.TYOBP ; RESET OUTPUT BYTE POINTER
9966 015750 RETURN ; AND EXIT
015750 000207 RTS PC
9967 015752 TYODIE:
9968 015752 CALLR .EXITP ; EXIT GRACEFULLY
015752 000137 010074' JMP .EXITP
9969 ;
9970 .DSABL LSB
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 257
.TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
9972 .SBTTL .TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
9973
9974 ;+
9975 ; .TYR50 -- TYPE A .RAD50 SYMBOL
9976 ;
9977 ; THIS ROUTINE WILL CONVERT THE .RAD50 SYMBOL IN R0 TO ASCII
9978 ; AND PRINT IT ON THE CONSOLE DEVICE.
9979 ;
9980 ; INPUT ARGUMENTS:
9981 ;
9982 ; R0 HOLDS THE .RAD50 SYMBOL TO BE PRINTED.
9983 ;
9984 ; OUTPUT ARGUMENTS:
9985 ;
9986 ; NONE.
9987 ;
9988 ; ERROR CODES RETURNED:
9989 ;
9990 ; NONE.
9991 ;-
9992
9993 015756 .TYR50::
9994 015756 PUSH <R1,R2> ; SAVE REGISTERS
015756 010146 MOV R1,-(SP)
015760 010246 MOV R2,-(SP)
9995 015762 012702 001440' MOV #.T50TB,R2 ; ..TABLE OF DIVISORS TO R2
9996 015766 10$:
9997 015766 012201 MOV (R2)+,R1 ; ..CURRENT DIVISOR TO R1
9998 015770 001414 BEQ 30$ ; ..DONE IF .EQ. 0
9999 015772 CALL $DIV ; ..DO THE DIVISION
015772 004737 000000G JSR PC,$DIV
10000 015776 PUSH R1 ; ..SAVE THE REMAINDER
015776 010146 MOV R1,-(SP)
10001 016000 012701 001410' MOV #.R50TB,R1 ; ...CONVERSION TABLE POINTER TO R1
10002 016004 20$:
10003 016004 062100 ADD (R1)+,R0 ; ...CONVERT THIS CHARACTER
10004 016006 020021 CMP R0,(R1)+ ; ...FOUND IT YET?
10005 016010 103775 BLO 20$ ; ...NO -- KEEP TRYING
10006 016012 CALL .TYCHR ; ...YES -- PUT IT IN THE BUFFER
016012 004737 015504' JSR PC,.TYCHR
10007 016016 POP R0 ; ...LAST REMAINDER IS NEW DIVIDEND
016016 012600 MOV (SP)+,R0
10008 016020 000762 BR 10$ ; ..DO THE NEXT CHARACTER
10009 ;
10010 016022 30$:
10011 016022 POP <R2,R1> ; ..RESTORE REGISTERS
016022 012602 MOV (SP)+,R2
016024 012601 MOV (SP)+,R1
10012 016026 RETURN ; TO CALLER
016026 000207 RTS PC
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 258
.TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
10014 ; THIS IS A PICTURE OF THE "QIOW$" DPB, NOT ALL OF THE ARGUMENTS
10015 ; IN THE DPB ARE USED BY SOME FORMS OF THE "QIOW$" DIRECTIVE.
10016 ;
10017 ; !===============================================!
10018 ; 00 ! DPB SIZE ! DIC !
10019 ; !-----------------------------------------------!
10020 ; 02 ! INPUT / OUTPUT FUNCTION CODE !
10021 ; !-----------------------------------------------!
10022 ; 04 ! LOGICAL UNIT NUMBER !
10023 ; !-----------------------------------------------!
10024 ; 06 ! PRIORITY ! EVENT FLAG NUMBER !
10025 ; !-----------------------------------------------!
10026 ; 10 ! I/O STATUS BLOCK ADDRESS !
10027 ; !-----------------------------------------------!
10028 ; 12 ! AST ROUTINE ADDRESS (NOT USED) !
10029 ; !-----------------------------------------------!
10030 ; 14 ! DATA BUFFER ADDRESS !
10031 ; !-----------------------------------------------!
10032 ; 16 ! BYTE COUNT !
10033 ; !-----------------------------------------------!
10034 ; 20 ! OUTPUT FORMAT CONTROL CHARACTER !
10035 ; !===============================================!
10036
10037 ; THIS IS THE CONSOLE OUTPUT DPB
10038
10039 000414 .PSECT DPBS
10040
10041 000414 .CDOUT::
10042 000414 QIOW$ IO.WLB,CODLUN,E.FCOD,0,.COSTS,0,<.COBFR,0,VF.INT>
000414 003 011 .BYTE 3,$$$ARG
000416 000000G .WORD IO.WLB
000420 000002 .WORD CODLUN
000422 003 000 .BYTE E.FCOD,0
000424 000012' .WORD .COSTS
000426 000000 .WORD 0
000430 000544' .WORD .COBFR
000432 000000 .WORD 0
000434 000000 .WORD VF.INT
10043
10044 000430' .CDOBP==.CDOUT+Q.IOPL ; CONSOLE OUTPUT BYTE POINTER
10045 000432' .CDOBC==.CDOUT+Q.BYCT ; CONSOLE OUTPUT BYTE COUNT
10046 000434' .CDOFC==.CDOUT+Q.OVFC ; CONSOLE OUTPUT FORMAT CHARACTER
10047
10048 ; THIS IS THE LIST DEVICE OUTPUT DPB
10049
10050 000436 .LDOUT::
10051 000436 QIOW$ IO.WLB,LSTLUN,E.FLOD,0,.LDSTS,0,<.COBFR,0,VF.INT>
000436 003 011 .BYTE 3,$$$ARG
000440 000000G .WORD IO.WLB
000442 000003 .WORD LSTLUN
000444 005 000 .BYTE E.FLOD,0
000446 000160' .WORD .LDSTS
000450 000000 .WORD 0
000452 000544' .WORD .COBFR
000454 000000 .WORD 0
000456 000000 .WORD VF.INT
10052
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 258-1
.TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
10053 000452' .LDOBP==.LDOUT+Q.IOPL ; LIST DEVICE BYTE POINTER
10054 000454' .LDOBC==.LDOUT+Q.BYCT ; LIST DEVICE BYTE COUNT
10055 000456' .LDOFC=.LDOUT+Q.OVFC ; LIST DEVICE FORMAT CHARACTER
10056
10057 ; ATTACH CONSOLE INPUT DEVICE EXCLUSIVELY TO PARSER TASK
10058
10059 000460 .ATCID::
10060 000460 QIOW$ IO.ATT,CIDLUN,E.FCID,0,0,0
000460 003 006 .BYTE 3,$$$ARG
000462 000000G .WORD IO.ATT
000464 000001 .WORD CIDLUN
000466 002 000 .BYTE E.FCID,0
000470 000000 .WORD 0
000472 000000 .WORD 0
10061
10062 ; DETACH THE CONSOLE INPUT DEVICE FROM THE PARSER TASK
10063
10064 000474 .DTCID::
10065 000474 QIOW$ IO.DET,CIDLUN,E.FCOD,0,0,0
000474 003 006 .BYTE 3,$$$ARG
000476 000000G .WORD IO.DET
000500 000001 .WORD CIDLUN
000502 003 000 .BYTE E.FCOD,0
000504 000000 .WORD 0
000506 000000 .WORD 0
10066
10067 016030 .PSECT
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260
.TYR50 -- TYPE A .RAD50 SYMBOL 7602.18
10070 000001 FTLCMN==1
10071
10072 000260' .END DATABX
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-1
SYMBOL TABLE
ABMSG 001031RG 003 AP.PWF= 000001 CALERM 000112R 005 CLRMSG 000373RG 003 DEXDON= 000004
ABOMSG 000365RG 003 AP.SAP= 000002 CALL = 000040 CNRERM 000412R 005 DEXWD1= 174406
ACBMSG 001545RG 003 AP.SBE= 000100 CALLI = 000047 CNTMSG 000401RG 003 DEXWD2= 174404
ADD = 000270 ARMSG 000753RG 003 CAM = 000310 CNUPE = 000002 DEXWD3= 174402
ADDB = 000273 ARXMSG 001000RG 003 CAMA = 000314 CODLUN= 000002 DFAD = 000110
ADDI = 000271 ASH = 000240 CAME = 000312 CONI = 000005 DFBEND= 000330RG 002
ADDM = 000272 ASHC = 000244 CAMG = 000317 CONIS 002236R 003 DFDV = 000113
ADMSG 000771RG 003 AUGMSG 001267RG 003 CAMGE = 000315 CONMSG 001576RG 003 DFMP = 000112
ADRTMP 007210R 002 AUTMSG 001556RG 003 CAML = 000311 CONO = 000004 DFN = 000131
ADXMSG 000774RG 003 A.LULU= 000002 CAMLE = 000313 CONOS 002231R 003 DFSB = 000111
ALLMSG 001342RG 003 A.LUNA= 000004 CAMN = 000316 CONSO = 000007 DFUNC = 000200
AMBERM 003714R 005 A.LUNU= 000006 CAPERM 000141R 005 CONSOS 002251R 003 DF.DMG= 000004
AND = 000404 BAEERM 000023R 005 CBOERM 000200R 005 CONSZ = 000006 DF.DMN= 000007
ANDB = 000407 BCCTER 003362R CCA = 000014 CONSZS 002243R 003 DF.DOR= 000001
ANDCA = 000410 BIT0 = 000001 CC.ALL= 003417 CPEERM 000452R 005 DF.EHG= 000010
ANDCAB= 000413 BIT00 = 000001 CC.NRM= 000000 CPUMSG 001346RG 003 DF.EHM= 000011
ANDCAI= 000411 BIT01 = 000002 CDD = 000020 CPVMSG 000000RG 003 DF.EMG= 000005
ANDCAM= 000412 BIT02 = 000004 CDIERM 000236R 005 CRAMSG 001034RG 003 DF.EMN= 000006
ANDCB = 000440 BIT03 = 000010 CD.ALL= 003400 CRHERM 000501R 005 DF.KLR= 000012
ANDCBB= 000443 BIT04 = 000020 CD.CLC= 000400 CRLMSG 001043RG 003 DF.KLW= 000013
ANDCBI= 000441 BIT05 = 000040 CD.CRC= 002000 CRMMSG 001376RG 003 DF.KLX= 000014
ANDCBM= 000442 BIT06 = 000100 CD.DPC= 001000 CR.ALL= 000003 DF.OFF= 000002
ANDCM = 000420 BIT07 = 000200 CD.NRM= 000000 CR.CR1= 000001 DF.ON = 000003
ANDCMB= 000423 BIT08 = 000400 CESCES 000016R CR.CR2= 000002 DF.PDP= 000016
ANDCMI= 000421 BIT09 = 001000 CESERM 003746R 005 CR.FUL= 000000 DF.PEX= 000015
ANDCMM= 000422 BIT1 = 000002 CFHERM 000317R 005 CR.HLF= 000001 DIAG1 = 174430
ANDI = 000405 BIT10 = 002000 CHNPNT= 000001 CR.NRM= 000000 DIAG2 = 174432
ANDM = 000406 BIT11 = 004000 CH.ALP= 000001 CR.QTR= 000002 DIAG3 = 174436
AOBJN = 000253 BIT12 = 010000 CH.ANM= 000003 CR.SLO= 000003 DIKL10= 000010
AOBJP = 000252 BIT13 = 020000 CH.AOP= 000100 CS.ALL= 000014 DISMSG 000422RG 003
AOJ = 000340 BIT14 = 040000 CH.END= 000034 CS.CS1= 000004 DIV = 000234
AOJA = 000344 BIT15 = 100000 CH.EOC= 000010 CS.CS2= 000010 DIVB = 000237
AOJE = 000342 BIT2 = 000004 CH.EOL= 000004 CS.EXP= 177670 DIVI = 000235
AOJG = 000347 BIT3 = 000010 CH.EOS= 000020 CS.EXT= 000010 DIVM = 000236
AOJGE = 000345 BIT4 = 000020 CH.ILL= 000200 CS.FST= 000004 DLYCNT= 174400
AOJL = 000341 BIT5 = 000040 CH.NUL= 000000 CS.MGN= 000004 DMFERM 000647R 005
AOJLE = 000343 BIT6 = 000100 CH.NUM= 000002 CS.NRM= 000000 DMOVE = 000120
AOJN = 000346 BIT7 = 000200 CH.PFX= 000040 CS.UDF= 000014 DMOVEM= 000124
AOS = 000350 BIT8 = 000400 CIDLUN= 000001 CTLMSG 001415RG 003 DMOVN = 000121
AOSA = 000354 BIT9 = 001000 CKCILS 000152R CTYPTR= ****** GX DMOVNM= 000125
AOSE = 000352 BLKI = 000000 CKCMRA 000160R CYCLS = 000002 DNFERM 000736R 005
AOSG = 000357 BLKIS 002203R 003 CKEEOC 000250R DATABX 000260RG 002 DNPERM 000775R 005
AOSGE = 000355 BLKO = 000002 CKRKLR 000366R DATAI = 000001 DOCCNR 010066R
AOSL = 000351 BLKOS 002216R 003 CLEAR = 000400 DATAIS 002210R 003 DON10C= 040000
AOSLE = 000353 BLT = 000251 CLEARB= 000403 DATAO = 000003 DON10S= 100000
AOSN = 000356 BPARER= 000020 CLEARI= 000401 DATAOS 002223R 003 DON11C= 000100
APEERM 000000R 005 BRMSG 001004RG 003 CLEARM= 000402 DATE = 000004 DON11S= 000200
APR = 000000 BRXMSG 001007RG 003 CLEERM 000355R 005 DATMSG 001606RG 003 DORERM 000706R 005
APRMSG 001243RG 003 CAEERM 000056R 005 CLKMSG 001570RG 003 DAVERM 000543R 005 DPB = 000137
AP.ALL= 000177 CAI = 000300 CLOATR= 000256R 004 DBTERM 000574R 005 DPDTEN= 000322RG 004
AP.ARP= 001000 CAIA = 000304 CLOATT= 000262R 004 DCKERM 000624R 005 DPS4 = 040000
AP.CDP= 000004 CAIE = 000302 CLODAC 000240R 004 DCOMST= 000001 DPTMSG 001403RG 003
AP.EIP= 000400 CAIG = 000307 CLOFCF 002160R DCRMSG 000704RG 003 DRAMSG 001051RG 003
AP.IPF= 000020 CAIGE = 000305 CLOIOF= 000242R 004 DECMSG 001331RG 003 DRDMSG 002115R 003
AP.MPE= 000010 CAIL = 000301 CLOLUN= 000244R 004 DEP = 010000 DRESET= 000100
AP.NRM= 001400 CAILE = 000303 CLOSE = 000070 DEPMSG 000412RG 003 DRMMSG 001521RG 003
AP.NXM= 000040 CAIN = 000306 CLOWAT 000260R 004 DEX = 000400 DR.DTE= 000011
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-2
SYMBOL TABLE
DSEND = 000004 D3.CDD= 000020 ERSMSG 000107R 003 FMPR = 000164 FR.102= 000204
DSFERM 001034R 005 D3.MBZ= 177704 ESDERM 001317R 005 FMPRB = 000167 FR.103= 000206
DS04 = 004000 D3.NPE= 000002 ESEERM 001354R 005 FMPRI = 000165 FR.104= 000210
DS05 = 002000 D3.PAR= 040000 ETRMSG 002151R 003 FMPRM = 000166 FR.105= 000212
DS06 = 001000 D3.RST= 000001 EXAMSG 000435RG 003 FNDALN 000000R 004 FR.106= 000214
DTCERM 001067R 005 D3.SCD= 000040 EXCH = 000250 FNDALU= 000002R 004 FR.107= 000216
DTECMD= 000451 D3.SSL= 100000 EXDDMF 004134R FNDCAL 001550R FR.110= 000220
DTEDSF 003626R D3.TXB= 000001 EXDEMF 004142R FNDDNF 001556R FR.111= 000222
DTEFLG= 000444 D3.UPE= 000020 EXDESD 004104R FNDFNA 000010R 004 FR.112= 000224
DTEF11= 000450 D3.URE= 000004 EXDESE 004120R FNDFNB= 000036R 004 FR.113= 000226
DTEMSG 001060RG 003 D3.WEP= 000010 EXDTEN= 000334RG 004 FNDLUN= 000014R 004 FR.114= 000230
DTEMTD= 000455 EBCECT 003722R EXECTO 004354R FOFERM 001557R 005 FR.115= 000232
DTEMTI= 000456 EBPEPE 000424R EXRTBL= 000012 G FORPRO= 000020 FR.116= 000234
DTKMSG 002166R 003 EBSEL = 000100 EXTEND= 000123 FRDERM 001607R 005 FR.117= 000236
DTRMSG 002034R 003 EBSMSG 001013RG 003 EXTEXT 000214R 004 FRDFRF 004436R FR.120= 000240
DUPE = 000020 EBUSPC= 000020 EXTFEF 002036R FRDMSG 000445RG 003 FR.121= 000242
DURE = 000004 EBUSPS= 000004 EXTMSG 001425RG 003 FRDTEN= 000346RG 004 FR.122= 000244
DWRMSG 002121R 003 ECTERM 001141R 005 E.FCID= 000002 FRFERM 004000R 005 FR.123= 000246
DW1MSG 002055R 003 EDEPT 002125R 003 E.FCOD= 000003 FR.ADX= 000254 FR.124= 000250
DW2MSG 002065R 003 EDEXV 002131R 003 E.FCTC= ****** GX FR.APR= 000220 FR.125= 000252
DW3MSG 002105R 003 EDONES= 040000 E.FFIL= 000006 FR.ARX= 000252 FR.126= 000254
DXWRD1= 002000 EDPHY 002145R 003 E.FHTO= 000001 FR.BRX= 000250 FR.127= 000256
D.CDLS= ****** GX EDTYTB 007154R 002 E.FKLN= 000004 FR.CA1= 000312 FR.130= 000260
D1.CES= 004000 EDUPT 002135R 003 E.FLOD= 000005 FR.CA2= 000310 FR.131= 000262
D1.DCS= 000001 EDUSV 002141R 003 FAD = 000140 FR.CL1= 000316 FR.132= 000264
D1.DDT= 000040 ED.EPT= 000000 FADB = 000143 FR.CL2= 000314 FR.133= 000266
D1.DEX= 000400 ED.EXV= 000040 FADL = 000141 FR.CRD= 000302 FR.134= 000270
D1.DFM= 000010 ED.PHY= 000200 FADM = 000142 FR.CR1= 000316 FR.135= 000272
D1.DS0= 100000 ED.UPT= 000100 FADR = 000144 FR.CR2= 000314 FR.136= 000274
D1.DS1= 040000 ED.USV= 000140 FADRB = 000147 FR.CR3= 000312 FR.137= 000276
D1.DS2= 020000 EF.CRI= ****** GX FADRI = 000145 FR.CR4= 000310 FR.140= 000300
D1.DS3= 010000 ELBBIN 007240RG 002 FADRM = 000146 FR.DA1= 000260 FR.141= 000302
D1.DS4= 004000 ELBOCT 007244RG 002 FCFERM 001411R 005 FR.DA2= 000262 FR.142= 000304
D1.DS5= 002000 ELEMSG 000756RG 003 FDV = 000170 FR.EBS= 000356 FR.143= 000306
D1.DS6= 001000 ELNBIN 007232RG 002 FDVB = 000173 FR.FE1= 000266 FR.144= 000310
D1.HLP= 001000 ELNNOR 013200R FDVL = 000171 FR.FE2= 000264 FR.145= 000312
D1.LBK= 000200 ELNOCT 007250RG 002 FDVM = 000172 FR.PI0= 000200 FR.146= 000314
D1.MBZ= 000442 EMFERM 001172R 005 FDVR = 000174 FR.PI1= 000202 FR.147= 000316
D1.PLS= 000020 ENBMSG 001526RG 003 FDVRB = 000177 FR.RAD= 000256 FR.150= 000320
D1.RUN= 002000 ENTCRE 000070R 004 FDVRI = 000175 FR.RAR= 000240 FR.151= 000322
D1.T10= 000200 ENTDEL 000144R 004 FDVRM = 000176 FR.RBR= 000242 FR.152= 000324
D1.T11= 000100 ENTENA 000114R 004 FEBMSG 001224RG 003 FR.RFM= 000246 FR.153= 000326
D1.V04= 000020 ENTER = 000077 FEFERM 001442R 005 FR.RMQ= 000244 FR.154= 000330
D1.XFR= 000004 ENTFEN 001730R FENERM 001474R 005 FR.SC1= 000262 FR.155= 000332
D1011 = 000040 EOCERM 001231R 005 FERMSG 001067RG 003 FR.SC2= 000260 FR.156= 000334
D2RST 004304R 002 EOFMSG 000335R 003 FIX = 000122 FR.SR1= 000306 FR.157= 000336
D2.EBD= 040000 EPEERM 001267R 005 FIXR = 000126 FR.SR2= 000304 FR.160= 000340
D2.MBZ= 177641 EPTR = 000000 FLDMSG 000050R 003 FR.VM0= 000320 FR.161= 000342
D2.MS1= 000002 EQV = 000444 FLFERM 001525R 005 FR.VM1= 000322 FR.162= 000344
D2.MS2= 000004 EQVB = 000447 FLGMSG 001072RG 003 FR.VM2= 000324 FR.163= 000346
D2.MS4= 000010 EQVI = 000445 FLTMSG 001613RG 003 FR.VM3= 000326 FR.164= 000350
D2.MS8= 000020 EQVM = 000446 FLTR = 000127 FR.VM4= 000330 FR.165= 000352
D2.RA0= 100000 ERRMSG 001352RG 003 FMMSG 001020RG 003 FR.VM5= 000332 FR.166= 000354
D2.RA1= 040000 ERR10C= 010000 FMP = 000160 FR.VM6= 000334 FR.167= 000356
D2.RA2= 020000 ERR10S= 020000 FMPB = 000163 FR.VM7= 000336 FR.170= 000360
D2.RST= 000100 ERR11C= 000001 FMPL = 000161 FR.100= 000200 FR.171= 000362
D3RST 004306R 002 ERR11S= 000002 FMPM = 000162 FR.101= 000202 FR.172= 000364
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-3
SYMBOL TABLE
FR.173= 000366 FW.DR2= 000142 FX.SRF= 000022 HLLOI = 000521 IDIV = 000230
FR.174= 000370 FW.DR3= 000144 FX.SYC= 000010 HLLOM = 000522 IDIVB = 000233
FR.175= 000372 FW.EBL= 000174 FX.UDR= 000032 HLLOS = 000523 IDIVI = 000231
FR.176= 000374 FW.IAC= 000154 FX.UIR= 000030 HLLS = 000503 IDIVM = 000232
FR.177= 000376 FW.IOJ= 000152 FX.000= 000000 HLLZ = 000510 IDPB = 000136
FSB = 000150 FW.IPE= 000114 FX.001= 000002 HLLZI = 000511 IE.EBX= ****** GX
FSBB = 000153 FW.KLO= 000156 FX.002= 000004 HLLZM = 000512 IE.EOF= ****** GX
FSBL = 000151 FW.LAR= 000176 FX.003= 000006 HLLZS = 000513 IE.NSF= ****** GX
FSBM = 000152 FW.LBL= 000106 FX.004= 000010 HLR = 000544 IFCERM 001747R 005
FSBR = 000154 FW.LBR= 000104 FX.005= 000012 HLRE = 000574 IFLOP = 100000
FSBRB = 000157 FW.MBX= 000162 FX.006= 000014 HLREI = 000575 ILCERM 004103R 005
FSBRI = 000155 FW.SBR= 000174 FX.007= 000016 HLREM = 000576 ILDB = 000134
FSBRM = 000156 FW.040= 000100 FX.010= 000020 HLRES = 000577 ILIERM 002003R 005
FSC = 000132 FW.041= 000102 FX.011= 000022 HLRO = 000564 ILSERM 004135R 005
FSSMSG 001535RG 003 FW.042= 000104 FX.012= 000024 HLROI = 000565 IMUL = 000220
FSWERM 001637R 005 FW.043= 000106 FX.013= 000026 HLROM = 000566 IMULB = 000223
FTBYTE= 000000 FW.044= 000110 FX.014= 000030 HLROS = 000567 IMULI = 000221
FTCRAM= 000000 FW.045= 000112 FX.015= 000032 HLRS = 000547 IMULM = 000222
FTDEBU= 000001 FW.046= 000114 FX.016= 000034 HLRZ = 000554 IN = 000056
FTDISP= 000000 FW.047= 000116 FX.017= 000036 HLRZI = 000555 INBUF = 000064
FTDRAM= 000000 FW.050= 000120 FX.020= 000040 HLRZM = 000556 INCMSG 000716RG 003
FTHELP= 000000 FW.051= 000122 FX.021= 000042 HLRZS = 000557 INDLUN= 000005
FTKLE = 000001 FW.052= 000124 FX.022= 000044 HLTMSG 000467RG 003 INIMSG 000474RG 003
FTKLER= 000000 FW.053= 000126 FX.023= 000046 HRL = 000504 INIT = 000041
FTLCMN= 000001 G FW.054= 000130 FX.024= 000050 HRLE = 000534 INPUT = 000066
FTLCVT= 000000 FW.055= 000132 FX.025= 000052 HRLEI = 000535 INTMSG 001436RG 003
FTLIST= 000001 FW.056= 000134 FX.026= 000054 HRLEM = 000536 INTROF= 000010
FTTRAK= 000001 FW.057= 000136 FX.027= 000056 HRLES = 000537 INTRON= 000040
FTTRP4= 000001 FW.060= 000140 FX.030= 000060 HRLI = 000505 INTSON= 000001
FTUCVR= 000130 FW.061= 000142 FX.031= 000062 HRLM = 000506 INT10S= 000400
FT1105= 000001 FW.062= 000144 FX.032= 000064 HRLO = 000564 INT11C= 002000
FT1110= 000001 FW.063= 000146 FX.033= 000066 HRLOI = 000565 INT11S= 004000
FT1115= 000001 FW.064= 000150 FX.034= 000070 HRLOM = 000566 IOCERM 002035R 005
FT1120= 000001 FW.065= 000152 FX.035= 000072 HRLOS = 000567 IOMSG 001360RG 003
FT1135= 000001 FW.066= 000154 FX.036= 000074 HRLS = 000507 IOR = 000434
FT1140= 000001 FW.067= 000156 FX.037= 000076 HRLZ = 000514 IORB = 000437
FT1145= 000000 FW.070= 000160 GETSTS= 000062 HRLZI = 000515 IORI = 000435
FULMSG 001456RG 003 FW.071= 000162 GTFILC 014250R HRLZM = 000516 IORM = 000436
FWDTEN= 000360RG 004 FW.072= 000164 GTKKLA 013260R HRLZS = 000517 IOTAB 007166R 002
FWFERM 004025R 005 FW.073= 000166 GTLCBO 013114R HRR = 000540 IO.ATT= ****** GX
FWRFWF 004560R FW.074= 000170 GTLILC 013122R HRRE = 000570 IO.CRE= ****** GX
FWRMSG 000453RG 003 FW.075= 000172 GTNILI 013664R HRREI = 000571 IO.DAC= ****** GX
FWTERM 001664R 005 FW.076= 000174 GTNMRA 014512R HRREM = 000572 IO.DEL= ****** GX
FW.APE= 000116 FW.077= 000176 GTNNER 013472R HRRES = 000573 IO.DET= ****** GX
FW.CA1= 000122 FXCFXF 004730R GTNNOR 014520R HRRI = 000541 IO.ENA= ****** GX
FW.CA2= 000124 FXCMSG 000462RG 003 GTNORE 013466R HRRM = 000542 IO.EXT= ****** GX
FW.CDR= 000112 FXDTEN= 000372RG 004 HARMSG 001744RG 003 HRRO = 000560 IO.FNA= ****** GX
FW.CHN= 000160 FXFERM 004053R 005 HIBYTE= 177400 HRROI = 000561 IO.RLB= ****** GX
FW.CRD= 000126 FX.BMC= 000012 HLFMSG 001463RG 003 HRROM = 000562 IO.RNA= ****** GX
FW.CR1= 000136 FX.CMR= 000014 HLL = 000500 HRROS = 000563 IO.RVB= ****** GX
FW.CR2= 000134 FX.CON= 000024 HLLE = 000530 HRRS = 000543 IO.WLB= ****** GX
FW.CR3= 000132 FX.CRF= 000020 HLLEI = 000531 HRRZ = 000550 IO.WVB= ****** GX
FW.CR4= 000130 FX.CSP= 000000 HLLEM = 000532 HRRZI = 000551 IPCERM 004201R 005
FW.CSR= 000110 FX.CST= 000002 HLLES = 000533 HRRZM = 000552 IP.ALL= 000017
FW.DJE= 000146 FX.EBC= 000006 HLLI = 000501 HRRZS = 000553 IP.CRP= 000004
FW.DJO= 000150 FX.MBC= 000004 HLLM = 000502 IBP = 000133 IP.DRP= 000002
FW.DR1= 000140 FX.SMR= 000016 HLLO = 000520 IDFERM 001715R 005 IP.FMP= 000010
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-4
SYMBOL TABLE
IP.FSS= 000001 LG.MAR= 000020 M.KTAE= 000010 PAGMSG 001363RG 003 PSWW13= 000017
IP.NRM= 000016 LG.MNT= 000004 M.KTEF= 000002 PARERC 000662R PSWW2 = 000006
IRCERM 002065R 005 LG.MOD= 000040 M.KTMG= 000004 PARERX 000506R PSWW3 = 000007
IREERM 002120R 005 LG.NUL= 000000 M.KTUN= 000006 PARMSG 000011RG 003 PSWW4 = 000010
IS.SET= ****** GX LG.OPR= 000001 M.PARQ= ****** GX PARNAM 000021RG 003 PSWW5 = 000011
ITFERM 002150R 005 LG.PRG= 000002 NDIERM 002543R 005 PARUEC 000734R PSWW6 = 000012
ITNERM 002202R 005 LG.PRM= 000003 NEBMSG 000122R 003 PAR$$E= 000027 PSWW7 = 000013
JANMSG 001214RG 003 LG.RNG= 000100 NERERM 002573R 005 PAR$$K= 000126 PS.NRM= 001416
JFCL = 000255 LG.RPT= 000400 NORERM 002635R 005 PAR$$V= 000006 PTLERM 003111R 005
JFFO = 000243 LG.STR= 000200 NOTMSG 001650RG 003 PCMSG 001026RG 003 PTOATM 000270R 003
JMPMSG 000507RG 003 LOAD11= 000004 NOVMSG 001320RG 003 PC.AFI= 000020 PTRTEM 000151R 003
JRA = 000267 LOGLUN= 000004 NPIERM 002675R 005 PC.AT0= 000004 PTRTHM 000221R 003
JRST = 000254 LOGMSG 001505RG 003 NRMMSG 001367RG 003 PC.AT1= 000010 PULSE = 000020
JSA = 000266 LOKFLF 001656R NSFERM 002731R 005 PC.BIS= 000400 PUSH = 000261
JSP = 000265 LOKFNA 000040R 004 NSKERM 004244R 005 PC.CY0= 004000 PUSHJ = 000260
JSR = 000264 LOKFNB= 000066R 004 NSTERM 002754R 005 PC.CY1= 002000 QSIZE = 000023
JSYS = 000104 LOKIOF= 000042R 004 NTIERM 002777R 005 PC.FOV= 001000 QTRMSG 001470RG 003
JULMSG 001262RG 003 LOKLUN= 000044R 004 NULMSG 000364RG 003 PC.FUF= 000002 QUTMSG 000661RG 003
JUMP = 000320 LOOKUP= 000076 NULSTP= 000040 PC.LIP= 000040 Q.BYCT= 000016
JUMPA = 000324 LPTMSG 001511RG 003 NUPE = 000002 PC.NDV= 000001 Q.IBUF= 000014
JUMPE = 000322 LSH = 000242 NXTMSG 000730RG 003 PC.OVF= 010000 Q.IOAE= 000012
JUMPG = 000327 LSHC = 000246 OAIERM 003027R 005 PC.UIO= 000100 Q.IOEF= 000006
JUMPGE= 000325 LSTLUN= 000003 OCTMSG 001310RG 003 PC.USR= 000200 Q.IOFN= 000002
JUMPL = 000321 MAP = 000257 OFCERM 003061R 005 PERCLR= 001000 Q.IOLU= 000004
JUMPLE= 000323 MARMSG 001235RG 003 OFFMSG 000044RG 003 PE.ALL= 000037 Q.IOPL= 000014
JUMPN = 000326 MAYMSG 001251RG 003 OFSMSG 001654RG 003 PE.CES= 000001 Q.IOPR= 000007
JUNMSG 001255RG 003 MBZTAB 004160R 002 ONMSG 000041RG 003 PE.CRM= 000004 Q.IOSB= 000010
KCNERM 002232R 005 MCRMSG 000535RG 003 OPEACC 000160R 004 PE.DRM= 000002 Q.OBUF= 000014
KF.BRM= 001000 MEMMSG 001641RG 003 OPEATT= 000210R 004 PE.FMP= 000010 Q.OVFC= 000020
KF.CES= 000100 MGNMSG 001447RG 003 OPEFID= 000174R 004 PE.FSS= 000020 RAMIS0= 010000
KF.CLK= 100000 MMSG 000514RG 003 OPEFOF 001776R PHYS = 100000 RDCPT1 004230R 002
KF.CON= 000200 MNTMSG 001140RG 003 OPEFUN= 000162R 004 PI = 000004 RDCPT2 004210R 002
KF.DEF= 000200 MOVE = 000200 OPELUN= 000164R 004 PIDENT= 000000 RDCPT3 004220R 002
KF.KLO= 000400 MOVEI = 000201 OPEN = 000050 PIMSG 001103RG 003 RDCRME 006470R
KF.MRS= 020000 MOVEM = 000202 OPERAT 000206R 004 POP = 000262 REAFRD 002570R
KF.RUN= 040000 MOVES = 000203 OPRMSG 001154RG 003 POPJ = 000263 REGMSG 001106RG 003
KF.SIM= 010000 MOVM = 000214 OR = 000434 PRGMSG 001165RG 003 REGTAB 007130R 002
KF.SMC= 004000 MOVMI = 000215 ORB = 000437 PRI7 = 000340 RELEAS= 000071
KF.SPM= 002000 MOVMM = 000216 ORCA = 000454 PRMFM 002257R 003 REMMSG 001200RG 003
KLABIN 007226RG 002 MOVMS = 000217 ORCAB = 000457 PROMPT 000030RG 003 RENAME= 000055
KLAERM 002260R 005 MOVN = 000210 ORCAI = 000455 PROPNT= 000021 REPIRC 011106R
KLAOCT 007252RG 002 MOVNI = 000211 ORCAM = 000456 PRTOFF= 004000 RESETT 004274R 002
KLEPRM 000034RG 003 MOVNM = 000212 ORCB = 000470 PRVMSG 000735RG 003 RFMAD0= 100000
KLHCFH 005156R MOVNS = 000213 ORCBB = 000473 PR0 = 000000 RFMAD1= 040000
KLIMSG 001632RG 003 MOVS = 000204 ORCBI = 000471 PR1 = 000040 RFMAD2= 020000
KLIOT = 000700 MOVSI = 000205 ORCBM = 000472 PR2 = 000100 RFMAD3= 010000
KLMSG 001100RG 003 MOVSM = 000206 ORCM = 000464 PR3 = 000140 RGDTEN= 000310RG 004
KLNBIN 007216RG 002 MOVSS = 000207 ORCMB = 000467 PR4 = 000200 RLDMSG 001706RG 003
KLNOCT 007246RG 002 MPE11 = 001000 ORCMI = 000465 PR5 = 000240 RM = 000010
KLPWRF= 000010 MQMSG 001023RG 003 ORCMM = 000466 PR6 = 000300 RMSG 000541RG 003
KLRERM 002307R 005 MRAERM 002437R 005 ORI = 000435 PR7 = 000340 ROT = 000241
KLSCFH 005266R MRHERM 002477R 005 ORM = 000436 PS = 177776 ROTC = 000245
KNCERM 002351R 005 MRKMSG 000516RG 003 OUT = 000057 PSTMSG 001672RG 003 RPMERM 003141R 005
KWEERM 002405R 005 MUL = 000224 OUTBUF= 000065 PSWW1 = 000005 RPTMSG 000543RG 003
LDB = 000135 MULB = 000227 OUTMSG 001663RG 003 PSWW10= 000014 RSTEND= 004302R 002
LG.ALL= 000007 MULI = 000225 OUTPUT= 000067 PSWW11= 000015 RSTMSG 000552RG 003
LG.ARG= 000010 MULM = 000226 PAG = 000010 PSWW12= 000016 RTYMSG 001715RG 003
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-5
SYMBOL TABLE
RUNMSG 000560RG 003 SOSGE = 000375 TDC = 000650 TO11DB= 004000 UCDMSG 001732RG 003
SBRMSG 001131RG 003 SOSL = 000371 TDCA = 000654 TO11DN= 000200 UECMSG 000060R 003
SCD = 000040 SOSLE = 000373 TDCE = 000652 TO11DT= 174426 UECMSP 001612R 002
SCFERM 003201R 005 SOSN = 000376 TDCN = 000656 TO11ER= 000002 UGETF = 000073
SCRMSG 001135RG 003 SPCEST 001614R 002 TDMSG0 000345R 003 TPDDCK 011350R UJEN = 000100
SEPMSG 001276RG 003 SPFERM 003305R 005 TDN = 000610 TPDDVD 007122R 002 UNASG1= 000032
SETA = 000424 SSTLEN= 000010 G TDNA = 000614 TPDDVS 007114R 002 UNASG2= 000033
SETAB = 000427 SSTTBE= 000302RG 002 TDNE = 000612 TPDRMN 007106R 002 UNASG3= 000034
SETAI = 000425 STAMSG 002075R 003 TDNN = 000616 TRADDR 007140R 002 UNASG4= 000035
SETAM = 000426 STAT = 174434 TDO = 000670 TRC = 000640 UNASG5= 000036
SETCA = 000450 STATO = 000061 TDOA = 000674 TRCA = 000644 UNASG6= 000037
SETCAB= 000453 STATUS= 000022 TDOE = 000672 TRCE = 000642 UNLERM 003456R 005
SETCAI= 000451 STATZ = 000063 TDON = 000676 TRCN = 000646 UNMMSG 000640RG 003
SETCAM= 000452 STRMSG 000617RG 003 TDZ = 000630 TRDATA 007146R 002 USETI = 000074
SETCM = 000460 STSW1 = ****** GX TDZA = 000634 TRKMSG 001723RG 003 USETO = 000075
SETCMB= 000463 STUCAE 007440R TDZE = 000632 TRN = 000600 USRMSG 001207RG 003
SETCMI= 000461 STUUNL 007446R TDZN = 000636 TRNA = 000604 VERMSG 001755RG 003
SETCMM= 000462 ST.CED= 000100 TENAD1= 174410 TRNE = 000602 VFYERM 003514R 005
SETM = 000414 ST.CLE= 000001 TENAD2= 174412 TRNN = 000606 VF.DSP= 000060
SETMB = 000417 ST.CTD= 040000 TENMSG 000765RG 003 TRO = 000660 VF.FFD= 000061
SETMI = 000415 ST.CTE= 010000 TFRMSG 001765R 003 TROA = 000664 VF.INT= 000000
SETMM = 000416 ST.DW1= 002000 TFWMSG 002002R 003 TROE = 000662 VF.OVR= 000053
SETMSG 000564RG 003 ST.DXD= 000004 TFXMSG 002017R 003 TRON = 000666 VF.PRM= 000044
SETO = 000474 ST.EBS= 000100 THSMSG 000746RG 003 TRZ = 000620 VF.SSP= 000040
SETOB = 000477 ST.EDB= 004000 TLC = 000641 TRZA = 000624 VMAMSG 001120RG 003
SETOI = 000475 ST.EPE= 000020 TLCA = 000645 TRZE = 000622 VMHMSG 001124RG 003
SETOM = 000476 ST.IDS= 000010 TLCE = 000643 TRZN = 000626 WEP = 000010
SETSTS= 000060 ST.IEN= 000040 TLCN = 000647 TR.ALL= 000077 WHAMSG 000666RG 003
SETZ = 000400 ST.ION= 000001 TLN = 000601 TR.DEP= 000020 WRCRME 007674R
SETZB = 000403 ST.MBZ= 000000 TLNA = 000605 TR.DTE= 000040 WRIFWT 003326R
SETZI = 000401 ST.MOD= 000010 TLNE = 000603 TR.EXM= 000010 WRMERM 003550R 005
SETZM = 000402 ST.MPE= 001000 TLNN = 000607 TR.FRD= 000002 XCT = 000256
SHOMSG 000570RG 003 ST.NST= 000040 TLO = 000661 TR.FWR= 000004 XCTMSG 000673RG 003
SHUMSG 000575RG 003 ST.RIZ= 010000 TLOA = 000665 TR.FXC= 000001 XOR = 000430
SKIERM 003230R 005 ST.RST= 011121 TLOE = 000663 TSC = 000651 XORB = 000433
SKIP = 000330 ST.SEP= 000004 TLON = 000667 TSCA = 000655 XORI = 000431
SKIPA = 000334 ST.STE= 000002 TLZ = 000621 TSCAMB 010732R XORM = 000432
SKIPE = 000332 ST.TED= 000200 TLZA = 000625 TSCE = 000653 XTOERM 003661R 005
SKIPG = 000337 ST.TER= 000002 TLZE = 000623 TSCN = 000657 YORERM 003631R 005
SKIPGE= 000335 ST.TXD= 100000 TLZN = 000627 TSCNSK 010744R ZERMSG 000677RG 003
SKIPL = 000331 ST.TXE= 020000 TOBM = 000004 TSCWRM 010752R ZSTOP = 040000
SKIPLE= 000333 ST.XDB= 000400 TOD = 000003 TSN = 000611 $DIV = ****** GX
SKIPN = 000336 SUB = 000274 TOIP = 000002 TSNA = 000615 $DSW = ****** GX
SLOMSG 001500RG 003 SUBB = 000277 TOIT = 000001 TSNE = 000613 $$ = 000037
SNPMSG 000606RG 003 SUBI = 000275 TORERM 003426R 005 TSNN = 000617 $$PASS= 000000
SOJ = 000360 SUBM = 000276 TO10 = 000200 TSO = 000671 $$$AB = 000001
SOJA = 000364 SWPMSG 000625RG 003 TO10AD= 174420 TSOA = 000675 $$$ABO= 000001
SOJE = 000362 SWR = 177570 TO10BC= 174414 TSOE = 000673 $$$ACB= 000002
SOJG = 000367 SWSLLT= 100000 TO10BM= 000001 TSON = 000677 $$$AD = 000001
SOJGE = 000365 SXCT = 000106 TO10DB= 000400 TSZ = 000631 $$$ADX= 000001
SOJL = 000361 SZIERM 003335R 005 TO10DN= 100000 TSZA = 000635 $$$ALL= 000002
SOJLE = 000363 TAAERM 003371R 005 TO10DT= 174424 TSZE = 000633 $$$APR= 000001
SOJN = 000366 TAKMSG 000633RG 003 TO10ER= 020000 TSZN = 000637 $$$AR = 000003
SOS = 000370 TC.CON= 000377 TO11 = 000100 TTCALL= 000051 $$$ARG= 000006
SOSA = 000374 TC.CTC= 000002 TO11AD= 174422 TTYMSG 001515RG 003 $$$ARX= 000001
SOSE = 000372 TC.ERR= 000000 TO11BC= 174416 TT.OUT= ****** GX $$$AUG= 000001
SOSG = 000377 TC.RST= 000001 TO11BM= 020000 TYODIE 015752R $$$AUT= 000002
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-6
SYMBOL TABLE
$$$BR = 000001 $$$MNT= 000002 .ATLMD= 000033 .DFWB 000304RG 002 .EXAMD= ****** GX
$$$BRX= 000001 $$$MQ = 000001 .BRCLK= 005000 .DFWRT= ****** GX .EXAMF= ****** GX
$$$CLK= 000002 $$$MRK= 000001 .BRMBC 003334RG .DFXCT= ****** GX .EXAMI= ****** GX
$$$CLR= 000001 $$$NOT= 000001 .BUFSZ= 001000 G .DIAG1= 000000 .EXAMK= ****** GX
$$$CNT= 000001 $$$NOV= 000001 .BURST 003340RG .DIAG2= 000002 .EXAMN= ****** GX
$$$CON= 000002 $$$NRM= 000001 .CCMDN 000002RG 002 .DIAG3= 000006 .EXAMP= ****** GX
$$$CPU= 000001 $$$NUL= 000001 .CDIBC= 000412R 004 .DISCC= ****** GX .EXAMZ= ****** GX
$$$CRA= 000001 $$$NXT= 000004 .CDIBP= 000410R 004 .DOCMD 007714RG .EXARR= ****** GX
$$$CRL= 000001 $$$OCT= 000001 .CDINP 000374RG 004 .DPBFR 000066RG 002 .EXARX= ****** GX
$$$CRM= 000002 $$$OFS= 000002 .CDOBC= 000432RG 004 .DPBFX 000074RG 002 .EXBFR 000124RG 002
$$$CTL= 000001 $$$OPR= 000002 .CDOBP= 000430RG 004 .DPDPB 000312RG 004 .EXBRR= ****** GX
$$$DAT= 000002 $$$OST= 000014 .CDOFC= 000434RG 004 .DPETB 004612RG 002 .EXBRX= ****** GX
$$$DCR= 000004 $$$OUT= 000002 .CDOUT 000414RG 004 .DPKLM 003762RG .EXCRA= ****** GX
$$$DEC= 000001 $$$PAG= 000001 .CECLK= 004000 .DPOEL= ****** GX .EXCRL= ****** GX
$$$DEP= 000001 $$$PC = 000001 .CESCK 000000RG .DPOKL= ****** GX .EXCTC= ****** GX
$$$DIS= 000001 $$$PI = 000002 .CHTAB 001450RG 002 .DPOSC= ****** GX .EXCTF 004150RG
$$$DPT= 000001 $$$PRG= 000002 .CIBFL= 000214 G .DPOSD= ****** GX .EXDPB 000324RG 004
$$$DRA= 000001 $$$PRV= 000004 .CIBFR 000330RG 002 .DPOSI= ****** GX .EXDPM 004020RG
$$$DRM= 000001 $$$PST= 000002 .CISTS 000004RG 002 .DPOSN= ****** GX .EXDRA= ****** GX
$$$DTE= 000002 $$$QTR= 000001 .CKARG 000070RG .DPOSP= ****** GX .EXDTE= ****** GX
$$$EBS= 000001 $$$QUT= 000001 .CKCOL 000130RG .DPOSZ= ****** GX .EXEBS= ****** GX
$$$ELE= 000003 $$$R = 000001 .CKCTC 000166RG .DPOTB 004652RG 002 .EXECT 004226RG
$$$ENB= 000001 $$$REG= 000001 .CKEOC 000214RG .DPTRK 012440RG .EXETB 004734RG 002
$$$ERR= 000001 $$$REM= 000001 .CKEOS 000256RG .DREG 000320RG 002 .EXFER= ****** GX
$$$EXA= 000001 $$$RLD= 000002 .CKOBJ 000300RG .DRLTC= 015000 .EXFMR= ****** GX
$$$EXT= 000001 $$$RPT= 000003 .CKRNP 000316RG .DSACF= 066000 .EXITP 010074RG
$$$FEB= 000001 $$$RST= 000001 .CKRUN 000326RG .DSIOJ= 065000 .EXKLM 003730RG
$$$FER= 000001 $$$RTY= 000002 .CKSYM 000374RG .DTAB 004200R 002 .EXMEL= ****** GX
$$$FLG= 000001 $$$RUN= 000001 .CLDFB 003370RG .DTCID 000474RG 004 .EXMKL= ****** GX
$$$FLT= 000002 $$$SBR= 000001 .CLDFR 003374RG .DTDI1 000320RG 002 .EXMPI= ****** GX
$$$FM = 000002 $$$SCR= 000001 .CLDFW 003404RG .DTDI2 000322RG 002 .EXMQR= ****** GX
$$$FRD= 000001 $$$SEP= 000001 .CLKWD 000010RG 002 .DTDI3 000326RG 002 .EXMTB 004774RG 002
$$$FSS= 000002 $$$SET= 000001 .CLOSE 002114RG .DTDW1 003530RG .EXREG= ****** GX
$$$FUL= 000001 $$$SHO= 000001 .CLRCM= ****** GX .DTDW2 003536RG .EXSBR= ****** GX
$$$FWR= 000001 $$$SHU= 000001 .CLRFF 003420RG .DTDW3 003556RG .EXSCR= ****** GX
$$$FXC= 000001 $$$SLO= 000001 .CLRMR= 006000 .DTSTA 003546RG .EXTND 002004RG
$$$HAR= 000001 $$$SNP= 000001 .CLRUN= 010000 .DTSTS 000324RG 002 .EXTRK 012426RG
$$$HLF= 000001 $$$STR= 000001 .CMDTB 004310RG 002 .DTSTW= 000004 .EXVAB= ****** GX
$$$HLT= 000001 $$$SWP= 000001 .CMNDL= 000430 G .DTTRK 012316RG .EXVMA= ****** GX
$$$INC= 000006 $$$TAK= 000001 .COBFL= 000204 G .DWDW1 003454RG .EXVMH= ****** GX
$$$INI= 000002 $$$TEN= 000004 .COBFR 000544RG 002 .DWDW2 003462RG .EXVPC= ****** GX
$$$INT= 000001 $$$THS= 000004 .COMEF= ****** GX .DWDW3 003502RG .FEMOD= ****** GX
$$$IO = 000001 $$$TRK= 000002 .COMMA= 000054 .DWSTA 003472RG .FISTS 001630RG 002
$$$JAN= 000001 $$$TTY= 000001 .COMND 000760RG 002 .EBCLK 003634RG .FNDIR 001452RG
$$$JMP= 000001 $$$T1 = 000006 .CONBT= 012000 .EBPCK 000410RG .FREAD 004362RG
$$$JUL= 000001 $$$UCD= 000001 .CONTC= ****** GX .EDELA 000102RG 002 .FRTRK 012156RG
$$$JUN= 000001 $$$UNM= 000001 .COSTS 000012RG 002 .EDKLA 000104RG 002 .FWRIT 004444RG
$$$KL = 000001 $$$USR= 000002 .CRAMA 000016RG 002 .EDKLX 000112RG 002 .FWTRK 012176RG
$$$KLI= 000002 $$$VER= 000001 .CRAMR 000020RG 002 .EIOJA= 067000 .FXCT 004566RG
$$$LOG= 000001 $$$VMA= 000001 .CRAMW 000042RG 002 .ELDDW 000120RG 002 .FXTRK 012216RG
$$$LPT= 000001 $$$VMH= 000001 .CSHRG= 164000 .ELEDW 000122RG 002 .GFNR = 102000
$$$M = 000001 $$$WHA= 000001 .DBGSW 000064RG 002 .ELNCK 013130RG .GTCMD 012574RG
$$$MAR= 000001 $$$XCT= 000001 .DELET 002100RG .ENTER 001664RG .GTELN 013204RG
$$$MAY= 000001 $$$ZER= 000001 .DEPAR= ****** GX .ETAB 004170R 002 .GTEXP 013672RG
$$$MCR= 000001 .ABRTC= ****** GX .DFBLK 000304RG 002 .EXAD = ****** GX .GTFCT 014100RG
$$$MEM= 000002 .APRWD 000000RG 002 .DFRB 000312RG 002 .EXADX= ****** GX .GTKLA 013234RG
$$$MGN= 000001 .ATCID 000460RG 004 .DFRED= ****** GX .EXAMC= ****** GX .GTKLN 013266RG
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-7
SYMBOL TABLE
.GTLIN 012630RG .LDDIS= 045000 .RCSPF= 141000 .SCCOU= ****** GX .SPACE= 000040
.GTNBR 014374RG .LDOBC= 000454RG 004 .RDCPP 006134RG .SCCRF= ****** GX .SPETB 006622RG 002
.GTNUM 013266RG .LDOBP= 000452RG 004 .RDCRA= ****** GX .SCCRH= ****** GX .SSCAN 010760RG
.GTOPC 013500RG .LDOFC= 000456R 004 .RDCRD 006270RG .SCCRQ= ****** GX .SSCLK= 002000
.GTTRM 013766RG .LDOUT 000436RG 004 .RDCRM 006326RG .SCCRS= ****** GX .SSTTB 000264RG 002
.HALTC= ****** GX .LDPAR 005572RG .RDCRO 006476R .SCCSE= ****** GX .START 010340RG
.INATT 002716RG 002 .LDRJD= 064000 .RDCRR 006360RG .SCCSI= ****** GX .STCLF 007240RG
.INBBC 001660RG 002 .LDRJV= 063000 .RDFMA 006516RG .SCCSM= ****** GX .STCLK 007232RG
.INBUF 001664RG 002 .LDRM1= 060000 .RDFMO 006600RG .SCCTB 006170RG 002 .STPCL= 000000
.INCHC 000132RG 002 .LDRM2= 061000 .RDFMP 006634RG .SCDAT= ****** GX .STPKL 007256RG
.INDFG 001626RG 002 .LDRM3= 062000 .RDIPE 006670RG .SCFSS= ****** GX .STPXC 007302RG
.INFN 001634RG 002 .LDSEL= 044000 .RDJ14= 134000 .SCINC= ****** GX .STRCL= 001000
.INFNB 002664RG 002 .LDSTS 000160RG 002 .RDJ71= 135000 .SCKLN= ****** GX .STRTB 006712RG 002
.INICL= 070000 .LDZFL 000166RG 002 .RDMAB= 133000 .SCMEL= ****** GX .STRTC= ****** GX
.INICP= ****** GX .LGLWD 000164RG 002 .RDXSV 000206RG 002 .SCMEM= ****** GX .STRTT= ****** GX
.INITC= ****** GX .LOKUP 001574RG .READ 002440RG .SCMKL= ****** GX .STRTU= ****** GX
.INPOS 001662RG 002 .MARKC= ****** GX .READB 002406RG .SCMTB 006274RG 002 .STRTV 000222RG 002
.INVBN 001654RG 002 .MEMFL 000170RG 002 .READR 002224RG .SCNOT= ****** GX .STRUN 007332RG
.IRADX 000134RG 002 .MEMRS= 076000 .READW 002330RG .SCOFS= ****** GX .STUCD 007352RG
.IRLTC= 014000 .MISC = ****** GX .RECNT 004034RG 002 .SCOTL= ****** GX .SVESP 000224RG 002
.JUMPC= ****** GX .MONTB 005332RG 002 .RECPT 004036RG 002 .SCOTP= ****** GX .SVKLF 000226RG 002
.KLCON 004736RG .MRCLR 005766RG .RECRD 004040RG 002 .SCOTT 006344RG 002 .SWPC = ****** GX
.KLDFR 000336RG 004 .MTDPB 000266RG 004 .REGRW 000300RG 004 .SCOTY= ****** GX .SWPIP 000230RG 002
.KLDFW 000350RG 004 .NOERR= ****** GX .REGSV 010302RG .SCOUT= ****** GX .SYNXC 007454RG
.KLDFX 000362RG 004 .NOHLT= ****** GX .RELWD 000210RG 002 .SCPAL= ****** GX .TAKEC= ****** GX
.KLE = ****** GX .NOTSW 000172RG 002 .REMOV 001564RG .SCPAR= ****** GX .TCRLF 015536RG
.KLEDF 000144RG 002 .NSETB 005444RG 002 .REPTC 011022RG .SCPCR= ****** GX .TFCHR 015470RG
.KLEPT 000146RG 002 .NULLC 007702RG .RESET 006752RG .SCPDR= ****** GX .TPADD 011502RG
.KLERQ= ****** GX .OPEN 001736RG .RESTB 006106RG 002 .SCPEN= ****** GX .TPCLR 011356RG
.KLEVL 000150RG 002 .ORADX 000174RG 002 .RESTC= ****** GX .SCPFM= ****** GX .TPCMP 011424RG
.KLFLG= ****** GX .OTATT 004016RG 002 .RESTD 007066RG .SCPFS= ****** GX .TPCOM 011366RG
.KLGO 004744RG .OTBBC 002760RG 002 .RESTI 007106RG .SCPST= ****** GX .TPDEC 011534RG
.KLHLT 005034RG .OTBUF 002764RG 002 .RESTP 007132RG .SCPTB 006370RG 002 .TPDIV 011144RG
.KLINC 000136RG 002 .OTFN 002734RG 002 .RPTCT 000212RG 002 .SCRLD= ****** GX .TPINC 011522RG
.KLMTB 005270RG 002 .OTFNB 003764RG 002 .RPTPT 000220RG 002 .SCRPT= ****** GX .TPMUL 011572RG
.KLMT1 005314RG 002 .OTPOS 002762RG 002 .RSALL= ****** GX .SCRTY= ****** GX .TPNEG 011376RG
.KLRST 005274RG .OTVBN 002754RG 002 .RSAPR= ****** GX .SCTAK= ****** GX .TPSHI 011756RG
.KLSNP 000151RG 002 .OUTLG 000154RG 002 .RSDTE= ****** GX .SCTRK= ****** GX .TPSHL 012022RG
.KLST 005164RG .OUTLP 000155RG 002 .RSERR= ****** GX .SEAMB 000520RG .TPSUB 011546RG
.KLSTP 005212RG .OUTTY 000156RG 002 .RSPAG= ****** GX .SECES 000756RG .TPTST 011460RG
.KLXCT 005426RG .PARER 000432RG .RSTIN= ****** GX .SECLK= 003000 .TPXTN 011404RG
.LCRDL= 052000 .PASS 000152RG 002 .RSTIO= ****** GX .SEFRF 000606RG .TRKWD 000232RG 002
.LCRDR= 051000 .PCAB1= 150000 .RSTKL 007204RG .SEFWF 000614RG .TRPEC 000236RG 002
.LCRM1= 057000 .PCAB2= 151000 .RSTPI= ****** GX .SEFXF 000622RG .TRPIP 000240RG 002
.LCRM2= 056000 .PCAB3= 152000 .RUNCM= ****** GX .SEILC 000544RG .TRPPC 000242RG 002
.LCRM3= 055000 .PCAB4= 153000 .R50TB 001410RG 002 .SEILS 000544RG .TRPPS 000244RG 002
.LCRM4= 054000 .PEWRD 000176RG 002 .SCACB= ****** GX .SEIPC 000544RG .TRPSB 000246RG 002
.LCRM5= 053000 .PITAB 000200RG 002 .SCCEC= ****** GX .SENSK 000520RG .TRPTV 000250RG 002
.LDAR = 077000 .PSCWD 000204RG 002 .SCCED= ****** GX .SETCM= ****** GX .TRP4V 000234RG 002
.LDBRC 005452RG .PTDIE 001046RG .SCCEE= ****** GX .SETFN 002166RG .TSCAN 010510RG
.LDBRG 005456RG .PTOAT 001352RG .SCCLK= ****** GX .SETMR= 007000 .TYACE 014614RG
.LDBRL= 043000 .PTTRP 001124RG .SCCLN= ****** GX .SETRN= 011000 .TYAC1 014646RG
.LDBRR= 042000 .QUITC= ****** GX .SCCOM= ****** GX .SETTB 006444RG 002 .TYCHR 015504RG
.LDCK1= 046000 .RCRM1= 147000 .SCCON= ****** GX .SFREC= ****** GX .TYCOL 014526RG
.LDCK2= 047000 .RCRM2= 146000 .SCCOO= ****** GX .SHIFT 011114RG .TYCOM 014536RG
.LDCLK 005554RG .RCRM3= 145000 .SCCOP= ****** GX .SHUTC= ****** GX .TYELA 014746RG
.LDCRA 005652RG .RCRM4= 144000 .SCCOT 006312RG 002 .SNAP = ****** GX .TYELN 014752RG
TYOUT -- GENERAL TERMINAL OUTPU MACRO M1113 10-NOV-81 17:44 PAGE 260-8
SYMBOL TABLE
.TYINI 015722RG .TYOUT 015564RG .WHATB 006730RG 002 .WHREC= ****** GX .WRITB 003030RG
.TYKLA 015072RG .TYOU1 015644RG .WHATC= ****** GX .WHRLD= ****** GX .WRITE 003160RG
.TYKLN 015142RG .TYP3D 015016RG .WHATV= ****** GX .WHRPT= ****** GX .WRITR 002616RG
.TYLIN 015432RG .TYR50 015756RG .WHCON= ****** GX .WHRTY= ****** GX .WRITW 002754RG
.TYMIN 014546RG .TYSLS 014556RG .WHDAT= ****** GX .WHTAK= ****** GX .WRITZ 003060RG
.TYMSF 015440RG .TYSPC 014566RG .WHINC= ****** GX .WHTCL= ****** GX .WRMBX= 071000
.TYMSG 015446RG .TYUPA 014576RG .WHKLN= ****** GX .WHTPS= ****** GX .WRTAR 007472RG
.TYNCM 015224RG .T50TB 001440RG 002 .WHMEM= ****** GX .WHTRK= ****** GX .ZEROC= ****** GX
.TYNUM 015302RG .UMRKC= ****** GX .WHOFS= ****** GX .WRAR1 007476RG ..DTSP= ****** GX
.TYOBC 000252RG 002 .VFYFL 000256RG 002 .WHOUT= ****** GX .WRCRM 007520RG ..SACK= ****** GX
.TYOBP 000254RG 002 .WHACB= ****** GX .WHRDW= ****** GX
. ABS. 000000 000
016030 001
DATA 007256 002
MESSAG 002300 003
DPBS 000510 004
ERRMSG 004274 005
ERRORS DETECTED: 0
VIRTUAL MEMORY USED: 17032 WORDS ( 67 PAGES)
DYNAMIC MEMORY: 18662 WORDS ( 71 PAGES)
ELAPSED TIME: 00:04:06
,[51,20]PAROOT/CR/-SP=[51,30]PAROOT.TMP
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 1
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
ABMSG 001031 RG 178-7125 #178-7125 178-7125
ABOMSG 000365 RG 174-6980 #174-6980 174-6980
ACBMSG 001545 RG 188-7421 #188-7421 188-7421 191-7492 191-7492
ADD = 000270 #23-877
ADDB = 000273 #23-878
ADDI = 000271 #23-879
ADDM = 000272 #23-880
ADMSG 000771 RG 178-7104 #178-7104 178-7104
ADRTMP 007210 R *242-9414 *242-9415 242-9416 #242-9428
ADXMSG 000774 RG 178-7106 #178-7106 178-7106
ALLMSG 001342 RG 182-7321 #182-7321 182-7321 187-7402 187-7402
AMBERM 003714 R #189-7464 189-7464
AND = 000404 #23-882
ANDB = 000407 #23-883
ANDCA = 000410 #23-884
ANDCAB = 000413 #23-885
ANDCAI = 000411 #23-886
ANDCAM = 000412 #23-887
ANDCB = 000440 #23-888
ANDCBB = 000443 #23-889
ANDCBI = 000441 #23-890
ANDCBM = 000442 #23-891
ANDCM = 000420 #23-892
ANDCMB = 000423 #23-893
ANDCMI = 000421 #23-894
ANDCMM = 000422 #23-895
ANDI = 000405 #23-896
ANDM = 000406 #23-897
AOBJN = 000253 #23-899
AOBJP = 000252 #23-900
AOJ = 000340 #23-902
AOJA = 000344 #23-903
AOJE = 000342 #23-904
AOJG = 000347 #23-905
AOJGE = 000345 #23-906
AOJL = 000341 #23-907
AOJLE = 000343 #23-908
AOJN = 000346 #23-909
AOS = 000350 #23-911
AOSA = 000354 #23-912
AOSE = 000352 #23-913
AOSG = 000357 #23-914
AOSGE = 000355 #23-915
AOSL = 000351 #23-916
AOSLE = 000353 #23-917
AOSN = 000356 #23-918
APEERM 000000 R #181-7221 181-7221
APR = 000000 #7-244
APRMSG 001243 RG 180-7197 #180-7197 180-7197
AP.ALL = 000177 #9-348
AP.ARP = 001000 #16-633 16-637 131-5433
AP.CDP = 000004 #9-343 9-348
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 2
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
AP.EIP = 000400 #16-635 16-637 131-5441
AP.IPF = 000020 #9-345 9-348
AP.MPE = 000010 #9-344 9-348
AP.NRM = 001400 #16-637 16-639
AP.NXM = 000040 #9-346 9-348
AP.PWF = 000001 #9-341 9-348
AP.SAP = 000002 #9-342 9-348
AP.SBE = 000100 #9-347 9-348
ARMSG 000753 RG 176-7068 #176-7068 176-7068 178-7108 178-7108 187-7404 187-7404
ARXMSG 001000 RG 178-7110 #178-7110 178-7110
ASH = 000240 #23-920
ASHC = 000244 #23-921
AUGMSG 001267 RG 180-7205 #180-7205 180-7205
AUTMSG 001556 RG 188-7423 #188-7423 188-7423 191-7494 191-7494
A.LULU = 000002 #70-3071 70-3073
A.LUNA = 000004 #70-3071
A.LUNU = 000006 #70-3071
BAEERM 000023 R #181-7223 181-7223
BCCTER 003362 R 88-3854 #88-3859
BIT0 = 000001 #87-3821
BIT00 = 000001 #9-305 10-383 11-409 11-429 12-466 12-467 13-490 13-513 22-842
22-856 62-2632 130-5394 139-5751
BIT01 = 000002 #9-306 10-386 11-405 11-427 12-464 12-465 13-491 13-512 22-843
22-857 130-5393
BIT02 = 000004 #9-307 10-378 11-404 11-426 11-431 12-462 12-463 13-492 13-511
22-844 22-858 97-4147 130-5392
BIT03 = 000010 #9-308 10-377 11-403 11-423 12-459 12-461 13-493 13-510 22-845
22-859 128-5299 130-5391
BIT04 = 000020 #9-309 10-375 10-376 11-402 11-421 11-422 12-457 13-494 13-509
22-846 22-860
BIT05 = 000040 #9-310 10-373 11-409 11-420 12-455 12-456 13-495 13-508 22-847
22-861 139-5748
BIT06 = 000100 #9-311 10-372 11-398 11-431 12-453 12-454 13-484 13-507 22-848
22-862
BIT07 = 000200 #9-312 10-370 10-371 11-409 11-431 12-451 13-483 13-506 22-849
22-863
BIT08 = 000400 #9-313 10-369 11-409 11-431 12-449 13-482 13-505 22-864
BIT09 = 001000 #9-314 10-365 10-368 11-409 11-431 12-447 13-481 13-504
BIT1 = 000002 #87-3821
BIT10 = 002000 #9-315 10-364 10-367 11-409 11-431 12-446 13-480 13-503 #87-3821
BIT11 = 004000 #9-316 10-363 10-366 11-409 11-431 12-444 13-479 13-502 #87-3821
BIT12 = 010000 #9-317 10-362 11-409 11-431 12-442 12-443 13-478 13-501 #87-3821
BIT13 = 020000 #9-318 10-361 11-394 11-409 11-431 12-440 13-477 #87-3821
BIT14 = 040000 #9-319 10-360 11-391 11-392 11-409 11-414 11-431 12-439 13-476
#87-3821
BIT15 = 100000 #9-320 10-359 11-390 11-409 11-413 11-431 12-437 13-475 35-1480
35-1561 72-3187 73-3237 74-3297 #87-3821
BIT2 = 000004 #87-3821
BIT3 = 000010 #87-3821
BIT4 = 000020 #87-3821
BIT5 = 000040 #87-3821
BIT6 = 000100 #87-3821
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 3
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
BIT7 = 000200 #87-3821
BIT8 = 000400 #87-3821
BIT9 = 001000 #87-3821
BLKI = 000000 #7-233
BLKIS 002203 R 228-8926 #228-8938
BLKO = 000002 #7-235
BLKOS 002216 R 228-8928 #228-8940
BLT = 000251 #23-923
BPARER = 000020 #87-3821
BRMSG 001004 RG 178-7112 #178-7112 178-7112
BRXMSG 001007 RG 178-7114 #178-7114 178-7114
CAEERM 000056 R #181-7225 181-7225
CAI = 000300 #24-925
CAIA = 000304 #24-926
CAIE = 000302 #24-927
CAIG = 000307 #24-928
CAIGE = 000305 #24-929
CAIL = 000301 #24-930
CAILE = 000303 #24-931
CAIN = 000306 #24-932
CALERM 000112 R #181-7226 181-7226
CALL = 000040 #24-934
CALLI = 000047 #24-935
CAM = 000310 #24-937
CAMA = 000314 #24-938
CAME = 000312 #24-939
CAMG = 000317 #24-940
CAMGE = 000315 #24-941
CAML = 000311 #24-942
CAMLE = 000313 #24-943
CAMN = 000316 #24-944
CAPERM 000141 R #181-7227 181-7227
CBOERM 000200 R #181-7228 181-7228
CCA = 000014 #7-247
CC.ALL = 003417 #15-611
CC.NRM = 000000 #15-610 143-5924
CDD = 000020 #87-3821
CDIERM 000236 R #181-7229 181-7229
CD.ALL = 003400 #15-608 15-611
CD.CLC = 000400 #15-606 131-5437
CD.CRC = 002000 #15-604 131-5422
CD.DPC = 001000 #15-605 131-5429
CD.NRM = 000000 #15-607
CESCES 000016 R 47-2090 #47-2093
CESERM 003746 R #189-7466 189-7466
CFHERM 000317 R #181-7230 181-7230
CHNPNT = 000001 #87-3821
CH.ALP = 000001 #22-842 22-851 41-1828 42-1831 42-1832 42-1833 42-1834 42-1835 42-1836
42-1837 42-1838 42-1839 42-1840 42-1841 42-1842 42-1843 42-1844 42-1845
42-1846 42-1847 42-1848 42-1849 42-1850 42-1851 42-1852 42-1853 42-1854
42-1855 42-1856 48-2132
CH.ANM = 000003 #22-851
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 4
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
CH.AOP = 000100 #22-848 41-1803 41-1804 41-1805 41-1806 41-1808 41-1810 42-1832 42-1833
42-1834 42-1845 42-1861 42-1862
CH.END = 000034 #22-850 59-2537 169-6838
CH.EOC = 000010 #22-845 22-850 40-1762 41-1807 41-1823 41-1824 49-2169 51-2234 53-2300
CH.EOL = 000004 #22-844 22-850 40-1762
CH.EOS = 000020 #22-846 22-850 40-1762 41-1795 41-1797 41-1802 41-1805 41-1806 41-1807
41-1808 41-1810 41-1823 41-1824 41-1826 41-1827 42-1862 52-2271
CH.ILL = 000200 #22-849 40-1763 40-1764 40-1765 40-1766 40-1767 40-1768 40-1769 40-1770
40-1771 40-1772 40-1773 40-1774 40-1775 40-1776 40-1777 40-1778 40-1779
40-1780 40-1781 40-1782 40-1783 40-1784 40-1785 41-1787 41-1788 41-1789
41-1790 41-1791 41-1792 41-1793 41-1794 41-1796 41-1798 41-1799 41-1800
41-1801 41-1809 41-1825 41-1829 42-1858 42-1859 42-1860 42-1863
CH.NUL = 000000 #22-841
CH.NUM = 000002 #22-843 22-851 41-1812 41-1813 41-1814 41-1815 41-1816 41-1817 41-1818
41-1819 41-1820 41-1821 48-2139 236-9227
CH.PFX = 000040 #22-847 41-1803 41-1806 41-1808 41-1828 42-1861 48-2139
CIDLUN = 000001 #21-818 160-6565 222-8648 258-10060 258-10065
CKCILS 000152 R 49-2172 #49-2174 51-2243 52-2272 52-2274
CKCMRA 000160 R 48-2140 49-2170 #49-2177 53-2301
CKEEOC 000250 R 51-2241 #51-2245
CKRKLR 000366 R 54-2343 #54-2351
CLEAR = 000400 #24-946
CLEARB = 000403 #24-947
CLEARI = 000401 #24-948
CLEARM = 000402 #24-949
CLEERM 000355 R #181-7231 181-7231
CLKMSG 001570 RG 188-7425 #188-7425 188-7425 191-7496 191-7496
CLOATR = 000256 R *75-3327 *75-3331 #75-3354
CLOATT = 000262 R *75-3333 #75-3361
CLODAC 000240 R 75-3334 #75-3349 75-3352 75-3353 75-3354
CLOFCF 002160 R 75-3335 75-3337 #75-3343
CLOIOF = 000242 R *75-3326 *75-3330 #75-3352
CLOLUN = 000244 R *75-3332 #75-3353
CLOSE = 000070 #24-951
CLOWAT 000260 R 75-3331 #75-3356 75-3361
CLRMSG 000373 RG 174-6982 #174-6982 174-6982
CNRERM 000412 R #181-7232 181-7232
CNTMSG 000401 RG 174-6984 #174-6984 174-6984
CNUPE = 000002 #87-3821
CODLUN = 000002 #21-819 258-10042
CONI = 000005 #7-238
CONIS 002236 R 228-8931 #228-8943
CONMSG 001576 RG 188-7427 #188-7427 188-7427 191-7498 191-7498
CONO = 000004 #7-237
CONOS 002231 R 228-8930 #228-8942
CONSO = 000007 #7-240
CONSOS 002251 R 228-8933 #228-8945
CONSZ = 000006 #7-239
CONSZS 002243 R 228-8932 #228-8944
CPEERM 000452 R #181-7233 181-7233
CPUMSG 001346 RG 182-7323 #182-7323 182-7323
CPVMSG 000000 RG #39-1715
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 5
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
CRAMSG 001034 RG 178-7127 #178-7127 178-7127
CRHERM 000501 R #181-7234 181-7234
CRLMSG 001043 RG 178-7129 #178-7129 178-7129
CRMMSG 001376 RG 62-2657 183-7344 #183-7344 183-7344 187-7406 187-7406
CR.ALL = 000003 #15-596 15-611
CR.CR1 = 000001 #15-590 15-596 131-5435
CR.CR2 = 000002 #15-591 15-596 131-5427
CR.FUL = 000000 #15-592
CR.HLF = 000001 #15-593
CR.NRM = 000000 #15-589
CR.QTR = 000002 #15-594
CR.SLO = 000003 #15-595
CS.ALL = 000014 #15-587 15-611
CS.CS1 = 000004 #15-581 15-587 131-5420
CS.CS2 = 000010 #15-582 15-587 131-5414
CS.EXP = 177670 #87-3821
CS.EXT = 000010 #15-585
CS.FST = 000004 #15-583 15-584
CS.MGN = 000004 #15-584
CS.NRM = 000000 #15-580
CS.UDF = 000014 #15-586
CTLMSG 001415 RG 183-7348 #183-7348 183-7348
CTYPTR = ****** GX 160-6569
CYCLS = 000002 #87-3821
DATABX 000260 RG #35-1602 260-10072
DATAI = 000001 #7-234
DATAIS 002210 R 228-8927 #228-8939
DATAO = 000003 #7-236
DATAOS 002223 R 228-8929 #228-8941
DATE = 000004 #87-3821
DATMSG 001606 RG 188-7429 #188-7429 188-7429 191-7500 191-7500
DAVERM 000543 R #181-7239 181-7239
DBTERM 000574 R #181-7240 181-7240
DCKERM 000624 R #181-7241 181-7241
DCOMST = 000001 #87-3821
DCRMSG 000704 RG 175-7053 #175-7053 175-7053 176-7074 176-7074 177-7089 177-7089 178-7157 178-7157
DEB880 = ****** 44-1907 47-2085 56-2409 90-3925 94-4039 97-4148 99-4217 99-4233 100-4259
104-4404 104-4412 106-4470 108-4566 110-4642 114-4821 115-4834 115-4863 117-4952
128-5300 139-5764 149-6097 152-6193
DECMSG 001331 RG 180-7213 #180-7213 180-7213
DEP = 010000 #87-3821
DEPMSG 000412 RG 174-6986 #174-6986 174-6986
DEX = 000400 #87-3821
DEXDON = 000004 #87-3821
DEXWD1 = 174406 #87-3821
DEXWD2 = 174404 #87-3821
DEXWD3 = 174402 #87-3821
DFAD = 000110 #24-953
DFBEND = 000330 RG #37-1673
DFDV = 000113 #24-954
DFMP = 000112 #24-955
DFN = 000131 #24-956
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 6
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
DFSB = 000111 #24-957
DFUNC = 000200 #87-3821
DF.DMG = 000004 #87-3821
DF.DMN = 000007 #87-3821
DF.DOR = 000001 #87-3821
DF.EHG = 000010 #87-3821
DF.EHM = 000011 #87-3821
DF.EMG = 000005 #87-3821
DF.EMN = 000006 #87-3821
DF.KLR = 000012 #87-3821 106-4513
DF.KLW = 000013 #87-3821 108-4610
DF.KLX = 000014 #87-3821 111-4712
DF.OFF = 000002 #87-3821
DF.ON = 000003 #87-3821
DF.PDP = 000016 #87-3821 102-4328
DF.PEX = 000015 #87-3821 102-4346
DIAG1 = 174430 #87-3821
DIAG2 = 174432 #87-3821
DIAG3 = 174436 #87-3821
DIKL10 = 000010 #87-3821
DISMSG 000422 RG 174-6988 #174-6988 174-6988
DIV = 000234 #24-959
DIVB = 000237 #24-960
DIVI = 000235 #24-961
DIVM = 000236 #24-962
DLYCNT = 174400 #87-3821
DMFERM 000647 R #181-7242 181-7242
DMOVE = 000120 #24-964
DMOVEM = 000124 #24-965
DMOVN = 000121 #24-966
DMOVNM = 000125 #24-967
DNFERM 000736 R #181-7244 181-7244
DNPERM 000775 R #181-7245 181-7245
DOCCNR 010066 R 159-6498 #159-6521
DON10C = 040000 #87-3821
DON10S = 100000 #87-3821
DON11C = 000100 #87-3821
DON11S = 000200 #87-3821
DORERM 000706 R #181-7243 181-7243
DPB = 000137 #24-969
DPDTEN = 000322 RG #102-4329
DPS4 = 040000 #87-3821
DPTMSG 001403 RG 183-7346 #183-7346 183-7346
DRAMSG 001051 RG 178-7131 #178-7131 178-7131
DRDMSG 002115 R 214-8305 #215-8335
DRESET = 000100 #87-3821
DRMMSG 001521 RG 62-2656 187-7408 #187-7408 187-7408
DR.DTE = 000011 #87-3821 102-4328 102-4346 106-4513 108-4610 111-4712
DSEND = 000004 #87-3821
DSFERM 001034 R #181-7246 181-7246
DS04 = 004000 #87-3821
DS05 = 002000 #87-3821
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 7
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
DS06 = 001000 #87-3821
DTCERM 001067 R #181-7247 181-7247
DTECMD = 000451 #87-3821
DTEDSF 003626 R 94-4044 #94-4057
DTEFLG = 000444 #87-3821
DTEF11 = 000450 #87-3821
DTEMSG 001060 RG 178-7133 #178-7133 178-7133 182-7325 182-7325
DTEMTD = 000455 #87-3821
DTEMTI = 000456 #87-3821
DTKMSG 002166 R 216-8377 #218-8443
DTRMSG 002034 R 214-8290 #215-8323
DUPE = 000020 #87-3821
DURE = 000004 #87-3821
DWRMSG 002121 R 214-8308 #215-8337
DW1MSG 002055 R 215-8317 #215-8326
DW2MSG 002065 R 215-8318 #215-8328
DW3MSG 002105 R 215-8320 #215-8332
DXWRD1 = 002000 #87-3821
D.CDLS = ****** GX 160-6571
D1.CES = 004000 #10-366 47-2089 114-4820
D1.DCS = 000001 #10-383
D1.DDT = 000040 #10-373 10-386
D1.DEX = 000400 #10-369 10-386
D1.DFM = 000010 #10-377
D1.DS0 = 100000 #10-359
D1.DS1 = 040000 #10-360
D1.DS2 = 020000 #10-361
D1.DS3 = 010000 #10-362
D1.DS4 = 004000 #10-363
D1.DS5 = 002000 #10-364
D1.DS6 = 001000 #10-365
D1.HLP = 001000 #10-368 104-4403 104-4411 115-4833 115-4862 117-4951 152-6192
D1.LBK = 000200 #10-371
D1.MBZ = 000442 #10-386 94-4066
D1.PLS = 000020 #10-376
D1.RUN = 002000 #10-367
D1.T10 = 000200 #10-370
D1.T11 = 000100 #10-372
D1.V04 = 000020 #10-375
D1.XFR = 000004 #10-378
D1011 = 000040 #87-3821
D2RST 004304 R 142-5871 #142-5879
D2.EBD = 040000 #11-392
D2.MBZ = 177641 #11-409 94-4067
D2.MS1 = 000002 #11-405
D2.MS2 = 000004 #11-404
D2.MS4 = 000010 #11-403
D2.MS8 = 000020 #11-402
D2.RA0 = 100000 #11-390
D2.RA1 = 040000 #11-391
D2.RA2 = 020000 #11-394
D2.RST = 000100 #11-398 142-5880
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 8
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
D3RST 004306 R 142-5873 #142-5881
D3.CDD = 000020 #11-422
D3.MBZ = 177704 #11-431 94-4069
D3.NPE = 000002 #11-427
D3.PAR = 040000 #11-414
D3.RST = 000001 #11-433 142-5882
D3.SCD = 000040 #11-420
D3.SSL = 100000 #11-413
D3.TXB = 000001 #11-429 11-433
D3.UPE = 000020 #11-421
D3.URE = 000004 #11-426
D3.WEP = 000010 #11-423
EBCECT 003722 R 97-4155 #97-4159
EBPEPE 000424 R 56-2410 #56-2413
EBSEL = 000100 #87-3821
EBSMSG 001013 RG 178-7116 #178-7116 178-7116
EBUSPC = 000020 #87-3821
EBUSPS = 000004 #87-3821
ECTERM 001141 R #181-7249 181-7249
EDEPT 002125 R 218-8424 #218-8431
EDEXV 002131 R 218-8425 #218-8433
EDONES = 040000 #87-3821
EDPHY 002145 R 218-8428 #218-8439
EDTYTB 007154 R 217-8410 #218-8423
EDUPT 002135 R 218-8426 #218-8435
EDUSV 002141 R 218-8427 #218-8437
ED.EPT = 000000 #9-324
ED.EXV = 000040 #9-325
ED.PHY = 000200 #9-328 102-4328 102-4346
ED.UPT = 000100 #9-326
ED.USV = 000140 #9-327
EF.CRI = ****** GX 141-5823
ELBBIN 007240 RG 244-9513 #248-9674
ELBOCT 007244 RG 244-9517 #248-9677
ELEMSG 000756 RG 176-7070 #176-7070 176-7070 178-7135 178-7135 184-7369 184-7369
ELNBIN 007232 RG 243-9474 #248-9670
ELNNOR 013200 R 223-8681 223-8683 223-8688 223-8690 #223-8693
ELNOCT 007250 RG 243-9478 #248-9682
EMFERM 001172 R #181-7250 181-7250
ENBMSG 001526 RG 187-7410 #187-7410 187-7410
ENTCRE 000070 R 72-3169 #72-3186
ENTDEL 000144 R 72-3178 #72-3192
ENTENA 000114 R 72-3173 #72-3189
ENTER = 000077 #25-971
ENTFEN 001730 R 72-3170 72-3172 #72-3180
EOCERM 001231 R #181-7251 181-7251
EOFMSG 000335 R 77-3446 #77-3455
EPEERM 001267 R #181-7252 181-7252
EPTR = 000000 #87-3821
EQV = 000444 #25-973
EQVB = 000447 #25-974
EQVI = 000445 #25-975
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 9
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
EQVM = 000446 #25-976
ERRMSG 001352 RG 182-7327 #182-7327 182-7327
ERR10C = 010000 #87-3821
ERR10S = 020000 #87-3821
ERR11C = 000001 #87-3821
ERR11S = 000002 #87-3821
ERSMSG 000107 R 62-2655 #63-2665
ESDERM 001317 R #181-7253 181-7253
ESEERM 001354 R #181-7254 181-7254
ETRMSG 002151 R 216-8372 #218-8441
EXAMSG 000435 RG 174-6990 #174-6990 174-6990
EXCH = 000250 #25-978
EXDDMF 004134 R 101-4292 #101-4304
EXDEMF 004142 R 101-4286 #101-4307
EXDESD 004104 R 101-4291 #101-4296
EXDESE 004120 R 101-4285 #101-4300
EXDTEN = 000334 RG #102-4347
EXECTO 004354 R 104-4417 #104-4437
EXRTBL = 000012 G #178-7124
EXTEND = 000123 #25-979
EXTEXT 000214 R 74-3274 #74-3296
EXTFEF 002036 R 74-3275 74-3277 #74-3282
EXTMSG 001425 RG 183-7350 #183-7350 183-7350
E.FCID = 000002 #21-802 160-6565 222-8648 258-10060
E.FCOD = 000003 #21-803 258-10042 258-10065
E.FCTC = ****** GX 50-2203
E.FFIL = 000006 #21-806 70-3076 71-3139 72-3187 72-3190 72-3193 73-3237 74-3297 75-3350
80-3558 85-3767
E.FHTO = 000001 #21-801 91-3955 149-6098
E.FKLN = 000004 #21-804
E.FLOD = 000005 #21-805 258-10051
FAD = 000140 #25-981
FADB = 000143 #25-982
FADL = 000141 #25-983
FADM = 000142 #25-984
FADR = 000144 #25-986
FADRB = 000147 #25-987
FADRI = 000145 #25-988
FADRM = 000146 #25-989
FCFERM 001411 R #181-7256 181-7256
FDV = 000170 #25-991
FDVB = 000173 #25-992
FDVL = 000171 #25-993
FDVM = 000172 #25-994
FDVR = 000174 #25-996
FDVRB = 000177 #25-997
FDVRI = 000175 #25-998
FDVRM = 000176 #25-999
FEBMSG 001224 RG 180-7193 #180-7193 180-7193
FEFERM 001442 R #181-7257 181-7257
FENERM 001474 R #181-7258 181-7258
FERMSG 001067 RG 178-7137 #178-7137 178-7137
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 10
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FIX = 000122 #25-1001
FIXR = 000126 #25-1002
FLDMSG 000050 R 60-2576 #60-2583
FLFERM 001525 R #181-7259 181-7259
FLGMSG 001072 RG 178-7139 #178-7139 178-7139
FLTMSG 001613 RG 188-7431 #188-7431 188-7431 191-7502 191-7502
FLTR = 000127 #25-1004
FMMSG 001020 RG 62-2658 178-7118 #178-7118 178-7118 187-7412 187-7412
FMP = 000160 #25-1006
FMPB = 000163 #25-1007
FMPL = 000161 #25-1008
FMPM = 000162 #25-1009
FMPR = 000164 #25-1011
FMPRB = 000167 #25-1012
FMPRI = 000165 #25-1013
FMPRM = 000166 #25-1014
FNDALN 000000 R 70-3049 #70-3070 70-3073
FNDALU = 000002 R *70-3048 #70-3073
FNDCAL 001550 R 70-3050 #70-3062
FNDDNF 001556 R 70-3054 70-3056 #70-3064
FNDFNA 000010 R 70-3053 #70-3075 70-3078 70-3079
FNDFNB = 000036 R *70-3052 #70-3079
FNDLUN = 000014 R *70-3051 #70-3078
FOFERM 001557 R #181-7260 181-7260
FORPRO = 000020 #87-3821
FRDERM 001607 R #181-7261 181-7261
FRDFRF 004436 R 106-4475 #106-4492
FRDMSG 000445 RG 174-6992 #174-6992 174-6992
FRDTEN = 000346 RG #106-4514
FRFERM 004000 R #189-7468 189-7468
FR.ADX = 000254 #18-724
FR.APR = 000220 #18-702
FR.ARX = 000252 #18-722
FR.BRX = 000250 #18-720
FR.CA1 = 000312 #19-754 19-755
FR.CA2 = 000310 #19-751 19-752
FR.CL1 = 000316 #19-761
FR.CL2 = 000314 #19-758
FR.CRD = 000302 #19-745 132-5470
FR.CR1 = 000316 #19-760 19-761
FR.CR2 = 000314 #19-757 19-758
FR.CR3 = 000312 #19-755
FR.CR4 = 000310 #19-752 134-5547
FR.DA1 = 000260 #18-730
FR.DA2 = 000262 #18-733
FR.EBS = 000356 #20-788
FR.FE1 = 000266 #18-737
FR.FE2 = 000264 #18-735
FR.PI0 = 000200 #18-691
FR.PI1 = 000202 #18-693
FR.RAD = 000256 #18-726
FR.RAR = 000240 #18-712
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 11
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FR.RBR = 000242 #18-714
FR.RFM = 000246 #18-718 137-5681
FR.RMQ = 000244 #18-716
FR.SC1 = 000262 #18-732
FR.SC2 = 000260 #18-729
FR.SR1 = 000306 #19-749
FR.SR2 = 000304 #19-747
FR.VM0 = 000320 #19-764
FR.VM1 = 000322 #19-766
FR.VM2 = 000324 #19-768
FR.VM3 = 000326 #19-770
FR.VM4 = 000330 #19-772
FR.VM5 = 000332 #19-774
FR.VM6 = 000334 #19-776
FR.VM7 = 000336 #19-778
FR.100 = 000200 #18-690 18-691
FR.101 = 000202 #18-692 18-693
FR.102 = 000204 #18-694 139-5747
FR.103 = 000206 #18-695
FR.104 = 000210 #18-696 97-4145 131-5410
FR.105 = 000212 #18-697 131-5411
FR.106 = 000214 #18-698 131-5412
FR.107 = 000216 #18-699 131-5413
FR.110 = 000220 #18-701 18-702
FR.111 = 000222 #18-703
FR.112 = 000224 #18-704
FR.113 = 000226 #18-705
FR.114 = 000230 #18-706 136-5637 138-5710
FR.115 = 000232 #18-707
FR.116 = 000234 #18-708
FR.117 = 000236 #18-709
FR.120 = 000240 #18-711 18-712
FR.121 = 000242 #18-713 18-714
FR.122 = 000244 #18-715 18-716
FR.123 = 000246 #18-717 18-718
FR.124 = 000250 #18-719 18-720
FR.125 = 000252 #18-721 18-722
FR.126 = 000254 #18-723 18-724
FR.127 = 000256 #18-725 18-726
FR.130 = 000260 #18-728 18-729 18-730
FR.131 = 000262 #18-731 18-732 18-733
FR.132 = 000264 #18-734 18-735
FR.133 = 000266 #18-736 18-737
FR.134 = 000270 #18-738
FR.135 = 000272 #18-739
FR.136 = 000274 #18-740
FR.137 = 000276 #18-741
FR.140 = 000300 #19-743
FR.141 = 000302 #19-744 19-745
FR.142 = 000304 #19-746 19-747
FR.143 = 000306 #19-748 19-749
FR.144 = 000310 #19-750 19-751
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 12
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FR.145 = 000312 #19-753 19-754
FR.146 = 000314 #19-756 19-757
FR.147 = 000316 #19-759 19-760
FR.150 = 000320 #19-763 19-764
FR.151 = 000322 #19-765 19-766
FR.152 = 000324 #19-767 19-768
FR.153 = 000326 #19-769 19-770
FR.154 = 000330 #19-771 19-772
FR.155 = 000332 #19-773 19-774
FR.156 = 000334 #19-775 19-776
FR.157 = 000336 #19-777 19-778
FR.160 = 000340 #20-780
FR.161 = 000342 #20-781
FR.162 = 000344 #20-782 128-5297
FR.163 = 000346 #20-783
FR.164 = 000350 #20-784
FR.165 = 000352 #20-785
FR.166 = 000354 #20-786
FR.167 = 000356 #20-787 20-788
FR.170 = 000360 #20-790
FR.171 = 000362 #20-791
FR.172 = 000364 #20-792
FR.173 = 000366 #20-793
FR.174 = 000370 #20-794
FR.175 = 000372 #20-795
FR.176 = 000374 #20-796
FR.177 = 000376 #20-797
FSB = 000150 #25-1016
FSBB = 000153 #25-1017
FSBL = 000151 #25-1018
FSBM = 000152 #25-1019
FSBR = 000154 #26-1021
FSBRB = 000157 #26-1022
FSBRI = 000155 #26-1023
FSBRM = 000156 #26-1024
FSC = 000132 #26-1026
FSSMSG 001535 RG 62-2659 187-7414 #187-7414 187-7414 188-7433 188-7433
FSWERM 001637 R #181-7262 181-7262
FTBYTE = 000000 #2-65
FTCRAM = 000000 #2-66
FTDEBU = 000001 #2-67 35-1493 68-2865 160-6546
FTDISP = 000000 #2-68
FTDRAM = 000000 #2-69 35-1501 181-7236
FTHELP = 000000 #2-70 174-7000
FTKLE = 000001 #2-77 159-6513 163-6642 174-7028 221-8560
FTKLER = 000000 #2-71
FTKLI = ****** 69-2926 69-2937 74-3287 77-3402
FTLCMN = 000001 G 1-1 33-1408 #260-10070
FTLCVT = 000000 #2-72 42-1864 222-8616
FTLIST = 000001 #2-73
FTTRAK = 000001 #2-74 13-489 35-1578 94-4046 99-4222 106-4485 108-4580 111-4682 188-7455
191-7524 211-8191 213-8285 216-8366
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 13
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FTTRP4 = 000001 #2-75
FTUCVR = 000130 #2-76
FT1105 = 000001 #2-64 #2-101
FT1110 = 000001 #2-63 #2-97 2-100
FT1115 = 000001 #2-62 #2-93 2-96
FT1120 = 000001 #2-61 #2-89 2-92
FT1135 = 000001 #2-60 #2-85 2-88
FT1140 = 000001 #2-59 2-84 3-110
FT1145 = 000000 #2-58 2-80
FULMSG 001456 RG 183-7356 #183-7356 183-7356
FWDTEN = 000360 RG #108-4611
FWFERM 004025 R #189-7469 189-7469
FWRFWF 004560 R 108-4571 #108-4589
FWRMSG 000453 RG 174-6994 #174-6994 174-6994
FWTERM 001664 R #181-7263 181-7263
FW.APE = 000116 #16-627
FW.CA1 = 000122 #16-643 126-5239 134-5561 141-5834 155-6367
FW.CA2 = 000124 #16-645 126-5232 134-5563 141-5833 155-6369
FW.CDR = 000112 #15-599
FW.CHN = 000160 #17-675 128-5292
FW.CRD = 000126 #16-647 155-6364
FW.CR1 = 000136 #16-655
FW.CR2 = 000134 #16-653
FW.CR3 = 000132 #16-651
FW.CR4 = 000130 #16-649 155-6347
FW.CSR = 000110 #15-575 124-5165
FW.DJE = 000146 #17-664
FW.DJO = 000150 #17-666
FW.DR1 = 000140 #17-658
FW.DR2 = 000142 #17-660
FW.DR3 = 000144 #17-662
FW.EBL = 000174 #17-683 141-5836
FW.IAC = 000154 #17-670
FW.IOJ = 000152 #17-668
FW.IPE = 000114 #16-614 124-5171
FW.KLO = 000156 #17-672 141-5835
FW.LAR = 000176 #17-686 116-4911 120-5058 154-6279
FW.LBL = 000106 #15-573 122-5105 141-5832
FW.LBR = 000104 #15-571 122-5096 141-5831
FW.MBX = 000162 #17-677 141-5839
FW.SBR = 000174 #17-684
FW.040 = 000100 #15-568
FW.041 = 000102 #15-569
FW.042 = 000104 #15-570 15-571
FW.043 = 000106 #15-572 15-573
FW.044 = 000110 #15-574 15-575 108-4574
FW.045 = 000112 #15-598 15-599
FW.046 = 000114 #16-613 16-614
FW.047 = 000116 #16-626 16-627 108-4576
FW.050 = 000120 #16-641
FW.051 = 000122 #16-642 16-643
FW.052 = 000124 #16-644 16-645
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 14
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FW.053 = 000126 #16-646 16-647
FW.054 = 000130 #16-648 16-649
FW.055 = 000132 #16-650 16-651
FW.056 = 000134 #16-652 16-653
FW.057 = 000136 #16-654 16-655
FW.060 = 000140 #17-657 17-658
FW.061 = 000142 #17-659 17-660
FW.062 = 000144 #17-661 17-662
FW.063 = 000146 #17-663 17-664
FW.064 = 000150 #17-665 17-666
FW.065 = 000152 #17-667 17-668
FW.066 = 000154 #17-669 17-670
FW.067 = 000156 #17-671 17-672
FW.070 = 000160 #17-674 17-675
FW.071 = 000162 #17-676 17-677
FW.072 = 000164 #17-678
FW.073 = 000166 #17-679
FW.074 = 000170 #17-680
FW.075 = 000172 #17-681
FW.076 = 000174 #17-682 17-683 17-684
FW.077 = 000176 #17-685 17-686
FXCFXF 004730 R 110-4647 #111-4690
FXCMSG 000462 RG 174-6996 #174-6996 174-6996
FXDTEN = 000372 RG #111-4713
FXFERM 004053 R #189-7470 189-7470
FX.BMC = 000012 #14-528 88-3856
FX.CMR = 000014 #14-530 128-5309
FX.CON = 000024 #14-539 113-4766 119-5000 120-5060
FX.CRF = 000020 #14-535 90-3930 110-4673
FX.CSP = 000000 #14-518
FX.CST = 000002 #14-520 110-4650 147-6038
FX.EBC = 000006 #14-524 134-5543
FX.MBC = 000004 #14-522 97-4143 128-5304
FX.SMR = 000016 #14-532 110-4652 127-5278
FX.SRF = 000022 #14-537 110-4667 150-6131
FX.SYC = 000010 #14-526 153-6236
FX.UDR = 000032 #14-544
FX.UIR = 000030 #14-542
FX.000 = 000000 #14-517 14-518
FX.001 = 000002 #14-519 14-520
FX.002 = 000004 #14-521 14-522
FX.003 = 000006 #14-523 14-524
FX.004 = 000010 #14-525 14-526
FX.005 = 000012 #14-527 14-528
FX.006 = 000014 #14-529 14-530
FX.007 = 000016 #14-531 14-532
FX.010 = 000020 #14-534 14-535
FX.011 = 000022 #14-536 14-537
FX.012 = 000024 #14-538 14-539
FX.013 = 000026 #14-540
FX.014 = 000030 #14-541 14-542
FX.015 = 000032 #14-543 14-544
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 15
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FX.016 = 000034 #14-545
FX.017 = 000036 #14-546
FX.020 = 000040 #14-548
FX.021 = 000042 #14-549
FX.022 = 000044 #14-550
FX.023 = 000046 #14-551
FX.024 = 000050 #14-552
FX.025 = 000052 #14-553
FX.026 = 000054 #14-554
FX.027 = 000056 #14-555
FX.030 = 000060 #14-557
FX.031 = 000062 #14-558
FX.032 = 000064 #14-559
FX.033 = 000066 #14-560
FX.034 = 000070 #14-561
FX.035 = 000072 #14-562
FX.036 = 000074 #14-563
FX.037 = 000076 #14-564
GETSTS = 000062 #26-1028
GTFILC 014250 R 234-9141 #234-9152
GTKKLA 013260 R 225-8753 225-8755 #225-8757
GTLCBO 013114 R 222-8605 #222-8637
GTLILC 013122 R 221-8593 222-8619 #222-8640
GTNILI 013664 R 228-8883 228-8897 228-8915 #228-8919
GTNMRA 014512 R 237-9252 #237-9254
GTNNER 013472 R 226-8791 226-8801 #227-8842 228-8899
GTNNOR 014520 R 223-8694 227-8840 236-9232 236-9238 #237-9257
GTNORE 013466 R 226-8805 226-8807 #227-8839 228-8902 228-8904
HARMSG 001744 RG 191-7504 #191-7504 191-7504
HIBYTE = 177400 #87-3821
HLFMSG 001463 RG 183-7358 #183-7358 183-7358
HLL = 000500 #26-1030
HLLE = 000530 #26-1031
HLLEI = 000531 #26-1032
HLLEM = 000532 #26-1033
HLLES = 000533 #26-1034
HLLI = 000501 #26-1036
HLLM = 000502 #26-1037
HLLO = 000520 #26-1039
HLLOI = 000521 #26-1040
HLLOM = 000522 #26-1041
HLLOS = 000523 #26-1042
HLLS = 000503 #26-1044
HLLZ = 000510 #26-1046
HLLZI = 000511 #26-1047
HLLZM = 000512 #26-1048
HLLZS = 000513 #26-1049
HLR = 000544 #26-1051
HLRE = 000574 #26-1053
HLREI = 000575 #26-1054
HLREM = 000576 #26-1055
HLRES = 000577 #26-1056
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 16
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
HLRO = 000564 #26-1058
HLROI = 000565 #26-1059
HLROM = 000566 #26-1060
HLROS = 000567 #26-1061
HLRS = 000547 #26-1063
HLRZ = 000554 #26-1065
HLRZI = 000555 #26-1066
HLRZM = 000556 #26-1067
HLRZS = 000557 #26-1068
HLTMSG 000467 RG 174-6998 #174-6998 174-6998
HRL = 000504 #27-1070
HRLE = 000534 #27-1072
HRLEI = 000535 #27-1073
HRLEM = 000536 #27-1074
HRLES = 000537 #27-1075
HRLI = 000505 #27-1077
HRLM = 000506 #27-1078
HRLO = 000564 #27-1080
HRLOI = 000565 #27-1081
HRLOM = 000566 #27-1082
HRLOS = 000567 #27-1083
HRLS = 000507 #27-1085
HRLZ = 000514 #27-1087
HRLZI = 000515 #27-1088
HRLZM = 000516 #27-1089
HRLZS = 000517 #27-1090
HRR = 000540 #27-1092
HRRE = 000570 #27-1094
HRREI = 000571 #27-1095
HRREM = 000572 #27-1096
HRRES = 000573 #27-1097
HRRI = 000541 #27-1099
HRRM = 000542 #27-1100
HRRO = 000560 #27-1102
HRROI = 000561 #27-1103
HRROM = 000562 #27-1104
HRROS = 000563 #27-1105
HRRS = 000543 #27-1107
HRRZ = 000550 #27-1109
HRRZI = 000551 #27-1110
HRRZM = 000552 #27-1111
HRRZS = 000553 #27-1112
IBP = 000133 #28-1114
IDFERM 001715 R #181-7265 181-7265
IDIV = 000230 #28-1116
IDIVB = 000233 #28-1117
IDIVI = 000231 #28-1118
IDIVM = 000232 #28-1119
IDPB = 000136 #28-1121
IE.EBX = ****** GX 100-4267
IE.EOF = ****** GX 85-3776
IE.NSF = ****** GX 71-3125
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 17
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
IFCERM 001747 R #181-7266 181-7266
IFLOP = 100000 #87-3821
ILCERM 004103 R #189-7472 189-7472
ILDB = 000134 #28-1123
ILIERM 002003 R #181-7267 181-7267
ILSERM 004135 R #189-7473 189-7473
IMUL = 000220 #28-1125
IMULB = 000223 #28-1126
IMULI = 000221 #28-1127
IMULM = 000222 #28-1128
IN = 000056 #28-1130
INBUF = 000064 #28-1131
INCMSG 000716 RG 175-7055 #175-7055 175-7055 176-7076 176-7076 177-7091 177-7091 178-7159 178-7159
188-7435 188-7435 191-7506 191-7506
INDLUN = 000005 #21-822 77-3444 80-3558 80-3570 160-6555
INIMSG 000474 RG 174-7004 #174-7004 174-7004 182-7329 182-7329
INIT = 000041 #28-1132
INPUT = 000066 #28-1133
INTMSG 001436 RG 183-7352 #183-7352 183-7352
INTROF = 000010 #87-3821
INTRON = 000040 #87-3821
INTSON = 000001 #87-3821
INT10S = 000400 #87-3821
INT11C = 002000 #87-3821
INT11S = 004000 #87-3821
IOCERM 002035 R #181-7268 181-7268
IOMSG 001360 RG 182-7331 #182-7331 182-7331
IOR = 000434 #28-1135 29-1203
IORB = 000437 #28-1136 29-1204
IORI = 000435 #28-1137 30-1221
IORM = 000436 #28-1138 30-1222
IOTAB 007166 R 228-8881 228-8889 #228-8925
IO.ATT = ****** GX 258-10060
IO.CRE = ****** GX 72-3187
IO.DAC = ****** GX 75-3330
IO.DEL = ****** GX 72-3193 75-3326
IO.DET = ****** GX 160-6565 258-10065
IO.ENA = ****** GX 72-3190
IO.EXT = ****** GX 74-3297
IO.FNA = ****** GX 70-3076 71-3115
IO.RLB = ****** GX 222-8648
IO.RNA = ****** GX 71-3112
IO.RVB = ****** GX 80-3558
IO.WLB = ****** GX 258-10042 258-10051
IO.WVB = ****** GX 85-3767
IPCERM 004201 R #189-7474 189-7474
IP.ALL = 000017 #16-624
IP.CRP = 000004 #16-620 16-623 131-5424
IP.DRP = 000002 #16-621 16-623 131-5431
IP.FMP = 000010 #16-619 16-623 131-5417
IP.FSS = 000001 #16-622 16-624 131-5439
IP.NRM = 000016 #16-623 16-624 16-639
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 18
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
IRCERM 002065 R #181-7269 181-7269
IREERM 002120 R #181-7270 181-7270
IS.SET = ****** GX 50-2204
ITFERM 002150 R #181-7271 181-7271
ITNERM 002202 R #181-7272 181-7272
JANMSG 001214 RG 180-7191 #180-7191 180-7191
JFCL = 000255 #28-1140
JFFO = 000243 #28-1142
JMPMSG 000507 RG 174-7006 #174-7006 174-7006
JRA = 000267 #28-1144
JRST = 000254 #28-1146
JSA = 000266 #28-1148
JSP = 000265 #28-1150
JSR = 000264 #28-1152
JSYS = 000104 #28-1154
JULMSG 001262 RG 180-7203 #180-7203 180-7203
JUMP = 000320 #28-1156
JUMPA = 000324 #28-1157
JUMPE = 000322 #28-1158
JUMPG = 000327 #28-1159
JUMPGE = 000325 #28-1160
JUMPL = 000321 #28-1161
JUMPLE = 000323 #28-1162
JUMPN = 000326 #28-1163
JUNMSG 001255 RG 180-7201 #180-7201 180-7201
KCNERM 002232 R #181-7274 181-7274
KF.BRM = 001000 #13-481 119-4994
KF.CES = 000100 #13-484 47-2099 128-5311
KF.CLK = 100000 #13-475 47-2097 54-2340 101-4297 101-4301 103-4376 104-4421 104-4427 108-4578
110-4649 113-4768 113-4774 117-4941 119-4997 119-5012 119-5014 163-6654
KF.CON = 000200 #13-483 13-485 47-2097 113-4776 128-5311
KF.DEF = 000200 #13-485
KF.KLO = 000400 #13-482
KF.MRS = 020000 #13-477 127-5280 128-5311
KF.RUN = 040000 #13-476 47-2097 54-2340 103-4376 104-4421 104-4431 110-4666 113-4774 119-4997
119-5008 119-5017 146-6004 148-6066 163-6656
KF.SIM = 010000 #13-478 113-4762 119-4994
KF.SMC = 004000 #13-479
KF.SPM = 002000 #13-480 113-4760 119-4994
KLABIN 007226 RG 245-9562 #248-9667
KLAERM 002260 R #181-7275 181-7275
KLAOCT 007252 RG 245-9566 #248-9684
KLEPRM 000034 RG #39-1723 163-6643
KLHCFH 005156 R #115-4868
KLIMSG 001632 RG 188-7437 #188-7437 188-7437 191-7508 191-7508
KLIOT = 000700 #28-1165
KLMSG 001100 RG 178-7141 #178-7141 178-7141
KLNBIN 007216 RG 246-9601 #248-9662
KLNOCT 007246 RG 246-9605 #248-9680
KLPWRF = 000010 #87-3821
KLRERM 002307 R #181-7276 181-7276
KLSCFH 005266 R 117-4959 #117-4962
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 19
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
KNCERM 002351 R #181-7277 181-7277
KWEERM 002405 R #181-7278 181-7278
LDB = 000135 #29-1167
LG.ALL = 000007 #22-866 174-6988 178-7122 178-7141 179-7172 179-7172 179-7174 179-7176 179-7181
179-7183 180-7191 180-7193 180-7195 180-7197 180-7199 180-7201 180-7203 180-7205
180-7207 180-7209 180-7211 180-7213 188-7437 191-7500 191-7502 191-7508
LG.ARG = 000010 #22-859
LG.MAR = 000020 #22-860
LG.MNT = 000004 #22-858 22-866 54-2337 174-6992 174-6994 174-6996 174-7010 174-7029 174-7034
174-7038 183-7342 183-7344 183-7346 183-7348 183-7350 183-7352 183-7354 183-7356
183-7358 183-7360 183-7362 187-7402 187-7404 187-7406 187-7408 187-7410 187-7412
187-7414 188-7421 188-7425 188-7433 188-7447 188-7453 191-7492 191-7522
LG.MOD = 000040 #22-861
LG.NUL = 000000 #22-855
LG.OPR = 000001 #22-856 22-865 174-6978 174-6980 174-6982 174-6990 174-7006 174-7008 174-7012
174-7014 174-7016 174-7020 174-7022 174-7024 174-7026 174-7036 174-7040 174-7042
175-7053 175-7055 175-7057 175-7059 175-7061 176-7074 176-7076 176-7078 176-7080
176-7082 177-7089 177-7091 177-7093 177-7095 177-7097 178-7135 178-7147 178-7157
178-7159 178-7161 178-7163 178-7165 179-7174 184-7369 184-7371 185-7378 185-7380
185-7382 185-7384 186-7391 186-7393 186-7395 188-7423 188-7427 188-7435 188-7439
188-7441 188-7445 188-7451 191-7494 191-7498 191-7504 191-7506 191-7510 191-7514
191-7520 191-7528
LG.PRG = 000002 #22-857 22-865 54-2330 174-6984 174-6986 174-6998 174-7004 174-7018 174-7032
174-7044 174-7046 176-7068 176-7070 176-7072 178-7104 178-7106 178-7108 178-7110
178-7112 178-7114 178-7116 178-7118 178-7120 178-7125 178-7127 178-7129 178-7131
178-7133 178-7137 178-7139 178-7143 178-7145 178-7149 178-7151 178-7153 178-7155
182-7321 182-7323 182-7325 182-7327 182-7329 182-7331 182-7333 182-7335 188-7429
188-7431 188-7443 188-7449 188-7453 188-7456 190-7483 190-7485 191-7496 191-7512
191-7516 191-7518 191-7522 191-7525
LG.PRM = 000003 #22-865 22-866 179-7176
LG.RNG = 000100 #22-862
LG.RPT = 000400 #22-864 159-6497 174-6978 174-6982 174-6984 174-6986 174-6990 174-6992 174-6994
174-6996 174-6998 174-7004 174-7016 174-7018 174-7022 174-7032 174-7034 174-7044
175-7053 175-7055 175-7057 175-7059 175-7061 176-7068 176-7070 176-7072 176-7074
176-7076 176-7078 176-7080 176-7082 177-7089 177-7091 177-7093 177-7095 177-7097
178-7104 178-7106 178-7108 178-7110 178-7112 178-7114 178-7116 178-7118 178-7120
178-7122 178-7125 178-7127 178-7129 178-7131 178-7133 178-7135 178-7137 178-7139
178-7141 178-7143 178-7145 178-7147 178-7149 178-7151 178-7153 178-7155 178-7157
178-7159 178-7161 178-7163 178-7165 182-7321 182-7323 182-7325 182-7327 182-7329
182-7331 182-7333 182-7335 183-7342 183-7344 183-7346 183-7348 183-7350 183-7352
183-7354 183-7356 183-7358 183-7360 183-7362 188-7425 188-7433 188-7441 188-7447
190-7483 190-7485 191-7496 191-7500 191-7516
LG.STR = 000200 #22-863
LOAD11 = 000004 #87-3821
LOGLUN = 000004 #21-821 72-3187 72-3190 72-3193 74-3286 74-3297 85-3767 160-6563
LOGMSG 001505 RG 186-7391 #186-7391 186-7391
LOKFLF 001656 R 71-3121 71-3126 #71-3132
LOKFNA 000040 R 71-3120 #71-3138 71-3141 71-3142 71-3143
LOKFNB = 000066 R *71-3119 #71-3143
LOKIOF = 000042 R *71-3112 *71-3115 #71-3141
LOKLUN = 000044 R *71-3118 #71-3142
LOOKUP = 000076 #29-1169
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 20
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
LPTMSG 001511 RG 186-7393 #186-7393 186-7393
LSH = 000242 #29-1171
LSHC = 000246 #29-1172
LSTLUN = 000003 #21-820 258-10051
MAP = 000257 #29-1174
MARMSG 001235 RG 180-7195 #180-7195 180-7195
MAYMSG 001251 RG 180-7199 #180-7199 180-7199
MBZTAB 004160 R 93-4012 #94-4065
MCRMSG 000535 RG 174-7012 #174-7012 174-7012
MEMMSG 001641 RG 188-7439 #188-7439 188-7439 191-7510 191-7510
MGNMSG 001447 RG 183-7354 #183-7354 183-7354
MMSG 000514 RG 174-7008 #174-7008 174-7008
MNTMSG 001140 RG 179-7172 #179-7172 179-7172 185-7378 185-7378
MOVE = 000200 #29-1176
MOVEI = 000201 #29-1177
MOVEM = 000202 #29-1178
MOVES = 000203 #29-1179
MOVM = 000214 #29-1181
MOVMI = 000215 #29-1182
MOVMM = 000216 #29-1183
MOVMS = 000217 #29-1184
MOVN = 000210 #29-1186
MOVNI = 000211 #29-1187
MOVNM = 000212 #29-1188
MOVNS = 000213 #29-1189
MOVS = 000204 #29-1191
MOVSI = 000205 #29-1192
MOVSM = 000206 #29-1193
MOVSS = 000207 #29-1194
MPE11 = 001000 #87-3821
MQMSG 001023 RG 178-7120 #178-7120 178-7120
MRAERM 002437 R #181-7280 181-7280
MRHERM 002477 R #181-7281 181-7281
MRKMSG 000516 RG 174-7010 #174-7010 174-7010
MUL = 000224 #29-1196
MULB = 000227 #29-1197
MULI = 000225 #29-1198
MULM = 000226 #29-1199
M.KTAE = 000010 #91-3955
M.KTEF = 000002 #91-3955
M.KTMG = 000004 #91-3955
M.KTUN = 000006 #91-3955
M.PARQ = ****** GX 160-6567
NDIERM 002543 R #181-7283 181-7283
NEBMSG 000122 R 62-2645 #63-2667
NERERM 002573 R #181-7284 181-7284
NORERM 002635 R #181-7285 181-7285
NOTMSG 001650 RG 188-7441 #188-7441 188-7441
NOVMSG 001320 RG 180-7211 #180-7211 180-7211
NPIERM 002675 R #181-7286 181-7286
NRMMSG 001367 RG 183-7342 #183-7342 183-7342
NSFERM 002731 R #181-7287 181-7287
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 21
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
NSKERM 004244 R #189-7476 189-7476
NSTERM 002754 R #181-7288 181-7288
NTIERM 002777 R #181-7289 181-7289
NULMSG 000364 RG 174-6978 #174-6978 174-6978
NULSTP = 000040 #87-3821
NUPE = 000002 #87-3821
NXTMSG 000730 RG 175-7057 #175-7057 175-7057 176-7078 176-7078 177-7093 177-7093 178-7161 178-7161
OAIERM 003027 R #181-7291 181-7291
OCTMSG 001310 RG 180-7209 #180-7209 180-7209
OFCERM 003061 R #181-7292 181-7292
OFFMSG 000044 RG #39-1727
OFSMSG 001654 RG 188-7443 #188-7443 188-7443 191-7512 191-7512
ONMSG 000041 RG #39-1725
OPEACC 000160 R 73-3226 #73-3236 73-3239 73-3240 73-3241
OPEATT = 000210 R *73-3224 *73-3225 #73-3248
OPEFID = 000174 R *73-3223 #73-3241
OPEFOF 001776 R 73-3227 #73-3230
OPEFUN = 000162 R *73-3221 #73-3239
OPELUN = 000164 R *73-3222 #73-3240
OPEN = 000050 #29-1201
OPERAT 000206 R 73-3237 #73-3243 73-3248
OPRMSG 001154 RG 179-7174 #179-7174 179-7174 185-7380 185-7380
OR = 000434 #29-1203
ORB = 000437 #29-1204
ORCA = 000454 #29-1206
ORCAB = 000457 #29-1207
ORCAI = 000455 #29-1208
ORCAM = 000456 #29-1209
ORCB = 000470 #30-1211
ORCBB = 000473 #30-1212
ORCBI = 000471 #30-1213
ORCBM = 000472 #30-1214
ORCM = 000464 #30-1216
ORCMB = 000467 #30-1217
ORCMI = 000465 #30-1218
ORCMM = 000466 #30-1219
ORI = 000435 #30-1221
ORM = 000436 #30-1222
OUT = 000057 #30-1224
OUTBUF = 000065 #30-1225
OUTMSG 001663 RG 188-7445 #188-7445 188-7445 191-7514 191-7514
OUTPUT = 000067 #30-1226
PAG = 000010 #7-246
PAGMSG 001363 RG 182-7333 #182-7333 182-7333
PARERC 000662 R 58-2522 58-2522 59-2534 59-2534 59-2545 59-2545 60-2570 60-2570 #61-2589
61-2605 61-2605 62-2626 62-2626
PARERX 000506 R #58-2523 59-2556 60-2578 62-2649
PARMSG 000011 RG #39-1717 61-2590
PARNAM 000021 RG 35-1476 #39-1719 156-6412 158-6483 163-6639
PARUEC 000734 R 58-2515 #61-2602
PAR$$E = 000027 #1-50 39-1716
PAR$$K = 000126 #1-54 39-1716
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 22
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
PAR$$V = 000006 #1-49 39-1716
PCMSG 001026 RG 178-7122 #178-7122 178-7122
PC.AFI = 000020 #13-509
PC.AT0 = 000004 #13-511
PC.AT1 = 000010 #13-510
PC.BIS = 000400 #13-505
PC.CY0 = 004000 #13-502
PC.CY1 = 002000 #13-503
PC.FOV = 001000 #13-504
PC.FUF = 000002 #13-512
PC.LIP = 000040 #13-508
PC.NDV = 000001 #13-513
PC.OVF = 010000 #13-501
PC.UIO = 000100 #13-507
PC.USR = 000200 #13-506
PERCLR = 001000 #87-3821
PE.ALL = 000037 #9-337
PE.CES = 000001 #9-332 9-337
PE.CRM = 000004 #9-334 9-337
PE.DRM = 000002 #9-333 9-337
PE.FMP = 000010 #9-335 9-337
PE.FSS = 000020 #9-336 9-337
PHYS = 100000 #87-3821
PI = 000004 #7-245
PIDENT = 000000 #87-3821
PIMSG 001103 RG 178-7143 #178-7143 178-7143 182-7335 182-7335
POP = 000262 #30-1228
POPJ = 000263 #30-1229
PRGMSG 001165 RG 179-7176 #179-7176 179-7176 185-7382 185-7382
PRI7 = 000340 #87-3821
PRMFM 002257 R *242-9402 242-9403 #242-9434
PROMPT 000030 RG #39-1721 163-6651
PROPNT = 000021 #87-3821
PRTOFF = 004000 #87-3821
PRVMSG 000735 RG 175-7059 #175-7059 175-7059 176-7080 176-7080 177-7095 177-7095 178-7163 178-7163
PR0 = 000000 #87-3821
PR1 = 000040 #87-3821
PR2 = 000100 #87-3821
PR3 = 000140 #87-3821
PR4 = 000200 #87-3821
PR5 = 000240 #87-3821
PR6 = 000300 #87-3821
PR7 = 000340 #87-3821
PS = 177776 #87-3821 160-6568 *160-6568 *160-6573
PSTMSG 001672 RG 188-7447 #188-7447 188-7447 191-7516 191-7516
PSWW1 = 000005 #87-3821
PSWW10 = 000014 #87-3821
PSWW11 = 000015 #87-3821
PSWW12 = 000016 #87-3821
PSWW13 = 000017 #87-3821
PSWW2 = 000006 #87-3821
PSWW3 = 000007 #87-3821
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 23
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
PSWW4 = 000010 #87-3821
PSWW5 = 000011 #87-3821
PSWW6 = 000012 #87-3821
PSWW7 = 000013 #87-3821
PS.NRM = 001416 #16-639 143-5928
PTLERM 003111 R #181-7294 181-7294
PTOATM 000270 R 68-2860 #68-2879
PTRTEM 000151 R 64-2700 #67-2822
PTRTHM 000221 R 67-2807 #67-2824
PULSE = 000020 #87-3821
PUSH = 000261 #30-1231
PUSHJ = 000260 #30-1232
QSIZE = 000023 #87-3821
QTRMSG 001470 RG 183-7360 #183-7360 183-7360
QUTMSG 000661 RG 174-7040 #174-7040 174-7040
Q.BYCT = 000016 #21-813 222-8651 258-10045 258-10054
Q.IBUF = 000014 #21-811
Q.IOAE = 000012 #70-3076 #71-3139 #72-3187 #72-3190 #72-3193 #73-3237 #74-3297 #75-3350 #222-8648
#258-10042 #258-10051 #258-10060 #258-10065
Q.IOEF = 000006 #70-3076 #71-3139 #72-3187 #72-3190 #72-3193 #73-3237 #74-3297 #75-3350 #222-8648
#258-10042 #258-10051 #258-10060 #258-10065
Q.IOFN = 000002 #70-3076 #71-3139 71-3141 #72-3187 #72-3190 #72-3193 #73-3237 73-3239 #74-3297
#75-3350 75-3352 #222-8648 #258-10042 #258-10051 #258-10060 #258-10065
Q.IOLU = 000004 #70-3076 70-3078 #71-3139 71-3142 #72-3187 #72-3190 #72-3193 #73-3237 73-3240
#74-3297 #75-3350 75-3353 #222-8648 #258-10042 #258-10051 #258-10060 #258-10065
Q.IOPL = 000014 #21-810 21-811 21-812 21-813 21-814 #70-3076 70-3079 #71-3139 71-3143
#72-3187 #72-3190 #72-3193 #73-3237 73-3241 #74-3297 #75-3350 75-3354 #222-8648
222-8650 #258-10042 258-10044 #258-10051 258-10053 #258-10060 #258-10065
Q.IOPR = 000007 #70-3076 #71-3139 #72-3187 #72-3190 #72-3193 #73-3237 #74-3297 #75-3350 #222-8648
#258-10042 #258-10051 #258-10060 #258-10065
Q.IOSB = 000010 #70-3076 #71-3139 #72-3187 #72-3190 #72-3193 #73-3237 #74-3297 #75-3350 #222-8648
#258-10042 #258-10051 #258-10060 #258-10065
Q.OBUF = 000014 #21-812
Q.OVFC = 000020 #21-814 258-10046 258-10055
RAMIS0 = 010000 #87-3821
RDCPT1 004230 R 129-5344 #131-5409
RDCPT2 004210 R 130-5363 #130-5390
RDCPT3 004220 R 129-5345 130-5360 #130-5398
RDCRME 006470 R 134-5541 #134-5568
REAFRD 002570 R 80-3559 80-3561 #80-3568
REGMSG 001106 RG 178-7145 #178-7145 178-7145
REGTAB 007130 R 214-8293 #215-8316
RELEAS = 000071 #30-1234
REMMSG 001200 RG 179-7181 #179-7181 179-7181
RENAME = 000055 #30-1235
REPIRC 011106 R 172-6914 #172-6920
RESETT 004274 R 141-5804 #141-5830
RFMAD0 = 100000 #87-3821
RFMAD1 = 040000 #87-3821
RFMAD2 = 020000 #87-3821
RFMAD3 = 010000 #87-3821
RGDTEN = 000310 RG #95-4095
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 24
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
RLDMSG 001706 RG 188-7449 #188-7449 188-7449 191-7518 191-7518
RM = 000010 #87-3821
RMSG 000541 RG 174-7014 #174-7014 174-7014
ROT = 000241 #30-1237
ROTC = 000245 #30-1238
RPMERM 003141 R #181-7296 181-7296
RPTMSG 000543 RG 174-7016 #174-7016 174-7016 188-7451 188-7451 191-7520 191-7520
RSTEND = 004302 R 141-5816 #141-5837
RSTMSG 000552 RG 174-7018 #174-7018 174-7018
RTYMSG 001715 RG 188-7453 #188-7453 188-7453 191-7522 191-7522
RUNMSG 000560 RG 174-7020 #174-7020 174-7020
SBRMSG 001131 RG 178-7153 #178-7153 178-7153
SCD = 000040 #87-3821
SCFERM 003201 R #181-7298 181-7298
SCRMSG 001135 RG 178-7155 #178-7155 178-7155
SEPMSG 001276 RG 180-7207 #180-7207 180-7207
SETA = 000424 #30-1240
SETAB = 000427 #30-1241
SETAI = 000425 #30-1242
SETAM = 000426 #30-1243
SETCA = 000450 #30-1245
SETCAB = 000453 #30-1246
SETCAI = 000451 #30-1247
SETCAM = 000452 #30-1248
SETCM = 000460 #30-1250
SETCMB = 000463 #30-1251
SETCMI = 000461 #30-1252
SETCMM = 000462 #30-1253
SETM = 000414 #31-1255
SETMB = 000417 #31-1256
SETMI = 000415 #31-1257
SETMM = 000416 #31-1258
SETMSG 000564 RG 174-7022 #174-7022 174-7022
SETO = 000474 #31-1260
SETOB = 000477 #31-1261
SETOI = 000475 #31-1262
SETOM = 000476 #31-1263
SETSTS = 000060 #31-1265
SETZ = 000400 #31-1267
SETZB = 000403 #31-1268
SETZI = 000401 #31-1269
SETZM = 000402 #31-1270
SHOMSG 000570 RG 174-7024 #174-7024 174-7024
SHUMSG 000575 RG 174-7026 #174-7026 174-7026
SKIERM 003230 R #181-7299 181-7299
SKIP = 000330 #31-1272
SKIPA = 000334 #31-1273
SKIPE = 000332 #31-1274
SKIPG = 000337 #31-1275
SKIPGE = 000335 #31-1276
SKIPL = 000331 #31-1277
SKIPLE = 000333 #31-1278
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 25
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
SKIPN = 000336 #31-1279
SLOMSG 001500 RG 183-7362 #183-7362 183-7362
SNPMSG 000606 RG 174-7029 #174-7029 174-7029
SOJ = 000360 #31-1281
SOJA = 000364 #31-1282
SOJE = 000362 #31-1283
SOJG = 000367 #31-1284
SOJGE = 000365 #31-1285
SOJL = 000361 #31-1286
SOJLE = 000363 #31-1287
SOJN = 000366 #31-1288
SOS = 000370 #31-1290
SOSA = 000374 #31-1291
SOSE = 000372 #31-1292
SOSG = 000377 #31-1293
SOSGE = 000375 #31-1294
SOSL = 000371 #31-1295
SOSLE = 000373 #31-1296
SOSN = 000376 #31-1297
SPCEST 001614 R 62-2630 #62-2654
SPFERM 003305 R #181-7300 181-7300
SSTLEN = 000010 G #36-1653
SSTTBE = 000302 RG #36-1654 64-2697
STAMSG 002075 R 215-8319 #215-8330
STAT = 174434 #87-3821
STATO = 000061 #31-1299
STATUS = 000022 #31-1300 #87-3821
STATZ = 000063 #31-1301
STRMSG 000617 RG 174-7032 #174-7032 174-7032
STSW1 = ****** GX *160-6570
STUCAE 007440 R 152-6182 #152-6203
STUUNL 007446 R 152-6200 #152-6206
ST.CED = 000100 #12-454 12-469
ST.CLE = 000001 #12-467 12-469
ST.CTD = 040000 #12-439
ST.CTE = 010000 #12-443 12-469
ST.DW1 = 002000 #12-446
ST.DXD = 000004 #12-462
ST.EBS = 000100 #12-453
ST.EDB = 004000 #12-444
ST.EPE = 000020 #12-457 12-469 56-2408
ST.IDS = 000010 #12-461
ST.IEN = 000040 #12-456
ST.ION = 000001 #12-466
ST.MBZ = 000000 #12-471 94-4068
ST.MOD = 000010 #12-459
ST.MPE = 001000 #12-447 12-469
ST.NST = 000040 #12-455
ST.RIZ = 010000 #12-442
ST.RST = 011121 #12-469
ST.SEP = 000004 #12-463
ST.STE = 000002 #12-465
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 26
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
ST.TED = 000200 #12-451
ST.TER = 000002 #12-464
ST.TXD = 100000 #12-437
ST.TXE = 020000 #12-440
ST.XDB = 000400 #12-449
SUB = 000274 #32-1303
SUBB = 000277 #32-1304
SUBI = 000275 #32-1305
SUBM = 000276 #32-1306
SWPMSG 000625 RG 174-7034 #174-7034 174-7034
SWR = 177570 #87-3821
SWSLLT = 100000 #87-3821
SXCT = 000106 #32-1308
SZIERM 003335 R #181-7301 181-7301
TAAERM 003371 R #181-7303 181-7303
TAKMSG 000633 RG 174-7036 #174-7036 174-7036
TC.CON = 000377 #22-873
TC.CTC = 000002 #22-870 50-2208 66-2780
TC.ERR = 000000 #22-872 47-2104 49-2175 49-2178 51-2246 54-2352 56-2414 70-3063 70-3065
71-3133 72-3181 73-3231 74-3291 75-3344 80-3573 85-3782 88-3860 94-4058
97-4160 101-4298 101-4302 101-4305 101-4308 104-4438 106-4493 108-4590 111-4691
115-4869 117-4963 134-5569 152-6204 152-6207 155-6374 159-6522 167-6775 167-6778
167-6781 172-6921 197-7703 222-8638 222-8641 225-8758 227-8843 228-8920 234-9153
235-9193 237-9255 237-9258
TC.RST = 000001 #22-871
TDC = 000650 #32-1310
TDCA = 000654 #32-1311
TDCE = 000652 #32-1312
TDCN = 000656 #32-1313
TDMSG0 000345 R 166-6753 #167-6786
TDN = 000610 #32-1315
TDNA = 000614 #32-1316
TDNE = 000612 #32-1317
TDNN = 000616 #32-1318
TDO = 000670 #32-1320
TDOA = 000674 #32-1321
TDOE = 000672 #32-1322
TDON = 000676 #32-1323
TDZ = 000630 #32-1325
TDZA = 000634 #32-1326
TDZE = 000632 #32-1327
TDZN = 000636 #32-1328
TENAD1 = 174410 #87-3821
TENAD2 = 174412 #87-3821
TENMSG 000765 RG 176-7072 #176-7072 176-7072 178-7147 178-7147 184-7371 184-7371 190-7483 190-7483
TFRMSG 001765 R 211-8199 #212-8244
TFWMSG 002002 R 211-8206 #212-8246
TFXMSG 002017 R 211-8213 #212-8248
THSMSG 000746 RG 175-7061 #175-7061 175-7061 176-7082 176-7082 177-7097 177-7097 178-7165 178-7165
TLC = 000641 #32-1330
TLCA = 000645 #32-1331
TLCE = 000643 #32-1332
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 27
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
TLCN = 000647 #32-1333
TLN = 000601 #32-1335
TLNA = 000605 #32-1336
TLNE = 000603 #32-1337
TLNN = 000607 #32-1338
TLO = 000661 #32-1340
TLOA = 000665 #32-1341
TLOE = 000663 #32-1342
TLON = 000667 #32-1343
TLZ = 000621 #32-1345
TLZA = 000625 #32-1346
TLZE = 000623 #32-1347
TLZN = 000627 #32-1348
TOBM = 000004 #87-3821
TOD = 000003 #87-3821
TOIP = 000002 #87-3821
TOIT = 000001 #87-3821
TORERM 003426 R #181-7304 181-7304
TO10 = 000200 #87-3821
TO10AD = 174420 #87-3821
TO10BC = 174414 #87-3821
TO10BM = 000001 #87-3821
TO10DB = 000400 #87-3821
TO10DN = 100000 #87-3821
TO10DT = 174424 #87-3821
TO10ER = 020000 #87-3821
TO11 = 000100 #87-3821
TO11AD = 174422 #87-3821
TO11BC = 174416 #87-3821
TO11BM = 020000 #87-3821
TO11DB = 004000 #87-3821
TO11DN = 000200 #87-3821
TO11DT = 174426 #87-3821
TO11ER = 000002 #87-3821
TPDDCK 011350 R 196-7654 #197-7702
TPDDVD 007122 R #195-7641 196-7669
TPDDVS 007114 R #195-7639 196-7668
TPDRMN 007106 R #195-7637 196-7657 196-7667 197-7695
TRADDR 007140 R 217-8387 217-8398 #218-8419
TRC = 000640 #32-1350
TRCA = 000644 #32-1351
TRCE = 000642 #32-1352
TRCN = 000646 #32-1353
TRDATA 007146 R 217-8392 217-8402 #218-8421
TRKMSG 001723 RG 188-7456 #188-7456 188-7456 191-7525 191-7525
TRN = 000600 #33-1355
TRNA = 000604 #33-1356
TRNE = 000602 #33-1357
TRNN = 000606 #33-1358
TRO = 000660 #33-1360
TROA = 000664 #33-1361
TROE = 000662 #33-1362
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 28
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
TRON = 000666 #33-1363
TRZ = 000620 #33-1365
TRZA = 000624 #33-1366
TRZE = 000622 #33-1367
TRZN = 000626 #33-1368
TR.ALL = 000077 #13-496
TR.DEP = 000020 #13-494 13-496 99-4239
TR.DTE = 000040 #13-495 13-496 94-4047
TR.EXM = 000010 #13-493 13-496 99-4223
TR.FRD = 000002 #13-491 13-496 106-4486
TR.FWR = 000004 #13-492 13-496 108-4581
TR.FXC = 000001 #13-490 13-496 111-4683
TSC = 000651 #33-1370
TSCA = 000655 #33-1371
TSCAMB 010732 R 165-6727 #167-6773
TSCE = 000653 #33-1372
TSCN = 000657 #33-1373
TSCNSK 010744 R 165-6736 #167-6777
TSCWRM 010752 R 165-6739 #167-6780
TSN = 000611 #33-1375
TSNA = 000615 #33-1376
TSNE = 000613 #33-1377
TSNN = 000617 #33-1378
TSO = 000671 #33-1380
TSOA = 000675 #33-1381
TSOE = 000673 #33-1382
TSON = 000677 #33-1383
TSZ = 000631 #33-1385
TSZA = 000635 #33-1386
TSZE = 000633 #33-1387
TSZN = 000637 #33-1388
TTCALL = 000051 #33-1390
TTYMSG 001515 RG 186-7395 #186-7395 186-7395
TT.OUT = ****** GX 160-6570
TYODIE 015752 R 255-9932 255-9934 255-9936 255-9938 255-9945 255-9947 #256-9967
UCDMSG 001732 RG 190-7485 #190-7485 190-7485
UECMSG 000060 R 61-2616 #61-2620
UECMSP 001612 R 61-2604 #61-2615
UGETF = 000073 #33-1392
UJEN = 000100 #33-1394
UNASG1 = 000032 #87-3821
UNASG2 = 000033 #87-3821
UNASG3 = 000034 #87-3821
UNASG4 = 000035 #87-3821
UNASG5 = 000036 #87-3821
UNASG6 = 000037 #87-3821
UNLERM 003456 R #181-7306 181-7306
UNMMSG 000640 RG 174-7038 #174-7038 174-7038
USETI = 000074 #33-1396
USETO = 000075 #33-1397
USRMSG 001207 RG 179-7183 #179-7183 179-7183 185-7384 185-7384
VERMSG 001755 RG 191-7528 #191-7528 191-7528
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 29
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
VFYERM 003514 R #181-7308 181-7308
VF.DSP = 000060 #21-828
VF.FFD = 000061 #21-829
VF.INT = 000000 #21-826 258-10042 258-10051
VF.OVR = 000053 #21-830
VF.PRM = 000044 #21-831
VF.SSP = 000040 #21-827
VMAMSG 001120 RG 178-7149 #178-7149 178-7149
VMHMSG 001124 RG 178-7151 #178-7151 178-7151
WEP = 000010 #87-3821
WHAMSG 000666 RG 174-7042 #174-7042 174-7042
WRCRME 007674 R 155-6344 #155-6373
WRIFWT 003326 R 85-3768 85-3777 #85-3781
WRMERM 003550 R #181-7310 181-7310
XCT = 000256 #33-1399
XCTMSG 000673 RG 174-7044 #174-7044 174-7044
XOR = 000430 #33-1401
XORB = 000433 #33-1402
XORI = 000431 #33-1403
XORM = 000432 #33-1404
XTOERM 003661 R #181-7314 181-7314
YORERM 003631 R #181-7312 181-7312
ZERMSG 000677 RG 174-7046 #174-7046 174-7046
ZSTOP = 040000 #87-3821
$DIV = ****** GX 257-9999 257-9999
$DSW = ****** GX 50-2204 100-4267
$$ = 000037 #47-2088 47-2088 #47-2094 47-2094 #48-2131 48-2131 #51-2239 51-2239 #53-2299
53-2299 #56-2407 56-2407 #58-2522 58-2522 #59-2534 59-2534 #59-2539 59-2539
#59-2545 59-2545 #59-2549 59-2549 #59-2552 59-2552 #59-2555 59-2555 #60-2570
60-2570 #60-2575 60-2575 #60-2577 60-2577 #61-2591 61-2591 #61-2593 61-2593
#61-2595 61-2595 #61-2597 61-2597 #61-2598 61-2598 #61-2605 61-2605 #61-2607
61-2607 #62-2626 62-2626 #62-2627 62-2627 #62-2635 62-2635 #62-2636 62-2636
#62-2637 62-2637 #62-2646 62-2646 #64-2699 64-2699 #64-2701 64-2701 #64-2703
64-2703 #64-2704 64-2704 #66-2770 66-2770 #66-2776 66-2776 #66-2790 66-2790
#66-2792 66-2792 #67-2808 67-2808 #67-2809 67-2809 #67-2815 67-2815 #68-2856
68-2856 #68-2859 68-2859 #68-2861 68-2861 #68-2863 68-2863 #68-2864 68-2864
#68-2869 68-2869 #71-3116 71-3116 #71-3117 71-3117 #74-3290 74-3290 #77-3430
77-3430 #77-3436 77-3436 #77-3445 77-3445 #77-3447 77-3447 #78-3490 78-3490
#79-3523 79-3523 #80-3572 80-3572 #81-3620 81-3620 #81-3624 81-3624 #82-3664
82-3664 #83-3695 83-3695 #84-3733 84-3733 #84-3737 84-3737 #84-3739 84-3739
#85-3778 85-3778 #88-3851 88-3851 #88-3855 88-3855 #89-3888 89-3888 #89-3898
89-3898 #90-3931 90-3931 #97-4139 97-4139 #97-4144 97-4144 #97-4146 97-4146
#99-4216 99-4216 #99-4225 99-4225 #99-4232 99-4232 #99-4241 99-4241 #100-4271
100-4271 #100-4274 100-4274 #103-4380 103-4380 #103-4382 103-4382 #104-4399 104-4399
#104-4401 104-4401 #104-4402 104-4402 #104-4407 104-4407 #104-4410 104-4410 #104-4423
104-4423 #104-4429 104-4429 #104-4433 104-4433 #106-4488 106-4488 #108-4583 108-4583
#111-4685 111-4685 #113-4764 113-4764 #113-4767 113-4767 #113-4770 113-4770 #114-4819
114-4819 #114-4824 114-4824 #115-4832 115-4832 #115-4843 115-4843 #115-4856 115-4856
#115-4860 115-4860 #115-4861 115-4861 #116-4909 116-4909 #116-4912 116-4912 #117-4948
117-4948 #117-4950 117-4950 #119-4999 119-4999 #119-5001 119-5001 #119-5010 119-5010
#119-5016 119-5016 #120-5057 120-5057 #120-5059 120-5059 #122-5089 122-5089 #122-5092
122-5092 #122-5098 122-5098 #122-5101 122-5101 #122-5106 122-5106 #124-5163 124-5163
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 30
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
#124-5169 124-5169 #124-5175 124-5175 #124-5179 124-5179 #124-5184 124-5184 #126-5222
126-5222 #126-5224 126-5224 #126-5230 126-5230 #126-5233 126-5233 #126-5237 126-5237
#126-5240 126-5240 #127-5279 127-5279 #127-5281 127-5281 #128-5290 128-5290 #128-5291
128-5291 #128-5293 128-5293 #128-5298 128-5298 #128-5305 128-5305 #128-5308 128-5308
#128-5310 128-5310 #129-5341 129-5341 #129-5349 129-5349 #132-5471 132-5471 #132-5473
132-5473 #134-5542 134-5542 #134-5544 134-5544 #134-5552 134-5552 #134-5557 134-5557
#134-5559 134-5559 #134-5562 134-5562 #134-5564 134-5564 #135-5599 135-5599 #135-5601
135-5601 #136-5638 136-5638 #136-5640 136-5640 #136-5645 136-5645 #137-5678 137-5678
#137-5682 137-5682 #138-5711 138-5711 #138-5714 138-5714 #139-5746 139-5746 #139-5755
139-5755 #141-5803 141-5803 #141-5805 141-5805 #141-5808 141-5808 #141-5809 141-5809
#141-5810 141-5810 #141-5811 141-5811 #141-5815 141-5815 #141-5820 141-5820 #142-5872
142-5872 #143-5922 143-5922 #143-5927 143-5927 #145-5965 145-5965 #145-5966 145-5966
#145-5969 145-5969 #145-5971 145-5971 #145-5975 145-5975 #146-6006 146-6006 #147-6035
147-6035 #147-6039 147-6039 #148-6069 148-6069 #150-6133 150-6133 #152-6184 152-6184
#152-6185 152-6185 #152-6187 152-6187 #152-6188 152-6188 #152-6191 152-6191 #153-6237
153-6237 #154-6275 154-6275 #154-6277 154-6277 #154-6280 154-6280 #155-6349 155-6349
#155-6357 155-6357 #155-6362 155-6362 #155-6365 155-6365 #155-6366 155-6366 #155-6368
155-6368 #155-6370 155-6370 #158-6484 158-6484 #159-6493 159-6493 #159-6495 159-6495
#159-6503 159-6503 #159-6504 159-6504 #159-6518 159-6518 #160-6557 160-6557 #160-6561
160-6561 #160-6564 160-6564 #160-6572 160-6572 #162-6628 162-6628 #163-6640 163-6640
#163-6648 163-6648 #163-6652 163-6652 #163-6664 163-6664 #163-6666 163-6666 #163-6669
163-6669 #165-6707 165-6707 #165-6708 165-6708 #165-6718 165-6718 #166-6748 166-6748
#166-6750 166-6750 #166-6752 166-6752 #166-6754 166-6754 #166-6762 166-6762 #166-6763
166-6763 #172-6911 172-6911 #172-6913 172-6913 #172-6915 172-6915 #172-6917 172-6917
#196-7650 196-7650 #196-7652 196-7652 #196-7653 196-7653 #197-7682 197-7682 #197-7684
197-7684 #197-7687 197-7687 #198-7747 198-7747 #205-7972 205-7972 #205-7975 205-7975
#205-7978 205-7978 #205-7996 205-7996 #205-8003 205-8003 #208-8104 208-8104 #208-8105
208-8105 #209-8117 209-8117 #209-8119 209-8119 #209-8120 209-8120 #209-8128 209-8128
#209-8130 209-8130 #209-8131 209-8131 #212-8223 212-8223 #212-8228 212-8228 #212-8231
212-8231 #212-8232 212-8232 #212-8233 212-8233 #212-8235 212-8235 #214-8291 214-8291
#214-8294 214-8294 #214-8295 214-8295 #214-8304 214-8304 #214-8310 214-8310 #216-8371
216-8371 #216-8376 216-8376 #217-8397 217-8397 #217-8399 217-8399 #217-8400 217-8400
#217-8401 217-8401 #217-8403 217-8403 #217-8404 217-8404 #217-8411 217-8411 #220-8513
220-8513 #220-8519 220-8519 #221-8564 221-8564 #221-8573 221-8573 #221-8578 221-8578
#221-8587 221-8587 #221-8588 221-8588 #224-8722 224-8722 #224-8723 224-8723 #225-8751
225-8751 #226-8789 226-8789 #226-8792 226-8792 #226-8793 226-8793 #226-8795 226-8795
#226-8797 226-8797 #226-8800 226-8800 #226-8802 226-8802 #227-8815 227-8815 #227-8822
227-8822 #227-8823 227-8823 #227-8824 227-8824 #228-8885 228-8885 #228-8898 228-8898
#228-8900 228-8900 #229-8974 229-8974 #230-9001 230-9001 #230-9004 230-9004 #231-9034
231-9034 #232-9069 232-9069 #232-9072 232-9072 #233-9112 233-9112 #234-9140 234-9140
#235-9171 235-9171 #235-9176 235-9176 #235-9177 235-9177 #235-9182 235-9182 #235-9185
235-9185 #235-9190 235-9190 #236-9233 236-9233 #236-9236 236-9236 #241-9359 241-9359
#242-9404 242-9404 #242-9412 242-9412 #242-9413 242-9413 #242-9417 242-9417 #242-9418
242-9418 #242-9419 242-9419 #242-9421 242-9421 #242-9422 242-9422 #247-9648 247-9648
#247-9653 247-9653 #249-9728 249-9728 #250-9750 250-9750 #250-9753 250-9753 #250-9755
250-9755 #251-9798 251-9798 #251-9802 251-9802 #251-9811 251-9811 #252-9840 252-9840
#254-9893 254-9893 #254-9895 254-9895 #255-9953 255-9953 #257-9999 257-9999 #257-10006
257-10006
$$PASS = 000000 174-6978 174-6980 174-6982 174-6984 174-6986 174-6988 174-6990 174-6992 174-6994
174-6996 174-6998 174-7004 174-7006 174-7008 174-7010 174-7012 174-7014 174-7016
174-7018 174-7020 174-7022 174-7024 174-7026 174-7029 174-7032 174-7034 174-7036
174-7038 174-7040 174-7042 174-7044 174-7046 175-7053 175-7055 175-7057 175-7059
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 31
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
175-7061 176-7068 176-7070 176-7072 176-7074 176-7076 176-7078 176-7080 176-7082
177-7089 177-7091 177-7093 177-7095 177-7097 178-7104 178-7106 178-7108 178-7110
178-7112 178-7114 178-7116 178-7118 178-7120 178-7122 178-7125 178-7127 178-7129
178-7131 178-7133 178-7135 178-7137 178-7139 178-7141 178-7143 178-7145 178-7147
178-7149 178-7151 178-7153 178-7155 178-7157 178-7159 178-7161 178-7163 178-7165
179-7172 179-7174 179-7176 179-7181 179-7183 180-7191 180-7193 180-7195 180-7197
180-7199 180-7201 180-7203 180-7205 180-7207 180-7209 180-7211 180-7213 182-7321
182-7323 182-7325 182-7327 182-7329 182-7331 182-7333 182-7335 183-7342 183-7344
183-7346 183-7348 183-7350 183-7352 183-7354 183-7356 183-7358 183-7360 183-7362
184-7369 184-7371 185-7378 185-7380 185-7382 185-7384 186-7391 186-7393 186-7395
187-7402 187-7404 187-7406 187-7408 187-7410 187-7412 187-7414 188-7421 188-7423
188-7425 188-7427 188-7429 188-7431 188-7433 188-7435 188-7437 188-7439 188-7441
188-7443 188-7445 188-7447 188-7449 188-7451 188-7453 188-7456 190-7483 190-7485
191-7492 191-7494 191-7496 191-7498 191-7500 191-7502 191-7504 191-7506 191-7508
191-7510 191-7512 191-7514 191-7516 191-7518 191-7520 191-7522 191-7525 191-7528
#191-7533
$$$AB = 000001 178-7125 #178-7125 178-7125
$$$ABO = 000001 174-6980 #174-6980 174-6980
$$$ACB = 000002 188-7421 #188-7421 188-7421 191-7492 #191-7492 191-7492
$$$AD = 000001 178-7104 #178-7104 178-7104
$$$ADX = 000001 178-7106 #178-7106 178-7106
$$$ALL = 000002 182-7321 #182-7321 182-7321 187-7402 #187-7402 187-7402
$$$APR = 000001 180-7197 #180-7197 180-7197
$$$AR = 000003 176-7068 #176-7068 176-7068 178-7108 #178-7108 178-7108 187-7404 #187-7404 187-7404
$$$ARG = 000006 #70-3071 70-3071 #70-3071 70-3071 #70-3071 70-3071 #70-3076 70-3076 #70-3076
70-3076 #70-3076 70-3076 #70-3076 70-3076 #70-3076 70-3076 #70-3076 70-3076
#70-3076 70-3076 #71-3139 71-3139 #71-3139 71-3139 #71-3139 71-3139 #71-3139
71-3139 #71-3139 71-3139 #71-3139 71-3139 #71-3139 71-3139 #72-3187 72-3187
#72-3187 72-3187 #72-3187 72-3187 #72-3187 72-3187 #72-3187 72-3187 #72-3190
72-3190 #72-3190 72-3190 #72-3190 72-3190 #72-3190 72-3190 #72-3190 72-3190
#72-3190 72-3190 #72-3190 72-3190 #72-3193 72-3193 #73-3237 73-3237 #73-3237
73-3237 #73-3237 73-3237 #73-3237 73-3237 #73-3237 73-3237 #73-3237 73-3237
#74-3297 74-3297 #74-3297 74-3297 #74-3297 74-3297 #74-3297 74-3297 #74-3297
74-3297 #75-3350 75-3350 #75-3350 75-3350 #75-3350 75-3350 #80-3558 80-3558
80-3558 80-3558 80-3558 80-3558 80-3558 80-3558 80-3558 80-3558 80-3558
80-3558 #85-3767 85-3767 85-3767 85-3767 85-3767 85-3767 85-3767 85-3767
85-3767 85-3767 85-3767 85-3767 #160-6565 160-6565 160-6565 160-6565 160-6565
160-6565 160-6565 160-6565 160-6565 160-6565 160-6565 160-6565 #222-8648 222-8648
#222-8648 222-8648 #222-8648 222-8648 #258-10042 258-10042 #258-10042 258-10042 #258-10042
258-10042 #258-10042 258-10042 #258-10051 258-10051 #258-10051 258-10051 #258-10051 258-10051
#258-10051 258-10051 #258-10060 258-10060 #258-10065 258-10065
$$$ARX = 000001 178-7110 #178-7110 178-7110
$$$AUG = 000001 180-7205 #180-7205 180-7205
$$$AUT = 000002 188-7423 #188-7423 188-7423 191-7494 #191-7494 191-7494
$$$BR = 000001 178-7112 #178-7112 178-7112
$$$BRX = 000001 178-7114 #178-7114 178-7114
$$$CLK = 000002 188-7425 #188-7425 188-7425 191-7496 #191-7496 191-7496
$$$CLR = 000001 174-6982 #174-6982 174-6982
$$$CNT = 000001 174-6984 #174-6984 174-6984
$$$CON = 000002 188-7427 #188-7427 188-7427 191-7498 #191-7498 191-7498
$$$CPU = 000001 182-7323 #182-7323 182-7323
$$$CRA = 000001 178-7127 #178-7127 178-7127
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 32
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
$$$CRL = 000001 178-7129 #178-7129 178-7129
$$$CRM = 000002 183-7344 #183-7344 183-7344 187-7406 #187-7406 187-7406
$$$CTL = 000001 183-7348 #183-7348 183-7348
$$$DAT = 000002 188-7429 #188-7429 188-7429 191-7500 #191-7500 191-7500
$$$DCR = 000004 175-7053 #175-7053 175-7053 176-7074 #176-7074 176-7074 177-7089 #177-7089 177-7089
178-7157 #178-7157 178-7157
$$$DEC = 000001 180-7213 #180-7213 180-7213
$$$DEP = 000001 174-6986 #174-6986 174-6986
$$$DIS = 000001 174-6988 #174-6988 174-6988
$$$DPT = 000001 183-7346 #183-7346 183-7346
$$$DRA = 000001 178-7131 #178-7131 178-7131
$$$DRM = 000001 187-7408 #187-7408 187-7408
$$$DTE = 000002 178-7133 #178-7133 178-7133 182-7325 #182-7325 182-7325
$$$EBS = 000001 178-7116 #178-7116 178-7116
$$$ELE = 000003 176-7070 #176-7070 176-7070 178-7135 #178-7135 178-7135 184-7369 #184-7369 184-7369
$$$ENB = 000001 187-7410 #187-7410 187-7410
$$$ERR = 000001 182-7327 #182-7327 182-7327
$$$EXA = 000001 174-6990 #174-6990 174-6990
$$$EXT = 000001 183-7350 #183-7350 183-7350
$$$FEB = 000001 180-7193 #180-7193 180-7193
$$$FER = 000001 178-7137 #178-7137 178-7137
$$$FLG = 000001 178-7139 #178-7139 178-7139
$$$FLT = 000002 188-7431 #188-7431 188-7431 191-7502 #191-7502 191-7502
$$$FM = 000002 178-7118 #178-7118 178-7118 187-7412 #187-7412 187-7412
$$$FRD = 000001 174-6992 #174-6992 174-6992
$$$FSS = 000002 187-7414 #187-7414 187-7414 188-7433 #188-7433 188-7433
$$$FUL = 000001 183-7356 #183-7356 183-7356
$$$FWR = 000001 174-6994 #174-6994 174-6994
$$$FXC = 000001 174-6996 #174-6996 174-6996
$$$GLB = ****** 70-3071 70-3071 70-3071 70-3071 70-3076 70-3076 70-3076 70-3076 70-3076
70-3076 70-3076 70-3076 71-3139 71-3139 71-3139 71-3139 71-3139 71-3139
71-3139 71-3139 72-3187 72-3187 72-3187 72-3187 72-3187 72-3187 72-3187
72-3187 72-3190 72-3190 72-3190 72-3190 72-3190 72-3190 72-3190 72-3190
72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 73-3237
73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 74-3297 74-3297
74-3297 74-3297 74-3297 74-3297 74-3297 74-3297 75-3350 75-3350 75-3350
75-3350 75-3350 75-3350 75-3350 75-3350 91-3955 91-3955 91-3955 91-3955
91-3955 222-8648 222-8648 222-8648 222-8648 222-8648 222-8648 222-8648 222-8648
258-10042 258-10042 258-10042 258-10042 258-10042 258-10042 258-10042 258-10042 258-10051
258-10051 258-10051 258-10051 258-10051 258-10051 258-10051 258-10051 258-10060 258-10060
258-10060 258-10060 258-10060 258-10060 258-10060 258-10060 258-10065 258-10065 258-10065
258-10065 258-10065 258-10065 258-10065 258-10065
$$$HAR = 000001 191-7504 #191-7504 191-7504
$$$HLF = 000001 183-7358 #183-7358 183-7358
$$$HLT = 000001 174-6998 #174-6998 174-6998
$$$INC = 000006 175-7055 #175-7055 175-7055 176-7076 #176-7076 176-7076 177-7091 #177-7091 177-7091
178-7159 #178-7159 178-7159 188-7435 #188-7435 188-7435 191-7506 #191-7506 191-7506
$$$INI = 000002 174-7004 #174-7004 174-7004 182-7329 #182-7329 182-7329
$$$INT = 000001 183-7352 #183-7352 183-7352
$$$IO = 000001 182-7331 #182-7331 182-7331
$$$JAN = 000001 180-7191 #180-7191 180-7191
$$$JMP = 000001 174-7006 #174-7006 174-7006
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 33
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
$$$JUL = 000001 180-7203 #180-7203 180-7203
$$$JUN = 000001 180-7201 #180-7201 180-7201
$$$KL = 000001 178-7141 #178-7141 178-7141
$$$KLI = 000002 188-7437 #188-7437 188-7437 191-7508 #191-7508 191-7508
$$$LOG = 000001 186-7391 #186-7391 186-7391
$$$LPT = 000001 186-7393 #186-7393 186-7393
$$$M = 000001 174-7008 #174-7008 174-7008
$$$MAR = 000001 180-7195 #180-7195 180-7195
$$$MAY = 000001 180-7199 #180-7199 180-7199
$$$MCR = 000001 174-7012 #174-7012 174-7012
$$$MEM = 000002 188-7439 #188-7439 188-7439 191-7510 #191-7510 191-7510
$$$MGN = 000001 183-7354 #183-7354 183-7354
$$$MNT = 000002 179-7172 #179-7172 179-7172 185-7378 #185-7378 185-7378
$$$MQ = 000001 178-7120 #178-7120 178-7120
$$$MRK = 000001 174-7010 #174-7010 174-7010
$$$NOT = 000001 188-7441 #188-7441 188-7441
$$$NOV = 000001 180-7211 #180-7211 180-7211
$$$NRM = 000001 183-7342 #183-7342 183-7342
$$$NUL = 000001 174-6978 #174-6978 174-6978
$$$NXT = 000004 175-7057 #175-7057 175-7057 176-7078 #176-7078 176-7078 177-7093 #177-7093 177-7093
178-7161 #178-7161 178-7161
$$$OCT = 000001 180-7209 #180-7209 180-7209
$$$OFS = 000002 188-7443 #188-7443 188-7443 191-7512 #191-7512 191-7512
$$$OPR = 000002 179-7174 #179-7174 179-7174 185-7380 #185-7380 185-7380
$$$OST = 000014 #70-3071 70-3071 70-3071 #70-3071 70-3071 70-3071 #70-3071 70-3071 70-3071
#70-3071 #70-3076 70-3076 70-3076 #70-3076 70-3076 70-3076 #70-3076 70-3076
70-3076 #70-3076 70-3076 70-3076 #70-3076 70-3076 70-3076 #70-3076 70-3076
70-3076 #70-3076 70-3076 #71-3139 71-3139 71-3139 #71-3139 71-3139 71-3139
#71-3139 71-3139 71-3139 #71-3139 71-3139 71-3139 #71-3139 71-3139 71-3139
#71-3139 71-3139 71-3139 #71-3139 71-3139 #72-3187 72-3187 72-3187 #72-3187
72-3187 72-3187 #72-3187 72-3187 72-3187 #72-3187 72-3187 72-3187 #72-3187
72-3187 72-3187 #72-3187 72-3187 72-3187 #72-3187 72-3187 #72-3190 72-3190
72-3190 #72-3190 72-3190 72-3190 #72-3190 72-3190 72-3190 #72-3190 72-3190
72-3190 #72-3190 72-3190 72-3190 #72-3190 72-3190 72-3190 #72-3190 72-3190
#72-3193 72-3193 72-3193 #72-3193 72-3193 72-3193 #72-3193 72-3193 72-3193
#72-3193 72-3193 72-3193 #72-3193 72-3193 72-3193 #72-3193 72-3193 72-3193
#72-3193 72-3193 #73-3237 73-3237 73-3237 #73-3237 73-3237 73-3237 #73-3237
73-3237 73-3237 #73-3237 73-3237 73-3237 #73-3237 73-3237 73-3237 #73-3237
73-3237 73-3237 #73-3237 73-3237 #74-3297 74-3297 74-3297 #74-3297 74-3297
74-3297 #74-3297 74-3297 74-3297 #74-3297 74-3297 74-3297 #74-3297 74-3297
74-3297 #74-3297 74-3297 74-3297 #74-3297 74-3297 #75-3350 75-3350 75-3350
#75-3350 75-3350 75-3350 #75-3350 75-3350 75-3350 #75-3350 75-3350 75-3350
#75-3350 75-3350 75-3350 #75-3350 75-3350 75-3350 #75-3350 75-3350 #91-3955
91-3955 91-3955 #91-3955 91-3955 91-3955 #91-3955 91-3955 91-3955 #91-3955
91-3955 91-3955 #91-3955 #222-8648 222-8648 222-8648 #222-8648 222-8648 222-8648
#222-8648 222-8648 222-8648 #222-8648 222-8648 222-8648 #222-8648 222-8648 222-8648
#222-8648 222-8648 222-8648 #222-8648 222-8648 #258-10042 258-10042 258-10042 #258-10042
258-10042 258-10042 #258-10042 258-10042 258-10042 #258-10042 258-10042 258-10042 #258-10042
258-10042 258-10042 #258-10042 258-10042 258-10042 #258-10042 258-10042 #258-10051 258-10051
258-10051 #258-10051 258-10051 258-10051 #258-10051 258-10051 258-10051 #258-10051 258-10051
258-10051 #258-10051 258-10051 258-10051 #258-10051 258-10051 258-10051 #258-10051 258-10051
#258-10060 258-10060 258-10060 #258-10060 258-10060 258-10060 #258-10060 258-10060 258-10060
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 34
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
#258-10060 258-10060 258-10060 #258-10060 258-10060 258-10060 #258-10060 258-10060 258-10060
#258-10060 258-10060 #258-10065 258-10065 258-10065 #258-10065 258-10065 258-10065 #258-10065
258-10065 258-10065 #258-10065 258-10065 258-10065 #258-10065 258-10065 258-10065 #258-10065
258-10065 258-10065 #258-10065 258-10065
$$$OUT = 000002 188-7445 #188-7445 188-7445 191-7514 #191-7514 191-7514
$$$PAG = 000001 182-7333 #182-7333 182-7333
$$$PC = 000001 178-7122 #178-7122 178-7122
$$$PI = 000002 178-7143 #178-7143 178-7143 182-7335 #182-7335 182-7335
$$$PRG = 000002 179-7176 #179-7176 179-7176 185-7382 #185-7382 185-7382
$$$PRV = 000004 175-7059 #175-7059 175-7059 176-7080 #176-7080 176-7080 177-7095 #177-7095 177-7095
178-7163 #178-7163 178-7163
$$$PST = 000002 188-7447 #188-7447 188-7447 191-7516 #191-7516 191-7516
$$$QTR = 000001 183-7360 #183-7360 183-7360
$$$QUT = 000001 174-7040 #174-7040 174-7040
$$$R = 000001 174-7014 #174-7014 174-7014
$$$REG = 000001 178-7145 #178-7145 178-7145
$$$REM = 000001 179-7181 #179-7181 179-7181
$$$RLD = 000002 188-7449 #188-7449 188-7449 191-7518 #191-7518 191-7518
$$$RPT = 000003 174-7016 #174-7016 174-7016 188-7451 #188-7451 188-7451 191-7520 #191-7520 191-7520
$$$RST = 000001 174-7018 #174-7018 174-7018
$$$RTY = 000002 188-7453 #188-7453 188-7453 191-7522 #191-7522 191-7522
$$$RUN = 000001 174-7020 #174-7020 174-7020
$$$SBR = 000001 178-7153 #178-7153 178-7153
$$$SCR = 000001 178-7155 #178-7155 178-7155
$$$SEP = 000001 180-7207 #180-7207 180-7207
$$$SET = 000001 174-7022 #174-7022 174-7022
$$$SHO = 000001 174-7024 #174-7024 174-7024
$$$SHU = 000001 174-7026 #174-7026 174-7026
$$$SLO = 000001 183-7362 #183-7362 183-7362
$$$SNP = 000001 174-7029 #174-7029 174-7029
$$$STR = 000001 174-7032 #174-7032 174-7032
$$$SWP = 000001 174-7034 #174-7034 174-7034
$$$TAK = 000001 174-7036 #174-7036 174-7036
$$$TEN = 000004 176-7072 #176-7072 176-7072 178-7147 #178-7147 178-7147 184-7371 #184-7371 184-7371
190-7483 #190-7483 190-7483
$$$THS = 000004 175-7061 #175-7061 175-7061 176-7082 #176-7082 176-7082 177-7097 #177-7097 177-7097
178-7165 #178-7165 178-7165
$$$TRK = 000002 188-7456 #188-7456 188-7456 191-7525 #191-7525 191-7525
$$$TTY = 000001 186-7395 #186-7395 186-7395
$$$T1 = 000006 #70-3071 70-3071 70-3071 #70-3071 70-3071 70-3071 #70-3071 70-3071 70-3071
#80-3558 80-3558 #85-3767 85-3767 #160-6565 160-6565
$$$UCD = 000001 190-7485 #190-7485 190-7485
$$$UNM = 000001 174-7038 #174-7038 174-7038
$$$USR = 000002 179-7183 #179-7183 179-7183 185-7384 #185-7384 185-7384
$$$VER = 000001 191-7528 #191-7528 191-7528
$$$VMA = 000001 178-7149 #178-7149 178-7149
$$$VMH = 000001 178-7151 #178-7151 178-7151
$$$WHA = 000001 174-7042 #174-7042 174-7042
$$$XCT = 000001 174-7044 #174-7044 174-7044
$$$ZER = 000001 174-7046 #174-7046 174-7046
.ABRTC = ****** GX 174-6980
.APRWD 000000 RG #35-1473 35-1565
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 35
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.ATCID 000460 RG 255-9931 #258-10059
.ATLMD = 000033 #21-837
.BRCLK = 005000 #87-3821
.BRMBC 003334 RG #88-3850
.BUFSZ = 001000 G #69-2935 69-2954 69-2991 80-3558 85-3767 85-3774
.BURST 003340 RG #88-3852 115-4860 115-4860
.CCMDN 000002 RG #35-1475 61-2594 *156-6412 *158-6483 *158-6486 *163-6639 166-6751
.CDIBC = 000412 R #222-8651
.CDIBP = 000410 R #222-8650
.CDINP 000374 RG 221-8580 #222-8647 222-8650 222-8651
.CDOBC = 000432 RG *221-8576 252-9842 *253-9878 255-9940 *256-9962 #258-10045
.CDOBP = 000430 RG *221-8575 255-9939 *256-9963 #258-10044
.CDOFC = 000434 RG #258-10046
.CDOUT 000414 RG 255-9933 #258-10041 258-10044 258-10045 258-10046
.CECLK = 004000 #87-3821
.CESCK 000000 RG #47-2084 97-4139 97-4139 100-4271 100-4271 147-6035 147-6035 159-6518 159-6518
.CHTAB 001450 RG #40-1761 48-2132 48-2139 49-2169 51-2234 52-2271 53-2300 59-2537 169-6838
221-8594 236-9227
.CIBFL = 000214 G #38-1681 222-8648
.CIBFR 000330 RG #38-1679 38-1681 221-8557 221-8571 221-8575 221-8584 222-8648
.CISTS 000004 RG #35-1477 221-8565 221-8572 221-8576 221-8582 221-8585 221-8589 222-8648
.CKARG 000070 RG #48-2130 226-8793 226-8793 226-8800 226-8800 228-8898 228-8898 234-9140 234-9140
.CKCOL 000130 RG #49-2167
.CKCTC 000166 RG #50-2202 165-6707 165-6707
.CKEOC 000214 RG #51-2232 156-6413 166-6748 166-6748 172-6915 172-6915
.CKEOS 000256 RG #52-2269 227-8823 227-8823
.CKOBJ 000300 RG #53-2298
.CKRNP 000316 RG #54-2328
.CKRUN 000326 RG #54-2333
.CKSYM 000374 RG 48-2131 48-2131 51-2239 51-2239 53-2299 53-2299 #55-2377 55-2380 165-6708
165-6708 226-8789 226-8789
.CLDFB 003370 RG #89-3887 122-5092 122-5092 128-5291 128-5291 141-5811 141-5811
.CLDFR 003374 RG #89-3889
.CLDFW 003404 RG 89-3888 89-3888 #89-3894 124-5175 124-5175 126-5224 126-5224 134-5559 134-5559
155-6366 155-6366
.CLKWD 000010 RG #35-1479 124-5164 *129-5352 130-5365 145-5968
.CLOSE 002114 RG 74-3290 74-3290 #75-3329 77-3445 77-3445 80-3572 80-3572 160-6557 160-6557
160-6564 160-6564
.CLRCM = ****** GX 174-6982
.CLRFF 003420 RG #90-3923 114-4824 114-4824 117-4948 117-4948 152-6184 152-6184
.CLRMR = 006000 #87-3821
.CLRUN = 010000 #87-3821
.CMDTB 004310 RG 158-6482 #174-6977
.CMNDL = 000430 G #38-1689 222-8604
.COBFL = 000204 G #38-1685 256-9964
.COBFR 000544 RG 35-1599 #38-1683 256-9963 256-9965 258-10042 258-10051
.COMEF = ****** GX *141-5823
.COMMA = 000054 #21-835
.COMND 000760 RG #38-1687 38-1689 163-6665
.CONBT = 012000 #87-3821
.CONTC = ****** GX 174-6984
.COSTS 000012 RG #35-1481 255-9935 258-10042
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 36
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.CRAMA 000016 RG #35-1483 *135-5600
.CRAMR 000020 RG #35-1485 134-5546 134-5565
.CRAMW 000042 RG #35-1489
.CSHRG = 164000 #87-3821
.DBGSW 000064 RG #35-1494 68-2866 160-6547
.DELET 002100 RG #75-3325
.DEPAR = ****** GX 176-7068
.DFBLK 000304 RG #37-1658 106-4513 108-4610 111-4712
.DFRB 000312 RG #37-1661 89-3891 106-4476 211-8198
.DFRED = ****** GX 174-6992
.DFWB 000304 RG #37-1659 89-3896 107-4550 *122-5095 *122-5103 *124-5177 126-5225 155-6351 211-8205
.DFWRT = ****** GX 174-6994
.DFXCT = ****** GX 174-6996
.DIAG1 = 000000 #10-352
.DIAG2 = 000002 #10-353 93-4000 93-4021
.DIAG3 = 000006 #10-355 93-4008 93-4029
.DISCC = ****** GX 174-6988
.DOCMD 007714 RG #158-6474 163-6669 163-6669 172-6917 172-6917
.DPBFR 000066 RG #35-1497 102-4328
.DPBFX 000074 RG #35-1499
.DPDPB 000312 RG 101-4289 101-4290 #102-4327
.DPETB 004612 RG #175-7052
.DPKLM 003762 RG #99-4229
.DPOEL = ****** GX 176-7070
.DPOKL = ****** GX 176-7072
.DPOSC = ****** GX 174-6986
.DPOSD = ****** GX 175-7053 176-7074
.DPOSI = ****** GX 175-7055 176-7076
.DPOSN = ****** GX 175-7057 176-7078
.DPOSP = ****** GX 175-7059 176-7080
.DPOSZ = ****** GX 175-7061 176-7082
.DPOTB 004652 RG #176-7067
.DPTRK 012440 RG 99-4241 99-4241 #216-8375
.DREG 000320 RG #37-1664 *94-4038 94-4045 95-4093 106-4513 108-4610 111-4712
.DRLTC = 015000 #87-3821
.DSACF = 066000 #87-3821
.DSIOJ = 065000 #87-3821
.DTAB 004200 R 99-4231 #101-4288
.DTCID 000474 RG 255-9937 #258-10064
.DTDI1 000320 RG #37-1665
.DTDI2 000322 RG #37-1667
.DTDI3 000326 RG #37-1671
.DTDW1 003530 RG 47-2088 47-2088 #93-4016 104-4402 104-4402 104-4410 104-4410 114-4819 114-4819
115-4832 115-4832 115-4861 115-4861 117-4950 117-4950 152-6191 152-6191
.DTDW2 003536 RG #93-4020
.DTDW3 003556 RG #93-4028
.DTSTA 003546 RG 56-2407 56-2407 #93-4024
.DTSTS 000324 RG #37-1669
.DTSTW = 000004 #10-354 93-4004 93-4025
.DTTRK 012316 RG 94-4049 #214-8287
.DWDW1 003454 RG #93-3995
.DWDW2 003462 RG #93-3999 142-5872 142-5872
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 37
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.DWDW3 003502 RG #93-4007 142-5874
.DWSTA 003472 RG #93-4003
.EBCLK 003634 RG #97-4137 104-4401 104-4401
.EBPCK 000410 RG #56-2406 159-6519
.EDELA 000102 RG #35-1509 68-2862
.EDKLA 000104 RG #35-1511 102-4328 102-4346
.EDKLX 000112 RG #35-1513
.EIOJA = 067000 #87-3821
.ELDDW 000120 RG #35-1515
.ELEDW 000122 RG #35-1517
.ELNCK 013130 RG #223-8677 224-8723 224-8723
.ENTER 001664 RG #72-3168
.ETAB 004170 R 99-4215 #101-4282
.EXAD = ****** GX 178-7104
.EXADX = ****** GX 178-7106
.EXAMC = ****** GX 174-6990
.EXAMD = ****** GX 177-7089 178-7157
.EXAMF = ****** GX 178-7139
.EXAMI = ****** GX 177-7091 178-7159
.EXAMK = ****** GX 178-7141
.EXAMN = ****** GX 177-7093 178-7161
.EXAMP = ****** GX 177-7095 178-7163
.EXAMZ = ****** GX 177-7097 178-7165
.EXARR = ****** GX 178-7108
.EXARX = ****** GX 178-7110
.EXBFR 000124 RG #35-1519 102-4346
.EXBRR = ****** GX 178-7112
.EXBRX = ****** GX 178-7114
.EXCRA = ****** GX 178-7127
.EXCRL = ****** GX 178-7129
.EXCTC = ****** GX 174-7044
.EXCTF 004150 RG #103-4373
.EXDPB 000324 RG 101-4283 101-4284 #102-4345
.EXDPM 004020 RG 99-4216 99-4216 99-4232 99-4232 #100-4251
.EXDRA = ****** GX 178-7131
.EXDTE = ****** GX 178-7133
.EXEBS = ****** GX 178-7116
.EXECT 004226 RG #104-4396
.EXETB 004734 RG #177-7088
.EXFER = ****** GX 178-7137
.EXFMR = ****** GX 178-7118
.EXITP 010074 RG #160-6545 222-8635 256-9968
.EXKLM 003730 RG #99-4213
.EXMEL = ****** GX 178-7135
.EXMKL = ****** GX 178-7147
.EXMPI = ****** GX 178-7143
.EXMQR = ****** GX 178-7120
.EXMTB 004774 RG #178-7103 178-7124
.EXREG = ****** GX 178-7145
.EXSBR = ****** GX 178-7153
.EXSCR = ****** GX 178-7155
.EXTND 002004 RG #74-3273 85-3778 85-3778
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 38
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.EXTRK 012426 RG 99-4225 99-4225 #216-8370
.EXVAB = ****** GX 178-7125
.EXVMA = ****** GX 178-7149
.EXVMH = ****** GX 178-7151
.EXVPC = ****** GX 178-7122
.FEMOD = ****** GX 54-2342 165-6738 166-6758
.FISTS 001630 RG #69-2932 70-3055 70-3076 71-3122 71-3125 71-3139 72-3171 72-3175 72-3187
72-3190 73-3237 74-3276 74-3297 75-3336 75-3350 80-3558 80-3560 80-3563
85-3767 85-3769 85-3776
.FNDIR 001452 RG #70-3045 71-3116 71-3116
.FREAD 004362 RG 97-4146 97-4146 #106-4468 128-5298 128-5298 129-5349 129-5349 132-5471 132-5471
134-5552 134-5552 136-5638 136-5638 137-5682 137-5682 138-5711 138-5711 139-5755
139-5755
.FRTRK 012156 RG 106-4488 106-4488 #211-8195
.FWRIT 004444 RG #107-4548 116-4912 116-4912 120-5059 120-5059 122-5098 122-5098 122-5106 122-5106
124-5179 124-5179 124-5184 124-5184 126-5233 126-5233 126-5240 126-5240 128-5293
128-5293 134-5562 134-5562 134-5564 134-5564 141-5815 141-5815 141-5820 141-5820
154-6280 154-6280 155-6357 155-6357 155-6365 155-6365 155-6368 155-6368 155-6370
155-6370
.FWTRK 012176 RG 108-4583 108-4583 #211-8202
.FXCT 004566 RG 88-3857 90-3931 90-3931 97-4144 97-4144 #110-4640 113-4767 113-4767 119-5001
119-5001 120-5061 127-5279 127-5279 128-5305 128-5305 128-5310 128-5310 134-5544
134-5544 147-6039 147-6039 150-6133 150-6133 153-6237 153-6237
.FXTRK 012216 RG 111-4685 111-4685 #211-8209
.GFNR = 102000 #87-3821
.GTCMD 012574 RG 163-6666 163-6666 #220-8509
.GTELN 013204 RG #224-8717 228-8900 228-8900
.GTEXP 013672 RG 226-8797 226-8797 227-8822 227-8822 #229-8973 235-9190 235-9190
.GTFCT 014100 RG 231-9034 231-9034 232-9069 232-9069 #233-9103 235-9171 235-9171 235-9176 235-9176
235-9182 235-9182
.GTKLA 013234 RG #225-8750
.GTKLN 013266 RG 172-6911 172-6911 #226-8787
.GTLIN 012630 RG 220-8513 220-8513 #221-8555
.GTNBR 014374 RG 233-9112 233-9112 #236-9218
.GTNUM 013266 RG 224-8722 224-8722 225-8751 225-8751 #226-8786
.GTOPC 013500 RG 226-8795 226-8795 #228-8876
.GTTRM 013766 RG 229-8974 229-8974 230-9001 230-9001 #231-9033
.HALTC = ****** GX 174-6998
.INATT 002716 RG #69-2966 80-3556 80-3569 160-6554
.INBBC 001660 RG #69-2949 *78-3487 78-3488 *78-3494 79-3521 *79-3527 *80-3563
.INBUF 001664 RG #69-2953 80-3558 80-3562
.INCHC 000132 RG #35-1521 *221-8558 *222-8603 222-8604 222-8610 *236-9219 *236-9229 237-9251
.INDFG 001626 RG #69-2928 *77-3442 *80-3571 160-6552 *160-6556 221-8559
.INFN 001634 RG #69-2939
.INFNB 002664 RG #69-2956 77-3443
.INICL = 070000 #87-3821
.INICP = ****** GX 35-1603
.INITC = ****** GX 174-7004
.INPOS 001662 RG #69-2951 78-3484 *78-3486 78-3492 *78-3493 79-3525 *79-3526 *80-3562
.INVBN 001654 RG #69-2947 *80-3554 *80-3555 80-3556 80-3558 80-3558
.IRADX 000134 RG #35-1523 *66-2778 172-6905 *172-6906 *172-6912 234-9145 *235-9161 *235-9165 *235-9169
*235-9172 236-9223
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 39
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.IRLTC = 014000 #87-3821
.JUMPC = ****** GX 174-7006
.KLCON 004736 RG 104-4423 104-4423 #113-4756
.KLDFR 000336 RG 60-2560 *106-4469 106-4473 #106-4512 211-8197
.KLDFW 000350 RG 60-2564 *107-4549 108-4569 108-4573 #108-4609 211-8204
.KLDFX 000362 RG 60-2568 *110-4641 110-4645 110-4648 #111-4711 211-8211
.KLE = ****** GX 221-8564 221-8564
.KLEDF 000144 RG #35-1527 *163-6646 221-8562
.KLEPT 000146 RG #35-1529
.KLERQ = ****** GX 159-6514 *160-6566 163-6644
.KLEVL 000150 RG #35-1531
.KLFLG = ****** GX *47-2097 *47-2099 54-2338 *101-4297 *101-4301 103-4374 104-4398 *108-4578 110-4654
*110-4656 110-4660 *110-4662 *110-4669 *110-4675 113-4758 116-4913 117-4941 119-5014
*127-5280 *128-5311 148-6066 148-6068 163-6641
.KLGO 004744 RG #113-4759 116-4914
.KLHLT 005034 RG #114-4817 116-4909 116-4909 117-4943 120-5057 120-5057
.KLINC 000136 RG #35-1525
.KLMTB 005270 RG #179-7171
.KLMT1 005314 RG #179-7180
.KLRST 005274 RG #119-4991 146-6006 146-6006
.KLSNP 000151 RG #35-1533
.KLST 005164 RG #116-4907
.KLSTP 005212 RG #117-4940 148-6069 148-6069
.KLXCT 005426 RG 103-4382 103-4382 104-4399 104-4399 #120-5056
.LCRDL = 052000 #87-3821
.LCRDR = 051000 #87-3821
.LCRM1 = 057000 #87-3821
.LCRM2 = 056000 #87-3821
.LCRM3 = 055000 #87-3821
.LCRM4 = 054000 #87-3821
.LCRM5 = 053000 #87-3821
.LDAR = 077000 #87-3821
.LDBRC 005452 RG #122-5088
.LDBRG 005456 RG 88-3855 88-3855 #122-5090
.LDBRL = 043000 #87-3821
.LDBRR = 042000 #87-3821
.LDCK1 = 046000 #87-3821
.LDCK2 = 047000 #87-3821
.LDCLK 005554 RG #124-5162 141-5808 141-5808 143-5927 143-5927 145-5971 145-5971
.LDCRA 005652 RG #126-5219 134-5542 134-5542 152-6187 152-6187 155-6349 155-6349
.LDDIS = 045000 #87-3821
.LDOBC = 000454 RG *221-8585 *255-9940 255-9952 #258-10054
.LDOBP = 000452 RG *221-8584 *255-9939 255-9951 #258-10053
.LDOFC = 000456 R #258-10055
.LDOUT 000436 RG 255-9944 #258-10050 258-10053 258-10054 258-10055
.LDPAR 005572 RG #124-5168 141-5809 141-5809 145-5975 145-5975
.LDRJD = 064000 #87-3821
.LDRJV = 063000 #87-3821
.LDRM1 = 060000 #87-3821
.LDRM2 = 061000 #87-3821
.LDRM3 = 062000 #87-3821
.LDSEL = 044000 #87-3821
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 40
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.LDSTS 000160 RG #35-1544 255-9946 258-10051
.LDZFL 000166 RG #35-1548 *212-8222 *214-8288 *243-9468 *245-9557 247-9646 *247-9651 250-9759 *250-9763
.LGLWD 000164 RG #35-1546 *158-6485 159-6497 *159-6508 *163-6667
.LOKUP 001574 RG #71-3114
.MARKC = ****** GX 174-7010
.MEMFL 000170 RG #35-1550
.MEMRS = 076000 #87-3821
.MISC = ****** GX *160-6567
.MONTB 005332 RG #180-7190
.MRCLR 005766 RG #127-5276 141-5810 141-5810
.MTDPB 000266 RG 90-3926 #91-3954
.NOERR = ****** GX *47-2095 *149-6101
.NOHLT = ****** GX *90-3929 *113-4777 *119-5019 *146-6007
.NOTSW 000172 RG #35-1552
.NSETB 005444 RG 58-2512 #181-7220
.NULLC 007702 RG #156-6411 174-6978
.OPEN 001736 RG #73-3220
.ORADX 000174 RG #35-1554 *66-2779 243-9472 243-9476 244-9511 244-9515 245-9560 245-9564 246-9599
246-9603 250-9752
.OTATT 004016 RG #69-3003 *74-3278 *74-3279 *74-3283 *74-3284 74-3285 81-3616 *81-3618 *84-3724
*84-3725 *85-3771 *85-3772 160-6562
.OTBBC 002760 RG #69-2986 *82-3661 82-3662 *82-3667 83-3693 *83-3698 84-3726 84-3728 84-3734
*85-3774
.OTBUF 002764 RG #69-2990 74-3284 84-3725 85-3767 85-3773
.OTFN 002734 RG #69-2976
.OTFNB 003764 RG #69-2993 72-3187 72-3190
.OTPOS 002762 RG #69-2988 74-3283 82-3658 *82-3660 82-3665 *82-3666 83-3696 *83-3697 84-3724
84-3729 *85-3773
.OTVBN 002754 RG #69-2984 *85-3765 *85-3766 85-3767 85-3767 85-3771 85-3772
.OUTLG 000154 RG #35-1537 *74-3288 160-6558 *160-6560 255-9948
.OUTLP 000155 RG #35-1539 255-9942
.OUTTY 000156 RG #35-1541 255-9929
.PARER 000432 RG #58-2497 66-2792 66-2792
.PASS 000152 RG #35-1535 242-9399
.PCAB1 = 150000 #87-3821
.PCAB2 = 151000 #87-3821
.PCAB3 = 152000 #87-3821
.PCAB4 = 153000 #87-3821
.PEWRD 000176 RG #35-1556 139-5749
.PITAB 000200 RG #35-1558
.PSCWD 000204 RG #35-1560 124-5170 *129-5353 130-5371 145-5967
.PTDIE 001046 RG #64-2690 68-2858
.PTOAT 001352 RG 35-1583 #68-2853
.PTTRP 001124 RG 36-1651 #66-2762
.QUITC = ****** GX 174-7040
.RCRM1 = 147000 #87-3821
.RCRM2 = 146000 #87-3821
.RCRM3 = 145000 #87-3821
.RCRM4 = 144000 #87-3821
.RCSPF = 141000 #87-3821
.RDCPP 006134 RG #129-5340 145-5966 145-5966
.RDCRA = ****** GX 135-5599 135-5599
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 41
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.RDCRD 006270 RG #132-5467 134-5557 134-5557
.RDCRM 006326 RG #134-5538
.RDCRO 006476 R #135-5598
.RDCRR 006360 RG #134-5545 135-5601 135-5601
.RDFMA 006516 RG #136-5634 137-5678 137-5678
.RDFMO 006600 RG #137-5675
.RDFMP 006634 RG #138-5708
.RDIPE 006670 RG 62-2627 62-2627 #139-5745
.RDJ14 = 134000 #87-3821
.RDJ71 = 135000 #87-3821
.RDMAB = 133000 #87-3821
.RDXSV 000206 RG #35-1562 66-2778 66-2779 *172-6905 172-6912
.READ 002440 RG 78-3490 78-3490 79-3523 79-3523 #80-3553
.READB 002406 RG 77-3436 77-3436 #79-3520
.READR 002224 RG #77-3428 221-8573 221-8573
.READW 002330 RG 77-3430 77-3430 #78-3483
.RECNT 004034 RG #69-3011 *81-3609 81-3615 *81-3628
.RECPT 004036 RG #69-3013 81-3607 *81-3608 *81-3627
.RECRD 004040 RG 69-3014 #69-3015 81-3614 81-3627
.REGRW 000300 RG *93-3996 *93-4000 *93-4004 *93-4008 *93-4010 93-4011 93-4012 *93-4017 *93-4021
*93-4025 *93-4029 *94-4036 94-4042 #95-4089 214-8292 214-8296 214-8302 214-8306
.REGSV 010302 RG 66-2770 68-2856 124-5163 124-5169 129-5341 139-5746 #162-6624 216-8371 216-8376
.RELWD 000210 RG #35-1564 234-9127
.REMOV 001564 RG #71-3111
.REPTC 011022 RG #172-6904 174-7016
.RESET 006752 RG #141-5801 143-5922 143-5922 145-5969 145-5969
.RESTB 006106 RG #182-7320
.RESTC = ****** GX 174-7018
.RESTD 007066 RG 100-4274 100-4274 141-5803 141-5803 #142-5870
.RESTI 007106 RG #143-5919
.RESTP 007132 RG 126-5222 126-5222 #145-5963
.RPTCT 000212 RG #35-1566 163-6668
.RPTPT 000220 RG #35-1568 *158-6480
.RSALL = ****** GX 182-7321
.RSAPR = ****** GX 182-7323
.RSDTE = ****** GX 182-7325
.RSERR = ****** GX 182-7327
.RSPAG = ****** GX 182-7333
.RSTIN = ****** GX 182-7329
.RSTIO = ****** GX 182-7331
.RSTKL 007204 RG 66-2776 66-2776 103-4384 #146-6003
.RSTPI = ****** GX 182-7335
.RUNCM = ****** GX 174-7008 174-7012 174-7014 174-7020
.R50TB 001410 RG #39-1693 257-10001
.SCACB = ****** GX 188-7421
.SCCEC = ****** GX 183-7344
.SCCED = ****** GX 183-7346
.SCCEE = ****** GX 183-7348
.SCCLK = ****** GX 188-7425
.SCCLN = ****** GX 183-7342
.SCCOM = ****** GX 185-7378
.SCCON = ****** GX 188-7427
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 42
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.SCCOO = ****** GX 185-7380
.SCCOP = ****** GX 185-7382
.SCCOT 006312 RG #185-7377
.SCCOU = ****** GX 185-7384
.SCCRF = ****** GX 183-7356
.SCCRH = ****** GX 183-7358
.SCCRQ = ****** GX 183-7360
.SCCRS = ****** GX 183-7362
.SCCSE = ****** GX 183-7350
.SCCSI = ****** GX 183-7352
.SCCSM = ****** GX 183-7354
.SCCTB 006170 RG #183-7341
.SCDAT = ****** GX 188-7429
.SCFSS = ****** GX 188-7433
.SCINC = ****** GX 188-7435
.SCKLN = ****** GX 188-7437
.SCMEL = ****** GX 184-7369
.SCMEM = ****** GX 188-7439
.SCMKL = ****** GX 184-7371
.SCMTB 006274 RG #184-7368
.SCNOT = ****** GX 188-7441
.SCOFS = ****** GX 188-7443
.SCOTL = ****** GX 186-7391
.SCOTP = ****** GX 186-7393
.SCOTT 006344 RG #186-7390
.SCOTY = ****** GX 186-7395
.SCOUT = ****** GX 188-7445
.SCPAL = ****** GX 187-7402
.SCPAR = ****** GX 187-7404
.SCPCR = ****** GX 187-7406
.SCPDR = ****** GX 187-7408
.SCPEN = ****** GX 187-7410
.SCPFM = ****** GX 187-7412
.SCPFS = ****** GX 187-7414
.SCPST = ****** GX 188-7447
.SCPTB 006370 RG #187-7401
.SCRLD = ****** GX 188-7449
.SCRPT = ****** GX 188-7451
.SCRTY = ****** GX 188-7453
.SCTAK = ****** GX 188-7423
.SCTRK = ****** GX 188-7456
.SEAMB 000520 RG #59-2532 189-7464
.SECES 000756 RG #62-2625 189-7466
.SECLK = 003000 #87-3821
.SEFRF 000606 RG #60-2559 189-7468
.SEFWF 000614 RG #60-2563 189-7469
.SEFXF 000622 RG #60-2567 189-7470
.SEILC 000544 RG #59-2542 189-7472
.SEILS 000544 RG #59-2543 189-7473
.SEIPC 000544 RG #59-2544 189-7474
.SENSK 000520 RG #59-2533 189-7476
.SETCM = ****** GX 174-7022
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 43
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.SETFN 002166 RG 71-3117 71-3117 #76-3387
.SETMR = 007000 #87-3821
.SETRN = 011000 #87-3821
.SETTB 006444 RG #188-7420
.SFREC = ****** GX 188-7431
.SHIFT 011114 RG 122-5101 122-5101 #194-7592
.SHUTC = ****** GX 174-7026
.SNAP = ****** GX 174-7029
.SPACE = 000040 #21-836 39-1705 52-2273 55-2379 59-2547 222-8621 226-8798 241-9352 248-9663
248-9664 248-9665 248-9666 248-9668 248-9669 248-9671 248-9672 248-9673 248-9675
248-9676 248-9681 248-9685
.SPETB 006622 RG 58-2499 #189-7463
.SSCAN 010760 RG 165-6718 165-6718 #169-6824 169-6830 228-8885 228-8885
.SSCLK = 002000 #87-3821
.SSTTB 000264 RG #36-1644 36-1653 64-2694 *68-2858 *68-2873
.START 010340 RG 35-1571 #163-6635
.STCLF 007240 RG 127-5281 127-5281 #147-6036
.STCLK 007232 RG 104-4407 104-4407 113-4770 113-4770 119-5016 119-5016 #147-6033 152-6188 152-6188
.STPCL = 000000 #87-3821
.STPKL 007256 RG 103-4380 103-4380 #148-6065
.STPXC 007302 RG 88-3851 88-3851 104-4429 104-4429 115-4843 115-4843 115-4856 115-4856 122-5089
122-5089 128-5290 128-5290 141-5805 141-5805 145-5965 145-5965 #149-6095 152-6185
152-6185 154-6275 154-6275
.STRCL = 001000 #87-3821
.STRTB 006712 RG #190-7482
.STRTC = ****** GX 174-7032
.STRTT = ****** GX 190-7483
.STRTU = ****** GX 190-7485
.STRTV 000222 RG #35-1570 66-2799 68-2874 166-6770
.STRUN 007332 RG 104-4433 104-4433 113-4764 113-4764 119-4999 119-4999 119-5010 119-5010 #150-6128
.STUCD 007352 RG #152-6180
.SVESP 000224 RG #35-1572 163-6636 166-6769
.SVKLF 000226 RG #35-1574 *47-2096 66-2774 *103-4383 119-4993 119-5002 *119-5022 146-6004 *146-6009
*148-6068 *163-6638
.SWPC = ****** GX 174-7034
.SWPIP 000230 RG #35-1576 47-2100 *66-2763
.SYNXC 007454 RG 97-4157 115-4846 128-5308 128-5308 #153-6233 154-6277 154-6277
.TAKEC = ****** GX 174-7036
.TCRLF 015536 RG 58-2525 64-2699 64-2699 64-2704 64-2704 66-2790 66-2790 67-2809 67-2809
68-2859 68-2859 68-2864 68-2864 166-6750 166-6750 212-8235 212-8235 221-8588
221-8588 242-9422 242-9422 251-9799 253-9880 #254-9890
.TFCHR 015470 RG 163-6664 163-6664 220-8519 220-8519 #252-9839
.TPADD 011502 RG #201-7858 205-7996 205-7996 230-8987 236-9236 236-9236
.TPCLR 011356 RG 89-3898 89-3898 #198-7732 205-7978 205-7978 226-8792 226-8792 250-9750 250-9750
.TPCMP 011424 RG 197-7682 197-7682 #199-7784
.TPCOM 011366 RG #198-7739 198-7747 198-7747 235-9177 235-9177
.TPDEC 011534 RG 159-6503 159-6503 #202-7898 209-8119 209-8119
.TPDIV 011144 RG #196-7648 232-9055 250-9753 250-9753
.TPINC 011522 RG 197-7687 197-7687 198-7748 #202-7891 209-8130 209-8130
.TPMUL 011572 RG #205-7970 232-9059 236-9233 236-9233
.TPNEG 011376 RG #198-7746 235-9185 235-9185
.TPSHI 011756 RG 126-5230 126-5230 126-5237 126-5237 132-5473 132-5473 136-5640 136-5640 136-5645
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 44
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
136-5645 138-5714 138-5714 155-6362 155-6362 #207-8048 209-8117 209-8117 209-8128
209-8128 227-8815 227-8815
.TPSHL 012022 RG #208-8099 232-9051
.TPSUB 011546 RG 197-7684 197-7684 #203-7929 230-8991
.TPTST 011460 RG 159-6495 159-6495 159-6504 159-6504 172-6913 172-6913 196-7653 196-7653 #200-7823
205-7972 205-7972 205-7975 205-7975 205-8003 205-8003 208-8105 208-8105 209-8120
209-8120 209-8131 209-8131 226-8802 226-8802 227-8824 227-8824 247-9648 247-9648
249-9728 249-9728
.TPXTN 011404 RG 196-7650 196-7650 196-7652 196-7652 #198-7751 208-8104 208-8104
.TRKWD 000232 RG #35-1579 94-4047 99-4223 99-4239 106-4486 108-4581 111-4683
.TRPEC 000236 RG #35-1584 *66-2769 66-2791
.TRPIP 000240 RG #35-1586 *64-2691 *66-2764 *66-2785 66-2793 *66-2798 *67-2813
.TRPPC 000242 RG #35-1588 *66-2767 *68-2854
.TRPPS 000244 RG #35-1590 *66-2768 *68-2855
.TRPSB 000246 RG #35-1592 *66-2766 66-2772 66-2780 66-2795
.TRPTV 000250 RG #35-1594 66-2782 *66-2786
.TRP4V 000234 RG #35-1582
.TSCAN 010510 RG 158-6484 158-6484 #165-6706
.TYACE 014614 RG #242-9397
.TYAC1 014646 RG #242-9406
.TYCHR 015504 RG 59-2539 59-2539 59-2552 59-2552 59-2555 59-2555 61-2593 61-2593 61-2597
61-2597 241-9359 241-9359 242-9412 242-9412 250-9766 251-9811 251-9811 252-9840
252-9840 #253-9875 254-9893 254-9893 254-9895 254-9895 257-10006 257-10006
.TYCOL 014526 RG #241-9330 242-9413 242-9413
.TYCOM 014536 RG 62-2636 62-2636 #241-9335
.TYELA 014746 RG #243-9467
.TYELN 014752 RG 64-2703 64-2703 68-2863 68-2863 214-8304 214-8304 #243-9469
.TYINI 015722 RG 163-6640 163-6640 #256-9961
.TYKLA 015072 RG 217-8399 217-8399 242-9417 242-9417 #245-9556
.TYKLN 015142 RG 212-8233 212-8233 217-8403 217-8403 242-9421 242-9421 #246-9596
.TYLIN 015432 RG 64-2701 64-2701 67-2808 67-2808 166-6754 166-6754 166-6763 166-6763 214-8310
214-8310 217-8411 217-8411 #251-9797
.TYMIN 014546 RG #241-9340
.TYMSF 015440 RG 163-6648 163-6648 #251-9801
.TYMSG 015446 RG 60-2577 60-2577 61-2591 61-2591 61-2595 61-2595 61-2600 62-2635 62-2635
62-2646 62-2646 68-2861 68-2861 77-3447 77-3447 163-6652 163-6652 166-6752
166-6752 212-8223 212-8223 214-8291 214-8291 214-8294 214-8294 217-8397 217-8397
242-9404 242-9404 251-9798 251-9798 251-9802 251-9802 #251-9805
.TYNCM 015224 RG 244-9523 #247-9640
.TYNUM 015302 RG 247-9653 247-9653 #249-9717 250-9745
.TYOBC 000252 RG #35-1596 *253-9879 *256-9964
.TYOBP 000254 RG #35-1598 253-9876 *253-9877 *256-9965
.TYOUT 015564 RG 221-8578 221-8578 252-9844 253-9883 #255-9928
.TYOU1 015644 RG 221-8587 221-8587 #255-9941
.TYP3D 015016 RG 60-2575 60-2575 212-8228 212-8228 #244-9508
.TYR50 015756 RG 61-2607 61-2607 #257-9993
.TYSLS 014556 RG 212-8231 212-8231 217-8400 217-8400 #241-9345 242-9418 242-9418
.TYSPC 014566 RG 61-2598 61-2598 62-2637 62-2637 166-6762 166-6762 212-8232 212-8232 214-8295
214-8295 217-8401 217-8401 217-8404 217-8404 #241-9350 242-9419 242-9419
.TYUPA 014576 RG 59-2549 59-2549 #241-9355
.T50TB 001440 RG #39-1707 257-9995
.UMRKC = ****** GX 174-7038
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 45
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.VFYFL 000256 RG #35-1600
.WHACB = ****** GX 191-7492
.WHATB 006730 RG #191-7491
.WHATC = ****** GX 174-7024 174-7042
.WHATV = ****** GX 191-7528
.WHCON = ****** GX 191-7498
.WHDAT = ****** GX 191-7500
.WHINC = ****** GX 191-7506
.WHKLN = ****** GX 191-7508
.WHMEM = ****** GX 191-7510
.WHOFS = ****** GX 191-7512
.WHOUT = ****** GX 191-7514
.WHRDW = ****** GX 191-7504
.WHREC = ****** GX 191-7502
.WHRLD = ****** GX 191-7518
.WHRPT = ****** GX 191-7520
.WHRTY = ****** GX 191-7522
.WHTAK = ****** GX 191-7494
.WHTCL = ****** GX 191-7496
.WHTPS = ****** GX 191-7516
.WHTRK = ****** GX 191-7525
.WRAR1 007476 RG #154-6276
.WRCRM 007520 RG #155-6342
.WRITB 003030 RG 81-3624 81-3624 #83-3692 84-3737 84-3737
.WRITE 003160 RG 82-3664 82-3664 83-3695 83-3695 84-3739 84-3739 #85-3764
.WRITR 002616 RG #81-3601 255-9953 255-9953
.WRITW 002754 RG 81-3620 81-3620 #82-3657 84-3733 84-3733
.WRITZ 003060 RG #84-3723 160-6561 160-6561
.WRMBX = 071000 #87-3821
.WRTAR 007472 RG #154-6274
.ZEROC = ****** GX 174-7046
..DTSP = ****** GX 47-2094 47-2094
..SACK = ****** GX 160-6572 160-6572
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 46
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
ALUN$ #68-2920 #70-3071
CALL #4-118 #47-2088 #47-2094 #48-2131 #51-2239 #53-2299 #56-2407 #58-2522 #59-2534 #59-2539
#59-2545 #59-2549 #59-2552 #59-2555 #60-2570 #60-2575 #60-2577 #61-2591 #61-2593 #61-2595
#61-2597 #61-2598 #61-2605 #61-2607 #62-2626 #62-2627 #62-2635 #62-2636 #62-2637 #62-2646
#64-2699 #64-2701 #64-2703 #64-2704 #66-2770 #66-2776 #66-2790 #66-2792 #67-2808 #67-2809
#67-2815 #68-2856 #68-2859 #68-2861 #68-2863 #68-2864 #68-2869 #71-3116 #71-3117 #74-3290
#77-3430 #77-3436 #77-3445 #77-3447 #78-3490 #79-3523 #80-3572 #81-3620 #81-3624 #82-3664
#83-3695 #84-3733 #84-3737 #84-3739 #85-3778 #88-3851 #88-3855 #89-3888 #89-3898 #90-3931
#97-4139 #97-4144 #97-4146 #99-4216 #99-4225 #99-4232 #99-4241 #100-4271 #100-4274 #103-4380
#103-4382 #104-4399 #104-4401 #104-4402 #104-4407 #104-4410 #104-4423 #104-4429 #104-4433 #106-4488
#108-4583 #111-4685 #113-4764 #113-4767 #113-4770 #114-4819 #114-4824 #115-4832 #115-4843 #115-4856
#115-4860 #115-4861 #116-4909 #116-4912 #117-4948 #117-4950 #119-4999 #119-5001 #119-5010 #119-5016
#120-5057 #120-5059 #122-5089 #122-5092 #122-5098 #122-5101 #122-5106 #124-5163 #124-5169 #124-5175
#124-5179 #124-5184 #126-5222 #126-5224 #126-5230 #126-5233 #126-5237 #126-5240 #127-5279 #127-5281
#128-5290 #128-5291 #128-5293 #128-5298 #128-5305 #128-5308 #128-5310 #129-5341 #129-5349 #132-5471
#132-5473 #134-5542 #134-5544 #134-5552 #134-5557 #134-5559 #134-5562 #134-5564 #135-5599 #135-5601
#136-5638 #136-5640 #136-5645 #137-5678 #137-5682 #138-5711 #138-5714 #139-5746 #139-5755 #141-5803
#141-5805 #141-5808 #141-5809 #141-5810 #141-5811 #141-5815 #141-5820 #142-5872 #143-5922 #143-5927
#145-5965 #145-5966 #145-5969 #145-5971 #145-5975 #146-6006 #147-6035 #147-6039 #148-6069 #150-6133
#152-6184 #152-6185 #152-6187 #152-6188 #152-6191 #153-6237 #154-6275 #154-6277 #154-6280 #155-6349
#155-6357 #155-6362 #155-6365 #155-6366 #155-6368 #155-6370 #158-6484 #159-6493 #159-6495 #159-6503
#159-6504 #159-6518 #160-6557 #160-6561 #160-6564 #160-6572 #162-6628 #163-6640 #163-6648 #163-6652
#163-6664 #163-6666 #163-6669 #165-6707 #165-6708 #165-6718 #166-6748 #166-6750 #166-6752 #166-6754
#166-6762 #166-6763 #172-6911 #172-6913 #172-6915 #172-6917 #196-7650 #196-7652 #196-7653 #197-7682
#197-7684 #197-7687 #198-7747 #205-7972 #205-7975 #205-7978 #205-7996 #205-8003 #208-8104 #208-8105
#209-8117 #209-8119 #209-8120 #209-8128 #209-8130 #209-8131 #212-8223 #212-8228 #212-8231 #212-8232
#212-8233 #212-8235 #214-8291 #214-8294 #214-8295 #214-8304 #214-8310 #216-8371 #216-8376 #217-8397
#217-8399 #217-8400 #217-8401 #217-8403 #217-8404 #217-8411 #220-8513 #220-8519 #221-8564 #221-8573
#221-8578 #221-8587 #221-8588 #224-8722 #224-8723 #225-8751 #226-8789 #226-8792 #226-8793 #226-8795
#226-8797 #226-8800 #226-8802 #227-8815 #227-8822 #227-8823 #227-8824 #228-8885 #228-8898 #228-8900
#229-8974 #230-9001 #230-9004 #231-9034 #232-9069 #232-9072 #233-9112 #234-9140 #235-9171 #235-9176
#235-9177 #235-9182 #235-9185 #235-9190 #236-9233 #236-9236 #241-9359 #242-9404 #242-9412 #242-9413
#242-9417 #242-9418 #242-9419 #242-9421 #242-9422 #247-9648 #247-9653 #249-9728 #250-9750 #250-9753
#250-9755 #251-9798 #251-9802 #251-9811 #252-9840 #254-9893 #254-9895 #255-9953 #257-9999 #257-10006
CALLR #4-127 #58-2525 #61-2600 #66-2787 #88-3857 #94-4049 #97-4157 #103-4384 #115-4846 #120-5061
#142-5874 #156-6413 #159-6519 #222-8635 #256-9968
CLEF$S #46-2049 #50-2203
COMND$ #5-181 #174-6978 #174-6980 #174-6982 #174-6984 #174-6986 #174-6988 #174-6990 #174-6992 #174-6994
#174-6996 #174-6998 #174-7004 #174-7006 #174-7008 #174-7010 #174-7012 #174-7014 #174-7016 #174-7018
#174-7020 #174-7022 #174-7024 #174-7026 #174-7029 #174-7032 #174-7034 #174-7036 #174-7038 #174-7040
#174-7042 #174-7044 #174-7046 #175-7053 #175-7055 #175-7057 #175-7059 #175-7061 #176-7068 #176-7070
#176-7072 #176-7074 #176-7076 #176-7078 #176-7080 #176-7082 #177-7089 #177-7091 #177-7093 #177-7095
#177-7097 #178-7104 #178-7106 #178-7108 #178-7110 #178-7112 #178-7114 #178-7116 #178-7118 #178-7120
#178-7122 #178-7125 #178-7127 #178-7129 #178-7131 #178-7133 #178-7135 #178-7137 #178-7139 #178-7141
#178-7143 #178-7145 #178-7147 #178-7149 #178-7151 #178-7153 #178-7155 #178-7157 #178-7159 #178-7161
#178-7163 #178-7165 #179-7172 #179-7174 #179-7176 #179-7181 #179-7183 #180-7191 #180-7193 #180-7195
#180-7197 #180-7199 #180-7201 #180-7203 #180-7205 #180-7207 #180-7209 #180-7211 #180-7213 #182-7321
#182-7323 #182-7325 #182-7327 #182-7329 #182-7331 #182-7333 #182-7335 #183-7342 #183-7344 #183-7346
#183-7348 #183-7350 #183-7352 #183-7354 #183-7356 #183-7358 #183-7360 #183-7362 #184-7369 #184-7371
#185-7378 #185-7380 #185-7382 #185-7384 #186-7391 #186-7393 #186-7395 #187-7402 #187-7404 #187-7406
#187-7408 #187-7410 #187-7412 #187-7414 #188-7421 #188-7423 #188-7425 #188-7427 #188-7429 #188-7431
#188-7433 #188-7435 #188-7437 #188-7439 #188-7441 #188-7443 #188-7445 #188-7447 #188-7449 #188-7451
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 47
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
#188-7453 #188-7456 #190-7483 #190-7485 #191-7492 #191-7494 #191-7496 #191-7498 #191-7500 #191-7502
#191-7504 #191-7506 #191-7508 #191-7510 #191-7512 #191-7514 #191-7516 #191-7518 #191-7520 #191-7522
#191-7525 #191-7528
DIR$ #50-2203 50-2203 #68-2920 70-3049 70-3053 71-3120 72-3169 72-3173 72-3178 73-3226
74-3274 75-3334 #80-3558 80-3558 #85-3767 85-3767 #87-3819 90-3926 94-4042 100-4262
106-4473 108-4569 110-4645 #149-6098 149-6098 #157-6449 #160-6565 160-6565 #160-6574 160-6574
#221-8553 221-8580 #255-9924 255-9931 255-9933 255-9937 255-9944
ERCON$ #5-172
ERROR$ #5-157 47-2104 49-2175 49-2178 51-2246 54-2352 56-2414 70-3063 70-3065 71-3133
72-3181 73-3231 74-3291 75-3344 80-3573 85-3782 88-3860 94-4058 97-4160 101-4298
101-4302 101-4305 101-4308 104-4438 106-4493 108-4590 111-4691 115-4869 117-4963 134-5569
152-6204 152-6207 155-6374 159-6522 167-6775 167-6778 167-6781 172-6921 197-7703 222-8638
222-8641 225-8758 227-8843 228-8920 234-9153 235-9193 237-9255 237-9258
ERR$ #50-2203 #70-3049 #70-3053 #71-3120 #72-3169 #72-3173 #72-3178 #73-3226 #74-3274 #75-3334
#80-3558 #85-3767 #90-3926 #94-4042 #100-4262 #106-4473 #108-4569 #110-4645 #149-6098 #160-6565
#160-6574 #221-8580 #255-9931 #255-9933 #255-9937 #255-9944
EXCH$ #6-223
EXIT$S #157-6449 #160-6574
FATAL$ #5-164
IKL$ #8-251
IOKL$ #8-279
KLDR$ #87-3819 106-4513
KLDW$ #87-3819 #108-4610
KLDX$ #87-3819 111-4712
MOV$ #50-2203 50-2203 #80-3558 #80-3558 80-3558 80-3558 80-3558 80-3558 80-3558 80-3558
80-3558 80-3558 80-3558 #85-3767 #85-3767 85-3767 85-3767 85-3767 85-3767 85-3767
85-3767 85-3767 85-3767 85-3767 #149-6098 149-6098 #160-6565 #160-6565 160-6565 160-6565
160-6565 160-6565
MRKT$ #87-3819 91-3955
MVB$ #80-3558 #80-3558 #85-3767 #85-3767 #160-6565 #160-6565
NBL$ #70-3071 70-3071
NSERR$ #6-201 181-7221 181-7223 181-7225 181-7226 181-7227 181-7228 181-7229 181-7230 181-7231
181-7232 181-7233 181-7234 181-7239 181-7240 181-7241 181-7242 181-7243 181-7244 181-7245
181-7246 181-7247 181-7249 181-7250 181-7251 181-7252 181-7253 181-7254 181-7256 181-7257
181-7258 181-7259 181-7260 181-7261 181-7262 181-7263 181-7265 181-7266 181-7267 181-7268
181-7269 181-7270 181-7271 181-7272 181-7274 181-7275 181-7276 181-7277 181-7278 181-7280
181-7281 181-7283 181-7284 181-7285 181-7286 181-7287 181-7288 181-7289 181-7291 181-7292
181-7294 181-7296 181-7298 181-7299 181-7300 181-7301 181-7303 181-7304 181-7306 181-7308
181-7310 181-7312 181-7314
OFF$ #70-3071 70-3071 70-3071 70-3071 70-3071 #70-3076 70-3076 70-3076 70-3076 70-3076
70-3076 70-3076 70-3076 70-3076 #71-3139 71-3139 71-3139 71-3139 71-3139 71-3139
71-3139 71-3139 71-3139 #72-3187 72-3187 72-3187 72-3187 72-3187 72-3187 72-3187
72-3187 72-3187 #72-3190 72-3190 72-3190 72-3190 72-3190 72-3190 72-3190 72-3190
72-3190 #72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 72-3193 72-3193
#73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 73-3237 #74-3297
74-3297 74-3297 74-3297 74-3297 74-3297 74-3297 74-3297 74-3297 #75-3350 75-3350
75-3350 75-3350 75-3350 75-3350 75-3350 75-3350 75-3350 #91-3955 91-3955 91-3955
91-3955 91-3955 91-3955 #222-8648 222-8648 222-8648 222-8648 222-8648 222-8648 222-8648
222-8648 222-8648 #258-10042 258-10042 258-10042 258-10042 258-10042 258-10042 258-10042 258-10042
258-10042 #258-10051 258-10051 258-10051 258-10051 258-10051 258-10051 258-10051 258-10051 258-10051
#258-10060 258-10060 258-10060 258-10060 258-10060 258-10060 258-10060 258-10060 258-10060 #258-10065
258-10065 258-10065 258-10065 258-10065 258-10065 258-10065 258-10065 258-10065
PAROOT CREATED BY MACRO ON 10-NOV-81 AT 17:46 PAGE 48
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
PARVR$ #34-1442 39-1716 39-1716
POP #4-133 #51-2242 #54-2346 #58-2524 #60-2571 #61-2606 #67-2814 #68-2854 #68-2855 #68-2868
#76-3399 #77-3440 #81-3611 #81-3626 #90-3933 #97-4156 #99-4244 #103-4381 #103-4383 #108-4586
#111-4688 #113-4779 #115-4845 #117-4960 #119-5021 #122-5107 #126-5242 #128-5313 #130-5383 #132-5476
#134-5566 #136-5648 #137-5683 #141-5822 #145-5977 #147-6040 #150-6134 #152-6201 #154-6282 #155-6371
#162-6632 #165-6741 #165-6743 #194-7606 #197-7688 #197-7691 #197-7699 #205-8005 #206-8016 #206-8017
#206-8018 #206-8020 #207-8070 #209-8134 #209-8135 #212-8237 #214-8311 #217-8412 #222-8609 #227-8829
#227-8837 #228-8916 #230-9003 #232-9071 #234-9134 #234-9142 #235-9172 #236-9239 #237-9249 #241-9360
#242-9405 #242-9423 #247-9655 #250-9751 #250-9758 #251-9815 #254-9896 #255-9954 #257-10007 #257-10011
PRDP$ #87-3819 #102-4328
PREX$ #87-3819 #102-4346
PUSH #4-139 47-2104 49-2175 49-2178 51-2238 51-2246 54-2329 54-2334 54-2338 54-2352
56-2414 58-2498 60-2560 60-2564 60-2568 61-2603 62-2628 64-2693 66-2771 68-2857
70-3063 70-3065 71-3133 72-3181 73-3231 74-3291 75-3344 76-3388 77-3429 80-3573
81-3602 81-3613 85-3782 88-3860 89-3890 89-3895 90-3928 94-4058 97-4138 97-4160
99-4214 99-4230 101-4298 101-4302 101-4305 101-4308 103-4374 103-4379 103-4389 104-4398
104-4438 106-4493 108-4572 108-4590 111-4691 113-4757 114-4818 115-4869 116-4908 117-4946
117-4963 119-4992 122-5091 126-5221 127-5277 129-5342 132-5468 134-5539 134-5569 136-5635
136-5641 137-5676 141-5802 143-5920 145-5964 145-5967 145-5968 147-6037 149-6100 150-6130
152-6183 152-6204 152-6207 153-6235 154-6278 155-6345 155-6374 158-6476 158-6478 158-6479
159-6522 162-6625 165-6711 165-6712 165-6714 167-6775 167-6778 167-6781 172-6921 194-7593
196-7649 197-7685 197-7703 205-7971 205-7983 205-8001 207-8049 208-8100 208-8102 211-8196
211-8197 211-8198 211-8203 211-8204 211-8205 211-8210 211-8211 214-8289 217-8385 220-8512
221-8556 222-8638 222-8641 225-8758 226-8788 227-8821 227-8843 228-8877 228-8920 230-8998
230-8999 232-9066 232-9067 234-9126 234-9145 234-9153 235-9193 236-9220 236-9223 236-9234
237-9255 237-9258 241-9331 241-9336 241-9341 241-9346 241-9351 241-9356 242-9398 242-9406
243-9470 244-9509 244-9521 245-9558 246-9597 246-9608 246-9610 250-9743 250-9744 250-9748
250-9754 251-9806 254-9891 255-9950 257-9994 257-10000
QDPB$ #70-3076 #70-3076 #71-3139 #71-3139 #72-3187 #72-3187 #72-3190 #72-3190 #72-3193 #72-3193
#73-3237 #73-3237 #74-3297 #74-3297 #75-3350 #75-3350 #222-8648 #222-8648 #258-10042 #258-10042
#258-10051 #258-10051 #258-10060 #258-10060 #258-10065 #258-10065
QDPB$S #80-3558 #80-3558 #85-3767 #85-3767 #160-6565 #160-6565
QIOW$ #68-2920 70-3076 71-3139 72-3187 72-3190 72-3193 73-3237 74-3297 75-3350 #221-8553
222-8648 #255-9924 258-10042 258-10051 258-10060 258-10065
QIOW$S #68-2920 80-3558 85-3767 #157-6449 160-6565
RETURN #4-147 47-2092 47-2103 48-2144 49-2173 50-2206 51-2236 52-2275 53-2302 54-2347
55-2382 56-2412 70-3060 71-3124 71-3128 72-3177 73-3228 74-3280 75-3338 76-3400
77-3441 78-3495 79-3528 80-3564 80-3566 81-3612 82-3668 83-3699 84-3740 85-3775
90-3934 94-4053 99-4245 100-4265 100-4273 104-4436 106-4491 108-4587 111-4689 113-4780
117-4961 119-5023 122-5108 124-5187 126-5243 128-5314 130-5384 132-5477 134-5567 135-5603
136-5651 137-5684 138-5717 139-5768 141-5824 145-5978 146-6010 147-6041 148-6071 150-6135
152-6202 154-6283 155-6372 159-6516 162-6633 165-6744 169-6847 172-6919 194-7608 203-7941
206-8021 207-8071 209-8136 212-8238 214-8312 217-8413 220-8523 222-8611 223-8692 224-8726
225-8756 227-8838 228-8917 229-8980 231-9044 233-9119 237-9253 241-9361 242-9424 247-9656
250-9769 251-9816 254-9898 256-9966 257-10012
RVP$ #80-3558 80-3558 #85-3767 85-3767 #160-6565 160-6565
SPERR$ #6-211 #189-7464 #189-7466 #189-7468 #189-7469 #189-7470 #189-7472 #189-7473 #189-7474 #189-7476
WTSE$S #87-3819 149-6098
$DEF #87-3819 87-3821
.ENB6 #157-6449 #160-6573
.INH6 #157-6449 #160-6568
ABRTC -- ABORT COMMAND MODULE 7 MACRO M1113 10-NOV-81 17:48
TABLE OF CONTENTS
34- 1441 .ABRTC -- THE "ABORT" COMMAND 7602.23
35- 1465 .ABORT -- ABORT CURRENT OPERATION SUBROUTINE 7707.12
38- 1558 .CONTC -- THE "CONTINUE" COMMAND 7611.17
40- 1643 .DPOSC -- THE "DEPOSIT" COMMAND DISPATCH 7602.23
41- 1681 .DPOSD -- THE "DEPOSIT <NUMERICAL OBJECT>" COMMAND DISPATCH 7602.29
42- 1744 .EXAMC -- THE "EXAMINE" COMMAND DISPATCH 7602.16
43- 1784 .EXAMD -- THE "EXAMINE <NUMERICAL OBJECT>" COMMAND DISPATCH 7602.29
44- 1847 .DPOBJ -- THE "DEPOSIT <OBJECT>" COMMAND DISPATCH 7602.29
45- 1885 .EXOBJ -- THE "EXAMINE <OBJECT>" COMMAND DISPATCH 7602.16
46- 1923 .EDEWD -- THE EXAMINE / DEPOSIT "<ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
47- 1936 .EDKLD -- THE EXAMINE / DEPOSIT "<TEN> <NUMERICAL OBJECT>" COMMAND 7609.10
49- 2015 .DFCOM -- COMMON DIAGNOSTIC FUNCTION ROUTINE 7603.30
50- 2066 .DFRED -- DIAGNOSTIC FUNCTION READ 7602.15
51- 2151 .DFWRT -- DIAGNOSTIC FUNCTION WRITE 7608.20
52- 2191 .DFXCT -- DIAGNOSTIC FUNCTION EXECUTE 7602.15
53- 2224 .XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS 7509.26
56- 2315 .DISCC -- THE "DISCONNECT" COMMAND 7702.28
57- 2386 .DPOSE -- THE "DEPOSIT <ELEVEN>" COMMAND 7602.29
59- 2456 .DPEWD -- THE "DEPOSIT <ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
60- 2495 .EXAME -- THE "EXAMINE <ELEVEN>" COMMAND 7602.29
62- 2588 .EXEWD -- THE "EXAMINE <ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
65- 2649 .DEPAR -- THE "DEPOSIT AR" COMMAND 7603.21
66- 2690 .DPOST -- THE "DEPOSIT <TEN>" COMMAND 7602.15
69- 2804 .DPKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7602.29
70- 2842 .EXAMT -- THE "EXAMINE <TEN>" COMMAND 7602.05
72- 2962 .EXKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7609.10
73- 2989 .RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL APR 7509.24
76- 3068 .EXCTC -- THE "XCT" (EXECUTE) COMMAND 7602.17
78- 3143 .EXDTE -- THE "EXAMINE DTE-20" COMMAND 7603.20
79- 3171 TYPDTE -- TYPE OUT DTE REGISTERS SYMBOLICALLY
80- 3280 STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
81- 3338 TYPDX1 -- SYMBOLIC DEXWD1-DEXWD3 TYPE OUT
82- 3363 TYPAD2 -- SYMBOLIC TENAD1-TENAD2 TYPE OUT
83- 3441 TYPDG1 -- SYMBOLIC DIAG1 TYPE OUT
84- 3485 TYPDG3 -- SYMBOLIC DIAG3 TYPE OUT
87- 3536 .EXAD -- KL DATA PATH BOARD EXAMINES 7602.16
88- 3577 .EXVAB -- KL PC BOARD AND SMALL REGISTER EXAMINES 7602.16
90- 3622 .EXAMF -- THE "EXAMINE FLAGS" COMMAND 7602.23
92- 3683 .EXAMK -- THE "EXAMINE KL" COMMAND 7602.23
93- 3723 .EXCRA -- SMALL REGISTER EXAMINES 7609.10
96- 3775 .EXMPI -- THE "EXAMINE PI" COMMAND 7602.23
98- 3846 .EXREG -- THE "EXAMINE REGISTERS" COMMAND 7602.16
99- 3863 .RDDPB -- SUBROUTINES TO READ THE KL DATA PATH BOARDS 7509.23
101- 3935 .RDFLG -- SUBROUTINE TO READ THE KL PC FLAGS 7511.24
103- 4002 .RDPI -- SUBROUTINE TO READ THE PI BOARDS 7510.16
105- 4066 .RDSMR -- SUBROUTINE TO READ SMALL KL REGISTERS 7511.05
108- 4199 .RDVXX -- KL VMA BOARD READ SUBROUTINES 7510.21
110- 4336 .GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
112- 4491 .GTTIM -- SUBROUTINE TO INPUT A TIME VALUE 7702.15
113- 4602 .TYDAT -- SUBROUTINE TO TYPE A DATE 7702.16
114- 4665 .TYTIM -- TIME OUTPUT SUBROUTINE 7702.16
116- 4750 .HALTC -- THE "HALT" COMMAND 7710.11
118- 4813 .INITC -- THE "INITIALIZE" COMMAND 7602.16
119- 4839 .INIT -- INITIALIZATION SUBROUTINE 7509.26
120- 4881 .INKLF -- SUBROUTINE TO SET UP KL STATE WORD 7601.09
123- 4994 .INICP -- INITIALIZE THE COMMAND PARSER 7601.21
128- 5127 .KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48
TABLE OF CONTENTS
129- 5231 .SNAP -- ROUTINE TO MANUALLY PERFORM A SNAPSHOT
132- 5301 .MARKC -- THE "MARK/UNMARK-MICROCODE" COMMAND 7910.19
135- 5401 .RESTC -- THE "RESET" COMMAND DISPATCH 7710.11
136- 5441 .RSALL -- THE "RESET ALL" COMMAND 7602.18
137- 5467 .RSTPI -- THE "RESET PI" COMMAND 7607.21
138- 5504 .RSPAG -- THE "RESET PAG" COMMAND 7607.21
141- 5589 .RUNCM -- THE "RUN" AND "MCR" COMMANDS 7607.14
144- 5670 .TAKEC -- THE "TAKE" COMMAND
145- 5733 .GTR50 -- GET A .RAD50 WORD 7602.18
147- 5788 .QUITC -- THE "QUIT" COMMAND 7602.16
150- 5851 .SCACB -- SET AC-BLOCK COMMAND
151- 5890 .SACBK -- SET AC BLOCK ROUTINE
152- 5961 .WHACB -- WHAT AC BLOCK COMMAND
153- 5991 .SWPC -- SWEEP AC BLOCK COMMAND
154- 6081 .SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
155- 6170 .RSSWP -- RESET PARITY STOPS FOR FM SWEEP
158- 6252 .SCOUT -- SET/CLEAR OUTPUT COMMAND
159- 6303 .SCOTL -- SET/CLEAR OUTPUT LOG COMMAND
160- 6416 .SCOTP -- SET/CLEAR OUTPUT LPT COMMAND
161- 6457 .SCOTY -- SET/CLEAR OUTPUT TTY COMMAND
162- 6487 .SCOTC -- SET/CLEAR OUTPUT CHECK ROUTINE
163- 6517 .WHOUT -- WHAT OUTPUT COMMAND
167- 6628 .SETCM -- THE "SET" AND "CLEAR" COMMAND DISPATCHES 7602.19
168- 6675 .WHATC -- THE "WHAT" COMMAND DISPATCH 7607.14
169- 6704 .SCNOT -- THE "SET / CLEAR NOT" COMMAND 7602.19
171- 6744 .SHUTC -- THE "SHUTDOWN" COMMAND 7707.12
173- 6818 .STRTC -- THE "START" COMMAND 7602.26
174- 6847 .STRTT -- THE "START <TEN>" COMMAND 7710.11
176- 6910 .STRTU -- THE "START MICROCODE" COMMAND 7602.26
178- 6988 .SCCON -- THE " SET / CLEAR CONSOLE" COMMAND 7702.16
179- 7033 .WHCON -- THE "WHAT CONSOLE" COMMAND 7607.14
180- 7057 .SCINC -- THE "SET / CLEAR INCREMENT" COMMAND 7606.20
181- 7082 .WHINC -- THE "WHAT INCREMENT" COMMAND 7703.25
182- 7115 .SCMEM -- THE "SET / CLEAR MEMORY" COMMAND 7607.08
183- 7142 .WHMEM -- THE "WHAT MEMORY" COMMAND 7603.21
184- 7162 .SCOFS -- THE "SET / CLEAR OFFSET" COMMAND 7602.19
185- 7175 .WHOFS -- THE "WHAT OFFSET" COMMAND 7603.20
186- 7191 .SCRLD -- THE "SET / CLEAR RELOAD" COMMAND 7602.19
187- 7199 .SCRTY -- THE "SET / CLEAR RETRY" COMMAND 7-DEC-78
188- 7211 .WHRLD -- THE "WHAT RELOAD" COMMAND 7603.21
189- 7224 .WHRTY -- THE "WHAT RETRY" COMMAND 7-DEC-78
190- 7248 .SCRPT -- THE "SET / CLEAR REPEAT" COMMAND 7703.25
191- 7270 .SCTRK -- THE "SET / CLEAR TRACK" COMMAND 7602.19
192- 7283 .WHTRK -- THE "WHAT TRACKS" COMMAND 7603.20
193- 7298 .WHATV -- THE "WHAT VERSION" COMMAND 7607.21
194- 7325 .WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT 7910.18
195- 7423 .SFREC -- SET/CLEAR FAULT COMMAND
196- 7433 WHAT FAULT CONTINUATION COMMAND
197- 7455 .SCTAK -- THE "SET/CLEAR AUTO-TAKE" COMMAND
198- 7469 .WHTAK -- THE "WHAT AUTO-TAKE" COMMAND
199- 7525 .SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH 7608.19
202- 7647 .SCCRF -- SET / CLEAR "CLOCK <OBJECT>" 7603.09
204- 7736 .SCPAR -- SET / CLEAR PARITY-STOP "<OBJECT>" 7603.08
205- 7778 .WHTCL -- THE "WHAT CLOCK" COMMAND 7608.17
208- 7868 .WHTPS -- THE "WHAT PARITY-STOP" COMMAND 7608.19
211- 7942 .YESNO -- SUBROUTINE TO ASK "YES OR NO" 7603.22
214- 8041 .SCDAT -- "SET DATE" COMMAND 7703.04
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48
TABLE OF CONTENTS
216- 8177 .WHDAT -- THE "WHAT" DATE COMMAND 7703.03
220- 8312 .SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
223- 8599 .WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
227- 8752 .ZEROC -- THE "ZERO" COMMAND 7609.15
ABRTC -- ABORT COMMAND MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 33
COPYRIGHT PAGE
1409 .TITLE ABRTC -- ABORT COMMAND MODULE 7602.23
1410
1411 .IDENT "005000"
1412 ;
1413 ; COPYRIGHT (C) 1975, 1979 BY
1414 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
1415 ;
1416 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
1417 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
1418 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
1419 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
1420 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
1421 ;
1422 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
1423 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
1424 ; CORPORATION.
1425 ;
1426 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
1427 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
1428 ;
1429 ; MODULE: ABORT COMMAND
1430 ;
1431 ; VERSION: 05-00
1432 ;
1433 ; AUTHOR: R. BELANGER
1434 ;
1435 ; DATE: 7602.23
1436 ;
1437 ; THIS MODULE CONTAINS:
1438 ;
1439 ; 1) ABORT COMMAND CODE
ABRTC -- ABORT COMMAND MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 34
.ABRTC -- THE "ABORT" COMMAND 7602.23
1441 .SBTTL .ABRTC -- THE "ABORT" COMMAND 7602.23
1442
1443 ;+
1444 ; .ABRTC -- THE "ABORT" COMMAND
1445 ;
1446 ; THIS ROUTINE CALLS THE ABORT SUBROUTINE ".ABORT", Q.V.
1447 ;
1448 ; INPUT ARGUMENTS:
1449 ;
1450 ; NONE.
1451 ;
1452 ; OUTPUT ARGUMENTS:
1453 ;
1454 ; NONE.
1455 ;
1456 ; ERROR CODES RETURNED:
1457 ;
1458 ; NONE.
1459 ;-
1460
1461 000000 .ABRTC::
1462 000000 CALL .CKEOC ; MUST HAVE E-O-C
000000 004737 000000G JSR PC,.CKEOC
1463 ; CALLR .ABORT ; ABORT CURRENT KL OPERATION AND EXIT
ABRTC -- ABORT COMMAND MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 35
.ABORT -- ABORT CURRENT OPERATION SUBROUTINE 7707.12
1465 .SBTTL .ABORT -- ABORT CURRENT OPERATION SUBROUTINE 7707.12
1466
1467 ;+
1468 ; .ABORT -- SUBROUTINE TO ABORT THE CURRENT KL PROCESS
1469 ;
1470 ; THIS SUBROUTINE ABORTS THE CURRENT KL PROCESS AND RETURNS WITH
1471 ; THE KL CLOCK RUNNING IN THE HALT LOOP. IF THE "HALT" FAILS, THE
1472 ; KL MICROCODE IS RESTARTED. THE CONTINUEABILITY OF THE KL IS
1473 ; INDICATED BY THE STATE OF THE "KF.CON" FLAG BIT (Q.V.) IN ".KLFLG".
1474 ;
1475 ; SEQUENCE OF OPERATION:
1476 ;
1477 ; (A) THE KL IS HALTED,
1478 ; (B) IF THE HALT WINS GO TO (E), OTHERWISE GO TO (C),
1479 ; (C) THE MICRO CODE IS RESTARTED AT CRAM ADDRESS 0000,
1480 ; (D) SECONDARY PROTOCOL IS STARTED
1481 ; (E) EXIT.
1482 ;
1483 ; INPUT ARGUMENTS:
1484 ;
1485 ; NONE.
1486 ;
1487 ; OUTPUT ARGUMENTS:
1488 ;
1489 ; NONE.
1490 ;
1491 ; ERROR CODES RETURNED:
1492 ;
1493 ; CFH -- CAN'T FIND KL HALT LOOP.
1494 ; FRF -- FUNCTION READ FAILED.
1495 ; FWF -- FUNCTION WRITE FAILED.
1496 ; FXF -- FUNCTION EXECUTE FAILED.
1497 ; UNL -- UCODE NOT LOADED.
1498 ;
1499 ; NOTE:
1500 ;
1501 ; THE CONTINUEABILITY OF THE KL IS NOT GUARANTEED BY THIS
1502 ; SUBROUTINE.
1503 ;-
ABRTC -- ABORT COMMAND MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 36
.ABORT -- ABORT CURRENT OPERATION SUBROUTINE 7707.12
1505 .ENABL LSB
1506
1507 000004 .ABORT::
1508 000004 PUSH R0 ; SAVE R0 ON THE STACK
000004 010046 MOV R0,-(SP)
1509 000006 PUSH #.ABRT0 ; .IN CASE ".KLSTP" TRAPS
000006 012746 000032' MOV #.ABRT0,-(SP)
1510 000012 010637 000000G MOV SP,.TRPTV ; ..STACK POINTER FOR RETURN
1511 000016 CALL .KLSTP ; ..HALT THE KL
000016 004737 000000G JSR PC,.KLSTP
1512 000022 005726 TST (SP)+ ; ..CLEAR RETURN
1513 000024 005037 000000G CLR .TRPTV ; .AND TRAP VECTOR
1514 000030 000410 BR 10$ ; .AND EXIT
1515 ;
1516 000032 .ABRT0:: ; .GET HERE IF ".KLSTP" TRAPPED
1517 000032 005000 CLR R0 ; .CLEAR R0 (STACK POPPED BY ".PTTRP")
1518 000034 CALL .STUCD ; .(RE)START THE UCODE
000034 004737 000000G JSR PC,.STUCD
1519 000040 052737 000000G 000002G BIS #EF.CRI,.COMEF+2 ; .DECLARE THE COMM REGION INVALID
1520 000046 CALL ..DTP2 ; .START SECONDARY PROTOCOL
000046 004737 000000G JSR PC,..DTP2
1521 000052 10$:
1522 000052 POP R0 ; .RESTORE R0
000052 012600 MOV (SP)+,R0
1523 000054 RETURN ; TO CALLER
000054 000207 RTS PC
1524
1525 .DSABL LSB
CONTC -- CONTINUE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 37
.ABORT -- ABORT CURRENT OPERATION SUBROUTINE 7707.12
1527 .TITLE CONTC -- CONTINUE COMMAND MODULE 7611.17
1528
1529 .IDENT "005000"
1530
1531 ;
1532 ; COPYRIGHT (C) 1975, 1979 BY
1533 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
1534 ;
1535 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
1536 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
1537 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
1538 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
1539 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
1540 ;
1541 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
1542 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
1543 ; CORPORATION.
1544 ;
1545 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
1546 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
1547 ;
1548 ; VERSION: 05-00
1549 ;
1550 ; AUTHOR: R. BELANGER
1551 ;
1552 ; DATE: 7611.17
1553 ;
1554 ; THIS MODULE CONTAINS:
1555 ;
1556 ; 1) CONTINUE COMMAND CODE
CONTC -- CONTINUE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 38
.CONTC -- THE "CONTINUE" COMMAND 7611.17
1558 .SBTTL .CONTC -- THE "CONTINUE" COMMAND 7611.17
1559
1560 ;+
1561 ; .CONTC -- THE "CONTINUE" COMMAND
1562 ;
1563 ; THIS ROUTINE EXECUTES THE "CONTINUE" CONSOLE FUNCTION
1564 ;
1565 ; INPUT ARGUMENTS:
1566 ;
1567 ; NONE.
1568 ;
1569 ; OUTPUT ARGUMENTS:
1570 ;
1571 ; NONE.
1572 ;
1573 ; ERROR CORES RETURNED:
1574 ;
1575 ; KNC -- KL IS NOT CONTINUABLE
1576 ;-
1577
1578 000056 .CONTC::
1579 000056 CALL .CKEOC ; CHECK E-O-C
000056 004737 000000G JSR PC,.CKEOC
1580 000062 PUSH .KLFLG ; SAVE ".KLFLG" ON THE STACK
000062 013746 000000G MOV .KLFLG,-(SP)
1581 000066 032716 000200 BIT #KF.CON,(SP) ; .CAN WE CONTINUE THE KL?
1582 000072 001427 BEQ CONKNC ; .NO -- GIVE "KNC" ERROR
1583 000074 032716 010000 BIT #KF.SIM,(SP) ; .YES -- ARE WE IN SINGLE INSTRUCTION MODE?
1584 000100 001412 BEQ 20$ ; .NO -- JUST CONTINUE THE KL
1585 000102 032716 100000 BIT #KF.CLK,(SP) ; .YES -- IS THE CLOCK RUNNING?
1586 000106 001002 BNE 10$ ; .YES -- DON'T START IT AGAIN
1587 000110 CALL .STCLK ; .NO -- START IT
000110 004737 000000G JSR PC,.STCLK
1588 000114 10$:
1589 000114 012700 000024 MOV #FX.CON,R0 ; .SET THE "CONTINUE" BUTTON
1590 000120 CALL .FXCT ; .VIA FUNCTION EXECUTE
000120 004737 000000G JSR PC,.FXCT
1591 000124 000407 BR 30$ ; .AND EXIT
1592 ;
1593 000126 20$:
1594 000126 CALL .KLCON ; .DO THE CONTINUE
000126 004737 000000G JSR PC,.KLCON
1595 000132 032716 040000 BIT #KF.RUN,(SP) ; .WAS THE KL RUNNING BEFORE?
1596 000136 001002 BNE 30$ ; .YES -- JUST EXIT
1597 000140 005037 000000G CLR .NOERR ; RE-ENABLE ERROR DETECTION
1598 000144 30$:
1599 000144 005726 TST (SP)+ ; .CLEAR THE STACK
1600 000146 CALLR .EXITP
000146 000137 000000G JMP .EXITP
1601 ;
1602
1603 000152 CONKNC:
1604 000152 ERROR$ KNC ; ERROR -- KL NOT CONTINUEABLE
000152 012746 043363 MOV #^RKNC,-(SP)
000156 104400 TRAP TC.ERR
1605 ;
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 39
.CONTC -- THE "CONTINUE" COMMAND 7611.17
1607 .TITLE DECMD -- DEPOSIT / EXAMINE COMMAND DISPATCH MODULE 7603.30
1608
1609 .IDENT "005000"
1610
1611 ;
1612 ; COPYRIGHT (C) 1975, 1979 BY
1613 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
1614 ;
1615 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
1616 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
1617 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
1618 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
1619 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
1620 ;
1621 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
1622 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
1623 ; CORPORATION.
1624 ;
1625 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
1626 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
1627 ;
1628 ; MODULE: DEPOSIT / EXAMINE COMMAND DISPATCH
1629 ;
1630 ; VERSION: 05-00
1631 ;
1632 ; AUTHOR: R. BELANGER
1633 ;
1634 ; DATE: 7603.30
1635 ;
1636 ; THIS MODULE CONTAINS:
1637 ;
1638 ; 1) DEPOSIT COMMAND DISPATCH CODE
1639 ; 2) DEPOSIT COMMAND DISPATCH TABLES
1640 ; 3) EXAMINE COMMAND DISPATCH CODE
1641 ; 4) EXAMINE COMMAND DISPATCH TABLES
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 40
.DPOSC -- THE "DEPOSIT" COMMAND DISPATCH 7602.23
1643 .SBTTL .DPOSC -- THE "DEPOSIT" COMMAND DISPATCH 7602.23
1644
1645 ;+
1646 ; .DPOSC -- THE "DEPOSIT" COMMAND.
1647 ;
1648 ; THIS IS THE TOP LEVEL DEPOSIT ROUTINE WHICH DISPATCHES TO THE
1649 ; PROPER ROUTINE FOR THE OBJECT TO BE DEPOSITED.
1650 ;
1651 ; INPUT ARGUMENTS:
1652 ;
1653 ; NONE.
1654 ;
1655 ; OUTPUT ARGUMENTS:
1656 ;
1657 ; NONE.
1658 ;
1659 ; ERROR CODES RETURNED:
1660 ;
1661 ; NSK -- NO SUCH KEYWORD
1662 ;-
1663
1664 000160 .DPOSC::
1665 000160 013703 000000G MOV .MEMFL,R3 ; OFFSET FLAG TO R3
1666 000164 CALL .CKARG ; LOOK FOR THE ARGUMENT
000164 004737 000000G JSR PC,.CKARG
1667 000170 001435 BEQ .DPOBJ ; DISPATCH FOR OBJECT
1668 000172 .DPOSA:: ; HERE TO DISPATCH FOR MEMORY
1669 000172 CALLR @DPOATB(R3) ; DISPATCH
000172 000173 000000' JMP @DPOATB(R3)
1670 ;
1671
1672 000000 .PSECT DATA
1673
1674 000000 DPOATB:
1675 000000 002206' .WORD .DPOST ; DEPOSIT TEN
1676 000002 001334' .WORD .DPOSE ; DEPOSIT ELEVEN WORD
1677
1678 000176 .PSECT
1679
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 41
.DPOSD -- THE "DEPOSIT <NUMERICAL OBJECT>" COMMAND DISPATCH 76
1681 .SBTTL .DPOSD -- THE "DEPOSIT <NUMERICAL OBJECT>" COMMAND DISPATCH 7602.29
1682
1683 000176 .DPOSD:: ; DEPOSIT DECREMENT
1684 000176 CALLR @DPODTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000176 000173 000004' JMP @DPODTB(R3)
1685 ;
1686
1687 000004 .PSECT DATA
1688
1689 000004 DPODTB:
1690 000004 002534' .WORD .DPKLD ; KL WORD
1691 000006 001524' .WORD .DPEWD ; PDP-11 WORD
1692
1693 000202 .PSECT
1694
1695 000202 .DPOSI:: ; DEPOSIT INCREMENT
1696 000202 CALLR @DPOITB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000202 000173 000010' JMP @DPOITB(R3)
1697 ;
1698
1699 000010 .PSECT DATA
1700
1701 000010 DPOITB:
1702 000010 002542' .WORD .DPKLI ; KL WORD
1703 000012 001532' .WORD .DPEWI ; PDP-11 WORD
1704
1705 000206 .PSECT
1706
1707 000206 .DPOSN:: ; DEPOSIT NEXT
1708 000206 CALLR @DPONTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000206 000173 000014' JMP @DPONTB(R3)
1709 ;
1710
1711 000014 .PSECT DATA
1712
1713 000014 DPONTB:
1714 000014 002550' .WORD .DPKLN ; KL WORD
1715 000016 001540' .WORD .DPEWN ; PDP-11 WORD
1716
1717 000212 .PSECT
1718
1719 000212 .DPOSP:: ; DEPOSIT PREVIOUS
1720 000212 CALLR @DPOPTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000212 000173 000020' JMP @DPOPTB(R3)
1721 ;
1722
1723 000020 .PSECT DATA
1724
1725 000020 DPOPTB:
1726 000020 002556' .WORD .DPKLP ; KL WORD
1727 000022 001546' .WORD .DPEWP ; PDP-11 WORD
1728
1729 000216 .PSECT
1730
1731 000216 .DPOSZ:: ; DEPOSIT THIS
1732 000216 CALLR @DPOZTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000216 000173 000024' JMP @DPOZTB(R3)
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 41-1
.DPOSD -- THE "DEPOSIT <NUMERICAL OBJECT>" COMMAND DISPATCH 76
1733 ;
1734
1735 000024 .PSECT DATA
1736
1737 000024 DPOZTB:
1738 000024 002526' .WORD .DPKLT ; KL WORD
1739 000026 001516' .WORD .DPEWT ; PDP-11 WORD
1740
1741 000222 .PSECT
1742
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 42
.EXAMC -- THE "EXAMINE" COMMAND DISPATCH 7602.16
1744 .SBTTL .EXAMC -- THE "EXAMINE" COMMAND DISPATCH 7602.16
1745
1746 ;+
1747 ; .EXAMC -- THE "EXAMINE" COMMAND DISPATCH.
1748 ;
1749 ; THIS IS THE TOP LEVEL EXAMINE ROUTINE WHICH DETERMINES WHICH
1750 ; OBJECT IS TO BE EXAMINED.
1751 ;
1752 ; INPUT ARGUMENTS:
1753 ;
1754 ; NONE.
1755 ;
1756 ; OUTPUT ARGUMENTS:
1757 ;
1758 ; NONE, THIS ROUTINE DISPATCHES TO THE PROPER ROUTINE
1759 ; FOR THE OBJECT SPECIFIED.
1760 ;
1761 ; ERROR CODES RETURNED:
1762 ;
1763 ; NONE.
1764 ;-
1765
1766 000222 .EXAMC::
1767 000222 013703 000000G MOV .MEMFL,R3 ; MEMORY FLAG TO R3
1768 000226 CALL .CKARG ; CHECK THE ARGUMENT
000226 004737 000000G JSR PC,.CKARG
1769 000232 001434 BEQ .EXOBJ ; EXAMINE THE OBJECT
1770 ;
1771 000234 .EXAMA:: ; HERE TO DISPATCH FOR MEMORY
1772 000234 CALLR @EXMDTB(R3) ; DISPATCH
000234 000173 000030' JMP @EXMDTB(R3)
1773 ;
1774
1775 000030 .PSECT DATA
1776
1777 000030 EXMDTB:
1778 000030 002614' .WORD .EXAMT ; EXAMINE TEN
1779 000032 001604' .WORD .EXAME ; EXAMINE ELEVEN WORD
1780
1781 000240 .PSECT
1782
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 43
.EXAMD -- THE "EXAMINE <NUMERICAL OBJECT>" COMMAND DISPATCH 76
1784 .SBTTL .EXAMD -- THE "EXAMINE <NUMERICAL OBJECT>" COMMAND DISPATCH 7602.29
1785
1786 000240 .EXAMD:: ; EXAMINE DECREMENT
1787 000240 CALLR @EXADTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000240 000173 000034' JMP @EXADTB(R3)
1788 ;
1789
1790 000034 .PSECT DATA
1791
1792 000034 EXADTB:
1793 000034 003206' .WORD .EXKLD ; KL WORD
1794 000036 002066' .WORD .EXEWD ; PDP-11 WORD
1795
1796 000244 .PSECT
1797
1798 000244 .EXAMI:: ; EXAMINE INCREMENT
1799 000244 CALLR @EXAITB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000244 000173 000040' JMP @EXAITB(R3)
1800 ;
1801
1802 000040 .PSECT DATA
1803
1804 000040 EXAITB:
1805 000040 003214' .WORD .EXKLI ; KL WORD
1806 000042 002074' .WORD .EXEWI ; PDP-11 WORD
1807
1808 000250 .PSECT
1809
1810 000250 .EXAMN:: ; EXAMINE NEXT
1811 000250 CALLR @EXANTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000250 000173 000044' JMP @EXANTB(R3)
1812 ;
1813
1814 000044 .PSECT DATA
1815
1816 000044 EXANTB:
1817 000044 003222' .WORD .EXKLN ; KL WORD
1818 000046 002102' .WORD .EXEWN ; PDP-11 WORD
1819
1820 000254 .PSECT
1821
1822 000254 .EXAMP:: ; EXAMINE PREVIOUS
1823 000254 CALLR @EXAPTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000254 000173 000050' JMP @EXAPTB(R3)
1824 ;
1825
1826 000050 .PSECT DATA
1827
1828 000050 EXAPTB:
1829 000050 003230' .WORD .EXKLP ; KL WORD
1830 000052 002110' .WORD .EXEWP ; PDP-11 WORD
1831
1832 000260 .PSECT
1833
1834 000260 .EXAMZ:: ; EXAMINE THIS
1835 000260 CALLR @EXAZTB(R3) ; DISPATCH ON MEMORY TYPE FLAG
000260 000173 000054' JMP @EXAZTB(R3)
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 43-1
.EXAMD -- THE "EXAMINE <NUMERICAL OBJECT>" COMMAND DISPATCH 76
1836 ;
1837
1838 000054 .PSECT DATA
1839
1840 000054 EXAZTB:
1841 000054 003200' .WORD .EXKLT ; KL WORD
1842 000056 002060' .WORD .EXEWT ; PDP-11 WORD
1843
1844 000264 .PSECT
1845
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 44
.DPOBJ -- THE "DEPOSIT <OBJECT>" COMMAND DISPATCH 7602.29
1847 .SBTTL .DPOBJ -- THE "DEPOSIT <OBJECT>" COMMAND DISPATCH 7602.29
1848
1849 ;+
1850 ; .DPOBJ -- DEPOSIT "OBJECT" COMMAND DISPATCH
1851 ;
1852 ; THIS SUBROUTINE PERFORMS THE DISPATCH FOR THE SPECIFIED DEPOSIT OBJECT
1853 ;
1854 ; INPUT ARGUMENTS:
1855 ;
1856 ; R3 CONTAINS THE OLD MEMORY TYPE OFFSET
1857 ;
1858 ; OUTPUT ARGUMENTS:
1859 ;
1860 ; R3 CONTAINS THE CURRENT MEMORY TYPE OFFSET
1861 ;
1862 ; ERROR CODES RETURNED:
1863 ;
1864 ; NONE.
1865 ;-
1866
1867
1868 000264 .DPOBJ::
1869 000264 012700 000000G MOV #.DPOTB,R0 ; TABLE POINTER TO R0
1870 000270 CALL .TSCAN ; SCAN THE TABLE FOR OBJECT
000270 004737 000000G JSR PC,.TSCAN
1871 000274 012001 MOV (R0)+,R1 ; LEGAL BITS TO R1
1872 000276 005101 COM R1 ; INVERT THEM
1873 000300 040137 000000G BIC R1,.LGLWD ; SET UP NEW LEGAL WORD
1874 000304 CALLR @(R0)+ ; DISPATCH FOR OBJECT
000304 000130 JMP @(R0)+
1875 ;
1876 000306 .DPOKL::
1877 000306 005003 CLR R3 ; TEN MEMORY OFFSET TO R3
1878 000310 CALLR .DPOST ; GO DO IT
000310 000137 002206' JMP .DPOST
1879 ;
1880 000314 .DPOEL::
1881 000314 012703 000002 MOV #^D2,R3 ; PDP-11 WORD OFFSET TO R3
1882 000320 CALLR .DPOSE ; GO DO IT
000320 000137 001334' JMP .DPOSE
1883 ;
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 45
.EXOBJ -- THE "EXAMINE <OBJECT>" COMMAND DISPATCH 7602.16
1885 .SBTTL .EXOBJ -- THE "EXAMINE <OBJECT>" COMMAND DISPATCH 7602.16
1886
1887 ;+
1888 ; .EXOBJ -- THE "EXAMINE <OBJECT>" COMMAND DISPATCH.
1889 ;
1890 ; THIS ROUTINE IS THE DISPATCH FOR ALL OF THE "EXAMINE <OBJECT>" COMMANDS.
1891 ;
1892 ; INPUT ARGUMENTS:
1893 ;
1894 ; NONE.
1895 ;
1896 ; OUTPUT ARGUMENTS:
1897 ;
1898 ; NONE.
1899 ;
1900 ; ERROR CODES RETURNED:
1901 ;
1902 ; NSC -- NO SUCH COMMAND.
1903 ;-
1904
1905 000324 .EXOBJ::
1906 000324 012700 000000G MOV #.EXMTB,R0 ; EXAMINE TABLE POINTER TO R0
1907 000330 CALL .TSCAN ; SCAN THE TABLE
000330 004737 000000G JSR PC,.TSCAN
1908 000334 011001 MOV (R0),R1 ; LEGAL BITS TO R1
1909 000336 005101 COM R1 ; INVERT THEM
1910 000340 040137 000000G BIC R1,.LGLWD ; SET UP NEW LEGAL WORD
1911 000344 014002 MOV -(R0),R2 ; NAME POINTER TO R2
1912 000346 CALLR @4(R0) ; READ AND PRINT THE REGISTER
000346 000170 000004 JMP @4(R0)
1913 ;
1914 000352 .EXMEL::
1915 000352 012703 000002 MOV #^D2,R3 ; PDP-11 OFFSET TO R3
1916 000356 CALLR .EXAME ; DO THE EXAMINE
000356 000137 001604' JMP .EXAME
1917 ;
1918 000362 .EXMKL::
1919 000362 005003 CLR R3 ; KL MEMORY OFFSET TO R3
1920 000364 CALLR .EXAMT ; DO THE EXAMINE
000364 000137 002614' JMP .EXAMT
1921 ;
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 46
.EDEWD -- THE EXAMINE / DEPOSIT "<ELEVEN> <NUMERICAL OBJECT>"
1923 .SBTTL .EDEWD -- THE EXAMINE / DEPOSIT "<ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
1924
1925 000370 .EDEWD::
1926 000370 .EDEWP::
1927 000370 013700 000000G MOV .EDELA,R0 ; ADDRESS TO R0
1928 000374 162700 000002 SUB #^D2,R0 ; PREVIOUS WORD ADDRESS
1929 000400 RETURN ; TO CALLER
000400 000207 RTS PC
1930 000402 .EDEWI::
1931 000402 .EDEWN::
1932 000402 013700 000000G MOV .EDELA,R0 ; ADDRESS TO R0
1933 000406 062700 000002 ADD #^D2,R0 ; NEXT WORD ADDRESS
1934 000412 RETURN ; TO CALLER
000412 000207 RTS PC
DECMD -- DEPOSIT / EXAMINE COMM MACRO M1113 10-NOV-81 17:48 PAGE 47
.EDKLD -- THE EXAMINE / DEPOSIT "<TEN> <NUMERICAL OBJECT>" COM
1936 .SBTTL .EDKLD -- THE EXAMINE / DEPOSIT "<TEN> <NUMERICAL OBJECT>" COMMAND 7609.10
1937
1938 .ENABL LSB
1939
1940 000414 .EDKLP::
1941 000414 CALL .EDKLC ; DO COMMON CODE
000414 004737 000512' JSR PC,.EDKLC
1942 000420 CALL .TPDEC ; DECREMENT ONCE
000420 004737 000000G JSR PC,.TPDEC
1943 000424 000422 BR 10$ ; EXIT THRU COMMON CODE
1944 ;
1945 000426 .EDKLN::
1946 000426 CALL .EDKLC ; DO COMMON CODE
000426 004737 000512' JSR PC,.EDKLC
1947 000432 CALL .TPINC ; INCREMENT ONCE
000432 004737 000000G JSR PC,.TPINC
1948 000436 000415 BR 10$ ; EXIT THRU COMMON CODE
1949 ;
1950 000440 .EDKLD::
1951 000440 CALL .EDKLC ; DO COMMON CODE
000440 004737 000512' JSR PC,.EDKLC
1952 000444 012701 000000G MOV #.KLINC,R1 ; POINT TO THE INCREMENT
1953 000450 CALL .TPSUB ; DO THE SUBTRACTION
000450 004737 000000G JSR PC,.TPSUB
1954 000454 000406 BR 10$ ; EXIT THRU COMMON CODE
1955 ;
1956 000456 .EDKLI::
1957 000456 CALL .EDKLC ; DO COMMON CODE
000456 004737 000512' JSR PC,.EDKLC
1958 000462 012701 000000G MOV #.KLINC,R1 ; POINT TO THE INCREMENT
1959 000466 CALL .TPADD ; DO THE ADDITION
000466 004737 000000G JSR PC,.TPADD
1960 000472 10$:
1961 000472 032760 177600 000002 BIT #^C177,2(R0) ; CHECK THE RESULT
1962 000500 001015 BNE EDNKLA ; ERROR IF TOO LARGE
1963 000502 005760 000004 TST 4(R0) ; HOW ABOUT HIGH BITS?
1964 000506 001012 BNE EDNKLA ; TOO LARGE
1965 000510 000410 BR 20$ ; ALL OK -- RETURN
1966 ;
1967 000512 .EDKLC::
1968 000512 012700 000000G MOV #.EDKLX,R0 ; AUX ADDRESS POINTER TO R0
1969 000516 012701 000000G MOV #.EDKLA,R1 ; EXAM / DEPOS ADDRESS TO R1
1970 000522 012120 MOV (R1)+,(R0)+ ; LOAD CURRENT ADDRESS
1971 000524 012120 MOV (R1)+,(R0)+ ; INTO AUXILLIARY ADDRESS BUFFER
1972 000526 011110 MOV (R1),(R0) ; SO
1973 000530 024040 CMP -(R0),-(R0) ; BACK THE POINTER UP
1974 000532 20$:
1975 000532 RETURN ; AND GO ON
000532 000207 RTS PC
1976
1977 .DSABL LSB
1978
1979 000534 EDNKLA:
1980 000534 ERROR$ KLA ; ERROR -- KL ADDRESS ERROR
000534 012746 043241 MOV #^RKLA,-(SP)
000540 104400 TRAP TC.ERR
1981 ;
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 48
.EDKLD -- THE EXAMINE / DEPOSIT "<TEN> <NUMERICAL OBJECT>" COM
1983 .TITLE DFUNC -- KL10 DIAGNOSTIC FUNCTION MODULE 7603.30
1984
1985 .IDENT "006130"
1986 ;
1987 ; COPYRIGHT (C) 1975, 1979 BY
1988 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
1989 ;
1990 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
1991 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
1992 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
1993 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
1994 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
1995 ;
1996 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
1997 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
1998 ; CORPORATION.
1999 ;
2000 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2001 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2002 ;
2003 ; MODULE: KL10 DIAGNOSTIC FUNCTION
2004 ;
2005 ; VERSION: 06-13
2006 ;
2007 ; AUTHOR: R. BELANGER
2008 ;
2009 ; DATE: 7603.30
2010 ;
2011 ; THIS MODULE CONTAINS:
2012 ;
2013 ; 1) KL10 DIAGNOSTIC FUNCTION CODE
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 49
.DFCOM -- COMMON DIAGNOSTIC FUNCTION ROUTINE 7603.30
2015 .SBTTL .DFCOM -- COMMON DIAGNOSTIC FUNCTION ROUTINE 7603.30
2016
2017 ;+
2018 ; .DFCOM -- COMMON DIAGNOSTIC FUNCTION ROUTINE
2019 ;
2020 ; THIS ROUTINE WILL INPUT A DIAGNOSTIC FUNCTION READ, WRITE, OR
2021 ; EXECUTE CODE AND RETURN IT IN R0, AFTER CHECKING THAT THE KL
2022 ; IS NOT RUNNING, AND SEEING THAT THE FUNCTION CODE IS IN RANGE.
2023 ;
2024 ; INPUT ARGUMENTS:
2025 ;
2026 ; NONE.
2027 ;
2028 ; OUTPUT ARGUMENTS:
2029 ;
2030 ; R0 HOLDS THE FUNCTION CODE.
2031 ;
2032 ; ERROR CODES RETURNED:
2033 ;
2034 ; IFC -- ILLEGAL FUNCTION CODE
2035 ; MRA -- MISSING REQUIRED ARGUMENT.
2036 ;-
2037
2038 000542 .DFCOM::
2039 000542 CALL .CKRUN ; SEE IF THE KL IS RUNNING
000542 004737 000000G JSR PC,.CKRUN
2040 000546 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
2041 000550 005046 CLR -(SP) ; .
2042 000552 005046 CLR -(SP) ; ..
2043 000554 010600 MOV SP,R0 ; ...POINT TO IT
2044 000556 CALL .GTKLN ; ...READ THE FUNCTION CODE
000556 004737 000000G JSR PC,.GTKLN
2045 000562 005760 000004 TST 4(R0) ; ...SEE IF WE HAVE A LEGAL CODE
2046 000566 001026 BNE DFCIFC ; ...NO -- COMPLAIN
2047 000570 005760 000002 TST 2(R0) ; ...
2048 000574 001023 BNE DFCIFC ; ...
2049 000576 105760 000001 TSTB 1(R0) ; ...
2050 000602 001020 BNE DFCIFC ; ...
2051 000604 132710 177740 BITB #^C37,(R0) ; ...IS THIS AN EXECUTE?
2052 000610 001411 BEQ 10$ ; ...NO -- CONTINUE
2053 000612 032737 040000 000000G BIT #KF.RUN,.KLFLG ; ...IS THE KL RUNNING?
2054 000620 001405 BEQ 10$ ; ...NO -- JUST KEEP GOING
2055 000622 013737 000000G 000000G MOV .KLFLG,.SVKLF ; ...SAVE THE CURRENT FLAGS
2056 000630 CALL .KLHLT ; ...HALT THE KL
000630 004737 000000G JSR PC,.KLHLT
2057 000634 10$:
2058 000634 POP R0 ; ...GET THE CODE INTO R0
000634 012600 MOV (SP)+,R0
2059 000636 006300 ASL R0 ; ..TIMES 2
2060 000640 022626 CMP (SP)+,(SP)+ ; ..CLEAR THE STACK
2061 000642 RETURN ; TO CALLER
000642 000207 RTS PC
2062 000644 DFCIFC:
2063 000644 ERROR$ IFC ; ERROR -- ILLEGAL FUNCTION CODE
000644 012746 034463 MOV #^RIFC,-(SP)
000650 104400 TRAP TC.ERR
2064 ;
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 50
.DFRED -- DIAGNOSTIC FUNCTION READ 7602.15
2066 .SBTTL .DFRED -- DIAGNOSTIC FUNCTION READ 7602.15
2067
2068 ;+
2069 ; .DFRED -- DIAGNOSTIC FUNCTION READ
2070 ;
2071 ; THIS ROUTINE WILL EXECUTE A DIAGNOSTIC FUNCTION READ AND DISPLAY
2072 ; THE RESULT ON THE CONSOLE DEVICE.
2073 ;
2074 ; INPUT ARGUMENTS:
2075 ;
2076 ; NONE.
2077 ;
2078 ; OUTPUT ARGUMENTS:
2079 ;
2080 ; NONE.
2081 ;
2082 ; ERROR CODES RETURNED:
2083 ;
2084 ; IFC -- ILLEGAL FUNCTION CODE.
2085 ; FRF -- FUNCTION READ FAILED.
2086 ;-
2087
2088 000652 .DFRED::
2089 000652 CALL .DFCOM ; DO COMMON CODE
000652 004737 000542' JSR PC,.DFCOM
2090 000656 010037 000060' MOV R0,STOPFR ; [5.1014]SAVE START FUNCTION CODE
2091 000662 CALL .CKEOS ; CHECK END OF SYMBOL
000662 004737 000000G JSR PC,.CKEOS
2092 000666 1$: CALL .XFRCK ; SEE THAT WE HAVE A LEGAL READ CODE
000666 004737 001222' JSR PC,.XFRCK
2093 000672 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
2094 000674 005046 CLR -(SP) ; .
2095 000676 005046 CLR -(SP) ; ..
2096 000700 010601 MOV SP,R1 ; ...POINT TO THE BUFFER
2097 000702 PUSH R0 ; ...SAVE THE READ CODE
000702 010046 MOV R0,-(SP)
2098 000704 CALL .FREAD ; ....DO THE READ
000704 004737 000000G JSR PC,.FREAD
2099 000710 012700 000000' MOV #DFRMSG,R0 ; ....MESSAGE POINTER TO R0
2100 000714 CALL .TYMSG ; ....TYPE IT
000714 004737 000000G JSR PC,.TYMSG
2101 000720 011600 MOV (SP),R0 ; ....READ CODE TO R0
2102 000722 006200 ASR R0 ; ....DIVIDED BY 2
2103 000724 CALL .TYP3D ; ....PRINT IT
000724 004737 000000G JSR PC,.TYP3D
2104 000730 CALL .TYSLS ; ....AND A SLASH
000730 004737 000000G JSR PC,.TYSLS
2105 000734 CALL .TYSPC ; ....AND A SPACE
000734 004737 000000G JSR PC,.TYSPC
2106 000740 010100 MOV R1,R0 ; ....POINT TO THE DATA
2107 000742 CALL .TYKLN ; ....PRINT IT
000742 004737 000000G JSR PC,.TYKLN
2108 000746 CALL .TCRLF ; ....END THE LINE
000746 004737 000000G JSR PC,.TCRLF
2109 000752 CALL .RSTKL ; ....RESTART THE KL
000752 004737 000000G JSR PC,.RSTKL
2110 000756 POP R0 ; ....READ CODE INTO R0
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 50-1
.DFRED -- DIAGNOSTIC FUNCTION READ 7602.15
000756 012600 MOV (SP)+,R0
2111 000760 062706 000006 ADD #^D6,SP ; ...CLEAR THE STACK
2112 000764 005737 000062' 5$: TST RNGFR ; [5.1014]IS THIS A RANGE IN PROGRESS?
2113 000770 001406 BEQ 7$ ; [5.1014]NO -- GO ON
2114 000772 020037 000060' CMP R0,STOPFR ; [5.1014]YES -- ARE WE DONE?
2115 000776 001403 BEQ 7$ ; [5.1014]YES -- GO NO
2116 001000 063700 000064' ADD INCFR,R0 ; [5.1014]NO -- NEXT READ
2117 001004 000730 BR 1$ ; [5.1014]DO NEXT READ
2118 001006 005037 000062' 7$: CLR RNGFR ; [5.1014]RANGE DONE
2119 001012 122715 000054 CMPB #',,(R5) ; [5.1014]IS THIS A LIST?
2120 001016 001002 BNE 10$ ; [5.1014]NO -- GO ON
2121 001020 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
2122 001022 000713 BR .DFRED ; [5.1014]DO NEXT
2123 001024 122715 000072 10$: CMPB #':,(R5) ; [5.1014]IS THIS A LIST?
2124 001030 001025 BNE 30$ ; [5.1014]NO -- GO ON
2125 001032 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
2126 001034 CALL .DFCOM ; [5.1014]DO COMMON CODE
001034 004737 000542' JSR PC,.DFCOM
2127 001040 CALL .CKEOS ; [5.1014]CHECK END OF SYMBOL
001040 004737 000000G JSR PC,.CKEOS
2128 001044 005237 000062' INC RNGFR ; [5.1014]SET RANGE ON PROGRESS FLAG
2129 001050 012737 000002 000064' MOV #2,INCFR ; [5.1014]SET FORWARD RANGE DEFAULT
2130 001056 020037 000060' CMP R0,STOPFR ; [5.1014]FORWARD RANGE
2131 001062 003002 BGT 20$ ; [5.1014]YES -- GO ON
2132 001064 005437 000064' NEG INCFR ; [5.1014]NO -- NEGATE INCREMENT
2133 001070 20$: PUSH STOPFR ; [5.1014]SAVE INITIAL FUNCTION READ
001070 013746 000060' MOV STOPFR,-(SP)
2134 001074 010037 000060' MOV R0,STOPFR ; [5.1014]SET STOPFR CODE
2135 001100 POP R0 ; [5.1014]SET R0 TO INITIAL READ
001100 012600 MOV (SP)+,R0
2136 001102 000730 BR 5$ ; [5.1014]DO RANGE INCREMENT
2137 001104 30$: RETURN ; [5.1014]EXIT
001104 000207 RTS PC
2138 ;
2139
2140 000000 .PSECT MESSAG
2141 000000 DFRMSG:
2142 000000 106 122 040 .ASCIZ %FR %
000003 000
2143 000060 .PSECT DATA
2144
2145 000060 000000 STOPFR: .WORD 0 ; [5.1014]FINAL/FIRST FUNCTION READ CODE
2146 000062 000000 RNGFR: .WORD 0 ; [5.1014]RANGE IN PROGRESS FLAG
2147 000064 000000 INCFR: .WORD 0 ; [5.1014]INCREMENT VALUE
2148
2149 001106 .PSECT
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 51
.DFWRT -- DIAGNOSTIC FUNCTION WRITE 7608.20
2151 .SBTTL .DFWRT -- DIAGNOSTIC FUNCTION WRITE 7608.20
2152
2153 ;+
2154 ; .DFWRT -- DIAGNOSTIC FUNCTION WRITE
2155 ;
2156 ; THIS ROUTINE WILL EXECUTE A DIAGNOSTIC FUNCTION WRITE
2157 ;
2158 ; INPUT ARGUMENTS:
2159 ;
2160 ; NONE.
2161 ;
2162 ; OUTPUT ARGUMENTS:
2163 ;
2164 ; NONE.
2165 ;
2166 ; ERROR CODES RETURNED:
2167 ;
2168 ; IFC -- ILLEGAL FUNCTION CODE.
2169 ; FWF -- FUNCTION WRITE FAILED.
2170 ;-
2171
2172 001106 .DFWRT::
2173 001106 CALL .DFCOM ; DO COMMON CODE
001106 004737 000542' JSR PC,.DFCOM
2174 001112 CALL .CKCOL ; CHECK END-OF-SYMBOL
001112 004737 000000G JSR PC,.CKCOL
2175 001116 CALL .XFWCK ; SEE IF WE HAVE A GOOD WRITE CODE
001116 004737 001240' JSR PC,.XFWCK
2176 001122 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
2177 001124 005046 CLR -(SP) ; .
2178 001126 005046 CLR -(SP) ; ..
2179 001130 010601 MOV SP,R1 ; ...SAVE THE BUFFER POINTER
2180 001132 PUSH R0 ; ...SAVE THE WRITE CODE
001132 010046 MOV R0,-(SP)
2181 001134 010100 MOV R1,R0 ; ....POINT TO THE BUFFER
2182 001136 CALL .GTKLN ; ....READ THE DATA
001136 004737 000000G JSR PC,.GTKLN
2183 001142 CALL .CKEOS ; ....CHECK SYMBOL END
001142 004737 000000G JSR PC,.CKEOS
2184 001146 010001 MOV R0,R1 ; ....DATA POINTER TO R1
2185 001150 POP R0 ; ....GET THE WRITE CODE
001150 012600 MOV (SP)+,R0
2186 001152 CALL .FWRIT ; ...DO THE WRITE
001152 004737 000000G JSR PC,.FWRIT
2187 001156 062706 000006 ADD #^D6,SP ; ...RESET THE STACK
2188 001162 CALLR .RSTKL ; RESTORE THE KL AND EXIT
001162 000137 000000G JMP .RSTKL
2189 ;
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 52
.DFXCT -- DIAGNOSTIC FUNCTION EXECUTE 7602.15
2191 .SBTTL .DFXCT -- DIAGNOSTIC FUNCTION EXECUTE 7602.15
2192
2193 ;+
2194 ; .DFXCT -- DIAGNOSTIC FUNCTION EXECUTE
2195 ;
2196 ; THIS SUBROUTINE WILL EXECUTE A DIAGNOSTIC FUNCTION EXECUTE.
2197 ;
2198 ; INPUT ARGUMENTS:
2199 ;
2200 ; NONE.
2201 ;
2202 ; OUTPUT ARGUMENTS:
2203 ;
2204 ; NONE.
2205 ;
2206 ; ERROR CODES RETURNED:
2207 ;
2208 ; IFC -- ILLEGAL FUNCTION CODE.
2209 ; FXF -- FUNCTION EXECUTE FAILED.
2210 ;-
2211
2212 001166 .DFXCT::
2213 001166 CALL .DFCOM ; DO COMMON CODE
001166 004737 000542' JSR PC,.DFCOM
2214 001172 CALL .CKEOS ; CHECK SYMBOL END
001172 004737 000000G JSR PC,.CKEOS
2215 001176 CALL .XFXCK ; CHECK THE FXCT CODE OUT
001176 004737 001256' JSR PC,.XFXCK
2216 001202 CALL .FXCT ; DO THE FUNCTION EXECUTE
001202 004737 000000G JSR PC,.FXCT
2217 001206 122715 000054 CMPB #',,(R5) ; [5.1014]IS THIS A LIST
2218 001212 001002 BNE 10$ ; [5.1014]NO -- GO ON
2219 001214 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
2220 001216 000763 BR .DFXCT ; [5.1014]DO NEXT
2221 001220 10$: RETURN ; [5.1014]EXIT
001220 000207 RTS PC
2222 ;
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 53
.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS 7509.26
2224 .SBTTL .XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS 7509.26
2225
2226 ;+
2227 ; .XFRCK -- SUBROUTINE TO RANGE CHECK FUNCTION READ CODES.
2228 ; .XFWCK -- SUBROUTINE TO RANGE CHECK FUNCTION WRITE CODES.
2229 ; .XFXCK -- SUBROUTINE TO RANGE CHECK FUNCTION EXECUTE CODES.
2230 ;
2231 ; THESE SUBROUTINES RANGE CHECK THE ARGUMENT CODES FOR THE FUNCTION
2232 ; READ, WRITE AND EXECUTE SUBROUTINES.
2233 ;
2234 ; INPUT ARGUMENTS:
2235 ;
2236 ; R0 HOLDS THE FUNCTION CODE TO BE CHECKED
2237 ;
2238 ; OUTPUT ARGUMENTS:
2239 ;
2240 ; NONE.
2241 ;
2242 ; ERROR CODES RETURNED:
2243 ;
2244 ; IFC -- ILLEGAL FUNCTION CODE.
2245 ; OFC -- ODD FUNCTION CODE.
2246 ;-
2247
2248 .ENABL LSB
2249
2250 001222 .XFRCK:: ; HERE TO CHECK FUNCTION READ CODE
2251 001222 020027 000200 CMP R0,#FR.100 ; IS IT .LT. FR.100?
2252 001226 103422 BLO FNCIFC ; NO -- ERROR
2253 001230 020027 000376 CMP R0,#FR.177 ; YES -- IS IT .GT. FR.177?
2254 001234 101017 BHI FNCIFC ; YES -- ERROR
2255 001236 000412 BR 10$ ; NO -- SEE IF IT'S ODD
2256 ;
2257 001240 .XFWCK:: ; HERE TO CHECK FUNCTION WRITE CODE
2258 001240 020027 000100 CMP R0,#FW.040 ; IS IT .LT. FW.040?
2259 001244 103413 BLO FNCIFC ; NO -- ERROR
2260 001246 020027 000176 CMP R0,#FW.LAR ; YES -- IS IT .GT. FW.077?
2261 001252 101010 BHI FNCIFC ; YES -- ERROR
2262 001254 000403 BR 10$ ; NO -- SEE IF IT'S ODD
2263 ;
2264 001256 .XFXCK:: ; HERE TO CHECK FUNCTION EXECUTE CODE
2265 001256 020027 000076 CMP R0,#FX.037 ; IS IT .GT. FX.037?
2266 001262 101004 BHI FNCIFC ; YES -- ERROR
2267 001264 10$:
2268 001264 032700 000001 BIT #BIT00,R0 ; NO -- IS IT ODD?
2269 001270 001004 BNE FNCOFC ; YES -- ERROR
2270 001272 RETURN ; NO -- ALL OK, RETURN TO CALLER
001272 000207 RTS PC
2271 001274 FNCIFC:
2272 001274 ERROR$ IFC ; ERROR -- ILLEGAL FUNCTION CODE
001274 012746 034463 MOV #^RIFC,-(SP)
001300 104400 TRAP TC.ERR
2273 ;
2274 001302 FNCOFC:
2275 001302 ERROR$ OFC ; ERROR -- ODD FUNCTION CODE
001302 012746 057263 MOV #^ROFC,-(SP)
001306 104400 TRAP TC.ERR
DFUNC -- KL10 DIAGNOSTIC FUNCTI MACRO M1113 10-NOV-81 17:48 PAGE 53-1
.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS 7509.26
2276 ;
2277
2278 .DSABL LSB
DISCC -- DISCONNECT COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 55
.XFXCK -- SUBROUTINES TO RANGE CHECK DIAG FUNCTIONS 7509.26
2281 .TITLE DISCC -- DISCONNECT COMMAND MODULE 7702.28
2282
2283 .IDENT "005000"
2284 ;
2285 ; COPYRIGHT (C) 1975, 1979 BY
2286 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2287 ;
2288 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2289 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2290 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2291 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
2292 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2293 ;
2294 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2295 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2296 ; CORPORATION.
2297 ;
2298 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2299 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2300 ;
2301 ; MODULE: DISCONNECT COMMAND
2302 ;
2303 ; VERSION: 05-00
2304 ;
2305 ; AUTHOR: R. BELANGER
2306 ;
2307 ; DATE: 7702.28
2308 ;
2309 ; THIS MODULE CONTAINS:
2310 ;
2311 ; 1) DISCONNECT COMMAND CODE
2312
2313 .MCALL DIR$,RQST$
DISCC -- DISCONNECT COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 56
.DISCC -- THE "DISCONNECT" COMMAND 7702.28
2315 .SBTTL .DISCC -- THE "DISCONNECT" COMMAND 7702.28
2316
2317 ;+
2318 ; .DISCC -- THE "DISCONNECT" COMMAND
2319 ;
2320 ; THIS SUBROUTINE CHECKS THE SYNTAX OF THE "DISCONNECT" COMMAND
2321 ; AND REQUESTS THE KLINIK DISCONNECT TASK, "KLDISC". THE KLINIK DISCONNECT
2322 ; TASK WILL THEN DISCONNECT THE KLINIK LINE, LOG THE DISCONNECT AND
2323 ; RETURN THE THE RSX20F COMMAND PARSER.
2324 ;
2325 ; INPUT ARGUMENTS:
2326 ;
2327 ; NONE.
2328 ;
2329 ; OUTPUT ARGUMENTS:
2330 ;
2331 ; NONE.
2332 ;
2333 ; ERROR CODES RETURNED:
2334 ;
2335 ; NONE.
2336 ;-
2337
2338 001310 .DISCC::
2339 001310 CALL .CKEOC ; MUST HAVE E-O-C
001310 004737 000000G JSR PC,.CKEOC
2340 001314 112737 000003 000001G MOVB #3,.KLNSW+1 ; FLAG DISCONNECT
2342 001322 DIR$ #RQSKLD ; REQUEST DISCONNECT TASK
001322 012746 000000' MOV #RQSKLD,-(SP)
001326 104375 EMT 375
2344 001330 CALLR .EXITP ; GO AWAY FOR NOW
001330 000137 000000G JMP .EXITP
2345 ;
2346
2347 000000 .PSECT DPBS
2348
2349 000000 RQSKLD:
2350 000000 RQST$ KLDISC,,10
000000 013 007 .BYTE 11.,7
000002 043244 035473 .RAD50 /KLDISC/
000006 000000 000000 .WORD 0,0
000012 000010 .WORD 10
000014 000 000 .BYTE ,
2351
2352 001334 .PSECT
2353 .TITLE EDELE -- DEPOSIT / EXAMINE ELEVEN COMMAND MODULE 7603.30
2354
2355 .IDENT "006130"
2356
2357 ;
2358 ; COPYRIGHT (C) 1975, 1979 BY
2359 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2360 ;
2361 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2362 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2363 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2364 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 56-1
.DISCC -- THE "DISCONNECT" COMMAND 7702.28
2365 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2366 ;
2367 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2368 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2369 ; CORPORATION.
2370 ;
2371 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2372 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2373 ;
2374 ; MODULE: DEPOSIT / EXAMINE ELEVEN COMMAND
2375 ;
2376 ; VERSION: 06-13
2377 ;
2378 ; AUTHOR: R. BELANGER
2379 ;
2380 ; DATE: 7603.30
2381 ;
2382 ; THIS MODULE CONTAINS:
2383 ;
2384 ; 1) DEPOSIT / EXAMINE ELEVEN COMMAND CODE
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 57
.DPOSE -- THE "DEPOSIT <ELEVEN>" COMMAND 7602.29
2386 .SBTTL .DPOSE -- THE "DEPOSIT <ELEVEN>" COMMAND 7602.29
2387
2388 ;+
2389 ; .DPOSE -- THE "DEPOSIT <ELEVEN>" COMMAND.
2390 ;
2391 ; THIS SUBROUTINE WILL DEPOSIT THE DATA SPECIFIED INTO THE PDP-11
2392 ; ADDRESS SPECIFIED.
2393 ;
2394 ; INPUT ARGUMENTS:
2395 ;
2396 ; NONE.
2397 ;
2398 ; OUTPUT ARGUMENTS:
2399 ;
2400 ; THE PDP-11 ADDRESS DEPOSITED IS IN ".EDELA"
2401 ; THE DATA DEPOSITED IS IN ".ELDDW".
2402 ;
2403 ; ERROR CODES RETURNED:
2404 ;
2405 ; NONE.
2406 ;-
2407
2408 001334 .DPOSE::
2409 001334 CALL .CKARG ; SEE IF WE HAVE AN ARGUMENT
001334 004737 000000G JSR PC,.CKARG
2410 001340 002406 BLT 10$ ; NUMERIC -- GO AROUND TABLE SCAN
2411 001342 012700 000000G MOV #.DPETB,R0 ; DEPOSIT EXTENSION TABLE POINTER TO R0
2412 001346 CALL .TSCAN ; SCAN IT
001346 004737 000000G JSR PC,.TSCAN
2413 001352 CALLR @2(R0) ; DISPATCH FOR IT
001352 000170 000002 JMP @2(R0)
2414 ;
2415 001356 10$:
2416 001356 CALL .GTELN ; READ THE ADDRESS
001356 004737 000000G JSR PC,.GTELN
2417
2418 001362 032700 000001 BIT #BIT00,R0 ; IS IT ODD?
2419 001366 001050 BNE DPOOAI ; YES -- GIVE "OAI" ERROR
2420 001370 PUSH R0 ; NO -- SAVE IT
001370 010046 MOV R0,-(SP)
2421 001372 CALL .CKCOL ; .CHECK SEPARATOR
001372 004737 000000G JSR PC,.CKCOL
2422 001376 CALL .GTELN ; .READ THE DATA
001376 004737 000000G JSR PC,.GTELN
2423 001402 010001 MOV R0,R1 ; .DATA TO R1
2424 001404 POP R0 ; .ADDRESS TO R0
001404 012600 MOV (SP)+,R0
2425
2426 ; [CONTINUED ON THE FOLLOWING PAGE]
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 58
.DPOSE -- THE "DEPOSIT <ELEVEN>" COMMAND 7602.29
2428 ; [CONTINUED FROM THE PREVIOUS PAGE]
2429
2430 001406 .DPSEE:: ; EXTENDED DEPOSIT ENTRY POINT
2431 001406 CALL .CKEOC ; CHECK FOR E-O-C
001406 004737 000000G JSR PC,.CKEOC
2432 001412 032700 000001 BIT #BIT00,R0 ; IS THE ADDRESS ODD?
2433 001416 001034 BNE DPOOAI ; YES -- GIVE "OAI" ERROR
2434 001420 PUSH R0 ; NO -- SAVE THE ADDRESS
001420 010046 MOV R0,-(SP)
2435 001422 PUSH R1 ; .AND THE DEPOSIT DATA
001422 010146 MOV R1,-(SP)
2436 001424 010037 000000G MOV R0,.EDELA ; ..LEAVE TRACKS
2437 001430 010137 000000G MOV R1,.ELDDW ; ..MORE TRACKS
2438 001434 013737 000000G 000000G MOV .TRP4V,.SSTTB ; ..SET UP TRAP AT 4 TRAP
2439 001442 011001 MOV (R0),R1 ; ..READ ORIGINAL CONTENTS
2440 001444 CALL .TYELA ; ..PRINT THE ADDRESS
001444 004737 000000G JSR PC,.TYELA
2441 001450 112700 000134 MOVB #'\,R0 ; ..BACK SLASH
2442 001454 CALL .TYCHR ; ..PRINT IT
001454 004737 000000G JSR PC,.TYCHR
2443 001460 CALL .TYSPC ; ..AND A SPACE
001460 004737 000000G JSR PC,.TYSPC
2444 001464 010100 MOV R1,R0 ; ..DATA TO R0
2445 001466 CALL .TYELN ; ..PRINT THAT
001466 004737 000000G JSR PC,.TYELN
2446 001472 POP R1 ; ..RESTORE DATA
001472 012601 MOV (SP)+,R1
2447 001474 POP R0 ; .AND ADDRESS
001474 012600 MOV (SP)+,R0
2448 001476 010110 MOV R1,(R0) ; DO THE DEPOSIT
2449 001500 005037 000000G CLR .SSTTB ; RESET TRAP AT 4 TRAP
2450 001504 CALLR .TCRLF ; TO CALLER
001504 000137 000000G JMP .TCRLF
2451 ;
2452 001510 DPOOAI:
2453 001510 ERROR$ OAI ; ERROR -- ODD ADDRESS ILLEGAL
001510 012746 056761 MOV #^ROAI,-(SP)
001514 104400 TRAP TC.ERR
2454 ;
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 59
.DPEWD -- THE "DEPOSIT <ELEVEN> <NUMERICAL OBJECT>" COMMAND 76
2456 .SBTTL .DPEWD -- THE "DEPOSIT <ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
2457
2458 .ENABL LSB
2459
2460 001516 .DPEWT:: ; DEPOSIT <ELEVEN> THIS
2461 001516 013700 000000G MOV .EDELA,R0 ; ADDRESS TO R0
2462 001522 000413 BR 10$ ; CHECK FOR ARGUMENTS
2463 ;
2464 001524 .DPEWD:: ; DEPOSIT <ELEVEN> DECREMENT
2465 001524 CALL .EDEWD ; DECREMENT THE ADDRESS
001524 004737 000370' JSR PC,.EDEWD
2466 001530 000410 BR 10$ ; EXIT THRU COMMON CODE
2467 ;
2468 001532 .DPEWI:: ; DEPOSIT <ELEVEN> INCREMENT
2469 001532 CALL .EDEWI ; INCREMENT THE ADDRESS
001532 004737 000402' JSR PC,.EDEWI
2470 001536 000405 BR 10$ ; EXIT THRU COMMON CODE
2471 ;
2472 001540 .DPEWN:: ; DEPOSIT <ELEVEN> NEXT
2473 001540 CALL .EDEWN ; GET THE NEXT ADDRESS
001540 004737 000402' JSR PC,.EDEWN
2474 001544 000402 BR 10$ ; EXIT THRU COMMON CODE
2475 ;
2476 001546 .DPEWP:: ; DEPOSIT <ELEVEN> PREVIOUS
2477 001546 CALL .EDEWP ; GET THE PREVIOUS ADDRESS
001546 004737 000370' JSR PC,.EDEWP
2478 001552 10$:
2479 001552 122715 000075 CMPB #'=,(R5) ; DOES AN ARGUMENT FOLLOW?
2480 001556 001403 BEQ 20$ ; YES -- GO GET IT
2481 001560 013701 000000G MOV .ELDDW,R1 ; NO -- USE OLD DATA
2482 001564 000710 BR .DPSEE ; AND DO THE DEPOSIT
2483 ;
2484 001566 20$:
2485 001566 105725 TSTB (R5)+ ; GET OVER THE COLON
2486 001570 PUSH R0 ; SAVE THE ADDRESS
001570 010046 MOV R0,-(SP)
2487 001572 CALL .GTELN ; .READ THE DATA
001572 004737 000000G JSR PC,.GTELN
2488 001576 010001 MOV R0,R1 ; .DATA TO R1
2489 001600 POP R0 ; .ADDRESS TO R0
001600 012600 MOV (SP)+,R0
2490 001602 000701 BR .DPSEE ; DO THE DEPOSIT
2491 ;
2492
2493 .DSABL LSB
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 60
.EXAME -- THE "EXAMINE <ELEVEN>" COMMAND 7602.29
2495 .SBTTL .EXAME -- THE "EXAMINE <ELEVEN>" COMMAND 7602.29
2496
2497 ;+
2498 ; .EXAME -- THE "EXAMINE <ELEVEN> COMMAND.
2499 ;
2500 ; THIS ROUTINE WILL EXAMINE AND DISPLAY THE CONTEN OF ONE PDP-11
2501 ; ELEVEN MEMORY LOCATION ON THE CONSOLE DEVICE.
2502 ;
2503 ; INPUT ARGUMENTS:
2504 ;
2505 ; NONE.
2506 ;
2507 ; OUTPUT ARGUMENTS:
2508 ;
2509 ; THE ADDRESS EXAMINED IS IN ".EDELA"
2510 ; THE EXAMINED DATA IS IN ".ELEDW"
2511 ;
2512 ; ERROR CODES RETURNED:
2513 ;
2514 ; NONE.
2515 ;-
2516
2517 001604 .EXAME::
2518 001604 CALL .CKARG ; SEE IF WE HAVE AN ARGUMENT
001604 004737 000000G JSR PC,.CKARG
2519 001610 002406 BLT 10$ ; NUMERIC -- GO AROUND TABLE SCAN
2520 001612 012700 000000G MOV #.EXETB,R0 ; EXTENSION TABLE POINTER TO R0
2521 001616 CALL .TSCAN ; SCAN IT
001616 004737 000000G JSR PC,.TSCAN
2522 001622 CALLR @2(R0) ; DO WHAT IS SAYS TO
001622 000170 000002 JMP @2(R0)
2523 ;
2524 001626 10$:
2525 001626 CALL .GTELN ; READ THE ADDRESS
001626 004737 000000G JSR PC,.GTELN
2526
2527 ; [CONTINUED ON THE FOLLOWING PAGE]
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 61
.EXAME -- THE "EXAMINE <ELEVEN>" COMMAND 7602.29
2529 ; [CONTINUED FROM THE PREVIOUS PAGE]
2530
2531 001632 .EXMEE:: ; EXTENDED EXAMINE ENTRY POINT
2532 001632 010037 000066' MOV R0,STOPEX ; [5.1014]SAVE INITIAL ADDRESS
2533 001636 CALL .CKEOC ; CHECK FOR E-O-C
001636 004737 000000G JSR PC,.CKEOC
2534 001642 032700 000001 1$: BIT #BIT00,R0 ; IS IT ODD?
2535 001646 001101 BNE EXAOAI ; YES -- GIVE "OAI" ERROR
2536 001650 013737 000000G 000000G MOV .TRP4V,.SSTTB ; SET UP TRAP AT 4 TRAP
2537 001656 010037 000000G MOV R0,.EDELA ; .LEAVE SOME TRACKS
2538 001662 011001 MOV (R0),R1 ; DO THE EXAMINE
2539 001664 PUSH R0 ; [5.1014]SAVE CURRENT ADDRESS
001664 010046 MOV R0,-(SP)
2540 001666 005037 000000G CLR .SSTTB ; RESET TRAP AT 4 TRAP
2541 001672 010137 000000G MOV R1,.ELEDW ; MORE TRACKS
2542 001676 CALL .TYELA ; TYPE THE ADDRESS
001676 004737 000000G JSR PC,.TYELA
2543 001702 112700 000134 MOVB #'\,R0 ; BACKSLASH
2544 001706 CALL .TYCHR ; TYPE IT
001706 004737 000000G JSR PC,.TYCHR
2545 001712 CALL .TYSPC ; AND A SPACE
001712 004737 000000G JSR PC,.TYSPC
2546 001716 010100 MOV R1,R0 ; DATA TO R0
2547 001720 CALL .TYELN ; TYPE THAT
001720 004737 000000G JSR PC,.TYELN
2548 001724 CALL .TCRLF ; END THE LINE
001724 004737 000000G JSR PC,.TCRLF
2549 001730 5$: POP R0 ; [5.1014]RESTORE ADDRESS
001730 012600 MOV (SP)+,R0
2550 001732 005737 000070' TST RNGEX ; [5.1014]RANGE IN PROGRESS?
2551 001736 001406 BEQ 7$ ; [5.1014]NO -- GO ON
2552 001740 020037 000066' CMP R0,STOPEX ; [5.1014]YES -- DONE?
2553 001744 001403 BEQ 7$ ; [5.1014]YES -- GO ON
2554 001746 063700 000072' ADD INCEX,R0 ; [5.1014]NO -- NEXT ADDRESS
2555 001752 000733 BR 1$ ; [5.1014]DO EXAMINE
2556 001754 005037 000070' 7$: CLR RNGEX ; [5.1014]CLEAR RANGE IN PROGRESS
2557 001760 122715 000054 CMPB #',,(R5) ; [5.1014]IS THIS A LIST?
2558 001764 001002 BNE 20$ ; [5.1014]NO -- GO NO
2559 001766 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
2560 001770 000705 BR .EXAME ; [5.1014]DO NEXT
2561 001772 122715 000072 20$: CMPB #':,(R5) ; [5.1014]IS THIS A RANGE?
2562 001776 001024 BNE 40$ ; [5.1014]NO -- EXIT
2563 002000 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COLON
2564 002002 CALL .GTELN ; [5.1014]GET FINAL ADDRESS
002002 004737 000000G JSR PC,.GTELN
2565 002006 CALL .CKEOC ; [5.1014]CHECK END OF COMMAND
002006 004737 000000G JSR PC,.CKEOC
2566 002012 005237 000070' INC RNGEX ; [5.1014]SET RANGE IN PROGRESS
2567 002016 012737 000002 000072' MOV #2,INCEX ; [5.1014]SET FORWARD INCREMENT
2568 002024 020037 000066' CMP R0,STOPEX ; [5.1014]FORWARD INCREMENT?
2569 002030 003002 BGT 30$ ; [5.1014]YES -- GO ON
2570 002032 005437 000072' NEG INCEX ; [5.1014]NO -- NEGATE INCREMENT
2571 002036 30$: PUSH STOPEX ; [5.1014]SAVE INITIAL ADDRESS
002036 013746 000066' MOV STOPEX,-(SP)
2572 002042 010037 000066' MOV R0,STOPEX ; [5.1014]SET FINAL VALUE
2573 002046 000730 BR 5$ ; [5.1014]DO RANGE INCREMENT
2574 002050 40$: RETURN ; [5.1014]DONE
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 61-1
.EXAME -- THE "EXAMINE <ELEVEN>" COMMAND 7602.29
002050 000207 RTS PC
2575 ;
2576 002052 EXAOAI:
2577 002052 ERROR$ OAI ; ERROR -- ODD ADDRESS ILLEGAL
002052 012746 056761 MOV #^ROAI,-(SP)
002056 104400 TRAP TC.ERR
2578 ;
2579
2580 000066 .PSECT DATA
2581
2582 000066 000000 STOPEX: .WORD 0 ; [5.1014]FINAL/FIRST EXAMINE ADDRESS
2583 000070 000000 RNGEX: .WORD 0 ; [5.1014]RANGE IN PROGRESS FLAG
2584 000072 000000 INCEX: .WORD 0 ; [5.1014]INCREMENT VALUE
2585
2586 002060 .PSECT
EDELE -- DEPOSIT / EXAMINE ELEV MACRO M1113 10-NOV-81 17:48 PAGE 62
.EXEWD -- THE "EXAMINE <ELEVEN> <NUMERICAL OBJECT>" COMMAND 76
2588 .SBTTL .EXEWD -- THE "EXAMINE <ELEVEN> <NUMERICAL OBJECT>" COMMAND 7602.29
2589
2590 .ENABL LSB
2591
2592 002060 .EXEWT:: ; EXAMINE <ELEVEN> THIS
2593 002060 013700 000000G MOV .EDELA,R0 ; ADDRESS TO R0
2594 002064 000662 BR .EXMEE ; DO THE EXAMINE
2595 ;
2596 002066 .EXEWD:: ; EXAMINE <ELEVEN> DECREMENT
2597 002066 CALL .EDEWD ; DECREMENT IT
002066 004737 000370' JSR PC,.EDEWD
2598 002072 000657 BR .EXMEE ; DO THE EXAMINE
2599 ;
2600 002074 .EXEWI:: ; EXAMINE <ELEVEN> INCREMENT
2601 002074 CALL .EDEWI ; INCREMENT IT
002074 004737 000402' JSR PC,.EDEWI
2602 002100 000654 BR .EXMEE ; DO THE EXAMINE
2603 ;
2604 002102 .EXEWN:: ; EXAMINE <ELEVEN> NEXT
2605 002102 CALL .EDEWN ; GET THE NEXT ADDRESS
002102 004737 000402' JSR PC,.EDEWN
2606 002106 000651 BR .EXMEE ; DO THE EXAMINE
2607 ;
2608 002110 .EXEWP:: ; EXAMINE <ELEVEN> PREVIOUS
2609 002110 CALL .EDEWP ; GET THE PREVIOUS ADDRESS
002110 004737 000370' JSR PC,.EDEWP
2610 002114 000646 BR .EXMEE ; DO THE EXAMINE
2611 ;
2612
2613 .DSABL LSB
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 64
.EXEWD -- THE "EXAMINE <ELEVEN> <NUMERICAL OBJECT>" COMMAND 76
2616 .TITLE EDTEN -- DEPOSIT / EXAMINE TEN COMMAND MODULE 7603.21
2617
2618 .IDENT "006130"
2619
2620 ;
2621 ; COPYRIGHT (C) 1975, 1979 BY
2622 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
2623 ;
2624 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
2625 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
2626 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
2627 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
2628 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
2629 ;
2630 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
2631 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
2632 ; CORPORATION.
2633 ;
2634 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
2635 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
2636 ;
2637 ; MODULE: DEPOSIT / EXAMINE TEN COMMAND
2638 ;
2639 ; VERSION: 06-13
2640 ;
2641 ; AUTHOR: R. BELANGER
2642 ;
2643 ; DATE: 7603.21
2644 ;
2645 ; THIS MODULE CONTAINS:
2646 ;
2647 ; 1) DEPOSIT / EXAMINE TEN COMMAND CODE
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 65
.DEPAR -- THE "DEPOSIT AR" COMMAND 7603.21
2649 .SBTTL .DEPAR -- THE "DEPOSIT AR" COMMAND 7603.21
2650
2651 ;+
2652 ; .DEPAR -- THE "DEPOSIT AR" COMMAND.
2653 ;
2654 ; THIS ROUTINE WILL DEPOSIT THE DATA SPECIFIED INTO THE KL AR REGISTER.
2655 ;
2656 ; INPUT ARGUMENTS:
2657 ;
2658 ; NONE.
2659 ;
2660 ; OUTPUT ARGUMENTS:
2661 ;
2662 ; NONE.
2663 ;
2664 ; ERROR CODES RETURNED:
2665 ;
2666 ; NONE.
2667 ;-
2668
2669 002116 .DEPAR::
2670 002116 CALL .CKRUN ; SEE IF THE KL IS RUNNING
002116 004737 000000G JSR PC,.CKRUN
2671 002122 CALL .CKCOL ; CHECK FOR A COLON
002122 004737 000000G JSR PC,.CKCOL
2672 002126 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
2673 002130 005046 CLR -(SP) ; .
2674 002132 005046 CLR -(SP) ; ..
2675 002134 010600 MOV SP,R0 ; ...POINT TO IT
2676 002136 CALL .GTNUM ; ...READ A NUMBER
002136 004737 000000G JSR PC,.GTNUM
2677 002142 CALL .CKEOC ; ...CHECK FOR E-O-C
002142 004737 000000G JSR PC,.CKEOC
2678 002146 PUSH .KLFLG ; ...SAVE ".KLFLG"
002146 013746 000000G MOV .KLFLG,-(SP)
2679 002152 032716 100000 BIT #KF.CLK,(SP) ; ....IS THE CLOCK RUNNING?
2680 002156 001402 BEQ 10$ ; ....NO -- GO ON
2681 002160 CALL .KLHLT ; ....STOP THE KL - DEAD
002160 004737 000000G JSR PC,.KLHLT
2682 002164 10$:
2683 002164 010001 MOV R0,R1 ; ....DATA POINTER TO R1
2684 002166 CALL .WRTAR ; ....WRITE THE AR
002166 004737 000000G JSR PC,.WRTAR
2685 002172 POP .SVKLF ; ....SET UP ".SVKLF"
002172 012637 000000G MOV (SP)+,.SVKLF
2686 002176 062706 000006 ADD #^D6,SP ; ...RESET THE STACK
2687 002202 CALLR .KLRST ; RESTART THE KL AND EXIT
002202 000137 000000G JMP .KLRST
2688 ;
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 66
.DPOST -- THE "DEPOSIT <TEN>" COMMAND 7602.15
2690 .SBTTL .DPOST -- THE "DEPOSIT <TEN>" COMMAND 7602.15
2691
2692 ;+
2693 ; .DPOST -- THE "DEPOSIT <TEN>" COMMAND.
2694 ;
2695 ; THIS SUBROUTINE WILL DEPOSIT THE DATA SPECIFIED INTO THE DESIRED
2696 ; KL MEMORY LOCATION.
2697 ;
2698 ; INPUT ARGUMENTS:
2699 ;
2700 ; NONE.
2701 ;
2702 ; OUTPUT ARGUMENTS:
2703 ;
2704 ; THE ADDRESS DEPOSITED IS IN ".EDKLA"
2705 ; THE DATA DEPOSITED IS IN ".DPBFR"
2706 ;
2707 ; ERROR CODES RETURNED:
2708 ;
2709 ; APE -- KL APR ERROR
2710 ; DMF -- DEPOSIT KL MEMORY FAILED
2711 ; ESD -- EBOX STOPPED - DEPOSIT
2712 ; KLA -- KL ADDRESS ERROR
2713 ; KCN -- KL CLOCK NOT RUNNING
2714 ; MRA -- MISSING REQUIRED ARGUMENT
2715 ; NOR -- NUMBER OUT OF RANGE.
2716 ; VFY -- VERIFY FAILED
2717 ;-
2718
2719 002206 .DPOST::
2720 002206 CALL .CKARG ; SEE IF AN ARGUMENT FOLLOWS
002206 004737 000000G JSR PC,.CKARG
2721 002212 002406 BLT 10$ ; NUMERIC -- GO AROUND TABLE SCAN
2722 002214 012700 000000G MOV #.DPETB,R0 ; EXTENSION TABLE POINTER TO R0
2723 002220 CALL .TSCAN ; SCAN IT
002220 004737 000000G JSR PC,.TSCAN
2724 002224 CALLR @2(R0) ; DO WHAT IT SAYS TO
002224 000170 000002 JMP @2(R0)
2725 ;
2726 002230 10$:
2727 002230 012700 000000G MOV #.EDKLX,R0 ; ADDRESS POINTER TO R0
2728 002234 CALL .GTKLA ; READ THE ADDRESS
002234 004737 000000G JSR PC,.GTKLA
2729 002240 CALL .CKCOL ; CHECK FOR A COLON
002240 004737 000000G JSR PC,.CKCOL
2730 002244 010001 MOV R0,R1 ; GOT IT, SAVE THE POINTER
2731 002246 012700 000000G MOV #.DPBFX,R0 ; DATA POINTER TO R0
2732 002252 CALL .GTKLN ; READ THE DATA
002252 004737 000000G JSR PC,.GTKLN
2733
2734 ; [CONTINUED ON THE FOLLOWING PAGE]
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 67
.DPOST -- THE "DEPOSIT <TEN>" COMMAND 7602.15
2736 ; [CONTINUED FROM THE PREVIOUS PAGE]
2737
2738 002256 .DPSTE:: ; EXTENDED DEPOSIT ENTRY POINT
2739 002256 CALL .CKEOC ; CHECK E-O-C CHARACTER
002256 004737 000000G JSR PC,.CKEOC
2740 002262 032737 100000 000000G BIT #KF.CLK,.KLFLG ; IS THE CLOCK RUNNING?
2741 002270 001510 BEQ DPOKCN ; NO -- GIVE "KCN" ERROR
2742 002272 012702 000000G MOV #.EDKLA,R2 ; ADDRESS BUFFER POINTER TO R2
2743 002276 012122 MOV (R1)+,(R2)+ ; LOAD THE NEW ADDRESS
2744 002300 012122 MOV (R1)+,(R2)+ ; INTO THE ADDRESS BUFFER
2745 002302 011112 MOV (R1),(R2) ; SO
2746 002304 024242 CMP -(R2),-(R2) ; BACK THE POINTER UP
2747 002306 010201 MOV R2,R1 ; PUT IT IN R1
2748 002310 012702 000000G MOV #.DPBFR,R2 ; DEPOSIT DATA POINTER TO R2
2749 002314 012022 MOV (R0)+,(R2)+ ; LOAD THE NEW DATA
2750 002316 012022 MOV (R0)+,(R2)+ ; INTO THE DEPOSIT DATA BUFFER
2751 002320 011012 MOV (R0),(R2) ; SO
2752 002322 024242 CMP -(R2),-(R2) ; BACK THE POINTER UP
2753 002324 PUSH R2 ; SAVE THE DATA POINTER
002324 010246 MOV R2,-(SP)
2754 002326 PUSH R1 ; .AND THE ADDRESS POINTER
002326 010146 MOV R1,-(SP)
2755 002330 010600 MOV SP,R0 ; ..SAVE THE POINTER TO THE BLOCK
2756 002332 PUSH R0 ; ..SO
002332 010046 MOV R0,-(SP)
2757 002334 PUSH #.EXBFR ; ...POINT TO EXAMINE BUFFER
002334 012746 000000G MOV #.EXBFR,-(SP)
2758 002340 PUSH R1 ; ....FOR THIS ADDRESS
002340 010146 MOV R1,-(SP)
2759 002342 010601 MOV SP,R1 ; .....POINT TO THE BLOCK
2760 002344 012700 000200 MOV #ED.PHY,R0 ; .....PHYSICAL REFERENCE
2761 002350 CALL .EXKLM ; .....EXAMINE IT FIRST
002350 004737 000000G JSR PC,.EXKLM
2762 002354 POP R0 ; .....GET THE ADDRESS POINTER
002354 012600 MOV (SP)+,R0
2763 002356 CALL .TYKLA ; ....PRINT IT
002356 004737 000000G JSR PC,.TYKLA
2764 002362 CALL .TYSLS ; ....AND A <SLASH>
002362 004737 000000G JSR PC,.TYSLS
2765 002366 CALL .TYSPC ; ....NOW A <SPACE>
002366 004737 000000G JSR PC,.TYSPC
2766 002372 POP R0 ; ....GET THE DATA POINTER
002372 012600 MOV (SP)+,R0
2767 002374 CALL .TYKLN ; ...TYPE THE DATA
002374 004737 000000G JSR PC,.TYKLN
2768 002400 CALL .TCRLF ; ...AND A <CRLF>
002400 004737 000000G JSR PC,.TCRLF
2769
2770 ; [CONTINUED ON THE FOLLOWING PAGE]
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 68
.DPOST -- THE "DEPOSIT <TEN>" COMMAND 7602.15
2772 ; [CONTINUED FROM THE PREVIOUS PAGE]
2773
2774 002404 POP R1 ; ...POINT TO THE DEPOSIT BLOCK
002404 012601 MOV (SP)+,R1
2775 002406 012700 000200 MOV #ED.PHY,R0 ; ..PHYSICAL REFERENCE
2776 002412 CALL .DPKLM ; ..DO THE DEPOSIT
002412 004737 000000G JSR PC,.DPKLM
2777 002416 005737 000000G TST .VFYFL ; ..VERIFY THE DEPOSIT?
2778 002422 001426 BEQ 20$ ; ..NO -- JUST EXIT
2779 002424 012766 000000G 000002 MOV #.EXBFR,2(SP) ; ..YES -- CHANGE THE BUFFER POINTER
2780 002432 012700 000200 MOV #ED.PHY,R0 ; ..PHYSICAL REFERENCE
2781 002436 CALL .EXKLM ; ..EXAMINE IT
002436 004737 000000G JSR PC,.EXKLM
2782 002442 012700 000000G MOV #.DPBFR,R0 ; ..DEPOSITED DATA
2783 002446 012701 000000G MOV #.EXBFR,R1 ; ..EXAMINED DATA
2784 002452 CALL .TPCMP ; ..SEE IF THEY COMPARE
002452 004737 000000G JSR PC,.TPCMP
2785 002456 001020 BNE DPOVFE ; ..NO -- COMPLAIN
2786 002460 CALL .STPKL ; ..STOP THE KL
002460 004737 000000G JSR PC,.STPKL
2787 002464 CALL .RDAPR ; ..SEE IF THERE ARE ANY APR ERRORS
002464 004737 003236' JSR PC,.RDAPR
2788 002470 CALL .RSTKL ; ..RESTART THE KL
002470 004737 000000G JSR PC,.RSTKL
2789 002474 005700 TST R0 ; ..ARE THERE ANY ERRORS?
2790 002476 001002 BNE DPOAPE ; ..YES -- COMPLAIN
2791 002500 20$:
2792 002500 022626 CMP (SP)+,(SP)+ ; ..CLEAR THE STACK
2793 002502 RETURN ; TO CALLER
002502 000207 RTS PC
2794 002504 DPOAPE:
2795 002504 ERROR$ APE ; ERROR -- KL APR ERROR
002504 012746 004305 MOV #^RAPE,-(SP)
002510 104400 TRAP TC.ERR
2796 ;
2797 002512 DPOKCN:
2798 002512 ERROR$ KCN ; ERROR -- KL CLOCK NOT RUNNING
002512 012746 042506 MOV #^RKCN,-(SP)
002516 104400 TRAP TC.ERR
2799 ;
2800 002520 DPOVFE:
2801 002520 ERROR$ VFY ; ERROR -- VERIFY FAILED
002520 012746 105211 MOV #^RVFY,-(SP)
002524 104400 TRAP TC.ERR
2802 ;
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 69
.DPKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7602.
2804 .SBTTL .DPKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7602.29
2805
2806 .ENABL LSB
2807
2808 002526 .DPKLT:: ; DEPOSIT <TEN> THIS
2809 002526 012700 000000G MOV #.EDKLX,R0 ; ADDRESS POINTER TO R0
2810 002532 000413 BR 10$ ; CHECK FOR ARGUMENTS
2811 ;
2812 002534 .DPKLD:: ; DEPOSIT <TEN> DECREMENT
2813 002534 CALL .EDKLD ; DO THE DECREMENT
002534 004737 000440' JSR PC,.EDKLD
2814 002540 000410 BR 10$ ; EXIT THRU COMMON CODE
2815 ;
2816 002542 .DPKLI:: ; DEPOSIT <TEN> INCREMENT
2817 002542 CALL .EDKLI ; DO THE INCREMENT
002542 004737 000456' JSR PC,.EDKLI
2818 002546 000405 BR 10$ ; EXIT THRU COMMON CODE
2819 ;
2820 002550 .DPKLN:: ; DEPOSIT <TEN> NEXT
2821 002550 CALL .EDKLN ; GO GET NEXT ADDRESS
002550 004737 000426' JSR PC,.EDKLN
2822 002554 000402 BR 10$ ; EXIT THRU COMMON CODE
2823 ;
2824 002556 .DPKLP:: ; DEPOSIT <TEN> PREVIOUS
2825 002556 CALL .EDKLP ; GO GET PREVIOUS ADDRESS
002556 004737 000414' JSR PC,.EDKLP
2826 002562 10$:
2827 002562 010001 MOV R0,R1 ; ADDRESS POINTER TO R1
2828 002564 122715 000075 CMPB #'=,(R5) ; IS THERE AN ARGUMENT FOLLOWING?
2829 002570 001403 BEQ 20$ ; YES -- GO GET IT
2830 002572 012700 000000G MOV #.DPBFX,R0 ; NO -- USE OLD DATA
2831 002576 000627 BR .DPSTE ; AND DO THE DEPOSIT
2832 ;
2833 002600 20$:
2834 002600 105725 TSTB (R5)+ ; GET OVER THE COLON
2835 002602 012700 000000G MOV #.DPBFX,R0 ; POINT TO THE DATA BUFFER
2836 002606 CALL .GTKLN ; GET A NUMBER
002606 004737 000000G JSR PC,.GTKLN
2837 002612 000621 BR .DPSTE ; DO THE DEPOSIT
2838 ;
2839
2840 .DSABL LSB
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 70
.EXAMT -- THE "EXAMINE <TEN>" COMMAND 7602.05
2842 .SBTTL .EXAMT -- THE "EXAMINE <TEN>" COMMAND 7602.05
2843
2844 ;+
2845 ; .EXAMT -- THE "EXAMINE <TEN>" COMMAND.
2846 ;
2847 ; THIS SUBROUTINE READS A KL ADDRESS, EXAMINES THAT ADDRESS,
2848 ; AND PRINTS THE CONTENT OF THAT ADDRESS.
2849 ;
2850 ; INPUT ARGUMENTS:
2851 ;
2852 ; NONE.
2853 ;
2854 ; OUTPUT ARGUMENTS:
2855 ;
2856 ; NONE.
2857 ;
2858 ; ERROR CODES RETURNED:
2859 ;
2860 ; EMF -- EXAMINE MEMORY FAILED.
2861 ; ESE -- EBOX STOPPED - EXAMINE
2862 ; KLA -- KL ADDRESS ERROR
2863 ; KCN -- KL CLOCK NOT RUNNING
2864 ; MRA -- MISSING REQUIRED ARGUMENT
2865 ;-
2866
2867 002614 .EXAMT::
2868 002614 CALL .CKARG ; SEE IF WE HAVE AN ARGUMENT
002614 004737 000000G JSR PC,.CKARG
2869 002620 002406 BLT 10$ ; NUMERIC -- GO AROUND TABLE SCAN
2870 002622 012700 000000G MOV #.EXETB,R0 ; EXTENSION TABLE POINTER TO R0
2871 002626 CALL .TSCAN ; SCAN THE TABLE
002626 004737 000000G JSR PC,.TSCAN
2872 002632 CALLR @2(R0) ; DO WHAT IT SAYS TO
002632 000170 000002 JMP @2(R0)
2873 ;
2874 002636 10$:
2875 002636 012700 000000G MOV #.EDKLX,R0 ; POINT TO ADDRESS BUFFER
2876 002642 CALL .GTKLA ; GO GET THE ADDRESS
002642 004737 000000G JSR PC,.GTKLA
2877
2878 ; [CONTINUED ON THE FOLLOWING PAGE]
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 71
.EXAMT -- THE "EXAMINE <TEN>" COMMAND 7602.05
2880 ; [CONTINUED FROM THE PREVIOUS PAGE]
2881
2882 002646 .EXMTE:: ; EXTENDED EXAMINE ENTRY POINT
2883 002646 CALL .CKEOC ; CHECK E-O-C CHARACTER
002646 004737 000000G JSR PC,.CKEOC
2884 002652 012037 000074' MOV (R0)+,STOPTX ; [5.1014]SAVE INITIAL ADDRESS
2885 002656 012037 000076' MOV (R0)+,STOPTX+2 ; [5.1014]SAVE INITIAL ADDRESS
2886 002662 011037 000100' MOV (R0),STOPTX+4 ; [5.1014]SAVE INITIAL ADDRESS
2887 002666 024040 CMP -(R0),-(R0) ; [5.1014]RESTORE POINTER
2888 002670 032737 100000 000000G 1$: BIT #KF.CLK,.KLFLG ; IS THE KL CLOCK ON?
2889 002676 001535 BEQ EXTKCN ; NO -- GIVE "KCN" ERROR
2890 002700 PUSH R0 ; [5.1014]YES -- SAVE ADDRESS POINTER
002700 010046 MOV R0,-(SP)
2891 002702 PUSH #.EXBFR ; SAVE THE DATA POINTER
002702 012746 000000G MOV #.EXBFR,-(SP)
2892 002706 012702 000000G MOV #.EDKLA,R2 ; .ADDRESS BUFFER POINTER TO R2
2893 002712 012022 MOV (R0)+,(R2)+ ; .LOAD THE NEW ADDRESS
2894 002714 012022 MOV (R0)+,(R2)+ ; .INTO THE ADDRESS BUFFER
2895 002716 011012 MOV (R0),(R2) ; .SO
2896 002720 024242 CMP -(R2),-(R2) ; .BACK THE POINTER UP
2897 002722 PUSH R2 ; .ADDRESS POINTER
002722 010246 MOV R2,-(SP)
2898 002724 010601 MOV SP,R1 ; ..POINT TO THE DATA BLOCK
2899 002726 012700 000200 MOV #ED.PHY,R0 ; ..PHYSICAL REFERENCE
2900 002732 CALL .EXKLM ; ..DO THE EXAMINE
002732 004737 000000G JSR PC,.EXKLM
2901 002736 POP R0 ; ..POINT TO THE ADDRESS
002736 012600 MOV (SP)+,R0
2902 002740 CALL .TYKLA ; .PRINT THE ADDRESS
002740 004737 000000G JSR PC,.TYKLA
2903 002744 CALL .TYSLS ; .TYPE A SLASH
002744 004737 000000G JSR PC,.TYSLS
2904 002750 CALL .TYSPC ; .AND A SPACE
002750 004737 000000G JSR PC,.TYSPC
2905 002754 POP R0 ; .POINT TO THE DATA
002754 012600 MOV (SP)+,R0
2906 002756 CALL .TYKLN ; PRINT THE DATA
002756 004737 000000G JSR PC,.TYKLN
2907 002762 CALL .TCRLF ; AND END THE LINE
002762 004737 000000G JSR PC,.TCRLF
2908 002766 POP R0 ; [5.1014]RESTORE ADDRESS POINTER
002766 012600 MOV (SP)+,R0
2909 002770 005737 000110' 5$: TST RNGTX ; [5.1014]RANGE IN PROGRESS?
2910 002774 001412 BEQ 7$ ; [5.1014]NO -- GO ON
2911 002776 012701 000074' MOV #STOPTX,R1 ; [5.1014]YES -- FINAL ADDRESS
2912 003002 CALL .TPCMP ; [5.1014]DONE?
003002 004737 000000G JSR PC,.TPCMP
2913 003006 001405 BEQ 7$ ; [5.1014]YES -- GO ON
2914 003010 012701 000102' MOV #INCTX,R1 ; [5.1014]NO -- POINT TO INCREMENT
2915 003014 CALL .TPADD ; [5.1014]INCREMENT ADDRESS
003014 004737 000000G JSR PC,.TPADD
2916 003020 000723 BR 1$ ; [5.1014]EXAMINE NEXT ADDRESS
2917 003022 005037 000110' 7$: CLR RNGTX ; [5.1014]CLEAR RANGE IN PROGRESS FLAG
2918 003026 122715 000054 CMPB #',,(R5) ; [5.1014]IS THIS A LIST?
2919 003032 001002 BNE 20$ ; [5.1014]NO -- GO NO
2920 003034 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
2921 003036 000666 BR .EXAMT ; [5.1014]DO NEXT
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 71-1
.EXAMT -- THE "EXAMINE <TEN>" COMMAND 7602.05
2922 003040 122715 000072 20$: CMPB #':,(R5) ; [5.1014]IS THIS A RANGE?
2923 003044 001051 BNE 40$ ; [5.1014]NO -- GO ON
2924 003046 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COLON
2925 003050 CALL .GTKLA ; [5.1014]GET FINAL ADDRESS
003050 004737 000000G JSR PC,.GTKLA
2926 003054 CALL .CKEOC ; [5.1014]CHECK FOR END OF COMMAND
003054 004737 000000G JSR PC,.CKEOC
2927 003060 005237 000110' INC RNGTX ; [5.1014]SET RANGE IN PROGRESS
2928 003064 012737 000001 000102' MOV #1,INCTX ; [5.1014]SET FORWARD RANGE
2929 003072 005037 000104' CLR INCTX+2 ; [5.1014]CLEAR INCREMENT
2930 003076 005037 000106' CLR INCTX+4 ; [5.1014]CLEAR INCREMENT
2931 003102 012701 000074' MOV #STOPTX,R1 ; [5.1014]INITIAL ADDRESS POINTER
2932 003106 CALL .TPCMP ; [5.1014]FORWARD RANGE?
003106 004737 000000G JSR PC,.TPCMP
2933 003112 003006 BGT 30$ ; [5.1014]YES -- GO ON
2934 003114 PUSH R0 ; [5.1014]NO -- SAVE FINAL ADDRESS
003114 010046 MOV R0,-(SP)
2935 003116 012700 000102' MOV #INCTX,R0 ; [5.1014]RANGE INCREMENT
2936 003122 CALL .TPNEG ; [5.1014]NEGATE IT
003122 004737 000000G JSR PC,.TPNEG
2937 003126 POP R0 ; [5.1014]RESTORE ADDRESS
003126 012600 MOV (SP)+,R0
2938 003130 30$: PUSH STOPTX ; [5.1014]SAVE INITIAL ADDRESS
003130 013746 000074' MOV STOPTX,-(SP)
2939 003134 PUSH STOPTX+2 ; [5.1014]SAVE INITIAL ADDRESS
003134 013746 000076' MOV STOPTX+2,-(SP)
2940 003140 PUSH STOPTX+4 ; [5.1014]SAVE INITIAL ADDRESS
003140 013746 000100' MOV STOPTX+4,-(SP)
2941 003144 012037 000074' MOV (R0)+,STOPTX ; [5.1014]SET FINAL ADDRESS
2942 003150 012037 000076' MOV (R0)+,STOPTX+2 ; [5.1014]SET FINAL ADDRESS
2943 003154 012037 000100' MOV (R0)+,STOPTX+4 ; [5.1014]SET FINAL ADDRESS
2944 003160 POP -(R0) ; [5.1014]SET INITIAL ADDRESS
003160 012640 MOV (SP)+,-(R0)
2945 003162 POP -(R0) ; [5.1014]SET INITIAL ADDRESS
003162 012640 MOV (SP)+,-(R0)
2946 003164 POP -(R0) ; [5.1014]SET INITIAL ADDRESS
003164 012640 MOV (SP)+,-(R0)
2947 003166 000700 BR 5$ ; [5.1014]DO INCREMENT
2948 003170 40$: RETURN ; [5.1014]EXIT
003170 000207 RTS PC
2949 ;
2950 003172 EXTKCN:
2951 003172 ERROR$ KCN ; ERROR -- KL CLOCK NOT RUNNING
003172 012746 042506 MOV #^RKCN,-(SP)
003176 104400 TRAP TC.ERR
2952 ;
2953
2954 000074 .PSECT DATA
2955
2956 000074 000000 000000 000000 STOPTX: .WORD 0,0,0 ; [5.1014]FINAL/FIRST ADDRESS
2957 000102 000000 000000 000000 INCTX: .WORD 0,0,0 ; [5.1014]RANGE INCREMENT
2958 000110 000000 RNGTX: .WORD 0 ; [5.1014]RANGE IN PROGRESS FLAG
2959
2960 003200 .PSECT
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 72
.EXKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7609.
2962 .SBTTL .EXKLD -- THE "DEPOSIT <TEN> <NUMERICAL OBJECT>" COMMAND 7609.10
2963
2964 .ENABL LSB
2965
2966 003200 .EXKLT:: ; EXAMINE <TEN> THIS
2967 003200 012700 000000G MOV #.EDKLA,R0 ; ADDRESS POINTER TO R0
2968 003204 000620 BR .EXMTE ; DO THE EXAMINE
2969 ;
2970 003206 .EXKLD:: ; EXAMINE <TEN> DECREMENT
2971 003206 CALL .EDKLD ; DECREMENT IT
003206 004737 000440' JSR PC,.EDKLD
2972 003212 000615 BR .EXMTE ; DO THE EXAMINE
2973 ;
2974 003214 .EXKLI:: ; EXAMINE <TEN> INCREMENT
2975 003214 CALL .EDKLI ; INCREMENT IT
003214 004737 000456' JSR PC,.EDKLI
2976 003220 000612 BR .EXMTE ; DO THE EXAMINE
2977 ;
2978 003222 .EXKLN:: ; EXAMINE <TEN> NEXT
2979 003222 CALL .EDKLN ; GET NEXT ADDRESS
003222 004737 000426' JSR PC,.EDKLN
2980 003226 000607 BR .EXMTE ; DO THE EXAMINE
2981 ;
2982 003230 .EXKLP:: ; EXAMINE <TEN> PREVIOUS
2983 003230 CALL .EDKLP ; GET THE PREVIOUS ADDDRESS
003230 004737 000414' JSR PC,.EDKLP
2984 003234 000604 BR .EXMTE ; DO THE EXAMINE
2985 ;
2986
2987 .DSABL LSB
EDTEN -- DEPOSIT / EXAMINE TEN MACRO M1113 10-NOV-81 17:48 PAGE 73
.RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL APR 7509.24
2989 .SBTTL .RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL APR 7509.24
2990
2991 ;+
2992 ; .RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL APR.
2993 ;
2994 ; THIS SUBROUTINE READS THE ERROR STATE OF THE KL APR AND RETURNS
2995 ; THAT ERROR STATE IN R0 AND ".APRWD".
2996 ;
2997 ; THE FORMAT OF THE DATA RETURNED IS:
2998 ;
2999 ; AP.PWF -- BIT00 -- [APR PWR FAIL IN H] -- POWER FAIL
3000 ; AP.SAP -- BIT01 -- [APR S ADR P ERR IN H] -- SBUS ADR PARITY ERROR
3001 ; AP.CDP -- BIT02 -- [APR C DIR P ERR IN H] -- CACHE DIR PARITY ERROR
3002 ; AP.MPE -- BIT03 -- [APR MB PAR ERR IN H] -- MB PARITY ERROR
3003 ; AP.IPF -- BIT04 -- [APR I/O PF ERR IN H] -- I/O PAGE FAIL ERROR
3004 ; AP.NXM -- BIT05 -- [APR NXM ERR IN H] -- NON-EX-MEMORY ERROR
3005 ; AP.SBE -- BIT06 -- [APR SBUS ERR IN H] -- SBUS ERROR
3006 ;
3007 ; INPUT ARGUMENTS:
3008 ;
3009 ; NONE.
3010 ;
3011 ; OUTPUT ARGUMENTS:
3012 ;
3013 ; R0 CONTAINS A COPY OF THE KL APR ERROR FLAGS
3014 ; ".APRWD" CONTAINS A COPY OF THE KL APR ERROR FLAGS
3015 ;
3016 ; ERROR CODES RETURNED:
3017 ;
3018 ; FRF -- FUNCTION READ FAILED.
3019 ;-
3020
3021 003236 .RDAPR::
3022 003236 PUSH R1 ; SAVE R1 ON THE STACK
003236 010146 MOV R1,-(SP)
3023 003240 005001 CLR R1 ; .CLEAR R1
3024 003242 012700 000220 MOV #FR.APR,R0 ; .FR TO READ APR ERRORS
3025 003246 CALL .FREAD ; .READ APR ERRORS
003246 004737 000000G JSR PC,.FREAD
3026 003252 012701 177751 MOV #-^D23,R1 ; .SHIFT COUNT TO R1
3027 003256 CALL .TPSHI ; .SHIFT ERROR BITS INTO POSITION
003256 004737 000000G JSR PC,.TPSHI
3028 003262 042710 177600 BIC #177600,(R0) ; .FLUSH UNWANTED BITS
3029 003266 011037 000000G MOV (R0),.APRWD ; .SAVE THE WORD
3030 003272 011000 MOV (R0),R0 ; .PUT A COPY IN R0
3031 003274 POP R1 ; .RESTORE R1
003274 012601 MOV (SP)+,R1
3032 003276 RETURN ; AND GO AWAY
003276 000207 RTS PC
3033 ;
EXCTC -- EXECUTE (XCT) COMMAND MACRO M1113 10-NOV-81 17:48 PAGE 75
.RDAPR -- SUBROUTINE TO READ THE STATE OF THE KL APR 7509.24
3036 .TITLE EXCTC -- EXECUTE (XCT) COMMAND MODULE 7603.30
3037
3038 .IDENT "005000"
3039 ;
3040 ; COPYRIGHT (C) 1975, 1979 BY
3041 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
3042 ;
3043 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
3044 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
3045 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
3046 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
3047 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
3048 ;
3049 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
3050 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
3051 ; CORPORATION.
3052 ;
3053 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
3054 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
3055 ;
3056 ; MODULE: EXECUTE COMMAND
3057 ;
3058 ; VERSION: 05-00
3059 ;
3060 ; AUTHOR: R. BELANGER
3061 ;
3062 ; DATE: 7603.30
3063 ;
3064 ; THIS MODULE CONTAINS:
3065 ;
3066 ; 1) EXECUTE COMMAND CODE
EXCTC -- EXECUTE (XCT) COMMAND MACRO M1113 10-NOV-81 17:48 PAGE 76
.EXCTC -- THE "XCT" (EXECUTE) COMMAND 7602.17
3068 .SBTTL .EXCTC -- THE "XCT" (EXECUTE) COMMAND 7602.17
3069
3070 ;+
3071 ; .EXCTC -- THE "XCT" (EXECUTE) COMMAND
3072 ;
3073 ; THIS ROUTINE SIMULATES THE "XCT" SWITCH OF THE KL CONSOLE.
3074 ;
3075 ; INPUT ARGUMENTS:
3076 ;
3077 ; R0 POINTS TO THE KL INSTRUCTION TO BE EXECUTED.
3078 ;
3079 ; OUTPUT ARGUMENTS:
3080 ;
3081 ; NONE.
3082 ;
3083 ; ERROR CODES RETURNED:
3084 ;
3085 ; IOC -- ILLEGAL KL OPCODE.
3086 ; MRA -- MISSING REQUIRED ARGUMENT.
3087 ; XTO -- KL EXECUTE TIMED OUT.
3088 ;-
3089
3090 003300 .EXCTC:: ; HERE FROM PARSER
3091 003300 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
3092 003302 005046 CLR -(SP) ; .
3093 003304 005046 CLR -(SP) ; ..
3094 003306 010600 MOV SP,R0 ; ...POINT TO IT
3095 003310 CALL .GTKLN ; ...READ THE INSTRUCTION
003310 004737 000000G JSR PC,.GTKLN
3096 003314 CALL .CKEOC ; ...CHECK E-O-C CHARACTER
003314 004737 000000G JSR PC,.CKEOC
3097 003320 032760 000017 000004 BIT #17,4(R0) ; ...CHECK HIGH PART OF OPCODE
3098 003326 001005 BNE 10$ ; ...OK -- GO ON
3099 003330 032760 174000 000002 BIT #^C3777,2(R0) ; ...CHECK LOW PART OF OPCODE
3100 003336 001403 BEQ EXCIOC ; ...NONE THERE -- GIVE "IOC" ERROR
3101 003340 010600 MOV SP,R0 ; ...POINT TO THE INSTRUCTION
3102 003342 10$:
3103 003342 CALLR .EXECT ; ...ALL OK -- GO DO IT
003342 000137 000000G JMP .EXECT
3104 ;
3105 003346 EXCIOC:
3106 003346 ERROR$ IOC ; ERROR -- ILLEGAL OPCODE
003346 012746 035233 MOV #^RIOC,-(SP)
003352 104400 TRAP TC.ERR
3107 ;
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 77
.EXCTC -- THE "XCT" (EXECUTE) COMMAND 7602.17
3109 .TITLE EXDTE -- EXAMINE DTE-20 REGISTERS COMMAND
3110
3111 .IDENT "006110"
3112 ;
3113 ; COPYRIGHT (C) 1979 BY
3114 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
3115 ;
3116 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
3117 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
3118 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
3119 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
3120 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
3121 ;
3122 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
3123 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
3124 ; CORPORATION.
3125 ;
3126 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
3127 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
3128 ;
3129 ; MODULE: EXAMINE DTE-20 COMMAND
3130 ;
3131 ; VERSION: 06-11
3132 ;
3133 ; AUTHOR: K. LEFEBVRE
3134 ;
3135 ; DATE: 24-SEP-79
3136 ;
3137 ; THIS MODULE CONTAINS:
3138 ;
3139 ; 1) EXAMINE DTE-20 REGISTERS COMMAND
3140
3141 .MCALL .INH6,.ENB6
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 78
.EXDTE -- THE "EXAMINE DTE-20" COMMAND 7603.20
3143 .SBTTL .EXDTE -- THE "EXAMINE DTE-20" COMMAND 7603.20
3144
3145 ;+
3146 ; .EXDTE -- THE "EXAMINE DTE-20" COMMAND.
3147 ;
3148 ; THIS ROUTINE WILL READ AND DISPLAY THE CONTENTS OF ALL THE DTE-20
3149 ; REGISTERS ON THE CONSOLE DEVICE.
3150 ;
3151 ; THIS ROUTINE TYPES OUT ALL THE REGISTERS IN THE NEW FORMAT
3152 ; AS WAS REQUIRED FOR TCO 5.1001
3153 ;
3154 ; INPUT ARGUMENTS:
3155 ;
3156 ; NONE.
3157 ;
3158 ; OUTPUT ARGUMENTS:
3159 ;
3160 ; NONE.
3161 ;
3162 ; ERROR CODES RETURNED:
3163 ;
3164 ; NONE.
3165 ;-
3166
3167 003354 .EXDTE::
3168 003354 CALL .CKEOC ; CHECK E-O-C
003354 004737 000000G JSR PC,.CKEOC
3169 003360 CALLR TYPDTE ; TYPE OUT DTE REGISTERS
003360 000137 003364' JMP TYPDTE
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 79
TYPDTE -- TYPE OUT DTE REGISTERS SYMBOLICALLY
3171 .SBTTL TYPDTE -- TYPE OUT DTE REGISTERS SYMBOLICALLY
3172
3173 ;+
3174 ; TYPDTE -- TYPE OUT DTE-20 REGISTERS SYMBOLLICALLY
3175 ;
3176 ; THIS ROUTINE WILL TYPE OUT THE CONTENTS OF ALL THE DTE-20 REGISTERS
3177 ; IN OCTAL AND WILL ALSO DECODE SOME OF THEM.
3178 ;
3179 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3180 ;
3181 ; INPUT ARGUMENTS:
3182 ;
3183 ; NONE
3184 ;
3185 ; OUTPUT ARGUMENTS:
3186 ;
3187 ; NONE
3188 ;
3189 ; ERROR CODES RETURNED:
3190 ;
3191 ; NONE
3192 ;-
3193
3194 003364 TYPDTE:
3195 003364 013700 000000G MOV .PRDTE,R0 ; DTE BASE REGISTER ADDRESS
3196 003370 012701 000112' MOV #DTEBUF,R1 ; DTE REGISTER SAVE BUFFER
3197 003374 012702 000020 MOV #16.,R2 ; REGISTER COUNT
3199 003400 .INH6 ; INHIBIT INTERRUPTS
003400 013746 177776 MOV @#PS,-(SP)
003404 112737 000300 177776 MOVB #300,@#PS
3201 003412 012021 10$: MOV (R0)+,(R1)+ ; SAVE DTE REGISTERS
3202 003414 077202 SOB R2,10$ ; DONE?
3204 003416 .ENB6 ; ENABLE INTERRUPTS
003416 012637 177776 MOV (SP)+,@#PS
3206 003422 005002 CLR R2 ; REGISTER COUNT
3207 003424 016200 000152' 20$: MOV DTEREG(R2),R0 ; HEADER ADDRESS
3208 003430 CALL .TYMSG ; TYPE HEADER
003430 004737 000000G JSR PC,.TYMSG
3209 003434 016200 000112' MOV DTEBUF(R2),R0 ; REGISTER CONTENTS
3210 003440 CALL .TYELN ; TYPE VALUE
003440 004737 000000G JSR PC,.TYELN
3211 003444 CALL @SYMTAB(R2) ; TYPE CONTENTS SYMBOLLICALLY
003444 004772 000212' JSR PC,@SYMTAB(R2)
3212 003450 005722 TST (R2)+ ; NEXT REGISTER
3213 003452 020227 000036 CMP R2,#30. ; DONE?
3214 003456 003762 BLE 20$ ; NO
3215 003460 RETURN ; YES
003460 000207 RTS PC
3216
3217 000112 .PSECT DATA
3218
3219 000112 DTEBUF: .BLKW 16. ; REGISTER BUFFER
3220
3221 000152 DTEREG: ; HEADER TEXT POINTERS
3222 000152 000004' .WORD HDDLY
3223 000154 000016' .WORD HDDEX3
3224 000156 000032' .WORD HDDEX2
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 79-1
TYPDTE -- TYPE OUT DTE REGISTERS SYMBOLICALLY
3225 000160 000046' .WORD HDDEX1
3226 000162 000062' .WORD HDTAD1
3227 000164 000076' .WORD HDTAD2
3228 000166 000111' .WORD HDT10B
3229 000170 000125' .WORD HDT11B
3230 000172 000140' .WORD HDT10A
3231 000174 000154' .WORD HDT11A
3232 000176 000167' .WORD HDT10D
3233 000200 000203' .WORD HDT11D
3234 000202 000216' .WORD HDDAG1
3235 000204 000232' .WORD HDDAG2
3236 000206 000246' .WORD HDSTAT
3237 000210 000262' .WORD HDDAG3
3238
3239 000212 SYMTAB: ; SYMBOLIC TYPE ROUTINES
3240 000212 000252' .WORD NOOP ; DLYCNT
3241 000214 000252' .WORD NOOP ; DEXWD3
3242 000216 000252' .WORD NOOP ; DEXWD2
3243 000220 003520' .WORD TYPDX1 ; DEXWD1
3244 000222 000252' .WORD NOOP ; TENAD1
3245 000224 003570' .WORD TYPAD2 ; TENAD2
3246 000226 000252' .WORD NOOP ; TO10BC
3247 000230 000252' .WORD NOOP ; TO11BC
3248 000232 000252' .WORD NOOP ; TO10AD
3249 000234 000252' .WORD NOOP ; TO11AD
3250 000236 000252' .WORD NOOP ; TO10DT
3251 000240 000252' .WORD NOOP ; TO11DT
3252 000242 004012' .WORD TYPDG1 ; DIAG1
3253 000244 000252' .WORD NOOP ; DIAG2
3254 000246 003462' .WORD STATYP ; STATUS
3255 000250 004064' .WORD TYPDG3 ; DIAG3
3256
3257 000252 NOOP: RETURN ; NO SYMBOLIC TYPE OUT
000252 000207 RTS PC
3258
3259 000004 .PSECT MESSAG
3260
3261 000004 040 104 114 HDDLY: .ASCIZ/ DLYCNT: /
000007 131 103 116
000012 124 072 040
000015 000
3262 000016 015 012 040 HDDEX3: .ASCIZ<15><12>/ DEXWD3: /
000021 104 105 130
000024 127 104 063
000027 072 040 000
3263 000032 015 012 040 HDDEX2: .ASCIZ<15><12>/ DEXWD2: /
000035 104 105 130
000040 127 104 062
000043 072 040 000
3264 000046 015 012 040 HDDEX1: .ASCIZ<15><12>/ DEXWD1: /
000051 104 105 130
000054 127 104 061
000057 072 040 000
3265 000062 015 012 040 HDTAD1: .ASCIZ<15><12>/ TENAD1: /
000065 124 105 116
000070 101 104 061
000073 072 040 000
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 79-2
TYPDTE -- TYPE OUT DTE REGISTERS SYMBOLICALLY
3266 000076 040 040 124 HDTAD2: .ASCIZ/ TENAD2: /
000101 105 116 101
000104 104 062 072
000107 040 000
3267 000111 015 012 040 HDT10B: .ASCIZ<15><12>/ TO10BC: /
000114 124 117 061
000117 060 102 103
000122 072 040 000
3268 000125 040 040 124 HDT11B: .ASCIZ/ TO11BC: /
000130 117 061 061
000133 102 103 072
000136 040 000
3269 000140 015 012 040 HDT10A: .ASCIZ<15><12>/ TO10AD: /
000143 124 117 061
000146 060 101 104
000151 072 040 000
3270 000154 040 040 124 HDT11A: .ASCIZ/ TO11AD: /
000157 117 061 061
000162 101 104 072
000165 040 000
3271 000167 015 012 040 HDT10D: .ASCIZ<15><12>/ TO10DT: /
000172 124 117 061
000175 060 104 124
000200 072 040 000
3272 000203 040 040 124 HDT11D: .ASCIZ/ TO11DT: /
000206 117 061 061
000211 104 124 072
000214 040 000
3273 000216 015 012 040 HDDAG1: .ASCIZ<15><12>/ DIAG1 : /
000221 104 111 101
000224 107 061 040
000227 072 040 000
3274 000232 015 012 040 HDDAG2: .ASCIZ<15><12>/ DIAG2 : /
000235 104 111 101
000240 107 062 040
000243 072 040 000
3275 000246 015 012 040 HDSTAT: .ASCIZ<15><12>/ STATUS: /
000251 123 124 101
000254 124 125 123
000257 072 040 000
3276 000262 015 012 040 HDDAG3: .ASCIZ<15><12>/ DIAG3 : /
000265 104 111 101
000270 107 063 040
000273 072 040 000
3277
3278 003462 .PSECT
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 80
STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
3280 .SBTTL STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
3281
3282 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3283
3284 003462 STATYP:
3285 003462 016203 000112' MOV DTEBUF(R2),R3 ; DTE REGISTER CONTENTS
3286 003466 012701 000254' MOV #STATAB,R1 ; FIRST MESSAGE PTR
3287 003472 005703 10$: TST R3 ; REGISTER=0
3288 003474 001410 BEQ 30$ ; YES-DONE
3289 003476 006303 ASL R3 ; SHIFT HIGH BIT TO CARRY
3290 003500 103003 BCC 20$ ; BIT CLEAR?
3291 003502 011100 MOV @R1,R0 ; POINT TO MESSAGE
3292 003504 CALL .TYMSG ; NO-TYPE MESSAGE
003504 004737 000000G JSR PC,.TYMSG
3293 003510 062701 000002 20$: ADD #2,R1 ; ADDRESS NEXT MESSAGE
3294 003514 000766 BR 10$ ; CHECK NEXT BIT
3295 003516 30$: RETURN ; EXIT
003516 000207 RTS PC
3296
3297 000254 .PSECT DATA
3298
3299 000254 STATAB: ; STATUS MESSAGE TABLE
3300 000254 000276' .WORD STA15
3301 000256 000334' .WORD STA14
3302 000260 000357' .WORD STA13
3303 000262 000414' .WORD STA12
3304 000264 000436' .WORD STA11
3305 000266 000475' .WORD STA10
3306 000270 000515' .WORD STA9
3307 000272 000551' .WORD STA8
3308 000274 000610' .WORD STA7
3309 000276 000641' .WORD STA6
3310 000300 000666' .WORD STA5
3311 000302 000727' .WORD STA4
3312 000304 000757' .WORD STA3
3313 000306 001004' .WORD STA2
3314 000310 001036' .WORD STA1
3315 000312 001100' .WORD STA0
3316
3317 000276 .PSECT MESSAG
3318
3319 000276 015 012 040 STA15: .ASCIZ<15><12>/ TO 10 NORMAL TERMINATION/
000301 040 040 124
000304 117 040 061
000307 060 040 116
000312 117 122 115
000315 101 114 040
000320 124 105 122
000323 115 111 116
000326 101 124 111
000331 117 116 000
3320 000334 015 012 040 STA14: .ASCIZ<15><12>/ BIT 14 UNUSED/
000337 040 040 102
000342 111 124 040
000345 061 064 040
000350 125 116 125
000353 123 105 104
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 80-1
STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
000356 000
3321 000357 015 012 040 STA13: .ASCIZ<15><12>/ TO 10 ERROR TERMINATION/
000362 040 040 124
000365 117 040 061
000370 060 040 105
000373 122 122 117
000376 122 040 124
000401 105 122 115
000404 111 116 101
000407 124 111 117
000412 116 000
3322 000414 015 012 040 STA12: .ASCIZ<15><12>/ RAM IS ZEROS/
000417 040 040 122
000422 101 115 040
000425 111 123 040
000430 132 105 122
000433 117 123 000
3323 000436 015 012 040 STA11: .ASCIZ<15><12>/ 10 REQUESTED 11 INTERRUPT/
000441 040 040 061
000444 060 040 122
000447 105 121 125
000452 105 123 124
000455 105 104 040
000460 061 061 040
000463 111 116 124
000466 105 122 122
000471 125 120 124
000474 000
3324 000475 015 012 040 STA10: .ASCIZ<15><12>/ DEX WORD 1/
000500 040 040 104
000503 105 130 040
000506 127 117 122
000511 104 040 061
000514 000
3325 000515 015 012 040 STA9: .ASCIZ<15><12>/ 11 MEMORY PARITY ERROR/
000520 040 040 061
000523 061 040 115
000526 105 115 117
000531 122 131 040
000534 120 101 122
000537 111 124 131
000542 040 105 122
000545 122 117 122
000550 000
3326 000551 015 012 040 STA8: .ASCIZ<15><12>/ 11 REQUESTED 10 INTERRUPT/
000554 040 040 061
000557 061 040 122
000562 105 121 125
000565 105 123 124
000570 105 104 040
000573 061 060 040
000576 111 116 124
000601 105 122 122
000604 125 120 124
000607 000
3327 000610 015 012 040 STA7: .ASCIZ<15><12>/ TO 11 TRANSFER DONE/
000613 040 040 124
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 80-2
STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
000616 117 040 061
000621 061 040 124
000624 122 101 116
000627 123 106 105
000632 122 040 104
000635 117 116 105
000640 000
3328 000641 015 012 040 STA6: .ASCIZ<15><12>/ E BUFFER SELECT/
000644 040 040 105
000647 040 102 125
000652 106 106 105
000655 122 040 123
000660 105 114 105
000663 103 124 000
3329 000666 015 012 040 STA5: .ASCIZ<15><12>/ TO 11 TRANSFER STOP BY NULL/
000671 040 040 124
000674 117 040 061
000677 061 040 124
000702 122 101 116
000705 123 106 105
000710 122 040 123
000713 124 117 120
000716 040 102 131
000721 040 116 125
000724 114 114 000
3330 000727 015 012 040 STA4: .ASCIZ<15><12>/ E BUS PARITY ERROR/
000732 040 040 105
000735 040 102 125
000740 123 040 120
000743 101 122 111
000746 124 131 040
000751 105 122 122
000754 117 122 000
3331 000757 015 012 040 STA3: .ASCIZ<15><12>/ RESTRICTED MODE/
000762 040 040 122
000765 105 123 124
000770 122 111 103
000773 124 105 104
000776 040 115 117
001001 104 105 000
3332 001004 015 012 040 STA2: .ASCIZ<15><12>/ DEPOSIT-EXAMINE DONE/
001007 040 040 104
001012 105 120 117
001015 123 111 124
001020 055 105 130
001023 101 115 111
001026 116 105 040
001031 104 117 116
001034 105 000
3333 001036 015 012 040 STA1: .ASCIZ<15><12>/ TO 11 BYTE ERROR TERMINATION/
001041 040 040 124
001044 117 040 061
001047 061 040 102
001052 131 124 105
001055 040 105 122
001060 122 117 122
001063 040 124 105
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 80-3
STATYP -- SYMBOLIC STATUS REGISTER TYPE OUT
001066 122 115 111
001071 116 101 124
001074 111 117 116
001077 000
3334 001100 015 012 040 STA0: .ASCIZ<15><12>/ INTERRUPTS ON/
001103 040 040 111
001106 116 124 105
001111 122 122 125
001114 120 124 123
001117 040 117 116
001122 000
3335
3336 003520 .PSECT
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 81
TYPDX1 -- SYMBOLIC DEXWD1-DEXWD3 TYPE OUT
3338 .SBTTL TYPDX1 -- SYMBOLIC DEXWD1-DEXWD3 TYPE OUT
3339
3340 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3341
3342 003520 TYPDX1:
3343 003520 012700 001123' MOV #DX1MS1,R0 ; DATA MESSAGE
3344 003524 CALL .TYMSG ; TYPE IT
003524 004737 000000G JSR PC,.TYMSG
3345 003530 012700 000106' MOV #DTEBUF-4,R0 ; ADDR OF REGISTERS
3346 003534 060200 ADD R2,R0 ; POINT TO DEX WORD 1
3347 003536 CALL .TYKLN ; TYPE IT
003536 004737 000000G JSR PC,.TYKLN
3348 003542 016203 000112' MOV DTEBUF(R2),R3 ; DEXWD1 VALUE
3349 003546 042703 000017 BIC #17,R3 ; DEXWD1 BITS 4-15
3350 003552 005703 TST R3 ; BITS 4-15 MBZ
3351 003554 001404 BEQ 10$ ; ARE THEY ZERO
3352 003556 012700 001143' MOV #DX1MS2,R0 ; NO- MESSAGE
3353 003562 CALL .TYMSG ; TYPE IT
003562 004737 000000G JSR PC,.TYMSG
3354 003566 10$: RETURN ; EXIT
003566 000207 RTS PC
3355
3356 001123 .PSECT MESSAG
3357
3358 001123 015 012 040 DX1MS1: .ASCIZ<15><12>/ KL10 DATA=/
001126 040 040 113
001131 114 061 060
001134 040 104 101
001137 124 101 075
001142 000
3359 001143 015 012 040 DX1MS2: .ASCIZ<15><12>/ DEXWD1 BITS 4-15 NON-ZERO/
001146 040 040 104
001151 105 130 127
001154 104 061 040
001157 102 111 124
001162 123 040 064
001165 055 061 065
001170 040 116 117
001173 116 055 132
001176 105 122 117
001201 000
3360
3361 003570 .PSECT
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 82
TYPAD2 -- SYMBOLIC TENAD1-TENAD2 TYPE OUT
3363 .SBTTL TYPAD2 -- SYMBOLIC TENAD1-TENAD2 TYPE OUT
3364
3365 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3366
3367 003570 TYPAD2:
3368 003570 012700 001202' MOV #TA2MS1,R0 ; ADDRESS SPACE MESSAGE
3369 003574 CALL .TYMSG ; TYPE IT
003574 004737 000000G JSR PC,.TYMSG
3370 003600 016203 000110' MOV DTEBUF-2(R2),R3 ; REGISTER CONTENTS
3371 003604 000303 SWAB R3 ; GET SPACE BITS
3372 000004 .REPT 4
3373 ASR R3
3374 .ENDR
003606 006203 ASR R3
003610 006203 ASR R3
003612 006203 ASR R3
003614 006203 ASR R3
3375 003616 042703 177761 BIC #177761,R3 ; SPACE BITS
3376 003622 020327 000012 CMP R3,#12 ; RESERVED?
3377 003626 003402 BLE 10$ ; NO
3378 003630 012703 000012 MOV #12,R3 ; YES
3379 003634 016300 000314' 10$: MOV SPCTAB(R3),R0 ; MESSAGE ADDR
3380 003640 CALL .TYMSG ; TYPE SPACE
003640 004737 000000G JSR PC,.TYMSG
3381 003644 012700 001226' MOV #TA2MS2,R0 ; OPERATION MESSAGE
3382 003650 CALL .TYMSG ; TYPE IT
003650 004737 000000G JSR PC,.TYMSG
3383 003654 016203 000110' MOV DTEBUF-2(R2),R3 ; REGISTER CONTENTS
3384 003660 012700 001453' MOV #DEPOS,R0 ; DEPOSIT MESSAGE
3385 003664 032703 010000 BIT #10000,R3 ; IS TI A DEPOSIT?
3386 003670 001002 BNE 40$ ; YES
3387 003672 012700 001463' MOV #EXAM,R0 ; NO-EXAMINE
3388 003676 40$: CALL .TYMSG ; TYPE IT
003676 004737 000000G JSR PC,.TYMSG
3389 003702 012700 001246' MOV #TA2MS3,R0 ; PRO/REL MESSAGE
3390 003706 CALL .TYMSG ; TYPE IT
003706 004737 000000G JSR PC,.TYMSG
3391 003712 012700 001473' MOV #PRON,R0 ; PRO ON MESSAGE
3392 003716 032703 004000 BIT #4000,R3 ; IS IT ON?
3393 003722 001402 BEQ 50$ ; YES
3394 003724 012700 001477' MOV #PROFF,R0 ; NO-OFF
3395 003730 50$: CALL .TYMSG ; TYPE IT
003730 004737 000000G JSR PC,.TYMSG
3396 003734 032703 003600 BIT #3600,R3 ; CHECK MBZ BITS, ARE THEY?
3397 003740 001404 BEQ 60$ ; YES
3398 003742 012700 001305' MOV #TA2MS4,R0 ; NO-ERROR MESSAGE
3399 003746 CALL .TYMSG ; TYPE IT
003746 004737 000000G JSR PC,.TYMSG
3400 003752 012700 001344' 60$: MOV #TA2MS5,R0 ; ADDRESS MESSAGE
3401 003756 CALL .TYMSG ; TYPE IT
003756 004737 000000G JSR PC,.TYMSG
3402 003762 005046 CLR -(SP) ; ADDR BUFFER
3403 003764 042703 177600 BIC #177600,R3 ; CLEAR EXTRA BITS
3404 003770 010346 MOV R3,-(SP) ; ADDR BUFFER
3405 003772 016246 000112' MOV DTEBUF(R2),-(SP); ADDR BUFFER
3406 003776 010600 MOV SP,R0 ; BUFFER ADDRESS
3407 004000 CALL .TYKLA ; TYPE KL ADDR
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 82-1
TYPAD2 -- SYMBOLIC TENAD1-TENAD2 TYPE OUT
004000 004737 000000G JSR PC,.TYKLA
3408 004004 062706 000006 ADD #6,SP ; POP OFF ADDR BUFFER
3409 004010 80$: RETURN ; EXIT
004010 000207 RTS PC
3410
3411 000314 .PSECT DATA
3412
3413 000314 SPCTAB:
3414 000314 001367' .WORD SPC1
3415 000316 001373' .WORD SPC2
3416 000320 001410' .WORD SPC3
3417 000322 001414' .WORD SPC4
3418 000324 001431' .WORD SPC5
3419 000326 001442' .WORD SPC6
3420
3421 001202 .PSECT MESSAG
3422
3423 001202 015 012 040 TA2MS1: .ASCIZ<15><12>/ ADDRESS SPACE=/
001205 040 040 101
001210 104 104 122
001213 105 123 123
001216 040 123 120
001221 101 103 105
001224 075 000
3424 001226 015 012 040 TA2MS2: .ASCIZ<15><12>/ OPERATION=/
001231 040 040 117
001234 120 105 122
001237 101 124 111
001242 117 116 075
001245 000
3425 001246 015 012 040 TA2MS3: .ASCIZ<15><12>/ PROTECTION-RELOCATION IS /
001251 040 040 120
001254 122 117 124
001257 105 103 124
001262 111 117 116
001265 055 122 105
001270 114 117 103
001273 101 124 111
001276 117 116 040
001301 111 123 040
001304 000
3426 001305 015 012 040 TA2MS4: .ASCIZ<15><12>/ TENAD1 BITS 7-10 NON-ZERO/
001310 040 040 124
001313 105 116 101
001316 104 061 040
001321 102 111 124
001324 123 040 067
001327 055 061 060
001332 040 116 117
001335 116 055 132
001340 105 122 117
001343 000
3427 001344 015 012 040 TA2MS5: .ASCIZ<15><12>/ KL10 ADDRESS=/
001347 040 040 113
001352 114 061 060
001355 040 101 104
001360 104 122 105
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 82-2
TYPAD2 -- SYMBOLIC TENAD1-TENAD2 TYPE OUT
001363 123 123 075
001366 000
3428 001367 105 120 124 SPC1: .ASCIZ/EPT/
001372 000
3429 001373 105 130 105 SPC2: .ASCIZ/EXEC VIRTUAL/
001376 103 040 126
001401 111 122 124
001404 125 101 114
001407 000
3430 001410 125 120 124 SPC3: .ASCIZ/UPT/
001413 000
3431 001414 125 123 105 SPC4: .ASCIZ/USER VIRTUAL/
001417 122 040 126
001422 111 122 124
001425 125 101 114
001430 000
3432 001431 120 110 131 SPC5: .ASCIZ/PHYSICAL/
001434 123 111 103
001437 101 114 000
3433 001442 122 105 123 SPC6: .ASCIZ/RESERVED/
001445 105 122 126
001450 105 104 000
3434 001453 104 105 120 DEPOS: .ASCIZ/DEPOSIT/
001456 117 123 111
001461 124 000
3435 001463 105 130 101 EXAM: .ASCIZ/EXAMINE/
001466 115 111 116
001471 105 000
3436 001473 117 116 040 PRON: .ASCIZ/ON /
001476 000
3437 001477 117 106 106 PROFF: .ASCIZ/OFF/
001502 000
3438
3439 004012 .PSECT
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 83
TYPDG1 -- SYMBOLIC DIAG1 TYPE OUT
3441 .SBTTL TYPDG1 -- SYMBOLIC DIAG1 TYPE OUT
3442
3443 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3444
3445 004012 TYPDG1:
3446 004012 016203 000112' MOV DTEBUF(R2),R3 ; DIAG1
3447 004016 042703 170037 BIC #170037,R3 ; GET STATUS BITS
3448 000004 .REPT 4 ; LEFT JUSTIFY
3449 ASL R3
3450 .ENDR
004022 006303 ASL R3
004024 006303 ASL R3
004026 006303 ASL R3
004030 006303 ASL R3
3451 004032 012701 000330' MOV #DIATAB,R1 ; FIRST MESSAGE PTR
3452 004036 005703 10$: TST R3 ; DONE?
3453 004040 001410 BEQ 30$ ; YES-EXIT
3454 004042 006303 ASL R3 ; BIT SET?
3455 004044 103003 BCC 20$ ; NO
3456 004046 011100 MOV @R1,R0 ; MESSAGE ADDR
3457 004050 CALL .TYMSG ; YES-TYPE MESSAGE
004050 004737 000000G JSR PC,.TYMSG
3458 004054 062701 000002 20$: ADD #2,R1 ; NEXT MESSAGE
3459 004060 000766 BR 10$ ; NEXT
3460 004062 30$: RETURN ; EXIT
004062 000207 RTS PC
3461
3462 000330 .PSECT DATA
3463
3464 000330 DIATAB:
3465 000330 001503' .WORD DG1B11
3466 000332 001534' .WORD DG1B10
3467 000334 001560' .WORD DG1B9
3468 000336 001605' .WORD DG1B8
3469 000340 001651' .WORD DG1B7
3470 000342 001714' .WORD DG1B6
3471 000344 001757' .WORD DG1B5
3472
3473 001503 .PSECT MESSAG
3474
3475 001503 015 012 040 DG1B11: .ASCIZ<15><12>/ KL CLOCK ERROR STOP/
001506 040 040 113
001511 114 040 103
001514 114 117 103
001517 113 040 105
001522 122 122 117
001525 122 040 123
001530 124 117 120
001533 000
3476 001534 015 012 040 DG1B10: .ASCIZ<15><12>/ KL IN RUN MODE/
001537 040 040 113
001542 114 040 111
001545 116 040 122
001550 125 116 040
001553 115 117 104
001556 105 000
3477 001560 015 012 040 DG1B9: .ASCIZ<15><12>/ KL IN HALT LOOP/
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 83-1
TYPDG1 -- SYMBOLIC DIAG1 TYPE OUT
001563 040 040 113
001566 114 040 111
001571 116 040 110
001574 101 114 124
001577 040 114 117
001602 117 120 000
3478 001605 015 012 040 DG1B8: .ASCIZ<15><12>/ MAJOR STATE IS DEPOSIT-EXAMINE/
001610 040 040 115
001613 101 112 117
001616 122 040 123
001621 124 101 124
001624 105 040 111
001627 123 040 104
001632 105 120 117
001635 123 111 124
001640 055 105 130
001643 101 115 111
001646 116 105 000
3479 001651 015 012 040 DG1B7: .ASCIZ<15><12>/ MAJOR STATE IS TO-10 TRANSFER/
001654 040 040 115
001657 101 112 117
001662 122 040 123
001665 124 101 124
001670 105 040 111
001673 123 040 124
001676 117 055 061
001701 060 040 124
001704 122 101 116
001707 123 106 105
001712 122 000
3480 001714 015 012 040 DG1B6: .ASCIZ<15><12>/ MAJOR STATE IS TO-11 TRANSFER/
001717 040 040 115
001722 101 112 117
001725 122 040 123
001730 124 101 124
001733 105 040 111
001736 123 040 124
001741 117 055 061
001744 061 040 124
001747 122 101 116
001752 123 106 105
001755 122 000
3481 001757 015 012 040 DG1B5: .ASCIZ<15><12>/ DTE IN 10-11 DIAGNOSTIC MODE/
001762 040 040 104
001765 124 105 040
001770 111 116 040
001773 061 060 055
001776 061 061 040
002001 104 111 101
002004 107 116 117
002007 123 124 111
002012 103 040 115
002015 117 104 105
002020 000
3482
3483 004064 .PSECT
EXDTE -- EXAMINE DTE-20 REGISTE MACRO M1113 10-NOV-81 17:48 PAGE 84
TYPDG3 -- SYMBOLIC DIAG3 TYPE OUT
3485 .SBTTL TYPDG3 -- SYMBOLIC DIAG3 TYPE OUT
3486
3487 ; THIS ROUTINE WAS ADDED FOR TCO 5.1001
3488
3489 004064 TYPDG3:
3490 004064 016203 000112' MOV DTEBUF(R2),R3 ; DIAG3
3491 004070 032703 000002 BIT #2,R3 ; NPR ERROR?
3492 004074 001404 BEQ 10$ ; NO-EXIT
3493 004076 012700 002021' MOV #DG3B1,R0 ; YES-MESSAGE
3494 004102 CALL .TYMSG ; TYPE IT
004102 004737 000000G JSR PC,.TYMSG
3495 004106 10$: CALLR .TCRLF ; EXIT
004106 000137 000000G JMP .TCRLF
3496
3497 002021 .PSECT MESSAG
3498
3499 002021 015 012 040 DG3B1: .ASCIZ<15><12>/ NPR UNIBUS PARITY ERROR/
002024 040 040 116
002027 120 122 040
002032 125 116 111
002035 102 125 123
002040 040 120 101
002043 122 111 124
002046 131 040 105
002051 122 122 117
002054 122 000
3500
3501 004112 .PSECT
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 86
TYPDG3 -- SYMBOLIC DIAG3 TYPE OUT
3504 .TITLE EXREG -- EXAMINE 22 AND 36 BIT REGISTER COMMAND MODULE 7603.30
3505
3506 .IDENT "006010"
3507 ;
3508 ; COPYRIGHT (C) 1979 BY
3509 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
3510 ;
3511 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
3512 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
3513 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
3514 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
3515 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
3516 ;
3517 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
3518 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
3519 ; CORPORATION.
3520 ;
3521 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
3522 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
3523 ;
3524 ; MODULE: EXAMINE 22 AND 36 BIT REGISTER COMMAND
3525 ;
3526 ; VERSION: 06-01
3527 ;
3528 ; AUTHOR: R. BELANGER
3529 ;
3530 ; DATE: 7603.30
3531 ;
3532 ; THIS MODULE CONTAINS:
3533 ;
3534 ; 1) EXAMINE 22 AND 36 BIT REGISTER COMMAND CODE
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 87
.EXAD -- KL DATA PATH BOARD EXAMINES 7602.16
3536 .SBTTL .EXAD -- KL DATA PATH BOARD EXAMINES 7602.16
3537
3538 .ENABL LSB
3539
3540 004112 .EXAD:: ; ADDER REGISTER
3541 004112 012700 005026' MOV #.RDADR,R0 ; DISPATCH POINTER TO R0
3542 004116 000445 BR 20$ ; DO COMMON CODE
3543 ;
3544 004120 .EXADX:: ; ADDRER EXTENSION
3545 004120 012700 005034' MOV #.RDADX,R0 ; DISPATCH POINTER TO R0
3546 004124 000442 BR 20$ ; DO COMMON CODE
3547 ;
3548 004126 .EXARR:: ; ARITHMETIC REGISTER
3549 004126 012700 005042' MOV #.RDARR,R0 ; DISPATCH POINTER TO R0
3550 004132 000437 BR 20$ ; DO COMMON CODE
3551 ;
3552 004134 .EXARX:: ; AR EXTENSION
3553 004134 012700 005050' MOV #.RDARX,R0 ; DISPATCH POINTER TO R0
3554 004140 000434 BR 20$ ; DO COMMON CODE
3555 ;
3556 004142 .EXBRR:: ; BUFFER REGISTER
3557 004142 012700 005056' MOV #.RDBRR,R0 ; DISPATCH POINTER TO R0
3558 004146 000431 BR 20$ ; DO COMMON CODE
3559 ;
3560 004150 .EXBRX:: ; BR EXTENSION
3561 004150 012700 005064' MOV #.RDBRX,R0 ; DISPATCH POINTER TO R0
3562 004154 000426 BR 20$ ; DO COMMON CODE
3563 ;
3564 004156 .EXEBS:: ; EBUS REGISTER
3565 004156 012700 005072' MOV #.RDEBS,R0 ; DISPATCH POINTER TO R0
3566 004162 000423 BR 20$ ; DO COMMON CODE
3567 ;
3568 004164 .EXFMR:: ; FAST MEMORY REGISTER
3569 004164 012700 005100' MOV #.RDFMR,R0 ; DISPATCH POINTER TO R0
3570 004170 000420 BR 20$ ; DO COMMON CODE
3571 ;
3572 004172 .EXMQR:: ; MQ REGSITER
3573 004172 012700 005106' MOV #.RDMQR,R0 ; DISPATCH POINTER TO R0
3574 004176 000415 BR 20$ ; DO COMMON CODE
3575 ;
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 88
.EXVAB -- KL PC BOARD AND SMALL REGISTER EXAMINES 7602.16
3577 .SBTTL .EXVAB -- KL PC BOARD AND SMALL REGISTER EXAMINES 7602.16
3578
3579 004200 .EXVAB:: ; ADDRESS BREAK REGISTER
3580 004200 012700 005456' MOV #.RDVAB,R0 ; DISPATCH POINTER TO R0
3581 004204 000410 BR 10$ ; DO COMMON CODE
3582 ;
3583 004206 .EXVMA:: ; VMA REGISTER
3584 004206 012700 005464' MOV #.RDVMA,R0 ; DISPATCH POINTER TO R0
3585 004212 000405 BR 10$ ; DO COMMON CODE
3586 ;
3587 004214 .EXVMH:: ; VMA HELD REGISTER
3588 004214 012700 005472' MOV #.RDVMH,R0 ; DISPATCH POINTER TO R0
3589 004220 000402 BR 10$ ; DO COMMON CODE
3590 ;
3591 004222 .EXVPC:: ; PROGRAM COUNTER
3592 004222 012700 005450' MOV #.RDVPC,R0 ; DISPATCH POINTER TO R0
3593 ; BR 10$ ; DO COMMON CODE
3594 ;
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 89
.EXVAB -- KL PC BOARD AND SMALL REGISTER EXAMINES 7602.16
3596 ; [CONTINUED FROM THE PREVIOUS PAGE]
3597
3598 004226 10$: ; HERE FOR VMA BOARD EXAMINES
3599 004226 005037 000000G CLR .LDZFL ; DON'T PRINT LEADING ZEROES
3600 004232 20$: ; HERE FOR DATA PATH BOARD EXAMINES
3601 004232 CALL .CKEOC ; CHECK E-O-C
004232 004737 000000G JSR PC,.CKEOC
3602 004236 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
3603 004240 005046 CLR -(SP) ; .
3604 004242 005046 CLR -(SP) ; ..
3605 004244 010601 MOV SP,R1 ; ...POINT TO THE BUFFER
3606 004246 PUSH R0 ; ...SAVE THE DISPATCH ADDRESS
004246 010046 MOV R0,-(SP)
3607 004250 CALL .STPKL ; ....STOP THE KL
004250 004737 000000G JSR PC,.STPKL
3608 004254 CALL @(SP)+ ; ....READ THE REGISTER
004254 004736 JSR PC,@(SP)+
3609 004256 CALL .RSTKL ; ...YES -- RESTART THE KL
004256 004737 000000G JSR PC,.RSTKL
3610 004262 010200 MOV R2,R0 ; ...MESSAGE POINTER TO R0
3611 004264 CALL .TYMSG ; ...PRINT IT
004264 004737 000000G JSR PC,.TYMSG
3612 004270 CALL .TYSLS ; ...NOW A SLASH
004270 004737 000000G JSR PC,.TYSLS
3613 004274 CALL .TYSPC ; ...AND A SPACE
004274 004737 000000G JSR PC,.TYSPC
3614 004300 010100 MOV R1,R0 ; ...POINT TO THE DATA
3615 004302 CALL .TYKLN ; ...PRINT THAT
004302 004737 000000G JSR PC,.TYKLN
3616 004306 062706 000006 ADD #^D6,SP ; ...CLEAR THE STACK
3617 004312 CALLR .TCRLF ; ...END THE LINE AND EXIT
004312 000137 000000G JMP .TCRLF
3618 ;
3619
3620 .DSABL LSB
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 90
.EXAMF -- THE "EXAMINE FLAGS" COMMAND 7602.23
3622 .SBTTL .EXAMF -- THE "EXAMINE FLAGS" COMMAND 7602.23
3623
3624 ;+
3625 ; .EXAMF -- THE "EXAMINE FLAGS" COMMAND.
3626 ;
3627 ; THIS ROUTINE WILL READ AND DISPLAY THE KL PC FLAGS ON THE
3628 ; CONSOLE DEVICE.
3629 ;
3630 ; INPUT ARGUMENTS:
3631 ;
3632 ; NONE.
3633 ;
3634 ; OUTPUT ARGUMENTS:
3635 ;
3636 ; NONE.
3637 ;
3638 ; ERROR CODES RETURNED:
3639 ;
3640 ; NONE.
3641 ;-
3642
3643 004316 .EXAMF::
3644 004316 CALL .CKEOC ; CHECK E-O-C
004316 004737 000000G JSR PC,.CKEOC
3645 004322 CALL .STPKL ; STOP THE KL
004322 004737 000000G JSR PC,.STPKL
3646 004326 CALL .RDFLG ; READ THE FLAGS
004326 004737 005116' JSR PC,.RDFLG
3647 004332 CALL .RSTKL ; RESTART THE KL
004332 004737 000000G JSR PC,.RSTKL
3648 004336 010001 MOV R0,R1 ; FLAGS TO R1
3649 004340 001422 BEQ 30$ ; NONE ON -- SAY SO
3650 004342 012700 002121' MOV #EXFMSG,R0 ; HEADER
3651 004346 CALL .TYLIN ; PRINT IT
004346 004737 000000G JSR PC,.TYLIN
3652 004352 10$:
3653 004352 012700 002105' MOV #FONMSG,R0 ; ASSUME IT IS ON
3654 004356 032701 010000 BIT #BIT12,R1 ; IS THE FLAG ON?
3655 004362 001002 BNE 20$ ; YES -- GO ON
3656 004364 012700 002113' MOV #FOFMSG,R0 ; NO -- SAY SO
3657 004370 20$:
3658 004370 CALL .TYMSG ; PRINT THE STATE OF THE BIT
004370 004737 000000G JSR PC,.TYMSG
3659 004374 042701 010000 BIC #BIT12,R1 ; CLEAR THIS BIT OUT
3660 004400 006301 ASL R1 ; MOVE NEXT BIT IN
3661 004402 001363 BNE 10$ ; LOOP TILL R1 .EQ. 0
3662 004404 000404 BR 40$ ; DONE -- EXIT
3663 004406 30$:
3664 004406 012700 002056' MOV #NOFMSG,R0 ; "NO FLAGS"
3665 004412 CALL .TYMSG ; PRINT IT
004412 004737 000000G JSR PC,.TYMSG
3666 004416 40$:
3667 004416 CALLR .TCRLF ; END LINE AND RETURN
004416 000137 000000G JMP .TCRLF
3668 ;
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 91
.EXAMF -- THE "EXAMINE FLAGS" COMMAND 7602.23
3670 002056 .PSECT MESSAG
3671
3672 002056 NOFMSG:
3673 002056 116 117 040 .ASCIZ %NO KL PC FLAGS ARE SET%
002061 113 114 040
002064 120 103 040
002067 106 114 101
002072 107 123 040
002075 101 122 105
002100 040 123 105
002103 124 000
3674 002105 FONMSG:
3675 002105 040 040 130 .ASCIZ % X %
002110 040 040 000
3676 002113 FOFMSG:
3677 002113 040 040 040 .ASCIZ % %
002116 040 040 000
3678 002121 EXFMSG:
3679 002121 040 117 126 .ASCIZ % OVF CY0 CY1 FOV BIS USR UIO LIP AFI AT1 AT0 FUF NDV%
002124 106 040 040
002127 103 131 060
002132 040 040 103
002135 131 061 040
002140 040 106 117
002143 126 040 040
002146 102 111 123
002151 040 040 125
002154 123 122 040
002157 040 125 111
002162 117 040 040
002165 114 111 120
002170 040 040 101
002173 106 111 040
002176 040 101 124
002201 061 040 040
002204 101 124 060
002207 040 040 106
002212 125 106 040
002215 040 116 104
002220 126 000
3680
3681 004422 .PSECT
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 92
.EXAMK -- THE "EXAMINE KL" COMMAND 7602.23
3683 .SBTTL .EXAMK -- THE "EXAMINE KL" COMMAND 7602.23
3684
3685 ;+
3686 ; .EXAMK -- THE "EXAMINE KL" COMMAND
3687 ;
3688 ; THIS ROUTINE WILL EXAMINE AND DISPLAY THE FOLLOWING ITEMS ON THE
3689 ; CONSOLE DEVICE:
3690 ;
3691 ; (A) KL PROGRAM COUNTER
3692 ; (B) KL VMA REGISTER
3693 ; (C) KL PI SYSTEM STATE
3694 ; (D) KL PC FLAGS
3695 ;
3696 ; INPUT ARGUMENTS:
3697 ;
3698 ; NONE.
3699 ;
3700 ; OUTPUT ARGUMENTS:
3701 ;
3702 ; NONE.
3703 ;
3704 ; ERROR CODES RETURNED:
3705 ;
3706 ; NONE.
3707 ;-
3708
3709 004422 .EXAMK::
3710 004422 CALL .CKEOC ; CHECK E-O-C
004422 004737 000000G JSR PC,.CKEOC
3711 004426 PUSH .KLFLG ; SAVE ".KLFLG"
004426 013746 000000G MOV .KLFLG,-(SP)
3712 004432 CALL .STPKL ; .STOP THE KL
004432 004737 000000G JSR PC,.STPKL
3713 004436 012702 000000G MOV #PCMSG,R2 ; .MESSAGE POINTER TO R2
3714 004442 CALL .EXVPC ; .READ AND PRINT THE KL PC
004442 004737 004222' JSR PC,.EXVPC
3715 004446 012702 000000G MOV #VMAMSG,R2 ; .MESSAGE POINTER TO R2
3716 004452 CALL .EXVMA ; .READ AND PRINT THE KL VMA
004452 004737 004206' JSR PC,.EXVMA
3717 004456 CALL .EXMPI ; .DISPLAY THE PI SYSTEM
004456 004737 004612' JSR PC,.EXMPI
3718 004462 CALL .EXAMF ; .DISPLAY THE KL PC FLAGS
004462 004737 004316' JSR PC,.EXAMF
3719 004466 POP .SVKLF ; .SET UP ".SVKLF"
004466 012637 000000G MOV (SP)+,.SVKLF
3720 004472 CALLR .RSTKL ; RESTART THE KL
004472 000137 000000G JMP .RSTKL
3721 ;
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 93
.EXCRA -- SMALL REGISTER EXAMINES 7609.10
3723 .SBTTL .EXCRA -- SMALL REGISTER EXAMINES 7609.10
3724
3725 .ENABL LSB
3726
3727 004476 .EXCRA:: ; CRAM ADDRESS REGISTER
3728 004476 012700 005322' MOV #.RDCRA,R0 ; DISPATCH POINTER TO R0
3729 004502 000416 BR 10$ ; DO COMMON CODE
3730 ;
3731 004504 .EXCRL:: ; CRAM LOC REGISTER
3732 004504 012700 005330' MOV #.RDCRL,R0 ; DISPATCH POINTER TO R0
3733 004510 000413 BR 10$ ; DO COMMON CODE
3734 ;
3735 004512 .EXDRA:: ; DRAM ADDRESS REGISTER
3736 004512 012700 005336' MOV #.RDDRA,R0 ; DISPATCH POINTER TO R0
3737 004516 000410 BR 10$ ; DO COMMON CODE
3738 ;
3739 004520 .EXFER:: ; FLOATING EXPONENT REGISTER
3740 004520 012700 005344' MOV #.RDFER,R0 ; DISPATCH POINTER TO R0
3741 004524 000405 BR 10$ ; DO COMMON CODE
3742 ;
3743 004526 .EXSBR:: ; CRAM SBR RET REGISTER
3744 004526 012700 005352' MOV #.RDSBR,R0 ; DISPATCH POINTER TO R0
3745 004532 000402 BR 10$ ; DO COMMON CODE
3746 ;
3747 004534 .EXSCR::
3748 004534 012700 005360' MOV #.RDSCR,R0 ; DISPATCH POINTER TO R0
3749 ; BR 10$ ; DO COMMON CODE
3750 ;
3751
3752 ; [CONTINUED ON THE FOLLOWING PAGE]
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 94
.EXCRA -- SMALL REGISTER EXAMINES 7609.10
3754 ; [CONTINUED FROM THE PREVIOUS PAGE]
3755
3756 004540 10$: ; HERE FOR SMALL REGISTER READS
3757 004540 CALL .CKEOC ; CHECK E-O-C
004540 004737 000000G JSR PC,.CKEOC
3758 004544 PUSH R0 ; SAVE DISPATCH ADDRESS
004544 010046 MOV R0,-(SP)
3759 004546 CALL .STPKL ; .STOP THE KL
004546 004737 000000G JSR PC,.STPKL
3760 004552 CALL @(SP)+ ; .READ THE REGISTER
004552 004736 JSR PC,@(SP)+
3761 004554 PUSH R0 ; SAVE THE REGISTER DATA
004554 010046 MOV R0,-(SP)
3762 004556 CALL .RSTKL ; .YES -- RESTART THE KL
004556 004737 000000G JSR PC,.RSTKL
3763 004562 010200 MOV R2,R0 ; .MESSAGE POINTER TO R0
3764 004564 CALL .TYMSG ; .PRINT IT
004564 004737 000000G JSR PC,.TYMSG
3765 004570 CALL .TYSLS ; .AND A SLASH
004570 004737 000000G JSR PC,.TYSLS
3766 004574 CALL .TYSPC ; .AND A SPACE
004574 004737 000000G JSR PC,.TYSPC
3767 004600 POP R0 ; .GET THE DATA
004600 012600 MOV (SP)+,R0
3768 004602 CALL .TYELN ; PRINT IT
004602 004737 000000G JSR PC,.TYELN
3769 004606 CALLR .TCRLF ; END THE LINE AND EXIT
004606 000137 000000G JMP .TCRLF
3770 ;
3771
3772 .DSABL LSB
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 96
.EXMPI -- THE "EXAMINE PI" COMMAND 7602.23
3775 .SBTTL .EXMPI -- THE "EXAMINE PI" COMMAND 7602.23
3776
3777 ;+
3778 ; .EXMPI -- THE "EXAMINE PI" COMMAND
3779 ;
3780 ; THIS ROUTINE READS THE STATE OF THE KL PI SYSTEM AND DISPLAYS IT
3781 ; ON THE CONSOLE DEVICE.
3782 ;
3783 ; INPUT ARGUMENTS:
3784 ;
3785 ; NONE.
3786 ;
3787 ; OUTPUT ARGUMENTS:
3788 ;
3789 ; NONE.
3790 ;
3791 ; ERROR CODES RETURNED:
3792 ;
3793 ; NONE.
3794 ;-
3795
3796 004612 .EXMPI::
3797 004612 CALL .CKEOC ; CHECK THE E-O-C CHARACTER
004612 004737 000000G JSR PC,.CKEOC
3798 004616 005002 CLR R2 ; CLEAR R2
3799 004620 CALL .STPKL ; STOP THE KL
004620 004737 000000G JSR PC,.STPKL
3800 004624 CALL .RDPI ; READ THE PI SYSTEM STATE
004624 004737 005242' JSR PC,.RDPI
3801 004630 CALL .RSTKL ; RESTART THE KL
004630 004737 000000G JSR PC,.RSTKL
3802 004634 010001 MOV R0,R1 ; DATA POINTER TO R1
3803 004636 012700 002222' MOV #EPMSG0,R0 ; MESSAGE POINTER TO R0
3804 004642 CALL .TYMSG ; PRINT IT
004642 004737 000000G JSR PC,.TYMSG
3805 004646 012700 000000G MOV #ONMSG,R0 ; "ON"
3806 004652 052102 BIS (R1)+,R2 ; PI ACTIVE + PI ON TO R2
3807 004654 032702 000200 BIT #200,R2 ; IS IT ON?
3808 004660 001002 BNE 10$ ; YES -- GO ON
3809 004662 012700 000000G MOV #OFFMSG,R0 ; NO -- SO SAY "OFF"
3810
3811 ; [CONTINUED ON THE FOLLOWING PAGE]
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 97
.EXMPI -- THE "EXAMINE PI" COMMAND 7602.23
3813 ; [CONTINUED FROM THE PREVIOUS PAGE]
3814
3815 004666 10$:
3816 004666 CALL .TYMSG ; PRINT IT
004666 004737 000000G JSR PC,.TYMSG
3817 004672 012700 002236' MOV #EPMSG1,R0 ; "PI ON"
3818 004676 CALL .TYMSG ; PRINT IT
004676 004737 000000G JSR PC,.TYMSG
3819 004702 010200 MOV R2,R0 ; GET ACTIVE BITS
3820 004704 042700 177600 BIC #^C177,R0 ; FLUSH JUNK
3821 004710 CALL .TYP3D ; PRINT THEM
004710 004737 000000G JSR PC,.TYP3D
3822 004714 012700 002250' MOV #EPMSG2,R0 ; "PI HOLD"
3823 004720 CALL .TYMSG ; PRINT IT
004720 004737 000000G JSR PC,.TYMSG
3824 004724 112100 MOVB (R1)+,R0 ; GET THE PI HOLD BITS
3825 004726 042700 177600 BIC #^C177,R0 ; FLUSH JUNK
3826 004732 CALL .TYP3D ; PRINT THEM
004732 004737 000000G JSR PC,.TYP3D
3827 004736 012700 002264' MOV #EPMSG3,R0 ; "PI GEN"
3828 004742 CALL .TYMSG ; PRINT IT
004742 004737 000000G JSR PC,.TYMSG
3829 004746 112100 MOVB (R1)+,R0 ; GET THE GEN BITS
3830 004750 042700 177600 BIC #^C177,R0 ; FLUSH JUNK
3831 004754 CALL .TYP3D ; PRINT THEM
004754 004737 000000G JSR PC,.TYP3D
3832 004760 CALLR .TCRLF ; END THE LINE AND RETURN
004760 000137 000000G JMP .TCRLF
3833 ;
3834 002222 .PSECT MESSAG
3835
3836 002222 EPMSG0:
3837 002222 120 111 040 .ASCIZ %PI ACTIVE: %
002225 101 103 124
002230 111 126 105
002233 072 040 000
3838 002236 EPMSG1:
3839 002236 054 040 120 .ASCIZ %, PI ON: %
002241 111 040 117
002244 116 072 040
002247 000
3840 002250 EPMSG2:
3841 002250 054 040 120 .ASCIZ %, PI HOLD: %
002253 111 040 110
002256 117 114 104
002261 072 040 000
3842 002264 EPMSG3:
3843 002264 054 040 120 .ASCIZ %, PI GEN: %
002267 111 040 107
002272 105 116 072
002275 040 000
3844 004764 .PSECT
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 98
.EXREG -- THE "EXAMINE REGISTERS" COMMAND 7602.16
3846 .SBTTL .EXREG -- THE "EXAMINE REGISTERS" COMMAND 7602.16
3847
3848 004764 .EXREG::
3849 004764 CALL .CKEOC ; CHECK E-O-C
004764 004737 000000G JSR PC,.CKEOC
3850 004770 CALL .STPKL ; STOP THE KL
004770 004737 000000G JSR PC,.STPKL
3851 004774 012701 000000G MOV #.EXMTB,R1 ; TABLE POINTER TO R1
3852 005000 012703 000000G MOV #EXRTBL,R3 ; COUNT TO R3
3853 005004 10$:
3854 005004 012102 MOV (R1)+,R2 ; MESSAGE ADDRESS TO R2
3855 005006 PUSH R1 ; SAVE R1
005006 010146 MOV R1,-(SP)
3856 005010 CALL @2(R1) ; .READ AND PRINT THE REGISTER
005010 004771 000002 JSR PC,@2(R1)
3857 005014 POP R1 ; .RESTORE R1
005014 012601 MOV (SP)+,R1
3858 005016 022121 CMP (R1)+,(R1)+ ; ADVANCE THE POINTER
3859 005020 077307 SOB R3,10$ ; LOOP TILL COUNT EXHAUSTED
3860 005022 CALLR .RSTKL ; RESTART THE KL
005022 000137 000000G JMP .RSTKL
3861 ;
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 99
.RDDPB -- SUBROUTINES TO READ THE KL DATA PATH BOARDS 7509.23
3863 .SBTTL .RDDPB -- SUBROUTINES TO READ THE KL DATA PATH BOARDS 7509.23
3864
3865 ;+
3866 ; .RDADR -- SUBROUTINE TO READ THE KL ADDER REGISTER.
3867 ; .RDADX -- SUBROUTINE TO READ THE KL ADDER EXTENSION REGISTER.
3868 ; .RDARR -- SUBROUTINE TO READ THE KL ARITHMETIC REGISTER.
3869 ; .RDARX -- SUBROUTINE TO READ THE KL ARITHMETIC REGISTER EXTENSION.
3870 ; .RDBRR -- SUBROUTINE TO READ THE KL BUFFER REGISTER.
3871 ; .RDBRX -- SUBROUTINE TO READ THE KL BUFFER REGISTER EXTENSION.
3872 ; .RDEBS -- SUBROUTINE TO READ THE KL EBUS REGISTER.
3873 ; .RDFMR -- SUBROUTINE TO READ THE KL FAST MEMORY REGISTER.
3874 ; .RDMQR -- SUBROUTINE TO READ THE KL MULTIPLIER QUOTIENT REGISTER.
3875 ;
3876 ; THESE SUBROUTINES READ AND RETURN THE CONTENT OF THE SPECIFIED KL
3877 ; DATA PATH REGISTER IN A TRIPLET POINTED TO BY R1 IN THE CALL.
3878 ;
3879 ; INPUT ARGUMENTS:
3880 ;
3881 ; R1 CONTAINS A POINTER TO A 3 WORD DATA BUFFER
3882 ;
3883 ; OUTPUT ARGUMENTS:
3884 ;
3885 ; R0 CONTAINS A POINTER TO THE DATA.
3886 ;
3887 ; ERROR CODES RETURNED:
3888 ;
3889 ; FRF -- FUNCTION READ FAILED.
3890 ;-
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 100
.RDDPB -- SUBROUTINES TO READ THE KL DATA PATH BOARDS 7509.23
3892 .ENABL LSB
3893
3894 005026 .RDADR::
3895 005026 012700 000256 MOV #FR.RAD,R0 ; READ THE KL ADDER
3896 005032 000427 BR 10$ ; COMMON CODE
3897 ;
3898 005034 .RDADX::
3899 005034 012700 000254 MOV #FR.ADX,R0 ; READ THE KL ADDER EXTENSION
3900 005040 000424 BR 10$ ; COMMON CODE
3901 ;
3902 005042 .RDARR::
3903 005042 012700 000240 MOV #FR.RAR,R0 ; READ THE KL ARITHMETIC REGISTER
3904 005046 000421 BR 10$ ; COMMON CODE
3905 ;
3906 005050 .RDARX::
3907 005050 012700 000252 MOV #FR.ARX,R0 ; READ THE KL AR EXTENSION REGISTER
3908 005054 000416 BR 10$ ; COMMON CODE
3909 ;
3910 005056 .RDBRR::
3911 005056 012700 000242 MOV #FR.RBR,R0 ; READ THE KL BUFFER REGISTER
3912 005062 000413 BR 10$ ; COMMON CODE
3913 ;
3914 005064 .RDBRX::
3915 005064 012700 000250 MOV #FR.BRX,R0 ; READ THE KL BR EXTENSION REGISTER
3916 005070 000410 BR 10$ ; COMMON CODE
3917 ;
3918 005072 .RDEBS::
3919 005072 012700 000356 MOV #FR.EBS,R0 ; READ THE KL EBUS REGISTER
3920 005076 000405 BR 10$ ; COMMON CODE
3921 ;
3922 005100 .RDFMR::
3923 005100 012700 000246 MOV #FR.RFM,R0 ; READ THE KL FAST MEMORY REGISTER
3924 005104 000402 BR 10$ ; COMMON CODE
3925 ;
3926 005106 .RDMQR::
3927 005106 012700 000244 MOV #FR.RMQ,R0 ; READ THE KL MULTIPLIER QUOTIENT REGISTER
3928 ; FALL INTO COMMON CODE
3929 005112 10$:
3930 005112 CALLR .FREAD ; READ IT AND EXIT
005112 000137 000000G JMP .FREAD
3931 ;
3932
3933 .DSABL LSB
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 101
.RDFLG -- SUBROUTINE TO READ THE KL PC FLAGS 7511.24
3935 .SBTTL .RDFLG -- SUBROUTINE TO READ THE KL PC FLAGS 7511.24
3936
3937 ;+
3938 ; .RDFLG -- SUBROUTINE TO READ THE KL PC FLAGS.
3939 ;
3940 ; THIS SUBROUTINE READS AND RETURNS THE STATE OF THE KL PC FLAGS IN R0.
3941 ;
3942 ; INPUT ARGUMENTS:
3943 ;
3944 ; NONE.
3945 ;
3946 ; OUTPUT ARGUMENTS:
3947 ;
3948 ; R0 CONTAINS THE KL PC FLAGS
3949 ;
3950 ; THE FOLLOWING IS A LIST OF THE KL FLAGS RETURNED IN R0:
3951 ;
3952 ; BIT # PC FLAG BIT AND MEANING KL BIT
3953 ; ----- ---------------------------- --------
3954 ;
3955 ; 12 PC.OVF -- KL OVERFLOW FLAG -- 00
3956 ; 11 PC.CY0 -- KL CARRY 0 FLAG -- 01
3957 ; 10 PC.CY1 -- KL CARRY 1 FLAG -- 02
3958 ; 09 PC.FOV -- KL FLOATING OVERFLOW FLAG -- 03
3959 ; 08 PC.BIS -- KL BYTE INCREMENT SUPPRESSION FLAG -- 04
3960 ; 07 PC.USR -- KL USER MODE FLAG -- 05
3961 ; 06 PC.UIO -- KL USER IOT MODE FLAG -- 06
3962 ; 05 PC.LIP -- KL LAST INSTRUCTION PUBLIC FLAG -- 07
3963 ; 04 PC.AFI -- KL ADDRESS FAILURE INHIBIT FLAG -- 08
3964 ; 03 PC.AT1 -- KL APR TRAP 1 FLAG -- 09
3965 ; 02 PC.AT0 -- KL APR TRAP 0 FLAG -- 10
3966 ; 01 PC.FUF -- KL FLOATING UNDERFLOW FLAG -- 11
3967 ; 00 PC.NDV -- KL NO DIVIDE FLAG -- 12
3968 ;
3969 ; ERROR CODES RETURNED:
3970 ;
3971 ; FRF -- FUNCTION READ FAILED.
3972 ;-
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 102
.RDFLG -- SUBROUTINE TO READ THE KL PC FLAGS 7511.24
3974 005116 .RDFLG::
3975 005116 PUSH <R1,R2> ; SAVE R1 AND R2 ON THE STACK
005116 010146 MOV R1,-(SP)
005120 010246 MOV R2,-(SP)
3976 005122 005001 CLR R1 ; ..CLEAR R1
3977 005124 005002 CLR R2 ; ..AND R2
3978 005126 012700 000202 MOV #FR.101,R0 ; ..FR CODE FOR LOW FLAGS
3979 005132 CALL .FREAD ; ..READ THEM
005132 004737 000000G JSR PC,.FREAD
3980 005136 012701 177764 MOV #-^D12,R1 ; ..SHIFT COUNT TO R1
3981 005142 CALL .TPSHI ; ..SHIFT OUR WORD
005142 004737 000000G JSR PC,.TPSHI
3982 005146 042710 177700 BIC #177700,(R0) ; ..MASK OUT FLAG BITS
3983 005152 051002 BIS (R0),R2 ; ..PUT THE LOW FLAGS IN R2
3984 005154 005001 CLR R1 ; ..AGAIN
3985 005156 012700 000200 MOV #FR.100,R0 ; ..FR CODE FOR MOST OF THE FLAGS
3986 005162 CALL .FREAD ; ..READ THEM
005162 004737 000000G JSR PC,.FREAD
3987 005166 012701 177772 MOV #-^D6,R1 ; ..SHIFT COUNT TO R1
3988 005172 CALL .TPSHI ; ..SHIFT THE DATA
005172 004737 000000G JSR PC,.TPSHI
3989 005176 042710 170077 BIC #170077,(R0) ; ..JUST THE BITS WE WANT
3990 005202 051002 BIS (R0),R2 ; ..SAVE THE HIGH FLAGS IN R2
3991 005204 005001 CLR R1 ; ..CLEAR R1 AGAIN
3992 005206 012700 000264 MOV #FR.132,R0 ; ..FR CODE FOR LAST FLAG BIT
3993 005212 CALL .FREAD ; ..READ IT
005212 004737 000000G JSR PC,.FREAD
3994 005216 032760 000001 000004 BIT #BIT00,4(R0) ; ..IS IT ON?
3995 005224 001402 BEQ 10$ ; ..NO -- JUST EXIT
3996 005226 052702 010000 BIS #PC.OVF,R2 ; ..YES -- SET IT IN OUR WORD
3997 005232 10$:
3998 005232 010200 MOV R2,R0 ; ..PUT A COPY IN R0
3999 005234 POP <R2,R1> ; ..RESTORE REGISTERS
005234 012602 MOV (SP)+,R2
005236 012601 MOV (SP)+,R1
4000 005240 RETURN ; TO CALLER
005240 000207 RTS PC
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 103
.RDPI -- SUBROUTINE TO READ THE PI BOARDS 7510.16
4002 .SBTTL .RDPI -- SUBROUTINE TO READ THE PI BOARDS 7510.16
4003
4004 ;+
4005 ; .RDPI -- SUBROUTINE TO READ THE KL PI BOARDS.
4006 ;
4007 ; THIS SUBROUTINE READS THE KL PI BOARDS AND STORES THE STATUS IN
4008 ; A TWO WORD TABLE, ".PITAB", WHICH IS POINTED TO BY R0 ON SUCCESSFUL
4009 ; RETURN.
4010 ;
4011 ; WORD 0 OF ".PITAB" CONTAINS:
4012 ;
4013 ; (A) PIH 1 THRU PIH 7 (BITS 14 THRU 08),
4014 ; (B) PI ACTIVE (BIT 07),
4015 ; (C) PI ON 1 THRU PI ON 7 (BITS 06 THRU 00).
4016 ;
4017 ; WORD 2 OF ".PITAB" CONTAINS:
4018 ;
4019 ; (A) PI GEN 1 THRU PI GEN 7 (BITS 06 THRU 00).
4020 ;
4021 ; INPUT ARGUMENTS:
4022 ;
4023 ; NONE.
4024 ;
4025 ; OUTPUT ARGUMENTS:
4026 ;
4027 ; R0 POINTS TO ".PITAB".
4028 ;
4029 ; ERROR CODES RETURNED:
4030 ;
4031 ; FRF -- FUNCTION READ FAILED.
4032 ;-
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 104
.RDPI -- SUBROUTINE TO READ THE PI BOARDS 7510.16
4034 005242 .RDPI::
4035 005242 PUSH <R1,R2,R3> ; SAVE REGISTERS
005242 010146 MOV R1,-(SP)
005244 010246 MOV R2,-(SP)
005246 010346 MOV R3,-(SP)
4036 005250 012703 000346' MOV #RDPITB,R3 ; ...TABLE POINTER TO R3
4037 005254 012702 000000G MOV #.PITAB,R2 ; ...SAVE AREA POINTER TO R2
4038 005260 10$:
4039 005260 005001 CLR R1 ; ...CLEAR R1
4040 005262 012300 MOV (R3)+,R0 ; ...FR CODE TO R0
4041 005264 CALL .FREAD ; ...READ IT
005264 004737 000000G JSR PC,.FREAD
4042 005270 012301 MOV (R3)+,R1 ; ...SHIFT COUNT TO R1
4043 005272 CALL .TPSHI ; ...SHIFT IT
005272 004737 000000G JSR PC,.TPSHI
4044 005276 042310 BIC (R3)+,(R0) ; ...CLEAR UNWANTED BIT(S)
4045 005300 011022 MOV (R0),(R2)+ ; ...PUT IT IN SAVE AREA
4046 005302 022703 000362' CMP #RDPITE,R3 ; ...ARE WE AT END OF TABLE?
4047 005306 001364 BNE 10$ ; ...NO -- KEEP GOING
4048 005310 011300 MOV (R3),R0 ; ...YES -- POINT TO SAVE AREA
4049 005312 POP <R3,R2,R1> ; ...RESTORE REGISTERS
005312 012603 MOV (SP)+,R3
005314 012602 MOV (SP)+,R2
005316 012601 MOV (SP)+,R1
4050 005320 RETURN ; TO CALLER
005320 000207 RTS PC
4051
4052 000346 .PSECT DATA
4053
4054 000346 RDPITB:
4055 000346 000200 .WORD FR.PI0 ; FIRST READ CODE
4056 000350 177756 .WORD -^D18 ; SHIFT COUNT
4057 000352 100000 .WORD BIT15 ; MASK
4058 000354 000202 .WORD FR.PI1 ; SECOND READ CODE
4059 000356 177756 .WORD -^D18 ; SHIFT COUNT
4060 000360 177600 .WORD 177600 ; MASK
4061 000362' RDPITE=.
4062 000362 000000G .WORD .PITAB ; POINTER TO SAVE AREA
4063
4064 005322 .PSECT
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 105
.RDSMR -- SUBROUTINE TO READ SMALL KL REGISTERS 7511.05
4066 .SBTTL .RDSMR -- SUBROUTINE TO READ SMALL KL REGISTERS 7511.05
4067
4068 ;+
4069 ; .RDCRA -- SUBROUTINE TO READ THE KL CRAM ADDR REGISTER.
4070 ; .RDCRL -- SUBROUTINE TO READ THE KL CRAM LOC REGISTER.
4071 ; .RDDRA -- SUBROUTINE TO READ THE KL DRAM ADDR REGISTER.
4072 ; .RDFER -- SUBROUTINE TO READ THE KL FLOATING EXPONENT REGISTER.
4073 ; .RDSCR -- SUBROUTINE TO READ THE KL SHIFT COUNT REGISTER.
4074 ; .RDSBR -- SUBROUTINE TO READ THE KL CRAM SUBROUTINE RETURN REGISTER.
4075 ;
4076 ; THESE SUBROUTINES READ THE CONTENT OF THE SPECIFIED REGISTER
4077 ; AND RETURN IT IN R0. NOTE THAT THE CONTENT OF EACH REGISTER IS LESS
4078 ; THAN 16 BITS AND MUST BE READ USING TWO FUNCTION READS.
4079 ;
4080 ; INPUT ARGUMENTS:
4081 ;
4082 ; NONE.
4083 ;
4084 ; OUTPUT ARGUMENTS:
4085 ;
4086 ; R0 HOLDS THE CONTENT OF THE SPECIFIED REGISTER
4087 ;
4088 ; ERROR CODES RETURNED:
4089 ;
4090 ; FRF -- FUNCTION READ FAILED.
4091 ;-
4092
4093 .ENABL LSB
4094
4095 005322 .RDCRA::
4096 005322 012700 000364' MOV #CRATAB,R0 ; POINT TO CRAM ADDRESS TABLE
4097 005326 000416 BR 10$ ; DO COMMON CODE
4098 ;
4099 005330 .RDCRL::
4100 005330 012700 000400' MOV #CRLTAB,R0 ; POINT TO CR LOC TABLE
4101 005334 000413 BR 10$ ; DO COMMON CODE
4102 ;
4103 005336 .RDDRA::
4104 005336 012700 000414' MOV #DRATAB,R0 ; POINT TO DRAM ADDR TABLE
4105 005342 000410 BR 10$ ; DO COMMON CODE
4106 ;
4107 005344 .RDFER::
4108 005344 012700 000430' MOV #FERTAB,R0 ; POINT TO FE TABLE
4109 005350 000405 BR 10$ ; DO COMMON CODE
4110 ;
4111 005352 .RDSBR::
4112 005352 012700 000444' MOV #SBRTAB,R0 ; POINT TO CRAM SBR RET TABLE
4113 005356 000402 BR 10$ ; DO COMMON CODE
4114 ;
4115 005360 .RDSCR::
4116 005360 012700 000460' MOV #SCRTAB,R0 ; POINT TO SHIFT COUNT TABLE
4117 ; BR 10$ ; FALL INTO COMMON CODE
4118
4119 ; [CONTINUED ON THE FOLLOWING PAGE]
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 106
.RDSMR -- SUBROUTINE TO READ SMALL KL REGISTERS 7511.05
4121 ; [CONTINUED FROM THE PREVIOUS PAGE]
4122
4123 005364 10$: ; HERE FROM PREVIOUS PAGE
4124 005364 PUSH <R1,R2> ; SAVE CALLER'S REGISTERS
005364 010146 MOV R1,-(SP)
005366 010246 MOV R2,-(SP)
4125 005370 010002 MOV R0,R2 ; ..POINTER TO R2
4126 005372 005001 CLR R1 ; ..CLEAR R1
4127 005374 012200 MOV (R2)+,R0 ; ..READ THE HIGH ORDER BITS
4128 005376 CALL .FREAD ; ..DO IT
005376 004737 000000G JSR PC,.FREAD
4129 005402 012201 MOV (R2)+,R1 ; ..SHIFT COUNT TO R1
4130 005404 CALL .TPSHI ; ..SHIFT IT
005404 004737 000000G JSR PC,.TPSHI
4131 005410 042210 BIC (R2)+,(R0) ; ..MASK OUT UNWANTED BITS
4132 005412 PUSH (R0) ; ..SAVE THE BITS
005412 011046 MOV (R0),-(SP)
4133 005414 012200 MOV (R2)+,R0 ; ...READ THE LOW ORDER BITS
4134 005416 005001 CLR R1 ; ...CLEAR R1
4135 005420 CALL .FREAD ; ...DO IT
005420 004737 000000G JSR PC,.FREAD
4136 005424 012201 MOV (R2)+,R1 ; ...SHIFT COUNT TO R1
4137 005426 CALL .TPSHI ; ...SHIFT IT
005426 004737 000000G JSR PC,.TPSHI
4138 005432 042210 BIC (R2)+,(R0) ; ...MASK OUT UNWANTED BITS
4139 005434 051610 BIS (SP),(R0) ; ...SET IN THE HIGH ORDER BITS
4140 005436 011000 MOV (R0),R0 ; ...PUT IT IN R0
4141 005440 005726 TST (SP)+ ; ...CLEAR THE STACK
4142 005442 POP <R2,R1> ; ..RESTORE REGISTERS
005442 012602 MOV (SP)+,R2
005444 012601 MOV (SP)+,R1
4143 005446 RETURN ; TO CALLER
005446 000207 RTS PC
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 107
.RDSMR -- SUBROUTINE TO READ SMALL KL REGISTERS 7511.05
4145 ; TABLES FOR SMALL REGISTER READS
4146
4147 000364 .PSECT DATA
4148
4149 000364 CRATAB:
4150 000364 000312 .WORD FR.CA1 ; FR FOR CRAM ADDR HIGH BITS
4151 000366 177750 .WORD -^D24 ; SHIFT COUNT FOR SAME
4152 000370 174077 .WORD 174077 ; BIT MASK FOR SAME
4153 000372 000310 .WORD FR.CA2 ; FR FOR CRAM ADDR LOW BITS
4154 000374 177742 .WORD -^D30 ; SHIFT COUNT FOR SAME
4155 000376 177700 .WORD 177700 ; BIT MASK FOR SAME
4156
4157 000400 CRLTAB:
4158 000400 000316 .WORD FR.CL1 ; FR FOR CRAM LOC HIGH BITS
4159 000402 177750 .WORD -^D24 ; SHIFT COUNT FOR SAME
4160 000404 174077 .WORD 174077 ; BIT MASK FOR SAME
4161 000406 000314 .WORD FR.CL2 ; FR FOR CRAM LOC LOW BITS
4162 000410 177742 .WORD -^D30 ; SHIFT COUNT FOR SAME
4163 000412 177700 .WORD 177700 ; BIT MASK FOR SAME
4164
4165 000414 DRATAB:
4166 000414 000260 .WORD FR.DA1 ; FR FOR DRAM ADDR HIGH BITS
4167 000416 177764 .WORD -^D12 ; SHIFT COUNT FOR SAME
4168 000420 177077 .WORD 177077 ; BIT MASK FOR SAME
4169 000422 000262 .WORD FR.DA2 ; FR FOR DRAM ADDR LOW BITS
4170 000424 177756 .WORD -^D18 ; SHIFT COUNT FOR SAME
4171 000426 177700 .WORD 177700 ; BIT MASK FOR SAME
4172
4173 000430 FERTAB:
4174 000430 000266 .WORD FR.FE1 ; FR FOR FE HIGH BITS
4175 000432 177755 .WORD -^D19 ; SHIFT COUNT FOR SAME
4176 000434 176037 .WORD 176037 ; BIT MASK FOR SAME
4177 000436 000264 .WORD FR.FE2 ; FR FOR FE LOW BITS
4178 000440 177750 .WORD -^D24 ; SHIFT COUNT FOR SAME
4179 000442 177740 .WORD 177740 ; BIT MASK FOR SAME
4180
4181 000444 SBRTAB:
4182 000444 000306 .WORD FR.SR1 ; FR FOR SBR RET HIGH BITS
4183 000446 177750 .WORD -^D24 ; SHIFT COUNT FOR SAME
4184 000450 174077 .WORD 174077 ; BIT MASK FOR SAME
4185 000452 000304 .WORD FR.SR2 ; FR FOR SBR RET LOW BITS
4186 000454 177742 .WORD -^D30 ; SHIFT COUNT FOR SAME
4187 000456 177700 .WORD 177700 ; BIT MASK FOR SAME
4188
4189 000460 SCRTAB:
4190 000460 000262 .WORD FR.SC1 ; FR FOR SHIFT COUNT HIGH BITS
4191 000462 177755 .WORD -^D19 ; SHIFT COUNT FOR SAME
4192 000464 177417 .WORD 177417 ; BIT MASK FOR SAME
4193 000466 000260 .WORD FR.SC2 ; FR FOR SHIFT COUNT LOW BITS
4194 000470 177750 .WORD -^D24 ; SHIFT COUNT FOR SAME
4195 000472 177760 .WORD 177760 ; BIT MASK FOR SAME
4196
4197 005450 .PSECT
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 108
.RDVXX -- KL VMA BOARD READ SUBROUTINES 7510.21
4199 .SBTTL .RDVXX -- KL VMA BOARD READ SUBROUTINES 7510.21
4200
4201 ;+
4202 ; .RDVPC -- SUBROUTINE TO READ THE KL PROGRAM COUNTER REGISTER
4203 ; .RDVAB -- SUBROUTINE TO READ THE KL ADDRESS BREAK REGISTER.
4204 ; .RDVMA -- SUBROUTINE TO READ THE KL VMA REGISTER.
4205 ; .RDVMH -- SUBROUTINE TO READ THE KL VMAH REGISTER.
4206 ;
4207 ; THESE SUBROUTINES READ AND ASSEMBLE THE DESIRED VMA BOARD REGISTER
4208 ; INTO A THREE WORD BLOCK POINTED TO BY R1 IN THE CALL.
4209 ;
4210 ; INPUT ARGUMENTS:
4211 ;
4212 ; R1 POINTS TO A TWO WORD BUFFER FOR THE SPECIFIED REGISTER
4213 ;
4214 ; OUTPUT ARGUMENTS:
4215 ;
4216 ; R1 POINTS TO A TWO WORD BUFFER FOR THE SPECIFIED REGISTER
4217 ;
4218 ; ERROR CODES RETURNED:
4219 ;
4220 ; FRF -- FUNCTION READ FAILED.
4221 ;-
4222
4223 .ENABL LSB
4224
4225 005450 .RDVPC::
4226 005450 012700 000474' MOV #PCTAB,R0 ; POINTER TO PC TABLE
4227 005454 000410 BR 10$
4228 ;
4229 005456 .RDVAB::
4230 005456 012700 000502' MOV #ABTAB,R0 ; POINTER TO ADDRESS BREAK TABLE
4231 005462 000405 BR 10$
4232 ;
4233 005464 .RDVMA::
4234 005464 012700 000510' MOV #VMATB,R0 ; POINTER TO VMA TABLE
4235 005470 000402 BR 10$
4236 ;
4237 005472 .RDVMH::
4238 005472 012700 000516' MOV #VMHTB,R0 ; POINTER TO VMAH TABLE
4239 005476 10$:
4240 005476 CALL R5,.REGSV ; SAVE R5 - R1 ON THE STACK
005476 004537 000000G JSR R5,.REGSV
4241 005502 010005 MOV R0,R5 ; TABLE POINTER TO R5
4242 005504 012704 000004 MOV #^D4,R4 ; ITERATION COUNT TO R4
4243 005510 010103 MOV R1,R3 ; USER BUFFER ADDRESS TO R3
4244 005512 012502 MOV (R5)+,R2 ; FUNCTION READ BASE TO R2
4245 005514 PUSH (R5)+ ; MASK WORD TO TOP OF THE STACK
005514 012546 MOV (R5)+,-(SP)
4246 005516 011505 MOV (R5),R5 ; .SHIFT BASE TO R5
4247 005520 010100 MOV R1,R0 ; .CLEAR CALLER'S AREA
4248 005522 CALL .TPCLR ; .SO
005522 004737 000000G JSR PC,.TPCLR
4249
4250 ; [CONTINUED ON THE FOLLOWING PAGE]
EXREG -- EXAMINE 22 AND 36 BIT MACRO M1113 10-NOV-81 17:48 PAGE 109
.RDVXX -- KL VMA BOARD READ SUBROUTINES 7510.21
4252 ; [CONTINUED FROM THE PREVIOUS PAGE]
4253
4254 005526 20$: ; .GET HERE FROM .RDVXX, ABOVE
4255 005526 010200 MOV R2,R0 ; .SET THE FUNCTION READ NUMBER
4256 005530 006300 ASL R0 ; .TIMES 2
4257 005532 005001 CLR R1 ; .CLEAR R1
4258 005534 CALL .FREAD ; .READ IT
005534 004737 000000G JSR PC,.FREAD
4259 005540 041620 BIC (SP),(R0)+ ; .SP POINTS TO BIT MASK
4260 005542 041610 BIC (SP),(R0) ; .R0 POINTS TO READ BLOCK
4261 005544 005740 TST -(R0) ; .NOW BACK THE POINTER UP
4262 005546 010501 MOV R5,R1 ; .GET THE SHIFT COUNT INTO R1
4263 005550 CALL .TPSHI ; .AND SHIFT IT
005550 004737 000000G JSR PC,.TPSHI
4264 005554 052023 BIS (R0)+,(R3)+ ; .SET THE BITS IN THE USER BUFFER
4265 005556 051013 BIS (R0),(R3) ; .SO
4266 005560 005743 TST -(R3) ; .BACK CALLER'S POINTER UP
4271 005562 122225 CMPB (R2)+,(R5)+ ; .INCREMENT READ NUMBER AND SHIFT COUNT
4273 005564 077420 SOB R4,20$ ; .DO THIS FOUR TIMES
4274 005566 042763 177600 000002 BIC #177600,2(R3) ; .GET RID OF BITS HIGHER THAN 13
4275 005574 005726 TST (SP)+ ; CLEAR THE STACK
4276 005576 RETURN ; RETURN TO CALLER
005576 000207 RTS PC
4277
4278 .DSABL LSB
4279
4280 ; TABLES FOR VMA BOARD READS
4281
4282 000474 .PSECT DATA
4283
4284 000474 PCTAB:
4285 000474 000150 .WORD FR.150/2 ; BASE READ FOR PC REGISTER
4286 000476 135673 .WORD 135673 ; BIT MASK " " "
4287 000500 177776 .WORD -^D2 ; SHIFT CNT " " "
4288 000502 ABTAB:
4289 000502 000150 .WORD FR.150/2 ; BASE READ FOR ADDRESS BREAK REGISTER
4290 000504 167356 .WORD 167356 ; BIT MASK " " " "
4291 000506 000000 .WORD 0 ; SHIFT CNT " " " "
4292 000510 VMATB:
4293 000510 000154 .WORD FR.154/2 ; BASE READ FOR VMA REGISTER
4294 000512 135673 .WORD 135673 ; BIT MASK " " "
4295 000514 177776 .WORD -^D2 ; SHIFT CNT " " "
4296 000516 VMHTB:
4297 000516 000154 .WORD FR.154/2 ; BASE READ FOR VMAH REGISTER
4298 000520 167356 .WORD 167356 ; BIT MASK " " "
4299 000522 000000 .WORD 0 ; SHIFT CNT " " "
4300
4301 005600 .PSECT
4302 .TITLE GTTIM -- INPUT AND DISPLAY DATE AND TIME MODULE 7703.04
4303
4304 .IDENT "006060"
4305
4306 ;
4307 ; COPYRIGHT (C) 1975, 1979 BY
4308 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
4309 ;
4310 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 109-1
.RDVXX -- KL VMA BOARD READ SUBROUTINES 7510.21
4311 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
4312 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
4313 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
4314 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
4315 ;
4316 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
4317 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
4318 ; CORPORATION.
4319 ;
4320 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
4321 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
4322 ;
4323 ; MODULE: INPUT AND DISPLAY DATE AND TIME
4324 ;
4325 ; VERSION: 06-06
4326 ;
4327 ; AUTHOR: R. BELANGER
4328 ;
4329 ; DATE: 7703.04
4330 ;
4331 ; THIS MODULE CONTAINS:
4332 ;
4333 ; 1) INPUT DATE AND TIME CODE
4334 ; 2) DISPLAY DATE AND TIME CODE
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 110
.GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
4336 .SBTTL .GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
4337
4338 ;+
4339 ; .GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE
4340 ;
4341 ; THIS SUBROUTINE WILL EVALUATE A PREVIOUSLY INPUT ASCII STRING OF THE
4342 ; FORM "DD-MMM-YYYY" AND RETURN THE VALUE OF THE YEAR, MONTH AND DAY
4343 ; IN A THREE BYTE BLOCK.
4344 ;
4345 ; INPUT ARGUMENTS:
4346 ;
4347 ; R0 POINTS TO A THREE BYTE DATA BLOCK
4348 ; R5 POINTS TO THE INPUT STREAM
4349 ;
4350 ; OUTPUT ARGUMENTS:
4351 ;
4352 ; R0 POINTS TO THE THREE BYTE DATA BLOCK
4353 ;
4354 ; ERROR CODES RETURNED:
4355 ;
4356 ; DBT -- DATE BEFORE TODAY
4357 ; DOR -- DATE OUT OF RANGE
4358 ; IDF -- ILLEGAL DATE FORMAT
4359 ; YOR -- YEAR OUT OF RANGE
4360 ;-
4361
4362 .MCALL DIR$, GTIM$S
4363
4364 005600 .GTDAT::
4365 005600 013737 000000G 000000G MOV .IRADX,.RDXSV ; SAVE THE CURRENT RADIX
4366 005606 012737 000012 000000G MOV #^D10,.IRADX ; SET THE RADIX TO DECIMAL
4367 005614 PUSH <R5,R2,R1,R0> ; SAVE CALLER'S POINTER
005614 010546 MOV R5,-(SP)
005616 010246 MOV R2,-(SP)
005620 010146 MOV R1,-(SP)
005622 010046 MOV R0,-(SP)
4368 005624 012701 000524' MOV #.DTBUF,R1 ; ....TIME BUFFER POINTER TO R1
4369 005630 GTIM$S R1 ; ....READ CURRENT DATE AND TIME
005630 010146 MOV R1,-(SP)
005632 012746 MOV (PC)+,-(SP)
005634 073 002 .BYTE 59.,2
005636 104375 EMT 375
4370 005640 112120 MOVB (R1)+,(R0)+ ; ....SET DEFAULT YEAR
4371 005642 105721 TSTB (R1)+ ; ....ADVANCE POINTER
4372 005644 112120 MOVB (R1)+,(R0)+ ; ....SET DEFAULT MONTH
4373 005646 105721 TSTB (R1)+ ; ....ADVANCE POINTER
4374 005650 111120 MOVB (R1),(R0)+ ; ....SET DEFAULT DAY
4375 005652 010002 MOV R0,R2 ; ....SAVE POINTER TO CALLER'S BUFFER
4376 005654 012701 000000G MOV #.CIBFR,R1 ; ....BUFFER POINTER TO R1
4377 005660 010105 MOV R1,R5 ; ....AND R5
4378 005662 012700 002277' MOV #GTDMS0,R0 ; ....PROMPT FOR DATE
4379 005666 CALL .TYMSF ; ....FORCE IT OUT
005666 004737 000000G JSR PC,.TYMSF
4380 005672 CALL .GTLIN ; ....READ THE RESPONSE
005672 004737 000000G JSR PC,.GTLIN
4381 005676 001467 BEQ 35$ ; ....DEFAULT IF NULL
4382 005700 CALL .CKARG ; ....SEE WHAT KIND OF ARGUMENT FOLLOWS
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 110-1
.GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
005700 004737 000000G JSR PC,.CKARG
4383 005704 001551 BEQ GTDIDF ; ....ILLEGAL IF ALPHABETIC
4384 005706 PUSH R5 ; ....SAVE THE BUFFER POINTER
005706 010546 MOV R5,-(SP)
4385 005710 10$:
4386 005710 111504 MOVB (R5),R4 ; .....LOOK AT ONE CHARACTER
4387 005712 001407 BEQ 20$ ; .....DONE IF NULL
4388 005714 122704 000055 CMPB #'-,R4 ; .....IS IT A <HYPHEN>?
4389 005720 001002 BNE 15$ ; .....NO -- GO ON
4390 005722 112715 000040 MOVB #.SPACE,(R5) ; .....YES -- MAKE IT A <SPACE>
4391 005726 15$:
4392 005726 105725 TSTB (R5)+ ; .....ADVANCE THE POINTER
4393 005730 000767 BR 10$ ; .....AND LOOK FOR MORE
4394 ;
4395 005732 20$:
4396 005732 POP R5 ; .....RESTORE THE POINTER
005732 012605 MOV (SP)+,R5
4397 005734 005046 CLR -(SP) ; ....CLEAR A BUFFER ON THE STACK
4398 005736 005046 CLR -(SP) ; .....
4399 005740 005046 CLR -(SP) ; ......
4400 005742 010600 MOV SP,R0 ; .......POINT TO THE BUFFER
4401 005744 CALL .GTNBR ; .......READ THE DAY
005744 004737 000000G JSR PC,.GTNBR
4402 005750 111042 MOVB (R0),-(R2) ; .......AND SET IT
4403 005752 PUSH R0 ; .......SAVE THE POINTER
005752 010046 MOV R0,-(SP)
4404 005754 CALL .CKARG ; .......SEE IF ALPHABETIC FOLLOWS
005754 004737 000000G JSR PC,.CKARG
4405 005760 002523 BLT GTDIDF ; .......NUMERIC -- GIVE "IDF" ERROR
4406 005762 012700 000000G MOV #.MONTB,R0 ; ........MONTH TABLE POINTER TO R0
4407 005766 CALL .TSCAN ; ........SCAN FOR THE MONTH
005766 004737 000000G JSR PC,.TSCAN
4408 005772 116042 000002 MOVB 2(R0),-(R2) ; ........STASH THE MONTH AWAY
4409 005776 POP R0 ; ........RESTORE THE BUFFER POINTER
005776 012600 MOV (SP)+,R0
4410 006000 112504 MOVB (R5)+,R4 ; .......GET THE LAST CHARACTER
4411 006002 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
4412 006010 001020 BNE 30$ ; .......EXIT IF E-O-C
4413 006012 CALL .TPCLR ; .......RESET THE BUFFER
006012 004737 000000G JSR PC,.TPCLR
4414 006016 CALL .CKARG ; .......SEE IF NUMERIC FOLLOWS
006016 004737 000000G JSR PC,.CKARG
4415 006022 001502 BEQ GTDIDF ; .......GIVE "IDF" ERROR IF NOT
4416 006024 CALL .GTNBR ; .......READ THE YEAR
006024 004737 000000G JSR PC,.GTNBR
4417 006030 022710 003554 CMP #^D1900,(R0) ; .......DID HE SAY 19XX?
4418 006034 003003 BGT 25$ ; .......NO -- GO ON
4419 006036 162710 003554 SUB #^D1900,(R0) ; .......YES -- FIX IT UP
4420 006042 002475 BLT GTDYOR ; .......ERROR -- YOR
4421 006044 25$:
4422 006044 111042 MOVB (R0),-(R2) ; .......SET THE YEAR - 1900
4423 006046 CALL .CKEOC ; .......MUST HAVE E-O-C
006046 004737 000000G JSR PC,.CKEOC
4424 006052 30$:
4425 006052 062706 000006 ADD #^D6,SP ; .......RESET THE STACK
4426 006056 35$:
4427 006056 011600 MOV (SP),R0 ; ....RESTORE CALLER'S POINTER
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 110-2
.GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
4428 006060 116002 000001 MOVB 1(R0),R2 ; ....MONTH TO R2
4429 006064 012701 172452 MOV #^C5325,R1 ; ....BIT MASK TO R1
4430 006070 122702 000002 CMPB #^D2,R2 ; ....IS THIS FEBRUARY?
4431 006074 001411 BEQ 45$ ; ....YES -- DO SPECIAL CKECKS
4432 006076 126027 000002 000037 CMPB 2(R0),#^D31 ; ....NO -- HOW MANY DAYS?
4433 006104 003046 BGT GTDDOR ; ....GIVE "DOR" ERROR IF .GT. ^D31
4434 006106 002414 BLT 50$ ; ....ALL OK IF .LT. ^D31
4435 006110 40$:
4436 006110 006201 ASR R1 ; ....SHIFT THE BIT MASK
4437 006112 077202 SOB R2,40$ ; ....BY THE MONTH
4438 006114 103011 BCC 50$ ; ....ALL OK IF CC-C IS CLEAR
4439 006116 000441 BR GTDDOR ; ....OTHERWISE GIVE "DOR" ERROR
4440 ;
4441 006120 45$:
4442 006120 126027 000002 000035 CMPB 2(R0),#^D29 ; ....HATH FEBRUARY 29 DAYS?
4443 006126 003035 BGT GTDDOR ; ....NEVER MORE -- GIVE "DOR" ERROR
4444 006130 002403 BLT 50$ ; ....ALWAYS LESS -- EXIT
4445 006132 132710 000003 BITB #3,(R0) ; ....IS THIS A LEAP YEAR?
4446 006136 001031 BNE GTDDOR ; ....NO -- GIVE "DOR" ERROR
4447 006140 50$:
4448 006140 012701 000524' MOV #.DTBUF,R1 ; ....POINT TO THE DATE BUFFER
4449 006144 122021 CMPB (R0)+,(R1)+ ; ....SEE IF YEAR IS OK
4450 006146 002422 BLT GTDDBT ; ....NO -- GIVE "DBT" ERROR
4451 006150 003007 BGT 55$ ; ....YES -- BEYOND THIS YEAR??
4452 006152 105721 TSTB (R1)+ ; ....NO -- ADVANCE THE POINTER
4453 006154 122021 CMPB (R0)+,(R1)+ ; ....IS THE MONTH OK?
4454 006156 002416 BLT GTDDBT ; ....NO -- GIVE "DBT" ERROR
4455 006160 003003 BGT 55$ ; ....YES -- BEYOND THIS YEAR??
4456 006162 105721 TSTB (R1)+ ; ....NO -- ADVANCE THE POINTER
4457 006164 121011 CMPB (R0),(R1) ; ....IS THE DAY OK?
4458 006166 002412 BLT GTDDBT ; ....NO -- GIVE "DBT" ERROR
4459 006170 55$:
4460 006170 POP <R0,R1,R2,R5> ; ....YES -- RESTORE REGISTERS
006170 012600 MOV (SP)+,R0
006172 012601 MOV (SP)+,R1
006174 012602 MOV (SP)+,R2
006176 012605 MOV (SP)+,R5
4461 006200 013737 000000G 000000G MOV .RDXSV,.IRADX ; RESET THE RADIX
4462 006206 005737 000000G TST .INCHC ; LOOK AT THE CHARACTER COUNT
4463 006212 RETURN ; EXIT
006212 000207 RTS PC
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 111
.GTDAT -- SUBROUTINE TO INPUT THE CURRENT DATE 7702.15
4465 006214 GTDDBT: ; +++001
4466 006214 ERROR$ DBT ; ERROR -- DATE BEFORE TODAY
006214 012746 014544 MOV #^RDBT,-(SP)
006220 104400 TRAP TC.ERR
4467 ;
4468 006222 GTDDOR: ; +++001
4469 006222 ERROR$ DOR ; ERROR -- DATE OUT OF RANGE
006222 012746 015552 MOV #^RDOR,-(SP)
006226 104400 TRAP TC.ERR
4470 ;
4471 006230 GTDIDF:
4472 006230 ERROR$ IDF ; ERROR -- ILLEGAL DATE FORMAT
006230 012746 034346 MOV #^RIDF,-(SP)
006234 104400 TRAP TC.ERR
4473 ;
4474 006236 GTDYOR: ; +++001
4475 006236 ERROR$ YOR ; ERROR -- YEAR OUT OF RANGE
006236 012746 117252 MOV #^RYOR,-(SP)
006242 104400 TRAP TC.ERR
4476 ;
4477
4478 000524 .PSECT DATA
4479
4480 000524 .DTBUF::
4481 000524 000000 000000 000000 .WORD 0,0,0,0,0,0,0,0
000532 000000 000000 000000
000540 000000 000000
4482
4483 002277 .PSECT MESSAG
4484
4485 002277 GTDMS0:
4486 002277 104 101 124 .ASCIZ %DATE: %
002302 105 072 040
002305 000
4487
4488 006244 .PSECT
4489
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 112
.GTTIM -- SUBROUTINE TO INPUT A TIME VALUE 7702.15
4491 .SBTTL .GTTIM -- SUBROUTINE TO INPUT A TIME VALUE 7702.15
4492
4493 ;+
4494 ; .GTTIM -- SUBROUTINE TO INPUT A TIME VALUE
4495 ;
4496 ; THIS SUBROUTINE WILL ACCEPT A TIME VALUE FROM THE CONSOLE INPUT
4497 ; DEVICE OF THE FORMAT "HH:MM" OR "HHMM", AND RETURN IT EXPRESSED
4498 ; AS SECONDS-SINCE-MIDNIGHT / 2 (SSM).
4499 ;
4500 ; INPUT ARGUMENTS:
4501 ;
4502 ; R0 POINTS TO THE DESTINATION FOR THE VALUE
4503 ;
4504 ; OUTPUT ARGUMENTS:
4505 ;
4506 ; R0 POINTS TO THE TIME VALUE
4507 ; CC-Z WILL BE SET TO INDICATE NO TIME WAS SPECIFIED (DEFAULT)
4508 ;
4509 ; ERROR CODES RETURNED:
4510 ;
4511 ; ITF -- ILLEGAL TIME FORMAT
4512 ; TOR -- TIME OUT OF RANGE
4513 ;-
4514
4515 006244 .GTTIM::
4516 006244 013737 000000G 000000G MOV .IRADX,.RDXSV ; SAVE THE CURRENT RADIX
4517 006252 012737 000012 000000G MOV #^D10,.IRADX ; SET THE INPUT RADIX TO DECIMAL
4518 006260 PUSH <R5,R2,R1,R0> ; SAVE CALLER'S REGISTERS
006260 010546 MOV R5,-(SP)
006262 010246 MOV R2,-(SP)
006264 010146 MOV R1,-(SP)
006266 010046 MOV R0,-(SP)
4519 006270 012702 177777 MOV #-^D1,R2 ; ....SET DEFAULT ARGUMENT
4520 006274 012700 002306' MOV #GTTMS0,R0 ; ....PROMPT FOR TIME
4521 006300 CALL .TYMSF ; ....FORCE IT OUT
006300 004737 000000G JSR PC,.TYMSF
4522 006304 012701 000000G MOV #.CIBFR,R1 ; ....BUFFER POINTER TO R1
4523 006310 010105 MOV R1,R5 ; ....SET UP THE BUFFER POINTER
4524 006312 CALL .GTLIN ; ....READ THE INPUT
006312 004737 000000G JSR PC,.GTLIN
4525 006316 001514 BEQ 30$ ; ....EXIT IF NULL (DEFAULT)
4526 006320 CALL .CKSYM ; ....GET OVER LEADING BLANKS
006320 004737 000000G JSR PC,.CKSYM
4527 006324 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
4528 006332 001106 BNE 30$ ; ....EXIT IF E-O-C
4529 006334 CALL .CKARG ; ....SEE WHAT FOLLOWS
006334 004737 000000G JSR PC,.CKARG
4530 006340 001516 BEQ GTTITF ; ....ERROR IF NON-NUMERIC
4531 006342 005046 CLR -(SP) ; ....CLEAR A BUFFER ON THE STACK
4532 006344 005046 CLR -(SP) ; .....
4533 006346 005046 CLR -(SP) ; ......
4534 006350 010600 MOV SP,R0 ; .......POINT TO THE BUFFER
4535 006352 CALL .GTNBR ; .......READ HOURS
006352 004737 000000G JSR PC,.GTNBR
4536 006356 122704 000072 CMPB #':,R4 ; .......IS NEXT CHARACTER A COLON?
4537 006362 001437 BEQ 10$ ; .......YES -- GO READ MINUTE
4538 006364 CALL .CKEOC ; .......NO -- MUST HAVE E-O-C
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 112-1
.GTTIM -- SUBROUTINE TO INPUT A TIME VALUE 7702.15
006364 004737 000000G JSR PC,.CKEOC
4539 006370 005046 CLR -(SP) ; .......SET UP A DIVISOR ON THE STACK
4540 006372 005046 CLR -(SP) ; ........
4541 006374 PUSH #^D100 ; .........SO
006374 012746 000144 MOV #^D100,-(SP)
4542 006400 010601 MOV SP,R1 ; ..........POINT TO THE DIVISOR
4543 006402 CALL .TPDIV ; ..........DO THE DIVISION
006402 004737 000000G JSR PC,.TPDIV
4544 006406 022711 000073 CMP #^D59,(R1) ; ..........IS THE REMAINDER .LT. ^D59?
4545 006412 002474 BLT GTTTOR ; .......... +++001 NO -- GIVE "TOR" ERROR
4546 006414 PUSH (R1) ; ..........YES -- SAVE THE REMAINDER
006414 011146 MOV (R1),-(SP)
4547 006416 022710 000027 CMP #^D23,(R0) ; ...........IS THE HOUR OK?
4548 006422 002470 BLT GTTTOR ; ........... +++001 NO -- GIVE "TOR" ERROR
4549 006424 011000 MOV (R0),R0 ; ...........YES -- GET IT
4550 006426 012701 000074 MOV #^D60,R1 ; ...........MULTIPLIER TO R1
4551 006432 CALL $MUL ; ...........DO THE MULTIPLICATION
006432 004737 000000G JSR PC,$MUL
4552 006436 010100 MOV R1,R0 ; ...........PRODUCT TO R0
4553 006440 062600 ADD (SP)+,R0 ; ...........COMPUTE SECONDS SINCE MIDNIGHT
4554 006442 012701 000036 MOV #^D30,R1 ; ..........MULTIPLIER
4555 006446 CALL $MUL ; ..........DO IT
006446 004737 000000G JSR PC,$MUL
4556 006452 010102 MOV R1,R2 ; ..........SAVE IT IN R2
4557 006454 062706 000006 ADD #^D6,SP ; ..........RESET THE STACK
4558 006460 000431 BR 20$ ; .......AND EXIT
4559 ;
4560 006462 10$:
4561 006462 105725 TSTB (R5)+ ; .......GET OVER THE COLON
4562 006464 011000 MOV (R0),R0 ; .......GET THE HOUR
4563 006466 022700 000027 CMP #^D23,R0 ; .......IS THE HOUR OK?
4564 006472 002444 BLT GTTTOR ; ....... +++001 NO -- GIVE "TOR" ERROR
4565 006474 012701 000074 MOV #^D60,R1 ; .......CONVERT TO MINUTES
4566 006500 CALL $MUL ; .......SO
006500 004737 000000G JSR PC,$MUL
4567 006504 010102 MOV R1,R2 ; .......STASH IT AWAY
4568 006506 010600 MOV SP,R0 ; .......RESET POINTER
4569 006510 CALL .TPCLR ; .......FLUSH THE BUFFER
006510 004737 000000G JSR PC,.TPCLR
4570 006514 CALL .GTNBR ; .......READ THE NEXT NUMBER
006514 004737 000000G JSR PC,.GTNBR
4571 006520 011000 MOV (R0),R0 ; .......GET THE MINUTES
4572 006522 022700 000073 CMP #^D59,R0 ; .......IS THE MINUTE OK?
4573 006526 002426 BLT GTTTOR ; ....... +++001 NO -- GIVE "TOR" ERROR
4574 006530 060200 ADD R2,R0 ; .......ADD THE HOUR
4575 006532 012701 000036 MOV #^D30,R1 ; .......CONVERT TO SECONDS
4576 006536 CALL $MUL ; .......SO
006536 004737 000000G JSR PC,$MUL
4577 006542 010102 MOV R1,R2 ; .......SAVE IT IN R2
4578 006544 20$:
4579 006544 062706 000006 ADD #^D6,SP ; .......RESET THE STACK
4580 006550 30$:
4581 006550 POP R0 ; ....RESTORE R0
006550 012600 MOV (SP)+,R0
4582 006552 010210 MOV R2,(R0) ; ...SET THE TIME
4583 006554 POP <R1,R2,R5> ; ...RESTORE REGISTERS
006554 012601 MOV (SP)+,R1
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 112-2
.GTTIM -- SUBROUTINE TO INPUT A TIME VALUE 7702.15
006556 012602 MOV (SP)+,R2
006560 012605 MOV (SP)+,R5
4584 006562 013737 000000G 000000G MOV .RDXSV,.IRADX ; RESET THE RADIX
4585 006570 005737 000000G TST .INCHC ; LOOK AT THE CHARACTER COUNT
4586 006574 RETURN ; AND EXIT
006574 000207 RTS PC
4587 006576 GTTITF:
4588 006576 ERROR$ ITF ; ERROR -- ILLEGAL TIME FORMAT
006576 012746 035546 MOV #^RITF,-(SP)
006602 104400 TRAP TC.ERR
4589 ;
4590 006604 GTTTOR: ; +++001
4591 006604 ERROR$ TOR ; +++001 ERROR -- TIME OUT OF RANGE
006604 012746 077552 MOV #^RTOR,-(SP)
006610 104400 TRAP TC.ERR
4592 ;
4593
4594 002306 .PSECT MESSAG
4595
4596 002306 GTTMS0:
4597 002306 124 111 115 .ASCIZ %TIME: %
002311 105 072 040
002314 000
4598
4599 006612 .PSECT
4600
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 113
.TYDAT -- SUBROUTINE TO TYPE A DATE 7702.16
4602 .SBTTL .TYDAT -- SUBROUTINE TO TYPE A DATE 7702.16
4603
4604 ;+
4605 ; .TYDAT -- SUBROUTINE TO TYPE A DATE
4606 ;
4607 ; THIS SUBROUTINE WILL OUTPUT A DATE ON THE CONSOLE DEVICE IN THE
4608 ; FOLLOWING FORMAT: "DD-MMM-YY".
4609 ;
4610 ; INPUT ARGUMENTS:
4611 ;
4612 ; R0 POINTS TO A THREE BYTE BLOCK CONTAINING THE DATE
4613 ;
4614 ; OUTPUT ARGUMENTS:
4615 ;
4616 ; NONE.
4617 ; ERROR CODES RETURNED:
4618 ;
4619 ; NONE.
4620 ;-
4621
4622
4623 006612 .TYDAT::
4624 006612 PUSH <.ORADX,R0,R2> ; SAVE CALLER'S REGISTERS
006612 013746 000000G MOV .ORADX,-(SP)
006616 010046 MOV R0,-(SP)
006620 010246 MOV R2,-(SP)
4625 006622 012737 000012 000000G MOV #^D10,.ORADX ; ...SET THE RADIX TO DECIMAL
4626 006630 010002 MOV R0,R2 ; ...CALLER'S POINTER TO R2
4627 006632 122222 CMPB (R2)+,(R2)+ ; ...ADVANCE THE POINTER
4628 006634 111200 MOVB (R2),R0 ; ...GET THE DAY
4629 006636 CALL .TYELA ; ...PRINT IT
006636 004737 000000G JSR PC,.TYELA
4630 006642 CALL .TYMIN ; ...AND A <DASH>
006642 004737 000000G JSR PC,.TYMIN
4631 006646 114200 MOVB -(R2),R0 ; ...GET THE MONTH
4632 006650 006300 ASL R0 ; ...MAKE IT AN EVEN INDEX
4633 006652 016000 000542' MOV TYDMTB-2(R0),R0 ; ...POINT TO THE STRING
4634 006656 CALL .TYMSG ; ...PRINT IT
006656 004737 000000G JSR PC,.TYMSG
4635 006662 CALL .TYMIN ; ...AND A <DASH>
006662 004737 000000G JSR PC,.TYMIN
4636 006666 122742 000011 CMPB #^D9,-(R2) ; ...'09 OR EARLIER?
4637 006672 002404 BLT 10$ ; ...NO -- GO ON
4638 006674 012700 000060 MOV #'0,R0 ; ...YES -- FORCE THE LEADING ZERO
4639 006700 CALL .TYCHR ; ...SO
006700 004737 000000G JSR PC,.TYCHR
4640 006704 10$:
4641 006704 111200 MOVB (R2),R0 ; ...GET THE YEAR
4642 006706 CALL .TYELA ; ...PRINT IT
006706 004737 000000G JSR PC,.TYELA
4643 006712 POP <R2,R0,.ORADX> ; ...RESTORE THE REGISTERS
006712 012602 MOV (SP)+,R2
006714 012600 MOV (SP)+,R0
006716 012637 000000G MOV (SP)+,.ORADX
4644 006722 CALLR .TYSPC ; PRINT A <SPACE> AND EXIT
006722 000137 000000G JMP .TYSPC
4645 ;
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 113-1
.TYDAT -- SUBROUTINE TO TYPE A DATE 7702.16
4646
4647 000544 .PSECT DATA
4648
4649 000544 TYDMTB:
4650 000544 000000G .WORD JANMSG
4651 000546 000000G .WORD FEBMSG
4652 000550 000000G .WORD MARMSG
4653 000552 000000G .WORD APRMSG
4654 000554 000000G .WORD MAYMSG
4655 000556 000000G .WORD JUNMSG
4656 000560 000000G .WORD JULMSG
4657 000562 000000G .WORD AUGMSG
4658 000564 000000G .WORD SEPMSG
4659 000566 000000G .WORD OCTMSG
4660 000570 000000G .WORD NOVMSG
4661 000572 000000G .WORD DECMSG
4662
4663 006726 .PSECT
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 114
.TYTIM -- TIME OUTPUT SUBROUTINE 7702.16
4665 .SBTTL .TYTIM -- TIME OUTPUT SUBROUTINE 7702.16
4666
4667 ;+
4668 ; .TYTIM -- TIME OUTPUT SUBROUTINE
4669 ;
4670 ; THIS SUBROUTINE WILL PRINT THE TIME ON THE CONSOLE OUTPUT DEVICE
4671 ; IN THE FOLLOWING FORMAT: "HH:MM"
4672 ;
4673 ; INPUT ARGUMENTS:
4674 ;
4675 ; R0 POINTS TO THE TIME VALUE TO BE PRINTED
4676 ; IN SECONDS-SINCE-MIDNIGHT FORMAT (SSM).
4677 ;
4678 ; OUTPUT ARGUMENTS:
4679 ;
4680 ; NONE.
4681 ;
4682 ; ERROR CODES RETURNED:
4683 ;
4684 ; NONE.
4685 ;-
4686
4687
4688 006726 .TYTIM::
4689 006726 PUSH <.ORADX,R0,R1> ; SAVE CALLER'S REGISTERS
006726 013746 000000G MOV .ORADX,-(SP)
006732 010046 MOV R0,-(SP)
006734 010146 MOV R1,-(SP)
4690 006736 012737 000012 000000G MOV #^D10,.ORADX ; ...SET OUTPUT RADIX TO DECIMAL
4691 006744 011000 MOV (R0),R0 ; ...GET THE TIME IN SSM/2
4692 006746 012701 003410 MOV #^D1800,R1 ; ...DIVISOR FOR HOURS
4693 006752 CALL $DIV ; ...COMPUTE THE HOURS
006752 004737 000000G JSR PC,$DIV
4694 006756 PUSH R0 ; ...SAVE THEM
006756 010046 MOV R0,-(SP)
4695 006760 010100 MOV R1,R0 ; ....REMAINDER TO R0
4696 006762 012701 000036 MOV #^D30,R1 ; ....DIVISOR FOR MINUTES
4697 006766 CALL $DIV ; ....COMPUTE THE MINUTES
006766 004737 000000G JSR PC,$DIV
4698 006772 010001 MOV R0,R1 ; ....SAVE THEM IN R1
4699 006774 022716 000011 CMP #^D9,(SP) ; ....0900 OR EARLIER?
4700 007000 002404 BLT 10$ ; ....NO -- GO ON
4701 007002 012700 000060 MOV #'0,R0 ; ....YES -- FORCE THE LEADING ZERO
4702 007006 CALL .TYCHR ; ....SO
007006 004737 000000G JSR PC,.TYCHR
4703 007012 10$:
4704 007012 POP R0 ; ....GET THE HOUR
007012 012600 MOV (SP)+,R0
4705 007014 CALL .TYELA ; ...PRINT IT
007014 004737 000000G JSR PC,.TYELA
4706 007020 CALL .TYCOL ; ...TYPE A <COLON>
007020 004737 000000G JSR PC,.TYCOL
4707 007024 022701 000011 CMP #^D9,R1 ; ...9 MINUTES OR EARLIER?
4708 007030 002404 BLT 20$ ; ...NO -- GO ON
4709 007032 012700 000060 MOV #'0,R0 ; ...YES -- FORCE THE LEADING ZERO
4710 007036 CALL .TYCHR ; ...SO
007036 004737 000000G JSR PC,.TYCHR
GTTIM -- INPUT AND DISPLAY DATE MACRO M1113 10-NOV-81 17:48 PAGE 114-1
.TYTIM -- TIME OUTPUT SUBROUTINE 7702.16
4711 007042 20$:
4712 007042 010100 MOV R1,R0 ; ...GET THE MINUTE
4713 007044 CALL .TYELA ; ...PRINT IT
007044 004737 000000G JSR PC,.TYELA
4714 007050 POP <R1,R0,.ORADX> ; ...RESTORE THE REGISTERS
007050 012601 MOV (SP)+,R1
007052 012600 MOV (SP)+,R0
007054 012637 000000G MOV (SP)+,.ORADX
4715 007060 CALLR .TYSPC ; TYPE A <SPACE> AND EXIT
007060 000137 000000G JMP .TYSPC
4716 ;
HALTC -- HALT FUNCTION MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 115
.TYTIM -- TIME OUTPUT SUBROUTINE 7702.16
4718 .TITLE HALTC -- HALT FUNCTION MODULE 7707.12
4719
4720 .IDENT "005000"
4721 ;
4722 ; COPYRIGHT (C) 1975, 1979 BY
4723 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
4724 ;
4725 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
4726 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
4727 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
4728 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
4729 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
4730 ;
4731 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
4732 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
4733 ; CORPORATION.
4734 ;
4735 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
4736 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
4737 ;
4738 ; MODULE: HALT FUNCTION
4739 ;
4740 ; VERSION: 03-06
4741 ;
4742 ; AUTHOR: R. BELANGER
4743 ;
4744 ; DATE: 7707.12
4745 ;
4746 ; THIS MODULE CONTAINS:
4747 ;
4748 ; 1) HALT FUNCTION CODE
HALTC -- HALT FUNCTION MODULE 7 MACRO M1113 10-NOV-81 17:48 PAGE 116
.HALTC -- THE "HALT" COMMAND 7710.11
4750 .SBTTL .HALTC -- THE "HALT" COMMAND 7710.11
4751
4752 ;+
4753 ; .HALTC -- THE "HALT" COMMAND
4754 ;
4755 ; THIS ROUTINE HALTS THE KL WITH THE CLOCK RUNNING. (EXAMINE
4756 ; AND DEPOSIT ARE STILL SUPPORTED).
4757 ;
4758 ; INPUT ARGUMENTS:
4759 ;
4760 ; NONE.
4761 ;
4762 ; OUTPUT ARGUMENTS:
4763 ;
4764 ; NONE.
4765 ;
4766 ; ERROR CODES RETURNED:
4767 ;
4768 ; ILS -- ILLEGAL SEPARATOR CHARACTER.
4769 ;-
4770
4771 007064 .HALTC::
4772 007064 CALL .CKEOC ; CHECK E-O-C
007064 004737 000000G JSR PC,.CKEOC
4773 007070 CALLR .KLSTP ; HALT THE KL AND RETURN
007070 000137 000000G JMP .KLSTP
4774 ;
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 117
.HALTC -- THE "HALT" COMMAND 7710.11
4776 .TITLE INITC -- INITIALIZE COMMAND MODULE 7602.16
4777
4778 .IDENT "006110"
4779
4780 ;
4781 ; COPYRIGHT (C) 1975, 1979 BY
4782 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
4783 ;
4784 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
4785 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
4786 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
4787 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
4788 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
4789 ;
4790 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
4791 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
4792 ; CORPORATION.
4793 ;
4794 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
4795 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
4796 ;
4797 ; MODULE: INITIALIZE COMMAND
4798 ;
4799 ; VERSION: 06-11
4800 ;
4801 ; AUTHOR: R. BELANGER
4802 ;
4803 ; DATE: 7602.16
4804 ;
4805 ; THIS MODULE CONTAINS:
4806 ;
4807 ; 1) INITIALIZE COMMAND CODE
4808 ;
4809 ; MODIFIED BY A. PECKHAM 7612.10 TO DELETE REFERENCES TO .SECFL
4810
4811 .MCALL ALUN$,CLEF$S,DIR$,SETF$S,SVTK$S
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 118
.INITC -- THE "INITIALIZE" COMMAND 7602.16
4813 .SBTTL .INITC -- THE "INITIALIZE" COMMAND 7602.16
4814
4815 ;+
4816 ; .INITC -- THE "INITIALIZE" COMMAND
4817 ;
4818 ; THIS ROUTINE (RE)INITIALIZES THE COMMAND PARSER
4819 ;
4820 ; INPUT ARGUMENTS:
4821 ;
4822 ; NONE.
4823 ;
4824 ; OUTPUT ARGUMENTS:
4825 ;
4826 ; ".KLFLG" IS SET UP
4827 ;
4828 ; ERROR CODES RETURNED:
4829 ;
4830 ; NONE.
4831 ;-
4832
4833 007074 .INITC::
4834 007074 CALL .CKEOC ; CHECK FOR E-O-C
007074 004737 000000G JSR PC,.CKEOC
4835 007100 .INIC0::
4836 007100 000414 BR .INKLF ; INIT THE PARSER AND RETURN
4837 ;
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 119
.INIT -- INITIALIZATION SUBROUTINE 7509.26
4839 .SBTTL .INIT -- INITIALIZATION SUBROUTINE 7509.26
4840
4841 ;+
4842 ; .INIT -- SUBROUTINE TO INITIALIZE THE COMMAND PARSER.
4843 ;
4844 ; THIS SUBROUTINE CLEARS INTERNAL BUFFERS AND INITIALIZES
4845 ; THE FOLLOWING REGISTERS:
4846 ;
4847 ; (A) ".KLFLG" -- THE KL STATUS FLAG WORD,
4848 ; (B) ".CLKWD" -- THE KL CLOCK STATUS WORD,
4849 ; (C) ".PSCWD" -- THE KL PARITY CONTROL WORD.
4850 ;
4851 ; INPUT ARGUMENTS:
4852 ;
4853 ; NONE.
4854 ;
4855 ; OUTPUT ARGUMENTS:
4856 ;
4857 ; ".KLFLG" IS SET UP
4858 ;
4859 ; ERROR CODES RETURNED:
4860 ;
4861 ; CES -- KL CLOCK ERROR STOP.
4862 ; CFH -- CAN'T FIND KL HALT LOOP.
4863 ; DSF -- DTE-20 STATUS FAILURE.
4864 ; FRF -- FUNCTION READ FAILED.
4865 ; FWF -- FUNCTION WRITE FAILED.
4866 ;-
4867
4868 007102 .INIT::
4869 007102 PUSH R0 ; SAVE R0
007102 010046 MOV R0,-(SP)
4870 007104 000257 CCC ; .CLEAR N, Z, V, C BITS
4871 007106 012700 000000G MOV #.DFBLK,R0 ; .CLEAR THE DF BUFFERS
4872 007112 10$:
4873 007112 005020 CLR (R0)+ ; .CLEAR A WORD
4874 007114 020027 000000G CMP R0,#DFBEND ; .ARE WE DONE?
4875 007120 103774 BLO 10$ ; .NO -- KEEP GOING
4876 007122 012737 000200 000000G MOV #KF.DEF,.KLFLG ; .YES -- INIT ".KLFLG"
4877 007130 POP R0 ; .RESTORE R0
007130 012600 MOV (SP)+,R0
4878
4879 ; [CONTINUED ON THE FOLLOWING PAGE]
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 120
.INKLF -- SUBROUTINE TO SET UP KL STATE WORD 7601.09
4881 .SBTTL .INKLF -- SUBROUTINE TO SET UP KL STATE WORD 7601.09
4882
4883 ;+
4884 ; .INKLF -- SUBROUTINE TO SET UP THE KL STATE FLAG WORD, ".KLFLG".
4885 ;
4886 ; THIS SUBROUTINE SETS UP THE STATE OF THE FOLLOWING
4887 ; FLAG BITS IN THE KL STATE FLAG WORD, ".KLFLG":
4888 ;
4889 ; (A) "KF.CLK" -- KL CLOCK RUNNING FLAG,
4890 ; (B) "KF.RUN" -- KL RUN FLOP SET FLAG,
4891 ; (C) "KF.KLO" -- KL OPCODE ENABLED FLAG.
4892 ;
4893 ; .INKLF MAY BE CALLED DIRECTLY AS DESCRIBED IN THE CALLING SEQUENCE,
4894 ; OR BY ".INIT" WHICH FALLS INTO ".INKLF".
4895 ;
4896 ; INPUT ARGUMENTS:
4897 ;
4898 ; NONE.
4899 ;
4900 ; OUTPUT ARGUMENTS:
4901 ;
4902 ; ".KLFLG" IS SET UP.
4903 ;
4904 ; ERROR CODES RETURNED:
4905 ;
4906 ; CES -- KL CLOCK ERROR STOP.
4907 ; CFH -- CAN'T FIND KL HALT LOOP.
4908 ; DSF -- DTE-20 STATUS FAILURE.
4909 ; DTC -- DTE-20 CONFUSED.
4910 ; FRF -- FUNCTION READ FAILED.
4911 ; FWF -- FUNCTION WRITE FAILED.
4912 ;-
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 121
.INKLF -- SUBROUTINE TO SET UP KL STATE WORD 7601.09
4914 007132 .INKLF::
4915 007132 SETF$S #E.FHTO ; SET THE HALT TIMEOUT EVENT FLAG
007132 012746 000001 MOV #E.FHTO,-(SP)
007136 012746 MOV (PC)+,-(SP)
007140 041 002 .BYTE 33.,2
007142 104375 EMT 375
4916 007144 103461 BCS 60$ ; ERROR IF CC-C IS SET
4918 007146 005737 000000G TST .KLERQ ; [5.1006]KL CRASH?
4919 007152 001055 BNE 50$ ; [5.1006]YES -- EXIT
4921 007154 PUSH <R0,R1,R2,R3> ; NO -- SAVE CALLER'S REGISTERS
007154 010046 MOV R0,-(SP)
007156 010146 MOV R1,-(SP)
007160 010246 MOV R2,-(SP)
007162 010346 MOV R3,-(SP)
4922 007164 CALL .DTSTA ; ....READ THE DTE-20 STATUS REGISTER
007164 004737 000000G JSR PC,.DTSTA
4923 007170 032700 000010 BIT #ST.MOD,R0 ; ....IS THE DTE-20 PRIVILEGED?
4925 007174 001047 BNE INIDNP ; ....UGH, BLETCH -- NO
4927 007176 CALL .CESCK ; ....YES -- SEE IF CLOCK ERROR STOP IS UP
007176 004737 000000G JSR PC,.CESCK
4928 007202 012702 000000G MOV #.KLFLG,R2 ; ....FLAG POINTER TO R2
4929 007206 042712 140000 BIC #KF.CLK!KF.RUN,(R2)
4930 ; ....CLEAR THE CLOCK AND RUNNING FLAGS
4931 007212 005037 000000G CLR .EDKLX ; ....RESET THE ADDRESS TO ZERO
4932 007216 005037 000002G CLR .EDKLX+2 ; ....
4933 007222 012700 000200 MOV #ED.PHY,R0 ; ....PHYSICAL REFERENCE
4934 007226 012701 000574' MOV #.INEXT,R1 ; ....POINT TO DATA BLOCK
4935 007232 CALL .EXKLM ; ....EXAMINE KL MEMORY
007232 004737 000000G JSR PC,.EXKLM
4936 007236 052712 100600 BIS #KF.CON!KF.KLO!KF.CLK,(R2) ;*
4937 ; ....SET THE CLOCK RUNNING FLAG
4938 007242 012703 000144 MOV #^D100,R3 ; ....LOOP COUNT TO R3
4939 007246 10$:
4940 007246 CALL .DTDW1 ; ....READ DIAG WORD 1
007246 004737 000000G JSR PC,.DTDW1
4941 007252 032700 002000 BIT #D1.RUN,R0 ; ....IS RUN ON?
4945 007256 001002 BNE 20$ ; ....YES -- GO ON
4946 007260 077306 SOB R3,10$ ; ....NO -- LOOP TILL COUNT EXHAUSTED
4947 007262 000405 BR 30$ ; ....CAN'T FIND IT, GIVE UP
4948 ;
4949
4950 ; [CONTINUED ON THE FOLLOWING PAGE]
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 122
.INKLF -- SUBROUTINE TO SET UP KL STATE WORD 7601.09
4952 ; [CONTINUED FROM THE PREVIOUS PAGE]
4953
4954 007264 20$:
4955 007264 032700 001000 BIT #D1.HLP,R0 ; ....IS THE HALT LOOP THERE TOO?
4957 007270 001014 BNE INIDTC ; ....YES -- GIVE "DTC" ERROR
4959 007272 052712 040000 BIS #KF.RUN,(R2) ; ....NO -- FOUND IT OK, SET THE FLAG
4960 007276 30$:
4974 007276 POP <R3,R2,R1,R0> ; ....RESTORE CALLER'S REGISTERS
007276 012603 MOV (SP)+,R3
007300 012602 MOV (SP)+,R2
007302 012601 MOV (SP)+,R1
007304 012600 MOV (SP)+,R0
4975 007306 50$: RETURN ; TO CALLER
007306 000207 RTS PC
4976 007310 60$:
4977 007310 000137 000000G JMP .EXITP ; ERROR EXIT
4978 ;
4979 007314 INIDNP:
4980 007314 ERROR$ DNP ; ERROR -- DTE-20 NOT PRIVILEGED
007314 012746 015500 MOV #^RDNP,-(SP)
007320 104400 TRAP TC.ERR
4981 ;
4982 007322 INIDTC:
4983 007322 ERROR$ DTC ; ERROR --DTE-20 CONFUSED
007322 012746 016043 MOV #^RDTC,-(SP)
007326 104400 TRAP TC.ERR
4984 ;
4985
4986 000574 .PSECT DATA
4987
4988 000574 .INEXT:
4989 000574 000000G .WORD .EDKLX ; ADDRESS 0
4990 000576 000000G .WORD .EXBFR ; PLACE FOR DATA
4991
4992 007330 .PSECT
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 123
.INICP -- INITIALIZE THE COMMAND PARSER 7601.21
4994 .SBTTL .INICP -- INITIALIZE THE COMMAND PARSER 7601.21
4995
4996 ;+
4997 ; .INICP -- ROUTINE TO INTIALIZE THE COMMAND PARSER.
4998 ;
4999 ; THIS SUBROUTINE WILL INITIALIZE THE RSX20F INTERFACE TO THE COMMAND
5000 ; PARSER. THE CONSOLE INPUT AND OUTPUT DEVICES ARE ASSIGNED AND ATTACHED,
5001 ; THE SST TRAPS ARE ENABLED, AND THE EVENT FLAGS ARE CLEARED.
5002 ;
5003 ; INPUT ARGUMENTS:
5004 ;
5005 ; NONE.
5006 ;
5007 ; OUTPUT ARGUMENTS:
5008 ;
5009 ; NONE.
5010 ;
5011 ; ERROR CODES RETURNED:
5012 ;
5013 ; IF THE SST VECTORS CANNOT BE INITIALIZED THE PARSER EXITS.
5014 ; IF THE CONSOLE OUTPUT DEVICE CANNOT BE ASSIGNED, THE PARSER EXITS.
5015 ; IF THE CONSOLE OUTPUT DEVICE CANNOT BE ASSIGNED, THE PARSER EXITS.
5016 ; IF THE CONSOLE DEVICE CANNOT BE ATTACHED, THE PARSER EXITS.
5017 ;-
5018
5019 007330 .INICP::
5020 007330 010637 000000G MOV SP,.SVESP ; INIT THE STACK POINTER
5021 007334 005005 CLR R5 ; CLEAR THE GPR'S
5022 007336 005004 CLR R4
5023 007340 005003 CLR R3
5024 007342 005002 CLR R2
5025 007344 005001 CLR R1
5026 007346 005000 CLR R0
5027 007350 SVTK$S #.SSTTB,#SSTLEN ; INIT SST'S
007350 012746 000000G MOV #SSTLEN,-(SP)
007354 012746 000000G MOV #.SSTTB,-(SP)
007360 012746 MOV (PC)+,-(SP)
007362 071 003 .BYTE 57.,3
007364 104375 EMT 375
5028 007366 103452 BCS 10$ ; DIE IF WE CAN'T DO THAT MUCH
5029 007370 DIR$ #.ASCOD ; ASSIGN THE CONSOLE OUTPUT DEVICE
007370 012746 000026' MOV #.ASCOD,-(SP)
007374 104375 EMT 375
5030 007376 103446 BCS 10$ ; DIE IF WE CAN'T DO THAT, EITHER
5031 007400 DIR$ #.ASCID ; ASSIGN THE CONSOLE INPUT DEVICE
007400 012746 000016' MOV #.ASCID,-(SP)
007404 104375 EMT 375
5032 007406 103442 BCS 10$ ; GIVE ERROR TRAP IF CC-C IS SET
5033 007410 DIR$ #.ASLST ; [5.1000]ASSIGN LP DEVICE
007410 012746 000036' MOV #.ASLST,-(SP)
007414 104375 EMT 375
5034
5035 ; [CONTINUED ON THE FOLLOWING PAGE]
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 124
.INICP -- INITIALIZE THE COMMAND PARSER 7601.21
5037 ; [CONTINUED FROM THE PREVIOUS PAGE]
5038
5039 007416 CLEF$S #E.FCTC ; CLEAR CONTROL-C EVENT FLAG
007416 012746 000000G MOV #E.FCTC,-(SP)
007422 012746 MOV (PC)+,-(SP)
007424 037 002 .BYTE 31.,2
007426 104375 EMT 375
5040 007430 CLEF$S #E.FHTO ; CLEAR HALT TIMEOUT EVENT FLAG
007430 012746 000001 MOV #E.FHTO,-(SP)
007434 012746 MOV (PC)+,-(SP)
007436 037 002 .BYTE 31.,2
007440 104375 EMT 375
5041 007442 CLEF$S #E.FCID ; CLEAR CONSOLE INPUT DONE EVENT FLAG
007442 012746 000002 MOV #E.FCID,-(SP)
007446 012746 MOV (PC)+,-(SP)
007450 037 002 .BYTE 31.,2
007452 104375 EMT 375
5042 007454 SETF$S #E.FCOD ; SET CONSOLE OUTPUT DONE EVENT FLAG
007454 012746 000003 MOV #E.FCOD,-(SP)
007460 012746 MOV (PC)+,-(SP)
007462 041 002 .BYTE 33.,2
007464 104375 EMT 375
5044 007466 SETF$S #E.FLOD ; SET LIST DEVICE OUTPUT DONE EVENT FLAG
007466 012746 000005 MOV #E.FLOD,-(SP)
007472 012746 MOV (PC)+,-(SP)
007474 041 002 .BYTE 33.,2
007476 104375 EMT 375
5046 007500 CALL .TCRLF ; INIT CONSOLE
007500 004737 000000G JSR PC,.TCRLF
5047 007504 CALL .INIC0 ; INIT ".KLFLG"
007504 004737 007100' JSR PC,.INIC0
5048 007510 000177 000000G JMP @.STRTV ; START THE PARSER
5049 ;
5050 007514 10$:
5051 007514 CALLR .EXITP ; EXIT GRACEFULLY
007514 000137 000000G JMP .EXITP
5052 ;
INITC -- INITIALIZE COMMAND MOD MACRO M1113 10-NOV-81 17:48 PAGE 125
.INICP -- INITIALIZE THE COMMAND PARSER 7601.21
5054 ; ASSIGN CONSOLE INPUT DEVICE
5055
5056 000016 .PSECT DPBS
5057
5058 000016 .ASCID::
5062 000016 ALUN$ CIDLUN,TT,0
000016 007 004 .BYTE 7,4
000020 000001 .WORD CIDLUN
000022 124 .ASCII /T/
000023 124 .ASCII /T/
000024 000000 .WORD 0
5064
5065 ; ASSIGN CONSOLE OUTPUT DEVICE
5066
5067 000026 .ASCOD::
5071 000026 ALUN$ CODLUN,TT,0
000026 007 004 .BYTE 7,4
000030 000002 .WORD CODLUN
000032 124 .ASCII /T/
000033 124 .ASCII /T/
000034 000000 .WORD 0
5073
5074 ; ASSIGN LINEPRINTER DEVICE
5075
5076 000036 .ASLST::
5077 000036 ALUN$ LSTLUN,LP,0
000036 007 004 .BYTE 7,4
000040 000003 .WORD LSTLUN
000042 114 .ASCII /L/
000043 120 .ASCII /P/
000044 000000 .WORD 0
5078
5079 007520 .PSECT
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 127
.INICP -- INITIALIZE THE COMMAND PARSER 7601.21
5082 .TITLE KLEDEF -- KLERR SNAPSHOT DEFAULT COMMANDS
5083
5084 .IDENT "006270"
5085
5086 ;
5087 ; COPYRIGHT (C) 1979 BY
5088 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
5089 ;
5090 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
5091 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
5092 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
5093 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
5094 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
5095 ;
5096 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
5097 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
5098 ; CORPORATION.
5099 ;
5100 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
5101 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
5102 ;
5103 ; MODULE: KLERR DEFAULT COMMANDS
5104 ;
5105 ; VERSION: 06-27
5106 ;
5107 ; AUTHOR: K. LEFEBVRE
5108 ;
5109 ; DATE: 12-DEC-79
5110 ;
5111 ; EDIT HISTORY
5112 ;
5113 ; SL9160 16-SEP-80 S. LEAPLINE DON'T DO TAKE IF KL HALTED
5114 ;
5115 .MACRO DEFCMD NUM,COMMAND
5116
5117 .PSECT DATA
5118 .WORD CMD'NUM
5119
5120 .PSECT MESSAG
5121 CMD'NUM:.ASCIZ %COMMAND%
5122
5123 .PSECT DATA
5124
5125 .ENDM DEFCMD
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 128
.KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
5127 .SBTTL .KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
5128
5129 ;+
5130 ; .KLE -- ROUTINE TO RETURN DEFAULT KLERR SNAPSHOT COMMANDS
5131 ;
5132 ; THIS ROUTINE CONTAINS BUILT INTO IT THE DEFAULT KLERR SNAPSHOT
5133 ; COMMANDS THAT ARE EXECUTED ANYTIME THE KL CRASHES. THEY ARE
5134 ; ASSEMBLED IN TO MAKE IT DIFFICULT FOR SITES TO MODIFY THEM AND
5135 ; CORRUPT THE SNAPSHOT.
5136 ;
5137 ; THIS ROUTINE ADDED FOR TCO 4.1.1049
5138 ;
5139 ; INPUT ARGUMENTS:
5140 ;
5141 ; NONE
5142 ;
5143 ; OUTPUT ARGUMENTS:
5144 ;
5145 ; NONE
5146 ;
5147 ; ERROR CODES RETURNED:
5148 ;
5149 ; NONE
5150 ;-
5151
5153 007520 .KLE::
5154 007520 PUSH <R1,R0> ; SAVE REGISTERS
007520 010146 MOV R1,-(SP)
007522 010046 MOV R0,-(SP)
5155 007524 012701 000000G MOV #.CIBFR,R1 ; INPUT BUFFER POINTER
5156 007530 105737 000000G TSTB .KLEVL ; POINTER VALID FLAG (FOR OVERLAY)
5157 007534 001005 BNE 5$ ; YES -- GET COMMAND
5158 007536 012737 000600' 000000G MOV #KLETAB,.KLEPT ; NO -- SET POINTER
5159 007544 105237 000000G INCB .KLEVL ; SET POINTER VALID
5160 007550 013700 000000G 5$: MOV .KLEPT,R0 ; CURRENT COMMAND POINTER
5161 007554 062737 000002 000000G ADD #2,.KLEPT ; UPDATE POINTER
5162 007562 011000 MOV (R0),R0 ; GET COMMAND ADDRESS
5163 007564 001412 BEQ 30$ ; ALL COMMANDS DONE
5164 007566 112021 10$: MOVB (R0)+,(R1)+ ; MOVE COMMAND TO INPUT BUFFER
5165 007570 001376 BNE 10$ ; DONE?
5166 007572 005301 DEC R1 ; YES -- REMOVE LAST NULL
5167 007574 162701 000000G SUB #.CIBFR,R1 ; GET COMMAND LENGTH
5168 007600 010137 000002G MOV R1,.CISTS+2 ; SAVE LENGTH
5169 007604 20$: POP <R0,R1> ; RESTORE REGISTERS
007604 012600 MOV (SP)+,R0
007606 012601 MOV (SP)+,R1
5170 007610 RETURN ; EXIT
007610 000207 RTS PC
5171 007612 132737 000000G 000000G 30$: BITB #M.TAKP,.MISC ; HAVE WE ALREADY DONE PARSER.CMD ?
5172 007620 001014 BNE 35$ ; BRANCH IF YES
5173 007622 105737 000000G TSTB .ATOTAK ; SHOULD WE DO THE TAKE OF PARSER.CMD ?
5174 007626 001011 BNE 35$ ; BRANCH IF NOT
5175 007630 152737 000000G 000000G BISB #M.TAKP,.MISC ; SAY WE HAVE DONE PARSER.CMD ALREADY
5176 007636 012737 000656' 000000G MOV #TAKTAB,.KLEPT ; [SL9160] ADDRESS OF THE TAKE TABLE
5177 007644 105237 000000G INCB .KLEVL ; [SL9160] SET COMMAND VALID FLAG
5178 007650 000737 BR 5$ ; [SL9160] DO THE TAKE
5179 007652 042737 000000G 000000G 35$: BIC #M.TAKP,.MISC ; [SL9160] CLEAR THE TAKE FLAG
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 128-1
.KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
5180 007660 005037 000000G CLR .KLEDF ; CLEAR DEFAULT COMMAND FLAG
5181 007664 012700 002315' MOV #EOSMSG,R0 ; END-OF-SNAPSHOT MESSAGE PTR
5182 007670 CALL .TYMSG ; TYPE IT
007670 004737 000000G JSR PC,.TYMSG
5183 007674 005037 000002G CLR .CISTS+2 ; CLEAR COMMAND LENGTH
5184 007700 105737 000000G TSTB .KLSNP ; SNAPSHOT COMMAND IN PROGRESS?
5185 007704 001404 BEQ 40$ ; NO -- GO ON
5186 007706 005037 000000G CLR .KLERQ ; YES -- CLEAR SNAPSHOT FLAG
5187 007712 105037 000000G CLRB .KLSNP ; SAY SNAPSHOT COMMAND DONE
5188 007716 032737 000000G 000000G 40$: BIT #KL.REQ,.KLIWD ; KLI REQUESTED
5189 007724 001727 BEQ 20$ ; NO -- GET INPUT FROM CTY
5190 007726 CALL .TCRLF ; YES -- OUTPUT EOS
007726 004737 000000G JSR PC,.TCRLF
5191 007732 CALLR .EXITP ; EXIT TO KLI
007732 000137 000000G JMP .EXITP
5192
5193 002315 .PSECT MESSAG
5194
5195 002315 EOSMSG:
5196 002315 040 074 105 .ASCIZ % <END OF SNAPSHOT> %
002320 116 104 040
002323 117 106 040
002326 123 116 101
002331 120 123 110
002334 117 124 076
002337 040 000
5197
5198 000600 .PSECT DATA
5199
5200
5201 000600 KLETAB::
5202 000600 DEFCMD 1,<SET OUTPUT LOG>
000600 002341' .WORD CMD1
002341 123 105 124 CMD1:.ASCIZ %SET OUTPUT LOG%
002344 040 117 125
002347 124 120 125
002352 124 040 114
002355 117 107 000
5203 000602 DEFCMD 1A,<EXAMINE KL>
000602 002360' .WORD CMD1A
002360 105 130 101 CMD1A:.ASCIZ %EXAMINE KL%
002363 115 111 116
002366 105 040 113
002371 114 000
5204 000604 DEFCMD 1B,<CLEAR OUTPUT TTY>
000604 002373' .WORD CMD1B
002373 103 114 105 CMD1B:.ASCIZ %CLEAR OUTPUT TTY%
002376 101 122 040
002401 117 125 124
002404 120 125 124
002407 040 124 124
002412 131 000
5205 000606 DEFCMD 1C,<SET CONSOLE MAINTENANCE>
000606 002414' .WORD CMD1C
002414 123 105 124 CMD1C:.ASCIZ %SET CONSOLE MAINTENANCE%
002417 040 103 117
002422 116 123 117
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 128-2
.KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
002425 114 105 040
002430 115 101 111
002433 116 124 105
002436 116 101 116
002441 103 105 000
5206 000610 DEFCMD 1D,<SHOW HARDWARE>
000610 002444' .WORD CMD1D
002444 123 110 117 CMD1D:.ASCIZ %SHOW HARDWARE%
002447 127 040 110
002452 101 122 104
002455 127 101 122
002460 105 000
5207 000612 DEFCMD 2,<EXAMINE DTE>
000612 002462' .WORD CMD2
002462 105 130 101 CMD2:.ASCIZ %EXAMINE DTE%
002465 115 111 116
002470 105 040 104
002473 124 105 000
5208 000614 DEFCMD 3,<FREAD 100:177>
000614 002476' .WORD CMD3
002476 106 122 105 CMD3:.ASCIZ %FREAD 100:177%
002501 101 104 040
002504 061 060 060
002507 072 061 067
002512 067 000
5209 000616 DEFCMD 3A,<WHAT AC>
000616 002514' .WORD CMD3A
002514 127 110 101 CMD3A:.ASCIZ %WHAT AC%
002517 124 040 101
002522 103 000
5210 000620 DEFCMD 4,<SWEEP>
000620 002524' .WORD CMD4
002524 123 127 105 CMD4:.ASCIZ %SWEEP%
002527 105 120 000
5211 000622 DEFCMD 4A,<SET AC 0>
000622 002532' .WORD CMD4A
002532 123 105 124 CMD4A:.ASCIZ %SET AC 0%
002535 040 101 103
002540 040 060 000
5212 000624 DEFCMD 5,<XCT CONI 0,15! CONI APR,15>
000624 002543' .WORD CMD5
002543 130 103 124 CMD5:.ASCIZ %XCT CONI 0,15! CONI APR,15%
002546 040 103 117
002551 116 111 040
002554 060 054 061
002557 065 041 011
002562 103 117 116
002565 111 040 101
002570 120 122 054
002573 061 065 000
5213 000626 DEFCMD 5A,<EXAMINE TEN 15>
000626 002576' .WORD CMD5A
002576 105 130 101 CMD5A:.ASCIZ %EXAMINE TEN 15%
002601 115 111 116
002604 105 040 124
002607 105 116 040
002612 061 065 000
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 128-3
.KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
5214 000630 DEFCMD 6,<XCT BLKI 4,15! RDERA>
000630 002615' .WORD CMD6
002615 130 103 124 CMD6:.ASCIZ %XCT BLKI 4,15! RDERA%
002620 040 102 114
002623 113 111 040
002626 064 054 061
002631 065 041 011
002634 122 104 105
002637 122 101 000
5215 000632 DEFCMD 6A,<EXAMINE TEN 15>
000632 002642' .WORD CMD6A
002642 105 130 101 CMD6A:.ASCIZ %EXAMINE TEN 15%
002645 115 111 116
002650 105 040 124
002653 105 116 040
002656 061 065 000
5216 000634 DEFCMD 7,<XCT CONI 4,15! CONI PI,15>
000634 002661' .WORD CMD7
002661 130 103 124 CMD7:.ASCIZ %XCT CONI 4,15! CONI PI,15%
002664 040 103 117
002667 116 111 040
002672 064 054 061
002675 065 041 011
002700 103 117 116
002703 111 040 120
002706 111 054 061
002711 065 000
5217 000636 DEFCMD 7A,<EXAMINE TEN 15>
000636 002713' .WORD CMD7A
002713 105 130 101 CMD7A:.ASCIZ %EXAMINE TEN 15%
002716 115 111 116
002721 105 040 124
002724 105 116 040
002727 061 065 000
5218 000640 DEFCMD 10,<XCT DATAI 10,15! DATAI PAG,15>
000640 002732' .WORD CMD10
002732 130 103 124 CMD10:.ASCIZ %XCT DATAI 10,15! DATAI PAG,15%
002735 040 104 101
002740 124 101 111
002743 040 061 060
002746 054 061 065
002751 041 011 104
002754 101 124 101
002757 111 040 120
002762 101 107 054
002765 061 065 000
5219 000642 DEFCMD 10B,<EXAMINE TEN 15>
000642 002770' .WORD CMD10B
002770 105 130 101 CMD10B:.ASCIZ %EXAMINE TEN 15%
002773 115 111 116
002776 105 040 124
003001 105 116 040
003004 061 065 000
5220 000644 DEFCMD 11,<XCT CONI 10,15! CONI PAG,15>
000644 003007' .WORD CMD11
003007 130 103 124 CMD11:.ASCIZ %XCT CONI 10,15! CONI PAG,15%
003012 040 103 117
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 128-4
.KLE -- ROUTINE TO RETURN DEFAULT KLERR COMMANDS
003015 116 111 040
003020 061 060 054
003023 061 065 041
003026 011 103 117
003031 116 111 040
003034 120 101 107
003037 054 061 065
003042 000
5221 000646 DEFCMD 11A,<EXAMINE TEN 15>
000646 003043' .WORD CMD11A
003043 105 130 101 CMD11A:.ASCIZ %EXAMINE TEN 15%
003046 115 111 116
003051 105 040 124
003054 105 116 040
003057 061 065 000
5222 000650 DEFCMD 12,<SET OUTPUT TTY>
000650 003062' .WORD CMD12
003062 123 105 124 CMD12:.ASCIZ %SET OUTPUT TTY%
003065 040 117 125
003070 124 120 125
003073 124 040 124
003076 124 131 000
5223 000652 DEFCMD 13,<CLEAR OUTPUT LOG>
000652 003101' .WORD CMD13
003101 103 114 105 CMD13:.ASCIZ %CLEAR OUTPUT LOG%
003104 101 122 040
003107 117 125 124
003112 120 125 124
003115 040 114 117
003120 107 000
5224 000654 000000 .WORD 0
5225 000656 TAKTAB::
5226 000656 DEFCMD 14,<TAKE>
000656 003122' .WORD CMD14
003122 124 101 113 CMD14:.ASCIZ %TAKE%
003125 105 000
5227 000660 000000 .WORD 0
5228 007736 .PSECT
KLEDEF -- KLERR SNAPSHOT DEFAUL MACRO M1113 10-NOV-81 17:48 PAGE 129
.SNAP -- ROUTINE TO MANUALLY PERFORM A SNAPSHOT
5231 .SBTTL .SNAP -- ROUTINE TO MANUALLY PERFORM A SNAPSHOT
5232
5233 ;+
5234 ; .SNAP -- ROUTINE TO MANUALLY TAKE A KL SNAPSHOT
5235 ;
5236 ; THIS ROUTINE WILL SET UP THE CONTROL FLAGS THAT WILL CAUSE THE PARSER
5237 ; TO AT IN THE KLERR FUNCTION OF TAKING A SNAPSHOT.
5238 ;
5239 ; THIS ROUTINE ADDED FOR TCO 4.1.1049
5240 ;
5241 ; INPUT ARGUMENTS:
5242 ;
5243 ; NONE
5244 ;
5245 ; OUTPUT ARGUMENTS:
5246 ;
5247 ; NONE
5248 ;
5249 ; ERROR CODES RETURNED:
5250 ;
5251 ; NONE
5252 ;-
5253
5255 007736 .SNAP::
5256 007736 CALL .CKEOC ; MUST HAVE E-O-C
007736 004737 000000G JSR PC,.CKEOC
5257 007742 005237 000000G INC .KLERQ ; SET FLAG THAT SAYS SNAPSHOT REQUIRED
5258 007746 005237 000000G INC .KLEDF ; SET FLAG THAT CAUSES DEFAULT COMMANDS
5259 007752 105037 000000G CLRB .KLEVL ; CLEAR DEFAULT COMMAND VALID FLAG
5260 007756 105237 000000G INCB .KLSNP ; SAY SNAPSHOT COMMAND IN PROGRESS
5261 007762 RETURN ; DONE
007762 000207 RTS PC
5262
MARKC -- KL MARK/UNMARK-MICROCO MACRO M1113 10-NOV-81 17:48 PAGE 131
.SNAP -- ROUTINE TO MANUALLY PERFORM A SNAPSHOT
5266 .TITLE MARKC -- KL MARK/UNMARK-MICROCODE COMMAND MODULE 7910.19
5267
5268 .IDENT "006130"
5269
5270 ;
5271 ; COPYRIGHT (C) 1975, 1979 BY
5272 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
5273 ;
5274 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
5275 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
5276 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
5277 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
5278 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
5279 ;
5280 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
5281 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
5282 ; CORPORATION.
5283 ;
5284 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
5285 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
5286 ;
5287 ;
5288 ; MODULE: KL CRAM DISPATCH FIELD READ
5289 ;
5290 ; VERSION: 06-13
5291 ;
5292 ; AUTHOR: R. BELANGER
5293 ;
5294 ; DATE: 7910.19
5295 ;
5296 ; THIS MODULE CONTAINS:
5297 ;
5298 ; 1) MARK MICROCODE COMMAND
5299 ; 2) UNMARK MICROCODE COMMAND
MARKC -- KL MARK/UNMARK-MICROCO MACRO M1113 10-NOV-81 17:48 PAGE 132
.MARKC -- THE "MARK/UNMARK-MICROCODE" COMMAND 7910.19
5301 .SBTTL .MARKC -- THE "MARK/UNMARK-MICROCODE" COMMAND 7910.19
5302
5303 ;+
5304 ; .MARKC -- THE "MARK-MICROCODE" COMMAND
5305 ; .UMRKC -- THE "UNMARK-MICROCODE" COMMAND
5306 ;
5307 ; THESE SUBROUTINES WILL EITHER MARK OR UNMARK A SINGLE LOCATION IN THE
5308 ; KL CRAM. NO CHECK IS MADE TO SEE WHETHER OR NOT THE LOCATION IS ALREADY
5309 ; IN THE DESIRED STATE; THE COMMAND IS SIMPLY EXECUTED
5310 ;
5311 ; INPUT ARGUMENTS:
5312 ;
5313 ; NONE.
5314 ;
5315 ; OUTPUT ARGUMENTS:
5316 ;
5317 ; NONE.
5318 ; R0, R1, R2 -- ALTERED.
5319 ;
5320 ; ERROR CODES RETURNED:
5321 ;
5322 ; NONE.
5323 ;
5324 ; NOTE:
5325 ;
5326 ; NO ATTEMPT IS MADE TO RESTORE THE STATE OF THE KL CLOCK OR THE
5327 ; KL RUN FLOP. THIS ROUTINE ESSENTIALLY CLOBBERS ANY HARDWARE
5328 ; CONTEXT THAT EXISTS WHEN IT IS CALLED AND EXITS WITH THE KL
5329 ; CLOCK OFF.
5330 ;-
5331 .ENABL LSB
5332
5333 007764 .UMRKC::
5334 007764 005046 CLR -(SP) ; SET THE "UNMARK" FLAG
5335 007766 000402 BR 10$ ; .AND ENTER COMMON CODE
5336 ;
5337 007770 .MARKC::
5338 007770 012746 000001 MOV #1,-(SP) ; SET THE "MARK" FLAG
5339 007774 10$:
5340 007774 CALL .CKRUN ; .BETTER NOT BE RUNNING...
007774 004737 000000G JSR PC,.CKRUN
5341 010000 CALL .GTELN ; .READ THE CRAM ADDRESS
010000 004737 000000G JSR PC,.GTELN
5342 010004 010002 MOV R0,R2 ; .COPY ADDRESS TO R2
5343 010006 CALL .RDCRM ; .READ THE CRAM LOCATION SPECIFIED
010006 004737 000000G JSR PC,.RDCRM
5344 010012 012701 000400 MOV #400,R1 ; .MARK BIT TO R1
5345 010016 005716 TST (SP) ; .TEST "MARK" FLAG
5346 010020 001003 BNE 20$ ; .MARK -- GO DO IT
5347 010022 040160 000006 BIC R1,6(R0) ; .UNMARK -- DO IT NOW
5348 010026 000402 BR 30$ ; .AND EXIT IN COMMON CODE
5349 ;
5350 010030 20$:
5351 010030 050160 000006 BIS R1,6(R0) ; .MARK THE MICROCODE
5352 010034 30$:
5353 010034 010001 MOV R0,R1 ; .COPY BUFFER POINTER TO R1
5354 010036 010200 MOV R2,R0 ; .COPY ADDRESS TO R0
MARKC -- KL MARK/UNMARK-MICROCO MACRO M1113 10-NOV-81 17:48 PAGE 132-1
.MARKC -- THE "MARK/UNMARK-MICROCODE" COMMAND 7910.19
5355 010040 CALL .WRCRM ; .REWRITE THE CRAM
010040 004737 000000G JSR PC,.WRCRM
5356 010044 122715 000054 CMPB #',,(R5) ; [5.1014]IS THIS A LIST?
5357 010050 001004 BNE 40$ ; [5.1014]NO -- GO ON
5358 010052 105725 TSTB (R5)+ ; [5.1014]YES -- REMOVE COMMA
5359 010054 005726 TST (SP)+ ; [5.1014]REMOVE AND TEST "MARK" FLAG
5360 010056 001344 BNE .MARKC ; [5.1014]MARK COMMAND
5361 010060 000741 BR .UMRKC ; [5.1014]UNMARK COMMAND
5362 010062 005726 40$: TST (SP)+ ; [5.1014]POP STACK
5363 010064 RETURN ; [5.1014]EXIT
010064 000207 RTS PC
5364 ;
5365
5366 .DSABLE LSB
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 134
.MARKC -- THE "MARK/UNMARK-MICROCODE" COMMAND 7910.19
5369 .TITLE RESTC -- RESET COMMAND DISPATCH 7707.12
5370
5371 .IDENT "005000"
5372 ;
5373 ; COPYRIGHT (C) 1975, 1979 BY
5374 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
5375 ;
5376 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
5377 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
5378 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
5379 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
5380 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
5381 ;
5382 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
5383 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
5384 ; CORPORATION.
5385 ;
5386 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
5387 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
5388 ;
5389 ; MODULE: RESET COMMAND DISPATCH
5390 ;
5391 ; VERSION: 05-00
5392 ;
5393 ; AUTHOR: R. BELANGER
5394 ;
5395 ; DATE: 7707.12
5396 ;
5397 ; THIS MODULE CONTAINS:
5398 ;
5399 ; 1) RESET COMMAND DISPATCH
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 135
.RESTC -- THE "RESET" COMMAND DISPATCH 7710.11
5401 .SBTTL .RESTC -- THE "RESET" COMMAND DISPATCH 7710.11
5402
5403 ;+
5404 ; .RESTC -- THE "RESET" COMMAND DISPATCH
5405 ;
5406 ; THIS ROUTINE IS THE TOP LEVEL OF THE RESET COMMAND. ".RESTC" CHECKS
5407 ; ARGUMENTS FOR RESET AND DISPATCHES TO THE PROPER ROUTINE
5408 ;
5409 ; INPUT ARGUMENTS:
5410 ;
5411 ; NONE.
5412 ;
5413 ; OUTPUT ARGUMENTS:
5414 ;
5415 ; R0 POINTS TO THE LEGAL BITS FOR THE RESET OBJECT.
5416 ;
5417 ; ERROR CODES RETURNED:
5418 ;
5419 ; KLR -- ILLEGAL WHILE KL IS RUNNING.
5420 ;-
5421
5422 010066 .RESTC::
5423 010066 111504 MOVB (R5),R4 ; LOOK AT THIS CHARACTER
5424 010070 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
5425 010076 001015 BNE 10$ ; DEFAULT RESET ON E-O-C
5426 010100 CALL .CKARG ; GET OVER LEADING BLANKS
010100 004737 000000G JSR PC,.CKARG
5427 010104 012700 000000G MOV #.RESTB,R0 ; TABLE POINTER TO R0
5428 010110 CALL .TSCAN ; SCAN THE TABLE
010110 004737 000000G JSR PC,.TSCAN
5429 010114 012001 MOV (R0)+,R1 ; LEGAL BITS TO R1
5430 010116 005101 COM R1 ; INVERT THEM
5431 010120 040137 000000G BIC R1,.LGLWD ; SET UP NEW LEGAL WORD
5432 010124 CALL .CKEOC ; CHECK FOR E-O-C
010124 004737 000000G JSR PC,.CKEOC
5433 010130 CALLR @(R0)+ ; DO THE RESET
010130 000130 JMP @(R0)+
5434 ;
5435 010132 10$:
5436 010132 CALL .CKRNP ; SEE IF THE KL IS RUNNING
010132 004737 000000G JSR PC,.CKRNP
5437 010136 CALL .STPKL ; STOP THE KL
010136 004737 000000G JSR PC,.STPKL
5438 010142 CALLR .RESTP ; RESET THE KL AND EXIT
010142 000137 000000G JMP .RESTP
5439 ;
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 136
.RSALL -- THE "RESET ALL" COMMAND 7602.18
5441 .SBTTL .RSALL -- THE "RESET ALL" COMMAND 7602.18
5442
5443 010146 .RSALL::
5444 010146 PUSH .KLFLG ; SAVE ".KLFLG"
010146 013746 000000G MOV .KLFLG,-(SP)
5445 010152 032716 100000 BIT #KF.CLK,(SP) ; .IS THE CLOCK ON?
5446 010156 001426 BEQ RSAKCN ; .NO -- GIVE "KCN" ERROR
5447 010160 CALL .STPKL ; .STOP THE KL
010160 004737 000000G JSR PC,.STPKL
5448 010164 CALL .RESTD ; .RESET THE DTE-20
010164 004737 000000G JSR PC,.RESTD
5449 010170 CALL .RSAPR ; .RESET APR
010170 004737 010242' JSR PC,.RSAPR
5450 010174 CALL .RSPAG ; .RESET PAG
010174 004737 010274' JSR PC,.RSPAG
5451 010200 CALL .RSTPI ; .RESET PI
010200 004737 010264' JSR PC,.RSTPI
5452 010204 POP .SVKLF ; .SET UP ".SVKLF"
010204 012637 000000G MOV (SP)+,.SVKLF
5453 010210 CALLR .RSTKL ; RESTART THE KL
010210 000137 000000G JMP .RSTKL
5454 ;
5455 010214 .RSDTE::
5456 010214 CALLR .RESTD ; RESET THE DTE-20
010214 000137 000000G JMP .RESTD
5457 ;
5458 010220 .RSTIN::
5459 010220 CALL .CKRUN ; SEE IF THE KL IS RUNNING
010220 004737 000000G JSR PC,.CKRUN
5460 010224 CALL .STPKL ; STOP THE KL
010224 004737 000000G JSR PC,.STPKL
5461 010230 CALLR .RESTI ; RESET TO DEFAULTS AND EXIT
010230 000137 000000G JMP .RESTI
5462 ;
5463 010234 RSAKCN:
5464 010234 ERROR$ KCN ; ERROR -- KL CLOCK NOT RUNNING
010234 012746 042506 MOV #^RKCN,-(SP)
010240 104400 TRAP TC.ERR
5465 ;
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 137
.RSTPI -- THE "RESET PI" COMMAND 7607.21
5467 .SBTTL .RSTPI -- THE "RESET PI" COMMAND 7607.21
5468
5469 .ENABL LSB
5470
5471 010242 .RSAPR:: ; RESET APR
5472 010242 012700 000662' MOV #RSAPRI,R0 ; INSTRUCTION POINTER TO R0
5473 010246 000410 BR 10$ ; DO COMMON CODE
5474 ;
5475 010250 .RSERR:: ; RESET ERROR
5476 010250 012700 000670' MOV #RSERRI,R0 ; INSTRUCTION POINTER TO R0
5477 010254 000405 BR 10$ ; DO COMMON CODE
5478 ;
5479 010256 .RSTIO:: ; RESET IO
5480 010256 012700 000676' MOV #RSTIOI,R0 ; INSTRUCTION POINTER TO R0
5481 010262 000402 BR 10$ ; DO COMMON CODE
5482 ;
5483 010264 .RSTPI:: ; RESET PI
5484 010264 012700 000704' MOV #RSTPII,R0 ; INSTRUCTION POINTER TO R0
5485 010270 10$:
5486 010270 CALLR .EXCTF ; EXECUTE IT
010270 000137 000000G JMP .EXCTF
5487 ;
5488
5489 .DSABL LSB
5490
5491 000662 .PSECT DATA
5492
5493 000662 RSAPRI:
5494 000662 IOKL$ CONO APR,,267760
000662 360 157 .BYTE $$A,$$B
000664 001 002 .BYTE $$C,$$D
000666 016 000 .BYTE $$E,$$F
5495 000670 RSERRI:
5496 000670 IOKL$ CONO APR,,27760
000670 360 057 .BYTE $$A,$$B
000672 000 002 .BYTE $$C,$$D
000674 016 000 .BYTE $$E,$$F
5497 000676 RSTIOI:
5498 000676 IOKL$ CONO APR,,200000
000676 000 000 .BYTE $$A,$$B
000700 001 002 .BYTE $$C,$$D
000702 016 000 .BYTE $$E,$$F
5499 000704 RSTPII:
5500 000704 IOKL$ CONO PI,,10000
000704 000 020 .BYTE $$A,$$B
000706 000 006 .BYTE $$C,$$D
000710 016 000 .BYTE $$E,$$F
5501
5502 010274 .PSECT
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 138
.RSPAG -- THE "RESET PAG" COMMAND 7607.21
5504 .SBTTL .RSPAG -- THE "RESET PAG" COMMAND 7607.21
5505
5506 010274 .RSPAG::
5507 010274 PUSH .KLFLG ; SAVE ".KLFLG"
010274 013746 000000G MOV .KLFLG,-(SP)
5508 010300 032716 100000 BIT #KF.CLK,(SP) ; .IS THE CLOCK ON?
5509 010304 001442 BEQ RSPKCN ; .NO -- GIVE "KCN" ERROR
5510 010306 CALL .STPKL ; .STOP THE KL
010306 004737 000000G JSR PC,.STPKL
5511 010312 PUSH R1 ; .SAVE R1
010312 010146 MOV R1,-(SP)
5512 010314 PUSH #16 ; ..BUILD A CLEAR WORD ON THE STACK
010314 012746 000016 MOV #16,-(SP)
5513 010320 005046 CLR -(SP) ; ...
5514 010322 005046 CLR -(SP) ; ....
5515 010324 010601 MOV SP,R1 ; .....GET THE POINTER
5516 010326 005046 CLR -(SP) ; .....NOW SET UP
5517 010330 PUSH #100 ; ......SCRATCH ADDRESS
010330 012746 000100 MOV #100,-(SP)
5518 010334 010600 MOV SP,R0 ; .......GET THE POINTER
5519 010336 PUSH R1 ; .......DATA POINTER TO STACK
010336 010146 MOV R1,-(SP)
5520 010340 PUSH R0 ; ........ADDRESS POINTER TO STACK
010340 010046 MOV R0,-(SP)
5521 010342 010601 MOV SP,R1 ; .........BLOCK POINTER TO R1
5522 010344 012700 000040 MOV #ED.EXV,R0 ; .........EXEC VIRTUAL SPACE
5523 010350 CALL .DPKLM ; .........DO THE DEPOSIT
010350 004737 000000G JSR PC,.DPKLM
5524 010354 062706 000016 ADD #^D14,SP ; .........RESET THE STACK
5525 010360 012700 000712' MOV #RSPGI0,R0 ; ..INSTRUCTION POINTER TO R0
5526 010364 CALL .EXCTF ; ..EXECUTE IT
010364 004737 000000G JSR PC,.EXCTF
5527 010370 012700 000720' MOV #RSPGI1,R0 ; ..NEXT INSTRUCTION
5528 010374 CALL .EXCTF ; ..EXECUTE IT
010374 004737 000000G JSR PC,.EXCTF
5529 010400 POP R1 ; ..RESTORE R1
010400 012601 MOV (SP)+,R1
5530 010402 POP .SVKLF ; .SET UP ".SVKLF"
010402 012637 000000G MOV (SP)+,.SVKLF
5531 010406 CALLR .RSTKL ; RESART THE KL AND EXIT
010406 000137 000000G JMP .RSTKL
5532 ;
RESTC -- RESET COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 139
.RSPAG -- THE "RESET PAG" COMMAND 7607.21
5534 010412 RSPKCN:
5535 010412 ERROR$ KCN ; ERROR -- KL CLOCK NOT RUNNING
010412 012746 042506 MOV #^RKCN,-(SP)
010416 104400 TRAP TC.ERR
5536 ;
5537
5538 000712 .PSECT DATA
5539
5540 000712 RSPGI0:
5541 000712 IOKL$ CONO PAG,,0
000712 000 000 .BYTE $$A,$$B
000714 000 012 .BYTE $$C,$$D
000716 016 000 .BYTE $$E,$$F
5542 000720 RSPGI1:
5543 000720 IOKL$ DATAO PAG,,100
000720 100 000 .BYTE $$A,$$B
000722 200 011 .BYTE $$C,$$D
000724 016 000 .BYTE $$E,$$F
5544
5545 010420 .PSECT
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 140
.RSPAG -- THE "RESET PAG" COMMAND 7607.21
5547 .TITLE RUNCM -- RUN/TAKE COMMAND MODULE 7607.14
5548
5549 .IDENT "006110"
5550
5551 ;
5552 ; COPYRIGHT (C) 1975, 1979 BY
5553 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
5554 ;
5555 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
5556 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
5557 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
5558 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
5559 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
5560 ;
5561 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
5562 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
5563 ; CORPORATION.
5564 ;
5565 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
5566 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
5567 ;
5568 ; MODULE: RUN COMMAND
5569 ;
5570 ; VERSION: 06-11
5571 ;
5572 ; AUTHOR: R. BELANGER
5573 ;
5574 ; DATE: 7607.14
5575 ;
5576 ; THIS MODULE CONTAINS:
5577 ;
5578 ; 1) RUN COMMAND CODE
5579 ; 2) REQUEST DIRECTIVE PARAMETER BLOCK
5580 ;
5581 ; MODIFICATIONS:
5582 ;
5583 ; NO. DATE PROGRAMMER REASON
5584 ; --- ---- ---------- ------
5585 ; [5.1000] 24-AUG-79 K. LEFEBVRE ADD "TAKE" COMMAND
5586
5587 .MCALL DIR$, RQST$
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 141
.RUNCM -- THE "RUN" AND "MCR" COMMANDS 7607.14
5589 .SBTTL .RUNCM -- THE "RUN" AND "MCR" COMMANDS 7607.14
5590
5591 ;+
5592 ; .RUNCM -- THE "RUN" AND "MCR" COMMANDS
5593 ;
5594 ; THIS ROUTINE REQUESTS THE TASK SPECIFIED IN THE COMMAND TO BE RUN
5595 ; AND EXITS THE COMMAND PARSER
5596 ;
5597 ; INPUT ARGUMENTS:
5598 ;
5599 ; NONE.
5600 ;
5601 ; OUTPUT ARGUMENTS:
5602 ;
5603 ; NONE.
5604 ;
5605 ; ERROR CODES RETURNED:
5606 ;
5607 ; ITN -- ILLEGAL TASK NAME
5608 ; NST -- NO SUCH TASK
5609 ; TAA -- TASK IS ALREADY ACTIVE
5610 ;-
5611
5612 010420 .RUNCM::
5613 010420 CALL .CKSYM ; GET OVER LEADING BLANKS
010420 004737 000000G JSR PC,.CKSYM
5614 010424 CALL .GTR50 ; GET THE .RAD50 TASK NAME
010424 004737 010676' JSR PC,.GTR50
5615 010430 001425 BEQ RUNITN ; BAD NEWS IF NONE THERE
5616 010432 PUSH R0 ; SAVE THE TASK NAME
010432 010046 MOV R0,-(SP)
5617 010434 CALL .GTR50 ; .READ THE SECOND HALF
010434 004737 010676' JSR PC,.GTR50
5618 010440 CALL .CKEOC ; .MUST HAVE E-O-C
010440 004737 000000G JSR PC,.CKEOC
5619 010444 POP .RNDPB+4 ; .SET THE TASK NAME IN THE DPB
010444 012637 000052' MOV (SP)+,.RNDPB+4
5620 010450 DIR$ #.RNDPB ; REQUEST THE TASK
010450 012746 000046' MOV #.RNDPB,-(SP)
010454 104375 EMT 375
5621 010456 103402 BCS 10$ ; ERROR IF CC-C IS SET
5622 010460 CALLR .EXITP ; EXIT
010460 000137 000000G JMP .EXITP
5623 ;
5624
5625 ; [CONTINUED ON THE FOLLOWING PAGE]
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 142
.RUNCM -- THE "RUN" AND "MCR" COMMANDS 7607.14
5627 ; [CONTINUED FROM THE PREVIOUS PAGE]
5628
5629 010464 10$:
5630 010464 013700 000000G MOV $DSW,R0 ; LOOK AT THE DIRECTIVE STATUS
5631 010470 022700 000000G CMP #IE.INS,R0 ; IS THERE SUCH A TASK?
5632 010474 001406 BEQ RUNNST ; NO -- GIVE "NST" ERROR
5633 010476 022700 000000G CMP #IE.ACT,R0 ; YES -- IS IT ALREADY ACTIVE?
5634 010502 001406 BEQ RUNTAA ; YES -- GIVE "TAA" ERROR
5635 010504 RUNITN:
5636 010504 ERROR$ ITN ; ERROR -- ILLEGAL TASK NAME
010504 012746 035556 MOV #^RITN,-(SP)
010510 104400 TRAP TC.ERR
5637 ;
5638 010512 RUNNST:
5639 010512 ERROR$ NST ; ERROR -- NO SUCH TASK
010512 012746 055214 MOV #^RNST,-(SP)
010516 104400 TRAP TC.ERR
5640 ;
5641 010520 RUNTAA:
5642 010520 ERROR$ TAA ; ERROR -- TASK ALREADY ACTIVE
010520 012746 076451 MOV #^RTAA,-(SP)
010524 104400 TRAP TC.ERR
5643 ;
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 143
.RUNCM -- THE "RUN" AND "MCR" COMMANDS 7607.14
5645 ; DPB FOR REQUEST DIRECTIVE
5646
5647 ; !===============================================!
5648 ; 00 ! DPB SIZE ! DIC !
5649 ; !-----------------------------------------------!
5650 ; 02 ! TASK NAME IN .RAD50 (HIGH) !
5651 ; !-----------------------------------------------!
5652 ; 04 ! TASK NAME IN .RAD50 (LOW) !
5653 ; !-----------------------------------------------!
5654 ; 06 ! PARTITION NAME (IGNORED) !
5655 ; !-----------------------------------------------!
5656 ; 10 ! PARTITION NAME (IGNORED) !
5657 ; !-----------------------------------------------!
5658 ; 12 ! TASK PRIORITY !
5659 ; !-----------------------------------------------!
5660 ; 14 ! UIC (IGNORED) !
5661 ; !===============================================!
5662
5663 000046 .PSECT DPBS
5664
5665 000046 .RNDPB::
5666 000046 RQST$ ...TSK,,,,
000046 013 007 .BYTE 11.,7
000050 131574 100003 .RAD50 /...TSK/
000054 000000 000000 .WORD 0,0
000060 000000 .WORD
000062 000 000 .BYTE ,
5667
5668 010526 .PSECT
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 144
.TAKEC -- THE "TAKE" COMMAND
5670 .SBTTL .TAKEC -- THE "TAKE" COMMAND
5671
5672 ;+
5673 ; .TAKEC -- THE "TAKE" COMMAND
5674 ;
5675 ; THIS ROUTINE REQUESTS AN INDIRECT COMMAND FILE, OPENS IT WITH
5676 ; READ ACCESS, AND INDICATES THAT FURTHER COMMAND INPUT SHOULD
5677 ; COME FROM THIS FILE.
5678 ; THIS COMMAND WAS ADDED FOR TCO 5.1000
5679 ;
5680 ; INPUT ARGUMENTS:
5681 ;
5682 ; NONE
5683 ;
5684 ; OUTPUT ARGUMENTS:
5685 ;
5686 ; NONE
5687 ;
5688 ; ERROR CODES RETURNED:
5689 ;
5690 ; CAL -- CAN'T ASSIGN LUN
5691 ; DNF -- DIRECTORY FILE NOT FOUND
5692 ; FLF -- FILE LOOKUP FAILURE
5693 ; FOF -- FILE OPEN FAILURE
5694 ; FRD -- FILE READ FAILURE
5695 ; IFN -- ILLEGAL FILE NAME
5696 ; IRE -- ILLEGAL RECURSION
5697 ; NSF -- NO SUCH FILE
5698 ;-
5699
5700 010526 .TAKEC::
5701 010526 012737 062072 000000G MOV #^RPAR,.INFN ; DEFAULT COMMAND FILE NAME
5702 010534 012737 073632 000002G MOV #^RSER,.INFN+2 ; PARSER.CMD
5703 010542 CALL .CKSYM ; GET OVER LEADING BLANKS
010542 004737 000000G JSR PC,.CKSYM
5704 010546 CALL .GTR50 ; GET THE RAD50 FILE NAME
010546 004737 010676' JSR PC,.GTR50
5705 010552 001406 BEQ 10$ ; DEFAULT NAME IF NONE GIVEN
5706 010554 010037 000000G MOV R0,.INFN ; SAVE 1ST HALF FILE NAME
5707 010560 CALL .GTR50 ; GET 2ND HALF FILE NAME
010560 004737 010676' JSR PC,.GTR50
5708 010564 010037 000002G MOV R0,.INFN+2 ; SAVE 2ND HALF FILE NAME
5709 010570 10$: CALL .CKEOC ; MUST HAVE E-O-C
010570 004737 000000G JSR PC,.CKEOC
5710 010574 005737 000000G TST .INDFG ; ALREADY DOING INDIRECT FILE?
5711 010600 001030 BNE TAKIRE ; YES -- ERROR
5712 010602 .TAKE1:: ; [5.1006]ALTERNATE ENTRY POINT FOR KLE
5713 010602 012700 000000G MOV #.INFN,R0 ; NO -- INPUT FILE NAME PTR
5714 010606 012701 000000G MOV #.INFNB,R1 ; INPUT FILE NAME BLOCK PTR
5715 010612 012702 000005 MOV #INDLUN,R2 ; INPUT FILE LUN
5716 010616 CALL .LOKUP ; LOOK UP INPUT FILE
010616 004737 000000G JSR PC,.LOKUP
5717 010622 103422 BCS TAKNSF ; NO SUCH FILE IF CC-C IS SET
5718 010624 012704 000000G MOV #IO.ACR,R4 ; READ ACCESS
5719 010630 CALL .OPEN ; OPEN FILE FOR READ
010630 004737 000000G JSR PC,.OPEN
5720 010634 005037 000000G CLR .INBBC ; NOTHING READ IN YET
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 144-1
.TAKEC -- THE "TAKE" COMMAND
5721 010640 005037 000000G CLR .INPOS ; NO BUFFER YET
5722 010644 005037 000000G CLR .INVBN ; READ FIRST BLOCK
5723 010650 005037 000002G CLR .INVBN+2 ; READ FIRST BLOCK
5724 010654 005237 000000G INC .INDFG ; REDIRECT INPUT TO FILE
5725 010660 RETURN ; RETURN
010660 000207 RTS PC
5726 ;
5727 010662 TAKIRE:
5728 010662 ERROR$ IRE ; ERROR -- ILLEGAL RECURSION
010662 012746 035425 MOV #^RIRE,-(SP)
010666 104400 TRAP TC.ERR
5729 010670 TAKNSF:
5730 010670 20$: ERROR$ NSF ; ERROR -- NO SUCH FILE
010670 012746 055176 MOV #^RNSF,-(SP)
010674 104400 TRAP TC.ERR
5731 ;
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 145
.GTR50 -- GET A .RAD50 WORD 7602.18
5733 .SBTTL .GTR50 -- GET A .RAD50 WORD 7602.18
5734
5735 ;+
5736 ; .GTR50 -- GET A .RAD50 WORD
5737 ;
5738 ; THIS ROUTINE WILL CONVERT THE NEXT THREE ASCII CHARACTERS IN THE
5739 ; INPUT STREAM TO .RAD50 FORMAT.
5740 ;
5741 ; INPUT ARGUMENTS:
5742 ;
5743 ; R5 POINTS TO THE INPUT STREAM.
5744 ;
5745 ; OUTPUT ARGUMENTS:
5746 ;
5747 ; R0 HOLDS THE .RAD50 SYMBOL.
5748 ;
5749 ; ERROR CODES RETURNED:
5750 ;
5751 ; NONE.
5752 ; IF THE ROUTINE CANNOT CONVERT THE FIRST CHARACTER, CC-Z IS SET.
5753 ;-
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 146
.GTR50 -- GET A .RAD50 WORD 7602.18
5755 010676 .GTR50::
5756 010676 PUSH <R1,R2> ; SAVE REGISTERS
010676 010146 MOV R1,-(SP)
010700 010246 MOV R2,-(SP)
5757 010702 005046 CLR -(SP) ; ..SAVE A BUFFER
5758 010704 012702 000000G MOV #.T50TB,R2 ; ...FACTOR TABLE POINTER TO R2
5759 010710 10$:
5760 010710 012201 MOV (R2)+,R1 ; ...GET CURRENT MULTIPLIER
5761 010712 001427 BEQ 50$ ; ...DONE IF .EQ. 0
5762 010714 112500 MOVB (R5)+,R0 ; ...GET THE CHARACTER INTO R0
5763 010716 120027 000101 CMPB R0,#'A ; ...IS IT ALPHABETIC?
5764 010722 103403 BLO 20$ ; ...NO -- TRY NUMERIC
5765 010724 120027 000132 CMPB R0,#'Z ; ...IS IT REALLY ALPHABETIC?
5766 010730 101410 BLOS 30$ ; ...YES -- ADD IT TO RESULT
5767 010732 20$:
5768 010732 120027 000060 CMPB R0,#'0 ; ...NO -- IS IT NUMERIC?
5769 010736 103413 BLO 40$ ; ...NO -- EXIT
5770 010740 120027 000071 CMPB R0,#'9 ; ...YES -- IS IT REALLY NUMERIC?
5771 010744 101010 BHI 40$ ; ...NO -- EXIT
5772 010746 162700 177722 SUB #<<'0-36>-<'A-1>>,R0
5773 010752 30$:
5774 010752 162700 000100 SUB #<'A-1>,R0 ; ...CONVERT ALPHABETIC
5775 010756 CALL $MUL ; ...COMPUTE CHARACTER VALUE
010756 004737 000000G JSR PC,$MUL
5776 010762 060116 ADD R1,(SP) ; ...ACCUMULATE RESULT
5777 010764 000751 BR 10$ ; ...AND GET NEXT CHARACTER
5778 ;
5779 010766 40$:
5780 010766 105745 TSTB -(R5) ; ...BACK UP THE BYTE POINTER
5781 010770 010004 MOV R0,R4 ; ...PUT THE CHARACTER IN R4
5782 010772 50$:
5783 010772 POP R0 ; ...RETURN THE RESULT
010772 012600 MOV (SP)+,R0
5784 010774 POP <R2,R1> ; ..RESTORE REGISTERS
010774 012602 MOV (SP)+,R2
010776 012601 MOV (SP)+,R1
5785 011000 005700 TST R0 ; LOOK AT R0
5786 011002 RETURN ; TO CALLER
011002 000207 RTS PC
RUNCM -- RUN/TAKE COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 147
.QUITC -- THE "QUIT" COMMAND 7602.16
5788 .SBTTL .QUITC -- THE "QUIT" COMMAND 7602.16
5789
5790 ;+
5791 ; .QUITC -- THE "QUIT" COMMAND.
5792 ;
5793 ; THIS ROUTINE EXECUTES THE "QUIT" (EXIT) FUNCTION.
5794 ;
5795 ; INPUT ARGUMENTS:
5796 ;
5797 ; NONE.
5798 ;
5799 ; OUTPUT ARGUMENTS:
5800 ;
5801 ; NONE.
5802 ;
5803 ; ERROR CODES RETURNED:
5804 ;
5805 ; NONE.
5806 ;-
5807
5808 011004 .QUITC::
5809 011004 CALL .CKEOC ; MUST HAVE E-O-C
011004 004737 000000G JSR PC,.CKEOC
5810 011010 CALLR .EXITP ; EXIT THE PARSER
011010 000137 000000G JMP .EXITP
5811 ;
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 149
.QUITC -- THE "QUIT" COMMAND 7602.16
5814 .TITLE SCACB -- SET AC-BLOCK COMMAND MODULE
5815
5816 .IDENT "006110"
5817
5818 ; COPYRIGHT (C) 1979 BY
5819 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
5820 ;
5821 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
5822 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
5823 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
5824 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
5825 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
5826 ;
5827 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
5828 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
5829 ; CORPORATION.
5830 ;
5831 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
5832 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
5833 ;
5834 ; MODULE: SET AC-BLOCK
5835 ;
5836 ; VERSION: 06-11
5837 ;
5838 ; AUTHOR: K.LEFEBVRE
5839 ;
5840 ; DATE: 12-SEP-79
5841 ;
5842 ; THIS MODULE CONTAINS:
5843 ;
5844 ; 1) SET AC-BLOCK N COMMAND
5845 ; 2) SWEEP N COMMAND
5846 ;
5847 ; THESE COMMANDS WERE ADDED FOR TCO 5.1002
5848
5849 .MCALL SETF$S
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 150
.SCACB -- SET AC-BLOCK COMMAND
5851 .SBTTL .SCACB -- SET AC-BLOCK COMMAND
5852
5853 ;+
5854 ; .SCACB -- SET AC-BLOCK COMMAND
5855 ;
5856 ; THIS ROUTINE WILL CAUSE THE SPECIFIED BLOCK TO BE THE CURRENT
5857 ; AC BLOCK REFERENCED BY THE KL.
5858 ;
5859 ; INPUT ARGUMENTS:
5860 ;
5861 ; NONE
5862 ;
5863 ; OUTPUT ARGUMENTS:
5864 ;
5865 ; NONE
5866 ;
5867 ; ERROR CODES RETURNED:
5868 ;
5869 ; ILI -- ILLEGAL UNSTRUCTION
5870 ; MRA -- MISSING REQUIRED ARGUMENT
5871 ; NOR -- INPUT ARGUMENT NUMBER OUT OF RANGE
5872 ;-
5873
5874 011014 .SCACB::
5875 011014 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
5876 011020 001014 BNE SCAILI ; YES -- NOT ALLOWED
5877 011022 CALL .CKARG ; NO -- CHECK FOR AN ARGUMENT
011022 004737 000000G JSR PC,.CKARG
5878 011026 CALL .GTELN ; GET THE ARGUMENT
011026 004737 000000G JSR PC,.GTELN
5879 011032 020027 000007 CMP R0,#7 ; IS THE ARGUMENT IN RANGE?
5880 011036 101010 BHI SCANOR ; NO -- ERROR
5881 011040 CALL .CKRUN ; MAKE SURE KL NOT RUNNING
011040 004737 000000G JSR PC,.CKRUN
5882 011044 010002 MOV R0,R2 ; SET BLOCK NO.
5883 011046 CALLR .SACBK ; YES -- SET AC BLOCK
011046 000137 011066' JMP .SACBK
5884
5885 011052 SCAILI:
5886 011052 ERROR$ ILI ; ERROR -- ILLEGAL INSTRUCTION
011052 012746 035051 MOV #^RILI,-(SP)
011056 104400 TRAP TC.ERR
5887 011060 SCANOR:
5888 011060 ERROR$ NOR ; ERROR -- INPUT NUMBER OUT OF RANGE
011060 012746 054752 MOV #^RNOR,-(SP)
011064 104400 TRAP TC.ERR
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 151
.SACBK -- SET AC BLOCK ROUTINE
5890 .SBTTL .SACBK -- SET AC BLOCK ROUTINE
5891
5892 ;+
5893 ; .SACBK -- SUBROUTINE TO SET KL AC BLOCK
5894 ;
5895 ; THIS ROUTINE WILL:
5896 ; 1. INSERT INSTR OBJECT INTO KL LOC 100
5897 ; 2. EXECUTE DATAO PAG,,100 TO SET AC BLOCK
5898 ;
5899 ; INPUT ARGUMENTS:
5900 ;
5901 ; R2=AC BLOCK NO. TO SET
5902 ;
5903 ; OUTPUT ARGUMENTS:
5904 ;
5905 ; NONE
5906 ;
5907 ; ERROR CODES RETURNED:
5908 ;
5909 ; CCC -- CAN'T CLEAR KL10 CLOCK
5910 ; CCR -- CAN'T CLEAR KL10 RUN FLOP
5911 ; CCS -- KL10 CLOCK CAN'T START
5912 ; CES -- CLOCK ERROR STOP
5913 ; CFH -- CAN'T FIND KL10 HALT LOOP
5914 ; CSC -- CAN'T SYNC KL10 CLOCK
5915 ; DMF -- DEPOSIT KL10 MEMORY FAILED
5916 ; DSF -- DTE20 STATUS FAILURE
5917 ; ECT -- EBOX CLOCK TIME OUT
5918 ; ESD -- EBOX STOPPED - DEPOSIT
5919 ; FRF -- FUNCTION READ FAILED
5920 ; FWF -- FUNCTION WRITE FAILED
5921 ; FXF -- FUNCTION EXECUTE FAILED
5922 ; MAE -- MODE ARGUMENT ERROR
5923 ; XTO -- EXECUTE TIMED OUT
5924 ;-
5925
5926 011066 .SACBK::
5927 011066 005000 CLR R0 ; CALL .WHACB ON EXIT FLAG
5928 011070 .SACB1:: ; ALTERNATE ENTRY POINT
5929 011070 PUSH <R0,R2> ; SAVE NEW AC BLOCK NO.
011070 010046 MOV R0,-(SP)
011072 010246 MOV R2,-(SP)
5930 011074 006302 ASL R2 ; POSITION AC BLOCK NO.
5931 011076 006302 ASL R2 ; POSITION AC BLOCK NO.
5932 011100 006302 ASL R2 ; POSITION AC BLOCK NO.
5933 011102 110237 000741' MOVB R2,ACDAT+3 ; PUT BLOCK NO. INTO INSTR
5934 011106 012701 000726' MOV #DEPBLK,R1 ; SET UP DEPOSIT DATA BLOCK
5935 011112 012700 000200 MOV #ED.PHY,R0 ; PUT IN PHYSICAL SPACE
5936 ; MOV #ED.EXV,R0 ; PUT IN EXEC VIRTUAL SPACE
5937 011116 CALL .DPKLM ; DEPOSIT INSTR OBJECT IN MEMORY
011116 004737 000000G JSR PC,.DPKLM
5938 011122 103404 BCS 10$ ; ERROR
5939 011124 012700 000744' MOV #SETACI,R0 ; INSTR PTR
5940 011130 CALL .EXCTF ; EXECUTE INSTR
011130 004737 000000G JSR PC,.EXCTF
5941 011134 10$: POP <R2,R0> ; RESTORE R2
011134 012602 MOV (SP)+,R2
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 151-1
.SACBK -- SET AC BLOCK ROUTINE
011136 012600 MOV (SP)+,R0
5942 011140 005700 TST R0 ; PRINT AC BLOCK?
5943 011142 001002 BNE 20$ ; NO -- EXIT
5944 011144 CALL .WHACB ; YES -- OUTPUT CURRENT AC BLOCK NO.
011144 004737 011152' JSR PC,.WHACB
5945 011150 20$: RETURN ; EXIT
011150 000207 RTS PC
5946
5947 000726 .PSECT DATA
5948
5949 000726 000732' DEPBLK: .WORD TEMADR ; OBJECT ADDR PTR
5950 000730 000736' .WORD ACDAT ; DEPOSIT DATA PTR
5951 000732 000100 TEMADR: .WORD 100 ; ADDR BITS 20-35
5952 000734 000000 .WORD 0 ; ADDR BITS 14-19
5953 000736 000000 ACDAT: .WORD 0 ; DATA BITS 20-35
5954 000740 000000 .WORD 0 ; DATA BITS 4-19
5955 000742 000010 .WORD 10 ; DATA BITS 0-3
5956
5957 000744 SETACI: IOKL$ DATAO PAG,,100 ; SET AC INSTR
000744 100 000 .BYTE $$A,$$B
000746 200 011 .BYTE $$C,$$D
000750 016 000 .BYTE $$E,$$F
5958
5959 011152 .PSECT
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 152
.WHACB -- WHAT AC BLOCK COMMAND
5961 .SBTTL .WHACB -- WHAT AC BLOCK COMMAND
5962
5963 011152 .WHACB::
5964 011152 PUSH R1 ; SAVE R1
011152 010146 MOV R1,-(SP)
5965 011154 012700 003127' MOV #WACMSG,R0 ; WHAT AC BLOCK MESSAGE
5966 011160 CALL .TYMSG ; PRINT IT
011160 004737 000000G JSR PC,.TYMSG
5967 011164 005001 CLR R1 ; NO FM ADDR BUFFER
5968 011166 CALL .RDFMA ; GET CURRENT AC BUFFER
011166 004737 000000G JSR PC,.RDFMA
5969 011172 000300 SWAB R0 ; BLOCK NO. IN LOW BYTE NOW
5970 011174 042700 177600 BIC #177600,R0 ; GET RID OF EXCESS BITS
5974 011200 005046 CLR -(SP) ; NO. BUFFER ON STACK
5975 011202 005046 CLR -(SP) ; BUFFER
5976 011204 010046 MOV R0,-(SP) ; BUFFER
5977 011206 010600 MOV SP,R0 ; BUFFER PTR
5978 011210 005037 000000G CLR .LDZFL ; NO LEADING ZEROS
5979 011214 CALL .TYKLN ; OUTPUT VALUE
011214 004737 000000G JSR PC,.TYKLN
5980 011220 062706 000006 ADD #6,SP ; POP OFF BUFFER
5981 011224 CALL .TCRLF ; TYPE CR-LF
011224 004737 000000G JSR PC,.TCRLF
5982 011230 POP R1 ; RESTORE R1
011230 012601 MOV (SP)+,R1
5983 011232 RETURN ; DONE
011232 000207 RTS PC
5984
5985 003127 .PSECT MESSAG
5986
5987 003127 040 101 103 WACMSG: .ASCIZ % AC-BLOCK: %
003132 055 102 114
003135 117 103 113
003140 072 040 000
5988
5989 011234 .PSECT
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 153
.SWPC -- SWEEP AC BLOCK COMMAND
5991 .SBTTL .SWPC -- SWEEP AC BLOCK COMMAND
5992
5993 ;+
5994 ; .SWPC -- SWEEP AC BLOCK COMMAND ROUTINE
5995 ;
5996 ; THIS ROUTINE
5997 ;
5998 ; INPUT ARGUMENTS:
5999 ;
6000 ; NONE
6001 ;
6002 ; OUTPUT ARGUMENTS:
6003 ;
6004 ; NONE
6005 ;
6006 ; ERROR CODES RETURNED:
6007 ;
6008 ; XXX
6009 ;-
6010
6011 011234 .SWPC::
6012 011234 005037 000000G CLR .PASS ; [4.1.1049]CLEAR PASS FLAG
6013 011240 005037 000752' CLR FMERR ; [4.1.1049]CLEAR ERROR COUNT
6014 011244 PUSH .NOERR ; SAVE ERROR,HALT STATUS
011244 013746 000000G MOV .NOERR,-(SP)
6015 011250 012737 000401 000000G MOV #401,.NOERR ; IGNORE KL ERRORS
6016 011256 012737 000001 000000G MOV #1,.SWPIP ; SET SWEEP IN PROGRESS
6017 011264 005001 CLR R1 ; NO DATA BUFFER
6018 011266 CALL .RDFMA ; READ CURRENT BLOCK NO.
011266 004737 000000G JSR PC,.RDFMA
6019 011272 000300 SWAB R0 ; GET BLOCK IN LOW BYTE
6020 011274 042700 177600 BIC #177600,R0 ; CLEAR EXTRA BITS
6021 011300 010037 000764' MOV R0,SAVBLK ; SAVE BLOCK NO.
6022 011304 CALL .RDIPE ; READ PARITY FLAGS
011304 004737 000000G JSR PC,.RDIPE
6023 011310 PUSH R0 ; [4.1.1049]SAVE PARITY FLAG
011310 010046 MOV R0,-(SP)
6024 011312 032700 000010 BIT #10,R0 ; FM ERROR?
6025 011316 001416 BEQ 10$ ; NO -- GO ON
6026 011320 012700 003143' MOV #FMHED,R0 ; YES -- FM ERROR MESSAGE HEADER
6027 011324 CALL .TYMSG ; TYPE IT
011324 004737 000000G JSR PC,.TYMSG
6028 011330 012700 000754' MOV #FMBUF,R0 ; DATA BUFFER
6029 011334 013702 000764' MOV SAVBLK,R2 ; CURRENT BLOCK NO.
6030 011340 CALL .RDFMO ; READ CURRENT FM DATA
011340 004737 000000G JSR PC,.RDFMO
6031 011344 CALL .TYAC1 ; TYPE FM DATA
011344 004737 000000G JSR PC,.TYAC1
6032 011350 CALL .RSSWP ; RESET KL
011350 004737 011672' JSR PC,.RSSWP
6033 011354 10$: POP R0 ; [4.1.1049]RESTORE PARITY FLAG
011354 012600 MOV (SP)+,R0
6034 011356 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4) ; IS THERE AN ARGUMENT?
6035 011364 001011 BNE 15$ ; NO -- SWEEP ALL BLOCKS
6036 011366 CALL .GTELN ; YES -- GET IT
011366 004737 000000G JSR PC,.GTELN
6037 011372 020027 000007 CMP R0,#7 ; IS ARGUMENT IN RANGE?
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 153-1
.SWPC -- SWEEP AC BLOCK COMMAND
6038 011376 101230 BHI SCANOR ; NO -- ERROR
6039 011400 010002 MOV R0,R2 ; YES -- SET ARGUMENT
6040 011402 CALL .SWPAC ; SWEEP BLOCK
011402 004737 011534' JSR PC,.SWPAC
6041 011406 000437 BR 30$ ; DONE
6042 011410 032700 000010 15$: BIT #10,R0 ; [4.1.1049]FM ERROR?
6043 011414 001442 BEQ 40$ ; [4.1.1049]NO -- DONE
6044 011416 012702 000007 17$: MOV #7,R2 ; YES -- START WITH LAST BLOCK
6045 011422 20$: CALL .SWPAC ; SWEEP IT
011422 004737 011534' JSR PC,.SWPAC
6046 011426 005302 DEC R2 ; NEXT AC BLOCK
6047 011430 002374 BGE 20$ ; DONE?
6048 011432 005737 000752' TST FMERR ; [4.1.1049]ANY ERRORS?
6049 011436 001423 BEQ 30$ ; [4.1.1049]NO -- GO ON
6050 011440 005737 000000G TST .PASS ; [4.1.1049]YES -- PASS 2?
6051 011444 001005 BNE 25$ ; [4.1.1049]YES -- ABORT RELOAD
6052 011446 005237 000000G INC .PASS ; [4.1.1049]NO -- SET SECOND PASS
6053 011452 005037 000752' CLR FMERR ; [4.1.1049]CLEAR ERROR COUNT
6054 011456 000757 BR 17$ ; [4.1.1049]RESWEEP
6055 011460 012700 003207' 25$: MOV #FMABO,R0 ; [4.1.1049]ABORT MESSAGE
6056 011464 CALL .TYLIN ; [4.1.1049]TYPE IT
011464 004737 000000G JSR PC,.TYLIN
6057 011470 032737 000000G 000000G BIT #KL.REQ,.KLIWD ; [4.1.1049]KLI REQUESTED
6058 011476 001403 BEQ 30$ ; [4.1.1049]NO -- DONE
6059 011500 052737 000000G 000000G BIS #KL.ABO,.KLIWD ; [4.1.1049]YES -- ABORT RELOAD
6060 011506 013702 000764' 30$: MOV SAVBLK,R2 ; YES -- RESTORE ORIGINAL AC BLOCK
6061 011512 012700 000001 MOV #1,R0 ; SET NO WHAT AC FLAG
6062 011516 CALL .SACB1 ; SET AC BLOCK
011516 004737 011070' JSR PC,.SACB1
6063 011522 005037 000000G 40$: CLR .SWPIP ; CLEAR SWEEP IN PROGRESS
6064 011526 POP .NOERR ; RESTORE ERROR,HALT STATUS
011526 012637 000000G MOV (SP)+,.NOERR
6065 011532 RETURN ; EXIT
011532 000207 RTS PC
6066
6067 000752 .PSECT DATA
6068
6069 000752 000000 FMERR: .WORD 0 ; [4.1.1049]ERROR COUNT
6070 000754 000000 000000 000000 FMBUF: .WORD 0,0,0,0
000762 000000
6071
6072 000764 000000 SAVBLK: .WORD 0 ; ORIGINAL AC BLOCK NO.
6073
6074 003143 .PSECT MESSAG
6075
6076 003143 040 106 115 FMHED: .ASCIZ % FM PARITY ERROR-(BLOCK:ADDR/DATA) %
003146 040 120 101
003151 122 111 124
003154 131 040 105
003157 122 122 117
003162 122 055 050
003165 102 114 117
003170 103 113 072
003173 101 104 104
003176 122 057 104
003201 101 124 101
003204 051 040 000
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 153-2
.SWPC -- SWEEP AC BLOCK COMMAND
6077 003207 040 125 116 FMABO: .ASCIZ % UNRECOVERABLE FM PARITY ERROR - RELOAD CANCELED%
003212 122 105 103
003215 117 126 105
003220 122 101 102
003223 114 105 040
003226 106 115 040
003231 120 101 122
003234 111 124 131
003237 040 105 122
003242 122 117 122
003245 040 055 040
003250 122 105 114
003253 117 101 104
003256 040 103 101
003261 116 103 105
003264 114 105 104
003267 000
6078
6079 011534 .PSECT
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 154
.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
6081 .SBTTL .SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
6082
6083 ;+
6084 ; .SWPAC -- SUBROUTINE TO READ ALL AC'S TO LOCATE FM PARITY ERRORS
6085 ;
6086 ; THIS ROUTINE WILL:
6087 ; 0. TYPE CURRENT LOCKED UP FM ADDR AND DATA
6088 ; 1. DISABLE PARITY ERROR STOPS AND CLEAR CLOCK ERROR STOP
6089 ; 2. PUT KL IN HALT LOOP
6090 ; 3. START KL CLOCK
6091 ; 4. SET AC BLOCK
6092 ; 5. READ AC'S
6093 ; 6. IF FM PARITY ERROR SET TYPE ERROR
6094 ; 7. REPEAT 4-6 FOR EACH BLOCK
6095 ; 8. RESTORE ORIGINAL AC BLOCK
6096 ;
6097 ; INPUT ARGUMENTS:
6098 ;
6099 ; R2=AC BLOCK TO SWEEP
6100 ;
6101 ; OUTPUT ARGUMENTS:
6102 ;
6103 ; NONE
6104 ;
6105 ; ERROR CODES RETURNED:
6106 ;
6107 ; CCC -- CAN'T CLEAR KL10 CLOCK
6108 ; CCR -- CAN'T CLEAR KL10 RUN FLOP
6109 ; CCS -- KL10 CLOCK CAN'T START
6110 ; CES -- CLOCK ERROR STOP
6111 ; CFH -- CAN'T FIND KL10 HALT LOOP
6112 ; CSC -- CAN'T SYNC KL10 CLOCK
6113 ; DMF -- DEPOSIT KL10 MEMORY FAILED
6114 ; DSF -- DTE20 STATUS FAILURE
6115 ; ECT -- EBOX CLOCK TIME OUT
6116 ; ESD -- EBOX STOPPED - DEPOSIT
6117 ; EMF -- EXAMINE KL10 MEMORY FAILED
6118 ; ESE -- EBOX STOPPED - EXAMINE
6119 ; FRF -- FUNCTION READ FAILED
6120 ; FSW -- FM SWEEP ERROR
6121 ; FWF -- FUNCTION WRITE FAILED
6122 ; FXF -- FUNCTION EXECUTE FAILED
6123 ; XTO -- EXECUTE TIMED OUT
6124 ;-
6125
6126 011534 .SWPAC::
6127 011534 012700 000001 MOV #1,R0 ; SET NO WHAT AC FLAG
6128 011540 CALL .SACB1 ; SET AC BLOCK
011540 004737 011070' JSR PC,.SACB1
6129 011544 012737 000020 000776' MOV #20,ACADR ; SET UP FOR 16 AC'S
6130 011552 005337 000776' 10$: DEC ACADR ; DONE ALL AC'S
6131 011556 002441 BLT 20$ ; YES -- EXIT
6132 011560 012701 000772' MOV #EXBLK,R1 ; NO- SET EXAMINE DATA BLOCK
6133 011564 012700 000200 MOV #ED.PHY,R0 ; EXAMINE PHYSICAL MEMORY
6134 011570 CALL .EXKLM ; EXAMINE AC
011570 004737 000000G JSR PC,.EXKLM
6135 011574 103366 BCC 10$ ; NO ERROR, NEXT AC
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 154-1
.SWPAC -- SWEEP ALL AC BLOCKS FOR FM PARITY ERROR
6136 011576 CALL .DTDW1 ; GET DTE STATUS WORD 1
011576 004737 000000G JSR PC,.DTDW1
6137 011602 032700 004000 BIT #D1.CES,R0 ; CLOCK ERROR STOP?
6138 011606 001426 BEQ SWPFSW ; NO -- OTHER ERROR
6139 011610 CALL .RDFMP ; YES -- CHECK FOR FM PARITY ERROR
011610 004737 000000G JSR PC,.RDFMP
6140 011614 005700 TST R0 ; PARITY ERROR? 0=ERROR, 1=OK
6141 011616 001022 BNE SWPFSW ; NO -- ERROR
6142 011620 005237 000752' INC FMERR ; [4.1.1049]YES -- COUNT IT
6143 011624 012700 000754' MOV #FMBUF,R0 ; FM REGISTER BUFFER
6144 011630 CALL .RDFMO ; READ FM INFO
011630 004737 000000G JSR PC,.RDFMO
6145 011634 CALL .TYACE ; TYPE AC INFO
011634 004737 000000G JSR PC,.TYACE
6146 011640 CALL .RSSWP ; RESET SWEEP PARITY STOPS
011640 004737 011672' JSR PC,.RSSWP
6147 011644 012701 000766' MOV #GOOBLK,R1 ; [4.1.1049]GOOD DATA BLOCK
6148 011650 012700 000200 MOV #ED.PHY,R0 ; [4.1.1049]PHYSICAL SPACE
6149 011654 CALL .DPKLM ; [4.1.1049]WRITE BACK GOOD DATA
011654 004737 000000G JSR PC,.DPKLM
6150 011660 000734 BR 10$ ; NEXT AC
6151 011662 20$: RETURN ; EXIT
011662 000207 RTS PC
6152 ;
6153 011664 SWPFSW:
6154 011664 ERROR$ FSW ; ERROR -- FM SWEEP ERROR
011664 012746 024217 MOV #^RFSW,-(SP)
011670 104400 TRAP TC.ERR
6155
6156 000766 .PSECT DATA
6157
6158 000766 000776' GOOBLK: .WORD ACADR
6159 000770 000756' .WORD FMBUF+2
6160 000772 000776' EXBLK: .WORD ACADR ; AC ADDR PTR
6161 000774 001002' .WORD EXDAT ; EXAMINE DATA BUFFER PTR
6162 000776 000000 ACADR:: .WORD 0 ; AC ADDR BITS 20-35
6163 001000 000000 .WORD 0 ; AC ADDR BITS 14-19
6164 001002 000000 EXDAT:: .WORD 0 ; AC DATA BITS 20-35
6165 001004 000000 .WORD 0 ; AC DATA BITS 4-19
6166 001006 000000 .WORD 0 ; AC DATA BITS 0-3
6167
6168 011672 .PSECT
SCACB -- SET AC-BLOCK COMMAND M MACRO M1113 10-NOV-81 17:48 PAGE 155
.RSSWP -- RESET PARITY STOPS FOR FM SWEEP
6170 .SBTTL .RSSWP -- RESET PARITY STOPS FOR FM SWEEP
6171
6172 ;+
6173 ; .RSSWP -- SUBROUTINE TO CLEAR CES, SET FM STOP, AND RESET AC BLOCK
6174 ;
6175 ; THIS ROUTINE WILL:
6176 ; 1. RESET KL
6177 ; 2. START CLOCK
6178 ; 3. RESET AC BLOCK
6179 ;
6180 ; INPUT ARGUMENTS:
6181 ;
6182 ; R2- AC BLOCK NO. TO SET
6183 ;
6184 ; OUTPUT ARGUMENTS:
6185 ;
6186 ; NONE
6187 ;
6188 ; ERROR CODES RETURNED:
6189 ;
6190 ; CCC -- CAN'T CLEAR KL10 CLOCK
6191 ; CCR -- CAN'T CLEAR KL10 RUN FLOP
6192 ; CCS -- KL10 CLOCK CAN'T START
6193 ; CES -- CLOCK ERROR STOP
6194 ; CFH -- CAN'T FIND KL10 HALT LOOP
6195 ; CSC -- CAN'T SYNC KL10 CLOCK
6196 ; DMF -- DEPOSIT KL10 MEMORY FAILED
6197 ; DSF -- DTE20 STATUS FAILURE
6198 ; ECT -- EBOX CLOCK TIME OUT
6199 ; ESD -- EBOX STOPPED - DEPOSIT
6200 ; FRF -- FUNCTION READ FAILED
6201 ; FWF -- FUNCTION WRITE FAILED
6202 ; FXF -- FUNCTION EXECUTE FAILED
6203 ; MAE -- MODE ARGUMENT ERROR
6204 ; XTO -- EXECUTE TIMED OUT
6205 ;-
6206 011672 .RSSWP::
6207 011672 SETF$S #E.FHTO ; SET HALT TIME-OUT FLAG
011672 012746 000001 MOV #E.FHTO,-(SP)
011676 012746 MOV (PC)+,-(SP)
011700 041 002 .BYTE 33.,2
011702 104375 EMT 375
6208 011704 CALL .RESTP ; RESET KL AND PARITY STOPS
011704 004737 000000G JSR PC,.RESTP
6209 011710 CALL .STCLK ; START CLOCK
011710 004737 000000G JSR PC,.STCLK
6210 011714 012700 000001 MOV #1,R0 ; SET NO WHAT AC FLAG
6211 011720 CALL .SACB1 ; SET AC BLOCK
011720 004737 011070' JSR PC,.SACB1
6212 011724 10$: RETURN
011724 000207 RTS PC
6213 ;
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 157
.RSSWP -- RESET PARITY STOPS FOR FM SWEEP
6216 .TITLE SCOUTC -- SET/CLEAR OUTPUT COMMAND MODULE
6217
6218 .IDENT "006120"
6219
6220 ; COPYRIGHT (C) 1979 BY
6221 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6222 ;
6223 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6224 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6225 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6226 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6227 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6228 ;
6229 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6230 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6231 ; CORPORATION.
6232 ;
6233 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6234 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6235 ;
6236 ; MODULE: SET / CLEAR OUTPUT COMMAND
6237 ;
6238 ; VERSION: 06-00
6239 ;
6240 ; AUTHOR: K.LEFEBVRE
6241 ;
6242 ; DATE: 6-SEP-79
6243 ;
6244 ; THIS MODULE CONTAINS:
6245 ;
6246 ; 1) SET / CLEAR OUTPUT COMMAND CODE
6247 ;
6248 ; THESE ROUTINES WERE ADDED FOR TCO 5.1000
6249
6250 .MCALL DIR$,ALUN$,QIOW$,GTIM$S,QIOW$S
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 158
.SCOUT -- SET/CLEAR OUTPUT COMMAND
6252 .SBTTL .SCOUT -- SET/CLEAR OUTPUT COMMAND
6253
6254 ;+
6255 ; .SCOUT -- SET/CLEAR OUTPUT COMMAND ROUTINE
6256 ;
6257 ; THIS ROUTINE WILL EXECUTE THE SET/CLEAR OUTPUT COMMAND. IF
6258 ; THE COMMAND "SET OUTPUT" IS GIVEN WITHOUT ANY OBJECT THEN THE
6259 ; TTY IS TURNED ON. IF THE COMMAND "CLEAR OUTPUT" IS GIVEN
6260 ; WITHOUT ANY OBJECT THEN THE LPT AND LOG ARE TURNED OFF AND THE
6261 ; TTY IS TURNED ON. WHENEVER A CLEAR OUTPUT IS GIVEN WITH OR
6262 ; WITHOUT AN OBJECT A CHECK IS MADE TO MAKE SURE SOME DEVICE IS
6263 ; OUTPUTTING. IF NO DEVICES ARE THEN THE TTY IS TURNED ON.
6264 ;
6265 ; INPUT ARGUMENTS:
6266 ;
6267 ; NONE
6268 ;
6269 ; OUTPUT ARGUMENTS:
6270 ;
6271 ; NONE
6272 ;
6273 ; ERROR CODES RETURNED:
6274 ;
6275 ; CAL -- CAN'T ASSIGN LUN
6276 ; DNF -- DIRECTORY FILE NOT FOUND
6277 ; FCF -- FILE CLOSE FAILURE
6278 ; FEF -- FILE EXTEND FAILURE
6279 ; FEN -- FILE ENTER FAILURE
6280 ; FLF -- FILE LOOKUP FAILURE
6281 ; FOF -- FILE OPEN FAILURE
6282 ; FWT -- FILE WRITE FAILURE
6283 ;-
6284
6285 011726 .SCOUT::
6286 011726 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4) ; IS THERE AN OBJECT?
6287 011734 001414 BEQ 20$ ; NO -- GET OBJECT
6288 011736 005737 000000G TST .NOTSW ; YES -- IS THIS A CLEAR?
6289 011742 001406 BEQ 10$ ; NO -- SET CONSOLE OUTPUT
6290 011744 CALL .SCOTL ; YES -- CLEAR LOG OUTPUT
011744 004737 012014' JSR PC,.SCOTL
6291 011750 CALL .SCOTP ; CLEAR PRINTER OUTPUT
011750 004737 012374' JSR PC,.SCOTP
6292 011754 5$: CALLR .WHOUT ; OUTPUT STATUS
011754 000137 012530' JMP .WHOUT
6293 011760 10$: CALL .SCOTY ; SET CONSOLE OUTPUT
011760 004737 012462' JSR PC,.SCOTY
6294 011764 000773 BR 5$ ; OUTPUT STATUS
6295 011766 20$: CALL .CKOBJ ; MUST HAVE AN OBJECT
011766 004737 000000G JSR PC,.CKOBJ
6296 011772 012700 000000G MOV #.SCOTT,R0 ; TABLE POINTER TO R0
6297 011776 CALL .TSCAN ; SCAN THE TABLE
011776 004737 000000G JSR PC,.TSCAN
6298 012002 CALL .CKEOC ; MUST HAVE E-O-C
012002 004737 000000G JSR PC,.CKEOC
6299 012006 CALL @2(R0) ; EXECUTE THE COMMAND
012006 004770 000002 JSR PC,@2(R0)
6300 012012 000760 BR 5$ ; OUTPUT STATUS
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 158-1
.SCOUT -- SET/CLEAR OUTPUT COMMAND
6301 ;
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 159
.SCOTL -- SET/CLEAR OUTPUT LOG COMMAND
6303 .SBTTL .SCOTL -- SET/CLEAR OUTPUT LOG COMMAND
6304
6305 ;+
6306 ; .SCOTL -- SET/CLEAR OUTPUT LOG COMMAND ROUTINE
6307 ;
6308 ; THIS ROUTINE WILL OPEN OR CLOSE A LOG FILE AND DIRECT OUTPUT
6309 ; TO THIS FILE.
6310 ;
6311 ; INPUT ARGUMENTS:
6312 ;
6313 ; NONE
6314 ;
6315 ; OUTPUT ARGUMENTS:
6316 ;
6317 ; NONE
6318 ;
6319 ; ERROR CODES RETURNED:
6320 ;
6321 ; CAL -- CAN'T ASSIGN LUN
6322 ; DNF -- DIRECTORY FILE NOT FOUND
6323 ; FCF -- FILE CLOSE FAILURE
6324 ; FEF -- FILE EXTEND FAILURE
6325 ; FEN -- FILE ENTER FAILURE
6326 ; FLF -- FILE LOOKUP FAILURE
6327 ; FOF -- FILE OPEN FAILURE
6328 ; FWT -- FILE WRITE FAILURE
6329 ;-
6330
6331 012014 .SCOTL::
6332 012014 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
6333 012020 001433 BEQ 25$ ; NO -- TURN LOGGING ON
6334 012022 105737 000000G TSTB .OUTLG ; LOGGING ALREADY OFF?
6335 012026 001530 BEQ 30$ ; YES -- EXIT
6336 012030 012700 003335' MOV #LGFMSG,R0 ; NO -- FINISH LOG MESSAGE
6337 012034 CALL .TYMSG ; TYPE IT
012034 004737 000000G JSR PC,.TYMSG
6338 012040 CALL TYLGMS ; LOG TIME AND DATE
012040 004737 012312' JSR PC,TYLGMS
6339 012044 CALL .TCRLF ; OUTPUT CR-LF
012044 004737 000000G JSR PC,.TCRLF
6340 012050 CALL .TCRLF ; OUTPUT CR-LF
012050 004737 000000G JSR PC,.TCRLF
6341 012054 CALL .WRITZ ; OUTPUT FINAL BLOCK
012054 004737 000000G JSR PC,.WRITZ
6342 012060 012700 000000G MOV #.OTFN,R0 ; FILE NAME
6343 012064 012701 000000G MOV #.OTATT,R1 ; ATTRIBUTE BLOCK
6344 012070 012702 000004 MOV #LOGLUN,R2 ; LUN
6345 012074 CALL .CLOSE ; CLOSE FILE
012074 004737 000000G JSR PC,.CLOSE
6346 012100 105037 000000G CLRB .OUTLG ; YES -- CLEAR LOG FLAG
6347 012104 CALLR .SCOTC ; MAKE SURE SOME OUTPUT DEVICE IS ON
012104 000137 012506' JMP .SCOTC
6348 ;
6349 012110 105737 000000G 25$: TSTB .OUTLG ; LOGGING ALREADY ON?
6350 012114 001075 BNE 30$ ; YES -- EXIT
6351 012116 012700 000000G MOV #.OTFN,R0 ; NO -- FILE NAME
6352 012122 012701 000000G MOV #.OTFNB,R1 ; FILE NAME BLOCK
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 159-1
.SCOTL -- SET/CLEAR OUTPUT LOG COMMAND
6353 012126 012702 000004 MOV #LOGLUN,R2 ; LUN
6354 012132 012704 000000G MOV #IO.ACE,R4 ; OPEN ACCESS RIGHTS
6355 012136 CALL .LOKUP ; LOOK UP FILE
012136 004737 000000G JSR PC,.LOKUP
6356 012142 103013 BCC 27$ ; FILE FOUND IF CC-C IS CLEAR
6357 012144 CALL .ENTER ; CREATE AND ENTER THE FILE
012144 004737 000000G JSR PC,.ENTER
6358 012150 CALL .OPEN ; OPEN THE NEW FILE
012150 004737 000000G JSR PC,.OPEN
6359 012154 012737 001002 000000G MOV #1002,.OTATT ; SET FILE TYPE/ATTRIBUTES
6360 012162 012737 000001 000006G MOV #1,.OTATT+6 ; SET HIGHEST ALLOCATED BLOCK
6361 012170 000402 BR 29$ ; GO ON
6362 012172 27$: CALL .OPEN ; OPEN FILE
012172 004737 000000G JSR PC,.OPEN
6363 012176 012737 000000G 000000G 29$: MOV #.BUFSZ,.OTBBC ; EMPTY BUFFER
6364 012204 012737 000000G 000000G MOV #.OTBUF,.OTPOS ; BUFFER ADDR
6365 012212 013737 000010G 000000G MOV .OTATT+10,.OTVBN ; HIGHEST USED BLOCK
6366 012220 013737 000012G 000002G MOV .OTATT+12,.OTVBN+2 ; HIGHEST USED BLOCK
6367 012226 012737 000000G 000000G MOV #.RECRD,.RECPT ; RESET RECORD POINTER
6368 012234 005037 000000G CLR .RECNT ; CLEAR RECORD COUNT
6369 012240 105237 000000G INCB .OUTLG ; SET LOG FLAG
6370 012244 012700 003270' MOV #LGSMSG,R0 ; START UP LOG MESSAGE
6371 012250 CALL .TYMSG ; TYPE IT
012250 004737 000000G JSR PC,.TYMSG
6372 012254 CALL TYLGMS ; LOG TIME AND DATE
012254 004737 012312' JSR PC,TYLGMS
6373 012260 012700 003323' MOV #LGVMSG,R0 ; VERSION MESSAGE
6374 012264 CALL .TYMSG ; TYPE IT
012264 004737 000000G JSR PC,.TYMSG
6375 012270 012700 000000G MOV #.VERNO,R0 ; VERSION
6376 012274 CALL .TYMSG ;TYPE IT
012274 004737 000000G JSR PC,.TYMSG
6377 012300 CALL .TCRLF ; OUTPUT CR-LF
012300 004737 000000G JSR PC,.TCRLF
6378 012304 CALL .TCRLF ; OUTPUT CR-LF
012304 004737 000000G JSR PC,.TCRLF
6379 012310 30$: RETURN ; RETURN
012310 000207 RTS PC
6380 ;
6381 012312 TYLGMS: PUSH R1 ; SAVE R1,R0
012312 010146 MOV R1,-(SP)
6382 012314 012701 001010' MOV #LOGBUF,R1 ; DATE BUFFER
6383 012320 GTIM$S R1 ; GET DATE
012320 010146 MOV R1,-(SP)
012322 012746 MOV (PC)+,-(SP)
012324 073 002 .BYTE 59.,2
012326 104375 EMT 375
6384 012330 005046 CLR -(SP) ; CLEAR SPACE ON STACK
6385 012332 005046 CLR -(SP) ; CLEAR SPACE ON STACK
6386 012334 010600 MOV SP,R0 ; POINT R0 TO BUFFER
6387 012336 112120 MOVB (R1)+,(R0)+ ; SET YEAR
6388 012340 105721 TSTB (R1)+ ; SKIP BYTE
6389 012342 112120 MOVB (R1)+,(R0)+ ; SET MONTH
6390 012344 105721 TSTB (R1)+ ; SKIP BYTE
6391 012346 112120 MOVB (R1)+,(R0)+ ; SET DAY
6392 012350 010600 MOV SP,R0 ; RESET PTR
6393 012352 CALL .TYDAT ; TYPE DATE
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 159-2
.SCOTL -- SET/CLEAR OUTPUT LOG COMMAND
012352 004737 006612' JSR PC,.TYDAT
6394 012356 012700 000000G MOV #.SSM,R0 ; SET SECONDS
6395 012362 CALL .TYTIM ; TYPE TIME
012362 004737 006726' JSR PC,.TYTIM
6396 012366 022626 CMP (SP)+,(SP)+ ; CLEAR STACK
6397 012370 POP R1 ; RESTORE R1
012370 012601 MOV (SP)+,R1
6398 012372 RETURN ; EXIT
012372 000207 RTS PC
6399 ;
6400
6401 001010 .PSECT DATA
6402
6403 001010 LOGBUF: .BLKW 10
6404
6405 003270 .PSECT MESSAG
6406
6407 003270 LGSMSG:
6408 003270 012 052 052 .ASCIZ <12>%******* LOGGING STARTED %
003273 052 052 052
003276 052 052 040
003301 114 117 107
003304 107 111 116
003307 107 040 123
003312 124 101 122
003315 124 105 104
003320 040 040 000
6409 003323 LGVMSG:
6410 003323 054 122 123 .ASCIZ %,RSX-20F %
003326 130 055 062
003331 060 106 040
003334 000
6411 003335 LGFMSG:
6412 003335 012 052 052 .ASCIZ <12>%******* LOGGING FINISHED %
003340 052 052 052
003343 052 052 040
003346 114 117 107
003351 107 111 116
003354 107 040 106
003357 111 116 111
003362 123 110 105
003365 104 040 040
003370 000
6413
6414 012374 .PSECT
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 160
.SCOTP -- SET/CLEAR OUTPUT LPT COMMAND
6416 .SBTTL .SCOTP -- SET/CLEAR OUTPUT LPT COMMAND
6417
6418 ;+
6419 ; .SCOTP -- SET/CLEAR OUTPUT LPT COMMAND ROUTINE
6420 ;
6421 ; THIS ROUTINE WILL ATTACH OR DETATCH THE LINE PRINTER AND
6422 ; SET A FLAG TO DIRECT OUTPUT TO IT.
6423 ;
6424 ; INPUT ARGUMENTS:
6425 ;
6426 ; NONE
6427 ;
6428 ; OUTPUT ARGUMENTS:
6429 ;
6430 ; NONE
6431 ;
6432 ; ERROR CODES RETURNED:
6433 ;
6434 ; CAP -- CAN'T ATTACH LINEPRINTER
6435 ;-
6436
6437 012374 .SCOTP::
6438 012374 005737 000000G TST .NOTSW ; IS THIS A CLEAR PRINTER?
6439 012400 001413 BEQ 30$ ; NO -- TURN ON PRINTER
6440 012402 105737 000000G TSTB .OUTLP ; YES -- IS LINE PRINTER ON?
6441 012406 001421 BEQ 40$ ; NO -- DON'T TURN OFF
6442 012410 DIR$ #.DTLST ; YES -- DETACH THE PRINTER
012410 012746 000100' MOV #.DTLST,-(SP)
012414 104375 EMT 375
6443 012416 103416 BCS SCOCAP ; ERROR IF CC-C IS SET
6444 012420 105037 000000G CLRB .OUTLP ; CLEAR PRINT FLAG
6445 012424 CALLR .SCOTC ; MAKE SURE SOME OUTPUT DEVICE IS ON
012424 000137 012506' JMP .SCOTC
6446 ;
6447 012430 105737 000000G 30$: TSTB .OUTLP ; IS LINE PRINTER ALREADY ON?
6448 012434 001006 BNE 40$ ; YES -- DON'T TURN ON
6449 012436 DIR$ #.ATLST ; NO -- ATTACH THE PRINTER
012436 012746 000064' MOV #.ATLST,-(SP)
012442 104375 EMT 375
6450 012444 103403 BCS SCOCAP ; ERROR IF CC-C IS SET
6451 012446 105237 000000G INCB .OUTLP ; SET THE PRINT FLAG
6452 012452 40$: RETURN ; RETURN
012452 000207 RTS PC
6453 ;
6454 012454 SCOCAP:
6455 012454 ERROR$ CAP ; ERROR -- CAN'T ATTACH LINEPRINTER
012454 012746 011370 MOV #^RCAP,-(SP)
012460 104400 TRAP TC.ERR
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 161
.SCOTY -- SET/CLEAR OUTPUT TTY COMMAND
6457 .SBTTL .SCOTY -- SET/CLEAR OUTPUT TTY COMMAND
6458
6459 ;+
6460 ; .SCOTY -- SET/CLEAR OUTPUT TTY COMMAND ROUTINE
6461 ;
6462 ; THIS ROUTINE WILL SET OR CLEAR A FLAG THAT DIRECTS OUTPUT TO THE
6463 ; TTY.
6464 ;
6465 ; INPUT ARGUMENTS:
6466 ;
6467 ; NONE
6468 ;
6469 ; OUTPUT ARGUMENTS:
6470 ;
6471 ; NONE
6472 ;
6473 ; ERROR CODES RETURNED:
6474 ;
6475 ; NONE
6476 ;-
6477
6478 012462 .SCOTY::
6479 012462 005737 000000G TST .NOTSW ; IS THIS A CLEAR
6480 012466 001404 BEQ 50$ ; NO -- SET TYPE OUTPUT
6481 012470 105037 000000G CLRB .OUTTY ; CLEAR TYPE FLAG
6482 012474 CALLR .SCOTC ; MAKE SURE SOME OUTPUT DEVICE IS ON
012474 000137 012506' JMP .SCOTC
6483 012500 105237 000000G 50$: INCB .OUTTY ; SET TYPE FLAG
6484 012504 60$: RETURN ; EXIT
012504 000207 RTS PC
6485 ;
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 162
.SCOTC -- SET/CLEAR OUTPUT CHECK ROUTINE
6487 .SBTTL .SCOTC -- SET/CLEAR OUTPUT CHECK ROUTINE
6488
6489 ;+
6490 ; .SCOTL -- SET/CLEAR OUTPUT CHECK ROUTINE
6491 ;
6492 ; THIS ROUTINE WILL CHECK TO SEE THAT OUTPUT IS DIRECTED TO SOME
6493 ; DEVICE. IF THERE IS NO OUTPUT DEVICE THEN THE TTY IS TURNED ON.
6494 ;
6495 ; INPUT ARGUMENTS:
6496 ;
6497 ; NONE
6498 ;
6499 ; OUTPUT ARGUMENTS:
6500 ;
6501 ; NONE
6502 ;
6503 ; ERROR CODES RETURNED:
6504 ;
6505 ; NONE
6506 ;-
6507
6508 012506 .SCOTC::
6509 012506 105737 000000G TSTB .OUTLG ; LOG ON?
6510 012512 001005 BNE 70$ ; YES -- EXIT
6511 012514 105737 000000G TSTB .OUTLP ; NO -- PRINT ON?
6512 012520 001002 BNE 70$ ; YES -- EXIT
6513 012522 105237 000000G INCB .OUTTY ; NO -- TURN ON TYPE
6514 012526 70$: RETURN ; EXIT
012526 000207 RTS PC
6515 ;
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 163
.WHOUT -- WHAT OUTPUT COMMAND
6517 .SBTTL .WHOUT -- WHAT OUTPUT COMMAND
6518
6519 ;+
6520 ; .WHOUT -- WHAT OUTPUT COMMAND ROUTINE
6521 ;
6522 ; THIS ROUTINE WILL OUPUT THE STATUS OF THE CURRENT OUTPUT DEVICES.
6523 ;
6524 ; INPUT ARGUMENTS:
6525 ;
6526 ; NONE
6527 ;
6528 ; OUTPUT ARGUMENTS:
6529 ;
6530 ; NONE
6531 ;
6532 ; ERROR CODES RETURNED:
6533 ;
6534 ; NONE
6535 ;-
6536
6537 012530 .WHOUT::
6538 012530 012700 003371' MOV #WHOTMS,R0 ; MESSAGE POINTER TO R0
6539 012534 CALL .TYMSG ; PRINT IT
012534 004737 000000G JSR PC,.TYMSG
6540 012540 005046 CLR -(SP) ; CLEAR COMMA FLAG
6541 012542 105737 000000G TSTB .OUTTY ; TTY ACTIVE?
6542 012546 001405 BEQ 10$ ; NO -- NEXT DEVICE
6543 012550 012700 000000G MOV #TTYMSG,R0 ; YES -- TTY MESSAGE POINTER TO R0
6544 012554 CALL .TYMSG ; PRINT IT
012554 004737 000000G JSR PC,.TYMSG
6545 012560 005216 INC (SP) ; SET COMMA FLAG
6546 012562 105737 000000G 10$: TSTB .OUTLP ; LPT ACTIVE?
6547 012566 001411 BEQ 20$ ; NO -- NEXT DEVICE
6548 012570 005716 TST (SP) ; YES -- TYPE COMMA?
6549 012572 001402 BEQ 15$ ; NO -- TYPE DEVICE
6550 012574 CALL .TYCOM ; YES -- TYPE COMMA
012574 004737 000000G JSR PC,.TYCOM
6551 012600 012700 000000G 15$: MOV #LPTMSG,R0 ; LPT MESSAGE POINTER TO R0
6552 012604 CALL .TYMSG ; PRINT IT
012604 004737 000000G JSR PC,.TYMSG
6553 012610 005216 INC (SP) ; SET COMMA FLAG
6554 012612 105737 000000G 20$: TSTB .OUTLG ; LOG ACTIVE?
6555 012616 001410 BEQ 30$ ; NO -- EXIT
6556 012620 005716 TST (SP) ; YES -- TYPE COMMA?
6557 012622 001402 BEQ 25$ ; NO -- TYPE DEVICE
6558 012624 CALL .TYCOM ; YES -- TYPE COMMA
012624 004737 000000G JSR PC,.TYCOM
6559 012630 012700 000000G 25$: MOV #LOGMSG,R0 ; LOG MESSAGE POINTER TO R0
6560 012634 CALL .TYMSG ; PRINT IT
012634 004737 000000G JSR PC,.TYMSG
6561 012640 005726 30$: TST (SP)+ ; REMOVE COMMA FLAG
6562 012642 CALLR .TCRLF ; TYPE MESSAGE AND EXIT
012642 000137 000000G JMP .TCRLF
6563 ;
6564
6565 003371 .PSECT MESSAG
6566
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 163-1
.WHOUT -- WHAT OUTPUT COMMAND
6567 003371 WHOTMS:
6568 003371 040 117 125 .ASCIZ % OUTPUT DEVICES: %
003374 124 120 125
003377 124 040 104
003402 105 126 111
003405 103 105 123
003410 072 040 000
6569
6570 012646 .PSECT
SCOUTC -- SET/CLEAR OUTPUT COMM MACRO M1113 10-NOV-81 17:48 PAGE 164
.WHOUT -- WHAT OUTPUT COMMAND
6572 ; THESE DPBS ARE USED TO ASSIGN THE LINE PRINTER TO THE PARSER TASK BY
6573 ; LOGICAL UNIT NUMBER (LUN), AND ARE OF THE FORM:
6574 ;
6575 ; !===============================================!
6576 ; 00 ! DPB SIZE ! DIC !
6577 ; !-----------------------------------------------!
6578 ; 02 ! LOGICAL UNIT NUMBER !
6579 ; !-----------------------------------------------!
6580 ; 04 ! ASCII DEVICE NAME !
6581 ; !-----------------------------------------------!
6582 ; 06 ! DEVICE UNIT NUMBER !
6583 ; !===============================================!
6584
6585 000064 .PSECT DPBS
6586
6587 000064 .ATLST: ; ATTACH LPT DIRECTIVE
6588 000064 QIOW$ IO.ATT,LSTLUN,E.FLOD,0,0,0
000064 003 006 .BYTE 3,$$$ARG
000066 000000G .WORD IO.ATT
000070 000003 .WORD LSTLUN
000072 005 000 .BYTE E.FLOD,0
000074 000000 .WORD 0
000076 000000 .WORD 0
6589
6590 000100 .DTLST: ; DETATCH LPT DIRECTIVE
6591 000100 QIOW$ IO.DET,LSTLUN,E.FLOD,0,0,0
000100 003 006 .BYTE 3,$$$ARG
000102 000000G .WORD IO.DET
000104 000003 .WORD LSTLUN
000106 005 000 .BYTE E.FLOD,0
000110 000000 .WORD 0
000112 000000 .WORD 0
6592
6593 012646 .PSECT
SETCM -- SET / CLEAR COMMAND DI MACRO M1113 10-NOV-81 17:48 PAGE 166
.WHOUT -- WHAT OUTPUT COMMAND
6596 .TITLE SETCM -- SET / CLEAR COMMAND DISPATCH MODULE 7603.30
6597
6598 .IDENT "005000"
6599 ;
6600 ; COPYRIGHT (C) 1975, 1979 BY
6601 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6602 ;
6603 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6604 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6605 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6606 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6607 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6608 ;
6609 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6610 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6611 ; CORPORATION.
6612 ;
6613 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6614 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6615 ;
6616 ; MODULE: SET / CLEAR COMMAND DISPATCH
6617 ;
6618 ; VERSION: 05-00
6619 ;
6620 ; AUTHOR: R. BELANGER
6621 ;
6622 ; DATE: 7603.30
6623 ;
6624 ; THIS MODULE CONTAINS:
6625 ;
6626 ; 1) SET / CLEAR COMMAND DISPATCH CODE
SETCM -- SET / CLEAR COMMAND DI MACRO M1113 10-NOV-81 17:48 PAGE 167
.SETCM -- THE "SET" AND "CLEAR" COMMAND DISPATCHES 7602.19
6628 .SBTTL .SETCM -- THE "SET" AND "CLEAR" COMMAND DISPATCHES 7602.19
6629
6630 ;+
6631 ; .CLRCM -- THE "CLEAR" COMMAND
6632 ; .SETCM -- THE "SET" COMMAND
6633 ;
6634 ; THESE ROUTINES ARE THE TOP LEVEL FOR THE SET AND CLEAR COMMANDS.
6635 ; ARGUMENTS ARE CHECKED AND A DISPATCH IS MADE FOR THE OBJECT
6636 ; SPECIFIED IN THE COMMAND LINE
6637 ;
6638 ; INPUT ARGUMENTS:
6639 ;
6640 ; NONE.
6641 ;
6642 ; OUTPUT ARGUMENTS:
6643 ;
6644 ; NONE.
6645 ;
6646 ; ERROR CODES RETURNED:
6647 ;
6648 ; ILC -- ILLEGAL COMMAND.
6649 ;-
6650
6651 .ENABL LSB
6652
6653 012646 .CLRCM::
6654 012646 CALL .CKOBJ ; SEE IF OBJECT FOLLOWS
012646 004737 000000G JSR PC,.CKOBJ
6655 012652 005737 000000G TST .NOTSW ; LOOK AT THE "NOT" SWITCH
6656 012656 001007 BNE 10$ ; ALREADY SAYS CLEAR -- GO ON
6657 012660 005137 000000G COM .NOTSW ; INVERT THE "NOT" SWITCH
6658 012664 000404 BR 10$ ; AND TREAT AS A "SET" COMMAND
6659 ;
6660 012666 .SETCM::
6661 012666 CALL .CKOBJ ; LOOK FOR AN OBJECT
012666 004737 000000G JSR PC,.CKOBJ
6662 012672 005037 000000G CLR .NOTSW ; CLEAR THE "NOT" SWITCH
6663 012676 .SETC0:: ; "SET NOT" ENTRY POINT
6664 012676 10$:
6665 012676 012700 000000G MOV #.SETTB,R0 ; TABLE POINTER TO R0
6666 012702 CALL .TSCAN ; SCAN IT
012702 004737 000000G JSR PC,.TSCAN
6667 012706 011001 MOV (R0),R1 ; LEGAL BITS TO R1
6668 012710 005101 COM R1 ; INVERT THEM
6669 012712 040137 000000G BIC R1,.LGLWD ; SET UP NEW LEGAL WORD
6670 012716 CALLR @2(R0) ; DO WHAT IT SAYS TO
012716 000170 000002 JMP @2(R0)
6671 ;
6672
6673 .DSABL LSB
SETCM -- SET / CLEAR COMMAND DI MACRO M1113 10-NOV-81 17:48 PAGE 168
.WHATC -- THE "WHAT" COMMAND DISPATCH 7607.14
6675 .SBTTL .WHATC -- THE "WHAT" COMMAND DISPATCH 7607.14
6676
6677 ;+
6678 ; .WHATC -- THE "WHAT" COMMAND DISPATCH
6679 ;
6680 ; THIS ROUTINE IS THE TOPMOST LEVEL OF THE "WHAT COMMAND WHICH
6681 ; PERFORMS THE DISPATCH FOR THE SPECIFIED OBJECT.
6682 ;
6683 ; INPUT ARGUMENTS:
6684 ;
6685 ; NONE.
6686 ;
6687 ; OUTPUT ARGUMENTS:
6688 ;
6689 ; NONE.
6690 ;
6691 ; ERROR CODES RETURNED:
6692 ;
6693 ; NONE.
6694 ;-
6695
6696 012722 .WHATC::
6697 012722 012700 000000G MOV #.WHATB,R0 ; TABLE POINTER TO R0
6698 012726 CALL .CKOBJ ; MUST HAVE AN OBJECT
012726 004737 000000G JSR PC,.CKOBJ
6699 012732 CALL .TSCAN ; SCAN IT
012732 004737 000000G JSR PC,.TSCAN
6700 012736 CALL .CKEOC ; MUST HAVE E-O-C
012736 004737 000000G JSR PC,.CKEOC
6701 012742 CALLR @2(R0) ; DO WHAT IT SAYS
012742 000170 000002 JMP @2(R0)
6702 ;
SETCM -- SET / CLEAR COMMAND DI MACRO M1113 10-NOV-81 17:48 PAGE 169
.SCNOT -- THE "SET / CLEAR NOT" COMMAND 7602.19
6704 .SBTTL .SCNOT -- THE "SET / CLEAR NOT" COMMAND 7602.19
6705
6706 012746 .SCNOT:: ; SET/CLEAR "NO"
6707 012746 CALL .CKOBJ ; MUST HAVE AN OBJECT
012746 004737 000000G JSR PC,.CKOBJ
6708 012752 005137 000000G COM .NOTSW ; INVERT THE "NOT" SWITCH
6709 012756 000747 BR .SETC0 ; AND GET NEXT OBJECT
6710 ;
SHUTC -- SHUTDOWN COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 170
.SCNOT -- THE "SET / CLEAR NOT" COMMAND 7602.19
6712 .TITLE SHUTC -- SHUTDOWN COMMAND MODULE 7707.12
6713
6714 .IDENT "005000"
6715 ;
6716 ; COPYRIGHT (C) 1975, 1979 BY
6717 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6718 ;
6719 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6720 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6721 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6722 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6723 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6724 ;
6725 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6726 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6727 ; CORPORATION.
6728 ;
6729 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6730 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6731 ;
6732 ; MODULE: SHUTDOWN COMMAND
6733 ;
6734 ; VERSION: 03-06
6735 ;
6736 ; AUTHOR: R. BELANGER
6737 ;
6738 ; DATE: 7707.12
6739 ;
6740 ; THIS MODULE CONTAINS:
6741 ;
6742 ; 1) SHUTDOWN COMMAND CODE
SHUTC -- SHUTDOWN COMMAND MODUL MACRO M1113 10-NOV-81 17:48 PAGE 171
.SHUTC -- THE "SHUTDOWN" COMMAND 7707.12
6744 .SBTTL .SHUTC -- THE "SHUTDOWN" COMMAND 7707.12
6745
6746 ;+
6747 ; .SHUTC -- THE SHUTDOWN COMMAND
6748 ;
6749 ; THIS ROUTINE WILL DEPOSIT A -1 INTO KL LOCATION 30 (EXEC VIRTUAL)
6750 ; TO SHUTDOWN TIMESHARING.
6751 ;
6752 ; INPUT ARGUMENTS:
6753 ;
6754 ; NONE.
6755 ;
6756 ; OUTPUT ARGUMENTS:
6757 ;
6758 ; NONE.
6759 ;
6760 ; ERROR CODES RETURNED:
6761 ;
6762 ; NONE
6763 ;-
6764
6765 012760 .SHUTC::
6766 012760 CALL .CKEOC ; CHECK E-O-C
012760 004737 000000G JSR PC,.CKEOC
6767 012764 112737 000001 000000G MOVB #1,.NOHLT ; TELL RSX20F NOT TO PANIC OVER HALTED KL
6768 012772 005046 CLR -(SP) ; CLEAR ADDRESS BUFFER
6769 012774 PUSH #30 ; .SET THE ADDRESS UP
012774 012746 000030 MOV #30,-(SP)
6770 013000 010600 MOV SP,R0 ; ..GET ADDRESS POINTER
6771 013002 PUSH #17 ; ..SET UP DEPOSIT WORD
013002 012746 000017 MOV #17,-(SP)
6772 013006 PUSH #-^D1 ; ...
013006 012746 177777 MOV #-^D1,-(SP)
6773 013012 PUSH (SP) ; ....
013012 011646 MOV (SP),-(SP)
6774 013014 010601 MOV SP,R1 ; .....SAVE THE POINTER
6775 013016 PUSH R1 ; .....SET UP THE DATA BLOCK
013016 010146 MOV R1,-(SP)
6776 013020 PUSH R0 ; ......
013020 010046 MOV R0,-(SP)
6777 013022 010601 MOV SP,R1 ; .......POINT TO THE BLOCK
6778 013024 012700 000040 MOV #ED.EXV,R0 ; .......EXEC VIRTUAL REFERENCE
6779 013030 CALL .DPKLM ; .......DO THE DEPOSIT
013030 004737 000000G JSR PC,.DPKLM
6780 013034 062706 000016 ADD #^D14,SP ; .......CLEAR THE STACK
6781 013040 CALL ..DTP2 ; START SECONDARY PROTOCOL
013040 004737 000000G JSR PC,..DTP2
6782 013044 CALLR .EXITP ; EXIT THE PARSER
013044 000137 000000G JMP .EXITP
6783 ;
STRTC -- START COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 172
.SHUTC -- THE "SHUTDOWN" COMMAND 7707.12
6785 .TITLE STRTC -- START COMMAND DISPATCH MODULE 7603.30
6786
6787 .IDENT "005000"
6788
6789 ;
6790 ; COPYRIGHT (C) 1975, 1979 BY
6791 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6792 ;
6793 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6794 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6795 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6796 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6797 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6798 ;
6799 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6800 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6801 ; CORPORATION.
6802 ;
6803 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6804 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6805 ;
6806 ; MODULE: START COMMAND DISPATCH
6807 ;
6808 ; VERSION: 05-00
6809 ;
6810 ; AUTHOR: R. BELANGER
6811 ;
6812 ; DATE: 7603.30
6813 ;
6814 ; THIS MODULE CONTAINS:
6815 ;
6816 ; 1) START COMMAND DISPATCH CODE
STRTC -- START COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 173
.STRTC -- THE "START" COMMAND 7602.26
6818 .SBTTL .STRTC -- THE "START" COMMAND 7602.26
6819
6820 ;+
6821 ; .STRTC -- THE "START" COMMAND.
6822 ;
6823 ; THIS IS THE TOP LEVEL OF THE "START" COMMAND, WHICH CHECKS FOR
6824 ; ARGUMENTS AND DISPATCHES TO THE PROPER LOWER LEVEL ROUTINE.
6825 ;
6826 ; INPUT ARGUMENTS:
6827 ;
6828 ; NONE.
6829 ;
6830 ; OUTPUT ARGUMENTS:
6831 ;
6832 ; NONE.
6833 ;
6834 ; ERROR CODES RETURNED:
6835 ;
6836 ; NONE.
6837 ;-
6838
6839 013050 .STRTC::
6840 013050 CALL .CKARG ; LOOK FOR AN ARGUMENT
013050 004737 000000G JSR PC,.CKARG
6841 013054 001012 BNE .STRTT ; START THE TEN IF NUMERIC
6842 013056 012700 000000G MOV #.STRTB,R0 ; TABLE POINTER TO R0
6843 013062 CALL .TSCAN ; SCAN THE TABLE
013062 004737 000000G JSR PC,.TSCAN
6844 013066 CALLR @2(R0) ; DISPATCH FOR THE OBJECT
013066 000170 000002 JMP @2(R0)
6845 ;
STRTC -- START COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 174
.STRTT -- THE "START <TEN>" COMMAND 7710.11
6847 .SBTTL .STRTT -- THE "START <TEN>" COMMAND 7710.11
6848
6849 ;+
6850 ; .STRTT -- THE "START <TEN>" COMMAND.
6851 ; .JUMPC -- THE "JUMP" COMMAND.
6852 ;
6853 ; THESE ROUTINES WILL START THE KL IN EXEC (KERNEL) MODE AT THE
6854 ; ADDRESS SPECIFIED IN THE INPUT STREAM.
6855 ;
6856 ; INPUT ARGUMENTS:
6857 ;
6858 ; NONE.
6859 ;
6860 ; OUTPUT ARGUMENTS:
6861 ;
6862 ; NONE.
6863 ;
6864 ; ERROR CODES RETURNED:
6865 ;
6866 ; ILS -- ILLEGAL SEPARATOR CHARACTER
6867 ; KLA -- KL ADDRESS ERROR
6868 ; MRA -- MISSING REQUIRED ARGUMENT
6869 ; SZI -- START AT ZERO ILLEGAL
6870 ;-
6871
6872 .MCALL $DEF
6873
6874 013072 $DEF
STRTC -- START COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 175
.STRTT -- THE "START <TEN>" COMMAND 7710.11
6876 .ENABL LSB
6877
6878 013072 .JUMPC::
6879 013072 CALL 10$ ; START THE KL
013072 004737 013106' JSR PC,10$
6880 013076 000137 000000G JMP .EXITP ; AND EXIT FROM THE PARSER
6881 ;
6882 013102 .STRTT::
6883 013102 CALL .CKRNP ; SEE IF THE KL IS RUNNING
013102 004737 000000G JSR PC,.CKRNP
6884 013106 10$:
6885 013106 005046 CLR -(SP) ; CLEAR ADDRESS BUFFER
6886 013110 005046 CLR -(SP) ; .
6887 013112 005046 CLR -(SP) ; ..
6888 013114 010600 MOV SP,R0 ; ...POINTER TO R0
6889 013116 CALL .GTKLA ; ...GET THE START ADDRESS
013116 004737 000000G JSR PC,.GTKLA
6890 013122 CALL .TPTST ; ...SEE IF IT IS NON ZERO
013122 004737 000000G JSR PC,.TPTST
6891 013126 001424 BEQ STASZI ; ...CAN'T START KL AT 0
6892 013130 CALL .CKEOC ; ...CHECK FOR E-O-C
013130 004737 000000G JSR PC,.CKEOC
6893 013134 032737 000002 000000G BIT #LG.PRG,.FEMOD ; ...ARE WE AT LEAST IN PROGRAMMER MODE??
6894 013142 001402 BEQ 20$ ; ...NO -- JUST GO ON
6895 013144 CALL .ABORT ; ...YES -- START THE KL BY ANY MEANS
013144 004737 000004' JSR PC,.ABORT
6896 013150 20$:
6897 013150 010001 MOV R0,R1 ; ...POINTER FOR THE CALL
6898 013152 CALL .KLST ; ...START THE KL
013152 004737 000000G JSR PC,.KLST
6899 013156 062706 000006 ADD #^D6,SP ; ...CLEAR THE STACK
6900 013162 005037 000000G CLR .NOERR ; LET RSX20F RECOGNIZE KL ERRORS
6901 013166 052737 000000G 000002G BIS #EF.CRI,.COMEF+2 ; DECLARE THE COMM REGION INVALID
6902 013174 CALLR ..DTP2 ; START UP SECONDARY PROTOCOL AND EXIT.
013174 000137 000000G JMP ..DTP2
6903 ;
6904 013200 STASZI:
6905 013200 ERROR$ SZI ; ERROR -- START AT ZERO ILLEGAL
013200 012746 075331 MOV #^RSZI,-(SP)
013204 104400 TRAP TC.ERR
6906 ;
6907
6908 .DSABL LSB
STRTC -- START COMMAND DISPATCH MACRO M1113 10-NOV-81 17:48 PAGE 176
.STRTU -- THE "START MICROCODE" COMMAND 7602.26
6910 .SBTTL .STRTU -- THE "START MICROCODE" COMMAND 7602.26
6911
6912 ;+
6913 ; .STRTU -- THE "START MICROCODE" COMMAND.
6914 ;
6915 ; THIS ROUTINE STARTS THE KL MICROCODE AT THE ADDRESS SPECIFIED.
6916 ; IF NO ADDRESS IS SPECIFIED, 0000 IS ASSUMED.
6917 ;
6918 ; INPUT ARGUMENTS:
6919 ;
6920 ; NONE.
6921 ;
6922 ; OUTPUT ARGUMENTS:
6923 ;
6924 ; NONE.
6925 ;
6926 ; ERROR CODES RETURNED:
6927 ;
6928 ; NONE.
6929 ;-
6930
6931 013206 .STRTU::
6932 013206 CALL .CKRUN ; SEE IF THE KL IS RUNNING
013206 004737 000000G JSR PC,.CKRUN
6933 013212 005000 CLR R0 ; CLEAR R0 (FOR DEFAULT)
6934 013214 111504 MOVB (R5),R4 ; LOOK AT THE CURRENT CHARACTER
6935 013216 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
6936 013224 001004 BNE 10$ ; DO DEFAULT START IF E-O-C
6937 013226 CALL .GTELN ; GO READ THE ADDRESS
013226 004737 000000G JSR PC,.GTELN
6938 013232 CALL .CKEOC ; MUST HAVE E-O-C
013232 004737 000000G JSR PC,.CKEOC
6939 013236 10$:
6940 013236 032737 100000 000000G BIT #KF.CLK,.KLFLG ; IS THE KL CLOCK ON?
6941 013244 001402 BEQ 20$ ; NO -- JUST START THE MICROCODE
6942 013246 CALL .KLHLT ; YES -- STOP THE KL
013246 004737 000000G JSR PC,.KLHLT
6943 013252 20$:
6944 013252 CALLR .STUCD ; START THE KL MICROCODE AND RETURN
013252 000137 000000G JMP .STUCD
6945 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 177
.STRTU -- THE "START MICROCODE" COMMAND 7602.26
6947 .TITLE SWCMD -- SET / CLEAR / WHAT COMMAND MODULE 7702.16
6948
6949 .IDENT "006250"
6950
6951 ; COPYRIGHT (C) 1975, 1979 BY
6952 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
6953 ;
6954 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
6955 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
6956 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
6957 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
6958 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
6959 ;
6960 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
6961 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
6962 ; CORPORATION.
6963 ;
6964 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
6965 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
6966 ;
6967 ; MODULE: SET / CLEAR COMMAND
6968 ;
6969 ; VERSION: 06-25
6970 ;
6971 ; AUTHOR: R. BELANGER
6972 ;
6973 ; DATE: 7702.16
6974 ;
6975 ; THIS MODULE CONTAINS:
6976 ;
6977 ; 1) SET / CLEAR CONSOLE COMMAND CODE
6978 ;
6979 ; MODIFICATIONS:
6980 ;
6981 ; NO. DATE PROGRAMMER REASON
6982 ; --- ---- ---------- ------
6983 ; 001 28-FEB-77 R. BELANGER CHANGE "ECL" ERROR TO "CLE"
6984 ; [5.1011] 19-OCT-79 R. BELANGER ADD "WHAT HARDWARE" COMMAND
6985 ; 002 11-MAR-80 S. LEAPLINE ADD "SET/CLEAR/WHAT FAULT"
6986 ; 003 05-NOV-80 S. LEAPLINE ADD "SET/CLEAR/WHAT AUTO-TAKE"
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 178
.SCCON -- THE " SET / CLEAR CONSOLE" COMMAND 7702.16
6988 .SBTTL .SCCON -- THE " SET / CLEAR CONSOLE" COMMAND 7702.16
6989
6990 .ENABL LSB
6991
6992 013256 .SCCON::
6993 013256 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
6994 013262 001016 BNE 10$ ; YES -- SET OPERATOR
6995 013264 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
6996 013272 001017 BNE .SCCOP ; E-O-C -- SET PROGRAMMER
6997 013274 CALL .CKOBJ ; MUST HAVE AN OBJECT
013274 004737 000000G JSR PC,.CKOBJ
6998 013300 012700 000000G MOV #.SCCOT,R0 ; TABLE POINTER TO R0
6999 013304 CALL .TSCAN ; SCAN THE TABLE
013304 004737 000000G JSR PC,.TSCAN
7000 013310 CALL .CKEOC ; MUST HAVE E-O-C
013310 004737 000000G JSR PC,.CKEOC
7001 013314 CALLR @2(R0) ; EXECUTE THE COMMAND
013314 000170 000002 JMP @2(R0)
7002 ;
7003 013320 10$:
7004 013320 CALL .CKEOC ; MUST HAVE E-O-C IF CLEAR
013320 004737 000000G JSR PC,.CKEOC
7005 013324 .SCCOO::
7006 013324 012701 000001 MOV #LG.OPR,R1 ; OPERATOR CONSULE
7007 013330 000405 BR 20$ ; EXIT
7008 ;
7009 013332 .SCCOP::
7010 013332 012701 000003 MOV #LG.PRM,R1 ; PROGRAMMER CONSOLE
7011 013336 000402 BR 20$ ; EXIT
7012 ;
7013 013340 .SCCOM::
7014 013340 012701 000007 MOV #LG.ALL,R1 ; MAINTENANCE CONSOLE
7015 013344 20$:
7016 013344 105737 000000G TSTB .KLNSW+0 ; +++001 IS REMOTE KLINIK MODE ENABLED?
7017 013350 003403 BLE 30$ ; +++001 NO -- GO ON
7018 013352 120137 000001G CMPB R1,.KLNMD+1 ; +++001 YES -- CAN WE DO THIS?
7019 013356 003005 BGT SCCCLE ; NO -- GIVE "CLE" ERROR
7020 013360 30$:
7021 013360 010137 000000G MOV R1,.FEMOD ; YES -- SET THE CONSOLE MODE
7022 013364 000405 BR .WHCON ; PRINT CONSOLE MODE AND EXIT
7023 ;
7024 013366 .SCCOU::
7025 013366 CALLR .EXITP ; EXIT TO USER CONSOLE
013366 000137 000000G JMP .EXITP
7026 ;
7027 013372 SCCCLE:
7028 013372 ERROR$ CLE ; ERROR -- CONSOLE LIMIT EXCEEDED
013372 012746 012245 MOV #^RCLE,-(SP)
013376 104400 TRAP TC.ERR
7029 ;
7030
7031 .DSABL LSB
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 179
.WHCON -- THE "WHAT CONSOLE" COMMAND 7607.14
7033 .SBTTL .WHCON -- THE "WHAT CONSOLE" COMMAND 7607.14
7034
7035 013400 .WHCON::
7036 013400 012700 003413' MOV #WCMMSG,R0 ; MESSAGE POINTER TO R0
7037 013404 CALL .TYMSG ; PRINT IT
013404 004737 000000G JSR PC,.TYMSG
7038 013410 013701 000000G MOV .FEMOD,R1 ; MODE WORD TO R1
7039 013414 012700 000000G MOV #MNTMSG,R0 ; MAINTENANCE
7040 013420 032701 000004 BIT #LG.MNT,R1 ; IS IT ON?
7041 013424 001007 BNE 10$ ; YES -- SAY SO
7042 013426 012700 000000G MOV #PRGMSG,R0 ; NO -- PROGRAMMER?
7043 013432 032701 000002 BIT #LG.PRG,R1 ; IS IT ON?
7044 013436 001002 BNE 10$ ; YES -- SAY SO
7045 013440 012700 000000G MOV #OPRMSG,R0 ; NO -- MUST BE OPERATOR
7046 013444 10$:
7047 013444 CALLR .TYLIN ; YES -- PRINT AND EXIT
013444 000137 000000G JMP .TYLIN
7048 ;
7049
7050 003413 .PSECT MESSAG
7051
7052 003413 WCMMSG:
7053 003413 040 103 117 .ASCIZ % CONSOLE MODE: %
003416 116 123 117
003421 114 105 040
003424 115 117 104
003427 105 072 040
003432 000
7054
7055 013450 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 180
.SCINC -- THE "SET / CLEAR INCREMENT" COMMAND 7606.20
7057 .SBTTL .SCINC -- THE "SET / CLEAR INCREMENT" COMMAND 7606.20
7058
7059 013450 .SCINC:: ; SET/CLEAR "INCREMENT"
7060 013450 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7061 013454 001016 BNE 10$ ; YES -- JUST CLEAR IT
7062 013456 005046 CLR -(SP) ; NO -- CLEAR A BUFFER ON THE STACK
7063 013460 005046 CLR -(SP) ; .
7064 013462 005046 CLR -(SP) ; ..
7065 013464 010600 MOV SP,R0 ; ...POINT TO THE BUFFER
7066 013466 CALL .GTNUM ; ...READ THE NUMBER
013466 004737 000000G JSR PC,.GTNUM
7067 013472 CALL .CKEOC ; ...MUST HAVE E-O-C
013472 004737 000000G JSR PC,.CKEOC
7068 013476 012701 000000G MOV #.KLINC,R1 ; ...POINT TO THE INCREMENT
7069 013502 POP (R1)+ ; ...LOAD THE NEW INCREMENT
013502 012621 MOV (SP)+,(R1)+
7070 013504 POP (R1)+ ; ..
013504 012621 MOV (SP)+,(R1)+
7071 013506 POP (R1) ; .
013506 012611 MOV (SP)+,(R1)
7072 013510 000406 BR 20$ ; AND EXIT
7073 ;
7074 013512 10$:
7075 013512 CALL .CKEOC ; MUST HAVE E-O-C
013512 004737 000000G JSR PC,.CKEOC
7076 013516 012700 000000G MOV #.KLINC,R0 ; POINT TO THE INCREMENT
7077 013522 CALL .TPCLR ; CLEAR IT
013522 004737 000000G JSR PC,.TPCLR
7078 013526 20$:
7079 ; BR .WHINC ; PRINT INCREMENT AND EXIT
7080 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 181
.WHINC -- THE "WHAT INCREMENT" COMMAND 7703.25
7082 .SBTTL .WHINC -- THE "WHAT INCREMENT" COMMAND 7703.25
7083
7084 .ENABL LSB
7085
7086 013526 .WHINC::
7087 013526 012700 003433' MOV #WHIMSG,R0 ; MESSAGE POINTER TO R0
7088 013532 012701 000000G MOV #.KLINC,R1 ; INREMENT POINTER
7089 013536 000412 BR 10$ ; DO COMMON CODE
7090 ;
7091 013540 .WHRPT::
7092 013540 013737 000000G 000000G MOV .ORADX,.RDXSV ; SAVE CURRENT OUTPUT RADIX
7093 013546 012737 000012 000000G MOV #^D10,.ORADX ; SET IT TO DECIMAL
7094 013554 012700 003453' MOV #WHRMSG,R0 ; MESSAGE POINTER TO R0
7095 013560 012701 000000G MOV #.RPTCT,R1 ; REPEAT POINTER
7096 013564 10$:
7097 013564 CALL .TYMSG ; PRINT THE MESSAGE
013564 004737 000000G JSR PC,.TYMSG
7098 013570 005037 000000G CLR .LDZFL ; NO LEADING ZEROES
7099 013574 010100 MOV R1,R0 ; POINTER TO R0
7100 013576 CALL .TYKLN ; PRINT THE NUMBER
013576 004737 000000G JSR PC,.TYKLN
7101 013602 013737 000000G 000000G MOV .RDXSV,.ORADX ; RESET THE OUTPUT RADIX
7102 013610 CALLR .TCRLF ; END THE LINE AND EXIT
013610 000137 000000G JMP .TCRLF
7103 ;
7104
7105 .DSABL LSB
7106
7107 003433 .PSECT MESSAG
7108
7109 003433 WHIMSG:
7110 003433 040 113 114 .ASCIZ % KL INCREMENT: %
003436 040 111 116
003441 103 122 105
003444 115 105 116
003447 124 072 040
003452 000
7111 003453 WHRMSG:
7112 003453 040 122 105 .ASCIZ % REPEAT COUNT: %
003456 120 105 101
003461 124 040 103
003464 117 125 116
003467 124 072 040
003472 000
7113 013614 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 182
.SCMEM -- THE "SET / CLEAR MEMORY" COMMAND 7607.08
7115 .SBTTL .SCMEM -- THE "SET / CLEAR MEMORY" COMMAND 7607.08
7116
7117 .ENABL LSB
7118
7119 013614 .SCMEM:: ; SET / CLEAR "MEMORY"
7120 013614 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7121 013620 001015 BNE 10$ ; YES -- GO DO THE CLEAR
7122 013622 CALL .CKOBJ ; NO -- MUST HAVE AN OBJECT
013622 004737 000000G JSR PC,.CKOBJ
7123 013626 012700 000000G MOV #.SCMTB,R0 ; TABLE POINTER TO R0
7124 013632 CALL .TSCAN ; SCAN IT
013632 004737 000000G JSR PC,.TSCAN
7125 013636 CALL .CKEOC ; MUST BE E-O-C
013636 004737 000000G JSR PC,.CKEOC
7126 013642 CALLR @2(R0) ; DISPATCH FOR OBJECT
013642 000170 000002 JMP @2(R0)
7127 ;
7128 013646 .SCMEL:: ; SET MEMORY ELEVEN
7129 013646 012700 000002 MOV #^D2,R0 ; ELEVEN OFFSET IS 2
7130 013652 000403 BR 20$ ; DO COMMON STUFF
7131 013654 10$:
7132 013654 CALL .CKEOC ; MUST HAVE E-O-C TO CLEAR
013654 004737 000000G JSR PC,.CKEOC
7133 013660 .SCMKL::
7134 013660 005000 CLR R0 ; TEN OFFSET IS 0
7135 013662 20$:
7136 013662 010037 000000G MOV R0,.MEMFL ; SET THE FLAG
7137 ; BR .WHMEM ; AND EXIT
7138 ;
7139
7140 .DSABL LSB
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 183
.WHMEM -- THE "WHAT MEMORY" COMMAND 7603.21
7142 .SBTTL .WHMEM -- THE "WHAT MEMORY" COMMAND 7603.21
7143
7144 013666 .WHMEM::
7145 013666 012700 003473' MOV #WHMMSG,R0 ; MESSAGE POINTER TO R0
7146 013672 CALL .TYMSG ; TYPE IT
013672 004737 000000G JSR PC,.TYMSG
7147 013676 012700 000000G MOV #TENMSG,R0 ; ASSUME TEN
7148 013702 005737 000000G TST .MEMFL ; IS IT "TEN"
7149 013706 001402 BEQ 10$ ; YES -- SAY SO
7150 013710 012700 000000G MOV #ELEMSG,R0 ; NO -- SAY "ELEVEN"
7151 013714 10$:
7152 013714 CALLR .TYLIN ; PRINT AND EXIT
013714 000137 000000G JMP .TYLIN
7153 ;
7154
7155 003473 .PSECT MESSAG
7156
7157 003473 WHMMSG:
7158 003473 040 115 105 .ASCIZ % MEMORY: %
003476 115 117 122
003501 131 072 040
003504 000
7159
7160 013720 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 184
.SCOFS -- THE "SET / CLEAR OFFSET" COMMAND 7602.19
7162 .SBTTL .SCOFS -- THE "SET / CLEAR OFFSET" COMMAND 7602.19
7163
7164 013720 .SCOFS:: ; SET/CLEAR "OFFSET"
7165 013720 012700 000000G MOV #.APRWD,R0 ; DEFAULT OFFSET
7166 013724 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7167 013730 001002 BNE 10$ ; YES -- JUST EXIT
7168 013732 CALL .GTELN ; NO -- READ NEW OFFSET
013732 004737 000000G JSR PC,.GTELN
7169 013736 10$:
7170 013736 CALL .CKEOC ; MUST HAVE E-O-C
013736 004737 000000G JSR PC,.CKEOC
7171 013742 010037 000000G MOV R0,.RELWD ; SET IT
7172 ; BR .WHOFS ; PRINT IT AND RETURN
7173 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 185
.WHOFS -- THE "WHAT OFFSET" COMMAND 7603.20
7175 .SBTTL .WHOFS -- THE "WHAT OFFSET" COMMAND 7603.20
7176
7177 013746 .WHOFS::
7178 013746 012700 003505' MOV #WHOMSG,R0 ; MESSAGE POINTER TO R0
7179 013752 CALL .TYMSG ; PRINT IT
013752 004737 000000G JSR PC,.TYMSG
7180 013756 013700 000000G MOV .RELWD,R0 ; OFFSET TO R0
7181 013762 CALL .TYELA ; PRINT IT
013762 004737 000000G JSR PC,.TYELA
7182 013766 CALLR .TCRLF ; END THE LINE AND EXIT
013766 000137 000000G JMP .TCRLF
7183 ;
7184
7185 003505 .PSECT MESSAG
7186
7187 003505 WHOMSG:
7188 003505 040 120 104 .ASCIZ % PDP-11 OFFSET: %
003510 120 055 061
003513 061 040 117
003516 106 106 123
003521 105 124 072
003524 040 000
7189 013772 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 186
.SCRLD -- THE "SET / CLEAR RELOAD" COMMAND 7602.19
7191 .SBTTL .SCRLD -- THE "SET / CLEAR RELOAD" COMMAND 7602.19
7192
7193 013772 .SCRLD:: ; SET/CLEAR "RELOAD"
7194 013772 CALL .CKEOC ; MUST HAVE E-O-C
013772 004737 000000G JSR PC,.CKEOC
7195 013776 113737 000000G 000000G MOVB .NOTSW,.KLRLD ; SET/CLEAR THE SWITCH
7196 014004 000413 BR .WHRLD ; PRINT THE STATE AND EXIT
7197 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 187
.SCRTY -- THE "SET / CLEAR RETRY" COMMAND 7-DEC-78
7199 .SBTTL .SCRTY -- THE "SET / CLEAR RETRY" COMMAND 7-DEC-78
7200
7201 014006 .SCRTY:: ;[TCO 4.2107] SET/CLEAR "RETRY"
7202 014006 CALL .CKEOC ;[TCO 4.2107] MUST HAVE E-O-C
014006 004737 000000G JSR PC,.CKEOC
7203 014012 012701 000001 MOV #1,R1 ;[TCO 4.2107] DEFAULT IS SET
7204 014016 005737 000000G TST .NOTSW ;[TCO 4.2107] IS THIS A CLEAR
7205 014022 001401 BEQ 10$ ;[TCO 4.2107] NO -- GO ON
7206 014024 005001 CLR R1 ;[TCO 4.2107] YES -- CLEAR FLAG
7207 014026 010137 000000G 10$: MOV R1,.KACFL ;[TCO 4.2107] SET/CLEAR FLAG
7208 014032 000412 BR .WHRTY ;[TCO 4.2107] PRINT STATE AND EXIT
7209 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 188
.WHRLD -- THE "WHAT RELOAD" COMMAND 7603.21
7211 .SBTTL .WHRLD -- THE "WHAT RELOAD" COMMAND 7603.21
7212
7213 .ENABL LSB
7214
7215 014034 .WHRLD::
7216 014034 012700 003526' MOV #WRLMSG,R0 ; MESSAGE POINTER TO R0
7217 014040 CALL .TYMSG ; PRINT IT
014040 004737 000000G JSR PC,.TYMSG
7218 014044 012700 000000G MOV #OFFMSG,R0 ; ASSUME "OFF"
7219 014050 105737 000000G TSTB .KLRLD ; IS IT OFF?
7220 014054 001014 BNE 20$ ; YES -- GO ON
7221 014056 000411 BR 10$ ; NO -- SAY SO
7222 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 189
.WHRTY -- THE "WHAT RETRY" COMMAND 7-DEC-78
7224 .SBTTL .WHRTY -- THE "WHAT RETRY" COMMAND 7-DEC-78
7225
7226 014060 .WHRTY:: ; [TCO 4.2107] WHAT RETRY COMMAND ENTRY
7227 014060 012700 003547' MOV #WRTMSG,R0 ; [TCO 4.2107] MESSAGE POINTER
7228 014064 CALL .TYMSG ; [TCO 4.2107] PRINT IT
014064 004737 000000G JSR PC,.TYMSG
7229 014070 012700 000000G MOV #OFFMSG,R0 ; [TCO 4.2107] ASSUME OFF
7230 014074 005737 000000G TST .KACFL ; [TCO 4.2107] IS IT SET?
7231 014100 001402 BEQ 20$ ; [TCO 4.2107] NO -- GO ON
7232 014102 10$:
7233 014102 012700 000000G MOV #ONMSG,R0 ; [TCO 4.2107] YES -- CHANGE MESSAGE
7234 014106 20$:
7235 014106 CALLR .TYLIN ; [TCO 4.2107] PRINT AND EXIT
014106 000137 000000G JMP .TYLIN
7236 ;
7237
7238 .DSABL LSB
7239
7240 003526 .PSECT MESSAG
7241
7242 003526 WRLMSG:
7243 003526 040 122 105 .ASCIZ % RELOAD ENABLE: %
003531 114 117 101
003534 104 040 105
003537 116 101 102
003542 114 105 072
003545 040 000
7244 003547 WRTMSG:
7245 003547 040 122 105 .ASCIZ % RETRY ENABLE: %
003552 124 122 131
003555 040 105 116
003560 101 102 114
003563 105 072 040
003566 000
7246 014112 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 190
.SCRPT -- THE "SET / CLEAR REPEAT" COMMAND 7703.25
7248 .SBTTL .SCRPT -- THE "SET / CLEAR REPEAT" COMMAND 7703.25
7249
7250 014112 .SCRPT::
7251 014112 013737 000000G 000000G MOV .IRADX,.RDXSV ; SAVE CURRENT INPUT RADIX
7252 014120 012737 000012 000000G MOV #^D10,.IRADX ; SET IT TO DECIMAL
7253 014126 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
7254 014130 005046 CLR -(SP) ; .
7255 014132 005046 CLR -(SP) ; ..
7256 014134 010600 MOV SP,R0 ; ...POINT TO THE BUFFER
7257 014136 005737 000000G TST .NOTSW ; ...IS THIS A CLEAR?
7258 014142 001002 BNE 10$ ; ...YES -- DO THE CLEAR
7259 014144 CALL .GTKLN ; ...NO -- READ THE NEW REPEAT COUNT
014144 004737 000000G JSR PC,.GTKLN
7260 014150 10$:
7261 014150 CALL .CKEOC ; ...MUST HAVE E-O-C
014150 004737 000000G JSR PC,.CKEOC
7262 014154 012701 000000G MOV #.RPTCT,R1 ; ...POINT TO THE CURRENT REPEAT COUNT
7263 014160 POP <(R1)+,(R1)+,(R1)>
014160 012621 MOV (SP)+,(R1)+
014162 012621 MOV (SP)+,(R1)+
014164 012611 MOV (SP)+,(R1)
7264 014166 013700 000000G MOV .RPTPT,R0 ; POINT TO THE STACKED REPEAT COUNT
7265 014172 CALL .TPCLR ; CLEAR IT OUT
014172 004737 000000G JSR PC,.TPCLR
7266 014176 013737 000000G 000000G MOV .RDXSV,.IRADX ; RESET INPUT RADIX
7267 014204 CALLR .WHRPT ; PRINT THE NEW REPEAT COUNT AND EXIT
014204 000137 013540' JMP .WHRPT
7268 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 191
.SCTRK -- THE "SET / CLEAR TRACK" COMMAND 7602.19
7270 .SBTTL .SCTRK -- THE "SET / CLEAR TRACK" COMMAND 7602.19
7271
7272 014210 .SCTRK:: ; SET/CLEAR "TRACK"
7273 014210 CALL .CKEOC ; MUST HAVE E-O-C
014210 004737 000000G JSR PC,.CKEOC
7274 014214 005001 CLR R1 ; CLEAR R1
7275 014216 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7276 014222 001001 BNE 10$ ; YES -- GO ON
7277 014224 005101 COM R1 ; NO -- INVERT THE SWITCH
7278 014226 10$:
7279 014226 010137 000000G MOV R1,.TRKWD ; SET/CLEAR THE SWITCH
7280 ; BR .WHTRK ; PRINT STATE AND RETURN
7281 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 192
.WHTRK -- THE "WHAT TRACKS" COMMAND 7603.20
7283 .SBTTL .WHTRK -- THE "WHAT TRACKS" COMMAND 7603.20
7284
7285 .ENABL LSB
7286
7287 014232 .WHTRK::
7288 014232 012700 003567' MOV #WHTMSG,R0 ; MESSAGE POINTER TO R0
7289 014236 CALL .TYMSG ; PRINT IT
014236 004737 000000G JSR PC,.TYMSG
7290 014242 012700 000000G MOV #ONMSG,R0 ; ASSUME "ON"
7291 014246 005737 000000G TST .TRKWD ; IS IT ON?
7292 014252 001021 BNE 10$ ; YES -- GO ON
7293 014254 012700 000000G MOV #OFFMSG,R0 ; NO -- SAY SO
7294 014260 000416 BR 10$ ; PRINT AND EXIT
7295 ;
7296
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 193
.WHATV -- THE "WHAT VERSION" COMMAND 7607.21
7298 .SBTTL .WHATV -- THE "WHAT VERSION" COMMAND 7607.21
7299
7300 014262 .WHATV::
7301 014262 012700 003607' MOV #WVMSG1,R0 ; MESSAGE POINTER TO R0
7302 014266 CALL .TYMSG ; PRINT THAT
014266 004737 000000G JSR PC,.TYMSG
7303 014272 012700 000000G MOV #CPVMSG,R0 ; PARSER VERSION NUMBER
7304 014276 CALL .TYLIN ; PRINT IT
014276 004737 000000G JSR PC,.TYLIN
7305 014302 012700 003631' MOV #WVMSG2,R0 ; MESSAGE POINTER TO R0
7306 014306 CALL .TYMSG ; PRINT IT
014306 004737 000000G JSR PC,.TYMSG
7307 014312 012700 000000G MOV #.VERNO,R0 ; POINTER TO RSX20F ASCIZ VERSION NUMBER
7308 014316 10$:
7309 014316 CALLR .TYLIN ; PRINT IT AND EXIT
014316 000137 000000G JMP .TYLIN
7310 ;
7311
7312 003567 .PSECT MESSAG
7313
7314 003567 WHTMSG:
7315 003567 040 124 122 .ASCIZ % TRACK ENABLE: %
003572 101 103 113
003575 040 105 116
003600 101 102 114
003603 105 072 040
003606 000
7316 003607 WVMSG1:
7317 003607 040 120 101 .ASCIZ % PARSER VERSION: %
003612 122 123 105
003615 122 040 126
003620 105 122 123
003623 111 117 116
003626 072 040 000
7318 003631 WVMSG2:
7319 003631 040 122 123 .ASCIZ % RSX20F VERSION: %
003634 130 062 060
003637 106 040 126
003642 105 122 123
003645 111 117 116
003650 072 040 000
7320
7321 014322 .PSECT
7322
7323 .DSABL LSB
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 194
.WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT 7910.18
7325 .SBTTL .WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT 7910.18
7326
7327 ;+
7328 ; .WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT
7329 ;
7330 ; THIS SUBROUTINE WILL DISPLAY THE KL10 HARDWARE ENVIRONMENT DETERMINED
7331 ; FROM THE CONTENT OF ".CPUSN" AND ".HRDWR" IN THE FRONT-END STATUS BLOCK.
7332 ;
7333 ; THIS ROUTINE WAS ADDED FOR TCO 5.1011
7334 ;
7335 ; INPUT ARGUMENTS:
7336 ;
7337 ; NONE.
7338 ;
7339 ; OUTPUT ARGUMENTS:
7340 ;
7341 ; NONE.
7342 ;
7343 ; ERROR CODES RETURNED:
7344 ;
7345 ; CRH -- CAN'T READ HARDWARE OPTIONS
7346 ; MRH -- HARDWARE OPTIONS MUST YET BE READ
7347 ;-
7348
7349 014322 .WHRDW::
7350 014322 005737 000000G TST .CPUSN ; DO WE HAVE THE HARDWARE OPTIONS??
7351 014326 001474 BEQ WHRMRH ; NO -- MUST BE READ BY KLINIT
7352 014330 002476 BLT WHRCRH ; NO -- CAN'T BE READ
7353 014332 012700 003653' MOV #WHHMS0,R0 ; YES -- SET UP PREAMBLE
7354 014336 CALL .TYMSG ; PRINT IT
014336 004737 000000G JSR PC,.TYMSG
7355 014342 013700 000000G MOV .CPUSN,R0 ; GET THE SERIAL NUMBER
7356 014346 PUSH .ORADX ; SAVE CURRENT RADIX
014346 013746 000000G MOV .ORADX,-(SP)
7357 014352 012737 000012 000000G MOV #^D10,.ORADX ; .SET RADIX TO DECIMAL
7358 014360 CALL .TYELN ; .PRINT IT
014360 004737 000000G JSR PC,.TYELN
7359 014364 012700 003667' MOV #WHHMS1,R0 ; .MODEL PREAMBLE TO R0
7360 014370 CALL .TYMSG ; .PRINT IT
014370 004737 000000G JSR PC,.TYMSG
7361 014374 012700 000101 MOV #'A,R0 ; .ASSUME A MODEL "A"
7362 014400 032737 000000G 000000G BIT #H.KEXT,.HRDWR ; .IS IT A MODEL "A"??
7363 014406 001401 BEQ 10$ ; .YES -- GO ON
7364 014410 005200 INC R0 ; .NO -- SET IT TO "B"
7365 014412 10$:
7366 014412 CALL .TYCHR ; .AND PRINT IT
014412 004737 000000G JSR PC,.TYCHR
7367 014416 CALL .TYCOM ; .PRINT COMMA
014416 004737 000000G JSR PC,.TYCOM
7368 014422 CALL .TYSPC ; .AND A SPACE
014422 004737 000000G JSR PC,.TYSPC
7369 014426 012700 000074 MOV #^D60,R0 ; .ASSUME 60 HERTZ
7370 014432 032737 000000G 000000G BIT #H.KPWR,.HRDWR ; .IS IT 60 HERTZ??
7371 014440 001402 BEQ 20$ ; .YES -- GO ON
7372 014442 162700 000012 SUB #^D10,R0 ; .NO -- MAKE IT 50
7373 014446 20$:
7374 014446 CALL .TYELN ; .PRINT POWER FREQUENCY
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 194-1
.WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT 7910.18
014446 004737 000000G JSR PC,.TYELN
7375 014452 POP .ORADX ; RESTORE RADIX
014452 012637 000000G MOV (SP)+,.ORADX
7376 014456 012700 003701' MOV #WHHMS2,R0 ; END OF LINE
7377 014462 CALL .TYLIN ; PRINT THE LINE
014462 004737 000000G JSR PC,.TYLIN
7378 014466 012702 000004 MOV #4,R2 ; ITERATION COUNT TO R2
7379 014472 012703 001030' MOV #WHWTAB,R3 ; TABLE POINTER TO R3
7380 014476 30$:
7381 014476 012300 MOV (R3)+,R0 ; MESSAGE POINTER TO R0
7382 014500 032337 000000G BIT (R3)+,.HRDWR ; IS THE OPTION PRESENT??
7383 014504 001402 BEQ 40$ ; NO -- GO ON
7384 014506 CALL .TYLIN ; YES -- SAY SO
014506 004737 000000G JSR PC,.TYLIN
7385 014512 40$:
7386 014512 077207 SOB R2,30$ ; LOOP THROUGH ALL OPTIONS
7387 014514 CALLR .TCRLF ; END THE LINE AND EXIT
014514 000137 000000G JMP .TCRLF
7388 ;
7389 014520 WHRMRH:
7390 014520 ERROR$ MRH ; MUST READ HARDWARE
014520 012746 052030 MOV #^RMRH,-(SP)
014524 104400 TRAP TC.ERR
7391 ;
7392 014526 WHRCRH:
7393 014526 ERROR$ CRH ; CAN'T READ HARDWARE
014526 012746 012630 MOV #^RCRH,-(SP)
014532 104400 TRAP TC.ERR
7394 ;
7395
7396 001030 .PSECT DATA
7397
7398 001030 WHWTAB:
7399 001030 003711' 000000G .WORD WHHMS3,H.KMOS
7400 001034 003740' 000000G .WORD WHHMS4,H.KEXT
7401 001040 003765' 000000G .WORD WHHMS5,H.KCHN
7402 001044 004010' 000000G .WORD WHHMS6,H.KCAC
7403
7404 003653 .PSECT MESSAG
7405
7406 003653 WHHMS0:
7407 003653 040 113 114 .ASCIZ % KL10 S/N: %
003656 061 060 040
003661 123 057 116
003664 072 040 000
7408 003667 WHHMS1:
7409 003667 056 054 040 .ASCIZ %., MODEL %
003672 115 117 104
003675 105 114 040
003700 000
7410 003701 WHHMS2:
7411 003701 056 040 110 .ASCIZ %. HERTZ%
003704 105 122 124
003707 132 000
7412 003711 WHHMS3:
7413 003711 011 115 117 .ASCIZ % MOS MASTER OSCILLATOR%
003714 123 040 115
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 194-2
.WHRDW -- DISPLAY KL10 HARDWARE ENVIRONMENT 7910.18
003717 101 123 124
003722 105 122 040
003725 117 123 103
003730 111 114 114
003733 101 124 117
003736 122 000
7414 003740 WHHMS4:
7415 003740 011 105 130 .ASCIZ % EXTENDED ADDRESSING%
003743 124 105 116
003746 104 105 104
003751 040 101 104
003754 104 122 105
003757 123 123 111
003762 116 107 000
7416 003765 WHHMS5:
7417 003765 011 111 116 .ASCIZ % INTERNAL CHANNELS%
003770 124 105 122
003773 116 101 114
003776 040 103 110
004001 101 116 116
004004 105 114 123
004007 000
7418 004010 WHHMS6:
7419 004010 011 103 101 .ASCIZ % CACHE%
004013 103 110 105
004016 000
7420
7421 014534 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 195
.SFREC -- SET/CLEAR FAULT COMMAND
7423 .SBTTL .SFREC -- SET/CLEAR FAULT COMMAND
7424
7425 .ENABL LSB
7426
7427 014534 .SFREC::
7428 014534 CALL .CKEOC ;MUST HAVE E-O-C
014534 004737 000000G JSR PC,.CKEOC
7429 014540 113737 000000G 000000G MOVB .NOTSW,.KLFCF ;SET/CLEAR THE FLAG
7430 014546 000402 BR 20$
7431 ;
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 196
WHAT FAULT CONTINUATION COMMAND
7433 .SBTTL WHAT FAULT CONTINUATION COMMAND
7434
7435 014550 .WHREC::
7436 014550 CALL .CKEOC ;MUST HAVE E-O-C
014550 004737 000000G JSR PC,.CKEOC
7437 014554 20$:
7438 014554 012700 004017' MOV #WHRECM,R0 ;FAULT-CONTINUATION MESSAGE
7439 014560 CALL .TYMSG ;TYPE IT
014560 004737 000000G JSR PC,.TYMSG
7440 014564 012700 000000G MOV #ONMSG,R0 ;ASSUME IT'S ON
7441 014570 105737 000000G TSTB .KLFCF ;.KLCON = 0 = ON
7442 014574 001402 BEQ 10$ ;BIT IS OFF, F-C IS ON
7443 014576 012700 000000G MOV #OFFMSG,R0 ;BIT IS ON, F-C IS OFF
7444 014602 10$:
7445 014602 CALLR .TYLIN ;TYPE IT AND EXIT
014602 000137 000000G JMP .TYLIN
7446 ;
7447 .DSABL LSB
7448 004017 .PSECT MESSAG
7449
7450 004017 WHRECM:
7451 004017 106 101 125 .ASCIZ %FAULT-CONTINUATION: %
004022 114 124 055
004025 103 117 116
004030 124 111 116
004033 125 101 124
004036 111 117 116
004041 072 040 000
7452
7453 014606 .PSECT
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 197
.SCTAK -- THE "SET/CLEAR AUTO-TAKE" COMMAND
7455 .SBTTL .SCTAK -- THE "SET/CLEAR AUTO-TAKE" COMMAND
7456
7457 ;+
7458 ; THIS SECTION CONTAINS THE SET AND CLEAR OF THE AUTO-TAKE FLAG FOR
7459 ; PARSER.CMD. THE DEFAULT FOR THIS FLAG IS OFF.
7460 ;-
7461
7462 .ENABL LSB
7463
7464 014606 .SCTAK::
7465 014606 CALL .CKEOC ; GET END OF COMMAND
014606 004737 000000G JSR PC,.CKEOC
7466 014612 113737 000000G 000000G MOVB .NOTSW,.ATOTAK ; SET/CLEAR THE FLAG
7467 014620 000402 BR 10$ ; PRINT THE STATUS OF THE FLAG
SWCMD -- SET / CLEAR / WHAT COM MACRO M1113 10-NOV-81 17:48 PAGE 198
.WHTAK -- THE "WHAT AUTO-TAKE" COMMAND
7469 .SBTTL .WHTAK -- THE "WHAT AUTO-TAKE" COMMAND
7470
7471 014622 .WHTAK::
7472 014622 CALL .CKEOC ;GET EOC
014622 004737 000000G JSR PC,.CKEOC
7473 014626 10$:
7474 014626 012700 004044' MOV #ATOMSG,R0 ;AUTO-TAKE TEXT
7475 014632 CALL .TYMSG ; TYPE IT
014632 004737 000000G JSR PC,.TYMSG
7476 014636 012700 000000G MOV #ONMSG,R0 ; ASSUME ON
7477 014642 105737 000000G TSTB .ATOTAK ; IS IT
7478 014646 001402 BEQ 20$ ; BRANCH IF YES
7479 014650 012700 000000G MOV #OFFMSG,R0 ; PRINT OFF MESSAGE
7480 014654 20$:
7481 014654 CALLR .TYLIN ; PRINT AND EXIT
014654 000137 000000G JMP .TYLIN
7482 ;
7483 .DSABL LSB
7484 004044 .PSECT MESSAG
7485
7486 004044 ATOMSG:
7487 004044 101 125 124 .ASCIZ %AUTO-TAKE: %
004047 117 055 124
004052 101 113 105
004055 072 040 000
7488 014660 .PSECT
7489
7490 .TITLE SWCPC -- SET / CLEAR CLOCK AND PARITY MODULE 7608.19
7491
7492 .IDENT "005000"
7493
7494 ;
7495 ; COPYRIGHT (C) 1975, 1979 BY
7496 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
7497 ;
7498 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
7499 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
7500 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
7501 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
7502 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
7503 ;
7504 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
7505 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
7506 ; CORPORATION.
7507 ;
7508 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
7509 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
7510 ;
7511 ; MODULE: SET / CLEAR CLOCK AND PARITY
7512 ;
7513 ; VERSION: 05-00
7514 ;
7515 ; AUTHOR: R. BELANGER
7516 ;
7517 ; DATE: 7608.19
7518 ;
7519 ; THIS MODULE CONTAINS:
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 198-1
.WHTAK -- THE "WHAT AUTO-TAKE" COMMAND
7520 ;
7521 ; 1) SET / CLEAR CLOCK DISPATCH CODE
7522 ;
7523 ; MODIFIED BY A. PECKHAM 7612.10 TO DELETE REFERENCES TO .SECFL
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 199
.SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH 7608.19
7525 .SBTTL .SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH 7608.19
7526
7527 ;+
7528 ; .SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH.
7529 ; .SCFSS -- THE "SET / CLEAR FS-STOP" COMMAND DISPATCH.
7530 ; .SCPAR -- THE "SET / CLEAR PARITY-STOP" COMMAND DISPATCH.
7531 ;
7532 ; THESE SUBROUTINES WILL SET OR CLEAR THE SPECIFIED KL INTERNAL
7533 ; PARITY STOP ENABLE AS DIRECTED BY THE INPUT STREAM.
7534 ;
7535 ; INPUT ARGUMENTS:
7536 ;
7537 ; THE CURRENT PARITY STOP ENABLES ARE IN ".PSCWD"
7538 ; THE CURRENT CLOCK PARAMETERS ARE IN ".CLKWD"
7539 ;
7540 ; OUTPUT ARGUMENTS:
7541 ;
7542 ; THE NEW PARITY STOP ENABLES ARE IN ".PSCWD".
7543 ; THE NEW CLOCK PARAMETERS ARE IN ".CLKWD"
7544 ;
7545 ; ERROR CODES RETURNED:
7546 ;
7547 ; ILS -- ILLEGAL SEPARATOR CHARACTER.
7548 ;-
7549
7550 .ENABL LSB
7551
7552 014660 .SCCLK:: ; SET / CLEAR "CLOCK"
7553 014660 CALL .CKARG ; MUST HAVE AN ARGUMENT
014660 004737 000000G JSR PC,.CKARG
7554 014664 012703 001050' MOV #SCCLKT,R3 ; TABLE POINTER TO R3
7555 014670 000415 BR 10$ ; DO COMMON CODE
7556 ;
7557 014672 .SCFSS:: ; SET / CLEAR "FS-STOP"
7558 014672 CALL .CKEOC ; MUST BE E-O-C
014672 004737 000000G JSR PC,.CKEOC
7559 014676 012703 001062' MOV #SCPART,R3 ; TABLE POINTER TO R3
7560 014702 CALL 40$ ; READ THE CURRENT PARAMETERS
014702 004737 015034' JSR PC,40$
7561 014706 CALL .SCPFS ; SET THE CONTROL WORD UP
014706 004737 015322' JSR PC,.SCPFS
7562 014712 000425 BR 20$ ; AND GO SET IT
7563 ;
7564 014714 .SCPST:: ; SET / CLEAR "PARITY-STOP"
7565 014714 CALL .CKARG ; MUST HAVE AN ARGUMENT
014714 004737 000000G JSR PC,.CKARG
7566 014720 012703 001062' MOV #SCPART,R3 ; TABLE POINTER TO R3
7567 ; BR 10$ ; DO COMMON CODE
7568 ;
7569
7570 ; [CONTINUED ON THE FOLLOWING PAGE]
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 200
.SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH 7608.19
7572 ; [CONTINUED FROM THE PREVIOUS PAGE]
7573
7574 014724 10$:
7575 014724 CALL 40$ ; READ THE CURRENT PARAMETERS
014724 004737 015034' JSR PC,40$
7576 014730 011300 MOV (R3),R0 ; TABLE POINTER TO R0
7577 014732 CALL .TSCAN ; SCAN THE TABLE
014732 004737 000000G JSR PC,.TSCAN
7578 014736 CALL @2(R0) ; DO WHAT IT SAYS TO
014736 004770 000002 JSR PC,@2(R0)
7579 014742 111504 MOVB (R5),R4 ; GET THE LAST CHARACTER INTO R4
7580 014744 132764 000010 000000G BITB #CH.EOC,.CHTAB(R4)
7581 014752 001005 BNE 20$ ; E-O-C -- GO SET PARITY STOPS
7582 014754 122704 000054 CMPB #.COMMA,R4 ; NOT E-O-C -- IS IT A <COMMA>?
7583 014760 001037 BNE SCPILS ; NO -- GIVE "ILS" ERROR
7584 014762 105725 TSTB (R5)+ ; YES -- GET OVER THE COMMA
7585 014764 000757 BR 10$ ; AND GO ON
7586 ;
7587 014766 20$:
7588 014766 005723 TST (R3)+ ; ADVANCE THE POINTER
7589 014770 PUSH R1 ; SAVE NEW CONTROL WORD
014770 010146 MOV R1,-(SP)
7590 014772 010601 MOV SP,R1 ; .POINT TO THE ENABLE WORD
7591 014774 PUSH .KLFLG ; .SAVE ".KLFLG"
014774 013746 000000G MOV .KLFLG,-(SP)
7592 015000 CALL .KLHLT ; ..STOP THE KL
015000 004737 000000G JSR PC,.KLHLT
7593 015004 CALL @(R3)+ ; ..LOAD THE PARAMETERS
015004 004733 JSR PC,@(R3)+
7594 015006 POP .SVKLF ; ..SET UP ".SVKLF"
015006 012637 000000G MOV (SP)+,.SVKLF
7595 015012 CALL .RDCPP ; .READ BACK WHAT WE WROTE
015012 004737 000000G JSR PC,.RDCPP
7596 015016 023326 CMP @(R3)+,(SP)+ ; .DID WE READ WHAT WE WROTE
7597 015020 001401 BEQ 30$ ; YES -- GO ON
7598 015022 CALLR @(R3)+ ; NO -- GIVE THE PROPER ERROR
015022 000133 JMP @(R3)+
7599 ;
7600 015024 30$:
7601 015024 005723 TST (R3)+ ; GET OVER THE ERROR POINTER
7602 015026 CALL .KLRST ; RESTART THE KL
015026 004737 000000G JSR PC,.KLRST
7603 015032 CALLR @(R3)+ ; DISPLAY CURRENT PARAMETERS AND EXIT
015032 000133 JMP @(R3)+
7604 ;
7605
7606 ; [CONTINUED ON THE FOLLOWING PAGE]
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 201
.SCCLK -- THE "SET / CLEAR CLOCK" COMMAND DISPATCH 7608.19
7608 ; [CONTINUED FROM THE PREVIOUS PAGE]
7609
7610 015034 40$:
7611 015034 CALL .CKRUN ; INSURE WE CAN DO THIS
015034 004737 000000G JSR PC,.CKRUN
7612 015040 CALL .STPKL ; STOP THE KL10
015040 004737 000000G JSR PC,.STPKL
7613 015044 CALL .RDCPP ; READ CLOCK AND PARITY
015044 004737 000000G JSR PC,.RDCPP
7614 015050 017301 000004 MOV @4(R3),R1 ; DESIRED CONTROL WORD TO R1
7615 015054 CALLR .RSTKL ; RESTART THE KL AND EXIT
015054 000137 000000G JMP .RSTKL
7616 ;
7617
7618 .DSABL LSB
7619
7620 015060 SCPILS:
7621 015060 ERROR$ ILS ; ERROR -- ILLEGAL SEPARATOR CHARACTER
015060 012746 035063 MOV #^RILS,-(SP)
015064 104400 TRAP TC.ERR
7622 ;
7623 015066 SCPSCF:
7624 015066 ERROR$ SCF ; ERROR -- SET CLOCK FAILED
015066 012746 073476 MOV #^RSCF,-(SP)
015072 104400 TRAP TC.ERR
7625 ;
7626 015074 SCPSPF:
7627 015074 ERROR$ SPF ; ERROR -- SET PARITY FAILED
015074 012746 074506 MOV #^RSPF,-(SP)
015100 104400 TRAP TC.ERR
7628 ;
7629
7630 001050 .PSECT DATA
7631
7632 001050 SCCLKT:
7633 001050 000000G .WORD .SCCTB ; TABLE TO SCAN
7634 001052 000000G .WORD .LDCLK ; LOAD ROUTINE
7635 001054 000000G .WORD .CLKWD ; PARAMETER WORD
7636 001056 015066' .WORD SCPSCF ; ERROR ROUTINE
7637 001060 015364' .WORD .WHTCA ; DISPLAY ROUTINE
7638 001062 SCPART:
7639 001062 000000G .WORD .SCPTB ; TABLE TO SCAN
7640 001064 000000G .WORD .LDPAR ; LOAD ROUTINE
7641 001066 000000G .WORD .PSCWD ; PARAMETER WORD
7642 001070 015074' .WORD SCPSPF ; ERROR ROUTINE
7643 001072 015566' .WORD .WHTPA ; DISPLAY ROUTINE
7644
7645 015102 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 202
.SCCRF -- SET / CLEAR "CLOCK <OBJECT>" 7603.09
7647 .SBTTL .SCCRF -- SET / CLEAR "CLOCK <OBJECT>" 7603.09
7648
7649 .ENABL LSB
7650
7651 015102 .SCCLN:: ; SET / CLEAR CLOCK "NORMAL"
7652 015102 005001 CLR R1 ; CLEAR THE PARAMETER WORD
7653 015104 .SCCRF:: ; SET / CLEAR CLOCK "FULL"
7654 015104 005002 CLR R2 ; "FULL" CLOCK RATE
7655 015106 000410 BR 10$ ; DO COMMON CODE
7656 ;
7657 015110 .SCCRH:: ; SET / CLEAR CLOCK "HALF"
7658 015110 012702 000001 MOV #CR.HLF,R2 ; "HALF" CLOCK RATE
7659 015114 000405 BR 10$ ; DO COMMON CODE
7660 ;
7661 015116 .SCCRQ:: ; SET / CLEAR CLOCK "QUARTER"
7662 015116 012702 000002 MOV #CR.QTR,R2 ; "QUARTER" CLOCK RATE
7663 015122 000402 BR 10$ ; DO COMMON CODE
7664 ;
7665 015124 .SCCRS:: ; SET / CLEAR CLOCK "SLOW"
7666 015124 012702 000003 MOV #CR.SLO,R2 ; "SLOW" CLOCK RATE
7667 015130 10$:
7668 015130 042701 000003 BIC #CR.ALL,R1 ; CLEAR OUT THE OLD CLOCK RATE
7669 015134 000422 BR 40$ ; AND GO DO CLEAR CHECK
7670 ;
7671 015136 .SCCSE:: ; SET / CLEAR CLOCK "EXTERNAL"
7672 015136 012700 004060' MOV #CCEMSG,R0 ; ASK "ARE YOU SURE"
7673 015142 CALL .TYMSG ; PRINT IT
015142 004737 000000G JSR PC,.TYMSG
7674 015146 CALL .YESNO ; ASK "YES OR NO"
015146 004737 015726' JSR PC,.YESNO
7675 015152 103403 BCS 20$ ; SAID "NO" IF CC-C IS SET
7676 015154 012702 000010 MOV #CS.EXT,R2 ; "EXTERNAL" CLOCK SOURCE
7677 015160 000406 BR 30$ ; DO COMMNON CODE
7678 ;
7679 015162 20$:
7680 015162 000177 000000G JMP @.STRTV ; RESTART THE PARSER
7681 ;
7682 015166 .SCCSI:: ; SET / CLEAR CLOCK "INTERNAL"
7683 015166 005002 CLR R2 ; "INTERNAL" CLOCK SOURCE
7684 015170 000402 BR 30$ ; DO COMMON CODE
7685 ;
7686 015172 .SCCSM:: ; SET / CLEAR CLOCK "MARGIN"
7687 015172 012702 000004 MOV #CS.MGN,R2 ; "MARGIN" CLOCK SOURCE
7688 015176 30$:
7689 015176 042701 000014 BIC #CS.ALL,R1 ; CLEAR OUT THE OLD CLOCK SOURCE
7690 015202 40$:
7691 015202 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7692 015206 001002 BNE 50$ ; YES -- JUST EXIT
7693 015210 050201 BIS R2,R1 ; NO -- SET THE NEW CLOCK PARAMETERS
7694 015212 000401 BR 60$ ; AND EXIT
7695 ;
7696 015214 50$:
7697 015214 040201 BIC R2,R1 ; CLEAR THE NEW CLOCK PARAMETERS
7698 015216 60$:
7699 015216 RETURN ; EXIT
015216 000207 RTS PC
7700
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 202-1
.SCCRF -- SET / CLEAR "CLOCK <OBJECT>" 7603.09
7701 .DSABL LSB
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 203
.SCCRF -- SET / CLEAR "CLOCK <OBJECT>" 7603.09
7703 .ENABL LSB
7704
7705 015220 .SCCEC:: ; SET / CLEAR CLOCK "CRAM"
7706 015220 012702 002000 MOV #CD.CRC,R2 ; "CRAM" CLOCK ENABLE
7707 015224 000405 BR 10$ ; DO COMMON CODE
7708 ;
7709 015226 .SCCED:: ; SET / CLEAR CLOCK "DATA-PATH"
7710 015226 012702 001000 MOV #CD.DPC,R2 ; "DATA-PATH" CLOCK ENABLE
7711 015232 000402 BR 10$ ; DO COMMON CODE
7712 ;
7713 015234 .SCCEE:: ; SET / CLEAR CLOCK "CONTROL"
7714 015234 012702 000400 MOV #CD.CLC,R2 ; "CONTROL" CLOCK ENABLE
7715 015240 10$:
7716 015240 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7717 015244 001402 BEQ 20$ ; NO -- SET THE NEW CLOCK ENABLE
7718 015246 050201 BIS R2,R1 ; YES -- SET THE DISABLE
7719 015250 000401 BR 30$ ; AND EXIT
7720 ;
7721 015252 20$:
7722 015252 040201 BIC R2,R1 ; CLEAR THE DISABLE
7723 015254 30$:
7724 015254 RETURN ; AND EXIT
015254 000207 RTS PC
7725
7726 .DSABL LSB
7727
7728 004060 .PSECT MESSAG
7729
7730 004060 CCEMSG:
7731 004060 007 177 177 .ASCII <007><177><177><007><177><177><007><177><177>
004063 007 177 177
004066 007 177 177
7732 004071 040 103 117 .ASCIZ % CONFIRM EXTERNAL CLOCK SOURCE%
004074 116 106 111
004077 122 115 040
004102 105 130 124
004105 105 122 116
004110 101 114 040
004113 103 114 117
004116 103 113 040
004121 123 117 125
004124 122 103 105
004127 000
7733
7734 015256 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 204
.SCPAR -- SET / CLEAR PARITY-STOP "<OBJECT>" 7603.08
7736 .SBTTL .SCPAR -- SET / CLEAR PARITY-STOP "<OBJECT>" 7603.08
7737
7738 .ENABL LSB
7739
7740 015256 .SCPAL:: ; SET CLEAR PARITY-STOP "ALL"
7741 015256 012702 001416 MOV #PS.NRM,R2 ; NORMAL PARITY STOPS
7742 015262 000421 BR 10$ ; DO COMMON CODE
7743 ;
7744 015264 .SCPAR:: ; SET / CLEAR PARITY-STOP "AR"
7745 015264 012702 001000 MOV #AP.ARP,R2 ; AR / ARX PARITY STOP
7746 015270 000416 BR 10$ ; DO COMMON CODE
7747 ;
7748 015272 .SCPCR:: ; SET / CLEAR PARITY-STOP "CRAM"
7749 015272 012702 000004 MOV #IP.CRP,R2 ; CRAM PARITY STOP
7750 015276 000413 BR 10$ ; DO COMMON CODE
7751 ;
7752 015300 .SCPDR:: ; SET / CLEAR PARITY-STOP "DRAM"
7753 015300 012702 000002 MOV #IP.DRP,R2 ; DRAM PARITY STOP
7754 015304 000410 BR 10$ ; DO COMMON CODE
7755 ;
7756 015306 .SCPEN:: ; SET / CLEAR PARITY-STOP "ENABLE"
7757 015306 012702 000400 MOV #AP.EIP,R2 ; PARITY STOP ENABLE
7758 015312 000405 BR 10$ ; DO COMMON CODE
7759 ;
7760 015314 .SCPFM:: ; SET / CLEAR PARITY-STOP "FM"
7761 015314 012702 000010 MOV #IP.FMP,R2 ; FAST MEMORY PARITY STOP
7762 015320 000402 BR 10$ ; DO COMMON CODE
7763 ;
7764 015322 .SCPFS:: ; SET / CLEAR PARITY-STOP "FS-STOP"
7765 015322 012702 000001 MOV #IP.FSS,R2 ; FS STOP
7766 015326 10$:
7767 015326 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
7768 015332 001402 BEQ 20$ ; NO -- GO ON
7769 015334 040201 BIC R2,R1 ; YES -- CLEAR THE ENABLE
7770 015336 RETURN ; EXIT
015336 000207 RTS PC
7771 015340 20$:
7772 015340 052701 000400 BIS #AP.EIP,R1 ; ENABLE THE ERROR STOPS
7773 015344 050201 BIS R2,R1 ; SET THE ENABLES
7774 015346 RETURN ; TO CALLER
015346 000207 RTS PC
7775
7776 .DSABL LSB
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 205
.WHTCL -- THE "WHAT CLOCK" COMMAND 7608.17
7778 .SBTTL .WHTCL -- THE "WHAT CLOCK" COMMAND 7608.17
7779
7780 015350 .WHTCL::
7781 015350 CALL .STPKL ; STOP THE KL
015350 004737 000000G JSR PC,.STPKL
7782 015354 CALL .RDCPP ; READ THE CLOCK BOARD
015354 004737 000000G JSR PC,.RDCPP
7783 015360 CALL .RSTKL ; RESTART THE KL
015360 004737 000000G JSR PC,.RSTKL
7784 015364 .WHTCA::
7785 015364 PUSH .CLKWD ; SAVE THE WORD ON THE STACK
015364 013746 000000G MOV .CLKWD,-(SP)
7786 015370 012700 004130' MOV #WCMSG0,R0 ; .HEADER MESSAGE
7787 015374 CALL .TYLIN ; .TYPE IT
015374 004737 000000G JSR PC,.TYLIN
7788 015400 012700 004154' MOV #WCMSG1,R0 ; .ENABLES
7789 015404 CALL .TYMSG ; .TYPE IT
015404 004737 000000G JSR PC,.TYMSG
7790 015410 012701 001074' MOV #CLDSTB,R1 ; .TABLE POINTER TO R1
7791 015414 012702 000003 MOV #^D3,R2 ; .ITERATION COUNT TO R2
7792 015420 011603 MOV (SP),R3 ; .CLOCK WORD TO R3
7793 015422 042703 174377 BIC #^C<CD.ALL>,R3 ; .MASK OUT THE DISABLES
7794 015426 001005 BNE 10$ ; .GO PRINT DISABLES
7795 015430 012700 004212' MOV #NONMSG,R0 ; .NO DISABLES SET -- SAY SO
7796 015434 CALL .TYLIN ; .TYPE IT
015434 004737 000000G JSR PC,.TYLIN
7797 015440 000414 BR 30$ ; .AND GO ON
7798 ;
7799 015442 10$:
7800 015442 012100 MOV (R1)+,R0 ; .MESSAGE POINTER TO R0
7801 015444 032103 BIT (R1)+,R3 ; .IS THE DISABLE ON??
7802 015446 001406 BEQ 20$ ; .NO -- FORGET IT
7803 015450 CALL .TYMSG ; .YES -- SAY SO
015450 004737 000000G JSR PC,.TYMSG
7804 015454 CALL .TYCOM ; .TYPE A COMMA
015454 004737 000000G JSR PC,.TYCOM
7805 015460 CALL .TYSPC ; .TYPE A <SPACE>
015460 004737 000000G JSR PC,.TYSPC
7806 015464 20$:
7807 015464 077212 SOB R2,10$ ; .LOOP TILL DONE
7808 015466 CALL .TCRLF ; .END THE LINE
015466 004737 000000G JSR PC,.TCRLF
7809
7810 ; [CONTINUED ON THE FOLLOWING PAGE]
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 206
.WHTCL -- THE "WHAT CLOCK" COMMAND 7608.17
7812 ; [CONTINUED FROM THE PREVIOUS PAGE]
7813
7814 015472 30$:
7815 015472 012700 004170' MOV #WCMSG2,R0 ; .SOURCE MESSAGE
7816 015476 CALL .TYMSG ; .PRINT IT
015476 004737 000000G JSR PC,.TYMSG
7817 015502 011601 MOV (SP),R1 ; .CLOCK CONTROL WORD TO R1
7818 015504 042701 177763 BIC #^C<CS.ALL>,R1 ; .FLUSH JUNK
7819 015510 006201 ASR R1 ; .MAKE AN INDEX OF IT
7820 015512 016100 001110' MOV CLSRTB(R1),R0 ; .SOURCE NAME TO R0
7821 015516 CALL .TYLIN ; .PRINT IT
015516 004737 000000G JSR PC,.TYLIN
7822 015522 012700 004202' MOV #WCMSG3,R0 ; .RATE MESSAGE
7823 015526 CALL .TYMSG ; .PRINT IT
015526 004737 000000G JSR PC,.TYMSG
7824 015532 POP R1 ; .CLOCK CONTROL WORD TO R1
015532 012601 MOV (SP)+,R1
7825 015534 042701 177774 BIC #^C<CR.ALL>,R1 ; FLUSH JUNK
7826 015540 006301 ASL R1 ; MAKE AN INDEX FROM IT
7827 015542 016100 001120' MOV CLRTTB(R1),R0 ; RATE NAME TO R0
7828 015546 CALLR .TYLIN ; PRINT IT AND EXIT
015546 000137 000000G JMP .TYLIN
7829 ;
7830
7831 001074 .PSECT DATA
7832
7833 001074 CLDSTB:
7834 001074 000000G .WORD CRMMSG
7835 001076 002000 .WORD CD.CRC
7836 001100 000000G .WORD DPTMSG
7837 001102 001000 .WORD CD.DPC
7838 001104 000000G .WORD CTLMSG
7839 001106 000400 .WORD CD.CLC
7840 001110 CLSRTB:
7841 001110 000000G .WORD INTMSG
7842 001112 000000G .WORD MGNMSG
7843 001114 000000G .WORD EXTMSG
7844 001116 000000G .WORD MGNMSG
7845 001120 CLRTTB:
7846 001120 000000G .WORD FULMSG
7847 001122 000000G .WORD HLFMSG
7848 001124 000000G .WORD QTRMSG
7849 001126 000000G .WORD SLOMSG
7850
7851 015552 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 207
.WHTCL -- THE "WHAT CLOCK" COMMAND 7608.17
7853 004130 .PSECT MESSAG
7854
7855 004130 WCMSG0:
7856 004130 113 114 040 .ASCIZ %KL CLOCK PARAMETERS%
004133 103 114 117
004136 103 113 040
004141 120 101 122
004144 101 115 105
004147 124 105 122
004152 123 000
7857 004154 WCMSG1:
7858 004154 040 104 111 .ASCIZ % DISABLED: %
004157 123 101 102
004162 114 105 104
004165 072 040 000
7859 004170 WCMSG2:
7860 004170 040 123 117 .ASCIZ % SOURCE: %
004173 125 122 103
004176 105 072 040
004201 000
7861 004202 WCMSG3:
7862 004202 040 122 101 .ASCIZ % RATE: %
004205 124 105 072
004210 040 000
7863 004212 NONMSG:
7864 004212 116 117 116 .ASCIZ %NONE%
004215 105 000
7865
7866 015552 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 208
.WHTPS -- THE "WHAT PARITY-STOP" COMMAND 7608.19
7868 .SBTTL .WHTPS -- THE "WHAT PARITY-STOP" COMMAND 7608.19
7869
7870 015552 .WHTPS::
7871 015552 CALL .STPKL ; STOP THE KL
015552 004737 000000G JSR PC,.STPKL
7872 015556 CALL .RDCPP ; READ THE CLOCK BOARD
015556 004737 000000G JSR PC,.RDCPP
7873 015562 CALL .RSTKL ; RESTART THE KL
015562 004737 000000G JSR PC,.RSTKL
7874 015566 .WHTPA::
7875 015566 PUSH .PSCWD ; SAVE THE WORD ON THE STACK
015566 013746 000000G MOV .PSCWD,-(SP)
7876 015572 012700 004217' MOV #WPMSG0,R0 ; .HEADER MESSAGE
7877 015576 CALL .TYLIN ; .TYPE IT
015576 004737 000000G JSR PC,.TYLIN
7878 015602 012700 004251' MOV #WPMSG1,R0 ; .ENABLE MESSAGE
7879 015606 CALL .TYMSG ; .TYPE IT
015606 004737 000000G JSR PC,.TYMSG
7880 015612 012700 000000G MOV #ONMSG,R0 ; .ASSUME THAT IT IS ON
7881 015616 032716 000400 BIT #AP.EIP,(SP) ; .IS THE ENABLE BIT ON?
7882 015622 001002 BNE 10$ ; .YES -- SAY SO
7883 015624 012700 000000G MOV #OFFMSG,R0 ; .NO -- CHANGE MESSAGE
7884 015630 10$:
7885 015630 CALL .TYLIN ; .TYPE IT
015630 004737 000000G JSR PC,.TYLIN
7886 015634 012700 004277' MOV #WPMSG2,R0 ; .PARITY STOPS
7887 015640 CALL .TYMSG ; .TYPE IT
015640 004737 000000G JSR PC,.TYMSG
7888 015644 042716 000400 BIC #AP.EIP,(SP) ; .CLEAR THE ENABLE BIT
7889 015650 001005 BNE 20$ ; .GO ON IF BITS ARE THERE
7890 015652 012700 004212' MOV #NONMSG,R0 ; .NONE THERE -- SAY SO
7891 015656 CALL .TYMSG ; .TYPE IT
015656 004737 000000G JSR PC,.TYMSG
7892 015662 000416 BR 50$ ; .AND EXIT
7893 ;
7894
7895 ; [CONTINUED ON THE FOLLOWING PAGE]
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 209
.WHTPS -- THE "WHAT PARITY-STOP" COMMAND 7608.19
7897 ; [CONTINUED FROM THE PREVIOUS PAGE]
7898
7899 015664 20$:
7900 015664 012701 001130' MOV #PSENTB,R1 ; .TABLE POINTER TO R1
7901 015670 012702 000005 MOV #^D5,R2 ; .ITERATION COUNT TO R2
7902 015674 30$:
7903 015674 012100 MOV (R1)+,R0 ; .MESSAGE POINTER TO R0
7904 015676 032116 BIT (R1)+,(SP) ; .IS THE BIT ON?
7905 015700 001406 BEQ 40$ ; .NO -- GO ON
7906 015702 CALL .TYMSG ; .YES -- SAY SO
015702 004737 000000G JSR PC,.TYMSG
7907 015706 CALL .TYCOM ; .TYPE A COMMA
015706 004737 000000G JSR PC,.TYCOM
7908 015712 CALL .TYSPC ; .PRINT A <SPACE>
015712 004737 000000G JSR PC,.TYSPC
7909 015716 40$:
7910 015716 077212 SOB R2,30$ ; .LOOP TILL DONE
7911 015720 50$:
7912 015720 005726 TST (SP)+ ; .CLEAR THE STACK
7913 015722 CALLR .TCRLF ; END THE LINE AND EXIT
015722 000137 000000G JMP .TCRLF
7914 ;
7915
7916 001130 .PSECT DATA
7917
7918 001130 PSENTB:
7919 001130 000000G .WORD ARMSG
7920 001132 001000 .WORD AP.ARP
7921 001134 000000G .WORD CRMMSG
7922 001136 000004 .WORD IP.CRP
7923 001140 000000G .WORD DRMMSG
7924 001142 000002 .WORD IP.DRP
7925 001144 000000G .WORD FMMSG
7926 001146 000010 .WORD IP.FMP
7927 001150 000000G .WORD FSSMSG
7928 001152 000001 .WORD IP.FSS
7929
7930 015726 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 210
.WHTPS -- THE "WHAT PARITY-STOP" COMMAND 7608.19
7932 004217 .PSECT MESSAG
7933
7934 004217 WPMSG0:
7935 004217 113 114 040 .ASCIZ %KL PARITY STOP PARAMETERS%
004222 120 101 122
004225 111 124 131
004230 040 123 124
004233 117 120 040
004236 120 101 122
004241 101 115 105
004244 124 105 122
004247 123 000
7936 004251 WPMSG1:
7937 004251 040 120 101 .ASCIZ % PARITY STOP ENABLE: %
004254 122 111 124
004257 131 040 123
004262 124 117 120
004265 040 105 116
004270 101 102 114
004273 105 072 040
004276 000
7938 004277 WPMSG2:
7939 004277 040 120 101 .ASCIZ % PARITY STOPS: %
004302 122 111 124
004305 131 040 123
004310 124 117 120
004313 123 072 040
004316 000
7940 015726 .PSECT
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 211
.YESNO -- SUBROUTINE TO ASK "YES OR NO" 7603.22
7942 .SBTTL .YESNO -- SUBROUTINE TO ASK "YES OR NO" 7603.22
7943
7944 ;+
7945 ; .YESNO -- SUBROUTINE TO ASK "YES OR NO".
7946 ;
7947 ; THIS SUBROUTINE WILL ASK FOR A CONFIMATION TO A QUESTION, AND RETURN
7948 ; THE STATE OF THE RESPONSE IN CC-C ON RETURN. IF THE RESPONSE IS OTHER
7949 ; THAN A "YES" OR A "NO", THE QUESTION IS REITERATED.
7950 ;
7951 ; INPUT ARGUMENTS:
7952 ;
7953 ; NONE.
7954 ;
7955 ; OUTPUT ARGUMENTS:
7956 ;
7957 ; IF THE RESPONSE WAS "YES" CC-C IS CLEAR.
7958 ; IF THE RESPONSE WAS "NO" CC-C IS SET.
7959 ;
7960 ; ERROR CODES RETURNED:
7961 ;
7962 ; NONE.
7963 ;-
7964
7965 015726 .YESNO::
7966 015726 PUSH <R0,R1,R5> ; SAVE CALLERS REGISTERS
015726 010046 MOV R0,-(SP)
015730 010146 MOV R1,-(SP)
015732 010546 MOV R5,-(SP)
7967 015734 10$:
7968 015734 012700 004317' MOV #YONMSG,R0 ; ...MESSAGE POINTER TO R0
7969 015740 CALL .TYMSG ; ...PRINT IT
015740 004737 000000G JSR PC,.TYMSG
7970 015744 CALL .TYOUT ; ...FORCE IT OUT
015744 004737 000000G JSR PC,.TYOUT
7971 015750 012701 000000G MOV #.CIBFR,R1 ; ...POINT TO THE INPUT BUFFER
7972 015754 CALL .GTLIN ; ...READ THE RESPONSE
015754 004737 000000G JSR PC,.GTLIN
7973 015760 001765 BEQ 10$ ; ...TRY AGAIN IF NO REAL RESPONSE
7974 015762 010105 MOV R1,R5 ; ...BUFFER POINTER TO R5
7975 015764 012700 004336' MOV #YESMSG,R0 ; ...EXPECT "YES"
7976 015770 CALL .SSCAN ; ...SCAN FOR IT
015770 004737 000000G JSR PC,.SSCAN
7977 015774 103012 BCC 30$ ; ...WE GOT IT -- EXIT
7978 015776 010105 MOV R1,R5 ; ...SET UP BUFFER POINTER
7979 016000 012700 004342' MOV #NOMSG,R0 ; ...TRY FOR "NO"
7980 016004 CALL .SSCAN ; ...SCAN THE SYMBOL
016004 004737 000000G JSR PC,.SSCAN
7981 016010 103003 BCC 20$ ; ...WE GOT IT
7982 016012 CALL .TCRLF ; ...DID'NT GET EITHER
016012 004737 000000G JSR PC,.TCRLF
7983 016016 000746 BR 10$ ; ...SO TRY AGAIN
7984 ;
7985
7986 ; [CONTINUED ON THE FOLLOWING PAGE]
SWCPC -- SET / CLEAR CLOCK AND MACRO M1113 10-NOV-81 17:48 PAGE 212
.YESNO -- SUBROUTINE TO ASK "YES OR NO" 7603.22
7988 ; [CONTINUED FROM THE PREVIOUS PAGE]
7989
7990 016020 20$:
7991 016020 000261 SEC ; ...SET CC-C TO SAY "NO"
7992 016022 30$:
7993 016022 POP <R5,R1,R0> ; ...RESTORE REGISTERS
016022 012605 MOV (SP)+,R5
016024 012601 MOV (SP)+,R1
016026 012600 MOV (SP)+,R0
7994 016030 RETURN ; ...TO CALLER
016030 000207 RTS PC
7995
7996 004317 .PSECT MESSAG
7997
7998 004317 YONMSG:
7999 004317 040 050 131 .ASCIZ % (YES OR NO)? %
004322 105 123 040
004325 117 122 040
004330 116 117 051
004333 077 040 000
8000 004336 YESMSG:
8001 004336 131 105 123 .ASCIZ %YES%
004341 000
8002 004342 NOMSG:
8003 004342 116 117 000 .ASCIZ %NO%
8004
8005 016032 .PSECT
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 213
.YESNO -- SUBROUTINE TO ASK "YES OR NO" 7603.22
8007 .TITLE SWDAT -- SET/CLEAR/WHAT "DATE" COMMAND MODULE 7703.04
8008
8009 .IDENT "006060"
8010
8011 ;
8012 ; COPYRIGHT (C) 1975, 1979 BY
8013 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
8014 ;
8015 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
8016 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
8017 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
8018 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
8019 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
8020 ;
8021 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
8022 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
8023 ; CORPORATION.
8024 ;
8025 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
8026 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
8027 ;
8028 ; MODULE: "DATE" SUPPORT
8029 ;
8030 ; VERSION: 06-06
8031 ;
8032 ; AUTHOR: R. BELANGER
8033 ;
8034 ; DATE: 7703.04
8035 ;
8036 ; THIS MODULE CONTAINS:
8037 ;
8038 ; 1) SET CLEAR DATE CODE
8039 ; 2) WHAT DATE CODE
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 214
.SCDAT -- "SET DATE" COMMAND 7703.04
8041 .SBTTL .SCDAT -- "SET DATE" COMMAND 7703.04
8042
8043 ;+
8044 ; .SCDAT -- THE "SET DATE" COMMAND
8045 ;
8046 ; THIS SUBROUTINE WILL ACCEPT A DATE AND TIME AS THE SYSTEM DATE AND TIME
8047 ; IF AND ONLY IF THE SYSTEM DATE VALID FLAG IS OFF.
8048 ;
8049 ; INPUT ARGUMENTS:
8050 ;
8051 ; NONE.
8052 ;
8053 ; OUTPUT ARGUMENTS:
8054 ;
8055 ; THE SYSTEM DATE IS SET AS SPECIFIED
8056 ;
8057 ; ERROR CODES RETURNED:
8058 ;
8059 ; CDI -- CLEAR DATE ILLEGAL
8060 ; DAV -- DATE ALREADY VALID
8061 ; NDI -- NULL DATE ILLEGAL
8062 ; NTI -- NULL TIME ILLEGAL
8063 ;-
8064
8065 .MCALL GTIM$S,.INH6,.ENB6
8066
8067 016032 .SCDAT::
8068 016032 032737 000000G 000002G BIT #EF.PR1,.COMEF+2 ; IS PRIMARY PROTOCOL RUNNING??
8069 016040 001133 BNE SCDCDI ; YES -- GIVE "CDI" ERROR
8070 016042 005737 000000G TST .NOTSW ; NO -- IS THIS A "CLEAR"??
8071 016046 001404 BEQ 10$ ; NO -- GO ON
8072 016050 005037 000000G CLR .DATE3 ; YES -- SET DATE INVALID
8073 016054 005037 000000G CLR .YEAR ; AND ALLOW "FUNNY" DATES
8074 016060 10$:
8075 016060 005737 000000G TST .DATE3 ; IS TIME ALREADY VALID?
8076 016064 001124 BNE SCDDAV ; YES -- GIVE "DAV" ERROR
8077 016066 CALL .CKEOC ; NO -- MUST HAVE E-O-C
016066 004737 000000G JSR PC,.CKEOC
8078 016072 005046 CLR -(SP) ; CLEAR BUFFER ON STACK
8079 016074 005046 CLR -(SP) ; .SO
8080 016076 010600 MOV SP,R0 ; ..POINT TO IT
8081 016100 CALL .GTDAT ; ..READ THE DATE
016100 004737 005600' JSR PC,.GTDAT
8082 016104 001517 BEQ SCDNDI ; ..ERROR IF NULL
8083 016106 005046 CLR -(SP) ; ..SPACE FOR TIME
8084 016110 010600 MOV SP,R0 ; ...POINT TO IT
8085 016112 CALL .GTTIM ; ...READ THE TIME
016112 004737 006244' JSR PC,.GTTIM
8086 016116 001515 BEQ SCDNTI ; ...ERROR IF NULL
8087 016120 116600 000002 MOVB 2(SP),R0 ; ...YEAR TO R0
8088 016124 162700 000114 SUB #^D76,R0 ; ...MINUS 1976
8089 016130 010002 MOV R0,R2 ; ...SAVE RESULT IN R2
8090 016132 001406 BEQ 20$ ; ...GO ON IF .EQ. 0
8091 016134 012701 000555 MOV #^D365,R1 ; ...CONVERT TO DAYS
8092 016140 CALL $MUL ; ...SO
016140 004737 000000G JSR PC,$MUL
8093 016144 010100 MOV R1,R0 ; ...RESULT TO R0
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 214-1
.SCDAT -- "SET DATE" COMMAND 7703.04
8094 016146 005200 INC R0 ; ...PLUS 1 FOR 1976
8095 016150 20$:
8096 016150 116601 000003 MOVB 3(SP),R1 ; ...MONTH TO R1
8097 016154 006301 ASL R1 ; ...MAKE A WORD INDEX
8098 016156 066100 001162' ADD CDMTB-2(R1),R0 ; ...ADD DAYS TO THIS MONTH
8099 016162 005702 TST R2 ; ...IS THIS 1976?
8100 016164 001412 BEQ 40$ ; ...YES -- GO ON
8101 016166 132702 000003 BITB #3,R2 ; ...NO -- IS THIS A LEAP YEAR?
8102 016172 001004 BNE 30$ ; ...NO -- GO ON
8103 016174 022701 000002 CMP #2,R1 ; ...YES -- BEYOND FEBRUARY?
8104 016200 002401 BLT 30$ ; ...YES -- GO ON
8105 016202 005302 DEC R2 ; ...NO -- SUBTRACT ONE FOR THIS YEAR
8106 016204 30$:
8107 016204 006202 ASR R2 ; ...DIVIDE DIFFERENCE BY 4
8108 016206 006202 ASR R2 ; ...SO
8109 016210 060200 ADD R2,R0 ; ...ADD OFFSET FOR LEAP YEARS
8110 016212 40$:
8111 016212 116601 000004 MOVB 4(SP),R1 ; ...DATE TO R1
8112 016216 005301 DEC R1 ; ...MINUS 1
8113 016220 060100 ADD R1,R0 ; ...ADD IT IN
8114 016222 012701 000007 MOV #^D7,R1 ; ...DIVIDE BY DAYS PER WEEK
8115 016226 CALL $DIV ; ...SO
016226 004737 000000G JSR PC,$DIV
8116 016232 010100 MOV R1,R0 ; ...DAY OF WEEK OFFSET TO R0
8117 016234 010601 MOV SP,R1 ; ...STACK POINTER TO R1
8119 016236 .INH6 ; ...DISALLOW INTERRUPTS
016236 013746 177776 MOV @#PS,-(SP)
016242 112737 000300 177776 MOVB #300,@#PS
8121 016250 116037 001154' 000000G MOVB DOWTAB(R0),.DOW ;;; ...SET DAY OF WEEK FROM TABLE
8122 016256 012137 000000G MOV (R1)+,.SSM ;;; ...SET THE TIME
8123 016262 112100 MOVB (R1)+,R0 ;;; ...GET THE YEAR
8124 016264 062700 003554 ADD #^D1900,R0 ;;; ...PLUS 1900
8125 016270 010037 000000G MOV R0,.YEAR ;;; ...SET IT
8126 016274 105311 DECB (R1) ;;; ...COMPUTE TRUE MONTH
8127 016276 112137 000000G MOVB (R1)+,.MON ;;; ...SET IT
8128 016302 105311 DECB (R1) ;;; ...COMPUTE TRUE DAY
8129 016304 111137 000000G MOVB (R1),.DAY ;;; ...SET IT
8130 016310 012737 000001 000000G MOV #1,.DATE3 ;;; ...SET THE VALID FLAG
8132 016316 .ENB6 ;;; ...ALLOW INTERRUPTS
016316 012637 177776 MOV (SP)+,@#PS
8134 016322 062706 000006 ADD #^D6,SP ; ...RESET STACK
8135 016326 50$:
8136 016326 000414 BR .WHDAT ; DISPLAY TIME AND EXIT
8137 ;
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 215
.SCDAT -- "SET DATE" COMMAND 7703.04
8139 016330 SCDCDI:
8140 016330 ERROR$ CDI ; ERROR -- CLEAR DATE ILLEGAL
016330 012746 011551 MOV #^RCDI,-(SP)
016334 104400 TRAP TC.ERR
8141 ;
8142 016336 SCDDAV:
8143 016336 ERROR$ DAV ; ERROR -- DATE ALREADY VALID
016336 012746 014476 MOV #^RDAV,-(SP)
016342 104400 TRAP TC.ERR
8144 ;
8145 016344 SCDNDI:
8146 016344 ERROR$ NDI ; ERROR -- NULL DATE ILLEGAL
016344 012746 054051 MOV #^RNDI,-(SP)
016350 104400 TRAP TC.ERR
8147 ;
8148 016352 SCDNTI:
8149 016352 ERROR$ NTI ; ERROR -- NULL TIME ILLEGAL
016352 012746 055251 MOV #^RNTI,-(SP)
016356 104400 TRAP TC.ERR
8150 ;
8151
8152 001154 .PSECT DATA
8153
8154 001154 DOWTAB:
8155 001154 003 004 .BYTE 3,4
8156 001156 005 006 .BYTE 5,6
8157 001160 000 001 .BYTE 0,1
8158 001162 002 .BYTE 2
8159 .EVEN
8160
8161 001164 CDMTB:
8162 001164 000000 .WORD 0
8163 001166 000037 .WORD ^D31
8164 001170 000073 .WORD ^D59
8165 001172 000132 .WORD ^D90
8166 001174 000170 .WORD ^D120
8167 001176 000227 .WORD ^D151
8168 001200 000265 .WORD ^D181
8169 001202 000324 .WORD ^D212
8170 001204 000363 .WORD ^D243
8171 001206 000421 .WORD ^D273
8172 001210 000460 .WORD ^D304
8173 001212 000516 .WORD ^D334
8174
8175 016360 .PSECT
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 216
.WHDAT -- THE "WHAT" DATE COMMAND 7703.03
8177 .SBTTL .WHDAT -- THE "WHAT" DATE COMMAND 7703.03
8178
8179 ;+
8180 ; .WHDAT -- THE "WHAT DATE" COMMAND
8181 ;
8182 ; THIS SUBROUTINE WILL DISPLAY THE THE CURRENT SYSTEM TIME OF DAY
8183 ; ON THE CONSOLE DEVICE. IF THE TIME HAS NOT BEEN SET BY EITHER A
8184 ; "SET DATE" COMMAND OR BY THE KL10 EXECUTIVE THE VALID FLAG WILL BE OFF
8185 ; OTHERWISE IT WILL BE ON.
8186 ;
8187 ; INPUT ARGUMENTS:
8188 ;
8189 ; NONE.
8190 ;
8191 ; OUTPUT ARGUMENTS:
8192 ;
8193 ; NONE.
8194 ;
8195 ; ERROR CODES RETUNED:
8196 ;
8197 ; NONE.
8198 ;-
8199
8200
8201 016360 .WHDAT::
8202 016360 CALL .CKEOC ; MUST HAVE E-O-C
016360 004737 000000G JSR PC,.CKEOC
8203 016364 012701 001232' MOV #DATBUF,R1 ; BUFFER POINTER TO R1
8204 016370 GTIM$S R1 ; REAAD THE DATE AND TIME
016370 010146 MOV R1,-(SP)
016372 012746 MOV (PC)+,-(SP)
016374 073 002 .BYTE 59.,2
016376 104375 EMT 375
8205 016400 005046 CLR -(SP) ; CLEAR A BUFFER ON STACK
8206 016402 005046 CLR -(SP) ; .SO
8207 016404 010600 MOV SP,R0 ; ..POINTER TO R0
8208 016406 112120 MOVB (R1)+,(R0)+ ; ..SET YEAR
8209 016410 105721 TSTB (R1)+ ; ..ADVANCE POINTER
8210 016412 112120 MOVB (R1)+,(R0)+ ; ..SET MONTH
8211 016414 105721 TSTB (R1)+ ; ..ADVANCE POINTER
8212 016416 112120 MOVB (R1)+,(R0)+ ; ..SET DAY
8213 016420 012700 004345' MOV #WHDMS0,R0 ; ..MESSAGE POINTER TO R0
8214 016424 CALL .TYLIN ; ..PRINT IT
016424 004737 000000G JSR PC,.TYLIN
8215 016430 113700 000000G MOVB .DOW,R0 ; ..DAY OF WEEK INDEX TO R0
8216 016434 006300 ASL R0 ; ..TIMES 2
8217 016436 016000 001214' MOV DOWMTB(R0),R0 ; ..MESSAGE POINTER TO R0
8218 016442 CALL .TYMSG ; ..PRINT IT
016442 004737 000000G JSR PC,.TYMSG
8219 016446 CALL .TYSPC ; ..AND A <SPACE>
016446 004737 000000G JSR PC,.TYSPC
8220 016452 010600 MOV SP,R0 ; ..POINT TO DATE
8221 016454 CALL .TYDAT ; ..TYPE THE DATE
016454 004737 006612' JSR PC,.TYDAT
8222 016460 CALL .TYSPC ; ..AND A <SPACE>
016460 004737 000000G JSR PC,.TYSPC
8223 016464 012700 000000G MOV #.SSM,R0 ; ..POINT TO THE TIME
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 216-1
.WHDAT -- THE "WHAT" DATE COMMAND 7703.03
8224 016470 CALL .TYTIM ; ..TYPE IT
016470 004737 006726' JSR PC,.TYTIM
8225 016474 CALL .TCRLF ; ..END THE LINE
016474 004737 000000G JSR PC,.TCRLF
8226 016500 012700 004373' MOV #WHDMS1,R0 ; ..MESSAGE POINTER TO R0
8227 016504 CALL .TYMSG ; ..PRINT IT
016504 004737 000000G JSR PC,.TYMSG
8228 016510 012700 000000G MOV #ONMSG,R0 ; ..ASSUME VALID
8229 016514 005737 000000G TST .DATE3 ; ..IS IT??
8230 016520 001002 BNE 10$ ; ..YES -- GO ON
8231 016522 012700 000000G MOV #OFFMSG,R0 ; ..NO -- SAY SO
8232 016526 10$:
8233 016526 022626 CMP (SP)+,(SP)+ ; ..CLEAR STACK
8234 016530 CALLR .TYLIN ; PRINT AND EXIT
016530 000137 000000G JMP .TYLIN
8235 ;
8236
8237 001214 .PSECT DATA
8238
8239 001214 DOWMTB:
8240 001214 004417' .WORD MONMSG
8241 001216 004427' .WORD TUEMSG
8242 001220 004440' .WORD WEDMSG
8243 001222 004453' .WORD THUMSG
8244 001224 004465' .WORD FRIMSG
8245 001226 004475' .WORD SATMSG
8246 001230 004507' .WORD SUNMSG
8247
8248 001232 DATBUF:
8249 001232 000000 000000 000000 .WORD 0,0,0,0,0,0,0,0
001240 000000 000000 000000
001246 000000 000000
8250
8251 016534 .PSECT
SWDAT -- SET/CLEAR/WHAT "DATE" MACRO M1113 10-NOV-81 17:48 PAGE 217
.WHDAT -- THE "WHAT" DATE COMMAND 7703.03
8253 004345 .PSECT MESSAG
8254
8255 004345 WHDMS0:
8256 004345 103 125 122 .ASCIZ %CURRENT SYSTEM DATE: %
004350 122 105 116
004353 124 040 123
004356 131 123 124
004361 105 115 040
004364 104 101 124
004367 105 072 040
004372 000
8257 004373 WHDMS1:
8258 004373 040 126 101 .ASCIZ % VALIDITY FLAG IS: %
004376 114 111 104
004401 111 124 131
004404 040 106 114
004407 101 107 040
004412 111 123 072
004415 040 000
8259
8260 004417 MONMSG:
8261 004417 115 117 116 .ASCIZ %MONDAY,%
004422 104 101 131
004425 054 000
8262 004427 TUEMSG:
8263 004427 124 125 105 .ASCIZ %TUESDAY,%
004432 123 104 101
004435 131 054 000
8264 004440 WEDMSG:
8265 004440 127 105 104 .ASCIZ %WEDNESDAY,%
004443 116 105 123
004446 104 101 131
004451 054 000
8266 004453 THUMSG:
8267 004453 124 110 125 .ASCIZ %THURSDAY,%
004456 122 123 104
004461 101 131 054
004464 000
8268 004465 FRIMSG:
8269 004465 106 122 111 .ASCIZ %FRIDAY,%
004470 104 101 131
004473 054 000
8270 004475 SATMSG:
8271 004475 123 101 124 .ASCIZ %SATURDAY,%
004500 125 122 104
004503 101 131 054
004506 000
8272 004507 SUNMSG:
8273 004507 123 125 116 .ASCIZ %SUNDAY,%
004512 104 101 131
004515 054 000
8274
8275 016534 .PSECT
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 219
.WHDAT -- THE "WHAT" DATE COMMAND 7703.03
8278 .TITLE SWKLN -- SET/CLEAR/WHAT "KLINIK" COMMAND MODULE 7703.04
8279
8280 .IDENT "006060"
8281
8282 ;
8283 ; COPYRIGHT (C) 1975, 1979 BY
8284 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
8285 ;
8286 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
8287 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
8288 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
8289 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
8290 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
8291 ;
8292 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
8293 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
8294 ; CORPORATION.
8295 ;
8296 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
8297 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
8298 ;
8299 ; MODULE: "KLINIK" SUPPORT
8300 ;
8301 ; VERSION: 06-06
8302 ;
8303 ; AUTHOR: R. BELANGER
8304 ;
8305 ; DATE: 7703.04
8306 ;
8307 ; THIS MODULE CONTAINS:
8308 ;
8309 ; 1) SET CLEAR KLINIK CODE
8310 ; 2) WHAT KLINIK CODE
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 220
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8312 .SBTTL .SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8313
8314 ;+
8315 ; .SCKLN -- THE SET / CLEAR KLINIK COMMAND
8316 ;
8317 ; THIS SUBROUTINE WILL SET OR CLEAR THE KLINIK PARAMETERS FOR THE
8318 ; RSX20F FRONT END. THE CLEAR COMMAND SIMPLY CLEARS THE KLINIK
8319 ; THE KLINIK ENABLE FLAG AND REQUESTS THE KLINIK TERMINATION TASK
8320 ; "KLD" IN ORDER THAT THE OPERATOR BE NOTIFIED.
8321 ;
8322 ; THE "SET KLINIK" COMMAND WILL PROMPT THE OPERATOR FOR THE REQUIRED
8323 ; KLINIK PARAMETERS, VALIDATE THEM AND PASS THEM TO THE RSX20F EXECUTIVE.
8324 ;
8325 ; INPUT ARGUMENTS:
8326 ;
8327 ; NONE.
8328 ;
8329 ; OUTPUT ARGUMENTS:
8330 ;
8331 ; NONE.
8332 ;
8333 ; ERROR CODES RETURNED:
8334 ;
8335 ; IPC -- ILLEGAL PASSWORD CHARACTER.
8336 ; KWE -- KLINIK WINDOW ERROR.
8337 ; NPI -- NULL PASSWORD ILLEGAL.
8338 ; PTL -- PASSWORD TOO LONG.
8339 ; SKI -- SET KLINIK ILLEGAL WHILE ACTIVE.
8340 ;-
8341
8342 .MCALL .ENB6,.INH6,WTSE$S,CLEF$S
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 221
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8344 .ENABL LSB
8345
8346 016534 .SCKLN::
8347 016534 CALL .CKEOC ; MUST HAVE E-O-C
016534 004737 000000G JSR PC,.CKEOC
8348 016540 005737 000000G TST .NOTSW ; IS THIS A CLEAR?
8349 016544 001402 BEQ 10$ ; NO -- GO ON
8350 016546 000137 017456' JMP 80$ ; YES -- DO IT
8351 ;
8352 016552 10$:
8353 016552 105737 000000G TSTB .KLNSW+0 ; IS KLINIK ALREADY ACTIVE??
8354 016556 001055 BNE SCKSKI ; YES -- COMPLAIN
8355 016560 PUSH R5 ; SET UP TO GET KLINIK PARAMETERS
016560 010546 MOV R5,-(SP)
8356 016562 012700 004632' MOV #SCKMS4,R0 ; .MESSAGE POINTER TO R0
8357 016566 CALL .TYMSF ; .FORCE IT OUT
016566 004737 000000G JSR PC,.TYMSF
8358 016572 012701 000000G MOV #.CIBFR,R1 ; .BUFFER POINTER TO R1
8359 016576 010105 MOV R1,R5 ; .AND R5
8360 016600 CALL .GTLIN ; .READ KLINIK MODE
016600 004737 000000G JSR PC,.GTLIN
8361 016604 012700 000000G MOV #.KLMT1,R0 ; .KLINIK MODE TABLE POINTER TO R0
8362 016610 CALL .TSCAN ; .SCAN THE TABLE
016610 004737 000000G JSR PC,.TSCAN
8363 016614 116046 000002 MOVB 2(R0),-(SP) ; .KLINIK MODE FLAG TO STACK
8364 016620 100462 BMI 25$ ; READ WINDOW DATA IF USER
8365 016622 012700 004517' MOV #SCKMS0,R0 ; ..MESSAGE POINTER TO R0
8366 016626 CALL .TYMSF ; ..FORCE THE MESSAGE
016626 004737 000000G JSR PC,.TYMSF
8367 016632 012701 000000G MOV #.CIBFR,R1 ; ..USE THE INPUT DEVICE BUFFER
8368 016636 CALL .GTLIN ; ..READ THE LINE
016636 004737 000000G JSR PC,.GTLIN
8369 016642 001415 BEQ SCKNPI ; ..GIVE "NPI" ERROR IF NULL PASSWORD
8370 016644 013700 000000G MOV .INCHC,R0 ; ..CHARACTER COUNT TO R0
8371 016650 022700 000006 CMP #^D6,R0 ; ..IS THE PASSWORD TOO LONG?
8372 016654 002413 BLT SCKPTL ; ..YES -- GIVE "PTL" ERROR
8373 016656 160001 SUB R0,R1 ; ..NO -- ADJUST THE STRING POINTER
8374 016660 012702 001276' MOV #KLNPWD,R2 ; ..POINT TO THE PASSWORD
8375 016664 005022 CLR (R2)+ ; ..CLEAR IT
8376 016666 005022 CLR (R2)+ ; ..
8377 016670 005012 CLR (R2) ; ..SO
8378 016672 024242 CMP -(R2),-(R2) ; ..RESET THE POINTER
8379 016674 000415 BR 15$ ; ..AND GO ON
8380 ;
8381 016676 SCKNPI:
8382 016676 ERROR$ NPI ; ERROR -- NULL PASSWORD ILLEGAL
016676 012746 055011 MOV #^RNPI,-(SP)
016702 104400 TRAP TC.ERR
8383 ;
8384 016704 SCKPTL:
8385 016704 ERROR$ PTL ; ERROR -- PASSWORD TOO LONG
016704 012746 063454 MOV #^RPTL,-(SP)
016710 104400 TRAP TC.ERR
8386 ;
8387 016712 SCKSKI:
8388 016712 ERROR$ SKI ; ERROR -- ILLEGAL WHILE KLINIK ACTIVE
016712 012746 074201 MOV #^RSKI,-(SP)
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 221-1
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
016716 104400 TRAP TC.ERR
8389 ;
8390 016720 SCKIPC:
8391 016720 011204 MOV (R2),R4 ; OFFENDING CHARACTER TO R4
8392 016722 ERROR$ IPC ; ERROR -- ILLEGAL PASSWORD CHARACTER
016722 012746 035303 MOV #^RIPC,-(SP)
016726 104400 TRAP TC.ERR
8393 ;
8394 016730 15$:
8395 016730 112112 MOVB (R1)+,(R2) ; ..LOAD THE PASSWORD
8396 016732 122712 000060 CMPB #'0,(R2) ; ..SEE IF NUMERIC
8397 016736 003370 BGT SCKIPC ; ..TOO SMALL -- GIVE "IPC" ERROR
8398 016740 122712 000071 CMPB #'9,(R2) ; ..IN RANGE?
8399 016744 002006 BGE 20$ ; ..YES -- GO ON
8400 016746 122712 000101 CMPB #'A,(R2) ; ..NO -- IS THE CHARACTER ALPHABETIC?
8401 016752 003362 BGT SCKIPC ; ..TOO SMALL -- GIVE "IPC" ERROR
8402 016754 122712 000132 CMPB #'Z,(R2) ; ..[TCO 4.2084] IS IT REALLY IN RANGE?
8403 016760 002757 BLT SCKIPC ; ..TOO BIG -- GIVE "IPC" ERROR
8404 016762 20$:
8405 016762 105722 TSTB (R2)+ ; ..[TCO 4.2084] ADVANCE BYTE POINTER
8406 016764 077017 SOB R0,15$ ; ..LOOP UNTIL DONE
8407 016766 25$:
8408 016766 012700 004532' MOV #SCKMS1,R0 ; .."FROM" MESSAGE POINTER
8409 016772 CALL .TYMSG ; ..PRINT IT
016772 004737 000000G JSR PC,.TYMSG
8410 016776 005046 CLR -(SP) ; ..CLEAR A BUFFER FOR THE START DATE
8411 017000 005046 CLR -(SP) ; ...
8412 017002 010600 MOV SP,R0 ; ....POINT TO IT
8413 017004 CALL .GTDAT ; ....GET WINDOW OPEN DATE
017004 004737 005600' JSR PC,.GTDAT
8414 017010 012700 004532' MOV #SCKMS1,R0 ; ....SAME MESSAGE
8415 017014 CALL .TYMSG ; ....PRINT IT
017014 004737 000000G JSR PC,.TYMSG
8416 017020 005046 CLR -(SP) ; ....CLEAR A SPACE FOR THE START TIME
8417 017022 010600 MOV SP,R0 ; .....POINT TO IT
8418 017024 CALL .GTTIM ; .....GET WINDOW OPEN TIME
017024 004737 006244' JSR PC,.GTTIM
8419 017030 001002 BNE 30$ ; .....GO ON IF NOT DEFAULT
8420 017032 013716 000000G MOV .SSM,(SP) ; .....ELSE SET DEFAULT FROM THE SYSTEM
8421 017036 30$:
8422 017036 012700 004556' MOV #SCKMS2,R0 ; ....."TO" MESSAGE POINTER
8423 017042 CALL .TYMSG ; .....OUTPUT THAT
017042 004737 000000G JSR PC,.TYMSG
8424 017046 005046 CLR -(SP) ; .....CLEAR A BUFFER FOR THE END DATE
8425 017050 005046 CLR -(SP) ; ......
8426 017052 010600 MOV SP,R0 ; .......POINT TO IT
8427 017054 CALL .GTDAT ; .......GET THE END DATE
017054 004737 005600' JSR PC,.GTDAT
8428 017060 001044 BNE 50$ ; .......GO ON IF NOT DEFAULT
8429 017062 016616 000006 MOV 6(SP),(SP) ; .......DEFAULT -- GET OPEN DATE
8430 017066 016666 000010 000002 MOV 10(SP),2(SP) ; .......LOAD IT INTO CLOSE DATE
8431 017074 105720 TSTB (R0)+ ; .......GET OVER THE YEAR
8432 017076 112002 MOVB (R0)+,R2 ; .......MONTH TO R2
8433 017100 105210 INCB (R0) ; .......INCREMENT THE DATE
8434 017102 122702 000002 CMPB #^D2,R2 ; .......IS THIS FEBRUARY?
8435 017106 001422 BEQ 45$ ; .......YES -- HANDLE SPECIAL CASE
8436 017110 122710 000036 CMPB #^D30,(R0) ; .......NO -- HOW MANY DAYS?
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 221-2
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8437 017114 002026 BGE 50$ ; .......ALL OK IF .LE. 30.
8438 017116 012701 172452 MOV #^C5325,R1 ; .......BIT MASK TO R1
8439 017122 35$:
8440 017122 006201 ASR R1 ; .......SHIFT IT RIGHT
8441 017124 077202 SOB R2,35$ ; .......TILL DONE
8442 017126 103021 BCC 50$ ; .......ALL OK IF CC-C IS CLEAR
8443 017130 40$:
8444 017130 112710 000001 MOVB #^D1,(R0) ; .......SET THE DAY TO 1
8445 017134 105240 INCB -(R0) ; .......INCREMENT THE MONTH
8446 017136 122710 000014 CMPB #^D12,(R0) ; .......DECEMBER?
8447 017142 002013 BGE 50$ ; .......YES -- GO ON
8448 017144 012710 000001 MOV #^D1,(R0) ; .......NO -- SET THE MONTH TO JANUARY
8449 017150 105240 INCB -(R0) ; .......AND INCREMENT THE YEAR
8450 017152 000407 BR 50$ ; .......EXIT
8451 ;
8452 017154 45$:
8453 017154 122710 000034 CMPB #^D28,(R0) ; .......28 DAYS?
8454 017160 002004 BGE 50$ ; .......YES -- GO ON
8455 017162 132760 000003 177776 BITB #3,-2(R0) ; .......NO -- LEAP YEAR?
8456 017170 001357 BNE 40$ ; .......NO -- SET TO MARCH 1
8457 017172 50$:
8458 017172 012700 004556' MOV #SCKMS2,R0 ; .......SAME MESSAGE FOR END TIME
8459 017176 CALL .TYMSG ; .......PRINT IT
017176 004737 000000G JSR PC,.TYMSG
8460 017202 005046 CLR -(SP) ; .......CLEAR A SPACE FOR THE END TIME
8461 017204 010600 MOV SP,R0 ; ........POINT TO IT
8462 017206 CALL .GTTIM ; ........GET THE END TIME
017206 004737 006244' JSR PC,.GTTIM
8463 017212 001002 BNE 55$ ; ........GO ON IF NOT DEFAULT
8464 017214 016616 000006 MOV 6(SP),(SP) ; ........ELSE SET DEFAULT
8465 017220 55$:
8466 017220 126666 000002 000010 CMPB 2(SP),10(SP) ; ........ARE THE YEARS IN RANGE?
8467 017226 002416 BLT SCKKWE ; ........NO -- GIVE "KWE" ERROR
8468 017230 003020 BGT 60$ ; ........YES -- SAME YEAR?
8469 017232 126666 000003 000011 CMPB 3(SP),11(SP) ; ........YES -- ARE THE MONTHS OK?
8470 017240 002411 BLT SCKKWE ; ........NO -- GIVE "KWE" ERROR
8471 017242 003013 BGT 60$ ; ........YES -- SAME MONTH?
8472 017244 126666 000004 000012 CMPB 4(SP),12(SP) ; ........YES -- ARE THE DATES OK?
8473 017252 002404 BLT SCKKWE ; ........NO -- GIVE "KWE" ERROR
8474 017254 003006 BGT 60$ ; ........YES -- SAME DATE?
8475 017256 021666 000006 CMP (SP),6(SP) ; ........YES -- ARE THE TIMES OK?
8476 017262 101003 BHI 60$ ; ........YES -- GO ON
8477 017264 SCKKWE:
8478 017264 ERROR$ KWE ; ERROR -- KLINIK WINDOW ERROR
017264 012746 044135 MOV #^RKWE,-(SP)
017270 104400 TRAP TC.ERR
8479 017272 60$:
8480 017272 005000 CLR R0 ; ........CLEAR R0
8481 017274 105766 000014 TSTB 14(SP) ; ........LOOK AT THE KLINIK MODE
8482 017300 002423 BLT 65$ ; ........GO ON IF USER
8483 017302 012700 004603' MOV #SCKMS3,R0 ; ........ASK FOR HIGHEST CONSOLE MODE
8484 017306 CALL .TYMSF ; ........FORCE IT
017306 004737 000000G JSR PC,.TYMSF
8485 017312 012701 000000G MOV #.CIBFR,R1 ; ........POINT TO THE INPUT BUFFER
8486 017316 010105 MOV R1,R5 ; ........AND R5 TOO
8487 017320 CALL .GTLIN ; ........READ THE RESPONSE
017320 004737 000000G JSR PC,.GTLIN
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 221-3
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8488 017324 CALL .CKOBJ ; ........MUST HAVE AN OBJECT
017324 004737 000000G JSR PC,.CKOBJ
8489 017330 012700 000000G MOV #.KLMTB,R0 ; ........TABLE POINTER TO R0
8490 017334 CALL .TSCAN ; ........SCAN THE TABLE
017334 004737 000000G JSR PC,.TSCAN
8491 017340 116000 000002 MOVB 2(R0),R0 ; ........SAVE THE CONSOLE MODE
8492 017344 CALL .CKEOC ; ........MUST HAVE E-O-C
017344 004737 000000G JSR PC,.CKEOC
8493 017350 65$:
8495 017350 .INH6 ; ........DISALLOW INTERRUPTS
017350 013746 177776 MOV @#PS,-(SP)
017354 112737 000300 177776 MOVB #300,@#PS
8496 017362 POP R3 ;;; .........SAVED PSW TO R3
017362 012603 MOV (SP)+,R3
8498 017364 110037 000001G MOVB R0,.KLNMD+1 ;;; ........SET THE CONSOLE MODE
8499 017370 POP .KLNTT ;;; ........SET THE END TIME
017370 012637 000000G MOV (SP)+,.KLNTT
8500 017374 POP .KLNTD ;;; .......GET THE END DATE
017374 012637 000000G MOV (SP)+,.KLNTD
8501 017400 POP .KLNTD+2 ;;; ......BOTH HALVES
017400 012637 000002G MOV (SP)+,.KLNTD+2
8502 017404 POP .KLNFT ;;; .....SET THE START TIME
017404 012637 000000G MOV (SP)+,.KLNFT
8503 017410 POP .KLNFD ;;; ....POINT TO THE START DATE
017410 012637 000000G MOV (SP)+,.KLNFD
8504 017414 POP .KLNFD+2 ;;; ...BOTH HALVES
017414 012637 000002G MOV (SP)+,.KLNFD+2
8505 017420 112637 000000G MOVB (SP)+,.KLNMD+0 ;;; ..SET THE KLINIK MODE
8506 017424 002410 BLT 75$ ;;; .GO ON IF USER
8507 017426 012702 000006 MOV #^D6,R2 ;;; .CHARACTER COUNT TO R2
8508 017432 012701 000000G MOV #.KLNPW,R1 ;;; .POINT TO THE PASSWORD
8509 017436 012700 001276' MOV #KLNPWD,R0 ;;; .POINT TO OURS
8510 017442 70$:
8511 017442 112021 MOVB (R0)+,(R1)+ ;;; .LOAD THE PASSWORD
8512 017444 077202 SOB R2,70$ ;;; .LOOP TILL DONE
8513 017446 75$:
8515 017446 010337 177776 MOV R3,@#PS ;;; ENABLE INTERRUPTS
8517 017452 POP R5 ; .RESTORE R5
017452 012605 MOV (SP)+,R5
8518 017454 000421 BR 85$ ; AND EXIT
8519 ;
8520 017456 80$:
8521 017456 105737 000000G TSTB .KLNMD+0 ; ANYTHING TO CLEAR??
8522 017462 001502 BEQ 100$ ; NO -- JUST TELL OPERATOR ITS ALREADY CLEAR
8524 017464 .INH6 ; DISALLOW INTERRUPTS
017464 013746 177776 MOV @#PS,-(SP)
017470 112737 000300 177776 MOVB #300,@#PS
8526 017476 105037 000000G CLRB .KLNMD+0 ;;; CLEAR KLINIK
8527 017502 105037 000000G CLRB .KLNPW+0 ;;; CLEAR THE KLINIK PASSWORD
8528 017506 112737 000001 000001G MOVB #1,.KLNSW+1 ;;; MARK THAT WE WANT A CLEAR
8530 017514 .ENB6 ;;; ENABLE INTERRUPTS
017514 012637 177776 MOV (SP)+,@#PS
8532 017520 85$:
8534 017520 032737 000000G 000002G BIT #EF.PR1,.COMEF+2 ; ANY THING THERE TO GET THIS?
8535 017526 001460 BEQ 100$ ; NO -- GO ON
8536 017530 CLEF$S #E.FKLN ; RESET THE FLAG
017530 012746 000004 MOV #E.FKLN,-(SP)
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 221-4
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
017534 012746 MOV (PC)+,-(SP)
017536 037 002 .BYTE 31.,2
017540 104375 EMT 375
8538 017542 012700 000000G MOV #.KLNPB,R0 ; BUFFER POINTER TO R0
8539 017546 012710 000000G MOV #KLNPLN,(R0) ; BUFFER SIZE TO HEADER
8540 017552 012701 100000G MOV #BC.SKP+100000,R1 ; FUNCTION CODE TO R1
8541 017556 005002 CLR R2 ; NO EVENT FLAG
8542 017560 012703 000000G MOV #D.CCPU,R3 ; DEVICE CODE TO R3
8543 017564 CALL ..STIN ; SEND THE NEW PARAMETERS
017564 004737 000000G JSR PC,..STIN
8544 017570 012702 000000C MOV #KLNLGL/2,R2 ; ARGUMENT COUNT TO R2
8545 017574 012701 000000G MOV #.KLNPE,R1 ; INPUT BLOCK POINTER
8546 017600 012700 001276' MOV #KLNLGE,R0 ; OUTPUT BLOCK POINTER
8547 017604 90$:
8548 017604 014140 MOV -(R1),-(R0) ; LOAD THE PARAMETERS
8549 017606 077202 SOB R2,90$ ; LOOP TILL DONE
8550 017610 012702 000001 MOV #1,R2 ; ASSUME "SET"
8551 017614 005737 000000G TST .NOTSW ; IS IT??
8552 017620 001401 BEQ 95$ ; YES -- GO ON
8553 017622 005402 NEG R2 ; NO -- INVERT IT
8554 017624 95$:
8555 017624 105740 TSTB -(R0) ; GET OVER THE LOG CODE
8556 017626 110240 MOVB R2,-(R0) ; SET THE EVENT CODE
8557 017630 005740 TST -(R0) ; BACK OVER THE LOG FLAG
8558 017632 012740 000022 MOV #22,-(R0) ; SET THE PACKET SIZE
8559 017636 012701 100000G MOV #BC.HDS+100000,R1 ; FUNCTION CODE TO R1
8560 017642 012702 000004 MOV #E.FKLN,R2 ; EVENT FLAG TO R2
8561 017646 012703 000000G MOV #D.CKLN,R3 ; DEVICE CODE TO R3
8562 017652 CALL ..STIN ; LOG IT
017652 004737 000000G JSR PC,..STIN
8564 017656 WTSE$S #E.FKLN ; WAIT FOR IT
017656 012746 000004 MOV #E.FKLN,-(SP)
017662 012746 MOV (PC)+,-(SP)
017664 051 002 .BYTE 41.,2
017666 104375 EMT 375
8566 017670 100$:
8567 ; BR .WHKLN ; TELL THE STATE AND EXIT
8568 ;
8569
8570 .DSABL LSB
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 222
.SCKLN -- THE "SET / CLEAR KLINIK" COMMAND 7709.20
8572 001252 .PSECT DATA
8573
8574 001252 KLNLOG:
8575 001252 000000 .WORD 0
8576 001254 000000G .WORD DV.LOG
8577 001256 000000G .WORD K.LSCK
8578 001260 000000 000000 000000 .WORD 0,0,0
8579 001266 000000 000000 000000 .WORD 0,0,0
8580 001274 000000 .WORD 0
8581 001276' KLNLGE=.
8582
8583 001276 KLNPWD:
8584 001276 000000 000000 000000 .WORD 0,0,0 ; TEMP PASSWORD STORAGE
8585 004517 .PSECT MESSAG
8586
8587 004517 SCKMS0:
8588 004517 120 101 123 .ASCIZ %PASSWORD: %
004522 123 127 117
004525 122 104 072
004530 040 000
8589 004532 SCKMS1:
8590 004532 101 103 103 .ASCIZ %ACCESS WINDOW OPEN %
004535 105 123 123
004540 040 127 111
004543 116 104 117
004546 127 040 117
004551 120 105 116
004554 040 000
8591 004556 SCKMS2:
8592 004556 101 103 103 .ASCIZ %ACCESS WINDOW CLOSE %
004561 105 123 123
004564 040 127 111
004567 116 104 117
004572 127 040 103
004575 114 117 123
004600 105 040 000
8593 004603 SCKMS3:
8594 004603 110 111 107 .ASCIZ %HIGHEST CONSOLE MODE: %
004606 110 105 123
004611 124 040 103
004614 117 116 123
004617 117 114 105
004622 040 115 117
004625 104 105 072
004630 040 000
8595 004632 SCKMS4:
8596 004632 113 114 111 .ASCIZ %KLINIK MODE: %
004635 116 111 113
004640 040 115 117
004643 104 105 072
004646 040 000
8597 017670 .PSECT
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 223
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
8599 .SBTTL .WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
8600
8601 ;+
8602 ; .WHKLN -- THE "WHAT KLINIK" COMMAND
8603 ;
8604 ; THIS SUBROUTINE WILL REPORT THE STATE OF THE KLINIK PARAMETERS
8605 ; ON THE CONSOLE DEVICE.
8606 ;
8607 ; INPUT ARGUMENTS:
8608 ;
8609 ; NONE.
8610 ;
8611 ; OUTPUT ARGUMENTS:
8612 ;
8613 ; NONE.
8614 ;
8615 ; ERROR CODES RETURNED:
8616 ;
8617 ; NONE.
8618 ;-
8619
8620 .MCALL DIR$,RQST$
8621
8622 017670 .WHKLN::
8623 017670 CALL .CKEOC ; MUST HAVE E-O-C
017670 004737 000000G JSR PC,.CKEOC
8624 017674 012700 004650' MOV #WHKMS0,R0 ; MESSAGE POINTER TO R0
8625 017700 CALL .TYMSG ; PRINT IT
017700 004737 000000G JSR PC,.TYMSG
8626 017704 012700 004661' MOV #WHKMS1,R0 ; ASSUME KLINIK IS DISABLED
8627 017710 105737 000000G TSTB .KLNMD+0 ; IS IT?
8628 017714 001514 BEQ 40$ ; YES -- SAY SO
8629 017716 012700 005000' MOV #WHKMSA,R0 ; NO -- ASSUME ACTIVE
8630 017722 105737 000000G TSTB .KLNSW+0 ; IS IT??
8631 017726 001002 BNE 10$ ; YES -- GO ON
8632 017730 012700 005032' MOV #WHKMSI,R0 ; NO -- SAY INACTIVE
8633 017734 10$:
8634 017734 005737 000000G TST .KLNFD ; IS THERE A DATE??
8635 017740 001005 BNE 20$ ; YES -- KLINIK REALLY ALIVE
8636 017742 012700 005007' MOV #WHKMRB,R0 ; NO -- ALIVE FROM REBOOT
8637 017746 CALL .TYLIN
017746 004737 000000G JSR PC,.TYLIN
8638 017752 000436 BR 30$ ; TYPE MODE AND EXIT
8639 ;
8640 017754 20$:
8641 017754 CALL .TYLIN ; TYPE STATE
017754 004737 000000G JSR PC,.TYLIN
8642 017760 012700 004672' MOV #WHKMS2,R0 ; GET OPEN MESSAGE
8643 017764 CALL .TYMSG ; PRINT IT
017764 004737 000000G JSR PC,.TYMSG
8644 017770 012700 000000G MOV #.KLNFD,R0 ; POINT TO THE FROM DATE
8645 017774 CALL .TYDAT ; PRINT IT
017774 004737 006612' JSR PC,.TYDAT
8646 020000 012700 000000G MOV #.KLNFT,R0 ; POINT TO THE FROM TIME
8647 020004 CALL .TYTIM ; PRINT IT
020004 004737 006726' JSR PC,.TYTIM
8648 020010 CALL .TCRLF ; END THE LINE
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 223-1
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
020010 004737 000000G JSR PC,.TCRLF
8649 020014 012700 004720' MOV #WHKMS3,R0 ; CLOSE MESSAGE POINTER
8650 020020 CALL .TYMSG ; PRINT IT
020020 004737 000000G JSR PC,.TYMSG
8651 020024 012700 000000G MOV #.KLNTD,R0 ; POINT TO THE TO DATE
8652 020030 CALL .TYDAT ; PRINT IT
020030 004737 006612' JSR PC,.TYDAT
8653 020034 012700 000000G MOV #.KLNTT,R0 ; POINT TO THE TO TIME
8654 020040 CALL .TYTIM ; PRINT IT
020040 004737 006726' JSR PC,.TYTIM
8655 020044 CALL .TCRLF ; END THE LINE
020044 004737 000000G JSR PC,.TCRLF
8656 020050 30$:
8657 020050 012700 005043' MOV #WHKMSK,R0 ; KLINIK MODE
8658 020054 CALL .TYMSG ; PRINT IT
020054 004737 000000G JSR PC,.TYMSG
8659 020060 012700 000000G MOV #USRMSG,R0 ; ASSUME USER
8660 020064 105737 000000G TSTB .KLNMD+0 ; IS IT??
8661 020070 100426 BMI 40$ ; YES -- PRINT AND EXIT
8662 020072 012700 000000G MOV #REMMSG,R0 ; NO -- SAY REMOTE
8663 020076 CALL .TYLIN ; PRINT IT
020076 004737 000000G JSR PC,.TYLIN
8664 020102 012700 004750' MOV #WHKMS4,R0 ; CONSOLE MODE MESSAGE
8665 020106 CALL .TYMSG ; PRINT IT
020106 004737 000000G JSR PC,.TYMSG
8666 020112 012700 000000G MOV #MNTMSG,R0 ; MAINTENANCE MODE
8667 020116 122737 000007 000001G CMPB #LG.ALL,.KLNMD+1
8668 020124 001410 BEQ 40$ ; YES -- SAY SO
8669 020126 012700 000000G MOV #PRGMSG,R0 ; NO -- PROGRAMMER MAYBE
8670 020132 122737 000003 000001G CMPB #LG.PRM,.KLNMD+1
8671 020140 001402 BEQ 40$ ; YES -- SAY SO
8672 020142 012700 000000G MOV #OPRMSG,R0 ; NO -- MUST BE OPERATOR
8673 020146 40$:
8674 020146 105737 000001G TSTB .KLNSW+1 ; IS THIS A CLEAR COMMAND??
8675 020152 001407 BEQ 50$ ; NO -- JUST GO AWAY
8676 020154 CALL .TYLIN ; YES -- PRINT THE LINE
020154 004737 000000G JSR PC,.TYLIN
8677 020160 DIR$ #REQKLD ; REQUEST KLD
020160 012746 000114' MOV #REQKLD,-(SP)
020164 104375 EMT 375
8678 020166 CALLR .EXITP ; AND EXIT
020166 000137 000000G JMP .EXITP
8679 ;
8680 020172 50$:
8681 020172 CALLR .TYLIN ; PRINT AND EXIT
020172 000137 000000G JMP .TYLIN
8682 ;
8683
8684 000114 .PSECT DPBS
8685
8686 000114 REQKLD:
8687 000114 RQST$ KLDISC,,10
000114 013 007 .BYTE 11.,7
000116 043244 035473 .RAD50 /KLDISC/
000122 000000 000000 .WORD 0,0
000126 000010 .WORD 10
000130 000 000 .BYTE ,
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 223-2
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
8688
8689 020176 .PSECT
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 224
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
8691 004650 .PSECT MESSAG
8692
8693 004650 WHKMS0:
8694 004650 040 113 114 .ASCIZ % KLINIK %
004653 111 116 111
004656 113 040 000
8695 004661 WHKMS1:
8696 004661 104 111 123 .ASCIZ %DISABLED%
004664 101 102 114
004667 105 104 000
8697 004672 WHKMS2:
8698 004672 040 101 103 .ASCIZ % ACCESS WINDOW OPEN: %
004675 103 105 123
004700 123 040 127
004703 111 116 104
004706 117 127 040
004711 117 120 105
004714 116 072 040
004717 000
8699 004720 WHKMS3:
8700 004720 040 101 103 .ASCIZ % ACCESS WINDOW CLOSED: %
004723 103 105 123
004726 123 040 127
004731 111 116 104
004734 117 127 040
004737 103 114 117
004742 123 105 104
004745 072 040 000
8701 004750 WHKMS4:
8702 004750 040 110 111 .ASCIZ % HIGHEST CONSOLE MODE: %
004753 107 110 105
004756 123 124 040
004761 103 117 116
004764 123 117 114
004767 105 040 115
004772 117 104 105
004775 072 040 000
8703 005000 WHKMSA:
8704 005000 101 103 124 .ASCIZ %ACTIVE%
005003 111 126 105
005006 000
8705 005007 WHKMRB:
8706 005007 101 103 124 .ASCIZ %ACTIVE FROM REBOOT%
005012 111 126 105
005015 040 106 122
005020 117 115 040
005023 122 105 102
005026 117 117 124
005031 000
8707 005032 WHKMSI:
8708 005032 111 116 101 .ASCIZ %INACTIVE%
005035 103 124 111
005040 126 105 000
8709 005043 WHKMSK:
8710 005043 040 113 114 .ASCIZ % KLINIK MODE: %
005046 111 116 111
005051 113 040 115
SWKLN -- SET/CLEAR/WHAT "KLINIK MACRO M1113 10-NOV-81 17:48 PAGE 224-1
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
005054 117 104 105
005057 072 040 000
8711 020176 .PSECT
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 226
.WHKLN -- THE "WHAT KLINIK" COMMAND 7702.16
8714 .TITLE ZEROC -- ZERO COMMAND MODULE 7609.15
8715
8716 .IDENT "006130"
8717
8718 ;
8719 ; COPYRIGHT (C) 1975, 1979 BY
8720 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD MASS.
8721 ;
8722 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
8723 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE INCLUSION
8724 ; OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER COPIES THERE-
8725 ; OF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON.
8726 ; NO TITLE TO OR OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
8727 ;
8728 ; THE INFORMATION CONTAINED IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
8729 ; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
8730 ; CORPORATION.
8731 ;
8732 ; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
8733 ; SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPILED BY DIGITAL.
8734 ;
8735 ; MODULE: ZERO COMMAND
8736 ;
8737 ; VERSION: 06-13
8738 ;
8739 ; AUTHOR: R. BELANGER
8740 ;
8741 ; DATE: 7609.15
8742 ;
8743 ; THIS MODULE CONTAINS:
8744 ;
8745 ; 1) ZERO COMMAND CODE
8746 ;
8747
8748 .MCALL $DEF, DIR$, PRDP$
8749
8750 020176 $DEF
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 227
.ZEROC -- THE "ZERO" COMMAND 7609.15
8752 .SBTTL .ZEROC -- THE "ZERO" COMMAND 7609.15
8753
8754 ;+
8755 ; .ZEROC -- THE "ZERO" COMMAND.
8756 ;
8757 ; THIS ROUTINE WILL SET UP AND EXECUTE A KL "BLT" INSTRUCTION THAT
8758 ; WILL ZERO THE LOWER 256K OF KL MEMORY. KL AC 0 IS USED AS THE
8759 ; BLT POINTER, AND THUS IS NOT ZEROED.
8760 ;
8761 ; INPUT ARGUMENTS:
8762 ;
8763 ; NONE.
8764 ;
8765 ; OUTPUT ARGUMENTS:
8766 ;
8767 ; NONE
8768 ;
8769 ; ERROR CODES RETURNED:
8770 ;
8771 ; NONE.
8772 ;-
8773
8774 020176 .ZEROC::
8775 020176 CALL .CKRUN ; SEE IF THE KL IS RUNNING
020176 004737 000000G JSR PC,.CKRUN
8776 020202 005046 CLR -(SP) ; CLEAR A BUFFER ON THE STACK
8777 020204 005046 CLR -(SP) ; .
8778 020206 005046 CLR -(SP) ; ..
8779 020210 010600 MOV SP,R0 ; ...POINT TO THE BUFFER
8780 020212 CALL .GTKLA ; ...READ THE FIRST ADDRESS
020212 004737 000000G JSR PC,.GTKLA
8781 020216 010001 MOV R0,R1 ; ...SAVE POINTER TO FIRST ADDRESS
8782 020220 122704 000072 CMPB #':,R4 ; ...IS LAST CHARACTER A BRACKET?
8783 020224 001403 BEQ 10$ ; ...YES -- GO ON
8784 020226 162706 000006 SUB #^D6,SP ; ...NO -- FUDGE THE STACK POINTER
8785 020232 000407 BR 20$ ; ......AND ASSUME IT IS E-O-C
8786 ;
8787
8788 ; [CONTINUED ON THE FOLLOWING PAGE]
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 228
.ZEROC -- THE "ZERO" COMMAND 7609.15
8790 ; [CONTINUED FROM THE PREVIOUS PAGE]
8791
8792 020234 10$:
8793 020234 105725 TSTB (R5)+ ; ...GET OVER THE SEPARATOR
8794 020236 005046 CLR -(SP) ; ...CLEAR ANOTHER BUFFER
8795 020240 005046 CLR -(SP) ; ....
8796 020242 005046 CLR -(SP) ; .....
8797 020244 010600 MOV SP,R0 ; ......GET SECOND BUFFER POINTER
8798 020246 CALL .GTKLA ; ......READ THE SECOND ADDRESS
020246 004737 000000G JSR PC,.GTKLA
8799 020252 20$:
8800 020252 CALL .CKEOC ; ......MUST BE E-O-C
020252 004737 000000G JSR PC,.CKEOC
8801 020256 PUSH <R0,R1> ; ......SAVE THE POINTERS
020256 010046 MOV R0,-(SP)
020260 010146 MOV R1,-(SP)
8802 020262 CALL .STPKL ; ........STOP THE KL
020262 004737 000000G JSR PC,.STPKL
8803 020266 032737 100000 000000G BIT #KF.CLK,.KLFLG ; ........IS THE CLOCK RUNNING?
8804 020274 001002 BNE 30$ ; ........YES -- GO ON
8805 020276 CALL .STCLK ; ........NO -- START IT
020276 004737 000000G JSR PC,.STCLK
8806 020302 30$:
8807 020302 POP <R1,R0> ; ........RESTORE THE POINTERS
020302 012601 MOV (SP)+,R1
020304 012600 MOV (SP)+,R0
8808 020306 012702 000000G MOV #.TPDEC,R2 ; ......DISPATCH FOR DECREMENT
8809 020312 CALL .TPCMP ; ......COMPARE ADDRESSES
020312 004737 000000G JSR PC,.TPCMP
8810 020316 002402 BLT 40$ ; ......ALL OK IF (R1) .GT. (R0)
8811 020320 012702 000000G MOV #.TPINC,R2 ; ......SET UP FOR FORWARD
8812 020324 40$:
8813 020324 010003 MOV R0,R3 ; ......END ADDRESS TO R3
8814 020326 010100 MOV R1,R0 ; ......BEGINNING ADDESSS TO R0
8815 020330 010301 MOV R3,R1 ; ......END ADDRESS TO R1
8816 020332 005046 CLR -(SP) ; ......CLEAR A DATA BUFFER
8817 020334 005046 CLR -(SP) ; .......
8818 020336 005046 CLR -(SP) ; ........
8819 020340 010603 MOV SP,R3 ; .........POINT TO IT
8820 020342 010337 000140' MOV R3,ZERDPB+6 ; .........SET UP THE DEPOSIT DPB
8821 020346 010037 000136' MOV R0,ZERDPB+4 ; .........SO
8822
8823 ; [CONTINUED ON THE FOLLOWING PAGE]
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 229
.ZEROC -- THE "ZERO" COMMAND 7609.15
8825 ; [CONTINUED FROM THE PREVIOUS PAGE]
8826
8827 020352 50$:
8828 020352 012703 000144 MOV #^D100,R3 ; .........LOOP COUNT TO R4
8829 020356 60$:
8833 020356 DIR$ #ZERDPB ; .........DO THE DEPOSIT
020356 012746 000132' MOV #ZERDPB,-(SP)
020362 104375 EMT 375
8835 020364 103415 BCS 80$ ; .........ERROR IF CC-C IS SET
8836 020366 CALL .TPCMP ; .........ARE WE DONE?
020366 004737 000000G JSR PC,.TPCMP
8837 020372 001405 BEQ 70$ ; .........YES -- EXIT
8838 020374 CALL (R2) ; .........NO -- COMPUTE NEXT ADDRESS
020374 004712 JSR PC,(R2)
8839 020376 077311 SOB R3,60$ ; .........LOOP THRU THIS SET
8840 020400 CALL .CKCTC ; .........LOOK FOR CONTROL-C
020400 004737 000000G JSR PC,.CKCTC
8841 020404 000762 BR 50$ ; .........AND GO ON
8842 ;
8843 020406 70$:
8844 020406 062706 000022 ADD #^D18,SP ; .........CLEAR THE STACK
8845 020412 005037 000000G CLR .SVKLF ; CLEAR ".SVKLF"
8846 020416 RETURN ; TO CALLER
020416 000207 RTS PC
8847 020420 80$:
8848 020420 022737 000000G 000000G CMP #IE.EBX,$DSW ; IS THE EBOX STOPPED?
8849 020426 001403 BEQ ZERESD ; YES -- SAY SO
8850 020430 ERROR$ DMF ; NO -- ERROR -- DEPOSIT MEMORY FAILED
020430 012746 015416 MOV #^RDMF,-(SP)
020434 104400 TRAP TC.ERR
8851 ;
8852 020436 ZERESD:
8853 020436 ERROR$ ESD ; ERROR -- EBOX STOPPED - DEPOSIT
020436 012746 021074 MOV #^RESD,-(SP)
020442 104400 TRAP TC.ERR
8854 ;
8855
8856 000132 .PSECT DPBS
8857
8858 000132 ZERDPB:
8859 000132 PRDP$ 0,0,0,ED.PHY
000132 011 005 .BYTE DR.DTE,5
000134 016 200 .BYTE DF.PDP,ED.PHY
000136 000000 .WORD 0
000140 000000 .WORD 0
000142 000000 .WORD 0
8860
8861 020444 .PSECT
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231
.ZEROC -- THE "ZERO" COMMAND 7609.15
8864
8865 .EVEN
8866 000001 .END
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-1
SYMBOL TABLE
ABTAB 000502R 002 ASH = 000240 CCA = 000014 CONI = 000005 DF.EMN= 000006
ACADR 000776RG 002 ASHC = 000244 CCEMSG 004060R 003 CONKNC 000152R DF.KLR= 000012
ACDAT 000736R 002 ATOMSG 004044R 003 CC.ALL= 003417 CONO = 000004 DF.KLW= 000013
ADD = 000270 AUGMSG= ****** GX CC.NRM= 000000 CONSO = 000007 DF.KLX= 000014
ADDB = 000273 A.LULU= 000002 CDD = 000020 CONSZ = 000006 DF.OFF= 000002
ADDI = 000271 A.LUNA= 000004 CDMTB 001164R 002 CPVMSG= ****** GX DF.ON = 000003
ADDM = 000272 A.LUNU= 000006 CD.ALL= 003400 CRATAB 000364R 002 DF.PDP= 000016
ADH = 000000 BC.HDS= ****** GX CD.CLC= 000400 CRLTAB 000400R 002 DF.PEX= 000015
ADL = 000100 BC.SKP= ****** GX CD.CRC= 002000 CRMMSG= ****** GX DG1B10 001534R 003
AND = 000404 BIT0 = 000001 CD.DPC= 001000 CR.ALL= 000003 DG1B11 001503R 003
ANDB = 000407 BIT00 = 000001 CD.NRM= 000000 CR.CR1= 000001 DG1B5 001757R 003
ANDCA = 000410 BIT01 = 000002 CHNPNT= 000001 CR.CR2= 000002 DG1B6 001714R 003
ANDCAB= 000413 BIT02 = 000004 CH.ALP= 000001 CR.FUL= 000000 DG1B7 001651R 003
ANDCAI= 000411 BIT03 = 000010 CH.ANM= 000003 CR.HLF= 000001 DG1B8 001605R 003
ANDCAM= 000412 BIT04 = 000020 CH.AOP= 000100 CR.NRM= 000000 DG1B9 001560R 003
ANDCB = 000440 BIT05 = 000040 CH.END= 000034 CR.QTR= 000002 DG3B1 002021R 003
ANDCBB= 000443 BIT06 = 000100 CH.EOC= 000010 CR.SLO= 000003 DIAG1 = 174430
ANDCBI= 000441 BIT07 = 000200 CH.EOL= 000004 CS.ALL= 000014 DIAG2 = 174432
ANDCBM= 000442 BIT08 = 000400 CH.EOS= 000020 CS.CS1= 000004 DIAG3 = 174436
ANDCM = 000420 BIT09 = 001000 CH.ILL= 000200 CS.CS2= 000010 DIATAB 000330R 002
ANDCMB= 000423 BIT1 = 000002 CH.NUL= 000000 CS.EXP= 177670 DIKL10= 000010
ANDCMI= 000421 BIT10 = 002000 CH.NUM= 000002 CS.EXT= 000010 DIV = 000234
ANDCMM= 000422 BIT11 = 004000 CH.PFX= 000040 CS.FST= 000004 DIVB = 000237
ANDI = 000405 BIT12 = 010000 CIDLUN= 000001 CS.MGN= 000004 DIVI = 000235
ANDM = 000406 BIT13 = 020000 CLDSTB 001074R 002 CS.NRM= 000000 DIVM = 000236
AOBJN = 000253 BIT14 = 040000 CLEAR = 000400 CS.UDF= 000014 DLYCNT= 174400
AOBJP = 000252 BIT15 = 100000 CLEARB= 000403 CTLMSG= ****** GX DMOVE = 000120
AOJ = 000340 BIT2 = 000004 CLEARI= 000401 CYCLS = 000002 DMOVEM= 000124
AOJA = 000344 BIT3 = 000010 CLEARM= 000402 DATAI = 000001 DMOVN = 000121
AOJE = 000342 BIT4 = 000020 CLOSE = 000070 DATAO = 000003 DMOVNM= 000125
AOJG = 000347 BIT5 = 000040 CLRTTB 001120R 002 DATBUF 001232R 002 DON10C= 040000
AOJGE = 000345 BIT6 = 000100 CLSRTB 001110R 002 DATE = 000004 DON10S= 100000
AOJL = 000341 BIT7 = 000200 CMD1 002341R 003 DCOMST= 000001 DON11C= 000100
AOJLE = 000343 BIT8 = 000400 CMD1A 002360R 003 DECMSG= ****** GX DON11S= 000200
AOJN = 000346 BIT9 = 001000 CMD1B 002373R 003 DEP = 010000 DOWMTB 001214R 002
AOS = 000350 BLKI = 000000 CMD1C 002414R 003 DEPBLK 000726R 002 DOWTAB 001154R 002
AOSA = 000354 BLKO = 000002 CMD1D 002444R 003 DEPOS 001453R 003 DPB = 000137
AOSE = 000352 BLT = 000251 CMD10 002732R 003 DEX = 000400 DPOAPE 002504R
AOSG = 000357 BPARER= 000020 CMD10B 002770R 003 DEXDON= 000004 DPOATB 000000R 002
AOSGE = 000355 CAI = 000300 CMD11 003007R 003 DEXWD1= 174406 DPODTB 000004R 002
AOSL = 000351 CAIA = 000304 CMD11A 003043R 003 DEXWD2= 174404 DPOITB 000010R 002
AOSLE = 000353 CAIE = 000302 CMD12 003062R 003 DEXWD3= 174402 DPOKCN 002512R
AOSN = 000356 CAIG = 000307 CMD13 003101R 003 DFAD = 000110 DPONTB 000014R 002
APR = 000000 CAIGE = 000305 CMD14 003122R 003 DFBEND= ****** GX DPOOAI 001510R
APRMSG= ****** GX CAIL = 000301 CMD2 002462R 003 DFCIFC 000644R DPOPTB 000020R 002
AP.ALL= 000177 CAILE = 000303 CMD3 002476R 003 DFDV = 000113 DPOVFE 002520R
AP.ARP= 001000 CAIN = 000306 CMD3A 002514R 003 DFMP = 000112 DPOZTB 000024R 002
AP.CDP= 000004 CALL = 000040 CMD4 002524R 003 DFN = 000131 DPS4 = 040000
AP.EIP= 000400 CALLI = 000047 CMD4A 002532R 003 DFRMSG 000000R 003 DPTMSG= ****** GX
AP.IPF= 000020 CAM = 000310 CMD5 002543R 003 DFSB = 000111 DRATAB 000414R 002
AP.MPE= 000010 CAMA = 000314 CMD5A 002576R 003 DFUNC = 000200 DRESET= 000100
AP.NRM= 001400 CAME = 000312 CMD6 002615R 003 DF.DMG= 000004 DRMMSG= ****** GX
AP.NXM= 000040 CAMG = 000317 CMD6A 002642R 003 DF.DMN= 000007 DR.DTE= 000011
AP.PWF= 000001 CAMGE = 000315 CMD7 002661R 003 DF.DOR= 000001 DSEND = 000004
AP.SAP= 000002 CAML = 000311 CMD7A 002713R 003 DF.EHG= 000010 DS04 = 004000
AP.SBE= 000100 CAMLE = 000313 CNUPE = 000002 DF.EHM= 000011 DS05 = 002000
ARMSG = ****** GX CAMN = 000316 CODLUN= 000002 DF.EMG= 000005 DS06 = 001000
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-2
SYMBOL TABLE
DTEBUF 000112R 002 D3.WEP= 000010 FADR = 000144 FR.RAR= 000240 FR.151= 000322
DTECMD= 000451 EBSEL = 000100 FADRB = 000147 FR.RBR= 000242 FR.152= 000324
DTEFLG= 000444 EBUSPC= 000020 FADRI = 000145 FR.RFM= 000246 FR.153= 000326
DTEF11= 000450 EBUSPS= 000004 FADRM = 000146 FR.RMQ= 000244 FR.154= 000330
DTEMTD= 000455 EDNKLA 000534R FDV = 000170 FR.SC1= 000262 FR.155= 000332
DTEMTI= 000456 EDONES= 040000 FDVB = 000173 FR.SC2= 000260 FR.156= 000334
DTEREG 000152R 002 ED.EPT= 000000 FDVL = 000171 FR.SR1= 000306 FR.157= 000336
DUPE = 000020 ED.EXV= 000040 FDVM = 000172 FR.SR2= 000304 FR.160= 000340
DURE = 000004 ED.PHY= 000200 FDVR = 000174 FR.VM0= 000320 FR.161= 000342
DV.LOG= ****** GX ED.UPT= 000100 FDVRB = 000177 FR.VM1= 000322 FR.162= 000344
DXWRD1= 002000 ED.USV= 000140 FDVRI = 000175 FR.VM2= 000324 FR.163= 000346
DX1MS1 001123R 003 EF.CRI= ****** GX FDVRM = 000176 FR.VM3= 000326 FR.164= 000350
DX1MS2 001143R 003 EF.PR1= ****** GX FEBMSG= ****** GX FR.VM4= 000330 FR.165= 000352
D.CCPU= ****** GX ELEMSG= ****** GX FERTAB 000430R 002 FR.VM5= 000332 FR.166= 000354
D.CKLN= ****** GX ENTER = 000077 FIX = 000122 FR.VM6= 000334 FR.167= 000356
D1.CES= 004000 EOSMSG 002315R 003 FIXR = 000126 FR.VM7= 000336 FR.170= 000360
D1.DCS= 000001 EPMSG0 002222R 003 FLTR = 000127 FR.100= 000200 FR.171= 000362
D1.DDT= 000040 EPMSG1 002236R 003 FMABO 003207R 003 FR.101= 000202 FR.172= 000364
D1.DEX= 000400 EPMSG2 002250R 003 FMBUF 000754R 002 FR.102= 000204 FR.173= 000366
D1.DFM= 000010 EPMSG3 002264R 003 FMERR 000752R 002 FR.103= 000206 FR.174= 000370
D1.DS0= 100000 EPTR = 000000 FMHED 003143R 003 FR.104= 000210 FR.175= 000372
D1.DS1= 040000 EQV = 000444 FMMSG = ****** GX FR.105= 000212 FR.176= 000374
D1.DS2= 020000 EQVB = 000447 FMP = 000160 FR.106= 000214 FR.177= 000376
D1.DS3= 010000 EQVI = 000445 FMPB = 000163 FR.107= 000216 FSB = 000150
D1.DS4= 004000 EQVM = 000446 FMPL = 000161 FR.110= 000220 FSBB = 000153
D1.DS5= 002000 ERR10C= 010000 FMPM = 000162 FR.111= 000222 FSBL = 000151
D1.DS6= 001000 ERR10S= 020000 FMPR = 000164 FR.112= 000224 FSBM = 000152
D1.HLP= 001000 ERR11C= 000001 FMPRB = 000167 FR.113= 000226 FSBR = 000154
D1.LBK= 000200 ERR11S= 000002 FMPRI = 000165 FR.114= 000230 FSBRB = 000157
D1.MBZ= 000442 EXADTB 000034R 002 FMPRM = 000166 FR.115= 000232 FSBRI = 000155
D1.PLS= 000020 EXAITB 000040R 002 FNCIFC 001274R FR.116= 000234 FSBRM = 000156
D1.RUN= 002000 EXAM 001463R 003 FNCOFC 001302R FR.117= 000236 FSC = 000132
D1.T10= 000200 EXANTB 000044R 002 FOFMSG 002113R 003 FR.120= 000240 FSSMSG= ****** GX
D1.T11= 000100 EXAOAI 002052R FONMSG 002105R 003 FR.121= 000242 FTBYTE= 000000
D1.V04= 000020 EXAPTB 000050R 002 FORPRO= 000020 FR.122= 000244 FTCRAM= 000000
D1.XFR= 000004 EXAZTB 000054R 002 FRIMSG 004465R 003 FR.123= 000246 FTDEBU= 000001
D1011 = 000040 EXBLK 000772R 002 FR.ADX= 000254 FR.124= 000250 FTDISP= 000000
D2.EBD= 040000 EXCH = 000250 FR.APR= 000220 FR.125= 000252 FTDRAM= 000000
D2.MBZ= 177641 EXCIOC 003346R FR.ARX= 000252 FR.126= 000254 FTHELP= 000000
D2.MS1= 000002 EXDAT 001002RG 002 FR.BRX= 000250 FR.127= 000256 FTKLE = 000001
D2.MS2= 000004 EXFMSG 002121R 003 FR.CA1= 000312 FR.130= 000260 FTKLER= 000000
D2.MS4= 000010 EXMDTB 000030R 002 FR.CA2= 000310 FR.131= 000262 FTLCVT= 000000
D2.MS8= 000020 EXRTBL= ****** GX FR.CL1= 000316 FR.132= 000264 FTLIST= 000001
D2.RA0= 100000 EXTEND= 000123 FR.CL2= 000314 FR.133= 000266 FTTRAK= 000001
D2.RA1= 040000 EXTKCN 003172R FR.CRD= 000302 FR.134= 000270 FTTRP4= 000001
D2.RA2= 020000 EXTMSG= ****** GX FR.CR1= 000316 FR.135= 000272 FTUCVR= 000130
D2.RST= 000100 E.FCID= 000002 FR.CR2= 000314 FR.136= 000274 FT1105= 000001
D3.CDD= 000020 E.FCOD= 000003 FR.CR3= 000312 FR.137= 000276 FT1110= 000001
D3.MBZ= 177704 E.FCTC= ****** GX FR.CR4= 000310 FR.140= 000300 FT1115= 000001
D3.NPE= 000002 E.FFIL= 000006 FR.DA1= 000260 FR.141= 000302 FT1120= 000001
D3.PAR= 040000 E.FHTO= 000001 FR.DA2= 000262 FR.142= 000304 FT1135= 000001
D3.RST= 000001 E.FKLN= 000004 FR.EBS= 000356 FR.143= 000306 FT1140= 000001
D3.SCD= 000040 E.FLOD= 000005 FR.FE1= 000266 FR.144= 000310 FT1145= 000000
D3.SSL= 100000 FAD = 000140 FR.FE2= 000264 FR.145= 000312 FULMSG= ****** GX
D3.TXB= 000001 FADB = 000143 FR.PI0= 000200 FR.146= 000314 FW.APE= 000116
D3.UPE= 000020 FADL = 000141 FR.PI1= 000202 FR.147= 000316 FW.CA1= 000122
D3.URE= 000004 FADM = 000142 FR.RAD= 000256 FR.150= 000320 FW.CA2= 000124
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-3
SYMBOL TABLE
FW.CDR= 000112 FX.CON= 000024 G.TIMI= 000010 HRLI = 000505 INPUT = 000066
FW.CHN= 000160 FX.CRF= 000020 G.TIMO= 000002 HRLM = 000506 INTMSG= ****** GX
FW.CRD= 000126 FX.CSP= 000000 G.TISC= 000012 HRLO = 000564 INTROF= 000010
FW.CR1= 000136 FX.CST= 000002 G.TIYR= 000000 HRLOI = 000565 INTRON= 000040
FW.CR2= 000134 FX.EBC= 000006 HDDAG1 000216R 003 HRLOM = 000566 INTSON= 000001
FW.CR3= 000132 FX.MBC= 000004 HDDAG2 000232R 003 HRLOS = 000567 INT10S= 000400
FW.CR4= 000130 FX.SMR= 000016 HDDAG3 000262R 003 HRLS = 000507 INT11C= 002000
FW.CSR= 000110 FX.SRF= 000022 HDDEX1 000046R 003 HRLZ = 000514 INT11S= 004000
FW.DJE= 000146 FX.SYC= 000010 HDDEX2 000032R 003 HRLZI = 000515 IOR = 000434
FW.DJO= 000150 FX.UDR= 000032 HDDEX3 000016R 003 HRLZM = 000516 IORB = 000437
FW.DR1= 000140 FX.UIR= 000030 HDDLY 000004R 003 HRLZS = 000517 IORI = 000435
FW.DR2= 000142 FX.000= 000000 HDSTAT 000246R 003 HRR = 000540 IORM = 000436
FW.DR3= 000144 FX.001= 000002 HDTAD1 000062R 003 HRRE = 000570 IO.ACE= ****** GX
FW.EBL= 000174 FX.002= 000004 HDTAD2 000076R 003 HRREI = 000571 IO.ACR= ****** GX
FW.IAC= 000154 FX.003= 000006 HDT10A 000140R 003 HRREM = 000572 IO.ATT= ****** GX
FW.IOJ= 000152 FX.004= 000010 HDT10B 000111R 003 HRRES = 000573 IO.DET= ****** GX
FW.IPE= 000114 FX.005= 000012 HDT10D 000167R 003 HRRI = 000541 IP.ALL= 000017
FW.KLO= 000156 FX.006= 000014 HDT11A 000154R 003 HRRM = 000542 IP.CRP= 000004
FW.LAR= 000176 FX.007= 000016 HDT11B 000125R 003 HRRO = 000560 IP.DRP= 000002
FW.LBL= 000106 FX.010= 000020 HDT11D 000203R 003 HRROI = 000561 IP.FMP= 000010
FW.LBR= 000104 FX.011= 000022 HIBYTE= 177400 HRROM = 000562 IP.FSS= 000001
FW.MBX= 000162 FX.012= 000024 HLFMSG= ****** GX HRROS = 000563 IP.NRM= 000016
FW.SBR= 000174 FX.013= 000026 HLL = 000500 HRRS = 000543 JANMSG= ****** GX
FW.040= 000100 FX.014= 000030 HLLE = 000530 HRRZ = 000550 JFCL = 000255
FW.041= 000102 FX.015= 000032 HLLEI = 000531 HRRZI = 000551 JFFO = 000243
FW.042= 000104 FX.016= 000034 HLLEM = 000532 HRRZM = 000552 JRA = 000267
FW.043= 000106 FX.017= 000036 HLLES = 000533 HRRZS = 000553 JRST = 000254
FW.044= 000110 FX.020= 000040 HLLI = 000501 H.KCAC= ****** GX JSA = 000266
FW.045= 000112 FX.021= 000042 HLLM = 000502 H.KCHN= ****** GX JSP = 000265
FW.046= 000114 FX.022= 000044 HLLO = 000520 H.KEXT= ****** GX JSR = 000264
FW.047= 000116 FX.023= 000046 HLLOI = 000521 H.KMOS= ****** GX JSYS = 000104
FW.050= 000120 FX.024= 000050 HLLOM = 000522 H.KPWR= ****** GX JULMSG= ****** GX
FW.051= 000122 FX.025= 000052 HLLOS = 000523 I = 000000 JUMP = 000320
FW.052= 000124 FX.026= 000054 HLLS = 000503 IBP = 000133 JUMPA = 000324
FW.053= 000126 FX.027= 000056 HLLZ = 000510 IDIV = 000230 JUMPE = 000322
FW.054= 000130 FX.030= 000060 HLLZI = 000511 IDIVB = 000233 JUMPG = 000327
FW.055= 000132 FX.031= 000062 HLLZM = 000512 IDIVI = 000231 JUMPGE= 000325
FW.056= 000134 FX.032= 000064 HLLZS = 000513 IDIVM = 000232 JUMPL = 000321
FW.057= 000136 FX.033= 000066 HLR = 000544 IDPB = 000136 JUMPLE= 000323
FW.060= 000140 FX.034= 000070 HLRE = 000574 IE.ACT= ****** GX JUMPN = 000326
FW.061= 000142 FX.035= 000072 HLREI = 000575 IE.EBX= ****** GX JUNMSG= ****** GX
FW.062= 000144 FX.036= 000074 HLREM = 000576 IE.INS= ****** GX KF.BRM= 001000
FW.063= 000146 FX.037= 000076 HLRES = 000577 IFLOP = 100000 KF.CES= 000100
FW.064= 000150 GETSTS= 000062 HLRO = 000564 ILDB = 000134 KF.CLK= 100000
FW.065= 000152 GOOBLK 000766R 002 HLROI = 000565 IMUL = 000220 KF.CON= 000200
FW.066= 000154 GTDDBT 006214R HLROM = 000566 IMULB = 000223 KF.DEF= 000200
FW.067= 000156 GTDDOR 006222R HLROS = 000567 IMULI = 000221 KF.KLO= 000400
FW.070= 000160 GTDIDF 006230R HLRS = 000547 IMULM = 000222 KF.MRS= 020000
FW.071= 000162 GTDMS0 002277R 003 HLRZ = 000554 IN = 000056 KF.RUN= 040000
FW.072= 000164 GTDYOR 006236R HLRZI = 000555 INBUF = 000064 KF.SIM= 010000
FW.073= 000166 GTTITF 006576R HLRZM = 000556 INCEX 000072R 002 KF.SMC= 004000
FW.074= 000170 GTTMS0 002306R 003 HLRZS = 000557 INCFR 000064R 002 KF.SPM= 002000
FW.075= 000172 GTTTOR 006604R HRL = 000504 INCTX 000102R 002 KLETAB 000600RG 002
FW.076= 000174 G.TICP= 000016 HRLE = 000534 INDLUN= 000005 KLIOT = 000700
FW.077= 000176 G.TICT= 000014 HRLEI = 000535 INIDNP 007314R KLNLGE= 001276R 002
FX.BMC= 000012 G.TIDA= 000004 HRLEM = 000536 INIDTC 007322R KLNLGL= ****** GX
FX.CMR= 000014 G.TIHR= 000006 HRLES = 000537 INIT = 000041 KLNLOG 001252R 002
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-4
SYMBOL TABLE
KLNPLN= ****** GX MULM = 000226 PE.FMP= 000010 REQKLD 000114R 004 SETA = 000424
KLNPWD 001276R 002 M.TAKP= ****** GX PE.FSS= 000020 RFMAD0= 100000 SETAB = 000427
KLPWRF= 000010 NOFMSG 002056R 003 PHYS = 100000 RFMAD1= 040000 SETACI 000744R 002
KL.ABO= ****** GX NOMSG 004342R 003 PI = 000004 RFMAD2= 020000 SETAI = 000425
KL.REQ= ****** GX NONMSG 004212R 003 PIDENT= 000000 RFMAD3= 010000 SETAM = 000426
K.LSCK= ****** GX NOOP 000252R 002 POP = 000262 RM = 000010 SETCA = 000450
LDB = 000135 NOVMSG= ****** GX POPJ = 000263 RNGEX 000070R 002 SETCAB= 000453
LGFMSG 003335R 003 NULSTP= 000040 PRGMSG= ****** GX RNGFR 000062R 002 SETCAI= 000451
LGSMSG 003270R 003 NUPE = 000002 PRI7 = 000340 RNGTX 000110R 002 SETCAM= 000452
LGVMSG 003323R 003 OCTMSG= ****** GX PROFF 001477R 003 ROT = 000241 SETCM = 000460
LG.ALL= 000007 OFFMSG= ****** GX PRON 001473R 003 ROTC = 000245 SETCMB= 000463
LG.ARG= 000010 ONMSG = ****** GX PROPNT= 000021 RQSKLD 000000R 004 SETCMI= 000461
LG.MAR= 000020 OPEN = 000050 PRTOFF= 004000 RSAKCN 010234R SETCMM= 000462
LG.MNT= 000004 OPRMSG= ****** GX PR0 = 000000 RSAPRI 000662R 002 SETM = 000414
LG.MOD= 000040 OR = 000434 PR1 = 000040 RSERRI 000670R 002 SETMB = 000417
LG.NUL= 000000 ORB = 000437 PR2 = 000100 RSPGI0 000712R 002 SETMI = 000415
LG.OPR= 000001 ORCA = 000454 PR3 = 000140 RSPGI1 000720R 002 SETMM = 000416
LG.PRG= 000002 ORCAB = 000457 PR4 = 000200 RSPKCN 010412R SETO = 000474
LG.PRM= 000003 ORCAI = 000455 PR5 = 000240 RSTIOI 000676R 002 SETOB = 000477
LG.RNG= 000100 ORCAM = 000456 PR6 = 000300 RSTPII 000704R 002 SETOI = 000475
LG.RPT= 000400 ORCB = 000470 PR7 = 000340 RUNITN 010504R SETOM = 000476
LG.STR= 000200 ORCBB = 000473 PS = 177776 RUNNST 010512R SETSTS= 000060
LOAD11= 000004 ORCBI = 000471 PSENTB 001130R 002 RUNTAA 010520R SETZ = 000400
LOGBUF 001010R 002 ORCBM = 000472 PSWW1 = 000005 R.QSGC= 000015 SETZB = 000403
LOGLUN= 000004 ORCM = 000464 PSWW10= 000014 R.QSPC= 000014 SETZI = 000401
LOGMSG= ****** GX ORCMB = 000467 PSWW11= 000015 R.QSPN= 000006 SETZM = 000402
LOOKUP= 000076 ORCMI = 000465 PSWW12= 000016 R.QSPR= 000012 SKIP = 000330
LPTMSG= ****** GX ORCMM = 000466 PSWW13= 000017 R.QSTN= 000002 SKIPA = 000334
LSH = 000242 ORI = 000435 PSWW2 = 000006 SATMSG 004475R 003 SKIPE = 000332
LSHC = 000246 ORM = 000436 PSWW3 = 000007 SAVBLK 000764R 002 SKIPG = 000337
LSTLUN= 000003 OUT = 000057 PSWW4 = 000010 SBRTAB 000444R 002 SKIPGE= 000335
MAP = 000257 OUTBUF= 000065 PSWW5 = 000011 SCAILI 011052R SKIPL = 000331
MARMSG= ****** GX OUTPUT= 000067 PSWW6 = 000012 SCANOR 011060R SKIPLE= 000333
MAYMSG= ****** GX PAG = 000010 PSWW7 = 000013 SCCCLE 013372R SKIPN = 000336
MGNMSG= ****** GX PAR$$E= 000027 PS.NRM= 001416 SCCLKT 001050R 002 SLOMSG= ****** GX
MNTMSG= ****** GX PAR$$K= 000126 PULSE = 000020 SCD = 000040 SOJ = 000360
MONMSG 004417R 003 PAR$$V= 000006 PUSH = 000261 SCDCDI 016330R SOJA = 000364
MOVE = 000200 PCMSG = ****** GX PUSHJ = 000260 SCDDAV 016336R SOJE = 000362
MOVEI = 000201 PCTAB 000474R 002 QSIZE = 000023 SCDNDI 016344R SOJG = 000367
MOVEM = 000202 PC.AFI= 000020 QTRMSG= ****** GX SCDNTI 016352R SOJGE = 000365
MOVES = 000203 PC.AT0= 000004 Q.BYCT= 000016 SCKIPC 016720R SOJL = 000361
MOVM = 000214 PC.AT1= 000010 Q.IBUF= 000014 SCKKWE 017264R SOJLE = 000363
MOVMI = 000215 PC.BIS= 000400 Q.IOAE= 000012 SCKMS0 004517R 003 SOJN = 000366
MOVMM = 000216 PC.CY0= 004000 Q.IOEF= 000006 SCKMS1 004532R 003 SOS = 000370
MOVMS = 000217 PC.CY1= 002000 Q.IOFN= 000002 SCKMS2 004556R 003 SOSA = 000374
MOVN = 000210 PC.FOV= 001000 Q.IOLU= 000004 SCKMS3 004603R 003 SOSE = 000372
MOVNI = 000211 PC.FUF= 000002 Q.IOPL= 000014 SCKMS4 004632R 003 SOSG = 000377
MOVNM = 000212 PC.LIP= 000040 Q.IOPR= 000007 SCKNPI 016676R SOSGE = 000375
MOVNS = 000213 PC.NDV= 000001 Q.IOSB= 000010 SCKPTL 016704R SOSL = 000371
MOVS = 000204 PC.OVF= 010000 Q.OBUF= 000014 SCKSKI 016712R SOSLE = 000373
MOVSI = 000205 PC.UIO= 000100 Q.OVFC= 000020 SCOCAP 012454R SOSN = 000376
MOVSM = 000206 PC.USR= 000200 RAMIS0= 010000 SCPART 001062R 002 SPCTAB 000314R 002
MOVSS = 000207 PERCLR= 001000 RDPITB 000346R 002 SCPILS 015060R SPC1 001367R 003
MPE11 = 001000 PE.ALL= 000037 RDPITE= 000362R 002 SCPSCF 015066R SPC2 001373R 003
MUL = 000224 PE.CES= 000001 RELEAS= 000071 SCPSPF 015074R SPC3 001410R 003
MULB = 000227 PE.CRM= 000004 REMMSG= ****** GX SCRTAB 000460R 002 SPC4 001414R 003
MULI = 000225 PE.DRM= 000002 RENAME= 000055 SEPMSG= ****** GX SPC5 001431R 003
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-5
SYMBOL TABLE
SPC6 001442R 003 SUNMSG 004507R 003 TOIP = 000002 TTCALL= 000051 WHMMSG 003473R 003
SSTLEN= ****** GX SWPFSW 011664R TOIT = 000001 TTYMSG= ****** GX WHOMSG 003505R 003
STASZI 013200R SWR = 177570 TO10 = 000200 TUEMSG 004427R 003 WHOTMS 003371R 003
STAT = 174434 SWSLLT= 100000 TO10AD= 174420 TYDMTB 000544R 002 WHRCRH 014526R
STATAB 000254R 002 SXCT = 000106 TO10BC= 174414 TYLGMS 012312R WHRECM 004017R 003
STATO = 000061 SYMTAB 000212R 002 TO10BM= 000001 TYPAD2 003570R WHRMRH 014520R
STATUS= 000022 TAKIRE 010662R TO10DB= 000400 TYPDG1 004012R WHRMSG 003453R 003
STATYP 003462R TAKNSF 010670R TO10DN= 100000 TYPDG3 004064R WHTMSG 003567R 003
STATZ = 000063 TAKTAB 000656RG 002 TO10DT= 174424 TYPDTE 003364R WHWTAB 001030R 002
STA0 001100R 003 TA2MS1 001202R 003 TO10ER= 020000 TYPDX1 003520R WPMSG0 004217R 003
STA1 001036R 003 TA2MS2 001226R 003 TO11 = 000100 UGETF = 000073 WPMSG1 004251R 003
STA10 000475R 003 TA2MS3 001246R 003 TO11AD= 174422 UJEN = 000100 WPMSG2 004277R 003
STA11 000436R 003 TA2MS4 001305R 003 TO11BC= 174416 UNASG1= 000032 WRLMSG 003526R 003
STA12 000414R 003 TA2MS5 001344R 003 TO11BM= 020000 UNASG2= 000033 WRTMSG 003547R 003
STA13 000357R 003 TC.CON= 000377 TO11DB= 004000 UNASG3= 000034 WVMSG1 003607R 003
STA14 000334R 003 TC.CTC= 000002 TO11DN= 000200 UNASG4= 000035 WVMSG2 003631R 003
STA15 000276R 003 TC.ERR= 000000 TO11DT= 174426 UNASG5= 000036 XCT = 000256
STA2 001004R 003 TC.RST= 000001 TO11ER= 000002 UNASG6= 000037 XOR = 000430
STA3 000757R 003 TDC = 000650 TRC = 000640 USETI = 000074 XORB = 000433
STA4 000727R 003 TDCA = 000654 TRCA = 000644 USETO = 000075 XORI = 000431
STA5 000666R 003 TDCE = 000652 TRCE = 000642 USRMSG= ****** GX XORM = 000432
STA6 000641R 003 TDCN = 000656 TRCN = 000646 VF.DSP= 000060 XR = 000000
STA7 000610R 003 TDN = 000610 TRN = 000600 VF.FFD= 000061 YESMSG 004336R 003
STA8 000551R 003 TDNA = 000614 TRNA = 000604 VF.INT= 000000 YONMSG 004317R 003
STA9 000515R 003 TDNE = 000612 TRNE = 000602 VF.OVR= 000053 ZERDPB 000132R 004
STOPEX 000066R 002 TDNN = 000616 TRNN = 000606 VF.PRM= 000044 ZERESD 020436R
STOPFR 000060R 002 TDO = 000670 TRO = 000660 VF.SSP= 000040 ZSTOP = 040000
STOPTX 000074R 002 TDOA = 000674 TROA = 000664 VMAMSG= ****** GX $DIV = ****** GX
ST.CED= 000100 TDOE = 000672 TROE = 000662 VMATB 000510R 002 $DSW = ****** GX
ST.CLE= 000001 TDON = 000676 TRON = 000666 VMHTB 000516R 002 $MUL = ****** GX
ST.CTD= 040000 TDZ = 000630 TRZ = 000620 WACMSG 003127R 003 $$ = 000037
ST.CTE= 010000 TDZA = 000634 TRZA = 000624 WCMMSG 003413R 003 $$A = 000100
ST.DW1= 002000 TDZE = 000632 TRZE = 000622 WCMSG0 004130R 003 $$B = 000000
ST.DXD= 000004 TDZN = 000636 TRZN = 000626 WCMSG1 004154R 003 $$C = 000200
ST.EBS= 000100 TEMADR 000732R 002 TR.ALL= 000077 WCMSG2 004170R 003 $$D = 000011
ST.EDB= 004000 TENAD1= 174410 TR.DEP= 000020 WCMSG3 004202R 003 $$E = 000016
ST.EPE= 000020 TENAD2= 174412 TR.DTE= 000040 WEDMSG 004440R 003 $$F = 000000
ST.IDS= 000010 TENMSG= ****** GX TR.EXM= 000010 WEP = 000010 $$$ARG= 000006
ST.IEN= 000040 THUMSG 004453R 003 TR.FRD= 000002 WHDMS0 004345R 003 $$$OST= 000016
ST.ION= 000001 TLC = 000641 TR.FWR= 000004 WHDMS1 004373R 003 $$$T1 = 000000
ST.MBZ= 000000 TLCA = 000645 TR.FXC= 000001 WHHMS0 003653R 003 .ABORT 000004RG
ST.MOD= 000010 TLCE = 000643 TSC = 000651 WHHMS1 003667R 003 .ABRTC 000000RG
ST.MPE= 001000 TLCN = 000647 TSCA = 000655 WHHMS2 003701R 003 .ABRT0 000032RG
ST.NST= 000040 TLN = 000601 TSCE = 000653 WHHMS3 003711R 003 .APRWD= ****** GX
ST.RIZ= 010000 TLNA = 000605 TSCN = 000657 WHHMS4 003740R 003 .ASCID 000016RG 004
ST.RST= 011121 TLNE = 000603 TSN = 000611 WHHMS5 003765R 003 .ASCOD 000026RG 004
ST.SEP= 000004 TLNN = 000607 TSNA = 000615 WHHMS6 004010R 003 .ASLST 000036RG 004
ST.STE= 000002 TLO = 000661 TSNE = 000613 WHIMSG 003433R 003 .ATLMD= 000033
ST.TED= 000200 TLOA = 000665 TSNN = 000617 WHKMRB 005007R 003 .ATLST 000064R 004
ST.TER= 000002 TLOE = 000663 TSO = 000671 WHKMSA 005000R 003 .ATOTA= ****** GX
ST.TXD= 100000 TLON = 000667 TSOA = 000675 WHKMSI 005032R 003 .BRCLK= 005000
ST.TXE= 020000 TLZ = 000621 TSOE = 000673 WHKMSK 005043R 003 .BUFSZ= ****** GX
ST.XDB= 000400 TLZA = 000625 TSON = 000677 WHKMS0 004650R 003 .CECLK= 004000
SUB = 000274 TLZE = 000623 TSZ = 000631 WHKMS1 004661R 003 .CESCK= ****** GX
SUBB = 000277 TLZN = 000627 TSZA = 000635 WHKMS2 004672R 003 .CHTAB= ****** GX
SUBI = 000275 TOBM = 000004 TSZE = 000633 WHKMS3 004720R 003 .CIBFR= ****** GX
SUBM = 000276 TOD = 000003 TSZN = 000637 WHKMS4 004750R 003 .CISTS= ****** GX
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-6
SYMBOL TABLE
.CKARG= ****** GX .DPOST 002206RG .EXEWI 002074RG .INVBN= ****** GX .MEMFL= ****** GX
.CKCOL= ****** GX .DPOSZ 000216RG .EXEWN 002102RG .IRADX= ****** GX .MEMRS= 076000
.CKCTC= ****** GX .DPOTB= ****** GX .EXEWP 002110RG .IRLTC= 014000 .MISC = ****** GX
.CKEOC= ****** GX .DPSEE 001406RG .EXEWT 002060RG .JUMPC 013072RG .MON = ****** GX
.CKEOS= ****** GX .DPSTE 002256RG .EXFER 004520RG .KACFL= ****** GX .MONTB= ****** GX
.CKOBJ= ****** GX .DRLTC= 015000 .EXFMR 004164RG .KLCON= ****** GX .NOERR= ****** GX
.CKRNP= ****** GX .DSACF= 066000 .EXITP= ****** GX .KLE 007520RG .NOHLT= ****** GX
.CKRUN= ****** GX .DSIOJ= 065000 .EXKLD 003206RG .KLEDF= ****** GX .NOTSW= ****** GX
.CKSYM= ****** GX .DTBUF 000524RG 002 .EXKLI 003214RG .KLEPT= ****** GX .OPEN = ****** GX
.CLKWD= ****** GX .DTDW1= ****** GX .EXKLM= ****** GX .KLERQ= ****** GX .ORADX= ****** GX
.CLOSE= ****** GX .DTLST 000100R 004 .EXKLN 003222RG .KLEVL= ****** GX .OTATT= ****** GX
.CLRCM 012646RG .DTSTA= ****** GX .EXKLP 003230RG .KLFCF= ****** GX .OTBBC= ****** GX
.CLRMR= 006000 .DTSTW= 000004 .EXKLT 003200RG .KLFLG= ****** GX .OTBUF= ****** GX
.CLRUN= 010000 .EDELA= ****** GX .EXMEE 001632RG .KLHLT= ****** GX .OTFN = ****** GX
.COMEF= ****** GX .EDEWD 000370RG .EXMEL 000352RG .KLINC= ****** GX .OTFNB= ****** GX
.COMMA= 000054 .EDEWI 000402RG .EXMKL 000362RG .KLIWD= ****** GX .OTPOS= ****** GX
.CONBT= 012000 .EDEWN 000402RG .EXMPI 004612RG .KLMTB= ****** GX .OTVBN= ****** GX
.CONTC 000056RG .EDEWP 000370RG .EXMQR 004172RG .KLMT1= ****** GX .OUTLG= ****** GX
.CPUSN= ****** GX .EDKLA= ****** GX .EXMTB= ****** GX .KLNFD= ****** GX .OUTLP= ****** GX
.CSHRG= 164000 .EDKLC 000512RG .EXMTE 002646RG .KLNFT= ****** GX .OUTTY= ****** GX
.DATE3= ****** GX .EDKLD 000440RG .EXOBJ 000324RG .KLNMD= ****** GX .PASS = ****** GX
.DAY = ****** GX .EDKLI 000456RG .EXREG 004764RG .KLNPB= ****** GX .PCAB1= 150000
.DEPAR 002116RG .EDKLN 000426RG .EXSBR 004526RG .KLNPE= ****** GX .PCAB2= 151000
.DFBLK= ****** GX .EDKLP 000414RG .EXSCR 004534RG .KLNPW= ****** GX .PCAB3= 152000
.DFCOM 000542RG .EDKLX= ****** GX .EXVAB 004200RG .KLNSW= ****** GX .PCAB4= 153000
.DFRED 000652RG .EIOJA= 067000 .EXVMA 004206RG .KLNTD= ****** GX .PITAB= ****** GX
.DFWRT 001106RG .ELDDW= ****** GX .EXVMH 004214RG .KLNTT= ****** GX .PRDTE= ****** GX
.DFXCT 001166RG .ELEDW= ****** GX .EXVPC 004222RG .KLRLD= ****** GX .PSCWD= ****** GX
.DIAG1= 000000 .ENTER= ****** GX .FEMOD= ****** GX .KLRST= ****** GX .QUITC 011004RG
.DIAG2= 000002 .EXAD 004112RG .FREAD= ****** GX .KLSNP= ****** GX .RCRM1= 147000
.DIAG3= 000006 .EXADX 004120RG .FWRIT= ****** GX .KLST = ****** GX .RCRM2= 146000
.DISCC 001310RG .EXAMA 000234RG .FXCT = ****** GX .KLSTP= ****** GX .RCRM3= 145000
.DOW = ****** GX .EXAMC 000222RG .GFNR = 102000 .LCRDL= 052000 .RCRM4= 144000
.DPBFR= ****** GX .EXAMD 000240RG .GTDAT 005600RG .LCRDR= 051000 .RCSPF= 141000
.DPBFX= ****** GX .EXAME 001604RG .GTELN= ****** GX .LCRM1= 057000 .RDADR 005026RG
.DPETB= ****** GX .EXAMF 004316RG .GTKLA= ****** GX .LCRM2= 056000 .RDADX 005034RG
.DPEWD 001524RG .EXAMI 000244RG .GTKLN= ****** GX .LCRM3= 055000 .RDAPR 003236RG
.DPEWI 001532RG .EXAMK 004422RG .GTLIN= ****** GX .LCRM4= 054000 .RDARR 005042RG
.DPEWN 001540RG .EXAMN 000250RG .GTNBR= ****** GX .LCRM5= 053000 .RDARX 005050RG
.DPEWP 001546RG .EXAMP 000254RG .GTNUM= ****** GX .LDAR = 077000 .RDBRR 005056RG
.DPEWT 001516RG .EXAMT 002614RG .GTR50 010676RG .LDBRL= 043000 .RDBRX 005064RG
.DPKLD 002534RG .EXAMZ 000260RG .GTTIM 006244RG .LDBRR= 042000 .RDCPP= ****** GX
.DPKLI 002542RG .EXARR 004126RG .HALTC 007064RG .LDCK1= 046000 .RDCRA 005322RG
.DPKLM= ****** GX .EXARX 004134RG .HRDWR= ****** GX .LDCK2= 047000 .RDCRL 005330RG
.DPKLN 002550RG .EXBFR= ****** GX .INBBC= ****** GX .LDCLK= ****** GX .RDCRM= ****** GX
.DPKLP 002556RG .EXBRR 004142RG .INCHC= ****** GX .LDDIS= 045000 .RDDRA 005336RG
.DPKLT 002526RG .EXBRX 004150RG .INDFG= ****** GX .LDPAR= ****** GX .RDEBS 005072RG
.DPOBJ 000264RG .EXCRA 004476RG .INEXT 000574R 002 .LDRJD= 064000 .RDFER 005344RG
.DPOEL 000314RG .EXCRL 004504RG .INFN = ****** GX .LDRJV= 063000 .RDFLG 005116RG
.DPOKL 000306RG .EXCTC 003300RG .INFNB= ****** GX .LDRM1= 060000 .RDFMA= ****** GX
.DPOSA 000172RG .EXCTF= ****** GX .INICL= 070000 .LDRM2= 061000 .RDFMO= ****** GX
.DPOSC 000160RG .EXDRA 004512RG .INICP 007330RG .LDRM3= 062000 .RDFMP= ****** GX
.DPOSD 000176RG .EXDTE 003354RG .INIC0 007100RG .LDSEL= 044000 .RDFMR 005100RG
.DPOSE 001334RG .EXEBS 004156RG .INIT 007102RG .LDZFL= ****** GX .RDIPE= ****** GX
.DPOSI 000202RG .EXECT= ****** GX .INITC 007074RG .LGLWD= ****** GX .RDJ14= 134000
.DPOSN 000206RG .EXETB= ****** GX .INKLF 007132RG .LOKUP= ****** GX .RDJ71= 135000
.DPOSP 000212RG .EXEWD 002066RG .INPOS= ****** GX .MARKC 007770RG .RDMAB= 133000
ZEROC -- ZERO COMMAND MODULE 76 MACRO M1113 10-NOV-81 17:48 PAGE 231-7
SYMBOL TABLE
.RDMQR 005106RG .SCCEE 015234RG .SCPFM 015314RG .TAKEC 010526RG .UMRKC 007764RG
.RDPI 005242RG .SCCLK 014660RG .SCPFS 015322RG .TAKE1 010602RG .VERNO= ****** GX
.RDSBR 005352RG .SCCLN 015102RG .SCPST 014714RG .TCRLF= ****** GX .VFYFL= ****** GX
.RDSCR 005360RG .SCCOM 013340RG .SCPTB= ****** GX .TPADD= ****** GX .WHACB 011152RG
.RDVAB 005456RG .SCCON 013256RG .SCRLD 013772RG .TPCLR= ****** GX .WHATB= ****** GX
.RDVMA 005464RG .SCCOO 013324RG .SCRPT 014112RG .TPCMP= ****** GX .WHATC 012722RG
.RDVMH 005472RG .SCCOP 013332RG .SCRTY 014006RG .TPDEC= ****** GX .WHATV 014262RG
.RDVPC 005450RG .SCCOT= ****** GX .SCTAK 014606RG .TPDIV= ****** GX .WHCON 013400RG
.RDXSV= ****** GX .SCCOU 013366RG .SCTRK 014210RG .TPINC= ****** GX .WHDAT 016360RG
.RECNT= ****** GX .SCCRF 015104RG .SECLK= 003000 .TPNEG= ****** GX .WHINC 013526RG
.RECPT= ****** GX .SCCRH 015110RG .SETCM 012666RG .TPSHI= ****** GX .WHKLN 017670RG
.RECRD= ****** GX .SCCRQ 015116RG .SETC0 012676RG .TPSUB= ****** GX .WHMEM 013666RG
.REGSV= ****** GX .SCCRS 015124RG .SETMR= 007000 .TPTST= ****** GX .WHOFS 013746RG
.RELWD= ****** GX .SCCSE 015136RG .SETRN= 011000 .TRKWD= ****** GX .WHOUT 012530RG
.RESTB= ****** GX .SCCSI 015166RG .SETTB= ****** GX .TRPTV= ****** GX .WHRDW 014322RG
.RESTC 010066RG .SCCSM 015172RG .SFREC 014534RG .TRP4V= ****** GX .WHREC 014550RG
.RESTD= ****** GX .SCCTB= ****** GX .SHUTC 012760RG .TSCAN= ****** GX .WHRLD 014034RG
.RESTI= ****** GX .SCDAT 016032RG .SNAP 007736RG .TYACE= ****** GX .WHRPT 013540RG
.RESTP= ****** GX .SCFSS 014672RG .SPACE= 000040 .TYAC1= ****** GX .WHRTY 014060RG
.RNDPB 000046RG 004 .SCINC 013450RG .SSCAN= ****** GX .TYCHR= ****** GX .WHTAK 014622RG
.RPTCT= ****** GX .SCKLN 016534RG .SSCLK= 002000 .TYCOL= ****** GX .WHTCA 015364RG
.RPTPT= ****** GX .SCMEL 013646RG .SSM = ****** GX .TYCOM= ****** GX .WHTCL 015350RG
.RSALL 010146RG .SCMEM 013614RG .SSTTB= ****** GX .TYDAT 006612RG .WHTPA 015566RG
.RSAPR 010242RG .SCMKL 013660RG .STCLK= ****** GX .TYELA= ****** GX .WHTPS 015552RG
.RSDTE 010214RG .SCMTB= ****** GX .STPCL= 000000 .TYELN= ****** GX .WHTRK 014232RG
.RSERR 010250RG .SCNOT 012746RG .STPKL= ****** GX .TYKLA= ****** GX .WRCRM= ****** GX
.RSPAG 010274RG .SCOFS 013720RG .STRCL= 001000 .TYKLN= ****** GX .WRITZ= ****** GX
.RSSWP 011672RG .SCOTC 012506RG .STRTB= ****** GX .TYLIN= ****** GX .WRMBX= 071000
.RSTIN 010220RG .SCOTL 012014RG .STRTC 013050RG .TYMIN= ****** GX .WRTAR= ****** GX
.RSTIO 010256RG .SCOTP 012374RG .STRTT 013102RG .TYMSF= ****** GX .XFRCK 001222RG
.RSTKL= ****** GX .SCOTT= ****** GX .STRTU 013206RG .TYMSG= ****** GX .XFWCK 001240RG
.RSTPI 010264RG .SCOTY 012462RG .STRTV= ****** GX .TYOUT= ****** GX .XFXCK 001256RG
.RUNCM 010420RG .SCOUT 011726RG .STUCD= ****** GX .TYP3D= ****** GX .YEAR = ****** GX
.SACBK 011066RG .SCPAL 015256RG .SVESP= ****** GX .TYSLS= ****** GX .YESNO 015726RG
.SACB1 011070RG .SCPAR 015264RG .SVKLF= ****** GX .TYSPC= ****** GX .ZEROC 020176RG
.SCACB 011014RG .SCPCR 015272RG .SWPAC 011534RG .TYTIM 006726RG ..DTP2= ****** GX
.SCCEC 015220RG .SCPDR 015300RG .SWPC 011234RG .T50TB= ****** GX ..STIN= ****** GX
.SCCED 015226RG .SCPEN 015306RG .SWPIP= ****** GX
. ABS. 000000 000
020444 001
DATA 001304 002
MESSAG 005062 003
DPBS 000144 004
ERRORS DETECTED: 0
VIRTUAL MEMORY USED: 15728 WORDS ( 62 PAGES)
DYNAMIC MEMORY: 17606 WORDS ( 67 PAGES)
ELAPSED TIME: 00:04:09
,[51,20]PATREE/CR/-SP=[51,30]PATREE.TMP
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 1
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
ABTAB 000502 R 108-4230 #109-4288
ACADR 000776 RG *154-6129 *154-6130 154-6158 154-6160 #154-6162
ACDAT 000736 R *151-5933 151-5950 #151-5953
ADD = 000270 #23-877
ADDB = 000273 #23-878
ADDI = 000271 #23-879
ADDM = 000272 #23-880
ADH = 000000 #137-5494 #137-5494 137-5494 137-5494 #137-5496 137-5496 137-5496 #137-5498 #137-5498
137-5498 137-5498 #137-5500 137-5500 137-5500 #139-5541 139-5541 139-5541 #139-5543
139-5543 139-5543 #151-5957 151-5957 151-5957
ADL = 000100 #137-5494 137-5494 137-5494 #137-5494 137-5494 137-5494 #137-5494 137-5494 137-5494
#137-5494 137-5494 137-5494 #137-5494 137-5494 137-5494 #137-5494 137-5494 137-5494
137-5494 #137-5494 137-5494 137-5494 #137-5496 137-5496 137-5496 #137-5496 137-5496
137-5496 #137-5496 137-5496 137-5496 #137-5496 137-5496 137-5496 #137-5496 137-5496
137-5496 #137-5496 137-5496 137-5496 #137-5498 137-5498 137-5498 #137-5498 137-5498
137-5498 #137-5498 137-5498 137-5498 #137-5498 137-5498 137-5498 #137-5498 137-5498
137-5498 #137-5498 137-5498 137-5498 137-5498 #137-5498 137-5498 137-5498 #137-5500
137-5500 137-5500 #137-5500 137-5500 137-5500 #137-5500 137-5500 137-5500 #137-5500
137-5500 137-5500 #137-5500 137-5500 137-5500 #137-5500 137-5500 137-5500 #139-5541
139-5541 139-5541 #139-5541 139-5541 139-5541 #139-5543 139-5543 139-5543 #139-5543
139-5543 139-5543 #139-5543 139-5543 139-5543 #139-5543 139-5543 139-5543 #151-5957
151-5957 151-5957 #151-5957 151-5957 151-5957 #151-5957 151-5957 151-5957 #151-5957
151-5957 151-5957
AND = 000404 #23-882
ANDB = 000407 #23-883
ANDCA = 000410 #23-884
ANDCAB = 000413 #23-885
ANDCAI = 000411 #23-886
ANDCAM = 000412 #23-887
ANDCB = 000440 #23-888
ANDCBB = 000443 #23-889
ANDCBI = 000441 #23-890
ANDCBM = 000442 #23-891
ANDCM = 000420 #23-892
ANDCMB = 000423 #23-893
ANDCMI = 000421 #23-894
ANDCMM = 000422 #23-895
ANDI = 000405 #23-896
ANDM = 000406 #23-897
AOBJN = 000253 #23-899
AOBJP = 000252 #23-900
AOJ = 000340 #23-902
AOJA = 000344 #23-903
AOJE = 000342 #23-904
AOJG = 000347 #23-905
AOJGE = 000345 #23-906
AOJL = 000341 #23-907
AOJLE = 000343 #23-908
AOJN = 000346 #23-909
AOS = 000350 #23-911
AOSA = 000354 #23-912
AOSE = 000352 #23-913
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 2
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
AOSG = 000357 #23-914
AOSGE = 000355 #23-915
AOSL = 000351 #23-916
AOSLE = 000353 #23-917
AOSN = 000356 #23-918
APR = 000000 #7-244 137-5494 137-5494 137-5496 137-5496 137-5498 137-5498
APRMSG = ****** GX 113-4653
AP.ALL = 000177 #9-348
AP.ARP = 001000 #16-633 16-637 204-7745 209-7920
AP.CDP = 000004 #9-343 9-348
AP.EIP = 000400 #16-635 16-637 204-7757 204-7772 208-7881 208-7888
AP.IPF = 000020 #9-345 9-348
AP.MPE = 000010 #9-344 9-348
AP.NRM = 001400 #16-637 16-639
AP.NXM = 000040 #9-346 9-348
AP.PWF = 000001 #9-341 9-348
AP.SAP = 000002 #9-342 9-348
AP.SBE = 000100 #9-347 9-348
ARMSG = ****** GX 209-7919
ASH = 000240 #23-920
ASHC = 000244 #23-921
ATOMSG 004044 R 198-7474 #198-7486
AUGMSG = ****** GX 113-4657
A.LULU = 000002 #125-5062 #125-5071 #125-5077
A.LUNA = 000004 #125-5062 #125-5071 #125-5077
A.LUNU = 000006 #125-5062 #125-5071 #125-5077
BC.HDS = ****** GX 221-8559
BC.SKP = ****** GX 221-8540
BIT0 = 000001 #174-6874 #226-8750
BIT00 = 000001 #9-305 10-383 11-409 11-429 12-466 12-467 13-490 13-513 22-842
22-856 53-2268 57-2418 58-2432 61-2534 102-3994
BIT01 = 000002 #9-306 10-386 11-405 11-427 12-464 12-465 13-491 13-512 22-843
22-857
BIT02 = 000004 #9-307 10-378 11-404 11-426 11-431 12-462 12-463 13-492 13-511
22-844 22-858
BIT03 = 000010 #9-308 10-377 11-403 11-423 12-459 12-461 13-493 13-510 22-845
22-859
BIT04 = 000020 #9-309 10-375 10-376 11-402 11-421 11-422 12-457 13-494 13-509
22-846 22-860
BIT05 = 000040 #9-310 10-373 11-409 11-420 12-455 12-456 13-495 13-508 22-847
22-861
BIT06 = 000100 #9-311 10-372 11-398 11-431 12-453 12-454 13-484 13-507 22-848
22-862
BIT07 = 000200 #9-312 10-370 10-371 11-409 11-431 12-451 13-483 13-506 22-849
22-863
BIT08 = 000400 #9-313 10-369 11-409 11-431 12-449 13-482 13-505 22-864
BIT09 = 001000 #9-314 10-365 10-368 11-409 11-431 12-447 13-481 13-504
BIT1 = 000002 #174-6874 #226-8750
BIT10 = 002000 #9-315 10-364 10-367 11-409 11-431 12-446 13-480 13-503 #174-6874
#226-8750
BIT11 = 004000 #9-316 10-363 10-366 11-409 11-431 12-444 13-479 13-502 #174-6874
#226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 3
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
BIT12 = 010000 #9-317 10-362 11-409 11-431 12-442 12-443 13-478 13-501 90-3654
90-3659 #174-6874 #226-8750
BIT13 = 020000 #9-318 10-361 11-394 11-409 11-431 12-440 13-477 #174-6874 #226-8750
BIT14 = 040000 #9-319 10-360 11-391 11-392 11-409 11-414 11-431 12-439 13-476
#174-6874 #226-8750
BIT15 = 100000 #9-320 10-359 11-390 11-409 11-413 11-431 12-437 13-475 104-4057
#174-6874 #226-8750
BIT2 = 000004 #174-6874 #226-8750
BIT3 = 000010 #174-6874 #226-8750
BIT4 = 000020 #174-6874 #226-8750
BIT5 = 000040 #174-6874 #226-8750
BIT6 = 000100 #174-6874 #226-8750
BIT7 = 000200 #174-6874 #226-8750
BIT8 = 000400 #174-6874 #226-8750
BIT9 = 001000 #174-6874 #226-8750
BLKI = 000000 #7-233
BLKO = 000002 #7-235
BLT = 000251 #23-923
BPARER = 000020 #174-6874 #226-8750
CAI = 000300 #24-925
CAIA = 000304 #24-926
CAIE = 000302 #24-927
CAIG = 000307 #24-928
CAIGE = 000305 #24-929
CAIL = 000301 #24-930
CAILE = 000303 #24-931
CAIN = 000306 #24-932
CALL = 000040 #24-934
CALLI = 000047 #24-935
CAM = 000310 #24-937
CAMA = 000314 #24-938
CAME = 000312 #24-939
CAMG = 000317 #24-940
CAMGE = 000315 #24-941
CAML = 000311 #24-942
CAMLE = 000313 #24-943
CAMN = 000316 #24-944
CCA = 000014 #7-247
CCEMSG 004060 R 202-7672 #203-7730
CC.ALL = 003417 #15-611
CC.NRM = 000000 #15-610
CDD = 000020 #174-6874 #226-8750
CDMTB 001164 R 214-8098 #215-8161
CD.ALL = 003400 #15-608 15-611 205-7793
CD.CLC = 000400 #15-606 203-7714 206-7839
CD.CRC = 002000 #15-604 203-7706 206-7835
CD.DPC = 001000 #15-605 203-7710 206-7837
CD.NRM = 000000 #15-607
CHNPNT = 000001 #174-6874 #226-8750
CH.ALP = 000001 #22-842 22-851
CH.ANM = 000003 #22-851
CH.AOP = 000100 #22-848
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 4
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
CH.END = 000034 #22-850
CH.EOC = 000010 #22-845 22-850 110-4411 112-4527 135-5424 153-6034 158-6286 176-6935 178-6995
200-7580
CH.EOL = 000004 #22-844 22-850
CH.EOS = 000020 #22-846 22-850
CH.ILL = 000200 #22-849
CH.NUL = 000000 #22-841
CH.NUM = 000002 #22-843 22-851
CH.PFX = 000040 #22-847
CIDLUN = 000001 #21-818 125-5062
CLDSTB 001074 R 205-7790 #206-7833
CLEAR = 000400 #24-946
CLEARB = 000403 #24-947
CLEARI = 000401 #24-948
CLEARM = 000402 #24-949
CLOSE = 000070 #24-951
CLRTTB 001120 R 206-7827 #206-7845
CLSRTB 001110 R 206-7820 #206-7840
CMD1 002341 R 128-5202 #128-5202
CMD1A 002360 R 128-5203 #128-5203
CMD1B 002373 R 128-5204 #128-5204
CMD1C 002414 R 128-5205 #128-5205
CMD1D 002444 R 128-5206 #128-5206
CMD10 002732 R 128-5218 #128-5218
CMD10B 002770 R 128-5219 #128-5219
CMD11 003007 R 128-5220 #128-5220
CMD11A 003043 R 128-5221 #128-5221
CMD12 003062 R 128-5222 #128-5222
CMD13 003101 R 128-5223 #128-5223
CMD14 003122 R 128-5226 #128-5226
CMD2 002462 R 128-5207 #128-5207
CMD3 002476 R 128-5208 #128-5208
CMD3A 002514 R 128-5209 #128-5209
CMD4 002524 R 128-5210 #128-5210
CMD4A 002532 R 128-5211 #128-5211
CMD5 002543 R 128-5212 #128-5212
CMD5A 002576 R 128-5213 #128-5213
CMD6 002615 R 128-5214 #128-5214
CMD6A 002642 R 128-5215 #128-5215
CMD7 002661 R 128-5216 #128-5216
CMD7A 002713 R 128-5217 #128-5217
CNUPE = 000002 #174-6874 #226-8750
CODLUN = 000002 #21-819 125-5071
CONI = 000005 #7-238
CONKNC 000152 R 38-1582 #38-1603
CONO = 000004 #7-237 137-5494 137-5494 137-5496 137-5496 137-5498 137-5498 137-5500 137-5500
139-5541 139-5541
CONSO = 000007 #7-240
CONSZ = 000006 #7-239
CPVMSG = ****** GX 193-7303
CRATAB 000364 R 105-4096 #107-4149
CRLTAB 000400 R 105-4100 #107-4157
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 5
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
CRMMSG = ****** GX 206-7834 209-7921
CR.ALL = 000003 #15-596 15-611 202-7668 206-7825
CR.CR1 = 000001 #15-590 15-596
CR.CR2 = 000002 #15-591 15-596
CR.FUL = 000000 #15-592
CR.HLF = 000001 #15-593 202-7658
CR.NRM = 000000 #15-589
CR.QTR = 000002 #15-594 202-7662
CR.SLO = 000003 #15-595 202-7666
CS.ALL = 000014 #15-587 15-611 202-7689 206-7818
CS.CS1 = 000004 #15-581 15-587
CS.CS2 = 000010 #15-582 15-587
CS.EXP = 177670 #174-6874 #226-8750
CS.EXT = 000010 #15-585 202-7676
CS.FST = 000004 #15-583 15-584
CS.MGN = 000004 #15-584 202-7687
CS.NRM = 000000 #15-580
CS.UDF = 000014 #15-586
CTLMSG = ****** GX 206-7838
CYCLS = 000002 #174-6874 #226-8750
DATAI = 000001 #7-234
DATAO = 000003 #7-236 139-5543 139-5543 151-5957 151-5957
DATBUF 001232 R 216-8203 #216-8248
DATE = 000004 #174-6874 #226-8750
DCOMST = 000001 #174-6874 #226-8750
DEB880 = ****** 56-2341 79-3198 79-3203 109-4267 121-4924 121-4942 122-4956 125-5059 125-5068
152-5971 214-8118 214-8131 221-8494 221-8514 221-8523 221-8529 221-8533 221-8563
229-8830
DECMSG = ****** GX 113-4661
DEP = 010000 #174-6874 #226-8750
DEPBLK 000726 R 151-5934 #151-5949
DEPOS 001453 R 82-3384 #82-3434
DEX = 000400 #174-6874 #226-8750
DEXDON = 000004 #174-6874 #226-8750
DEXWD1 = 174406 #174-6874 #226-8750
DEXWD2 = 174404 #174-6874 #226-8750
DEXWD3 = 174402 #174-6874 #226-8750
DFAD = 000110 #24-953
DFBEND = ****** GX 119-4874
DFCIFC 000644 R 49-2046 49-2048 49-2050 #49-2062
DFDV = 000113 #24-954
DFMP = 000112 #24-955
DFN = 000131 #24-956
DFRMSG 000000 R 50-2099 #50-2141
DFSB = 000111 #24-957
DFUNC = 000200 #174-6874 #226-8750
DF.DMG = 000004 #174-6874 #226-8750
DF.DMN = 000007 #174-6874 #226-8750
DF.DOR = 000001 #174-6874 #226-8750
DF.EHG = 000010 #174-6874 #226-8750
DF.EHM = 000011 #174-6874 #226-8750
DF.EMG = 000005 #174-6874 #226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 6
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
DF.EMN = 000006 #174-6874 #226-8750
DF.KLR = 000012 #174-6874 #226-8750
DF.KLW = 000013 #174-6874 #226-8750
DF.KLX = 000014 #174-6874 #226-8750
DF.OFF = 000002 #174-6874 #226-8750
DF.ON = 000003 #174-6874 #226-8750
DF.PDP = 000016 #174-6874 #226-8750 229-8859
DF.PEX = 000015 #174-6874 #226-8750
DG1B10 001534 R 83-3466 #83-3476
DG1B11 001503 R 83-3465 #83-3475
DG1B5 001757 R 83-3471 #83-3481
DG1B6 001714 R 83-3470 #83-3480
DG1B7 001651 R 83-3469 #83-3479
DG1B8 001605 R 83-3468 #83-3478
DG1B9 001560 R 83-3467 #83-3477
DG3B1 002021 R 84-3493 #84-3499
DIAG1 = 174430 #174-6874 #226-8750
DIAG2 = 174432 #174-6874 #226-8750
DIAG3 = 174436 #174-6874 #226-8750
DIATAB 000330 R 83-3451 #83-3464
DIKL10 = 000010 #174-6874 #226-8750
DIV = 000234 #24-959
DIVB = 000237 #24-960
DIVI = 000235 #24-961
DIVM = 000236 #24-962
DLYCNT = 174400 #174-6874 #226-8750
DMOVE = 000120 #24-964
DMOVEM = 000124 #24-965
DMOVN = 000121 #24-966
DMOVNM = 000125 #24-967
DON10C = 040000 #174-6874 #226-8750
DON10S = 100000 #174-6874 #226-8750
DON11C = 000100 #174-6874 #226-8750
DON11S = 000200 #174-6874 #226-8750
DOWMTB 001214 R 216-8217 #216-8239
DOWTAB 001154 R 214-8121 #215-8154
DPB = 000137 #24-969
DPOAPE 002504 R 68-2790 #68-2794
DPOATB 000000 R 40-1669 #40-1674
DPODTB 000004 R 41-1684 #41-1689
DPOITB 000010 R 41-1696 #41-1701
DPOKCN 002512 R 67-2741 #68-2797
DPONTB 000014 R 41-1708 #41-1713
DPOOAI 001510 R 57-2419 58-2433 #58-2452
DPOPTB 000020 R 41-1720 #41-1725
DPOVFE 002520 R 68-2785 #68-2800
DPOZTB 000024 R 41-1732 #41-1737
DPS4 = 040000 #174-6874 #226-8750
DPTMSG = ****** GX 206-7836
DRATAB 000414 R 105-4104 #107-4165
DRESET = 000100 #174-6874 #226-8750
DRMMSG = ****** GX 209-7923
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 7
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
DR.DTE = 000011 #174-6874 #226-8750 229-8859
DSEND = 000004 #174-6874 #226-8750
DS04 = 004000 #174-6874 #226-8750
DS05 = 002000 #174-6874 #226-8750
DS06 = 001000 #174-6874 #226-8750
DTEBUF 000112 R 79-3196 79-3209 #79-3219 80-3285 81-3345 81-3348 82-3370 82-3383 82-3405
83-3446 84-3490
DTECMD = 000451 #174-6874 #226-8750
DTEFLG = 000444 #174-6874 #226-8750
DTEF11 = 000450 #174-6874 #226-8750
DTEMTD = 000455 #174-6874 #226-8750
DTEMTI = 000456 #174-6874 #226-8750
DTEREG 000152 R 79-3207 #79-3221
DUPE = 000020 #174-6874 #226-8750
DURE = 000004 #174-6874 #226-8750
DV.LOG = ****** GX 222-8576
DXWRD1 = 002000 #174-6874 #226-8750
DX1MS1 001123 R 81-3343 #81-3358
DX1MS2 001143 R 81-3352 #81-3359
D.CCPU = ****** GX 221-8542
D.CKLN = ****** GX 221-8561
D1.CES = 004000 #10-366 154-6137
D1.DCS = 000001 #10-383
D1.DDT = 000040 #10-373 10-386
D1.DEX = 000400 #10-369 10-386
D1.DFM = 000010 #10-377
D1.DS0 = 100000 #10-359
D1.DS1 = 040000 #10-360
D1.DS2 = 020000 #10-361
D1.DS3 = 010000 #10-362
D1.DS4 = 004000 #10-363
D1.DS5 = 002000 #10-364
D1.DS6 = 001000 #10-365
D1.HLP = 001000 #10-368 122-4955
D1.LBK = 000200 #10-371
D1.MBZ = 000442 #10-386
D1.PLS = 000020 #10-376
D1.RUN = 002000 #10-367 121-4941
D1.T10 = 000200 #10-370
D1.T11 = 000100 #10-372
D1.V04 = 000020 #10-375
D1.XFR = 000004 #10-378
D1011 = 000040 #174-6874 #226-8750
D2.EBD = 040000 #11-392
D2.MBZ = 177641 #11-409
D2.MS1 = 000002 #11-405
D2.MS2 = 000004 #11-404
D2.MS4 = 000010 #11-403
D2.MS8 = 000020 #11-402
D2.RA0 = 100000 #11-390
D2.RA1 = 040000 #11-391
D2.RA2 = 020000 #11-394
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 8
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
D2.RST = 000100 #11-398
D3.CDD = 000020 #11-422
D3.MBZ = 177704 #11-431
D3.NPE = 000002 #11-427
D3.PAR = 040000 #11-414
D3.RST = 000001 #11-433
D3.SCD = 000040 #11-420
D3.SSL = 100000 #11-413
D3.TXB = 000001 #11-429 11-433
D3.UPE = 000020 #11-421
D3.URE = 000004 #11-426
D3.WEP = 000010 #11-423
EBSEL = 000100 #174-6874 #226-8750
EBUSPC = 000020 #174-6874 #226-8750
EBUSPS = 000004 #174-6874 #226-8750
EDNKLA 000534 R 47-1962 47-1964 #47-1979
EDONES = 040000 #174-6874 #226-8750
ED.EPT = 000000 #9-324
ED.EXV = 000040 #9-325 138-5522 171-6778
ED.PHY = 000200 #9-328 67-2760 68-2775 68-2780 71-2899 121-4933 151-5935 154-6133 154-6148
229-8859
ED.UPT = 000100 #9-326
ED.USV = 000140 #9-327
EF.CRI = ****** GX 36-1519 175-6901
EF.PR1 = ****** GX 214-8068 221-8534
ELEMSG = ****** GX 183-7150
ENTER = 000077 #25-971
EOSMSG 002315 R 128-5181 #128-5195
EPMSG0 002222 R 96-3803 #97-3836
EPMSG1 002236 R 97-3817 #97-3838
EPMSG2 002250 R 97-3822 #97-3840
EPMSG3 002264 R 97-3827 #97-3842
EPTR = 000000 #174-6874 #226-8750
EQV = 000444 #25-973
EQVB = 000447 #25-974
EQVI = 000445 #25-975
EQVM = 000446 #25-976
ERR10C = 010000 #174-6874 #226-8750
ERR10S = 020000 #174-6874 #226-8750
ERR11C = 000001 #174-6874 #226-8750
ERR11S = 000002 #174-6874 #226-8750
EXADTB 000034 R 43-1787 #43-1792
EXAITB 000040 R 43-1799 #43-1804
EXAM 001463 R 82-3387 #82-3435
EXANTB 000044 R 43-1811 #43-1816
EXAOAI 002052 R 61-2535 #61-2576
EXAPTB 000050 R 43-1823 #43-1828
EXAZTB 000054 R 43-1835 #43-1840
EXBLK 000772 R 154-6132 #154-6160
EXCH = 000250 #25-978
EXCIOC 003346 R 76-3100 #76-3105
EXDAT 001002 RG 154-6161 #154-6164
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 9
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
EXFMSG 002121 R 90-3650 #91-3678
EXMDTB 000030 R 42-1772 #42-1777
EXRTBL = ****** GX 98-3852
EXTEND = 000123 #25-979
EXTKCN 003172 R 71-2889 #71-2950
EXTMSG = ****** GX 206-7843
E.FCID = 000002 #21-802 124-5041
E.FCOD = 000003 #21-803 124-5042
E.FCTC = ****** GX 124-5039
E.FFIL = 000006 #21-806
E.FHTO = 000001 #21-801 121-4915 124-5040 155-6207
E.FKLN = 000004 #21-804 221-8536 221-8560 221-8564
E.FLOD = 000005 #21-805 124-5044 164-6588 164-6591
FAD = 000140 #25-981
FADB = 000143 #25-982
FADL = 000141 #25-983
FADM = 000142 #25-984
FADR = 000144 #25-986
FADRB = 000147 #25-987
FADRI = 000145 #25-988
FADRM = 000146 #25-989
FDV = 000170 #25-991
FDVB = 000173 #25-992
FDVL = 000171 #25-993
FDVM = 000172 #25-994
FDVR = 000174 #25-996
FDVRB = 000177 #25-997
FDVRI = 000175 #25-998
FDVRM = 000176 #25-999
FEBMSG = ****** GX 113-4651
FERTAB 000430 R 105-4108 #107-4173
FIX = 000122 #25-1001
FIXR = 000126 #25-1002
FLTR = 000127 #25-1004
FMABO 003207 R 153-6055 #153-6077
FMBUF 000754 R 153-6028 #153-6070 154-6143 154-6159
FMERR 000752 R *153-6013 153-6048 *153-6053 #153-6069 *154-6142
FMHED 003143 R 153-6026 #153-6076
FMMSG = ****** GX 209-7925
FMP = 000160 #25-1006
FMPB = 000163 #25-1007
FMPL = 000161 #25-1008
FMPM = 000162 #25-1009
FMPR = 000164 #25-1011
FMPRB = 000167 #25-1012
FMPRI = 000165 #25-1013
FMPRM = 000166 #25-1014
FNCIFC 001274 R 53-2252 53-2254 53-2259 53-2261 53-2266 #53-2271
FNCOFC 001302 R 53-2269 #53-2274
FOFMSG 002113 R 90-3656 #91-3676
FONMSG 002105 R 90-3653 #91-3674
FORPRO = 000020 #174-6874 #226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 10
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FRIMSG 004465 R 216-8244 #217-8268
FR.ADX = 000254 #18-724 100-3899
FR.APR = 000220 #18-702 73-3024
FR.ARX = 000252 #18-722 100-3907
FR.BRX = 000250 #18-720 100-3915
FR.CA1 = 000312 #19-754 19-755 107-4150
FR.CA2 = 000310 #19-751 19-752 107-4153
FR.CL1 = 000316 #19-761 107-4158
FR.CL2 = 000314 #19-758 107-4161
FR.CRD = 000302 #19-745
FR.CR1 = 000316 #19-760 19-761
FR.CR2 = 000314 #19-757 19-758
FR.CR3 = 000312 #19-755
FR.CR4 = 000310 #19-752
FR.DA1 = 000260 #18-730 107-4166
FR.DA2 = 000262 #18-733 107-4169
FR.EBS = 000356 #20-788 100-3919
FR.FE1 = 000266 #18-737 107-4174
FR.FE2 = 000264 #18-735 107-4177
FR.PI0 = 000200 #18-691 104-4055
FR.PI1 = 000202 #18-693 104-4058
FR.RAD = 000256 #18-726 100-3895
FR.RAR = 000240 #18-712 100-3903
FR.RBR = 000242 #18-714 100-3911
FR.RFM = 000246 #18-718 100-3923
FR.RMQ = 000244 #18-716 100-3927
FR.SC1 = 000262 #18-732 107-4190
FR.SC2 = 000260 #18-729 107-4193
FR.SR1 = 000306 #19-749 107-4182
FR.SR2 = 000304 #19-747 107-4185
FR.VM0 = 000320 #19-764
FR.VM1 = 000322 #19-766
FR.VM2 = 000324 #19-768
FR.VM3 = 000326 #19-770
FR.VM4 = 000330 #19-772
FR.VM5 = 000332 #19-774
FR.VM6 = 000334 #19-776
FR.VM7 = 000336 #19-778
FR.100 = 000200 #18-690 18-691 53-2251 102-3985
FR.101 = 000202 #18-692 18-693 102-3978
FR.102 = 000204 #18-694
FR.103 = 000206 #18-695
FR.104 = 000210 #18-696
FR.105 = 000212 #18-697
FR.106 = 000214 #18-698
FR.107 = 000216 #18-699
FR.110 = 000220 #18-701 18-702
FR.111 = 000222 #18-703
FR.112 = 000224 #18-704
FR.113 = 000226 #18-705
FR.114 = 000230 #18-706
FR.115 = 000232 #18-707
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 11
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FR.116 = 000234 #18-708
FR.117 = 000236 #18-709
FR.120 = 000240 #18-711 18-712
FR.121 = 000242 #18-713 18-714
FR.122 = 000244 #18-715 18-716
FR.123 = 000246 #18-717 18-718
FR.124 = 000250 #18-719 18-720
FR.125 = 000252 #18-721 18-722
FR.126 = 000254 #18-723 18-724
FR.127 = 000256 #18-725 18-726
FR.130 = 000260 #18-728 18-729 18-730
FR.131 = 000262 #18-731 18-732 18-733
FR.132 = 000264 #18-734 18-735 102-3992
FR.133 = 000266 #18-736 18-737
FR.134 = 000270 #18-738
FR.135 = 000272 #18-739
FR.136 = 000274 #18-740
FR.137 = 000276 #18-741
FR.140 = 000300 #19-743
FR.141 = 000302 #19-744 19-745
FR.142 = 000304 #19-746 19-747
FR.143 = 000306 #19-748 19-749
FR.144 = 000310 #19-750 19-751
FR.145 = 000312 #19-753 19-754
FR.146 = 000314 #19-756 19-757
FR.147 = 000316 #19-759 19-760
FR.150 = 000320 #19-763 19-764 109-4285 109-4289
FR.151 = 000322 #19-765 19-766
FR.152 = 000324 #19-767 19-768
FR.153 = 000326 #19-769 19-770
FR.154 = 000330 #19-771 19-772 109-4293 109-4297
FR.155 = 000332 #19-773 19-774
FR.156 = 000334 #19-775 19-776
FR.157 = 000336 #19-777 19-778
FR.160 = 000340 #20-780
FR.161 = 000342 #20-781
FR.162 = 000344 #20-782
FR.163 = 000346 #20-783
FR.164 = 000350 #20-784
FR.165 = 000352 #20-785
FR.166 = 000354 #20-786
FR.167 = 000356 #20-787 20-788
FR.170 = 000360 #20-790
FR.171 = 000362 #20-791
FR.172 = 000364 #20-792
FR.173 = 000366 #20-793
FR.174 = 000370 #20-794
FR.175 = 000372 #20-795
FR.176 = 000374 #20-796
FR.177 = 000376 #20-797 53-2253
FSB = 000150 #25-1016
FSBB = 000153 #25-1017
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 12
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FSBL = 000151 #25-1018
FSBM = 000152 #25-1019
FSBR = 000154 #26-1021
FSBRB = 000157 #26-1022
FSBRI = 000155 #26-1023
FSBRM = 000156 #26-1024
FSC = 000132 #26-1026
FSSMSG = ****** GX 209-7927
FTBYTE = 000000 #2-65
FTCRAM = 000000 #2-66
FTDEBU = 000001 #2-67
FTDISP = 000000 #2-68
FTDRAM = 000000 #2-69
FTHELP = 000000 #2-70
FTKLE = 000001 #2-77 121-4917 128-5152 129-5254
FTKLER = 000000 #2-71
FTLCMN = ****** 1-1 33-1408
FTLCVT = 000000 #2-72
FTLIST = 000001 #2-73 124-5043
FTTRAK = 000001 #2-74 13-489
FTTRP4 = 000001 #2-75
FTUCVR = 000130 #2-76
FT1105 = 000001 #2-64 #2-101
FT1110 = 000001 #2-63 #2-97 2-100
FT1115 = 000001 #2-62 #2-93 2-96
FT1120 = 000001 #2-61 #2-89 2-92
FT1135 = 000001 #2-60 #2-85 2-88
FT1140 = 000001 #2-59 2-84 3-110
FT1145 = 000000 #2-58 2-80
FULMSG = ****** GX 206-7846
FW.APE = 000116 #16-627
FW.CA1 = 000122 #16-643
FW.CA2 = 000124 #16-645
FW.CDR = 000112 #15-599
FW.CHN = 000160 #17-675
FW.CRD = 000126 #16-647
FW.CR1 = 000136 #16-655
FW.CR2 = 000134 #16-653
FW.CR3 = 000132 #16-651
FW.CR4 = 000130 #16-649
FW.CSR = 000110 #15-575
FW.DJE = 000146 #17-664
FW.DJO = 000150 #17-666
FW.DR1 = 000140 #17-658
FW.DR2 = 000142 #17-660
FW.DR3 = 000144 #17-662
FW.EBL = 000174 #17-683
FW.IAC = 000154 #17-670
FW.IOJ = 000152 #17-668
FW.IPE = 000114 #16-614
FW.KLO = 000156 #17-672
FW.LAR = 000176 #17-686 53-2260
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 13
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FW.LBL = 000106 #15-573
FW.LBR = 000104 #15-571
FW.MBX = 000162 #17-677
FW.SBR = 000174 #17-684
FW.040 = 000100 #15-568 53-2258
FW.041 = 000102 #15-569
FW.042 = 000104 #15-570 15-571
FW.043 = 000106 #15-572 15-573
FW.044 = 000110 #15-574 15-575
FW.045 = 000112 #15-598 15-599
FW.046 = 000114 #16-613 16-614
FW.047 = 000116 #16-626 16-627
FW.050 = 000120 #16-641
FW.051 = 000122 #16-642 16-643
FW.052 = 000124 #16-644 16-645
FW.053 = 000126 #16-646 16-647
FW.054 = 000130 #16-648 16-649
FW.055 = 000132 #16-650 16-651
FW.056 = 000134 #16-652 16-653
FW.057 = 000136 #16-654 16-655
FW.060 = 000140 #17-657 17-658
FW.061 = 000142 #17-659 17-660
FW.062 = 000144 #17-661 17-662
FW.063 = 000146 #17-663 17-664
FW.064 = 000150 #17-665 17-666
FW.065 = 000152 #17-667 17-668
FW.066 = 000154 #17-669 17-670
FW.067 = 000156 #17-671 17-672
FW.070 = 000160 #17-674 17-675
FW.071 = 000162 #17-676 17-677
FW.072 = 000164 #17-678
FW.073 = 000166 #17-679
FW.074 = 000170 #17-680
FW.075 = 000172 #17-681
FW.076 = 000174 #17-682 17-683 17-684
FW.077 = 000176 #17-685 17-686
FX.BMC = 000012 #14-528
FX.CMR = 000014 #14-530
FX.CON = 000024 #14-539 38-1589
FX.CRF = 000020 #14-535
FX.CSP = 000000 #14-518
FX.CST = 000002 #14-520
FX.EBC = 000006 #14-524
FX.MBC = 000004 #14-522
FX.SMR = 000016 #14-532
FX.SRF = 000022 #14-537
FX.SYC = 000010 #14-526
FX.UDR = 000032 #14-544
FX.UIR = 000030 #14-542
FX.000 = 000000 #14-517 14-518
FX.001 = 000002 #14-519 14-520
FX.002 = 000004 #14-521 14-522
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 14
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
FX.003 = 000006 #14-523 14-524
FX.004 = 000010 #14-525 14-526
FX.005 = 000012 #14-527 14-528
FX.006 = 000014 #14-529 14-530
FX.007 = 000016 #14-531 14-532
FX.010 = 000020 #14-534 14-535
FX.011 = 000022 #14-536 14-537
FX.012 = 000024 #14-538 14-539
FX.013 = 000026 #14-540
FX.014 = 000030 #14-541 14-542
FX.015 = 000032 #14-543 14-544
FX.016 = 000034 #14-545
FX.017 = 000036 #14-546
FX.020 = 000040 #14-548
FX.021 = 000042 #14-549
FX.022 = 000044 #14-550
FX.023 = 000046 #14-551
FX.024 = 000050 #14-552
FX.025 = 000052 #14-553
FX.026 = 000054 #14-554
FX.027 = 000056 #14-555
FX.030 = 000060 #14-557
FX.031 = 000062 #14-558
FX.032 = 000064 #14-559
FX.033 = 000066 #14-560
FX.034 = 000070 #14-561
FX.035 = 000072 #14-562
FX.036 = 000074 #14-563
FX.037 = 000076 #14-564 53-2265
GETSTS = 000062 #26-1028
GOOBLK 000766 R 154-6147 #154-6158
GTDDBT 006214 R 110-4450 110-4454 110-4458 #111-4465
GTDDOR 006222 R 110-4433 110-4439 110-4443 110-4446 #111-4468
GTDIDF 006230 R 110-4383 110-4405 110-4415 #111-4471
GTDMS0 002277 R 110-4378 #111-4485
GTDYOR 006236 R 110-4420 #111-4474
GTTITF 006576 R 112-4530 #112-4587
GTTMS0 002306 R 112-4520 #112-4596
GTTTOR 006604 R 112-4545 112-4548 112-4564 112-4573 #112-4590
G.TICP = 000016 #110-4369 #159-6383 #216-8204
G.TICT = 000014 #110-4369 #159-6383 #216-8204
G.TIDA = 000004 #110-4369 #159-6383 #216-8204
G.TIHR = 000006 #110-4369 #159-6383 #216-8204
G.TIMI = 000010 #110-4369 #159-6383 #216-8204
G.TIMO = 000002 #110-4369 #159-6383 #216-8204
G.TISC = 000012 #110-4369 #159-6383 #216-8204
G.TIYR = 000000 #110-4369 #159-6383 #216-8204
HDDAG1 000216 R 79-3234 #79-3273
HDDAG2 000232 R 79-3235 #79-3274
HDDAG3 000262 R 79-3237 #79-3276
HDDEX1 000046 R 79-3225 #79-3264
HDDEX2 000032 R 79-3224 #79-3263
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 15
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
HDDEX3 000016 R 79-3223 #79-3262
HDDLY 000004 R 79-3222 #79-3261
HDSTAT 000246 R 79-3236 #79-3275
HDTAD1 000062 R 79-3226 #79-3265
HDTAD2 000076 R 79-3227 #79-3266
HDT10A 000140 R 79-3230 #79-3269
HDT10B 000111 R 79-3228 #79-3267
HDT10D 000167 R 79-3232 #79-3271
HDT11A 000154 R 79-3231 #79-3270
HDT11B 000125 R 79-3229 #79-3268
HDT11D 000203 R 79-3233 #79-3272
HIBYTE = 177400 #174-6874 #226-8750
HLFMSG = ****** GX 206-7847
HLL = 000500 #26-1030
HLLE = 000530 #26-1031
HLLEI = 000531 #26-1032
HLLEM = 000532 #26-1033
HLLES = 000533 #26-1034
HLLI = 000501 #26-1036
HLLM = 000502 #26-1037
HLLO = 000520 #26-1039
HLLOI = 000521 #26-1040
HLLOM = 000522 #26-1041
HLLOS = 000523 #26-1042
HLLS = 000503 #26-1044
HLLZ = 000510 #26-1046
HLLZI = 000511 #26-1047
HLLZM = 000512 #26-1048
HLLZS = 000513 #26-1049
HLR = 000544 #26-1051
HLRE = 000574 #26-1053
HLREI = 000575 #26-1054
HLREM = 000576 #26-1055
HLRES = 000577 #26-1056
HLRO = 000564 #26-1058
HLROI = 000565 #26-1059
HLROM = 000566 #26-1060
HLROS = 000567 #26-1061
HLRS = 000547 #26-1063
HLRZ = 000554 #26-1065
HLRZI = 000555 #26-1066
HLRZM = 000556 #26-1067
HLRZS = 000557 #26-1068
HRL = 000504 #27-1070
HRLE = 000534 #27-1072
HRLEI = 000535 #27-1073
HRLEM = 000536 #27-1074
HRLES = 000537 #27-1075
HRLI = 000505 #27-1077
HRLM = 000506 #27-1078
HRLO = 000564 #27-1080
HRLOI = 000565 #27-1081
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 16
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
HRLOM = 000566 #27-1082
HRLOS = 000567 #27-1083
HRLS = 000507 #27-1085
HRLZ = 000514 #27-1087
HRLZI = 000515 #27-1088
HRLZM = 000516 #27-1089
HRLZS = 000517 #27-1090
HRR = 000540 #27-1092
HRRE = 000570 #27-1094
HRREI = 000571 #27-1095
HRREM = 000572 #27-1096
HRRES = 000573 #27-1097
HRRI = 000541 #27-1099
HRRM = 000542 #27-1100
HRRO = 000560 #27-1102
HRROI = 000561 #27-1103
HRROM = 000562 #27-1104
HRROS = 000563 #27-1105
HRRS = 000543 #27-1107
HRRZ = 000550 #27-1109
HRRZI = 000551 #27-1110
HRRZM = 000552 #27-1111
HRRZS = 000553 #27-1112
H.KCAC = ****** GX 194-7402
H.KCHN = ****** GX 194-7401
H.KEXT = ****** GX 194-7362 194-7400
H.KMOS = ****** GX 194-7399
H.KPWR = ****** GX 194-7370
I = 000000 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
IBP = 000133 #28-1114
IDIV = 000230 #28-1116
IDIVB = 000233 #28-1117
IDIVI = 000231 #28-1118
IDIVM = 000232 #28-1119
IDPB = 000136 #28-1121
IE.ACT = ****** GX 142-5633
IE.EBX = ****** GX 229-8848
IE.INS = ****** GX 142-5631
IFLOP = 100000 #174-6874 #226-8750
ILDB = 000134 #28-1123
IMUL = 000220 #28-1125
IMULB = 000223 #28-1126
IMULI = 000221 #28-1127
IMULM = 000222 #28-1128
IN = 000056 #28-1130
INBUF = 000064 #28-1131
INCEX 000072 R 61-2554 *61-2567 *61-2570 #61-2584
INCFR 000064 R 50-2116 *50-2129 *50-2132 #50-2147
INCTX 000102 R 71-2914 *71-2928 *71-2929 *71-2930 71-2935 #71-2957
INDLUN = 000005 #21-822 144-5715
INIDNP 007314 R 121-4925 #122-4979
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 17
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
INIDTC 007322 R 122-4957 #122-4982
INIT = 000041 #28-1132
INPUT = 000066 #28-1133
INTMSG = ****** GX 206-7841
INTROF = 000010 #174-6874 #226-8750
INTRON = 000040 #174-6874 #226-8750
INTSON = 000001 #174-6874 #226-8750
INT10S = 000400 #174-6874 #226-8750
INT11C = 002000 #174-6874 #226-8750
INT11S = 004000 #174-6874 #226-8750
IOR = 000434 #28-1135 29-1203
IORB = 000437 #28-1136 29-1204
IORI = 000435 #28-1137 30-1221
IORM = 000436 #28-1138 30-1222
IO.ACE = ****** GX 159-6354
IO.ACR = ****** GX 144-5718
IO.ATT = ****** GX 164-6588
IO.DET = ****** GX 164-6591
IP.ALL = 000017 #16-624
IP.CRP = 000004 #16-620 16-623 204-7749 209-7922
IP.DRP = 000002 #16-621 16-623 204-7753 209-7924
IP.FMP = 000010 #16-619 16-623 204-7761 209-7926
IP.FSS = 000001 #16-622 16-624 204-7765 209-7928
IP.NRM = 000016 #16-623 16-624 16-639
JANMSG = ****** GX 113-4650
JFCL = 000255 #28-1140
JFFO = 000243 #28-1142
JRA = 000267 #28-1144
JRST = 000254 #28-1146
JSA = 000266 #28-1148
JSP = 000265 #28-1150
JSR = 000264 #28-1152
JSYS = 000104 #28-1154
JULMSG = ****** GX 113-4656
JUMP = 000320 #28-1156
JUMPA = 000324 #28-1157
JUMPE = 000322 #28-1158
JUMPG = 000327 #28-1159
JUMPGE = 000325 #28-1160
JUMPL = 000321 #28-1161
JUMPLE = 000323 #28-1162
JUMPN = 000326 #28-1163
JUNMSG = ****** GX 113-4655
KF.BRM = 001000 #13-481
KF.CES = 000100 #13-484
KF.CLK = 100000 #13-475 38-1585 65-2679 67-2740 71-2888 121-4929 121-4936 136-5445 138-5508
176-6940 228-8803
KF.CON = 000200 #13-483 13-485 38-1581 121-4936
KF.DEF = 000200 #13-485 119-4876
KF.KLO = 000400 #13-482 121-4936
KF.MRS = 020000 #13-477
KF.RUN = 040000 #13-476 38-1595 49-2053 121-4929 122-4959
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 18
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
KF.SIM = 010000 #13-478 38-1583
KF.SMC = 004000 #13-479
KF.SPM = 002000 #13-480
KLETAB 000600 RG 128-5158 #128-5201
KLIOT = 000700 #28-1165
KLNLGE = 001276 R 221-8546 #222-8581
KLNLGL = ****** GX 221-8544
KLNLOG 001252 R #222-8574
KLNPLN = ****** GX 221-8539
KLNPWD 001276 R 221-8374 221-8509 #222-8583
KLPWRF = 000010 #174-6874 #226-8750
KL.ABO = ****** GX 153-6059
KL.REQ = ****** GX 128-5188 153-6057
K.LSCK = ****** GX 222-8577
LDB = 000135 #29-1167
LGFMSG 003335 R 159-6336 #159-6411
LGSMSG 003270 R 159-6370 #159-6407
LGVMSG 003323 R 159-6373 #159-6409
LG.ALL = 000007 #22-866 178-7014 223-8667
LG.ARG = 000010 #22-859
LG.MAR = 000020 #22-860
LG.MNT = 000004 #22-858 22-866 179-7040
LG.MOD = 000040 #22-861
LG.NUL = 000000 #22-855
LG.OPR = 000001 #22-856 22-865 178-7006
LG.PRG = 000002 #22-857 22-865 175-6893 179-7043
LG.PRM = 000003 #22-865 22-866 178-7010 223-8670
LG.RNG = 000100 #22-862
LG.RPT = 000400 #22-864
LG.STR = 000200 #22-863
LOAD11 = 000004 #174-6874 #226-8750
LOGBUF 001010 R 159-6382 #159-6403
LOGLUN = 000004 #21-821 159-6344 159-6353
LOGMSG = ****** GX 163-6559
LOOKUP = 000076 #29-1169
LPTMSG = ****** GX 163-6551
LSH = 000242 #29-1171
LSHC = 000246 #29-1172
LSTLUN = 000003 #21-820 125-5077 164-6588 164-6591
MAP = 000257 #29-1174
MARMSG = ****** GX 113-4652
MAYMSG = ****** GX 113-4654
MGNMSG = ****** GX 206-7842 206-7844
MNTMSG = ****** GX 179-7039 223-8666
MONMSG 004417 R 216-8240 #217-8260
MOVE = 000200 #29-1176
MOVEI = 000201 #29-1177
MOVEM = 000202 #29-1178
MOVES = 000203 #29-1179
MOVM = 000214 #29-1181
MOVMI = 000215 #29-1182
MOVMM = 000216 #29-1183
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 19
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
MOVMS = 000217 #29-1184
MOVN = 000210 #29-1186
MOVNI = 000211 #29-1187
MOVNM = 000212 #29-1188
MOVNS = 000213 #29-1189
MOVS = 000204 #29-1191
MOVSI = 000205 #29-1192
MOVSM = 000206 #29-1193
MOVSS = 000207 #29-1194
MPE11 = 001000 #174-6874 #226-8750
MUL = 000224 #29-1196
MULB = 000227 #29-1197
MULI = 000225 #29-1198
MULM = 000226 #29-1199
M.TAKP = ****** GX 128-5171 128-5175 128-5179
NOFMSG 002056 R 90-3664 #91-3672
NOMSG 004342 R 211-7979 #212-8002
NONMSG 004212 R 205-7795 #207-7863 208-7890
NOOP 000252 R 79-3240 79-3241 79-3242 79-3244 79-3246 79-3247 79-3248 79-3249 79-3250
79-3251 79-3253 #79-3257
NOVMSG = ****** GX 113-4660
NULSTP = 000040 #174-6874 #226-8750
NUPE = 000002 #174-6874 #226-8750
OCTMSG = ****** GX 113-4659
OFFMSG = ****** GX 96-3809 188-7218 189-7229 192-7293 196-7443 198-7479 208-7883 216-8231
ONMSG = ****** GX 96-3805 189-7233 192-7290 196-7440 198-7476 208-7880 216-8228
OPEN = 000050 #29-1201
OPRMSG = ****** GX 179-7045 223-8672
OR = 000434 #29-1203
ORB = 000437 #29-1204
ORCA = 000454 #29-1206
ORCAB = 000457 #29-1207
ORCAI = 000455 #29-1208
ORCAM = 000456 #29-1209
ORCB = 000470 #30-1211
ORCBB = 000473 #30-1212
ORCBI = 000471 #30-1213
ORCBM = 000472 #30-1214
ORCM = 000464 #30-1216
ORCMB = 000467 #30-1217
ORCMI = 000465 #30-1218
ORCMM = 000466 #30-1219
ORI = 000435 #30-1221
ORM = 000436 #30-1222
OUT = 000057 #30-1224
OUTBUF = 000065 #30-1225
OUTPUT = 000067 #30-1226
PAG = 000010 #7-246 139-5541 139-5541 139-5543 139-5543 151-5957 151-5957
PAR$$E = 000027 #1-50
PAR$$K = 000126 #1-54
PAR$$V = 000006 #1-49
PCMSG = ****** GX 92-3713
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 20
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
PCTAB 000474 R 108-4226 #109-4284
PC.AFI = 000020 #13-509
PC.AT0 = 000004 #13-511
PC.AT1 = 000010 #13-510
PC.BIS = 000400 #13-505
PC.CY0 = 004000 #13-502
PC.CY1 = 002000 #13-503
PC.FOV = 001000 #13-504
PC.FUF = 000002 #13-512
PC.LIP = 000040 #13-508
PC.NDV = 000001 #13-513
PC.OVF = 010000 #13-501 102-3996
PC.UIO = 000100 #13-507
PC.USR = 000200 #13-506
PERCLR = 001000 #174-6874 #226-8750
PE.ALL = 000037 #9-337
PE.CES = 000001 #9-332 9-337
PE.CRM = 000004 #9-334 9-337
PE.DRM = 000002 #9-333 9-337
PE.FMP = 000010 #9-335 9-337
PE.FSS = 000020 #9-336 9-337
PHYS = 100000 #174-6874 #226-8750
PI = 000004 #7-245 137-5500 137-5500
PIDENT = 000000 #174-6874 #226-8750
POP = 000262 #30-1228
POPJ = 000263 #30-1229
PRGMSG = ****** GX 179-7042 223-8669
PRI7 = 000340 #174-6874 #226-8750
PROFF 001477 R 82-3394 #82-3437
PRON 001473 R 82-3391 #82-3436
PROPNT = 000021 #174-6874 #226-8750
PRTOFF = 004000 #174-6874 #226-8750
PR0 = 000000 #174-6874 #226-8750
PR1 = 000040 #174-6874 #226-8750
PR2 = 000100 #174-6874 #226-8750
PR3 = 000140 #174-6874 #226-8750
PR4 = 000200 #174-6874 #226-8750
PR5 = 000240 #174-6874 #226-8750
PR6 = 000300 #174-6874 #226-8750
PR7 = 000340 #174-6874 #226-8750
PS = 177776 79-3199 *79-3199 *79-3204 #174-6874 214-8119 *214-8119 *214-8132 221-8495 *221-8495
*221-8515 221-8524 *221-8524 *221-8530 #226-8750
PSENTB 001130 R 209-7900 #209-7918
PSWW1 = 000005 #174-6874 #226-8750
PSWW10 = 000014 #174-6874 #226-8750
PSWW11 = 000015 #174-6874 #226-8750
PSWW12 = 000016 #174-6874 #226-8750
PSWW13 = 000017 #174-6874 #226-8750
PSWW2 = 000006 #174-6874 #226-8750
PSWW3 = 000007 #174-6874 #226-8750
PSWW4 = 000010 #174-6874 #226-8750
PSWW5 = 000011 #174-6874 #226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 21
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
PSWW6 = 000012 #174-6874 #226-8750
PSWW7 = 000013 #174-6874 #226-8750
PS.NRM = 001416 #16-639 204-7741
PULSE = 000020 #174-6874 #226-8750
PUSH = 000261 #30-1231
PUSHJ = 000260 #30-1232
QSIZE = 000023 #174-6874 #226-8750
QTRMSG = ****** GX 206-7848
Q.BYCT = 000016 #21-813
Q.IBUF = 000014 #21-811
Q.IOAE = 000012 #164-6588 #164-6591
Q.IOEF = 000006 #164-6588 #164-6591
Q.IOFN = 000002 #164-6588 #164-6591
Q.IOLU = 000004 #164-6588 #164-6591
Q.IOPL = 000014 #21-810 21-811 21-812 21-813 21-814 #164-6588 #164-6591
Q.IOPR = 000007 #164-6588 #164-6591
Q.IOSB = 000010 #164-6588 #164-6591
Q.OBUF = 000014 #21-812
Q.OVFC = 000020 #21-814
RAMIS0 = 010000 #174-6874 #226-8750
RDPITB 000346 R 104-4036 #104-4054
RDPITE = 000362 R 104-4046 #104-4061
RELEAS = 000071 #30-1234
REMMSG = ****** GX 223-8662
RENAME = 000055 #30-1235
REQKLD 000114 R 223-8677 #223-8686
RFMAD0 = 100000 #174-6874 #226-8750
RFMAD1 = 040000 #174-6874 #226-8750
RFMAD2 = 020000 #174-6874 #226-8750
RFMAD3 = 010000 #174-6874 #226-8750
RM = 000010 #174-6874 #226-8750
RNGEX 000070 R 61-2550 *61-2556 *61-2566 #61-2583
RNGFR 000062 R 50-2112 *50-2118 *50-2128 #50-2146
RNGTX 000110 R 71-2909 *71-2917 *71-2927 #71-2958
ROT = 000241 #30-1237
ROTC = 000245 #30-1238
RQSKLD 000000 R 56-2342 #56-2349
RSAKCN 010234 R 136-5446 #136-5463
RSAPRI 000662 R 137-5472 #137-5493
RSERRI 000670 R 137-5476 #137-5495
RSPGI0 000712 R 138-5525 #139-5540
RSPGI1 000720 R 138-5527 #139-5542
RSPKCN 010412 R 138-5509 #139-5534
RSTIOI 000676 R 137-5480 #137-5497
RSTPII 000704 R 137-5484 #137-5499
RUNITN 010504 R 141-5615 #142-5635
RUNNST 010512 R 142-5632 #142-5638
RUNTAA 010520 R 142-5634 #142-5641
R.QSGC = 000015 #56-2350 #143-5666 #223-8687
R.QSPC = 000014 #56-2350 #143-5666 #223-8687
R.QSPN = 000006 #56-2350 #143-5666 #223-8687
R.QSPR = 000012 #56-2350 #143-5666 #223-8687
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 22
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
R.QSTN = 000002 #56-2350 #143-5666 #223-8687
SATMSG 004475 R 216-8245 #217-8270
SAVBLK 000764 R *153-6021 153-6029 153-6060 #153-6072
SBRTAB 000444 R 105-4112 #107-4181
SCAILI 011052 R 150-5876 #150-5885
SCANOR 011060 R 150-5880 #150-5887 153-6038
SCCCLE 013372 R 178-7019 #178-7027
SCCLKT 001050 R 199-7554 #201-7632
SCD = 000040 #174-6874 #226-8750
SCDCDI 016330 R 214-8069 #215-8139
SCDDAV 016336 R 214-8076 #215-8142
SCDNDI 016344 R 214-8082 #215-8145
SCDNTI 016352 R 214-8086 #215-8148
SCKIPC 016720 R #221-8390 221-8397 221-8401 221-8403
SCKKWE 017264 R 221-8467 221-8470 221-8473 #221-8477
SCKMS0 004517 R 221-8365 #222-8587
SCKMS1 004532 R 221-8408 221-8414 #222-8589
SCKMS2 004556 R 221-8422 221-8458 #222-8591
SCKMS3 004603 R 221-8483 #222-8593
SCKMS4 004632 R 221-8356 #222-8595
SCKNPI 016676 R 221-8369 #221-8381
SCKPTL 016704 R 221-8372 #221-8384
SCKSKI 016712 R 221-8354 #221-8387
SCOCAP 012454 R 160-6443 160-6450 #160-6454
SCPART 001062 R 199-7559 199-7566 #201-7638
SCPILS 015060 R 200-7583 #201-7620
SCPSCF 015066 R #201-7623 201-7636
SCPSPF 015074 R #201-7626 201-7642
SCRTAB 000460 R 105-4116 #107-4189
SEPMSG = ****** GX 113-4658
SETA = 000424 #30-1240
SETAB = 000427 #30-1241
SETACI 000744 R 151-5939 #151-5957
SETAI = 000425 #30-1242
SETAM = 000426 #30-1243
SETCA = 000450 #30-1245
SETCAB = 000453 #30-1246
SETCAI = 000451 #30-1247
SETCAM = 000452 #30-1248
SETCM = 000460 #30-1250
SETCMB = 000463 #30-1251
SETCMI = 000461 #30-1252
SETCMM = 000462 #30-1253
SETM = 000414 #31-1255
SETMB = 000417 #31-1256
SETMI = 000415 #31-1257
SETMM = 000416 #31-1258
SETO = 000474 #31-1260
SETOB = 000477 #31-1261
SETOI = 000475 #31-1262
SETOM = 000476 #31-1263
SETSTS = 000060 #31-1265
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 23
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
SETZ = 000400 #31-1267
SETZB = 000403 #31-1268
SETZI = 000401 #31-1269
SETZM = 000402 #31-1270
SKIP = 000330 #31-1272
SKIPA = 000334 #31-1273
SKIPE = 000332 #31-1274
SKIPG = 000337 #31-1275
SKIPGE = 000335 #31-1276
SKIPL = 000331 #31-1277
SKIPLE = 000333 #31-1278
SKIPN = 000336 #31-1279
SLOMSG = ****** GX 206-7849
SOJ = 000360 #31-1281
SOJA = 000364 #31-1282
SOJE = 000362 #31-1283
SOJG = 000367 #31-1284
SOJGE = 000365 #31-1285
SOJL = 000361 #31-1286
SOJLE = 000363 #31-1287
SOJN = 000366 #31-1288
SOS = 000370 #31-1290
SOSA = 000374 #31-1291
SOSE = 000372 #31-1292
SOSG = 000377 #31-1293
SOSGE = 000375 #31-1294
SOSL = 000371 #31-1295
SOSLE = 000373 #31-1296
SOSN = 000376 #31-1297
SPCTAB 000314 R 82-3379 #82-3413
SPC1 001367 R 82-3414 #82-3428
SPC2 001373 R 82-3415 #82-3429
SPC3 001410 R 82-3416 #82-3430
SPC4 001414 R 82-3417 #82-3431
SPC5 001431 R 82-3418 #82-3432
SPC6 001442 R 82-3419 #82-3433
SSTLEN = ****** GX 123-5027
STASZI 013200 R 175-6891 #175-6904
STAT = 174434 #174-6874 #226-8750
STATAB 000254 R 80-3286 #80-3299
STATO = 000061 #31-1299
STATUS = 000022 #31-1300 #174-6874 #226-8750
STATYP 003462 R 79-3254 #80-3284
STATZ = 000063 #31-1301
STA0 001100 R 80-3315 #80-3334
STA1 001036 R 80-3314 #80-3333
STA10 000475 R 80-3305 #80-3324
STA11 000436 R 80-3304 #80-3323
STA12 000414 R 80-3303 #80-3322
STA13 000357 R 80-3302 #80-3321
STA14 000334 R 80-3301 #80-3320
STA15 000276 R 80-3300 #80-3319
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 24
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
STA2 001004 R 80-3313 #80-3332
STA3 000757 R 80-3312 #80-3331
STA4 000727 R 80-3311 #80-3330
STA5 000666 R 80-3310 #80-3329
STA6 000641 R 80-3309 #80-3328
STA7 000610 R 80-3308 #80-3327
STA8 000551 R 80-3307 #80-3326
STA9 000515 R 80-3306 #80-3325
STOPEX 000066 R *61-2532 61-2552 61-2568 61-2571 *61-2572 #61-2582
STOPFR 000060 R *50-2090 50-2114 50-2130 50-2133 *50-2134 #50-2145
STOPTX 000074 R *71-2884 *71-2885 *71-2886 71-2911 71-2931 71-2938 71-2939 71-2940 *71-2941
*71-2942 *71-2943 #71-2956
ST.CED = 000100 #12-454 12-469
ST.CLE = 000001 #12-467 12-469
ST.CTD = 040000 #12-439
ST.CTE = 010000 #12-443 12-469
ST.DW1 = 002000 #12-446
ST.DXD = 000004 #12-462
ST.EBS = 000100 #12-453
ST.EDB = 004000 #12-444
ST.EPE = 000020 #12-457 12-469
ST.IDS = 000010 #12-461
ST.IEN = 000040 #12-456
ST.ION = 000001 #12-466
ST.MBZ = 000000 #12-471
ST.MOD = 000010 #12-459 121-4923
ST.MPE = 001000 #12-447 12-469
ST.NST = 000040 #12-455
ST.RIZ = 010000 #12-442
ST.RST = 011121 #12-469
ST.SEP = 000004 #12-463
ST.STE = 000002 #12-465
ST.TED = 000200 #12-451
ST.TER = 000002 #12-464
ST.TXD = 100000 #12-437
ST.TXE = 020000 #12-440
ST.XDB = 000400 #12-449
SUB = 000274 #32-1303
SUBB = 000277 #32-1304
SUBI = 000275 #32-1305
SUBM = 000276 #32-1306
SUNMSG 004507 R 216-8246 #217-8272
SWPFSW 011664 R 154-6138 154-6141 #154-6153
SWR = 177570 #174-6874 #226-8750
SWSLLT = 100000 #174-6874 #226-8750
SXCT = 000106 #32-1308
SYMTAB 000212 R 79-3211 79-3211 #79-3239
TAKIRE 010662 R 144-5711 #144-5727
TAKNSF 010670 R 144-5717 #144-5729
TAKTAB 000656 RG 128-5176 #128-5225
TA2MS1 001202 R 82-3368 #82-3423
TA2MS2 001226 R 82-3381 #82-3424
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 25
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
TA2MS3 001246 R 82-3389 #82-3425
TA2MS4 001305 R 82-3398 #82-3426
TA2MS5 001344 R 82-3400 #82-3427
TC.CON = 000377 #22-873
TC.CTC = 000002 #22-870
TC.ERR = 000000 #22-872 38-1604 47-1980 49-2063 53-2272 53-2275 58-2453 61-2577 68-2795
68-2798 68-2801 71-2951 76-3106 111-4466 111-4469 111-4472 111-4475 112-4588
112-4591 122-4980 122-4983 136-5464 139-5535 142-5636 142-5639 142-5642 144-5728
144-5730 150-5886 150-5888 154-6154 160-6455 175-6905 178-7028 194-7390 194-7393
201-7621 201-7624 201-7627 215-8140 215-8143 215-8146 215-8149 221-8382 221-8385
221-8388 221-8392 221-8478 229-8850 229-8853
TC.RST = 000001 #22-871
TDC = 000650 #32-1310
TDCA = 000654 #32-1311
TDCE = 000652 #32-1312
TDCN = 000656 #32-1313
TDN = 000610 #32-1315
TDNA = 000614 #32-1316
TDNE = 000612 #32-1317
TDNN = 000616 #32-1318
TDO = 000670 #32-1320
TDOA = 000674 #32-1321
TDOE = 000672 #32-1322
TDON = 000676 #32-1323
TDZ = 000630 #32-1325
TDZA = 000634 #32-1326
TDZE = 000632 #32-1327
TDZN = 000636 #32-1328
TEMADR 000732 R 151-5949 #151-5951
TENAD1 = 174410 #174-6874 #226-8750
TENAD2 = 174412 #174-6874 #226-8750
TENMSG = ****** GX 183-7147
THUMSG 004453 R 216-8243 #217-8266
TLC = 000641 #32-1330
TLCA = 000645 #32-1331
TLCE = 000643 #32-1332
TLCN = 000647 #32-1333
TLN = 000601 #32-1335
TLNA = 000605 #32-1336
TLNE = 000603 #32-1337
TLNN = 000607 #32-1338
TLO = 000661 #32-1340
TLOA = 000665 #32-1341
TLOE = 000663 #32-1342
TLON = 000667 #32-1343
TLZ = 000621 #32-1345
TLZA = 000625 #32-1346
TLZE = 000623 #32-1347
TLZN = 000627 #32-1348
TOBM = 000004 #174-6874 #226-8750
TOD = 000003 #174-6874 #226-8750
TOIP = 000002 #174-6874 #226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 26
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
TOIT = 000001 #174-6874 #226-8750
TO10 = 000200 #174-6874 #226-8750
TO10AD = 174420 #174-6874 #226-8750
TO10BC = 174414 #174-6874 #226-8750
TO10BM = 000001 #174-6874 #226-8750
TO10DB = 000400 #174-6874 #226-8750
TO10DN = 100000 #174-6874 #226-8750
TO10DT = 174424 #174-6874 #226-8750
TO10ER = 020000 #174-6874 #226-8750
TO11 = 000100 #174-6874 #226-8750
TO11AD = 174422 #174-6874 #226-8750
TO11BC = 174416 #174-6874 #226-8750
TO11BM = 020000 #174-6874 #226-8750
TO11DB = 004000 #174-6874 #226-8750
TO11DN = 000200 #174-6874 #226-8750
TO11DT = 174426 #174-6874 #226-8750
TO11ER = 000002 #174-6874 #226-8750
TRC = 000640 #32-1350
TRCA = 000644 #32-1351
TRCE = 000642 #32-1352
TRCN = 000646 #32-1353
TRN = 000600 #33-1355
TRNA = 000604 #33-1356
TRNE = 000602 #33-1357
TRNN = 000606 #33-1358
TRO = 000660 #33-1360
TROA = 000664 #33-1361
TROE = 000662 #33-1362
TRON = 000666 #33-1363
TRZ = 000620 #33-1365
TRZA = 000624 #33-1366
TRZE = 000622 #33-1367
TRZN = 000626 #33-1368
TR.ALL = 000077 #13-496
TR.DEP = 000020 #13-494 13-496
TR.DTE = 000040 #13-495 13-496
TR.EXM = 000010 #13-493 13-496
TR.FRD = 000002 #13-491 13-496
TR.FWR = 000004 #13-492 13-496
TR.FXC = 000001 #13-490 13-496
TSC = 000651 #33-1370
TSCA = 000655 #33-1371
TSCE = 000653 #33-1372
TSCN = 000657 #33-1373
TSN = 000611 #33-1375
TSNA = 000615 #33-1376
TSNE = 000613 #33-1377
TSNN = 000617 #33-1378
TSO = 000671 #33-1380
TSOA = 000675 #33-1381
TSOE = 000673 #33-1382
TSON = 000677 #33-1383
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 27
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
TSZ = 000631 #33-1385
TSZA = 000635 #33-1386
TSZE = 000633 #33-1387
TSZN = 000637 #33-1388
TTCALL = 000051 #33-1390
TTYMSG = ****** GX 163-6543
TUEMSG 004427 R 216-8241 #217-8262
TYDMTB 000544 R 113-4633 #113-4649
TYLGMS 012312 R 159-6338 159-6338 159-6372 159-6372 #159-6381
TYPAD2 003570 R 79-3245 #82-3367
TYPDG1 004012 R 79-3252 #83-3445
TYPDG3 004064 R 79-3255 #84-3489
TYPDTE 003364 R 78-3169 #79-3194
TYPDX1 003520 R 79-3243 #81-3342
UGETF = 000073 #33-1392
UJEN = 000100 #33-1394
UNASG1 = 000032 #174-6874 #226-8750
UNASG2 = 000033 #174-6874 #226-8750
UNASG3 = 000034 #174-6874 #226-8750
UNASG4 = 000035 #174-6874 #226-8750
UNASG5 = 000036 #174-6874 #226-8750
UNASG6 = 000037 #174-6874 #226-8750
USETI = 000074 #33-1396
USETO = 000075 #33-1397
USRMSG = ****** GX 223-8659
VF.DSP = 000060 #21-828
VF.FFD = 000061 #21-829
VF.INT = 000000 #21-826
VF.OVR = 000053 #21-830
VF.PRM = 000044 #21-831
VF.SSP = 000040 #21-827
VMAMSG = ****** GX 92-3715
VMATB 000510 R 108-4234 #109-4292
VMHTB 000516 R 108-4238 #109-4296
WACMSG 003127 R 152-5965 #152-5987
WCMMSG 003413 R 179-7036 #179-7052
WCMSG0 004130 R 205-7786 #207-7855
WCMSG1 004154 R 205-7788 #207-7857
WCMSG2 004170 R 206-7815 #207-7859
WCMSG3 004202 R 206-7822 #207-7861
WEDMSG 004440 R 216-8242 #217-8264
WEP = 000010 #174-6874 #226-8750
WHDMS0 004345 R 216-8213 #217-8255
WHDMS1 004373 R 216-8226 #217-8257
WHHMS0 003653 R 194-7353 #194-7406
WHHMS1 003667 R 194-7359 #194-7408
WHHMS2 003701 R 194-7376 #194-7410
WHHMS3 003711 R 194-7399 #194-7412
WHHMS4 003740 R 194-7400 #194-7414
WHHMS5 003765 R 194-7401 #194-7416
WHHMS6 004010 R 194-7402 #194-7418
WHIMSG 003433 R 181-7087 #181-7109
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 28
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
WHKMRB 005007 R 223-8636 #224-8705
WHKMSA 005000 R 223-8629 #224-8703
WHKMSI 005032 R 223-8632 #224-8707
WHKMSK 005043 R 223-8657 #224-8709
WHKMS0 004650 R 223-8624 #224-8693
WHKMS1 004661 R 223-8626 #224-8695
WHKMS2 004672 R 223-8642 #224-8697
WHKMS3 004720 R 223-8649 #224-8699
WHKMS4 004750 R 223-8664 #224-8701
WHMMSG 003473 R 183-7145 #183-7157
WHOMSG 003505 R 185-7178 #185-7187
WHOTMS 003371 R 163-6538 #163-6567
WHRCRH 014526 R 194-7352 #194-7392
WHRECM 004017 R 196-7438 #196-7450
WHRMRH 014520 R 194-7351 #194-7389
WHRMSG 003453 R 181-7094 #181-7111
WHTMSG 003567 R 192-7288 #193-7314
WHWTAB 001030 R 194-7379 #194-7398
WPMSG0 004217 R 208-7876 #210-7934
WPMSG1 004251 R 208-7878 #210-7936
WPMSG2 004277 R 208-7886 #210-7938
WRLMSG 003526 R 188-7216 #189-7242
WRTMSG 003547 R 189-7227 #189-7244
WVMSG1 003607 R 193-7301 #193-7316
WVMSG2 003631 R 193-7305 #193-7318
XCT = 000256 #33-1399
XOR = 000430 #33-1401
XORB = 000433 #33-1402
XORI = 000431 #33-1403
XORM = 000432 #33-1404
XR = 000000 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
YESMSG 004336 R 211-7975 #212-8000
YONMSG 004317 R 211-7968 #212-7998
ZERDPB 000132 R *228-8820 *228-8821 229-8833 #229-8858
ZERESD 020436 R 229-8849 #229-8852
ZSTOP = 040000 #174-6874 #226-8750
$DIV = ****** GX 114-4693 114-4693 114-4697 114-4697 214-8115 214-8115
$DSW = ****** GX 142-5630 229-8848
$MUL = ****** GX 112-4551 112-4551 112-4555 112-4555 112-4566 112-4566 112-4576 112-4576 146-5775
146-5775 214-8092 214-8092
$$ = 000037 #34-1462 34-1462 #36-1511 36-1511 #36-1518 36-1518 #36-1520 36-1520 #38-1579
38-1579 #38-1587 38-1587 #38-1590 38-1590 #38-1594 38-1594 #40-1666 40-1666
#42-1768 42-1768 #44-1870 44-1870 #45-1907 45-1907 #47-1941 47-1941 #47-1942
47-1942 #47-1946 47-1946 #47-1947 47-1947 #47-1951 47-1951 #47-1953 47-1953
#47-1957 47-1957 #47-1959 47-1959 #49-2039 49-2039 #49-2044 49-2044 #49-2056
49-2056 #50-2089 50-2089 #50-2091 50-2091 #50-2092 50-2092 #50-2098 50-2098
#50-2100 50-2100 #50-2103 50-2103 #50-2104 50-2104 #50-2105 50-2105 #50-2107
50-2107 #50-2108 50-2108 #50-2109 50-2109 #50-2126 50-2126 #50-2127 50-2127
#51-2173 51-2173 #51-2174 51-2174 #51-2175 51-2175 #51-2182 51-2182 #51-2183
51-2183 #51-2186 51-2186 #52-2213 52-2213 #52-2214 52-2214 #52-2215 52-2215
#52-2216 52-2216 #56-2339 56-2339 #57-2409 57-2409 #57-2412 57-2412 #57-2416
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 29
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
57-2416 #57-2421 57-2421 #57-2422 57-2422 #58-2431 58-2431 #58-2440 58-2440
#58-2442 58-2442 #58-2443 58-2443 #58-2445 58-2445 #59-2465 59-2465 #59-2469
59-2469 #59-2473 59-2473 #59-2477 59-2477 #59-2487 59-2487 #60-2518 60-2518
#60-2521 60-2521 #60-2525 60-2525 #61-2533 61-2533 #61-2542 61-2542 #61-2544
61-2544 #61-2545 61-2545 #61-2547 61-2547 #61-2548 61-2548 #61-2564 61-2564
#61-2565 61-2565 #62-2597 62-2597 #62-2601 62-2601 #62-2605 62-2605 #62-2609
62-2609 #65-2670 65-2670 #65-2671 65-2671 #65-2676 65-2676 #65-2677 65-2677
#65-2681 65-2681 #65-2684 65-2684 #66-2720 66-2720 #66-2723 66-2723 #66-2728
66-2728 #66-2729 66-2729 #66-2732 66-2732 #67-2739 67-2739 #67-2761 67-2761
#67-2763 67-2763 #67-2764 67-2764 #67-2765 67-2765 #67-2767 67-2767 #67-2768
67-2768 #68-2776 68-2776 #68-2781 68-2781 #68-2784 68-2784 #68-2786 68-2786
#68-2787 68-2787 #68-2788 68-2788 #69-2813 69-2813 #69-2817 69-2817 #69-2821
69-2821 #69-2825 69-2825 #69-2836 69-2836 #70-2868 70-2868 #70-2871 70-2871
#70-2876 70-2876 #71-2883 71-2883 #71-2900 71-2900 #71-2902 71-2902 #71-2903
71-2903 #71-2904 71-2904 #71-2906 71-2906 #71-2907 71-2907 #71-2912 71-2912
#71-2915 71-2915 #71-2925 71-2925 #71-2926 71-2926 #71-2932 71-2932 #71-2936
71-2936 #72-2971 72-2971 #72-2975 72-2975 #72-2979 72-2979 #72-2983 72-2983
#73-3025 73-3025 #73-3027 73-3027 #76-3095 76-3095 #76-3096 76-3096 #78-3168
78-3168 #79-3208 79-3208 #79-3210 79-3210 #79-3211 79-3211 #80-3292 80-3292
#81-3344 81-3344 #81-3347 81-3347 #81-3353 81-3353 #82-3369 82-3369 #82-3380
82-3380 #82-3382 82-3382 #82-3388 82-3388 #82-3390 82-3390 #82-3395 82-3395
#82-3399 82-3399 #82-3401 82-3401 #82-3407 82-3407 #83-3457 83-3457 #84-3494
84-3494 #89-3601 89-3601 #89-3607 89-3607 #89-3608 89-3608 #89-3609 89-3609
#89-3611 89-3611 #89-3612 89-3612 #89-3613 89-3613 #89-3615 89-3615 #90-3644
90-3644 #90-3645 90-3645 #90-3646 90-3646 #90-3647 90-3647 #90-3651 90-3651
#90-3658 90-3658 #90-3665 90-3665 #92-3710 92-3710 #92-3712 92-3712 #92-3714
92-3714 #92-3716 92-3716 #92-3717 92-3717 #92-3718 92-3718 #94-3757 94-3757
#94-3759 94-3759 #94-3760 94-3760 #94-3762 94-3762 #94-3764 94-3764 #94-3765
94-3765 #94-3766 94-3766 #94-3768 94-3768 #96-3797 96-3797 #96-3799 96-3799
#96-3800 96-3800 #96-3801 96-3801 #96-3804 96-3804 #97-3816 97-3816 #97-3818
97-3818 #97-3821 97-3821 #97-3823 97-3823 #97-3826 97-3826 #97-3828 97-3828
#97-3831 97-3831 #98-3849 98-3849 #98-3850 98-3850 #98-3856 98-3856 #102-3979
102-3979 #102-3981 102-3981 #102-3986 102-3986 #102-3988 102-3988 #102-3993 102-3993
#104-4041 104-4041 #104-4043 104-4043 #106-4128 106-4128 #106-4130 106-4130 #106-4135
106-4135 #106-4137 106-4137 #108-4240 108-4240 #108-4248 108-4248 #109-4258 109-4258
#109-4263 109-4263 #110-4379 110-4379 #110-4380 110-4380 #110-4382 110-4382 #110-4401
110-4401 #110-4404 110-4404 #110-4407 110-4407 #110-4413 110-4413 #110-4414 110-4414
#110-4416 110-4416 #110-4423 110-4423 #112-4521 112-4521 #112-4524 112-4524 #112-4526
112-4526 #112-4529 112-4529 #112-4535 112-4535 #112-4538 112-4538 #112-4543 112-4543
#112-4551 112-4551 #112-4555 112-4555 #112-4566 112-4566 #112-4569 112-4569 #112-4570
112-4570 #112-4576 112-4576 #113-4629 113-4629 #113-4630 113-4630 #113-4634 113-4634
#113-4635 113-4635 #113-4639 113-4639 #113-4642 113-4642 #114-4693 114-4693 #114-4697
114-4697 #114-4702 114-4702 #114-4705 114-4705 #114-4706 114-4706 #114-4710 114-4710
#114-4713 114-4713 #116-4772 116-4772 #118-4834 118-4834 #121-4922 121-4922 #121-4927
121-4927 #121-4935 121-4935 #121-4940 121-4940 #124-5046 124-5046 #124-5047 124-5047
#128-5182 128-5182 #128-5190 128-5190 #129-5256 129-5256 #132-5340 132-5340 #132-5341
132-5341 #132-5343 132-5343 #132-5355 132-5355 #135-5426 135-5426 #135-5428 135-5428
#135-5432 135-5432 #135-5436 135-5436 #135-5437 135-5437 #136-5447 136-5447 #136-5448
136-5448 #136-5449 136-5449 #136-5450 136-5450 #136-5451 136-5451 #136-5459 136-5459
#136-5460 136-5460 #138-5510 138-5510 #138-5523 138-5523 #138-5526 138-5526 #138-5528
138-5528 #141-5613 141-5613 #141-5614 141-5614 #141-5617 141-5617 #141-5618 141-5618
#144-5703 144-5703 #144-5704 144-5704 #144-5707 144-5707 #144-5709 144-5709 #144-5716
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 30
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
144-5716 #144-5719 144-5719 #146-5775 146-5775 #147-5809 147-5809 #150-5877 150-5877
#150-5878 150-5878 #150-5881 150-5881 #151-5937 151-5937 #151-5940 151-5940 #151-5944
151-5944 #152-5966 152-5966 #152-5968 152-5968 #152-5979 152-5979 #152-5981 152-5981
#153-6018 153-6018 #153-6022 153-6022 #153-6027 153-6027 #153-6030 153-6030 #153-6031
153-6031 #153-6032 153-6032 #153-6036 153-6036 #153-6040 153-6040 #153-6045 153-6045
#153-6056 153-6056 #153-6062 153-6062 #154-6128 154-6128 #154-6134 154-6134 #154-6136
154-6136 #154-6139 154-6139 #154-6144 154-6144 #154-6145 154-6145 #154-6146 154-6146
#154-6149 154-6149 #155-6208 155-6208 #155-6209 155-6209 #155-6211 155-6211 #158-6290
158-6290 #158-6291 158-6291 #158-6293 158-6293 #158-6295 158-6295 #158-6297 158-6297
#158-6298 158-6298 #158-6299 158-6299 #159-6337 159-6337 #159-6338 159-6338 #159-6339
159-6339 #159-6340 159-6340 #159-6341 159-6341 #159-6345 159-6345 #159-6355 159-6355
#159-6357 159-6357 #159-6358 159-6358 #159-6362 159-6362 #159-6371 159-6371 #159-6372
159-6372 #159-6374 159-6374 #159-6376 159-6376 #159-6377 159-6377 #159-6378 159-6378
#159-6393 159-6393 #159-6395 159-6395 #163-6539 163-6539 #163-6544 163-6544 #163-6550
163-6550 #163-6552 163-6552 #163-6558 163-6558 #163-6560 163-6560 #167-6654 167-6654
#167-6661 167-6661 #167-6666 167-6666 #168-6698 168-6698 #168-6699 168-6699 #168-6700
168-6700 #169-6707 169-6707 #171-6766 171-6766 #171-6779 171-6779 #171-6781 171-6781
#173-6840 173-6840 #173-6843 173-6843 #175-6879 175-6879 #175-6883 175-6883 #175-6889
175-6889 #175-6890 175-6890 #175-6892 175-6892 #175-6895 175-6895 #175-6898 175-6898
#176-6932 176-6932 #176-6937 176-6937 #176-6938 176-6938 #176-6942 176-6942 #178-6997
178-6997 #178-6999 178-6999 #178-7000 178-7000 #178-7004 178-7004 #179-7037 179-7037
#180-7066 180-7066 #180-7067 180-7067 #180-7075 180-7075 #180-7077 180-7077 #181-7097
181-7097 #181-7100 181-7100 #182-7122 182-7122 #182-7124 182-7124 #182-7125 182-7125
#182-7132 182-7132 #183-7146 183-7146 #184-7168 184-7168 #184-7170 184-7170 #185-7179
185-7179 #185-7181 185-7181 #186-7194 186-7194 #187-7202 187-7202 #188-7217 188-7217
#189-7228 189-7228 #190-7259 190-7259 #190-7261 190-7261 #190-7265 190-7265 #191-7273
191-7273 #192-7289 192-7289 #193-7302 193-7302 #193-7304 193-7304 #193-7306 193-7306
#194-7354 194-7354 #194-7358 194-7358 #194-7360 194-7360 #194-7366 194-7366 #194-7367
194-7367 #194-7368 194-7368 #194-7374 194-7374 #194-7377 194-7377 #194-7384 194-7384
#195-7428 195-7428 #196-7436 196-7436 #196-7439 196-7439 #197-7465 197-7465 #198-7472
198-7472 #198-7475 198-7475 #199-7553 199-7553 #199-7558 199-7558 #199-7560 199-7560
#199-7561 199-7561 #199-7565 199-7565 #200-7575 200-7575 #200-7577 200-7577 #200-7578
200-7578 #200-7592 200-7592 #200-7593 200-7593 #200-7595 200-7595 #200-7602 200-7602
#201-7611 201-7611 #201-7612 201-7612 #201-7613 201-7613 #202-7673 202-7673 #202-7674
202-7674 #205-7781 205-7781 #205-7782 205-7782 #205-7783 205-7783 #205-7787 205-7787
#205-7789 205-7789 #205-7796 205-7796 #205-7803 205-7803 #205-7804 205-7804 #205-7805
205-7805 #205-7808 205-7808 #206-7816 206-7816 #206-7821 206-7821 #206-7823 206-7823
#208-7871 208-7871 #208-7872 208-7872 #208-7873 208-7873 #208-7877 208-7877 #208-7879
208-7879 #208-7885 208-7885 #208-7887 208-7887 #208-7891 208-7891 #209-7906 209-7906
#209-7907 209-7907 #209-7908 209-7908 #211-7969 211-7969 #211-7970 211-7970 #211-7972
211-7972 #211-7976 211-7976 #211-7980 211-7980 #211-7982 211-7982 #214-8077 214-8077
#214-8081 214-8081 #214-8085 214-8085 #214-8092 214-8092 #214-8115 214-8115 #216-8202
216-8202 #216-8214 216-8214 #216-8218 216-8218 #216-8219 216-8219 #216-8221 216-8221
#216-8222 216-8222 #216-8224 216-8224 #216-8225 216-8225 #216-8227 216-8227 #221-8347
221-8347 #221-8357 221-8357 #221-8360 221-8360 #221-8362 221-8362 #221-8366 221-8366
#221-8368 221-8368 #221-8409 221-8409 #221-8413 221-8413 #221-8415 221-8415 #221-8418
221-8418 #221-8423 221-8423 #221-8427 221-8427 #221-8459 221-8459 #221-8462 221-8462
#221-8484 221-8484 #221-8487 221-8487 #221-8488 221-8488 #221-8490 221-8490 #221-8492
221-8492 #221-8543 221-8543 #221-8562 221-8562 #223-8623 223-8623 #223-8625 223-8625
#223-8637 223-8637 #223-8641 223-8641 #223-8643 223-8643 #223-8645 223-8645 #223-8647
223-8647 #223-8648 223-8648 #223-8650 223-8650 #223-8652 223-8652 #223-8654 223-8654
#223-8655 223-8655 #223-8658 223-8658 #223-8663 223-8663 #223-8665 223-8665 #223-8676
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 31
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
223-8676 #227-8775 227-8775 #227-8780 227-8780 #228-8798 228-8798 #228-8800 228-8800
#228-8802 228-8802 #228-8805 228-8805 #228-8809 228-8809 #229-8836 229-8836 #229-8838
229-8838 #229-8840 229-8840
$$A = 000100 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$B = 000000 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$C = 000200 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$D = 000011 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$E = 000016 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$F = 000000 #137-5494 137-5494 #137-5496 137-5496 #137-5498 137-5498 #137-5500 137-5500 #139-5541
139-5541 #139-5543 139-5543 #151-5957 151-5957
$$$ARG = 000006 #125-5062 125-5062 #125-5062 125-5062 #125-5062 125-5062 #125-5071 125-5071 #125-5071
125-5071 #125-5071 125-5071 #125-5077 125-5077 #125-5077 125-5077 #125-5077 125-5077
#164-6588 164-6588 #164-6591 164-6591
$$$GLB = ****** 56-2350 56-2350 56-2350 56-2350 56-2350 56-2350 110-4369 110-4369 110-4369
110-4369 110-4369 110-4369 110-4369 110-4369 125-5062 125-5062 125-5062 125-5062
125-5071 125-5071 125-5071 125-5071 125-5077 125-5077 125-5077 125-5077 143-5666
143-5666 143-5666 143-5666 143-5666 143-5666 159-6383 159-6383 159-6383 159-6383
159-6383 159-6383 159-6383 159-6383 164-6588 164-6588 164-6588 164-6588 164-6588
164-6588 164-6588 164-6588 164-6591 164-6591 164-6591 164-6591 164-6591 164-6591
164-6591 164-6591 216-8204 216-8204 216-8204 216-8204 216-8204 216-8204 216-8204
216-8204 223-8687 223-8687 223-8687 223-8687 223-8687 223-8687
$$$OST = 000016 #56-2350 56-2350 56-2350 #56-2350 56-2350 56-2350 #56-2350 56-2350 56-2350
#56-2350 56-2350 56-2350 #56-2350 56-2350 56-2350 #56-2350 #110-4369 110-4369
110-4369 #110-4369 110-4369 110-4369 #110-4369 110-4369 110-4369 #110-4369 110-4369
110-4369 #110-4369 110-4369 110-4369 #110-4369 110-4369 110-4369 #110-4369 110-4369
110-4369 #110-4369 110-4369 110-4369 #110-4369 #125-5062 125-5062 125-5062 #125-5062
125-5062 125-5062 #125-5062 125-5062 125-5062 #125-5062 #125-5071 125-5071 125-5071
#125-5071 125-5071 125-5071 #125-5071 125-5071 125-5071 #125-5071 #125-5077 125-5077
125-5077 #125-5077 125-5077 125-5077 #125-5077 125-5077 125-5077 #125-5077 #143-5666
143-5666 143-5666 #143-5666 143-5666 143-5666 #143-5666 143-5666 143-5666 #143-5666
143-5666 143-5666 #143-5666 143-5666 143-5666 #143-5666 #159-6383 159-6383 159-6383
#159-6383 159-6383 159-6383 #159-6383 159-6383 159-6383 #159-6383 159-6383 159-6383
#159-6383 159-6383 159-6383 #159-6383 159-6383 159-6383 #159-6383 159-6383 159-6383
#159-6383 159-6383 159-6383 #159-6383 #164-6588 164-6588 164-6588 #164-6588 164-6588
164-6588 #164-6588 164-6588 164-6588 #164-6588 164-6588 164-6588 #164-6588 164-6588
164-6588 #164-6588 164-6588 164-6588 #164-6588 164-6588 #164-6591 164-6591 164-6591
#164-6591 164-6591 164-6591 #164-6591 164-6591 164-6591 #164-6591 164-6591 164-6591
#164-6591 164-6591 164-6591 #164-6591 164-6591 164-6591 #164-6591 164-6591 #216-8204
216-8204 216-8204 #216-8204 216-8204 216-8204 #216-8204 216-8204 216-8204 #216-8204
216-8204 216-8204 #216-8204 216-8204 216-8204 #216-8204 216-8204 216-8204 #216-8204
216-8204 216-8204 #216-8204 216-8204 216-8204 #216-8204 #223-8687 223-8687 223-8687
#223-8687 223-8687 223-8687 #223-8687 223-8687 223-8687 #223-8687 223-8687 223-8687
#223-8687 223-8687 223-8687 #223-8687
$$$T1 = 000000 #56-2350 56-2350 56-2350 56-2350 #56-2350 56-2350 #125-5062 125-5062 125-5062
#125-5062 125-5062 125-5062 #125-5062 125-5062 125-5062 #125-5071 125-5071 125-5071
#125-5071 125-5071 125-5071 #125-5071 125-5071 125-5071 #125-5077 125-5077 125-5077
#125-5077 125-5077 125-5077 #125-5077 125-5077 125-5077 #143-5666 143-5666 143-5666
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 32
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
143-5666 #143-5666 143-5666 #223-8687 223-8687 223-8687 223-8687 #223-8687 223-8687
.ABORT 000004 RG #36-1507 175-6895 175-6895
.ABRTC 000000 RG #34-1461
.ABRT0 000032 RG 36-1509 #36-1516
.APRWD = ****** GX *73-3029 184-7165
.ASCID 000016 RG 123-5031 #125-5058
.ASCOD 000026 RG 123-5029 #125-5067
.ASLST 000036 RG 123-5033 #125-5076
.ATLMD = 000033 #21-837
.ATLST 000064 R 160-6449 #164-6587
.ATOTA = ****** GX 128-5173 *197-7466 198-7477
.BRCLK = 005000 #174-6874 #226-8750
.BUFSZ = ****** GX 159-6363
.CECLK = 004000 #174-6874 #226-8750
.CESCK = ****** GX 121-4927 121-4927
.CHTAB = ****** GX 110-4411 112-4527 135-5424 153-6034 158-6286 176-6935 178-6995 200-7580
.CIBFR = ****** GX 110-4376 112-4522 128-5155 128-5167 211-7971 221-8358 221-8367 221-8485
.CISTS = ****** GX *128-5168 *128-5183
.CKARG = ****** GX 40-1666 40-1666 42-1768 42-1768 57-2409 57-2409 60-2518 60-2518 66-2720
66-2720 70-2868 70-2868 110-4382 110-4382 110-4404 110-4404 110-4414 110-4414
112-4529 112-4529 135-5426 135-5426 150-5877 150-5877 173-6840 173-6840 199-7553
199-7553 199-7565 199-7565
.CKCOL = ****** GX 51-2174 51-2174 57-2421 57-2421 65-2671 65-2671 66-2729 66-2729
.CKCTC = ****** GX 229-8840 229-8840
.CKEOC = ****** GX 34-1462 34-1462 38-1579 38-1579 56-2339 56-2339 58-2431 58-2431 61-2533
61-2533 61-2565 61-2565 65-2677 65-2677 67-2739 67-2739 71-2883 71-2883
71-2926 71-2926 76-3096 76-3096 78-3168 78-3168 89-3601 89-3601 90-3644
90-3644 92-3710 92-3710 94-3757 94-3757 96-3797 96-3797 98-3849 98-3849
110-4423 110-4423 112-4538 112-4538 116-4772 116-4772 118-4834 118-4834 129-5256
129-5256 135-5432 135-5432 141-5618 141-5618 144-5709 144-5709 147-5809 147-5809
158-6298 158-6298 168-6700 168-6700 171-6766 171-6766 175-6892 175-6892 176-6938
176-6938 178-7000 178-7000 178-7004 178-7004 180-7067 180-7067 180-7075 180-7075
182-7125 182-7125 182-7132 182-7132 184-7170 184-7170 186-7194 186-7194 187-7202
187-7202 190-7261 190-7261 191-7273 191-7273 195-7428 195-7428 196-7436 196-7436
197-7465 197-7465 198-7472 198-7472 199-7558 199-7558 214-8077 214-8077 216-8202
216-8202 221-8347 221-8347 221-8492 221-8492 223-8623 223-8623 228-8800 228-8800
.CKEOS = ****** GX 50-2091 50-2091 50-2127 50-2127 51-2183 51-2183 52-2214 52-2214
.CKOBJ = ****** GX 158-6295 158-6295 167-6654 167-6654 167-6661 167-6661 168-6698 168-6698 169-6707
169-6707 178-6997 178-6997 182-7122 182-7122 221-8488 221-8488
.CKRNP = ****** GX 135-5436 135-5436 175-6883 175-6883
.CKRUN = ****** GX 49-2039 49-2039 65-2670 65-2670 132-5340 132-5340 136-5459 136-5459 150-5881
150-5881 176-6932 176-6932 201-7611 201-7611 227-8775 227-8775
.CKSYM = ****** GX 112-4526 112-4526 141-5613 141-5613 144-5703 144-5703
.CLKWD = ****** GX 201-7635 205-7785
.CLOSE = ****** GX 159-6345 159-6345
.CLRCM 012646 RG #167-6653
.CLRMR = 006000 #174-6874 #226-8750
.CLRUN = 010000 #174-6874 #226-8750
.COMEF = ****** GX *36-1519 *175-6901 214-8068 221-8534
.COMMA = 000054 #21-835 200-7582
.CONBT = 012000 #174-6874 #226-8750
.CONTC 000056 RG #38-1578
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 33
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.CPUSN = ****** GX 194-7350 194-7355
.CSHRG = 164000 #174-6874 #226-8750
.DATE3 = ****** GX *214-8072 214-8075 *214-8130 216-8229
.DAY = ****** GX *214-8129
.DEPAR 002116 RG #65-2669
.DFBLK = ****** GX 119-4871
.DFCOM 000542 RG #49-2038 50-2089 50-2089 50-2126 50-2126 51-2173 51-2173 52-2213 52-2213
.DFRED 000652 RG #50-2088 50-2122
.DFWRT 001106 RG #51-2172
.DFXCT 001166 RG #52-2212 52-2220
.DIAG1 = 000000 #10-352
.DIAG2 = 000002 #10-353
.DIAG3 = 000006 #10-355
.DISCC 001310 RG #56-2338
.DOW = ****** GX *214-8121 216-8215
.DPBFR = ****** GX 67-2748 68-2782
.DPBFX = ****** GX 66-2731 69-2830 69-2835
.DPETB = ****** GX 57-2411 66-2722
.DPEWD 001524 RG 41-1691 #59-2464
.DPEWI 001532 RG 41-1703 #59-2468
.DPEWN 001540 RG 41-1715 #59-2472
.DPEWP 001546 RG 41-1727 #59-2476
.DPEWT 001516 RG 41-1739 #59-2460
.DPKLD 002534 RG 41-1690 #69-2812
.DPKLI 002542 RG 41-1702 #69-2816
.DPKLM = ****** GX 68-2776 68-2776 138-5523 138-5523 151-5937 151-5937 154-6149 154-6149 171-6779
171-6779
.DPKLN 002550 RG 41-1714 #69-2820
.DPKLP 002556 RG 41-1726 #69-2824
.DPKLT 002526 RG 41-1738 #69-2808
.DPOBJ 000264 RG 40-1667 #44-1868
.DPOEL 000314 RG #44-1880
.DPOKL 000306 RG #44-1876
.DPOSA 000172 RG #40-1668
.DPOSC 000160 RG #40-1664
.DPOSD 000176 RG #41-1683
.DPOSE 001334 RG 40-1676 44-1882 #57-2408
.DPOSI 000202 RG #41-1695
.DPOSN 000206 RG #41-1707
.DPOSP 000212 RG #41-1719
.DPOST 002206 RG 40-1675 44-1878 #66-2719
.DPOSZ 000216 RG #41-1731
.DPOTB = ****** GX 44-1869
.DPSEE 001406 RG #58-2430 59-2482 59-2490
.DPSTE 002256 RG #67-2738 69-2831 69-2837
.DRLTC = 015000 #174-6874 #226-8750
.DSACF = 066000 #174-6874 #226-8750
.DSIOJ = 065000 #174-6874 #226-8750
.DTBUF 000524 RG 110-4368 110-4448 #111-4480
.DTDW1 = ****** GX 121-4940 121-4940 154-6136 154-6136
.DTLST 000100 R 160-6442 #164-6590
.DTSTA = ****** GX 121-4922 121-4922
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 34
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.DTSTW = 000004 #10-354
.EDELA = ****** GX 46-1927 46-1932 *58-2436 59-2461 *61-2537 62-2593
.EDEWD 000370 RG #46-1925 59-2465 59-2465 62-2597 62-2597
.EDEWI 000402 RG #46-1930 59-2469 59-2469 62-2601 62-2601
.EDEWN 000402 RG #46-1931 59-2473 59-2473 62-2605 62-2605
.EDEWP 000370 RG #46-1926 59-2477 59-2477 62-2609 62-2609
.EDKLA = ****** GX 47-1969 67-2742 71-2892 72-2967
.EDKLC 000512 RG 47-1941 47-1941 47-1946 47-1946 47-1951 47-1951 47-1957 47-1957 #47-1967
.EDKLD 000440 RG #47-1950 69-2813 69-2813 72-2971 72-2971
.EDKLI 000456 RG #47-1956 69-2817 69-2817 72-2975 72-2975
.EDKLN 000426 RG #47-1945 69-2821 69-2821 72-2979 72-2979
.EDKLP 000414 RG #47-1940 69-2825 69-2825 72-2983 72-2983
.EDKLX = ****** GX 47-1968 66-2727 69-2809 70-2875 *121-4931 *121-4932 122-4989
.EIOJA = 067000 #174-6874 #226-8750
.ELDDW = ****** GX *58-2437 59-2481
.ELEDW = ****** GX *61-2541
.ENTER = ****** GX 159-6357 159-6357
.EXAD 004112 RG #87-3540
.EXADX 004120 RG #87-3544
.EXAMA 000234 RG #42-1771
.EXAMC 000222 RG #42-1766
.EXAMD 000240 RG #43-1786
.EXAME 001604 RG 42-1779 45-1916 #60-2517 61-2560
.EXAMF 004316 RG #90-3643 92-3718 92-3718
.EXAMI 000244 RG #43-1798
.EXAMK 004422 RG #92-3709
.EXAMN 000250 RG #43-1810
.EXAMP 000254 RG #43-1822
.EXAMT 002614 RG 42-1778 45-1920 #70-2867 71-2921
.EXAMZ 000260 RG #43-1834
.EXARR 004126 RG #87-3548
.EXARX 004134 RG #87-3552
.EXBFR = ****** GX 67-2757 68-2779 68-2783 71-2891 122-4990
.EXBRR 004142 RG #87-3556
.EXBRX 004150 RG #87-3560
.EXCRA 004476 RG #93-3727
.EXCRL 004504 RG #93-3731
.EXCTC 003300 RG #76-3090
.EXCTF = ****** GX 137-5486 138-5526 138-5526 138-5528 138-5528 151-5940 151-5940
.EXDRA 004512 RG #93-3735
.EXDTE 003354 RG #78-3167
.EXEBS 004156 RG #87-3564
.EXECT = ****** GX 76-3103
.EXETB = ****** GX 60-2520 70-2870
.EXEWD 002066 RG 43-1794 #62-2596
.EXEWI 002074 RG 43-1806 #62-2600
.EXEWN 002102 RG 43-1818 #62-2604
.EXEWP 002110 RG 43-1830 #62-2608
.EXEWT 002060 RG 43-1842 #62-2592
.EXFER 004520 RG #93-3739
.EXFMR 004164 RG #87-3568
.EXITP = ****** GX 38-1600 56-2344 122-4977 124-5051 128-5191 141-5622 147-5810 171-6782 175-6880
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 35
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
178-7025 223-8678
.EXKLD 003206 RG 43-1793 #72-2970
.EXKLI 003214 RG 43-1805 #72-2974
.EXKLM = ****** GX 67-2761 67-2761 68-2781 68-2781 71-2900 71-2900 121-4935 121-4935 154-6134
154-6134
.EXKLN 003222 RG 43-1817 #72-2978
.EXKLP 003230 RG 43-1829 #72-2982
.EXKLT 003200 RG 43-1841 #72-2966
.EXMEE 001632 RG #61-2531 62-2594 62-2598 62-2602 62-2606 62-2610
.EXMEL 000352 RG #45-1914
.EXMKL 000362 RG #45-1918
.EXMPI 004612 RG 92-3717 92-3717 #96-3796
.EXMQR 004172 RG #87-3572
.EXMTB = ****** GX 45-1906 98-3851
.EXMTE 002646 RG #71-2882 72-2968 72-2972 72-2976 72-2980 72-2984
.EXOBJ 000324 RG 42-1769 #45-1905
.EXREG 004764 RG #98-3848
.EXSBR 004526 RG #93-3743
.EXSCR 004534 RG #93-3747
.EXVAB 004200 RG #88-3579
.EXVMA 004206 RG #88-3583 92-3716 92-3716
.EXVMH 004214 RG #88-3587
.EXVPC 004222 RG #88-3591 92-3714 92-3714
.FEMOD = ****** GX 175-6893 *178-7021 179-7038
.FREAD = ****** GX 50-2098 50-2098 73-3025 73-3025 100-3930 102-3979 102-3979 102-3986 102-3986
102-3993 102-3993 104-4041 104-4041 106-4128 106-4128 106-4135 106-4135 109-4258
109-4258
.FWRIT = ****** GX 51-2186 51-2186
.FXCT = ****** GX 38-1590 38-1590 52-2216 52-2216
.GFNR = 102000 #174-6874 #226-8750
.GTDAT 005600 RG #110-4364 214-8081 214-8081 221-8413 221-8413 221-8427 221-8427
.GTELN = ****** GX 57-2416 57-2416 57-2422 57-2422 59-2487 59-2487 60-2525 60-2525 61-2564
61-2564 132-5341 132-5341 150-5878 150-5878 153-6036 153-6036 176-6937 176-6937
184-7168 184-7168
.GTKLA = ****** GX 66-2728 66-2728 70-2876 70-2876 71-2925 71-2925 175-6889 175-6889 227-8780
227-8780 228-8798 228-8798
.GTKLN = ****** GX 49-2044 49-2044 51-2182 51-2182 66-2732 66-2732 69-2836 69-2836 76-3095
76-3095 190-7259 190-7259
.GTLIN = ****** GX 110-4380 110-4380 112-4524 112-4524 211-7972 211-7972 221-8360 221-8360 221-8368
221-8368 221-8487 221-8487
.GTNBR = ****** GX 110-4401 110-4401 110-4416 110-4416 112-4535 112-4535 112-4570 112-4570
.GTNUM = ****** GX 65-2676 65-2676 180-7066 180-7066
.GTR50 010676 RG 141-5614 141-5614 141-5617 141-5617 144-5704 144-5704 144-5707 144-5707 #146-5755
.GTTIM 006244 RG #112-4515 214-8085 214-8085 221-8418 221-8418 221-8462 221-8462
.HALTC 007064 RG #116-4771
.HRDWR = ****** GX 194-7362 194-7370 194-7382
.INBBC = ****** GX *144-5720
.INCHC = ****** GX 110-4462 112-4585 221-8370
.INDFG = ****** GX 144-5710 *144-5724
.INEXT 000574 R 121-4934 #122-4988
.INFN = ****** GX *144-5701 *144-5702 *144-5706 *144-5708 144-5713
.INFNB = ****** GX 144-5714
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 36
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.INICL = 070000 #174-6874 #226-8750
.INICP 007330 RG #123-5019
.INIC0 007100 RG #118-4835 124-5047 124-5047
.INIT 007102 RG #119-4868
.INITC 007074 RG #118-4833
.INKLF 007132 RG 118-4836 #121-4914
.INPOS = ****** GX *144-5721
.INVBN = ****** GX *144-5722 *144-5723
.IRADX = ****** GX 110-4365 *110-4366 *110-4461 112-4516 *112-4517 *112-4584 190-7251 *190-7252 *190-7266
.IRLTC = 014000 #174-6874 #226-8750
.JUMPC 013072 RG #175-6878
.KACFL = ****** GX *187-7207 189-7230
.KLCON = ****** GX 38-1594 38-1594
.KLE 007520 RG #128-5153
.KLEDF = ****** GX *128-5180 *129-5258
.KLEPT = ****** GX *128-5158 128-5160 *128-5161 *128-5176
.KLERQ = ****** GX 121-4918 *128-5186 *129-5257
.KLEVL = ****** GX 128-5156 *128-5159 *128-5177 *129-5259
.KLFCF = ****** GX *195-7429 196-7441
.KLFLG = ****** GX 38-1580 49-2053 49-2055 65-2678 67-2740 71-2888 92-3711 *119-4876 121-4928
136-5444 138-5507 176-6940 200-7591 228-8803
.KLHLT = ****** GX 49-2056 49-2056 65-2681 65-2681 176-6942 176-6942 200-7592 200-7592
.KLINC = ****** GX 47-1952 47-1958 180-7068 180-7076 181-7088
.KLIWD = ****** GX 128-5188 153-6057 *153-6059
.KLMTB = ****** GX 221-8489
.KLMT1 = ****** GX 221-8361
.KLNFD = ****** GX *221-8503 *221-8504 223-8634 223-8644
.KLNFT = ****** GX *221-8502 223-8646
.KLNMD = ****** GX 178-7018 *221-8498 *221-8505 221-8521 *221-8526 223-8627 223-8660 223-8667 223-8670
.KLNPB = ****** GX 221-8538
.KLNPE = ****** GX 221-8545
.KLNPW = ****** GX 221-8508 *221-8527
.KLNSW = ****** GX *56-2340 178-7016 221-8353 *221-8528 223-8630 223-8674
.KLNTD = ****** GX *221-8500 *221-8501 223-8651
.KLNTT = ****** GX *221-8499 223-8653
.KLRLD = ****** GX *186-7195 188-7219
.KLRST = ****** GX 65-2687 200-7602 200-7602
.KLSNP = ****** GX 128-5184 *128-5187 *129-5260
.KLST = ****** GX 175-6898 175-6898
.KLSTP = ****** GX 36-1511 36-1511 116-4773
.LCRDL = 052000 #174-6874 #226-8750
.LCRDR = 051000 #174-6874 #226-8750
.LCRM1 = 057000 #174-6874 #226-8750
.LCRM2 = 056000 #174-6874 #226-8750
.LCRM3 = 055000 #174-6874 #226-8750
.LCRM4 = 054000 #174-6874 #226-8750
.LCRM5 = 053000 #174-6874 #226-8750
.LDAR = 077000 #174-6874 #226-8750
.LDBRL = 043000 #174-6874 #226-8750
.LDBRR = 042000 #174-6874 #226-8750
.LDCK1 = 046000 #174-6874 #226-8750
.LDCK2 = 047000 #174-6874 #226-8750
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 37
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.LDCLK = ****** GX 201-7634
.LDDIS = 045000 #174-6874 #226-8750
.LDPAR = ****** GX 201-7640
.LDRJD = 064000 #174-6874 #226-8750
.LDRJV = 063000 #174-6874 #226-8750
.LDRM1 = 060000 #174-6874 #226-8750
.LDRM2 = 061000 #174-6874 #226-8750
.LDRM3 = 062000 #174-6874 #226-8750
.LDSEL = 044000 #174-6874 #226-8750
.LDZFL = ****** GX *89-3599 *152-5978 *181-7098
.LGLWD = ****** GX *44-1873 *45-1910 *135-5431 *167-6669
.LOKUP = ****** GX 144-5716 144-5716 159-6355 159-6355
.MARKC 007770 RG #132-5337 132-5360
.MEMFL = ****** GX 40-1665 42-1767 *182-7136 183-7148
.MEMRS = 076000 #174-6874 #226-8750
.MISC = ****** GX 128-5171 *128-5175 *128-5179
.MON = ****** GX *214-8127
.MONTB = ****** GX 110-4406
.NOERR = ****** GX *38-1597 153-6014 *153-6015 *153-6064 *175-6900
.NOHLT = ****** GX *171-6767
.NOTSW = ****** GX 150-5875 158-6288 159-6332 160-6438 161-6479 167-6655 *167-6657 *167-6662 *169-6708
178-6993 180-7060 182-7120 184-7166 186-7195 187-7204 190-7257 191-7275 195-7429
197-7466 202-7691 203-7716 204-7767 214-8070 221-8348 221-8551
.OPEN = ****** GX 144-5719 144-5719 159-6358 159-6358 159-6362 159-6362
.ORADX = ****** GX 113-4624 *113-4625 *113-4643 114-4689 *114-4690 *114-4714 181-7092 *181-7093 *181-7101
194-7356 *194-7357 *194-7375
.OTATT = ****** GX 159-6343 *159-6359 *159-6360 159-6365 159-6366
.OTBBC = ****** GX *159-6363
.OTBUF = ****** GX 159-6364
.OTFN = ****** GX 159-6342 159-6351
.OTFNB = ****** GX 159-6352
.OTPOS = ****** GX *159-6364
.OTVBN = ****** GX *159-6365 *159-6366
.OUTLG = ****** GX 159-6334 *159-6346 159-6349 *159-6369 162-6509 163-6554
.OUTLP = ****** GX 160-6440 *160-6444 160-6447 *160-6451 162-6511 163-6546
.OUTTY = ****** GX *161-6481 *161-6483 *162-6513 163-6541
.PASS = ****** GX *153-6012 153-6050 *153-6052
.PCAB1 = 150000 #174-6874 #226-8750
.PCAB2 = 151000 #174-6874 #226-8750
.PCAB3 = 152000 #174-6874 #226-8750
.PCAB4 = 153000 #174-6874 #226-8750
.PITAB = ****** GX 104-4037 104-4062
.PRDTE = ****** GX 79-3195
.PSCWD = ****** GX 201-7641 208-7875
.QUITC 011004 RG #147-5808
.RCRM1 = 147000 #174-6874 #226-8750
.RCRM2 = 146000 #174-6874 #226-8750
.RCRM3 = 145000 #174-6874 #226-8750
.RCRM4 = 144000 #174-6874 #226-8750
.RCSPF = 141000 #174-6874 #226-8750
.RDADR 005026 RG 87-3541 #100-3894
.RDADX 005034 RG 87-3545 #100-3898
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 38
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.RDAPR 003236 RG 68-2787 68-2787 #73-3021
.RDARR 005042 RG 87-3549 #100-3902
.RDARX 005050 RG 87-3553 #100-3906
.RDBRR 005056 RG 87-3557 #100-3910
.RDBRX 005064 RG 87-3561 #100-3914
.RDCPP = ****** GX 200-7595 200-7595 201-7613 201-7613 205-7782 205-7782 208-7872 208-7872
.RDCRA 005322 RG 93-3728 #105-4095
.RDCRL 005330 RG 93-3732 #105-4099
.RDCRM = ****** GX 132-5343 132-5343
.RDDRA 005336 RG 93-3736 #105-4103
.RDEBS 005072 RG 87-3565 #100-3918
.RDFER 005344 RG 93-3740 #105-4107
.RDFLG 005116 RG 90-3646 90-3646 #102-3974
.RDFMA = ****** GX 152-5968 152-5968 153-6018 153-6018
.RDFMO = ****** GX 153-6030 153-6030 154-6144 154-6144
.RDFMP = ****** GX 154-6139 154-6139
.RDFMR 005100 RG 87-3569 #100-3922
.RDIPE = ****** GX 153-6022 153-6022
.RDJ14 = 134000 #174-6874 #226-8750
.RDJ71 = 135000 #174-6874 #226-8750
.RDMAB = 133000 #174-6874 #226-8750
.RDMQR 005106 RG 87-3573 #100-3926
.RDPI 005242 RG 96-3800 96-3800 #104-4034
.RDSBR 005352 RG 93-3744 #105-4111
.RDSCR 005360 RG 93-3748 #105-4115
.RDVAB 005456 RG 88-3580 #108-4229
.RDVMA 005464 RG 88-3584 #108-4233
.RDVMH 005472 RG 88-3588 #108-4237
.RDVPC 005450 RG 88-3592 #108-4225
.RDXSV = ****** GX *110-4365 110-4461 *112-4516 112-4584 *181-7092 181-7101 *190-7251 190-7266
.RECNT = ****** GX *159-6368
.RECPT = ****** GX *159-6367
.RECRD = ****** GX 159-6367
.REGSV = ****** GX 108-4240
.RELWD = ****** GX *184-7171 185-7180
.RESTB = ****** GX 135-5427
.RESTC 010066 RG #135-5422
.RESTD = ****** GX 136-5448 136-5448 136-5456
.RESTI = ****** GX 136-5461
.RESTP = ****** GX 135-5438 155-6208 155-6208
.RNDPB 000046 RG *141-5619 141-5620 #143-5665
.RPTCT = ****** GX 181-7095 190-7262
.RPTPT = ****** GX 190-7264
.RSALL 010146 RG #136-5443
.RSAPR 010242 RG 136-5449 136-5449 #137-5471
.RSDTE 010214 RG #136-5455
.RSERR 010250 RG #137-5475
.RSPAG 010274 RG 136-5450 136-5450 #138-5506
.RSSWP 011672 RG 153-6032 153-6032 154-6146 154-6146 #155-6206
.RSTIN 010220 RG #136-5458
.RSTIO 010256 RG #137-5479
.RSTKL = ****** GX 50-2109 50-2109 51-2188 68-2788 68-2788 89-3609 89-3609 90-3647 90-3647
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 39
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
92-3720 94-3762 94-3762 96-3801 96-3801 98-3860 136-5453 138-5531 201-7615
205-7783 205-7783 208-7873 208-7873
.RSTPI 010264 RG 136-5451 136-5451 #137-5483
.RUNCM 010420 RG #141-5612
.SACBK 011066 RG 150-5883 #151-5926
.SACB1 011070 RG #151-5928 153-6062 153-6062 154-6128 154-6128 155-6211 155-6211
.SCACB 011014 RG #150-5874
.SCCEC 015220 RG #203-7705
.SCCED 015226 RG #203-7709
.SCCEE 015234 RG #203-7713
.SCCLK 014660 RG #199-7552
.SCCLN 015102 RG #202-7651
.SCCOM 013340 RG #178-7013
.SCCON 013256 RG #178-6992
.SCCOO 013324 RG #178-7005
.SCCOP 013332 RG 178-6996 #178-7009
.SCCOT = ****** GX 178-6998
.SCCOU 013366 RG #178-7024
.SCCRF 015104 RG #202-7653
.SCCRH 015110 RG #202-7657
.SCCRQ 015116 RG #202-7661
.SCCRS 015124 RG #202-7665
.SCCSE 015136 RG #202-7671
.SCCSI 015166 RG #202-7682
.SCCSM 015172 RG #202-7686
.SCCTB = ****** GX 201-7633
.SCDAT 016032 RG #214-8067
.SCFSS 014672 RG #199-7557
.SCINC 013450 RG #180-7059
.SCKLN 016534 RG #221-8346
.SCMEL 013646 RG #182-7128
.SCMEM 013614 RG #182-7119
.SCMKL 013660 RG #182-7133
.SCMTB = ****** GX 182-7123
.SCNOT 012746 RG #169-6706
.SCOFS 013720 RG #184-7164
.SCOTC 012506 RG 159-6347 160-6445 161-6482 #162-6508
.SCOTL 012014 RG 158-6290 158-6290 #159-6331
.SCOTP 012374 RG 158-6291 158-6291 #160-6437
.SCOTT = ****** GX 158-6296
.SCOTY 012462 RG 158-6293 158-6293 #161-6478
.SCOUT 011726 RG #158-6285
.SCPAL 015256 RG #204-7740
.SCPAR 015264 RG #204-7744
.SCPCR 015272 RG #204-7748
.SCPDR 015300 RG #204-7752
.SCPEN 015306 RG #204-7756
.SCPFM 015314 RG #204-7760
.SCPFS 015322 RG 199-7561 199-7561 #204-7764
.SCPST 014714 RG #199-7564
.SCPTB = ****** GX 201-7639
.SCRLD 013772 RG #186-7193
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 40
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.SCRPT 014112 RG #190-7250
.SCRTY 014006 RG #187-7201
.SCTAK 014606 RG #197-7464
.SCTRK 014210 RG #191-7272
.SECLK = 003000 #174-6874 #226-8750
.SETCM 012666 RG #167-6660
.SETC0 012676 RG #167-6663 169-6709
.SETMR = 007000 #174-6874 #226-8750
.SETRN = 011000 #174-6874 #226-8750
.SETTB = ****** GX 167-6665
.SFREC 014534 RG #195-7427
.SHUTC 012760 RG #171-6765
.SNAP 007736 RG #129-5255
.SPACE = 000040 #21-836 110-4390
.SSCAN = ****** GX 211-7976 211-7976 211-7980 211-7980
.SSCLK = 002000 #174-6874 #226-8750
.SSM = ****** GX 159-6394 *214-8122 216-8223 221-8420
.SSTTB = ****** GX *58-2438 *58-2449 *61-2536 *61-2540 123-5027
.STCLK = ****** GX 38-1587 38-1587 155-6209 155-6209 228-8805 228-8805
.STPCL = 000000 #174-6874 #226-8750
.STPKL = ****** GX 68-2786 68-2786 89-3607 89-3607 90-3645 90-3645 92-3712 92-3712 94-3759
94-3759 96-3799 96-3799 98-3850 98-3850 135-5437 135-5437 136-5447 136-5447
136-5460 136-5460 138-5510 138-5510 201-7612 201-7612 205-7781 205-7781 208-7871
208-7871 228-8802 228-8802
.STRCL = 001000 #174-6874 #226-8750
.STRTB = ****** GX 173-6842
.STRTC 013050 RG #173-6839
.STRTT 013102 RG 173-6841 #175-6882
.STRTU 013206 RG #176-6931
.STRTV = ****** GX 124-5048 202-7680
.STUCD = ****** GX 36-1518 36-1518 176-6944
.SVESP = ****** GX *123-5020
.SVKLF = ****** GX *49-2055 *65-2685 *92-3719 *136-5452 *138-5530 *200-7594 *229-8845
.SWPAC 011534 RG 153-6040 153-6040 153-6045 153-6045 #154-6126
.SWPC 011234 RG #153-6011
.SWPIP = ****** GX *153-6016 *153-6063
.TAKEC 010526 RG #144-5700
.TAKE1 010602 RG #144-5712
.TCRLF = ****** GX 50-2108 50-2108 58-2450 61-2548 61-2548 67-2768 67-2768 71-2907 71-2907
84-3495 89-3617 90-3667 94-3769 97-3832 124-5046 124-5046 128-5190 128-5190
152-5981 152-5981 159-6339 159-6339 159-6340 159-6340 159-6377 159-6377 159-6378
159-6378 163-6562 181-7102 185-7182 194-7387 205-7808 205-7808 209-7913 211-7982
211-7982 216-8225 216-8225 223-8648 223-8648 223-8655 223-8655
.TPADD = ****** GX 47-1959 47-1959 71-2915 71-2915
.TPCLR = ****** GX 108-4248 108-4248 110-4413 110-4413 112-4569 112-4569 180-7077 180-7077 190-7265
190-7265
.TPCMP = ****** GX 68-2784 68-2784 71-2912 71-2912 71-2932 71-2932 228-8809 228-8809 229-8836
229-8836
.TPDEC = ****** GX 47-1942 47-1942 228-8808
.TPDIV = ****** GX 112-4543 112-4543
.TPINC = ****** GX 47-1947 47-1947 228-8811
.TPNEG = ****** GX 71-2936 71-2936
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 41
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.TPSHI = ****** GX 73-3027 73-3027 102-3981 102-3981 102-3988 102-3988 104-4043 104-4043 106-4130
106-4130 106-4137 106-4137 109-4263 109-4263
.TPSUB = ****** GX 47-1953 47-1953
.TPTST = ****** GX 175-6890 175-6890
.TRKWD = ****** GX *191-7279 192-7291
.TRPTV = ****** GX *36-1510 *36-1513
.TRP4V = ****** GX 58-2438 61-2536
.TSCAN = ****** GX 44-1870 44-1870 45-1907 45-1907 57-2412 57-2412 60-2521 60-2521 66-2723
66-2723 70-2871 70-2871 110-4407 110-4407 135-5428 135-5428 158-6297 158-6297
167-6666 167-6666 168-6699 168-6699 173-6843 173-6843 178-6999 178-6999 182-7124
182-7124 200-7577 200-7577 221-8362 221-8362 221-8490 221-8490
.TYACE = ****** GX 154-6145 154-6145
.TYAC1 = ****** GX 153-6031 153-6031
.TYCHR = ****** GX 58-2442 58-2442 61-2544 61-2544 113-4639 113-4639 114-4702 114-4702 114-4710
114-4710 194-7366 194-7366
.TYCOL = ****** GX 114-4706 114-4706
.TYCOM = ****** GX 163-6550 163-6550 163-6558 163-6558 194-7367 194-7367 205-7804 205-7804 209-7907
209-7907
.TYDAT 006612 RG #113-4623 159-6393 159-6393 216-8221 216-8221 223-8645 223-8645 223-8652 223-8652
.TYELA = ****** GX 58-2440 58-2440 61-2542 61-2542 113-4629 113-4629 113-4642 113-4642 114-4705
114-4705 114-4713 114-4713 185-7181 185-7181
.TYELN = ****** GX 58-2445 58-2445 61-2547 61-2547 79-3210 79-3210 94-3768 94-3768 194-7358
194-7358 194-7374 194-7374
.TYKLA = ****** GX 67-2763 67-2763 71-2902 71-2902 82-3407 82-3407
.TYKLN = ****** GX 50-2107 50-2107 67-2767 67-2767 71-2906 71-2906 81-3347 81-3347 89-3615
89-3615 152-5979 152-5979 181-7100 181-7100
.TYLIN = ****** GX 90-3651 90-3651 153-6056 153-6056 179-7047 183-7152 189-7235 193-7304 193-7304
193-7309 194-7377 194-7377 194-7384 194-7384 196-7445 198-7481 205-7787 205-7787
205-7796 205-7796 206-7821 206-7821 206-7828 208-7877 208-7877 208-7885 208-7885
216-8214 216-8214 216-8234 223-8637 223-8637 223-8641 223-8641 223-8663 223-8663
223-8676 223-8676 223-8681
.TYMIN = ****** GX 113-4630 113-4630 113-4635 113-4635
.TYMSF = ****** GX 110-4379 110-4379 112-4521 112-4521 221-8357 221-8357 221-8366 221-8366 221-8484
221-8484
.TYMSG = ****** GX 50-2100 50-2100 79-3208 79-3208 80-3292 80-3292 81-3344 81-3344 81-3353
81-3353 82-3369 82-3369 82-3380 82-3380 82-3382 82-3382 82-3388 82-3388
82-3390 82-3390 82-3395 82-3395 82-3399 82-3399 82-3401 82-3401 83-3457
83-3457 84-3494 84-3494 89-3611 89-3611 90-3658 90-3658 90-3665 90-3665
94-3764 94-3764 96-3804 96-3804 97-3816 97-3816 97-3818 97-3818 97-3823
97-3823 97-3828 97-3828 113-4634 113-4634 128-5182 128-5182 152-5966 152-5966
153-6027 153-6027 159-6337 159-6337 159-6371 159-6371 159-6374 159-6374 159-6376
159-6376 163-6539 163-6539 163-6544 163-6544 163-6552 163-6552 163-6560 163-6560
179-7037 179-7037 181-7097 181-7097 183-7146 183-7146 185-7179 185-7179 188-7217
188-7217 189-7228 189-7228 192-7289 192-7289 193-7302 193-7302 193-7306 193-7306
194-7354 194-7354 194-7360 194-7360 196-7439 196-7439 198-7475 198-7475 202-7673
202-7673 205-7789 205-7789 205-7803 205-7803 206-7816 206-7816 206-7823 206-7823
208-7879 208-7879 208-7887 208-7887 208-7891 208-7891 209-7906 209-7906 211-7969
211-7969 216-8218 216-8218 216-8227 216-8227 221-8409 221-8409 221-8415 221-8415
221-8423 221-8423 221-8459 221-8459 223-8625 223-8625 223-8643 223-8643 223-8650
223-8650 223-8658 223-8658 223-8665 223-8665
.TYOUT = ****** GX 211-7970 211-7970
.TYP3D = ****** GX 50-2103 50-2103 97-3821 97-3821 97-3826 97-3826 97-3831 97-3831
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 42
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
.TYSLS = ****** GX 50-2104 50-2104 67-2764 67-2764 71-2903 71-2903 89-3612 89-3612 94-3765
94-3765
.TYSPC = ****** GX 50-2105 50-2105 58-2443 58-2443 61-2545 61-2545 67-2765 67-2765 71-2904
71-2904 89-3613 89-3613 94-3766 94-3766 113-4644 114-4715 194-7368 194-7368
205-7805 205-7805 209-7908 209-7908 216-8219 216-8219 216-8222 216-8222
.TYTIM 006726 RG #114-4688 159-6395 159-6395 216-8224 216-8224 223-8647 223-8647 223-8654 223-8654
.T50TB = ****** GX 146-5758
.UMRKC 007764 RG #132-5333 132-5361
.VERNO = ****** GX 159-6375 193-7307
.VFYFL = ****** GX 68-2777
.WHACB 011152 RG 151-5944 151-5944 #152-5963
.WHATB = ****** GX 168-6697
.WHATC 012722 RG #168-6696
.WHATV 014262 RG #193-7300
.WHCON 013400 RG 178-7022 #179-7035
.WHDAT 016360 RG 214-8136 #216-8201
.WHINC 013526 RG #181-7086
.WHKLN 017670 RG #223-8622
.WHMEM 013666 RG #183-7144
.WHOFS 013746 RG #185-7177
.WHOUT 012530 RG 158-6292 #163-6537
.WHRDW 014322 RG #194-7349
.WHREC 014550 RG #196-7435
.WHRLD 014034 RG 186-7196 #188-7215
.WHRPT 013540 RG #181-7091 190-7267
.WHRTY 014060 RG 187-7208 #189-7226
.WHTAK 014622 RG #198-7471
.WHTCA 015364 RG 201-7637 #205-7784
.WHTCL 015350 RG #205-7780
.WHTPA 015566 RG 201-7643 #208-7874
.WHTPS 015552 RG #208-7870
.WHTRK 014232 RG #192-7287
.WRCRM = ****** GX 132-5355 132-5355
.WRITZ = ****** GX 159-6341 159-6341
.WRMBX = 071000 #174-6874 #226-8750
.WRTAR = ****** GX 65-2684 65-2684
.XFRCK 001222 RG 50-2092 50-2092 #53-2250
.XFWCK 001240 RG 51-2175 51-2175 #53-2257
.XFXCK 001256 RG 52-2215 52-2215 #53-2264
.YEAR = ****** GX *214-8073 *214-8125
.YESNO 015726 RG 202-7674 202-7674 #211-7965
.ZEROC 020176 RG #227-8774
..DTP2 = ****** GX 36-1520 36-1520 171-6781 171-6781 175-6902
..STIN = ****** GX 221-8543 221-8543 221-8562 221-8562
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 43
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
ALUN$ #117-4811 #125-5062 #125-5071 #125-5077 #157-6250
CALL #4-118 #34-1462 #36-1511 #36-1518 #36-1520 #38-1579 #38-1587 #38-1590 #38-1594 #40-1666
#42-1768 #44-1870 #45-1907 #47-1941 #47-1942 #47-1946 #47-1947 #47-1951 #47-1953 #47-1957
#47-1959 #49-2039 #49-2044 #49-2056 #50-2089 #50-2091 #50-2092 #50-2098 #50-2100 #50-2103
#50-2104 #50-2105 #50-2107 #50-2108 #50-2109 #50-2126 #50-2127 #51-2173 #51-2174 #51-2175
#51-2182 #51-2183 #51-2186 #52-2213 #52-2214 #52-2215 #52-2216 #56-2339 #57-2409 #57-2412
#57-2416 #57-2421 #57-2422 #58-2431 #58-2440 #58-2442 #58-2443 #58-2445 #59-2465 #59-2469
#59-2473 #59-2477 #59-2487 #60-2518 #60-2521 #60-2525 #61-2533 #61-2542 #61-2544 #61-2545
#61-2547 #61-2548 #61-2564 #61-2565 #62-2597 #62-2601 #62-2605 #62-2609 #65-2670 #65-2671
#65-2676 #65-2677 #65-2681 #65-2684 #66-2720 #66-2723 #66-2728 #66-2729 #66-2732 #67-2739
#67-2761 #67-2763 #67-2764 #67-2765 #67-2767 #67-2768 #68-2776 #68-2781 #68-2784 #68-2786
#68-2787 #68-2788 #69-2813 #69-2817 #69-2821 #69-2825 #69-2836 #70-2868 #70-2871 #70-2876
#71-2883 #71-2900 #71-2902 #71-2903 #71-2904 #71-2906 #71-2907 #71-2912 #71-2915 #71-2925
#71-2926 #71-2932 #71-2936 #72-2971 #72-2975 #72-2979 #72-2983 #73-3025 #73-3027 #76-3095
#76-3096 #78-3168 #79-3208 #79-3210 #79-3211 #80-3292 #81-3344 #81-3347 #81-3353 #82-3369
#82-3380 #82-3382 #82-3388 #82-3390 #82-3395 #82-3399 #82-3401 #82-3407 #83-3457 #84-3494
#89-3601 #89-3607 #89-3608 #89-3609 #89-3611 #89-3612 #89-3613 #89-3615 #90-3644 #90-3645
#90-3646 #90-3647 #90-3651 #90-3658 #90-3665 #92-3710 #92-3712 #92-3714 #92-3716 #92-3717
#92-3718 #94-3757 #94-3759 #94-3760 #94-3762 #94-3764 #94-3765 #94-3766 #94-3768 #96-3797
#96-3799 #96-3800 #96-3801 #96-3804 #97-3816 #97-3818 #97-3821 #97-3823 #97-3826 #97-3828
#97-3831 #98-3849 #98-3850 #98-3856 #102-3979 #102-3981 #102-3986 #102-3988 #102-3993 #104-4041
#104-4043 #106-4128 #106-4130 #106-4135 #106-4137 #108-4240 #108-4248 #109-4258 #109-4263 #110-4379
#110-4380 #110-4382 #110-4401 #110-4404 #110-4407 #110-4413 #110-4414 #110-4416 #110-4423 #112-4521
#112-4524 #112-4526 #112-4529 #112-4535 #112-4538 #112-4543 #112-4551 #112-4555 #112-4566 #112-4569
#112-4570 #112-4576 #113-4629 #113-4630 #113-4634 #113-4635 #113-4639 #113-4642 #114-4693 #114-4697
#114-4702 #114-4705 #114-4706 #114-4710 #114-4713 #116-4772 #118-4834 #121-4922 #121-4927 #121-4935
#121-4940 #124-5046 #124-5047 #128-5182 #128-5190 #129-5256 #132-5340 #132-5341 #132-5343 #132-5355
#135-5426 #135-5428 #135-5432 #135-5436 #135-5437 #136-5447 #136-5448 #136-5449 #136-5450 #136-5451
#136-5459 #136-5460 #138-5510 #138-5523 #138-5526 #138-5528 #141-5613 #141-5614 #141-5617 #141-5618
#144-5703 #144-5704 #144-5707 #144-5709 #144-5716 #144-5719 #146-5775 #147-5809 #150-5877 #150-5878
#150-5881 #151-5937 #151-5940 #151-5944 #152-5966 #152-5968 #152-5979 #152-5981 #153-6018 #153-6022
#153-6027 #153-6030 #153-6031 #153-6032 #153-6036 #153-6040 #153-6045 #153-6056 #153-6062 #154-6128
#154-6134 #154-6136 #154-6139 #154-6144 #154-6145 #154-6146 #154-6149 #155-6208 #155-6209 #155-6211
#158-6290 #158-6291 #158-6293 #158-6295 #158-6297 #158-6298 #158-6299 #159-6337 #159-6338 #159-6339
#159-6340 #159-6341 #159-6345 #159-6355 #159-6357 #159-6358 #159-6362 #159-6371 #159-6372 #159-6374
#159-6376 #159-6377 #159-6378 #159-6393 #159-6395 #163-6539 #163-6544 #163-6550 #163-6552 #163-6558
#163-6560 #167-6654 #167-6661 #167-6666 #168-6698 #168-6699 #168-6700 #169-6707 #171-6766 #171-6779
#171-6781 #173-6840 #173-6843 #175-6879 #175-6883 #175-6889 #175-6890 #175-6892 #175-6895 #175-6898
#176-6932 #176-6937 #176-6938 #176-6942 #178-6997 #178-6999 #178-7000 #178-7004 #179-7037 #180-7066
#180-7067 #180-7075 #180-7077 #181-7097 #181-7100 #182-7122 #182-7124 #182-7125 #182-7132 #183-7146
#184-7168 #184-7170 #185-7179 #185-7181 #186-7194 #187-7202 #188-7217 #189-7228 #190-7259 #190-7261
#190-7265 #191-7273 #192-7289 #193-7302 #193-7304 #193-7306 #194-7354 #194-7358 #194-7360 #194-7366
#194-7367 #194-7368 #194-7374 #194-7377 #194-7384 #195-7428 #196-7436 #196-7439 #197-7465 #198-7472
#198-7475 #199-7553 #199-7558 #199-7560 #199-7561 #199-7565 #200-7575 #200-7577 #200-7578 #200-7592
#200-7593 #200-7595 #200-7602 #201-7611 #201-7612 #201-7613 #202-7673 #202-7674 #205-7781 #205-7782
#205-7783 #205-7787 #205-7789 #205-7796 #205-7803 #205-7804 #205-7805 #205-7808 #206-7816 #206-7821
#206-7823 #208-7871 #208-7872 #208-7873 #208-7877 #208-7879 #208-7885 #208-7887 #208-7891 #209-7906
#209-7907 #209-7908 #211-7969 #211-7970 #211-7972 #211-7976 #211-7980 #211-7982 #214-8077 #214-8081
#214-8085 #214-8092 #214-8115 #216-8202 #216-8214 #216-8218 #216-8219 #216-8221 #216-8222 #216-8224
#216-8225 #216-8227 #221-8347 #221-8357 #221-8360 #221-8362 #221-8366 #221-8368 #221-8409 #221-8413
#221-8415 #221-8418 #221-8423 #221-8427 #221-8459 #221-8462 #221-8484 #221-8487 #221-8488 #221-8490
#221-8492 #221-8543 #221-8562 #223-8623 #223-8625 #223-8637 #223-8641 #223-8643 #223-8645 #223-8647
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 44
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
#223-8648 #223-8650 #223-8652 #223-8654 #223-8655 #223-8658 #223-8663 #223-8665 #223-8676 #227-8775
#227-8780 #228-8798 #228-8800 #228-8802 #228-8805 #228-8809 #229-8836 #229-8838 #229-8840
CALLR #4-127 #38-1600 #40-1669 #41-1684 #41-1696 #41-1708 #41-1720 #41-1732 #42-1772 #43-1787
#43-1799 #43-1811 #43-1823 #43-1835 #44-1874 #44-1878 #44-1882 #45-1912 #45-1916 #45-1920
#51-2188 #56-2344 #57-2413 #58-2450 #60-2522 #65-2687 #66-2724 #70-2872 #76-3103 #78-3169
#84-3495 #89-3617 #90-3667 #92-3720 #94-3769 #97-3832 #98-3860 #100-3930 #113-4644 #114-4715
#116-4773 #124-5051 #128-5191 #135-5433 #135-5438 #136-5453 #136-5456 #136-5461 #137-5486 #138-5531
#141-5622 #147-5810 #150-5883 #158-6292 #159-6347 #160-6445 #161-6482 #163-6562 #167-6670 #168-6701
#171-6782 #173-6844 #175-6902 #176-6944 #178-7001 #178-7025 #179-7047 #181-7102 #182-7126 #183-7152
#185-7182 #189-7235 #190-7267 #193-7309 #194-7387 #196-7445 #198-7481 #200-7598 #200-7603 #201-7615
#206-7828 #209-7913 #216-8234 #223-8678 #223-8681
CLEF$S #117-4811 124-5039 124-5040 124-5041 #220-8342 221-8536
COMND$ #5-181
DEFCMD #127-5115 #128-5202 #128-5203 #128-5204 #128-5205 #128-5206 #128-5207 #128-5208 #128-5209 #128-5210
#128-5211 #128-5212 #128-5213 #128-5214 #128-5215 #128-5216 #128-5217 #128-5218 #128-5219 #128-5220
#128-5221 #128-5222 #128-5223 #128-5226
DIR$ #55-2313 56-2342 #110-4362 #110-4369 110-4369 #117-4811 #121-4915 121-4915 #123-5027 123-5027
123-5029 123-5031 123-5033 #124-5039 124-5039 #124-5040 124-5040 #124-5041 124-5041 #124-5042
124-5042 #124-5044 124-5044 #140-5587 141-5620 #155-6207 155-6207 #157-6250 #159-6383 159-6383
160-6442 160-6449 #216-8204 216-8204 #221-8536 221-8536 #221-8564 221-8564 #223-8620 223-8677
#226-8748 229-8833
ERCON$ #5-172
ERROR$ #5-157 38-1604 47-1980 49-2063 53-2272 53-2275 58-2453 61-2577 68-2795 68-2798
68-2801 71-2951 76-3106 111-4466 111-4469 111-4472 111-4475 112-4588 112-4591 122-4980
122-4983 136-5464 139-5535 142-5636 142-5639 142-5642 144-5728 144-5730 150-5886 150-5888
154-6154 160-6455 175-6905 178-7028 194-7390 194-7393 201-7621 201-7624 201-7627 215-8140
215-8143 215-8146 215-8149 221-8382 221-8385 221-8388 221-8392 221-8478 229-8850 229-8853
ERR$ #56-2342 #110-4369 #121-4915 #123-5027 #123-5029 #123-5031 #123-5033 #124-5039 #124-5040 #124-5041
#124-5042 #124-5044 #141-5620 #155-6207 #159-6383 #160-6442 #160-6449 #216-8204 #221-8536 #221-8564
#223-8677 #229-8833
EXCH$ #6-223
FATAL$ #5-164
GTIM$S #110-4362 110-4369 #157-6250 159-6383 #214-8065 216-8204
IKL$ #8-251
IOKL$ #8-279 137-5494 137-5496 137-5498 137-5500 139-5541 139-5543 151-5957
MOV$ #110-4369 #110-4369 #121-4915 #121-4915 #123-5027 #123-5027 #123-5027 #124-5039 #124-5039 #124-5040
#124-5040 #124-5041 #124-5041 #124-5042 #124-5042 #124-5044 #124-5044 #155-6207 #155-6207 #159-6383
#159-6383 #216-8204 #216-8204 #221-8536 #221-8536 #221-8564 #221-8564
NBL$ #125-5062 #125-5062 #125-5071 #125-5071 #125-5077 #125-5077
NSERR$ #6-201
OFF$ #56-2350 56-2350 56-2350 56-2350 56-2350 56-2350 56-2350 #110-4369 110-4369 110-4369
110-4369 110-4369 110-4369 110-4369 110-4369 110-4369 #125-5062 125-5062 125-5062 125-5062
125-5062 #125-5071 125-5071 125-5071 125-5071 125-5071 #125-5077 125-5077 125-5077 125-5077
125-5077 #143-5666 143-5666 143-5666 143-5666 143-5666 143-5666 143-5666 #159-6383 159-6383
159-6383 159-6383 159-6383 159-6383 159-6383 159-6383 159-6383 #164-6588 164-6588 164-6588
164-6588 164-6588 164-6588 164-6588 164-6588 164-6588 #164-6591 164-6591 164-6591 164-6591
164-6591 164-6591 164-6591 164-6591 164-6591 #216-8204 216-8204 216-8204 216-8204 216-8204
216-8204 216-8204 216-8204 216-8204 #223-8687 223-8687 223-8687 223-8687 223-8687 223-8687
223-8687
POP #4-133 #36-1522 #49-2058 #50-2110 #50-2135 #51-2185 #57-2424 #58-2446 #58-2447 #59-2489
#61-2549 #65-2685 #67-2762 #67-2766 #68-2774 #71-2901 #71-2905 #71-2908 #71-2937 #71-2944
#71-2945 #71-2946 #73-3031 #92-3719 #94-3767 #98-3857 #102-3999 #104-4049 #106-4142 #110-4396
PATREE CREATED BY MACRO ON 10-NOV-81 AT 17:50 PAGE 45
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
#110-4409 #110-4460 #112-4581 #112-4583 #113-4643 #114-4704 #114-4714 #119-4877 #122-4974 #128-5169
#136-5452 #138-5529 #138-5530 #141-5619 #146-5783 #146-5784 #151-5941 #152-5982 #153-6033 #153-6064
#159-6397 #180-7069 #180-7070 #180-7071 #190-7263 #194-7375 #200-7594 #206-7824 #212-7993 #221-8496
#221-8499 #221-8500 #221-8501 #221-8502 #221-8503 #221-8504 #221-8517 #228-8807
PRDP$ #226-8748 229-8859
PUSH #4-139 36-1508 36-1509 38-1580 38-1604 47-1980 49-2063 50-2097 50-2133 51-2180
53-2272 53-2275 57-2420 58-2434 58-2435 58-2453 59-2486 61-2539 61-2571 61-2577
65-2678 67-2753 67-2754 67-2756 67-2757 67-2758 68-2795 68-2798 68-2801 71-2890
71-2891 71-2897 71-2934 71-2938 71-2939 71-2940 71-2951 73-3022 76-3106 89-3606
92-3711 94-3758 94-3761 98-3855 102-3975 104-4035 106-4124 106-4132 108-4245 110-4367
110-4384 110-4403 111-4466 111-4469 111-4472 111-4475 112-4518 112-4541 112-4546 112-4588
112-4591 113-4624 114-4689 114-4694 119-4869 121-4921 122-4980 122-4983 128-5154 136-5444
136-5464 138-5507 138-5511 138-5512 138-5517 138-5519 138-5520 139-5535 141-5616 142-5636
142-5639 142-5642 144-5728 144-5730 146-5756 150-5886 150-5888 151-5929 152-5964 153-6014
153-6023 154-6154 159-6381 160-6455 171-6769 171-6771 171-6772 171-6773 171-6775 171-6776
175-6905 178-7028 194-7356 194-7390 194-7393 200-7589 200-7591 201-7621 201-7624 201-7627
205-7785 208-7875 211-7966 215-8140 215-8143 215-8146 215-8149 221-8355 221-8382 221-8385
221-8388 221-8392 221-8478 228-8801 229-8850 229-8853
QDPB$ #164-6588 #164-6588 #164-6591 #164-6591
QIOW$ #157-6250 #164-6588 #164-6591
QIOW$S #157-6250
RETURN #4-147 36-1523 46-1929 46-1934 47-1975 49-2061 50-2137 52-2221 53-2270 61-2574
68-2793 71-2948 73-3032 79-3215 79-3257 80-3295 81-3354 82-3409 83-3460 102-4000
104-4050 106-4143 109-4276 110-4463 112-4586 122-4975 128-5170 129-5261 132-5363 144-5725
146-5786 151-5945 152-5983 153-6065 154-6151 155-6212 159-6379 159-6398 160-6452 161-6484
162-6514 202-7699 203-7724 204-7770 204-7774 212-7994 229-8846
RQST$ #55-2313 56-2350 #140-5587 143-5666 #223-8620 223-8687
R50$ #56-2350 #56-2350 #56-2350 #143-5666 #143-5666 #143-5666 #223-8687 #223-8687 #223-8687
SETF$S #117-4811 121-4915 124-5042 124-5044 #149-5849 155-6207
SPERR$ #6-211
SVTK$S #117-4811 #123-5027
WTSE$S #220-8342 #221-8564
$DEF #174-6872 174-6874 #226-8748 226-8750
.ENB6 #77-3141 #79-3204 #214-8065 #214-8132 #220-8342 #221-8530
.INH6 #77-3141 79-3199 #214-8065 214-8119 #220-8342 221-8495 221-8524