Google
 

Trailing-Edge - PDP-10 Archives - BB-R598A-RM_1983 - swskit-v3/listings/vnp36/mcbfnc.list
There are no other files named mcbfnc.list in the archive.
e COMMLINK usage to LINE 
! 02	- Add CTL$DF parameters
!--

!
! TABLE OF CONTENTS
!

FORWARD RO							25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   1
								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (1)

;	  0001	!NET:<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.162 13-Feb-81 14:16:19, Edit by SROBINSON
;	  0002	!NET:<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.160 10-Dec-80 11:50:07, Edit by SROBINSON
;	  0003	!<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.158, 26-Aug-80 13:12:53, Edit by SROBINSON
;	  0004	!<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.157, 25-Aug-80 14:44:48, Edit by SROBINSON
;	  0005	!<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.155, 21-Jul-80 07:47:31, Edit by SROBINSON
;	  0006	!<DECNET20-V3P0.TKB-VNP.VNPV3>MCBFNC.BLI.38,  3-Jul-80 09:28:27, Edit by SROBINSON
;	  0007	MODULE MCBFNC (					!MCB Related Functions
;	  0008			IDENT = 'X03020'
;	  0009			) =
;	  0010	BEGIN
;	  0011	!
;	  0012	!                    COPYRIGHT (c) 1980, 1981, 1982
;	  0013	!                    DIGITAL EQUIPMENT CORPORATION
;	  0014	!                        Maynard, Massachusetts
;	  0015	!
;	  0016	!     This software is furnished under a license and may  be  used
;	  0017	!     and copied only in accordance with the terms of such license
;	  0018	!     and with the inclusion of the above copyright notice.   This
;	  0019	!     software  or any other copies thereof may not be provided or
;	  0020	!     otherwise made available to any other person.  No  title  to
;	  0021	!     and ownership of the software is hereby transferred.
;	  0022	!
;	  0023	!     The information  in  this  software  is  subject  to  change
;	  0024	!     without  notice  and should not be construed as a commitment
;	  0025	!     by DIGITAL EQUIPMENT CORPORATION.
;	  0026	!
;	  0027	!     DIGITAL assumes no responsibility for the use or reliability
;	  0028	!     of  its  software  on  equipment  which  is  not supplied by
;	  0029	!     DIGITAL.
;	  0030	!
;	  0031	
;	  0032	!++
;	  0033	! FACILITY:	MCB Configuration Facility, VNP36
;	  0034	!
;	  0035	! ABSTRACT:
;	  0036	!
;	  0037	!	This module contains all routines associated with MCB process database
;	  0038	!	construction.
;	  0039	!
;	  0040	! ENVIRONMENT:	TOPS-20 or TOPS-10 User Mode
;	  0041	!
;	  0042	! AUTHOR: Scott G. Robinson , CREATION DATE: 14-Apr-80
;	  0043	!
;	  0044	! MODIFIED BY:
;	  0045	!
;	  0046	!	, : VERSION
;	  0047	! 01	- Change COMMLINK usage to LINE 
;	  0048	! 02	- Add CTL$DF parameters
;	  0049	!--
;	  0050	
;	  0051	!
;	  0052	! TABLE OF CONTENTS
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   2
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (1)

;	  0053	!
;	  0054	
;	  0055	FORWARD ROUTINE
;	  0056	    LODMCB : NOVALUE,
;	  0057	    LLC_LOADS,
;	  0058	    DLC_LOADS : NOVALUE,
;	  0059	    DDM_LOADS : NOVALUE,
;	  0060	    BLOCK_LOAD : NOVALUE,
;	  0061	    GET_VARIABLE,
;	  0062	    NEXT_LIX,
;	  0063	    MCEX : NOVALUE,
;	  0064	    ALOC_POOL,
;	  0065	    LD_DCB;
;	  0066	
;	  0067	!
;	  0068	! INCLUDE FILES:
;	  0069	!
;	  0070	
;	  0071	LIBRARY 'VNPLIB';
;	  0072	
;	  0073	!
;	  0074	! MACROS:
;	  0075	!
;	  0076	!	None
;	  0077	!
;	  0078	! EQUATED SYMBOLS:
;	  0079	!
;	  0080	
;	  0081	LITERAL
;	  0082	    TRUE = 1 EQL 1,
;	  0083	    FALSE = 0 EQL 1,
;	  0084	    DEBUG = FALSE;
;	  0085	
;	  0086	!
;	  0087	! OWN STORAGE:
;	  0088	!
;	  0089	
;	  0090	OWN
;	  0091	!
;	  0092	! Variables used by BLOCK_LOAD
;	  0093	!
;	  0094	    CURBLK,					!Current Allocated Block Addr
;	  0095	    CURBAS,					!Current Block Base Address
;	  0096	    CURMAX,					!Current Maximum Address
;	  0097	    CURLIX,					!Current Line Index
;	  0098	    CURSLT : REF SLT_BLOCK,			!Pointer to Current SLT
;	  0099	    CURDEV : REF DEV_BLOCK,			!Pointer to Current DEV
;	  0100	    CURCTL : REF CTL_BLOCK,			!Pointer to Current CTL
;	  0101	    CURUNT : REF UNT_BLOCK,			!Pointer to Current UNT
;	  0102	    CURTRB : REF TRB_BLOCK;			!Pointer to Current TRB
;	  0103	
;	  0104	!
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   3
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (1)

;	  0105	! EXTERNAL REFERENCES:
;	  0106	!
;	  0107	
;	  0108	EXTERNAL ROUTINE
;	  0109	    ALOCB,					!Allocate some Executive Storage
;	  0110	    DEACB,					!Deallocate some Executive Storage
;	  0111	    GETBLK,					!Allocate a 'typed' block
;	  0112	    FND_CHAIN,					!Search a Chain
;	  0113	    M_PCB,					!Build a Partition Control Block
;	  0114	    ERRMSG : NOVALUE,				!Write an error message
;	  0115	    ERROR : NOVALUE,				!Write a fatal error message
;	  0116	    GETWRD,					!Get a word of PDP-11 Memory
;	  0117	    PUTWRD : NOVALUE,				!Write into a word of PDP-11 Memory
;	  0118	    GETBYT,					!Get a byte of PDP-11 Memory
;	  0119	    PUTBYT : NOVALUE,				!Write into a byte of PDP-11 Memory
;	  0120	    OUTNUM : NOVALUE,				!Output a Number
;	  0121	    OUTPUT : NOVALUE,				!Output a Character
;	  0122	    OUTSTR : NOVALUE,				!Output a String
;	  0123	    R50TOA : NOVALUE,				!Conver R50 to ASCII
;	  0124	    PCRLF : NOVALUE,				!Output a CR/LF
;	  0125	    RCOR : NOVALUE,				!Read a task's image
;	  0126	    FCOR : NOVALUE,				!Free the memory used by RCOR
;	  0127	    RSTB : NOVALUE,				!Read a task's symbol table
;	  0128	    SYM_VAL,					!Return a symbols value
;	  0129	    LNKDCB : NOVALUE,				!Link a DCB into executive
;	  0130	    $CBOMG;					!Convert Binary to Octal ASCII
;	  0131	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   4
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (2)

;	  0132	GLOBAL ROUTINE LODMCB (KERNEL_FILE, GEN_PCB, FILE_CHAN, VALUES) : NOVALUE =
;	  0133	
;	  0134	!++
;	  0135	! FUNCTIONAL DESCRIPTION:
;	  0136	!
;	  0137	!	Load MCB process's data bases according to system configuration
;	  0138	!
;	  0139	! FORMAL PARAMETERS
;	  0140	!
;	  0141	!	NONE.
;	  0142	!
;	  0143	! IMPLICIT INPUTS
;	  0144	!
;	  0145	!	NONE.
;	  0146	!
;	  0147	! ROUTINE VALUE:
;	  0148	! COMPLETION CODES:
;	  0149	!
;	  0150	!	NONE.
;	  0151	!
;	  0152	! SIDE EFFECTS:
;	  0153	!
;	  0154	!	NONE.
;	  0155	!
;	  0156	!--
;	  0157	
;	  0158	    BEGIN
;	  0159	
;	  0160	    BIND
;	  0161		ROUTINE_NAME = UPLIT (%ASCIZ'LOAD_MCB');
;	  0162	
;	  0163	    MAP
;	  0164		KERNEL_FILE : REF FILE_BLOCK,
;	  0165		VALUES : REF VNPVAL_BLOCK;
;	  0166	
;	  0167	    LOCAL
;	  0168		PAR_BLK : VECTOR [4];			!Global Parameter Block
;	  0169	
;	  0170	!
;	  0171	! Initialize Variables
;	  0172	!
;	  0173	    CURBLK = 0;					!Current Allocated Block Addr
;	  0174	    CURBAS = 0;					!Current Block Base Address
;	  0175	    CURMAX = 0;					!Current Maximum Address
;	  0176	    CURLIX = 0;					!Current Line Index
;	  0177	    CURSLT = 0;					!Pointer to Current SLT
;	  0178	    CURDEV = 0;					!Pointer to Current DEV
;	  0179	    CURCTL = 0;					!Pointer to Current CTL
;	  0180	    CURUNT = 0;					!Pointer to Current UNT
;	  0181	    CURTRB = 0;					!Pointer to Current TRB
;	  0182	!
;	  0183	    KERNEL_FILE [FILE_HWM] = (.KERNEL_FILE [FILE_HWM] + 1) AND ( NOT 1);
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   5
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (2)

;	  0184	!
;	  0185	! Start by loading the LLC data bases
;	  0186	!
;	  0187	    PAR_BLK [0] = .GEN_PCB;
;	  0188	    PAR_BLK [1] = .KERNEL_FILE;
;	  0189	    PAR_BLK [2] = .VALUES;
;	  0190	    PAR_BLK [3] = .FILE_CHAN;
;	  0191	    FND_CHAIN (.VALUES [LLC_CHAIN], LLC_LOADS, PAR_BLK);
;	  0192	!
;	  0193	! Load the DLC data bases
;	  0194	!
;	  0195	    DLC_LOADS (.KERNEL_FILE, .FILE_CHAN, .VALUES);
;	  0196	!
;	  0197	! Load the DDM data bases
;	  0198	!
;	  0199	    DDM_LOADS (.KERNEL_FILE, .FILE_CHAN, .VALUES);
;	  0200	!
;	  0201	! We are done loading data base items, round up the high water mark
;	  0202	!  of the KERNEL so that the database partition size can be set
;	  0203	!  correctly.
;	  0204	!
;	  0205	    KERNEL_FILE [FILE_HWM] = ((.KERNEL_FILE [FILE_HWM] + 64) AND ( NOT 63)) - 1;
;	  0206	!
;	  0207	    END;					! of LODMCB


	TITLE	MCBFNC
	TWOSEG


	.REQUEST  SYS:B362LB.REL


	RELOC	400000				;					400000'
P.AAA:	BYTE	(7)"L","O","A","D","_"		; LOAD_					400000' 114 117 101 104 137
	BYTE	(7)"M","C","B",000,000		; MCB					400001' 115 103 102 000 000


	RELOC	0				;					000000'
CURBLK: BLOCK	1				;					000000'
CURBAS: BLOCK	1				;					000001'
CURMAX: BLOCK	1				;					000002'
CURLIX: BLOCK	1				;					000003'
CURSLT: BLOCK	1				;					000004'
CURDEV: BLOCK	1				;					000005'
CURCTL: BLOCK	1				;					000006'
CURUNT: BLOCK	1				;					000007'
CURTRB: BLOCK	1				;					000010'


	EXTERN	ALOCB, DEACB, GETBLK, FND_CHAIN, M_PCB, ERRMSG, ERROR, GETWRD, PUTWRD, GETBYT, PUTBYT
	EXTERN	OUTNUM, OUTPUT, OUTSTR, R50TOA, PCRLF, RCOR, FCOR, RSTB, SYM_VAL, LNKDCB, $CBOMG
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   6
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (2)



ROUTINE_NAME=	    P.AAA			;						000000	400000'


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	400002				;					400002'
LODMCB::PUSH	SP,AC0				; SP,AC0				400002' 261 17 0 00 000000		0132
	PUSH	SP,AC10				; SP,AC10				400003' 261 17 0 00 000010
	ADJSP	SP,4				; SP,4					400004' 105 17 0 00 000004
	SETZM	CURBLK				; CURBLK				400005' 402 00 0 00 000000'		0173
	SETZM	CURBAS				; CURBAS				400006' 402 00 0 00 000001'		0174
	SETZM	CURMAX				; CURMAX				400007' 402 00 0 00 000002'		0175
	SETZM	CURLIX				; CURLIX				400010' 402 00 0 00 000003'		0176
	SETZM	CURSLT				; CURSLT				400011' 402 00 0 00 000004'		0177
	SETZM	CURDEV				; CURDEV				400012' 402 00 0 00 000005'		0178
	SETZM	CURCTL				; CURCTL				400013' 402 00 0 00 000006'		0179
	SETZM	CURUNT				; CURUNT				400014' 402 00 0 00 000007'		0180
	SETZM	CURTRB				; CURTRB				400015' 402 00 0 00 000010'		0181
	MOVE	AC10,-12(SP)			; AC10,KERNEL_FILE			400016' 200 10 0 17 777766		0183
	MOVE	AC1,16(AC10)			; AC1,16(AC10)				400017' 200 01 0 10 000016
	ADDI	AC1,1				; AC1,1					400020' 271 01 0 00 000001
	TRZ	AC1,1				; AC1,1					400021' 620 01 0 00 000001
	MOVEM	AC1,16(AC10)			; AC1,16(AC10)				400022' 202 01 0 10 000016
	MOVE	AC0,-11(SP)			; AC0,GEN_PCB				400023' 200 00 0 17 777767		0187
	MOVEM	AC0,-3(SP)			; AC0,PAR_BLK				400024' 202 00 0 17 777775
	MOVEM	AC10,-2(SP)			; AC10,PAR_BLK+1			400025' 202 10 0 17 777776		0188
	MOVE	AC0,-7(SP)			; AC0,VALUES				400026' 200 00 0 17 777771		0189
	MOVEM	AC0,-1(SP)			; AC0,PAR_BLK+2				400027' 202 00 0 17 777777
	MOVE	AC1,-10(SP)			; AC1,FILE_CHAN				400030' 200 01 0 17 777770		0190
	MOVEM	AC1,0(SP)			; AC1,PAR_BLK+3				400031' 202 01 0 17 000000
	MOVE	AC2,AC0				; AC2,AC0				400032' 200 02 0 00 000000		0191
	HLRZ	AC1,1(AC2)			; AC1,1(AC2)				400033' 554 01 0 02 000001
	PUSH	SP,AC1				; SP,AC1				400034' 261 17 0 00 000001
	PUSH	SP,C.1				; SP,[0,,LLC_LOADS]			400035' 261 17 0 00 400063'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   7
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (2)

	MOVEI	AC1,-5(SP)			; AC1,PAR_BLK				400036' 201 01 0 17 777773
	PUSH	SP,AC1				; SP,AC1				400037' 261 17 0 00 000001
	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				400040' 260 17 0 00 000000*
	MOVEM	AC10,0(SP)			; AC10,0(SP)				400041' 202 10 0 17 000000		0195
	PUSH	SP,-13(SP)			; SP,FILE_CHAN				400042' 261 17 0 17 777765
	PUSH	SP,AC0				; SP,AC0				400043' 261 17 0 00 000000
	PUSHJ	SP,DLC_LOADS			; SP,DLC_LOADS				400044' 260 17 0 00 000000V
	MOVEM	AC10,0(SP)			; AC10,0(SP)				400045' 202 10 0 17 000000		0199
	PUSH	SP,-15(SP)			; SP,FILE_CHAN				400046' 261 17 0 17 777763
	PUSH	SP,AC0				; SP,AC0				400047' 261 17 0 00 000000
	PUSHJ	SP,DDM_LOADS			; SP,DDM_LOADS				400050' 260 17 0 00 000000V
	MOVE	AC1,16(AC10)			; AC1,16(AC10)				400051' 200 01 0 10 000016		0205
	ADDI	AC1,100				; AC1,100				400052' 271 01 0 00 000100
	TRZ	AC1,77				; AC1,77				400053' 620 01 0 00 000077
	SUBI	AC1,1				; AC1,1					400054' 275 01 0 00 000001
	MOVEM	AC1,16(AC10)			; AC1,16(AC10)				400055' 202 01 0 10 000016
	ADJSP	SP,-7				; SP,-7					400056' 105 17 0 00 777771		0158
	ADJSP	SP,-4				; SP,-4					400057' 105 17 0 00 777774		0132
	POP	SP,AC10				; SP,AC10				400060' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				400061' 262 17 0 00 000000
	POPJ	SP,				; SP,					400062' 263 17 0 00 000000
C.1:	XWD	0,LLC_LOADS			; 0,LLC_LOADS				400063' 000000	000000V

; Routine Size:  50 words


;	  0208	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   8
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

;	  0209	ROUTINE LLC_LOADS (LLC_PTR, PAR_BLK) =
;	  0210	
;	  0211	!++
;	  0212	! FUNCTIONAL DESCRIPTION:
;	  0213	!
;	  0214	!	Load the LLC Data Bases for an MCB.
;	  0215	!
;	  0216	! FORMAL PARAMETERS
;	  0217	!
;	  0218	!	LLC_PTR = Pointer to LLC_BLOCK
;	  0219	!	PAR_VECTOR = Pointer to Parameter Vector
;	  0220	!
;	  0221	! IMPLICIT INPUTS
;	  0222	!
;	  0223	!	NONE.
;	  0224	!
;	  0225	! ROUTINE VALUE:
;	  0226	!
;	  0227	!	Always 0, so as to scan all LLC blocks
;	  0228	!
;	  0229	! SIDE EFFECTS:
;	  0230	!
;	  0231	!	NONE.
;	  0232	!
;	  0233	!--
;	  0234	
;	  0235	    BEGIN
;	  0236	
;	  0237	    BIND
;	  0238		ROUTINE_NAME = UPLIT (%ASCIZ'LLC_LOADS');
;	  0239	
;	  0240	    MAP
;	  0241		LLC_PTR : REF LLC_BLOCK,
;	  0242		PAR_BLK : REF VECTOR;
;	  0243	
;	  0244	    BIND
;	  0245		GEN_PCB = PAR_BLK [0],
;	  0246		KERNEL_FILE = PAR_BLK [1] : REF FILE_BLOCK,
;	  0247		VALUES = PAR_BLK [2] : REF VNPVAL_BLOCK,
;	  0248		FILE_CHAN = PAR_BLK [3];
;	  0249	
;	  0250	    LOCAL
;	  0251		CB_ADDRESS,
;	  0252		DB_FILE : REF FILE_BLOCK,
;	  0253		DB_POINTER,
;	  0254		LB_POINTER,
;	  0255		MCB_NAME : VECTOR [CH$ALLOCATION (7)],
;	  0256		MODU_PTR : REF MODU_BLOCK,
;	  0257		PRIMARY_COMMAND,
;	  0258		XXXNAME : VECTOR [CH$ALLOCATION (7)];
;	  0259	
;	  0260	!
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page   9
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

;	  0261	! Tell someone what we are doing
;	  0262	!
;	  0263	    OUTSTR (0, UPLIT (%ASCIZ'[Loading LLC Data Base for '));
;	  0264	    OUTSTR (0, LLC_PTR [LLC_NAME]);
;	  0265	!
;	  0266	! Get data base file
;	  0267	!
;	  0268	
;	  0269	    IF ((DB_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
;	  0270	    THEN
;	  0271		ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0, 0)
;	  0272	    ELSE
;	  0273		BEGIN
;	  0274	!
;	  0275	! Build xxxLLC file name
;	  0276	!
;	  0277		CH$MOVE (LEN_MCB_NAME, CH$PTR (LLC_PTR [LLC_NAME]), CH$PTR (DB_FILE [FILE_NAME]));
;	  0278		CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'LLC')),
;	  0279		    CH$FIND_CH (LEN_FILE_STRING, CH$PTR (DB_FILE [FILE_NAME]),
;	  0280			0));
;	  0281		RSTB (.FILE_CHAN, .DB_FILE);
;	  0282		RCOR (.DB_FILE, .FILE_CHAN, 8*2048);
;	  0283	!
;	  0284	! Printout Identification Information
;	  0285	!
;	  0286		R50TOA (GETWRD (.DB_FILE, 0), MCB_NAME);
;	  0287		CH$MOVE (4, CH$PTR (MCB_NAME, 3), CH$PTR (MCB_NAME));
;	  0288		OUTSTR (0, UPLIT (%ASCIZ' ('));
;	  0289		OUTSTR (0, MCB_NAME);
;	  0290		OUTPUT (0, %C' ');
;	  0291		OUTNUM (0, GETBYT (.DB_FILE, 2), 10, 0);
;	  0292		OUTPUT (0, %C'.');
;	  0293		OUTNUM (0, GETBYT (.DB_FILE, 3), 10, 0);
;	  0294		OUTSTR (0, UPLIT (%ASCIZ') --> '));
;	  0295	!
;	  0296	! Process Primary Load Block Command
;	  0297	!
;	  0298		DB_POINTER = 4;
;	  0299		PRIMARY_COMMAND = GETBYT (.DB_FILE, .DB_POINTER);
;	  0300	
;	  0301		SELECTONE .PRIMARY_COMMAND OF
;	  0302		    SET
;	  0303	
;	  0304		    [CMD_ALLOC_DB_DSR] :
;	  0305			CURBLK = ALOCB (.KERNEL_FILE, GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES);
;	  0306	
;	  0307		    [CMD_ALLOC_DB_POOL] :
;	  0308			CURBLK = ALOC_POOL (.KERNEL_FILE, GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES);
;	  0309	
;	  0310		    [OTHERWISE] :
;	  0311		    ;
;	  0312		    TES;
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  10
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

;	  0313	
;	  0314		CURBAS = (.CURBLK AND ( NOT 63));
;	  0315		CURMAX = .CURBLK + GETWRD (.DB_FILE, .DB_POINTER + 2);
;	  0316	!
;	  0317	! Process the Load Block associated with this Primary Request
;	  0318	!
;	  0319		LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 4);
;	  0320		BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0321	!
;	  0322	! Store data base address in LLCxxx
;	  0323	!
;	  0324		CH$COPY (3, CH$PTR (UPLIT (%ASCIZ'LLC')), LEN_MCB_NAME, CH$PTR (LLC_PTR [LLC_NAME]), 0, 7,
;	  0325		    CH$PTR (XXXNAME));
;	  0326		CB_ADDRESS = .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE], XXXNAME, 0);
;	  0327		PUTWRD (.KERNEL_FILE, .CB_ADDRESS, (IF (.CURBLK GEQ %O'120000') THEN .CURBAS<6, 12, 0> ELSE 0));
;	  0328		PUTWRD (.KERNEL_FILE, .CB_ADDRESS + 2,
;	  0329		    (IF (.CURBLK GEQ %O'120000') THEN ((.CURBLK - .CURBAS) + %O'140000') ELSE .CURBLK));
;	  0330	!
;	  0331	! Printout Task information
;	  0332	!
;	  0333		MODU_PTR = .DB_FILE [FILE_MODU];
;	  0334		OUTSTR (0, MODU_PTR [MODU_NAME]);
;	  0335		OUTPUT (0, %C' ');
;	  0336		OUTSTR (0, MODU_PTR [MODU_IDENT]);
;	  0337		OUTSTR (0, UPLIT (%ASCIZ' ]'));
;	  0338		PCRLF (0);
;	  0339		FCOR (.DB_FILE);
;	  0340		END;
;	  0341	
;	  0342	    0
;	  0343	    END;					! of LLC_LOADS


P.AAB:	BYTE	(7)"L","L","C","_","L"		; LLC_L					400064' 114 114 103 137 114
	BYTE	(7)"O","A","D","S",000		; OADS					400065' 117 101 104 123 000
P.AAC:	BYTE	(7)"[","L","o","a","d"		; [Load					400066' 133 114 157 141 144
	BYTE	(7)"i","n","g"," ","L"		; ing L					400067' 151 156 147 040 114
	BYTE	(7)"L","C"," ","D","a"		; LC Da					400070' 114 103 040 104 141
	BYTE	(7)"t","a"," ","B","a"		; ta Ba					400071' 164 141 040 102 141
	BYTE	(7)"s","e"," ","f","o"		; se fo					400072' 163 145 040 146 157
	BYTE	(7)"r"," ",000,000,000		; r					400073' 162 040 000 000 000
P.AAD:	BYTE	(7)"L","L","C",000,000		; LLC					400074' 114 114 103 000 000
P.AAE:	BYTE	(7)" ","(",000,000,000		;  (					400075' 040 050 000 000 000
P.AAF:	BYTE	(7)")"," ","-","-",">"		; ) -->					400076' 051 040 055 055 076
	BYTE	(7)" ",000,000,000,000		;					400077' 040 000 000 000 000
P.AAG:	BYTE	(7)"L","L","C",000,000		; LLC					400100' 114 114 103 000 000
P.AAH:	BYTE	(7)" ","]",000,000,000		;  ]					400101' 040 135 000 000 000


ROUTINE_NAME=	    P.AAB			;						000000	400064'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  11
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

LLC_LOADS:
	PUSH	SP,AC0				; SP,AC0				400102' 261 17 0 00 000000		0209
	PUSH	SP,AC10				; SP,AC10				400103' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				400104' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				400105' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				400106' 261 17 0 00 000013
	ADJSP	SP,4				; SP,4					400107' 105 17 0 00 000004
	MOVE	AC13,-12(SP)			; AC13,PAR_BLK				400110' 200 13 0 17 777766		0246
	ADDI	AC13,1				; AC13,1				400111' 271 13 0 00 000001
	MOVE	AC10,-12(SP)			; AC10,PAR_BLK				400112' 200 10 0 17 777766		0247
	ADDI	AC10,2				; AC10,2				400113' 271 10 0 00 000002
	MOVE	AC0,-12(SP)			; AC0,PAR_BLK				400114' 200 00 0 17 777766		0248
	ADDI	AC0,3				; AC0,3					400115' 271 00 0 00 000003
	PUSH	SP,C.6				; SP,[0]				400116' 261 17 0 00 400475'		0263
	PUSH	SP,C.7				; SP,[0,,P.AAC]				400117' 261 17 0 00 400476'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400120' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400121' 402 00 0 17 000000		0264
	MOVE	AC12,-15(SP)			; AC12,LLC_PTR				400122' 200 12 0 17 777763
	ADDI	AC12,1				; AC12,1				400123' 271 12 0 00 000001
	PUSH	SP,AC12				; SP,AC12				400124' 261 17 0 00 000012
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400125' 260 17 0 00 000000*
	PUSH	SP,C.8				; SP,[3]				400126' 261 17 0 00 400477'		0269
	PUSH	SP,C.9				; SP,[20]				400127' 261 17 0 00 400500'
	PUSHJ	SP,GETBLK			; SP,GETBLK				400130' 260 17 0 00 000000*
	MOVE	AC11,AC1			; DB_FILE,AC1				400131' 200 11 0 00 000001
	ADJSP	SP,-2				; SP,-2					400132' 105 17 0 00 777776
	JUMPN	AC11,L.1			; DB_FILE,L.1				400133' 326 11 0 00 400145'
	SETZM	0(SP)				; 0(SP)					400134' 402 00 0 17 000000		0271
	PUSH	SP,C.10				; SP,[1]				400135' 261 17 0 00 400501'
	PUSH	SP,C.11				; SP,[0,,ROUTINE_NAME]			400136' 261 17 0 00 400502'
	PUSH	SP,C.6				; SP,[0]				400137' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400140' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400141' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400142' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				400143' 260 17 0 00 000000*
	JRST	L.9				; L.9					400144' 254 00 0 00 400457'		0269
L.1:	MOVE	AC1,AC12			; AC1,AC12				400145' 200 01 0 00 000012		0277
	MOVEI	AC2,-1(AC1)			; AC2,-1(AC1)				400146' 201 02 0 01 777777
	HRLI	AC2,10700			; AC2,10700				400147' 505 02 0 00 010700
	MOVEI	AC5,1(AC11)			; AC5,1(DB_FILE)			400150' 201 05 0 11 000001
	HRLI	AC5,10700			; AC5,10700				400151' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					400152' 201 01 0 00 000003
	MOVEI	AC4,3				; AC4,3					400153' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400154' 123 01 0 00 400470'
	JFCL					; 					400155' 255 00 0 00 000000
	PUSH	SP,C.12				; SP,[50]				400156' 261 17 0 00 400503'		0280
	MOVEI	AC1,1(AC11)			; AC1,1(DB_FILE)			400157' 201 01 0 11 000001		0279
	HRLI	AC1,10700			; AC1,10700				400160' 505 01 0 00 010700
	PUSH	SP,AC1				; SP,AC1				400161' 261 17 0 00 000001
	PUSH	SP,C.6				; SP,[0]				400162' 261 17 0 00 400475'		0280
	PUSHJ	SP,CHFCH%			; SP,CHFCH%				400163' 260 17 0 00 000000*
	MOVE	AC5,AC1				; AC5,AC1				400164' 200 05 0 00 000001
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  12
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

	MOVEI	AC1,3				; AC1,3					400165' 201 01 0 00 000003		0278
	MOVE	AC2,C.13			; AC2,[POINT 7,P.AAD-1,34]  <1,7>	400166' 200 02 0 00 400504'
	MOVEI	AC4,3				; AC4,3					400167' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400170' 123 01 0 00 400470'
	JFCL					; 					400171' 255 00 0 00 000000
	MOVE	AC1,AC0				; AC1,AC0				400172' 200 01 0 00 000000		0281
	PUSH	SP,0(AC1)			; SP,0(AC1)				400173' 261 17 0 01 000000
	PUSH	SP,AC11				; SP,DB_FILE				400174' 261 17 0 00 000011
	PUSHJ	SP,RSTB				; SP,RSTB				400175' 260 17 0 00 000000*
	MOVEM	AC11,0(SP)			; DB_FILE,0(SP)				400176' 202 11 0 17 000000		0282
	MOVE	AC1,AC0				; AC1,AC0				400177' 200 01 0 00 000000
	PUSH	SP,0(AC1)			; SP,0(AC1)				400200' 261 17 0 01 000000
	PUSH	SP,C.14				; SP,[40000]				400201' 261 17 0 00 400505'
	PUSHJ	SP,RCOR				; SP,RCOR				400202' 260 17 0 00 000000*
	MOVEM	AC11,-1(SP)			; DB_FILE,-1(SP)			400203' 202 11 0 17 777777		0286
	SETZM	0(SP)				; 0(SP)					400204' 402 00 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				400205' 260 17 0 00 000000*
	PUSH	SP,AC1				; SP,AC1				400206' 261 17 0 00 000001
	MOVEI	AC0,-16(SP)			; AC0,MCB_NAME				400207' 201 00 0 17 777762
	PUSH	SP,AC0				; SP,AC0				400210' 261 17 0 00 000000
	PUSHJ	SP,R50TOA			; SP,R50TOA				400211' 260 17 0 00 000000*
	MOVEI	AC2,-17(SP)			; AC2,MCB_NAME				400212' 201 02 0 17 777761		0287
	HRLI	AC2,170700			; AC2,170700				400213' 505 02 0 00 170700
	MOVEI	AC5,-20(SP)			; AC5,MCB_NAME-1			400214' 201 05 0 17 777760
	HRLI	AC5,10700			; AC5,10700				400215' 505 05 0 00 010700
	MOVEI	AC1,4				; AC1,4					400216' 201 01 0 00 000004
	MOVEI	AC4,4				; AC4,4					400217' 201 04 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400220' 123 01 0 00 400470'
	JFCL					; 					400221' 255 00 0 00 000000
	SETZM	0(SP)				; 0(SP)					400222' 402 00 0 17 000000		0288
	PUSH	SP,C.15				; SP,[0,,P.AAE]				400223' 261 17 0 00 400506'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400224' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400225' 402 00 0 17 000000		0289
	MOVEI	AC0,-20(SP)			; AC0,MCB_NAME				400226' 201 00 0 17 777760
	PUSH	SP,AC0				; SP,AC0				400227' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400230' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400231' 402 00 0 17 000000		0290
	PUSH	SP,C.16				; SP,[40]				400232' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400233' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400234' 402 00 0 17 000000		0291
	PUSH	SP,AC11				; SP,DB_FILE				400235' 261 17 0 00 000011
	PUSH	SP,C.17				; SP,[2]				400236' 261 17 0 00 400510'
	PUSHJ	SP,GETBYT			; SP,GETBYT				400237' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400240' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400241' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				400242' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				400243' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400244' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400245' 402 00 0 17 000000		0292
	PUSH	SP,C.19				; SP,[56]				400246' 261 17 0 00 400512'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400247' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400250' 402 00 0 17 000000		0293
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  13
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

	PUSH	SP,AC11				; SP,DB_FILE				400251' 261 17 0 00 000011
	PUSH	SP,C.8				; SP,[3]				400252' 261 17 0 00 400477'
	PUSHJ	SP,GETBYT			; SP,GETBYT				400253' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400254' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400255' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				400256' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				400257' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400260' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400261' 402 00 0 17 000000		0294
	PUSH	SP,C.20				; SP,[0,,P.AAF]				400262' 261 17 0 00 400513'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400263' 260 17 0 00 000000*
	MOVEI	AC0,4				; DB_POINTER,4				400264' 201 00 0 00 000004		0298
	MOVEM	AC11,-1(SP)			; DB_FILE,-1(SP)			400265' 202 11 0 17 777777		0299
	MOVEM	AC0,0(SP)			; DB_POINTER,0(SP)			400266' 202 00 0 17 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				400267' 260 17 0 00 000000*
	CAIE	AC1,20				; PRIMARY_COMMAND,20			400270' 302 01 0 00 000020		0301
	JRST	L.2				; L.2					400271' 254 00 0 00 400306'
	PUSH	SP,0(AC13)			; SP,0(AC13)				400272' 261 17 0 13 000000		0305
	PUSH	SP,AC11				; SP,DB_FILE				400273' 261 17 0 00 000011
	MOVE	AC1,AC0				; AC1,DB_POINTER			400274' 200 01 0 00 000000
	ADDI	AC1,2				; AC1,2					400275' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				400276' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				400277' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400300' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400301' 202 01 0 17 000000
	PUSH	SP,C.6				; SP,[0]				400302' 261 17 0 00 400475'
	PUSH	SP,0(AC10)			; SP,0(AC10)				400303' 261 17 0 10 000000
	PUSHJ	SP,ALOCB			; SP,ALOCB				400304' 260 17 0 00 000000*
	JRST	L.3				; L.3					400305' 254 00 0 00 400323'
L.2:	CAIE	AC1,21				; PRIMARY_COMMAND,21			400306' 302 01 0 00 000021		0301
	JRST	L.4				; L.4					400307' 254 00 0 00 400325'
	PUSH	SP,0(AC13)			; SP,0(AC13)				400310' 261 17 0 13 000000		0308
	PUSH	SP,AC11				; SP,DB_FILE				400311' 261 17 0 00 000011
	MOVE	AC1,AC0				; AC1,DB_POINTER			400312' 200 01 0 00 000000
	ADDI	AC1,2				; AC1,2					400313' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				400314' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				400315' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400316' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400317' 202 01 0 17 000000
	PUSH	SP,C.6				; SP,[0]				400320' 261 17 0 00 400475'
	PUSH	SP,0(AC10)			; SP,0(AC10)				400321' 261 17 0 10 000000
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				400322' 260 17 0 00 000000V
L.3:	MOVEM	AC1,CURBLK			; AC1,CURBLK				400323' 202 01 0 00 000000'
	ADJSP	SP,-4				; SP,-4					400324' 105 17 0 00 777774
L.4:	MOVE	AC1,CURBLK			; AC1,CURBLK				400325' 200 01 0 00 000000'		0314
	TRZ	AC1,77				; AC1,77				400326' 620 01 0 00 000077
	MOVEM	AC1,CURBAS			; AC1,CURBAS				400327' 202 01 0 00 000001'
	MOVEM	AC11,0(SP)			; DB_FILE,0(SP)				400330' 202 11 0 17 000000		0315
	MOVE	AC1,AC0				; AC1,DB_POINTER			400331' 200 01 0 00 000000
	ADDI	AC1,2				; AC1,2					400332' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				400333' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				400334' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  14
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

	ADD	AC1,CURBLK			; AC1,CURBLK				400335' 270 01 0 00 000000'
	MOVEM	AC1,CURMAX			; AC1,CURMAX				400336' 202 01 0 00 000002'
	MOVEM	AC11,0(SP)			; DB_FILE,0(SP)				400337' 202 11 0 17 000000		0319
	ADDI	AC0,4				; DB_POINTER,4				400340' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,DB_POINTER				400341' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				400342' 260 17 0 00 000000*
	PUSH	SP,0(AC13)			; SP,0(AC13)				400343' 261 17 0 13 000000		0320
	PUSH	SP,AC11				; SP,DB_FILE				400344' 261 17 0 00 000011
	PUSH	SP,AC1				; SP,LB_POINTER				400345' 261 17 0 00 000001
	MOVE	AC10,0(AC10)			; AC10,0(AC10)				400346' 200 10 0 10 000000
	PUSH	SP,AC10				; SP,AC10				400347' 261 17 0 00 000010
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				400350' 260 17 0 00 000000V
	MOVE	AC1,AC12			; AC1,AC12				400351' 200 01 0 00 000012		0324
	MOVEI	AC0,-1(AC1)			; AC0,-1(AC1)				400352' 201 00 0 01 777777
	HRLI	AC0,10700			; AC0,10700				400353' 505 00 0 00 010700
	MOVEI	AC3,7				; AC3,7					400354' 201 03 0 00 000007
	MOVEI	AC5,-37(SP)			; AC5,XXXNAME-1				400355' 201 05 0 17 777741		0325
	HRLI	AC5,10700			; AC5,10700				400356' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					400357' 201 01 0 00 000003		0324
	MOVE	AC2,C.21			; AC2,[POINT 7,P.AAG-1,34]  <1,7>	400360' 200 02 0 00 400514'
	MOVE	AC4,AC3				; AC4,AC3				400361' 200 04 0 00 000003
	CAML	AC4,AC1				; AC4,AC1				400362' 311 04 0 00 000001
	MOVE	AC4,AC1				; AC4,AC1				400363' 200 04 0 00 000001
	SUB	AC3,AC4				; AC3,AC4				400364' 274 03 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400365' 123 01 0 00 400470'
	JFCL					; 					400366' 255 00 0 00 000000
	JUMPLE	AC3,L.5				; AC3,L.5				400367' 323 03 0 00 400375'
	MOVEI	AC1,3				; AC1,3					400370' 201 01 0 00 000003
	MOVE	AC2,AC0				; AC2,AC0				400371' 200 02 0 00 000000
	MOVE	AC4,AC3				; AC4,AC3				400372' 200 04 0 00 000003
	EXTEND	AC1,C.3				; AC1,C.3				400373' 123 01 0 00 400471'
	JFCL					; 					400374' 255 00 0 00 000000
L.5:	HRRZ	AC0,5(AC10)			; AC0,5(AC10)				400375' 550 00 0 10 000005		0326
	PUSH	SP,AC0				; SP,AC0				400376' 261 17 0 00 000000
	MOVEI	AC0,-37(SP)			; AC0,XXXNAME				400377' 201 00 0 17 777741
	PUSH	SP,AC0				; SP,AC0				400400' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				400401' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				400402' 260 17 0 00 000000*
	MOVE	AC0,AC1				; CB_ADDRESS,AC1			400403' 200 00 0 00 000001
	LDB	AC2,C.4				; AC2,[POINT 19,4(AC10),35]  <0,19>	400404' 135 02 0 00 400473'
	ADD	AC0,AC2				; CB_ADDRESS,AC2			400405' 270 00 0 00 000002
	PUSH	SP,0(AC13)			; SP,0(AC13)				400406' 261 17 0 13 000000		0327
	PUSH	SP,AC0				; SP,CB_ADDRESS				400407' 261 17 0 00 000000
	MOVEI	AC1,120000			; AC1,120000				400410' 201 01 0 00 120000
	CAMLE	AC1,CURBLK			; AC1,CURBLK				400411' 313 01 0 00 000000'
	JRST	L.6				; L.6					400412' 254 00 0 00 400416'
	LDB	AC1,C.5				; AC1,[POINT 12,CURBAS,29]  <6,12>	400413' 135 01 0 00 400474'
	PUSH	SP,AC1				; SP,AC1				400414' 261 17 0 00 000001
	JRST	L.7				; L.7					400415' 254 00 0 00 400417'
L.6:	PUSH	SP,C.6				; SP,[0]				400416' 261 17 0 00 400475'
L.7:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				400417' 260 17 0 00 000000*
	PUSH	SP,0(AC13)			; SP,0(AC13)				400420' 261 17 0 13 000000		0328
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  15
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

	ADDI	AC0,2				; CB_ADDRESS,2				400421' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,CB_ADDRESS				400422' 261 17 0 00 000000
	MOVE	AC0,CURBLK			; AC0,CURBLK				400423' 200 00 0 00 000000'		0329
	CAIGE	AC0,120000			; AC0,120000				400424' 305 00 0 00 120000
	JRST	L.8				; L.8					400425' 254 00 0 00 400430'
	SUB	AC0,CURBAS			; AC0,CURBAS				400426' 274 00 0 00 000001'
	ADDI	AC0,140000			; AC0,140000				400427' 271 00 0 00 140000
L.8:	PUSH	SP,AC0				; SP,AC0				400430' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				400431' 260 17 0 00 000000*		0328
	HRRZ	AC0,14(AC11)			; MODU_PTR,14(DB_FILE)			400432' 550 00 0 11 000014		0333
	SETZM	0(SP)				; 0(SP)					400433' 402 00 0 17 000000		0334
	MOVE	AC1,AC0				; AC1,MODU_PTR				400434' 200 01 0 00 000000
	ADDI	AC1,1				; AC1,1					400435' 271 01 0 00 000001
	PUSH	SP,AC1				; SP,AC1				400436' 261 17 0 00 000001
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400437' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400440' 402 00 0 17 000000		0335
	PUSH	SP,C.16				; SP,[40]				400441' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400442' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400443' 402 00 0 17 000000		0336
	ADDI	AC0,3				; MODU_PTR,3				400444' 271 00 0 00 000003
	PUSH	SP,AC0				; SP,MODU_PTR				400445' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400446' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400447' 402 00 0 17 000000		0337
	PUSH	SP,C.22				; SP,[0,,P.AAH]				400450' 261 17 0 00 400515'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400451' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400452' 402 00 0 17 000000		0338
	PUSHJ	SP,PCRLF			; SP,PCRLF				400453' 260 17 0 00 000000*
	MOVEM	AC11,0(SP)			; DB_FILE,0(SP)				400454' 202 11 0 17 000000		0339
	PUSHJ	SP,FCOR				; SP,FCOR				400455' 260 17 0 00 000000*
	ADJSP	SP,-41				; SP,-41				400456' 105 17 0 00 777737		0273
L.9:	ADJSP	SP,-11				; SP,-11				400457' 105 17 0 00 777767		0235
	SETZ	AC1,				; AC1,					400460' 400 01 0 00 000000		0209
	ADJSP	SP,-4				; SP,-4					400461' 105 17 0 00 777774
	POP	SP,AC13				; SP,AC13				400462' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				400463' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				400464' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				400465' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				400466' 262 17 0 00 000000
	POPJ	SP,				; SP,					400467' 263 17 0 00 000000
C.2:	MOVSLJ					; 					400470' 016 00 0 00 000000
C.3:	MOVSLJ					; 					400471' 016 00 0 00 000000
	EXP	0				; 0					400472' 000000	000000
C.4:	POINT	19,4(AC10),35			; 19,4(AC10),35				400473' 00 23 0 10 000004
C.5:	POINT	12,CURBAS,29			; 12,CURBAS,29				400474' 06 14 0 00 000001'
C.6:	EXP	0				; 0					400475' 000000	000000
C.7:	XWD	0,P.AAC				; 0,P.AAC				400476' 000000	400066'
C.8:	EXP	3				; 3					400477' 000000	000003
C.9:	EXP	20				; 20					400500' 000000	000020
C.10:	EXP	1				; 1					400501' 000000	000001
C.11:	XWD	0,ROUTINE_NAME			; 0,ROUTINE_NAME			400502' 000000	400064'
C.12:	EXP	50				; 50					400503' 000000	000050
C.13:	POINT	7,P.AAD-1,34			; 7,P.AAD-1,34				400504' 01 07 0 00 400073'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  16
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (3)

C.14:	EXP	40000				; 40000					400505' 000000	040000
C.15:	XWD	0,P.AAE				; 0,P.AAE				400506' 000000	400075'
C.16:	EXP	40				; 40					400507' 000000	000040
C.17:	EXP	2				; 2					400510' 000000	000002
C.18:	EXP	12				; 12					400511' 000000	000012
C.19:	EXP	56				; 56					400512' 000000	000056
C.20:	XWD	0,P.AAF				; 0,P.AAF				400513' 000000	400076'
C.21:	POINT	7,P.AAG-1,34			; 7,P.AAG-1,34				400514' 01 07 0 00 400077'
C.22:	XWD	0,P.AAH				; 0,P.AAH				400515' 000000	400101'

; Routine Size:  268 words
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  17
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

;	  0344	ROUTINE DLC_LOADS (KERNEL_FILE, FILE_CHAN, VALUES) : NOVALUE =
;	  0345	
;	  0346	!++
;	  0347	! FUNCTIONAL DESCRIPTION:
;	  0348	!
;	  0349	!	Load DLC Process Data Bases for each SLT in the MCB.
;	  0350	!
;	  0351	! FORMAL PARAMETERS
;	  0352	!
;	  0353	!	KERNEL_FILE - System Image File Descriptor
;	  0354	!	FILE_CHAN   - Channel to use for I/O
;	  0355	!	VALUES      - Misc Data Items
;	  0356	!
;	  0357	! IMPLICIT INPUTS
;	  0358	!
;	  0359	!	NONE.
;	  0360	!
;	  0361	! ROUTINE VALUE:
;	  0362	!
;	  0363	!	NONE.
;	  0364	!
;	  0365	! SIDE EFFECTS:
;	  0366	!
;	  0367	!	NONE.
;	  0368	!
;	  0369	!--
;	  0370	
;	  0371	    BEGIN
;	  0372	
;	  0373	    BIND
;	  0374		ROUTINE_NAME = UPLIT (%ASCIZ'DLC_LOADS');
;	  0375	
;	  0376	    MAP
;	  0377		KERNEL_FILE : REF FILE_BLOCK,
;	  0378		VALUES : REF VNPVAL_BLOCK;
;	  0379	
;	  0380	    LOCAL
;	  0381		CB_ADDRESS,
;	  0382		CTL_LENGTH,
;	  0383		DB_FILE : REF FILE_BLOCK,
;	  0384		DB_POINTER,
;	  0385		DB_VARIABLE_1,
;	  0386		DB_VARIABLE_2,
;	  0387		LB_POINTER,
;	  0388		MCB_NAME : VECTOR [CH$ALLOCATION (7)],
;	  0389		MODU_PTR : REF MODU_BLOCK,
;	  0390		PRIMARY_COMMAND,
;	  0391		TEMPORARY_PTR,
;	  0392		UNT_LENGTH,
;	  0393		XXXNAME : VECTOR [CH$ALLOCATION (7)];
;	  0394	
;	  0395	!
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  18
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

;	  0396	! Start by initializing some of the data items
;	  0397	!
;	  0398	    CURLIX = 0;
;	  0399	    CURSLT = 0;
;	  0400	    CURCTL = 0;
;	  0401	    NEXT_LIX (VAR_CURRENT_CTL, .VALUES);
;	  0402	!
;	  0403	
;	  0404	    IF (.CURSLT NEQ 0)
;	  0405	    THEN
;	  0406	
;	  0407		DO
;	  0408	
;	  0409		    IF (.CURSLT [SLT_DLC] NEQ 0)
;	  0410		    THEN
;	  0411			BEGIN
;	  0412	!
;	  0413	! Tell someone what we are doing
;	  0414	!
;	  0415			OUTSTR (0, UPLIT (%ASCIZ'[Loading '));
;	  0416			OUTSTR (0, CURSLT [SLT_DLC]);
;	  0417			OUTSTR (0, UPLIT (%ASCIZ' data base for LINE '));
;	  0418			OUTSTR (0, (IF (.CURSLT [SLT_DEV] NEQ 0) THEN CURSLT [SLT_DEV] ELSE CURSLT [SLT_DLC]));
;	  0419			OUTPUT (0, %C'-');
;	  0420			OUTNUM (0, .CURSLT [SLT_CTL], 10, 0);
;	  0421			OUTPUT (0, %C'-');
;	  0422			OUTNUM (0, .CURSLT [SLT_UNT], 10, 0);
;	  0423	!
;	  0424	! Get data base file
;	  0425	!
;	  0426	
;	  0427			IF ((DB_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
;	  0428			THEN
;	  0429			    ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0,
;	  0430				0)
;	  0431			ELSE
;	  0432			    BEGIN
;	  0433	!
;	  0434	! Build xxxDLC file name
;	  0435	!
;	  0436			    CH$MOVE (LEN_MCB_NAME, CH$PTR (CURSLT [SLT_DLC]), CH$PTR (DB_FILE [FILE_NAME]));
;	  0437			    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DLC')),
;	  0438				CH$FIND_CH (LEN_FILE_STRING,
;	  0439				    CH$PTR (DB_FILE [FILE_NAME]), 0));
;	  0440			    RSTB (.FILE_CHAN, .DB_FILE);
;	  0441			    RCOR (.DB_FILE, .FILE_CHAN, 4*2048);
;	  0442	!
;	  0443	! Printout Identification Information
;	  0444	!
;	  0445			    R50TOA (GETWRD (.DB_FILE, 0), MCB_NAME);
;	  0446			    CH$MOVE (4, CH$PTR (MCB_NAME, 3), CH$PTR (MCB_NAME));
;	  0447			    OUTSTR (0, UPLIT (%ASCIZ' ('));
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  19
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

;	  0448			    OUTSTR (0, MCB_NAME);
;	  0449			    OUTPUT (0, %C' ');
;	  0450			    OUTNUM (0, GETBYT (.DB_FILE, 2), 10, 0);
;	  0451			    OUTPUT (0, %C'.');
;	  0452			    OUTNUM (0, GETBYT (.DB_FILE, 3), 10, 0);
;	  0453			    OUTSTR (0, UPLIT (%ASCIZ') --> '));
;	  0454	!
;	  0455	! Process Primary Load Block Command
;	  0456	!
;	  0457			    DB_POINTER = 4;
;	  0458			    PRIMARY_COMMAND = GETBYT (.DB_FILE, .DB_POINTER);
;	  0459			    DB_VARIABLE_1 = GETBYT (.DB_FILE, .DB_POINTER + 1);
;	  0460			    DB_VARIABLE_2 = 0;
;	  0461	
;	  0462			    SELECTONE .PRIMARY_COMMAND OF
;	  0463				SET
;	  0464	
;	  0465				[CMD_ALLOC_DB_DSR, CMD_ALLOC_DB_POOL] :
;	  0466				    BEGIN
;	  0467				    CURBLK = (IF (.PRIMARY_COMMAND EQL CMD_ALLOC_DB_DSR) THEN ALOCB (.KERNEL_FILE,
;	  0468					    GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES) ELSE ALOC_POOL (
;	  0469					    .KERNEL_FILE, GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES));
;	  0470				    CURBAS = (.CURBLK AND ( NOT 63));
;	  0471				    CURMAX = .CURBLK + GETWRD (.DB_FILE, .DB_POINTER + 2);
;	  0472	!
;	  0473	! Process the Load Block associated with this Primary Request
;	  0474	!
;	  0475				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 4);
;	  0476				    BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0477	!
;	  0478	! Store data base address in DLCnnn
;	  0479	!
;	  0480	
;	  0481				    DO
;	  0482					BEGIN
;	  0483					CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DLC')), CH$PTR (XXXNAME));
;	  0484					TEMPORARY_PTR = CH$PTR (XXXNAME, 3);
;	  0485					$CBOMG (TEMPORARY_PTR, .CURLIX, 0);
;	  0486					CH$WCHAR (0, .TEMPORARY_PTR);
;	  0487					CB_ADDRESS = .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE],
;	  0488					    XXXNAME, 0);
;	  0489					PUTWRD (.KERNEL_FILE, .CB_ADDRESS,
;	  0490					    (IF (.CURBLK GEQ %O'120000') THEN .CURBAS<6, 12, 0> ELSE 0));
;	  0491					PUTWRD (.KERNEL_FILE, .CB_ADDRESS + 2,
;	  0492					    (IF (.CURBLK GEQ %O'120000') THEN ((.CURBLK - .CURBAS) + %O'140000') ELSE
;	  0493						.CURBLK));
;	  0494					END
;	  0495				    UNTIL NEXT_LIX (.DB_VARIABLE_1, .VALUES);
;	  0496	
;	  0497				    END;
;	  0498	
;	  0499				[CMD_ALLOC_MUX_DSR, CMD_ALLOC_MUX_POOL] :
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  20
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

;	  0500				    BEGIN
;	  0501				    DB_VARIABLE_2 = GETBYT (.DB_FILE, .DB_POINTER + 2);
;	  0502				    CTL_LENGTH = GETWRD (.DB_FILE, .DB_POINTER + 4);
;	  0503				    UNT_LENGTH = GETWRD (.DB_FILE, .DB_POINTER + 8);
;	  0504				    CURMAX = .CTL_LENGTH + (GET_VARIABLE (.DB_VARIABLE_2, .VALUES)*.UNT_LENGTH);
;	  0505				    CURBLK = (IF (.PRIMARY_COMMAND EQL CMD_ALLOC_MUX_DSR) THEN ALOCB (.KERNEL_FILE,
;	  0506					    .CURMAX, 0, .VALUES) ELSE ALOC_POOL (.KERNEL_FILE, .CURMAX, 0, .VALUES));
;	  0507				    CURBAS = (.CURBLK AND ( NOT 63));
;	  0508				    CURMAX = .CURMAX + .CURBLK;
;	  0509	!
;	  0510	! Load the Controller block
;	  0511	!
;	  0512				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 6);
;	  0513				    BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0514	!
;	  0515	! Load each unit's block
;	  0516	!
;	  0517				    CURBLK = .CURBLK + .CTL_LENGTH;
;	  0518				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 10);
;	  0519	
;	  0520				    DECR DUMMY FROM GET_VARIABLE (.DB_VARIABLE_2, .VALUES) TO 1 DO
;	  0521					BEGIN
;	  0522					BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0523	!
;	  0524	! Plug Addresses into Data Structures
;	  0525	!
;	  0526	
;	  0527					DO
;	  0528					    BEGIN
;	  0529					    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DLC')), CH$PTR (XXXNAME));
;	  0530					    TEMPORARY_PTR = CH$PTR (XXXNAME, 3);
;	  0531					    $CBOMG (TEMPORARY_PTR, .CURLIX, 0);
;	  0532					    CH$WCHAR (0, .TEMPORARY_PTR);
;	  0533					    CB_ADDRESS = .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE],
;	  0534						XXXNAME, 0);
;	  0535					    PUTWRD (.KERNEL_FILE, .CB_ADDRESS,
;	  0536						(IF (.CURBLK GEQ %O'120000') THEN .CURBAS<6, 12, 0> ELSE 0));
;	  0537					    PUTWRD (.KERNEL_FILE, .CB_ADDRESS + 2,
;	  0538						(IF (.CURBLK GEQ %O'120000') THEN ((.CURBLK - .CURBAS) + %O'140000')
;	  0539						ELSE .CURBLK));
;	  0540					    END
;	  0541					UNTIL NEXT_LIX (.DB_VARIABLE_1, .VALUES);
;	  0542	
;	  0543					CURBLK = .CURBLK + .UNT_LENGTH;
;	  0544					END;
;	  0545	
;	  0546				    END;
;	  0547	
;	  0548				[OTHERWISE] :
;	  0549				;
;	  0550				TES;
;	  0551	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  21
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

;	  0552	!
;	  0553	! Printout Task information
;	  0554	!
;	  0555			    MODU_PTR = .DB_FILE [FILE_MODU];
;	  0556			    OUTSTR (0, MODU_PTR [MODU_NAME]);
;	  0557			    OUTPUT (0, %C' ');
;	  0558			    OUTSTR (0, MODU_PTR [MODU_IDENT]);
;	  0559			    OUTSTR (0, UPLIT (%ASCIZ' ]'));
;	  0560			    PCRLF (0);
;	  0561			    FCOR (.DB_FILE);
;	  0562			    END;
;	  0563	
;	  0564			END
;	  0565		    ELSE
;	  0566			NEXT_LIX (VAR_CURRENT_CTL, .VALUES)
;	  0567	
;	  0568		WHILE (.CURLIX LEQ .VALUES [SLTNUM]);
;	  0569	
;	  0570	    END;					! of DLC_LOADS


P.AAI:	BYTE	(7)"D","L","C","_","L"		; DLC_L					400516' 104 114 103 137 114
	BYTE	(7)"O","A","D","S",000		; OADS					400517' 117 101 104 123 000
P.AAJ:	BYTE	(7)"[","L","o","a","d"		; [Load					400520' 133 114 157 141 144
	BYTE	(7)"i","n","g"," ",000		; ing					400521' 151 156 147 040 000
P.AAK:	BYTE	(7)" ","d","a","t","a"		;  data					400522' 040 144 141 164 141
	BYTE	(7)" ","b","a","s","e"		;  base					400523' 040 142 141 163 145
	BYTE	(7)" ","f","o","r"," "		;  for					400524' 040 146 157 162 040
	BYTE	(7)"L","I","N","E"," "		; LINE					400525' 114 111 116 105 040
	BYTE	(7)000,000,000,000,000		;					400526' 000 000 000 000 000
P.AAL:	BYTE	(7)"D","L","C",000,000		; DLC					400527' 104 114 103 000 000
P.AAM:	BYTE	(7)" ","(",000,000,000		;  (					400530' 040 050 000 000 000
P.AAN:	BYTE	(7)")"," ","-","-",">"		; ) -->					400531' 051 040 055 055 076
	BYTE	(7)" ",000,000,000,000		;					400532' 040 000 000 000 000
P.AAO:	BYTE	(7)"D","L","C",000,000		; DLC					400533' 104 114 103 000 000
P.AAP:	BYTE	(7)"D","L","C",000,000		; DLC					400534' 104 114 103 000 000
P.AAQ:	BYTE	(7)" ","]",000,000,000		;  ]					400535' 040 135 000 000 000


ROUTINE_NAME=	    P.AAI			;						000000	400516'


DLC_LOADS:
	PUSH	SP,AC0				; SP,AC0				400536' 261 17 0 00 000000		0344
	PUSH	SP,AC10				; SP,AC10				400537' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				400540' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				400541' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				400542' 261 17 0 00 000013
	PUSH	SP,AC14				; SP,AC14				400543' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				400544' 261 17 0 00 000016
	ADJSP	SP,17				; SP,17					400545' 105 17 0 00 000017
	SETZM	CURLIX				; CURLIX				400546' 402 00 0 00 000003'		0398
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  22
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	SETZM	CURSLT				; CURSLT				400547' 402 00 0 00 000004'		0399
	SETZM	CURCTL				; CURCTL				400550' 402 00 0 00 000006'		0400
	PUSH	SP,C.24				; SP,[11]				400551' 261 17 0 00 401506'		0401
	MOVE	AC14,-30(SP)			; AC14,VALUES				400552' 200 14 0 17 777750
	PUSH	SP,AC14				; SP,AC14				400553' 261 17 0 00 000014
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				400554' 260 17 0 00 000000V
	SKIPN	CURSLT				; CURSLT				400555' 336 00 0 00 000004'		0404
	JRST	L.33				; L.33					400556' 254 00 0 00 401473'
	MOVE	AC11,AC14			; AC11,AC14				400557' 200 11 0 00 000014		0568
	ADDI	AC11,1				; AC11,1				400560' 271 11 0 00 000001
L.10:	MOVE	AC1,CURSLT			; AC1,CURSLT				400561' 200 01 0 00 000004'		0409
	SKIPN	2(AC1)				; 2(AC1)				400562' 336 00 0 01 000002
	JRST	L.31				; L.31					400563' 254 00 0 00 401464'
	SETZM	0(SP)				; 0(SP)					400564' 402 00 0 17 000000		0415
	PUSH	SP,C.25				; SP,[0,,P.AAJ]				400565' 261 17 0 00 401507'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400566' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400567' 402 00 0 17 000000		0416
	MOVE	AC0,CURSLT			; AC0,CURSLT				400570' 200 00 0 00 000004'
	ADDI	AC0,2				; AC0,2					400571' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				400572' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400573' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400574' 402 00 0 17 000000		0417
	PUSH	SP,C.26				; SP,[0,,P.AAK]				400575' 261 17 0 00 401510'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400576' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400577' 402 00 0 17 000000		0418
	MOVE	AC1,CURSLT			; AC1,CURSLT				400600' 200 01 0 00 000004'
	SKIPN	1(AC1)				; 1(AC1)				400601' 336 00 0 01 000001
	JRST	L.11				; L.11					400602' 254 00 0 00 400606'
	MOVEI	AC0,1(AC1)			; AC0,1(AC1)				400603' 201 00 0 01 000001
	PUSH	SP,AC0				; SP,AC0				400604' 261 17 0 00 000000
	JRST	L.12				; L.12					400605' 254 00 0 00 400610'
L.11:	ADDI	AC1,2				; AC1,2					400606' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				400607' 261 17 0 00 000001
L.12:	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400610' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400611' 402 00 0 17 000000		0419
	PUSH	SP,C.27				; SP,[55]				400612' 261 17 0 00 401511'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400613' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400614' 402 00 0 17 000000		0420
	MOVE	AC0,CURSLT			; AC0,CURSLT				400615' 200 00 0 00 000004'
	MOVE	AC1,AC0				; AC1,AC0				400616' 200 01 0 00 000000
	PUSH	SP,4(AC1)			; SP,4(AC1)				400617' 261 17 0 01 000004
	PUSH	SP,C.18				; SP,[12]				400620' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				400621' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400622' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400623' 402 00 0 17 000000		0421
	PUSH	SP,C.27				; SP,[55]				400624' 261 17 0 00 401511'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400625' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400626' 402 00 0 17 000000		0422
	MOVE	AC0,CURSLT			; AC0,CURSLT				400627' 200 00 0 00 000004'
	MOVE	AC1,AC0				; AC1,AC0				400630' 200 01 0 00 000000
	PUSH	SP,5(AC1)			; SP,5(AC1)				400631' 261 17 0 01 000005
	PUSH	SP,C.18				; SP,[12]				400632' 261 17 0 00 400511'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  23
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	PUSH	SP,C.6				; SP,[0]				400633' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400634' 260 17 0 00 000000*
	PUSH	SP,C.8				; SP,[3]				400635' 261 17 0 00 400477'		0427
	PUSH	SP,C.9				; SP,[20]				400636' 261 17 0 00 400500'
	PUSHJ	SP,GETBLK			; SP,GETBLK				400637' 260 17 0 00 000000*
	MOVE	AC12,AC1			; DB_FILE,AC1				400640' 200 12 0 00 000001
	ADJSP	SP,-2				; SP,-2					400641' 105 17 0 00 777776
	JUMPN	AC12,L.13			; DB_FILE,L.13				400642' 326 12 0 00 400654'
	SETZM	0(SP)				; 0(SP)					400643' 402 00 0 17 000000		0429
	PUSH	SP,C.10				; SP,[1]				400644' 261 17 0 00 400501'
	PUSH	SP,C.28				; SP,[0,,ROUTINE_NAME]			400645' 261 17 0 00 401512'
	PUSH	SP,C.6				; SP,[0]				400646' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400647' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400650' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				400651' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				400652' 260 17 0 00 000000*
	JRST	L.30				; L.30					400653' 254 00 0 00 401462'		0427
L.13:	MOVE	AC1,CURSLT			; AC1,CURSLT				400654' 200 01 0 00 000004'		0436
	MOVEI	AC2,1(AC1)			; AC2,1(AC1)				400655' 201 02 0 01 000001
	HRLI	AC2,10700			; AC2,10700				400656' 505 02 0 00 010700
	MOVEI	AC5,1(AC12)			; AC5,1(DB_FILE)			400657' 201 05 0 12 000001
	HRLI	AC5,10700			; AC5,10700				400660' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					400661' 201 01 0 00 000003
	MOVEI	AC4,3				; AC4,3					400662' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400663' 123 01 0 00 400470'
	JFCL					; 					400664' 255 00 0 00 000000
	PUSH	SP,C.12				; SP,[50]				400665' 261 17 0 00 400503'		0439
	MOVEI	AC0,1(AC12)			; AC0,1(DB_FILE)			400666' 201 00 0 12 000001
	HRLI	AC0,10700			; AC0,10700				400667' 505 00 0 00 010700
	PUSH	SP,AC0				; SP,AC0				400670' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				400671' 261 17 0 00 400475'
	PUSHJ	SP,CHFCH%			; SP,CHFCH%				400672' 260 17 0 00 000000*
	MOVE	AC5,AC1				; AC5,AC1				400673' 200 05 0 00 000001
	MOVEI	AC1,3				; AC1,3					400674' 201 01 0 00 000003		0437
	MOVE	AC2,C.29			; AC2,[POINT 7,P.AAL-1,34]  <1,7>	400675' 200 02 0 00 401513'
	MOVEI	AC4,3				; AC4,3					400676' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400677' 123 01 0 00 400470'
	JFCL					; 					400700' 255 00 0 00 000000
	PUSH	SP,-51(SP)			; SP,FILE_CHAN				400701' 261 17 0 17 777727		0440
	PUSH	SP,AC12				; SP,DB_FILE				400702' 261 17 0 00 000012
	PUSHJ	SP,RSTB				; SP,RSTB				400703' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				400704' 202 12 0 17 000000		0441
	PUSH	SP,-53(SP)			; SP,FILE_CHAN				400705' 261 17 0 17 777725
	PUSH	SP,C.30				; SP,[20000]				400706' 261 17 0 00 401514'
	PUSHJ	SP,RCOR				; SP,RCOR				400707' 260 17 0 00 000000*
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			400710' 202 12 0 17 777777		0445
	SETZM	0(SP)				; 0(SP)					400711' 402 00 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				400712' 260 17 0 00 000000*
	PUSH	SP,AC1				; SP,AC1				400713' 261 17 0 00 000001
	MOVEI	AC0,-44(SP)			; AC0,MCB_NAME				400714' 201 00 0 17 777734
	PUSH	SP,AC0				; SP,AC0				400715' 261 17 0 00 000000
	PUSHJ	SP,R50TOA			; SP,R50TOA				400716' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  24
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	MOVEI	AC2,-45(SP)			; AC2,MCB_NAME				400717' 201 02 0 17 777733		0446
	HRLI	AC2,170700			; AC2,170700				400720' 505 02 0 00 170700
	MOVEI	AC5,-46(SP)			; AC5,MCB_NAME-1			400721' 201 05 0 17 777732
	HRLI	AC5,10700			; AC5,10700				400722' 505 05 0 00 010700
	MOVEI	AC1,4				; AC1,4					400723' 201 01 0 00 000004
	MOVEI	AC4,4				; AC4,4					400724' 201 04 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				400725' 123 01 0 00 400470'
	JFCL					; 					400726' 255 00 0 00 000000
	SETZM	0(SP)				; 0(SP)					400727' 402 00 0 17 000000		0447
	PUSH	SP,C.31				; SP,[0,,P.AAM]				400730' 261 17 0 00 401515'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400731' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400732' 402 00 0 17 000000		0448
	MOVEI	AC0,-46(SP)			; AC0,MCB_NAME				400733' 201 00 0 17 777732
	PUSH	SP,AC0				; SP,AC0				400734' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400735' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400736' 402 00 0 17 000000		0449
	PUSH	SP,C.16				; SP,[40]				400737' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400740' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400741' 402 00 0 17 000000		0450
	PUSH	SP,AC12				; SP,DB_FILE				400742' 261 17 0 00 000012
	PUSH	SP,C.17				; SP,[2]				400743' 261 17 0 00 400510'
	PUSHJ	SP,GETBYT			; SP,GETBYT				400744' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400745' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400746' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				400747' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				400750' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400751' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400752' 402 00 0 17 000000		0451
	PUSH	SP,C.19				; SP,[56]				400753' 261 17 0 00 400512'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				400754' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400755' 402 00 0 17 000000		0452
	PUSH	SP,AC12				; SP,DB_FILE				400756' 261 17 0 00 000012
	PUSH	SP,C.8				; SP,[3]				400757' 261 17 0 00 400477'
	PUSHJ	SP,GETBYT			; SP,GETBYT				400760' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					400761' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				400762' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				400763' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				400764' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				400765' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					400766' 402 00 0 17 000000		0453
	PUSH	SP,C.32				; SP,[0,,P.AAN]				400767' 261 17 0 00 401516'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				400770' 260 17 0 00 000000*
	MOVEI	AC13,4				; DB_POINTER,4				400771' 201 13 0 00 000004		0457
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			400772' 202 12 0 17 777777		0458
	MOVEM	AC13,0(SP)			; DB_POINTER,0(SP)			400773' 202 13 0 17 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				400774' 260 17 0 00 000000*
	MOVEM	AC1,-42(SP)			; AC1,PRIMARY_COMMAND			400775' 202 01 0 17 777736
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				400776' 202 12 0 17 000000		0459
	MOVE	AC0,AC13			; AC0,DB_POINTER			400777' 200 00 0 00 000013
	ADDI	AC0,1				; AC0,1					401000' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				401001' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				401002' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  25
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	MOVEM	AC1,-54(SP)			; AC1,DB_VARIABLE_1			401003' 202 01 0 17 777724
	SETZM	-52(SP)				; DB_VARIABLE_2				401004' 402 00 0 17 777726		0460
	MOVEI	AC0,20				; AC0,20				401005' 201 00 0 00 000020		0462
	CAMLE	AC0,-43(SP)			; AC0,PRIMARY_COMMAND			401006' 313 00 0 17 777735
	JRST	L.20				; L.20					401007' 254 00 0 00 401174'
	MOVEI	AC0,21				; AC0,21				401010' 201 00 0 00 000021
	CAMGE	AC0,-43(SP)			; AC0,PRIMARY_COMMAND			401011' 315 00 0 17 777735
	JRST	L.20				; L.20					401012' 254 00 0 00 401174'
	MOVE	AC0,AC13			; AC0,DB_POINTER			401013' 200 00 0 00 000013		0468
	ADDI	AC0,2				; AC0,2					401014' 271 00 0 00 000002
	MOVE	AC1,-74(SP)			; AC1,KERNEL_FILE			401015' 200 01 0 17 777704		0467
	MOVEM	AC1,-46(SP)			; AC1,-46(SP)				401016' 202 01 0 17 777732
	MOVEI	AC1,20				; AC1,20				401017' 201 01 0 00 000020
	CAME	AC1,-43(SP)			; AC1,PRIMARY_COMMAND			401020' 312 01 0 17 777735
	JRST	L.14				; L.14					401021' 254 00 0 00 401035'
	MOVE	AC1,-46(SP)			; AC1,-46(SP)				401022' 200 01 0 17 777732
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401023' 202 01 0 17 000000
	PUSH	SP,AC12				; SP,DB_FILE				401024' 261 17 0 00 000012		0468
	PUSH	SP,AC0				; SP,AC0				401025' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401026' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					401027' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401030' 202 01 0 17 000000		0467
	PUSH	SP,C.6				; SP,[0]				401031' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				401032' 261 17 0 00 000014
	PUSHJ	SP,ALOCB			; SP,ALOCB				401033' 260 17 0 00 000000*
	JRST	L.15				; L.15					401034' 254 00 0 00 401047'
L.14:	MOVE	AC1,-46(SP)			; AC1,-46(SP)				401035' 200 01 0 17 777732		0468
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401036' 202 01 0 17 000000
	PUSH	SP,AC12				; SP,DB_FILE				401037' 261 17 0 00 000012		0469
	PUSH	SP,AC0				; SP,AC0				401040' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401041' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					401042' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401043' 202 01 0 17 000000		0468
	PUSH	SP,C.6				; SP,[0]				401044' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				401045' 261 17 0 00 000014
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				401046' 260 17 0 00 000000V
L.15:	MOVEM	AC1,CURBLK			; AC1,CURBLK				401047' 202 01 0 00 000000'		0467
	TRZ	AC1,77				; AC1,77				401050' 620 01 0 00 000077		0470
	MOVEM	AC1,CURBAS			; AC1,CURBAS				401051' 202 01 0 00 000001'
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			401052' 202 12 0 17 777777		0471
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401053' 202 00 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401054' 260 17 0 00 000000*
	ADD	AC1,CURBLK			; AC1,CURBLK				401055' 270 01 0 00 000000'
	MOVEM	AC1,CURMAX			; AC1,CURMAX				401056' 202 01 0 00 000002'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401057' 202 12 0 17 000000		0475
	MOVE	AC0,AC13			; AC0,DB_POINTER			401060' 200 00 0 00 000013
	ADDI	AC0,4				; AC0,4					401061' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				401062' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401063' 260 17 0 00 000000*
	MOVEM	AC1,-57(SP)			; AC1,LB_POINTER			401064' 202 01 0 17 777721
	MOVE	AC0,-52(SP)			; AC0,-52(SP)				401065' 200 00 0 17 777726		0476
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				401066' 202 00 0 17 777775
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  26
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			401067' 202 12 0 17 777776
	MOVE	AC0,-57(SP)			; AC0,LB_POINTER			401070' 200 00 0 17 777721
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401071' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401072' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				401073' 260 17 0 00 000000V
	MOVE	AC16,AC14			; AC16,AC14				401074' 200 16 0 00 000014		0487
	ADDI	AC16,5				; AC16,5				401075' 271 16 0 00 000005
	MOVE	AC10,AC14			; AC10,AC14				401076' 200 10 0 00 000014
	ADDI	AC10,4				; AC10,4				401077' 271 10 0 00 000004
L.16:	MOVEI	AC5,-64(SP)			; AC5,XXXNAME-1				401100' 201 05 0 17 777714		0483
	HRLI	AC5,10700			; AC5,10700				401101' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					401102' 201 01 0 00 000003
	MOVE	AC2,C.33			; AC2,[POINT 7,P.AAO-1,34]  <1,7>	401103' 200 02 0 00 401517'
	MOVEI	AC4,3				; AC4,3					401104' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				401105' 123 01 0 00 400470'
	JFCL					; 					401106' 255 00 0 00 000000
	MOVEI	AC0,-63(SP)			; AC0,XXXNAME				401107' 201 00 0 17 777715		0484
	HRLI	AC0,170700			; AC0,170700				401110' 505 00 0 00 170700
	MOVEM	AC0,-61(SP)			; AC0,TEMPORARY_PTR			401111' 202 00 0 17 777717
	MOVEI	AC0,-61(SP)			; AC0,TEMPORARY_PTR			401112' 201 00 0 17 777717		0485
	PUSH	SP,AC0				; SP,AC0				401113' 261 17 0 00 000000
	PUSH	SP,CURLIX			; SP,CURLIX				401114' 261 17 0 00 000003'
	PUSH	SP,C.6				; SP,[0]				401115' 261 17 0 00 400475'
	PUSHJ	SP,$CBOMG			; SP,$CBOMG				401116' 260 17 0 00 000000*
	SETZ	AC1,				; AC1,					401117' 400 01 0 00 000000		0486
	MOVE	AC0,-64(SP)			; AC0,TEMPORARY_PTR			401120' 200 00 0 17 777714
	IDPB	AC1,AC0				; AC1,AC0				401121' 136 01 0 00 000000
	HRRZ	AC0,0(AC16)			; AC0,0(AC16)				401122' 550 00 0 16 000000		0487
	PUSH	SP,AC0				; SP,AC0				401123' 261 17 0 00 000000
	MOVEI	AC0,-67(SP)			; AC0,XXXNAME				401124' 201 00 0 17 777711
	PUSH	SP,AC0				; SP,AC0				401125' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				401126' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				401127' 260 17 0 00 000000*
	LDB	AC0,C.23			; AC0,[POINT 19,0(AC10),35]  <0,19>	401130' 135 00 0 00 401505'
	ADD	AC1,AC0				; AC1,AC0				401131' 270 01 0 00 000000
	MOVEM	AC1,-56(SP)			; AC1,CB_ADDRESS			401132' 202 01 0 17 777722
	MOVE	AC0,-60(SP)			; AC0,-60(SP)				401133' 200 00 0 17 777720		0489
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401134' 202 00 0 17 777777
	MOVE	AC0,-56(SP)			; AC0,CB_ADDRESS			401135' 200 00 0 17 777722
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401136' 202 00 0 17 000000
	MOVEI	AC0,120000			; AC0,120000				401137' 201 00 0 00 120000		0490
	CAMLE	AC0,CURBLK			; AC0,CURBLK				401140' 313 00 0 00 000000'
	JRST	L.17				; L.17					401141' 254 00 0 00 401145'
	LDB	AC0,C.5				; AC0,[POINT 12,CURBAS,29]  <6,12>	401142' 135 00 0 00 400474'
	PUSH	SP,AC0				; SP,AC0				401143' 261 17 0 00 000000
	JRST	L.18				; L.18					401144' 254 00 0 00 401146'
L.17:	PUSH	SP,C.6				; SP,[0]				401145' 261 17 0 00 400475'
L.18:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				401146' 260 17 0 00 000000*		0489
	MOVE	AC0,-61(SP)			; AC0,-61(SP)				401147' 200 00 0 17 777717		0491
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401150' 202 00 0 17 000000
	MOVE	AC0,-57(SP)			; AC0,CB_ADDRESS			401151' 200 00 0 17 777721
	ADDI	AC0,2				; AC0,2					401152' 271 00 0 00 000002
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  27
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	PUSH	SP,AC0				; SP,AC0				401153' 261 17 0 00 000000
	MOVE	AC0,CURBLK			; AC0,CURBLK				401154' 200 00 0 00 000000'		0492
	CAIGE	AC0,120000			; AC0,120000				401155' 305 00 0 00 120000
	JRST	L.19				; L.19					401156' 254 00 0 00 401161'
	SUB	AC0,CURBAS			; AC0,CURBAS				401157' 274 00 0 00 000001'
	ADDI	AC0,140000			; AC0,140000				401160' 271 00 0 00 140000
L.19:	PUSH	SP,AC0				; SP,AC0				401161' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				401162' 260 17 0 00 000000*		0491
	ADJSP	SP,-11				; SP,-11				401163' 105 17 0 00 777767		0482
	MOVE	AC0,-60(SP)			; AC0,DB_VARIABLE_1			401164' 200 00 0 17 777720		0495
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401165' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401166' 202 14 0 17 000000
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				401167' 260 17 0 00 000000V
	TRNN	AC1,1				; AC1,1					401170' 606 01 0 00 000001
	JRST	L.16				; L.16					401171' 254 00 0 00 401100'		0481
	ADJSP	SP,-4				; SP,-4					401172' 105 17 0 00 777774		0466
	JRST	L.29				; L.29					401173' 254 00 0 00 401433'		0462
L.20:	MOVEI	AC0,30				; AC0,30				401174' 201 00 0 00 000030
	CAMLE	AC0,-43(SP)			; AC0,PRIMARY_COMMAND			401175' 313 00 0 17 777735
	JRST	L.29				; L.29					401176' 254 00 0 00 401433'
	MOVEI	AC0,31				; AC0,31				401177' 201 00 0 00 000031
	CAMGE	AC0,-43(SP)			; AC0,PRIMARY_COMMAND			401200' 315 00 0 17 777735
	JRST	L.29				; L.29					401201' 254 00 0 00 401433'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401202' 202 12 0 17 000000		0501
	MOVE	AC0,AC13			; AC0,DB_POINTER			401203' 200 00 0 00 000013
	ADDI	AC0,2				; AC0,2					401204' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				401205' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				401206' 260 17 0 00 000000*
	MOVEM	AC1,-53(SP)			; AC1,DB_VARIABLE_2			401207' 202 01 0 17 777725
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401210' 202 12 0 17 000000		0502
	MOVE	AC0,AC13			; AC0,DB_POINTER			401211' 200 00 0 00 000013
	ADDI	AC0,4				; AC0,4					401212' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				401213' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401214' 260 17 0 00 000000*
	MOVEM	AC1,-53(SP)			; AC1,CTL_LENGTH			401215' 202 01 0 17 777725
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401216' 202 12 0 17 000000		0503
	MOVE	AC0,AC13			; AC0,DB_POINTER			401217' 200 00 0 00 000013
	ADDI	AC0,10				; AC0,10				401220' 271 00 0 00 000010
	PUSH	SP,AC0				; SP,AC0				401221' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401222' 260 17 0 00 000000*
	MOVEM	AC1,-53(SP)			; AC1,UNT_LENGTH			401223' 202 01 0 17 777725
	MOVE	AC0,-55(SP)			; AC0,DB_VARIABLE_2			401224' 200 00 0 17 777723		0504
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401225' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401226' 202 14 0 17 000000
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			401227' 260 17 0 00 000000V
	IMUL	AC1,-53(SP)			; AC1,UNT_LENGTH			401230' 220 01 0 17 777725
	ADD	AC1,-54(SP)			; AC1,CTL_LENGTH			401231' 270 01 0 17 777724
	MOVEM	AC1,CURMAX			; AC1,CURMAX				401232' 202 01 0 00 000002'
	MOVE	AC0,-77(SP)			; AC0,KERNEL_FILE			401233' 200 00 0 17 777701		0505
	MOVEM	AC0,-51(SP)			; AC0,-51(SP)				401234' 202 00 0 17 777727
	MOVEI	AC0,30				; AC0,30				401235' 201 00 0 00 000030
	CAME	AC0,-46(SP)			; AC0,PRIMARY_COMMAND			401236' 312 00 0 17 777732
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  28
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	JRST	L.21				; L.21					401237' 254 00 0 00 401247'
	MOVE	AC0,-51(SP)			; AC0,-51(SP)				401240' 200 00 0 17 777727
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401241' 202 00 0 17 000000
	PUSH	SP,CURMAX			; SP,CURMAX				401242' 261 17 0 00 000002'
	PUSH	SP,C.6				; SP,[0]				401243' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				401244' 261 17 0 00 000014
	PUSHJ	SP,ALOCB			; SP,ALOCB				401245' 260 17 0 00 000000*
	JRST	L.22				; L.22					401246' 254 00 0 00 401255'
L.21:	MOVE	AC0,-51(SP)			; AC0,-51(SP)				401247' 200 00 0 17 777727		0506
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401250' 202 00 0 17 000000
	PUSH	SP,CURMAX			; SP,CURMAX				401251' 261 17 0 00 000002'
	PUSH	SP,C.6				; SP,[0]				401252' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				401253' 261 17 0 00 000014
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				401254' 260 17 0 00 000000V
L.22:	MOVEM	AC1,CURBLK			; AC1,CURBLK				401255' 202 01 0 00 000000'		0505
	MOVE	AC0,CURBLK			; AC0,CURBLK				401256' 200 00 0 00 000000'		0507
	TRZ	AC0,77				; AC0,77				401257' 620 00 0 00 000077
	MOVEM	AC0,CURBAS			; AC0,CURBAS				401260' 202 00 0 00 000001'
	MOVE	AC0,CURBLK			; AC0,CURBLK				401261' 200 00 0 00 000000'		0508
	ADDM	AC0,CURMAX			; AC0,CURMAX				401262' 272 00 0 00 000002'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401263' 202 12 0 17 000000		0512
	MOVE	AC0,AC13			; AC0,DB_POINTER			401264' 200 00 0 00 000013
	ADDI	AC0,6				; AC0,6					401265' 271 00 0 00 000006
	PUSH	SP,AC0				; SP,AC0				401266' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401267' 260 17 0 00 000000*
	MOVEM	AC1,-62(SP)			; AC1,LB_POINTER			401270' 202 01 0 17 777716
	MOVE	AC0,-55(SP)			; AC0,-55(SP)				401271' 200 00 0 17 777723		0513
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				401272' 202 00 0 17 777775
	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			401273' 202 12 0 17 777776
	MOVE	AC0,-62(SP)			; AC0,LB_POINTER			401274' 200 00 0 17 777716
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401275' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401276' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				401277' 260 17 0 00 000000V
	MOVE	AC0,-60(SP)			; AC0,CTL_LENGTH			401300' 200 00 0 17 777720		0517
	ADDM	AC0,CURBLK			; AC0,CURBLK				401301' 272 00 0 00 000000'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401302' 202 12 0 17 000000		0518
	MOVE	AC0,AC13			; AC0,DB_POINTER			401303' 200 00 0 00 000013
	ADDI	AC0,12				; AC0,12				401304' 271 00 0 00 000012
	PUSH	SP,AC0				; SP,AC0				401305' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401306' 260 17 0 00 000000*
	MOVEM	AC1,-63(SP)			; AC1,LB_POINTER			401307' 202 01 0 17 777715
	MOVE	AC0,-62(SP)			; AC0,DB_VARIABLE_2			401310' 200 00 0 17 777716		0520
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401311' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401312' 202 14 0 17 000000
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			401313' 260 17 0 00 000000V
	MOVE	AC16,AC1			; AC16,AC1				401314' 200 16 0 00 000001
	MOVE	AC0,AC14			; AC0,AC14				401315' 200 00 0 00 000014		0533
	ADDI	AC0,5				; AC0,5					401316' 271 00 0 00 000005
	MOVEM	AC0,-55(SP)			; AC0,-55(SP)				401317' 202 00 0 17 777723
	MOVE	AC10,AC14			; AC10,AC14				401320' 200 10 0 00 000014
	ADDI	AC10,4				; AC10,4				401321' 271 10 0 00 000004
	AOJA	AC16,L.28			; AC16,L.28				401322' 344 16 0 00 401431'		0520
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  29
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

L.23:	MOVE	AC0,-56(SP)			; AC0,-56(SP)				401323' 200 00 0 17 777722		0522
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				401324' 202 00 0 17 777775
	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			401325' 202 12 0 17 777776
	MOVE	AC0,-63(SP)			; AC0,LB_POINTER			401326' 200 00 0 17 777715
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401327' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401330' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				401331' 260 17 0 00 000000V
L.24:	MOVEI	AC5,-70(SP)			; AC5,XXXNAME-1				401332' 201 05 0 17 777710		0529
	HRLI	AC5,10700			; AC5,10700				401333' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					401334' 201 01 0 00 000003
	MOVE	AC2,C.34			; AC2,[POINT 7,P.AAP-1,34]  <1,7>	401335' 200 02 0 00 401520'
	MOVEI	AC4,3				; AC4,3					401336' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				401337' 123 01 0 00 400470'
	JFCL					; 					401340' 255 00 0 00 000000
	MOVEI	AC0,-67(SP)			; AC0,XXXNAME				401341' 201 00 0 17 777711		0530
	HRLI	AC0,170700			; AC0,170700				401342' 505 00 0 00 170700
	MOVEM	AC0,-65(SP)			; AC0,TEMPORARY_PTR			401343' 202 00 0 17 777713
	MOVEI	AC0,-65(SP)			; AC0,TEMPORARY_PTR			401344' 201 00 0 17 777713		0531
	PUSH	SP,AC0				; SP,AC0				401345' 261 17 0 00 000000
	PUSH	SP,CURLIX			; SP,CURLIX				401346' 261 17 0 00 000003'
	PUSH	SP,C.6				; SP,[0]				401347' 261 17 0 00 400475'
	PUSHJ	SP,$CBOMG			; SP,$CBOMG				401350' 260 17 0 00 000000*
	SETZ	AC1,				; AC1,					401351' 400 01 0 00 000000		0532
	MOVE	AC0,-70(SP)			; AC0,TEMPORARY_PTR			401352' 200 00 0 17 777710
	IDPB	AC1,AC0				; AC1,AC0				401353' 136 01 0 00 000000
	MOVE	AC1,-60(SP)			; AC1,-60(SP)				401354' 200 01 0 17 777720		0533
	HRRZ	AC0,0(AC1)			; AC0,0(AC1)				401355' 550 00 0 01 000000
	PUSH	SP,AC0				; SP,AC0				401356' 261 17 0 00 000000
	MOVEI	AC0,-73(SP)			; AC0,XXXNAME				401357' 201 00 0 17 777705
	PUSH	SP,AC0				; SP,AC0				401360' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				401361' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				401362' 260 17 0 00 000000*
	ADJSP	SP,-3				; SP,-3					401363' 105 17 0 00 777775
	LDB	AC0,C.23			; AC0,[POINT 19,0(AC10),35]  <0,19>	401364' 135 00 0 00 401505'
	ADD	AC1,AC0				; AC1,AC0				401365' 270 01 0 00 000000
	MOVEM	AC1,-57(SP)			; AC1,CB_ADDRESS			401366' 202 01 0 17 777721
	MOVE	AC0,-61(SP)			; AC0,-61(SP)				401367' 200 00 0 17 777717		0535
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401370' 202 00 0 17 777777
	MOVE	AC0,-57(SP)			; AC0,CB_ADDRESS			401371' 200 00 0 17 777721
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401372' 202 00 0 17 000000
	MOVEI	AC0,120000			; AC0,120000				401373' 201 00 0 00 120000		0536
	CAMLE	AC0,CURBLK			; AC0,CURBLK				401374' 313 00 0 00 000000'
	JRST	L.25				; L.25					401375' 254 00 0 00 401401'
	LDB	AC0,C.5				; AC0,[POINT 12,CURBAS,29]  <6,12>	401376' 135 00 0 00 400474'
	PUSH	SP,AC0				; SP,AC0				401377' 261 17 0 00 000000
	JRST	L.26				; L.26					401400' 254 00 0 00 401402'
L.25:	PUSH	SP,C.6				; SP,[0]				401401' 261 17 0 00 400475'
L.26:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				401402' 260 17 0 00 000000*		0535
	MOVE	AC0,-62(SP)			; AC0,-62(SP)				401403' 200 00 0 17 777716		0537
	MOVEM	AC0,0(SP)			; AC0,0(SP)				401404' 202 00 0 17 000000
	MOVE	AC0,-60(SP)			; AC0,CB_ADDRESS			401405' 200 00 0 17 777720
	ADDI	AC0,2				; AC0,2					401406' 271 00 0 00 000002
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  30
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

	PUSH	SP,AC0				; SP,AC0				401407' 261 17 0 00 000000
	MOVE	AC0,CURBLK			; AC0,CURBLK				401410' 200 00 0 00 000000'		0538
	CAIGE	AC0,120000			; AC0,120000				401411' 305 00 0 00 120000
	JRST	L.27				; L.27					401412' 254 00 0 00 401415'
	SUB	AC0,CURBAS			; AC0,CURBAS				401413' 274 00 0 00 000001'
	ADDI	AC0,140000			; AC0,140000				401414' 271 00 0 00 140000
L.27:	PUSH	SP,AC0				; SP,AC0				401415' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				401416' 260 17 0 00 000000*		0537
	ADJSP	SP,-3				; SP,-3					401417' 105 17 0 00 777775
	ADJSP	SP,-3				; SP,-3					401420' 105 17 0 00 777775		0528
	MOVE	AC0,-64(SP)			; AC0,DB_VARIABLE_1			401421' 200 00 0 17 777714		0541
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				401422' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				401423' 202 14 0 17 000000
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				401424' 260 17 0 00 000000V
	TRNN	AC1,1				; AC1,1					401425' 606 01 0 00 000001
	JRST	L.24				; L.24					401426' 254 00 0 00 401332'		0527
	MOVE	AC0,-60(SP)			; AC0,UNT_LENGTH			401427' 200 00 0 17 777720		0543
	ADDM	AC0,CURBLK			; AC0,CURBLK				401430' 272 00 0 00 000000'
L.28:	SOJG	AC16,L.23			; DUMMY,L.23				401431' 367 16 0 00 401323'		0520
	ADJSP	SP,-10				; SP,-10				401432' 105 17 0 00 777770		0500
L.29:	HRRZ	AC0,14(AC12)			; AC0,14(DB_FILE)			401433' 550 00 0 12 000014		0555
	MOVEM	AC0,-47(SP)			; AC0,MODU_PTR				401434' 202 00 0 17 777731
	SETZM	0(SP)				; 0(SP)					401435' 402 00 0 17 000000		0556
	MOVE	AC0,-47(SP)			; AC0,MODU_PTR				401436' 200 00 0 17 777731
	ADDI	AC0,1				; AC0,1					401437' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				401440' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401441' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401442' 402 00 0 17 000000		0557
	PUSH	SP,C.16				; SP,[40]				401443' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				401444' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401445' 402 00 0 17 000000		0558
	MOVE	AC0,-51(SP)			; AC0,MODU_PTR				401446' 200 00 0 17 777727
	ADDI	AC0,3				; AC0,3					401447' 271 00 0 00 000003
	PUSH	SP,AC0				; SP,AC0				401450' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401451' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401452' 402 00 0 17 000000		0559
	PUSH	SP,C.35				; SP,[0,,P.AAQ]				401453' 261 17 0 00 401521'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401454' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401455' 402 00 0 17 000000		0560
	PUSHJ	SP,PCRLF			; SP,PCRLF				401456' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401457' 202 12 0 17 000000		0561
	PUSHJ	SP,FCOR				; SP,FCOR				401460' 260 17 0 00 000000*
	ADJSP	SP,-23				; SP,-23				401461' 105 17 0 00 777755		0432
L.30:	ADJSP	SP,-20				; SP,-20				401462' 105 17 0 00 777760		0411
	JRST	L.32				; L.32					401463' 254 00 0 00 401467'		0409
L.31:	PUSH	SP,C.24				; SP,[11]				401464' 261 17 0 00 401506'		0566
	PUSH	SP,AC14				; SP,AC14				401465' 261 17 0 00 000014
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				401466' 260 17 0 00 000000V
L.32:	ADJSP	SP,-2				; SP,-2					401467' 105 17 0 00 777776		0409
	HRRZ	AC0,0(AC11)			; AC0,0(AC11)				401470' 550 00 0 11 000000		0568
	CAML	AC0,CURLIX			; AC0,CURLIX				401471' 311 00 0 00 000003'
	JRST	L.10				; L.10					401472' 254 00 0 00 400561'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  31
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (4)

L.33:	ADJSP	SP,-2				; SP,-2					401473' 105 17 0 00 777776		0371
	ADJSP	SP,-17				; SP,-17				401474' 105 17 0 00 777761		0344
	POP	SP,AC16				; SP,AC16				401475' 262 17 0 00 000016
	POP	SP,AC14				; SP,AC14				401476' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				401477' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				401500' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				401501' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				401502' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				401503' 262 17 0 00 000000
	POPJ	SP,				; SP,					401504' 263 17 0 00 000000
C.23:	POINT	19,0(AC10),35			; 19,0(AC10),35				401505' 00 23 0 10 000000
C.24:	EXP	11				; 11					401506' 000000	000011
C.25:	XWD	0,P.AAJ				; 0,P.AAJ				401507' 000000	400520'
C.26:	XWD	0,P.AAK				; 0,P.AAK				401510' 000000	400522'
C.27:	EXP	55				; 55					401511' 000000	000055
C.28:	XWD	0,ROUTINE_NAME			; 0,ROUTINE_NAME			401512' 000000	400516'
C.29:	POINT	7,P.AAL-1,34			; 7,P.AAL-1,34				401513' 01 07 0 00 400526'
C.30:	EXP	20000				; 20000					401514' 000000	020000
C.31:	XWD	0,P.AAM				; 0,P.AAM				401515' 000000	400530'
C.32:	XWD	0,P.AAN				; 0,P.AAN				401516' 000000	400531'
C.33:	POINT	7,P.AAO-1,34			; 7,P.AAO-1,34				401517' 01 07 0 00 400532'
C.34:	POINT	7,P.AAP-1,34			; 7,P.AAP-1,34				401520' 01 07 0 00 400533'
C.35:	XWD	0,P.AAQ				; 0,P.AAQ				401521' 000000	400535'

; Routine Size:  500 words
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  32
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

;	  0571	ROUTINE DDM_LOADS (KERNEL_FILE, FILE_CHAN, VALUES) : NOVALUE =
;	  0572	
;	  0573	!++
;	  0574	! FUNCTIONAL DESCRIPTION:
;	  0575	!
;	  0576	!	Load DDM Process Data Bases for each SLT in the MCB.
;	  0577	!
;	  0578	! FORMAL PARAMETERS
;	  0579	!
;	  0580	!	KERNEL_FILE - System Image File Descriptor
;	  0581	!	FILE_CHAN   - Channel to use for I/O
;	  0582	!	VALUES      - Misc Data Items
;	  0583	!
;	  0584	! IMPLICIT INPUTS
;	  0585	!
;	  0586	!	NONE.
;	  0587	!
;	  0588	! ROUTINE VALUE:
;	  0589	!
;	  0590	!	NONE.
;	  0591	!
;	  0592	! SIDE EFFECTS:
;	  0593	!
;	  0594	!	NONE.
;	  0595	!
;	  0596	!--
;	  0597	
;	  0598	    BEGIN
;	  0599	
;	  0600	    BIND
;	  0601		ROUTINE_NAME = UPLIT (%ASCIZ'DDM_LOADS');
;	  0602	
;	  0603	    MAP
;	  0604		KERNEL_FILE : REF FILE_BLOCK,
;	  0605		VALUES : REF VNPVAL_BLOCK;
;	  0606	
;	  0607	    LOCAL
;	  0608		CB_ADDRESS,
;	  0609		CTL_LENGTH,
;	  0610		DB_FILE : REF FILE_BLOCK,
;	  0611		DB_POINTER,
;	  0612		DB_VARIABLE_1,
;	  0613		DB_VARIABLE_2,
;	  0614		LB_POINTER,
;	  0615		MCB_NAME : VECTOR [CH$ALLOCATION (7)],
;	  0616		MODU_PTR : REF MODU_BLOCK,
;	  0617		PRIMARY_COMMAND,
;	  0618		TEMPORARY_PTR,
;	  0619		UNT_LENGTH,
;	  0620		XXXNAME : VECTOR [CH$ALLOCATION (7)];
;	  0621	
;	  0622	!
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  33
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

;	  0623	! Start by initializing some of the data items
;	  0624	!
;	  0625	    CURLIX = 0;
;	  0626	    CURSLT = 0;
;	  0627	    CURCTL = 0;
;	  0628	    NEXT_LIX (VAR_CURRENT_CTL, .VALUES);
;	  0629	!
;	  0630	
;	  0631	    IF (.CURSLT NEQ 0)
;	  0632	    THEN
;	  0633	
;	  0634		DO
;	  0635	
;	  0636		    IF (.CURSLT [SLT_DEV] NEQ 0)
;	  0637		    THEN
;	  0638			BEGIN
;	  0639	!
;	  0640	! Tell someone what we are doing
;	  0641	!
;	  0642			OUTSTR (0, UPLIT (%ASCIZ'[Loading data base for LINE '));
;	  0643			OUTSTR (0, CURSLT [SLT_DEV]);
;	  0644			OUTPUT (0, %C'-');
;	  0645			OUTNUM (0, .CURSLT [SLT_CTL], 10, 0);
;	  0646			OUTPUT (0, %C'-');
;	  0647			OUTNUM (0, .CURSLT [SLT_UNT], 10, 0);
;	  0648	!
;	  0649	! Get data base file
;	  0650	!
;	  0651	
;	  0652			IF ((DB_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
;	  0653			THEN
;	  0654			    ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0,
;	  0655				0)
;	  0656			ELSE
;	  0657			    BEGIN
;	  0658	!
;	  0659	! Build xxxDDM file name
;	  0660	!
;	  0661			    CH$MOVE (LEN_MCB_NAME, CH$PTR (CURSLT [SLT_DEV]), CH$PTR (DB_FILE [FILE_NAME]));
;	  0662			    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DDM')),
;	  0663				CH$FIND_CH (LEN_FILE_STRING,
;	  0664				    CH$PTR (DB_FILE [FILE_NAME]), 0));
;	  0665			    RSTB (.FILE_CHAN, .DB_FILE);
;	  0666			    RCOR (.DB_FILE, .FILE_CHAN, 4*2048);
;	  0667	!
;	  0668	! Printout Identification Information
;	  0669	!
;	  0670			    R50TOA (GETWRD (.DB_FILE, 0), MCB_NAME);
;	  0671			    CH$MOVE (4, CH$PTR (MCB_NAME, 3), CH$PTR (MCB_NAME));
;	  0672			    OUTSTR (0, UPLIT (%ASCIZ' ('));
;	  0673			    OUTSTR (0, MCB_NAME);
;	  0674			    OUTPUT (0, %C' ');
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  34
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

;	  0675			    OUTNUM (0, GETBYT (.DB_FILE, 2), 10, 0);
;	  0676			    OUTPUT (0, %C'.');
;	  0677			    OUTNUM (0, GETBYT (.DB_FILE, 3), 10, 0);
;	  0678			    OUTSTR (0, UPLIT (%ASCIZ') --> '));
;	  0679	!
;	  0680	! Process Primary Load Block Command
;	  0681	!
;	  0682			    DB_POINTER = 4;
;	  0683			    PRIMARY_COMMAND = GETBYT (.DB_FILE, .DB_POINTER);
;	  0684			    DB_VARIABLE_1 = GETBYT (.DB_FILE, .DB_POINTER + 1);
;	  0685			    DB_VARIABLE_2 = 0;
;	  0686	
;	  0687			    SELECTONE .PRIMARY_COMMAND OF
;	  0688				SET
;	  0689	
;	  0690				[CMD_ALLOC_DB_DSR, CMD_ALLOC_DB_POOL] :
;	  0691				    BEGIN
;	  0692				    CURBLK = (IF (.PRIMARY_COMMAND EQL CMD_ALLOC_DB_DSR) THEN ALOCB (.KERNEL_FILE,
;	  0693					    GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES) ELSE ALOC_POOL (
;	  0694					    .KERNEL_FILE, GETWRD (.DB_FILE, .DB_POINTER + 2), 0, .VALUES));
;	  0695				    CURBAS = (.CURBLK AND ( NOT 63));
;	  0696				    CURMAX = .CURBLK + GETWRD (.DB_FILE, .DB_POINTER + 2);
;	  0697	!
;	  0698	! Process the Load Block associated with this Primary Request
;	  0699	!
;	  0700				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 4);
;	  0701				    BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0702	!
;	  0703	! Store data base address in DDMnnn
;	  0704	!
;	  0705	
;	  0706				    DO
;	  0707					BEGIN
;	  0708					CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DDM')), CH$PTR (XXXNAME));
;	  0709					TEMPORARY_PTR = CH$PTR (XXXNAME, 3);
;	  0710					$CBOMG (TEMPORARY_PTR, .CURLIX, 0);
;	  0711					CH$WCHAR (0, .TEMPORARY_PTR);
;	  0712					CB_ADDRESS = .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE],
;	  0713					    XXXNAME, 0);
;	  0714					PUTWRD (.KERNEL_FILE, .CB_ADDRESS,
;	  0715					    (IF (.CURBLK GEQ %O'120000') THEN .CURBAS<6, 12, 0> ELSE 0));
;	  0716					PUTWRD (.KERNEL_FILE, .CB_ADDRESS + 2,
;	  0717					    (IF (.CURBLK GEQ %O'120000') THEN ((.CURBLK - .CURBAS) + %O'140000') ELSE
;	  0718						.CURBLK));
;	  0719					END
;	  0720				    UNTIL NEXT_LIX (.DB_VARIABLE_1, .VALUES);
;	  0721	
;	  0722				    END;
;	  0723	
;	  0724				[CMD_ALLOC_MUX_DSR, CMD_ALLOC_MUX_POOL] :
;	  0725				    BEGIN
;	  0726				    DB_VARIABLE_2 = GETBYT (.DB_FILE, .DB_POINTER + 2);
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  35
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

;	  0727				    CTL_LENGTH = GETWRD (.DB_FILE, .DB_POINTER + 4);
;	  0728				    UNT_LENGTH = GETWRD (.DB_FILE, .DB_POINTER + 8);
;	  0729				    CURMAX = .CTL_LENGTH + (GET_VARIABLE (.DB_VARIABLE_2, .VALUES)*.UNT_LENGTH);
;	  0730				    CURBLK = (IF (.PRIMARY_COMMAND EQL CMD_ALLOC_MUX_DSR) THEN ALOCB (.KERNEL_FILE,
;	  0731					    .CURMAX, 0, .VALUES) ELSE ALOC_POOL (.KERNEL_FILE, .CURMAX, 0, .VALUES));
;	  0732				    CURBAS = (.CURBLK AND ( NOT 63));
;	  0733				    CURMAX = .CURMAX + .CURBLK;
;	  0734	!
;	  0735	! Load the Controller block
;	  0736	!
;	  0737				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 6);
;	  0738				    BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0739	!
;	  0740	! Load each unit's block
;	  0741	!
;	  0742				    CURBLK = .CURBLK + .CTL_LENGTH;
;	  0743				    LB_POINTER = GETWRD (.DB_FILE, .DB_POINTER + 10);
;	  0744	
;	  0745				    DECR DUMMY FROM GET_VARIABLE (.DB_VARIABLE_2, .VALUES) TO 1 DO
;	  0746					BEGIN
;	  0747					BLOCK_LOAD (.KERNEL_FILE, .DB_FILE, .LB_POINTER, .VALUES);
;	  0748	!
;	  0749	! Plug Addresses into Data Structures
;	  0750	!
;	  0751	
;	  0752					DO
;	  0753					    BEGIN
;	  0754					    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DDM')), CH$PTR (XXXNAME));
;	  0755					    TEMPORARY_PTR = CH$PTR (XXXNAME, 3);
;	  0756					    $CBOMG (TEMPORARY_PTR, .CURLIX, 0);
;	  0757					    CH$WCHAR (0, .TEMPORARY_PTR);
;	  0758					    CB_ADDRESS = .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE],
;	  0759						XXXNAME, 0);
;	  0760					    PUTWRD (.KERNEL_FILE, .CB_ADDRESS,
;	  0761						(IF (.CURBLK GEQ %O'120000') THEN .CURBAS<6, 12, 0> ELSE 0));
;	  0762					    PUTWRD (.KERNEL_FILE, .CB_ADDRESS + 2,
;	  0763						(IF (.CURBLK GEQ %O'120000') THEN ((.CURBLK - .CURBAS) + %O'140000')
;	  0764						ELSE .CURBLK));
;	  0765					    END
;	  0766					UNTIL NEXT_LIX (.DB_VARIABLE_1, .VALUES);
;	  0767	
;	  0768					CURBLK = .CURBLK + .UNT_LENGTH;
;	  0769					END;
;	  0770	
;	  0771				    END;
;	  0772	
;	  0773				[OTHERWISE] :
;	  0774				;
;	  0775				TES;
;	  0776	
;	  0777	!
;	  0778	! Printout Task information
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  36
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

;	  0779	!
;	  0780			    MODU_PTR = .DB_FILE [FILE_MODU];
;	  0781			    OUTSTR (0, MODU_PTR [MODU_NAME]);
;	  0782			    OUTPUT (0, %C' ');
;	  0783			    OUTSTR (0, MODU_PTR [MODU_IDENT]);
;	  0784			    OUTSTR (0, UPLIT (%ASCIZ' ]'));
;	  0785			    PCRLF (0);
;	  0786			    FCOR (.DB_FILE);
;	  0787			    END;
;	  0788	
;	  0789			END
;	  0790		    ELSE
;	  0791			NEXT_LIX (VAR_CURRENT_CTL, .VALUES)
;	  0792	
;	  0793		WHILE (.CURLIX LEQ .VALUES [SLTNUM]);
;	  0794	
;	  0795	    END;					! of DDM_LOADS


P.AAR:	BYTE	(7)"D","D","M","_","L"		; DDM_L					401522' 104 104 115 137 114
	BYTE	(7)"O","A","D","S",000		; OADS					401523' 117 101 104 123 000
P.AAS:	BYTE	(7)"[","L","o","a","d"		; [Load					401524' 133 114 157 141 144
	BYTE	(7)"i","n","g"," ","d"		; ing d					401525' 151 156 147 040 144
	BYTE	(7)"a","t","a"," ","b"		; ata b					401526' 141 164 141 040 142
	BYTE	(7)"a","s","e"," ","f"		; ase f					401527' 141 163 145 040 146
	BYTE	(7)"o","r"," ","L","I"		; or LI					401530' 157 162 040 114 111
	BYTE	(7)"N","E"," ",000,000		; NE					401531' 116 105 040 000 000
P.AAT:	BYTE	(7)"D","D","M",000,000		; DDM					401532' 104 104 115 000 000
P.AAU:	BYTE	(7)" ","(",000,000,000		;  (					401533' 040 050 000 000 000
P.AAV:	BYTE	(7)")"," ","-","-",">"		; ) -->					401534' 051 040 055 055 076
	BYTE	(7)" ",000,000,000,000		;					401535' 040 000 000 000 000
P.AAW:	BYTE	(7)"D","D","M",000,000		; DDM					401536' 104 104 115 000 000
P.AAX:	BYTE	(7)"D","D","M",000,000		; DDM					401537' 104 104 115 000 000
P.AAY:	BYTE	(7)" ","]",000,000,000		;  ]					401540' 040 135 000 000 000


ROUTINE_NAME=	    P.AAR			;						000000	401522'


DDM_LOADS:
	PUSH	SP,AC0				; SP,AC0				401541' 261 17 0 00 000000		0571
	PUSH	SP,AC10				; SP,AC10				401542' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				401543' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				401544' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				401545' 261 17 0 00 000013
	PUSH	SP,AC14				; SP,AC14				401546' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				401547' 261 17 0 00 000016
	ADJSP	SP,17				; SP,17					401550' 105 17 0 00 000017
	SETZM	CURLIX				; CURLIX				401551' 402 00 0 00 000003'		0625
	SETZM	CURSLT				; CURSLT				401552' 402 00 0 00 000004'		0626
	SETZM	CURCTL				; CURCTL				401553' 402 00 0 00 000006'		0627
	PUSH	SP,C.24				; SP,[11]				401554' 261 17 0 00 401506'		0628
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  37
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	MOVE	AC14,-30(SP)			; AC14,VALUES				401555' 200 14 0 17 777750
	PUSH	SP,AC14				; SP,AC14				401556' 261 17 0 00 000014
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				401557' 260 17 0 00 000000V
	SKIPN	CURSLT				; CURSLT				401560' 336 00 0 00 000004'		0631
	JRST	L.55				; L.55					401561' 254 00 0 00 402460'
	MOVE	AC11,AC14			; AC11,AC14				401562' 200 11 0 00 000014		0793
	ADDI	AC11,1				; AC11,1				401563' 271 11 0 00 000001
L.34:	MOVE	AC1,CURSLT			; AC1,CURSLT				401564' 200 01 0 00 000004'		0636
	SKIPN	1(AC1)				; 1(AC1)				401565' 336 00 0 01 000001
	JRST	L.53				; L.53					401566' 254 00 0 00 402451'
	SETZM	0(SP)				; 0(SP)					401567' 402 00 0 17 000000		0642
	PUSH	SP,C.36				; SP,[0,,P.AAS]				401570' 261 17 0 00 402472'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401571' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401572' 402 00 0 17 000000		0643
	MOVE	AC0,CURSLT			; AC0,CURSLT				401573' 200 00 0 00 000004'
	ADDI	AC0,1				; AC0,1					401574' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				401575' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401576' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401577' 402 00 0 17 000000		0644
	PUSH	SP,C.27				; SP,[55]				401600' 261 17 0 00 401511'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				401601' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401602' 402 00 0 17 000000		0645
	MOVE	AC0,CURSLT			; AC0,CURSLT				401603' 200 00 0 00 000004'
	MOVE	AC1,AC0				; AC1,AC0				401604' 200 01 0 00 000000
	PUSH	SP,4(AC1)			; SP,4(AC1)				401605' 261 17 0 01 000004
	PUSH	SP,C.18				; SP,[12]				401606' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				401607' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				401610' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401611' 402 00 0 17 000000		0646
	PUSH	SP,C.27				; SP,[55]				401612' 261 17 0 00 401511'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				401613' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401614' 402 00 0 17 000000		0647
	MOVE	AC0,CURSLT			; AC0,CURSLT				401615' 200 00 0 00 000004'
	MOVE	AC1,AC0				; AC1,AC0				401616' 200 01 0 00 000000
	PUSH	SP,5(AC1)			; SP,5(AC1)				401617' 261 17 0 01 000005
	PUSH	SP,C.18				; SP,[12]				401620' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				401621' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				401622' 260 17 0 00 000000*
	PUSH	SP,C.8				; SP,[3]				401623' 261 17 0 00 400477'		0652
	PUSH	SP,C.9				; SP,[20]				401624' 261 17 0 00 400500'
	PUSHJ	SP,GETBLK			; SP,GETBLK				401625' 260 17 0 00 000000*
	MOVE	AC12,AC1			; DB_FILE,AC1				401626' 200 12 0 00 000001
	ADJSP	SP,-2				; SP,-2					401627' 105 17 0 00 777776
	JUMPN	AC12,L.35			; DB_FILE,L.35				401630' 326 12 0 00 401642'
	SETZM	0(SP)				; 0(SP)					401631' 402 00 0 17 000000		0654
	PUSH	SP,C.10				; SP,[1]				401632' 261 17 0 00 400501'
	PUSH	SP,C.37				; SP,[0,,ROUTINE_NAME]			401633' 261 17 0 00 402473'
	PUSH	SP,C.6				; SP,[0]				401634' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				401635' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				401636' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				401637' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				401640' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  38
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	JRST	L.52				; L.52					401641' 254 00 0 00 402447'		0652
L.35:	MOVE	AC1,CURSLT			; AC1,CURSLT				401642' 200 01 0 00 000004'		0661
	MOVEI	AC2,0(AC1)			; AC2,0(AC1)				401643' 201 02 0 01 000000
	HRLI	AC2,10700			; AC2,10700				401644' 505 02 0 00 010700
	MOVEI	AC5,1(AC12)			; AC5,1(DB_FILE)			401645' 201 05 0 12 000001
	HRLI	AC5,10700			; AC5,10700				401646' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					401647' 201 01 0 00 000003
	MOVEI	AC4,3				; AC4,3					401650' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				401651' 123 01 0 00 400470'
	JFCL					; 					401652' 255 00 0 00 000000
	PUSH	SP,C.12				; SP,[50]				401653' 261 17 0 00 400503'		0664
	MOVEI	AC0,1(AC12)			; AC0,1(DB_FILE)			401654' 201 00 0 12 000001
	HRLI	AC0,10700			; AC0,10700				401655' 505 00 0 00 010700
	PUSH	SP,AC0				; SP,AC0				401656' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				401657' 261 17 0 00 400475'
	PUSHJ	SP,CHFCH%			; SP,CHFCH%				401660' 260 17 0 00 000000*
	MOVE	AC5,AC1				; AC5,AC1				401661' 200 05 0 00 000001
	MOVEI	AC1,3				; AC1,3					401662' 201 01 0 00 000003		0662
	MOVE	AC2,C.38			; AC2,[POINT 7,P.AAT-1,34]  <1,7>	401663' 200 02 0 00 402474'
	MOVEI	AC4,3				; AC4,3					401664' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				401665' 123 01 0 00 400470'
	JFCL					; 					401666' 255 00 0 00 000000
	PUSH	SP,-47(SP)			; SP,FILE_CHAN				401667' 261 17 0 17 777731		0665
	PUSH	SP,AC12				; SP,DB_FILE				401670' 261 17 0 00 000012
	PUSHJ	SP,RSTB				; SP,RSTB				401671' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401672' 202 12 0 17 000000		0666
	PUSH	SP,-51(SP)			; SP,FILE_CHAN				401673' 261 17 0 17 777727
	PUSH	SP,C.30				; SP,[20000]				401674' 261 17 0 00 401514'
	PUSHJ	SP,RCOR				; SP,RCOR				401675' 260 17 0 00 000000*
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			401676' 202 12 0 17 777777		0670
	SETZM	0(SP)				; 0(SP)					401677' 402 00 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				401700' 260 17 0 00 000000*
	PUSH	SP,AC1				; SP,AC1				401701' 261 17 0 00 000001
	MOVEI	AC0,-42(SP)			; AC0,MCB_NAME				401702' 201 00 0 17 777736
	PUSH	SP,AC0				; SP,AC0				401703' 261 17 0 00 000000
	PUSHJ	SP,R50TOA			; SP,R50TOA				401704' 260 17 0 00 000000*
	MOVEI	AC2,-43(SP)			; AC2,MCB_NAME				401705' 201 02 0 17 777735		0671
	HRLI	AC2,170700			; AC2,170700				401706' 505 02 0 00 170700
	MOVEI	AC5,-44(SP)			; AC5,MCB_NAME-1			401707' 201 05 0 17 777734
	HRLI	AC5,10700			; AC5,10700				401710' 505 05 0 00 010700
	MOVEI	AC1,4				; AC1,4					401711' 201 01 0 00 000004
	MOVEI	AC4,4				; AC4,4					401712' 201 04 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				401713' 123 01 0 00 400470'
	JFCL					; 					401714' 255 00 0 00 000000
	SETZM	0(SP)				; 0(SP)					401715' 402 00 0 17 000000		0672
	PUSH	SP,C.39				; SP,[0,,P.AAU]				401716' 261 17 0 00 402475'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401717' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401720' 402 00 0 17 000000		0673
	MOVEI	AC0,-44(SP)			; AC0,MCB_NAME				401721' 201 00 0 17 777734
	PUSH	SP,AC0				; SP,AC0				401722' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401723' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401724' 402 00 0 17 000000		0674
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  39
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	PUSH	SP,C.16				; SP,[40]				401725' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				401726' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401727' 402 00 0 17 000000		0675
	PUSH	SP,AC12				; SP,DB_FILE				401730' 261 17 0 00 000012
	PUSH	SP,C.17				; SP,[2]				401731' 261 17 0 00 400510'
	PUSHJ	SP,GETBYT			; SP,GETBYT				401732' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					401733' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401734' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				401735' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				401736' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				401737' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401740' 402 00 0 17 000000		0676
	PUSH	SP,C.19				; SP,[56]				401741' 261 17 0 00 400512'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				401742' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401743' 402 00 0 17 000000		0677
	PUSH	SP,AC12				; SP,DB_FILE				401744' 261 17 0 00 000012
	PUSH	SP,C.8				; SP,[3]				401745' 261 17 0 00 400477'
	PUSHJ	SP,GETBYT			; SP,GETBYT				401746' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					401747' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				401750' 202 01 0 17 000000
	PUSH	SP,C.18				; SP,[12]				401751' 261 17 0 00 400511'
	PUSH	SP,C.6				; SP,[0]				401752' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				401753' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					401754' 402 00 0 17 000000		0678
	PUSH	SP,C.40				; SP,[0,,P.AAV]				401755' 261 17 0 00 402476'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				401756' 260 17 0 00 000000*
	MOVEI	AC13,4				; DB_POINTER,4				401757' 201 13 0 00 000004		0682
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			401760' 202 12 0 17 777777		0683
	MOVEM	AC13,0(SP)			; DB_POINTER,0(SP)			401761' 202 13 0 17 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				401762' 260 17 0 00 000000*
	MOVEM	AC1,-40(SP)			; AC1,PRIMARY_COMMAND			401763' 202 01 0 17 777740
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				401764' 202 12 0 17 000000		0684
	MOVE	AC0,AC13			; AC0,DB_POINTER			401765' 200 00 0 00 000013
	ADDI	AC0,1				; AC0,1					401766' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				401767' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				401770' 260 17 0 00 000000*
	MOVEM	AC1,-52(SP)			; AC1,DB_VARIABLE_1			401771' 202 01 0 17 777726
	SETZM	-50(SP)				; DB_VARIABLE_2				401772' 402 00 0 17 777730		0685
	MOVEI	AC0,20				; AC0,20				401773' 201 00 0 00 000020		0687
	CAMLE	AC0,-41(SP)			; AC0,PRIMARY_COMMAND			401774' 313 00 0 17 777737
	JRST	L.42				; L.42					401775' 254 00 0 00 402162'
	MOVEI	AC0,21				; AC0,21				401776' 201 00 0 00 000021
	CAMGE	AC0,-41(SP)			; AC0,PRIMARY_COMMAND			401777' 315 00 0 17 777737
	JRST	L.42				; L.42					402000' 254 00 0 00 402162'
	MOVE	AC0,AC13			; AC0,DB_POINTER			402001' 200 00 0 00 000013		0693
	ADDI	AC0,2				; AC0,2					402002' 271 00 0 00 000002
	MOVE	AC1,-72(SP)			; AC1,KERNEL_FILE			402003' 200 01 0 17 777706		0692
	MOVEM	AC1,-44(SP)			; AC1,-44(SP)				402004' 202 01 0 17 777734
	MOVEI	AC1,20				; AC1,20				402005' 201 01 0 00 000020
	CAME	AC1,-41(SP)			; AC1,PRIMARY_COMMAND			402006' 312 01 0 17 777737
	JRST	L.36				; L.36					402007' 254 00 0 00 402023'
	MOVE	AC1,-44(SP)			; AC1,-44(SP)				402010' 200 01 0 17 777734
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  40
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	MOVEM	AC1,0(SP)			; AC1,0(SP)				402011' 202 01 0 17 000000
	PUSH	SP,AC12				; SP,DB_FILE				402012' 261 17 0 00 000012		0693
	PUSH	SP,AC0				; SP,AC0				402013' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402014' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					402015' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402016' 202 01 0 17 000000		0692
	PUSH	SP,C.6				; SP,[0]				402017' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				402020' 261 17 0 00 000014
	PUSHJ	SP,ALOCB			; SP,ALOCB				402021' 260 17 0 00 000000*
	JRST	L.37				; L.37					402022' 254 00 0 00 402035'
L.36:	MOVE	AC1,-44(SP)			; AC1,-44(SP)				402023' 200 01 0 17 777734		0693
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402024' 202 01 0 17 000000
	PUSH	SP,AC12				; SP,DB_FILE				402025' 261 17 0 00 000012		0694
	PUSH	SP,AC0				; SP,AC0				402026' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402027' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					402030' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402031' 202 01 0 17 000000		0693
	PUSH	SP,C.6				; SP,[0]				402032' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				402033' 261 17 0 00 000014
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				402034' 260 17 0 00 000000V
L.37:	MOVEM	AC1,CURBLK			; AC1,CURBLK				402035' 202 01 0 00 000000'		0692
	TRZ	AC1,77				; AC1,77				402036' 620 01 0 00 000077		0695
	MOVEM	AC1,CURBAS			; AC1,CURBAS				402037' 202 01 0 00 000001'
	MOVEM	AC12,-1(SP)			; DB_FILE,-1(SP)			402040' 202 12 0 17 777777		0696
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402041' 202 00 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402042' 260 17 0 00 000000*
	ADD	AC1,CURBLK			; AC1,CURBLK				402043' 270 01 0 00 000000'
	MOVEM	AC1,CURMAX			; AC1,CURMAX				402044' 202 01 0 00 000002'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402045' 202 12 0 17 000000		0700
	MOVE	AC0,AC13			; AC0,DB_POINTER			402046' 200 00 0 00 000013
	ADDI	AC0,4				; AC0,4					402047' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				402050' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402051' 260 17 0 00 000000*
	MOVEM	AC1,-55(SP)			; AC1,LB_POINTER			402052' 202 01 0 17 777723
	MOVE	AC0,-50(SP)			; AC0,-50(SP)				402053' 200 00 0 17 777730		0701
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				402054' 202 00 0 17 777775
	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			402055' 202 12 0 17 777776
	MOVE	AC0,-55(SP)			; AC0,LB_POINTER			402056' 200 00 0 17 777723
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402057' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402060' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				402061' 260 17 0 00 000000V
	MOVE	AC16,AC14			; AC16,AC14				402062' 200 16 0 00 000014		0712
	ADDI	AC16,5				; AC16,5				402063' 271 16 0 00 000005
	MOVE	AC10,AC14			; AC10,AC14				402064' 200 10 0 00 000014
	ADDI	AC10,4				; AC10,4				402065' 271 10 0 00 000004
L.38:	MOVEI	AC5,-62(SP)			; AC5,XXXNAME-1				402066' 201 05 0 17 777716		0708
	HRLI	AC5,10700			; AC5,10700				402067' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					402070' 201 01 0 00 000003
	MOVE	AC2,C.41			; AC2,[POINT 7,P.AAW-1,34]  <1,7>	402071' 200 02 0 00 402477'
	MOVEI	AC4,3				; AC4,3					402072' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				402073' 123 01 0 00 400470'
	JFCL					; 					402074' 255 00 0 00 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  41
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	MOVEI	AC0,-61(SP)			; AC0,XXXNAME				402075' 201 00 0 17 777717		0709
	HRLI	AC0,170700			; AC0,170700				402076' 505 00 0 00 170700
	MOVEM	AC0,-57(SP)			; AC0,TEMPORARY_PTR			402077' 202 00 0 17 777721
	MOVEI	AC0,-57(SP)			; AC0,TEMPORARY_PTR			402100' 201 00 0 17 777721		0710
	PUSH	SP,AC0				; SP,AC0				402101' 261 17 0 00 000000
	PUSH	SP,CURLIX			; SP,CURLIX				402102' 261 17 0 00 000003'
	PUSH	SP,C.6				; SP,[0]				402103' 261 17 0 00 400475'
	PUSHJ	SP,$CBOMG			; SP,$CBOMG				402104' 260 17 0 00 000000*
	SETZ	AC1,				; AC1,					402105' 400 01 0 00 000000		0711
	MOVE	AC0,-62(SP)			; AC0,TEMPORARY_PTR			402106' 200 00 0 17 777716
	IDPB	AC1,AC0				; AC1,AC0				402107' 136 01 0 00 000000
	HRRZ	AC0,0(AC16)			; AC0,0(AC16)				402110' 550 00 0 16 000000		0712
	PUSH	SP,AC0				; SP,AC0				402111' 261 17 0 00 000000
	MOVEI	AC0,-65(SP)			; AC0,XXXNAME				402112' 201 00 0 17 777713
	PUSH	SP,AC0				; SP,AC0				402113' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				402114' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				402115' 260 17 0 00 000000*
	LDB	AC0,C.23			; AC0,[POINT 19,0(AC10),35]  <0,19>	402116' 135 00 0 00 401505'
	ADD	AC1,AC0				; AC1,AC0				402117' 270 01 0 00 000000
	MOVEM	AC1,-54(SP)			; AC1,CB_ADDRESS			402120' 202 01 0 17 777724
	MOVE	AC0,-56(SP)			; AC0,-56(SP)				402121' 200 00 0 17 777722		0714
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402122' 202 00 0 17 777777
	MOVE	AC0,-54(SP)			; AC0,CB_ADDRESS			402123' 200 00 0 17 777724
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402124' 202 00 0 17 000000
	MOVEI	AC0,120000			; AC0,120000				402125' 201 00 0 00 120000		0715
	CAMLE	AC0,CURBLK			; AC0,CURBLK				402126' 313 00 0 00 000000'
	JRST	L.39				; L.39					402127' 254 00 0 00 402133'
	LDB	AC0,C.5				; AC0,[POINT 12,CURBAS,29]  <6,12>	402130' 135 00 0 00 400474'
	PUSH	SP,AC0				; SP,AC0				402131' 261 17 0 00 000000
	JRST	L.40				; L.40					402132' 254 00 0 00 402134'
L.39:	PUSH	SP,C.6				; SP,[0]				402133' 261 17 0 00 400475'
L.40:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				402134' 260 17 0 00 000000*		0714
	MOVE	AC0,-57(SP)			; AC0,-57(SP)				402135' 200 00 0 17 777721		0716
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402136' 202 00 0 17 000000
	MOVE	AC0,-55(SP)			; AC0,CB_ADDRESS			402137' 200 00 0 17 777723
	ADDI	AC0,2				; AC0,2					402140' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				402141' 261 17 0 00 000000
	MOVE	AC0,CURBLK			; AC0,CURBLK				402142' 200 00 0 00 000000'		0717
	CAIGE	AC0,120000			; AC0,120000				402143' 305 00 0 00 120000
	JRST	L.41				; L.41					402144' 254 00 0 00 402147'
	SUB	AC0,CURBAS			; AC0,CURBAS				402145' 274 00 0 00 000001'
	ADDI	AC0,140000			; AC0,140000				402146' 271 00 0 00 140000
L.41:	PUSH	SP,AC0				; SP,AC0				402147' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				402150' 260 17 0 00 000000*		0716
	ADJSP	SP,-11				; SP,-11				402151' 105 17 0 00 777767		0707
	MOVE	AC0,-56(SP)			; AC0,DB_VARIABLE_1			402152' 200 00 0 17 777722		0720
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402153' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402154' 202 14 0 17 000000
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				402155' 260 17 0 00 000000V
	TRNN	AC1,1				; AC1,1					402156' 606 01 0 00 000001
	JRST	L.38				; L.38					402157' 254 00 0 00 402066'		0706
	ADJSP	SP,-4				; SP,-4					402160' 105 17 0 00 777774		0691
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  42
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	JRST	L.51				; L.51					402161' 254 00 0 00 402420'		0687
L.42:	MOVEI	AC0,30				; AC0,30				402162' 201 00 0 00 000030
	CAMLE	AC0,-41(SP)			; AC0,PRIMARY_COMMAND			402163' 313 00 0 17 777737
	JRST	L.51				; L.51					402164' 254 00 0 00 402420'
	MOVEI	AC0,31				; AC0,31				402165' 201 00 0 00 000031
	CAMGE	AC0,-41(SP)			; AC0,PRIMARY_COMMAND			402166' 315 00 0 17 777737
	JRST	L.51				; L.51					402167' 254 00 0 00 402420'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402170' 202 12 0 17 000000		0726
	MOVE	AC0,AC13			; AC0,DB_POINTER			402171' 200 00 0 00 000013
	ADDI	AC0,2				; AC0,2					402172' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				402173' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				402174' 260 17 0 00 000000*
	MOVEM	AC1,-51(SP)			; AC1,DB_VARIABLE_2			402175' 202 01 0 17 777727
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402176' 202 12 0 17 000000		0727
	MOVE	AC0,AC13			; AC0,DB_POINTER			402177' 200 00 0 00 000013
	ADDI	AC0,4				; AC0,4					402200' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				402201' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402202' 260 17 0 00 000000*
	MOVEM	AC1,-51(SP)			; AC1,CTL_LENGTH			402203' 202 01 0 17 777727
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402204' 202 12 0 17 000000		0728
	MOVE	AC0,AC13			; AC0,DB_POINTER			402205' 200 00 0 00 000013
	ADDI	AC0,10				; AC0,10				402206' 271 00 0 00 000010
	PUSH	SP,AC0				; SP,AC0				402207' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402210' 260 17 0 00 000000*
	MOVEM	AC1,-51(SP)			; AC1,UNT_LENGTH			402211' 202 01 0 17 777727
	MOVE	AC0,-53(SP)			; AC0,DB_VARIABLE_2			402212' 200 00 0 17 777725		0729
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402213' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402214' 202 14 0 17 000000
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402215' 260 17 0 00 000000V
	IMUL	AC1,-51(SP)			; AC1,UNT_LENGTH			402216' 220 01 0 17 777727
	ADD	AC1,-52(SP)			; AC1,CTL_LENGTH			402217' 270 01 0 17 777726
	MOVEM	AC1,CURMAX			; AC1,CURMAX				402220' 202 01 0 00 000002'
	MOVE	AC0,-75(SP)			; AC0,KERNEL_FILE			402221' 200 00 0 17 777703		0730
	MOVEM	AC0,-47(SP)			; AC0,-47(SP)				402222' 202 00 0 17 777731
	MOVEI	AC0,30				; AC0,30				402223' 201 00 0 00 000030
	CAME	AC0,-44(SP)			; AC0,PRIMARY_COMMAND			402224' 312 00 0 17 777734
	JRST	L.43				; L.43					402225' 254 00 0 00 402235'
	MOVE	AC0,-47(SP)			; AC0,-47(SP)				402226' 200 00 0 17 777731
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402227' 202 00 0 17 000000
	PUSH	SP,CURMAX			; SP,CURMAX				402230' 261 17 0 00 000002'
	PUSH	SP,C.6				; SP,[0]				402231' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				402232' 261 17 0 00 000014
	PUSHJ	SP,ALOCB			; SP,ALOCB				402233' 260 17 0 00 000000*
	JRST	L.44				; L.44					402234' 254 00 0 00 402243'
L.43:	MOVE	AC0,-47(SP)			; AC0,-47(SP)				402235' 200 00 0 17 777731		0731
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402236' 202 00 0 17 000000
	PUSH	SP,CURMAX			; SP,CURMAX				402237' 261 17 0 00 000002'
	PUSH	SP,C.6				; SP,[0]				402240' 261 17 0 00 400475'
	PUSH	SP,AC14				; SP,AC14				402241' 261 17 0 00 000014
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				402242' 260 17 0 00 000000V
L.44:	MOVEM	AC1,CURBLK			; AC1,CURBLK				402243' 202 01 0 00 000000'		0730
	MOVE	AC0,CURBLK			; AC0,CURBLK				402244' 200 00 0 00 000000'		0732
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  43
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	TRZ	AC0,77				; AC0,77				402245' 620 00 0 00 000077
	MOVEM	AC0,CURBAS			; AC0,CURBAS				402246' 202 00 0 00 000001'
	MOVE	AC0,CURBLK			; AC0,CURBLK				402247' 200 00 0 00 000000'		0733
	ADDM	AC0,CURMAX			; AC0,CURMAX				402250' 272 00 0 00 000002'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402251' 202 12 0 17 000000		0737
	MOVE	AC0,AC13			; AC0,DB_POINTER			402252' 200 00 0 00 000013
	ADDI	AC0,6				; AC0,6					402253' 271 00 0 00 000006
	PUSH	SP,AC0				; SP,AC0				402254' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402255' 260 17 0 00 000000*
	MOVEM	AC1,-60(SP)			; AC1,LB_POINTER			402256' 202 01 0 17 777720
	MOVE	AC0,-53(SP)			; AC0,-53(SP)				402257' 200 00 0 17 777725		0738
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				402260' 202 00 0 17 777775
	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			402261' 202 12 0 17 777776
	MOVE	AC0,-60(SP)			; AC0,LB_POINTER			402262' 200 00 0 17 777720
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402263' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402264' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				402265' 260 17 0 00 000000V
	MOVE	AC0,-56(SP)			; AC0,CTL_LENGTH			402266' 200 00 0 17 777722		0742
	ADDM	AC0,CURBLK			; AC0,CURBLK				402267' 272 00 0 00 000000'
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402270' 202 12 0 17 000000		0743
	MOVE	AC0,AC13			; AC0,DB_POINTER			402271' 200 00 0 00 000013
	ADDI	AC0,12				; AC0,12				402272' 271 00 0 00 000012
	PUSH	SP,AC0				; SP,AC0				402273' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402274' 260 17 0 00 000000*
	MOVEM	AC1,-61(SP)			; AC1,LB_POINTER			402275' 202 01 0 17 777717
	MOVE	AC0,-60(SP)			; AC0,DB_VARIABLE_2			402276' 200 00 0 17 777720		0745
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402277' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402300' 202 14 0 17 000000
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402301' 260 17 0 00 000000V
	MOVE	AC16,AC1			; AC16,AC1				402302' 200 16 0 00 000001
	MOVE	AC0,AC14			; AC0,AC14				402303' 200 00 0 00 000014		0758
	ADDI	AC0,5				; AC0,5					402304' 271 00 0 00 000005
	MOVEM	AC0,-53(SP)			; AC0,-53(SP)				402305' 202 00 0 17 777725
	MOVE	AC10,AC14			; AC10,AC14				402306' 200 10 0 00 000014
	ADDI	AC10,4				; AC10,4				402307' 271 10 0 00 000004
	AOJA	AC16,L.50			; AC16,L.50				402310' 344 16 0 00 402416'		0745
L.45:	MOVE	AC0,-54(SP)			; AC0,-54(SP)				402311' 200 00 0 17 777724		0747
	MOVEM	AC0,-3(SP)			; AC0,-3(SP)				402312' 202 00 0 17 777775
	MOVEM	AC12,-2(SP)			; DB_FILE,-2(SP)			402313' 202 12 0 17 777776
	MOVE	AC0,-61(SP)			; AC0,LB_POINTER			402314' 200 00 0 17 777717
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402315' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402316' 202 14 0 17 000000
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				402317' 260 17 0 00 000000V
L.46:	MOVEI	AC5,-66(SP)			; AC5,XXXNAME-1				402320' 201 05 0 17 777712		0754
	HRLI	AC5,10700			; AC5,10700				402321' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					402322' 201 01 0 00 000003
	MOVE	AC2,C.42			; AC2,[POINT 7,P.AAX-1,34]  <1,7>	402323' 200 02 0 00 402500'
	MOVEI	AC4,3				; AC4,3					402324' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				402325' 123 01 0 00 400470'
	JFCL					; 					402326' 255 00 0 00 000000
	MOVEI	AC0,-65(SP)			; AC0,XXXNAME				402327' 201 00 0 17 777713		0755
	HRLI	AC0,170700			; AC0,170700				402330' 505 00 0 00 170700
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  44
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	MOVEM	AC0,-63(SP)			; AC0,TEMPORARY_PTR			402331' 202 00 0 17 777715
	MOVEI	AC0,-63(SP)			; AC0,TEMPORARY_PTR			402332' 201 00 0 17 777715		0756
	PUSH	SP,AC0				; SP,AC0				402333' 261 17 0 00 000000
	PUSH	SP,CURLIX			; SP,CURLIX				402334' 261 17 0 00 000003'
	PUSH	SP,C.6				; SP,[0]				402335' 261 17 0 00 400475'
	PUSHJ	SP,$CBOMG			; SP,$CBOMG				402336' 260 17 0 00 000000*
	SETZ	AC1,				; AC1,					402337' 400 01 0 00 000000		0757
	MOVE	AC0,-66(SP)			; AC0,TEMPORARY_PTR			402340' 200 00 0 17 777712
	IDPB	AC1,AC0				; AC1,AC0				402341' 136 01 0 00 000000
	MOVE	AC1,-56(SP)			; AC1,-56(SP)				402342' 200 01 0 17 777722		0758
	HRRZ	AC0,0(AC1)			; AC0,0(AC1)				402343' 550 00 0 01 000000
	PUSH	SP,AC0				; SP,AC0				402344' 261 17 0 00 000000
	MOVEI	AC0,-71(SP)			; AC0,XXXNAME				402345' 201 00 0 17 777707
	PUSH	SP,AC0				; SP,AC0				402346' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				402347' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				402350' 260 17 0 00 000000*
	LDB	AC0,C.23			; AC0,[POINT 19,0(AC10),35]  <0,19>	402351' 135 00 0 00 401505'
	ADD	AC1,AC0				; AC1,AC0				402352' 270 01 0 00 000000
	MOVEM	AC1,-60(SP)			; AC1,CB_ADDRESS			402353' 202 01 0 17 777720
	MOVE	AC0,-62(SP)			; AC0,-62(SP)				402354' 200 00 0 17 777716		0760
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402355' 202 00 0 17 777777
	MOVE	AC0,-60(SP)			; AC0,CB_ADDRESS			402356' 200 00 0 17 777720
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402357' 202 00 0 17 000000
	MOVEI	AC0,120000			; AC0,120000				402360' 201 00 0 00 120000		0761
	CAMLE	AC0,CURBLK			; AC0,CURBLK				402361' 313 00 0 00 000000'
	JRST	L.47				; L.47					402362' 254 00 0 00 402366'
	LDB	AC0,C.5				; AC0,[POINT 12,CURBAS,29]  <6,12>	402363' 135 00 0 00 400474'
	PUSH	SP,AC0				; SP,AC0				402364' 261 17 0 00 000000
	JRST	L.48				; L.48					402365' 254 00 0 00 402367'
L.47:	PUSH	SP,C.6				; SP,[0]				402366' 261 17 0 00 400475'
L.48:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				402367' 260 17 0 00 000000*		0760
	MOVE	AC0,-63(SP)			; AC0,-63(SP)				402370' 200 00 0 17 777715		0762
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402371' 202 00 0 17 000000
	MOVE	AC0,-61(SP)			; AC0,CB_ADDRESS			402372' 200 00 0 17 777717
	ADDI	AC0,2				; AC0,2					402373' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				402374' 261 17 0 00 000000
	MOVE	AC0,CURBLK			; AC0,CURBLK				402375' 200 00 0 00 000000'		0763
	CAIGE	AC0,120000			; AC0,120000				402376' 305 00 0 00 120000
	JRST	L.49				; L.49					402377' 254 00 0 00 402402'
	SUB	AC0,CURBAS			; AC0,CURBAS				402400' 274 00 0 00 000001'
	ADDI	AC0,140000			; AC0,140000				402401' 271 00 0 00 140000
L.49:	PUSH	SP,AC0				; SP,AC0				402402' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				402403' 260 17 0 00 000000*		0762
	ADJSP	SP,-3				; SP,-3					402404' 105 17 0 00 777775
	ADJSP	SP,-6				; SP,-6					402405' 105 17 0 00 777772		0753
	MOVE	AC0,-62(SP)			; AC0,DB_VARIABLE_1			402406' 200 00 0 17 777716		0766
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402407' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				402410' 202 14 0 17 000000
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				402411' 260 17 0 00 000000V
	TRNN	AC1,1				; AC1,1					402412' 606 01 0 00 000001
	JRST	L.46				; L.46					402413' 254 00 0 00 402320'		0752
	MOVE	AC0,-56(SP)			; AC0,UNT_LENGTH			402414' 200 00 0 17 777722		0768
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  45
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

	ADDM	AC0,CURBLK			; AC0,CURBLK				402415' 272 00 0 00 000000'
L.50:	SOJG	AC16,L.45			; DUMMY,L.45				402416' 367 16 0 00 402311'		0745
	ADJSP	SP,-10				; SP,-10				402417' 105 17 0 00 777770		0725
L.51:	HRRZ	AC0,14(AC12)			; AC0,14(DB_FILE)			402420' 550 00 0 12 000014		0780
	MOVEM	AC0,-45(SP)			; AC0,MODU_PTR				402421' 202 00 0 17 777733
	SETZM	0(SP)				; 0(SP)					402422' 402 00 0 17 000000		0781
	MOVE	AC0,-45(SP)			; AC0,MODU_PTR				402423' 200 00 0 17 777733
	ADDI	AC0,1				; AC0,1					402424' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				402425' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				402426' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					402427' 402 00 0 17 000000		0782
	PUSH	SP,C.16				; SP,[40]				402430' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				402431' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					402432' 402 00 0 17 000000		0783
	MOVE	AC0,-47(SP)			; AC0,MODU_PTR				402433' 200 00 0 17 777731
	ADDI	AC0,3				; AC0,3					402434' 271 00 0 00 000003
	PUSH	SP,AC0				; SP,AC0				402435' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				402436' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					402437' 402 00 0 17 000000		0784
	PUSH	SP,C.43				; SP,[0,,P.AAY]				402440' 261 17 0 00 402501'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				402441' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					402442' 402 00 0 17 000000		0785
	PUSHJ	SP,PCRLF			; SP,PCRLF				402443' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; DB_FILE,0(SP)				402444' 202 12 0 17 000000		0786
	PUSHJ	SP,FCOR				; SP,FCOR				402445' 260 17 0 00 000000*
	ADJSP	SP,-23				; SP,-23				402446' 105 17 0 00 777755		0657
L.52:	ADJSP	SP,-16				; SP,-16				402447' 105 17 0 00 777762		0638
	JRST	L.54				; L.54					402450' 254 00 0 00 402454'		0636
L.53:	PUSH	SP,C.24				; SP,[11]				402451' 261 17 0 00 401506'		0791
	PUSH	SP,AC14				; SP,AC14				402452' 261 17 0 00 000014
	PUSHJ	SP,NEXT_LIX			; SP,NEXT_LIX				402453' 260 17 0 00 000000V
L.54:	ADJSP	SP,-2				; SP,-2					402454' 105 17 0 00 777776		0636
	HRRZ	AC0,0(AC11)			; AC0,0(AC11)				402455' 550 00 0 11 000000		0793
	CAML	AC0,CURLIX			; AC0,CURLIX				402456' 311 00 0 00 000003'
	JRST	L.34				; L.34					402457' 254 00 0 00 401564'
L.55:	ADJSP	SP,-2				; SP,-2					402460' 105 17 0 00 777776		0598
	ADJSP	SP,-17				; SP,-17				402461' 105 17 0 00 777761		0571
	POP	SP,AC16				; SP,AC16				402462' 262 17 0 00 000016
	POP	SP,AC14				; SP,AC14				402463' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				402464' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				402465' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				402466' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				402467' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				402470' 262 17 0 00 000000
	POPJ	SP,				; SP,					402471' 263 17 0 00 000000
C.36:	XWD	0,P.AAS				; 0,P.AAS				402472' 000000	401524'
C.37:	XWD	0,ROUTINE_NAME			; 0,ROUTINE_NAME			402473' 000000	401522'
C.38:	POINT	7,P.AAT-1,34			; 7,P.AAT-1,34				402474' 01 07 0 00 401531'
C.39:	XWD	0,P.AAU				; 0,P.AAU				402475' 000000	401533'
C.40:	XWD	0,P.AAV				; 0,P.AAV				402476' 000000	401534'
C.41:	POINT	7,P.AAW-1,34			; 7,P.AAW-1,34				402477' 01 07 0 00 401535'
C.42:	POINT	7,P.AAX-1,34			; 7,P.AAX-1,34				402500' 01 07 0 00 401536'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  46
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (5)

C.43:	XWD	0,P.AAY				; 0,P.AAY				402501' 000000	401540'

; Routine Size:  481 words
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  47
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

;	  0796	ROUTINE BLOCK_LOAD (KERNEL_FILE, DB_FILE, LB_POINTER, VALUES) : NOVALUE =
;	  0797	
;	  0798	!++
;	  0799	! FUNCTIONAL DESCRIPTION:
;	  0800	!
;	  0801	!	Process Data Base Load Blocks actually constructing the data base
;	  0802	!	in the Kernel_File.
;	  0803	!
;	  0804	! FORMAL PARAMETERS
;	  0805	!
;	  0806	!	KERNEL_FILE - RSX Kernel File
;	  0807	!	DB_FILE - Process Data Base File
;	  0808	!	LB_POINTER - Pointer to Load Block in DB_FILE
;	  0809	!	VALUES - Misc. Important Locations for VNP
;	  0810	!
;	  0811	! IMPLICIT INPUTS
;	  0812	!
;	  0813	!	NONE.
;	  0814	!
;	  0815	! ROUTINE VALUE:
;	  0816	!
;	  0817	!	NONE.
;	  0818	!
;	  0819	! SIDE EFFECTS:
;	  0820	!
;	  0821	!	Can call itself recursively!
;	  0822	!
;	  0823	!--
;	  0824	
;	  0825	    BEGIN
;	  0826	
;	  0827	    BIND
;	  0828		ROUTINE_NAME = UPLIT (%ASCIZ'BLOCK_LOAD');
;	  0829	
;	  0830	    MAP
;	  0831		KERNEL_FILE : REF FILE_BLOCK,
;	  0832		DB_FILE : REF FILE_BLOCK,
;	  0833		VALUES : REF VNPVAL_BLOCK;
;	  0834	
;	  0835	    LOCAL
;	  0836		CB_ADDRESS,				!Physical Address of current memory block
;	  0837		CB_LENGTH,
;	  0838		CB_SAVE_BASE,				!Save location for Current Block Base
;	  0839		CB_SAVE_MAX,				!Save location for Maximum Extent of block
;	  0840		CB_SAVE,				!Save location for current block pointer
;	  0841		LB_ADDRESS,
;	  0842		LB_COMMAND,				!Current command
;	  0843		LB_LENGTH,
;	  0844		LB_PC,					!Pointer to current command word
;	  0845		LB_VARIABLE,				!Current Variable from command
;	  0846		FATAL_ERROR;				!Aborts processing on error
;	  0847	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  48
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

;	  0848	!
;	  0849	! Initialize processing loop
;	  0850	!
;	  0851	    FATAL_ERROR = FALSE;
;	  0852	    LB_PC = .LB_POINTER;
;	  0853	    CB_SAVE = .CURBLK;
;	  0854	    CB_SAVE_BASE = .CURBAS;
;	  0855	    CB_SAVE_MAX = .CURMAX;
;	  0856	
;	  0857	    DO						! Main Processing Loop
;	  0858		BEGIN
;	  0859		LB_COMMAND = GETBYT (.DB_FILE, .LB_PC);
;	  0860		LB_VARIABLE = GETBYT (.DB_FILE, .LB_PC + 1);
;	  0861		LB_PC = .LB_PC + 2;
;	  0862	
;	  0863		IF DEBUG
;	  0864		THEN
;	  0865		    BEGIN
;	  0866		    PCRLF (0);
;	  0867		    OUTSTR (0, UPLIT (%ASCIZ'Command, Variable # = '));
;	  0868		    OUTNUM (0, .LB_COMMAND, 8, 0);
;	  0869		    OUTPUT (0, %C',');
;	  0870		    OUTNUM (0, .LB_VARIABLE, 8, 0);
;	  0871		    END;
;	  0872	
;	  0873		SELECTONE .LB_COMMAND OF
;	  0874		    SET
;	  0875	
;	  0876		    [CMD_END] :
;	  0877		    ;
;	  0878	
;	  0879		    [CMD_MOVE_WORD] :
;	  0880			BEGIN
;	  0881			CB_ADDRESS = .CURBLK + GETWRD (.DB_FILE, .LB_PC);
;	  0882			PUTWRD (.KERNEL_FILE, .CB_ADDRESS, GET_VARIABLE (.LB_VARIABLE, .VALUES));
;	  0883			LB_PC = .LB_PC + 2;
;	  0884			END;
;	  0885	
;	  0886		    [CMD_MOVE_BYTE] :
;	  0887			BEGIN
;	  0888			CB_ADDRESS = .CURBLK + GETWRD (.DB_FILE, .LB_PC);
;	  0889			PUTBYT (.KERNEL_FILE, .CB_ADDRESS, GET_VARIABLE (.LB_VARIABLE, .VALUES));
;	  0890			LB_PC = .LB_PC + 2;
;	  0891			END;
;	  0892	
;	  0893		    [CMD_ADD_WORD] :
;	  0894			BEGIN
;	  0895			CB_ADDRESS = .CURBLK + GETWRD (.DB_FILE, .LB_PC);
;	  0896			PUTWRD (.KERNEL_FILE, .CB_ADDRESS,
;	  0897			    GETWRD (.KERNEL_FILE, .CB_ADDRESS) + GET_VARIABLE (.LB_VARIABLE, .VALUES));
;	  0898			LB_PC = .LB_PC + 2;
;	  0899			END;
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  49
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

;	  0900	
;	  0901		    [CMD_ADD_BYTE] :
;	  0902			BEGIN
;	  0903			CB_ADDRESS = .CURBLK + GETWRD (.DB_FILE, .LB_PC);
;	  0904			PUTBYT (.KERNEL_FILE, .CB_ADDRESS,
;	  0905			    GETBYT (.KERNEL_FILE, .CB_ADDRESS) + GET_VARIABLE (.LB_VARIABLE, .VALUES));
;	  0906			LB_PC = .LB_PC + 2;
;	  0907			END;
;	  0908	
;	  0909		    [CMD_MOVE_TEXT] :
;	  0910			BEGIN
;	  0911			CB_ADDRESS = .CURBLK + GETWRD (.DB_FILE, .LB_PC);
;	  0912			LB_LENGTH = GETWRD (.DB_FILE, .LB_PC + 2);
;	  0913			LB_ADDRESS = GETWRD (.DB_FILE, .LB_PC + 4);
;	  0914	
;	  0915			IF ((.CB_ADDRESS + .LB_LENGTH) GTR .CURMAX)
;	  0916			THEN
;	  0917			    ERRMSG (0, 25, ROUTINE_NAME,
;	  0918				.CB_ADDRESS + .LB_LENGTH, DB_FILE [FILE_NAME], 0, 0);
;	  0919	
;	  0920			IF (.LB_LENGTH GTR 0)
;	  0921			THEN
;	  0922	
;	  0923			    INCR BYTE_NUMBER FROM 0 TO .LB_LENGTH - 1 DO
;	  0924				PUTBYT (.KERNEL_FILE, .CB_ADDRESS + .BYTE_NUMBER,
;	  0925				    GETBYT (.DB_FILE,
;	  0926					.LB_ADDRESS + .BYTE_NUMBER));
;	  0927	
;	  0928			LB_PC = .LB_PC + 6;
;	  0929			END;
;	  0930	
;	  0931		    [CMD_VERIFY_VALUES] :
;	  0932			BEGIN
;	  0933	
;	  0934			IF (GETWRD (.DB_FILE, .LB_PC) NEQU GETWRD (.DB_FILE, .LB_PC + 2))
;	  0935			THEN
;	  0936			    BEGIN
;	  0937			    PCRLF (0);
;	  0938			    OUTSTR (0, UPLIT (%ASCIZ'? Database Verification Error, Value 1='));
;	  0939			    OUTNUM (0, GETWRD (.DB_FILE, .LB_PC), 8, 0);
;	  0940			    OUTSTR (0, UPLIT (%ASCIZ', Value 2 ='));
;	  0941			    OUTNUM (0, GETWRD (.DB_FILE, .LB_PC + 2), 8, 0);
;	  0942			    FATAL_ERROR = TRUE;
;	  0943			    END;
;	  0944	
;	  0945			LB_PC = .LB_PC + 4;
;	  0946			END;
;	  0947	
;	  0948		    [CMD_ALLOC_DSR] :
;	  0949			BEGIN
;	  0950			CB_LENGTH = GETWRD (.DB_FILE, .LB_PC + 2);
;	  0951			CB_ADDRESS = ALOCB (.KERNEL_FILE, .CB_LENGTH, 0, .VALUES);
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  50
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

;	  0952			PUTWRD (.KERNEL_FILE, .CURBLK + GETWRD (.DB_FILE, .LB_PC), .CB_ADDRESS);
;	  0953			CURMAX = .CB_ADDRESS + .CB_LENGTH;
;	  0954			CURBLK = .CB_ADDRESS;
;	  0955			CURBAS = (.CURBLK AND ( NOT 63));
;	  0956	
;	  0957			IF ((LB_ADDRESS = GETWRD (.DB_FILE, .LB_PC + 4)) NEQ 0)
;	  0958			THEN
;	  0959			    BLOCK_LOAD (.KERNEL_FILE,
;	  0960				.DB_FILE, .LB_ADDRESS, .VALUES);
;	  0961	
;	  0962			CURBLK = .CB_SAVE;
;	  0963			CURBAS = .CB_SAVE_BASE;
;	  0964			CURMAX = .CB_SAVE_MAX;
;	  0965			LB_PC = .LB_PC + 6;
;	  0966			END;
;	  0967	
;	  0968		    [CMD_ALLOC_POOL] :
;	  0969			BEGIN
;	  0970			CB_LENGTH = GETWRD (.DB_FILE, .LB_PC + 2);
;	  0971			CB_ADDRESS = ALOC_POOL (.KERNEL_FILE, .CB_LENGTH, 0, .VALUES);
;	  0972			PUTWRD (.KERNEL_FILE, .CURBLK + GETWRD (.DB_FILE, .LB_PC), .CB_ADDRESS<6, 12, 0>);
;	  0973			PUTWRD (.KERNEL_FILE, .CURBLK + GETWRD (.DB_FILE, .LB_PC) + 2,
;	  0974			    ((.CB_ADDRESS AND 63) + %O'140000'));
;	  0975			CURMAX = .CB_ADDRESS + .CB_LENGTH;
;	  0976			CURBLK = .CB_ADDRESS;
;	  0977			CURBAS = (.CURBLK AND ( NOT 63));
;	  0978	
;	  0979			IF ((LB_ADDRESS = GETWRD (.DB_FILE, .LB_PC + 4)) NEQ 0)
;	  0980			THEN
;	  0981			    BLOCK_LOAD (.KERNEL_FILE,
;	  0982				.DB_FILE, .LB_ADDRESS, .VALUES);
;	  0983	
;	  0984			CURBLK = .CB_SAVE;
;	  0985			CURBAS = .CB_SAVE_BASE;
;	  0986			CURMAX = .CB_SAVE_MAX;
;	  0987			LB_PC = .LB_PC + 6;
;	  0988			END;
;	  0989	
;	  0990		    [OTHERWISE] :
;	  0991			FATAL_ERROR = TRUE;
;	  0992		    TES;
;	  0993	
;	  0994		END
;	  0995	    UNTIL ((.LB_COMMAND EQL CMD_END) OR .FATAL_ERROR);
;	  0996	
;	  0997	    IF (.FATAL_ERROR) THEN ERROR (UPLIT (%ASCIZ'Fatal Database Format Error -- BLOCK_LOAD'));
;	  0998	
;	  0999	    END;					! of BLOCK_LOAD


P.AAZ:	BYTE	(7)"B","L","O","C","K"		; BLOCK					402502' 102 114 117 103 113
	BYTE	(7)"_","L","O","A","D"		; _LOAD					402503' 137 114 117 101 104
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  51
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	BYTE	(7)000,000,000,000,000		;					402504' 000 000 000 000 000
P.ABA:	BYTE	(7)"C","o","m","m","a"		; Comma					402505' 103 157 155 155 141
	BYTE	(7)"n","d",","," ","V"		; nd, V					402506' 156 144 054 040 126
	BYTE	(7)"a","r","i","a","b"		; ariab					402507' 141 162 151 141 142
	BYTE	(7)"l","e"," ","#"," "		; le #					402510' 154 145 040 043 040
	BYTE	(7)"="," ",000,000,000		; =					402511' 075 040 000 000 000
P.ABB:	BYTE	(7)"?"," ","D","a","t"		; ? Dat					402512' 077 040 104 141 164
	BYTE	(7)"a","b","a","s","e"		; abase					402513' 141 142 141 163 145
	BYTE	(7)" ","V","e","r","i"		;  Veri					402514' 040 126 145 162 151
	BYTE	(7)"f","i","c","a","t"		; ficat					402515' 146 151 143 141 164
	BYTE	(7)"i","o","n"," ","E"		; ion E					402516' 151 157 156 040 105
	BYTE	(7)"r","r","o","r",","		; rror,					402517' 162 162 157 162 054
	BYTE	(7)" ","V","a","l","u"		;  Valu					402520' 040 126 141 154 165
	BYTE	(7)"e"," ","1","=",000		; e 1=					402521' 145 040 061 075 000
P.ABC:	BYTE	(7)","," ","V","a","l"		; , Val					402522' 054 040 126 141 154
	BYTE	(7)"u","e"," ","2"," "		; ue 2					402523' 165 145 040 062 040
	BYTE	(7)"=",000,000,000,000		; =					402524' 075 000 000 000 000
P.ABD:	BYTE	(7)"F","a","t","a","l"		; Fatal					402525' 106 141 164 141 154
	BYTE	(7)" ","D","a","t","a"		;  Data					402526' 040 104 141 164 141
	BYTE	(7)"b","a","s","e"," "		; base					402527' 142 141 163 145 040
	BYTE	(7)"F","o","r","m","a"		; Forma					402530' 106 157 162 155 141
	BYTE	(7)"t"," ","E","r","r"		; t Err					402531' 164 040 105 162 162
	BYTE	(7)"o","r"," ","-","-"		; or --					402532' 157 162 040 055 055
	BYTE	(7)" ","B","L","O","C"		;  BLOC					402533' 040 102 114 117 103
	BYTE	(7)"K","_","L","O","A"		; K_LOA					402534' 113 137 114 117 101
	BYTE	(7)"D",000,000,000,000		; D					402535' 104 000 000 000 000


ROUTINE_NAME=	    P.AAZ			;						000000	402502'


BLOCK_LOAD:
	PUSH	SP,AC0				; SP,AC0				402536' 261 17 0 00 000000		0796
	PUSH	SP,AC10				; SP,AC10				402537' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				402540' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				402541' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				402542' 261 17 0 00 000013
	PUSH	SP,AC14				; SP,AC14				402543' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				402544' 261 17 0 00 000016
	ADJSP	SP,7				; SP,7					402545' 105 17 0 00 000007
	SETZ	AC13,				; FATAL_ERROR,				402546' 400 13 0 00 000000		0851
	MOVE	AC10,-20(SP)			; LB_PC,LB_POINTER			402547' 200 10 0 17 777760		0852
	MOVE	AC0,CURBLK			; AC0,CURBLK				402550' 200 00 0 00 000000'		0853
	MOVEM	AC0,-4(SP)			; AC0,CB_SAVE				402551' 202 00 0 17 777774
	MOVE	AC0,CURBAS			; AC0,CURBAS				402552' 200 00 0 00 000001'		0854
	MOVEM	AC0,-3(SP)			; AC0,CB_SAVE_BASE			402553' 202 00 0 17 777775
	MOVE	AC0,CURMAX			; AC0,CURMAX				402554' 200 00 0 00 000002'		0855
	MOVEM	AC0,-2(SP)			; AC0,CB_SAVE_MAX			402555' 202 00 0 17 777776
	MOVE	AC0,-21(SP)			; AC0,DB_FILE				402556' 200 00 0 17 777757		0859
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402557' 202 00 0 17 777777
L.56:	PUSH	SP,-1(SP)			; SP,-1(SP)				402560' 261 17 0 17 777777
	PUSH	SP,AC10				; SP,LB_PC				402561' 261 17 0 00 000010
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  52
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	PUSHJ	SP,GETBYT			; SP,GETBYT				402562' 260 17 0 00 000000*
	MOVE	AC12,AC1			; LB_COMMAND,AC1			402563' 200 12 0 00 000001
	MOVE	AC0,-3(SP)			; AC0,-3(SP)				402564' 200 00 0 17 777775		0860
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402565' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				402566' 200 00 0 00 000010
	ADDI	AC0,1				; AC0,1					402567' 271 00 0 00 000001
	PUSH	SP,AC0				; SP,AC0				402570' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				402571' 260 17 0 00 000000*
	MOVEM	AC1,-11(SP)			; AC1,LB_VARIABLE			402572' 202 01 0 17 777767
	ADDI	AC10,2				; LB_PC,2				402573' 271 10 0 00 000002		0861
	JUMPE	AC12,L.75			; LB_COMMAND,L.75			402574' 322 12 0 00 403267'		0873
	CAIE	AC12,1				; LB_COMMAND,1				402575' 302 12 0 00 000001
	JRST	L.57				; L.57					402576' 254 00 0 00 402615'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402577' 200 00 0 17 777774		0881
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402600' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				402601' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402602' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			402603' 200 11 0 00 000001
	ADD	AC11,CURBLK			; CB_ADDRESS,CURBLK			402604' 270 11 0 00 000000'
	PUSH	SP,-25(SP)			; SP,KERNEL_FILE			402605' 261 17 0 17 777753		0882
	PUSH	SP,AC11				; SP,CB_ADDRESS				402606' 261 17 0 00 000011
	PUSH	SP,-13(SP)			; SP,LB_VARIABLE			402607' 261 17 0 17 777765
	PUSH	SP,-25(SP)			; SP,VALUES				402610' 261 17 0 17 777753
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402611' 260 17 0 00 000000V
	ADJSP	SP,-1				; SP,-1					402612' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402613' 202 01 0 17 000000
	JRST	L.59				; L.59					402614' 254 00 0 00 402662'
L.57:	CAIE	AC12,2				; LB_COMMAND,2				402615' 302 12 0 00 000002		0873
	JRST	L.58				; L.58					402616' 254 00 0 00 402635'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402617' 200 00 0 17 777774		0888
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402620' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				402621' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402622' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			402623' 200 11 0 00 000001
	ADD	AC11,CURBLK			; CB_ADDRESS,CURBLK			402624' 270 11 0 00 000000'
	PUSH	SP,-25(SP)			; SP,KERNEL_FILE			402625' 261 17 0 17 777753		0889
	PUSH	SP,AC11				; SP,CB_ADDRESS				402626' 261 17 0 00 000011
	PUSH	SP,-13(SP)			; SP,LB_VARIABLE			402627' 261 17 0 17 777765
	PUSH	SP,-25(SP)			; SP,VALUES				402630' 261 17 0 17 777753
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402631' 260 17 0 00 000000V
	ADJSP	SP,-1				; SP,-1					402632' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402633' 202 01 0 17 000000
	JRST	L.61				; L.61					402634' 254 00 0 00 402711'
L.58:	CAIE	AC12,3				; LB_COMMAND,3				402635' 302 12 0 00 000003		0873
	JRST	L.60				; L.60					402636' 254 00 0 00 402664'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402637' 200 00 0 17 777774		0895
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402640' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				402641' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402642' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			402643' 200 11 0 00 000001
	ADD	AC11,CURBLK			; CB_ADDRESS,CURBLK			402644' 270 11 0 00 000000'
	PUSH	SP,-25(SP)			; SP,KERNEL_FILE			402645' 261 17 0 17 777753		0896
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  53
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	PUSH	SP,AC11				; SP,CB_ADDRESS				402646' 261 17 0 00 000011
	PUSH	SP,-27(SP)			; SP,KERNEL_FILE			402647' 261 17 0 17 777751		0897
	PUSH	SP,AC11				; SP,CB_ADDRESS				402650' 261 17 0 00 000011
	PUSHJ	SP,GETWRD			; SP,GETWRD				402651' 260 17 0 00 000000*
	MOVE	AC0,AC1				; AC0,AC1				402652' 200 00 0 00 000001
	MOVE	AC1,-15(SP)			; AC1,LB_VARIABLE			402653' 200 01 0 17 777763
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402654' 202 01 0 17 000000
	PUSH	SP,-26(SP)			; SP,VALUES				402655' 261 17 0 17 777752
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402656' 260 17 0 00 000000V
	ADD	AC0,AC1				; AC0,AC1				402657' 270 00 0 00 000001
	MOVEM	AC0,-2(SP)			; AC0,-2(SP)				402660' 202 00 0 17 777776
	ADJSP	SP,-2				; SP,-2					402661' 105 17 0 00 777776
L.59:	PUSHJ	SP,PUTWRD			; SP,PUTWRD				402662' 260 17 0 00 000000*		0896
	JRST	L.62				; L.62					402663' 254 00 0 00 402712'
L.60:	CAIE	AC12,4				; LB_COMMAND,4				402664' 302 12 0 00 000004		0873
	JRST	L.63				; L.63					402665' 254 00 0 00 402715'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402666' 200 00 0 17 777774		0903
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402667' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				402670' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402671' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			402672' 200 11 0 00 000001
	ADD	AC11,CURBLK			; CB_ADDRESS,CURBLK			402673' 270 11 0 00 000000'
	PUSH	SP,-25(SP)			; SP,KERNEL_FILE			402674' 261 17 0 17 777753		0904
	PUSH	SP,AC11				; SP,CB_ADDRESS				402675' 261 17 0 00 000011
	PUSH	SP,-27(SP)			; SP,KERNEL_FILE			402676' 261 17 0 17 777751		0905
	PUSH	SP,AC11				; SP,CB_ADDRESS				402677' 261 17 0 00 000011
	PUSHJ	SP,GETBYT			; SP,GETBYT				402700' 260 17 0 00 000000*
	MOVE	AC0,AC1				; AC0,AC1				402701' 200 00 0 00 000001
	MOVE	AC1,-15(SP)			; AC1,LB_VARIABLE			402702' 200 01 0 17 777763
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402703' 202 01 0 17 000000
	PUSH	SP,-26(SP)			; SP,VALUES				402704' 261 17 0 17 777752
	PUSHJ	SP,GET_VARIABLE			; SP,GET_VARIABLE			402705' 260 17 0 00 000000V
	ADD	AC0,AC1				; AC0,AC1				402706' 270 00 0 00 000001
	MOVEM	AC0,-2(SP)			; AC0,-2(SP)				402707' 202 00 0 17 777776
	ADJSP	SP,-2				; SP,-2					402710' 105 17 0 00 777776
L.61:	PUSHJ	SP,PUTBYT			; SP,PUTBYT				402711' 260 17 0 00 000000*		0904
L.62:	ADDI	AC10,2				; LB_PC,2				402712' 271 10 0 00 000002		0906
	ADJSP	SP,-3				; SP,-3					402713' 105 17 0 00 777775		0902
	JRST	L.75				; L.75					402714' 254 00 0 00 403267'		0873
L.63:	CAIE	AC12,5				; LB_COMMAND,5				402715' 302 12 0 00 000005
	JRST	L.68				; L.68					402716' 254 00 0 00 403010'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402717' 200 00 0 17 777774		0911
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				402720' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				402721' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402722' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			402723' 200 11 0 00 000001
	ADD	AC11,CURBLK			; CB_ADDRESS,CURBLK			402724' 270 11 0 00 000000'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				402725' 200 00 0 17 777774		0912
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402726' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				402727' 200 00 0 00 000010
	ADDI	AC0,2				; AC0,2					402730' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				402731' 261 17 0 00 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  54
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	PUSHJ	SP,GETWRD			; SP,GETWRD				402732' 260 17 0 00 000000*
	MOVE	AC16,AC1			; LB_LENGTH,AC1				402733' 200 16 0 00 000001
	MOVE	AC0,-5(SP)			; AC0,-5(SP)				402734' 200 00 0 17 777773		0913
	MOVEM	AC0,0(SP)			; AC0,0(SP)				402735' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				402736' 200 00 0 00 000010
	ADDI	AC0,4				; AC0,4					402737' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				402740' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				402741' 260 17 0 00 000000*
	MOVEM	AC1,-5(SP)			; AC1,LB_ADDRESS			402742' 202 01 0 17 777773
	MOVE	AC1,AC11			; AC1,CB_ADDRESS			402743' 200 01 0 00 000011		0915
	ADD	AC1,AC16			; AC1,LB_LENGTH				402744' 270 01 0 00 000016
	CAMG	AC1,CURMAX			; AC1,CURMAX				402745' 317 01 0 00 000002'
	JRST	L.64				; L.64					402746' 254 00 0 00 402762'
	SETZM	0(SP)				; 0(SP)					402747' 402 00 0 17 000000		0917
	PUSH	SP,C.46				; SP,[31]				402750' 261 17 0 00 403313'
	PUSH	SP,C.47				; SP,[0,,ROUTINE_NAME]			402751' 261 17 0 00 403314'
	PUSH	SP,AC1				; SP,AC1				402752' 261 17 0 00 000001
	MOVE	AC0,-11(SP)			; AC0,-11(SP)				402753' 200 00 0 17 777767		0918
	ADDI	AC0,2				; AC0,2					402754' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				402755' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				402756' 261 17 0 00 400475'		0917
	PUSH	SP,C.6				; SP,[0]				402757' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				402760' 260 17 0 00 000000*
	ADJSP	SP,-6				; SP,-6					402761' 105 17 0 00 777772
L.64:	JUMPLE	AC16,L.67			; LB_LENGTH,L.67			402762' 323 16 0 00 403005'		0920
	SETO	AC0,				; BYTE_NUMBER,				402763' 474 00 0 00 000000		0923
	JRST	L.66				; L.66					402764' 254 00 0 00 403002'
L.65:	PUSH	SP,-27(SP)			; SP,KERNEL_FILE			402765' 261 17 0 17 777751		0924
	MOVE	AC1,AC11			; AC1,CB_ADDRESS			402766' 200 01 0 00 000011
	ADD	AC1,AC0				; AC1,BYTE_NUMBER			402767' 270 01 0 00 000000
	PUSH	SP,AC1				; SP,AC1				402770' 261 17 0 00 000001
	PUSH	SP,-10(SP)			; SP,-10(SP)				402771' 261 17 0 17 777770		0925
	MOVE	AC1,-10(SP)			; AC1,LB_ADDRESS			402772' 200 01 0 17 777770		0926
	ADD	AC1,AC0				; AC1,BYTE_NUMBER			402773' 270 01 0 00 000000
	PUSH	SP,AC1				; SP,AC1				402774' 261 17 0 00 000001
	PUSHJ	SP,GETBYT			; SP,GETBYT				402775' 260 17 0 00 000000*		0925
	ADJSP	SP,-1				; SP,-1					402776' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				402777' 202 01 0 17 000000		0924
	PUSHJ	SP,PUTBYT			; SP,PUTBYT				403000' 260 17 0 00 000000*
	ADJSP	SP,-3				; SP,-3					403001' 105 17 0 00 777775
L.66:	ADDI	AC0,1				; BYTE_NUMBER,1				403002' 271 00 0 00 000001		0923
	CAMGE	AC0,AC16			; BYTE_NUMBER,LB_LENGTH			403003' 315 00 0 00 000016
	JRST	L.65				; L.65					403004' 254 00 0 00 402765'
L.67:	ADDI	AC10,6				; LB_PC,6				403005' 271 10 0 00 000006		0928
	ADJSP	SP,-2				; SP,-2					403006' 105 17 0 00 777776		0910
	JRST	L.75				; L.75					403007' 254 00 0 00 403267'		0873
L.68:	CAIE	AC12,6				; LB_COMMAND,6				403010' 302 12 0 00 000006
	JRST	L.70				; L.70					403011' 254 00 0 00 403066'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				403012' 200 00 0 17 777774		0934
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				403013' 202 00 0 17 777777
	MOVEM	AC10,0(SP)			; LB_PC,0(SP)				403014' 202 10 0 17 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403015' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  55
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	MOVE	AC0,AC1				; AC0,AC1				403016' 200 00 0 00 000001
	MOVE	AC1,-4(SP)			; AC1,-4(SP)				403017' 200 01 0 17 777774
	MOVEM	AC1,0(SP)			; AC1,0(SP)				403020' 202 01 0 17 000000
	MOVE	AC14,AC10			; AC14,LB_PC				403021' 200 14 0 00 000010
	ADDI	AC14,2				; AC14,2				403022' 271 14 0 00 000002
	PUSH	SP,AC14				; SP,AC14				403023' 261 17 0 00 000014
	PUSHJ	SP,GETWRD			; SP,GETWRD				403024' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					403025' 105 17 0 00 777777
	CAMN	AC0,AC1				; AC0,AC1				403026' 316 00 0 00 000001
	JRST	L.69				; L.69					403027' 254 00 0 00 403064'
	SETZM	0(SP)				; 0(SP)					403030' 402 00 0 17 000000		0937
	PUSHJ	SP,PCRLF			; SP,PCRLF				403031' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					403032' 402 00 0 17 000000		0938
	PUSH	SP,C.48				; SP,[0,,P.ABB]				403033' 261 17 0 00 403315'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				403034' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					403035' 402 00 0 17 000000		0939
	PUSH	SP,-5(SP)			; SP,-5(SP)				403036' 261 17 0 17 777773
	PUSH	SP,AC10				; SP,LB_PC				403037' 261 17 0 00 000010
	PUSHJ	SP,GETWRD			; SP,GETWRD				403040' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					403041' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				403042' 202 01 0 17 000000
	PUSH	SP,C.49				; SP,[10]				403043' 261 17 0 00 403316'
	PUSH	SP,C.6				; SP,[0]				403044' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				403045' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					403046' 402 00 0 17 000000		0940
	PUSH	SP,C.50				; SP,[0,,P.ABC]				403047' 261 17 0 00 403317'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				403050' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					403051' 402 00 0 17 000000		0941
	PUSH	SP,-11(SP)			; SP,-11(SP)				403052' 261 17 0 17 777767
	PUSH	SP,AC14				; SP,AC14				403053' 261 17 0 00 000014
	PUSHJ	SP,GETWRD			; SP,GETWRD				403054' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					403055' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				403056' 202 01 0 17 000000
	PUSH	SP,C.49				; SP,[10]				403057' 261 17 0 00 403316'
	PUSH	SP,C.6				; SP,[0]				403060' 261 17 0 00 400475'
	PUSHJ	SP,OUTNUM			; SP,OUTNUM				403061' 260 17 0 00 000000*
	MOVEI	AC13,1				; FATAL_ERROR,1				403062' 201 13 0 00 000001		0942
	ADJSP	SP,-10				; SP,-10				403063' 105 17 0 00 777770		0936
L.69:	ADDI	AC10,4				; LB_PC,4				403064' 271 10 0 00 000004		0945
	JRST	L.75				; L.75					403065' 254 00 0 00 403267'		0873
L.70:	CAIE	AC12,10				; LB_COMMAND,10				403066' 302 12 0 00 000010
	JRST	L.72				; L.72					403067' 254 00 0 00 403156'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				403070' 200 00 0 17 777774		0950
	MOVEM	AC0,0(SP)			; AC0,0(SP)				403071' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				403072' 200 00 0 00 000010
	ADDI	AC0,2				; AC0,2					403073' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				403074' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403075' 260 17 0 00 000000*
	MOVEM	AC1,-11(SP)			; AC1,CB_LENGTH				403076' 202 01 0 17 777767
	PUSH	SP,-26(SP)			; SP,KERNEL_FILE			403077' 261 17 0 17 777752		0951
	PUSH	SP,-12(SP)			; SP,CB_LENGTH				403100' 261 17 0 17 777766
	PUSH	SP,C.6				; SP,[0]				403101' 261 17 0 00 400475'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  56
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	PUSH	SP,-26(SP)			; SP,VALUES				403102' 261 17 0 17 777752
	PUSHJ	SP,ALOCB			; SP,ALOCB				403103' 260 17 0 00 000000*
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			403104' 200 11 0 00 000001
	PUSH	SP,-32(SP)			; SP,KERNEL_FILE			403105' 261 17 0 17 777746		0952
	PUSH	SP,-12(SP)			; SP,-12(SP)				403106' 261 17 0 17 777766
	PUSH	SP,AC10				; SP,LB_PC				403107' 261 17 0 00 000010
	PUSHJ	SP,GETWRD			; SP,GETWRD				403110' 260 17 0 00 000000*
	ADD	AC1,CURBLK			; AC1,CURBLK				403111' 270 01 0 00 000000'
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				403112' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					403113' 105 17 0 00 777777
	PUSH	SP,AC11				; SP,CB_ADDRESS				403114' 261 17 0 00 000011
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				403115' 260 17 0 00 000000*
	MOVE	AC0,AC11			; AC0,CB_ADDRESS			403116' 200 00 0 00 000011		0953
	ADD	AC0,-20(SP)			; AC0,CB_LENGTH				403117' 270 00 0 17 777760
	MOVEM	AC0,CURMAX			; AC0,CURMAX				403120' 202 00 0 00 000002'
	MOVEM	AC11,CURBLK			; CB_ADDRESS,CURBLK			403121' 202 11 0 00 000000'		0954
	MOVE	AC0,CURBLK			; AC0,CURBLK				403122' 200 00 0 00 000000'		0955
	TRZ	AC0,77				; AC0,77				403123' 620 00 0 00 000077
	MOVEM	AC0,CURBAS			; AC0,CURBAS				403124' 202 00 0 00 000001'
	MOVE	AC0,-14(SP)			; AC0,-14(SP)				403125' 200 00 0 17 777764		0957
	MOVEM	AC0,0(SP)			; AC0,0(SP)				403126' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				403127' 200 00 0 00 000010
	ADDI	AC0,4				; AC0,4					403130' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				403131' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403132' 260 17 0 00 000000*
	MOVEM	AC1,-14(SP)			; AC1,LB_ADDRESS			403133' 202 01 0 17 777764
	ADJSP	SP,-1				; SP,-1					403134' 105 17 0 00 777777
	SKIPN	-13(SP)				; LB_ADDRESS				403135' 336 00 0 17 777765
	JRST	L.71				; L.71					403136' 254 00 0 00 403145'
	PUSH	SP,-35(SP)			; SP,KERNEL_FILE			403137' 261 17 0 17 777743		0959
	PUSH	SP,-15(SP)			; SP,-15(SP)				403140' 261 17 0 17 777763
	PUSH	SP,-15(SP)			; SP,LB_ADDRESS				403141' 261 17 0 17 777763
	PUSH	SP,-35(SP)			; SP,VALUES				403142' 261 17 0 17 777743
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				403143' 260 17 0 00 402536'
	ADJSP	SP,-4				; SP,-4					403144' 105 17 0 00 777774
L.71:	MOVE	AC0,-17(SP)			; AC0,CB_SAVE				403145' 200 00 0 17 777761		0962
	MOVEM	AC0,CURBLK			; AC0,CURBLK				403146' 202 00 0 00 000000'
	MOVE	AC0,-16(SP)			; AC0,CB_SAVE_BASE			403147' 200 00 0 17 777762		0963
	MOVEM	AC0,CURBAS			; AC0,CURBAS				403150' 202 00 0 00 000001'
	MOVE	AC0,-15(SP)			; AC0,CB_SAVE_MAX			403151' 200 00 0 17 777763		0964
	MOVEM	AC0,CURMAX			; AC0,CURMAX				403152' 202 00 0 00 000002'
	ADDI	AC10,6				; LB_PC,6				403153' 271 10 0 00 000006		0965
	ADJSP	SP,-10				; SP,-10				403154' 105 17 0 00 777770		0949
	JRST	L.75				; L.75					403155' 254 00 0 00 403267'		0873
L.72:	CAIE	AC12,11				; LB_COMMAND,11				403156' 302 12 0 00 000011
	JRST	L.74				; L.74					403157' 254 00 0 00 403266'
	MOVE	AC0,-4(SP)			; AC0,-4(SP)				403160' 200 00 0 17 777774		0970
	MOVEM	AC0,0(SP)			; AC0,0(SP)				403161' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				403162' 200 00 0 00 000010
	ADDI	AC0,2				; AC0,2					403163' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				403164' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403165' 260 17 0 00 000000*
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  57
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	MOVEM	AC1,-11(SP)			; AC1,CB_LENGTH				403166' 202 01 0 17 777767
	MOVE	AC14,-26(SP)			; AC14,KERNEL_FILE			403167' 200 14 0 17 777752		0971
	PUSH	SP,AC14				; SP,AC14				403170' 261 17 0 00 000014
	PUSH	SP,-12(SP)			; SP,CB_LENGTH				403171' 261 17 0 17 777766
	PUSH	SP,C.6				; SP,[0]				403172' 261 17 0 00 400475'
	PUSH	SP,-26(SP)			; SP,VALUES				403173' 261 17 0 17 777752
	PUSHJ	SP,ALOC_POOL			; SP,ALOC_POOL				403174' 260 17 0 00 000000V
	MOVE	AC11,AC1			; CB_ADDRESS,AC1			403175' 200 11 0 00 000001
	MOVEM	AC14,0(SP)			; AC14,0(SP)				403176' 202 14 0 17 000000		0972
	PUSH	SP,-11(SP)			; SP,-11(SP)				403177' 261 17 0 17 777767
	PUSH	SP,AC10				; SP,LB_PC				403200' 261 17 0 00 000010
	PUSHJ	SP,GETWRD			; SP,GETWRD				403201' 260 17 0 00 000000*
	ADD	AC1,CURBLK			; AC1,CURBLK				403202' 270 01 0 00 000000'
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				403203' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					403204' 105 17 0 00 777777
	LDB	AC0,C.44			; AC0,[POINT 12,CB_ADDRESS,29]  <6,12>	403205' 135 00 0 00 403311'
	PUSH	SP,AC0				; SP,AC0				403206' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				403207' 260 17 0 00 000000*
	MOVEM	AC14,0(SP)			; AC14,0(SP)				403210' 202 14 0 17 000000		0973
	PUSH	SP,-13(SP)			; SP,-13(SP)				403211' 261 17 0 17 777765
	PUSH	SP,AC10				; SP,LB_PC				403212' 261 17 0 00 000010
	PUSHJ	SP,GETWRD			; SP,GETWRD				403213' 260 17 0 00 000000*
	ADD	AC1,CURBLK			; AC1,CURBLK				403214' 270 01 0 00 000000'
	ADDI	AC1,2				; AC1,2					403215' 271 01 0 00 000002
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				403216' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					403217' 105 17 0 00 777777
	LDB	AC0,C.45			; AC0,[POINT 6,CB_ADDRESS,35]  <0,6>	403220' 135 00 0 00 403312'		0974
	ADDI	AC0,140000			; AC0,140000				403221' 271 00 0 00 140000
	PUSH	SP,AC0				; SP,AC0				403222' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				403223' 260 17 0 00 000000*		0973
	MOVE	AC0,AC11			; AC0,CB_ADDRESS			403224' 200 00 0 00 000011		0975
	ADD	AC0,-21(SP)			; AC0,CB_LENGTH				403225' 270 00 0 17 777757
	MOVEM	AC0,CURMAX			; AC0,CURMAX				403226' 202 00 0 00 000002'
	MOVEM	AC11,CURBLK			; CB_ADDRESS,CURBLK			403227' 202 11 0 00 000000'		0976
	MOVE	AC0,CURBLK			; AC0,CURBLK				403230' 200 00 0 00 000000'		0977
	TRZ	AC0,77				; AC0,77				403231' 620 00 0 00 000077
	MOVEM	AC0,CURBAS			; AC0,CURBAS				403232' 202 00 0 00 000001'
	MOVE	AC0,-15(SP)			; AC0,-15(SP)				403233' 200 00 0 17 777763		0979
	MOVEM	AC0,0(SP)			; AC0,0(SP)				403234' 202 00 0 17 000000
	MOVE	AC0,AC10			; AC0,LB_PC				403235' 200 00 0 00 000010
	ADDI	AC0,4				; AC0,4					403236' 271 00 0 00 000004
	PUSH	SP,AC0				; SP,AC0				403237' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403240' 260 17 0 00 000000*
	MOVEM	AC1,-15(SP)			; AC1,LB_ADDRESS			403241' 202 01 0 17 777763
	ADJSP	SP,-1				; SP,-1					403242' 105 17 0 00 777777
	SKIPN	-14(SP)				; LB_ADDRESS				403243' 336 00 0 17 777764
	JRST	L.73				; L.73					403244' 254 00 0 00 403255'
	MOVEM	AC14,-2(SP)			; AC14,-2(SP)				403245' 202 14 0 17 777776		0981
	MOVE	AC0,-15(SP)			; AC0,-15(SP)				403246' 200 00 0 17 777763
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				403247' 202 00 0 17 777777
	MOVE	AC0,-14(SP)			; AC0,LB_ADDRESS			403250' 200 00 0 17 777764
	MOVEM	AC0,0(SP)			; AC0,0(SP)				403251' 202 00 0 17 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  58
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (6)

	PUSH	SP,-33(SP)			; SP,VALUES				403252' 261 17 0 17 777745
	PUSHJ	SP,BLOCK_LOAD			; SP,BLOCK_LOAD				403253' 260 17 0 00 402536'
	ADJSP	SP,-1				; SP,-1					403254' 105 17 0 00 777777
L.73:	MOVE	AC0,-20(SP)			; AC0,CB_SAVE				403255' 200 00 0 17 777760		0984
	MOVEM	AC0,CURBLK			; AC0,CURBLK				403256' 202 00 0 00 000000'
	MOVE	AC0,-17(SP)			; AC0,CB_SAVE_BASE			403257' 200 00 0 17 777761		0985
	MOVEM	AC0,CURBAS			; AC0,CURBAS				403260' 202 00 0 00 000001'
	MOVE	AC0,-16(SP)			; AC0,CB_SAVE_MAX			403261' 200 00 0 17 777762		0986
	MOVEM	AC0,CURMAX			; AC0,CURMAX				403262' 202 00 0 00 000002'
	ADDI	AC10,6				; LB_PC,6				403263' 271 10 0 00 000006		0987
	ADJSP	SP,-11				; SP,-11				403264' 105 17 0 00 777767		0969
	JRST	L.75				; L.75					403265' 254 00 0 00 403267'		0873
L.74:	MOVEI	AC13,1				; FATAL_ERROR,1				403266' 201 13 0 00 000001		0991
L.75:	ADJSP	SP,-3				; SP,-3					403267' 105 17 0 00 777775		0858
	JUMPE	AC12,L.76			; LB_COMMAND,L.76			403270' 322 12 0 00 403273'		0995
	TRNN	AC13,1				; FATAL_ERROR,1				403271' 606 13 0 00 000001
	JRST	L.56				; L.56					403272' 254 00 0 00 402560'		0857
L.76:	TRNN	AC13,1				; FATAL_ERROR,1				403273' 606 13 0 00 000001		0997
	JRST	L.77				; L.77					403274' 254 00 0 00 403300'
	PUSH	SP,C.51				; SP,[0,,P.ABD]				403275' 261 17 0 00 403320'
	PUSHJ	SP,ERROR			; SP,ERROR				403276' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					403277' 105 17 0 00 777777
L.77:	ADJSP	SP,-7				; SP,-7					403300' 105 17 0 00 777771		0796
	POP	SP,AC16				; SP,AC16				403301' 262 17 0 00 000016
	POP	SP,AC14				; SP,AC14				403302' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				403303' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				403304' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				403305' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				403306' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				403307' 262 17 0 00 000000
	POPJ	SP,				; SP,					403310' 263 17 0 00 000000
C.44:	POINT	12,AC11,29			; 12,CB_ADDRESS,29			403311' 06 14 0 00 000011
C.45:	POINT	6,AC11,35			; 6,CB_ADDRESS,35			403312' 00 06 0 00 000011
C.46:	EXP	31				; 31					403313' 000000	000031
C.47:	XWD	0,ROUTINE_NAME			; 0,ROUTINE_NAME			403314' 000000	402502'
C.48:	XWD	0,P.ABB				; 0,P.ABB				403315' 000000	402512'
C.49:	EXP	10				; 10					403316' 000000	000010
C.50:	XWD	0,P.ABC				; 0,P.ABC				403317' 000000	402522'
C.51:	XWD	0,P.ABD				; 0,P.ABD				403320' 000000	402525'

; Routine Size:  371 words
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  59
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

;	  1000	ROUTINE GET_VARIABLE (VAR_NUMBER, VALUES) =
;	  1001	
;	  1002	!++
;	  1003	! FUNCTIONAL DESCRIPTION:
;	  1004	!
;	  1005	!	Return the value of a Load Block Variable
;	  1006	!	to the caller.
;	  1007	!
;	  1008	! FORMAL PARAMETERS
;	  1009	!
;	  1010	!	VAR_NUMBER - the variable number to return
;	  1011	!	VALUES - Misc info maintained by VNP
;	  1012	!
;	  1013	! IMPLICIT INPUTS
;	  1014	!
;	  1015	!	NONE.
;	  1016	!
;	  1017	! ROUTINE VALUE:
;	  1018	!
;	  1019	!	The variable's contents or 0.
;	  1020	!
;	  1021	! SIDE EFFECTS:
;	  1022	!
;	  1023	!	NONE.
;	  1024	!
;	  1025	!--
;	  1026	
;	  1027	    BEGIN
;	  1028	
;	  1029	    BIND
;	  1030		ROUTINE_NAME = UPLIT (%ASCIZ'GET_LOAD_BLOCK_VARIABLES');
;	  1031	
;	  1032	    MAP
;	  1033		VALUES : REF VNPVAL_BLOCK;
;	  1034	
;	  1035	    LOCAL
;	  1036		RESULT;
;	  1037	
;	  1038	    RESULT = 0;
;	  1039	
;	  1040	    SELECTONE .VAR_NUMBER OF
;	  1041		SET
;	  1042	
;	  1043		[VAR_CURRENT_ADDRESS] :
;	  1044	
;	  1045		    IF (.CURBLK LSS %O'120000') THEN RESULT = .CURBLK ELSE RESULT = (.CURBLK - .CURBAS) + %O'140000';
;	  1046	
;	  1047		[VAR_CURRENT_LIX] :
;	  1048		    RESULT = .CURLIX;
;	  1049	
;	  1050		[VAR_CURRENT_CTL] :
;	  1051	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  60
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

;	  1052		    IF .CURSLT NEQ 0 THEN RESULT = .CURSLT [SLT_CTL];
;	  1053	
;	  1054		[VAR_CURRENT_UNT] :
;	  1055	
;	  1056		    IF .CURSLT NEQ 0 THEN RESULT = .CURSLT [SLT_UNT];
;	  1057	
;	  1058		[VAR_CURRENT_TRB] :
;	  1059	
;	  1060		    IF .CURSLT NEQ 0 THEN RESULT = .CURSLT [SLT_TRB];
;	  1061	
;	  1062		[VAR_NUMBER_SLTS] :
;	  1063		    RESULT = .VALUES [SLTNUM];
;	  1064	
;	  1065		[VAR_NUMBER_CTLS] :
;	  1066	
;	  1067		    IF .CURDEV NEQ 0 THEN RESULT = .CURDEV [DEV_NUM_OF_CTLS];
;	  1068	
;	  1069		[VAR_NUMBER_UNTS] :
;	  1070	
;	  1071		    IF .CURCTL NEQ 0 THEN RESULT = .CURCTL [CTL_NUM_OF_UNTS];
;	  1072	
;	  1073		[VAR_NUMBER_TRBS] :
;	  1074	
;	  1075		    IF .CURUNT NEQ 0 THEN RESULT = .CURUNT [UNT_NUM_OF_TRBS];
;	  1076	
;	  1077		[VAR_CTL_CHARS_0 TO VAR_CTL_CHARS_7] :
;	  1078	
;	  1079		    IF .CURCTL NEQ 0 
;	  1080		    THEN
;	  1081	
;	  1082			CASE .VAR_NUMBER FROM VAR_CTL_CHARS_0 TO VAR_CTL_CHARS_7 OF
;	  1083			    SET
;	  1084	
;	  1085			    [VAR_CTL_CHARS_0] :
;	  1086				RESULT = .CURCTL [CTL_PAR_0];
;	  1087	
;	  1088			    [VAR_CTL_CHARS_1] :
;	  1089				RESULT = .CURCTL [CTL_PAR_1];
;	  1090	
;	  1091			    [VAR_CTL_CHARS_2] :
;	  1092				RESULT = .CURCTL [CTL_PAR_2];
;	  1093	
;	  1094			    [VAR_CTL_CHARS_3] :
;	  1095				RESULT = .CURCTL [CTL_PAR_3];
;	  1096	
;	  1097			    [VAR_CTL_CHARS_4] :
;	  1098				RESULT = .CURCTL [CTL_PAR_4];
;	  1099	
;	  1100			    [VAR_CTL_CHARS_5] :
;	  1101				RESULT = .CURCTL [CTL_PAR_5];
;	  1102	
;	  1103			    [VAR_CTL_CHARS_6] :
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  61
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

;	  1104				RESULT = .CURCTL [CTL_PAR_6];
;	  1105	
;	  1106			    [VAR_CTL_CHARS_7] :
;	  1107				RESULT = .CURCTL [CTL_PAR_7];
;	  1108			    TES;
;	  1109	
;	  1110	
;	  1111		[VAR_UNT_CHARS_0 TO VAR_UNT_CHARS_7] :
;	  1112	
;	  1113		    IF .CURUNT NEQ 0
;	  1114		    THEN
;	  1115	
;	  1116			CASE .VAR_NUMBER FROM VAR_UNT_CHARS_0 TO VAR_UNT_CHARS_7 OF
;	  1117			    SET
;	  1118	
;	  1119			    [VAR_UNT_CHARS_0] :
;	  1120				RESULT = .CURUNT [UNT_PAR_0];
;	  1121	
;	  1122			    [VAR_UNT_CHARS_1] :
;	  1123				RESULT = .CURUNT [UNT_PAR_1];
;	  1124	
;	  1125			    [VAR_UNT_CHARS_2] :
;	  1126				RESULT = .CURUNT [UNT_PAR_2];
;	  1127	
;	  1128			    [VAR_UNT_CHARS_3] :
;	  1129				RESULT = .CURUNT [UNT_PAR_3];
;	  1130	
;	  1131			    [VAR_UNT_CHARS_4] :
;	  1132				RESULT = .CURUNT [UNT_PAR_4];
;	  1133	
;	  1134			    [VAR_UNT_CHARS_5] :
;	  1135				RESULT = .CURUNT [UNT_PAR_5];
;	  1136	
;	  1137			    [VAR_UNT_CHARS_6] :
;	  1138				RESULT = .CURUNT [UNT_PAR_6];
;	  1139	
;	  1140			    [VAR_UNT_CHARS_7] :
;	  1141				RESULT = .CURUNT [UNT_PAR_7];
;	  1142			    TES;
;	  1143	
;	  1144		[VAR_TRB_CHARS_0 TO VAR_TRB_CHARS_7] :
;	  1145	
;	  1146		    IF .CURTRB NEQ 0
;	  1147		    THEN
;	  1148	
;	  1149			CASE .VAR_NUMBER FROM VAR_TRB_CHARS_0 TO VAR_TRB_CHARS_7 OF
;	  1150			    SET
;	  1151	
;	  1152			    [VAR_TRB_CHARS_0] :
;	  1153				RESULT = .CURTRB [TRB_PAR_0];
;	  1154	
;	  1155			    [VAR_TRB_CHARS_1] :
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  62
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

;	  1156				RESULT = .CURTRB [TRB_PAR_1];
;	  1157	
;	  1158			    [VAR_TRB_CHARS_2] :
;	  1159				RESULT = .CURTRB [TRB_PAR_2];
;	  1160	
;	  1161			    [VAR_TRB_CHARS_3] :
;	  1162				RESULT = .CURTRB [TRB_PAR_3];
;	  1163	
;	  1164			    [VAR_TRB_CHARS_4] :
;	  1165				RESULT = .CURTRB [TRB_PAR_4];
;	  1166	
;	  1167			    [VAR_TRB_CHARS_5] :
;	  1168				RESULT = .CURTRB [TRB_PAR_5];
;	  1169	
;	  1170			    [VAR_TRB_CHARS_6] :
;	  1171				RESULT = .CURTRB [TRB_PAR_6];
;	  1172	
;	  1173			    [VAR_TRB_CHARS_7] :
;	  1174				RESULT = .CURTRB [TRB_PAR_7];
;	  1175			    TES;
;	  1176	
;	  1177		[OTHERWISE] :
;	  1178		    RESULT = 0;
;	  1179		TES;
;	  1180	
;	  1181	    IF DEBUG
;	  1182	    THEN
;	  1183		BEGIN
;	  1184		PCRLF (0);
;	  1185		OUTSTR (0, UPLIT (%ASCIZ'    Variable #'));
;	  1186		OUTNUM (0, .VAR_NUMBER, 8, 0);
;	  1187		OUTSTR (0, UPLIT (%ASCIZ' = '));
;	  1188		OUTNUM (0, .RESULT, 8, 0);
;	  1189		END;
;	  1190	
;	  1191	    .RESULT
;	  1192	    END;					! of GET_VARIABLE


P.ABE:	BYTE	(7)"G","E","T","_","L"		; GET_L					403321' 107 105 124 137 114
	BYTE	(7)"O","A","D","_","B"		; OAD_B					403322' 117 101 104 137 102
	BYTE	(7)"L","O","C","K","_"		; LOCK_					403323' 114 117 103 113 137
	BYTE	(7)"V","A","R","I","A"		; VARIA					403324' 126 101 122 111 101
	BYTE	(7)"B","L","E","S",000		; BLES					403325' 102 114 105 123 000
P.ABF:	BYTE	(7)" "," "," "," ","V"		;     V					403326' 040 040 040 040 126
	BYTE	(7)"a","r","i","a","b"		; ariab					403327' 141 162 151 141 142
	BYTE	(7)"l","e"," ","#",000		; le #					403330' 154 145 040 043 000
P.ABG:	BYTE	(7)" ","="," ",000,000		;  =					403331' 040 075 040 000 000


ROUTINE_NAME=	    P.ABE			;						000000	403321'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  63
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)


GET_VARIABLE:
	SETZ	AC1,				; RESULT,				403332' 400 01 0 00 000000		1038
	MOVE	AC3,-2(SP)			; AC3,VAR_NUMBER			403333' 200 03 0 17 777776		1040
	CAIE	AC3,1				; AC3,1					403334' 302 03 0 00 000001
	JRST	L.79				; L.79					403335' 254 00 0 00 403347'
	MOVE	AC2,CURBLK			; AC2,CURBLK				403336' 200 02 0 00 000000'		1045
	CAIL	AC2,120000			; AC2,120000				403337' 301 02 0 00 120000
	JRST	L.78				; L.78					403340' 254 00 0 00 403343'
	MOVE	AC1,AC2				; RESULT,AC2				403341' 200 01 0 00 000002
	POPJ	SP,				; SP,					403342' 263 17 0 00 000000
L.78:	SUB	AC2,CURBAS			; AC2,CURBAS				403343' 274 02 0 00 000001'
	MOVE	AC1,AC2				; RESULT,AC2				403344' 200 01 0 00 000002
	ADDI	AC1,140000			; RESULT,140000				403345' 271 01 0 00 140000
	POPJ	SP,				; SP,					403346' 263 17 0 00 000000		1040
L.79:	CAIE	AC3,10				; AC3,10				403347' 302 03 0 00 000010
	JRST	L.80				; L.80					403350' 254 00 0 00 403353'
	MOVE	AC1,CURLIX			; RESULT,CURLIX				403351' 200 01 0 00 000003'		1048
	POPJ	SP,				; SP,					403352' 263 17 0 00 000000		1040
L.80:	CAIE	AC3,11				; AC3,11				403353' 302 03 0 00 000011
	JRST	L.81				; L.81					403354' 254 00 0 00 403360'
	MOVE	AC2,CURSLT			; AC2,CURSLT				403355' 200 02 0 00 000004'		1052
	JUMPE	AC2,L.106			; AC2,L.106				403356' 322 02 0 00 403521'
	JRST	L.99				; L.99					403357' 254 00 0 00 403505'
L.81:	CAIE	AC3,12				; AC3,12				403360' 302 03 0 00 000012		1040
	JRST	L.82				; L.82					403361' 254 00 0 00 403365'
	MOVE	AC2,CURSLT			; AC2,CURSLT				403362' 200 02 0 00 000004'		1056
	JUMPE	AC2,L.106			; AC2,L.106				403363' 322 02 0 00 403521'
	JRST	L.100				; L.100					403364' 254 00 0 00 403507'
L.82:	CAIE	AC3,13				; AC3,13				403365' 302 03 0 00 000013		1040
	JRST	L.83				; L.83					403366' 254 00 0 00 403372'
	MOVE	AC2,CURSLT			; AC2,CURSLT				403367' 200 02 0 00 000004'		1060
	JUMPE	AC2,L.106			; AC2,L.106				403370' 322 02 0 00 403521'
	JRST	L.101				; L.101					403371' 254 00 0 00 403511'
L.83:	CAIE	AC3,20				; AC3,20				403372' 302 03 0 00 000020		1040
	JRST	L.84				; L.84					403373' 254 00 0 00 403377'
	MOVE	AC2,-1(SP)			; AC2,VALUES				403374' 200 02 0 17 777777		1063
	HRRZ	AC1,1(AC2)			; RESULT,1(AC2)				403375' 550 01 0 02 000001
	POPJ	SP,				; SP,					403376' 263 17 0 00 000000		1040
L.84:	CAIE	AC3,21				; AC3,21				403377' 302 03 0 00 000021
	JRST	L.85				; L.85					403400' 254 00 0 00 403403'
	MOVE	AC2,CURDEV			; AC2,CURDEV				403401' 200 02 0 00 000005'		1067
	JRST	L.87				; L.87					403402' 254 00 0 00 403412'
L.85:	CAIE	AC3,22				; AC3,22				403403' 302 03 0 00 000022		1040
	JRST	L.86				; L.86					403404' 254 00 0 00 403407'
	MOVE	AC2,CURCTL			; AC2,CURCTL				403405' 200 02 0 00 000006'		1071
	JRST	L.87				; L.87					403406' 254 00 0 00 403412'
L.86:	CAIE	AC3,23				; AC3,23				403407' 302 03 0 00 000023		1040
	JRST	L.88				; L.88					403410' 254 00 0 00 403414'
	MOVE	AC2,CURUNT			; AC2,CURUNT				403411' 200 02 0 00 000007'		1075
L.87:	JUMPE	AC2,L.106			; AC2,L.106				403412' 322 02 0 00 403521'
	JRST	L.98				; L.98					403413' 254 00 0 00 403503'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  64
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

L.88:	CAIL	AC3,30				; AC3,30				403414' 301 03 0 00 000030		1040
	CAILE	AC3,37				; AC3,37				403415' 303 03 0 00 000037
	JRST	L.90				; L.90					403416' 254 00 0 00 403434'
	MOVE	AC2,CURCTL			; AC2,CURCTL				403417' 200 02 0 00 000006'		1079
	JUMPE	AC2,L.106			; AC2,L.106				403420' 322 02 0 00 403521'
	MOVE	AC4,AC3				; AC4,AC3				403421' 200 04 0 00 000003		1082
	SUBI	AC4,30				; AC4,30				403422' 275 04 0 00 000030
	JRST	L.89(AC4)			; L.89(AC4)				403423' 254 00 0 04 403424'
L.89:	JRST	L.99				; L.99					403424' 254 00 0 00 403505'
	JRST	L.100				; L.100					403425' 254 00 0 00 403507'
	JRST	L.101				; L.101					403426' 254 00 0 00 403511'
	JRST	L.102				; L.102					403427' 254 00 0 00 403513'
	JRST	L.103				; L.103					403430' 254 00 0 00 403515'
	JRST	L.104				; L.104					403431' 254 00 0 00 403517'
	JRST	L.92				; L.92					403432' 254 00 0 00 403454'
	JRST	L.93				; L.93					403433' 254 00 0 00 403456'
L.90:	CAIL	AC3,40				; AC3,40				403434' 301 03 0 00 000040		1040
	CAILE	AC3,47				; AC3,47				403435' 303 03 0 00 000047
	JRST	L.95				; L.95					403436' 254 00 0 00 403462'
	MOVE	AC2,CURUNT			; AC2,CURUNT				403437' 200 02 0 00 000007'		1113
	JUMPE	AC2,L.106			; AC2,L.106				403440' 322 02 0 00 403521'
	MOVE	AC4,AC3				; AC4,AC3				403441' 200 04 0 00 000003		1116
	SUBI	AC4,40				; AC4,40				403442' 275 04 0 00 000040
	JRST	L.91(AC4)			; L.91(AC4)				403443' 254 00 0 04 403444'
L.91:	JRST	L.100				; L.100					403444' 254 00 0 00 403507'
	JRST	L.101				; L.101					403445' 254 00 0 00 403511'
	JRST	L.102				; L.102					403446' 254 00 0 00 403513'
	JRST	L.103				; L.103					403447' 254 00 0 00 403515'
	JRST	L.104				; L.104					403450' 254 00 0 00 403517'
	JRST	L.92				; L.92					403451' 254 00 0 00 403454'
	JRST	L.93				; L.93					403452' 254 00 0 00 403456'
	JRST	L.94				; L.94					403453' 254 00 0 00 403460'
L.92:	MOVE	AC1,12(AC2)			; RESULT,12(AC2)			403454' 200 01 0 02 000012		1135
	POPJ	SP,				; SP,					403455' 263 17 0 00 000000		1116
L.93:	MOVE	AC1,13(AC2)			; RESULT,13(AC2)			403456' 200 01 0 02 000013		1138
	POPJ	SP,				; SP,					403457' 263 17 0 00 000000		1116
L.94:	MOVE	AC1,14(AC2)			; RESULT,14(AC2)			403460' 200 01 0 02 000014		1141
	POPJ	SP,				; SP,					403461' 263 17 0 00 000000		1113
L.95:	CAIL	AC3,50				; AC3,50				403462' 301 03 0 00 000050		1040
	CAILE	AC3,57				; AC3,57				403463' 303 03 0 00 000057
	JRST	L.105				; L.105					403464' 254 00 0 00 403520'
	MOVE	AC2,CURTRB			; AC2,CURTRB				403465' 200 02 0 00 000010'		1146
	JUMPE	AC2,L.106			; AC2,L.106				403466' 322 02 0 00 403521'
	SUBI	AC3,50				; AC3,50				403467' 275 03 0 00 000050		1149
	JRST	L.96(AC3)			; L.96(AC3)				403470' 254 00 0 03 403471'
L.96:	JRST	L.97				; L.97					403471' 254 00 0 00 403501'
	JRST	L.98				; L.98					403472' 254 00 0 00 403503'
	JRST	L.99				; L.99					403473' 254 00 0 00 403505'
	JRST	L.100				; L.100					403474' 254 00 0 00 403507'
	JRST	L.101				; L.101					403475' 254 00 0 00 403511'
	JRST	L.102				; L.102					403476' 254 00 0 00 403513'
	JRST	L.103				; L.103					403477' 254 00 0 00 403515'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  65
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (7)

	JRST	L.104				; L.104					403500' 254 00 0 00 403517'
L.97:	MOVE	AC1,2(AC2)			; RESULT,2(AC2)				403501' 200 01 0 02 000002		1153
	POPJ	SP,				; SP,					403502' 263 17 0 00 000000		1149
L.98:	MOVE	AC1,3(AC2)			; RESULT,3(AC2)				403503' 200 01 0 02 000003		1156
	POPJ	SP,				; SP,					403504' 263 17 0 00 000000		1149
L.99:	MOVE	AC1,4(AC2)			; RESULT,4(AC2)				403505' 200 01 0 02 000004		1159
	POPJ	SP,				; SP,					403506' 263 17 0 00 000000		1149
L.100:	MOVE	AC1,5(AC2)			; RESULT,5(AC2)				403507' 200 01 0 02 000005		1162
	POPJ	SP,				; SP,					403510' 263 17 0 00 000000		1149
L.101:	MOVE	AC1,6(AC2)			; RESULT,6(AC2)				403511' 200 01 0 02 000006		1165
	POPJ	SP,				; SP,					403512' 263 17 0 00 000000		1149
L.102:	MOVE	AC1,7(AC2)			; RESULT,7(AC2)				403513' 200 01 0 02 000007		1168
	POPJ	SP,				; SP,					403514' 263 17 0 00 000000		1149
L.103:	MOVE	AC1,10(AC2)			; RESULT,10(AC2)			403515' 200 01 0 02 000010		1171
	POPJ	SP,				; SP,					403516' 263 17 0 00 000000		1149
L.104:	SKIPA	AC1,11(AC2)			; RESULT,11(AC2)			403517' 334 01 0 02 000011		1174
L.105:	SETZ	AC1,				; RESULT,				403520' 400 01 0 00 000000		1178
L.106:	POPJ	SP,				; SP,					403521' 263 17 0 00 000000		1000

; Routine Size:  120 words
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  66
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

;	  1193	ROUTINE NEXT_LIX (VAR_NUMBER, VALUES) =
;	  1194	
;	  1195	!++
;	  1196	! FUNCTIONAL DESCRIPTION:
;	  1197	!
;	  1198	!	Keep the BLOCK_LOAD data base up to date based upon the current
;	  1199	!	system line. Return an indication if data items associated with
;	  1200	!	the CTL, UNT, or TRB parameters have been changed.
;	  1201	!
;	  1202	! FORMAL PARAMETERS
;	  1203	!
;	  1204	!	VAR_NUMBER - the Variable Set to return indication on
;	  1205	!	VALUES - Misc info maintained by VNP
;	  1206	!
;	  1207	! IMPLICIT INPUTS
;	  1208	!
;	  1209	!	NONE.
;	  1210	!
;	  1211	! ROUTINE VALUE:
;	  1212	!
;	  1213	!	TRUE - if the set of parameters for VAR_NUMBER have changed or no
;	  1214	!		next line exists.
;	  1215	!	FALSE - otherwise
;	  1216	!
;	  1217	! SIDE EFFECTS:
;	  1218	!
;	  1219	!	NONE.
;	  1220	!
;	  1221	!--
;	  1222	
;	  1223	    BEGIN
;	  1224	
;	  1225	    BIND
;	  1226		ROUTINE_NAME = UPLIT (%ASCIZ'NEXT_LIX');
;	  1227	
;	  1228	    MAP
;	  1229		VALUES : REF VNPVAL_BLOCK;
;	  1230	
;	  1231	    LOCAL
;	  1232		NEW_DEV : REF DEV_BLOCK,
;	  1233		NEW_CTL : REF CTL_BLOCK,
;	  1234		NEW_UNT : REF UNT_BLOCK,
;	  1235		NEW_TRB : REF TRB_BLOCK,
;	  1236		RESULT,
;	  1237		TEMP_LIX;
;	  1238	
;	  1239	!
;	  1240	! These set of support routines allow for searching VNP's data structures
;	  1241	! for the data items we want.
;	  1242	!
;	  1243	    ROUTINE SEL_SLT (SLT_PTR, LIX_NUM) =
;	  1244		BEGIN
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  67
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

;	  1245	
;	  1246		MAP
;	  1247		    SLT_PTR : REF SLT_BLOCK;
;	  1248	
;	  1249		IF ((.LIX_NUM = ..LIX_NUM - 1) LEQ 0) THEN .SLT_PTR ELSE 0
;	  1250	
;	  1251		END;


P.ABH:	BYTE	(7)"N","E","X","T","_"		; NEXT_					403522' 116 105 130 124 137
	BYTE	(7)"L","I","X",000,000		; LIX					403523' 114 111 130 000 000


ROUTINE_NAME=	    P.ABH			;						000000	403522'


SEL_SLT:MOVE	AC1,-1(SP)			; AC1,LIX_NUM				403524' 200 01 0 17 777777		1249
	SOSG	0(AC1)				; 0(AC1)				403525' 377 00 0 01 000000
	SKIPA	AC1,-2(SP)			; AC1,SLT_PTR				403526' 334 01 0 17 777776
	SETZ	AC1,				; AC1,					403527' 400 01 0 00 000000
	POPJ	SP,				; SP,					403530' 263 17 0 00 000000		1243

; Routine Size:  5 words


;	  1252	!
;	  1253	    ROUTINE SEL_DEV (DEV_PTR, DEV_NAM) =
;	  1254		BEGIN
;	  1255	
;	  1256		MAP
;	  1257		    DEV_PTR : REF DEV_BLOCK;
;	  1258	
;	  1259		IF (CH$EQL (3, CH$PTR (DEV_PTR [DEV_NAME]), 3, CH$PTR (.DEV_NAM))) THEN .DEV_PTR ELSE 0
;	  1260	
;	  1261		END;


SEL_DEV:MOVE	AC3,-2(SP)			; AC3,DEV_PTR				403531' 200 03 0 17 777776		1259
	MOVEI	AC2,0(AC3)			; AC2,0(AC3)				403532' 201 02 0 03 000000
	HRLI	AC2,10700			; AC2,10700				403533' 505 02 0 00 010700
	MOVE	AC1,-1(SP)			; AC1,DEV_NAM				403534' 200 01 0 17 777777
	MOVEI	AC5,-1(AC1)			; AC5,-1(AC1)				403535' 201 05 0 01 777777
	HRLI	AC5,10700			; AC5,10700				403536' 505 05 0 00 010700
	MOVEI	AC1,3				; AC1,3					403537' 201 01 0 00 000003
	MOVEI	AC4,3				; AC4,3					403540' 201 04 0 00 000003
	EXTEND	AC1,C.52			; AC1,[CMPSE ]				403541' 123 01 0 00 403546'
	JRST	L.107				; L.107					403542' 254 00 0 00 403544'
	SKIPA	AC1,AC3				; AC1,AC3				403543' 334 01 0 00 000003
L.107:	SETZ	AC1,				; AC1,					403544' 400 01 0 00 000000
	POPJ	SP,				; SP,					403545' 263 17 0 00 000000		1253
C.52:	CMPSE					; 					403546' 002 00 0 00 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  68
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

; Routine Size:  14 words


;	  1262	!
;	  1263	    ROUTINE SEL_CTL (CTL_PTR, CTL_NUM) =
;	  1264		BEGIN
;	  1265	
;	  1266		MAP
;	  1267		    CTL_PTR : REF CTL_BLOCK;
;	  1268	
;	  1269		IF (.CTL_PTR [CTL_CONT] EQL .CTL_NUM) THEN .CTL_PTR ELSE 0
;	  1270	
;	  1271		END;


SEL_CTL:MOVE	AC1,-2(SP)			; AC1,CTL_PTR				403547' 200 01 0 17 777776		1269
	MOVE	AC2,1(AC1)			; AC2,1(AC1)				403550' 200 02 0 01 000001
	CAME	AC2,-1(SP)			; AC2,CTL_NUM				403551' 312 02 0 17 777777
	SETZ	AC1,				; AC1,					403552' 400 01 0 00 000000
	POPJ	SP,				; SP,					403553' 263 17 0 00 000000		1263

; Routine Size:  5 words


;	  1272	!
;	  1273	    ROUTINE SEL_UNT (UNT_PTR, UNT_NUM) =
;	  1274		BEGIN
;	  1275	
;	  1276		MAP
;	  1277		    UNT_PTR : REF UNT_BLOCK;
;	  1278	
;	  1279		IF (.UNT_PTR [UNT_UNIT] EQL .UNT_NUM) THEN .UNT_PTR ELSE 0
;	  1280	
;	  1281		END;


SEL_UNT:MOVE	AC1,-2(SP)			; AC1,UNT_PTR				403554' 200 01 0 17 777776		1279
	MOVE	AC2,1(AC1)			; AC2,1(AC1)				403555' 200 02 0 01 000001
	CAME	AC2,-1(SP)			; AC2,UNT_NUM				403556' 312 02 0 17 777777
	SETZ	AC1,				; AC1,					403557' 400 01 0 00 000000
	POPJ	SP,				; SP,					403560' 263 17 0 00 000000		1273

; Routine Size:  5 words


;	  1282	!
;	  1283	    ROUTINE SEL_TRB (TRB_PTR, TRB_NUM) =
;	  1284		BEGIN
;	  1285	
;	  1286		MAP
;	  1287		    TRB_PTR : REF TRB_BLOCK;
;	  1288	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  69
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

;	  1289		IF (.TRB_PTR [TRB_LADDR] EQL .TRB_NUM) THEN .TRB_PTR ELSE 0
;	  1290	
;	  1291		END;


SEL_TRB:MOVE	AC1,-2(SP)			; AC1,TRB_PTR				403561' 200 01 0 17 777776		1289
	MOVE	AC2,1(AC1)			; AC2,1(AC1)				403562' 200 02 0 01 000001
	CAME	AC2,-1(SP)			; AC2,TRB_NUM				403563' 312 02 0 17 777777
	SETZ	AC1,				; AC1,					403564' 400 01 0 00 000000
	POPJ	SP,				; SP,					403565' 263 17 0 00 000000		1283

; Routine Size:  5 words


;	  1292	!
;	  1293	! The start of NEXT_LIX
;	  1294	!-
;	  1295	!
;	  1296	! Setup default new values for the next SLT
;	  1297	!
;	  1298	    NEW_DEV = 0;
;	  1299	    NEW_CTL = 0;
;	  1300	    NEW_UNT = 0;
;	  1301	    NEW_TRB = 0;
;	  1302	    RESULT = TRUE;				!Default response is TRUE
;	  1303	!
;	  1304	! Get next SLT based upon line index and setup pointers to it's associated
;	  1305	! data structures. Upon completion, RESULT will be TRUE if an
;	  1306	! important change occured otherwise it will be FALSE.
;	  1307	!
;	  1308	    CURLIX = .CURLIX + 1;			!Update the Line Index
;	  1309	    TEMP_LIX = .CURLIX;				!Used to find correct LIX
;	  1310	    CURSLT = FND_CHAIN (.VALUES [SLT_CHAIN], SEL_SLT, TEMP_LIX);
;	  1311	
;	  1312	    IF (.CURSLT NEQ 0)
;	  1313	    THEN
;	  1314		BEGIN
;	  1315		NEW_DEV = FND_CHAIN (.VALUES [DEV_CHAIN], SEL_DEV,
;	  1316		    (IF (.CURSLT [SLT_DEV] NEQ 0) THEN CURSLT [SLT_DEV] ELSE CURSLT [SLT_DLC]));
;	  1317	
;	  1318		IF (.NEW_DEV NEQ 0)
;	  1319		THEN
;	  1320		    BEGIN
;	  1321		    NEW_CTL = FND_CHAIN (.NEW_DEV [DEV_CTL], SEL_CTL, .CURSLT [SLT_CTL]);
;	  1322	
;	  1323		    IF (.NEW_CTL NEQ 0)
;	  1324		    THEN
;	  1325			BEGIN
;	  1326			NEW_UNT = FND_CHAIN (.NEW_CTL [CTL_UNT], SEL_UNT, .CURSLT [SLT_UNT]);
;	  1327	
;	  1328			IF (.NEW_UNT NEQ 0)
;	  1329			THEN
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  70
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

;	  1330			    BEGIN
;	  1331			    NEW_TRB = FND_CHAIN (.NEW_UNT [UNT_TRB], SEL_TRB, .CURSLT [SLT_TRB]);
;	  1332			    END;
;	  1333	
;	  1334			END;
;	  1335	
;	  1336		    END;
;	  1337	
;	  1338		END;
;	  1339	
;	  1340	    IF ((.NEW_CTL NEQ .CURCTL) AND (.VAR_NUMBER EQL VAR_CURRENT_CTL))
;	  1341	    THEN
;	  1342		RESULT = TRUE
;	  1343	    ELSE
;	  1344	
;	  1345		IF ((.NEW_UNT NEQ .CURUNT) AND (.VAR_NUMBER EQL VAR_CURRENT_UNT))
;	  1346		THEN
;	  1347		    RESULT = TRUE
;	  1348		ELSE
;	  1349	
;	  1350		    IF ((.NEW_TRB NEQ .CURTRB) AND (.VAR_NUMBER EQL VAR_CURRENT_TRB))
;	  1351		    THEN
;	  1352			RESULT = TRUE
;	  1353		    ELSE
;	  1354			RESULT = FALSE;
;	  1355	
;	  1356	    CURDEV = .NEW_DEV;
;	  1357	    CURCTL = .NEW_CTL;
;	  1358	    CURUNT = .NEW_UNT;
;	  1359	    CURTRB = .NEW_TRB;
;	  1360	    .RESULT
;	  1361	    END;					! of NEXT_LIX


NEXT_LIX:
	PUSH	SP,AC0				; SP,AC0				403566' 261 17 0 00 000000		1193
	PUSH	SP,AC10				; SP,AC10				403567' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				403570' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				403571' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				403572' 261 17 0 00 000013
	PUSH	SP,AC16				; SP,AC16				403573' 261 17 0 00 000016
	ADJSP	SP,1				; SP,1					403574' 105 17 0 00 000001
	SETZB	AC13,AC11			; NEW_DEV,NEW_CTL			403575' 403 13 0 00 000011		1298
	SETZB	AC10,AC12			; NEW_UNT,NEW_TRB			403576' 403 10 0 00 000012		1300
	MOVEI	AC16,1				; RESULT,1				403577' 201 16 0 00 000001		1302
	AOS	CURLIX				; CURLIX				403600' 350 00 0 00 000003'		1308
	MOVE	AC0,CURLIX			; AC0,CURLIX				403601' 200 00 0 00 000003'		1309
	MOVEM	AC0,0(SP)			; AC0,TEMP_LIX				403602' 202 00 0 17 000000
	MOVE	AC0,-10(SP)			; AC0,VALUES				403603' 200 00 0 17 777770		1310
	MOVE	AC2,AC0				; AC2,AC0				403604' 200 02 0 00 000000
	HLRZ	AC1,2(AC2)			; AC1,2(AC2)				403605' 554 01 0 02 000002
	PUSH	SP,AC1				; SP,AC1				403606' 261 17 0 00 000001
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  71
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

	PUSH	SP,C.53				; SP,[0,,SEL_SLT]			403607' 261 17 0 00 403726'
	MOVEI	AC1,-2(SP)			; AC1,TEMP_LIX				403610' 201 01 0 17 777776
	PUSH	SP,AC1				; SP,AC1				403611' 261 17 0 00 000001
	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				403612' 260 17 0 00 000000*
	MOVEM	AC1,CURSLT			; AC1,CURSLT				403613' 202 01 0 00 000004'
	JUMPE	AC1,L.113			; AC1,L.113				403614' 322 01 0 00 403666'		1312
	MOVE	AC3,AC0				; AC3,AC0				403615' 200 03 0 00 000000		1315
	HRRZ	AC2,2(AC3)			; AC2,2(AC3)				403616' 550 02 0 03 000002
	PUSH	SP,AC2				; SP,AC2				403617' 261 17 0 00 000002
	PUSH	SP,C.54				; SP,[0,,SEL_DEV]			403620' 261 17 0 00 403727'
	SKIPN	1(AC1)				; 1(AC1)				403621' 336 00 0 01 000001		1316
	JRST	L.108				; L.108					403622' 254 00 0 00 403626'
	MOVEI	AC2,1(AC1)			; AC2,1(AC1)				403623' 201 02 0 01 000001
	PUSH	SP,AC2				; SP,AC2				403624' 261 17 0 00 000002
	JRST	L.109				; L.109					403625' 254 00 0 00 403630'
L.108:	ADDI	AC1,2				; AC1,2					403626' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				403627' 261 17 0 00 000001
L.109:	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				403630' 260 17 0 00 000000*		1315
	MOVE	AC13,AC1			; NEW_DEV,AC1				403631' 200 13 0 00 000001
	JUMPE	AC13,L.112			; NEW_DEV,L.112				403632' 322 13 0 00 403665'		1318
	HRRZ	AC0,2(AC13)			; AC0,2(NEW_DEV)			403633' 550 00 0 13 000002		1321
	PUSH	SP,AC0				; SP,AC0				403634' 261 17 0 00 000000
	PUSH	SP,C.55				; SP,[0,,SEL_CTL]			403635' 261 17 0 00 403730'
	MOVE	AC1,CURSLT			; AC1,CURSLT				403636' 200 01 0 00 000004'
	PUSH	SP,4(AC1)			; SP,4(AC1)				403637' 261 17 0 01 000004
	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				403640' 260 17 0 00 000000*
	MOVE	AC11,AC1			; NEW_CTL,AC1				403641' 200 11 0 00 000001
	JUMPE	AC11,L.111			; NEW_CTL,L.111				403642' 322 11 0 00 403664'		1323
	HRRZ	AC0,2(AC11)			; AC0,2(NEW_CTL)			403643' 550 00 0 11 000002		1326
	PUSH	SP,AC0				; SP,AC0				403644' 261 17 0 00 000000
	PUSH	SP,C.56				; SP,[0,,SEL_UNT]			403645' 261 17 0 00 403731'
	MOVE	AC1,CURSLT			; AC1,CURSLT				403646' 200 01 0 00 000004'
	PUSH	SP,5(AC1)			; SP,5(AC1)				403647' 261 17 0 01 000005
	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				403650' 260 17 0 00 000000*
	MOVE	AC10,AC1			; NEW_UNT,AC1				403651' 200 10 0 00 000001
	JUMPE	AC10,L.110			; NEW_UNT,L.110				403652' 322 10 0 00 403663'		1328
	HRRZ	AC0,4(AC10)			; AC0,4(NEW_UNT)			403653' 550 00 0 10 000004		1331
	PUSH	SP,AC0				; SP,AC0				403654' 261 17 0 00 000000
	PUSH	SP,C.57				; SP,[0,,SEL_TRB]			403655' 261 17 0 00 403732'
	MOVE	AC1,CURSLT			; AC1,CURSLT				403656' 200 01 0 00 000004'
	PUSH	SP,6(AC1)			; SP,6(AC1)				403657' 261 17 0 01 000006
	PUSHJ	SP,FND_CHAIN			; SP,FND_CHAIN				403660' 260 17 0 00 000000*
	MOVE	AC12,AC1			; NEW_TRB,AC1				403661' 200 12 0 00 000001
	ADJSP	SP,-3				; SP,-3					403662' 105 17 0 00 777775		1330
L.110:	ADJSP	SP,-3				; SP,-3					403663' 105 17 0 00 777775		1325
L.111:	ADJSP	SP,-3				; SP,-3					403664' 105 17 0 00 777775		1320
L.112:	ADJSP	SP,-3				; SP,-3					403665' 105 17 0 00 777775		1314
L.113:	CAMN	AC11,CURCTL			; NEW_CTL,CURCTL			403666' 316 11 0 00 000006'		1340
	JRST	L.114				; L.114					403667' 254 00 0 00 403673'
	MOVEI	AC0,11				; AC0,11				403670' 201 00 0 00 000011
	CAMN	AC0,-14(SP)			; AC0,VAR_NUMBER			403671' 316 00 0 17 777764
	JRST	L.116				; L.116					403672' 254 00 0 00 403705'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  72
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (8)

L.114:	CAMN	AC10,CURUNT			; NEW_UNT,CURUNT			403673' 316 10 0 00 000007'		1345
	JRST	L.115				; L.115					403674' 254 00 0 00 403700'
	MOVEI	AC0,12				; AC0,12				403675' 201 00 0 00 000012
	CAMN	AC0,-14(SP)			; AC0,VAR_NUMBER			403676' 316 00 0 17 777764
	JRST	L.116				; L.116					403677' 254 00 0 00 403705'
L.115:	CAMN	AC12,CURTRB			; NEW_TRB,CURTRB			403700' 316 12 0 00 000010'		1350
	JRST	L.117				; L.117					403701' 254 00 0 00 403707'
	MOVEI	AC0,13				; AC0,13				403702' 201 00 0 00 000013
	CAME	AC0,-14(SP)			; AC0,VAR_NUMBER			403703' 312 00 0 17 777764
	JRST	L.117				; L.117					403704' 254 00 0 00 403707'
L.116:	MOVEI	AC16,1				; RESULT,1				403705' 201 16 0 00 000001		1352
	JRST	L.118				; L.118					403706' 254 00 0 00 403710'		1350
L.117:	SETZ	AC16,				; RESULT,				403707' 400 16 0 00 000000		1354
L.118:	MOVEM	AC13,CURDEV			; NEW_DEV,CURDEV			403710' 202 13 0 00 000005'		1356
	MOVEM	AC11,CURCTL			; NEW_CTL,CURCTL			403711' 202 11 0 00 000006'		1357
	MOVEM	AC10,CURUNT			; NEW_UNT,CURUNT			403712' 202 10 0 00 000007'		1358
	MOVEM	AC12,CURTRB			; NEW_TRB,CURTRB			403713' 202 12 0 00 000010'		1359
	ADJSP	SP,-3				; SP,-3					403714' 105 17 0 00 777775		1223
	MOVE	AC1,AC16			; AC1,RESULT				403715' 200 01 0 00 000016		1193
	ADJSP	SP,-1				; SP,-1					403716' 105 17 0 00 777777
	POP	SP,AC16				; SP,AC16				403717' 262 17 0 00 000016
	POP	SP,AC13				; SP,AC13				403720' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				403721' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				403722' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				403723' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				403724' 262 17 0 00 000000
	POPJ	SP,				; SP,					403725' 263 17 0 00 000000
C.53:	XWD	0,SEL_SLT			; 0,SEL_SLT				403726' 000000	403524'
C.54:	XWD	0,SEL_DEV			; 0,SEL_DEV				403727' 000000	403531'
C.55:	XWD	0,SEL_CTL			; 0,SEL_CTL				403730' 000000	403547'
C.56:	XWD	0,SEL_UNT			; 0,SEL_UNT				403731' 000000	403554'
C.57:	XWD	0,SEL_TRB			; 0,SEL_TRB				403732' 000000	403561'

; Routine Size:  101 words


;	  1362	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  73
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

;	  1363	GLOBAL ROUTINE MCEX (KERNEL_FILE, CEX_FILE, VALUES) : NOVALUE = 	!MERGE THE COMM EXEC
;	  1364	
;	  1365	!++
;	  1366	! FUNCTIONAL DESCRIPTION:
;	  1367	!
;	  1368	!	MERGE THE COMM EXEC INTO THE KERNEL.  THIS REQUIRES SETTING
;	  1369	!	 UP A COMMON PARTITION.  INFORMATION ON THE PARTITION IS
;	  1370	!	 TAKEN FROM THE COMM EXEC'S LABEL AND HEADER BLOCKS,
;	  1371	!	 AND FROM CETAB.MAC.
;	  1372	!
;	  1373	! FORMAL PARAMETERS:
;	  1374	!
;	  1375	!	KERNEL_FILE - FILE BLOCK FOR THE KERNEL
;	  1376	!	CEX_FILE - FILE BLOCK FOR THE COMM EXEC
;	  1377	!	VALUES - VALUES READ FROM CETAB.MAC AND THE SYMBOL TABLES
;	  1378	!
;	  1379	! IMPLICIT INPUTS:
;	  1380	!
;	  1381	!	NONE
;	  1382	!
;	  1383	! IMPLICIT OUTPUTS:
;	  1384	!
;	  1385	!	NONE
;	  1386	!
;	  1387	! ROUTINE VALUE:
;	  1388	!
;	  1389	!	NONE
;	  1390	!
;	  1391	! SIDE EFFECTS
;	  1392	!
;	  1393	!	CHANGES THE CORE IMAGE
;	  1394	!
;	  1395	!--
;	  1396	
;	  1397	    BEGIN
;	  1398	
;	  1399	    BIND
;	  1400		ROUTINE_NAME = UPLIT (%ASCIZ'MCEX');
;	  1401	
;	  1402	    MAP
;	  1403		KERNEL_FILE : REF FILE_BLOCK,
;	  1404		CEX_FILE : REF FILE_BLOCK,
;	  1405		VALUES : REF VNPVAL_BLOCK;
;	  1406	
;	  1407	    LOCAL
;	  1408		PCB_ADDR,
;	  1409		CEX_LABEL : REF VECTOR [1024],
;	  1410		KERNEL_LABEL : REF VECTOR [1024],
;	  1411		HIGH_EXEC_ADDR,
;	  1412		FLAGS,
;	  1413		CEX_BASE,
;	  1414		CEX_TOP,
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  74
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

;	  1415		TEMP1,
;	  1416		TEMP2,
;	  1417		TEMP3,
;	  1418		R50VAL : VECTOR [4];
;	  1419	
;	  1420	    CEX_LABEL = .CEX_FILE [FILE_LABEL];
;	  1421	    KERNEL_LABEL = .KERNEL_FILE [FILE_LABEL];
;	  1422	!
;	  1423	! FIND THE FLAGS FROM THIS CORE IMAGE, AND CHECK THAT ALL NECESSARY
;	  1424	!  OPTIONS AND NO BAD OPTIONS ARE SELECTED.
;	  1425	!
;	  1426	    FLAGS = GETWRD (.KERNEL_FILE, .VALUES [FMASK]);
;	  1427	!
;	  1428	! VERIFY THAT FE_EXT (22-BIT ADDRESSING) IS CLEAR.
;	  1429	!  ALSO, FE_CEX (COMM EXEC LOADED) SHOULD BE CLEAR.
;	  1430	!
;	  1431	
;	  1432	    IF ((.FLAGS AND .VALUES [FE_EXT]) NEQ 0)
;	  1433	    THEN
;	  1434		ERRMSG (0, 28, ROUTINE_NAME, KERNEL_FILE [FILE_NAME], 0, 0,
;	  1435		    0);
;	  1436	
;	  1437	    IF ((.FLAGS AND .VALUES [FE_CEX]) NEQ 0)
;	  1438	    THEN
;	  1439		ERRMSG (0, 30, ROUTINE_NAME, KERNEL_FILE [FILE_NAME], 0, 0,
;	  1440		    0);
;	  1441	
;	  1442	!
;	  1443	! SINCE WE HAVE NOT REALLY CHECKED OUT PLAS SUPPORT, DONT ALLOW IT.
;	  1444	!
;	  1445	
;	  1446	    IF ((.FLAGS AND .VALUES [FE_PLA]) NEQ 0)
;	  1447	    THEN
;	  1448		ERRMSG (0, 33, ROUTINE_NAME, KERNEL_FILE [FILE_NAME], 0, 0,
;	  1449		    0);
;	  1450	
;	  1451	!
;	  1452	! EXTEND THE EXECUTIVE POOL TO THE BOTTOM OF THE COMM EXEC PARTITION
;	  1453	!
;	  1454	    CEX_BASE = .CEX_LABEL [L$BSA] + (256*.CEX_LABEL [L$BSA + 1]);
;	  1455	    CEX_TOP = .CEX_LABEL [L$BHGV] + (256*.CEX_LABEL [L$BHGV + 1]);
;	  1456	
;	  1457	    IF ((.FLAGS AND .VALUES [FE_EXV]) EQL 0) THEN HIGH_EXEC_ADDR = 16*2048 ELSE HIGH_EXEC_ADDR = 20*2048;
;	  1458	
;	  1459	    IF (.CEX_TOP GTR .HIGH_EXEC_ADDR)
;	  1460	    THEN
;	  1461		ERRMSG (0, 31, ROUTINE_NAME, CEX_FILE [FILE_NAME], .CEX_TOP,
;	  1462		    .HIGH_EXEC_ADDR, 0);
;	  1463	
;	  1464	!
;	  1465	! ROUND THE BASE OF THE EXEC STORAGE POOL UP TO A MULTIPLE OF 4 BYTES
;	  1466	!
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  75
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

;	  1467	    TEMP1 = GETWRD (.KERNEL_FILE, .VALUES [CRAVL]);	!BASE OF POOL
;	  1468	    TEMP2 = GETWRD (.KERNEL_FILE, .TEMP1 + 2);	!CURRENT LENGTH OF POOL
;	  1469	    PUTWRD (.KERNEL_FILE, .TEMP1 + 2, 0);	!CLEAR OLD LENGTH WORD
;	  1470	    TEMP3 = ((.TEMP1 + 3) AND ( NOT 3));	!ROUND UP BASE TO MULT. OF 4
;	  1471	    TEMP2 = .TEMP2 - (.TEMP3 - .TEMP1);		!ADJUST LENGTH WORD
;	  1472	    PUTWRD (.KERNEL_FILE, .VALUES [CRAVL], .TEMP3);	!STORE NEW BASE
;	  1473	    PUTWRD (.KERNEL_FILE, .TEMP3, 0);		!CLEAR NEW POINTER WORD
;	  1474	    PUTWRD (.KERNEL_FILE, .TEMP3 + 2, .TEMP2);	!STORE NEW LENGTH
;	  1475	!
;	  1476	! INCREASE THE SIZE OF THE EXEC
;	  1477	!
;	  1478	    TEMP1 = GETWRD (.KERNEL_FILE, .VALUES [EXSIZ]);	!REMEMBER OLD SIZE
;	  1479	    PUTWRD (.KERNEL_FILE, .VALUES [EXSIZ], .CEX_BASE);	!STORE NEW SIZE
;	  1480	!
;	  1481	! FREE THE NEW SPACE, THUS PLACING IT IN THE EXEC STORAGE POOL
;	  1482	!
;	  1483	    DEACB (.KERNEL_FILE, .TEMP1,
;	  1484		(.CEX_BASE - .TEMP1) AND ( NOT (GETWRD (.KERNEL_FILE, .VALUES [CRAVL] - 2))), .VALUES);
;	  1485	!
;	  1486	! CREATE A PARTITION CONTROL BLOCK
;	  1487	!
;	  1488	    PCB_ADDR = M_PCB (.KERNEL_FILE, UPLIT (%ASCIZ'CEXCOM'), 0, .CEX_BASE, .CEX_TOP, %O'100200',
;	  1489		.VALUES [PS_COM], 0, .VALUES);
;	  1490	!
;	  1491	! NOW COPY THE COMM EXEC INTO THE KERNEL IMAGE
;	  1492	!
;	  1493	
;	  1494	    INCR ADDRESS FROM .CEX_BASE TO .CEX_TOP DO
;	  1495		PUTBYT (.KERNEL_FILE, .ADDRESS, GETBYT (.CEX_FILE, .ADDRESS));
;	  1496	
;	  1497	!
;	  1498	! NOW SET THE BIT IN THE FLAGS WORD WHICH MEANS THAT WE HAVE
;	  1499	!  LOADED THE COMM EXEC.
;	  1500	!
;	  1501	    FLAGS = .FLAGS OR .VALUES [FE_CEX];
;	  1502	    PUTWRD (.KERNEL_FILE, .VALUES [FMASK], .FLAGS);
;	  1503	!
;	  1504	    END;					!OF MCEX


P.ABI:	BYTE	(7)"M","C","E","X",000		; MCEX					403733' 115 103 105 130 000
P.ABJ:	BYTE	(7)"C","E","X","C","O"		; CEXCO					403734' 103 105 130 103 117
	BYTE	(7)"M",000,000,000,000		; M					403735' 115 000 000 000 000


ROUTINE_NAME=	    P.ABI			;						000000	403733'


MCEX::	PUSH	SP,AC0				; SP,AC0				403736' 261 17 0 00 000000		1363
	PUSH	SP,AC10				; SP,AC10				403737' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				403740' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				403741' 261 17 0 00 000012
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  76
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

	PUSH	SP,AC13				; SP,AC13				403742' 261 17 0 00 000013
	PUSH	SP,AC14				; SP,AC14				403743' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				403744' 261 17 0 00 000016
	ADJSP	SP,6				; SP,6					403745' 105 17 0 00 000006
	MOVE	AC13,-17(SP)			; AC13,CEX_FILE				403746' 200 13 0 17 777761		1420
	HRRZ	AC10,17(AC13)			; CEX_LABEL,17(AC13)			403747' 550 10 0 13 000017
	MOVE	AC12,-20(SP)			; AC12,KERNEL_FILE			403750' 200 12 0 17 777760		1421
	HRRZ	AC0,17(AC12)			; KERNEL_LABEL,17(AC12)			403751' 550 00 0 12 000017
	PUSH	SP,AC12				; SP,AC12				403752' 261 17 0 00 000012		1426
	MOVE	AC11,-17(SP)			; AC11,VALUES				403753' 200 11 0 17 777761
	HLRZ	AC0,6(AC11)			; AC0,6(AC11)				403754' 554 00 0 11 000006
	PUSH	SP,AC0				; SP,AC0				403755' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				403756' 260 17 0 00 000000*
	MOVEM	AC1,-3(SP)			; AC1,FLAGS				403757' 202 01 0 17 777775
	HLRZ	AC0,23(AC11)			; AC0,23(AC11)				403760' 554 00 0 11 000023		1432
	TDNN	AC0,-3(SP)			; AC0,FLAGS				403761' 616 00 0 17 777775
	JRST	L.119				; L.119					403762' 254 00 0 00 403776'
	SETZM	0(SP)				; 0(SP)					403763' 402 00 0 17 000000		1434
	PUSH	SP,C.58				; SP,[34]				403764' 261 17 0 00 404235'
	PUSH	SP,C.59				; SP,[0,,ROUTINE_NAME]			403765' 261 17 0 00 404236'
	MOVE	AC0,AC12			; AC0,AC12				403766' 200 00 0 00 000012
	ADDI	AC0,2				; AC0,2					403767' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				403770' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				403771' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				403772' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				403773' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				403774' 260 17 0 00 000000*
	ADJSP	SP,-6				; SP,-6					403775' 105 17 0 00 777772
L.119:	HRRZ	AC0,30(AC11)			; AC0,30(AC11)				403776' 550 00 0 11 000030		1437
	TDNN	AC0,-3(SP)			; AC0,FLAGS				403777' 616 00 0 17 777775
	JRST	L.120				; L.120					404000' 254 00 0 00 404014'
	SETZM	0(SP)				; 0(SP)					404001' 402 00 0 17 000000		1439
	PUSH	SP,C.60				; SP,[36]				404002' 261 17 0 00 404237'
	PUSH	SP,C.59				; SP,[0,,ROUTINE_NAME]			404003' 261 17 0 00 404236'
	MOVE	AC0,AC12			; AC0,AC12				404004' 200 00 0 00 000012
	ADDI	AC0,2				; AC0,2					404005' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				404006' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404007' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				404010' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				404011' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				404012' 260 17 0 00 000000*
	ADJSP	SP,-6				; SP,-6					404013' 105 17 0 00 777772
L.120:	HLRZ	AC0,25(AC11)			; AC0,25(AC11)				404014' 554 00 0 11 000025		1446
	TDNN	AC0,-3(SP)			; AC0,FLAGS				404015' 616 00 0 17 777775
	JRST	L.121				; L.121					404016' 254 00 0 00 404032'
	SETZM	0(SP)				; 0(SP)					404017' 402 00 0 17 000000		1448
	PUSH	SP,C.61				; SP,[41]				404020' 261 17 0 00 404240'
	PUSH	SP,C.59				; SP,[0,,ROUTINE_NAME]			404021' 261 17 0 00 404236'
	MOVE	AC0,AC12			; AC0,AC12				404022' 200 00 0 00 000012
	ADDI	AC0,2				; AC0,2					404023' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				404024' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404025' 261 17 0 00 400475'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  77
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

	PUSH	SP,C.6				; SP,[0]				404026' 261 17 0 00 400475'
	PUSH	SP,C.6				; SP,[0]				404027' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				404030' 260 17 0 00 000000*
	ADJSP	SP,-6				; SP,-6					404031' 105 17 0 00 777772
L.121:	MOVE	AC0,11(AC10)			; AC0,11(CEX_LABEL)			404032' 200 00 0 10 000011		1454
	IMULI	AC0,400				; AC0,400				404033' 221 00 0 00 000400
	ADD	AC0,10(AC10)			; AC0,10(CEX_LABEL)			404034' 270 00 0 10 000010
	MOVEM	AC0,-2(SP)			; AC0,CEX_BASE				404035' 202 00 0 17 777776
	MOVE	AC0,13(AC10)			; AC0,13(CEX_LABEL)			404036' 200 00 0 10 000013		1455
	IMULI	AC0,400				; AC0,400				404037' 221 00 0 00 000400
	MOVE	AC16,AC0			; CEX_TOP,AC0				404040' 200 16 0 00 000000
	ADD	AC16,12(AC10)			; CEX_TOP,12(CEX_LABEL)			404041' 270 16 0 10 000012
	HLRZ	AC0,24(AC11)			; AC0,24(AC11)				404042' 554 00 0 11 000024		1457
	TDNE	AC0,-3(SP)			; AC0,FLAGS				404043' 612 00 0 17 777775
	JRST	L.122				; L.122					404044' 254 00 0 00 404047'
	MOVEI	AC0,100000			; HIGH_EXEC_ADDR,100000			404045' 201 00 0 00 100000
	JRST	L.123				; L.123					404046' 254 00 0 00 404050'
L.122:	MOVEI	AC0,120000			; HIGH_EXEC_ADDR,120000			404047' 201 00 0 00 120000
L.123:	CAMG	AC16,AC0			; CEX_TOP,HIGH_EXEC_ADDR		404050' 317 16 0 00 000000		1459
	JRST	L.124				; L.124					404051' 254 00 0 00 404065'
	SETZM	0(SP)				; 0(SP)					404052' 402 00 0 17 000000		1461
	PUSH	SP,C.62				; SP,[37]				404053' 261 17 0 00 404241'
	PUSH	SP,C.59				; SP,[0,,ROUTINE_NAME]			404054' 261 17 0 00 404236'
	MOVE	AC1,AC13			; AC1,AC13				404055' 200 01 0 00 000013
	ADDI	AC1,2				; AC1,2					404056' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404057' 261 17 0 00 000001
	PUSH	SP,AC16				; SP,CEX_TOP				404060' 261 17 0 00 000016
	PUSH	SP,AC0				; SP,HIGH_EXEC_ADDR			404061' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404062' 261 17 0 00 400475'
	PUSHJ	SP,ERRMSG			; SP,ERRMSG				404063' 260 17 0 00 000000*
	ADJSP	SP,-6				; SP,-6					404064' 105 17 0 00 777772
L.124:	MOVEM	AC12,0(SP)			; AC12,0(SP)				404065' 202 12 0 17 000000		1467
	HLRZ	AC0,5(AC11)			; AC0,5(AC11)				404066' 554 00 0 11 000005
	PUSH	SP,AC0				; SP,AC0				404067' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				404070' 260 17 0 00 000000*
	MOVE	AC10,AC1			; TEMP1,AC1				404071' 200 10 0 00 000001
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404072' 202 12 0 17 000000		1468
	MOVE	AC0,AC10			; AC0,TEMP1				404073' 200 00 0 00 000010
	ADDI	AC0,2				; AC0,2					404074' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,AC0				404075' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				404076' 260 17 0 00 000000*
	MOVE	AC14,AC1			; TEMP2,AC1				404077' 200 14 0 00 000001
	MOVEM	AC12,-2(SP)			; AC12,-2(SP)				404100' 202 12 0 17 777776		1469
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				404101' 202 00 0 17 777777
	SETZM	0(SP)				; 0(SP)					404102' 402 00 0 17 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404103' 260 17 0 00 000000*
	MOVE	AC1,AC10			; AC1,TEMP1				404104' 200 01 0 00 000010		1470
	ADDI	AC1,3				; AC1,3					404105' 271 01 0 00 000003
	MOVE	AC0,AC1				; TEMP3,AC1				404106' 200 00 0 00 000001
	TRZ	AC0,3				; TEMP3,3				404107' 620 00 0 00 000003
	MOVE	AC1,AC10			; AC1,TEMP1				404110' 200 01 0 00 000010		1471
	SUB	AC1,AC0				; AC1,TEMP3				404111' 274 01 0 00 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  78
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

	ADD	AC14,AC1			; TEMP2,AC1				404112' 270 14 0 00 000001
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404113' 202 12 0 17 000000		1472
	HLRZ	AC1,5(AC11)			; AC1,5(AC11)				404114' 554 01 0 11 000005
	PUSH	SP,AC1				; SP,AC1				404115' 261 17 0 00 000001
	PUSH	SP,AC0				; SP,TEMP3				404116' 261 17 0 00 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404117' 260 17 0 00 000000*
	MOVEM	AC12,-2(SP)			; AC12,-2(SP)				404120' 202 12 0 17 777776		1473
	MOVEM	AC0,-1(SP)			; TEMP3,-1(SP)				404121' 202 00 0 17 777777
	SETZM	0(SP)				; 0(SP)					404122' 402 00 0 17 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404123' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404124' 202 12 0 17 000000		1474
	ADDI	AC0,2				; TEMP3,2				404125' 271 00 0 00 000002
	PUSH	SP,AC0				; SP,TEMP3				404126' 261 17 0 00 000000
	PUSH	SP,AC14				; SP,TEMP2				404127' 261 17 0 00 000014
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404130' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404131' 202 12 0 17 000000		1478
	HRRZ	AC0,6(AC11)			; AC0,6(AC11)				404132' 550 00 0 11 000006
	PUSH	SP,AC0				; SP,AC0				404133' 261 17 0 00 000000
	PUSHJ	SP,GETWRD			; SP,GETWRD				404134' 260 17 0 00 000000*
	MOVE	AC10,AC1			; TEMP1,AC1				404135' 200 10 0 00 000001
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404136' 202 12 0 17 000000		1479
	HRRZ	AC0,6(AC11)			; AC0,6(AC11)				404137' 550 00 0 11 000006
	PUSH	SP,AC0				; SP,AC0				404140' 261 17 0 00 000000
	PUSH	SP,-12(SP)			; SP,CEX_BASE				404141' 261 17 0 17 777766
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404142' 260 17 0 00 000000*
	MOVEM	AC12,-1(SP)			; AC12,-1(SP)				404143' 202 12 0 17 777777		1483
	MOVEM	AC10,0(SP)			; TEMP1,0(SP)				404144' 202 10 0 17 000000
	MOVE	AC0,-13(SP)			; AC0,CEX_BASE				404145' 200 00 0 17 777765		1484
	SUB	AC0,AC10			; AC0,TEMP1				404146' 274 00 0 00 000010
	PUSH	SP,AC12				; SP,AC12				404147' 261 17 0 00 000012
	HLRZ	AC1,5(AC11)			; AC1,5(AC11)				404150' 554 01 0 11 000005
	SUBI	AC1,2				; AC1,2					404151' 275 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404152' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404153' 260 17 0 00 000000*
	ANDCM	AC0,AC1				; AC0,AC1				404154' 420 00 0 00 000001
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				404155' 202 00 0 17 777777
	ADJSP	SP,-1				; SP,-1					404156' 105 17 0 00 777777
	PUSH	SP,AC11				; SP,AC11				404157' 261 17 0 00 000011		1483
	PUSHJ	SP,DEACB			; SP,DEACB				404160' 260 17 0 00 000000*
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404161' 202 12 0 17 000000		1488
	PUSH	SP,C.63				; SP,[0,,P.ABJ]				404162' 261 17 0 00 404242'
	PUSH	SP,C.6				; SP,[0]				404163' 261 17 0 00 400475'
	PUSH	SP,-17(SP)			; SP,CEX_BASE				404164' 261 17 0 17 777761
	PUSH	SP,AC16				; SP,CEX_TOP				404165' 261 17 0 00 000016
	PUSH	SP,C.64				; SP,[100200]				404166' 261 17 0 00 404243'
	HLRZ	AC0,35(AC11)			; AC0,35(AC11)				404167' 554 00 0 11 000035
	PUSH	SP,AC0				; SP,AC0				404170' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404171' 261 17 0 00 400475'
	PUSH	SP,AC11				; SP,AC11				404172' 261 17 0 00 000011
	PUSHJ	SP,M_PCB			; SP,M_PCB				404173' 260 17 0 00 000000*
	MOVE	AC0,-25(SP)			; ADDRESS,CEX_BASE			404174' 200 00 0 17 777753		1494
	SOJA	AC0,L.126			; ADDRESS,L.126				404175' 364 00 0 00 404207'
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  79
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (9)

L.125:	MOVEM	AC12,-1(SP)			; AC12,-1(SP)				404176' 202 12 0 17 777777		1495
	MOVEM	AC0,0(SP)			; ADDRESS,0(SP)				404177' 202 00 0 17 000000
	PUSH	SP,AC13				; SP,AC13				404200' 261 17 0 00 000013
	PUSH	SP,AC0				; SP,ADDRESS				404201' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				404202' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					404203' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404204' 202 01 0 17 000000
	PUSHJ	SP,PUTBYT			; SP,PUTBYT				404205' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					404206' 105 17 0 00 777777
L.126:	ADDI	AC0,1				; ADDRESS,1				404207' 271 00 0 00 000001		1494
	CAMG	AC0,AC16			; ADDRESS,CEX_TOP			404210' 317 00 0 00 000016
	JRST	L.125				; L.125					404211' 254 00 0 00 404176'
	MOVE	AC0,-26(SP)			; AC0,FLAGS				404212' 200 00 0 17 777752		1501
	HRRZ	AC1,30(AC11)			; AC1,30(AC11)				404213' 550 01 0 11 000030
	IOR	AC0,AC1				; AC0,AC1				404214' 434 00 0 00 000001
	MOVEM	AC0,-26(SP)			; AC0,FLAGS				404215' 202 00 0 17 777752
	MOVEM	AC12,0(SP)			; AC12,0(SP)				404216' 202 12 0 17 000000		1502
	HLRZ	AC0,6(AC11)			; AC0,6(AC11)				404217' 554 00 0 11 000006
	PUSH	SP,AC0				; SP,AC0				404220' 261 17 0 00 000000
	PUSH	SP,-27(SP)			; SP,FLAGS				404221' 261 17 0 17 777751
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404222' 260 17 0 00 000000*
	ADJSP	SP,-27				; SP,-27				404223' 105 17 0 00 777751		1397
	ADJSP	SP,-6				; SP,-6					404224' 105 17 0 00 777772		1363
	POP	SP,AC16				; SP,AC16				404225' 262 17 0 00 000016
	POP	SP,AC14				; SP,AC14				404226' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				404227' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				404230' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				404231' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				404232' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				404233' 262 17 0 00 000000
	POPJ	SP,				; SP,					404234' 263 17 0 00 000000
C.58:	EXP	34				; 34					404235' 000000	000034
C.59:	XWD	0,ROUTINE_NAME			; 0,ROUTINE_NAME			404236' 000000	403733'
C.60:	EXP	36				; 36					404237' 000000	000036
C.61:	EXP	41				; 41					404240' 000000	000041
C.62:	EXP	37				; 37					404241' 000000	000037
C.63:	XWD	0,P.ABJ				; 0,P.ABJ				404242' 000000	403734'
C.64:	EXP	100200				; 100200				404243' 000000	100200

; Routine Size:  198 words


;	  1505	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  80
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (10)

;	  1506	ROUTINE ALOC_POOL (KERNEL_FILE, AMOUNT, DUMMY, DUMMY2) = 	!ALLOCATE FROM POOL PARTITION
;	  1507	
;	  1508	!++
;	  1509	! FUNCTIONAL DESCRIPTION:
;	  1510	!
;	  1511	!	ALLOCATE "AMOUNT" BYTES FROM THE CEXDAT PARTITION
;	  1512	!
;	  1513	! FORMAL PARAMETERS:
;	  1514	!
;	  1515	!	KERNEL_FILE - THE RSX KERNEL
;	  1516	!	AMOUNT - THE NUMBER OF BYTES TO ALLOCATE
;	  1517	!	DUMMY - Dummy Parameter to Make CALL look like ALOCB Routine
;	  1518	!	DUMMY2 - Dummy Parameter to Make CALL look like ALOCB Routine
;	  1519	!
;	  1520	! IMPLICIT INPUTS:
;	  1521	!
;	  1522	!	FILE_HWM for KERNEL_FILE
;	  1523	!
;	  1524	! IMPLICIT OUTPUTS:
;	  1525	!
;	  1526	!	NONE
;	  1527	!
;	  1528	! ROUTINE VALUE:
;	  1529	!
;	  1530	!	Address of start of allocated area
;	  1531	!
;	  1532	! SIDE EFFECTS
;	  1533	!
;	  1534	!	Expands the size of the SYSTEM image
;	  1535	!
;	  1536	!--
;	  1537	
;	  1538	    BEGIN
;	  1539	
;	  1540	    BIND
;	  1541		ROUTINE_NAME = UPLIT (%ASCIZ'ALLOCATE_FROM_POOL');
;	  1542	
;	  1543	    MAP
;	  1544		KERNEL_FILE : REF FILE_BLOCK;
;	  1545	
;	  1546	    LOCAL
;	  1547		REAL_AMOUNT,
;	  1548		RESULT;
;	  1549	
;	  1550	!
;	  1551	! Round amount to two word boundary
;	  1552	!
;	  1553	    REAL_AMOUNT = (.AMOUNT + 3) AND ( NOT 3);
;	  1554	!
;	  1555	! Allocate by Moving the KERNEL_FILE's High Water Mark
;	  1556	!
;	  1557	    RESULT = .KERNEL_FILE [FILE_HWM];
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  81
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (10)

;	  1558	    KERNEL_FILE [FILE_HWM] = .KERNEL_FILE [FILE_HWM] + .REAL_AMOUNT;
;	  1559	!
;	  1560	    .RESULT
;	  1561	    END;					!OF ALOC_POOL


P.ABK:	BYTE	(7)"A","L","L","O","C"		; ALLOC					404244' 101 114 114 117 103
	BYTE	(7)"A","T","E","_","F"		; ATE_F					404245' 101 124 105 137 106
	BYTE	(7)"R","O","M","_","P"		; ROM_P					404246' 122 117 115 137 120
	BYTE	(7)"O","O","L",000,000		; OOL					404247' 117 117 114 000 000


ROUTINE_NAME=	    P.ABK			;						000000	404244'


ALOC_POOL:
	MOVE	AC1,-3(SP)			; AC1,AMOUNT				404250' 200 01 0 17 777775		1553
	ADDI	AC1,3				; AC1,3					404251' 271 01 0 00 000003
	MOVE	AC3,AC1				; REAL_AMOUNT,AC1			404252' 200 03 0 00 000001
	TRZ	AC3,3				; REAL_AMOUNT,3				404253' 620 03 0 00 000003
	MOVE	AC2,-4(SP)			; AC2,KERNEL_FILE			404254' 200 02 0 17 777774		1557
	MOVE	AC1,16(AC2)			; RESULT,16(AC2)			404255' 200 01 0 02 000016
	ADDM	AC3,16(AC2)			; REAL_AMOUNT,16(AC2)			404256' 272 03 0 02 000016		1558
	POPJ	SP,				; SP,					404257' 263 17 0 00 000000		1506

; Routine Size:  8 words


;	  1562	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  82
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

;	  1563	GLOBAL ROUTINE LD_DCB (KERNEL_FILE, FILE_CHAN, PCB_ADDR, DEV_NAME, VALUES) =
;	  1564	    !BUILD A DCB FOR AN LLC
;	  1565	
;	  1566	!++
;	  1567	! FUNCTIONAL DESCRIPTION
;	  1568	!
;	  1569	! 	ALLOCATE AND INSERT A DCB FOR A PARTICULAR LLC.
;	  1570	!
;	  1571	! FORMAL PARAMETERS:
;	  1572	!
;	  1573	!	KERNEL_FILE - POINTER TO FILE THAT HOLDS THE KERNAL IMAGE
;	  1574	!	FILE_CHAN - CHANNEL FOR PERFORMING I/O AT THIS LEVEL
;	  1575	!	PCB_ADDR - PDP-11 ADDRESS OF PCB FOR THIS LLC
;	  1576	!	DEV_NAME - LOCATION CONTAINING 2 CHARACTER DEVICE NAME
;	  1577	!	VALUES - BLOCK OF LOTS OF GOOD THAINGS FOR VNP20
;	  1578	!
;	  1579	! IMPLICIT INPUTS:
;	  1580	!
;	  1581	!	NONE
;	  1582	!
;	  1583	! IMPLICIT OUTPUTS:
;	  1584	!
;	  1585	!	NONE
;	  1586	!
;	  1587	! ROUTINE VALUE:
;	  1588	!
;	  1589	!	NONE
;	  1590	!
;	  1591	! SIDE EFFECTS
;	  1592	!
;	  1593	!	THE KERNEL IS MODIFIED
;	  1594	!
;	  1595	!--
;	  1596	
;	  1597	    BEGIN
;	  1598	
;	  1599	    BIND
;	  1600		ROUTINE_NAME = UPLIT (%ASCIZ'LD_DCB');
;	  1601	
;	  1602	    MAP
;	  1603		KERNEL_FILE : REF FILE_BLOCK,
;	  1604		VALUES : REF VNPVAL_BLOCK;
;	  1605	
;	  1606	    LOCAL
;	  1607		LOC,
;	  1608		DCB_FILE : REF FILE_BLOCK,
;	  1609		DCB_NAME : VECTOR [CH$ALLOCATION (7)],
;	  1610		XXBEG,
;	  1611		XXEND,
;	  1612		DCB_DATA_ADDR,
;	  1613		DCB_ADDR,
;	  1614		LAST_DCB_ADDR,
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  83
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

;	  1615		UCB_ADDR,
;	  1616		FIRST_UCB_ADDR,
;	  1617		UCB_LENGTH,
;	  1618		SCB_ADDR,
;	  1619		LAST_SCB_ADDR,
;	  1620		NUNITS,
;	  1621		MODU_PTR : REF MODU_BLOCK;
;	  1622	
;	  1623	!
;	  1624	! GET FILE BLOCK TO READ IN FILE
;	  1625	!
;	  1626	    DCB_FILE = GETBLK (FILE_TYP, FILE_LEN);
;	  1627	!
;	  1628	! Tell someone what we are doing
;	  1629	!
;	  1630	    OUTSTR (0, UPLIT (%ASCIZ'[Loading Device '));
;	  1631	    OUTSTR (0, DEV_NAME);
;	  1632	    OUTSTR (0, UPLIT (%ASCIZ':	--> '));
;	  1633	!
;	  1634	! SETUP FILENAME AS ??TAB
;	  1635	!
;	  1636	    CH$COPY (2, CH$PTR (DEV_NAME), 3, CH$PTR (UPLIT (%ASCIZ'TAB')), 0, 6, CH$PTR (DCB_FILE [FILE_NAME]));
;	  1637	!
;	  1638	! READ IN THE CORE FILE AND SYMBOL TABLE
;	  1639	!
;	  1640	    RSTB (.FILE_CHAN, .DCB_FILE);
;	  1641	    RCOR (.DCB_FILE, .FILE_CHAN, 2*1024);
;	  1642	!
;	  1643	    MODU_PTR = .DCB_FILE [FILE_MODU];
;	  1644	    OUTSTR (0, MODU_PTR [MODU_NAME]);
;	  1645	    OUTPUT (0, %C' ');
;	  1646	    OUTSTR (0, MODU_PTR [MODU_IDENT]);
;	  1647	    OUTSTR (0, UPLIT (%ASCIZ' ]'));
;	  1648	    PCRLF (0);
;	  1649	!
;	  1650	! NOW LOOK UP THE STARTING AND ENDING SYMBOLS FOR COPYING
;	  1651	!
;	  1652	    CH$COPY (1, CH$PTR (UPLIT (%ASCIZ'$')), 2, CH$PTR (DEV_NAME), 0, 7, CH$PTR (DCB_NAME));
;	  1653	    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'DAT')), CH$PTR (DCB_NAME, 3));
;	  1654	    XXBEG = SYM_VAL (.DCB_FILE, DCB_NAME, 0);
;	  1655	    CH$MOVE (3, CH$PTR (UPLIT (%ASCIZ'END')), CH$PTR (DCB_NAME, 3));
;	  1656	    XXEND = SYM_VAL (.DCB_FILE, DCB_NAME, 0);
;	  1657	!
;	  1658	! ALLOCATE THE DCB STRUCTURES
;	  1659	!
;	  1660	    DCB_DATA_ADDR = ALOCB (.KERNEL_FILE, .XXEND - .XXBEG, 1, .VALUES);
;	  1661	!
;	  1662	! COPY IN THE DATA STRUCTURE
;	  1663	!
;	  1664	
;	  1665	    INCR COUNTER FROM .XXBEG TO .XXEND - 1 DO
;	  1666		PUTBYT (.KERNEL_FILE, .DCB_DATA_ADDR + .COUNTER - .XXBEG, GETBYT (.DCB_FILE, .COUNTER));
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  84
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

;	  1667	
;	  1668	!
;	  1669	! NOW RELOCATE SOME OF THE DATA STRUCTURE LOCATIONS
;	  1670	!
;	  1671	!
;	  1672	! PROCESS EACH DCB, WITH ITS UCBS AND SCBS.
;	  1673	!
;	  1674	    SCB_ADDR = 0;
;	  1675	    DCB_ADDR = .DCB_DATA_ADDR;
;	  1676	
;	  1677	    WHILE (.DCB_ADDR NEQ 0) DO
;	  1678		BEGIN
;	  1679		LAST_DCB_ADDR = .DCB_ADDR;
;	  1680	!
;	  1681	! COMPUTE THE NUMBER OF UNITS AND THE LENGTH OF EACH UCB
;	  1682	!
;	  1683		NUNITS = GETBYT (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_UNIT] + 1) - GETBYT (.KERNEL_FILE,
;	  1684		    .DCB_ADDR + .VALUES [D_UNIT]) + 1;
;	  1685		UCB_LENGTH = GETWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_UCBL]);
;	  1686	!
;	  1687	! RELOCATE THE DCB, UCB AND SCB.
;	  1688	!
;	  1689		FIRST_UCB_ADDR = GETWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_UCB]) - .XXBEG + .DCB_ADDR;
;	  1690		PUTWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_UCB], .FIRST_UCB_ADDR);
;	  1691		PUTWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_PCB], .PCB_ADDR);
;	  1692	
;	  1693		INCR COUNTER FROM 0 TO .NUNITS - 1 DO
;	  1694		    BEGIN				!EACH UCB
;	  1695		    UCB_ADDR = .FIRST_UCB_ADDR + (.UCB_LENGTH*.COUNTER);
;	  1696		    PUTWRD (.KERNEL_FILE, .UCB_ADDR + .VALUES [U_DCB],
;	  1697			GETWRD (.KERNEL_FILE,
;	  1698			    .UCB_ADDR + .VALUES [U_DCB]) - .XXBEG + .DCB_ADDR);
;	  1699		    PUTWRD (.KERNEL_FILE, .UCB_ADDR + .VALUES [U_RED],
;	  1700			GETWRD (.KERNEL_FILE,
;	  1701			    .UCB_ADDR + .VALUES [U_RED]) - .XXBEG + .DCB_ADDR);
;	  1702		    LAST_SCB_ADDR = .SCB_ADDR;
;	  1703		    SCB_ADDR = GETWRD (.KERNEL_FILE, .UCB_ADDR + .VALUES [U_SCB]) - .XXBEG + .DCB_ADDR;
;	  1704		    PUTWRD (.KERNEL_FILE, .UCB_ADDR + .VALUES [U_SCB], .SCB_ADDR);
;	  1705	
;	  1706		    IF (.SCB_ADDR NEQ .LAST_SCB_ADDR)
;	  1707		    THEN
;	  1708			BEGIN
;	  1709			PUTWRD (.KERNEL_FILE, .SCB_ADDR + .VALUES [S_LHD] + 2,
;	  1710			    GETWRD (.KERNEL_FILE,
;	  1711				.SCB_ADDR + .VALUES [S_LHD] + 2) - .XXBEG + .DCB_ADDR);
;	  1712			END;
;	  1713	
;	  1714		    END;
;	  1715	
;	  1716		DCB_ADDR = GETWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_LNK]);
;	  1717		END;
;	  1718	
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  85
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

;	  1719	!
;	  1720	! LINK THE DCB INTO THE SYSTEM'S LIST OF DCBS
;	  1721	!
;	  1722	    LNKDCB (.KERNEL_FILE, .DCB_DATA_ADDR, .VALUES);
;	  1723	!
;	  1724	! If this is for the CE: Device then we special case and store the data
;	  1725	! base address for use in loading other processes.
;	  1726	!
;	  1727	
;	  1728	    IF (CH$EQL (2, CH$PTR (DEV_NAME), 2, CH$PTR (UPLIT (%ASCIZ'CE')), 0))
;	  1729	    THEN
;	  1730		BEGIN
;	  1731		VALUES [CE_DATA_BASE] = .DCB_DATA_ADDR;
;	  1732		VALUES [CE_DATA_FILE] = .DCB_FILE;
;	  1733		END
;	  1734	    ELSE
;	  1735	!
;	  1736	! FREE SOME DATA STRUCTURES
;	  1737	!
;	  1738		FCOR (.DCB_FILE);
;	  1739	
;	  1740	!
;	  1741	! Return Address of Start of Data Base
;	  1742	!
;	  1743	    .DCB_DATA_ADDR
;	  1744	    END;					!OF LD_DCB


P.ABL:	BYTE	(7)"L","D","_","D","C"		; LD_DC					404260' 114 104 137 104 103
	BYTE	(7)"B",000,000,000,000		; B					404261' 102 000 000 000 000
P.ABM:	BYTE	(7)"[","L","o","a","d"		; [Load					404262' 133 114 157 141 144
	BYTE	(7)"i","n","g"," ","D"		; ing D					404263' 151 156 147 040 104
	BYTE	(7)"e","v","i","c","e"		; evice					404264' 145 166 151 143 145
	BYTE	(7)" ",000,000,000,000		;					404265' 040 000 000 000 000
P.ABN:	BYTE	(7)":",011,"-","-",">"		; : -->					404266' 072 011 055 055 076
	BYTE	(7)" ",000,000,000,000		;					404267' 040 000 000 000 000
P.ABO:	BYTE	(7)"T","A","B",000,000		; TAB					404270' 124 101 102 000 000
P.ABP:	BYTE	(7)" ","]",000,000,000		;  ]					404271' 040 135 000 000 000
P.ABQ:	BYTE	(7)"$",000,000,000,000		; $					404272' 044 000 000 000 000
P.ABR:	BYTE	(7)"D","A","T",000,000		; DAT					404273' 104 101 124 000 000
P.ABS:	BYTE	(7)"E","N","D",000,000		; END					404274' 105 116 104 000 000
P.ABT:	BYTE	(7)"C","E",000,000,000		; CE					404275' 103 105 000 000 000


ROUTINE_NAME=	    P.ABL			;						000000	404260'


LD_DCB::PUSH	SP,AC0				; SP,AC0				404276' 261 17 0 00 000000		1563
	PUSH	SP,AC10				; SP,AC10				404277' 261 17 0 00 000010
	PUSH	SP,AC11				; SP,AC11				404300' 261 17 0 00 000011
	PUSH	SP,AC12				; SP,AC12				404301' 261 17 0 00 000012
	PUSH	SP,AC13				; SP,AC13				404302' 261 17 0 00 000013
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  86
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	PUSH	SP,AC14				; SP,AC14				404303' 261 17 0 00 000014
	PUSH	SP,AC16				; SP,AC16				404304' 261 17 0 00 000016
	ADJSP	SP,20				; SP,20					404305' 105 17 0 00 000020
	PUSH	SP,C.8				; SP,[3]				404306' 261 17 0 00 400477'		1626
	PUSH	SP,C.9				; SP,[20]				404307' 261 17 0 00 400500'
	PUSHJ	SP,GETBLK			; SP,GETBLK				404310' 260 17 0 00 000000*
	MOVEM	AC1,-10(SP)			; AC1,DCB_FILE				404311' 202 01 0 17 777770
	SETZM	0(SP)				; 0(SP)					404312' 402 00 0 17 000000		1630
	PUSH	SP,C.66				; SP,[0,,P.ABM]				404313' 261 17 0 00 405022'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404314' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404315' 402 00 0 17 000000		1631
	MOVEI	AC0,-34(SP)			; AC0,DEV_NAME				404316' 201 00 0 17 777744
	PUSH	SP,AC0				; SP,AC0				404317' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404320' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404321' 402 00 0 17 000000		1632
	PUSH	SP,C.67				; SP,[0,,P.ABN]				404322' 261 17 0 00 405023'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404323' 260 17 0 00 000000*
	MOVEI	AC2,-37(SP)			; AC2,DEV_NAME-1			404324' 201 02 0 17 777741		1636
	HRLI	AC2,10700			; AC2,10700				404325' 505 02 0 00 010700
	MOVEI	AC0,6				; AC0,6					404326' 201 00 0 00 000006
	MOVE	AC1,-13(SP)			; AC1,DCB_FILE				404327' 200 01 0 17 777765
	MOVEI	AC5,1(AC1)			; AC5,1(AC1)				404330' 201 05 0 01 000001
	HRLI	AC5,10700			; AC5,10700				404331' 505 05 0 00 010700
	MOVEI	AC1,2				; AC1,2					404332' 201 01 0 00 000002
	MOVE	AC4,AC0				; AC4,AC0				404333' 200 04 0 00 000000
	CAML	AC4,AC1				; AC4,AC1				404334' 311 04 0 00 000001
	MOVE	AC4,AC1				; AC4,AC1				404335' 200 04 0 00 000001
	SUB	AC0,AC4				; AC0,AC4				404336' 274 00 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				404337' 123 01 0 00 400470'
	JFCL					; 					404340' 255 00 0 00 000000
	JUMPLE	AC0,L.127			; AC0,L.127				404341' 323 00 0 00 404347'
	MOVEI	AC1,3				; AC1,3					404342' 201 01 0 00 000003
	MOVE	AC2,C.68			; AC2,[POINT 7,P.ABO-1,34]  <1,7>	404343' 200 02 0 00 405024'
	MOVE	AC4,AC0				; AC4,AC0				404344' 200 04 0 00 000000
	EXTEND	AC1,C.3				; AC1,C.3				404345' 123 01 0 00 400471'
	JFCL					; 					404346' 255 00 0 00 000000
L.127:	PUSH	SP,-40(SP)			; SP,FILE_CHAN				404347' 261 17 0 17 777740		1640
	PUSH	SP,-14(SP)			; SP,DCB_FILE				404350' 261 17 0 17 777764
	PUSHJ	SP,RSTB				; SP,RSTB				404351' 260 17 0 00 000000*
	MOVE	AC0,-15(SP)			; AC0,DCB_FILE				404352' 200 00 0 17 777763		1641
	MOVEM	AC0,0(SP)			; AC0,0(SP)				404353' 202 00 0 17 000000
	PUSH	SP,-42(SP)			; SP,FILE_CHAN				404354' 261 17 0 17 777736
	PUSH	SP,C.69				; SP,[4000]				404355' 261 17 0 00 405025'
	PUSHJ	SP,RCOR				; SP,RCOR				404356' 260 17 0 00 000000*
	MOVE	AC1,-17(SP)			; AC1,DCB_FILE				404357' 200 01 0 17 777761		1643
	HRRZ	AC0,14(AC1)			; MODU_PTR,14(AC1)			404360' 550 00 0 01 000014
	SETZM	0(SP)				; 0(SP)					404361' 402 00 0 17 000000		1644
	MOVE	AC1,AC0				; AC1,MODU_PTR				404362' 200 01 0 00 000000
	ADDI	AC1,1				; AC1,1					404363' 271 01 0 00 000001
	PUSH	SP,AC1				; SP,AC1				404364' 261 17 0 00 000001
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404365' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404366' 402 00 0 17 000000		1645
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  87
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	PUSH	SP,C.16				; SP,[40]				404367' 261 17 0 00 400507'
	PUSHJ	SP,OUTPUT			; SP,OUTPUT				404370' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404371' 402 00 0 17 000000		1646
	ADDI	AC0,3				; MODU_PTR,3				404372' 271 00 0 00 000003
	PUSH	SP,AC0				; SP,MODU_PTR				404373' 261 17 0 00 000000
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404374' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404375' 402 00 0 17 000000		1647
	PUSH	SP,C.70				; SP,[0,,P.ABP]				404376' 261 17 0 00 405026'
	PUSHJ	SP,OUTSTR			; SP,OUTSTR				404377' 260 17 0 00 000000*
	SETZM	0(SP)				; 0(SP)					404400' 402 00 0 17 000000		1648
	PUSHJ	SP,PCRLF			; SP,PCRLF				404401' 260 17 0 00 000000*
	MOVEI	AC0,-47(SP)			; AC0,DEV_NAME-1			404402' 201 00 0 17 777731		1652
	HRLI	AC0,10700			; AC0,10700				404403' 505 00 0 00 010700
	MOVEI	AC3,7				; AC3,7					404404' 201 03 0 00 000007
	MOVEI	AC5,-35(SP)			; AC5,DCB_NAME-1			404405' 201 05 0 17 777743
	HRLI	AC5,10700			; AC5,10700				404406' 505 05 0 00 010700
	MOVEI	AC1,1				; AC1,1					404407' 201 01 0 00 000001
	MOVE	AC2,C.71			; AC2,[POINT 7,P.ABQ-1,34]  <1,7>	404410' 200 02 0 00 405027'
	MOVE	AC4,AC3				; AC4,AC3				404411' 200 04 0 00 000003
	CAML	AC4,AC1				; AC4,AC1				404412' 311 04 0 00 000001
	MOVE	AC4,AC1				; AC4,AC1				404413' 200 04 0 00 000001
	SUB	AC3,AC4				; AC3,AC4				404414' 274 03 0 00 000004
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				404415' 123 01 0 00 400470'
	JFCL					; 					404416' 255 00 0 00 000000
	JUMPLE	AC3,L.128			; AC3,L.128				404417' 323 03 0 00 404425'
	MOVEI	AC1,2				; AC1,2					404420' 201 01 0 00 000002
	MOVE	AC2,AC0				; AC2,AC0				404421' 200 02 0 00 000000
	MOVE	AC4,AC3				; AC4,AC3				404422' 200 04 0 00 000003
	EXTEND	AC1,C.3				; AC1,C.3				404423' 123 01 0 00 400471'
	JFCL					; 					404424' 255 00 0 00 000000
L.128:	MOVEI	AC5,-34(SP)			; AC5,DCB_NAME				404425' 201 05 0 17 777744		1653
	HRLI	AC5,170700			; AC5,170700				404426' 505 05 0 00 170700
	MOVEI	AC1,3				; AC1,3					404427' 201 01 0 00 000003
	MOVE	AC2,C.72			; AC2,[POINT 7,P.ABR-1,34]  <1,7>	404430' 200 02 0 00 405030'
	MOVEI	AC4,3				; AC4,3					404431' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				404432' 123 01 0 00 400470'
	JFCL					; 					404433' 255 00 0 00 000000
	MOVE	AC0,-23(SP)			; AC0,DCB_FILE				404434' 200 00 0 17 777755		1654
	MOVEM	AC0,0(SP)			; AC0,0(SP)				404435' 202 00 0 17 000000
	MOVEI	AC0,-34(SP)			; AC0,DCB_NAME				404436' 201 00 0 17 777744
	PUSH	SP,AC0				; SP,AC0				404437' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404440' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				404441' 260 17 0 00 000000*
	MOVEM	AC1,-24(SP)			; AC1,XXBEG				404442' 202 01 0 17 777754
	MOVEI	AC5,-36(SP)			; AC5,DCB_NAME				404443' 201 05 0 17 777742		1655
	HRLI	AC5,170700			; AC5,170700				404444' 505 05 0 00 170700
	MOVEI	AC1,3				; AC1,3					404445' 201 01 0 00 000003
	MOVE	AC2,C.73			; AC2,[POINT 7,P.ABS-1,34]  <1,7>	404446' 200 02 0 00 405031'
	MOVEI	AC4,3				; AC4,3					404447' 201 04 0 00 000003
	EXTEND	AC1,C.2				; AC1,[MOVSLJ ]				404450' 123 01 0 00 400470'
	JFCL					; 					404451' 255 00 0 00 000000
	MOVE	AC0,-25(SP)			; AC0,DCB_FILE				404452' 200 00 0 17 777753		1656
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  88
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	MOVEM	AC0,0(SP)			; AC0,0(SP)				404453' 202 00 0 17 000000
	MOVEI	AC0,-36(SP)			; AC0,DCB_NAME				404454' 201 00 0 17 777742
	PUSH	SP,AC0				; SP,AC0				404455' 261 17 0 00 000000
	PUSH	SP,C.6				; SP,[0]				404456' 261 17 0 00 400475'
	PUSHJ	SP,SYM_VAL			; SP,SYM_VAL				404457' 260 17 0 00 000000*
	MOVE	AC10,AC1			; XXEND,AC1				404460' 200 10 0 00 000001
	MOVE	AC0,-55(SP)			; AC0,KERNEL_FILE			404461' 200 00 0 17 777723		1660
	MOVEM	AC0,-36(SP)			; AC0,-36(SP)				404462' 202 00 0 17 777742
	PUSH	SP,-36(SP)			; SP,-36(SP)				404463' 261 17 0 17 777742
	MOVE	AC0,AC10			; AC0,XXEND				404464' 200 00 0 00 000010
	SUB	AC0,-27(SP)			; AC0,XXBEG				404465' 274 00 0 17 777751
	PUSH	SP,AC0				; SP,AC0				404466' 261 17 0 00 000000
	PUSH	SP,C.10				; SP,[1]				404467' 261 17 0 00 400501'
	MOVE	AC14,-54(SP)			; AC14,VALUES				404470' 200 14 0 17 777724
	PUSH	SP,AC14				; SP,AC14				404471' 261 17 0 00 000014
	PUSHJ	SP,ALOCB			; SP,ALOCB				404472' 260 17 0 00 000000*
	MOVEM	AC1,-31(SP)			; AC1,DCB_DATA_ADDR			404473' 202 01 0 17 777747
	MOVE	AC0,-32(SP)			; COUNTER,XXBEG				404474' 200 00 0 17 777746		1665
	SOJA	AC0,L.130			; COUNTER,L.130				404475' 364 00 0 00 404513'
L.129:	MOVE	AC1,-42(SP)			; AC1,-42(SP)				404476' 200 01 0 17 777736		1666
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404477' 202 01 0 17 000000
	MOVE	AC1,-31(SP)			; AC1,DCB_DATA_ADDR			404500' 200 01 0 17 777747
	ADD	AC1,AC0				; AC1,COUNTER				404501' 270 01 0 00 000000
	SUB	AC1,-32(SP)			; AC1,XXBEG				404502' 274 01 0 17 777746
	PUSH	SP,AC1				; SP,AC1				404503' 261 17 0 00 000001
	PUSH	SP,-34(SP)			; SP,DCB_FILE				404504' 261 17 0 17 777744
	PUSH	SP,AC0				; SP,COUNTER				404505' 261 17 0 00 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				404506' 260 17 0 00 000000*
	ADJSP	SP,-1				; SP,-1					404507' 105 17 0 00 777777
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404510' 202 01 0 17 000000
	PUSHJ	SP,PUTBYT			; SP,PUTBYT				404511' 260 17 0 00 000000*
	ADJSP	SP,-2				; SP,-2					404512' 105 17 0 00 777776
L.130:	ADDI	AC0,1				; COUNTER,1				404513' 271 00 0 00 000001		1665
	CAMGE	AC0,AC10			; COUNTER,XXEND				404514' 315 00 0 00 000010
	JRST	L.129				; L.129					404515' 254 00 0 00 404476'
	SETZM	-30(SP)				; SCB_ADDR				404516' 402 00 0 17 777750		1674
	MOVE	AC11,-31(SP)			; DCB_ADDR,DCB_DATA_ADDR		404517' 200 11 0 17 777747		1675
	MOVE	AC0,AC14			; AC0,AC14				404520' 200 00 0 00 000014		1716
	ADDI	AC0,72				; AC0,72				404521' 271 00 0 00 000072
	MOVEM	AC0,-25(SP)			; AC0,-25(SP)				404522' 202 00 0 17 777753
	MOVE	AC13,AC14			; AC13,AC14				404523' 200 13 0 00 000014		1703
	ADDI	AC13,103			; AC13,103				404524' 271 13 0 00 000103
	MOVE	AC12,AC14			; AC12,AC14				404525' 200 12 0 00 000014		1696
	ADDI	AC12,100			; AC12,100				404526' 271 12 0 00 000100
	MOVE	AC0,AC14			; AC0,AC14				404527' 200 00 0 00 000014		1691
	ADDI	AC0,76				; AC0,76				404530' 271 00 0 00 000076
	MOVE	AC10,AC14			; AC10,AC14				404531' 200 10 0 00 000014		1689
	ADDI	AC10,73				; AC10,73				404532' 271 10 0 00 000073
	MOVE	AC16,AC14			; AC16,AC14				404533' 200 16 0 00 000014		1683
	ADDI	AC16,74				; AC16,74				404534' 271 16 0 00 000074
L.131:	JUMPE	AC11,L.135			; DCB_ADDR,L.135			404535' 322 11 0 00 404761'		1677
	MOVEM	AC11,-35(SP)			; DCB_ADDR,LAST_DCB_ADDR		404536' 202 11 0 17 777743		1679
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  89
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	MOVE	AC1,-42(SP)			; AC1,-42(SP)				404537' 200 01 0 17 777736		1683
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404540' 202 01 0 17 000000
	MOVE	AC1,AC11			; AC1,DCB_ADDR				404541' 200 01 0 00 000011
	HRRZ	AC2,0(AC16)			; AC2,0(AC16)				404542' 550 02 0 16 000000
	ADD	AC1,AC2				; AC1,AC2				404543' 270 01 0 00 000002
	MOVEM	AC1,-34(SP)			; AC1,-34(SP)				404544' 202 01 0 17 777744
	ADDI	AC1,1				; AC1,1					404545' 271 01 0 00 000001
	PUSH	SP,AC1				; SP,AC1				404546' 261 17 0 00 000001
	PUSHJ	SP,GETBYT			; SP,GETBYT				404547' 260 17 0 00 000000*
	MOVEM	AC1,-27(SP)			; AC1,-27(SP)				404550' 202 01 0 17 777751
	MOVE	AC1,-43(SP)			; AC1,-43(SP)				404551' 200 01 0 17 777735
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404552' 202 01 0 17 777777
	MOVE	AC1,-35(SP)			; AC1,-35(SP)				404553' 200 01 0 17 777743
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404554' 202 01 0 17 000000
	PUSHJ	SP,GETBYT			; SP,GETBYT				404555' 260 17 0 00 000000*
	MOVE	AC2,-27(SP)			; AC2,-27(SP)				404556' 200 02 0 17 777751
	SUB	AC2,AC1				; AC2,AC1				404557' 274 02 0 00 000001
	MOVEM	AC2,-27(SP)			; AC2,-27(SP)				404560' 202 02 0 17 777751
	MOVE	AC1,-27(SP)			; AC1,-27(SP)				404561' 200 01 0 17 777751		1684
	ADDI	AC1,1				; AC1,1					404562' 271 01 0 00 000001
	MOVEM	AC1,-42(SP)			; AC1,NUNITS				404563' 202 01 0 17 777736
	MOVE	AC1,-43(SP)			; AC1,-43(SP)				404564' 200 01 0 17 777735		1685
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404565' 202 01 0 17 000000
	MOVE	AC1,AC11			; AC1,DCB_ADDR				404566' 200 01 0 00 000011
	HLRZ	AC2,0(AC16)			; AC2,0(AC16)				404567' 554 02 0 16 000000
	ADD	AC1,AC2				; AC1,AC2				404570' 270 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404571' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404572' 260 17 0 00 000000*
	MOVEM	AC1,-40(SP)			; AC1,UCB_LENGTH			404573' 202 01 0 17 777740
	MOVE	AC1,-44(SP)			; AC1,-44(SP)				404574' 200 01 0 17 777734		1689
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404575' 202 01 0 17 000000
	MOVE	AC1,AC11			; AC1,DCB_ADDR				404576' 200 01 0 00 000011
	HRRZ	AC2,0(AC10)			; AC2,0(AC10)				404577' 550 02 0 10 000000
	ADD	AC1,AC2				; AC1,AC2				404600' 270 01 0 00 000002
	MOVEM	AC1,-36(SP)			; AC1,-36(SP)				404601' 202 01 0 17 777742
	PUSH	SP,-36(SP)			; SP,-36(SP)				404602' 261 17 0 17 777742
	PUSHJ	SP,GETWRD			; SP,GETWRD				404603' 260 17 0 00 000000*
	SUB	AC1,-35(SP)			; AC1,XXBEG				404604' 274 01 0 17 777743
	ADD	AC1,AC11			; AC1,DCB_ADDR				404605' 270 01 0 00 000011
	MOVEM	AC1,-42(SP)			; AC1,FIRST_UCB_ADDR			404606' 202 01 0 17 777736
	MOVE	AC1,-45(SP)			; AC1,-45(SP)				404607' 200 01 0 17 777733		1690
	MOVEM	AC1,-2(SP)			; AC1,-2(SP)				404610' 202 01 0 17 777776
	MOVE	AC1,-37(SP)			; AC1,-37(SP)				404611' 200 01 0 17 777741
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404612' 202 01 0 17 777777
	MOVE	AC1,-42(SP)			; AC1,FIRST_UCB_ADDR			404613' 200 01 0 17 777736
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404614' 202 01 0 17 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404615' 260 17 0 00 000000*
	MOVE	AC1,-45(SP)			; AC1,-45(SP)				404616' 200 01 0 17 777733		1691
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404617' 202 01 0 17 000000
	MOVE	AC1,AC11			; AC1,DCB_ADDR				404620' 200 01 0 00 000011
	MOVE	AC3,AC0				; AC3,AC0				404621' 200 03 0 00 000000
	HRRZ	AC2,0(AC3)			; AC2,0(AC3)				404622' 550 02 0 03 000000
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  90
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	ADD	AC1,AC2				; AC1,AC2				404623' 270 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404624' 261 17 0 00 000001
	PUSH	SP,-63(SP)			; SP,PCB_ADDR				404625' 261 17 0 17 777715
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404626' 260 17 0 00 000000*
	SETOM	-33(SP)				; COUNTER				404627' 476 00 0 17 777745		1693
	JRST	L.134				; L.134					404630' 254 00 0 00 404743'
L.132:	MOVE	AC1,-43(SP)			; AC1,UCB_LENGTH			404631' 200 01 0 17 777735		1695
	IMUL	AC1,-33(SP)			; AC1,COUNTER				404632' 220 01 0 17 777745
	ADD	AC1,-44(SP)			; AC1,FIRST_UCB_ADDR			404633' 270 01 0 17 777734
	MOVEM	AC1,-34(SP)			; AC1,UCB_ADDR				404634' 202 01 0 17 777744
	MOVE	AC1,-47(SP)			; AC1,-47(SP)				404635' 200 01 0 17 777731		1696
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404636' 202 01 0 17 000000
	MOVE	AC1,-34(SP)			; AC1,UCB_ADDR				404637' 200 01 0 17 777744
	HRRZ	AC2,0(AC12)			; AC2,0(AC12)				404640' 550 02 0 12 000000
	ADD	AC1,AC2				; AC1,AC2				404641' 270 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404642' 261 17 0 00 000001
	PUSH	SP,-50(SP)			; SP,-50(SP)				404643' 261 17 0 17 777730		1697
	PUSH	SP,AC1				; SP,AC1				404644' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404645' 260 17 0 00 000000*
	SUB	AC1,-42(SP)			; AC1,XXBEG				404646' 274 01 0 17 777736		1698
	ADD	AC1,AC11			; AC1,DCB_ADDR				404647' 270 01 0 00 000011
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404650' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					404651' 105 17 0 00 777777
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404652' 260 17 0 00 000000*		1696
	MOVE	AC1,-51(SP)			; AC1,-51(SP)				404653' 200 01 0 17 777727		1699
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404654' 202 01 0 17 000000
	MOVE	AC1,-36(SP)			; AC1,UCB_ADDR				404655' 200 01 0 17 777742
	HLRZ	AC2,0(AC12)			; AC2,0(AC12)				404656' 554 02 0 12 000000
	ADD	AC1,AC2				; AC1,AC2				404657' 270 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404660' 261 17 0 00 000001
	PUSH	SP,-52(SP)			; SP,-52(SP)				404661' 261 17 0 17 777726		1700
	PUSH	SP,AC1				; SP,AC1				404662' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404663' 260 17 0 00 000000*
	SUB	AC1,-44(SP)			; AC1,XXBEG				404664' 274 01 0 17 777734		1701
	ADD	AC1,AC11			; AC1,DCB_ADDR				404665' 270 01 0 00 000011
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404666' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					404667' 105 17 0 00 777777
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404670' 260 17 0 00 000000*		1699
	MOVE	AC1,-41(SP)			; AC1,SCB_ADDR				404671' 200 01 0 17 777737		1702
	MOVEM	AC1,-51(SP)			; AC1,LAST_SCB_ADDR			404672' 202 01 0 17 777727
	MOVE	AC1,-53(SP)			; AC1,-53(SP)				404673' 200 01 0 17 777725		1703
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404674' 202 01 0 17 000000
	MOVE	AC1,-40(SP)			; AC1,UCB_ADDR				404675' 200 01 0 17 777740
	HRRZ	AC2,0(AC13)			; AC2,0(AC13)				404676' 550 02 0 13 000000
	ADD	AC1,AC2				; AC1,AC2				404677' 270 01 0 00 000002
	MOVEM	AC1,-45(SP)			; AC1,-45(SP)				404700' 202 01 0 17 777733
	PUSH	SP,-45(SP)			; SP,-45(SP)				404701' 261 17 0 17 777733
	PUSHJ	SP,GETWRD			; SP,GETWRD				404702' 260 17 0 00 000000*
	SUB	AC1,-44(SP)			; AC1,XXBEG				404703' 274 01 0 17 777734
	ADD	AC1,AC11			; AC1,DCB_ADDR				404704' 270 01 0 00 000011
	MOVEM	AC1,-42(SP)			; AC1,SCB_ADDR				404705' 202 01 0 17 777736
	MOVE	AC1,-54(SP)			; AC1,-54(SP)				404706' 200 01 0 17 777724		1704
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  91
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	MOVEM	AC1,-2(SP)			; AC1,-2(SP)				404707' 202 01 0 17 777776
	MOVE	AC1,-46(SP)			; AC1,-46(SP)				404710' 200 01 0 17 777732
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404711' 202 01 0 17 777777
	MOVE	AC1,-42(SP)			; AC1,SCB_ADDR				404712' 200 01 0 17 777736
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404713' 202 01 0 17 000000
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404714' 260 17 0 00 000000*
	MOVE	AC1,-42(SP)			; AC1,SCB_ADDR				404715' 200 01 0 17 777736		1706
	CAMN	AC1,-52(SP)			; AC1,LAST_SCB_ADDR			404716' 316 01 0 17 777726
	JRST	L.133				; L.133					404717' 254 00 0 00 404742'
	MOVE	AC1,-54(SP)			; AC1,-54(SP)				404720' 200 01 0 17 777724		1709
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404721' 202 01 0 17 000000
	MOVE	AC2,-42(SP)			; AC2,SCB_ADDR				404722' 200 02 0 17 777736
	MOVE	AC4,AC0				; AC4,AC0				404723' 200 04 0 00 000000
	HLRZ	AC3,0(AC4)			; AC3,0(AC4)				404724' 554 03 0 04 000000
	ADD	AC2,AC3				; AC2,AC3				404725' 270 02 0 00 000003
	MOVE	AC1,AC2				; AC1,AC2				404726' 200 01 0 00 000002
	ADDI	AC1,2				; AC1,2					404727' 271 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404730' 261 17 0 00 000001
	PUSH	SP,-55(SP)			; SP,-55(SP)				404731' 261 17 0 17 777723		1710
	PUSH	SP,AC1				; SP,AC1				404732' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404733' 260 17 0 00 000000*
	SUB	AC1,-47(SP)			; AC1,XXBEG				404734' 274 01 0 17 777731		1711
	ADD	AC1,AC11			; AC1,DCB_ADDR				404735' 270 01 0 00 000011
	MOVEM	AC1,-1(SP)			; AC1,-1(SP)				404736' 202 01 0 17 777777
	ADJSP	SP,-1				; SP,-1					404737' 105 17 0 00 777777
	PUSHJ	SP,PUTWRD			; SP,PUTWRD				404740' 260 17 0 00 000000*		1709
	ADJSP	SP,-2				; SP,-2					404741' 105 17 0 00 777776		1708
L.133:	ADJSP	SP,-5				; SP,-5					404742' 105 17 0 00 777773		1694
L.134:	AOS	AC1,-33(SP)			; AC1,COUNTER				404743' 350 01 0 17 777745		1693
	CAMGE	AC1,-46(SP)			; AC1,NUNITS				404744' 315 01 0 17 777732
	JRST	L.132				; L.132					404745' 254 00 0 00 404631'
	MOVE	AC1,-47(SP)			; AC1,-47(SP)				404746' 200 01 0 17 777731		1716
	MOVEM	AC1,0(SP)			; AC1,0(SP)				404747' 202 01 0 17 000000
	MOVE	AC1,AC11			; AC1,DCB_ADDR				404750' 200 01 0 00 000011
	MOVE	AC3,-32(SP)			; AC3,-32(SP)				404751' 200 03 0 17 777746
	HLRZ	AC2,0(AC3)			; AC2,0(AC3)				404752' 554 02 0 03 000000
	ADD	AC1,AC2				; AC1,AC2				404753' 270 01 0 00 000002
	PUSH	SP,AC1				; SP,AC1				404754' 261 17 0 00 000001
	PUSHJ	SP,GETWRD			; SP,GETWRD				404755' 260 17 0 00 000000*
	MOVE	AC11,AC1			; DCB_ADDR,AC1				404756' 200 11 0 00 000001
	ADJSP	SP,-6				; SP,-6					404757' 105 17 0 00 777772		1678
	JRST	L.131				; L.131					404760' 254 00 0 00 404535'		1677
L.135:	MOVE	AC0,-42(SP)			; AC0,-42(SP)				404761' 200 00 0 17 777736		1722
	MOVEM	AC0,-2(SP)			; AC0,-2(SP)				404762' 202 00 0 17 777776
	MOVE	AC0,-31(SP)			; AC0,DCB_DATA_ADDR			404763' 200 00 0 17 777747
	MOVEM	AC0,-1(SP)			; AC0,-1(SP)				404764' 202 00 0 17 777777
	MOVEM	AC14,0(SP)			; AC14,0(SP)				404765' 202 14 0 17 000000
	PUSHJ	SP,LNKDCB			; SP,LNKDCB				404766' 260 17 0 00 000000*
	MOVEI	AC2,-57(SP)			; AC2,DEV_NAME-1			404767' 201 02 0 17 777721		1728
	HRLI	AC2,10700			; AC2,10700				404770' 505 02 0 00 010700
	MOVEI	AC1,2				; AC1,2					404771' 201 01 0 00 000002
	MOVEI	AC4,2				; AC4,2					404772' 201 04 0 00 000002
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  92
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

	MOVE	AC5,C.74			; AC5,[POINT 7,P.ABT-1,34]  <1,7>	404773' 200 05 0 00 405032'
	EXTEND	AC1,C.52			; AC1,[CMPSE ]				404774' 123 01 0 00 403546'
	JRST	L.136				; L.136					404775' 254 00 0 00 405003'
	MOVE	AC0,-31(SP)			; AC0,DCB_DATA_ADDR			404776' 200 00 0 17 777747		1731
	DPB	AC0,C.65			; AC0,[POINT 19,4(AC14),35]  <0,19>	404777' 137 00 0 00 405021'
	MOVE	AC0,-33(SP)			; AC0,DCB_FILE				405000' 200 00 0 17 777745		1732
	HRRM	AC0,5(AC14)			; AC0,5(AC14)				405001' 542 00 0 14 000005
	JRST	L.137				; L.137					405002' 254 00 0 00 405006'		1728
L.136:	MOVE	AC0,-33(SP)			; AC0,DCB_FILE				405003' 200 00 0 17 777745		1738
	MOVEM	AC0,0(SP)			; AC0,0(SP)				405004' 202 00 0 17 000000
	PUSHJ	SP,FCOR				; SP,FCOR				405005' 260 17 0 00 000000*
L.137:	ADJSP	SP,-25				; SP,-25				405006' 105 17 0 00 777753		1597
	MOVE	AC1,-4(SP)			; AC1,DCB_DATA_ADDR			405007' 200 01 0 17 777774		1563
	ADJSP	SP,-20				; SP,-20				405010' 105 17 0 00 777760
	POP	SP,AC16				; SP,AC16				405011' 262 17 0 00 000016
	POP	SP,AC14				; SP,AC14				405012' 262 17 0 00 000014
	POP	SP,AC13				; SP,AC13				405013' 262 17 0 00 000013
	POP	SP,AC12				; SP,AC12				405014' 262 17 0 00 000012
	POP	SP,AC11				; SP,AC11				405015' 262 17 0 00 000011
	POP	SP,AC10				; SP,AC10				405016' 262 17 0 00 000010
	POP	SP,AC0				; SP,AC0				405017' 262 17 0 00 000000
	POPJ	SP,				; SP,					405020' 263 17 0 00 000000
C.65:	POINT	19,4(AC14),35			; 19,4(AC14),35				405021' 00 23 0 14 000004
C.66:	XWD	0,P.ABM				; 0,P.ABM				405022' 000000	404262'
C.67:	XWD	0,P.ABN				; 0,P.ABN				405023' 000000	404266'
C.68:	POINT	7,P.ABO-1,34			; 7,P.ABO-1,34				405024' 01 07 0 00 404267'
C.69:	EXP	4000				; 4000					405025' 000000	004000
C.70:	XWD	0,P.ABP				; 0,P.ABP				405026' 000000	404271'
C.71:	POINT	7,P.ABQ-1,34			; 7,P.ABQ-1,34				405027' 01 07 0 00 404271'
C.72:	POINT	7,P.ABR-1,34			; 7,P.ABR-1,34				405030' 01 07 0 00 404272'
C.73:	POINT	7,P.ABS-1,34			; 7,P.ABS-1,34				405031' 01 07 0 00 404273'
C.74:	POINT	7,P.ABT-1,34			; 7,P.ABT-1,34				405032' 01 07 0 00 404274'

; Routine Size:  349 words


;	  1745	
;	  1746	END
;	  1747	
;	  1748	ELUDOM



	END

; Low  segment length:       9 words
; High segment length:    2587 words




;				LIBRARY STATISTICS
MCBFNC								25-Jan-1983 10:17:36	TOPS-20 Bliss-36 2A(142)	    Page  93
X03020								 1-Jan-1983 14:51:05	NETPKG:<VNP36>MCBFNC.BLI.7 (11)

;
;					     -------- Symbols --------    Blocks
;	File				     Total    Loaded   Percent      Read
;
;  NETPKG:<VNP36>VNPLIB.L36.6		       498       322        64         0





;	  1749	! Local Modes:
;	  1750	! Comment Column:36
;	  1751	! Comment Start:!
;	  1752	! Mode:Fundamental
;	  1753	! Auto Save Mode:2
;	  1754	! End:
; Size:		2480 code + 116 data words
; Run Time:	00:40.4
; Elapsed Time:	02:24.6
; Memory Used:	89 pages
; Compilation Complete
ADDRESS				1494	1495
ALOCB				 109*	 305	 467	 505	 692	 730	 951	1660
ALOC_POOL			  64	 308	 468	 506	 693	 731	 971	1506*
AMOUNT				1506	1553
BLOCK_LOAD			  60	 320	 476	 513	 522	 701	 738	 747	 796*	 959	 981
BYTE_NUMBER			 923	 924	 926
CB_ADDRESS			 251	 326#	 327	 328	 381	 487#	 489	 491	 533#	 535	 537	 608
				 712#	 714	 716	 758#	 760	 762	 836	 881#	 882	 888#	 889	 895#
				 896	 897	 903#	 904	 905	 911#	 915	 918	 924	 951#	 952	 953
				 954	 971#	 972	 974	 975	 976
CB_LENGTH			 837	 950#	 951	 953	 970#	 971	 975
CB_SAVE				 840	 853#	 962	 984
CB_SAVE_BASE			 838	 854#	 963	 985
CB_SAVE_MAX			 839	 855#	 964	 986
CEX_BASE			1413	1454#	1479	1484	1488	1494
CEX_FILE			1363	1404	1420	1461	1495
CEX_LABEL			1409	1420#	1454	1455
CEX_TOP				1414	1455#	1459	1461	1488	1494
CE_DATA_BASE			 326	 487	 533	 712	 758	1731
CE_DATA_FILE			 326	 487	 533	 712	 758	1732
CH$WCHAR			 486	 532	 711	 757
CMD_ADD_BYTE			 901
CMD_ADD_WORD			 893
CMD_ALLOC_DB_DSR		 304	 465	 467	 690	 692
CMD_ALLOC_DB_POOL		 307	 465	 690
CMD_ALLOC_DSR			 948
CMD_ALLOC_MUX_DSR		 499	 505	 724	 730
CMD_ALLOC_MUX_POOL		 499	 724
CMD_ALLOC_POOL			 968
CMD_END				 876	 995
CMD_MOVE_BYTE			 886
CMD_MOVE_TEXT			 909
CMD_MOVE_WORD			 879
CMD_VERIFY_VALUES		 931
COUNTER				1665	1666	1693	1695
CRAVL				1467	1472	1484
CTL_BLOCK			 100	1233	1267
CTL_CONT			1269
CTL_LENGTH			 382	 502#	 504	 517	 609	 727#	 729	 742
CTL_NUM				1263	1269
CTL_NUM_OF_UNTS			1071
CTL_PAR_0			1086
CTL_PAR_1			1089
CTL_PAR_2			1092
CTL_PAR_3			1095
CTL_PAR_4			1098
CTL_PAR_5			1101
CTL_PAR_6			1104
CTL_PAR_7			1107
CTL_PTR				1263	1267	1269
CTL_UNT				1326
CURBAS				  95	 174#	 314#	 327	 329	 470#	 490	 492	 507#	 536	 538	 695#
				 715	 717	 732#	 761	 763	 854	 955#	 963#	 977#	 985#	1045
CURBLK				  94	 173#	 305#	 308#	 314	 315	 327	 329	 467#	 470	 471	 490
				 492	 493	 505#	 507	 508	 517#	 536	 538	 539	 543#	 692#	 695
				 696	 715	 717	 718	 730#	 732	 733	 742#	 761	 763	 764	 768#
				 853	 881	 888	 895	 903	 911	 952	 954#	 955	 962#	 972	 973
				 976#	 977	 984#	1045
CURCTL				 100	 179#	 400#	 627#	1071	1079	1086	1089	1092	1095	1098	1101
				1104	1107	1340	1357#
CURDEV				  99	 178#	1067	1356#
CURLIX				  97	 176#	 398#	 485	 531	 568	 625#	 710	 756	 793	1048	1308#
				1309
CURMAX				  96	 175#	 315#	 471#	 504#	 506	 508#	 696#	 729#	 731	 733#	 855
				 915	 953#	 964#	 975#	 986#
CURSLT				  98	 177#	 399#	 404	 409	 416	 418	 420	 422	 436	 626#	 631
				 636	 643	 645	 647	 661	1052	1056	1060	1310#	1312	1316	1321
				1326	1331
CURTRB				 102	 181#	1146	1153	1156	1159	1162	1165	1168	1171	1174	1350
				1359#
CURUNT				 101	 180#	1075	1113	1120	1123	1126	1129	1132	1135	1138	1141
				1345	1358#
DB_FILE				 252	 269#	 277	 279	 281	 282	 286	 291	 293	 299	 305	 308
				 315	 319	 320	 333	 339	 383	 427#	 436	 439	 440	 441	 445
				 450	 452	 458	 459	 468	 469	 471	 475	 476	 501	 502	 503
				 512	 513	 518	 522	 555	 561	 610	 652#	 661	 664	 665	 666
				 670	 675	 677	 683	 684	 693	 694	 696	 700	 701	 726	 727
				 728	 737	 738	 743	 747	 780	 786	 796	 832	 859	 860	 881
				 888	 895	 903	 911	 912	 913	 918	 925	 934	 939	 941	 950
				 952	 957	 960	 970	 972	 973	 979	 982
DB_POINTER			 253	 298#	 299	 305	 308	 315	 319	 384	 457#	 458	 459	 468
				 469	 471	 475	 501	 502	 503	 512	 518	 611	 682#	 683	 684
				 693	 694	 696	 700	 726	 727	 728	 737	 743
DB_VARIABLE_1			 385	 459#	 495	 541	 612	 684#	 720	 766
DB_VARIABLE_2			 386	 460#	 501#	 504	 520	 613	 685#	 726#	 729	 745
DCB_ADDR			1613	1675#	1677	1679	1683	1684	1685	1689	1690	1691	1698	1701
				1703	1711	1716#
DCB_DATA_ADDR			1612	1660#	1666	1675	1722	1731	1743
DCB_FILE			1608	1626#	1636	1640	1641	1643	1654	1656	1666	1732	1738
DCB_NAME			1609	1652	1653	1654	1655	1656
DDM_LOADS			  59	 199	 571*
DEACB				 110	1483
DEV_BLOCK			  99	1232	1257
DEV_CHAIN			1315
DEV_CTL				1321
DEV_NAM				1253	1259
DEV_NAME			1259	1563	1631	1636	1652	1728
DEV_NUM_OF_CTLS			1067
DEV_PTR				1253	1257	1259
DLC_LOADS			  58	 195	 344*
DUMMY				 520	 745	1506
DUMMY2				1506
D_LNK				1716
D_PCB				1691
D_UCBL				1685
D_UCB				1689	1690
D_UNIT				1683	1684
ERRMSG				 114	 271	 429	 654	 917	1434	1439	1448	1461
ERROR				 115	 997
EXSIZ				1478	1479
FALSE				  83#	  84	 851	1354
FATAL_ERROR			 846	 851#	 942#	 991#	 995	 997
FCOR				 126	 339	 561	 786	1738
FE_CEX				1437	1501
FE_EXT				1432
FE_EXV				1457
FE_PLA				1446
FILE_BLOCK			 164	 246	 252	 377	 383	 604	 610	 831	 832	1403	1404	1544
				1603	1608
FILE_CHAN			 132	 190	 195	 199	 248#	 281	 282	 344	 440	 441	 571	 665
				 666	1563	1640	1641
FILE_HWM			 183	 205	1557	1558
FILE_LABEL			1420	1421
FILE_LEN			 269	 427	 652	1626
FILE_MODU			 333	 555	 780	1643
FILE_NAME			 277	 279	 436	 439	 661	 664	 918	1434	1439	1448	1461	1636
FILE_TYP			 269	 427	 652	1626
FIRST_UCB_ADDR			1616	1689#	1690	1695
FLAGS				1412	1426#	1432	1437	1446	1457	1501#	1502
FMASK				1426	1502
FND_CHAIN			 112	 191	1310	1315	1321	1326	1331
GEN_PCB				 132	 187	 245#
GETBLK				 111	 269	 427	 652	1626
GETBYT				 118	 291	 293	 299	 450	 452	 458	 459	 501	 675	 677	 683
				 684	 726	 859	 860	 905	 925	1495	1666	1683
GETWRD				 116	 286	 305	 308	 315	 319	 445	 468	 469	 471	 475	 502
				 503	 512	 518	 670	 693	 694	 696	 700	 727	 728	 737	 743
				 881	 888	 895	 897	 903	 911	 912	 913	 934	 939	 941	 950
				 952	 957	 970	 972	 973	 979	1426	1467	1468	1478	1484	1685
				1689	1697	1700	1703	1710	1716
GET_VARIABLE			  61	 504	 520	 729	 745	 882	 889	 897	 905	1000*
HIGH_EXEC_ADDR			1411	1457#	1459	1462
KERNEL_FILE			 132	 164	 183#	 188	 195	 199	 205#	 246#	 305	 308	 320	 327
				 328	 344	 377	 467	 469	 476	 489	 491	 505	 506	 513	 522
				 535	 537	 571	 604	 692	 694	 701	 714	 716	 730	 731	 738
				 747	 760	 762	 796	 831	 882	 889	 896	 897	 904	 905	 924
				 951	 952	 959	 971	 972	 973	 981	1363	1403	1421	1426	1434
				1439	1448	1467	1468	1469	1472	1473	1474	1478	1479	1483	1484
				1488	1495	1502	1506	1544	1557	1558#	1563	1603	1660	1666	1683
				1685	1689	1690	1691	1696	1697	1699	1700	1703	1704	1709	1710
				1716	1722
KERNEL_LABEL			1410	1421#
L$BHGV				1455
L$BSA				1454
LAST_DCB_ADDR			1614	1679#
LAST_SCB_ADDR			1619	1702#	1706
LB_ADDRESS			 841	 913#	 926	 957#	 960	 979#	 982
LB_COMMAND			 842	 859#	 868	 873	 995
LB_LENGTH			 843	 912#	 915	 918	 920	 923
LB_PC				 844	 852#	 859	 860	 861#	 881	 883#	 888	 890#	 895	 898#	 903
				 906#	 911	 912	 913	 928#	 934	 939	 941	 945#	 950	 952	 957
				 965#	 970	 972	 973	 979	 987#
LB_POINTER			 254	 319#	 320	 387	 475#	 476	 512#	 513	 518#	 522	 614	 700#
				 701	 737#	 738	 743#	 747	 796	 852
LB_VARIABLE			 845	 860#	 870	 882	 889	 897	 905
LD_DCB				  65	1563*
LEN_FILE_STRING			 279	 438	 663
LEN_MCB_NAME			 277	 324	 436	 661
LIX_NUM				1243	1249#
LLC_BLOCK			 241
LLC_CHAIN			 191
LLC_LOADS			  57	 191	 209*
LLC_NAME			 264	 277	 324
LLC_PTR				 209	 241	 264	 277	 324
LNKDCB				 129	1722
LOC				1607
LODMCB				  56	 132*
MCBFNC				   7#
MCB_NAME			 255	 286	 287	 289	 388	 445	 446	 448	 615	 670	 671	 673
MCEX				  63	1363*
MODU_BLOCK			 256	 389	 616	1621
MODU_IDENT			 336	 558	 783	1646
MODU_NAME			 334	 556	 781	1644
MODU_PTR			 256	 333#	 334	 336	 389	 555#	 556	 558	 616	 780#	 781	 783
				1621	1643#	1644	1646
M_PCB				 113	1488
NEW_CTL				1233	1299#	1321#	1323	1326	1340	1357
NEW_DEV				1232	1298#	1315#	1318	1321	1356
NEW_TRB				1235	1301#	1331#	1350	1359
NEW_UNT				1234	1300#	1326#	1328	1331	1345	1358
NEXT_LIX			  62	 401	 495	 541	 566	 628	 720	 766	 791	1193*
NUNITS				1620	1683#	1693
OUTNUM				 120	 291	 293	 420	 422	 450	 452	 645	 647	 675	 677	 868
				 870	 939	 941	1186	1188
OUTPUT				 121	 290	 292	 335	 419	 421	 449	 451	 557	 644	 646	 674
				 676	 782	 869	1645
OUTSTR				 122	 263	 264	 288	 289	 294	 334	 336	 337	 415	 416	 417
				 418	 447	 448	 453	 556	 558	 559	 642	 643	 672	 673	 678
				 781	 783	 784	 867	 938	 940	1185	1187	1630	1631	1632	1644
				1646	1647
PAR_BLK				 168	 187#	 188#	 189#	 190#	 191	 209	 242	 245	 246	 247	 248
PCB_ADDR			1408	1488#	1563	1691
PCRLF				 124	 338	 560	 785	 866	 937	1184	1648
PRIMARY_COMMAND			 257	 299#	 301	 390	 458#	 462	 467	 505	 617	 683#	 687	 692
				 730
PS_COM				1489
PUTBYT				 119	 889	 904	 924	1495	1666
PUTWRD				 117	 327	 328	 489	 491	 535	 537	 714	 716	 760	 762	 882
				 896	 952	 972	 973	1469	1472	1473	1474	1479	1502	1690	1691
				1696	1699	1704	1709
R50TOA				 123	 286	 445	 670
R50VAL				1418
RCOR				 125	 282	 441	 666	1641
REAL_AMOUNT			1547	1553#	1558
RESULT				1036	1038#	1045#	1048#	1052#	1056#	1060#	1063#	1067#	1071#	1075#	1086#
				1089#	1092#	1095#	1098#	1101#	1104#	1107#	1120#	1123#	1126#	1129#	1132#
				1135#	1138#	1141#	1153#	1156#	1159#	1162#	1165#	1168#	1171#	1174#	1178#
				1188	1191	1236	1302#	1342#	1347#	1352#	1354#	1360	1548	1557#	1560
ROUTINE_NAME			 161#	 238#	 271	 374#	 429	 601#	 654	 828#	 917	1030#	1226#	1400#
				1434	1439	1448	1461	1541#	1600#
RSTB				 127	 281	 440	 665	1640
SCB_ADDR			1618	1674#	1702	1703#	1704	1706	1709	1711
SEL_CTL				1263*	1321
SEL_DEV				1253*	1315
SEL_SLT				1243*	1310
SEL_TRB				1283*	1331
SEL_UNT				1273*	1326
SLTNUM				 568	 793	1063
SLT_BLOCK			  98	1247
SLT_CHAIN			1310
SLT_CTL				 420	 645	1052	1321
SLT_DEV				 418	 636	 643	 661	1316
SLT_DLC				 409	 416	 418	 436	1316
SLT_PTR				1243	1247	1249
SLT_TRB				1060	1331
SLT_UNT				 422	 647	1056	1326
SYM_VAL				 128	 326	 487	 533	 712	 758	1654	1656
S_LHD				1709	1711
TEMP1				1415	1467#	1468	1469	1470	1471	1478#	1483	1484
TEMP2				1416	1468#	1471#	1474
TEMP3				1417	1470#	1471	1472	1473	1474
TEMPORARY_PTR			 391	 484#	 485	 486	 530#	 531	 532	 618	 709#	 710	 711	 755#
				 756	 757
TEMP_LIX			1237	1309#	1310
TRB_BLOCK			 102	1235	1287
TRB_LADDR			1289
TRB_NUM				1283	1289
TRB_PAR_0			1153
TRB_PAR_1			1156
TRB_PAR_2			1159
TRB_PAR_3			1162
TRB_PAR_4			1165
TRB_PAR_5			1168
TRB_PAR_6			1171
TRB_PAR_7			1174
TRB_PTR				1283	1287	1289
TRUE				  82#	 942	 991	1302	1342	1347	1352
UCB_ADDR			1615	1695#	1696	1698	1699	1701	1703	1704
UCB_LENGTH			1617	1685#	1695
UNT_BLOCK			 101	1234	1277
UNT_LENGTH			 392	 503#	 504	 543	 619	 728#	 729	 768
UNT_NUM				1273	1279
UNT_NUM_OF_TRBS			1075
UNT_PAR_0			1120
UNT_PAR_1			1123
UNT_PAR_2			1126
UNT_PAR_3			1129
UNT_PAR_4			1132
UNT_PAR_5			1135
UNT_PAR_6			1138
UNT_PAR_7			1141
UNT_PTR				1273	1277	1279
UNT_TRB				1331
UNT_UNIT			1279
U_DCB				1696	1698
U_RED				1699	1701
U_SCB				1703	1704
VALUES				 132	 165	 189	 191	 195	 199	 247#	 305	 308	 320	 326	 344
				 378	 401	 468	 469	 476	 487	 495	 504	 506	 513	 520	 522
				 533	 541	 566	 568	 571	 605	 628	 693	 694	 701	 712	 720
				 729	 731	 738	 745	 747	 758	 766	 791	 793	 796	 833	 882
				 889	 897	 905	 951	 960	 971	 982	1000	1033	1063	1193	1229
				1310	1315	1363	1405	1426	1432	1437	1446	1457	1467	1472	1478
				1479	1484	1489	1501	1502	1563	1604	1660	1683	1684	1685	1689
				1690	1691	1696	1698	1699	1701	1703	1704	1709	1711	1716	1722
				1731#	1732#
VAR_CTL_CHARS_0			1077	1082	1085
VAR_CTL_CHARS_1			1088
VAR_CTL_CHARS_2			1091
VAR_CTL_CHARS_3			1094
VAR_CTL_CHARS_4			1097
VAR_CTL_CHARS_5			1100
VAR_CTL_CHARS_6			1103
VAR_CTL_CHARS_7			1077	1082	1106
VAR_CURRENT_ADDRESS		1043
VAR_CURRENT_CTL			 401	 566	 628	 791	1050	1340
VAR_CURRENT_LIX			1047
VAR_CURRENT_TRB			1058	1350
VAR_CURRENT_UNT			1054	1345
VAR_NUMBER_CTLS			1065
VAR_NUMBER_SLTS			1062
VAR_NUMBER_TRBS			1073
VAR_NUMBER_UNTS			1069
VAR_NUMBER			1000	1040	1082	1116	1149	1186	1193	1340	1345	1350
VAR_TRB_CHARS_0			1144	1149	1152
VAR_TRB_CHARS_1			1155
VAR_TRB_CHARS_2			1158
VAR_TRB_CHARS_3			1161
VAR_TRB_CHARS_4			1164
VAR_TRB_CHARS_5			1167
VAR_TRB_CHARS_6			1170
VAR_TRB_CHARS_7			1144	1149	1173
VAR_UNT_CHARS_0			1111	1116	1119
VAR_UNT_CHARS_1			1122
VAR_UNT_CHARS_2			1125
VAR_UNT_CHARS_3			1128
VAR_UNT_CHARS_4			1131
VAR_UNT_CHARS_5			1134
VAR_UNT_CHARS_6			1137
VAR_UNT_CHARS_7			1111	1116	1140
VNPVAL_BLOCK			 165	 247	 378	 605	 833	1033	1229	1405	1604
XXBEG				1610	1654#	1660	1665	1666	1689	1698	1701	1703	1711
XXEND				1611	1656#	1660	1665
XXXNAME				 258	 325	 326	 393	 483	 484	 488	 529	 530	 534	 620	 708
				 709	 713	 754	 755	 759
$CBOMG				 130	 485	 531	 710	 756