Google
 

Trailing-Edge - PDP-10 Archives - BB-R595B-SM_11-9-85 - mcb/utilities/lbr20.lst
There is 1 other file named lbr20.lst in the archive. Click here to see a list.
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   1
								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (1)

;   0001  0	MODULE LBR20 (					!Librarian Utility
;   0002  0			IDENT = '001030',
;   0003  0			LANGUAGE (BLISS36) ,
;   0004  0			MAIN = LBR20
;   0005  0			) =
;   0006  1	BEGIN
;   0007  1	!
;   0008  1	!
;   0009  1	!
;   0010  1	!                    COPYRIGHT (c) 1980, 1981, 1982
;   0011  1	!                    DIGITAL EQUIPMENT CORPORATION
;   0012  1	!                        Maynard, Massachusetts
;   0013  1	!
;   0014  1	!     This software is furnished under a license and may  be  used
;   0015  1	!     and copied only in accordance with the terms of such license
;   0016  1	!     and with the inclusion of the above copyright notice.   This
;   0017  1	!     software  or any other copies thereof may not be provided or
;   0018  1	!     otherwise made available to any other person.  No  title  to
;   0019  1	!     and ownership of the software is hereby transferred.
;   0020  1	!
;   0021  1	!     The information  in  this  software  is  subject  to  change
;   0022  1	!     without  notice  and should not be construed as a commitment
;   0023  1	!     by DIGITAL EQUIPMENT CORPORATION.
;   0024  1	!
;   0025  1	!     DIGITAL assumes no responsibility for the use or reliability
;   0026  1	!     of  its  software  on  equipment  which  is  not supplied by
;   0027  1	!     DIGITAL.
;   0028  1	!
;   0029  1	
;   0030  1	!++
;   0031  1	! FACILITY: LBR20 - Librarian Utility
;   0032  1	!
;   0033  1	! ABSTRACT:
;   0034  1	!
;   0035  1	!
;   0036  1	!	This is the root module for the librarian.
;   0037  1	!
;   0038  1	!
;   0039  1	! ENVIRONMENT: ANY
;   0040  1	!
;   0041  1	! AUTHOR: ALAN D. PECKHAM, CREATION DATE: 2-MAY-80
;   0042  1	!
;   0043  1	! MODIFIED BY:
;   0044  1	!
;   0045  1	!	Alan D. Peckham, : VERSION 01
;   0046  1	! 02	- Add COMPRESS function
;   0047  1	! 03    - Add support for EPT replacement in FILE_INSERT.
;   0048  1	!--
;   0049  1	
;   0050  1	!
;   0051  1	! TABLE OF CONTENTS:
;   0052  1	!
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   2
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (1)

;   0053  1	
;   0054  1	FORWARD ROUTINE
;   0055  1	    LBR20 : NOVALUE;				!LBR20 main routines.
;   0056  1	
;   0057  1	!
;   0058  1	! INCLUDE FILES
;   0059  1	!
;   0060  1	
;   0061  1	LIBRARY 'LBRCOM';				!LBR20 COMMON DEFINITIONS
;   0062  1	
;   0063  1	!
;   0064  1	! MACROS:
;   0065  1	!
;   0066  1	
;   0067  1	MACRO
; M 0068  1	    SUPPORT_STRING =
;   0069  1		%CHAR(LBR_SUPPORT), %,
; M 0070  1	    VERSION_STRING =
;   0071  1		%NUMBER(LBR_VERSION), %,
; M 0072  1	    UPDATE_STRING =
; M 0073  1		%IF LBR_UPDATE NEQ 0
;   0074  1		%THEN %STRING('.', %NUMBER (LBR_UPDATE)), %FI %,
; M 0075  1	    EDIT_STRING =
; M 0076  1		%IF LBR_EDIT NEQ 0
;   0077  1		%THEN %STRING('-', %NUMBER (LBR_EDIT)), %FI %,
; M 0078  1	    VERSION_DISPLAY =
;   0079  1		%STRING(SUPPORT_STRING VERSION_STRING UPDATE_STRING EDIT_STRING) %;
;   0080  1	
;   0081  1	!
;   0082  1	! EQUATED SYMBOLS:
;   0083  1	!
;   0084  1	
;   0085  1	BIND
;   0086  1	    VERSION = CH$ASCII ('Version ', VERSION_DISPLAY),
;   0087  1	    LENGTH = %CHARCOUNT ('Version ', VERSION_DISPLAY);
;   0088  1	
;   0089  1	GLOBAL BIND
;   0090  1	    VERPTR = CH$ASCII (VERSION_DISPLAY),
;   0091  1	    VERLNG = %CHARCOUNT (VERSION_DISPLAY);
;   0092  1	
;   0093  1	!
;   0094  1	! OWN STORAGE:
;   0095  1	!
;   0096  1	
;   0097  1	GLOBAL
;   0098  1	    FLAGS : BITVECTOR [M_MAX_BITS],		!Processing flags.
;   0099  1	    GBLNAM : BLOCKVECTOR [LBR_MAX_GLOBAL_DELETES, 2],
;   0100  1	    GBLNUM : INITIAL (0),
;   0101  1	    LIBBLK : INITIAL (0),
;   0102  1	    LIBEPT : INITIAL (0),
;   0103  1	    LIBHDR : INITIAL (0),
;   0104  1	    LIBMNT : INITIAL (0),
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   3
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (1)

;   0105  1	    LSTBLK : INITIAL (0),
;   0106  1	    MODNAM : BLOCKVECTOR [LBR_MAX_MODULE_DELETES, 2],
;   0107  1	    MODNUM : INITIAL (0),
;   0108  1	    NUMEPT : INITIAL (0),
;   0109  1	    NUMMNT : INITIAL (0),
;   0110  1	    OBJBLK : VECTOR [LBR_MAX_OBJ] INITIAL (REP LBR_MAX_OBJ OF (0)),
;   0111  1	    OBJFLG : BLOCKVECTOR [LBR_MAX_OBJ, F_MAX],
;   0112  1	    OBJNUM : INITIAL (0),
;   0113  1	    SIZFIL : INITIAL (0),
;   0114  1	    TTYBLK : INITIAL (0);
;   0115  1	
;   0116  1	!
;   0117  1	! EXTERNAL REFERENCES:
;   0118  1	!
;   0119  1	
;   0120  1	EXTERNAL ROUTINE
;   0121  1	    CLOSE,					!Close a file.
;   0122  1	    CMD,					!Get a user command.
;   0123  1	    ENTRY_DELETE,				!Delete an entry point
;   0124  1	    FILE_INSERT,				!Insert modules in the library.
;   0125  1	    HELP : NOVALUE,				!Give the user help.
;   0126  1	    LIBCLS : NOVALUE,				!Close the library.
;   0127  1	    LIBOPN,					!Open the library.
;   0128  1	    LIBUPD : NOVALUE,				!Update HDR, EPT and MNT.
;   0129  1	    LIST : NOVALUE,				!List the library.
;   0130  1	    LSTOPN,					!Initialize the listing device.
;   0131  1	    MODULE_DELETE,				!Delete a module
;   0132  1	    TTYOPN : NOVALUE,				!Initialize the user's terminal.
;   0133  1	    TYPE : NOVALUE;				!Display a line on the user's tty.
;   0134  1	
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   4
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

;   0135  1	ROUTINE LBR20 : NOVALUE =
;   0136  1	
;   0137  1	!++
;   0138  1	! FUNCTIONAL DESCRIPTION:
;   0139  1	!
;   0140  1	!
;   0141  1	!
;   0142  1	!
;   0143  1	! FORMAL PARAMETERS:
;   0144  1	!
;   0145  1	!	NONE
;   0146  1	!
;   0147  1	! IMPLICIT INPUTS:
;   0148  1	!
;   0149  1	!	NONE
;   0150  1	!
;   0151  1	! IMPLICIT OUTPUTS:
;   0152  1	!
;   0153  1	!	NONE
;   0154  1	!
;   0155  1	! ROUTINE VALUE:
;   0156  1	!
;   0157  1	!	NONE
;   0158  1	!
;   0159  1	! SIDE EFFECTS
;   0160  1	!
;   0161  1	!	NONE
;   0162  1	!
;   0163  1	!--
;   0164  1	
;   0165  2	    BEGIN
;   0166  2	    TTYOPN (TTYBLK);				!Get the user's tty.
;   0167  2	
;   0168  2	    DO
;   0169  3		BEGIN
;   0170  3	
;   0171  3		IF CMD ()
;   0172  3		THEN
;   0173  4		    BEGIN
;   0174  4		    !
;   0175  4		    ! Open or create the library
;   0176  4		    !
;   0177  4	
;   0178  4		    IF LIBOPN (LIBBLK)
;   0179  4		    THEN
;   0180  5			BEGIN
;   0181  5	
;   0182  5			!
;   0183  5			! Delete modules
;   0184  5			!
;   0185  5	
;   0186  5			IF .MODNUM GTR 0
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   5
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

;   0187  5			THEN
;   0188  6			    BEGIN
;   0189  6	
;   0190  6			    INCR INDEX FROM 0 TO .MODNUM - 1 DO
;   0191  6	
;   0192  6				IF NOT MODULE_DELETE (MODNAM [.INDEX, 0, 0, 16, 0])
;   0193  6				THEN
;   0194  6				    EXITLOOP;
;   0195  6	
;   0196  5			    END;
;   0197  5	
;   0198  5			!
;   0199  5			! Delete entry points
;   0200  5			!
;   0201  5	
;   0202  5			IF .GBLNUM GTR 0
;   0203  5			THEN
;   0204  6			    BEGIN
;   0205  6	
;   0206  6			    INCR INDEX FROM 0 TO .GBLNUM - 1 DO
;   0207  6	
;   0208  6				IF NOT ENTRY_DELETE (GBLNAM [.INDEX, 0, 0, 16, 0])
;   0209  6				THEN
;   0210  6				    EXITLOOP;
;   0211  6	
;   0212  5			    END;
;   0213  5	
;   0214  5			!
;   0215  5			! Insert and replace modules
;   0216  5			!
;   0217  5	
;   0218  5			IF .OBJNUM GTR 0
;   0219  5			THEN
;   0220  6			    BEGIN
;   0221  6	
;   0222  6			    LOCAL
;   0223  6				ABORT;
;   0224  6	
;   0225  6			    ABORT = FALSE;
;   0226  6	
;   0227  6			    INCR INDEX FROM 0 TO .OBJNUM - 1 DO
;   0228  7				BEGIN
;   0229  7	
;   0230  7				IF .ABORT
;   0231  7				THEN
;   0232  7				    CLOSE (OBJBLK [.INDEX])
;   0233  7				ELSE
;   0234  7	
;   0235  7				    IF NOT FILE_INSERT (OBJBLK [.INDEX],
;   0236  7					    .OBJFLG [.INDEX, F_REPLACE],
;   0237  7					    NOT .OBJFLG [.INDEX, F_NOEPT],
;   0238  7					    .OBJFLG [.INDEX, F_RG],
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   6
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

;   0239  7					    .OBJFLG [.INDEX, F_SS])
;   0240  7				    THEN
;   0241  7					ABORT = TRUE;
;   0242  7	
;   0243  6				END;
;   0244  6	
;   0245  6			    OBJNUM = 0;
;   0246  5			    END;
;   0247  5	
;   0248  5	                IF .FLAGS [M_FAST] THEN LIBUPD ();
;   0249  5	
;   0250  5			!
;   0251  5			! List the library
;   0252  5			!
;   0253  5	
;   0254  5			IF .FLAGS [M_LIST]
;   0255  5			THEN
;   0256  6			    BEGIN
;   0257  6			    LSTOPN (LSTBLK, .FLAGS [M_WIDE], LIBBLK);
;   0258  6			    LIST (LIBBLK);
;   0259  6			    CLOSE (LSTBLK);
;   0260  5			    END;
;   0261  5	
;   0262  5			LIBCLS ();
;   0263  5			END
;   0264  4		    ELSE
;   0265  4			CLOSE (LIBBLK);
;   0266  4	
;   0267  3		    END;
;   0268  3	
;   0269  3		!+
;   0270  3		! Give the LBR20 version number
;   0271  3		!-
;   0272  3	
;   0273  3		IF .FLAGS [M_VERSION] THEN TYPE (VERSION, LENGTH);
;   0274  3	
;   0275  3		!+
;   0276  3		! Give the user help
;   0277  3		!-
;   0278  3	
;   0279  3		IF .FLAGS [M_HELP] THEN HELP (TTYBLK, CH$ASCIZ ('HLP:LBR20.HLP'));
;   0280  3	
;   0281  3		END
;   0282  2	    WHILE NOT .FLAGS [M_EXIT];
;   0283  2	
;   0284  1	    END;					!OF LBR20


	TITLE	LBR20
	TWOSEG
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   7
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

	.REQUEST  SYS:B362LB.REL


	RELOC	400000				;					400000'
P.AAA:	BYTE	(7)"V","e","r","s","i"		; Versi					400000' 126 145 162 163 151
	BYTE	(7)"o","n"," ","X","1"		; on X1					400001' 157 156 040 130 061
	BYTE	(7)"-","6",000,000,000		; -6					400002' 055 066 000 000 000
P.AAB:	BYTE	(7)"X","1","-","6",000		; X1-6					400003' 130 061 055 066 000
P.AAC:	BYTE	(7)"H","L","P",":","L"		; HLP:L					400004' 110 114 120 072 114
	BYTE	(7)"B","R","2","0","."		; BR20.					400005' 102 122 062 060 056
	BYTE	(7)"H","L","P",000,000		; HLP					400006' 110 114 120 000 000


	RELOC	0				;					000000'
FLAGS:: BLOCK	1				;					000000'
GBLNAM::BLOCK	36				;					000001'
GBLNUM::EXP	0				;					000037' 000000	000000
LIBBLK::EXP	0				;					000040' 000000	000000
LIBEPT::EXP	0				;					000041' 000000	000000
LIBHDR::EXP	0				;					000042' 000000	000000
LIBMNT::EXP	0				;					000043' 000000	000000
LSTBLK::EXP	0				;					000044' 000000	000000
MODNAM::BLOCK	36				;					000045'
MODNUM::EXP	0				;					000103' 000000	000000
NUMEPT::EXP	0				;					000104' 000000	000000
NUMMNT::EXP	0				;					000105' 000000	000000
OBJBLK::EXP	0				;					000106' 000000	000000
	EXP	0				;					000107' 000000	000000
	EXP	0				;					000110' 000000	000000
	EXP	0				;					000111' 000000	000000
	EXP	0				;					000112' 000000	000000
	EXP	0				;					000113' 000000	000000
	EXP	0				;					000114' 000000	000000
	EXP	0				;					000115' 000000	000000
	EXP	0				;					000116' 000000	000000
	EXP	0				;					000117' 000000	000000
OBJFLG::BLOCK	12				;					000120'
OBJNUM::EXP	0				;					000132' 000000	000000
SIZFIL::EXP	0				;					000133' 000000	000000
TTYBLK::EXP	0				;					000134' 000000	000000


	EXTERN	CLOSE, CMD, ENTRY_DELETE, FILE_INSERT, HELP, LIBCLS, LIBOPN, LIBUPD, LIST, LSTOPN
	EXTERN	MODULE_DELETE, TTYOPN, TYPE


VERSION=	    <POINT 7,P.AAA-1,34>	;						01 07 0 00 377777'
LENGTH==	    14				;						000000	000014
VERPTR=:	    <POINT 7,P.AAB-1,34>	;						01 07 0 00 400002'
VERLNG==:	    4				;						000000	000004
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   8
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

AC0=	0
AC1=	1
AC2=	2
AC3=	3
AC4=	4
AC5=	5
AC6=	6
AC7=	7
AC10=	10
AC11=	11
AC12=	12
AC13=	13
AC14=	14
FP=	15
AC16=	16
SP=	17


	RELOC	400007				;					400007'
LBR20:	PUSH	SP,AC13				; SP,AC13				400007' 261 17 0 00 000013		0135
	PUSH	SP,AC14				; SP,AC14				400010' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				400011' 261 17 0 00 000016
	PUSH	SP,C.6				; SP,[0,,TTYBLK]			400012' 261 17 0 00 400200'		0166
	PUSHJ	SP,TTYOPN			; SP,TTYOPN				400013' 260 17 0 00 000000*
L.1:	PUSHJ	SP,CMD				; SP,CMD				400014' 260 17 0 00 000000*		0171
	TRNN	AC1,1				; AC1,1					400015' 606 01 0 00 000001
	JRST	L.14				; L.14					400016' 254 00 0 00 400145'
	PUSH	SP,C.7				; SP,[0,,LIBBLK]			400017' 261 17 0 00 400201'		0178
	PUSHJ	SP,LIBOPN			; SP,LIBOPN				400020' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400021' 105 17 0 00 777777
	TRNN	AC1,1				; AC1,1					400022' 606 01 0 00 000001
	JRST	L.13				; L.13					400023' 254 00 0 00 400142'
	MOVE	AC14,MODNUM			; AC14,MODNUM				400024' 200 14 0 00 000103'		0186
	JUMPLE	AC14,L.4			; AC14,L.4				400025' 323 14 0 00 400043'
	SETO	AC16,				; INDEX,				400026' 474 16 0 00 000000		0190
	JRST	L.3				; L.3					400027' 254 00 0 00 400040'
L.2:	MOVE	AC1,AC16			; AC1,INDEX				400030' 200 01 0 00 000016		0192
	IMULI	AC1,2				; AC1,2					400031' 221 01 0 00 000002
	ADDI	AC1,MODNAM			; AC1,MODNAM				400032' 271 01 0 00 000045'
	PUSH	SP,AC1				; SP,AC1				400033' 261 17 0 00 000001
	PUSHJ	SP,MODULE_DELETE		; SP,MODULE_DELETE			400034' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400035' 105 17 0 00 777777
	TRNN	AC1,1				; AC1,1					400036' 606 01 0 00 000001
	JRST	L.4				; L.4					400037' 254 00 0 00 400043'		0194
L.3:	ADDI	AC16,1				; INDEX,1				400040' 271 16 0 00 000001		0190
	CAMGE	AC16,AC14			; INDEX,AC14				400041' 315 16 0 00 000014
	JRST	L.2				; L.2					400042' 254 00 0 00 400030'
L.4:	MOVE	AC14,GBLNUM			; AC14,GBLNUM				400043' 200 14 0 00 000037'		0202
	JUMPLE	AC14,L.7			; AC14,L.7				400044' 323 14 0 00 400062'
	SETO	AC16,				; INDEX,				400045' 474 16 0 00 000000		0206
	JRST	L.6				; L.6					400046' 254 00 0 00 400057'
L.5:	MOVE	AC1,AC16			; AC1,INDEX				400047' 200 01 0 00 000016		0208
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page   9
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

	IMULI	AC1,2				; AC1,2					400050' 221 01 0 00 000002
	ADDI	AC1,GBLNAM			; AC1,GBLNAM				400051' 271 01 0 00 000001'
	PUSH	SP,AC1				; SP,AC1				400052' 261 17 0 00 000001
	PUSHJ	SP,ENTRY_DELETE			; SP,ENTRY_DELETE			400053' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400054' 105 17 0 00 777777
	TRNN	AC1,1				; AC1,1					400055' 606 01 0 00 000001
	JRST	L.7				; L.7					400056' 254 00 0 00 400062'		0210
L.6:	ADDI	AC16,1				; INDEX,1				400057' 271 16 0 00 000001		0206
	CAMGE	AC16,AC14			; INDEX,AC14				400060' 315 16 0 00 000014
	JRST	L.5				; L.5					400061' 254 00 0 00 400047'
L.7:	MOVE	AC13,OBJNUM			; AC13,OBJNUM				400062' 200 13 0 00 000132'		0218
	JUMPLE	AC13,L.11			; AC13,L.11				400063' 323 13 0 00 400120'
	SETZ	AC14,				; ABORT,				400064' 400 14 0 00 000000		0225
	SETO	AC16,				; INDEX,				400065' 474 16 0 00 000000		0227
	JRST	L.10				; L.10					400066' 254 00 0 00 400114'
L.8:	MOVE	AC1,AC16			; AC1,INDEX				400067' 200 01 0 00 000016		0232
	ADDI	AC1,OBJBLK			; AC1,OBJBLK				400070' 271 01 0 00 000106'
	TRNN	AC14,1				; ABORT,1				400071' 606 14 0 00 000001		0230
	JRST	L.9				; L.9					400072' 254 00 0 00 400076'
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400073' 202 01 0 17 000000		0232
	PUSHJ	SP,CLOSE			; SP,CLOSE				400074' 260 17 0 00 000000*
	JRST	L.10				; L.10					400075' 254 00 0 00 400114'		0230
L.9:	MOVEM	AC1,0(SP)			; AC1,0(SP)				400076' 202 01 0 17 000000		0235
	LDB	AC1,C.1				; AC1,[POINT 1,OBJFLG,34]  <1,1>	400077' 135 01 0 00 400173'
	PUSH	SP,AC1				; SP,AC1				400100' 261 17 0 00 000001
	LDB	AC1,C.2				; AC1,[POINT 1,OBJFLG,35]  <0,1>	400101' 135 01 0 00 400174'		0237
	SETCA	AC1,				; AC1,					400102' 450 01 0 00 000000
	PUSH	SP,AC1				; SP,AC1				400103' 261 17 0 00 000001
	LDB	AC1,C.3				; AC1,[POINT 1,OBJFLG,33]  <2,1>	400104' 135 01 0 00 400175'		0235
	PUSH	SP,AC1				; SP,AC1				400105' 261 17 0 00 000001
	LDB	AC1,C.4				; AC1,[POINT 1,OBJFLG,32]  <3,1>	400106' 135 01 0 00 400176'
	PUSH	SP,AC1				; SP,AC1				400107' 261 17 0 00 000001
	PUSHJ	SP,FILE_INSERT			; SP,FILE_INSERT			400110' 260 17 0 00 000000*
	ADJSP	SP,-4				; SP,-4					400111' 105 17 0 00 777774
	TRNN	AC1,1				; AC1,1					400112' 606 01 0 00 000001
	MOVEI	AC14,1				; ABORT,1				400113' 201 14 0 00 000001		0241
L.10:	ADDI	AC16,1				; INDEX,1				400114' 271 16 0 00 000001		0227
	CAMGE	AC16,AC13			; INDEX,AC13				400115' 315 16 0 00 000013
	JRST	L.8				; L.8					400116' 254 00 0 00 400067'
	SETZM	OBJNUM				; OBJNUM				400117' 402 00 0 00 000132'		0245
L.11:	MOVEI	AC1,40				; AC1,40				400120' 201 01 0 00 000040		0248
	TDNE	AC1,FLAGS			; AC1,FLAGS				400121' 612 01 0 00 000000'
	PUSHJ	SP,LIBUPD			; SP,LIBUPD				400122' 260 17 0 00 000000*
	MOVEI	AC1,100				; AC1,100				400123' 201 01 0 00 000100		0254
	TDNN	AC1,FLAGS			; AC1,FLAGS				400124' 616 01 0 00 000000'
	JRST	L.12				; L.12					400125' 254 00 0 00 400140'
	PUSH	SP,C.8				; SP,[0,,LSTBLK]			400126' 261 17 0 00 400202'		0257
	LDB	AC1,C.5				; AC1,[POINT 1,FLAGS,31]  <4,1>		400127' 135 01 0 00 400177'
	PUSH	SP,AC1				; SP,AC1				400130' 261 17 0 00 000001
	PUSH	SP,C.7				; SP,[0,,LIBBLK]			400131' 261 17 0 00 400201'
	PUSHJ	SP,LSTOPN			; SP,LSTOPN				400132' 260 17 0 00 000000*
	PUSH	SP,C.7				; SP,[0,,LIBBLK]			400133' 261 17 0 00 400201'		0258
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page  10
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

	PUSHJ	SP,LIST				; SP,LIST				400134' 260 17 0 00 000000*
	PUSH	SP,C.8				; SP,[0,,LSTBLK]			400135' 261 17 0 00 400202'		0259
	PUSHJ	SP,CLOSE			; SP,CLOSE				400136' 260 17 0 00 000000*
	ADJSP	SP,-5				; SP,-5					400137' 105 17 0 00 777773		0256
L.12:	PUSHJ	SP,LIBCLS			; SP,LIBCLS				400140' 260 17 0 00 000000*		0262
	JRST	L.14				; L.14					400141' 254 00 0 00 400145'		0178
L.13:	PUSH	SP,C.7				; SP,[0,,LIBBLK]			400142' 261 17 0 00 400201'		0265
	PUSHJ	SP,CLOSE			; SP,CLOSE				400143' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400144' 105 17 0 00 777777
L.14:	MOVEI	AC1,2				; AC1,2					400145' 201 01 0 00 000002		0273
	TDNN	AC1,FLAGS			; AC1,FLAGS				400146' 616 01 0 00 000000'
	JRST	L.15				; L.15					400147' 254 00 0 00 400154'
	PUSH	SP,C.9				; SP,[POINT 7,P.AAA-1,34]  <1,7>	400150' 261 17 0 00 400203'
	PUSH	SP,C.10				; SP,[14]				400151' 261 17 0 00 400204'
	PUSHJ	SP,TYPE				; SP,TYPE				400152' 260 17 0 00 000000*
	ADJSP	SP,-2				; SP,-2					400153' 105 17 0 00 777776
L.15:	MOVEI	AC1,4				; AC1,4					400154' 201 01 0 00 000004		0279
	TDNN	AC1,FLAGS			; AC1,FLAGS				400155' 616 01 0 00 000000'
	JRST	L.16				; L.16					400156' 254 00 0 00 400163'
	PUSH	SP,C.6				; SP,[0,,TTYBLK]			400157' 261 17 0 00 400200'
	PUSH	SP,C.11				; SP,[POINT 7,P.AAC-1,34]  <1,7>	400160' 261 17 0 00 400205'
	PUSHJ	SP,HELP				; SP,HELP				400161' 260 17 0 00 000000*
	ADJSP	SP,-2				; SP,-2					400162' 105 17 0 00 777776
L.16:	MOVEI	AC1,10				; AC1,10				400163' 201 01 0 00 000010		0282
	TDNN	AC1,FLAGS			; AC1,FLAGS				400164' 616 01 0 00 000000'
	JRST	L.1				; L.1					400165' 254 00 0 00 400014'		0168
	ADJSP	SP,-1				; SP,-1					400166' 105 17 0 00 777777		0165
	POP	SP,AC16				; SP,AC16				400167' 262 17 0 00 000016		0135
	POP	SP,AC14				; SP,AC14				400170' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				400171' 262 17 0 00 000013
	POPJ	SP,				; SP,					400172' 263 17 0 00 000000
C.1:	POINT	1,OBJFLG(AC16),34		; 1,OBJFLG,34				400173' 01 01 0 16 000120'
C.2:	POINT	1,OBJFLG(AC16),35		; 1,OBJFLG,35				400174' 00 01 0 16 000120'
C.3:	POINT	1,OBJFLG(AC16),33		; 1,OBJFLG,33				400175' 02 01 0 16 000120'
C.4:	POINT	1,OBJFLG(AC16),32		; 1,OBJFLG,32				400176' 03 01 0 16 000120'
C.5:	POINT	1,FLAGS,31			; 1,FLAGS,31				400177' 04 01 0 00 000000'
C.6:	XWD	0,TTYBLK			; 0,TTYBLK				400200' 000000	000134'
C.7:	XWD	0,LIBBLK			; 0,LIBBLK				400201' 000000	000040'
C.8:	XWD	0,LSTBLK			; 0,LSTBLK				400202' 000000	000044'
C.9:	POINT	7,P.AAA-1,34			; 7,P.AAA-1,34				400203' 01 07 0 00 377777'
C.10:	EXP	14				; 14					400204' 000000	000014
C.11:	POINT	7,P.AAC-1,34			; 7,P.AAC-1,34				400205' 01 07 0 00 400003'

; Routine Size:  127 words


;   0285  1	END
;   0286  1	
;   0287  0	ELUDOM


	RELOC	135				;					000135'
LBR20								12-Apr-1985 07:10:46	TOPS-20 Bliss-36 4A(225)	    Page  11
001030								30-Dec-1982 17:30:50	DNET61:<DECNET.UTILITIES>LBR20.BLI.1 (2)

.STACK.:BLOCK	4000				;					000135'


	RELOC	400206				;					400206'
.MAIN.: TDZA	AC1,AC1				; AC1,AC1				400206' 634 01 0 00 000001		0000
	MOVEI	AC1,1				; AC1,1					400207' 201 01 0 00 000001
	JSYS	147				; 147					400210' 104 00 0 00 000147
	MOVE	AC2,C.12			; AC2,[-4000,,.STACK.-1]		400211' 200 02 0 00 400225'
	PUSH	AC2,SP				; AC2,SP				400212' 261 02 0 00 000017
	PUSH	AC2,AC11			; AC2,AC11				400213' 261 02 0 00 000011
	PUSH	AC2,AC7				; AC2,AC7				400214' 261 02 0 00 000007
	PUSH	AC2,AC0				; AC2,AC0				400215' 261 02 0 00 000000
	PUSH	AC2,AC1				; AC2,AC1				400216' 261 02 0 00 000001
	MOVE	SP,AC2				; SP,AC2				400217' 200 17 0 00 000002
	SETZB	FP,EFPNT.			; FP,EFPNT.				400220' 403 15 0 00 000000*
	PUSHJ	SP,LBR20			; SP,LBR20				400221' 260 17 0 00 400007'
	ADJSP	SP,-5				; SP,-5					400222' 105 17 0 00 777773
L.17:	JSYS	170				; 170					400223' 104 00 0 00 000170
	JRST	L.17				; L.17					400224' 254 00 0 00 400223'
C.12:	XWD	-4000,.STACK.-1			; -4000,.STACK.-1			400225' 774000	000134'

; Routine Size:  16 words


; Low  segment length:    2141 words
; High segment length:     150 words




;				LIBRARY STATISTICS
;
;					     -------- Symbols --------    Blocks          Processing
;	File				     Total    Loaded   Percent      Read           Time
;
;  DNET61:<DECNET.UTILITIES>LBRCOM.L36.2       705        23         3        26	     00:00.1





; Size:		143 code + 2148 data words
; Run Time:	   00:03.0
; Elapsed Time:	   00:07.3
; Lines/CPU Min:    5784
; Lexemes/CPU-Min: 30634
; Memory Used:	22 pages
; Compilation Complete