Trailing-Edge
-
PDP-10 Archives
-
BB-H348C-RM_1982
-
swskit-v21/listings/mcb/nsnet.list
There are no other files named nsnet.list in the archive.
NSNET MACRO M1110 06-NOV-79 10:12
TABLE OF CONTENTS
4- 122 $NETQIO - NETWORK CONTROL QIO (FUNCTION=35) PROCESSOR
5- 149 OPN - NETWORK ACCESS (SUBFUNCTION=000)
6- 196 GET TASK'S MAIL FROM GENERAL DELIVERY
7- 251 CLS - DEACCESS NETWORK (SUBFUNCTION=010)
8- 380 SPA - SPECIFY NETWORK DATA AST SERVICE (SUBFUNCTION=020)
9- 405 GND - GET NETWORK DATA (SUBFUNCTIONS=230,040,250)
9- 485 LTON - GET NETWORK DATA LENGTH AND TYPE ONLY (SUBFUNCTION=040)
10- 504 CONNECT PENDING NETWORK DATA PROCESSING
11- 534 INTERRUPT MESSAGE NETWORK DATA PROCESSING
12- 561 USER DISCONNECT AND USER/NETWORK ABORT NETWORK DATA PROCESSING
13- 598 MOP EVENT REPORT PROCESSING
13- 614 CCB & DATA BUFFER CLEANUP ;BH0003
13- 628 LOCAL DATA MOVE SUBROUTINE
14- 641 GLN - GET LOCAL NODE PARAMETERS
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 3
1 .TITLE NSNET
2 .IDENT /V01.07/
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 ; ACP NETWORK ACCESS QIO PROCESSOR
27 ;
28 ;
29 ;
30 ; DISTRIBUTED SYSTEMS SOFTWARE ENGINEERING
31 ;
32 ; IDENT HISTORY:
33 ;
34 ; 1.00 10-FEB-78
35 ; VERSION 2.0 RELEASE
36 ; 1.01 14-JUL-78 L. WEBBER ;LW0001
37 ; MOVE DISPATCH TABLES INTO BLANK PSECT
38 ;
39 ; 1.02 18-AUG-78 ALAN D. PECKHAM ;AP0002
40 ; CHANGE MOP REPORTING TO COME IN BUFFER INSTEAD OF CCB
41 ;
42 ; 1.03 1-NOV-78 BUREN W. HOFFMAN ;BH0003
43 ; MODIFIED AP0002 SO THAT THE CCB & BUFFER CLEANUP CODE IS
44 ; A CALLABLE ROUTINE "$CCBCL".
45 ; 1.04 21-DEC-78 ALAN D. PECKHAM
46 ; ADD TDISP TABLE ENTRY FOR NT.LOG NETWORK DATA AND
47 ; FIX $CCBCL TO RETURN CCB/SDBS PROPERLY
48 ; 1.05 9-AUG-79 ALAN D. PECKHAM
49 ; CHANGE INPUT CONVENTION FOR $CCBCL.
50 ; 1.06 27-AUG-79 ALAN D. PECKHAM
51 ; $CCBCL SHOULD NOT MODIFY APR6.
52 ; 1.07 6-NOV-79 ALAN D. PECKHAM
53 ; FIX BUG IN CLS (FOUND BY BUREN HOFFMAN)
54 ;
55 ;
56
57 ; MACRO LIBRARY CALLS
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 3-1
58 ;
59
60 .MCALL MBXDF$,DVBDF$,LLWDF$
61 000000 MBXDF$ ;DEFINE TASK MAILBOX BLOCK OFFSETS
62 000000 DVBDF$ ; " VOLUME CONTROL BLOCK OFFSETS
63 000000 LLWDF$ ; " LOGICAL LINK WINDOW BLOCK OFFSETS
64 .MCALL NSPSY$,CCBDF$
65 000000 NSPSY$ ;DEFINE NSP SYSTEM INTERFACE SYMBOLS
66 000000 CCBDF$ ; " COMMUNICATION CONTROL BLOCK OFFSETS
67 .MCALL CNBDF$,NSSYM$
68 000000 CNBDF$ ;DEFINE CONNECT PENDING BLOCK OFFSETS
69 000000 NSSYM$ ; " DRIVER RETURN SYMBOLS
70 .MCALL SAVRG,RESRG,CALLC,CALLX,RECMAP
71 .MCALL SAVMAP,MAP,RESMAP,$MVFBF ;AP0006
72
73 ;
74 ; LOCAL MACRO DEFINITIONS
75 ;
76 ;
77 ; PUSH AND POP STACK INSTRUCTIONS
78 ;
79
80 .MACRO PUSH S
81 .IRP SS,<S>
82 MOV SS,-(SP)
83 .ENDR
84 .ENDM PUSH
85
86 .MACRO POP D
87 .IRP DD,<D>
88 MOV (SP)+,DD
89 .ENDR
90 .ENDM POP
91
92 ;
93 ; LOCAL DATA
94 ;
95 ;
96 ; SUBFUNCTION CODE DISPATCH TABLE
97 ;
98
99 ;**-1
100 000000 000024' SDISP: .WORD OPN ; 000 - NETWORK ACCESS
101 000002 000320' .WORD CLS ; 010 - " DEACESS
102 000004 000726' .WORD SPA ; 020 - SPECIFY NETWORK DATA AST SERVICE
103 000006 000042' .WORD GND ; 230 - GET NETWORK DATA
104 000010 000042' .WORD GND ; 040 - " " " LENGTH AND TYPE
105 000012 000042' .WORD GND ; 250 - " " " SPECIFIC TYPE
106 000014 000000G .WORD $IFCER ; 060 - ILLEGAL FUNCTION
107 000016 001022' .WORD GLN ; 270 - GET LOCAL NODE INFORMATION
108
109 ;
110 ; TYPE CODE DISPATCH TABLE
111 ;
112
113 000020 000314' TDISP: .WORD CON ; 1 - CONNECT PENDING
114 000022 000426' .WORD INT ; 2 - INTERRUPT MESSAGE
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 3-2
115 000024 000524' .WORD DSC ; 3 - USER DISCONNECT
116 000026 000524' .WORD ABT ; 4 - USER ABORT
117 000030 000516' .WORD ABO ; 5 - NETWORK DISCONNECT
118 000032 000000 000000 .WORD 0,0 ; 6 AND 7 ARE RESERVED
119 000036 000650' .WORD MOP ; 10 - MOP EVENT
120 000040 000650' .WORD MOP ; 11 - EVENT LOG DATA ;AP0004
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 4
$NETQIO - NETWORK CONTROL QIO (FUNCTION=35) PROCESSOR
122 .SBTTL $NETQIO - NETWORK CONTROL QIO (FUNCTION=35) PROCESSOR
123
124 ;+
125 ; ** - $NETQIO - NETWORK CONTROL QIO PROCESSOR
126 ;
127 ; THIS ROUTINE PROCESSES QIO REQUESTS WITH FUNCTION
128 ; CODES OF 35.
129 ;
130 ; INPUTS:
131 ;
132 ; R1 = SUBFUNCTION CODE
133 ; R3 = I/O PACKET
134 ;
135 ; OUTPUTS:
136 ;
137 ; R3-> I/O PACKET
138 ; R4-> MAILBOX
139 ;-
140
141 000000 .PSECT $NSACP ;LW0001
142 000000 017304 000000G $NETQIO::MOV @I.LN2(R3),R4 ;GET ADDRESS OF MAILBOX
143 000004 042704 000001 BIC #1,R4 ;CLEAR ACCESS BIT IN ADDRESS
144 000010 042701 177700 BIC #177700,R1 ;CONVERT SUBFUNCTION CODE TO
145 000014 006201 ASR R1 ; WORD INDEX
146 000016 006201 ASR R1
147 000020 000171 000000' JMP @SDISP(R1) ;DISPATCH FOR PROCESSING
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 5
OPN - NETWORK ACCESS (SUBFUNCTION=000)
149 .SBTTL OPN - NETWORK ACCESS (SUBFUNCTION=000)
150
151 ;+
152 ; OPN - NETWORK ACCESS QIO PROCESSOR
153 ;
154 ; THIS ESTABLISHES AN ACCESS LINK TO NSP. IT'S MAJOR
155 ; FUNCTION IS TO CREATE THE NETWORK DATA QUEUE MAILBOX).
156 ;
157 ; INPUTS:
158 ;
159 ; R3 = I/O PACKET
160 ; R4 = MAILBOX
161 ;
162 ; OUTPUTS:
163 ;
164 ; MAILBOX IS INITIALIZED AND ANY PENDING CONNECTS WHICH
165 ; WERE ON THE GENERAL DELIVERY QUEUE ARE PLACED IN
166 ; THE MAILBOX.
167 ;-
168
169 000024 016305 000000G OPN: MOV I.UCB(R3),R5 ;GET VOLUME CONTROL BLOCK ADDRESS
170 000030 016505 000000G MOV U.VCB(R5),R5 ; THRU UNIT CONTROL BLOCK
171 000034 010475 000014 MOV R4,@V.MBXQ+2(R5) ;LINK MAILBOX TO QUEUE OF MAILBOXES
172 000040 010465 000014 MOV R4,V.MBXQ+2(R5) ;IN VCB
173 ;CHECK IF THIS IS THE NCU EXECUTOR TASK
174 000044 016301 000000G MOV I.TCB(R3),R1 ;GET TCB ADDRESS FOR THIS TASK
175 000050 026167 000000G 000000G CMP T.NAM(R1),$NCUNM ;FIRST PART OF THE NAME ?
176 000056 001006 BNE 5$ ;IF NE, NO - CONTTINUE
177 000060 026167 000002G 000002G CMP T.NAM+2(R1),$NCUNM+2 ;SECOND PART OF THE NAME ?
178 000066 001002 BNE 5$ ;IF NE, NO
179 000070 010467 000000G MOV R4,$NSNCU ;OTHERWISE SAVE NCU'S MAILBOX ADDRESS
180
181 000074 010400 5$: MOV R4,R0 ;COPY MAILBOX ADDRESS
182 000076 005020 CLR (R0)+ ;CLEAR LINK POINTER IN MAILBOX
183 000100 010120 MOV R1,(R0)+ ;STORE TCB ADDRESS IN MAILBOX
184 000102 005020 CLR (R0)+ ;CLEAR STATUS AND # OF ENTRIES IN NETWORK DATA QUEUE
185 000104 105020 CLRB (R0)+ ;CLEAR COUNTER OF LOGICAL LINKS IN USE
186 000106 116320 000000G MOVB I.PRM(R3),(R0)+ ;STORE MAX # OF LOGICAL LINKS ALLOWED
187 000112 005020 CLR (R0)+ ;CLEAR NETWORK DATA AST ADDRESS
188 000114 010046 MOV R0,-(SP) ;SAVE CURRENT POSITION IN MAILBOX
189 000116 005020 CLR (R0)+ ;INITIALIZE NETWORK DATA (MAIL) LISTHEAD
190 000120 012620 MOV (SP)+,(R0)+ ;...
191 000122 SWSTK$ 10$ ;SWITCH TO SYSTEM STATE
192 000126 CALL GTMAIL ;;MOVE ANY "MAIL" FROM GENERAL DELIVERY
193 000132 CALLR IOSUC ;;POST SUCCESSFUL COMPLETION TO USER
194 000136 10$: RETURN ;;RETURN TO USER STATE AND CALLER
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 6
GET TASK'S MAIL FROM GENERAL DELIVERY
196 .SBTTL GET TASK'S MAIL FROM GENERAL DELIVERY
197
198 ;+
199 ; THIS ROUTINE REMOVES ANY CONNECTS FOR A PARTICULAR TASK OR MOP
200 ; EVENTS FOR NCU FROM THE GENERAL DELIVERY QUEUE AND PLACES THEM
201 ; IN THETASK'S MAILBOX QUEUE. IF THE TOTAL # OF ALLOWABLE LOGICAL
202 ; LINKS IS EXCEEDED ALL REMAINING CONNECTS WILL BE REJECTED.
203 ;
204 ; INPUTS:
205 ;
206 ; R3 -> I/O PACKET
207 ; R4 -> MAILBOX
208 ; R5 -> VCB
209 ;
210 ; OUTPUTS:
211 ;
212 ; R0 & R1 ARE DESTROYED
213 ;-
214
215 000140 GTMAIL: SAVRG <R5,R2> ;;SAVE REGISTERS NEEDED
216 000144 062705 000016 ADD #V.GENQ,R5 ;;ADD OFFSET TO GENERAL DELIVERY QUEUE
217 000150 010502 MOV R5,R2 ;;SAVE THE ADDRESS OF THE LISTHEAD
218 000152 010500 10$: MOV R5,R0 ;;COPY THE POINTER TO THE CURRENT ELEMENT
219 000154 011005 20$: MOV (R0),R5 ;;GET (NEXT) ELEMENT FROM QUEUE
220 000156 001450 BEQ 60$ ;;IF EQ, QUEUE IS EMPTY
221 000160 026564 000004 000002 CMP C.NSP(R5),M.TASK(R4) ;;IS THIS CONNECT FOR THIS TASK?
222 000166 001371 BNE 10$ ;;IF NE, NO - KEEP LOOKING
223
224 000170 011510 MOV (R5),(R0) ;;REMOVE ELEMENT FROM GENERAL DELIVERY QUEUE
225 000172 001002 BNE 30$ ;;IF NE, WE'RE NOT AT END OF QUEUE
226 000174 010062 000002 MOV R0,2(R2) ;;SET ADDRESS OF NEW LAST ELEMENT
227 000200 122765 000001 000010 30$: CMPB #NT.CON,C.FNC(R5) ;;IS THIS A CONNECT CCB ?
228 000206 001026 BNE 50$ ;;IF NE, NO - MUST BE MOP EVENT CCB
229 000210 105764 000007 TSTB M.MAX(R4) ;;HAS USER RESTRICTED # OF LOGICAL LINKS?
230 000214 001421 BEQ 40$ ;;NO
231 000216 126464 000006 000007 CMPB M.USE(R4),M.MAX(R4) ;;CAN WE PUT THIS CONNECT ON THE MAILBOX?
232 000224 103415 BLO 40$ ;;YES
233 000226 SAVRG <R0,R2,R3,R4> ;;SAVE REGISTERS
234 000236 012703 000041 MOV #ER$TCO,R3 ;;SET TOO MANY CONNECTS REASON CODE
235 000242 CALL CCBREJ ;;REJECT THIS CONNECTION
236 000246 RESRG <R4,R3,R2,R0> ;;RESTORE REGISTERS
237 000256 000736 BR 20$ ;;LOOP TILL DONE
238
239 000260 105264 000006 40$: INCB M.USE(R4) ;;INCREMENT NUMBER OF ACTIVE LOGICAL LINKS
240 000264 005015 50$: CLR (R5) ;;CLEAR LINK POINTER
241 000266 010574 000014 MOV R5,@M.MAIL+2(R4) ;;LINK CONNECT TO TASK'S MAILBOX QUEUE
242 000272 010564 000014 MOV R5,M.MAIL+2(R4) ;;...
243 000276 000726 BR 20$ ;;LOOP TILL DONE
244
245 000300 60$: RESRG <R2,R5> ;;RESTORE REGISTERS
246 000304 005765 000016 TST V.GENQ(R5) ;;GENERAL DELIVERY QUEUE EMPTY ?
247 000310 001002 BNE 70$ ;;IF NE, NO
248 000312 105065 000002 CLRB V.TIMR(R5) ;;ELSE, MAKE SURE TIMER IS OFF
249 000316 70$: RETURN ;;RETURN TO CALLER
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 7
CLS - DEACCESS NETWORK (SUBFUNCTION=010)
251 .SBTTL CLS - DEACCESS NETWORK (SUBFUNCTION=010)
252
253 ;+
254 ; CLS - DEACCESS NETWORK QIO PROCESSOR
255 ;
256 ; THIS DESTROYS THE ACCESS LINK TO THE NETWORK.
257 ;
258 ; INPUTS:
259 ;
260 ; R3 -> I/O PACKET
261 ; R4 -> MAILBOX BLOCK
262 ;
263 ; OUTPUTS:
264 ;
265 ; NETWORK DATA ON THE MAILBOX QUEUE IS FLUSHED AND ACTIVE LOGICAL
266 ; LINKS ARE ABORTED.
267 ;-
268
269 .ENABL LSB
270 000320 CLS: SWSTK$ 110$ ;SWITCH TO SYSTEM STATE
271 000324 CALL MAPHDR ;;GET POINTER TO TASK HEADER
272
273 000330 005000 CLS1:: CLR R0 ;;SET FLAG TO FLUSH ALL DATA
274 000332 CALL FLSHMB ;;FLUSH MAILBOX NETWORK DATA QUEUE
275 000336 010400 MOV R4,R0 ;;CHANGE REGISTER CONVENTIONS
276 000340 152760 000200 000004 BISB #MS.CIP,M.STAT(R0) ;;SET CLOSE IN PROGRESS MAILBOX STATUS
277 000346 010360 000010 MOV R3,M.SPA(R0) ;;SAVE I/O PACKET ADDRESS IN MAILBOX
278
279 ;
280 ; ALSO ENTERED HERE FROM $QDIC WHEN DISCONNECT COMPLETE RECEIVED FOR
281 ; LINK WINDOW WITH CLOSE IN PROGRESS STATUS (WS.KIP).
282 ;
283 ; INPUT:
284 ;
285 ; R0 -> MAILBOX BLOCK ADDRESS
286 ; R2 -> USER TASK HEADER ADDRESS
287 ; R3 -> I/O PACKET
288 ;
289
290 000352 105760 000006 CLS2:: TSTB M.USE(R0) ;;ANY ACTIVE LINKS LEFT ?
291 000356 001516 BEQ 60$ ;;IF EQ, NO - JUST ELIMINATE MAILBOX
292 000360 012746 000001 MOV #1,-(SP) ;;SET # OF LINKS TO SIMULTANEOUSLY ABORT
293 000364 010204 MOV R2,R4 ;;COPY ADDRESS OF TASK HEADER
294 000366 016005 000002 MOV M.TASK(R0),R5 ;;GET TCB ADDRESS
295 000372 012746 000000G MOV #SCNLUN,-(SP) ;;SET ADDRESS OF LUT SCANNING COROUTINE
296
297 000376 10$: CALL @(SP)+ ;;GET THE NEXT ACTIVE LUN
298 000400 103550 BCS 100$ ;;IF CS, NONE LEFT
299
300 000402 042700 000001 BIC #1,R0 ;;REMOVE INTERLOCK BIT FROM WINDOW BLOCK ADDRESS
301 000406 132760 000100 000004 BITB #WS.DIP,W.STAT(R0) ;;IS THE LINK IN THE PROCESS OF DISCONNECTING?
302 000414 001403 BEQ 15$ ;;IF EQ, NO - GO SET UP LINK FOR CLOSE
303 000416 005760 000014 TST W.PIO(R0) ;;IS THERE A PENDING ABT$ OR DIS$ REQUEST?
304 000422 001365 BNE 10$ ;;IF NE, YES - JUST LET IT FINISH BY ITSELF
305 000424 052711 000001 15$: BIS #1,(R1) ;;INTERLOCK LUN
306 000430 112760 000200 000004 MOVB #WS.KIP,W.STAT(R0) ;;SET CLOSE IN PROGRESS IN WINDOW BLOCK
307 000436 016003 000014 MOV W.PIO(R0),R3 ;;GET I/O PACKET
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 7-1
CLS - DEACCESS NETWORK (SUBFUNCTION=010)
308 000442 001406 BEQ 20$ ;;IF EQ, NO I/O PACKET TO FLUSH
309 000444 005060 000014 CLR W.PIO(R0) ;;INDICATE NO I/O PACKET
310 000450 010046 MOV R0,-(SP) ;;SAVE ADDRESS OF THE WINDOW BLOCK
311 000452 CALL IOFLS ;;FINISH I/O REQUEST
312 000456 012600 MOV (SP)+,R0 ;;RECOVER WINDOW BLOCK ADDRESS
313
314 000460 005366 000004 20$: DEC 4(SP) ;;DECREMENT COUNT OF # OF LINKS TO ABORT SIMULTANEOUSLY
315 000464 002744 BLT 10$ ;;IF LE, DON'T ABORT ANY MORE TILL PREVIOUS ONES COMPLET
316 000466 SAVRG <R4,R5> ;;SAVE REGISTERS ;AP0007
317 000472 CALL CCBGT ;;ALLOCATE CCB FOR ABORT ;**-1
318 000476 103430 BCS 30$ ;IF CS, ALLOCATION FAILURE - TRY AGAIN
319 ;;FORM USER ABORT CCB
320 000500 010005 MOV R0,R5 ;;COPY POINTER TO WINDOW BLOCK
321 000502 CALL FLSHIO ;;FLUSH ALL SND$, XMI$, REC$ QIO REQUESTS
322 000506 152760 000100 000004 BISB #WS.DIP,W.STAT(R0) ;;SET DISCONNECT IN PROGRESS
323 000514 005064 000004 CLR C.NSP(R4) ;;SET PDV FOR TASK INTERFACE
324 000520 116064 000011 000004 MOVB W.ULA(R0),C.NSP(R4) ;; LOGICAL LINKS ULA
325 000526 005064 000016 CLR C.BUF+2(R4) ;; CLEAR DATA BUFFER ADDRESS
326 000532 005064 000020 CLR C.CNT(R4) ;; " " " COUNT
327 000536 010405 MOV R4,R5 ;;CHANGE REGISTER CONVENTIONS
328 000540 SAVRG R0 ;;SAVE WINDOW ADDDRESS FROM USRABO ;AP0007
329 000542 CALL USRABO ;;ABORT LOGICAL LINK
330 000546 RESRG R0 ;;GET WINDOW ADDRESS BACK ;AP0007
331 000550 103016 BCC 40$ ;;IF FAILURE, ;AP0007
332 000552 010504 MOV R5,R4 ;;RECOVER AND ;AP0007
333 000554 CALL $CCBRT ;;RELEASE THE CCB ;**-2
334 000560 30$: ;AP0007
335 000560 142760 000100 000004 BICB #WS.DIP,W.STAT(R0) ;;SINCE ABORT FAILED CLEAR DISCONNECT IN PROGRESS
336 000566 016000 000016 MOV W.MBOX(R0),R0 ;;GET ADDRESS OF MAILBOX
337 000572 016003 000010 MOV M.SPA(R0),R3 ;;RECOVER CLOSE I/O PACKET ADDRESS
338 000576 CALL IOREDO ;;RE-QUEUE IT TO ACP TO BE PROCESSED LATER
339 000602 005066 000010 CLR 10(SP) ;;CLEAR LINK ABORT COUNTER ;AP0007
340 000606 40$: RESRG <R5,R4> ;;RESTORE REGISTERS ;AP0007
341 000612 000671 BR 10$ ;;CONTINUE TO INTERLOCK THE USER'S LUNS ;**-1
342
343 ;
344 ; WHEN ALL LOGICAL LINKS HAVE GONE AWAY, COMPLETE THE I/O RUNDOWN
345 ; BY REMOVING THE MAILBOX.
346 ;
347
348 000614 016704 000000G 60$: MOV $NSVCB,R4 ;;GET VOLUME CONTROL BLOCK ADDRESS
349 000620 062704 000012 ADD #V.MBXQ,R4 ;;POINT TO VCB MAILBOX QUEUE
350 000624 PUSH #SCNQUE ;;SETUP QUEUE SCANNING CO-ROUTINE
351 000630 70$: CALL @(SP)+ ;;SCAN NEXT QUEUE ITEM (CO-ROUTINE)
352 000632 103404 BCS 80$ ;;IF CS, NOT ON QUEUE (HOPE FOR SALVATION)
353 000634 020005 CMP R0,R5 ;;IS THIS THE MAILBOX ?
354 000636 001374 BNE 70$ ;;IF NE, NO - GO SCAN NEXT ONE
355 000640 CALL REMQUE ;;ELSE, REMOVE FROM QUEUE
356
357 000644 80$: SAVRG <R0> ;;SAVE ADDRESS OF MAILBOX
358 000646 116200 000000G MOVB H.NML(R2),R0 ;;GET MAILBOX LUN
359 000652 CALL MAPLUN ;;GET POINTER TO 2ND LUN WORD FOR MAILBOX
360 000656 005010 CLR (R0) ;;UNLOCK USER'S LUN
361 000660 105062 000000G CLRB H.NML(R2) ;;CLEAR TASK MAILBOX LUN CELL
362 000664 RESRG <R0> ;;RESTORE MAILBOX ADDRESS
363
364 000666 026700 000000G CMP $NSNCU,R0 ;;IS THIS MAILBOX THE SPECIAL NCU MAILBOX ?
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 7-2
CLS - DEACCESS NETWORK (SUBFUNCTION=010)
365 000672 001002 BNE 90$ ;;IF NE, NO - DON'T TOUCH A THING
366 000674 005067 000000G CLR $NSNCU ;;ELSE, CLEAR NCU MAILBOX ADDRESS
367
368 000700 016046 000010 90$: MOV M.SPA(R0),-(SP) ;;SAVE I/O PACKET ADDRESS
369 000704 012701 000016 MOV #M.MBL,R1 ;;SET MAILBOX BLOCK LENGTH
370 000710 CALL $DEACB ;;DEALLOCATE MAILBOX BLOCK
371 000714 POP R3 ;;RECOVER I/O PACKET ADDRESS
372 000716 CALLR IOSUC ;;FINISH I/O REQUEST
373
374 000722 005726 100$: TST (SP)+ ;;REMOVE LINK ABORT COUNTER FROM STACK
375 000724 110$: RETURN ;;RETURN TO TASK STATE AND CALLER
376
377 .DSABL LSB
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 8
CLS - DEACCESS NETWORK (SUBFUNCTION=010)
379
380 .SBTTL SPA - SPECIFY NETWORK DATA AST SERVICE (SUBFUNCTION=020)
381
382 000726 SPA: SWSTK$ 40$ ;SWITCH TO SYSTEM STATE
383
384 000732 016364 000000G 000010 MOV I.PRM(R3),M.SPA(R4) ;;SET NEW AST SERVICE ADDRESS
385 000740 005001 CLR R1 ;;CLEAR NETWORK DATA COUNT
386
387 000742 062704 000012 ADD #M.MAIL,R4 ;;POINT TO NETWORK DATA LISTHEAD
388 000746 PUSH #SCNQUE ;;SETUP QUEUE SCAN CO-ROUTINE
389
390 000752 10$: CALL @(SP)+ ;;SCAN NEXT QUEUE ITEM
391 000754 103412 BCS 30$ ;;IF CS, END OF QUEUE
392
393 000756 126527 000010 000001 CMPB C.FNC(R5),#NT.CON ;;IS THIS ITEM A CONNECT ?
394 000764 001004 BNE 20$ ;;IF NE, NO - GO COUNT IT
395 000766 132765 000004 000011 BITB #CX.UNL,C.MOD(R5) ;;IS THIS CONNECT PENDING ?
396 000774 001366 BNE 10$ ;;IF NE, YES - IGNORE IT
397 000776 005201 20$: INC R1 ;;COUNT THIS ITEM
398 001000 000764 BR 10$ ;;GO SCAN NEXT ITEM
399
400 001002 012700 000000C 30$: MOV #IS.SUC&377,R0 ;;SUCCESS STATUS
401 001006 CALLR IODUN ;;FINISH I/O REQUEST SUCCESSFULLY
402
403 001012 40$: RETURN ;;RETURN TO TASK STATE
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 9
GND - GET NETWORK DATA (SUBFUNCTIONS=230,040,250)
405 .SBTTL GND - GET NETWORK DATA (SUBFUNCTIONS=230,040,250)
406
407 ;+
408 ; GND - GET NETWORK DATA QIO PROCESSOR
409 ;
410 ; THE NETWORK DATA QUEUE IS SCANNED FOR A DATA ITEM WHICH
411 ; SATISFIES THE REQUIREMENTS, IF ANY, OF THIS REQUEST.
412 ;
413 ; INPUT:
414 ;
415 ; R1 = SUBFUNCTION INDEX
416 ; R3 = I/O PACKET
417 ;
418 ; OUTPUT:
419 ;
420 ; IF THE ITEM IS A CONNECT, IT IS NOT REMOVED
421 ; FROM THE QUEUE BUT A FLAG BIT IS SET SO THAT IT WILL
422 ; NOT BE DEQUEUED AGAIN. ALL OTHER ITEMS ARE DEQUEUED.
423 ; THE NETWORK DATA IS COPIED TO THE USER BUFFER, IF
424 ; NECESSARY, AND RESOURCES RELEASED.
425 ;-
426
427 000042 .PSECT
428
429 .ENABL LSB
430 000042 GND: SWSTK$ 85$ ;SWITCH TO SYSTEM STATE
431
432 000046 062704 000012 ADD #M.MAIL,R4 ;;POINT TO NETWORK DATA LISTHEAD
433 000052 010602 MOV SP,R2 ;;COPY STACK POINTER
434 000054 PUSH #SCNQUE ;;SETUP QUEUE SCAN CO-ROUTINE
435
436 000060 10$: CALL @(SP)+ ;;SCAN NEXT QUEUE ITEM
437 000062 103507 BCS 70$ ;;IF CS, END OF QUEUE
438 000064 005000 CLR R0
439 000066 156500 000010 BISB C.FNC(R5),R0 ;;GET DATA TYPE CODE
440 000072 120027 000001 CMPB R0,#NT.CON ;;IS THIS ITEM A CONNECT ?
441 000076 001004 BNE 20$ ;;IF NE, CONTINUE
442 000100 132765 000004 000011 BITB #CX.UNL,C.MOD(R5) ;;IS THIS CONNECT PENDING ?
443 000106 001364 BNE 10$ ;;IF NE, YES - CHECK NEXT ITEM
444
445 000110 120127 000006 20$: CMPB R1,#6 ;;NORMAL GND ?
446 000114 001420 BEQ 32$ ;;IF EQ, YES - REMOVE ITEM
447 ;;ELSE, MUST BE SELECTIVE GND OR A LENGTH ONLY
448 000116 105763 000006G TSTB I.PRM+6(R3) ;;TYPE MASK SPECIFIED ?
449 000122 001403 BEQ 25$ ;;IF EQ, NO - TEST LUN MASK
450 000124 126300 000006G CMPB I.PRM+6(R3),R0 ;;TYPE CODE MATCH ?
451 000130 001353 BNE 10$ ;;IF NE, NO - CHECK NEXT ITEM
452 000132 105763 000007G 25$: TSTB I.PRM+7(R3) ;;LUN MASK SPECIFIED ?
453 000136 001404 BEQ 30$ ;;IF EQ, NO - MATCHES ANY
454 000140 126365 000007G 000011 CMPB I.PRM+7(R3),C.MOD(R5) ;;LUN MATCH ?
455 000146 001344 BNE 10$ ;;IF NE, NO - CHECK NEXT ITEM
456 ;;FOUND AN ITEM WHICH FITS THE MASKS
457 000150 120127 000010 30$: CMPB R1,#10 ;;LENGTH AND TYPE ONLY ?
458 000154 001432 BEQ LTON ;;IF EQ, YES - DON'T REMOVE ITEM
459 000156 120027 000001 32$: CMPB R0,#NT.CON ;;IS THIS A CONNECT ?
460 000162 001005 BNE 40$ ;;IF NE, NO - CONTINUE
461 000164 152765 000004 000011 35$: BISB #CX.UNL,C.MOD(R5) ;;SET CONNECT DEQUEUED STATUS
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 9-1
GND - GET NETWORK DATA (SUBFUNCTIONS=230,040,250)
462 000172 010206 MOV R2,SP ;;RECOVER STACK
463 000174 000402 BR 50$
464 000176 40$: CALL REMQUE ;;REMOVE ITEM FROM THE MAILBOX
465 000202 50$: PUSH R3 ;;SAVE I/O PACKET ADDRESS
466 000204 010046 MOV R0,-(SP) ;;SAVE TYPE CODE IN THE HIGH BYTE AND ASSUME
467 000206 000316 SWAB (SP) ;;...A SUCCESSFUL COMPLETION STATUS
468 000210 005216 INC (SP) ;;...
469 000212 006300 ASL R0 ;;MAKE TYPE CODE INTO WORD OFFSET
470 000214 062703 000004G ADD #I.PRM+4,R3 ;;POINT TO USER BUFFER LENGTH PARAMETER
471 000220 011301 MOV (R3),R1 ;;GET LENGTH OF THE USER BUFFER
472 000222 014304 MOV -(R3),R4 ;;GET VIRTUAL ADDRESS OF THE USER BUFFER
473
474 .IF DF M$$MGE
475
476 000224 014303 MOV -(R3),R3 ;;GET RELOCATION BIAS OF THE USER BUFFER
477 000226 010367 172354 MOV R3,KISAR6 ;;...AND MAP TO IT
478
479 .ENDC
480
481 000232 016502 000016 MOV C.BUF+2(R5),R2 ;;ASSUME VIRTUAL ADDRESS OF INPUT BUFFER
482 000236 CALLR @TDISP-2(R0) ;;DISPATCH TO TYPE PROCESSOR
483
484
485 .SBTTL LTON - GET NETWORK DATA LENGTH AND TYPE ONLY (SUBFUNCTION=040)
486
487 000242 010206 LTON: MOV R2,SP ;;RECOVER STACK
488 000244 016501 000020 MOV C.CNT(R5),R1 ;;ASSUME LENGTH OF OPTIONAL DATA
489 000250 120027 000001 CMPB R0,#NT.CON ;;IS THIS A CONNECT ?
490 000254 001006 BNE 60$ ;;IF NE, NO - ASSUMPTION IS CORRECT
491 000256 016502 000016 MOV C.BUF+2(R5),R2 ;;GET CONBLOK ADDRESS
492 000262 016201 000136 MOV N.OPDL(R2),R1 ;;GET LENGTH OF THE OPTIONAL DATA
493 000266 062701 000142 ADD #N.CBL,R1 ;;ADD IN THE CONSTANT LENGTH OF THE CONBLK
494 000272 000300 60$: SWAB R0 ;;MOVE TYPE CODE TO THE HIGH BYTE
495 000274 005200 INC R0 ;;SET SUCCESS STATUS IN THE LOW BYTE
496 000276 CALLR IODUN ;;FINISH I/O REQUEST
497
498 000302 012700 000262 70$: MOV #IE.NDA&377,R0 ;;NO DATA STATUS
499 000306 CALLR IODUN1
500
501 000312 85$: RETURN ;;RETURN TO CALLER
502 .DSABL LSB
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 10
CONNECT PENDING NETWORK DATA PROCESSING
504 .SBTTL CONNECT PENDING NETWORK DATA PROCESSING
505
506 000314 010524 CON: MOV R5,(R4)+ ;;COPY CCB ADDRESS TO USER BUFFER
507 000316 162701 000002 SUB #2,R1 ;;ADJUST REMAINING COUNT IN USER BUFFER
508 000322 003433 BLE 10$ ;;IF LE, USER BUFFER FULL
509 ;;SETUP TO MOVE DESTINATION DESCRIPTOR
510 000324 012700 000026 MOV #N.SND-N.SEGZ,R0 ;; DESCRIPTOR SIZE
511 000330 012702 000006 MOV #N.SEG,R2 ;; DESCRIPTOR OFFSET
512 000334 CALL BLXIT ;;MOVE DESCRIPTOR
513 000340 003424 BLE 10$ ;;IF LE, USER BUFFER FULL
514 ;;SETUP TO MOVE SOURCE NODE NAME
515 000342 012700 000006 MOV #N.SFM-N.SND,R0 ;; NODE NAME SIZE
516 000346 012702 000000 MOV #N.NODE,R2 ;; NODE NAME OFFSET
517 000352 CALL BLXIT ;;MOVE NODE NAME
518 000356 003415 BLE 10$ ;;IF LE, USER BUFFER FULL
519 ;;SETUP TO MOVE SOURCE DESCRIPTOR THROUGH USER DATA
520 000360 012700 000104 MOV #N.CDA-N.SFM,R0 ;; SIZE OF SOURCE DESCRIPTOR, ACCESS, AND DATA LENGTH
521 000364 016502 000016 MOV C.BUF+2(R5),R2 ;;GET CONBLK ADDRESS
522 000370 066200 000136 ADD N.OPDL(R2),R0 ;;ADD IN THE LENGTH OF THE OPTIONAL DATA
523 000374 012702 000034 MOV #N.SFMT,R2 ;; DESCRIPTOR OFFSET
524 000400 CALL BLXIT ;;MOVE DESCRIPTOR
525 000404 002002 BGE 10$ ;;IG GE, NO BUFFER OVERFLOW
526 000406 012716 000402 MOV #<NT.CON*400+IS.DAO>,(SP) ;;SET SUCCESS WITH OVERFLOW STATUS
527 000412 10$: ;;REFERENCE LABEL
528
529 000412 016603 000002 FINIO: MOV 2(SP),R3 ;;GET ADDRESS OF I/O PACKET
530 000416 166304 000002G SUB I.PRM+2(R3),R4 ;;COMPUTE NUMBER OF BYTES TRANSFERRED
531 000422 010401 MOV R4,R1 ;;COPY BYTE COUNT
532 000424 000425 BR FINI1 ;;CLEAN STACK AND COMPLETE I/O
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 11
INTERRUPT MESSAGE NETWORK DATA PROCESSING
534 .SBTTL INTERRUPT MESSAGE NETWORK DATA PROCESSING
535
536 000426 016546 000010 INT: MOV C.FNC(R5),-(SP) ;;MOVE LUN TO HIGH BYTE OF STACK
537 000432 016500 000020 MOV C.CNT(R5),R0 ;;GET INTERRUPT MESSAGE COUNT
538 000436 020100 CMP R1,R0 ;;COMPARE USER BUFFER SIZE WITH COUNT
539 000440 103004 BHIS 10$ ;;IF HIS, BUFFER LARGE ENOUGH
540 000442 112766 000000C 000002 MOVB #IE.DAO&377,2(SP) ;;ELSE INDICATE DATA OVERRUN
541 000450 010100 MOV R1,R0 ;; AND USE DESTINATION BUFFER SIZE
542 000452 110016 10$: MOVB R0,(SP) ;;SAVE NUMBER OF BYTES TRANSFERRED
543 000454 001404 BEQ 20$ ;;IF EQ, NO DATA TO TRANSFER
544
545 .IF DF M$$MGE
546
547 000456 016501 000014 MOV C.BUF(R5),R1 ;;GET SOURCE APR6 BIAS
548
549 .ENDC
550
551 000462 CALL BLXIO ;;MOVE DATA FROM CCB TO USER BUFFER
552
553 000466 20$: CALLC USRRCI ;;RETURN INTERRUPT RESOURCES TO NSP
554 000476 POP R1 ;;GET NUMBER OF BYTES TRANSFERRED
555
556 000500 FINI1: POP R0 ;;GET TYPE CODE AND COMPLETION STATUS
557 000502 POP R3 ;;RECOVER ADDRESS OF I/O PACKET
558 000504 RECMAP ;;RECOVER ACP APR6 MAPPING
559 000512 CALLR IODUN ;;COMPLETE I/O REQUEST
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 12
USER DISCONNECT AND USER/NETWORK ABORT NETWORK DATA PROCESSING
561 .SBTTL USER DISCONNECT AND USER/NETWORK ABORT NETWORK DATA PROCESSING
562
563 .ENABL LSB
564
565 000516 016501 000004 ABO: MOV C.NSP(R5),R1 ;;COPY NSP ERROR CODE
566 000522 000402 BR 10$ ;;JOIN COMMON CODE
567
568 000524 ABT: ;;REFERENCE LABEL
569 000524 DSC: CALL MVDAT ;;MOVE OPTIONAL DATA INTO THE USER BUFFER
570
571 ;;STORE DISCONNECT CONTEXT IN I/O PACKET
572 000530 10$: RECMAP ;;RESTORE ACP APR6 MAPPING
573 000536 POP <R0,R3> ;;GET TYPE CODE AND I/O PACKET ADDRESS
574 000542 010063 000014G MOV R0,I.PRM+14(R3) ;; AND STORE TYPE CODE IN THE I/O PACKET
575 000546 110163 000016G MOVB R1,I.PRM+16(R3) ;; OPTIONAL DATA COUNT/REASON CODE
576 000552 005000 CLR R0 ;;GET LUN FOR THIS
577 000554 156500 000011 BISB C.MOD(R5),R0 ;; LINK
578 000560 110063 000017G MOVB R0,I.PRM+17(R3) ;; AND STORE IT IN THE I/O PACKET
579 000564 CALL MAPHDR ;;GET POINTER TO USER TASK HEADER
580 000570 CALL MAPLUN ;; " " " 2ND LUN WORD
581 000574 052710 000001 BIS #1,(R0) ;;INTERLOCK USER'S LUN TO PREVENT FURTHER I/O REQUESTS
582 000600 011004 MOV (R0),R4 ;;GET WINDOW BLOCK ADDRESS
583 000602 005304 DEC R4 ;;CLEAR INTERLOCK BIT IN ADDRESS
584 000604 010364 000014 MOV R3,W.PIO(R4) ;;STORE I/O PACKET IN WINDOW BLOCK
585 ;;SET UP CCB FOR DISCONNECT COMPLETION
586 000610 005065 000004 CLR C.NSP(R5) ;;CLEAR PDV (USER INTERFACE)
587 000614 116465 000011 000004 MOVB W.ULA(R4),C.NSP(R5) ;; USER LINK ADDRESS
588 ;;I/O PACKET WILL COMPLETE WHEN DISCONNECT IS COMPLETE
589 000622 016504 000016 MOV C.BUF+2(R5),R4 ;;GET ADDRESS OF OPTIONAL DATA
590 000626 001404 BEQ 20$ ;;IF EQ, NO OPTIONAL DATA
591 000630 CALL $CCBRT ;;OTHERWISE RETURN CCB USED AS THE OPTIONAL DATA BUFFER
592 000634 005065 000016 CLR C.BUF+2(R5) ;;CLEAR 1ST BUFFER DESCRIPTOR ADDRESS
593 000640 005065 000020 20$: CLR C.CNT(R5) ;;CLEAR 1ST BUFFER DESCRIPTOR BYTE COUNT
594 000644 CALLR USRABO ;;CALL NSP TO FINISH THE DISCONNECT SEQUENCE
595 ;;NEVER AN ERROR SINCE RESPONSE TO A DISCONNECT NOTIFICA
596 .DSABL LSB
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 13
MOP EVENT REPORT PROCESSING
598 .SBTTL MOP EVENT REPORT PROCESSING
599
600 000650 016503 000020 MOP: MOV C.CNT(R5),R3 ;;GET EVENT DATA COUNT ;AP0002
601 000654 020103 CMP R1,R3 ;;COMPARE WITH USER BUFFER SIZE ;AP0002
602 000656 103003 BHIS 10$ ;;IF NOT LARGE ENOUGH ;AP0002
603 000660 012716 000000C MOV #IE.DAO&377,(SP) ;;SIGNAL DATA OVERRUN ;AP0002
604 000664 010103 MOV R1,R3 ;;AND USE DESTINATION BUFFER SIZE ;AP0002
605 000666 010301 10$: MOV R3,R1 ;;IF HE WANTS SOMETHING ;AP0002
606 000670 001407 BEQ 70$ ;;THEN ;AP0002
607 000672 010402 MOV R4,R2 ;;GET DESTINATION ADDRESS ;AP0002
608 000674 $MVFBF R5,C.BUF ;;AND COPY DATA OVER. ;AP0002
609 000710 010504 70$: MOV R5,R4 ;;COPY CCB ADDR ;AP0005
610 000712 CALL $CCBCL ;;GET RID OF THE CCB AND BUFFER ;AP0005
611 000716 000670 BR FINI1 ;;CLEAN STACK AND COMPLETE I/O REQUEST ;**-5
612
613 ;BH0003
614 .SBTTL CCB & DATA BUFFER CLEANUP ;BH0003
615 000720 026427 000016 140000 $CCBCL::CMP C.BUF+2(R4),#140000 ;;IF BUFFER IS MAPPED ;AP0005
616 000726 103415 BLO 20$ ;;THEN ;BH0003
617 000730 132764 000004 000003 BITB #CB.RDB,C.BID(R4) ;;CHECK IF RDB ;BH0003
618 000736 001402 BEQ 10$ ;;IF SO, ;BH0003
619 000740 CALLR $LDBRT ;;RETURN CCB/RDB ;BH0003
620 ;BH0003
621 000744 10$: SAVMAP ;;($CSBRT DESTROYS APR6) ;AP0006
622 000750 CALL $CSBRT ;;OR CCB/SDB ;AP0006
623 000754 RESMAP ;AP0006
624 000760 RETURN ;AP0006
625 ;BH0003
626 000762 20$: CALLR $CCBRT ;;OTHERWISE RETURN CCB ONLY. ;BH0003
627
628 .SBTTL LOCAL DATA MOVE SUBROUTINE
629
630 000766 016500 000020 MVDAT: MOV C.CNT(R5),R0 ;;GET EVENT DATA COUNT
631 000772 020100 CMP R1,R0 ;;COMPARE USER BUFFER SIZE WITH COUNT
632 000774 103004 BHIS 10$ ;;IF HIS, BUFFER LARGE ENOUGH
633 000776 112766 000000C 000002 MOVB #IE.DAO&377,2(SP) ;;ELSE INDICATE DATA OVERRUN
634 001004 010100 MOV R1,R0 ;; AND USE DESTINATION BUFFER SIZE
635 001006 010001 10$: MOV R0,R1 ;;SAVE NUMBER OF BYTES TRANSFERRED
636 001010 001403 BEQ 30$ ;;IF EQ, NO ROOM FOR ANY DATA
637 001012 112224 20$: MOVB (R2)+,(R4)+ ;;MOVE THE DATA
638 001014 SOB R0,20$ ;;...
639 001020 30$: RETURN ;;RETURN TO CALLER
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 14
GLN - GET LOCAL NODE PARAMETERS
641 .SBTTL GLN - GET LOCAL NODE PARAMETERS
642
643 001022 GLN: SWSTK$ 20$ ;SWITCH TO SYSTEM STATE
644 001026 PUSH R3 ;;SAVE ADDRESS OF I/O PACKET
645 001030 012746 000002 MOV #IS.DAO,-(SP) ;;ASSUME BUFFER OVERRUN ERROR
646 001034 062703 000004G ADD #I.PRM+4,R3 ;;POINT TO USER BUFFER SIZE
647 001040 011301 MOV (R3),R1 ;;GET LENGTH OF USER BUFFER
648 001042 014304 MOV -(R3),R4 ;;GET VIRTUAL ADDRESS OF USER BUFFER
649
650 .IF DF M$$MGE
651
652 001044 014303 MOV -(R3),R3 ;;GET RELOCATION BIAS OF THE USER BUFFER
653 001046 010367 172354 MOV R3,KISAR6 ;;MAP KERNEL APR6 TO USER BUFFER
654
655 .ENDC
656
657 001052 012700 000006 MOV #6,R0 ;;SET NODE NAME LENGTH
658 001056 012702 000000G MOV #$NTNAM,R2 ;;GET NODE NAME ADDRESS (FROM NSPTB)
659 001062 CALL BLXI2 ;;MOVE THE NODE NAME INTO THE USER BUFFER
660
661 001066 020127 000002 CMP R1,#2 ;;ENOUGH ROOM FOR SEGMENT SIZE ?
662 001072 002406 BLT 10$ ;;IF LT, NO - NEED FULL WORD
663 001074 016714 000000G MOV $RDBSZ,(R4) ;;COMPUTE DEFAULT SEGMENT SIZE
664 001100 162724 000042 SUB #N$$OVR,(R4)+ ;;...
665 001104 012716 000000G MOV #IS.SUC,(SP) ;;SET SUCCESS STATUS
666 001110 10$: CALLR FINIO ;;CLEAN STACK, COMPLETE I/O, AND RETURN TO USER STATE
667
668 001114 20$: RETURN ;RETURN TO CALLER
669
670 000001 .END
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 14-1
SYMBOL TABLE
ABO 000516R CS.ROV= 000004 ER$IFC= 000030 FS.TRM= 003000 LF.HSF= 010000
ABT 000524R CS.RSN= 010000 ER$ILS= 000043 FS.XKL= 002000 LF.INR= 000100
ACKMAS= 170000 CS.SUC= 000001 ER$IMG= 000053 FS.XOF= 010000 LF.INT= 000400
ACKPRE= 100000 CS.TMO= 020000 ER$MLB= 000006 FS.XON= 007000 LF.LCL= 040000
ACKRES= 060000 CX.GDQ= 000001 ER$NOD= 000002 F$$LVL= 000001 LF.MMF= 100000
ACKWRA= 010000 CX.REQ= 000002 ER$NSD= 000003 GLN 001022R LF.MSF= 040000
A$$CHK= 000000 CX.UNL= 000004 ER$RES= 000001 GND 000042R LF.NKR= 000200
A$$CPS= 000000 C$$CKP= 000000 ER$SSR= 000000 GTMAIL 000140R 002 LF.NKS= 000400
A$$PRI= 000000 C$$ORE= 000400 ER$SSS= 000045 G$$TPP= 000000 LF.NPN= 000001
A$$TRP= 000000 C$$RSH= 177564 ER$STA= 000051 G$$TSS= 000000 LF.NTS= 002000
A.NAK = 010000 C.BID 000003 ER$TCN= 000040 G$$TTK= 000000 LF.RSU= 100000
BLXIO = ****** GX C.BUF 000014 ER$TCO= 000041 G$$WRD= 000000 LS.DLS= 000200
BLXIT = ****** GX C.BUF1 000014 ER$TPA= 000010 H.NML = ****** GX LS.FCC= 000004
BLXI2 = ****** GX C.BUF2 000024 ER$UOB= 000004 IE.DAO= ****** GX LS.FC0= 000001
CB.CCB= 000002 C.CNT 000020 E$$XPR= 000000 IE.NDA= 177662 LS.FC1= 000002
CB.RDB= 000004 C.CNT1 000020 FC.CCP= 000020 IE.NNT= 177660 LS.ILS= 000200
CCBGT = ****** GX C.CNT2 000030 FC.CTL= 000006 IE.NRJ= 177666 LS.MAK= 000020
CCBREJ= ****** GX C.FLG 000022 FC.KCP= 000016 IE.URJ= 177667 LS.MNK= 000040
CE.ABO= 100362 C.FLG1 000022 FC.KIL= 000004 INT 000426R LS.RES= 000360
CE.DIS= 100366 C.FLG2 000032 FC.RCE= 000002 IODUN = ****** GX LS.RSV= 000300
CE.ERR= 100370 C.FNC 000010 FC.RCP= 000014 IODUN1= ****** GX LTON 000242R
CE.MOP= 100372 C.LIN 000006 FC.TIM= 000010 IOFLS = ****** GX L$$ASG= 000000
CE.NTE= 100361 C.LNK 000000 FC.XCP= 000012 IOREDO= ****** GX L$$DRV= 000000
CE.RTE= 100376 C.MOD 000011 FC.XME= 000000 IOSUC = ****** GX L$$P11= 000001
CE.SRC= 100364 C.NSP 000004 FE.CAL= 000040 IS.DAO= 000002 L$$11R= 000000
CE.TMO= 100374 C.RSV 000002 FE.DRV= 000010 IS.SUC= ****** GX L.CIQ 000026
CF.EOM= 000004 C.STA 000007 FE.EXP= 000200 I$$RAR= 000000 L.DCR 000036
CF.HDR= 000020 C.STS 000012 FE.EXT= 000001 I$$RDN= 000000 L.FLG 000012
CF.LB = 100000 DF$ADJ= 020000 FE.EXV= 000004 I.LN2 = ****** GX L.LDA 000024
CF.SOM= 000010 DF$DWN= 001000 FE.LSI= 000400 I.PRM = ****** GX L.LIA 000026
CF.SYN= 000040 DF$FRE= 070000 FE.MUP= 000002 I.TCB = ****** GX L.LLA 000002
CF.TRN= 000100 DF$LCL= 040000 FE.MXT= 040000 I.UCB = ****** GX L.LNG1 000054
CLS 000320R 002 DF$LNK= 004000 FE.NLG= 100000 KDSAR0= 172360 L.LNO 000022
CLS1 000330RG 002 DF$REM= 010000 FE.PKT= 000100 KDSDR0= 172320 L.LSA 000032
CLS2 000352RG 002 DF$RES= 002000 FE.PLA= 000020 KISAR0= 172340 L.LSF 000044
CL$ACK= 000040 DF$TMP= 100000 FINIO 000412R KISAR5= 172352 L.LVL 000001
CL$MFL= 000010 DSC 000524R FINI1 000500R KISAR6= 172354 L.NDA 000034
CL$NRM= 000020 D$CHN 000002 FLSHIO= ****** GX KISAR7= 172356 L.NIN 000016
CL$SFL= 000004 D$FLG 000000 FLSHMB= ****** GX KISDR0= 172300 L.NLA 000036
CL$TYP= 000001 D$LEN 000014 FS.AST= 000000 KISDR6= 172314 L.NSTA 000025
CL.MU1= 000001 D$LNG 000005 FS.CIB= 002000 KISDR7= 172316 L.NXN 000014
CL.MU2= 000002 D$NAM 000006 FS.CRA= 001000 K$$CNT= 177546 L.PDV 000041
CL.RES= 177774 D$USE 000004 FS.DIS= 013000 K$$CSR= 177546 L.REM 000006
CMODE = 140000 D$$BUG= 177514 FS.DVC= 001000 K$$LDC= 000000 L.RLA 000010
CON 000314R D$$ISK= 000000 FS.ENB= 012000 K$$TPS= 000074 L.RNO 000020
CS.ABO= 000100 D$$L11= 000001 FS.GET= 006000 LA.ACK= 100000 L.STA 000000
CS.BUF= 000200 D$$YNC= 000000 FS.INI= 000000 LA.MSK= 170000 L.TC 000042
CS.DCR= 000400 D$$YNM= 000000 FS.KIL= 000000 LA.NAK= 110000 L.TIC 000043
CS.DEV= 000002 ER$ABO= 000046 FS.LTM= 001000 LA.NMS= 010000 L.TIPD 000005
CS.DIS= 000040 ER$ABT= 000011 FS.MNT= 004000 LA.RES= 060000 L.TIPI 000004
CS.ENB= 000020 ER$ACC= 000042 FS.MSN= 014000 LD$LP = 000000 L.UDQ 000034
CS.EOF= 000001 ER$ACT= 000044 FS.RNG= 011000 LF.DFL= 000060 L.ULA 000040
CS.ERR= 100000 ER$CDI= 000052 FS.RTN= 001000 LF.DSP= 000040 L.USA 000030
CS.HFE= 002000 ER$COM= 000047 FS.SET= 005000 LF.DST= 000020 L.USTA 000024
CS.LST= 040000 ER$FCF= 000050 FS.STM= 000000 LF.FPN= 000010 L.XQ1 000046
CS.MTL= 004000 ER$FMT= 000005 FS.STP= 002000 LF.HF0= 001000 L.XQ2 000050
CS.RNG= 000010 ER$GEN= 000007 FS.STR= 001000 LF.HMF= 020000 L.XQ3 000052
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 14-2
SYMBOL TABLE
MAPHDR= ****** GX NE$SSR= 000000 NT$ILN= 000032 N$$USR= 000001 OPN 000024R 002
MAPLUN= ****** GX NE$SSS= 000045 NT$IND= 000024 N.ACNT 000116 PD$NSP= ****** GX
MA.DA = 000000 NE$STA= 000051 NT$INL= 000026 N.ACTL 000114 PF$EIP= 000100
MA.IL = 000020 NE$TCN= 000040 NT$INT= 000004 N.CAC 000120 PF$ENB= 000200
MC.CC = 000040 NE$TCO= 000041 NT$LS = 000014 N.CACC 000116 PF$OFF= 000000
MC.CI = 000020 NE$TPA= 000010 NT$MOD= 000012 N.CBL = 000142 PF$RLI= 000002
MC.DC = 000100 NE$UOB= 000004 NT$NAK= 000022 N.CDA 000142 PF$RRI= 000004
MC.DI = 000060 NE.ABO= 177776 NT$OFF= 000026 N.CDAC 000140 PF$RVE= 000001
MC.NO = 000000 NE.ACT= 177771 NT$ON = 000002 N.CID 000064 PF$RVR= 000040
MC.ST = 000120 NE.CLS= 177767 NT$QRY= 000014 N.CIDC 000062 PF$SLI= 000002
MD.BM = 000040 NE.DIS= 177777 NT$REJ= 000004 N.CPS 000106 PF$SRI= 000004
MD.EM = 000100 NE.FMT= 177770 NT$ROU= 000022 N.CPSC 000104 PF$SRT= 000001
MD.ILS= 000040 NE.NDT= 177766 NT$RTI= 000010 N.CTL 000000 PF$STA= 000003
MD.IM = 000020 NE.NOD= 177774 NT$RTN= 000000 N.DDE 000010 PF$SUB= 000010
MF.ACK= 000004 NE.REJ= 177775 NT$SNG= 000006 N.DDEC 000006 PF$UP = 000001
MF.CTL= 000010 NE.RES= 177773 NT$STP= 000004 N.DDL1 000012 PIRQ = 177772
MF.DAT= 000000 NE.TIM= 177772 NT$XOF= 000020 N.DDL2 000016 PMODE = 030000
MOP 000650R NI.FLI= 000002 NT$XON= 000016 N.DDS1 000014 PR0 = 000000
MPAR = 172100 NI.FRI= 000004 NT.ABO= 000005 N.DDS2 000020 PR1 = 000040
MPCSR = 177746 NI.FRT= 000001 NT.ABT= 000004 N.DFM 000004 PR4 = 000200
MSGHDR= 000007 NI.FUB= 000010 NT.ACK= 000001 N.DFMT 000010 PR5 = 000240
MS.AST= 000010 NI.INI= 000001 NT.BOM= 000040 N.DGP 000006 PR6 = 000300
MS.CIP= 000200 NI.RLI= 000002 NT.CON= 000001 N.DGRP 000012 PR7 = 000340
MVDAT 000766R NI.RRI= 000004 NT.DSC= 000003 N.DNM 000014 PS = 177776
M$$CRB= 000124 NI.RVE= 000001 NT.EOM= 000100 N.DNMC 000012 PS$NTI= 000003
M$$CRX= 000000 NI.VER= 000002 NT.FCN= 037400 N.DOBJ 000011 PS$OFF= 000000
M$$FCS= 000000 NO.DTR= 000077 NT.INT= 000002 N.DOT 000005 PS$STR= 000001
M$$MGE= 000000 NO.FAL= 000021 NT.LOG= 000011 N.DUS 000010 PS$UP = 000005
M$$OVR= 000000 NO.FA1= 000001 NT.MD1= 000420 N.DUSR 000014 PS$VER= 000004
M.MAIL 000012 NO.NCU= 000023 NT.MFL= 000002 N.LGTH= 000160 PS$WT = 000002
M.MAX 000007 NO.RTL= 000022 NT.MOD= 000020 N.NODE 000000 P$CHN 000004
M.MBL = 000016 NO.TAS= 000000 NT.MOM= 000000 N.OPDL 000136 P$CNT 000005
M.NAST 000005 NO.TCL= 000017 NT.MOP= 000010 N.OPTD 000140 P$FRQ 000012
M.NEXT 000000 NO.TC1= 000005 NT.NAK= 000002 N.PASL 000102 P$FSP 000013
M.SPA 000010 NO.TLK= 000020 NT.NFL= 000000 N.PASS 000104 P$LCD 000002
M.STAT 000004 NP$RTR= 000003 NT.SFL= 000001 N.RQDL 000060 P$LEN 000014
M.TASK 000002 NR$IFC= 000030 NT.SOL= 000140 N.RQID 000062 P$LST 000000
M.USE 000006 NS.BOM= 000040 NT.XOF= 000004 N.RSRV= 000030 P$NOD 000010
NC.FM0= 000000 NS.EOM= 000100 NT.XON= 000010 N.SDE 000042 P$PFQ 000006
NC.FM1= 000001 NS.MFL= 000003 N$ACQ 000000 N.SDEC 000040 P$TIM 000003
NC.FM2= 000002 NS.MOM= 000000 N$ICF 000006 N.SDL1 000036 P$$P45= 000000
NETTIM= 000005 NS.NFL= 000001 N$LNI 000010 N.SDL2 000042 P$$WRD= 000000
NE$ABO= 000046 NS.SET= 000002 N$LVC 000022 N.SDS1 000040 Q$$OPT= 000010
NE$ABT= 000011 NS.SFL= 000002 N$NOD 000032 N.SDS2 000056 REMQUE= ****** GX
NE$ACC= 000042 NS.SOL= 000140 N$PLD 000026 N.SEG 000006 RF.CLN= 000000
NE$ACT= 000044 NS.SUC= 000001 N$STS 000042 N.SEGZ 000002 RF.CTL= 000003
NE$CDI= 000052 NT$ABO= 000022 N$TCB 000004 N.SFM 000036 RF.TIM= 177400
NE$COM= 000047 NT$ACC= 000002 N$TMP 000012 N.SFMT 000034 RF.TM0= 000400
NE$FCF= 000050 NT$ADS= 000000 N$VER 000036 N.SGP 000040 RF.WTD= 000020
NE$FMT= 000005 NT$AKD= 000016 N$$DAT= 000030 N.SGRP 000036 RF.WTM= 000030
NE$GEN= 000007 NT$AKI= 000020 N$$DIS= 000020 N.SND 000030 RF.WTS= 000010
NE$ILS= 000043 NT$CC = 000012 N$$INT= 000020 N.SNM 000046 RH.CNT= 000001
NE$IMG= 000053 NT$CON= 000000 N$$LDV= 000001 N.SNMC 000044 RH.EFM= 000020
NE$MLB= 000006 NT$DAT= 000002 N$$MOV= 000010 N.SOBJ 000035 RH.HDR= 000002
NE$NOD= 000002 NT$DIS= 000010 N$$OPT= 000020 N.SOT 000037 RH.PRI= 000014
NE$NSD= 000003 NT$IDC= 000034 N$$OVR= 000042 N.SUS 000042 RH.PR1= 000004
NE$RES= 000001 NT$IDN= 000030 N$$SYS= 000001 N.SUSR 000040 RH.RFM= 000100
NSNET MACRO M1110 06-NOV-79 10:12 PAGE 14-3
SYMBOL TABLE
R$$DER= 000000 S$FMT 000012 UISAR5= 177652 V.TRCT 000000 W.PIO 000014
R$$K11= 000001 S$LEN 000040 UISAR6= 177654 V.ULT 000006 W.RCVQ 000026
R$$SND= 000000 S$LNK 000022 UISAR7= 177656 V.ULTE 000010 W.SEGZ 000012
R$$11M= 000000 S$MLK 000024 UISDR0= 177600 V.VBL = 000026 W.SNDQ 000022
SCNLUN= ****** GX S$NKS 000010 UISDR4= 177610 V.1CPQ 000022 W.STAT 000004
SCNQUE= ****** GX S$RES 000014 UISDR5= 177612 WINDOW= 004000 W.TASK 000002
SDISP 000000R S$SEC 000000 UISDR6= 177614 WS.DIC= 000004 W.ULA 000011
SISDR0= 172200 S$SNI 000016 UISDR7= 177616 WS.DIP= 000100 W.WBL = 000040
SPA 000726R 002 S$UMR 000004 USRABO= ****** GX WS.EST= 000002 X$$DBT= 000000
SR0 = 177572 S$UMS 000002 USRRCI= ****** GX WS.INT= 000040 $CALLX= ****** GX
SR3 = 172516 S$UNI 000020 U.VCB = ****** GX WS.KIP= 000200 $CCBCL 000720RG
ST$CC = 000002 S$$WRG= 000000 VF$RCV= 100000 WS.MOD= 000010 $CCBRT= ****** GX
ST$CIR= 000003 S$$YSZ= 007600 VF$XMT= 040000 WS.STA= 000020 $CSBRT= ****** GX
ST$CIS= 000001 TDISP 000020R V$FLG 000000 WS.VE1= 000001 $DEACB= ****** GX
ST$DAT= 000005 TPS = 177564 V$LEN 000022 W.CCBU 000006 $IFCER= ****** GX
ST$DID= 000015 T$$KMG= 000000 V$RCV 000002 W.CINT 000032 $LDBRT= ****** GX
ST$DIP= 000006 T$$MIN= 000000 V$XMT 000012 W.CSND 000020 $MVFBF= ****** GX
ST$DIR= 000012 T.NAM = ****** GX V$$CTR= 001000 W.CTL 000000 $NCUNM= ****** GX
ST$DIS= 000014 UBMPR = 170200 V.CULT 000004 W.INTQ 000034 $NETQI 000000RG 002
ST$UDI= 000013 UDSAR0= 177660 V.GENQ 000016 W.LLA 000010 $NSNCU= ****** GX
ST$UNR= 000011 UDSDR0= 177620 V.MBXQ 000012 W.LUN 000007 $NSVCB= ****** GX
SWR = 177570 UISAR0= 177640 V.TIME 000003 W.MBOX 000016 $NTNAM= ****** GX
S$EMR 000006 UISAR4= 177650 V.TIMR 000002 W.MODC 000005 $RDBSZ= ****** GX
. ABS. 000160 000
001116 001
$NSACP 001014 002
ERRORS DETECTED: 0
VIRTUAL MEMORY USED: 21699 WORDS ( 85 PAGES)
DYNAMIC MEMORY: 20620 WORDS ( 79 PAGES)
ELAPSED TIME: 00:01:01
NSNET,[131,34]NSNET/CR/-SP=[130,10]NETLIB/ML,RSXMC4/PA:1,[131,10]NSNET
NSNET CREATED BY MACRO ON 6-NOV-79 AT 10:13 PAGE 1
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
ABO 000516 R 3-117 #12-565
ABT 000524 R 3-116 #12-568
BLXIO = ****** GX 11-551
BLXIT = ****** GX 10-512 10-517 10-524
BLXI2 = ****** GX 14-659
CB.RDB = 000004 13-617
CCBGT = ****** GX 7-317
CCBREJ = ****** GX 6-235
CLS 000320 R 3-101 #7-270
CLS1 000330 RG #7-273
CLS2 000352 RG #7-290
CON 000314 R 3-113 #10-506
CX.UNL = 000004 8-395 9-442 9-461
C.BID 000003 13-617
C.BUF 000014 *7-325 9-481 9-491 10-521 11-547 12-589 *12-592 13-608 13-608
13-615
C.CNT 000020 *7-326 9-488 11-537 *12-593 13-600 13-630
C.FNC 000010 6-227 8-393 9-439 11-536
C.MOD 000011 8-395 9-442 9-454 *9-461 12-577
C.NSP 000004 6-221 *7-323 *7-324 12-565 *12-586 *12-587
DSC 000524 R 3-115 #12-569
ER$TCO = 000041 6-234
FINIO 000412 R #10-529 14-666
FINI1 000500 R 10-532 #11-556 13-611
FLSHIO = ****** GX 7-321
FLSHMB = ****** GX 7-274
GLN 001022 R 3-107 #14-643
GND 000042 R 3-103 3-104 3-105 #9-430
GTMAIL 000140 R 5-192 #6-215
H.NML = ****** GX 7-358 *7-361
IE.DAO = ****** GX 11-540 13-603 13-633
IE.NDA = 177662 9-498
INT 000426 R 3-114 #11-536
IODUN = ****** GX 8-401 9-496 11-559
IODUN1 = ****** GX 9-499
IOFLS = ****** GX 7-311
IOREDO = ****** GX 7-338
IOSUC = ****** GX 5-193 7-372
IS.DAO = 000002 10-526 14-645
IS.SUC = ****** GX 8-400 14-665
I.LN2 = ****** GX 4-142
I.PRM = ****** GX 5-186 8-384 9-448 9-450 9-452 9-454 9-470 10-530 *12-574
*12-575 *12-578 14-646
I.TCB = ****** GX 5-174
I.UCB = ****** GX 5-169
KISAR6 = 172354 *9-477 *11-558 *12-572 13-621 *13-623 *14-653
LTON 000242 R 9-458 #9-487
MAPHDR = ****** GX 7-271 12-579
MAPLUN = ****** GX 7-359 12-580
MOP 000650 R 3-119 3-120 #13-600
MS.CIP = 000200 7-276
MVDAT 000766 R 12-569 #13-630
NSNET CREATED BY MACRO ON 6-NOV-79 AT 10:13 PAGE 2
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
M$$MGE = 000000 9-474 11-545 11-553 11-553 11-558 12-572 13-608 13-621 13-623
14-650
M.MAIL 000012 6-241 *6-242 8-387 9-432
M.MAX 000007 6-229 6-231
M.MBL = 000016 7-369
M.SPA 000010 *7-277 7-337 7-368 *8-384
M.STAT 000004 *7-276
M.TASK 000002 6-221 7-294
M.USE 000006 6-231 *6-239 7-290
NT.CON = 000001 6-227 8-393 9-440 9-459 9-489 10-526
N$$OVR = 000042 14-664
N.CBL = 000142 9-493
N.CDA 000142 10-520
N.NODE 000000 10-516
N.OPDL 000136 9-492 10-522
N.SEG 000006 10-511
N.SEGZ 000002 10-510
N.SFM 000036 10-515 10-520
N.SFMT 000034 10-523
N.SND 000030 10-510 10-515
OPN 000024 R 3-100 #5-169
PD$NSP = ****** GX 11-553
REMQUE = ****** GX 7-355 9-464
RSX11D = ****** 11-553 11-553
SCNLUN = ****** GX 7-295
SCNQUE = ****** GX 7-350 8-388 9-434
SDISP 000000 R #3-100 4-147
SPA 000726 R 3-102 #8-382
TDISP 000020 R #3-113 9-482
T.NAM = ****** GX 5-175 5-177
UISAR6 = 177654 11-558 12-572
USRABO = ****** GX 7-329 12-594
USRRCI = ****** GX 11-553
U.VCB = ****** GX 5-170
V.GENQ 000016 6-216 6-246
V.MBXQ 000012 5-171 *5-172 7-349
V.TIMR 000002 *6-248
WS.DIP = 000100 7-301 7-322 7-335
WS.KIP = 000200 7-306
W.MBOX 000016 7-336
W.PIO 000014 7-303 7-307 *7-309 *12-584
W.STAT 000004 7-301 *7-306 *7-322 *7-335
W.ULA 000011 7-324 12-587
$CALLX = ****** GX 11-553
$CCBCL 000720 RG 13-610 #13-615
$CCBRT = ****** GX 7-333 12-591 13-626
$CSBRT = ****** GX 13-622
$DEACB = ****** GX 7-370
$IFCER = ****** GX 3-106
$LDBRT = ****** GX 13-619
$MVFBF = ****** GX 13-608
$NCUNM = ****** GX 5-175 5-177
NSNET CREATED BY MACRO ON 6-NOV-79 AT 10:13 PAGE 3
SYMBOL CROSS REFERENCE CREF
SYMBOL VALUE REFERENCES
$NETQI 000000 RG #4-142
$NSNCU = ****** GX *5-179 7-364 *7-366
$NSVCB = ****** GX 7-348
$NTNAM = ****** GX 14-658
$RDBSZ = ****** GX 14-663
NSNET CREATED BY MACRO ON 6-NOV-79 AT 10:13 PAGE 4
MACRO CROSS REFERENCE CREF
MACRO NAME REFERENCES
CALL 5-191 5-192 6-235 7-270 7-271 7-274 7-297 7-311 7-317 7-321
7-329 7-333 7-338 7-351 7-355 7-359 7-370 8-382 8-390 9-430
9-436 9-464 10-512 10-517 10-524 11-551 12-569 12-579 12-580 12-591
13-610 13-622 14-643 14-659
CALLC #3-70 #11-553
CALLR #5-193 #7-372 #8-401 #9-482 #9-496 #9-499 #11-559 #12-594 #13-619 #13-626
#14-666
CALLX #3-70 11-553
CCBDF$ #3-64 #3-66
CNBDF$ #3-67 #3-68
DVBDF$ #3-60 #3-62
HWDDF$ #11-558 #11-558 #12-572 #12-572 #13-621 #13-621 #13-623 #13-623
LLWDF$ #3-60 #3-63
MAP #3-71
MBXDF$ #3-60 3-61
NSPSY$ #3-64 #3-65
NSSYM$ #3-67 #3-69
POP #3-86 #7-371 #11-554 #11-556 #11-557 #12-573
PUSH #3-80 #7-350 #8-388 #9-434 #9-465 #14-644
RECMAP #3-70 #11-558 #12-572
RESMAP #3-71 13-623
RESRG #3-70 #6-236 #6-245 #7-330 #7-340 #7-362
RETURN 5-194 6-249 7-375 8-403 9-501 13-624 13-639 14-668
SAVMAP #3-71 13-621
SAVRG #3-70 6-215 6-233 7-316 7-328 7-357
SOB #13-638
SWSTK$ #5-191 #7-270 #8-382 #9-430 #14-643
$MVFBF #3-71 #13-608