Trailing-Edge
-
PDP-10 Archives
-
BB-H348C-RM_1982
-
swskit-v21/listings/mcb/nspxm.list
There are no other files named nspxm.list in the archive.
NSPXM MACRO M1110 13-OCT-79 10:07
TABLE OF CONTENTS
4- 83 USRINT
5- 146 BLDINT
6- 183 USRRCV
8- 298 SNDCK
9- 339 USRDAT
10- 418 USRQRY
11- 459 USRMOD
11- 488 SYSMOD ;AP0004
12- 516 USRXOF
12- 517 USRXON
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 3
1 .TITLE NSPXM
2 .IDENT /X01.13/
3
4 ;
5 ; COPYRIGHT (C) 1978 BY
6 ; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
7 ;
8 ;
9 ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
10 ; ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
11 ; INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
12 ; COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
13 ; OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
14 ; TRANSFERRED.
15 ;
16 ; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
17 ; 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 SUPPLIED BY DIGITAL.
22 ;
23 ;
24 ; MODULE DESCRIPTION
25 ;
26 ; NSP TRANSMIT DATA PROCESSING
27 ;
28 ;
29 ; DISTRIBUTED SYSTEMS SOFTWARE ENGINEERING
30 ;
31 ; IDENT HISTORY:
32 ;
33 ; 1.00 10-FEB-78
34 ; VERSION 2.0 RELEASE
35 ;
36 ; AP0001 21-DEC-77 ALAN D. PECKHAM
37 ; TO ENABLE USE OF THE SYSTEM INTERFACE.
38 ; AP0002 23-MAR-78 ALAN D. PECKHAM
39 ; RE-INSERT CODE NECESSARY IN USRMOD FOR
40 ; SYSTEM INTERFACE FLOW MODIFICATION.
41 ; AP0003 1-MAY-78 ALAN D. PECKHAM
42 ; FIX ACK/NAK AND BACKPRESSURE CODE
43 ; AP0004 7-MAY-78 ALAN D. PECKHAM
44 ; ADD ERROR CODES FOR SYSTEM INTERFACE,
45 ; CLEAN CODING.
46 ; AP0005 14-JUN-78 ALAN D. PECKHAM
47 ; FIX NEXT-SEG-NUM IN SYSTEM INT NAK CODE
48 ; LW0006 31-JUL-78 LELAND D. WEBBER
49 ; HAVE ROUTINE USRDAT QUEUE UP FLOW-BLOCKED
50 ; SEGMENTS IN THE SYSTEM INTERFACE
51 ; AP0007 24-OCT-78 ALAN D. PECKHAM
52 ; CORRECT BUG IN USRQRY FIX.
53 ; AP0008 23-OCT-78 ALAN D. PECKHAM
54 ; PUT ORIGINAL BUFFER ADDRESS IN C.BUF2 FOR INT. MESSAGES
55 ; AP0009 9-NOV-78 ALAN D. PECKHAM
56 ; MAKE SURE L.USA HOLDS THE HIGHEST SEGMENT ACKED BY USER.
57 ; AP0010 10-NOV-78 ALAN D. PECKHAM
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 3-1
58 ; CORRECT ERROR IN XON/XOFF CODE FIX
59 ; AP0011 13-FEB-79 ALAN D. PECKHAM
60 ; CORRECT THE COUNTER RECORD-KEEPING
61 ; AP0012 27-MAR-79 ALAN D. PECKHAM
62 ; ADD CODING TO ALLOW SEPERATE USER ACK OF DATA SEGMENTS
63 ; AP0013 11-JUL-79 ALAN D. PECKHAM
64 ; FIX ACK PROCESSING FROM SYSTEM INTERFACE
65 ;
66
67 ; MACRO LIBRARY CALLS
68 ;
69 .MCALL SAVRG,RESRG,MAP
70 .MCALL CCBDF$,NSPSY$
71 000000 CCBDF$ ; DEFINE THE CCB OFFSETS
72 000000 NSPSY$ ; DEFINE THE NSP OFFSETS
73
74
75 .IF NDF N$$SYS&N$$USR
76 N$$SYS=1 ;IF NEITHER INTERFACE IS SPECIFIED
77 ;THEN DEFAULT TO SYSTEM INTERFACE
78 .ENDC
79
80
81 000000 .PSECT NSPXM
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 4
USRINT
83 .SBTTL USRINT
84 ;+
85 ; **-USRINT-TRANSMIT AN INTERRUPT MESSAGE
86 ;
87 ; THIS ROUTINE IS CALLED TO TRANSMIT A USER INTERRUPT MESSAGE.
88 ;
89 ; INPUTS:
90 ;
91 ; R5 = ADDRESS OF THE INTERRUPT MESSAGE CCB
92 ; C.LIN LOGICAL LINK INDEX (LLA)
93 ; C.MOD INTERRUPT SUBFUNCTION CODE (NT$INT)
94 ; C.BUF BUFFER RELOCATION BIAS
95 ; C.BUF+2 BUFFER VIRTUAL ADDRESS (VIA APR6)
96 ; C.CNT LENGTH OF MESSAGE (0-16.)
97 ;
98 ; OUTPUTS:
99 ;
100 ; C-BIT CLEAR:
101 ;
102 ; THE INTERRUPT MESSAGE WAS TRANSMITTED
103 ;
104 ; C-BIT SET:
105 ; THE INTERRUPT MESSAGE WAS NOT TRANSMITTED
106 ;-
107
108 000000 USRINT::CALL CHKUSR ; GET THE ADDRESS OF THE LOGICAL LINK TABLE
109 000004 122710 000005 CMPB #ST$DAT,(R0) ; IS THE LINK IN DATA STATE ?
110 000010 001030 BNE 5$ ; IF NE, LINK IN WRONG STATE ;AP0004
111 000012 012704 177772 MOV #NE.TIM,R4 ; MAYBE TOO MANY INTERRUPTS ;AP0004
112 000016 105760 000043 TSTB L.TIC(R0) ; CAN WE SEND A INTERRUPT MESSAGE? ;**-1
113 000022 003432 BLE 10$ ; IF LE, NO - RETURN WITH C-BIT ERROR
114 000024 105360 000043 DECB L.TIC(R0) ; WE HAVE SENT A INTERRUPT MESSAGE
115 000030 105065 000002 CLRB C.RSV(R5) ; MARK THIS AS AN INTERRUPT MESSAGE FOR 'ACKNSP'
116 000034 CALL BLDINT ; BUILD THE INTERRUPT MESSAGE
117 000040 016704 000000G MOV $NSDDB,R4 ; GET THE ;AP0011
118 000044 016404 000044 MOV N$STS+2(R4),R4 ; STATISTICS BLOCK ;AP0011
119 000050 005264 000002 INC S$UMS(R4) ; TO BUMP THE MESSAGES SENT COUNT. ;AP0011
120 000054 001002 BNE 2$ ; IF OVERFLOW ;AP0011
121 000056 005364 000002 DEC S$UMS(R4) ; THEN BACK IT UP ;AP0011
122 000062 2$: ;AP0011
123 000062 105260 000004 INCB L.TIPI(R0) ; BUMP THE I/LS TRANSMIT IN PROGRESS COUNT
124 000066 CALLR SNDALT ; SEND THE MESSAGE AND RETURN (CLEARS C-BIT)
125
126 000072 5$: ;AP0004
127 .IF DF N$$SYS ;AP0004
128 000072 012704 177776 MOV #NE.ABO,R4 ; ASSUME THE LINK IS CLOSING ;AP0004
129 000076 122710 000006 CMPB #ST$DIP,(R0) ; AND IF NOT, ;AP0004
130 000102 001402 BEQ 10$ ; THEN ;AP0004
131 000104 012704 177766 MOV #NE.NDT,R4 ; INDICATE WRONG STATE. ;AP0004
132 .ENDC ;AP0004
133 000110 10$: ;AP0004
134 .IF DF N$$SYS&N$$USR ;AP0004
135 000110 105760 000041 TSTB L.PDV(R0) ; SYSTEM OR USER INTERFACE? ;AP0004
136 000114 001002 BNE 20$ ; SYSTEM ;AP0004
137 .ENDC ;AP0004
138 ;AP0004
139 000116 000261 SEC ; INDICATE INTERRUPT MESSAGE CANNOT BE SENT ;AP0004
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 4-1
USRINT
140 000120 RETURN ; RETURN TO CALLER ;AP0004
141 ;AP0004
142 .IF DF N$$SYS ;AP0004
143 000122 20$: CALLR RETUSR ; SEND BACK TO SYSTEM USER. ;AP0004
144 .ENDC ;AP0004
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 5
BLDINT
146 .SBTTL BLDINT
147
148 ;++
149 ;BLDINT
150
151 ;INPUTS:
152 ; R5=CCB ADDRESS
153 ; R0=LLT
154 ;OUTPUTS:
155 ; R5 IS MODIFIED:
156 ; C.BUF2=SAVE START OF MESSAGE
157 ; C.BUF+2=START OF THE MESSAGE JUST BUILD
158 ; C.CNT=UPDATE COUNT TO REFLECT MSGHDR JUST BUILT
159
160 ; THIS ROUTINE WILL BUILD THE INTERRUPT MESSAGE BACKWARDS
161 ;IN THE BUFFER PROVIDED BY THE USER.
162
163 ;--
164
165 000126 BLDINT:
166 000126 MAP C.BUF(R5) ;MAP TO THE MESSAGE BUFFER
167 000134 016504 000016 MOV C.BUF+2(R5),R4 ;MESSAGE POINTER
168 000140 010465 000024 MOV R4,C.BUF2(R5) ; SAVE FOR ADDRESS RESET. ;AP0008
169 000144 016001 000016 MOV L.NIN(R0),R1 ;SEGNUM FOR THIS MESSAGE ;**-1
170 000150 005260 000016 INC L.NIN(R0) ;NEXT SEGNUM TO BE SENT
171 000154 042760 170000 000016 BIC #ACKMASK,L.NIN(R0) ;FOR WRAPAROUND
172 000162 CALL BINPUT ;PUT SEGNUM INTO MESSAGE
173 000166 016001 000002 MOV L.LLA(R0),R1 ;SOURCE ADDRESS
174 000172 CALL BINPUT ;PUT INTO MESSAGE BACKWARDS
175 000176 016001 000010 MOV L.RLA(R0),R1 ;REMOTE ADDRESS
176 000202 CALL BINPUT ;PUT INTO MESSAGE BACKWARDS
177 000206 112744 000060 MOVB #MF.DAT!MD.IM!MD.ILS,-(R4) ;MSG FLAGS
178 000212 010465 000016 MOV R4,C.BUF+2(R5) ;NEW START OF MESSAGE
179 000216 166504 000024 SUB C.BUF2(R5),R4 ; GET HEADER LENGTH (NEGATIVE) ;AP0008
180 000222 160465 000020 SUB R4,C.CNT(R5) ; AND INCLUDE IN COUNT. ;AP0008
181 000226 RETURN ;**-3
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 6
USRRCV
183 .SBTTL USRRCV
184 ;+
185 ; **-USRRCV-USER BUFFER RETURN
186 ;
187 ; THIS ROUTINE IS CALLED TO ACKNOWLEDGE AN NSP SEGEMENT WHICH HAS BEEN
188 ; RECEIVED AND RETURN THE RECEIVE DATA BUFFER TO THE SYSTEM POOL.
189 ;
190 ; INPUTS:
191 ;
192 ; R5 = ADDRESS OF MESSAGE CCB
193 ; C.NSP SEGMENT NUMBER
194 ; C.LIN LOGICAL LINK ADDRESS (LLA)
195 ;
196 ; OUTPUTS:
197 ;
198 ; AS DESCRIBED ABOVE
199 ;
200 ;-
201 .ENABL LSB
202
203 000230 USRRCV::CALL CHKUSR ; GET THE LLT ADDRESS
204 000234 112765 000002 000011 MOVB #NT$DAT,C.MOD(R5) ; SET SUBFUNCTION CODE (INTERNAL LOOP)
205 000242 016501 000004 MOV C.NSP(R5),R1 ; GET THE SEGMENT NUMBER TO PROCESS
206 ;AP0003
207 .IF DF N$$SYS&N$$USR ;AP0003
208 000246 105760 000041 TSTB L.PDV(R0) ; SYSTEM OR USER? ;AP0003
209 000252 001426 BEQ 10$ ; USER ;AP0003
210 .ENDC ;AP0003
211 ;AP0003
212 .IF DF N$$SYS ;AP0003
213 000254 032765 000003 000012 5$: BIT #NT.ACK!NT.NAK,C.STS(R5) ; IF NO ACK/NAK ACTIVITY REQUESTED ;AP0003
214 000262 001430 BEQ 20$ ; THEN DON'T DO ANY. ;AP0003
215 000264 016002 000030 MOV L.USA(R0),R2 ; GET CURRENT HIGHEST ACK ;AP0009
216 000270 CALL CHKNMS ; AND CHECK WHICH IS LARGER. ;AP0009
217 000274 103423 BCS 20$ ; IF THIS IS HIGHER THAN LAST ;AP0009
218 000276 016501 000004 MOV C.NSP(R5),R1 ; THEN RECOVER SEGMENT NUMBER ;AP0013
219 000302 032765 000002 000012 BIT #NT.NAK,C.STS(R5) ; IS THIS A NAK ? ;AP0003
220 000310 001407 BEQ 10$ ; IF EQ, NO - SKIP THE ALTERATION OF SEGMENT NUM;**-5
221 000312 010160 000020 MOV R1,L.RNO(R0) ; SET NEXT SEGMENT NUMBER TO RECEIVE. ;AP0005
222 000316 005301 DEC R1 ; BACK UP SEGMENT NUMBER BY ONE
223 000320 042701 170000 BIC #LA.MSK,R1 ; CLEAR GARBAGE IN CASE OF UNDERFLOW
224 000324 052701 110000 BIS #LA.NAK,R1 ; SET THE NAK FLAGS IN THE SEGMENT NUMBER ;**-1
225 000330 10$: ; REFERENCE LABEL
226 .IFTF
227
228 000330 052701 100000 BIS #LA.ACK,R1 ; SET ACK REQUIRED FLAGS
229 000334 010160 000030 MOV R1,L.USA(R0) ; SET THE HIGHEST NUMBER ACKED BY USER
230 000340 CALL SNDAKD ; ATTEMPT TO SEND THE ACK MESSAGE
231
232 .IFT
233
234 000344 105760 000041 20$: TSTB L.PDV(R0) ; SYSTEM OR USER INTERFACE? ;AP0003
235 000350 001455 BEQ 50$ ; USER ;AP0003
236 000352 016501 000012 MOV C.STS(R5),R1 ; GET STATUS AND CHECK FOR ;AP0003
237 000356 032701 000034 BIT #NT.XON!NT.XOF!NT.MOD,R1 ; FLOW CHANGE ;AP0003
238 000362 001431 BEQ 40$ ; IF EQ, NO - ALL DONE WITH THE RECEIVE ;AP0012
239 000364 032701 000014 BIT #NT.XON!NT.XOF,R1 ; IS THERE A BACKPRESSURE CHANGE ? ;AP0003
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 6-1
USRRCV
240 000370 001415 BEQ 30$ ; NO - INITIATE THE LINK SERVICE. ;AP0003
241 000372 042760 000060 000012 BIC #LF.DFL,L.FLG(R0) ; CLEAR FLOW MODIFIER BITS ;AP0003
242 000400 032701 000010 BIT #NT.XON,R1 ; DOES THE USER REQUEST XON ? ;AP0003
243 000404 001004 BNE 25$ ; IF NOT ;AP0003
244 000406 052760 000040 000012 BIS #LF.DSP,L.FLG(R0) ; THEN STOP THE FLOW ;AP0010
245 000414 000403 BR 30$ ; OTHERWISE ;AP0003
246 000416 052760 000020 000012 25$: BIS #LF.DST,L.FLG(R0) ; START THE FLOW. ;AP0003
247 000424 032701 000020 30$: BIT #NT.MOD,R1 ; HOW ABOUT A CHANGE OF REQUEST COUNTS ? ;AP0003
248 000430 001404 BEQ 35$ ; IF SO, ;AP0003
249 000432 042701 140377 BIC #^C<NT.FCN>,R1 ; THEN ;AP0003
250 000436 060160 000044 ADD R1,L.LSF(R0) ; ADJUST THE REQUEST COUNT. ;AP0003
251 000442 35$: CALL SNDLS ; SEND LS MESSAGE IF NONE OUTSTANDING ;AP0003
252 ;AP0012
253 000446 005764 000016 40$: TST C.BUF+2(R4) ; IF ASSOCIATED BUFFER ;AP0012
254 000452 001014 BNE 50$ ; THEN RETURN IT ;AP0012
255 000454 CALLR $CCBRT ; OTHERWISE RETURN THE INDEPENDENT ACK ;AP0012
256 ;AP0012
257 .IFF ;AP0012
258 ;AP0012
259 BR 50$ ; CONTINUE IN COMMON CODE ;AP0012
260 .ENDC ;AP0012
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 7
USRRCV
262 ;+
263 ; **-USRRCI-RETURN AND INTERRUPT MESSAGE BUFFER
264 ;
265 ; THIS ROUTINE IS CALLED TO SEND A LINK SERVICE REQUEST FOR ANOTHER
266 ; INTERRUPT MESSAGE AND RETURN THE INTERRUPT MESSAGE BUFFER TO THE
267 ; SYSTEM POOL.
268 ;
269 ; INPUTS:
270 ;
271 ; R5 = ADDRESS OF MESSAGE CCB
272 ;
273 ; C.LIN LOGICAL LINK ADDRESS (LLA)
274 ;
275 ; OUTPUTS:
276 ;
277 ; AS DESCRIBED ABOVE
278 ;
279 ;-
280
281 000460 005015 USRRCI::CLR (R5) ; CLEAR LINK WORD (CAN ONLY RETURN ONE)
282 000462 CALL CHKUSR ; GET THE LLT ADDRESS
283 000466 112765 000004 000011 MOVB #NT$INT,C.MOD(R5) ; SET SUBFUNCTION CODE (INTERNAL LOOP)
284 000474 105260 000044 INCB L.LSF(R0) ; UP THE INTERRUPT REQUEST COUNT
285 000500 CALL SNILS ; SEND A LINK SERVICE FOR INTERRUPT REQUEST COUNT
286
287 ;
288 ; COMMON BUFFER RETURN PROCESSING
289 ;
290 000504 016565 000022 000004 50$: MOV C.FLG(R5),C.NSP(R5) ; FOR INTERNAL LOOPBACK..RECOVER TRANSMITERS LLT
291 000512 032710 040000 BIT #LF.LCL,(R0) ; IS THIS AN INTERNAL LOGICAL LINK ?
292 000516 001402 BEQ 55$ ; IF EQ, NO
293 000520 105065 000006 CLRB C.LIN(R5) ; MARK SO UNSPWN RECOGNIZES INTERNAL LOOP
294 000524 55$: CALLR UNSPWN ; RELEASE SPAWNED CCB AND RETURN
295
296 .DSABL LSB
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 8
SNDCK
298 .SBTTL SNDCK
299
300 ;+
301 ; **-SNDCK-CHECK IF OK TO SEND DATA
302 ;
303 ; THIS ROUTINE IS CALLED TO DETERMINE IF A SEGMENT CAN BE TRANSMITTED.
304 ; IF ONE CAN BE, THER IS NO REQUIREMENT TO ACTUALLY SEND ONE. IF ONE
305 ; CANNOT BE SENT, THE ROUTINE 'NOTUSR' WILL BE CALLED WHENEVER THE
306 ; CONDITION THAT BLOCKED TRANSMISSION CLEARS. SINCE SEVERAL CONDITIONS
307 ; MIGHT BLOCK TRANSMISSION, THE CALL TO 'NOTUSR' DOES NOT GUARANTEE THAT
308 ; TRANSMISSION ALL CONDITIONS ARE FAVORABLE.
309 ;
310 ; INPUTS:
311 ;
312 ; R0 = LLA
313 ;
314 ; OUTPUTS:
315 ;
316 ; C-BIT CLEAR:
317 ; A SEGMENT MAY BE TRANSMITTED
318 ;
319 ; C-BIT SET:
320 ; A SEGMENT MAY NOT BE TRASNMITTED
321 ;
322 ;-
323
324 000530 SNDCK:: CALL GETLNK ; GET THE LLT ADDRESS
325 000534 122710 000005 CMPB #ST$DAT,(R0) ; IS THE LINK IN DATA STATE ?
326 000540 001015 BNE 20$ ; IF NE, NO - EXIT
327 000542 032760 001200 000012 BIT #LF.HF0!LF.NKR,L.FLG(R0) ; IS FLOW CLOSED OR NAK IN PROGRESS ?
328 000550 001011 BNE 20$ ; IF NE, YES - DON'T TRANSMIT NOW
329 000552 032760 030000 000012 BIT #LF.HSF!LF.HMF,L.FLG(R0) ; IS THE LINK FLOW CONTROLLED ?
330 000560 001403 BEQ 10$ ; IF EQ, NO - OK TO SEND NOW
331 000562 105760 000042 TSTB L.TC(R0) ; WILL THE REQUEST COUNT LET US TRANSMIT ?
332 000566 003402 BLE 20$ ; IF LE, NO
333 000570 000241 10$: CLC ; INDICATE THAT IT IS OK TO SEND DATA
334 000572 RETURN ; RETURN TO CALLER
335
336 000574 000261 20$: SEC ; INDICATE THAT IT IS NOT OK TO SEND DATA
337 000576 RETURN ; RETURN TO CALLER
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 9
USRDAT
339 .SBTTL USRDAT
340
341 ;+
342 ; **-USRDAT-TRANSMIT A USER SEGMENT
343 ;
344 ; THIS ROUTINE IS CALLED TO ASSIGN A SEGMENT A SEQUENCE NUMBER
345 ; AND FORWARD IT IT INTO THE NETWORK. THIS ROUTINE MUST NOT BE
346 ; CALLED UNTIL A SUCCESSFUL INDICATION IS RETURNED FROM THE
347 ; ROUTINE 'SNDCK'.
348 ;
349 ; INPUTS:
350 ;
351 ; R5 = ADDRESS OF A CCB WHICH POINTS TO THE SEGMENT
352 ;
353 ;
354 ;-
355
356 000600 USRDAT::CALL CHKUSR ; GET THE LLT ADDRESS
357 000604 MAP C.BUF(R5) ; MAP TO THE DATA BUFFER
358 000612 016504 000016 MOV C.BUF+2(R5),R4 ; MESSAGE POINTER
359 000616 010465 000024 MOV R4,C.BUF2(R5) ; SAVE IT
360 000622 016702 000000G MOV $NSDDB,R2 ; GET THE ;AP0011
361 000626 016202 000044 MOV N$STS+2(R2),R2 ; STATISTICS DATA BLOCK. ;AP0011
362 000632 016001 000014 MOV L.NXN(R0),R1 ; SEGNUM FOR THIS MESSAGE
363 000636 010146 MOV R1,-(SP) ; SAVE CURRENT SEGMENT NUMBER
364 000640 005260 000014 INC L.NXN(R0) ; NEXT SEGNUM TO BE SENT
365 000644 042760 170000 000014 BIC #LA.MSK,L.NXN(R0) ; WRAPAROUND
366 000652 CALL BINPUT ; PUT SEGNUM INTO MESSAGE
367 000656 016001 000030 MOV L.USA(R0),R1 ; IS THERE ANY ACK/NAK TO PIGGYBACK ?
368 000662 100015 BPL 10$ ; IF PL, NO - JUST SKIP IT
369 000664 032701 010000 BIT #LA.NMS,R1 ; IF A NAK ;AP0011
370 000670 001405 BEQ 5$ ; THEN ;AP0011
371 000672 005262 000010 INC S$NKS(R2) ; BUMP THE NAK SENT COUNTER ;AP0011
372 000676 001002 BNE 5$ ; AND IF OVERFLOW ;AP0011
373 000700 005362 000010 DEC S$NKS(R2) ; THEN BACK IT UP. ;AP0011
374 000704 5$: ;AP0011
375 000704 042760 170000 000030 BIC #LA.MSK,L.USA(R0) ; REMOVE ACK/NAK REQUIRED FLAGS
376 000712 CALL BINPUT ; PUT ACKNUM INTO MESSAGE
377 000716 016001 000002 10$: MOV L.LLA(R0),R1 ; SOURCE ADDRESS
378 000722 CALL BINPUT ; PUT INTO MESSAGE BACKWARDS
379 000726 016001 000010 MOV L.RLA(R0),R1 ; DESTINATION ADDRESS
380 000732 CALL BINPUT ; PUT INTO MESSAGE BACKWARDS
381 000736 116544 000012 MOVB C.STS(R5),-(R4) ; GET START/END MESSAGE FLAGS ;AP0004
382 000742 142714 177637 BICB #^C<MD.BM!MD.EM>,(R4) ; ISOLATE ;AP0004
383 000746 152714 000000 BISB #MF.DAT,(R4) ; AND SET AS DATA SEGMENT. ;AP0004
384 000752 010465 000016 MOV R4,C.BUF+2(R5) ; STORE POINTER TO START OF MESSAGE ;LW0006
385 000756 166504 000024 SUB C.BUF2(R5),R4 ; COMPUTE THE NEW MESSAGE LENGTH ;LW0006
386 000762 160465 000020 SUB R4,C.CNT(R5) ; ... ;LW0006
387 000766 005262 000002 INC S$UMS(R2) ; BUMP THE MESSAGES SENT ;AP0011
388 000772 001002 BNE 40$ ; AND IF OVERFLOW ;AP0011
389 000774 005362 000002 DEC S$UMS(R2) ; THEN BACK IT UP. ;AP0011
390 001000 40$: ; REFERENCE LABEL ;LW0006
391 .IF DF N$$SYS ;LW0006
392 .IF DF N$$USR ;LW0006
393 001000 105760 000041 TSTB L.PDV(R0) ; SYSTEM OR USER INTERFACE? ;LW0006
394 001004 001410 BEQ 15$ ; USER ;LW0006
395 .IFTF ;LW0006
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 9-1
USRDAT
396 001006 010003 MOV R0,R3 ;ADD SEGMENT ;LW0006
397 001010 062703 000046 ADD #L.XQ1,R3 ; TO THE TRANSMIT ;LW0006
398 001014 CALL ADDQUE ; DATA QUEUE ;LW0006
399 001020 CALL PROXMT ; AND START ACTIVITY ON THE QUEUE ;LW0006
400 001024 000422 BR 90$ ; AND QUIT ;LW0006
401 .IFT ;LW0006
402 001026 15$: ;LW0006
403 .ENDC ;LW0006
404 .ENDC ;LW0006
405 001026 032760 010000 000012 BIT #LF.HSF,L.FLG(R0) ; IS LINK SEGMENT FLOW CONTROLLED ? ;**-2
406 001034 001010 BNE 20$ ; IF NE, YES - REDUCE REQUEST COUNT
407 001036 032760 020000 000012 BIT #LF.HMF,L.FLG(R0) ; IS LINK MESSAGE FLOW CONTROLLED ?
408 001044 001406 BEQ 30$ ; IF EQ, NO - NO REQUEST COUNT ADJUSTMENT REQUIRED
409 001046 032765 000100 000012 BIT #NT.EOM,C.STS(R5) ; END OF MESSAGE? ;LW0006
410 001054 001402 BEQ 30$ ; IF EQ, NO - NO ADJUSTMENT REQUIRED ;**-1
411 001056 105360 000042 20$: DECB L.TC(R0) ; ADJUST REQUEST COUNT
412 001062 30$: ; REFERENCE LABEL
413 001062 105260 000005 INCB L.TIPD(R0) ; BUMP THE DATA TRANSMIT IN PROGRESS COUNT ;**-9
414 001066 CALL SNDALT ; TRANSMIT THE MESSAGE
415 001072 012601 90$: MOV (SP)+,R1 ; GET THIS XMIT BUFFER'S SEGMENT NUMBER ;LW0006
416 001074 RETURN ;LW0006
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 10
USRQRY
418 .SBTTL USRQRY
419 ;++
420
421 ;INPUTS:
422 ; R5=CCB ADDR
423 ;OUTPUTS:
424 ; ON ERROR..C-BIT SET & R4=ERROR CODE
425
426 ;--
427 .IF DF N$$SYS
428
429 001076 USRQRY::
430 001076 CALL CHKUSR ;CHECK STATE AND USER
431 001102 012704 177776 MOV #NE.ABO,R4 ; ASSUME LINK IS DISCONNECTING ;AP0004
432 001106 122710 000006 CMPB #ST$DIP,(R0) ; IF NOT, ;AP0004
433 001112 001424 BEQ 40$ ; THEN ;AP0004
434 001114 012704 000001 10$: MOV #NS.NFL,R4 ;SUCCESS..NOT FLOW CONTROLLED ;**-6
435 001120 005065 000004 CLR C.NSP(R5) ;CLEAR FLOW CONTROL COUNT
436 001124 156065 000042 000004 BISB L.TC(R0),C.NSP(R5) ;SET FLOW CONTROL COUNT
437 001132 032760 010000 000012 BIT #LF.HSF,L.FLG(R0) ;OTHER GUY SEG FLOW CONTROLLED?
438 001140 001403 BEQ 30$ ;NO
439 001142 012704 000002 MOV #NS.SFL,R4 ;SUCCESS..SEG FLOW CONTROLLED
440 001146 000406 BR 40$
441
442 001150 032760 020000 000012 30$: BIT #LF.HMF,L.FLG(R0) ;OTHER GUY MSG FLOW CONTROLLED?
443 001156 001402 BEQ 40$ ;NO
444 001160 012704 000003 MOV #NS.MFL,R4 ;SUCCESS..MSG FLOW CONTROLLED
445 001164 40$:
446 .IF DF N$$SYS&N$$USR
447 001164 116003 000041 MOVB L.PDV(R0),R3 ; SYSTEM OR USER INTERFACE? (DON'T CLEAR C-BIT) ;AP0001
448 001170 001402 BEQ 50$ ;USER ;**-1
449 .ENDC
450
451 .IF DF N$$SYS
452 001172 CALL RETUSR ;GIVE BACK TO USER
453 .ENDC
454
455 001176 50$: RETURN
456
457 .ENDC
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 11
USRMOD
459 .SBTTL USRMOD
460 ;+
461 ; **-USRMOD-MODIFY FLOW CONTROL REQUEST COUNTS
462 ;
463 ; THIS ROUTINE IS CALLED TO SEND A LINK SERVICE MESSAGE WHICH WILL
464 ; MODIFY THE FLOW CONTROL REQUEST COUNTS AT THE OTHER END OF THE
465 ; LOGICAL LINK. AN ATTEMPT IS MADE TO MINIMIZE THE NUMBER OF LINK
466 ; SERVICE MESSAGES THAT ARE OUTSTANDING THE NETWORK. REQUESTS FROM THE
467 ; USER ARE ACCUMULATED IN THE LOGICAL LINK TABLE IN THE CELL 'L.LSF'
468 ; UNTIL ANY PREVIOUS LINK SERVICE MESSAGE IS ACKNOWLEDGED. THERE IS NO
469 ; RESTRICTION ON THE MAGNITUDE OF THE FLOW CONTROL REQUEST COUNT, ONLY
470 ; THE NUMBER OF LINK SERVICE MESSAGES.
471 ;
472 ; INPUTS:
473 ;
474 ; R0 = USER LINK ADDRESS (ULA)
475 ;
476 ; OUTPUTS:
477 ;
478 ; THE REQUEST COUNT IS INCREMENTED BY ONE, AND A LINK SERVICE
479 ; MESSAGE IS SENT IF ONE IS NOT OUSTANDING IN THE NETWORK.
480 ;
481 ;-
482
483 001200 USRMOD::CALL GETLNK ; GET THE LLT ADDRESS
484 001204 105260 000045 INCB L.LSF+1(R0) ; UP THE REQUEST COUNT BY ONE (IN THE HIGH BYTE)
485 001210 CALLR SNDLS ; SEND LINK SERVICE MESSAGE
486 ;AP0004
487 .IF DF N$$SYS ;AP0004
488 .SBTTL SYSMOD ;AP0004
489 ;+ ;AP0004
490 ; **-SYSMOD-MODIFY SYSTEM PROCESS FLOW REQUEST COUNTS ;AP0004
491 ; ;AP0004
492 ; SAME SUNCTION AS ABOVE EXCEPT THAT THE SYSTEM INTERFACE PART HAS ;AP0004
493 ; MORE PRECONDITONS ;AP0004
494 ; ;AP0004
495 ; INPUT: ;AP0004
496 ; ;AP0004
497 ; R5 = CCB FROM SYSTEM PROCESS ;AP0004
498 ;- ;AP0004
499 ;AP0004
500 001214 SYSMOD::CALL CHKUSR ;GET THE LLT ADDRESS ;AP0004
501 001220 012704 177776 MOV #NE.ABO,R4 ;ASSUME DISCONNECTING ;AP0004
502 001224 122710 000006 CMPB #ST$DIP,(R0) ;ARE WE BEING DISCONNECTED? ;AP0004
503 001230 001412 BEQ 10$ ;IF EQ, YES - EXIT ;AP0004
504 001232 116501 000004 MOVB C.NSP(R5),R1 ;GET THE REQUEST COUNT ADJUSTMENT ;AP0004
505 001236 000301 SWAB R1 ;COPY IT TO THE HIGH BYTE AND ;AP0004
506 001240 105001 CLRB R1 ;... CLEAR OUT THE LOW BYTE ;AP0004
507 001242 060160 000044 ADD R1,L.LSF(R0) ;ACCUMULATE THE DATA REQUEST COUNT, THE V-BIT ;AP0004
508 ;... INDICATES OVERFLOW IF A CHECK IS NEEDED ;AP0004
509 001246 CALL SNDLS ;SEND LINK SERVICE MESSAGE ;AP0004
510 001252 012704 000001 MOV #NS.SUC,R4 ;RETURN USER SUCCESS ;AP0004
511 001256 10$: CALL RETUSR ;RETURN USERS REQUEST ;AP0004
512 001262 000241 CLC ;MAKE SURE NO ERROR IS REPORTED ;AP0004
513 001264 RETURN ;AP0004
514 .ENDC ;AP0004
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 12
USRXOF
516 .SBTTL USRXOF
517 .SBTTL USRXON
518 ;++
519 ; USRXOF,USRXON
520
521 ; INPUTS:
522 ; R5=CCB
523
524 ; OUTPUTS:
525
526 ; CALLING SEQUENCE:
527
528 ;--
529 .IF DF N$$SYS
530
531 .ENABL LSB
532 001266 USRXOF::
533 001266 012701 000040 MOV #LF.DSP,R1 ;CLOSE FLOW ;AP0003
534 001272 000402 BR 10$ ;**-1
535
536 001274 USRXON::
537 001274 012701 000020 MOV #LF.DST,R1 ;OPEN FLOW ;AP0003
538 ;**-1
539 001300 10$: CALL CHKUSR ;VALIDATE USER
540 001304 012704 177776 MOV #NE.ABO,R4 ;ASSUME LINK IS ABORTING ;AP0004
541 001310 122710 000006 CMPB #ST$DIP,(R0) ;ARE WE CORRECT ? ;AP0004
542 001314 001411 BEQ 30$ ;IF LINK RUNNING, ;AP0004
543 001316 042760 000060 000012 BIC #LF.DFL,L.FLG(R0) ;CLEAR CURRENT FLOW REQUEST ;AP0004
544 001324 050160 000012 BIS R1,L.FLG(R0) ;AND SET NEW REQUEST. ;AP0004
545 001330 CALL SNDLS ;SEND A LINK SERVICE ;**-6
546 ;**-1
547 001334 012704 000001 MOV #NS.SUC,R4 ;SUCCESS
548 001340 30$:
549 .IF DF N$$SYS&N$$USR
550 001340 105760 000041 TSTB L.PDV(R0) ;SYSTEM OR USER INTERFACE? ;AP0001
551 001344 001402 BEQ 40$ ;USER - JUST RETURN ;**-1
552 .ENDC
553
554 .IF DF N$$SYS
555 001346 CALL RETUSR
556 .ENDC
557
558 001352 40$: RETURN
559
560 .DSABL LSB
561
562 .ENDC
563
564
565 000001 .END
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 12-1
SYMBOL TABLE
ACKMAS= 170000 C$$RSH= 177564 ER$TCN= 000040 KISAR0= 172340 L.LVL 000001
ACKPRE= 100000 C.BID 000003 ER$TCO= 000041 KISAR5= 172352 L.NDA 000034
ACKRES= 060000 C.BUF 000014 ER$TPA= 000010 KISAR6= 172354 L.NIN 000016
ACKWRA= 010000 C.BUF1 000014 ER$UOB= 000004 KISAR7= 172356 L.NLA 000036
ADDQUE= ****** GX C.BUF2 000024 E$$XPR= 000000 KISDR0= 172300 L.NSTA 000025
A$$CHK= 000000 C.CNT 000020 FC.CCP= 000020 KISDR6= 172314 L.NXN 000014
A$$CPS= 000000 C.CNT1 000020 FC.CTL= 000006 KISDR7= 172316 L.PDV 000041
A$$PRI= 000000 C.CNT2 000030 FC.KCP= 000016 K$$CNT= 177546 L.REM 000006
A$$TRP= 000000 C.FLG 000022 FC.KIL= 000004 K$$CSR= 177546 L.RLA 000010
A.NAK = 010000 C.FLG1 000022 FC.RCE= 000002 K$$LDC= 000000 L.RNO 000020
BINPUT= ****** GX C.FLG2 000032 FC.RCP= 000014 K$$TPS= 000074 L.STA 000000
BLDINT 000126R 002 C.FNC 000010 FC.TIM= 000010 LA.ACK= 100000 L.TC 000042
CB.CCB= 000002 C.LIN 000006 FC.XCP= 000012 LA.MSK= 170000 L.TIC 000043
CB.RDB= 000004 C.LNK 000000 FC.XME= 000000 LA.NAK= 110000 L.TIPD 000005
CE.ABO= 100362 C.MOD 000011 FE.CAL= 000040 LA.NMS= 010000 L.TIPI 000004
CE.DIS= 100366 C.NSP 000004 FE.DRV= 000010 LA.RES= 060000 L.UDQ 000034
CE.ERR= 100370 C.RSV 000002 FE.EXP= 000200 LD$LP = 000000 L.ULA 000040
CE.MOP= 100372 C.STA 000007 FE.EXT= 000001 LF.DFL= 000060 L.USA 000030
CE.NTE= 100361 C.STS 000012 FE.EXV= 000004 LF.DSP= 000040 L.USTA 000024
CE.RTE= 100376 DF$ADJ= 020000 FE.LSI= 000400 LF.DST= 000020 L.XQ1 000046
CE.SRC= 100364 DF$DWN= 001000 FE.MUP= 000002 LF.FPN= 000010 L.XQ2 000050
CE.TMO= 100374 DF$FRE= 070000 FE.MXT= 040000 LF.HF0= 001000 L.XQ3 000052
CF.EOM= 000004 DF$LCL= 040000 FE.NLG= 100000 LF.HMF= 020000 MA.DA = 000000
CF.HDR= 000020 DF$LNK= 004000 FE.PKT= 000100 LF.HSF= 010000 MA.IL = 000020
CF.LB = 100000 DF$REM= 010000 FE.PLA= 000020 LF.INR= 000100 MC.CC = 000040
CF.SOM= 000010 DF$RES= 002000 FS.AST= 000000 LF.INT= 000400 MC.CI = 000020
CF.SYN= 000040 DF$TMP= 100000 FS.CIB= 002000 LF.LCL= 040000 MC.DC = 000100
CF.TRN= 000100 D$CHN 000002 FS.CRA= 001000 LF.MMF= 100000 MC.DI = 000060
CHKNMS= ****** GX D$FLG 000000 FS.DIS= 013000 LF.MSF= 040000 MC.NO = 000000
CHKUSR= ****** GX D$LEN 000014 FS.DVC= 001000 LF.NKR= 000200 MC.ST = 000120
CL$ACK= 000040 D$LNG 000005 FS.ENB= 012000 LF.NKS= 000400 MD.BM = 000040
CL$MFL= 000010 D$NAM 000006 FS.GET= 006000 LF.NPN= 000001 MD.EM = 000100
CL$NRM= 000020 D$USE 000004 FS.INI= 000000 LF.NTS= 002000 MD.ILS= 000040
CL$SFL= 000004 D$$BUG= 177514 FS.KIL= 000000 LF.RSU= 100000 MD.IM = 000020
CL$TYP= 000001 D$$ISK= 000000 FS.LTM= 001000 LS.DLS= 000200 MF.ACK= 000004
CL.MU1= 000001 D$$L11= 000001 FS.MNT= 004000 LS.FCC= 000004 MF.CTL= 000010
CL.MU2= 000002 D$$YNC= 000000 FS.MSN= 014000 LS.FC0= 000001 MF.DAT= 000000
CL.RES= 177774 D$$YNM= 000000 FS.RNG= 011000 LS.FC1= 000002 MPAR = 172100
CMODE = 140000 ER$ABO= 000046 FS.RTN= 001000 LS.ILS= 000200 MPCSR = 177746
CS.ABO= 000100 ER$ABT= 000011 FS.SET= 005000 LS.MAK= 000020 MSGHDR= 000007
CS.BUF= 000200 ER$ACC= 000042 FS.STM= 000000 LS.MNK= 000040 M$$CRB= 000124
CS.DCR= 000400 ER$ACT= 000044 FS.STP= 002000 LS.RES= 000360 M$$CRX= 000000
CS.DEV= 000002 ER$CDI= 000052 FS.STR= 001000 LS.RSV= 000300 M$$FCS= 000000
CS.DIS= 000040 ER$COM= 000047 FS.TRM= 003000 L$$ASG= 000000 M$$MGE= 000000
CS.ENB= 000020 ER$FCF= 000050 FS.XKL= 002000 L$$DRV= 000000 M$$OVR= 000000
CS.EOF= 000001 ER$FMT= 000005 FS.XOF= 010000 L$$P11= 000001 NC.FM0= 000000
CS.ERR= 100000 ER$GEN= 000007 FS.XON= 007000 L$$11R= 000000 NC.FM1= 000001
CS.HFE= 002000 ER$IFC= 000030 F$$LVL= 000001 L.CIQ 000026 NC.FM2= 000002
CS.LST= 040000 ER$ILS= 000043 GETLNK= ****** GX L.DCR 000036 NETTIM= 000005
CS.MTL= 004000 ER$IMG= 000053 G$$TPP= 000000 L.FLG 000012 NE.ABO= 177776
CS.RNG= 000010 ER$MLB= 000006 G$$TSS= 000000 L.LDA 000024 NE.ACT= 177771
CS.ROV= 000004 ER$NOD= 000002 G$$TTK= 000000 L.LIA 000026 NE.CLS= 177767
CS.RSN= 010000 ER$NSD= 000003 G$$WRD= 000000 L.LLA 000002 NE.DIS= 177777
CS.SUC= 000001 ER$RES= 000001 I$$RAR= 000000 L.LNG1 000054 NE.FMT= 177770
CS.TMO= 020000 ER$SSR= 000000 I$$RDN= 000000 L.LNO 000022 NE.NDT= 177766
C$$CKP= 000000 ER$SSS= 000045 KDSAR0= 172360 L.LSA 000032 NE.NOD= 177774
C$$ORE= 000400 ER$STA= 000051 KDSDR0= 172320 L.LSF 000044 NE.REJ= 177775
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 12-2
SYMBOL TABLE
NE.RES= 177773 NT$XON= 000016 N.PASL 000102 P$LEN 000014 S$LEN 000040
NE.TIM= 177772 NT.ACK= 000001 N.PASS 000104 P$LST 000000 S$LNK 000022
NI.FLI= 000002 NT.BOM= 000040 N.RQDL 000060 P$NOD 000010 S$MLK 000024
NI.FRI= 000004 NT.EOM= 000100 N.RQID 000062 P$PFQ 000006 S$NKS 000010
NI.FRT= 000001 NT.FCN= 037400 N.RSRV= 000030 P$TIM 000003 S$RES 000014
NI.FUB= 000010 NT.MD1= 000420 N.SDL1 000036 P$$P45= 000000 S$SEC 000000
NI.INI= 000001 NT.MFL= 000002 N.SDL2 000042 P$$WRD= 000000 S$SNI 000016
NI.RLI= 000002 NT.MOD= 000020 N.SDS1 000040 Q$$OPT= 000010 S$UMR 000004
NI.RRI= 000004 NT.MOM= 000000 N.SDS2 000056 RETUSR= ****** GX S$UMS 000002
NI.RVE= 000001 NT.NAK= 000002 N.SEG 000006 RF.CLN= 000000 S$UNI 000020
NI.VER= 000002 NT.NFL= 000000 N.SFMT 000034 RF.CTL= 000003 S$$WRG= 000000
NP$RTR= 000003 NT.SFL= 000001 N.SGRP 000036 RF.TIM= 177400 S$$YSZ= 007600
NS.BOM= 000040 NT.SOL= 000140 N.SOBJ 000035 RF.TM0= 000400 TPS = 177564
NS.EOM= 000100 NT.XOF= 000004 N.SUSR 000040 RF.WTD= 000020 T$$KMG= 000000
NS.MFL= 000003 NT.XON= 000010 PF$EIP= 000100 RF.WTM= 000030 T$$MIN= 000000
NS.MOM= 000000 N$ACQ 000000 PF$ENB= 000200 RF.WTS= 000010 UBMPR = 170200
NS.NFL= 000001 N$ICF 000006 PF$OFF= 000000 RH.CNT= 000001 UDSAR0= 177660
NS.SET= 000002 N$LNI 000010 PF$RLI= 000002 RH.EFM= 000020 UDSDR0= 177620
NS.SFL= 000002 N$LVC 000022 PF$RRI= 000004 RH.HDR= 000002 UISAR0= 177640
NS.SOL= 000140 N$NOD 000032 PF$RVE= 000001 RH.PRI= 000014 UISAR4= 177650
NS.SUC= 000001 N$PLD 000026 PF$RVR= 000040 RH.PR1= 000004 UISAR5= 177652
NT$ABO= 000022 N$STS 000042 PF$SLI= 000002 RH.RFM= 000100 UISAR6= 177654
NT$ACC= 000002 N$TCB 000004 PF$SRI= 000004 R$$DER= 000000 UISAR7= 177656
NT$ADS= 000000 N$TMP 000012 PF$SRT= 000001 R$$K11= 000001 UISDR0= 177600
NT$AKD= 000016 N$VER 000036 PF$STA= 000003 R$$SND= 000000 UISDR4= 177610
NT$AKI= 000020 N$$DAT= 000030 PF$SUB= 000010 R$$11M= 000000 UISDR5= 177612
NT$CC = 000012 N$$DIS= 000020 PF$UP = 000001 SISDR0= 172200 UISDR6= 177614
NT$CON= 000000 N$$INT= 000020 PIRQ = 177772 SNDAKD= ****** GX UISDR7= 177616
NT$DAT= 000002 N$$LDV= 000001 PMODE = 030000 SNDALT= ****** GX UNSPWN= ****** GX
NT$DIS= 000010 N$$MOV= 000010 PROXMT= ****** GX SNDCK 000530RG 002 USRDAT 000600RG 002
NT$IDC= 000034 N$$OPT= 000020 PR0 = 000000 SNDLS = ****** GX USRINT 000000RG 002
NT$IDN= 000030 N$$OVR= 000042 PR1 = 000040 SNILS = ****** GX USRMOD 001200RG 002
NT$ILN= 000032 N$$SYS= 000001 PR4 = 000200 SR0 = 177572 USRQRY 001076RG 002
NT$IND= 000024 N$$USR= 000001 PR5 = 000240 SR3 = 172516 USRRCI 000460RG 002
NT$INL= 000026 N.ACNT 000116 PR6 = 000300 ST$CC = 000002 USRRCV 000230RG 002
NT$INT= 000004 N.ACTL 000114 PR7 = 000340 ST$CIR= 000003 USRXOF 001266RG 002
NT$LS = 000014 N.DDL1 000012 PS = 177776 ST$CIS= 000001 USRXON 001274RG 002
NT$MOD= 000012 N.DDL2 000016 PS$NTI= 000003 ST$DAT= 000005 VF$RCV= 100000
NT$NAK= 000022 N.DDS1 000014 PS$OFF= 000000 ST$DID= 000015 VF$XMT= 040000
NT$OFF= 000026 N.DDS2 000020 PS$STR= 000001 ST$DIP= 000006 V$FLG 000000
NT$ON = 000002 N.DFMT 000010 PS$UP = 000005 ST$DIR= 000012 V$LEN 000022
NT$QRY= 000014 N.DGRP 000012 PS$VER= 000004 ST$DIS= 000014 V$RCV 000002
NT$REJ= 000004 N.DOBJ 000011 PS$WT = 000002 ST$UDI= 000013 V$XMT 000012
NT$ROU= 000022 N.DUSR 000014 P$CHN 000004 ST$UNR= 000011 V$$CTR= 001000
NT$RTI= 000010 N.LGTH= 000160 P$CNT 000005 SWR = 177570 WINDOW= 004000
NT$RTN= 000000 N.NODE 000000 P$FRQ 000012 SYSMOD 001214RG 002 X$$DBT= 000000
NT$SNG= 000006 N.OPDL 000136 P$FSP 000013 S$EMR 000006 $CCBRT= ****** GX
NT$STP= 000004 N.OPTD 000140 P$LCD 000002 S$FMT 000012 $NSDDB= ****** GX
NT$XOF= 000020
. ABS. 000160 000
000000 001
NSPXM 001354 002
ERRORS DETECTED: 0
VIRTUAL MEMORY USED: 18447 WORDS ( 73 PAGES)
DYNAMIC MEMORY: 19564 WORDS ( 75 PAGES)
ELAPSED TIME: 00:00:50
NSPXM MACRO M1110 13-OCT-79 10:07 PAGE 12-3
SYMBOL TABLE
NSPXM,[131,34]NSPXM/CR/-SP=[130,10]NETLIB/ML,RSXMC4/PA:1,[131,10]NSPXM
NSPXM CREATED BY MACRO ON 13-OCT-79 AT 10:08 PAGE 1
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
ACKMAS = 170000 5-171
ADDQUE = ****** GX 9-398
BINPUT = ****** GX 5-172 5-174 5-176 9-366 9-376 9-378 9-380
BLDINT 000126 R 4-116 #5-165
CHKNMS = ****** GX 6-216
CHKUSR = ****** GX 4-108 6-203 7-282 9-356 10-430 11-500 12-539
C.BUF 000014 5-166 5-167 *5-178 6-253 9-357 9-358 *9-384
C.BUF2 000024 *5-168 5-179 *9-359 9-385
C.CNT 000020 *5-180 *9-386
C.FLG 000022 7-290
C.LIN 000006 *7-293
C.MOD 000011 *6-204 *7-283
C.NSP 000004 6-205 6-218 *7-290 *10-435 *10-436 11-504
C.RSV 000002 *4-115
C.STS 000012 6-213 6-219 6-236 9-381 9-409
GETLNK = ****** GX 8-324 11-483
KISAR6 = 172354 *5-166 *9-357
LA.ACK = 100000 6-228
LA.MSK = 170000 6-223 9-365 9-375
LA.NAK = 110000 6-224
LA.NMS = 010000 9-369
LF.DFL = 000060 6-241 12-543
LF.DSP = 000040 6-244 12-533
LF.DST = 000020 6-246 12-537
LF.HF0 = 001000 8-327
LF.HMF = 020000 8-329 9-407 10-442
LF.HSF = 010000 8-329 9-405 10-437
LF.LCL = 040000 7-291
LF.NKR = 000200 8-327
L.FLG 000012 *6-241 *6-244 *6-246 8-327 8-329 9-405 9-407 10-437 10-442
*12-543 *12-544
L.LLA 000002 5-173 9-377
L.LSF 000044 *6-250 *7-284 *11-484 *11-507
L.NIN 000016 5-169 *5-170 *5-171
L.NXN 000014 9-362 *9-364 *9-365
L.PDV 000041 4-135 6-208 6-234 9-393 10-447 12-550
L.RLA 000010 5-175 9-379
L.RNO 000020 *6-221
L.TC 000042 8-331 *9-411 10-436
L.TIC 000043 4-112 *4-114
L.TIPD 000005 *9-413
L.TIPI 000004 *4-123
L.USA 000030 6-215 *6-229 9-367 *9-375
L.XQ1 000046 9-397
MD.BM = 000040 9-382
MD.EM = 000100 9-382
MD.ILS = 000040 5-177
MD.IM = 000020 5-177
MF.DAT = 000000 5-177 9-383
M$$MGE = 000000 5-166 9-357
NE.ABO = 177776 4-128 10-431 11-501 12-540
NE.NDT = 177766 4-131
NSPXM CREATED BY MACRO ON 13-OCT-79 AT 10:08 PAGE 2
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
NE.TIM = 177772 4-111
NS.MFL = 000003 10-444
NS.NFL = 000001 10-434
NS.SFL = 000002 10-439
NS.SUC = 000001 11-510 12-547
NT$DAT = 000002 6-204
NT$INT = 000004 7-283
NT.ACK = 000001 6-213
NT.EOM = 000100 9-409
NT.FCN = 037400 6-249
NT.MOD = 000020 6-237 6-247
NT.NAK = 000002 6-213 6-219
NT.XOF = 000004 6-237 6-239
NT.XON = 000010 6-237 6-239 6-242
N$STS 000042 4-118 9-361
N$$SYS = 000001 3-75 4-127 4-134 4-142 6-207 6-212 9-391 10-427 10-446
10-451 11-487 12-529 12-549 12-554
N$$USR = 000001 3-75 4-134 6-207 9-392 10-446 12-549
PROXMT = ****** GX 9-399
RETUSR = ****** GX 4-143 10-452 11-511 12-555
SNDAKD = ****** GX 6-230
SNDALT = ****** GX 4-124 9-414
SNDCK 000530 RG #8-324
SNDLS = ****** GX 6-251 11-485 11-509 12-545
SNILS = ****** GX 7-285
ST$DAT = 000005 4-109 8-325
ST$DIP = 000006 4-129 10-432 11-502 12-541
SYSMOD 001214 RG #11-500
S$NKS 000010 *9-371 *9-373
S$UMS 000002 *4-119 *4-121 *9-387 *9-389
UNSPWN = ****** GX 7-294
USRDAT 000600 RG #9-356
USRINT 000000 RG #4-108
USRMOD 001200 RG #11-483
USRQRY 001076 RG #10-429
USRRCI 000460 RG #7-281
USRRCV 000230 RG #6-203
USRXOF 001266 RG #12-532
USRXON 001274 RG #12-536
$CCBRT = ****** GX 6-255
$NSDDB = ****** GX 4-117 9-360
NSPXM CREATED BY MACRO ON 13-OCT-79 AT 10:08 PAGE 3
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
CALL 4-108 4-116 5-172 5-174 5-176 6-203 6-216 6-230 6-251 7-282
7-285 8-324 9-356 9-366 9-376 9-378 9-380 9-398 9-399 9-414
10-430 10-452 11-483 11-500 11-509 11-511 12-539 12-545 12-555
CALLR #4-124 #4-143 #6-255 #7-294 #11-485
CCBDF$ #3-70 3-71
HWDDF$ #5-166 5-166 #9-357 9-357
MAP #3-69 #5-166 #9-357
NSPSY$ #3-70 3-72
RESRG #3-69
RETURN 4-140 5-181 8-334 8-337 9-416 10-455 11-513 12-558
SAVRG #3-69