Trailing-Edge
-
PDP-10 Archives
-
TOPS-20_V6.1_DECnetSrc_7-23-85
-
mcb/xpt/tli16.lst
There is 1 other file named tli16.lst in the archive. Click here to see a list.
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 1
30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (1)
; 0001 module TLI16 (
; 0002 IDENT = 'X01100'
; 0003 ) =
; 0004 begin
; 0005
; 0006 !
; 0007 ! COPYRIGHT (c) 1980, 1981, 1982
; 0008 ! DIGITAL EQUIPMENT CORPORATION
; 0009 ! Maynard, Massachusetts
; 0010 !
; 0011 ! This software is furnished under a license and may be used
; 0012 ! and copied only in accordance with the terms of such license
; 0013 ! and with the inclusion of the above copyright notice. This
; 0014 ! software or any other copies thereof may not be provided or
; 0015 ! otherwise made available to any other person. No title to
; 0016 ! and ownership of the software is hereby transferred.
; 0017 !
; 0018 ! The information in this software is subject to change
; 0019 ! without notice and should not be construed as a commitment
; 0020 ! by DIGITAL EQUIPMENT CORPORATION.
; 0021 !
; 0022 ! DIGITAL assumes no responsibility for the use or reliability
; 0023 ! of its software on equipment which is not supplied by
; 0024 ! DIGITAL.
; 0025 !
; 0026
; 0027 !++
; 0028 ! FACILITY: Transport
; 0029 !
; 0030 ! ABSTRACT:
; 0031 !
; 0032 ! 16-bit or RSX-11M dependent routines for transport
; 0033 !
; 0034 ! ENVIRONMENT: MCB
; 0035 !
; 0036 ! AUTHOR: L. Webber , CREATION DATE: 20-Jul-79
; 0037 !
; 0038 ! MODIFIED BY:
; 0039 !
; 0040 ! 20-Jul-79 : VERSION 1.00
; 0041 !
; 0042 ! 1.01 L. Webber, 21-Oct-80
; 0043 ! Change C_BUF and C_BUFA references to C_BIAS and C_ADDR
; 0044 !
; 0045 ! 1.02 L. Webber, 11-Dec-80
; 0046 ! Modify to support MCB 3.1
; 0047 !
; 0048 ! 1.03 L. Webber, 11-Feb-81
; 0049 ! Made XPT16 into three parallel modules: XPT16, TLI16 and XPE16.
; 0050 ! This mod. also comprises the addition of several new entry points
; 0051 ! over the last year. This is the last of the identically numbered
; 0052 ! mods. for the three -16 modules.
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 2
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (1)
; 0053 !
; 0054 ! 1.04 L. Webber, 11-Feb-81
; 0055 ! Delete entries GETSDB, RETSDB, $CDBV, MAPIN, GETXDB, and $CBDMG
; 0056 ! from the TLI -16 module.
; 0057 !
; 0058 ! 1.05 L. Webber, 23-Feb-81
; 0059 ! Fix LOG_EVENT class and event buffer specification.
; 0060 !
; 0061 ! 1.06 L. Webber, 3-Apr-81
; 0062 ! Signal the ENTITY value in LOG_EVENT.
; 0063 !
; 0064 ! 1.07 L. Webber, 24-Sep-81
; 0065 ! Take out routines EP_VERSION, EP_RCVNOD, EP_REASON.
; 0066 !
; 0067 ! 1.08 L. Webber, 24-Sep-81
; 0068 ! Take out reference to Event_Buffer in LOG_EVENT.
; 0069 !
; 0070 ! 1.09 A. Peckham, 19-Apr-82
; 0071 ! Add XPT$GET_LINE_DB and XPT$GET_NODE_DB routines.
; 0072 !
; 0073 ! 1.10 A. Peckham, 6-May-82
; 0074 ! Eliminate GETLINE, GETNODE, LOG_EVENT, RLS_BLK, GET_BLK, OC_ADD.
; 0075 !
; 0076 !--
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 3
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (2)
; 0077
; 0078 !
; 0079 ! INCLUDE FILES:
; 0080 !
; 0081
; 0082 require 'XPTMAC';
; 0180
; 0181 !
; 0182 ! TABLE OF CONTENTS
; 0183 !
; 0184
; 0185 forward routine
; 0186 XPT$GET_LINE_DB: XPT$LKG_NUM,
; 0187 XPT$GET_NODE_DB: XPT$LKG_NUM,
; 0188 GET_EX;
; 0189
; 0190 !
; 0191 ! MACROS:
; 0192 !
; 0193
; 0194 !
; 0195 ! EQUATED SYMBOLS:
; 0196 !
; 0197
; 0198 !
; 0199 ! OWN STORAGE:
; 0200 !
; 0201
; 0202 !
; 0203 ! EXTERNAL REFERENCES:
; 0204 !
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 4
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (3)
; 0205
; 0206 global
; 0207 routine XPT$GET_LINE_DB (LINE) : XPT$LKG_NUM =
; 0208
; 0209 !++
; 0210 ! FUNCTIONAL DESCRIPTION:
; 0211 !
; 0212 ! Returns the base address of the line data base entry for
; 0213 ! the specified line
; 0214 !
; 0215 ! FORMAL PARAMETERS
; 0216 !
; 0217 ! LINE Line number whose data base entry is to be
; 0218 ! located
; 0219 !
; 0220 ! IMPLICIT INPUTS
; 0221 !
; 0222 ! XPTDB
; 0223 !
; 0224 ! ROUTINE VALUE:
; 0225 !
; 0226 ! The address of the line data base entry for .LINE
; 0227 !
; 0228 ! SIDE EFFECTS:
; 0229 !
; 0230 ! NONE.
; 0231 !
; 0232 !--
; 0233
; 0234 begin
; 0235 require 'XPTSYM';
; 0272
; 0273 LINE = .LINE - 1;
; 0274 if .LINE lssu NLN
; 0275 then
; 0276 begin
; 0277 LINE = .LINE*LINElength;
; 0278 .XPTDB[XPTlindb] + .LINE
; 0279 end
; 0280 else
; 0281 0
; 0282 end; !End of XPT$GET_LINE_DB
.TITLE TLI16
.IDENT /X01100/
.GLOBL .CRDAT
.SBTTL GTLINE
000000 .PSECT $CODE$, RO
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 5
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (3)
000000 010146 GTLINE::
U.1: MOV R1,-(SP) ; 0207
000002 010001 MOV R0,R1 ; *,LINE
000004 005301 DEC R1 ; LINE 0273
000006 016700 000002G MOV .CRDAT+2,R0 ; 0274
000012 020160 000022 CMP R1,22(R0) ; LINE,*
000016 103010 BHIS 1$
000020 070127 000104 MUL #104,R1 ; 0277
000024 016700 000002G MOV .CRDAT+2,R0 ; 0278
000030 016000 000020 MOV 20(R0),R0
000034 060100 ADD R1,R0 ; LINE,*
000036 000401 BR 2$ ; 0274
000040 005000 1$: CLR R0
000042 012601 2$: MOV (SP)+,R1 ; 0207
000044 000207 RTS PC
; Routine Size: 19 words, Routine Base: $CODE$ + 0000
; Maximum stack depth per invocation: 2 words
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 6
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (4)
; 0283
; 0284 global
; 0285 routine XPT$GET_NODE_DB (NODE) : XPT$LKG_NUM =
; 0286
; 0287 !++
; 0288 ! FUNCTIONAL DESCRIPTION:
; 0289 !
; 0290 ! Returns the base address of the node data base entry for
; 0291 ! the specified node number
; 0292 !
; 0293 ! FORMAL PARAMETERS
; 0294 !
; 0295 ! NODE Node number of the node whose data base is to be
; 0296 ! located
; 0297 !
; 0298 ! IMPLICIT INPUTS
; 0299 !
; 0300 ! XPTDB
; 0301 !
; 0302 ! ROUTINE VALUE:
; 0303 !
; 0304 ! Address of the node data base entry for .NODE
; 0305 !
; 0306 ! SIDE EFFECTS:
; 0307 !
; 0308 ! NONE.
; 0309 !
; 0310 !--
; 0311
; 0312 begin
; 0313 require 'XPTSYM';
; 0350
; 0351 NODE = .NODE - 1;
; 0352 if .NODE lssu NN
; 0353 then
; 0354 begin
; 0355 NODE = .NODE*NODElength;
; 0356 .XPTDB[XPTnoddb] + .NODE
; 0357 end
; 0358 else
; 0359 0
; 0360 end; !End of XPT$GET_NODE_DB
.SBTTL GTNODE
000000 010146 GTNODE::
U.2: MOV R1,-(SP) ; 0285
000002 010001 MOV R0,R1 ; *,NODE
000004 005301 DEC R1 ; NODE 0351
000006 016700 000002G MOV .CRDAT+2,R0 ; 0352
000012 020160 000016 CMP R1,16(R0) ; NODE,*
000016 103012 BHIS 1$
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 7
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (4)
000020 010100 MOV R1,R0 ; NODE,* 0355
000022 072027 000003 ASH #3,R0
000026 010001 MOV R0,R1 ; *,NODE
000030 016700 000002G MOV .CRDAT+2,R0 ; 0356
000034 016000 000012 MOV 12(R0),R0
000040 060100 ADD R1,R0 ; NODE,*
000042 000401 BR 2$ ; 0352
000044 005000 1$: CLR R0
000046 012601 2$: MOV (SP)+,R1 ; 0285
000050 000207 RTS PC
; Routine Size: 21 words, Routine Base: $CODE$ + 0046
; Maximum stack depth per invocation: 2 words
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 8
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (5)
; 0361
; 0362 global
; 0363 routine GET_EX (PTR) =
; 0364
; 0365 !++
; 0366 ! FUNCTIONAL DESCRIPTION:
; 0367 !
; 0368 ! Gets an extended field of up to 2 bytes (14 significant bits)
; 0369 !
; 0370 ! FORMAL PARAMETERS
; 0371 !
; 0372 ! PTR - Character pointer to message from which the extended
; 0373 ! field is to be fetched
; 0374 !
; 0375 ! IMPLICIT INPUTS
; 0376 !
; 0377 ! NONE.
; 0378 !
; 0379 ! ROUTINE VALUE: Value of the field or failure code
; 0380 ! COMPLETION CODES:
; 0381 !
; 0382 ! > 0 Value of the extended field
; 0383 ! < 0 Failure - field was too long
; 0384 !
; 0385 ! SIDE EFFECTS:
; 0386 !
; 0387 ! PTR is updated to point past the field
; 0388 !
; 0389 !--
; 0390
; 0391 begin
; 0392
; 0393 local WORK,RET;
; 0394 pointer P;
; 0395 P = ..PTR;
; 0396
; 0397 WORK = getb(P);
; 0398 if biton(.WORK,%o'200') then begin !Extension on -
; 0399 WORK<7,8> = getb(P); ! Get next byte
; 0400 if biton(.WORK,%o'40000') then RET = -1 ! Extension on here - return error
; 0401 else RET = .WORK;
; 0402 end
; 0403 else RET = .WORK;
; 0404
; 0405 .PTR = .P; !Update pointer
; 0406 .RET
; 0407 end; !End of GET_EX
.SBTTL GET.EX
000000 004167 000000G GET.EX::
U.3: JSR R1,$SAVE2 ; 0363
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 9
X01100 30-Dec-1982 21:06:18 NETPKG:<XPT>TLI16.B16.8 (5)
000004 017602 000010 MOV @10(SP),R2 ; PTR,P 0395
000010 005001 CLR R1 ; WORK 0397
000012 152201 BISB (R2)+,R1 ; P,WORK
000014 100016 BPL 1$ ; 0398
000016 112200 MOVB (R2)+,R0 ; P,* 0399
000020 072027 000007 ASH #7,R0
000024 042700 100177 BIC #100177,R0
000030 042701 077600 BIC #77600,R1 ; *,WORK
000034 050001 BIS R0,R1 ; *,WORK
000036 032701 040000 BIT #40000,R1 ; *,WORK 0400
000042 001403 BEQ 1$
000044 012700 177777 MOV #-1,R0 ; *,RET
000050 000401 BR 2$
000052 010100 1$: MOV R1,R0 ; WORK,RET 0403
000054 010276 000010 2$: MOV R2,@10(SP) ; P,PTR 0405
000060 000207 RTS PC ; 0363
; Routine Size: 25 words, Routine Base: $CODE$ + 0120
; Maximum stack depth per invocation: 4 words
; 0408 end !End of module TLI16
; 0409 eludom
; OTS external references
.GLOBL $SAVE2
; PSECT SUMMARY
;
; Psect Name Words Attributes
; $CODE$ 65 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 1 0 0
; NETPKG:<MCB>NMXLIB.L16.13 200 0 0 0
; NETPKG:<XPT>XPTLIB.L16.3 510 87 17 0
TLI16 25-Jan-1983 10:03:47 TOPS-20 Bliss-16 2A(530) Page 10
X01100
; Size: 65 code + 0 data words
; Run Time: 00:02.6
; Elapsed Time: 00:08.6
; Memory Used: 23 pages
; Compilation Complete
ADDRESS 134+ 136+ 137+ 139+ 140+ 142+ 143+ 149+ 150+ 153+ 154+ 155+
BITON 398 400
BPT 163+# 175+#
BUFCHK 167+ 168+# 177+ 178+#
CHKBUF 170+* 171+
GETB 397 399
GETQ 134+#
GETW 113+# 136+ 137+
GET_EX 188 363*
I 158+ 160+
J 158+ 160+
LINE 207 273# 274 277# 278
LINEBLOCK 262+ 340+
LINEB 260+ 262+ 338+ 340+
LINELENGTH 277
M 158+ 159+
MATRIX 158+# 160+
MCB$GAW_PROCESS_DATA_BASE 265+ 266+ 269+ 343+ 344+ 347+
N 158+ 159+
NL 158+ 160+
NLN 274
NN 352
NODE 285 351# 352 355# 356
NODEBLOCK 257+ 335+
NODEB 255+ 257+ 333+ 335+
NODELENGTH 355
NOP 175+ 176+ 178+
NO_LINEB 261+ 339+
NO_NODEB 256+ 334+
P 394 395# 397 399 405
POINTER 394
PTR 113+ 116+ 117+ 120+ 123+ 124+ 130+ 131+ 134+ 136+ 137+ 139+
142+ 143+ 144+ 145+ 149+ 150+ 363 395 405#
PUTQ 139+#
PUTW 120+# 149+ 150+
RET 393 400# 401# 403# 406
TLI16 1#
UNIT 158+# 159+ 160+
VALUE 120+ 121+ 123+ 124+ 129+
WORK 393 397# 398 399# 400 401 403
X 115+ 116+# 117+# 118+ 128+ 129+# 130+ 131+
XPT$GET_LINE_DB 186 207*
XPT$GET_NODE_DB 187 285*
XPT$LKG_NUM 186 187 207# 285#
XPTDBBLOCK 271+ 349+
XPTDB 268+ 269+# 270+ 278 346+ 347+# 348+ 356
XPTLINDB 278
XPTNODDB 356
ZEROQ 153+#
%CTCE 121+ 140+
%REMAINING 165+