Google
 

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+