Trailing-Edge
-
PDP-10 Archives
-
TOPS-20_V6.1_DECnetSrc_7-23-85
-
mcb/xpt/tliitf.lst
There is 1 other file named tliitf.lst in the archive. Click here to see a list.
TLI 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 1
30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (1)
; 0001 ! COPYRIGHT (c) 1980, 1981, 1982
; 0002 ! DIGITAL EQUIPMENT CORPORATION
; 0003 ! Maynard, Massachusetts
; 0004 !
; 0005 ! This software is furnished under a license and may be used
; 0006 ! and copied only in accordance with the terms of such license
; 0007 ! and with the inclusion of the above copyright notice. This
; 0008 ! software or any other copies thereof may not be provided or
; 0009 ! otherwise made available to any other person. No title to
; 0010 ! and ownership of the software is hereby transferred.
; 0011 !
; 0012 ! The information in this software is subject to change
; 0013 ! without notice and should not be construed as a commitment
; 0014 ! by DIGITAL EQUIPMENT CORPORATION.
; 0015 !
; 0016 ! DIGITAL assumes no responsibility for the use or reliability
; 0017 ! of its software on equipment which is not supplied by
; 0018 ! DIGITAL.
; 0019
; 0020 module TLIITF (
; 0021 IDENT = 'X01150'
; 0022 ) =
; 0023 begin
; 0024
; 0025 !
; 0026 ! COPYRIGHT (c) 1979 BY
; 0027 ! DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
; 0028 !
; 0029 ! THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
; 0030 ! ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE AND WITH THE
; 0031 ! INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE OR ANY OTHER
; 0032 ! COPIES THEREOF MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE TO ANY
; 0033 ! OTHER PERSON. NO TITLE TO AND OWNERSHIP OF THE SOFTWARE IS HEREBY
; 0034 ! TRANSFERRED.
; 0035 !
; 0036 ! THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE
; 0037 ! AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT
; 0038 ! CORPORATION.
; 0039 !
; 0040 ! FACILITY: Transport
; 0041 !
; 0042 ! ABSTRACT:
; 0043 !
; 0044 ! Transport Line Interface interface module: dispatches
; 0045 ! all CCBs passed to the Transport Line Interface Layer.
; 0046 !
; 0047 ! ENVIRONMENT: MCB
; 0048 !
; 0049 ! AUTHOR: L. Webber , CREATION DATE: 17-Dec-79
; 0050 !
; 0051 ! MODIFIED BY:
; 0052 !
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 2
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (1)
; 0053 ! 17-Dec-79 : VERSION 1.00
; 0054 !
; 0055 ! 1.01 L. Webber, 16-Apr-80
; 0056 ! Add $XPTDB, the address of the Transport data base
; 0057 ! Make all line control functions take a LIX and translate to a line
; 0058 ! index (1-NLN). If the LIX is a new one (only possible for SET
; 0059 ! STATE LINE), assign a free line index to it.
; 0060 ! Make all line numbers within XPT and TLI be line indices (1-NLN),
; 0061 ! which should be translated to LIXes if the Data Link Layer is
; 0062 ! to be called.
; 0063 !
; 0064 ! 1.02 L. Webber, 23-June-80
; 0065 ! Modify to use MCBLIB macros
; 0066 !
; 0067 ! 1.03 A. Peckham, 15-Oct-80
; 0068 ! Update to use dispatch TABLE$ macro.
; 0069 ! Use symbolic function modifiers.
; 0070 !
; 0071 ! 1.04 A. Peckham, 21-Oct-80
; 0072 ! Change CE_ERR returns to SIGNAL_STOP.
; 0073 !
; 0074 ! 1.05 A. Peckham, 24-Oct-80
; 0075 ! Change some CE_ERRs back from SIGNAL_STOPs.
; 0076 !
; 0077 ! 1.06 L. Webber, 3-Dec-80
; 0078 ! Switch first two parameters to DISPATCH$ to match
; 0079 ! macro definition
; 0080 !
; 0081 ! 1.07 L. Webber, 11-Dec-80
; 0082 ! Modify to support MCB 3.1
; 0083 !
; 0084 ! 1.08 L. Webber, 12-Jan-81
; 0085 ! Take out Network Management code, and modify to call
; 0086 ! TLINMI.
; 0087 !
; 0088 ! 1.09 L. Webber, 20-Jan-81
; 0089 ! Take out $XPTDB and $NLN to make TLI read-only.
; 0090 !
; 0091 ! 1.10 L. Webber, 24-Feb-81
; 0092 ! Take TLITIM out of the dispatch table.
; 0093 ! Delete MAXVAL; it's not used anymore.
; 0094 !
; 0095 ! 1.11 L. Webber, 27-Feb-81
; 0096 ! Put "timer routine" TLINOP back in dispatch table.
; 0097 !
; 0098 ! 1.12 L. Webber, 19-May-81
; 0099 ! Add interface to ownership functions; change other DLL interfaces to
; 0100 ! new standard.
; 0101 !
; 0102 ! 1.13 L. Webber, 2-Jun-81
; 0103 ! Fix routines not to put LINEindex into C_LIN when sending CCBs to
; 0104 ! the DLL.
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 3
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (1)
; 0105 !
; 0106 ! 1.14 A. peckham, 14-Apr-82
; 0107 ! Optimize linkages through CTLTAB.
; 0108 !
; 0109 ! 1.15 A. peckham, 8-Jul-82
; 0110 ! Recognize Phase II node verification messages.
; 0111 !
; 0112 !--
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 4
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (2)
; 0113
; 0114 !
; 0115 ! MACROS
; 0116 !
; 0117
; 0118 require 'XPTMAC';
; 0216
; 0217 !
; 0218 ! TABLE OF CONTENTS
; 0219 !
; 0220
; 0221 forward routine
; 0222 XMEGO: MCB_DB_CCB_MOD novalue,
; 0223 RCEGO: MCB_DB_CCB_MOD novalue,
; 0224 CTLGO: MCB_DB_CCB_MOD novalue,
; 0225 XCPGO: MCB_DB_CCB_MOD novalue,
; 0226 RCPGO: MCB_DB_CCB_MOD novalue,
; 0227 CCPGO: MCB_DB_CCB_MOD novalue,
; 0228 TIMGO: MCB_DB_MOD novalue,
; 0229 TLI_XMT: MCB_DB_CCB novalue,
; 0230 TLI_RTN: MCB_DB_CCB novalue,
; 0231 DLL_RTN: MCB_DB_CCB novalue,
; 0232 REINIT: MCB_DB_CCB novalue,
; 0233 TERMINATE: MCB_DB_CCB novalue;
; 0234
; 0235 !
; 0236 ! EQUATED SYMBOLS:
; 0237 !
; 0238
; 0239 !
; 0240 ! OWN STORAGE:
; 0241 !
; 0242 ! $TLILL (see below)
; 0243 !
; 0244
; 0245 !
; 0246 ! EXTERNAL REFERENCES:
; 0247 !
; 0248
; 0249 external
; 0250 MCB$GW_PROCESS_HANDLE;
; 0251
; 0252 external routine
; 0253 CCPSTR: MCB_DB_CCB novalue,
; 0254 CCPSTP: MCB_DB_CCB novalue,
; 0255 GIVE_CIRCUIT: MCB_DB_CCB novalue,
; 0256 LD_CMP: MCB_DB_CCB novalue,
; 0257 LU_CMP: MCB_DB_CCB novalue,
; 0258 RCV_HLO: LINKAGE_DB_CCB novalue,
; 0259 RCV_NI: LINKAGE_DB_CCB novalue,
; 0260 RCV_NV: LINKAGE_DB_CCB novalue,
; 0261 RCV_TI: LINKAGE_DB_CCB novalue,
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 5
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (2)
; 0262 RCV_TV: LINKAGE_DB_CCB novalue,
; 0263 TAKE_CIRCUIT: MCB_DB_CCB novalue,
; 0264 TLI_NM: MCB_DB_CCB novalue,
; 0265 TLIAST: MCB_DB_CCB_MOD novalue,
; 0266 XCPDAT: MCB_DB_CCB novalue,
; 0267 XCPINI: MCB_DB_CCB novalue,
; 0268 XCPSTP: MCB_DB_CCB novalue;
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 6
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (3)
; 0269
; 0270 !++
; 0271 !
; 0272 ! Dispatch tables
; 0273 !
; 0274 !--
; 0275
; 0276 !+
; 0277 ! TRANSPORT LINE INTERFACE DISPATCH VECTOR
; 0278 !
; 0279 ! NAME: $TLILL
; 0280 !
; 0281 ! This vector is the main MCB transport vector which dispatches
; 0282 ! received CCBs to the interface routine TLIITF.
; 0283 !
; 0284 !-
; 0285 external routine $DSPCR : novalue;
; 0286
; 0287 global
; 0288 bind
; P 0289 $TLILL = TABLE$ ($DSPCR, FC_CCP,
; P 0290 (FC_AST, TLIAST), ! Asynchronous Event
; P 0291 (FC_XME, XMEGO), ! Transmit Enable
; P 0292 (FC_RCE, RCEGO), ! Receive Enable
; P 0293 (FC_CTL, CTLGO), ! Control
; P 0294 (FC_TIM, TIMGO), ! Timer (process initialization)
; P 0295 (FC_XCP, XCPGO), ! Transmit Complete
; P 0296 (FC_RCP, RCPGO), ! Receive Complete
; 0297 (FC_CCP, CCPGO)); ! Control Complete
; 0298
; 0299 !++
; 0300 !
; 0301 ! PROCESS HEADER
; 0302 !
; 0303 ! NAME OF PROCESS: TLI
; 0304 !
; 0305 !--
; 0306
; 0307 $MCB_PROCESS(name=TLI,llc_dispatch=$TLILL)
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 7
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (4)
; 0308
; 0309 routine XMEGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0310
; 0311 !++
; 0312 ! FUNCTIONAL DESCRIPTION:
; 0313 !
; 0314 ! Dispatches "transmit enable" CCBs
; 0315 !
; 0316 ! FORMAL PARAMETERS
; 0317 !
; 0318 ! XPTDB Address of Transport data base
; 0319 ! CCB CCB to be passed to dispatched routine
; 0320 ! MODIFIER Subfunction code; used to select routine
; 0321 !
; 0322 ! IMPLICIT INPUTS
; 0323 !
; 0324 ! NONE.
; 0325 !
; 0326 ! ROUTINE VALUE:
; 0327 ! COMPLETION CODES:
; 0328 !
; 0329 ! NONE.
; 0330 !
; 0331 ! SIDE EFFECTS:
; 0332 !
; 0333 ! NONE.
; 0334 !
; 0335 !--
; 0336
; 0337 begin
; P 0338 DISPATCH$(.MODIFIER,
; P 0339 TABLE$ ($DSPCR, FD_XME,
; P 0340 (TM_DAT, TLI_XMT)),
; P 0341 (.XPTDB,.CCB),
; 0342 MCB_DB_CCB);
; 0343 end; !End of XMEGO
.TITLE TLIITF
.IDENT /X01150/
000000 .PSECT ......, D
000000 077351 ; HEADER
U.14: .RAD50 /TLI/
000002 000403 .WORD 403
000004 000000 .WORD 0
000006 000000 .WORD 0
000010 000000 .WORD 0
000012 000000' .WORD $TLILL
000014 000000G .WORD .DSPCR
000016 000000G .WORD .DSPCR
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 8
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (4)
000020 000000G .WORD MCB$V0
000022 000000G .WORD MCB$V1
000024 140310 .WORD 140310
000026 143716 .WORD 143716
000030 001400 .WORD 1400
000032 000000 .WORD 0
000034 000000 .WORD 0
000036 000000 .WORD 0
000000 .PSECT $PLIT$, RO , D
000000 000000G P.AAA: .WORD TLIAST
000002 000000' .WORD U.1
000004 000000V .WORD U.2
000006 000000G .WORD $DSPCR
000010 000000V .WORD U.3
000012 000000V .WORD U.7
000014 000000V .WORD U.4
000016 000000V .WORD U.5
000020 000000G .WORD $DSPCR
000022 000000V .WORD U.6
000024 000000V P.AAB: .WORD U.8
.GLOBL .CRPIX, CCPSTR, CCPSTP, GIVE.CIRCUIT
.GLOBL LD.CMP, LU.CMP, RCV.HLO, RCV.NI
.GLOBL RCV.NV, RCV.TI, RCV.TV, TAKE.CIRCUIT
.GLOBL TLI.NM, TLIAST, XCPDAT, XCPINI
.GLOBL XCPSTP, $DSPCR, .DSPCR, MCB$V0
.GLOBL MCB$V1
000000' $TLILL== P.AAA
.SBTTL XMEGO
000000 .PSECT $CODE$, RO
000000 004773 000024' ; XMEGO
U.1: JSR PC,@P.AAB(R3) ; *,*(MODIFIER) 0342
000004 000207 RTS PC ; 0309
; Routine Size: 3 words, Routine Base: $CODE$ + 0000
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 9
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (5)
; 0344
; 0345 routine RCEGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0346
; 0347 !++
; 0348 ! FUNCTIONAL DESCRIPTION:
; 0349 !
; 0350 ! Routine to dispatch "receive enable" CCBs
; 0351 !
; 0352 ! FORMAL PARAMETERS
; 0353 !
; 0354 ! CCB CCB to pass to dispatched routine.
; 0355 ! MODIFIER Subfunction code; used to select routine.
; 0356 !
; 0357 ! IMPLICIT INPUTS
; 0358 !
; 0359 ! NONE.
; 0360 !
; 0361 ! ROUTINE VALUE:
; 0362 ! COMPLETION CODES:
; 0363 !
; 0364 ! NONE.
; 0365 !
; 0366 ! SIDE EFFECTS:
; 0367 !
; 0368 ! NONE.
; 0369 !
; 0370 !--
; 0371
; 0372 begin
; 0373 map CCB:ref block field (C_XPT_FIELDS);
; 0374 require 'XPTSYM';
; 0411
; P 0412 DISPATCH$(.MODIFIER,
; P 0413 TABLE$ ($DSPCR, FD_RCE,
; P 0414 (TM_INI, LU_CMP),
; P 0415 (TM_DAT, TLI_RTN),
; P 0416 (TM_TRM, LD_CMP)),
; P 0417 ($TLI_GET_LINE_DB(.CCB[C_LIN]),.CCB),
; 0418 MCB_DB_CCB);
; 0419 end; !End of RCEGO
000026 .PSECT $PLIT$, RO , D
000026 000000V P.AAC: .WORD U.9
000030 000000G .WORD $DSPCR
000032 000000G .WORD $DSPCR
000034 000000G .WORD $DSPCR
000036 000000G .WORD $DSPCR
000040 000000G .WORD $DSPCR
000042 000000G .WORD LU.CMP
000044 000000G .WORD LD.CMP
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 10
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (5)
.GLOBL .CRDAT, GTLINE
.SBTTL RCEGO
000006 .PSECT $CODE$, RO
000000 005000 ; RCEGO
U.2: CLR R0 ; 0418
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5
000014 004773 000026' JSR PC,@P.AAC(R3) ; *,*(MODIFIER)
000020 000207 RTS PC ; 0345
; Routine Size: 9 words, Routine Base: $CODE$ + 0006
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 11
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (6)
; 0420
; 0421 routine CTLGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0422
; 0423 !++
; 0424 ! FUNCTIONAL DESCRIPTION:
; 0425 !
; 0426 ! Routine to dispatch "control" CCBs
; 0427 !
; 0428 ! FORMAL PARAMETERS
; 0429 !
; 0430 ! XPTDB Address of Transport data base
; 0431 ! CCB CCB to pass to dispatched routine.
; 0432 ! MODIFIER Subfunction code; used to select routine.
; 0433 !
; 0434 ! IMPLICIT INPUTS
; 0435 !
; 0436 ! NONE.
; 0437 !
; 0438 ! ROUTINE VALUE:
; 0439 ! COMPLETION CODES:
; 0440 !
; 0441 ! NONE.
; 0442 !
; 0443 ! SIDE EFFECTS:
; 0444 !
; 0445 ! NONE.
; 0446 !
; 0447 !--
; 0448
; 0449 begin
; P 0450 DISPATCH$(.MODIFIER,
; P 0451 TABLE$ ($DSPCR, FD_CTL,
; P 0452 (FM_STR, GIVE_CIRCUIT),
; P 0453 (FM_STP, TAKE_CIRCUIT),
; P 0454 (TM_STR, REINIT),
; P 0455 (TM_STP, TERMINATE),
; P 0456 (FM_NM, TLI_NM)),
; P 0457 (.XPTDB,.CCB),
; 0458 MCB_DB_CCB);
; 0459 end; !End of CTLGO
000046 .PSECT $PLIT$, RO , D
000046 000000G P.AAD: .WORD $DSPCR
000050 000000G .WORD GIVE.CIRCUIT
000052 000000G .WORD TAKE.CIRCUIT
000054 000000G .WORD TLI.NM
000056 000000V .WORD U.12
000060 000000V .WORD U.11
000062 000000G .WORD $DSPCR
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 12
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (6)
.SBTTL CTLGO
000030 .PSECT $CODE$, RO
000000 004773 000046' ; CTLGO
U.3: JSR PC,@P.AAD(R3) ; *,*(MODIFIER) 0458
000004 000207 RTS PC ; 0421
; Routine Size: 3 words, Routine Base: $CODE$ + 0030
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 13
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (7)
; 0460
; 0461 routine XCPGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0462
; 0463 !++
; 0464 ! FUNCTIONAL DESCRIPTION:
; 0465 !
; 0466 ! Routine to dispatch "transmit complete" CCBs
; 0467 !
; 0468 ! FORMAL PARAMETERS
; 0469 !
; 0470 ! XPTDB Address of Transport data base
; 0471 ! CCB CCB to pass to dispatched routine.
; 0472 ! MODIFIER Subfunction code; used to select routine.
; 0473 !
; 0474 ! IMPLICIT INPUTS
; 0475 !
; 0476 ! NONE.
; 0477 !
; 0478 ! ROUTINE VALUE:
; 0479 ! COMPLETION CODES:
; 0480 !
; 0481 ! NONE.
; 0482 !
; 0483 ! SIDE EFFECTS:
; 0484 !
; 0485 ! NONE.
; 0486 !
; 0487 !--
; 0488
; 0489 begin
; 0490 map CCB:ref block field (C_XPT_FIELDS);
; 0491 require 'XPTSYM';
; 0528
; P 0529 DISPATCH$(.MODIFIER,
; P 0530 TABLE$ ($DSPCR, FD_XCP,
; P 0531 (DLL$K_TRANSMIT, DLL_RTN),
; P 0532 (DLL$K_INITIALIZE_LINK,XCPINI),
; P 0533 (DLL$K_STOP_LINK,XCPSTP)),
; P 0534 ($TLI_GET_LINE_DB(.CCB[C_LIN]),.CCB),
; 0535 MCB_DB_CCB);
; 0536 end; !End of XCPGO
000064 .PSECT $PLIT$, RO , D
000064 000000V P.AAE: .WORD U.10
000066 000000G .WORD XCPINI
000070 000000G .WORD XCPSTP
.SBTTL XCPGO
000036 .PSECT $CODE$, RO
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 14
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (7)
000000 005000 ; XCPGO
U.4: CLR R0 ; 0535
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5
000014 004773 000064' JSR PC,@P.AAE(R3) ; *,*(MODIFIER)
000020 000207 RTS PC ; 0461
; Routine Size: 9 words, Routine Base: $CODE$ + 0036
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 15
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (8)
; 0537
; 0538 routine RCPGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0539
; 0540 !++
; 0541 ! FUNCTIONAL DESCRIPTION:
; 0542 !
; 0543 ! Routine to dispatch "receive complete" CCBs.
; 0544 !
; 0545 ! FORMAL PARAMETERS
; 0546 !
; 0547 ! XPTDB Address of Transport data base
; 0548 ! CCB CCB to pass to dispatched routine.
; 0549 ! MODIFIER Subfunction code; not used.
; 0550 !
; 0551 ! IMPLICIT INPUTS
; 0552 !
; 0553 ! NONE.
; 0554 !
; 0555 ! ROUTINE VALUE:
; 0556 ! COMPLETION CODES:
; 0557 !
; 0558 ! NONE.
; 0559 !
; 0560 ! SIDE EFFECTS:
; 0561 !
; 0562 ! NONE.
; 0563 !
; 0564 !--
; 0565
; 0566 begin
; 0567 map CCB: ref block field (C_XPT_fields);
; 0568 local LINEb;
; 0569 require 'XPTSYM';
; 0606
; 0607 LINEb = $TLI_GET_LINE_DB(.CCB[C_LIN]); ! Address line data base entry
; 0608
; 0609 !
; 0610 !
; 0611 !
; 0612
; 0613 if .DLLstate eql DLL_RUNNING
; 0614 then begin
; 0615 pointer PTR;
; 0616
; 0617 !
; 0618 ! Reset the T4 timer (listen timer).
; 0619 ! Note that even invalid messages set this flag; Transport is
; 0620 ! happy as long as SOMETHING is received over a line...
; 0621 !
; 0622
; 0623 Listen_clock = .Listen_timer;
; 0624
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 16
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (8)
; 0625 !
; 0626 ! Map in the receive buffer
; 0627 !
; 0628
; 0629 MAPBUF (.CCB,PTR);
; 0630
; 0631 !
; 0632 ! Pick up the first character of the message and dispatch on it
; 0633 !
; 0634
; 0635 selectone getb(PTR) of
; 0636 set
; 0637 [OTI_CTLflg]: ! Node Init/Verify
; 0638 selectone getb(PTR) of
; 0639 set
; 0640 [INIT_SUBflg]: ! Node Init
; 0641 begin
; 0642 RCV_NI(.LINEb,.CCB);
; 0643 CCB[C_FNC] = FC_RCE;
; 0644 end;
; 0645 [VER_SUBflg]: ! Node Verify
; 0646 begin
; 0647 RCV_NV(.LINEb,.CCB);
; 0648 CCB[C_FNC] = FC_RCE;
; 0649 end;
; 0650 [otherwise]: ! Unknown
; 0651 CCB[C_FNC] = FC_RCE;
; 0652 tes;
; 0653 [INIT_CTLflg]: ! Transport Init
; 0654 begin
; 0655 RCV_TI(.LINEb,.CCB);
; 0656 CCB[C_FNC] = FC_RCE;
; 0657 end;
; 0658 [HELLO_CTLflg]: ! Hello or Test
; 0659 begin
; 0660 RCV_HLO(.LINEb,.CCB);
; 0661 CCB[C_FNC] = FC_RCE;
; 0662 end;
; 0663 [VERIFY_CTLflg]: ! Transport Verify
; 0664 begin
; 0665 RCV_TV(.LINEb,.CCB);
; 0666 CCB[C_FNC] = FC_RCE;
; 0667 end;
; 0668 [otherwise]: ! Something else
; 0669 begin
; 0670 CCB[C_HANDLE] = .XPThandle;
; 0671 CCB[C_MOD] = XM_DAT;
; 0672 end;
; 0673 tes
; 0674 end
; 0675 else CCB [C_FNC] = FC_RCE; ! Toss message
; 0676
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 17
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (8)
; 0677 $MCB_SCHEDULE_CCB(.CCB);
; 0678 end; !End of RCPGO
.GLOBL KISAR6, $SCHED
.SBTTL RCPGO
000000 005000 ; RCPGO
U.5: CLR R0 ; 0607
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5 ; *,LINEB
000014 126527 000006 000004 CMPB 6(R5),#4 ; *(LINEB),* 0613
000022 001064 BNE 6$
000024 016565 000024 000046 MOV 24(R5),46(R5) ; *(LINEB),*(LINEB) 0623
000032 016467 000016 000000G MOV 16(R4),KISAR6 ; *(CCB),* 0629
000040 016400 000020 MOV 20(R4),R0 ; *(CCB),PTR
000044 005003 CLR R3 ; 0635
000046 152003 BISB (R0)+,R3 ; PTR,*
000050 020327 000130 CMP R3,#130
000054 001017 BNE 2$
000056 112000 MOVB (R0)+,R0 ; PTR,* 0638
000060 042700 177400 BIC #177400,R0
000064 020027 000001 CMP R0,#1
000070 001003 BNE 1$
000072 004767 000000G JSR PC,RCV.NI ; 0642
000076 000436 BR 6$ ; 0643
000100 020027 000002 1$: CMP R0,#2 ; 0638
000104 001033 BNE 6$
000106 004767 000000G JSR PC,RCV.NV ; 0647
000112 000430 BR 6$ ; 0648
000114 020327 000001 2$: CMP R3,#1 ; 0635
000120 001003 BNE 3$
000122 004767 000000G JSR PC,RCV.TI ; 0655
000126 000422 BR 6$ ; 0656
000130 020327 000005 3$: CMP R3,#5 ; 0635
000134 001003 BNE 4$
000136 004767 000000G JSR PC,RCV.HLO ; 0660
000142 000414 BR 6$ ; 0661
000144 020327 000003 4$: CMP R3,#3 ; 0635
000150 001003 BNE 5$
000152 004767 000000G JSR PC,RCV.TV ; 0665
000156 000406 BR 6$ ; 0666
000160 016564 000026 000010 5$: MOV 26(R5),10(R4) ; *(LINEB),*(CCB) 0670
000166 105064 000013 CLRB 13(R4) ; *(CCB) 0671
000172 000403 BR 7$ ; 0613
000174 112764 000004 000012 6$: MOVB #4,12(R4) ; *,*(CCB) 0675
000202 004767 000000G 7$: JSR PC,$SCHED ; 0677
000206 000207 RTS PC ; 0538
; Routine Size: 68 words, Routine Base: $CODE$ + 0060
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 18
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (8)
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 19
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (9)
; 0679
; 0680 routine CCPGO (XPTDB,CCB,MODIFIER): MCB_DB_CCB_MOD novalue =
; 0681
; 0682 !++
; 0683 ! FUNCTIONAL DESCRIPTION:
; 0684 !
; 0685 ! Routine to dispatch "control complete" CCBs.
; 0686 !
; 0687 ! FORMAL PARAMETERS
; 0688 !
; 0689 ! XPTDB Address of Transport data base
; 0690 ! CCB CCB to pass to dispatched routine.
; 0691 ! MODIFIER Subfunction code; used to select routine.
; 0692 !
; 0693 ! IMPLICIT INPUTS
; 0694 !
; 0695 ! NONE.
; 0696 !
; 0697 ! ROUTINE VALUE:
; 0698 ! COMPLETION CODES:
; 0699 !
; 0700 ! NONE.
; 0701 !
; 0702 ! SIDE EFFECTS:
; 0703 !
; 0704 ! NONE.
; 0705 !
; 0706 !--
; 0707
; 0708 begin
; 0709 map CCB:ref block field (C_XPT_FIELDS);
; 0710 require 'XPTSYM';
; 0747
; P 0748 DISPATCH$(.MODIFIER,
; P 0749 TABLE$ ($DSPCR, FD_CCP,
; P 0750 (FM_STR, CCPSTR),
; P 0751 (FM_STP, CCPSTP)),
; P 0752 ($TLI_GET_LINE_DB(.CCB[C_LIN]),.CCB),
; 0753 MCB_DB_CCB);
; 0754
; 0755 end; !End of CCPGO
000072 .PSECT $PLIT$, RO , D
000072 000000G P.AAF: .WORD $DSPCR
000074 000000G .WORD CCPSTR
000076 000000G .WORD CCPSTP
000100 000000G .WORD $DSPCR
000102 000000G .WORD $DSPCR
000104 000000G .WORD $DSPCR
000106 000000G .WORD $DSPCR
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 20
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (9)
.SBTTL CCPGO
000270 .PSECT $CODE$, RO
000000 005000 ; CCPGO
U.6: CLR R0 ; 0753
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5
000014 004773 000072' JSR PC,@P.AAF(R3) ; *,*(MODIFIER)
000020 000207 RTS PC ; 0680
; Routine Size: 9 words, Routine Base: $CODE$ + 0270
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 21
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (10)
; 0756
; 0757 routine TIMGO (XPTDB,MODIFIER): MCB_DB_MOD novalue =
; 0758
; 0759 !++
; 0760 ! FUNCTIONAL DESCRIPTION:
; 0761 !
; 0762 ! Routine to dispatch system related stuff
; 0763 !
; 0764 ! FORMAL PARAMETERS
; 0765 !
; 0766 ! XPTDB Address of Transport data base
; 0767 ! MODIFIER Subfunction code; used to select routine.
; 0768 !
; 0769 ! IMPLICIT INPUTS
; 0770 !
; 0771 ! NONE.
; 0772 !
; 0773 ! ROUTINE VALUE:
; 0774 ! COMPLETION CODES:
; 0775 !
; 0776 ! NONE.
; 0777 !
; 0778 ! SIDE EFFECTS:
; 0779 !
; 0780 ! NONE.
; 0781 !
; 0782 !--
; 0783
; 0784 begin
; 0785 0 ! Nothing to do...
; 0786 end; ! End of TIMGO
.SBTTL TIMGO
000000 000207 ; TIMGO
U.7: RTS PC ; 0757
; Routine Size: 1 word, Routine Base: $CODE$ + 0312
; Maximum stack depth per invocation: 0 words
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 22
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (11)
; 0787
; 0788 routine TLI_XMT (XPTDB,CCB): MCB_DB_CCB novalue =
; 0789
; 0790 !++
; 0791 ! FUNCTIONAL DESCRIPTION:
; 0792 !
; 0793 ! Routine to pass CCBs from Transport to the Data Link Layer.
; 0794 !
; 0795 ! FORMAL PARAMETERS
; 0796 !
; 0797 ! CCB CCB to pass on.
; 0798 ! CCB[C_LIN] Line index of line to transmit on
; 0799 !
; 0800 ! IMPLICIT INPUTS
; 0801 !
; 0802 ! NONE.
; 0803 !
; 0804 ! ROUTINE VALUE:
; 0805 ! COMPLETION CODES:
; 0806 !
; 0807 ! NONE.
; 0808 !
; 0809 ! SIDE EFFECTS:
; 0810 !
; 0811 ! The line index is translated into a LIX.
; 0812 !
; 0813 !--
; 0814
; 0815 begin
; 0816 map CCB: ref block field (C_XPT_fields);
; 0817 local LINEb;
; 0818 require 'XPTSYM';
; 0855
; 0856 LINEb = $TLI_GET_LINE_DB(.CCB[C_LIN]); ! Address line data base entry
; 0857 CCB[C_HANDLE] = .DLLhandle;
; 0858 $DLL_TRANSMIT(.CCB);
; 0859 end; !End of TLI_XMT
.SBTTL TLI.XMT
000000 005000 ; TLI.XMT
U.8: CLR R0 ; 0856
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 016064 000032 000010 MOV 32(R0),10(R4) ; *(LINEB),*(CCB) 0857
000020 112764 000002 000012 MOVB #2,12(R4) ; *,*(CCB) 0858
000026 105064 000013 CLRB 13(R4) ; *(CCB)
000032 004767 000000G JSR PC,$SCHED
000036 000207 RTS PC ; 0788
; Routine Size: 16 words, Routine Base: $CODE$ + 0314
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 23
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (12)
; 0860
; 0861 routine TLI_RTN (LINEb,CCB): MCB_DB_CCB novalue =
; 0862
; 0863 !++
; 0864 ! FUNCTIONAL DESCRIPTION:
; 0865 !
; 0866 ! Routine to pass used receive buffers from Transport back to
; 0867 ! the Data Link Layer.
; 0868 !
; 0869 ! FORMAL PARAMETERS
; 0870 !
; 0871 ! CCB CCB to pass on to DLL
; 0872 ! CCB[C_LIN] Line index for line buffer was received on
; 0873 !
; 0874 ! IMPLICIT INPUTS
; 0875 !
; 0876 ! NONE.
; 0877 !
; 0878 ! ROUTINE VALUE:
; 0879 ! COMPLETION CODES:
; 0880 !
; 0881 ! NONE.
; 0882 !
; 0883 ! SIDE EFFECTS:
; 0884 !
; 0885 ! The line index is translated into a LIX.
; 0886 !
; 0887 !--
; 0888
; 0889 begin
; 0890 map CCB: ref block field (C_XPT_fields);
; 0891 require 'XPTSYM';
; 0928
; 0929 CCB[C_HANDLE] = .DLLhandle;
; 0930 CCB[C_FNC] = FC_RCE;
; 0931 CCB[C_MOD] = DLL$K_TRANSMIT;
; 0932 $MCB_SCHEDULE_CCB(.CCB);
; 0933 end; !End of TLI_RTN
.SBTTL TLI.RTN
000000 016564 000032 000010 ; TLI.RTN
U.9: MOV 32(R5),10(R4) ; *(LINEB),*(CCB) 0929
000006 112764 000004 000012 MOVB #4,12(R4) ; *,*(CCB) 0930
000014 105064 000013 CLRB 13(R4) ; *(CCB) 0931
000020 004767 000000G JSR PC,$SCHED ; 0932
000024 000207 RTS PC ; 0861
; Routine Size: 11 words, Routine Base: $CODE$ + 0354
; Maximum stack depth per invocation: 1 word
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 24
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (13)
; 0934
; 0935 routine DLL_RTN (LINEb,CCB): MCB_DB_CCB novalue =
; 0936
; 0937 !++
; 0938 ! FUNCTIONAL DESCRIPTION:
; 0939 !
; 0940 ! Routine to process completed transmits from the Data Link Layer.
; 0941 ! If the buffer is type INITcode, the it is passed to Line Support to
; 0942 ! process. Otherwise, it is passed on to Transport.
; 0943 !
; 0944 ! FORMAL PARAMETERS
; 0945 !
; 0946 ! CCB CCB representing the completed transmit.
; 0947 ! CCB[C_LIN] LIX for line transmit was done on
; 0948 !
; 0949 ! IMPLICIT INPUTS
; 0950 !
; 0951 ! NONE.
; 0952 !
; 0953 ! ROUTINE VALUE:
; 0954 ! COMPLETION CODES:
; 0955 !
; 0956 ! NONE.
; 0957 !
; 0958 ! SIDE EFFECTS:
; 0959 !
; 0960 !--
; 0961
; 0962 begin
; 0963 map CCB: ref block field (C_XPT_fields);
; 0964 require 'XPTSYM';
; 1001
; 1002 if .CCB[C_OWN] eql .MCB$GW_PROCESS_HANDLE ! Buffer created by Line Support -
; 1003 then XCPDAT(.LINEb,.CCB) ! have Line Support finish it off
; 1004 else begin ! Buffer is Transport's -
; 1005 CCB[C_HANDLE] = .XPThandle; ! send it
; 1006 $MCB_SCHEDULE_CCB(.CCB); ! back there
; 1007 end;
; 1008
; 1009 end; !End of DLL_RTN
.SBTTL DLL.RTN
000000 005746 ; DLL.RTN
U.10: TST -(SP) ; 0935
000002 010446 MOV R4,-(SP)
000004 010566 000002 MOV R5,2(SP)
000010 005000 CLR R0 ; 1002
000012 010401 MOV R4,R1
000014 156100 000006 BISB 6(R1),R0
000020 020067 000000G CMP R0,.CRPIX
000024 001003 BNE 1$
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 25
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (13)
000026 004767 000000G JSR PC,XCPDAT ; 1003
000032 000411 BR 2$ ; 1002
000034 011600 1$: MOV (SP),R0 ; 1005
000036 016601 000002 MOV 2(SP),R1
000042 016160 000026 000010 MOV 26(R1),10(R0)
000050 010004 MOV R0,R4 ; 1006
000052 004767 000000G JSR PC,$SCHED
000056 022626 2$: CMP (SP)+,(SP)+ ; 0935
000060 000207 RTS PC
; Routine Size: 25 words, Routine Base: $CODE$ + 0402
; Maximum stack depth per invocation: 3 words
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 26
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (14)
; 1010
; 1011 routine REINIT (XPTDB,CCB): MCB_DB_CCB novalue =
; 1012
; 1013 !++
; 1014 ! FUNCTIONAL DESCRIPTION:
; 1015 !
; 1016 ! This routine performs the "reinitialize" function. It calls INI_LIN
; 1017 ! in Line Support to do that. This function is invalid if the line is
; 1018 ! terminating.
; 1019 !
; 1020 ! FORMAL PARAMETERS
; 1021 !
; 1022 ! CCB Function CCB; it will be saved for completion.
; 1023 ! CCB[C_LIN] Line index of line to reinitialize
; 1024 !
; 1025 ! IMPLICIT INPUTS
; 1026 !
; 1027 ! NONE.
; 1028 !
; 1029 ! ROUTINE VALUE:
; 1030 ! COMPLETION CODES:
; 1031 !
; 1032 ! NONE.
; 1033 !
; 1034 ! SIDE EFFECTS:
; 1035 !
; 1036 ! Reinitializing a line will terminate all transmits pending
; 1037 ! on that line. All receive buffers given to Transport from
; 1038 ! the line must have been returned before this function is
; 1039 ! called.
; 1040 !
; 1041 !--
; 1042
; 1043 begin
; 1044 map CCB: ref block field (C_XPT_FIELDS);
; 1045 local LINEb;
; 1046 require 'XPTSYM';
; 1083
; 1084 !
; 1085 ! If the line is terminating, reject the request
; 1086 !
; 1087
; 1088 LINEb = $TLI_GET_LINE_DB(.CCB[C_LIN]); ! Address line data base entry
; 1089 case .LINEstate from HA to RU of
; 1090 set
; 1091
; 1092 [HA,DT,OFF]: begin !Line is terminating or halted
; 1093
; 1094 CCB[C_STS] = CE_DIS;
; 1095 CCB[C_FNC] = FC_CCP;
; 1096 $MCB_SCHEDULE_CCB(.CCB);
; 1097 end;
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 27
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (14)
; 1098
; 1099 !
; 1100 ! Otherwise, restart the line unconditionally
; 1101 !
; 1102
; 1103 [inrange]: begin
; 1104 CALL$L(INI_LIN,.LINEb);
; 1105 CCB[C_LNK] = .LINEccb; ! Chain the function CCB
; 1106 LINEccb = .CCB; ! into the pending queue
; 1107 end;
; 1108
; 1109 tes;
; 1110
; 1111 end; !End of REINIT
.GLOBL INI.LIN
.SBTTL REINIT
000000 005000 ; REINIT
U.11: CLR R0 ; 1088
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5 ; *,LINEB
000014 111500 MOVB (R5),R0 ; LINEB,* 1089
000016 006300 ASL R0
000020 066007 000110' ADD P.AAG(R0),PC ; Case dispatch
000024 012764 177520 000014 1$: MOV #-260,14(R4) ; *,*(CCB) 1094
000032 112764 000022 000012 MOVB #22,12(R4) ; *,*(CCB) 1095
000040 004767 000000G JSR PC,$SCHED ; 1096
000044 000207 RTS PC ; 1089
000046 010546 2$: MOV R5,-(SP) ; LINEB,* 1104
000050 012746 000001 MOV #1,-(SP)
000054 012746 000000G MOV #INI.LIN,-(SP)
000060 004767 000000G JSR PC,$CALL
000064 016514 000050 MOV 50(R5),(R4) ; *(LINEB),CCB 1105
000070 010465 000050 MOV R4,50(R5) ; CCB,*(LINEB) 1106
000074 062706 000006 ADD #6,SP ; 1103
000100 000207 RTS PC ; 1011
; Routine Size: 33 words, Routine Base: $CODE$ + 0464
; Maximum stack depth per invocation: 4 words
000110 .PSECT $PLIT$, RO , D
P.AAG: ; CASE Table for REINIT+0020 1089
000110 000000 .WORD 0 ; [1$]
000112 000000 .WORD 0 ; [1$]
000114 000000 .WORD 0 ; [1$]
000116 000022 .WORD 22 ; [2$]
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 28
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (14)
000120 000022 .WORD 22 ; [2$]
000122 000022 .WORD 22 ; [2$]
000124 000022 .WORD 22 ; [2$]
000126 000022 .WORD 22 ; [2$]
000130 000022 .WORD 22 ; [2$]
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 29
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (15)
; 1112
; 1113 routine TERMINATE (XPTDB,CCB): MCB_DB_CCB novalue =
; 1114
; 1115 !++
; 1116 ! FUNCTIONAL DESCRIPTION:
; 1117 !
; 1118 ! This routine performs the "termination" function for a line. It calls
; 1119 ! TERM_LIN in Line Support to do this.
; 1120 !
; 1121 ! FORMAL PARAMETERS
; 1122 !
; 1123 ! CCB Function CCB; it is queued for completion.
; 1124 !
; 1125 ! IMPLICIT INPUTS
; 1126 !
; 1127 ! NONE.
; 1128 !
; 1129 ! ROUTINE VALUE:
; 1130 ! COMPLETION CODES:
; 1131 !
; 1132 ! NONE.
; 1133 !
; 1134 ! SIDE EFFECTS:
; 1135 !
; 1136 ! All transmits outstanding to the line being terminated will be
; 1137 ! returned to Transport before this function completes. All receives
; 1138 ! from the line which have been given to Transport must be returned
; 1139 ! before this function is called.
; 1140 !
; 1141 !--
; 1142
; 1143 begin
; 1144 map CCB: ref block field (C_XPT_FIELDS);
; 1145 local LINEb;
; 1146 require 'XPTSYM';
; 1183
; 1184 LINEb = $TLI_GET_LINE_DB(.CCB[C_LIN]); ! Address line data base entry
; 1185 CALL$L(TERM_LIN,.LINEb); ! Terminate the line protocol unconditionally
; 1186 CCB[C_LNK] = .LINEccb; ! Chain the function CCB
; 1187 LINEccb = .CCB; ! into the pending queue
; 1188 end; !End of TERMINATE
.GLOBL TERM.LIN
.SBTTL TERMINATE
000566 .PSECT $CODE$, RO
000000 005000 ; TERMINATE
U.12: CLR R0 ; 1184
000002 156400 000010 BISB 10(R4),R0 ; *(CCB),*
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 30
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (15)
000006 004767 000000G JSR PC,GTLINE
000012 010005 MOV R0,R5 ; *,LINEB
000014 010546 MOV R5,-(SP) ; LINEB,* 1185
000016 012746 000001 MOV #1,-(SP)
000022 012746 000000G MOV #TERM.LIN,-(SP)
000026 004767 000000G JSR PC,$CALL
000032 016514 000050 MOV 50(R5),(R4) ; *(LINEB),CCB 1186
000036 010465 000050 MOV R4,50(R5) ; CCB,*(LINEB) 1187
000042 062706 000006 ADD #6,SP ; 1143
000046 000207 RTS PC ; 1113
; Routine Size: 20 words, Routine Base: $CODE$ + 0566
; Maximum stack depth per invocation: 4 words
TLIITF 25-Jan-1983 09:59:44 TOPS-20 Bliss-16 2A(530) Page 31
X01150 30-Dec-1982 21:07:12 NETPKG:<XPT>TLIITF.BLI.9 (16)
; 1189
; 1190 end !End of module TLIITF
; 1191 eludom
; OTS external references
.GLOBL $CALL
; PSECT SUMMARY
;
; Psect Name Words Attributes
; $PLIT$ 45 RO , D , LCL, REL, CON
; ...... 16 RW , D , LCL, REL, CON
; $CODE$ 207 RO , I , LCL, REL, CON
; LIBRARY STATISTICS
;
; -------- Symbols -------- Blocks
; File Total Loaded Percent Read
;
; NETPKG:<MCB>XPORTX.L16.15 599 0 0 0
; NETPKG:<MCB>MCBLIB.L16.15 372 57 15 0
; NETPKG:<MCB>NMXLIB.L16.13 200 0 0 0
; NETPKG:<XPT>XPTLIB.L16.3 510 169 33 0
; Size: 207 code + 61 data words
; Run Time: 00:11.8
; Elapsed Time: 00:38.9
; Memory Used: 41 pages
; Compilation Complete
ADDRESS 170+ 172+ 173+ 175+ 176+ 178+ 179+ 185+ 186+ 189+ 190+ 191+
BPT 199+# 211+#
BUFCHK 203+ 204+# 213+ 214+#
CALL$L 1104 1185
CCB 309 341 345 373 417 421 457 461 490 534 538 567
607 629 642 643# 647 648# 651# 655 656# 660 661# 665
666# 670# 671# 675# 677 680 709 752 788 816 856 857#
858 861 890 929# 930# 931# 932 935 963 1002 1003 1005#
1006 1011 1044 1088 1094# 1095# 1096 1105# 1106 1113 1144 1184
1186# 1187
CCPGO 227 297 680*
CCPSTP 254 751
CCPSTR 253* 750
CE_DIS 1094
CHKBUF 206+* 207+
CTLGO 224 293 421*
C_FNC 643 648 651 656 661 666 675 930 1095
C_HANDLE 670 857 929 1005
C_LIN 417 534 607 752 856 1088 1184
C_LNK 1105 1186
C_MOD 671 931
C_OWN 1002
C_STS 1094
C_XPT_FIELDS 373 490 567 709 816 890 963 1044 1144
DISPATCH$ 338 412 450 529 748
DLL$K_INITIALIZE_LINK 532
DLL$K_STOP_LINK 533
DLL$K_TRANSMIT 531 931
DLLHANDLE 857 929
DLLSTATE 613
DLL_RTN 231 531 935*
DLL_RUNNING 613
DT 1092
FC_AST 290
FC_CCP 289 297 1095
FC_CTL 293
FC_RCE 292 643 648 651 656 661 666 675 930
FC_RCP 296
FC_TIM 294
FC_XCP 295
FC_XME 291
FD_CCP 749
FD_CTL 451
FD_RCE 413
FD_XCP 530
FD_XME 339
FM_NM 456
FM_STP 453 751
FM_STR 452 750
GETB 635 638
GETQ 170+#
GETW 149+# 172+ 173+
GIVE_CIRCUIT 255 452
HA 1089 1092
HELLO_CTLFLG 658
I 194+ 196+
INIT_CTLFLG 653
INIT_SUBFLG 640
INI_LIN 1104
J 194+ 196+
LD_CMP 256 416
LINEBLOCK 401+ 518+ 596+ 737+ 845+ 918+ 991+ 1073+ 1173+
LINEB 399+ 401+ 516+ 518+ 568 594+ 596+ 607# 642 647 655 660
665 735+ 737+ 817 843+ 845+ 856# 861 916+ 918+ 935 989+
991+ 1003 1045 1071+ 1073+ 1088# 1104 1145 1171+ 1173+ 1184# 1185
LINECCB 1105 1106# 1186 1187#
LINESTATE 1089
LINKAGE_DB_CCB 258 259 260 261 262
LISTEN_CLOCK 623#
LISTEN_TIMER 623
LLC_DISPATCH 307#
LU_CMP 257 414
M 194+ 195+
MAPBUF 629
MATRIX 194+# 196+
MCB$GAW_PROCESS_DATA_BASE 404+ 405+ 408+ 521+ 522+ 525+ 599+ 600+ 603+ 740+ 741+ 744+
848+ 849+ 852+ 921+ 922+ 925+ 994+ 995+ 998+ 1076+ 1077+ 1080+
1176+ 1177+ 1180+
MCB$GW_PROCESS_HANDLE 250 1002
MCB_DB_CCB_MOD 222 223 224 225 226 227 265 309# 345# 421# 461# 538#
680#
MCB_DB_CCB 229 230 231 232 233 253 254 255 256 257 263 264
266 267 268 342 418 458 535 753 788# 861# 935# 1011#
1113#
MCB_DB_MOD 228 757#
MODIFIER 309 338 345 412 421 450 461 529 538 680 748 757
N 194+ 195+
NAME 307#
NL 194+ 196+
NODEBLOCK 396+ 513+ 591+ 732+ 840+ 913+ 986+ 1068+ 1168+
NODEB 394+ 396+ 511+ 513+ 589+ 591+ 730+ 732+ 838+ 840+ 911+ 913+
984+ 986+ 1066+ 1068+ 1166+ 1168+
NOP 211+ 212+ 214+
NO_LINEB 400+ 517+ 595+ 736+ 844+ 917+ 990+ 1072+ 1172+
NO_NODEB 395+ 512+ 590+ 731+ 839+ 912+ 985+ 1067+ 1167+
OFF 1092
OTI_CTLFLG 637
POINTER 615
PTR 149+ 152+ 153+ 156+ 159+ 160+ 166+ 167+ 170+ 172+ 173+ 175+
178+ 179+ 180+ 181+ 185+ 186+ 615 629 635 638
PUTQ 175+#
PUTW 156+# 185+ 186+
RCEGO 223 292 345*
RCPGO 226 296 538*
RCV_HLO 258 660
RCV_NI 259 642
RCV_NV 260 647
RCV_TI 261 655
RCV_TV 262 665
REINIT 232 454 1011*
RU 1089
TABLE$ 289 339 413 451 530 749
TAKE_CIRCUIT 263 453
TERMINATE 233 455 1113*
TERM_LIN 1185
TIMGO 228 294 757*
TLI 307
TLIAST 265 290
TLIITF 20#
TLI_NM 264 456
TLI_RTN 230 415 861*
TLI_XMT 229 340 788*
TM_DAT 340 415
TM_INI 414
TM_STP 455
TM_STR 454
TM_TRM 416
UNIT 194+# 195+ 196+
VALUE 156+ 157+ 159+ 160+ 165+
VERIFY_CTLFLG 663
VER_SUBFLG 645
X 151+ 152+# 153+# 154+ 164+ 165+# 166+ 167+
XCPDAT 266 1003
XCPGO 225 295 461*
XCPINI 267 532
XCPSTP 268 533
XMEGO 222 291 309*
XM_DAT 671
XPTDBBLOCK 410+ 527+ 605+ 746+ 854+ 927+ 1000+ 1082+ 1182+
XPTDB 309 341 345 407+ 408+# 409+ 421 457 461 524+ 525+# 526+
538 602+ 603+# 604+ 680 743+ 744+# 745+ 757 788 851+ 852+#
853+ 924+ 925+# 926+ 997+ 998+# 999+ 1011 1079+ 1080+# 1081+ 1113
1179+ 1180+# 1181+
XPTHANDLE 670 1005
ZEROQ 189+#
$DLL_TRANSMIT 858
$DSPCR 285* 289 339 413 451 530 749
$MCB_PROCESS 307
$MCB_SCHEDULE_CCB 677 932 1006 1096
$TLILL 289# 307
$TLI_GET_LINE_DB 417 534 607 752 856 1088 1184
%CTCE 157+ 176+
%REMAINING 201+