Trailing-Edge
-
PDP-10 Archives
-
BB-R595B-SM_11-9-85
-
mcb/sc/scres.lst
There is 1 other file named scres.lst in the archive. Click here to see a list.
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 1
30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (1)
; 0001 module SCRES ( ! System Interface and NSP Interface Resource Wait
; 0002 ident = 'X01330'
; 0003 ) =
; 0004 begin
; 0005 !
; 0006 ! COPYRIGHT (c) 1980, 1981, 1982
; 0007 ! DIGITAL EQUIPMENT CORPORATION
; 0008 ! Maynard, Massachusetts
; 0009 !
; 0010 ! This software is furnished under a license and may be used
; 0011 ! and copied only in accordance with the terms of such license
; 0012 ! and with the inclusion of the above copyright notice. This
; 0013 ! software or any other copies thereof may not be provided or
; 0014 ! otherwise made available to any other person. No title to
; 0015 ! and ownership of the software is hereby transferred.
; 0016 !
; 0017 ! The information in this software is subject to change
; 0018 ! without notice and should not be construed as a commitment
; 0019 ! by DIGITAL EQUIPMENT CORPORATION.
; 0020 !
; 0021 ! DIGITAL assumes no responsibility for the use or reliability
; 0022 ! of its software on equipment which is not supplied by
; 0023 ! DIGITAL.
; 0024 !
; 0025
; 0026
; 0027
; 0028 !++
; 0029 !
; 0030 ! FACILITY: Session Control
; 0031 !
; 0032 ! ABSTRACT: This module fields all interactions with the System
; 0033 ! Interface and NSP Interface, when potential resource
; 0034 ! waits are encountered.
; 0035 !
; 0036 ! ENVIRONMENT: MCB
; 0037 !
; 0038 ! AUTHOR: Buren Hoffman CREATION DATE: 7-Apr-80
; 0039 !
; 0040 ! MODIFIED BY:
; 0041 ! X01010 Changed code to use $byt_ptr macro in place of the
; 0042 ! ch$ptr macro.
; 0043 ! X01020 Repaired inconsistent linkage declarations to
; 0044 ! external routines.
; 0045 ! X01030 Fixed connect processing to put dest PIX in connect
; 0046 ! request sent to NSP.
; 0047 ! X01040 Don't set C_CHN in outgoing connect.
; 0048 ! X01050 Set proper state transition for connection refused
; 0049 ! inside of SC.
; 0050 ! X01060 Changed SX$CNW processing to ignore queued CCB when
; 0051 ! link is in CID state - i.e., waiting for response
; 0052 ! from other end.
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 2
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (1)
; 0053 ! X01070 Changed NR$CRW to try for immediate port replacement.
; 0054 ! X01080 PIX was not being set in output ccb from SX$ACW.
; 0055 ! X01090 PIX was not being set in several routines.
; 0056 ! X01100 Fixed problem of missing ref's in several declarations.
; 0057 ! X01110 Wrong CCB being forwarded to LLCRS in NR$DRW, NR$DTW,
; 0058 ! and NR$INW.
; 0059 ! X01120 Wrong LIX was being set in NR$CRW, on link reject.
; 0060 ! X01130 Fixed dot bug in call from SX$ABW to I$CLS.
; 0061 ! X01140 Link closing error in call to I$CLS in SX$ABW.
; 0062 ! X01150 Change to prevent two reject calls on same link
; 0063 ! X01160 Fixed dequeueing bug in SX$RJW
; 0064 ! X01170 Fix to assure proper optional data format is generated
; 0065 ! X01180 Minor documentation cleanup
; 0066 ! X01190 Connect accept was not recording ULA, and received data
; 0067 ! was not forwarding the eom indicator.
; 0068 ! X01200 Use new Comm/Exec to process linkage (.CRDAT for database)
; 0069 ! X01210 Modified connect-xmit call to NSP to use modified paramater
; 0070 ! list.
; 0071 ! X01220 Updated to use library calls, instead of requires.
; 0072 ! X01230 Moved link OPNer code call to SCDSP.
; 0073 ! X01240 Fixed disconnect reason processing.
; 0074 ! X01250 Fixed bug introduced in above fix.
; 0075 ! X01260 Fixed race between CNR and DSR.
; 0076 ! X01270 Changed Disconnect-Received code to pass reason
; 0077 ! code in C_PRM2, instead of in disconnect data.
; 0078 ! X01280 Changed Confidence-received call to be processed like a
; 0079 ! disconnect-received, with status code of S_ENUR. This
; 0080 ! change allows the task or process to synchronize with
; 0081 ! the vanishing link - instead of being surprised when it
; 0082 ! finds it gone.
; 0083 ! X01290 Optimization work.
; 0084 ! X01300 Bug fix in disconnect-received processing.
; 0085 !
; 0086 ! x01310 Use DSR space instead of LDB's for connect info
; 0087 ! x01320 Set local node number in when connecting to loop node
; 0088 ! x01330 move some code around in SX$ABW
; 0089 !
; 0090 !--
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 3
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (2)
; 0091 !
; 0092 ! INCLUDE FILES:
; 0093 !
; 0094 library 'SCPRM'; ! Our parameter and macro definitions
; 0095 library 'MCB:MCBLIB';
; 0096 library 'MCB:RSXLIB';
; 0097 library 'MCB:XPORTX';
; 0098 library 'MCB:SCSYS';
; 0099
; 0100 require 'NSP:NSINFO';
; 0212
; 0213 !
; 0214 ! TABLE OF CONTENTS:
; 0215 !
; 0216 forward routine
; 0217 NR$CRW: novalue, ! Connect Received
; 0218 NR$DRW: novalue, ! Disconnect Received
; 0219 NR$DTW: novalue, ! Data Received
; 0220 NR$INW: novalue, ! Interrupt Received
; 0221
; 0222 SX$ABW: novalue, ! Abort
; 0223 SX$ACW: novalue, ! Accept
; 0224 SX$CNW: novalue, ! Connect
; 0225 ! SX$DSW: novalue, ! Disconnect (See SX$ABW)
; 0226 SX$DRW: novalue, ! Data Request
; 0227 SX$IRW: novalue, ! Interrupt Request
; 0228 ! SX$MRW: novalue, ! Message Request (See SX$DRW)
; 0229 SX$RJW: novalue, ! Reject
; 0230 SX$SDW: novalue, ! Send Data
; 0231 SX$SIW: novalue; ! Send Interrupt
; 0232
; 0233 !
; 0234 ! MACROS:
; 0235 !
; 0236 !
; 0237 ! EQUATED SYMBOLS:
; 0238 !
; 0239 !
; 0240 ! OWN STORAGE:
; 0241 !
; 0242 !
; 0243 ! EXTERNAL REFERENCES:
; 0244 !
; 0245
; 0246 external routine
; 0247 CONBKI, ! Do connect block processing
; 0248 CONBKO, ! Do connect data translation
; 0249 STKCCB: novalue, ! Stack CCBs
; 0250
; 0251 I$CLS: novalue, ! NSP port closing
; 0252 I$OPN: novalue; ! NSP port opening
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 4
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (3)
; 0253 global routine NR$CRW (LNK): novalue =
; 0254
; 0255 !++
; 0256 ! FUNCTIONAL DESCRIPTION:
; 0257 ! Get resources to complete incoming connect notification.
; 0258 !
; 0259 ! FORMAL PARAMETERS:
; 0260 ! LNK Logical link block address
; 0261 !
; 0262 ! IMPLICIT INPUTS:
; 0263 ! CCB contents
; 0264 !
; 0265 ! IMPLICIT OUTPUTS:
; 0266 ! None
; 0267 !
; 0268 ! ROUTINE VALUE:
; 0269 ! COMPLETION CODES:
; 0270 ! None
; 0271 !
; 0272 ! SIDE EFFECTS:
; 0273 ! None
; 0274 !--
; 0275 begin
; 0276 $sc_get_data_base (SCDB);
; 0277 map LNK: ref block field (LLT_FIELDS);
; 0278 local
; 0279 CCB: ref block field (C_FIELDS),
; 0280 LCCB: ref block field (C_FIELDS);
; 0281
; 0282 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0283 CMQRM$ (LNK [L_IQUE], CCB); ! Got new CCB, so deque old one
; 0284 if CONBKI (.CCB, .LCCB, .LNK) ! Validate the connect message
; 0285 then
; 0286 begin ! OK, tell user about connect
; 0287 bind
; 0288 CB = LCCB [C_ADDR]: ref block field (CB_FIELDS);
; 0289 $SC_DO_RCE (.CCB); ! Return NSP's CCB
; 0290 LCCB [C_STS] = S_SSUC;
; 0291 LCCB [C_PRM2] = LNK [L_TIMER] = .SCDB [SC_ITIME];
; 0292 $SC_DO_RCP (.LCCB, S$CNR, .LNK); ! Tell user
; 0293 LNK [LL_KLOK] = true;
; 0294 SCDB [SCF_KLOK] = true
; 0295 end
; 0296 else
; 0297 begin ! No good
; 0298 $SC_DO_RCE (.CCB); ! Return NSP's CCB
; 0299 LNK [L_PIX] = 0; ! Prevent disconnect race
; 0300 LCCB [C_ADDR] = byt$ptr (LCCB [C_PRM1]);
; L 0301 %if %bliss (bliss16)
; 0302 %then
; 0303 LCCB [C_PRM2] = 0; ! No optional data
; U 0304 %else
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 5
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (3)
; U 0305 begin
; U 0306 local PTR;
; U 0307 PTR = ch$plus (byt$ptr (LCCB [C_PRM1]), 2);
; U 0308 byt$tiny_string (uplit (0), PTR)
; U 0309 end;
; 0310 %fi
; 0311 LCCB [C_CNT] = 3;
; 0312 $SC_DO_XME (.LCCB, N_XREJ, .LNK)
; 0313 end
; 0314 end;
.TITLE SCRES
.IDENT /X01330/
.GLOBL CONBKI, CONBKO, STKCCB, I$CLS
.GLOBL I$OPN, .CRDAT, $CCBGT, $CMQRM
.GLOBL $SCHED, DO.RCP, DO.XME
.SBTTL NR$CRW
000000 .PSECT $CODE$, RO
000000 004167 000000G NR$CRW::JSR R1,$SAVE5 ; 0253
000004 016705 000002G MOV .CRDAT+2,R5 ; 0275
000010 004767 000000G JSR PC,$CCBGT ; 0282
000014 103402 BCS 1$
000016 010402 MOV R4,R2 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052715 002000 1$: BIS #2000,(R5)
000026 042715 010000 BIC #10000,(R5)
000032 000207 RTS PC
000034 016601 000016 2$: MOV 16(SP),R1 ; LNK,* 0283
000040 012703 000016 MOV #16,R3
000044 060103 ADD R1,R3
000046 004767 000000G JSR PC,$CMQRM
000052 010446 MOV R4,-(SP) ; CCB,* 0284
000054 010246 MOV R2,-(SP) ; LCCB,*
000056 010146 MOV R1,-(SP)
000060 004767 000000G JSR PC,CONBKI
000064 062706 000006 ADD #6,SP
000070 006000 ROR R0
000072 103030 BCC 3$
000074 112764 000004 000012 MOVB #4,12(R4) ; *,*(CCB) 0289
000102 004767 000000G JSR PC,$SCHED
000106 012762 000001 000014 MOV #1,14(R2) ; *,*(LCCB) 0290
000114 016500 000024 MOV 24(R5),R0 ; 0291
000120 010061 000012 MOV R0,12(R1)
000124 010062 000026 MOV R0,26(R2) ; *,*(LCCB)
000130 005046 CLR -(SP) ; 0292
000132 010146 MOV R1,-(SP)
000134 010204 MOV R2,R4 ; LCCB,*
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 6
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (3)
000136 004767 000000G JSR PC,DO.RCP
000142 052711 010000 BIS #10000,(R1) ; 0293
000146 052715 002000 BIS #2000,(R5) ; 0294
000152 000427 BR 4$ ; 0284
000154 112764 000004 000012 3$: MOVB #4,12(R4) ; *,*(CCB) 0298
000162 004767 000000G JSR PC,$SCHED
000166 105061 000005 CLRB 5(R1) ; 0299
000172 010262 000020 MOV R2,20(R2) ; LCCB,*(LCCB) 0300
000176 062762 000024 000020 ADD #24,20(R2) ; *,*(LCCB)
000204 005062 000026 CLR 26(R2) ; *(LCCB) 0303
000210 012762 000003 000022 MOV #3,22(R2) ; *,*(LCCB) 0311
000216 012746 000014 MOV #14,-(SP) ; 0312
000222 010146 MOV R1,-(SP)
000224 010204 MOV R2,R4 ; LCCB,*
000226 004767 000000G JSR PC,DO.XME
000232 022626 4$: CMP (SP)+,(SP)+ ; 0275
000234 000207 RTS PC ; 0253
; Routine Size: 79 words, Routine Base: $CODE$ + 0000
; Maximum stack depth per invocation: 10 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 7
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (4)
; 0315 global routine NR$DRW (LNK): novalue =
; 0316
; 0317 !++
; 0318 ! FUNCTIONAL DESCRIPTION:
; 0319 ! Get resources to handle incoming disconnect, or
; 0320 ! receipt of confidence call on link.
; 0321 !
; 0322 ! FORMAL PARAMETERS:
; 0323 ! LNK Logical link block address
; 0324 !
; 0325 ! IMPLICIT INPUTS:
; 0326 ! LLT mapped
; 0327 ! CCB contents
; 0328 !
; 0329 ! IMPLICIT OUTPUTS:
; 0330 ! None
; 0331 !
; 0332 ! ROUTINE VALUE:
; 0333 ! COMPLETION CODES:
; 0334 ! None
; 0335 !
; 0336 ! SIDE EFFECTS:
; 0337 ! None
; 0338 !--
; 0339 begin
; 0340 $sc_get_data_base (SCDB);
; 0341 map LNK: ref block field (LLT_FIELDS);
; 0342 local
; 0343 CCB: ref block field (C_FIELDS),
; 0344 LCCB: ref block field (C_FIELDS);
; 0345
; 0346 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0347
; 0348 CMQRM$ (LNK [L_IQUE], CCB);
; 0349 STKCCB (.LCCB, .CCB);
; 0350
; 0351 if .CCB [C_MOD] eql N_SCNF ! If confidence loss
; 0352 then ! then
; 0353 LCCB [C_PRM2] = S_ENUR ! set appropriate code
; 0354 else
; 0355 begin
; 0356 MAP$ (.LCCB [C_BIAS]); ! Look at data buffer
; 0357 if .LCCB [C_CNT] geq 2 ! If have a reason code
; 0358 then
; 0359 begin
; 0360 byt$string_short (LCCB [C_ADDR], LCCB [C_PRM2]);
; 0361 LCCB [C_CNT] = .LCCB [C_CNT] - 2
; 0362 end
; 0363 else
; 0364 begin
; 0365 LCCB [C_PRM2] = 0;
; 0366 LCCB [C_CNT] = 0
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 8
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (4)
; 0367 end;
; 0368 if .LCCB [C_CNT] gtr 1 ! If have data
; 0369 then
; 0370 begin
; 0371 LCCB [C_ADDR] = ch$plus (.LCCB [C_ADDR], 1);
; 0372 LCCB [C_CNT] = .LCCB [C_CNT] - 1
; 0373 end
; 0374 else
; 0375 begin
; 0376 LCCB [C_ADDR] = 0;
; 0377 LCCB [C_CNT] = 0
; 0378 end;
; 0379 LCCB [C_PRM2] = -.LCCB [C_PRM2];
; 0380 if .LCCB [C_PRM2] eql 0 then LCCB [C_PRM2] = S_EDBO;
; 0381 MAP$ (.SCDB [SC_LLT_BIAS])
; 0382 end;
; 0383
; 0384 $SC_DO_RCP (.LCCB, S$DSR, .LNK);
; 0385 LNK [L_STATE] = ST_DIR
; 0386 end;
.GLOBL KISAR6
.SBTTL NR$DRW
000000 004167 000000G NR$DRW::JSR R1,$SAVE5 ; 0315
000004 016746 000002G MOV .CRDAT+2,-(SP) ; 0339
000010 004767 000000G JSR PC,$CCBGT ; 0346
000014 103402 BCS 1$
000016 010402 MOV R4,R2 ; $MCB$R4,LCCB
000020 000407 BR 2$
000022 052776 002000 000000 1$: BIS #2000,@0(SP)
000030 042776 010000 000000 BIC #10000,@0(SP)
000036 000516 BR 11$
000040 016601 000020 2$: MOV 20(SP),R1 ; LNK,* 0348
000044 012703 000016 MOV #16,R3
000050 060103 ADD R1,R3
000052 004767 000000G JSR PC,$CMQRM
000056 103401 BCS 3$
000060 010403 MOV R4,R3 ; $MCB$R4,CCB
000062 010246 3$: MOV R2,-(SP) ; LCCB,* 0349
000064 010346 MOV R3,-(SP) ; CCB,*
000066 004767 000000G JSR PC,STKCCB
000072 012705 000026 MOV #26,R5 ; 0353
000076 060205 ADD R2,R5 ; LCCB,*
000100 105763 000013 TSTB 13(R3) ; *(CCB) 0351
000104 001003 BNE 4$
000106 012715 177731 MOV #-47,(R5) ; 0353
000112 000456 BR 10$ ; 0351
000114 016267 000016 000000G 4$: MOV 16(R2),KISAR6 ; *(LCCB),* 0356
000122 012704 000022 MOV #22,R4 ; 0357
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 9
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (4)
000126 060204 ADD R2,R4 ; LCCB,*
000130 021427 000002 CMP (R4),#2
000134 002417 BLT 5$
000136 012703 000020 MOV #20,R3 ; 0360
000142 060203 ADD R2,R3 ; LCCB,*
000144 005213 INC (R3)
000146 011300 MOV (R3),R0
000150 116015 177777 MOVB -1(R0),(R5)
000154 005213 INC (R3)
000156 011303 MOV (R3),R3
000160 116362 177777 000027 MOVB -1(R3),27(R2) ; *,*(LCCB)
000166 162714 000002 SUB #2,(R4) ; 0361
000172 000402 BR 6$ ; 0357
000174 005015 5$: CLR (R5) ; 0365
000176 005014 CLR (R4) ; 0366
000200 012703 000020 6$: MOV #20,R3 ; 0371
000204 060203 ADD R2,R3 ; LCCB,*
000206 021427 000001 CMP (R4),#1 ; 0368
000212 003403 BLE 7$
000214 005213 INC (R3) ; 0371
000216 005314 DEC (R4) ; 0372
000220 000402 BR 8$ ; 0368
000222 005013 7$: CLR (R3) ; 0376
000224 005014 CLR (R4) ; 0377
000226 005415 8$: NEG (R5) ; 0379
000230 001002 BNE 9$ ; 0380
000232 012715 177754 MOV #-24,(R5)
000236 016600 000004 9$: MOV 4(SP),R0 ; 0381
000242 016067 000044 000000G MOV 44(R0),KISAR6
000250 012716 000006 10$: MOV #6,(SP) ; 0384
000254 010146 MOV R1,-(SP)
000256 010204 MOV R2,R4 ; LCCB,*
000260 004767 000000G JSR PC,DO.RCP
000264 112711 000013 MOVB #13,(R1) ; 0385
000270 062706 000006 ADD #6,SP ; 0339
000274 005726 11$: TST (SP)+ ; 0315
000276 000207 RTS PC
; Routine Size: 96 words, Routine Base: $CODE$ + 0236
; Maximum stack depth per invocation: 11 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 10
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (5)
; 0387 global routine NR$DTW (LNK): novalue =
; 0388
; 0389 !++
; 0390 ! FUNCTIONAL DESCRIPTION:
; 0391 ! Get resources to deliver incoming data.
; 0392 !
; 0393 ! FORMAL PARAMETERS:
; 0394 ! LNK Logical link block address
; 0395 !
; 0396 ! IMPLICIT INPUTS:
; 0397 ! CCB contents
; 0398 !
; 0399 ! IMPLICIT OUTPUTS:
; 0400 ! None
; 0401 !
; 0402 ! ROUTINE VALUE:
; 0403 ! COMPLETION CODES:
; 0404 ! None
; 0405 !
; 0406 ! SIDE EFFECTS:
; 0407 ! None
; 0408 !--
; 0409 begin
; 0410 $sc_get_data_base (SCDB);
; 0411 map LNK: ref block field (LLT_FIELDS);
; 0412 local
; 0413 CCB: ref block field (C_FIELDS),
; 0414 FLG,
; 0415 LCCB: ref block field (C_FIELDS);
; 0416
; 0417 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0418
; 0419 CMQRM$ (LNK [L_IQUE], CCB);
; 0420
; 0421 FLG = 0;
; 0422 if (.CCB [C_PRM1] and N$FBOM) neq 0 then FLG = .FLG or S$PBOM;
; 0423 if (.CCB [C_PRM1] and N$FEOM) neq 0 then FLG = .FLG or S$PEOM;
; 0424 if .FLG eql 0 then FLG = S$PMOM;
; 0425 LCCB [$sub_field (C_PRM1, HI_BYTE)] = .FLG;
; 0426 STKCCB (.LCCB, .CCB);
; 0427 $SC_DO_RCP (.LCCB, S$DAT, .LNK)
; 0428 end;
.SBTTL NR$DTW
000000 004167 000000G NR$DTW::JSR R1,$SAVE4 ; 0387
000004 016700 000002G MOV .CRDAT+2,R0 ; 0409
000010 004767 000000G JSR PC,$CCBGT ; 0417
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 11
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (5)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0419
000040 062703 000016 ADD #16,R3
000044 004767 000000G JSR PC,$CMQRM
000050 103401 BCS 3$
000052 010403 MOV R4,R3 ; $MCB$R4,CCB
000054 005000 3$: CLR R0 ; FLG 0421
000056 032763 000002 000024 BIT #2,24(R3) ; *,*(CCB) 0422
000064 001402 BEQ 4$
000066 052700 000001 BIS #1,R0 ; *,FLG
000072 032763 000001 000024 4$: BIT #1,24(R3) ; *,*(CCB) 0423
000100 001402 BEQ 5$
000102 052700 000004 BIS #4,R0 ; *,FLG
000106 005700 5$: TST R0 ; FLG 0424
000110 001002 BNE 6$
000112 012700 000002 MOV #2,R0 ; *,FLG
000116 110061 000025 6$: MOVB R0,25(R1) ; FLG,*(LCCB) 0425
000122 010146 MOV R1,-(SP) ; LCCB,* 0426
000124 010346 MOV R3,-(SP) ; CCB,*
000126 004767 000000G JSR PC,STKCCB
000132 012716 000002 MOV #2,(SP) ; 0427
000136 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000142 010104 MOV R1,R4 ; LCCB,*
000144 004767 000000G JSR PC,DO.RCP
000150 062706 000006 ADD #6,SP ; 0409
000154 000207 RTS PC ; 0387
; Routine Size: 55 words, Routine Base: $CODE$ + 0536
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 12
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (6)
; 0429 global routine NR$INW (LNK): novalue =
; 0430
; 0431 !++
; 0432 ! FUNCTIONAL DESCRIPTION:
; 0433 ! Get resources to deliver incoming interrupt data.
; 0434 !
; 0435 ! FORMAL PARAMETERS:
; 0436 ! LNK Logical link block address
; 0437 !
; 0438 ! IMPLICIT INPUTS:
; 0439 ! CCB contents
; 0440 !
; 0441 ! IMPLICIT OUTPUTS:
; 0442 ! None
; 0443 !
; 0444 ! ROUTINE VALUE:
; 0445 ! COMPLETION CODES:
; 0446 ! None
; 0447 !
; 0448 ! SIDE EFFECTS:
; 0449 ! None
; 0450 !--
; 0451 begin
; 0452 $sc_get_data_base (SCDB);
; 0453 map LNK: ref block field (LLT_FIELDS);
; 0454 local
; 0455 CCB: ref block field (C_FIELDS),
; 0456 LCCB: ref block field (C_FIELDS);
; 0457
; 0458 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0459
; 0460 CMQRM$ (LNK [L_IQUE], CCB);
; 0461 STKCCB (.LCCB, .CCB);
; 0462 $SC_DO_RCP (.LCCB, S$INT, .LNK)
; 0463 end;
.SBTTL NR$INW
000000 004167 000000G NR$INW::JSR R1,$SAVE4 ; 0429
000004 016700 000002G MOV .CRDAT+2,R0 ; 0451
000010 004767 000000G JSR PC,$CCBGT ; 0458
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0460
000040 062703 000016 ADD #16,R3
000044 004767 000000G JSR PC,$CMQRM
000050 103401 BCS 3$
000052 010400 MOV R4,R0 ; $MCB$R4,CCB
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 13
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (6)
000054 010146 3$: MOV R1,-(SP) ; LCCB,* 0461
000056 010046 MOV R0,-(SP) ; CCB,*
000060 004767 000000G JSR PC,STKCCB
000064 012716 000004 MOV #4,(SP) ; 0462
000070 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000074 010104 MOV R1,R4 ; LCCB,*
000076 004767 000000G JSR PC,DO.RCP
000102 062706 000006 ADD #6,SP ; 0451
000106 000207 RTS PC ; 0429
; Routine Size: 36 words, Routine Base: $CODE$ + 0714
; Maximum stack depth per invocation: 9 words
; 0464
; 0465
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 14
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (7)
; 0466 global routine SX$ABW (LNK): novalue =
; 0467
; 0468 !++
; 0469 ! FUNCTIONAL DESCRIPTION:
; 0470 ! We are here to wait for resources to finish the abort,
; 0471 ! or disconnect.
; 0472 !
; 0473 ! FORMAL PARAMETERS:
; 0474 ! LNK Logical link block address
; 0475 !
; 0476 ! IMPLICIT INPUTS:
; 0477 ! CCB contents
; 0478 !
; 0479 ! IMPLICIT OUTPUTS:
; 0480 ! None
; 0481 !
; 0482 ! ROUTINE VALUE:
; 0483 ! COMPLETION CODES:
; 0484 ! None
; 0485 !
; 0486 ! SIDE EFFECTS:
; 0487 ! None
; 0488 !--
; 0489 begin
; 0490 $sc_get_data_base (SCDB);
; 0491 map LNK: ref block field (LLT_FIELDS);
; 0492 local
; 0493 PTR,
; 0494 CCB: ref block field (C_FIELDS),
; 0495 LCCB: ref block field (C_FIELDS);
; 0496
; 0497 ! If we can't get the CCB, we are forced to wait awhile
; 0498 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0499
; 0500 ! We got it - set our context into it
; 0501 CMQRM$ (LNK [L_OQUE], CCB);
; 0502 LCCB [C_STK] = .CCB;
; 0503
; 0504 ! If not in RUN state, then don't call NSP
; 0505 if .LNK [L_STATE] eql ST_RUN
; 0506 then
; 0507 begin
; 0508 if .CCB [C_CNT] neq 0 then LCCB [C_CHN] = .CCB;
; 0509 PTR = LCCB [C_ADDR] = byt$ptr (LCCB [C_PRM2]);
; 0510 if .CCB [C_MOD] eql S$ABO
; 0511 then
; 0512 begin
; 0513 byt$short_string (uplit (-S_EABO), PTR);
; 0514 LCCB [C_MOD] = N_XABT;
; 0515 LNK [L_STATE] = ST_ABI
; 0516 end
; 0517 else
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 15
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (7)
; 0518 begin
; 0519 byt$short_string (uplit (0), PTR); ! -S_EDBO
; 0520 LCCB [C_MOD] = N_XDSC;
; 0521 LNK [L_STATE] = ST_DI
; 0522 end;
; 0523
; 0524 byt$tiny_string (CCB [C_CNT], PTR);
; 0525 LCCB [C_CNT] = 3;
; 0526 $SC_DO_XME (.LCCB, .LCCB [C_MOD], .LNK)
; 0527 end
; 0528 else
; 0529 begin
; 0530 LNK[L_STATE] = ST_CLI;
; 0531 $SC_DO_XME( .LCCB, N_PCLS, .LNK);
; 0532 end
; 0533 end;
000000 .PSECT $PLIT$, RO , D
000000 000011 P.AAA: .WORD 11
000002 000000 P.AAB: .WORD 0
.SBTTL SX$ABW
001024 .PSECT $CODE$, RO
000000 004167 000000G SX$ABW::JSR R1,$SAVE4 ; 0466
000004 016700 000002G MOV .CRDAT+2,R0 ; 0489
000010 004767 000000G JSR PC,$CCBGT ; 0498
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016600 000014 2$: MOV 14(SP),R0 ; LNK,* 0501
000040 012703 000022 MOV #22,R3
000044 060003 ADD R0,R3
000046 004767 000000G JSR PC,$CMQRM
000052 103401 BCS 3$
000054 010403 MOV R4,R3 ; $MCB$R4,CCB
000056 010361 000004 3$: MOV R3,4(R1) ; CCB,*(LCCB) 0502
000062 121027 000014 CMPB (R0),#14 ; 0505
000066 001070 BNE 7$
000070 005763 000022 TST 22(R3) ; *(CCB) 0508
000074 001402 BEQ 4$
000076 010361 000002 MOV R3,2(R1) ; CCB,*(LCCB)
000102 010104 4$: MOV R1,R4 ; LCCB,* 0509
000104 062704 000026 ADD #26,R4
000110 010461 000020 MOV R4,20(R1) ; *,*(LCCB)
000114 010400 MOV R4,R0 ; *,PTR
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 16
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (7)
000116 126327 000013 000022 CMPB 13(R3),#22 ; *(CCB),* 0510
000124 001017 BNE 5$
000126 016704 000000' MOV P.AAA,R4 ; *,NUM 0513
000132 110420 MOVB R4,(R0)+ ; NUM,PTR
000134 000304 SWAB R4 ; NUM
000136 110410 MOVB R4,(R0) ; NUM,PTR
000140 010104 MOV R1,R4 ; LCCB,* 0514
000142 062704 000012 ADD #12,R4
000146 112764 000020 000001 MOVB #20,1(R4)
000154 112776 000011 000014 MOVB #11,@14(SP) ; *,LNK 0515
000162 000416 BR 6$ ; 0510
000164 016704 000002' 5$: MOV P.AAB,R4 ; *,NUM 0519
000170 110420 MOVB R4,(R0)+ ; NUM,PTR
000172 000304 SWAB R4 ; NUM
000174 110410 MOVB R4,(R0) ; NUM,PTR
000176 010104 MOV R1,R4 ; LCCB,* 0520
000200 062704 000012 ADD #12,R4
000204 112764 000016 000001 MOVB #16,1(R4)
000212 112776 000012 000014 MOVB #12,@14(SP) ; *,LNK 0521
000220 005200 6$: INC R0 ; PTR 0513
000222 116320 000022 MOVB 22(R3),(R0)+ ; *(CCB),PTR 0524
000226 012761 000003 000022 MOV #3,22(R1) ; *,*(LCCB) 0525
000234 005046 CLR -(SP) ; 0526
000236 116416 000001 MOVB 1(R4),(SP)
000242 016646 000016 MOV 16(SP),-(SP) ; LNK,*
000246 000405 BR 8$
000250 112710 000010 7$: MOVB #10,(R0) ; 0530
000254 012746 000004 MOV #4,-(SP) ; 0531
000260 010046 MOV R0,-(SP)
000262 010104 8$: MOV R1,R4 ; LCCB,*
000264 004767 000000G JSR PC,DO.XME
000270 022626 CMP (SP)+,(SP)+ ; 0489
000272 000207 RTS PC ; 0466
; Routine Size: 94 words, Routine Base: $CODE$ + 1024
; Maximum stack depth per invocation: 8 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 17
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (8)
; 0534 global routine SX$ACW (LNK): novalue =
; 0535
; 0536 !++
; 0537 ! FUNCTIONAL DESCRIPTION:
; 0538 ! We are here to obtain resource to finish user link
; 0539 ! acceptance.
; 0540 !
; 0541 ! FORMAL PARAMETERS:
; 0542 ! LNK Logical link block address
; 0543 !
; 0544 ! IMPLICIT INPUTS:
; 0545 ! CCB has been enqueued
; 0546 !
; 0547 ! IMPLICIT OUTPUTS:
; 0548 ! None
; 0549 !
; 0550 ! ROUTINE VALUE:
; 0551 ! COMPLETION CODES:
; 0552 ! None
; 0553 !
; 0554 ! SIDE EFFECTS:
; 0555 ! None
; 0556 !--
; 0557 begin
; 0558 $sc_get_data_base (SCDB);
; 0559 map LNK: ref block field (LLT_FIELDS);
; 0560 local
; 0561 CCB: ref block field (C_FIELDS),
; 0562 LCCB: ref block field (C_FIELDS);
; 0563
; 0564 ! If we can't get the CCB, we are forced to wait awhile
; 0565 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0566
; 0567 CMQRM$ (LNK [L_OQUE], CCB); ! Got it, set context into it
; 0568 LCCB [C_PRM1] = ! Flow control method
; 0569 begin
; 0570 if .CCB [$sub_field (C_PRM1, HI_BYTE)] eql S$PMSG
; 0571 then N$FMES
; 0572 else N$FSEG
; 0573 end;
; 0574 STKCCB (.LCCB, .CCB); ! Stack the CCBs
; 0575 if .CCB [C_CNT] neq 0 then LCCB [C_CHN] = .CCB;
; L 0576 %if %bliss (bliss16)
; 0577 %then
; 0578 LCCB [C_PRM2] = .CCB [C_CNT];
; U 0579 %else
; U 0580 begin
; U 0581 local
; U 0582 LEN,
; U 0583 PTR;
; U 0584 PTR = byt$ptr (LCCB [C_PRM2]);
; U 0585 LEN = .CCB [C_CNT];
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 18
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (8)
; U 0586 byt$tiny_string (LEN, PTR)
; U 0587 end;
; 0588 %fi
; 0589 LCCB [C_CNT] = 1;
; 0590 LCCB [C_ADDR] = byt$ptr (LCCB [C_PRM2]);
; 0591 LNK [L_ULA] = .CCB [$sub_field (C_PRM1, LO_BYTE)];
; 0592 $SC_DO_XME (.LCCB, N_XACC, .LNK);
; 0593 LNK [L_STATE] = ST_CA
; 0594 end;
.SBTTL SX$ACW
000000 004167 000000G SX$ACW::JSR R1,$SAVE4 ; 0534
000004 016700 000002G MOV .CRDAT+2,R0 ; 0557
000010 004767 000000G JSR PC,$CCBGT ; 0565
000014 103402 BCS 1$
000016 010402 MOV R4,R2 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016601 000014 2$: MOV 14(SP),R1 ; LNK,* 0567
000040 012703 000022 MOV #22,R3
000044 060103 ADD R1,R3
000046 004767 000000G JSR PC,$CMQRM
000052 103401 BCS 3$
000054 010403 MOV R4,R3 ; $MCB$R4,CCB
000056 126327 000025 000002 3$: CMPB 25(R3),#2 ; *(CCB),* 0570
000064 001003 BNE 4$
000066 012700 000002 MOV #2,R0 ; 0569
000072 000402 BR 5$
000074 012700 000001 4$: MOV #1,R0
000100 010062 000024 5$: MOV R0,24(R2) ; *,*(LCCB) 0568
000104 010246 MOV R2,-(SP) ; LCCB,* 0574
000106 010346 MOV R3,-(SP) ; CCB,*
000110 004767 000000G JSR PC,STKCCB
000114 016300 000022 MOV 22(R3),R0 ; *(CCB),* 0575
000120 001402 BEQ 6$
000122 010362 000002 MOV R3,2(R2) ; CCB,*(LCCB)
000126 010062 000026 6$: MOV R0,26(R2) ; *,*(LCCB) 0578
000132 012762 000001 000022 MOV #1,22(R2) ; *,*(LCCB) 0589
000140 012762 000026 000020 MOV #26,20(R2) ; *,*(LCCB) 0590
000146 060262 000020 ADD R2,20(R2) ; LCCB,*(LCCB)
000152 116361 000024 000002 MOVB 24(R3),2(R1) ; *(CCB),* 0591
000160 012716 000012 MOV #12,(SP) ; 0592
000164 010146 MOV R1,-(SP)
000166 010204 MOV R2,R4 ; LCCB,*
000170 004767 000000G JSR PC,DO.XME
000174 112711 000007 MOVB #7,(R1) ; 0593
000200 062706 000006 ADD #6,SP ; 0557
000204 000207 RTS PC ; 0534
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 19
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (8)
; Routine Size: 67 words, Routine Base: $CODE$ + 1320
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 20
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (9)
; 0595 global routine SX$CNW (LNK): novalue =
; 0596
; 0597 !++
; 0598 ! FUNCTIONAL DESCRIPTION:
; 0599 ! This routine waits until a CCB/LDB is available, and
; 0600 ! then proceeds with the Connect operation.
; 0601 !
; 0602 ! FORMAL PARAMETERS:
; 0603 ! LNK Logical link block address
; 0604 !
; 0605 ! IMPLICIT INPUTS:
; 0606 ! Request CCB has been enqueued on the output queue for
; 0607 ! this LL.
; 0608 !
; 0609 ! IMPLICIT OUTPUTS:
; 0610 ! Transition to next connect-state is made.
; 0611 !
; 0612 ! ROUTINE VALUE:
; 0613 ! COMPLETION CODES:
; 0614 ! None
; 0615 !
; 0616 ! SIDE EFFECTS:
; 0617 ! None
; 0618 !--
; 0619 begin
; 0620 $sc_get_data_base (SCDB);
; 0621 map LNK: ref block field (LLT_FIELDS);
; 0622 local
; 0623 CCB: ref block field (C_FIELDS),
; 0624 LCCB: ref block field (C_FIELDS);
; 0625
; 0626 if .LNK [L_STATE] eql ST_CID or
; 0627 .LNK[ L_STATE] eql ST_CLI then return; ! We are just waiting for
; 0628 ! response from other end
; 0629 if
; 0630 begin
; 0631 if CCBGT$( LCCB) then true else false
; 0632 end
; 0633
; 0634 and
; 0635
; 0636 begin
; 0637 if $MCB_GET_DSR( DSR_CONNECT_BLOCK_SIZE, LCCB[C_ADDR])
; 0638 then true
; 0639 else
; 0640 begin
; 0641 CCBRT$( .LCCB);
; 0642 false
; 0643 end
; 0644 end
; 0645 then
; 0646 LCCB[C_BIAS] = 0
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 21
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (9)
; 0647 else
; 0648 $SC_WAIT;
; 0649
; 0650 CMQRM$ (LNK [L_OQUE], CCB); ! Get request CCB off queue
; 0651 CONBKO (.CCB, .LCCB); ! Process connect block
; 0652
; 0653 if .CCB [C_STS] lss 0 ! If any error detected -
; 0654 then
; 0655 begin
; 0656 $MCB_RETURN_DSR( DSR_CONNECT_BLOCK_SIZE, .LCCB[C_ADDR]);
; 0657 CCBRT$( .LCCB); ! Give back resources, and
; 0658 $SC_DO_XCP (.CCB) ! send request back to user
; 0659 end
; 0660 else
; 0661 begin ! Made it, so request connect
; 0662 LCCB [C_PRM1] = .LNK [L_RNA]; ! Destination node address
; 0663 if .LCCB [C_PRM1] eql 0
; 0664 then
; 0665 LCCB [C_PRM1] = .SCDB [SC_LADDR];
; 0666 LCCB [C_PRM2] = ! Set flow control method
; 0667 begin
; 0668 if .CCB [$sub_field (C_PRM1, HI_BYTE)] eql S$PMSG
; 0669 then N$FMES
; 0670 else N$FSEG
; 0671 end;
; 0672 LCCB [C_PRM3] = .LNK [L_CHN]; ! Channel #
; 0673 LCCB [C_PRM5] = .LNK; ! Remember our LL
; 0674 LCCB [C_STK] = .CCB; ! Remember user CCB
; 0675 $SC_DO_XME (.LCCB, N_XCON, .LNK); ! Finally send the Connect
; 0676 LNK [L_TIMER] = .SCDB [SC_OTIME]; ! Set timer value
; 0677 LNK [L_STATE] = ST_CIS; ! Connect-Initiate-Sent
; 0678 end
; 0679 end;
.GLOBL $DSRGT, $CCBRT, $DSRRT
.SBTTL SX$CNW
000000 004167 000000G SX$CNW::JSR R1,$SAVE5 ; 0595
000004 016746 000002G MOV .CRDAT+2,-(SP) ; 0619
000010 016605 000020 MOV 20(SP),R5 ; LNK,* 0626
000014 121527 000002 CMPB (R5),#2
000020 001546 BEQ 11$
000022 121527 000010 CMPB (R5),#10 ; 0627
000026 001543 BEQ 11$
000030 004767 000000G JSR PC,$CCBGT ; 0631
000034 103420 BCS 3$
000036 010402 MOV R4,R2 ; $MCB$R4,LCCB
000040 012701 000156 MOV #156,R1 ; 0637
000044 004767 000000G JSR PC,$DSRGT
000050 103403 BCS 1$
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 22
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (9)
000052 010062 000020 MOV R0,20(R2) ; $MCB$R0,*(LCCB)
000056 000404 BR 2$
000060 010204 1$: MOV R2,R4 ; LCCB,* 0641
000062 004767 000000G JSR PC,$CCBRT
000066 000403 BR 3$ ; 0640
000070 005062 000016 2$: CLR 16(R2) ; *(LCCB) 0646
000074 000407 BR 4$ ; 0629
000076 052776 002000 000000 3$: BIS #2000,@0(SP) ; 0647
000104 042776 010000 000000 BIC #10000,@0(SP)
000112 000511 BR 11$
000114 012703 000022 4$: MOV #22,R3 ; 0650
000120 060503 ADD R5,R3
000122 004767 000000G JSR PC,$CMQRM
000126 103401 BCS 5$
000130 010403 MOV R4,R3 ; $MCB$R4,CCB
000132 010346 5$: MOV R3,-(SP) ; CCB,* 0651
000134 010246 MOV R2,-(SP) ; LCCB,*
000136 004767 000000G JSR PC,CONBKO
000142 005763 000014 TST 14(R3) ; *(CCB) 0653
000146 002020 BGE 6$
000150 016200 000020 MOV 20(R2),R0 ; *(LCCB),* 0656
000154 012701 000156 MOV #156,R1
000160 004767 000000G JSR PC,$DSRRT
000164 010204 MOV R2,R4 ; LCCB,* 0657
000166 004767 000000G JSR PC,$CCBRT
000172 112763 000014 000012 MOVB #14,12(R3) ; *,*(CCB) 0658
000200 010304 MOV R3,R4 ; CCB,*
000202 004767 000000G JSR PC,$SCHED
000206 000452 BR 10$ ; 0653
000210 012700 000024 6$: MOV #24,R0 ; 0662
000214 060200 ADD R2,R0 ; LCCB,*
000216 016510 000006 MOV 6(R5),(R0)
000222 001004 BNE 7$ ; 0663
000224 016601 000004 MOV 4(SP),R1 ; 0665
000230 016110 000010 MOV 10(R1),(R0)
000234 126327 000025 000002 7$: CMPB 25(R3),#2 ; *(CCB),* 0668
000242 001003 BNE 8$
000244 012700 000002 MOV #2,R0 ; 0667
000250 000402 BR 9$
000252 012700 000001 8$: MOV #1,R0
000256 010062 000026 9$: MOV R0,26(R2) ; *,*(LCCB) 0666
000262 016562 000010 000030 MOV 10(R5),30(R2) ; *,*(LCCB) 0672
000270 010562 000034 MOV R5,34(R2) ; *,*(LCCB) 0673
000274 010362 000004 MOV R3,4(R2) ; CCB,*(LCCB) 0674
000300 012716 000010 MOV #10,(SP) ; 0675
000304 010546 MOV R5,-(SP)
000306 010204 MOV R2,R4 ; LCCB,*
000310 004767 000000G JSR PC,DO.XME
000314 016600 000006 MOV 6(SP),R0 ; 0676
000320 016065 000026 000012 MOV 26(R0),12(R5)
000326 112715 000001 MOVB #1,(R5) ; 0677
000332 005726 TST (SP)+ ; 0661
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 23
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (9)
000334 022626 10$: CMP (SP)+,(SP)+ ; 0619
000336 005726 11$: TST (SP)+ ; 0595
000340 000207 RTS PC
; Routine Size: 113 words, Routine Base: $CODE$ + 1526
; Maximum stack depth per invocation: 11 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 24
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (10)
; 0680 global routine SX$DRW (LNK): novalue =
; 0681
; 0682 !++
; 0683 ! FUNCTIONAL DESCRIPTION:
; 0684 ! Here to wait for resources to process a data segment request,
; 0685 ! or supply a receive buffer (SX$MRW)
; 0686 !
; 0687 ! FORMAL PARAMETERS:
; 0688 ! LNK Logical link block address
; 0689 !
; 0690 ! IMPLICIT INPUTS:
; 0691 ! CCB contents
; 0692 !
; 0693 ! IMPLICIT OUTPUTS:
; 0694 ! None
; 0695 !
; 0696 ! ROUTINE VALUE:
; 0697 ! COMPLETION CODES:
; 0698 ! None
; 0699 !
; 0700 ! SIDE EFFECTS:
; 0701 ! None
; 0702 !--
; 0703 begin
; 0704 $sc_get_data_base (SCDB);
; 0705 map LNK: ref block field (LLT_FIELDS);
; 0706 local
; 0707 CCB: ref block field (C_FIELDS),
; 0708 LCCB: ref block field (C_FIELDS);
; 0709
; 0710 ! If we can't get the CCB, we are forced to wait awhile
; 0711 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0712
; 0713 ! We got it - set our context into it
; 0714 CMQRM$ (LNK [L_OQUE], CCB);
; 0715
; 0716 if .CCB [C_MOD] eql S$DRQ
; 0717 then
; 0718 begin
; 0719 LCCB [C_MOD] = N_XDRQ;
; 0720 LCCB [C_PRM1] = .CCB [$sub_field (C_PRM1, HI_BYTE)]
; 0721 end
; 0722 else
; 0723 begin
; 0724 LCCB [C_MOD] = N_XBUF;
; 0725 LCCB [C_PRM1] = 1
; 0726 end;
; 0727
; 0728 STKCCB (.LCCB, .CCB);
; 0729 $SC_DO_XME (.LCCB, .LCCB [C_MOD], .LNK)
; 0730 end;
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 25
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (10)
.SBTTL SX$DRW
000000 004167 000000G SX$DRW::JSR R1,$SAVE4 ; 0680
000004 016700 000002G MOV .CRDAT+2,R0 ; 0703
000010 004767 000000G JSR PC,$CCBGT ; 0711
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0714
000040 062703 000022 ADD #22,R3
000044 004767 000000G JSR PC,$CMQRM
000050 103401 BCS 3$
000052 010400 MOV R4,R0 ; $MCB$R4,CCB
000054 012703 000012 3$: MOV #12,R3 ; 0719
000060 060103 ADD R1,R3 ; LCCB,*
000062 126027 000013 000012 CMPB 13(R0),#12 ; *(CCB),* 0716
000070 001011 BNE 4$
000072 112763 000030 000001 MOVB #30,1(R3) ; 0719
000100 116061 000025 000024 MOVB 25(R0),24(R1) ; *(CCB),*(LCCB) 0720
000106 105061 000025 CLRB 25(R1) ; *(LCCB)
000112 000406 BR 5$ ; 0716
000114 112763 000032 000001 4$: MOVB #32,1(R3) ; 0724
000122 012761 000001 000024 MOV #1,24(R1) ; *,*(LCCB) 0725
000130 010146 5$: MOV R1,-(SP) ; LCCB,* 0728
000132 010046 MOV R0,-(SP) ; CCB,*
000134 004767 000000G JSR PC,STKCCB
000140 005016 CLR (SP) ; 0729
000142 116316 000001 MOVB 1(R3),(SP)
000146 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000152 010104 MOV R1,R4 ; LCCB,*
000154 004767 000000G JSR PC,DO.XME
000160 062706 000006 ADD #6,SP ; 0703
000164 000207 RTS PC ; 0680
; Routine Size: 59 words, Routine Base: $CODE$ + 2070
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 26
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (11)
; 0731 global routine SX$IRW (LNK): novalue =
; 0732
; 0733 !++
; 0734 ! FUNCTIONAL DESCRIPTION:
; 0735 ! Here to wait for resources to process an interrupt request
; 0736 !
; 0737 ! FORMAL PARAMETERS:
; 0738 ! LNK Logical link block address
; 0739 !
; 0740 ! IMPLICIT INPUTS:
; 0741 ! CCB contents
; 0742 !
; 0743 ! IMPLICIT OUTPUTS:
; 0744 ! None
; 0745 !
; 0746 ! ROUTINE VALUE:
; 0747 ! COMPLETION CODES:
; 0748 ! None
; 0749 !
; 0750 ! SIDE EFFECTS:
; 0751 ! None
; 0752 !--
; 0753 begin
; 0754 $sc_get_data_base (SCDB);
; 0755 map LNK: ref block field (LLT_FIELDS);
; 0756 local
; 0757 CCB: ref block field (C_FIELDS),
; 0758 LCCB: ref block field (C_FIELDS);
; 0759
; 0760 ! If we can't get the CCB, we are forced to wait awhile
; 0761 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0762
; 0763 ! We got it - set our context into it
; 0764 CMQRM$ (LNK [L_INTQ], CCB);
; 0765 LCCB [C_PRM1] = .CCB [C_PRM1];
; 0766 STKCCB (.LCCB, .CCB);
; 0767 $SC_DO_XME (.LCCB, N_XIRQ, .LNK)
; 0768 end;
.SBTTL SX$IRW
000000 004167 000000G SX$IRW::JSR R1,$SAVE4 ; 0731
000004 016700 000002G MOV .CRDAT+2,R0 ; 0753
000010 004767 000000G JSR PC,$CCBGT ; 0761
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0764
000040 062703 000026 ADD #26,R3
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 27
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (11)
000044 004767 000000G JSR PC,$CMQRM
000050 103401 BCS 3$
000052 010400 MOV R4,R0 ; $MCB$R4,CCB
000054 016061 000024 000024 3$: MOV 24(R0),24(R1) ; *(CCB),*(LCCB) 0765
000062 010146 MOV R1,-(SP) ; LCCB,* 0766
000064 010046 MOV R0,-(SP) ; CCB,*
000066 004767 000000G JSR PC,STKCCB
000072 012716 000026 MOV #26,(SP) ; 0767
000076 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000102 010104 MOV R1,R4 ; LCCB,*
000104 004767 000000G JSR PC,DO.XME
000110 062706 000006 ADD #6,SP ; 0753
000114 000207 RTS PC ; 0731
; Routine Size: 39 words, Routine Base: $CODE$ + 2256
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 28
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (12)
; 0769 global routine SX$RJW (LNK): novalue =
; 0770
; 0771 !++
; 0772 ! FUNCTIONAL DESCRIPTION:
; 0773 ! We are here to obtain resource to finish user link
; 0774 ! rejection.
; 0775 !
; 0776 ! FORMAL PARAMETERS:
; 0777 ! LNK Logical link block address
; 0778 !
; 0779 ! IMPLICIT INPUTS:
; 0780 ! CCB has been enqueued
; 0781 !
; 0782 ! IMPLICIT OUTPUTS:
; 0783 ! None
; 0784 !
; 0785 ! ROUTINE VALUE:
; 0786 ! COMPLETION CODES:
; 0787 ! None
; 0788 !
; 0789 ! SIDE EFFECTS:
; 0790 ! None
; 0791 !--
; 0792 begin
; 0793 $sc_get_data_base (SCDB);
; 0794 map LNK: ref block field (LLT_FIELDS);
; 0795 local
; 0796 CCB: ref block field (C_FIELDS),
; 0797 LCCB: ref block field (C_FIELDS),
; 0798 PTR;
; 0799
; 0800 ! If we can't get the CCB, we are forced to wait awhile
; 0801 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0802
; 0803 ! We got it - set our context into it
; 0804 CMQRM$ (LNK [L_OQUE], CCB); ! Dequeue original CCB
; 0805 STKCCB (.LCCB, .CCB); ! Stack our's on top
; 0806 if .CCB [C_CNT] neq 0 then LCCB [C_CHN] = .CCB;
; 0807 LCCB [C_ADDR] = byt$ptr (LCCB [C_PRM1]); ! Point to our reason code
; 0808 if (.CCB [C_PRM2] gtr 0) or (.CCB [C_PRM2] eql S_ERBO)
; 0809 then CCB [C_PRM2] = 0;
; 0810 if .CCB [C_PRM2] lss 0 then CCB [C_PRM2] = -.CCB [C_PRM2];
; 0811 PTR = byt$ptr (LCCB [C_PRM1]);
; 0812 byt$short_string (CCB [C_PRM2], PTR);
; 0813 byt$tiny_string (CCB [C_CNT], PTR);
; 0814 LCCB [C_CNT] = 3; ! ...
; 0815 $SC_DO_XME (.LCCB, N_XREJ, .LNK) ! Send it to NSP
; 0816 end;
.SBTTL SX$RJW
000000 004167 000000G SX$RJW::JSR R1,$SAVE4 ; 0769
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 29
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (12)
000004 016700 000002G MOV .CRDAT+2,R0 ; 0792
000010 004767 000000G JSR PC,$CCBGT ; 0801
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0804
000040 062703 000022 ADD #22,R3
000044 004767 000000G JSR PC,$CMQRM
000050 010146 MOV R1,-(SP) ; LCCB,* 0805
000052 010446 MOV R4,-(SP) ; CCB,*
000054 004767 000000G JSR PC,STKCCB
000060 005764 000022 TST 22(R4) ; *(CCB) 0806
000064 001402 BEQ 3$
000066 010461 000002 MOV R4,2(R1) ; CCB,*(LCCB)
000072 010100 3$: MOV R1,R0 ; LCCB,* 0807
000074 062700 000024 ADD #24,R0
000100 010061 000020 MOV R0,20(R1) ; *,*(LCCB)
000104 012703 000026 MOV #26,R3 ; 0808
000110 060403 ADD R4,R3 ; CCB,*
000112 005713 TST (R3)
000114 003003 BGT 4$
000116 021327 177754 CMP (R3),#-24
000122 001001 BNE 5$
000124 005013 4$: CLR (R3) ; 0809
000126 005713 5$: TST (R3) ; 0810
000130 002001 BGE 6$
000132 005413 NEG (R3)
000134 011303 6$: MOV (R3),R3 ; *,NUM 0812
000136 110320 MOVB R3,(R0)+ ; NUM,PTR
000140 000303 SWAB R3 ; NUM
000142 110320 MOVB R3,(R0)+ ; NUM,PTR
000144 116420 000022 MOVB 22(R4),(R0)+ ; *(CCB),PTR 0813
000150 012761 000003 000022 MOV #3,22(R1) ; *,*(LCCB) 0814
000156 012716 000014 MOV #14,(SP) ; 0815
000162 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000166 010104 MOV R1,R4 ; LCCB,*
000170 004767 000000G JSR PC,DO.XME
000174 062706 000006 ADD #6,SP ; 0792
000200 000207 RTS PC ; 0769
; Routine Size: 65 words, Routine Base: $CODE$ + 2374
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 30
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (13)
; 0817 global routine SX$SDW (LNK): novalue =
; 0818
; 0819 !++
; 0820 ! FUNCTIONAL DESCRIPTION:
; 0821 ! Here to wait for resources to process a data xmission
; 0822 !
; 0823 ! FORMAL PARAMETERS:
; 0824 ! LNK Logical link block address
; 0825 !
; 0826 ! IMPLICIT INPUTS:
; 0827 ! CCB contents
; 0828 !
; 0829 ! IMPLICIT OUTPUTS:
; 0830 ! None
; 0831 !
; 0832 ! ROUTINE VALUE:
; 0833 ! COMPLETION CODES:
; 0834 ! None
; 0835 !
; 0836 ! SIDE EFFECTS:
; 0837 ! None
; 0838 !--
; 0839 begin
; 0840 $sc_get_data_base (SCDB);
; 0841 map LNK: ref block field (LLT_FIELDS);
; 0842 local
; 0843 CCB: ref block field (C_FIELDS),
; 0844 LCCB: ref block field (C_FIELDS);
; 0845
; 0846 ! If we can't get the CCB, we are forced to wait awhile
; 0847 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0848
; 0849 ! We got it - set our context into it
; 0850 CMQRM$ (LNK [L_OQUE], CCB);
; 0851 STKCCB (.LCCB, .CCB); ! Stack CCBs
; 0852 LCCB [C_PRM1] =
; 0853 begin
; 0854 if .CCB [$sub_field (C_PRM1, HI_BYTE)] eql S$PEOM
; 0855 then N$FEOM
; 0856 else 0
; 0857 end;
; 0858 $SC_DO_XME (.LCCB, N_XDAT, .LNK)
; 0859 end;
.SBTTL SX$SDW
000000 004167 000000G SX$SDW::JSR R1,$SAVE4 ; 0817
000004 016700 000002G MOV .CRDAT+2,R0 ; 0839
000010 004767 000000G JSR PC,$CCBGT ; 0847
000014 103402 BCS 1$
000016 010401 MOV R4,R1 ; $MCB$R4,LCCB
000020 000405 BR 2$
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 31
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (13)
000022 052710 002000 1$: BIS #2000,(R0)
000026 042710 010000 BIC #10000,(R0)
000032 000207 RTS PC
000034 016603 000014 2$: MOV 14(SP),R3 ; LNK,* 0850
000040 062703 000022 ADD #22,R3
000044 004767 000000G JSR PC,$CMQRM
000050 103401 BCS 3$
000052 010403 MOV R4,R3 ; $MCB$R4,CCB
000054 010146 3$: MOV R1,-(SP) ; LCCB,* 0851
000056 010346 MOV R3,-(SP) ; CCB,*
000060 004767 000000G JSR PC,STKCCB
000064 126327 000025 000004 CMPB 25(R3),#4 ; *(CCB),* 0854
000072 001003 BNE 4$
000074 012700 000001 MOV #1,R0 ; 0853
000100 000401 BR 5$
000102 005000 4$: CLR R0
000104 010061 000024 5$: MOV R0,24(R1) ; *,*(LCCB) 0852
000110 012716 000022 MOV #22,(SP) ; 0858
000114 016646 000020 MOV 20(SP),-(SP) ; LNK,*
000120 010104 MOV R1,R4 ; LCCB,*
000122 004767 000000G JSR PC,DO.XME
000126 062706 000006 ADD #6,SP ; 0839
000132 000207 RTS PC ; 0817
; Routine Size: 46 words, Routine Base: $CODE$ + 2576
; Maximum stack depth per invocation: 9 words
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 32
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (14)
; 0860 global routine SX$SIW (LNK): novalue =
; 0861
; 0862 !++
; 0863 ! FUNCTIONAL DESCRIPTION:
; 0864 ! Here to wait for resources to process an interrupt data xmission
; 0865 !
; 0866 ! FORMAL PARAMETERS:
; 0867 ! LNK Logical link block address
; 0868 !
; 0869 ! IMPLICIT INPUTS:
; 0870 ! CCB contents
; 0871 !
; 0872 ! IMPLICIT OUTPUTS:
; 0873 ! None
; 0874 !
; 0875 ! ROUTINE VALUE:
; 0876 ! COMPLETION CODES:
; 0877 ! None
; 0878 !
; 0879 ! SIDE EFFECTS:
; 0880 ! None
; 0881 !--
; 0882 begin
; 0883 $sc_get_data_base (SCDB);
; 0884 map LNK: ref block field (LLT_FIELDS);
; 0885 local
; 0886 CCB: ref block field (C_FIELDS),
; 0887 LCCB: ref block field (C_FIELDS);
; 0888
; 0889 if .LNK [LL_INTM] then return; ! Only one interrupt at a time
; 0890
; 0891 ! If we can't get the CCB, we are forced to wait awhile
; 0892 if not CCBGT$ (LCCB) then $SC_WAIT;
; 0893
; 0894 ! We got it - set our context into it
; 0895 CMQRM$ (LNK [L_INTQ], CCB);
; 0896 STKCCB (.LCCB, .CCB); ! Stack CCBs
; 0897 $SC_DO_XME (.LCCB, N_XINT, .LNK);
; 0898 LNK [LL_INTM] = true ! Interrupt outstanding now
; 0899 end;
.SBTTL SX$SIW
000000 004167 000000G SX$SIW::JSR R1,$SAVE4 ; 0860
000004 016700 000002G MOV .CRDAT+2,R0 ; 0882
000010 016601 000014 MOV 14(SP),R1 ; LNK,* 0889
000014 032711 020000 BIT #20000,(R1)
000020 001037 BNE 4$
000022 004767 000000G JSR PC,$CCBGT ; 0892
000026 103402 BCS 1$
000030 010402 MOV R4,R2 ; $MCB$R4,LCCB
000032 000405 BR 2$
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 33
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (14)
000034 052710 002000 1$: BIS #2000,(R0)
000040 042710 010000 BIC #10000,(R0)
000044 000207 RTS PC
000046 012703 000026 2$: MOV #26,R3 ; 0895
000052 060103 ADD R1,R3
000054 004767 000000G JSR PC,$CMQRM
000060 103401 BCS 3$
000062 010400 MOV R4,R0 ; $MCB$R4,CCB
000064 010246 3$: MOV R2,-(SP) ; LCCB,* 0896
000066 010046 MOV R0,-(SP) ; CCB,*
000070 004767 000000G JSR PC,STKCCB
000074 012716 000024 MOV #24,(SP) ; 0897
000100 010146 MOV R1,-(SP)
000102 010204 MOV R2,R4 ; LCCB,*
000104 004767 000000G JSR PC,DO.XME
000110 052711 020000 BIS #20000,(R1) ; 0898
000114 062706 000006 ADD #6,SP ; 0882
000120 000207 4$: RTS PC ; 0860
; Routine Size: 41 words, Routine Base: $CODE$ + 2732
; Maximum stack depth per invocation: 9 words
; 0900
; 0901 end
; 0902 eludom
; OTS external references
.GLOBL $SAVE5, $SAVE4
; PSECT SUMMARY
;
; Psect Name Words Attributes
; $CODE$ 790 RO , I , LCL, REL, CON
; $PLIT$ 2 RO , D , LCL, REL, CON
; LIBRARY STATISTICS
;
; -------- Symbols -------- Blocks
; File Total Loaded Percent Read
;
; NETPKG:<SC>SCPRM.L16.4 262 83 31 0
; NETPKG:<MCB>MCBLIB.L16.15 372 43 11 0
; NETPKG:<MCB>RSXLIB.L16.13 317 0 0 0
; NETPKG:<MCB>XPORTX.L16.15 599 7 1 0
; NETPKG:<MCB>SCSYS.L16.13 113 44 38 0
SCRES 25-Jan-1983 10:19:58 TOPS-20 Bliss-16 2A(530) Page 34
X01330 30-Dec-1982 20:57:21 NETPKG:<SC>SCRES.BLI.10 (14)
; Size: 790 code + 2 data words
; Run Time: 00:14.1
; Elapsed Time: 00:56.1
; Memory Used: 41 pages
; Compilation Complete
BLISS16 301 576
BYT$PTR 300 307 509 584 590 807 811
BYT$SHORT_STRING 513 519 812
BYT$STRING_SHORT 360
BYT$TINY_STRING 308 524 586 813
CB 288#
CB_FIELDS 288
CCB 279 283 284 289 298 343 348 349 351 413 419 422
423 426 455 460 461 494 501 502 508 510 524 561
567 570 574 575 578 585 591 623 650 651 653 658
668 674 707 714 716 720 728 757 764 765 766 796
804 805 806 808 809# 810# 812 813 843 850 851 854
886 895 896
CCBGT$ 282 346 417 458 498 565 631 711 761 801 847 892
CCBRT$ 641 657
CMQRM$ 283 348 419 460 501 567 650 714 764 804 850 895
CONBKI 247* 284
CONBKO 248 651
C_ADDR 288 300 360 371 376 509 590 637 656 807
C_BIAS 356 646
C_CHN 508 575 806
C_CNT 311 357 361 366 368 372 377 508 524 525 575 578
585 589 806 813 814
C_FIELDS 279 280 343 344 413 415 455 456 494 495 561 562
623 624 707 708 757 758 796 797 843 844 886 887
C_MOD 351 510 514 520 526 716 719 724 729
C_PRM1 300 307 422 423 425 568 570 591 662 663 665 668
720 725 765 807 811 852 854
C_PRM2 291 303 353 360 365 379 380 509 578 584 590 666
808 809 810 812
C_PRM3 672
C_PRM5 673
C_STK 502 674
C_STS 290 653
DSR_CONNECT_BLOCK_SIZE 637 656
FALSE 631 642
FLG 414 421# 422# 423# 424# 425
HI_BYTE 425 570 668 720 854
I$CLS 251
I$OPN 252
LCCB 280 282 284 288 290# 291# 292 300# 303# 307 311# 312
344 346 349 353# 356 357 360 361# 365# 366# 368 371#
372# 376# 377# 379# 380# 384 415 417 425# 426 427 456
458 461 462 495 498 502# 508# 509# 514# 520# 525# 526
531 562 565 568# 574 575# 578# 584 589# 590# 592 624
631 637 641 646# 651 656 657 662# 663 665# 666# 672#
673# 674# 675 708 711 719# 720# 724# 725# 728 729 758
761 765# 766 767 797 801 805 806# 807# 811 814# 815
844 847 851 852# 858 887 892 896 897
LEN 582 585# 586
LLT_FIELDS 277 341 411 453 491 559 621 705 755 794 841 884
LL_INTM 889 898
LL_KLOK 293
LNK 253 277 283 284 291# 292 293# 299# 312 315 341 348
384 385# 387 411 419 427 429 453 460 462 466 491
501 505 515# 521# 526 530# 531 534 559 567 591# 592
593# 595 621 626 627 650 662 672 673 675 676# 677#
680 705 714 729 731 755 764 767 769 794 804 815
817 841 850 858 860 884 889 895 897 898#
LO_BYTE 591
L_CHN 672
L_INTQ 764 895
L_IQUE 283 348 419 460
L_OQUE 501 567 650 714 804 850
L_PIX 299
L_RNA 662
L_STATE 385 505 515 521 530 593 626 627 677
L_TIMER 291 676
L_ULA 591
MAP$ 356 381
N$EABL 176+#
N$EABO 168+#
N$EABR 169+#
N$ECLS 174+#
N$ECON 165+#
N$ELST 172+#
N$EMTL 173+#
N$ENUR 175+#
N$EOPN 167+#
N$ERES 164+#
N$ERMO 171+#
N$ERUN 177+#
N$ESTE 166+#
N$ETMI 170+#
N$ETRN 178+#
N$FBOM 187+# 422
N$FCMP 188+#
N$FEOM 186+# 423 855
N$FMES 185+# 571 669
N$FSEG 184+# 572 670
N$HI 160+#
N$LO 179+#
N$SACC 162+#
N$SCC 198+#
N$SCD 202+#
N$SCI 199+#
N$SCL 208+#
N$SCN 209+#
N$SCR 195+#
N$SDIC 206+#
N$SDI 205+#
N$SDN 207+#
N$SDRC 197+#
N$SDR 196+#
N$SNC 201+#
N$SNR 200+#
N$SO 194+#
N$SREJ 161+#
N$SRJ 203+#
N$SRUN 204+#
N$SSUC 163+#
NR$CRW 217 253*
NR$DRW 218 315*
NR$DTW 219 387*
NR$INW 220 429*
N_GSTA 132+#
N_GSTS 129+#
N_PCLS 131+# 531
N_POPN 130+#
N_RCON 147+#
N_RDAT 149+#
N_RDSC 148+#
N_RHI 154+#
N_RINT 150+# 154+
N_SCNF 145+# 351
N_SCNS 146+#
N_XABT 137+# 514
N_XACC 134+# 592
N_XBUF 142+# 724
N_XCON 133+# 675
N_XDAT 138+# 858
N_XDRQ 141+# 719
N_XDSC 136+# 520
N_XHI 153+#
N_XINI 143+# 153+
N_XINT 139+# 897
N_XIRQ 140+# 767
N_XREJ 135+# 312 815
PTR 306 307# 308 493 509# 513 519 524 583 584# 586 798
811# 812 813
S$ABO 510
S$CNR 292
S$DAT 427
S$DRQ 716
S$DSR 384
S$INT 462
S$PBOM 422
S$PEOM 423 854
S$PMOM 424
S$PMSG 570 668
SCDB 276 291 294# 340 381 410 452 490 558 620 665 676
704 754 793 840 883
SCF_KLOK 294
SCRES 1#
SC_ITIME 291
SC_LADDR 665
SC_LLT_BIAS 381
SC_OTIME 676
STKCCB 249 349 426 461 574 728 766 805 851 896
ST_ABI 515
ST_CA 593
ST_CID 626
ST_CIS 677
ST_CLI 530 627
ST_DIR 385
ST_DI 521
ST_RUN 505
SX$ABW 222 466*
SX$ACW 223 534*
SX$CNW 224 595*
SX$DRW 226 680*
SX$IRW 227 731*
SX$RJW 229 769*
SX$SDW 230 817*
SX$SIW 231 860*
S_EABO 513
S_EDBO 380
S_ENUR 353
S_ERBO 808
S_SSUC 290
TRUE 293 294 631 638 898
$MCB_GET_DSR 637
$MCB_RETURN_DSR 656
$SC_DO_RCE 289 298
$SC_DO_RCP 292 384 427 462
$SC_DO_XCP 658
$SC_DO_XME 312 526 531 592 675 729 767 815 858 897
$SC_GET_DATA_BASE 276 340 410 452 490 558 620 704 754 793 840 883
$SC_WAIT 282 346 417 458 498 565 648 711 761 801 847 892
$SUB_FIELD 425 570 591 668 720 854