Trailing-Edge
-
PDP-10 Archives
-
BB-R598A-RM_1983
-
swskit-v3/listings/vnp36/vnp36.list
There are no other files named vnp36.list in the archive.
which is 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 1
1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (1)
; 0001 !NET:<DECNET20-V3P0.TKB-VNP.BIGVNP>VNP36.BLI.52 28-Sep-82 16:14:27, Edit by PECKHAM
; 0002 !NET:<DECNET20-V3P0.TKB-VNP.BIGVNP>VNP36.BLI.51 5-Jun-82 11:15:37, Edit by PECKHAM
; 0003 !NET:<DECNET20-V3P0.TKB-VNP.BIGVNP>VNP36.BLI.49 26-Mar-82 17:23:05, Edit by PECKHAM
; 0004 !NET:<DECNET20-V3P0.TKB-VNP.BIGVNP>VNP36.BLI.48 26-Mar-82 16:11:52, Edit by PECKHAM
; 0005 !NET:<DECNET20-V3P0.TKB-VNP.BIGVNP>VNP36.BLI.46 26-Aug-81 10:03:28, Edit by SROBINSON
; 0006 !NET:<DECNET20-V3P0.TKB-VNP.VNPV3>VNP36.BLI.41 4-Feb-81 09:07:04, Edit by SROBINSON
; 0007 !<DECNET20-V3P0.TKB-VNP.VNPV3>VNP36.BLI.39 10-Dec-80 10:50:30, Edit by SROBINSON
; 0008 !<DECNET20-V3P0.TKB-VNP.VNPV3>VNP36.BLI.2, 29-Apr-80 11:45:29, Edit by SROBINSON
; 0009 MODULE VNP36 ( !Main Program for VNP
; 0010 IDENT = 'X03040',
; 0011 MAIN = VNP20
; 0012 ) =
; 0013 BEGIN
; 0014 !
; 0015 !
; 0016 !
; 0017 ! COPYRIGHT (c) 1980, 1981, 1982
; 0018 ! DIGITAL EQUIPMENT CORPORATION
; 0019 ! Maynard, Massachusetts
; 0020 !
; 0021 ! This software is furnished under a license and may be used
; 0022 ! and copied only in accordance with the terms of such license
; 0023 ! and with the inclusion of the above copyright notice. This
; 0024 ! software or any other copies thereof may not be provided or
; 0025 ! otherwise made available to any other person. No title to
; 0026 ! and ownership of the software is hereby transferred.
; 0027 !
; 0028 ! The information in this software is subject to change
; 0029 ! without notice and should not be construed as a commitment
; 0030 ! by DIGITAL EQUIPMENT CORPORATION.
; 0031 !
; 0032 ! DIGITAL assumes no responsibility for the use or reliability
; 0033 ! of its software on equipment which is not supplied by
; 0034 ! DIGITAL.
; 0035 !
; 0036
; 0037 !++
; 0038 ! FACILITY: MCB Configuration Facility, VNP20
; 0039 !
; 0040 ! ABSTRACT:
; 0041 !
; 0042 ! This module is the main program for the MCB System Builder
; 0043 ! which is part of the MCB Configuration Facility.
; 0044 !
; 0045 ! ENVIRONMENT: TOPS-20 User Mode
; 0046 !
; 0047 ! AUTHOR: Scott G. Robinson, Creation: 14-APR-80
; 0048 !
; 0049 ! MODIFIED BY:
; 0050 !
; 0051 ! Scott G. Robinson, 10-DEC-80 : VERSION 03xx0
; 0052 !
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 2
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (1)
; 0053 ! 01 - Add Changes for MCB V3.1 Systems
; 0054 ! 02 - Add Changes for MCB V3.2 Systems
; 0055 ! 03 - Make Big System Changes (>124K Systems)
; 0056 ! 04 - Make all partition names to M_PCB be 6 character ASCIZ names.
; 0057 !--
; 0058
; 0059 !
; 0060 ! TABLE OF CONTENTS:
; 0061 !
; 0062
; 0063 FORWARD ROUTINE
; 0064 VNP20 : NOVALUE, !Main Program
; 0065 DEL_BLK,
; 0066 DEL_DEV,
; 0067 DEL_CTL,
; 0068 DEL_UNT,
; 0069 LOAD_TSKS,
; 0070 LOAD_MCBS;
; 0071
; 0072 !
; 0073 ! INCLUDE FILES:
; 0074 !
; 0075
; 0076 LIBRARY 'VNPLIB';
; 0077
; 0078 !
; 0079 ! MACROS:
; 0080 !
; 0081 ! NONE
; 0082 !
; 0083 ! EQUATED SYMBOLS:
; 0084 !
; 0085
; 0086 LITERAL
; 0087 DEBUG = 0;
; 0088
; 0089 !
; 0090 ! OWN STORAGE:
; 0091 !
; 0092 ! NONE
; 0093 !
; 0094 ! EXTERNAL REFERENCES:
; 0095 !
; 0096
; 0097 EXTERNAL ROUTINE
; 0098 RCOR : NOVALUE, !Read Core Image
; 0099 WCOR : NOVALUE, !Write Out Core Image
; 0100 FCOR : NOVALUE, !Free A Core Image
; 0101 RSTB : NOVALUE, !Read Symbol Table
; 0102 RCET : NOVALUE, !Read CETAB.MAC
; 0103 MCEX : NOVALUE, !Merge CEX Into Core Image
; 0104 GETSYM : NOVALUE, !Get Symbols From Symbol Tables
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 3
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (1)
; 0105 M_PCB, !Make A Partition Control Block
; 0106 INSTAL : NOVALUE, !Install A Task
; 0107 LOADD : NOVALUE, !Load A Device Driver
; 0108 LD_DCB, !Load a Process Driver
; 0109 LODMCB : NOVALUE, !Load Process's data base
; 0110 FCLEAN : NOVALUE, !Do Final Cleanup Of The Kernel
; 0111 TELLK : NOVALUE, !Tell About The Core Image
; 0112 OPEN, !OPEN A File
; 0113 OUTPUT : NOVALUE, !Output a Character
; 0114 OUTSTR : NOVALUE, !Output a String
; 0115 PCRLF : NOVALUE, !Output a CR/LF
; 0116 ERRMSG : NOVALUE, !Error Message
; 0117 CLOSE : NOVALUE, !CLOSE A File
; 0118 INISTG : NOVALUE, !Initialize Storage Manager
; 0119 FND_CHAIN, !Find A Block In A Chain
; 0120 GETBLK, !Get A Storage Block
; 0121 FREBLK : NOVALUE, !Free A Storage Block
; 0122 RESET_ALL, !Reset All I/O
; 0123 DEL_PTRS : NOVALUE, !Delete Pointer Blocks
; 0124 PUTBYT : NOVALUE, !Put A Byte Into A TSK Image
; 0125 GETBYT, !Get A Byte From A TSK Image
; 0126 PUTWRD : NOVALUE, !Put A Word Into A TSK Image
; 0127 GETWRD, !Get A Word From A TSK Image
; 0128 R50TOA, !Convert RADIX-50 To ASCII
; 0129 ALOCB, !Allocate Some Storage (EXEC DSR)
; 0130 SYM_VAL; !Lookup a symbol in symbol table
; 0131
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 4
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
; 0132 ROUTINE VNP20 : NOVALUE = !Main Program
; 0133
; 0134 !++
; 0135 ! FUNCTIONAL DESCRIPTION:
; 0136 !
; 0137 ! Top level program for MCB System Builder.
; 0138 !
; 0139 ! FORMAL PARAMETERS:
; 0140 !
; 0141 ! NONE
; 0142 !
; 0143 ! IMPLICIT INPUTS:
; 0144 !
; 0145 ! NONE
; 0146 !
; 0147 ! IMPLICIT OUTPUTS:
; 0148 !
; 0149 ! NONE
; 0150 !
; 0151 ! ROUTINE VALUE:
; 0152 !
; 0153 ! NONE
; 0154 !
; 0155 ! SIDE EFFECTS
; 0156 !
; 0157 ! Creates the MCB System's Image on disk.
; 0158 !
; 0159 !--
; 0160
; 0161 BEGIN
; 0162
; 0163 BIND
; L 0164 ROUTINE_NAME = UPLIT (%STRING (' VNP36 V03.04 - ',
; L 0165 ,' Conjuror for MCB V3.2 Systems',
; L 0166 %IF %SWITCHES(TOPS20) %THEN ' (TOPS-20 Environment Only)',%FI
; 0167 %CHAR(0)));
; 0168
; 0169 LOCAL
; 0170 CETAB_FILE : REF FILE_BLOCK,
; 0171 CEXCOM_FILE : REF FILE_BLOCK,
; 0172 KERNEL_FILE : REF FILE_BLOCK,
; 0173 LOGGING_FILE : REF FILE_BLOCK,
; 0174 RSXMS_FILE : REF FILE_BLOCK,
; 0175 MODU_PTR : REF MODU_BLOCK,
; 0176 POOL_PCB,
; 0177 POOL_PAR_BASE,
; 0178 BUF_PCB,
; 0179 BUF_PAR_BASE,
; 0180 GEN_PCB,
; 0181 GEN_PAR_BASE,
; 0182 PAR_BLK : VECTOR [4],
; 0183 VALUES : REF VNPVAL_BLOCK;
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 5
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
; 0184
; 0185 !
; 0186 ! Startout by initializing the support routines, and then allocate static
; 0187 ! data structures 'stamp coupled' to other levels in the system builder.
; 0188 !
; 0189 RESET_ALL ();
; 0190 INISTG (7000);
; 0191 VALUES = GETBLK (VNPVAL_TYP, VNPVAL_LEN);
; 0192 KERNEL_FILE = GETBLK (FILE_TYP, FILE_LEN);
; 0193 LOGGING_FILE = GETBLK (FILE_TYP, FILE_LEN);
; 0194 CETAB_FILE = GETBLK (FILE_TYP, FILE_LEN);
; 0195 CEXCOM_FILE = GETBLK (FILE_TYP, FILE_LEN);
; 0196 RSXMS_FILE = GETBLK (FILE_TYP, FILE_LEN);
; 0197 !
; 0198 ! Open the terminal Logging File: All output through channel 0 will go
; 0199 ! here also...
; 0200 !
; 0201 CH$MOVE (10, CH$PTR (UPLIT (%ASCIZ'MCBMAP.TXT')), CH$PTR (LOGGING_FILE [FILE_NAME]));
; 0202 OPEN (1, LOGGING_FILE [FILE_NAME], 1, 1, UPLIT (%ASCIZ'TXT'));
; 0203 !
; 0204 ! Say who we are...
; 0205 !
; 0206 OUTSTR (0, ROUTINE_NAME);
; 0207 PCRLF (0);
; 0208 !
; 0209 ! Read CETAB.MAC to determine the configuration of the system being
; 0210 ! constructed and store the textual information in our data bases.
; 0211 !
; 0212 OUTSTR (0, UPLIT (%ASCIZ'[Reading Configuration File]'));
; 0213 PCRLF (0);
; 0214 CH$MOVE (10, CH$PTR (UPLIT (%ASCIZ'CETAB.MAC')), CH$PTR (CETAB_FILE [FILE_NAME]));
; 0215 RCET (2, .CETAB_FILE, .VALUES);
; 0216 FCOR (.CETAB_FILE);
; 0217 !
; 0218 ! Next we read in the RSX11-S Executive which forms the base for the
; 0219 ! MCB system.
; 0220 !
; 0221 OUTSTR (0, UPLIT (%ASCIZ'[Loading Base Executive --> '));
; 0222 CH$MOVE (7, CH$PTR (UPLIT (%ASCIZ'RSX11S')), CH$PTR (KERNEL_FILE [FILE_NAME]));
; 0223 RSTB (2, .KERNEL_FILE); !READ SYMBOL TABLE
; 0224 RCOR (.KERNEL_FILE, 2, 160*2048); !READ IMAGE
; 0225 KERNEL_FILE [FILE_HWM] = 0; !INITIALIZE HIGH WATER MARK
; 0226 MODU_PTR = .KERNEL_FILE [FILE_MODU];
; 0227 OUTSTR (0, MODU_PTR [MODU_NAME]);
; 0228 OUTPUT (0, %C' ');
; 0229 OUTSTR (0, MODU_PTR [MODU_IDENT]);
; 0230 OUTSTR (0, UPLIT (%ASCIZ' ]'));
; 0231 PCRLF (0);
; 0232 !
; 0233 ! Read the CEXCOM partition contents.
; 0234 !
; 0235 OUTSTR (0, UPLIT (%ASCIZ'[Loading MCB Executive --> '));
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 6
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
; 0236 CH$MOVE (7, CH$PTR (UPLIT (%ASCIZ'CEXCOM')), CH$PTR (CEXCOM_FILE [FILE_NAME]));
; 0237 RSTB (2, .CEXCOM_FILE); !READ COMM EXEC SYMBOL TABLE
; 0238 RCOR (.CEXCOM_FILE, 2, 16*2048); !READ CEXCOM.TSK
; 0239 MODU_PTR = .CEXCOM_FILE [FILE_MODU];
; 0240 OUTSTR (0, MODU_PTR [MODU_NAME]);
; 0241 OUTPUT (0, %C' ');
; 0242 OUTSTR (0, MODU_PTR [MODU_IDENT]);
; 0243 OUTSTR (0, UPLIT (%ASCIZ' ]'));
; 0244 PCRLF (0);
; 0245 !
; 0246 ! Read symbol table from RSXMS.STB, which contains all the useful
; 0247 ! symbols from EXEMC.MLB
; 0248 !
; 0249 CH$MOVE (6, CH$PTR (UPLIT (%ASCIZ'RSXMS')), CH$PTR (RSXMS_FILE [FILE_NAME]));
; 0250 RSTB (2, .RSXMS_FILE);
; 0251 !
; 0252 ! Get useful symbols from various symbol table files and store them
; 0253 ! in the VALUES array. This is done to increase the efficiency of
; 0254 ! accessing symbol values.
; 0255 !
; 0256 GETSYM (.KERNEL_FILE, .CEXCOM_FILE, .RSXMS_FILE, .VALUES);
; 0257 !
; 0258 ! We are done with the symbol table file(s), so throw them out of memory.
; 0259 !
; 0260 FCOR (.RSXMS_FILE);
; 0261 !
; 0262 ! Generate the CEXCOM partition and store the file in it.
; 0263 !
; 0264 MCEX (.KERNEL_FILE, .CEXCOM_FILE, .VALUES);
; 0265 !
; 0266 ! We don't need the CEXCOM file any more so delete it.
; 0267 !
; 0268 FCOR (.CEXCOM_FILE);
; 0269 !
; 0270 ! Construct the GEN partition which will contain all MCB Tasks, Processes,
; 0271 ! and the POOL.
; 0272 !
; 0273 GEN_PAR_BASE = .KERNEL_FILE [FILE_HWM] + 1;
; 0274 GEN_PCB = M_PCB (.KERNEL_FILE, UPLIT (%ASCIZ'GEN '), 0, .GEN_PAR_BASE, 0, %O'100200', .VALUES [PS_SYS],
; 0275 0, .VALUES);
; 0276 !
; 0277 ! First Install Tasks indicated in CETAB.MAC
; 0278 !
; 0279 PAR_BLK [0] = .GEN_PCB;
; 0280 PAR_BLK [1] = .KERNEL_FILE;
; 0281 PAR_BLK [2] = .VALUES;
; 0282 PAR_BLK [3] = 2;
; 0283 FND_CHAIN (.VALUES [TSK_CHAIN], LOAD_TSKS, PAR_BLK);
; 0284 !
; 0285 ! Return storage associated with the loaded tasks in our data base.
; 0286 !
; 0287 FND_CHAIN (.VALUES [TSK_CHAIN], DEL_BLK, 0);
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 7
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
; 0288 DEL_PTRS (.VALUES [TSK_CHAIN]);
; 0289 !
; 0290 ! Load the MCB Processes into memory.
; 0291 !
; 0292 FND_CHAIN (.VALUES [MCB_CHAIN], LOAD_MCBS, PAR_BLK);
; 0293 !
; 0294 ! Complete the GEN partition by filling in the size field
; 0295 !
; 0296 PUTWRD (.KERNEL_FILE, .GEN_PCB + .VALUES [P_SIZE], (.KERNEL_FILE [FILE_HWM] - .GEN_PAR_BASE + 1)/64);
; 0297 !
; 0298 ! Generate the CEXDAT partition to contain storage for the MCB processes' data
; 0299 ! bases.
; 0300 !
; 0301 POOL_PAR_BASE = .KERNEL_FILE [FILE_HWM] + 1;
; 0302 POOL_PCB = M_PCB (.KERNEL_FILE, UPLIT (%ASCIZ'CEXDAT'), 0, .POOL_PAR_BASE, 0, %O'100200',
; 0303 .VALUES [PS_COM], 0, .VALUES);
; 0304 !
; 0305 ! Now load the MCB processes' data base elements that tie this system
; 0306 ! together.
; 0307 !
; 0308 LODMCB (.KERNEL_FILE, .POOL_PCB, 2, .VALUES);
; 0309 !
; 0310 ! Finish the CEXDAT partition by filling in its size
; 0311 !
; 0312 PUTWRD (.KERNEL_FILE, .POOL_PCB + .VALUES [P_SIZE], (.KERNEL_FILE [FILE_HWM] - .POOL_PAR_BASE + 1)/64);
; 0313 !
; 0314 ! Delete information blocks kept around from reading CETAB.MAC, we are done
; 0315 ! with them.
; 0316 !
; 0317 FND_CHAIN (.VALUES [LLC_CHAIN], DEL_BLK, 0);
; 0318 DEL_PTRS (.VALUES [LLC_CHAIN]);
; 0319 FND_CHAIN (.VALUES [DEV_CHAIN], DEL_DEV, 0);
; 0320 DEL_PTRS (.VALUES [DEV_CHAIN]);
; 0321 FND_CHAIN (.VALUES [SLT_CHAIN], DEL_BLK, 0);
; 0322 DEL_PTRS (.VALUES [SLT_CHAIN]);
; 0323 !
; 0324 ! Return storage held to list MCB processes.
; 0325 !
; 0326 FND_CHAIN (.VALUES [MCB_CHAIN], DEL_BLK, 0);
; 0327 DEL_PTRS (.VALUES [MCB_CHAIN]);
; 0328 !
; 0329 ! Now generate the CEXBUF main partition as the last one in memory.
; 0330 !
; 0331 BUF_PAR_BASE = .KERNEL_FILE [FILE_HWM] + 1;
; 0332 BUF_PCB = M_PCB (.KERNEL_FILE, UPLIT (%ASCIZ'CEXBUF'), 0, .BUF_PAR_BASE, 0, %O'100200', .VALUES [PS_COM],
; 0333 0, .VALUES);
; 0334 !
; 0335 ! Cleanup the KERNEL
; 0336 !
; 0337 FCLEAN (.KERNEL_FILE, .VALUES);
; 0338 !
; 0339 ! Print some information about the configuration of this system.
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 8
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
; 0340 !
; 0341 TELLK (.KERNEL_FILE, 0, .VALUES);
; 0342 !
; 0343 ! Tell we are writing the system image now
; 0344 !
; 0345 OUTSTR (0, UPLIT (%ASCIZ'[Writing '));
; 0346 OUTSTR (0, KERNEL_FILE[FILE_NAME]);
; 0347 OUTSTR (0, UPLIT (%ASCIZ'.SYS]'));
; 0348 PCRLF (0);
; 0349 !
; 0350 ! We have the MCB system image in our memory, write it to disk.
; 0351 !
; 0352 WCOR (2, .KERNEL_FILE);
; 0353 !
; 0354 ! Free the KERNEL File, Since We Don't Need It Any Longer.
; 0355 !
; 0356 FCOR (.KERNEL_FILE);
; 0357 !
; 0358 ! Free the VALUES Block, Since We Don't Need It Any More Either.
; 0359 !
; 0360 FREBLK (.VALUES);
; 0361 !
; 0362 ! Tell user we are done
; 0363 !
; 0364 OUTSTR (0, UPLIT (%ASCIZ'[Poof! MCB Conjuration Complete]'));
; 0365 PCRLF (0);
; 0366 !
; 0367 CLOSE (1);
; 0368 END; !OF VNP20
TITLE VNP36
TWOSEG
.REQUEST SYS:B362LB.REL
RELOC 400000 ; 400000'
P.AAA: BYTE (7)" ","V","N","P","3" ; VNP3 400000' 040 126 116 120 063
BYTE (7)"6"," ","V","0","3" ; 6 V03 400001' 066 040 126 060 063
BYTE (7)".","0","4"," ","-" ; .04 - 400002' 056 060 064 040 055
BYTE (7)" "," ","C","o","n" ; Con 400003' 040 040 103 157 156
BYTE (7)"j","u","r","o","r" ; juror 400004' 152 165 162 157 162
BYTE (7)" ","f","o","r"," " ; for 400005' 040 146 157 162 040
BYTE (7)"M","C","B"," ","V" ; MCB V 400006' 115 103 102 040 126
BYTE (7)"3",".","2"," ","S" ; 3.2 S 400007' 063 056 062 040 123
BYTE (7)"y","s","t","e","m" ; ystem 400010' 171 163 164 145 155
BYTE (7)"s"," ","(","T","O" ; s (TO 400011' 163 040 050 124 117
BYTE (7)"P","S","-","2","0" ; PS-20 400012' 120 123 055 062 060
BYTE (7)" ","E","n","v","i" ; Envi 400013' 040 105 156 166 151
BYTE (7)"r","o","n","m","e" ; ronme 400014' 162 157 156 155 145
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 9
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
BYTE (7)"n","t"," ","O","n" ; nt On 400015' 156 164 040 117 156
BYTE (7)"l","y",")",000,000 ; ly) 400016' 154 171 051 000 000
P.AAB: BYTE (7)"M","C","B","M","A" ; MCBMA 400017' 115 103 102 115 101
BYTE (7)"P",".","T","X","T" ; P.TXT 400020' 120 056 124 130 124
BYTE (7)000,000,000,000,000 ; 400021' 000 000 000 000 000
P.AAC: BYTE (7)"T","X","T",000,000 ; TXT 400022' 124 130 124 000 000
P.AAD: BYTE (7)"[","R","e","a","d" ; [Read 400023' 133 122 145 141 144
BYTE (7)"i","n","g"," ","C" ; ing C 400024' 151 156 147 040 103
BYTE (7)"o","n","f","i","g" ; onfig 400025' 157 156 146 151 147
BYTE (7)"u","r","a","t","i" ; urati 400026' 165 162 141 164 151
BYTE (7)"o","n"," ","F","i" ; on Fi 400027' 157 156 040 106 151
BYTE (7)"l","e","]",000,000 ; le] 400030' 154 145 135 000 000
P.AAE: BYTE (7)"C","E","T","A","B" ; CETAB 400031' 103 105 124 101 102
BYTE (7)".","M","A","C",000 ; .MAC 400032' 056 115 101 103 000
P.AAF: BYTE (7)"[","L","o","a","d" ; [Load 400033' 133 114 157 141 144
BYTE (7)"i","n","g"," ","B" ; ing B 400034' 151 156 147 040 102
BYTE (7)"a","s","e"," ","E" ; ase E 400035' 141 163 145 040 105
BYTE (7)"x","e","c","u","t" ; xecut 400036' 170 145 143 165 164
BYTE (7)"i","v","e",011,"-" ; ive - 400037' 151 166 145 011 055
BYTE (7)"-",">"," ",000,000 ; -> 400040' 055 076 040 000 000
P.AAG: BYTE (7)"R","S","X","1","1" ; RSX11 400041' 122 123 130 061 061
BYTE (7)"S",000,000,000,000 ; S 400042' 123 000 000 000 000
P.AAH: BYTE (7)" ","]",000,000,000 ; ] 400043' 040 135 000 000 000
P.AAI: BYTE (7)"[","L","o","a","d" ; [Load 400044' 133 114 157 141 144
BYTE (7)"i","n","g"," ","M" ; ing M 400045' 151 156 147 040 115
BYTE (7)"C","B"," ","E","x" ; CB Ex 400046' 103 102 040 105 170
BYTE (7)"e","c","u","t","i" ; ecuti 400047' 145 143 165 164 151
BYTE (7)"v","e",011,"-","-" ; ve -- 400050' 166 145 011 055 055
BYTE (7)">"," ",000,000,000 ; > 400051' 076 040 000 000 000
P.AAJ: BYTE (7)"C","E","X","C","O" ; CEXCO 400052' 103 105 130 103 117
BYTE (7)"M",000,000,000,000 ; M 400053' 115 000 000 000 000
P.AAK: BYTE (7)" ","]",000,000,000 ; ] 400054' 040 135 000 000 000
P.AAL: BYTE (7)"R","S","X","M","S" ; RSXMS 400055' 122 123 130 115 123
BYTE (7)000,000,000,000,000 ; 400056' 000 000 000 000 000
P.AAM: BYTE (7)"G","E","N"," "," " ; GEN 400057' 107 105 116 040 040
BYTE (7)" ",000,000,000,000 ; 400060' 040 000 000 000 000
P.AAN: BYTE (7)"C","E","X","D","A" ; CEXDA 400061' 103 105 130 104 101
BYTE (7)"T",000,000,000,000 ; T 400062' 124 000 000 000 000
P.AAO: BYTE (7)"C","E","X","B","U" ; CEXBU 400063' 103 105 130 102 125
BYTE (7)"F",000,000,000,000 ; F 400064' 106 000 000 000 000
P.AAP: BYTE (7)"[","W","r","i","t" ; [Writ 400065' 133 127 162 151 164
BYTE (7)"i","n","g"," ",000 ; ing 400066' 151 156 147 040 000
P.AAQ: BYTE (7)".","S","Y","S","]" ; .SYS] 400067' 056 123 131 123 135
BYTE (7)000,000,000,000,000 ; 400070' 000 000 000 000 000
P.AAR: BYTE (7)"[","P","o","o","f" ; [Poof 400071' 133 120 157 157 146
BYTE (7)"!"," ","M","C","B" ; ! MCB 400072' 041 040 115 103 102
BYTE (7)" ","C","o","n","j" ; Conj 400073' 040 103 157 156 152
BYTE (7)"u","r","a","t","i" ; urati 400074' 165 162 141 164 151
BYTE (7)"o","n"," ","C","o" ; on Co 400075' 157 156 040 103 157
BYTE (7)"m","p","l","e","t" ; mplet 400076' 155 160 154 145 164
BYTE (7)"e","]",000,000,000 ; e] 400077' 145 135 000 000 000
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 10
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
EXTERN RCOR, WCOR, FCOR, RSTB, RCET, MCEX, GETSYM, M_PCB, INSTAL, LOADD, LD_DCB, LODMCB, FCLEAN
EXTERN TELLK, OPEN, OUTPUT, OUTSTR, PCRLF, ERRMSG, CLOSE, INISTG, FND_CHAIN, GETBLK, FREBLK
EXTERN RESET_ALL, DEL_PTRS, PUTBYT, GETBYT, PUTWRD, GETWRD, R50TOA, ALOCB, SYM_VAL
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
VNP20: PUSH SP,AC0 ; SP,AC0 400100' 261 17 0 00 000000 0132
PUSH SP,AC10 ; SP,AC10 400101' 261 17 0 00 000010
PUSH SP,AC11 ; SP,AC11 400102' 261 17 0 00 000011
PUSH SP,AC12 ; SP,AC12 400103' 261 17 0 00 000012
PUSH SP,AC13 ; SP,AC13 400104' 261 17 0 00 000013
PUSH SP,AC14 ; SP,AC14 400105' 261 17 0 00 000014
ADJSP SP,4 ; SP,4 400106' 105 17 0 00 000004
PUSHJ SP,RESET_ALL ; SP,RESET_ALL 400107' 260 17 0 00 000000* 0189
PUSH SP,C.2 ; SP,[15530] 400110' 261 17 0 00 400636' 0190
PUSHJ SP,INISTG ; SP,INISTG 400111' 260 17 0 00 000000*
PUSH SP,C.3 ; SP,[15] 400112' 261 17 0 00 400637' 0191
PUSH SP,C.4 ; SP,[122] 400113' 261 17 0 00 400640'
PUSHJ SP,GETBLK ; SP,GETBLK 400114' 260 17 0 00 000000*
MOVE AC13,AC1 ; VALUES,AC1 400115' 200 13 0 00 000001
PUSH SP,C.5 ; SP,[3] 400116' 261 17 0 00 400641' 0192
PUSH SP,C.6 ; SP,[20] 400117' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 400120' 260 17 0 00 000000*
MOVE AC14,AC1 ; KERNEL_FILE,AC1 400121' 200 14 0 00 000001
PUSH SP,C.5 ; SP,[3] 400122' 261 17 0 00 400641' 0193
PUSH SP,C.6 ; SP,[20] 400123' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 400124' 260 17 0 00 000000*
MOVE AC10,AC1 ; LOGGING_FILE,AC1 400125' 200 10 0 00 000001
PUSH SP,C.5 ; SP,[3] 400126' 261 17 0 00 400641' 0194
PUSH SP,C.6 ; SP,[20] 400127' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 400130' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 11
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
MOVE AC0,AC1 ; CETAB_FILE,AC1 400131' 200 00 0 00 000001
PUSH SP,C.5 ; SP,[3] 400132' 261 17 0 00 400641' 0195
PUSH SP,C.6 ; SP,[20] 400133' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 400134' 260 17 0 00 000000*
MOVE AC12,AC1 ; CEXCOM_FILE,AC1 400135' 200 12 0 00 000001
PUSH SP,C.5 ; SP,[3] 400136' 261 17 0 00 400641' 0196
PUSH SP,C.6 ; SP,[20] 400137' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 400140' 260 17 0 00 000000*
MOVE AC11,AC1 ; RSXMS_FILE,AC1 400141' 200 11 0 00 000001
MOVEI AC5,1(AC10) ; AC5,1(LOGGING_FILE) 400142' 201 05 0 10 000001 0201
HRLI AC5,10700 ; AC5,10700 400143' 505 05 0 00 010700
MOVEI AC1,12 ; AC1,12 400144' 201 01 0 00 000012
MOVE AC2,C.7 ; AC2,[POINT 7,P.AAB-1,34] <1,7> 400145' 200 02 0 00 400643'
MOVEI AC4,12 ; AC4,12 400146' 201 04 0 00 000012
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 400147' 123 01 0 00 400635'
JFCL ; 400150' 255 00 0 00 000000
PUSH SP,C.8 ; SP,[1] 400151' 261 17 0 00 400644' 0202
MOVEI AC1,2(AC10) ; AC1,2(LOGGING_FILE) 400152' 201 01 0 10 000002
PUSH SP,AC1 ; SP,AC1 400153' 261 17 0 00 000001
PUSH SP,C.8 ; SP,[1] 400154' 261 17 0 00 400644'
PUSH SP,C.8 ; SP,[1] 400155' 261 17 0 00 400644'
PUSH SP,C.9 ; SP,[0,,P.AAC] 400156' 261 17 0 00 400645'
PUSHJ SP,OPEN ; SP,OPEN 400157' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400160' 402 00 0 17 000000 0206
PUSH SP,C.10 ; SP,[0,,ROUTINE_NAME] 400161' 261 17 0 00 400646'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400162' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400163' 402 00 0 17 000000 0207
PUSHJ SP,PCRLF ; SP,PCRLF 400164' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400165' 402 00 0 17 000000 0212
PUSH SP,C.11 ; SP,[0,,P.AAD] 400166' 261 17 0 00 400647'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400167' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400170' 402 00 0 17 000000 0213
PUSHJ SP,PCRLF ; SP,PCRLF 400171' 260 17 0 00 000000*
MOVE AC1,AC0 ; AC1,CETAB_FILE 400172' 200 01 0 00 000000 0214
MOVEI AC5,1(AC1) ; AC5,1(AC1) 400173' 201 05 0 01 000001
HRLI AC5,10700 ; AC5,10700 400174' 505 05 0 00 010700
MOVEI AC1,12 ; AC1,12 400175' 201 01 0 00 000012
MOVE AC2,C.12 ; AC2,[POINT 7,P.AAE-1,34] <1,7> 400176' 200 02 0 00 400650'
MOVEI AC4,12 ; AC4,12 400177' 201 04 0 00 000012
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 400200' 123 01 0 00 400635'
JFCL ; 400201' 255 00 0 00 000000
PUSH SP,C.13 ; SP,[2] 400202' 261 17 0 00 400651' 0215
PUSH SP,AC0 ; SP,CETAB_FILE 400203' 261 17 0 00 000000
PUSH SP,AC13 ; SP,VALUES 400204' 261 17 0 00 000013
PUSHJ SP,RCET ; SP,RCET 400205' 260 17 0 00 000000*
MOVEM AC0,0(SP) ; CETAB_FILE,0(SP) 400206' 202 00 0 17 000000 0216
PUSHJ SP,FCOR ; SP,FCOR 400207' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400210' 402 00 0 17 000000 0221
PUSH SP,C.14 ; SP,[0,,P.AAF] 400211' 261 17 0 00 400652'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400212' 260 17 0 00 000000*
MOVEI AC5,1(AC14) ; AC5,1(KERNEL_FILE) 400213' 201 05 0 14 000001 0222
HRLI AC5,10700 ; AC5,10700 400214' 505 05 0 00 010700
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 12
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
MOVEI AC1,7 ; AC1,7 400215' 201 01 0 00 000007
MOVE AC2,C.15 ; AC2,[POINT 7,P.AAG-1,34] <1,7> 400216' 200 02 0 00 400653'
MOVEI AC4,7 ; AC4,7 400217' 201 04 0 00 000007
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 400220' 123 01 0 00 400635'
JFCL ; 400221' 255 00 0 00 000000
PUSH SP,C.13 ; SP,[2] 400222' 261 17 0 00 400651' 0223
PUSH SP,AC14 ; SP,KERNEL_FILE 400223' 261 17 0 00 000014
PUSHJ SP,RSTB ; SP,RSTB 400224' 260 17 0 00 000000*
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400225' 202 14 0 17 000000 0224
PUSH SP,C.13 ; SP,[2] 400226' 261 17 0 00 400651'
PUSH SP,C.16 ; SP,[1200000] 400227' 261 17 0 00 400654'
PUSHJ SP,RCOR ; SP,RCOR 400230' 260 17 0 00 000000*
SETZM 16(AC14) ; 16(KERNEL_FILE) 400231' 402 00 0 14 000016 0225
HRRZ AC10,14(AC14) ; MODU_PTR,14(KERNEL_FILE) 400232' 550 10 0 14 000014 0226
SETZM 0(SP) ; 0(SP) 400233' 402 00 0 17 000000 0227
MOVE AC0,AC10 ; AC0,MODU_PTR 400234' 200 00 0 00 000010
ADDI AC0,1 ; AC0,1 400235' 271 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 400236' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 400237' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400240' 402 00 0 17 000000 0228
PUSH SP,C.17 ; SP,[40] 400241' 261 17 0 00 400655'
PUSHJ SP,OUTPUT ; SP,OUTPUT 400242' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400243' 402 00 0 17 000000 0229
MOVE AC0,AC10 ; AC0,MODU_PTR 400244' 200 00 0 00 000010
ADDI AC0,3 ; AC0,3 400245' 271 00 0 00 000003
PUSH SP,AC0 ; SP,AC0 400246' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 400247' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400250' 402 00 0 17 000000 0230
PUSH SP,C.18 ; SP,[0,,P.AAH] 400251' 261 17 0 00 400656'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400252' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400253' 402 00 0 17 000000 0231
PUSHJ SP,PCRLF ; SP,PCRLF 400254' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400255' 402 00 0 17 000000 0235
PUSH SP,C.19 ; SP,[0,,P.AAI] 400256' 261 17 0 00 400657'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400257' 260 17 0 00 000000*
MOVEI AC5,1(AC12) ; AC5,1(CEXCOM_FILE) 400260' 201 05 0 12 000001 0236
HRLI AC5,10700 ; AC5,10700 400261' 505 05 0 00 010700
MOVEI AC1,7 ; AC1,7 400262' 201 01 0 00 000007
MOVE AC2,C.20 ; AC2,[POINT 7,P.AAJ-1,34] <1,7> 400263' 200 02 0 00 400660'
MOVEI AC4,7 ; AC4,7 400264' 201 04 0 00 000007
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 400265' 123 01 0 00 400635'
JFCL ; 400266' 255 00 0 00 000000
PUSH SP,C.13 ; SP,[2] 400267' 261 17 0 00 400651' 0237
PUSH SP,AC12 ; SP,CEXCOM_FILE 400270' 261 17 0 00 000012
PUSHJ SP,RSTB ; SP,RSTB 400271' 260 17 0 00 000000*
MOVEM AC12,0(SP) ; CEXCOM_FILE,0(SP) 400272' 202 12 0 17 000000 0238
PUSH SP,C.13 ; SP,[2] 400273' 261 17 0 00 400651'
PUSH SP,C.21 ; SP,[100000] 400274' 261 17 0 00 400661'
PUSHJ SP,RCOR ; SP,RCOR 400275' 260 17 0 00 000000*
HRRZ AC10,14(AC12) ; MODU_PTR,14(CEXCOM_FILE) 400276' 550 10 0 12 000014 0239
SETZM 0(SP) ; 0(SP) 400277' 402 00 0 17 000000 0240
MOVE AC0,AC10 ; AC0,MODU_PTR 400300' 200 00 0 00 000010
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 13
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
ADDI AC0,1 ; AC0,1 400301' 271 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 400302' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 400303' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400304' 402 00 0 17 000000 0241
PUSH SP,C.17 ; SP,[40] 400305' 261 17 0 00 400655'
PUSHJ SP,OUTPUT ; SP,OUTPUT 400306' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400307' 402 00 0 17 000000 0242
ADDI AC10,3 ; MODU_PTR,3 400310' 271 10 0 00 000003
PUSH SP,AC10 ; SP,MODU_PTR 400311' 261 17 0 00 000010
PUSHJ SP,OUTSTR ; SP,OUTSTR 400312' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400313' 402 00 0 17 000000 0243
PUSH SP,C.22 ; SP,[0,,P.AAK] 400314' 261 17 0 00 400662'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400315' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400316' 402 00 0 17 000000 0244
PUSHJ SP,PCRLF ; SP,PCRLF 400317' 260 17 0 00 000000*
MOVEI AC5,1(AC11) ; AC5,1(RSXMS_FILE) 400320' 201 05 0 11 000001 0249
HRLI AC5,10700 ; AC5,10700 400321' 505 05 0 00 010700
MOVEI AC1,6 ; AC1,6 400322' 201 01 0 00 000006
MOVE AC2,C.23 ; AC2,[POINT 7,P.AAL-1,34] <1,7> 400323' 200 02 0 00 400663'
MOVEI AC4,6 ; AC4,6 400324' 201 04 0 00 000006
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 400325' 123 01 0 00 400635'
JFCL ; 400326' 255 00 0 00 000000
PUSH SP,C.13 ; SP,[2] 400327' 261 17 0 00 400651' 0250
PUSH SP,AC11 ; SP,RSXMS_FILE 400330' 261 17 0 00 000011
PUSHJ SP,RSTB ; SP,RSTB 400331' 260 17 0 00 000000*
MOVEM AC14,-3(SP) ; KERNEL_FILE,-3(SP) 400332' 202 14 0 17 777775 0256
MOVEM AC12,-2(SP) ; CEXCOM_FILE,-2(SP) 400333' 202 12 0 17 777776
MOVEM AC11,-1(SP) ; RSXMS_FILE,-1(SP) 400334' 202 11 0 17 777777
MOVEM AC13,0(SP) ; VALUES,0(SP) 400335' 202 13 0 17 000000
PUSHJ SP,GETSYM ; SP,GETSYM 400336' 260 17 0 00 000000*
MOVEM AC11,0(SP) ; RSXMS_FILE,0(SP) 400337' 202 11 0 17 000000 0260
PUSHJ SP,FCOR ; SP,FCOR 400340' 260 17 0 00 000000*
MOVEM AC14,-2(SP) ; KERNEL_FILE,-2(SP) 400341' 202 14 0 17 777776 0264
MOVEM AC12,-1(SP) ; CEXCOM_FILE,-1(SP) 400342' 202 12 0 17 777777
MOVEM AC13,0(SP) ; VALUES,0(SP) 400343' 202 13 0 17 000000
PUSHJ SP,MCEX ; SP,MCEX 400344' 260 17 0 00 000000*
MOVEM AC12,0(SP) ; CEXCOM_FILE,0(SP) 400345' 202 12 0 17 000000 0268
PUSHJ SP,FCOR ; SP,FCOR 400346' 260 17 0 00 000000*
MOVE AC0,16(AC14) ; GEN_PAR_BASE,16(KERNEL_FILE) 400347' 200 00 0 14 000016 0273
ADDI AC0,1 ; GEN_PAR_BASE,1 400350' 271 00 0 00 000001
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400351' 202 14 0 17 000000 0274
PUSH SP,C.24 ; SP,[0,,P.AAM] 400352' 261 17 0 00 400664'
PUSH SP,C.25 ; SP,[0] 400353' 261 17 0 00 400665'
PUSH SP,AC0 ; SP,GEN_PAR_BASE 400354' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 400355' 261 17 0 00 400665'
PUSH SP,C.26 ; SP,[100200] 400356' 261 17 0 00 400666'
HLRZ AC1,36(AC13) ; AC1,36(VALUES) 400357' 554 01 0 13 000036
PUSH SP,AC1 ; SP,AC1 400360' 261 17 0 00 000001
PUSH SP,C.25 ; SP,[0] 400361' 261 17 0 00 400665'
PUSH SP,AC13 ; SP,VALUES 400362' 261 17 0 00 000013
PUSHJ SP,M_PCB ; SP,M_PCB 400363' 260 17 0 00 000000*
MOVE AC10,AC1 ; GEN_PCB,AC1 400364' 200 10 0 00 000001
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 14
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
ADJSP SP,-11 ; SP,-11 400365' 105 17 0 00 777767
MOVEM AC10,-55(SP) ; GEN_PCB,PAR_BLK 400366' 202 10 0 17 777723 0279
MOVEM AC14,-54(SP) ; KERNEL_FILE,PAR_BLK+1 400367' 202 14 0 17 777724 0280
MOVEM AC13,-53(SP) ; VALUES,PAR_BLK+2 400370' 202 13 0 17 777725 0281
MOVEI AC1,2 ; AC1,2 400371' 201 01 0 00 000002 0282
MOVEM AC1,-52(SP) ; AC1,PAR_BLK+3 400372' 202 01 0 17 777726
HRRZ AC1,3(AC13) ; AC1,3(VALUES) 400373' 550 01 0 13 000003 0283
PUSH SP,AC1 ; SP,AC1 400374' 261 17 0 00 000001
PUSH SP,C.27 ; SP,[0,,LOAD_TSKS] 400375' 261 17 0 00 400667'
MOVEI AC1,-57(SP) ; AC1,PAR_BLK 400376' 201 01 0 17 777721
PUSH SP,AC1 ; SP,AC1 400377' 261 17 0 00 000001
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400400' 260 17 0 00 000000*
HRRZ AC1,3(AC13) ; AC1,3(VALUES) 400401' 550 01 0 13 000003 0287
PUSH SP,AC1 ; SP,AC1 400402' 261 17 0 00 000001
PUSH SP,C.28 ; SP,[0,,DEL_BLK] 400403' 261 17 0 00 400670'
PUSH SP,C.25 ; SP,[0] 400404' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400405' 260 17 0 00 000000*
HRRZ AC1,3(AC13) ; AC1,3(VALUES) 400406' 550 01 0 13 000003 0288
PUSH SP,AC1 ; SP,AC1 400407' 261 17 0 00 000001
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400410' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 400411' 105 17 0 00 777777
HLRZ AC1,3(AC13) ; AC1,3(VALUES) 400412' 554 01 0 13 000003 0292
PUSH SP,AC1 ; SP,AC1 400413' 261 17 0 00 000001
PUSH SP,C.29 ; SP,[0,,LOAD_MCBS] 400414' 261 17 0 00 400671'
MOVEI AC1,-65(SP) ; AC1,PAR_BLK 400415' 201 01 0 17 777713
PUSH SP,AC1 ; SP,AC1 400416' 261 17 0 00 000001
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400417' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400420' 105 17 0 00 777775
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400421' 202 14 0 17 000000 0296
HRRZ AC1,17(AC13) ; AC1,17(VALUES) 400422' 550 01 0 13 000017
ADD AC10,AC1 ; GEN_PCB,AC1 400423' 270 10 0 00 000001
PUSH SP,AC10 ; SP,GEN_PCB 400424' 261 17 0 00 000010
MOVE AC1,16(AC14) ; AC1,16(KERNEL_FILE) 400425' 200 01 0 14 000016
SUB AC1,AC0 ; AC1,GEN_PAR_BASE 400426' 274 01 0 00 000000
ADDI AC1,1 ; AC1,1 400427' 271 01 0 00 000001
IDIVI AC1,100 ; AC1,100 400430' 231 01 0 00 000100
PUSH SP,AC1 ; SP,AC1 400431' 261 17 0 00 000001
PUSHJ SP,PUTWRD ; SP,PUTWRD 400432' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400433' 105 17 0 00 777775
MOVE AC10,16(AC14) ; POOL_PAR_BASE,16(KERNEL_FILE) 400434' 200 10 0 14 000016 0301
ADDI AC10,1 ; POOL_PAR_BASE,1 400435' 271 10 0 00 000001
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400436' 202 14 0 17 000000 0302
PUSH SP,C.30 ; SP,[0,,P.AAN] 400437' 261 17 0 00 400672'
PUSH SP,C.25 ; SP,[0] 400440' 261 17 0 00 400665'
PUSH SP,AC10 ; SP,POOL_PAR_BASE 400441' 261 17 0 00 000010
PUSH SP,C.25 ; SP,[0] 400442' 261 17 0 00 400665'
PUSH SP,C.26 ; SP,[100200] 400443' 261 17 0 00 400666'
HLRZ AC0,35(AC13) ; AC0,35(VALUES) 400444' 554 00 0 13 000035
PUSH SP,AC0 ; SP,AC0 400445' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 400446' 261 17 0 00 400665'
PUSH SP,AC13 ; SP,VALUES 400447' 261 17 0 00 000013
PUSHJ SP,M_PCB ; SP,M_PCB 400450' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 15
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
MOVE AC0,AC1 ; POOL_PCB,AC1 400451' 200 00 0 00 000001
ADJSP SP,-11 ; SP,-11 400452' 105 17 0 00 777767
MOVEM AC14,-1(SP) ; KERNEL_FILE,-1(SP) 400453' 202 14 0 17 777777 0308
MOVEM AC0,0(SP) ; POOL_PCB,0(SP) 400454' 202 00 0 17 000000
PUSH SP,C.13 ; SP,[2] 400455' 261 17 0 00 400651'
PUSH SP,AC13 ; SP,VALUES 400456' 261 17 0 00 000013
PUSHJ SP,LODMCB ; SP,LODMCB 400457' 260 17 0 00 000000*
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400460' 202 14 0 17 000000 0312
HRRZ AC1,17(AC13) ; AC1,17(VALUES) 400461' 550 01 0 13 000017
ADD AC0,AC1 ; POOL_PCB,AC1 400462' 270 00 0 00 000001
PUSH SP,AC0 ; SP,POOL_PCB 400463' 261 17 0 00 000000
MOVE AC1,16(AC14) ; AC1,16(KERNEL_FILE) 400464' 200 01 0 14 000016
SUB AC1,AC10 ; AC1,POOL_PAR_BASE 400465' 274 01 0 00 000010
ADDI AC1,1 ; AC1,1 400466' 271 01 0 00 000001
IDIVI AC1,100 ; AC1,100 400467' 231 01 0 00 000100
PUSH SP,AC1 ; SP,AC1 400470' 261 17 0 00 000001
PUSHJ SP,PUTWRD ; SP,PUTWRD 400471' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400472' 105 17 0 00 777775
HLRZ AC0,1(AC13) ; AC0,1(VALUES) 400473' 554 00 0 13 000001 0317
PUSH SP,AC0 ; SP,AC0 400474' 261 17 0 00 000000
PUSH SP,C.28 ; SP,[0,,DEL_BLK] 400475' 261 17 0 00 400670'
PUSH SP,C.25 ; SP,[0] 400476' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400477' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400500' 105 17 0 00 777775
HLRZ AC0,1(AC13) ; AC0,1(VALUES) 400501' 554 00 0 13 000001 0318
PUSH SP,AC0 ; SP,AC0 400502' 261 17 0 00 000000
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400503' 260 17 0 00 000000*
HRRZ AC0,2(AC13) ; AC0,2(VALUES) 400504' 550 00 0 13 000002 0319
PUSH SP,AC0 ; SP,AC0 400505' 261 17 0 00 000000
PUSH SP,C.31 ; SP,[0,,DEL_DEV] 400506' 261 17 0 00 400673'
PUSH SP,C.25 ; SP,[0] 400507' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400510' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400511' 105 17 0 00 777775
HRRZ AC0,2(AC13) ; AC0,2(VALUES) 400512' 550 00 0 13 000002 0320
PUSH SP,AC0 ; SP,AC0 400513' 261 17 0 00 000000
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400514' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 400515' 105 17 0 00 777777
HLRZ AC0,2(AC13) ; AC0,2(VALUES) 400516' 554 00 0 13 000002 0321
PUSH SP,AC0 ; SP,AC0 400517' 261 17 0 00 000000
PUSH SP,C.28 ; SP,[0,,DEL_BLK] 400520' 261 17 0 00 400670'
PUSH SP,C.25 ; SP,[0] 400521' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400522' 260 17 0 00 000000*
ADJSP SP,-3 ; SP,-3 400523' 105 17 0 00 777775
HLRZ AC0,2(AC13) ; AC0,2(VALUES) 400524' 554 00 0 13 000002 0322
PUSH SP,AC0 ; SP,AC0 400525' 261 17 0 00 000000
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400526' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 400527' 105 17 0 00 777777
HLRZ AC0,3(AC13) ; AC0,3(VALUES) 400530' 554 00 0 13 000003 0326
PUSH SP,AC0 ; SP,AC0 400531' 261 17 0 00 000000
PUSH SP,C.28 ; SP,[0,,DEL_BLK] 400532' 261 17 0 00 400670'
PUSH SP,C.25 ; SP,[0] 400533' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400534' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 16
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
ADJSP SP,-3 ; SP,-3 400535' 105 17 0 00 777775
HLRZ AC0,3(AC13) ; AC0,3(VALUES) 400536' 554 00 0 13 000003 0327
PUSH SP,AC0 ; SP,AC0 400537' 261 17 0 00 000000
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400540' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 400541' 105 17 0 00 777777
MOVE AC0,16(AC14) ; BUF_PAR_BASE,16(KERNEL_FILE) 400542' 200 00 0 14 000016 0331
ADDI AC0,1 ; BUF_PAR_BASE,1 400543' 271 00 0 00 000001
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400544' 202 14 0 17 000000 0332
PUSH SP,C.32 ; SP,[0,,P.AAO] 400545' 261 17 0 00 400674'
PUSH SP,C.25 ; SP,[0] 400546' 261 17 0 00 400665'
PUSH SP,AC0 ; SP,BUF_PAR_BASE 400547' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 400550' 261 17 0 00 400665'
PUSH SP,C.26 ; SP,[100200] 400551' 261 17 0 00 400666'
HLRZ AC0,35(AC13) ; AC0,35(VALUES) 400552' 554 00 0 13 000035
PUSH SP,AC0 ; SP,AC0 400553' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 400554' 261 17 0 00 400665'
PUSH SP,AC13 ; SP,VALUES 400555' 261 17 0 00 000013
PUSHJ SP,M_PCB ; SP,M_PCB 400556' 260 17 0 00 000000*
ADJSP SP,-11 ; SP,-11 400557' 105 17 0 00 777767
MOVEM AC14,-1(SP) ; KERNEL_FILE,-1(SP) 400560' 202 14 0 17 777777 0337
MOVEM AC13,0(SP) ; VALUES,0(SP) 400561' 202 13 0 17 000000
PUSHJ SP,FCLEAN ; SP,FCLEAN 400562' 260 17 0 00 000000*
MOVEM AC14,-2(SP) ; KERNEL_FILE,-2(SP) 400563' 202 14 0 17 777776 0341
SETZM -1(SP) ; -1(SP) 400564' 402 00 0 17 777777
MOVEM AC13,0(SP) ; VALUES,0(SP) 400565' 202 13 0 17 000000
PUSHJ SP,TELLK ; SP,TELLK 400566' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400567' 402 00 0 17 000000 0345
PUSH SP,C.33 ; SP,[0,,P.AAP] 400570' 261 17 0 00 400675'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400571' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400572' 402 00 0 17 000000 0346
MOVEI AC0,2(AC14) ; AC0,2(KERNEL_FILE) 400573' 201 00 0 14 000002
PUSH SP,AC0 ; SP,AC0 400574' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 400575' 260 17 0 00 000000*
ADJSP SP,-2 ; SP,-2 400576' 105 17 0 00 777776
SETZM 0(SP) ; 0(SP) 400577' 402 00 0 17 000000 0347
PUSH SP,C.34 ; SP,[0,,P.AAQ] 400600' 261 17 0 00 400676'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400601' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400602' 402 00 0 17 000000 0348
PUSHJ SP,PCRLF ; SP,PCRLF 400603' 260 17 0 00 000000*
PUSH SP,C.13 ; SP,[2] 400604' 261 17 0 00 400651' 0352
PUSH SP,AC14 ; SP,KERNEL_FILE 400605' 261 17 0 00 000014
PUSHJ SP,WCOR ; SP,WCOR 400606' 260 17 0 00 000000*
ADJSP SP,-2 ; SP,-2 400607' 105 17 0 00 777776
MOVEM AC14,0(SP) ; KERNEL_FILE,0(SP) 400610' 202 14 0 17 000000 0356
PUSHJ SP,FCOR ; SP,FCOR 400611' 260 17 0 00 000000*
MOVEM AC13,0(SP) ; VALUES,0(SP) 400612' 202 13 0 17 000000 0360
PUSHJ SP,FREBLK ; SP,FREBLK 400613' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 400614' 402 00 0 17 000000 0364
PUSH SP,C.35 ; SP,[0,,P.AAR] 400615' 261 17 0 00 400677'
PUSHJ SP,OUTSTR ; SP,OUTSTR 400616' 260 17 0 00 000000*
ADJSP SP,-2 ; SP,-2 400617' 105 17 0 00 777776
SETZM 0(SP) ; 0(SP) 400620' 402 00 0 17 000000 0365
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 17
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (2)
PUSHJ SP,PCRLF ; SP,PCRLF 400621' 260 17 0 00 000000*
PUSH SP,C.8 ; SP,[1] 400622' 261 17 0 00 400644' 0367
PUSHJ SP,CLOSE ; SP,CLOSE 400623' 260 17 0 00 000000*
ADJSP SP,-60 ; SP,-60 400624' 105 17 0 00 777720 0161
ADJSP SP,-4 ; SP,-4 400625' 105 17 0 00 777774 0132
POP SP,AC14 ; SP,AC14 400626' 262 17 0 00 000014
POP SP,AC13 ; SP,AC13 400627' 262 17 0 00 000013
POP SP,AC12 ; SP,AC12 400630' 262 17 0 00 000012
POP SP,AC11 ; SP,AC11 400631' 262 17 0 00 000011
POP SP,AC10 ; SP,AC10 400632' 262 17 0 00 000010
POP SP,AC0 ; SP,AC0 400633' 262 17 0 00 000000
POPJ SP, ; SP, 400634' 263 17 0 00 000000
C.1: MOVSLJ ; 400635' 016 00 0 00 000000
C.2: EXP 15530 ; 15530 400636' 000000 015530
C.3: EXP 15 ; 15 400637' 000000 000015
C.4: EXP 122 ; 122 400640' 000000 000122
C.5: EXP 3 ; 3 400641' 000000 000003
C.6: EXP 20 ; 20 400642' 000000 000020
C.7: POINT 7,P.AAB-1,34 ; 7,P.AAB-1,34 400643' 01 07 0 00 400016'
C.8: EXP 1 ; 1 400644' 000000 000001
C.9: XWD 0,P.AAC ; 0,P.AAC 400645' 000000 400022'
C.10: XWD 0,ROUTINE_NAME ; 0,ROUTINE_NAME 400646' 000000 400000'
C.11: XWD 0,P.AAD ; 0,P.AAD 400647' 000000 400023'
C.12: POINT 7,P.AAE-1,34 ; 7,P.AAE-1,34 400650' 01 07 0 00 400030'
C.13: EXP 2 ; 2 400651' 000000 000002
C.14: XWD 0,P.AAF ; 0,P.AAF 400652' 000000 400033'
C.15: POINT 7,P.AAG-1,34 ; 7,P.AAG-1,34 400653' 01 07 0 00 400040'
C.16: EXP 1200000 ; 1200000 400654' 000001 200000
C.17: EXP 40 ; 40 400655' 000000 000040
C.18: XWD 0,P.AAH ; 0,P.AAH 400656' 000000 400043'
C.19: XWD 0,P.AAI ; 0,P.AAI 400657' 000000 400044'
C.20: POINT 7,P.AAJ-1,34 ; 7,P.AAJ-1,34 400660' 01 07 0 00 400051'
C.21: EXP 100000 ; 100000 400661' 000000 100000
C.22: XWD 0,P.AAK ; 0,P.AAK 400662' 000000 400054'
C.23: POINT 7,P.AAL-1,34 ; 7,P.AAL-1,34 400663' 01 07 0 00 400054'
C.24: XWD 0,P.AAM ; 0,P.AAM 400664' 000000 400057'
C.25: EXP 0 ; 0 400665' 000000 000000
C.26: EXP 100200 ; 100200 400666' 000000 100200
C.27: XWD 0,LOAD_TSKS ; 0,LOAD_TSKS 400667' 000000 000000V
C.28: XWD 0,DEL_BLK ; 0,DEL_BLK 400670' 000000 000000V
C.29: XWD 0,LOAD_MCBS ; 0,LOAD_MCBS 400671' 000000 000000V
C.30: XWD 0,P.AAN ; 0,P.AAN 400672' 000000 400061'
C.31: XWD 0,DEL_DEV ; 0,DEL_DEV 400673' 000000 000000V
C.32: XWD 0,P.AAO ; 0,P.AAO 400674' 000000 400063'
C.33: XWD 0,P.AAP ; 0,P.AAP 400675' 000000 400065'
C.34: XWD 0,P.AAQ ; 0,P.AAQ 400676' 000000 400067'
C.35: XWD 0,P.AAR ; 0,P.AAR 400677' 000000 400071'
; Routine Size: 384 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 18
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (3)
; 0369 ROUTINE DEL_BLK (BLK_PTR, UNUSED) = !FREE ANY BLOCK OF MEMORY
; 0370
; 0371 !++
; 0372 ! FUNCITONAL DESCRIPTION:
; 0373 !
; 0374 ! CALLS FREBLK TO FREE ANY BLOCK OF MEMORY
; 0375 !
; 0376 ! FORMAL PARAMETERS:
; 0377 !
; 0378 ! BLK_PTR - ADDRESS OF BLOCK TO FREE
; 0379 !
; 0380 ! IMPLICIT INPUTS:
; 0381 !
; 0382 ! NONE
; 0383 !
; 0384 ! IMPLICIT OUTPUTS:
; 0385 !
; 0386 ! NONE
; 0387 !
; 0388 ! ROUTINE VALUE:
; 0389 !
; 0390 ! ALWAYS 0
; 0391 !
; 0392 ! SIDE EFFECTS:
; 0393 !
; 0394 ! SOME MEMORY IS RETURNED TO FREE CORE
; 0395 !--
; 0396
; 0397 BEGIN
; 0398
; 0399 MAP
; 0400 BLK_PTR : REF ANY_BLOCK;
; 0401
; 0402 FREBLK (.BLK_PTR);
; 0403 0
; 0404 END; !END OF DEL_BLK
DEL_BLK:PUSH SP,-2(SP) ; SP,BLK_PTR 400700' 261 17 0 17 777776 0402
PUSHJ SP,FREBLK ; SP,FREBLK 400701' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 400702' 105 17 0 00 777777 0397
SETZ AC1, ; AC1, 400703' 400 01 0 00 000000 0369
POPJ SP, ; SP, 400704' 263 17 0 00 000000
; Routine Size: 5 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 19
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (4)
; 0405 ROUTINE DEL_DEV (DEV_PTR, UNUSED) = !FREE A DEV BLOCK
; 0406
; 0407 !++
; 0408 ! FUNCITONAL DESCRIPTION:
; 0409 !
; 0410 ! CALLS FREBLK TO FREE DEV AND FIND_CHAIN TO REMOVE CONTROLLERS ETC.
; 0411 !
; 0412 ! FORMAL PARAMETERS:
; 0413 !
; 0414 ! DEV_PTR - ADDRESS OF DEV BLOCK TO FREE
; 0415 !
; 0416 ! IMPLICIT INPUTS:
; 0417 !
; 0418 ! NONE
; 0419 !
; 0420 ! IMPLICIT OUTPUTS:
; 0421 !
; 0422 ! NONE
; 0423 !
; 0424 ! ROUTINE VALUE:
; 0425 !
; 0426 ! ALWAYS 0
; 0427 !
; 0428 ! SIDE EFFECTS:
; 0429 !
; 0430 ! SOME MEMORY IS RETURNED TO FREE CORE
; 0431 !--
; 0432
; 0433 BEGIN
; 0434
; 0435 MAP
; 0436 DEV_PTR : REF DEV_BLOCK;
; 0437
; 0438 FND_CHAIN (.DEV_PTR [DEV_CTL], DEL_CTL, 0);
; 0439 DEL_PTRS (.DEV_PTR [DEV_CTL]);
; 0440 FREBLK (.DEV_PTR);
; 0441 0
; 0442 END; !END OF DEL_DEV
DEL_DEV:PUSH SP,AC0 ; SP,AC0 400705' 261 17 0 00 000000 0405
MOVE AC0,-3(SP) ; AC0,DEV_PTR 400706' 200 00 0 17 777775 0438
MOVE AC2,AC0 ; AC2,AC0 400707' 200 02 0 00 000000
HRRZ AC1,2(AC2) ; AC1,2(AC2) 400710' 550 01 0 02 000002
PUSH SP,AC1 ; SP,AC1 400711' 261 17 0 00 000001
PUSH SP,C.36 ; SP,[0,,DEL_CTL] 400712' 261 17 0 00 400727'
PUSH SP,C.25 ; SP,[0] 400713' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400714' 260 17 0 00 000000*
MOVE AC2,AC0 ; AC2,AC0 400715' 200 02 0 00 000000 0439
HRRZ AC1,2(AC2) ; AC1,2(AC2) 400716' 550 01 0 02 000002
PUSH SP,AC1 ; SP,AC1 400717' 261 17 0 00 000001
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400720' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 20
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (4)
MOVEM AC0,0(SP) ; AC0,0(SP) 400721' 202 00 0 17 000000 0440
PUSHJ SP,FREBLK ; SP,FREBLK 400722' 260 17 0 00 000000*
ADJSP SP,-4 ; SP,-4 400723' 105 17 0 00 777774 0433
SETZ AC1, ; AC1, 400724' 400 01 0 00 000000 0405
POP SP,AC0 ; SP,AC0 400725' 262 17 0 00 000000
POPJ SP, ; SP, 400726' 263 17 0 00 000000
C.36: XWD 0,DEL_CTL ; 0,DEL_CTL 400727' 000000 000000V
; Routine Size: 19 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 21
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (5)
; 0443 ROUTINE DEL_CTL (CTL_PTR, UNUSED) = !FREE CTL BLOCKS
; 0444
; 0445 !++
; 0446 ! FUNCITONAL DESCRIPTION:
; 0447 !
; 0448 ! CALLS FREBLK TO FREE CTL BLOCK RELATED MEMORY
; 0449 !
; 0450 ! FORMAL PARAMETERS:
; 0451 !
; 0452 ! CTL_PTR - ADDRESS OF CTL BLOCK TO FREE
; 0453 !
; 0454 ! IMPLICIT INPUTS:
; 0455 !
; 0456 ! NONE
; 0457 !
; 0458 ! IMPLICIT OUTPUTS:
; 0459 !
; 0460 ! NONE
; 0461 !
; 0462 ! ROUTINE VALUE:
; 0463 !
; 0464 ! ALWAYS 0
; 0465 !
; 0466 ! SIDE EFFECTS:
; 0467 !
; 0468 ! SOME MEMORY IS RETURNED TO FREE CORE
; 0469 !--
; 0470
; 0471 BEGIN
; 0472
; 0473 MAP
; 0474 CTL_PTR : REF CTL_BLOCK;
; 0475
; 0476 FND_CHAIN (.CTL_PTR [CTL_UNT], DEL_UNT, 0); !FIND AND DELETE UNITS
; 0477 DEL_PTRS (.CTL_PTR [CTL_UNT]);
; 0478 FREBLK (.CTL_PTR);
; 0479 0
; 0480 END; !END OF DEL_CTL
DEL_CTL:PUSH SP,AC0 ; SP,AC0 400730' 261 17 0 00 000000 0443
MOVE AC0,-3(SP) ; AC0,CTL_PTR 400731' 200 00 0 17 777775 0476
MOVE AC2,AC0 ; AC2,AC0 400732' 200 02 0 00 000000
HRRZ AC1,2(AC2) ; AC1,2(AC2) 400733' 550 01 0 02 000002
PUSH SP,AC1 ; SP,AC1 400734' 261 17 0 00 000001
PUSH SP,C.37 ; SP,[0,,DEL_UNT] 400735' 261 17 0 00 400752'
PUSH SP,C.25 ; SP,[0] 400736' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400737' 260 17 0 00 000000*
MOVE AC2,AC0 ; AC2,AC0 400740' 200 02 0 00 000000 0477
HRRZ AC1,2(AC2) ; AC1,2(AC2) 400741' 550 01 0 02 000002
PUSH SP,AC1 ; SP,AC1 400742' 261 17 0 00 000001
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400743' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 22
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (5)
MOVEM AC0,0(SP) ; AC0,0(SP) 400744' 202 00 0 17 000000 0478
PUSHJ SP,FREBLK ; SP,FREBLK 400745' 260 17 0 00 000000*
ADJSP SP,-4 ; SP,-4 400746' 105 17 0 00 777774 0471
SETZ AC1, ; AC1, 400747' 400 01 0 00 000000 0443
POP SP,AC0 ; SP,AC0 400750' 262 17 0 00 000000
POPJ SP, ; SP, 400751' 263 17 0 00 000000
C.37: XWD 0,DEL_UNT ; 0,DEL_UNT 400752' 000000 000000V
; Routine Size: 19 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 23
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (6)
; 0481 ROUTINE DEL_UNT (UNT_PTR, UNUSED) = !FREE UNT BLOCKS
; 0482
; 0483 !++
; 0484 ! FUNCITONAL DESCRIPTION:
; 0485 !
; 0486 ! CALLS FREBLK TO FREE UNT BLOCK RELATED MEMORY
; 0487 !
; 0488 ! FORMAL PARAMETERS:
; 0489 !
; 0490 ! UNT_PTR - ADDRESS OF UNT BLOCK TO FREE
; 0491 !
; 0492 ! IMPLICIT INPUTS:
; 0493 !
; 0494 ! NONE
; 0495 !
; 0496 ! IMPLICIT OUTPUTS:
; 0497 !
; 0498 ! NONE
; 0499 !
; 0500 ! ROUTINE VALUE:
; 0501 !
; 0502 ! ALWAYS 0
; 0503 !
; 0504 ! SIDE EFFECTS:
; 0505 !
; 0506 ! SOME MEMORY IS RETURNED TO FREE CORE
; 0507 !--
; 0508
; 0509 BEGIN
; 0510
; 0511 MAP
; 0512 UNT_PTR : REF UNT_BLOCK;
; 0513
; 0514 FND_CHAIN (.UNT_PTR [UNT_TRB], DEL_BLK, 0); !FIND AND DELETE TRIBUTARIES
; 0515 DEL_PTRS (.UNT_PTR [UNT_TRB]);
; 0516 FREBLK (.UNT_PTR);
; 0517 0
; 0518 END; !END OF DEL_UNT
DEL_UNT:PUSH SP,AC0 ; SP,AC0 400753' 261 17 0 00 000000 0481
MOVE AC0,-3(SP) ; AC0,UNT_PTR 400754' 200 00 0 17 777775 0514
MOVE AC2,AC0 ; AC2,AC0 400755' 200 02 0 00 000000
HRRZ AC1,4(AC2) ; AC1,4(AC2) 400756' 550 01 0 02 000004
PUSH SP,AC1 ; SP,AC1 400757' 261 17 0 00 000001
PUSH SP,C.28 ; SP,[0,,DEL_BLK] 400760' 261 17 0 00 400670'
PUSH SP,C.25 ; SP,[0] 400761' 261 17 0 00 400665'
PUSHJ SP,FND_CHAIN ; SP,FND_CHAIN 400762' 260 17 0 00 000000*
MOVE AC2,AC0 ; AC2,AC0 400763' 200 02 0 00 000000 0515
HRRZ AC1,4(AC2) ; AC1,4(AC2) 400764' 550 01 0 02 000004
PUSH SP,AC1 ; SP,AC1 400765' 261 17 0 00 000001
PUSHJ SP,DEL_PTRS ; SP,DEL_PTRS 400766' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 24
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (6)
MOVEM AC0,0(SP) ; AC0,0(SP) 400767' 202 00 0 17 000000 0516
PUSHJ SP,FREBLK ; SP,FREBLK 400770' 260 17 0 00 000000*
ADJSP SP,-4 ; SP,-4 400771' 105 17 0 00 777774 0509
SETZ AC1, ; AC1, 400772' 400 01 0 00 000000 0481
POP SP,AC0 ; SP,AC0 400773' 262 17 0 00 000000
POPJ SP, ; SP, 400774' 263 17 0 00 000000
; Routine Size: 18 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 25
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
; 0519 ROUTINE LOAD_TSKS (TSKB_PTR, PAR_BLK) = !LOAD TASKS INTO THE GEN PARTITION
; 0520
; 0521 !++
; 0522 ! FUNCTIONAL DESCRIPTION:
; 0523 !
; 0524 ! LOAD TASKS INTO THE GEN PARTITION.
; 0525 !
; 0526 ! FORMAL PARAMETERS:
; 0527 !
; 0528 ! TSKB_PTR - POINTS TO THE VNPTSK BLOCK FOR THIS TASK
; 0529 ! PAR_BLK - A VECTOR OF USEFUL LOCATIONS
; 0530 !
; 0531 ! IMPLICIT INPUTS:
; 0532 !
; 0533 ! NONE
; 0534 !
; 0535 ! IMPLICIT OUTPUTS:
; 0536 !
; 0537 ! NONE
; 0538 !
; 0539 ! ROUTINE VALUE:
; 0540 !
; 0541 ! ALWAYS 0
; 0542 !
; 0543 ! SIDE EFFECTS:
; 0544 !
; 0545 ! NONE
; 0546 !
; 0547 !--
; 0548
; 0549 BEGIN
; 0550
; 0551 BIND
; 0552 ROUTINE_NAME = UPLIT (%ASCIZ'LOAD_TSKS');
; 0553
; 0554 MAP
; 0555 TSKB_PTR : REF VNPTSK_BLOCK,
; 0556 PAR_BLK : REF VECTOR;
; 0557
; 0558 BIND
; 0559 GEN_PCB = PAR_BLK [0],
; 0560 KERNEL_FILE = PAR_BLK [1] : REF FILE_BLOCK,
; 0561 VALUES = PAR_BLK [2] : REF VNPVAL_BLOCK,
; 0562 FILE_CHAN = PAR_BLK [3];
; 0563
; 0564 LOCAL
; 0565 TSK_FILE : REF FILE_BLOCK,
; 0566 TSK_LABEL : REF VECTOR [1024],
; 0567 TSK_BASE,
; 0568 TSK_TOP,
; 0569 TSK_SIZE,
; 0570 TSK_PCB,
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 26
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
; 0571 TSK_R50,
; 0572 TASK_NAME : VECTOR [CH$ALLOCATION (7)],
; 0573 PARTITION_NAME : VECTOR [CH$ALLOCATION (7)],
; 0574 PARTITION_BASE,
; 0575 MODU_PTR : REF MODU_BLOCK,
; 0576 CLK_ADDR;
; 0577
; 0578 IF (.TSKB_PTR [TSK_TYPE] EQL TSK_TASK_TYPE)
; 0579 THEN
; 0580 BEGIN
; 0581 !
; 0582 ! GET FILE FIRST
; 0583 !
; 0584
; 0585 IF ((TSK_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
; 0586 THEN
; 0587 ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0, 0)
; 0588 ELSE
; 0589 BEGIN
; 0590 OUTSTR (0, UPLIT (%ASCIZ'[Loading Task '));
; 0591 OUTSTR (0, TSKB_PTR [TSK_NAME]);
; 0592 OUTSTR (0, UPLIT (%ASCIZ' --> '));
; 0593 CH$MOVE (LEN_TSK_NAME, CH$PTR (TSKB_PTR [TSK_NAME]), CH$PTR (TSK_FILE [FILE_NAME]));
; 0594 RSTB (.FILE_CHAN, .TSK_FILE);
; 0595 RCOR (.TSK_FILE, .FILE_CHAN, 32*2048);
; 0596 TSK_LABEL = .TSK_FILE [FILE_LABEL];
; 0597 TSK_BASE = .TSK_LABEL [L$BSA] + (.TSK_LABEL [L$BSA + 1]*256);
; 0598 TSK_TOP = .TSK_LABEL [L$BHGV] + (.TSK_LABEL [L$BHGV + 1]*256);
; 0599 TSK_SIZE = .TSK_TOP - .TSK_BASE + 1;
; 0600 MODU_PTR = .TSK_FILE [FILE_MODU];
; 0601 OUTSTR (0, MODU_PTR [MODU_NAME]);
; 0602 OUTPUT (0, %C' ');
; 0603 OUTSTR (0, MODU_PTR [MODU_IDENT]);
; 0604 OUTSTR (0, UPLIT (%ASCIZ' ]'));
; 0605 PCRLF (0);
; 0606 !
; 0607 ! FORM THE PARTITION
; 0608 !
; 0609 begin
; 0610 macro CH$LEN (PTR) = ch$diff (ch$find_ch (6, PTR, 0), PTR) %;
; 0611 ch$wchar (0, CH$COPY (CH$LEN (CH$PTR (TSKB_PTR [TSK_NAME])),
; 0612 CH$PTR (TSKB_PTR [TSK_NAME]),
; 0613 %c' ', 6, CH$PTR (PARTITION_NAME)));
; 0614 end;
; 0615 PARTITION_BASE = .KERNEL_FILE [FILE_HWM] + 1;
; 0616 TSK_PCB = M_PCB (.KERNEL_FILE, PARTITION_NAME, .GEN_PCB, .PARTITION_BASE,
; 0617 .PARTITION_BASE + .TSK_SIZE - 1, %O'004010', .VALUES [PS_SYS], 0, .VALUES);
; 0618 !
; 0619 ! COPY THE TASK IN
; 0620 !
; 0621
; 0622 INCR COUNTER FROM 0 TO .TSK_SIZE - 1 DO
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 27
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
; 0623 PUTBYT (.KERNEL_FILE, .PARTITION_BASE + .COUNTER, GETBYT (.TSK_FILE, .TSK_BASE + .COUNTER));
; 0624
; 0625 !
; 0626 ! BUILD THE TASK NAME
; 0627 !
; 0628 TSK_R50 = (.TSK_LABEL [L$BTSK]^16) + (.TSK_LABEL [L$BTSK + 1]^24) + (.TSK_LABEL [L$BTSK + 2]) + (
; 0629 .TSK_LABEL [L$BTSK + 3]^8);
; 0630 R50TOA (.TSK_R50, TASK_NAME);
; 0631 !
; 0632 ! INSTALL THE TASK
; 0633 !
; 0634 INSTAL (.KERNEL_FILE, .TSK_FILE, TASK_NAME, .TSK_PCB, .VALUES);
; 0635 !
; 0636 ! DETERMINE WHETHER THIS TASK REQUIRES A CLOCK QUEUE ENTRY AND BUILD ONE IF
; 0637 ! APPROPRIATE.
; 0638
; 0639 IF (.TSKB_PTR [TSK_TIME] NEQ 0)
; 0640 THEN
; 0641 BEGIN
; 0642 CLK_ADDR = ALOCB (.KERNEL_FILE, .VALUES [CLK_LGTH], 0, .VALUES);
; 0643 PUTWRD (.KERNEL_FILE, .CLK_ADDR + .VALUES [CLK_TIM],
; 0644 GETWRD (.KERNEL_FILE, .VALUES [ABTIM]) + (.TSKB_PTR [TSK_TIME]*GETWRD (.KERNEL_FILE,
; 0645 .VALUES [TKPS])));
; 0646 PUTWRD (.KERNEL_FILE, .CLK_ADDR + .VALUES [CLK_RQT], .VALUES [CLK_SSHT]);
; 0647 PUTWRD (.KERNEL_FILE, .CLK_ADDR + .VALUES [CLK_TCB],
; 0648 GETWRD (.KERNEL_FILE,
; 0649 .TSK_PCB + .VALUES [P_TCB]));
; 0650 PUTWRD (.KERNEL_FILE, .CLK_ADDR + .VALUES [CLK_LNK], GETWRD (.KERNEL_FILE, .VALUES [CLKHD]));
; 0651 PUTWRD (.KERNEL_FILE, .VALUES [CLKHD], .CLK_ADDR);
; 0652 END;
; 0653
; 0654 !
; 0655 ! FREE THE FILE ETC.
; 0656 !
; 0657 FCOR (.TSK_FILE);
; 0658 END;
; 0659
; 0660 END
; 0661 ELSE
; 0662 BEGIN
; 0663 !
; 0664 ! GET THE DRIVER FILE
; 0665 !
; 0666
; 0667 IF ((TSK_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
; 0668 THEN
; 0669 ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0, 0)
; 0670 ELSE
; 0671 BEGIN
; 0672 OUTSTR (0, UPLIT (%ASCIZ'[Loading Driver '));
; 0673 OUTSTR (0, TSKB_PTR [TSK_NAME]);
; 0674 OUTSTR (0, UPLIT (%ASCIZ': --> '));
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 28
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
; 0675 CH$COPY (LEN_DRV_NAME, CH$PTR (TSKB_PTR [TSK_NAME]), 3, CH$PTR (UPLIT (%ASCIZ'DRV')), 0, 6,
; 0676 CH$PTR (TSK_FILE [FILE_NAME]));
; 0677 RSTB (.FILE_CHAN, .TSK_FILE);
; 0678 RCOR (.TSK_FILE, .FILE_CHAN, 4*2048);
; 0679 MODU_PTR = .TSK_FILE [FILE_MODU];
; 0680 OUTSTR (0, MODU_PTR [MODU_NAME]);
; 0681 OUTPUT (0, %C' ');
; 0682 OUTSTR (0, MODU_PTR [MODU_IDENT]);
; 0683 OUTSTR (0, UPLIT (%ASCIZ' ]'));
; 0684 PCRLF (0);
; 0685 LOADD (.KERNEL_FILE, .TSK_FILE, UPLIT (%ASCIZ'GEN '), .GEN_PCB, .VALUES);
; 0686 FCOR (.TSK_FILE)
; 0687 END;
; 0688
; 0689 END;
; 0690
; 0691 0
; 0692 END; !OF LOAD_TSKS
P.AAS: BYTE (7)"L","O","A","D","_" ; LOAD_ 400775' 114 117 101 104 137
BYTE (7)"T","S","K","S",000 ; TSKS 400776' 124 123 113 123 000
P.AAT: BYTE (7)"[","L","o","a","d" ; [Load 400777' 133 114 157 141 144
BYTE (7)"i","n","g"," ","T" ; ing T 401000' 151 156 147 040 124
BYTE (7)"a","s","k"," ",000 ; ask 401001' 141 163 153 040 000
P.AAU: BYTE (7)011,"-","-",">"," " ; --> 401002' 011 055 055 076 040
BYTE (7)000,000,000,000,000 ; 401003' 000 000 000 000 000
P.AAV: BYTE (7)" ","]",000,000,000 ; ] 401004' 040 135 000 000 000
P.AAW: BYTE (7)"[","L","o","a","d" ; [Load 401005' 133 114 157 141 144
BYTE (7)"i","n","g"," ","D" ; ing D 401006' 151 156 147 040 104
BYTE (7)"r","i","v","e","r" ; river 401007' 162 151 166 145 162
BYTE (7)" ",000,000,000,000 ; 401010' 040 000 000 000 000
P.AAX: BYTE (7)":",011,"-","-",">" ; : --> 401011' 072 011 055 055 076
BYTE (7)" ",000,000,000,000 ; 401012' 040 000 000 000 000
P.AAY: BYTE (7)"D","R","V",000,000 ; DRV 401013' 104 122 126 000 000
P.AAZ: BYTE (7)" ","]",000,000,000 ; ] 401014' 040 135 000 000 000
P.ABA: BYTE (7)"G","E","N"," "," " ; GEN 401015' 107 105 116 040 040
BYTE (7)" ",000,000,000,000 ; 401016' 040 000 000 000 000
ROUTINE_NAME= P.AAS ; 000000 400775'
LOAD_TSKS:
PUSH SP,AC0 ; SP,AC0 401017' 261 17 0 00 000000 0519
PUSH SP,AC10 ; SP,AC10 401020' 261 17 0 00 000010
PUSH SP,AC11 ; SP,AC11 401021' 261 17 0 00 000011
PUSH SP,AC12 ; SP,AC12 401022' 261 17 0 00 000012
PUSH SP,AC13 ; SP,AC13 401023' 261 17 0 00 000013
PUSH SP,AC14 ; SP,AC14 401024' 261 17 0 00 000014
PUSH SP,AC16 ; SP,AC16 401025' 261 17 0 00 000016
ADJSP SP,7 ; SP,7 401026' 105 17 0 00 000007
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 29
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
MOVE AC0,-17(SP) ; AC0,PAR_BLK 401027' 200 00 0 17 777761 0559
MOVEM AC0,-2(SP) ; AC0,-2(SP) 401030' 202 00 0 17 777776
MOVE AC13,-2(SP) ; AC13,-2(SP) 401031' 200 13 0 17 777776 0560
ADDI AC13,1 ; AC13,1 401032' 271 13 0 00 000001
MOVE AC10,-2(SP) ; AC10,-2(SP) 401033' 200 10 0 17 777776 0561
ADDI AC10,2 ; AC10,2 401034' 271 10 0 00 000002
MOVE AC12,-2(SP) ; AC12,-2(SP) 401035' 200 12 0 17 777776 0562
ADDI AC12,3 ; AC12,3 401036' 271 12 0 00 000003
MOVE AC14,-20(SP) ; AC14,TSKB_PTR 401037' 200 14 0 17 777760 0578
MOVEI AC0,1 ; AC0,1 401040' 201 00 0 00 000001
CAME AC0,1(AC14) ; AC0,1(AC14) 401041' 312 00 0 14 000001
JRST L.4 ; L.4 401042' 254 00 0 00 401376'
PUSH SP,C.5 ; SP,[3] 401043' 261 17 0 00 400641' 0585
PUSH SP,C.6 ; SP,[20] 401044' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 401045' 260 17 0 00 000000*
MOVE AC16,AC1 ; TSK_FILE,AC1 401046' 200 16 0 00 000001
ADJSP SP,-2 ; SP,-2 401047' 105 17 0 00 777776
JUMPE AC16,L.5 ; TSK_FILE,L.5 401050' 322 16 0 00 401404'
PUSH SP,C.25 ; SP,[0] 401051' 261 17 0 00 400665' 0590
PUSH SP,C.40 ; SP,[0,,P.AAT] 401052' 261 17 0 00 401535'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401053' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401054' 402 00 0 17 000000 0591
MOVE AC11,AC14 ; AC11,AC14 401055' 200 11 0 00 000014
ADDI AC11,2 ; AC11,2 401056' 271 11 0 00 000002
PUSH SP,AC11 ; SP,AC11 401057' 261 17 0 00 000011
PUSHJ SP,OUTSTR ; SP,OUTSTR 401060' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401061' 402 00 0 17 000000 0592
PUSH SP,C.41 ; SP,[0,,P.AAU] 401062' 261 17 0 00 401536'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401063' 260 17 0 00 000000*
MOVE AC1,AC11 ; AC1,AC11 401064' 200 01 0 00 000011 0593
MOVEI AC2,-1(AC1) ; AC2,-1(AC1) 401065' 201 02 0 01 777777
HRLI AC2,10700 ; AC2,10700 401066' 505 02 0 00 010700
MOVEI AC5,1(AC16) ; AC5,1(TSK_FILE) 401067' 201 05 0 16 000001
HRLI AC5,10700 ; AC5,10700 401070' 505 05 0 00 010700
MOVEI AC1,6 ; AC1,6 401071' 201 01 0 00 000006
MOVEI AC4,6 ; AC4,6 401072' 201 04 0 00 000006
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 401073' 123 01 0 00 400635'
JFCL ; 401074' 255 00 0 00 000000
PUSH SP,0(AC12) ; SP,0(AC12) 401075' 261 17 0 12 000000 0594
PUSH SP,AC16 ; SP,TSK_FILE 401076' 261 17 0 00 000016
PUSHJ SP,RSTB ; SP,RSTB 401077' 260 17 0 00 000000*
MOVEM AC16,0(SP) ; TSK_FILE,0(SP) 401100' 202 16 0 17 000000 0595
PUSH SP,0(AC12) ; SP,0(AC12) 401101' 261 17 0 12 000000
PUSH SP,C.42 ; SP,[200000] 401102' 261 17 0 00 401537'
PUSHJ SP,RCOR ; SP,RCOR 401103' 260 17 0 00 000000*
HRRZ AC12,17(AC16) ; TSK_LABEL,17(TSK_FILE) 401104' 550 12 0 16 000017 0596
MOVE AC1,11(AC12) ; AC1,11(TSK_LABEL) 401105' 200 01 0 12 000011 0597
IMULI AC1,400 ; AC1,400 401106' 221 01 0 00 000400
ADD AC1,10(AC12) ; AC1,10(TSK_LABEL) 401107' 270 01 0 12 000010
MOVEM AC1,-11(SP) ; AC1,TSK_BASE 401110' 202 01 0 17 777767
MOVE AC1,13(AC12) ; AC1,13(TSK_LABEL) 401111' 200 01 0 12 000013 0598
IMULI AC1,400 ; AC1,400 401112' 221 01 0 00 000400
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 30
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
MOVE AC0,AC1 ; TSK_TOP,AC1 401113' 200 00 0 00 000001
ADD AC0,12(AC12) ; TSK_TOP,12(TSK_LABEL) 401114' 270 00 0 12 000012
SUB AC0,-11(SP) ; TSK_TOP,TSK_BASE 401115' 274 00 0 17 777767 0599
ADDI AC0,1 ; AC0,1 401116' 271 00 0 00 000001
MOVEM AC0,-10(SP) ; AC0,TSK_SIZE 401117' 202 00 0 17 777770
HRRZ AC0,14(AC16) ; MODU_PTR,14(TSK_FILE) 401120' 550 00 0 16 000014 0600
SETZM 0(SP) ; 0(SP) 401121' 402 00 0 17 000000 0601
MOVE AC1,AC0 ; AC1,MODU_PTR 401122' 200 01 0 00 000000
ADDI AC1,1 ; AC1,1 401123' 271 01 0 00 000001
PUSH SP,AC1 ; SP,AC1 401124' 261 17 0 00 000001
PUSHJ SP,OUTSTR ; SP,OUTSTR 401125' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401126' 402 00 0 17 000000 0602
PUSH SP,C.17 ; SP,[40] 401127' 261 17 0 00 400655'
PUSHJ SP,OUTPUT ; SP,OUTPUT 401130' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401131' 402 00 0 17 000000 0603
ADDI AC0,3 ; MODU_PTR,3 401132' 271 00 0 00 000003
PUSH SP,AC0 ; SP,MODU_PTR 401133' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 401134' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401135' 402 00 0 17 000000 0604
PUSH SP,C.43 ; SP,[0,,P.AAV] 401136' 261 17 0 00 401540'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401137' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401140' 402 00 0 17 000000 0605
PUSHJ SP,PCRLF ; SP,PCRLF 401141' 260 17 0 00 000000*
SETZ AC0, ; AC0, 401142' 400 00 0 00 000000 0611
PUSH SP,C.44 ; SP,[6] 401143' 261 17 0 00 401541'
MOVE AC1,AC11 ; AC1,AC11 401144' 200 01 0 00 000011
MOVEI AC1,-1(AC1) ; AC1,-1(AC1) 401145' 201 01 0 01 777777
HRLI AC1,10700 ; AC1,10700 401146' 505 01 0 00 010700
PUSH SP,AC1 ; SP,AC1 401147' 261 17 0 00 000001
PUSH SP,C.25 ; SP,[0] 401150' 261 17 0 00 400665'
PUSHJ SP,CHFCH% ; SP,CHFCH% 401151' 260 17 0 00 000000*
PUSH SP,AC1 ; SP,AC1 401152' 261 17 0 00 000001
MOVE AC1,AC11 ; AC1,AC11 401153' 200 01 0 00 000011
MOVEI AC1,-1(AC1) ; AC1,-1(AC1) 401154' 201 01 0 01 777777
HRLI AC1,10700 ; AC1,10700 401155' 505 01 0 00 010700
PUSH SP,AC1 ; SP,AC1 401156' 261 17 0 00 000001
PUSHJ SP,CHDIF% ; SP,CHDIF% 401157' 260 17 0 00 000000*
MOVE AC3,AC1 ; AC3,AC1 401160' 200 03 0 00 000001
MOVE AC1,AC11 ; AC1,AC11 401161' 200 01 0 00 000011 0612
MOVEI AC2,-1(AC1) ; AC2,-1(AC1) 401162' 201 02 0 01 777777
HRLI AC2,10700 ; AC2,10700 401163' 505 02 0 00 010700
MOVEI AC5,-26(SP) ; AC5,PARTITION_NAME-1 401164' 201 05 0 17 777752 0613
HRLI AC5,10700 ; AC5,10700 401165' 505 05 0 00 010700
MOVE AC1,AC3 ; AC1,AC3 401166' 200 01 0 00 000003 0611
MOVEI AC4,6 ; AC4,6 401167' 201 04 0 00 000006
EXTEND AC1,C.38 ; AC1,C.38 401170' 123 01 0 00 401531'
JFCL ; 401171' 255 00 0 00 000000
IDPB AC0,AC5 ; AC0,AC5 401172' 136 00 0 00 000005
MOVE AC11,0(AC13) ; AC11,0(AC13) 401173' 200 11 0 13 000000 0615
MOVE AC13,16(AC11) ; PARTITION_BASE,16(AC11) 401174' 200 13 0 11 000016
ADDI AC13,1 ; PARTITION_BASE,1 401175' 271 13 0 00 000001
MOVEM AC11,0(SP) ; AC11,0(SP) 401176' 202 11 0 17 000000 0616
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 31
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
MOVEI AC0,-25(SP) ; AC0,PARTITION_NAME 401177' 201 00 0 17 777753
PUSH SP,AC0 ; SP,AC0 401200' 261 17 0 00 000000
MOVE AC1,-24(SP) ; AC1,-24(SP) 401201' 200 01 0 17 777754
PUSH SP,0(AC1) ; SP,0(AC1) 401202' 261 17 0 01 000000
PUSH SP,AC13 ; SP,PARTITION_BASE 401203' 261 17 0 00 000013
MOVE AC0,AC13 ; AC0,PARTITION_BASE 401204' 200 00 0 00 000013 0617
ADD AC0,-24(SP) ; AC0,TSK_SIZE 401205' 270 00 0 17 777754
SUBI AC0,1 ; AC0,1 401206' 275 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 401207' 261 17 0 00 000000
PUSH SP,C.45 ; SP,[4010] 401210' 261 17 0 00 401542' 0616
MOVE AC10,0(AC10) ; AC10,0(AC10) 401211' 200 10 0 10 000000 0617
HLRZ AC0,36(AC10) ; AC0,36(AC10) 401212' 554 00 0 10 000036 0616
PUSH SP,AC0 ; SP,AC0 401213' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 401214' 261 17 0 00 400665'
PUSH SP,AC10 ; SP,AC10 401215' 261 17 0 00 000010
PUSHJ SP,M_PCB ; SP,M_PCB 401216' 260 17 0 00 000000*
MOVEM AC1,-33(SP) ; AC1,TSK_PCB 401217' 202 01 0 17 777745
SETO AC0, ; COUNTER, 401220' 474 00 0 00 000000 0622
JRST L.2 ; L.2 401221' 254 00 0 00 401237'
L.1: MOVEM AC11,0(SP) ; AC11,0(SP) 401222' 202 11 0 17 000000 0623
MOVE AC1,AC13 ; AC1,PARTITION_BASE 401223' 200 01 0 00 000013
ADD AC1,AC0 ; AC1,COUNTER 401224' 270 01 0 00 000000
PUSH SP,AC1 ; SP,AC1 401225' 261 17 0 00 000001
PUSH SP,AC16 ; SP,TSK_FILE 401226' 261 17 0 00 000016
MOVE AC1,-34(SP) ; AC1,TSK_BASE 401227' 200 01 0 17 777744
ADD AC1,AC0 ; AC1,COUNTER 401230' 270 01 0 00 000000
PUSH SP,AC1 ; SP,AC1 401231' 261 17 0 00 000001
PUSHJ SP,GETBYT ; SP,GETBYT 401232' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 401233' 105 17 0 00 777777
MOVEM AC1,0(SP) ; AC1,0(SP) 401234' 202 01 0 17 000000
PUSHJ SP,PUTBYT ; SP,PUTBYT 401235' 260 17 0 00 000000*
ADJSP SP,-2 ; SP,-2 401236' 105 17 0 00 777776
L.2: ADDI AC0,1 ; COUNTER,1 401237' 271 00 0 00 000001 0622
CAMGE AC0,-31(SP) ; COUNTER,TSK_SIZE 401240' 315 00 0 17 777747
JRST L.1 ; L.1 401241' 254 00 0 00 401222'
MOVE AC1,0(AC12) ; AC1,0(TSK_LABEL) 401242' 200 01 0 12 000000 0628
LSH AC1,20 ; AC1,20 401243' 242 01 0 00 000020
MOVE AC2,1(AC12) ; AC2,1(TSK_LABEL) 401244' 200 02 0 12 000001
LSH AC2,30 ; AC2,30 401245' 242 02 0 00 000030
ADD AC1,AC2 ; AC1,AC2 401246' 270 01 0 00 000002
ADD AC1,2(AC12) ; AC1,2(TSK_LABEL) 401247' 270 01 0 12 000002
MOVE AC12,3(AC12) ; AC12,3(TSK_LABEL) 401250' 200 12 0 12 000003
LSH AC12,10 ; AC12,10 401251' 242 12 0 00 000010
ADD AC1,AC12 ; AC1,AC12 401252' 270 01 0 00 000012
MOVEM AC1,0(SP) ; TSK_R50,0(SP) 401253' 202 01 0 17 000000 0630
MOVEI AC0,-37(SP) ; AC0,TASK_NAME 401254' 201 00 0 17 777741
PUSH SP,AC0 ; SP,AC0 401255' 261 17 0 00 000000
PUSHJ SP,R50TOA ; SP,R50TOA 401256' 260 17 0 00 000000*
MOVEM AC11,-1(SP) ; AC11,-1(SP) 401257' 202 11 0 17 777777 0634
MOVEM AC16,0(SP) ; TSK_FILE,0(SP) 401260' 202 16 0 17 000000
MOVEI AC0,-40(SP) ; AC0,TASK_NAME 401261' 201 00 0 17 777740
PUSH SP,AC0 ; SP,AC0 401262' 261 17 0 00 000000
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 32
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
PUSH SP,-35(SP) ; SP,TSK_PCB 401263' 261 17 0 17 777743
PUSH SP,AC10 ; SP,AC10 401264' 261 17 0 00 000010
PUSHJ SP,INSTAL ; SP,INSTAL 401265' 260 17 0 00 000000*
MOVE AC0,4(AC14) ; AC0,4(AC14) 401266' 200 00 0 14 000004 0639
JUMPE AC0,L.3 ; AC0,L.3 401267' 322 00 0 00 401372'
MOVEM AC11,0(SP) ; AC11,0(SP) 401270' 202 11 0 17 000000 0642
HRRZ AC1,106(AC10) ; AC1,106(AC10) 401271' 550 01 0 10 000106
PUSH SP,AC1 ; SP,AC1 401272' 261 17 0 00 000001
PUSH SP,C.25 ; SP,[0] 401273' 261 17 0 00 400665'
PUSH SP,AC10 ; SP,AC10 401274' 261 17 0 00 000010
PUSHJ SP,ALOCB ; SP,ALOCB 401275' 260 17 0 00 000000*
MOVE AC12,AC1 ; CLK_ADDR,AC1 401276' 200 12 0 00 000001
MOVEM AC11,0(SP) ; AC11,0(SP) 401277' 202 11 0 17 000000 0643
MOVE AC1,AC12 ; AC1,CLK_ADDR 401300' 200 01 0 00 000012
HLRZ AC2,105(AC10) ; AC2,105(AC10) 401301' 554 02 0 10 000105
ADD AC1,AC2 ; AC1,AC2 401302' 270 01 0 00 000002
PUSH SP,AC1 ; SP,AC1 401303' 261 17 0 00 000001
PUSH SP,AC11 ; SP,AC11 401304' 261 17 0 00 000011 0644
HRRZ AC1,12(AC10) ; AC1,12(AC10) 401305' 550 01 0 10 000012
PUSH SP,AC1 ; SP,AC1 401306' 261 17 0 00 000001
PUSHJ SP,GETWRD ; SP,GETWRD 401307' 260 17 0 00 000000*
MOVE AC13,AC1 ; AC13,AC1 401310' 200 13 0 00 000001
MOVEM AC11,0(SP) ; AC11,0(SP) 401311' 202 11 0 17 000000
HLRZ AC1,12(AC10) ; AC1,12(AC10) 401312' 554 01 0 10 000012
PUSH SP,AC1 ; SP,AC1 401313' 261 17 0 00 000001
PUSHJ SP,GETWRD ; SP,GETWRD 401314' 260 17 0 00 000000*
IMUL AC1,AC0 ; AC1,AC0 401315' 220 01 0 00 000000
ADD AC13,AC1 ; AC13,AC1 401316' 270 13 0 00 000001
MOVEM AC13,-2(SP) ; AC13,-2(SP) 401317' 202 13 0 17 777776
ADJSP SP,-2 ; SP,-2 401320' 105 17 0 00 777776
PUSHJ SP,PUTWRD ; SP,PUTWRD 401321' 260 17 0 00 000000* 0643
MOVEM AC11,0(SP) ; AC11,0(SP) 401322' 202 11 0 17 000000 0646
MOVE AC0,AC12 ; AC0,CLK_ADDR 401323' 200 00 0 00 000012
HRRZ AC1,104(AC10) ; AC1,104(AC10) 401324' 550 01 0 10 000104
ADD AC0,AC1 ; AC0,AC1 401325' 270 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 401326' 261 17 0 00 000000
HLRZ AC0,107(AC10) ; AC0,107(AC10) 401327' 554 00 0 10 000107
PUSH SP,AC0 ; SP,AC0 401330' 261 17 0 00 000000
PUSHJ SP,PUTWRD ; SP,PUTWRD 401331' 260 17 0 00 000000*
MOVEM AC11,0(SP) ; AC11,0(SP) 401332' 202 11 0 17 000000 0647
MOVE AC0,AC12 ; AC0,CLK_ADDR 401333' 200 00 0 00 000012
HRRZ AC1,105(AC10) ; AC1,105(AC10) 401334' 550 01 0 10 000105
ADD AC0,AC1 ; AC0,AC1 401335' 270 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 401336' 261 17 0 00 000000
PUSH SP,AC11 ; SP,AC11 401337' 261 17 0 00 000011 0648
MOVE AC0,-50(SP) ; AC0,TSK_PCB 401340' 200 00 0 17 777730 0649
HRRZ AC1,21(AC10) ; AC1,21(AC10) 401341' 550 01 0 10 000021
ADD AC0,AC1 ; AC0,AC1 401342' 270 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 401343' 261 17 0 00 000000
PUSHJ SP,GETWRD ; SP,GETWRD 401344' 260 17 0 00 000000* 0648
ADJSP SP,-1 ; SP,-1 401345' 105 17 0 00 777777
MOVEM AC1,0(SP) ; AC1,0(SP) 401346' 202 01 0 17 000000 0647
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 33
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
PUSHJ SP,PUTWRD ; SP,PUTWRD 401347' 260 17 0 00 000000*
MOVEM AC11,0(SP) ; AC11,0(SP) 401350' 202 11 0 17 000000 0650
MOVE AC0,AC12 ; AC0,CLK_ADDR 401351' 200 00 0 00 000012
HLRZ AC1,103(AC10) ; AC1,103(AC10) 401352' 554 01 0 10 000103
ADD AC0,AC1 ; AC0,AC1 401353' 270 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 401354' 261 17 0 00 000000
PUSH SP,AC11 ; SP,AC11 401355' 261 17 0 00 000011
HLRZ AC0,10(AC10) ; AC0,10(AC10) 401356' 554 00 0 10 000010
PUSH SP,AC0 ; SP,AC0 401357' 261 17 0 00 000000
PUSHJ SP,GETWRD ; SP,GETWRD 401360' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 401361' 105 17 0 00 777777
MOVEM AC1,0(SP) ; AC1,0(SP) 401362' 202 01 0 17 000000
PUSHJ SP,PUTWRD ; SP,PUTWRD 401363' 260 17 0 00 000000*
MOVEM AC11,0(SP) ; AC11,0(SP) 401364' 202 11 0 17 000000 0651
HLRZ AC0,10(AC10) ; AC0,10(AC10) 401365' 554 00 0 10 000010
PUSH SP,AC0 ; SP,AC0 401366' 261 17 0 00 000000
PUSH SP,AC12 ; SP,CLK_ADDR 401367' 261 17 0 00 000012
PUSHJ SP,PUTWRD ; SP,PUTWRD 401370' 260 17 0 00 000000*
ADJSP SP,-15 ; SP,-15 401371' 105 17 0 00 777763 0641
L.3: MOVEM AC16,0(SP) ; TSK_FILE,0(SP) 401372' 202 16 0 17 000000 0657
PUSHJ SP,FCOR ; SP,FCOR 401373' 260 17 0 00 000000*
ADJSP SP,-26 ; SP,-26 401374' 105 17 0 00 777752 0589
JRST L.8 ; L.8 401375' 254 00 0 00 401516' 0578
L.4: PUSH SP,C.5 ; SP,[3] 401376' 261 17 0 00 400641' 0667
PUSH SP,C.6 ; SP,[20] 401377' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 401400' 260 17 0 00 000000*
MOVE AC16,AC1 ; TSK_FILE,AC1 401401' 200 16 0 00 000001
ADJSP SP,-2 ; SP,-2 401402' 105 17 0 00 777776
JUMPN AC16,L.6 ; TSK_FILE,L.6 401403' 326 16 0 00 401415'
L.5: PUSH SP,C.25 ; SP,[0] 401404' 261 17 0 00 400665' 0669
PUSH SP,C.8 ; SP,[1] 401405' 261 17 0 00 400644'
PUSH SP,C.46 ; SP,[0,,ROUTINE_NAME] 401406' 261 17 0 00 401543'
PUSH SP,C.25 ; SP,[0] 401407' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401410' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401411' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401412' 261 17 0 00 400665'
PUSHJ SP,ERRMSG ; SP,ERRMSG 401413' 260 17 0 00 000000*
JRST L.8 ; L.8 401414' 254 00 0 00 401516' 0667
L.6: PUSH SP,C.25 ; SP,[0] 401415' 261 17 0 00 400665' 0672
PUSH SP,C.47 ; SP,[0,,P.AAW] 401416' 261 17 0 00 401544'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401417' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401420' 402 00 0 17 000000 0673
MOVE AC0,AC14 ; AC0,AC14 401421' 200 00 0 00 000014
ADDI AC0,2 ; AC0,2 401422' 271 00 0 00 000002
PUSH SP,AC0 ; SP,AC0 401423' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 401424' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401425' 402 00 0 17 000000 0674
PUSH SP,C.48 ; SP,[0,,P.AAX] 401426' 261 17 0 00 401545'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401427' 260 17 0 00 000000*
MOVE AC1,AC0 ; AC1,AC0 401430' 200 01 0 00 000000 0675
MOVEI AC2,-1(AC1) ; AC2,-1(AC1) 401431' 201 02 0 01 777777
HRLI AC2,10700 ; AC2,10700 401432' 505 02 0 00 010700
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 34
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
MOVEI AC0,6 ; AC0,6 401433' 201 00 0 00 000006
MOVEI AC5,1(AC16) ; AC5,1(TSK_FILE) 401434' 201 05 0 16 000001 0676
HRLI AC5,10700 ; AC5,10700 401435' 505 05 0 00 010700
MOVEI AC1,2 ; AC1,2 401436' 201 01 0 00 000002 0675
MOVE AC4,AC0 ; AC4,AC0 401437' 200 04 0 00 000000
CAML AC4,AC1 ; AC4,AC1 401440' 311 04 0 00 000001
MOVE AC4,AC1 ; AC4,AC1 401441' 200 04 0 00 000001
SUB AC0,AC4 ; AC0,AC4 401442' 274 00 0 00 000004
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 401443' 123 01 0 00 400635'
JFCL ; 401444' 255 00 0 00 000000
JUMPLE AC0,L.7 ; AC0,L.7 401445' 323 00 0 00 401453'
MOVEI AC1,3 ; AC1,3 401446' 201 01 0 00 000003
MOVE AC2,C.49 ; AC2,[POINT 7,P.AAY-1,34] <1,7> 401447' 200 02 0 00 401546'
MOVE AC4,AC0 ; AC4,AC0 401450' 200 04 0 00 000000
EXTEND AC1,C.39 ; AC1,C.39 401451' 123 01 0 00 401533'
JFCL ; 401452' 255 00 0 00 000000
L.7: PUSH SP,0(AC12) ; SP,0(AC12) 401453' 261 17 0 12 000000 0677
PUSH SP,AC16 ; SP,TSK_FILE 401454' 261 17 0 00 000016
PUSHJ SP,RSTB ; SP,RSTB 401455' 260 17 0 00 000000*
MOVEM AC16,0(SP) ; TSK_FILE,0(SP) 401456' 202 16 0 17 000000 0678
PUSH SP,0(AC12) ; SP,0(AC12) 401457' 261 17 0 12 000000
PUSH SP,C.50 ; SP,[20000] 401460' 261 17 0 00 401547'
PUSHJ SP,RCOR ; SP,RCOR 401461' 260 17 0 00 000000*
HRRZ AC0,14(AC16) ; MODU_PTR,14(TSK_FILE) 401462' 550 00 0 16 000014 0679
SETZM 0(SP) ; 0(SP) 401463' 402 00 0 17 000000 0680
MOVE AC1,AC0 ; AC1,MODU_PTR 401464' 200 01 0 00 000000
ADDI AC1,1 ; AC1,1 401465' 271 01 0 00 000001
PUSH SP,AC1 ; SP,AC1 401466' 261 17 0 00 000001
PUSHJ SP,OUTSTR ; SP,OUTSTR 401467' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401470' 402 00 0 17 000000 0681
PUSH SP,C.17 ; SP,[40] 401471' 261 17 0 00 400655'
PUSHJ SP,OUTPUT ; SP,OUTPUT 401472' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401473' 402 00 0 17 000000 0682
ADDI AC0,3 ; MODU_PTR,3 401474' 271 00 0 00 000003
PUSH SP,AC0 ; SP,MODU_PTR 401475' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 401476' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401477' 402 00 0 17 000000 0683
PUSH SP,C.51 ; SP,[0,,P.AAZ] 401500' 261 17 0 00 401550'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401501' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401502' 402 00 0 17 000000 0684
PUSHJ SP,PCRLF ; SP,PCRLF 401503' 260 17 0 00 000000*
PUSH SP,0(AC13) ; SP,0(AC13) 401504' 261 17 0 13 000000 0685
PUSH SP,AC16 ; SP,TSK_FILE 401505' 261 17 0 00 000016
PUSH SP,C.52 ; SP,[0,,P.ABA] 401506' 261 17 0 00 401551'
MOVE AC1,-21(SP) ; AC1,-21(SP) 401507' 200 01 0 17 777757
PUSH SP,0(AC1) ; SP,0(AC1) 401510' 261 17 0 01 000000
PUSH SP,0(AC10) ; SP,0(AC10) 401511' 261 17 0 10 000000
PUSHJ SP,LOADD ; SP,LOADD 401512' 260 17 0 00 000000*
MOVEM AC16,0(SP) ; TSK_FILE,0(SP) 401513' 202 16 0 17 000000 0686
PUSHJ SP,FCOR ; SP,FCOR 401514' 260 17 0 00 000000*
ADJSP SP,-12 ; SP,-12 401515' 105 17 0 00 777766 0671
L.8: ADJSP SP,-7 ; SP,-7 401516' 105 17 0 00 777771 0549
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 35
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (7)
SETZ AC1, ; AC1, 401517' 400 01 0 00 000000 0519
ADJSP SP,-7 ; SP,-7 401520' 105 17 0 00 777771
POP SP,AC16 ; SP,AC16 401521' 262 17 0 00 000016
POP SP,AC14 ; SP,AC14 401522' 262 17 0 00 000014
POP SP,AC13 ; SP,AC13 401523' 262 17 0 00 000013
POP SP,AC12 ; SP,AC12 401524' 262 17 0 00 000012
POP SP,AC11 ; SP,AC11 401525' 262 17 0 00 000011
POP SP,AC10 ; SP,AC10 401526' 262 17 0 00 000010
POP SP,AC0 ; SP,AC0 401527' 262 17 0 00 000000
POPJ SP, ; SP, 401530' 263 17 0 00 000000
C.38: MOVSLJ ; 401531' 016 00 0 00 000000
EXP 40 ; 40 401532' 000000 000040
C.39: MOVSLJ ; 401533' 016 00 0 00 000000
EXP 0 ; 0 401534' 000000 000000
C.40: XWD 0,P.AAT ; 0,P.AAT 401535' 000000 400777'
C.41: XWD 0,P.AAU ; 0,P.AAU 401536' 000000 401002'
C.42: EXP 200000 ; 200000 401537' 000000 200000
C.43: XWD 0,P.AAV ; 0,P.AAV 401540' 000000 401004'
C.44: EXP 6 ; 6 401541' 000000 000006
C.45: EXP 4010 ; 4010 401542' 000000 004010
C.46: XWD 0,ROUTINE_NAME ; 0,ROUTINE_NAME 401543' 000000 400775'
C.47: XWD 0,P.AAW ; 0,P.AAW 401544' 000000 401005'
C.48: XWD 0,P.AAX ; 0,P.AAX 401545' 000000 401011'
C.49: POINT 7,P.AAY-1,34 ; 7,P.AAY-1,34 401546' 01 07 0 00 401012'
C.50: EXP 20000 ; 20000 401547' 000000 020000
C.51: XWD 0,P.AAZ ; 0,P.AAZ 401550' 000000 401014'
C.52: XWD 0,P.ABA ; 0,P.ABA 401551' 000000 401015'
; Routine Size: 347 words
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 36
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
; 0693 ROUTINE LOAD_MCBS (MCB_PTR, PAR_BLK) = !Load Processes into GEN partition
; 0694
; 0695 !++
; 0696 ! FUNCTIONAL DESCRIPTION:
; 0697 !
; 0698 ! Load MCB processes into GEN partition. The processes loaded are those
; 0699 ! indicated in the PDV$DF line in CETAB.MAC.
; 0700 !
; 0701 ! FORMAL PARAMETERS:
; 0702 !
; 0703 ! MCB_PTR - Points to the VNPMCB block for this task
; 0704 ! PAR_BLK - A vector of useful locations
; 0705 !
; 0706 ! IMPLICIT INPUTS:
; 0707 !
; 0708 ! NONE
; 0709 !
; 0710 ! IMPLICIT OUTPUTS:
; 0711 !
; 0712 ! NONE
; 0713 !
; 0714 ! ROUTINE VALUE:
; 0715 !
; 0716 ! ALWAYS 0
; 0717 !
; 0718 ! SIDE EFFECTS:
; 0719 !
; 0720 ! GEN partition is filled with processes.
; 0721 !
; 0722 !--
; 0723
; 0724 BEGIN
; 0725
; 0726 BIND
; 0727 ROUTINE_NAME = UPLIT (%ASCIZ'LOAD_MCBS');
; 0728
; 0729 MAP
; 0730 MCB_PTR : REF VNPMCB_BLOCK,
; 0731 PAR_BLK : REF VECTOR;
; 0732
; 0733 BIND
; 0734 GEN_PCB = PAR_BLK [0],
; 0735 KERNEL_FILE = PAR_BLK [1] : REF FILE_BLOCK,
; 0736 VALUES = PAR_BLK [2] : REF VNPVAL_BLOCK,
; 0737 FILE_CHAN = PAR_BLK [3];
; 0738
; 0739 LOCAL
; 0740 TSK_FILE : REF FILE_BLOCK,
; 0741 TSK_LABEL : REF VECTOR [1024],
; 0742 TSK_BASE,
; 0743 TSK_TOP,
; 0744 TSK_SIZE,
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 37
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
; 0745 TSK_PCB,
; 0746 TSK_R50,
; 0747 TASK_NAME : VECTOR [CH$ALLOCATION (7)],
; 0748 PARTITION_NAME : VECTOR [CH$ALLOCATION (7)],
; 0749 PARTITION_BASE,
; 0750 MODU_PTR : REF MODU_BLOCK,
; 0751 DCB_ADDR,
; 0752 XXXNAME : VECTOR [CH$ALLOCATION (7)];
; 0753
; 0754 IF (CH$NEQ (1, CH$PTR (MCB_PTR [PROCESS_NAME]), 1, CH$PTR (UPLIT (0)), 0))
; 0755 THEN
; 0756 BEGIN
; 0757 !
; 0758 ! Get the file first
; 0759 !
; 0760
; 0761 IF ((TSK_FILE = GETBLK (FILE_TYP, FILE_LEN)) EQL 0)
; 0762 THEN
; 0763 ERRMSG (0, 1, ROUTINE_NAME, 0, 0, 0, 0)
; 0764 ELSE
; 0765 BEGIN
; 0766 OUTSTR (0, UPLIT (%ASCIZ'[Loading Process '));
; 0767 OUTSTR (0, MCB_PTR [PROCESS_NAME]);
; 0768 OUTSTR (0, UPLIT (%ASCIZ' --> '));
; 0769 CH$MOVE (LEN_MCB_NAME, CH$PTR (MCB_PTR [PROCESS_NAME]), CH$PTR (TSK_FILE [FILE_NAME]));
; 0770 RSTB (.FILE_CHAN, .TSK_FILE);
; 0771 RCOR (.TSK_FILE, .FILE_CHAN, 10*2048);
; 0772 TSK_LABEL = .TSK_FILE [FILE_LABEL];
; 0773 TSK_BASE = .TSK_LABEL [L$BSA] + (.TSK_LABEL [L$BSA + 1]*256);
; 0774 TSK_TOP = .TSK_LABEL [L$BHGV] + (.TSK_LABEL [L$BHGV + 1]*256);
; 0775 TSK_SIZE = .TSK_TOP - .TSK_BASE + 1;
; 0776 MODU_PTR = .TSK_FILE [FILE_MODU];
; 0777 OUTSTR (0, MODU_PTR [MODU_NAME]);
; 0778 OUTPUT (0, %C' ');
; 0779 OUTSTR (0, MODU_PTR [MODU_IDENT]);
; 0780 OUTSTR (0, UPLIT (%ASCIZ' ]'));
; 0781 PCRLF (0);
; 0782 !
; 0783 ! Form the partition
; 0784 !
; 0785 begin
; 0786 macro CH$LEN (PTR) = ch$diff (ch$find_ch (3, PTR, 0), PTR) %;
; 0787 ch$wchar (0, CH$COPY (3, CH$PTR (UPLIT (%ASCIZ'NT.')),
; 0788 CH$LEN (CH$PTR (MCB_PTR [PROCESS_NAME])), CH$PTR (MCB_PTR [PROCESS_NAME]),
; 0789 %c' ', 6, CH$PTR (PARTITION_NAME)));
; 0790 end;
; 0791 PARTITION_BASE = .KERNEL_FILE [FILE_HWM] + 1;
; 0792 TSK_PCB = M_PCB (.KERNEL_FILE, PARTITION_NAME, .GEN_PCB, .PARTITION_BASE,
; 0793 .PARTITION_BASE + .TSK_SIZE - 1, %O'000000',
; 0794 .VALUES [PS_SYS] OR .VALUES [PS_COM] OR .VALUES [PS_NSF], 0, .VALUES);
; 0795 !
; 0796 ! Copy the task into it
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 38
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
; 0797 !
; 0798
; 0799 INCR COUNTER FROM 0 TO .TSK_SIZE - 1 DO
; 0800 PUTBYT (.KERNEL_FILE, .PARTITION_BASE + .COUNTER, GETBYT (.TSK_FILE, .TSK_BASE + .COUNTER));
; 0801
; 0802 !
; 0803 ! If the process supplies a device then load its' DCB/UCB/SCB structure and
; 0804 ! update UCBxxx.
; 0805 !
; 0806
; 0807 IF (CH$NEQ (1, CH$PTR (MCB_PTR [DEVICE_NAME]), 1, CH$PTR (UPLIT (0)), 0))
; 0808 THEN
; 0809 BEGIN
; 0810 DCB_ADDR = LD_DCB (.KERNEL_FILE, .FILE_CHAN, .TSK_PCB, .MCB_PTR [DEVICE_NAME], .VALUES);
; 0811 !
; 0812 ! Store the address of the UCB in UCBxxx.
; 0813 !
; 0814 CH$COPY (3, CH$PTR (UPLIT (%ASCIZ'UCB')), LEN_MCB_NAME, CH$PTR (MCB_PTR [PROCESS_NAME]), 0,
; 0815 7, CH$PTR (XXXNAME));
; 0816 PUTWRD (.KERNEL_FILE, .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE], XXXNAME, 0),
; 0817 GETWRD (.KERNEL_FILE, .DCB_ADDR + .VALUES [D_UCB]));
; 0818 END;
; 0819 !
; 0820 ! We used to store the PCB address in PCBxxx but for MCB V3.1 we don't
; 0821 ! need to do that so code has been commented out.
; 0822 !
; 0823 ! CH$COPY (3, CH$PTR (UPLIT (%ASCIZ'PCB')), LEN_MCB_NAME, CH$PTR (MCB_PTR [PROCESS_NAME]), 0, 7,
; 0824 ! CH$PTR (XXXNAME));
; 0825 ! PUTWRD (.KERNEL_FILE, .VALUES [CE_DATA_BASE] + SYM_VAL (.VALUES [CE_DATA_FILE], XXXNAME, 0),
; 0826 ! .TSK_PCB);
; 0827 !
; 0828 !
; 0829 ! Free the file storage
; 0830 !
; 0831 FCOR (.TSK_FILE);
; 0832 END;
; 0833
; 0834 END;
; 0835
; 0836 0
; 0837 END; !OF LOAD_MCBS
P.ABB: BYTE (7)"L","O","A","D","_" ; LOAD_ 401552' 114 117 101 104 137
BYTE (7)"M","C","B","S",000 ; MCBS 401553' 115 103 102 123 000
P.ABC: EXP 0 ; 401554' 000000 000000
P.ABD: BYTE (7)"[","L","o","a","d" ; [Load 401555' 133 114 157 141 144
BYTE (7)"i","n","g"," ","P" ; ing P 401556' 151 156 147 040 120
BYTE (7)"r","o","c","e","s" ; roces 401557' 162 157 143 145 163
BYTE (7)"s"," ",000,000,000 ; s 401560' 163 040 000 000 000
P.ABE: BYTE (7)011,"-","-",">"," " ; --> 401561' 011 055 055 076 040
BYTE (7)000,000,000,000,000 ; 401562' 000 000 000 000 000
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 39
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
P.ABF: BYTE (7)" ","]",000,000,000 ; ] 401563' 040 135 000 000 000
P.ABG: BYTE (7)"N","T",".",000,000 ; NT. 401564' 116 124 056 000 000
P.ABH: EXP 0 ; 401565' 000000 000000
P.ABI: BYTE (7)"U","C","B",000,000 ; UCB 401566' 125 103 102 000 000
ROUTINE_NAME= P.ABB ; 000000 401552'
LOAD_MCBS:
PUSH SP,AC0 ; SP,AC0 401567' 261 17 0 00 000000 0693
PUSH SP,AC10 ; SP,AC10 401570' 261 17 0 00 000010
PUSH SP,AC11 ; SP,AC11 401571' 261 17 0 00 000011
PUSH SP,AC12 ; SP,AC12 401572' 261 17 0 00 000012
PUSH SP,AC13 ; SP,AC13 401573' 261 17 0 00 000013
PUSH SP,AC14 ; SP,AC14 401574' 261 17 0 00 000014
PUSH SP,AC16 ; SP,AC16 401575' 261 17 0 00 000016
ADJSP SP,12 ; SP,12 401576' 105 17 0 00 000012
MOVE AC0,-22(SP) ; AC0,PAR_BLK 401577' 200 00 0 17 777756 0734
MOVEM AC0,-3(SP) ; AC0,-3(SP) 401600' 202 00 0 17 777775
MOVE AC11,-3(SP) ; AC11,-3(SP) 401601' 200 11 0 17 777775 0735
ADDI AC11,1 ; AC11,1 401602' 271 11 0 00 000001
MOVE AC10,-3(SP) ; AC10,-3(SP) 401603' 200 10 0 17 777775 0736
ADDI AC10,2 ; AC10,2 401604' 271 10 0 00 000002
MOVE AC0,-3(SP) ; AC0,-3(SP) 401605' 200 00 0 17 777775 0737
ADDI AC0,3 ; AC0,3 401606' 271 00 0 00 000003
MOVEM AC0,-2(SP) ; AC0,-2(SP) 401607' 202 00 0 17 777776
MOVE AC12,-23(SP) ; AC12,MCB_PTR 401610' 200 12 0 17 777755 0754
MOVEI AC2,0(AC12) ; AC2,0(AC12) 401611' 201 02 0 12 000000
HRLI AC2,10700 ; AC2,10700 401612' 505 02 0 00 010700
MOVEI AC1,1 ; AC1,1 401613' 201 01 0 00 000001
MOVEI AC4,1 ; AC4,1 401614' 201 04 0 00 000001
MOVE AC5,C.55 ; AC5,[POINT 7,P.ABC-1,34] <1,7> 401615' 200 05 0 00 402151'
EXTEND AC1,C.53 ; AC1,[CMPSN ] 401616' 123 01 0 00 402147'
JRST L.16 ; L.16 401617' 254 00 0 00 402135'
PUSH SP,C.5 ; SP,[3] 401620' 261 17 0 00 400641' 0761
PUSH SP,C.6 ; SP,[20] 401621' 261 17 0 00 400642'
PUSHJ SP,GETBLK ; SP,GETBLK 401622' 260 17 0 00 000000*
MOVE AC13,AC1 ; TSK_FILE,AC1 401623' 200 13 0 00 000001
ADJSP SP,-2 ; SP,-2 401624' 105 17 0 00 777776
JUMPN AC13,L.9 ; TSK_FILE,L.9 401625' 326 13 0 00 401637'
PUSH SP,C.25 ; SP,[0] 401626' 261 17 0 00 400665' 0763
PUSH SP,C.8 ; SP,[1] 401627' 261 17 0 00 400644'
PUSH SP,C.56 ; SP,[0,,ROUTINE_NAME] 401630' 261 17 0 00 402152'
PUSH SP,C.25 ; SP,[0] 401631' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401632' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401633' 261 17 0 00 400665'
PUSH SP,C.25 ; SP,[0] 401634' 261 17 0 00 400665'
PUSHJ SP,ERRMSG ; SP,ERRMSG 401635' 260 17 0 00 000000*
JRST L.15 ; L.15 401636' 254 00 0 00 402134' 0761
L.9: PUSH SP,C.25 ; SP,[0] 401637' 261 17 0 00 400665' 0766
PUSH SP,C.57 ; SP,[0,,P.ABD] 401640' 261 17 0 00 402153'
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 40
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
PUSHJ SP,OUTSTR ; SP,OUTSTR 401641' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401642' 402 00 0 17 000000 0767
MOVEI AC0,1(AC12) ; AC0,1(AC12) 401643' 201 00 0 12 000001
PUSH SP,AC0 ; SP,AC0 401644' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 401645' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401646' 402 00 0 17 000000 0768
PUSH SP,C.58 ; SP,[0,,P.ABE] 401647' 261 17 0 00 402154'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401650' 260 17 0 00 000000*
MOVEI AC2,0(AC12) ; AC2,0(AC12) 401651' 201 02 0 12 000000 0769
HRLI AC2,10700 ; AC2,10700 401652' 505 02 0 00 010700
MOVEI AC5,1(AC13) ; AC5,1(TSK_FILE) 401653' 201 05 0 13 000001
HRLI AC5,10700 ; AC5,10700 401654' 505 05 0 00 010700
MOVEI AC1,3 ; AC1,3 401655' 201 01 0 00 000003
MOVEI AC4,3 ; AC4,3 401656' 201 04 0 00 000003
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 401657' 123 01 0 00 400635'
JFCL ; 401660' 255 00 0 00 000000
MOVE AC1,-6(SP) ; AC1,-6(SP) 401661' 200 01 0 17 777772 0770
PUSH SP,0(AC1) ; SP,0(AC1) 401662' 261 17 0 01 000000
PUSH SP,AC13 ; SP,TSK_FILE 401663' 261 17 0 00 000013
PUSHJ SP,RSTB ; SP,RSTB 401664' 260 17 0 00 000000*
MOVEM AC13,0(SP) ; TSK_FILE,0(SP) 401665' 202 13 0 17 000000 0771
MOVE AC1,-10(SP) ; AC1,-10(SP) 401666' 200 01 0 17 777770
PUSH SP,0(AC1) ; SP,0(AC1) 401667' 261 17 0 01 000000
PUSH SP,C.59 ; SP,[50000] 401670' 261 17 0 00 402155'
PUSHJ SP,RCOR ; SP,RCOR 401671' 260 17 0 00 000000*
HRRZ AC1,17(AC13) ; TSK_LABEL,17(TSK_FILE) 401672' 550 01 0 13 000017 0772
MOVE AC0,11(AC1) ; AC0,11(TSK_LABEL) 401673' 200 00 0 01 000011 0773
IMULI AC0,400 ; AC0,400 401674' 221 00 0 00 000400
ADD AC0,10(AC1) ; AC0,10(TSK_LABEL) 401675' 270 00 0 01 000010
MOVEM AC0,-10(SP) ; AC0,TSK_BASE 401676' 202 00 0 17 777770
MOVE AC0,13(AC1) ; AC0,13(TSK_LABEL) 401677' 200 00 0 01 000013 0774
IMULI AC0,400 ; AC0,400 401700' 221 00 0 00 000400
ADD AC0,12(AC1) ; AC0,12(TSK_LABEL) 401701' 270 00 0 01 000012
SUB AC0,-10(SP) ; TSK_TOP,TSK_BASE 401702' 274 00 0 17 777770 0775
MOVE AC16,AC0 ; TSK_SIZE,AC0 401703' 200 16 0 00 000000
ADDI AC16,1 ; TSK_SIZE,1 401704' 271 16 0 00 000001
HRRZ AC0,14(AC13) ; MODU_PTR,14(TSK_FILE) 401705' 550 00 0 13 000014 0776
SETZM 0(SP) ; 0(SP) 401706' 402 00 0 17 000000 0777
MOVE AC1,AC0 ; AC1,MODU_PTR 401707' 200 01 0 00 000000
ADDI AC1,1 ; AC1,1 401710' 271 01 0 00 000001
PUSH SP,AC1 ; SP,AC1 401711' 261 17 0 00 000001
PUSHJ SP,OUTSTR ; SP,OUTSTR 401712' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401713' 402 00 0 17 000000 0778
PUSH SP,C.17 ; SP,[40] 401714' 261 17 0 00 400655'
PUSHJ SP,OUTPUT ; SP,OUTPUT 401715' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401716' 402 00 0 17 000000 0779
ADDI AC0,3 ; MODU_PTR,3 401717' 271 00 0 00 000003
PUSH SP,AC0 ; SP,MODU_PTR 401720' 261 17 0 00 000000
PUSHJ SP,OUTSTR ; SP,OUTSTR 401721' 260 17 0 00 000000*
SETZM 0(SP) ; 0(SP) 401722' 402 00 0 17 000000 0780
PUSH SP,C.60 ; SP,[0,,P.ABF] 401723' 261 17 0 00 402156'
PUSHJ SP,OUTSTR ; SP,OUTSTR 401724' 260 17 0 00 000000*
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 41
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
SETZM 0(SP) ; 0(SP) 401725' 402 00 0 17 000000 0781
PUSHJ SP,PCRLF ; SP,PCRLF 401726' 260 17 0 00 000000*
SETZ AC14, ; AC14, 401727' 400 14 0 00 000000 0787
PUSH SP,C.5 ; SP,[3] 401730' 261 17 0 00 400641' 0788
MOVEI AC0,0(AC12) ; AC0,0(AC12) 401731' 201 00 0 12 000000
HRLI AC0,10700 ; AC0,10700 401732' 505 00 0 00 010700
PUSH SP,AC0 ; SP,AC0 401733' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 401734' 261 17 0 00 400665'
PUSHJ SP,CHFCH% ; SP,CHFCH% 401735' 260 17 0 00 000000*
PUSH SP,AC1 ; SP,AC1 401736' 261 17 0 00 000001
MOVEI AC0,0(AC12) ; AC0,0(AC12) 401737' 201 00 0 12 000000
HRLI AC0,10700 ; AC0,10700 401740' 505 00 0 00 010700
PUSH SP,AC0 ; SP,AC0 401741' 261 17 0 00 000000
PUSHJ SP,CHDIF% ; SP,CHDIF% 401742' 260 17 0 00 000000*
MOVEM AC1,-22(SP) ; AC1,-22(SP) 401743' 202 01 0 17 777756
MOVEI AC0,0(AC12) ; AC0,0(AC12) 401744' 201 00 0 12 000000
HRLI AC0,10700 ; AC0,10700 401745' 505 00 0 00 010700
MOVEI AC3,6 ; AC3,6 401746' 201 03 0 00 000006 0787
MOVEI AC5,-31(SP) ; AC5,PARTITION_NAME-1 401747' 201 05 0 17 777747 0789
HRLI AC5,10700 ; AC5,10700 401750' 505 05 0 00 010700
MOVEI AC1,3 ; AC1,3 401751' 201 01 0 00 000003 0787
MOVE AC2,C.61 ; AC2,[POINT 7,P.ABG-1,34] <1,7> 401752' 200 02 0 00 402157'
MOVE AC4,AC3 ; AC4,AC3 401753' 200 04 0 00 000003
CAML AC4,AC1 ; AC4,AC1 401754' 311 04 0 00 000001
MOVE AC4,AC1 ; AC4,AC1 401755' 200 04 0 00 000001
SUB AC3,AC4 ; AC3,AC4 401756' 274 03 0 00 000004
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 401757' 123 01 0 00 400635'
JFCL ; 401760' 255 00 0 00 000000
JUMPLE AC3,L.10 ; AC3,L.10 401761' 323 03 0 00 401767'
MOVE AC1,-22(SP) ; AC1,-22(SP) 401762' 200 01 0 17 777756
MOVE AC2,AC0 ; AC2,AC0 401763' 200 02 0 00 000000
MOVE AC4,AC3 ; AC4,AC3 401764' 200 04 0 00 000003
EXTEND AC1,C.38 ; AC1,C.38 401765' 123 01 0 00 401531'
JFCL ; 401766' 255 00 0 00 000000
L.10: IDPB AC14,AC5 ; AC14,AC5 401767' 136 14 0 00 000005
MOVE AC11,0(AC11) ; AC11,0(AC11) 401770' 200 11 0 11 000000 0791
MOVE AC14,16(AC11) ; PARTITION_BASE,16(AC11) 401771' 200 14 0 11 000016
ADDI AC14,1 ; PARTITION_BASE,1 401772' 271 14 0 00 000001
MOVEM AC11,0(SP) ; AC11,0(SP) 401773' 202 11 0 17 000000 0792
MOVEI AC0,-30(SP) ; AC0,PARTITION_NAME 401774' 201 00 0 17 777750
PUSH SP,AC0 ; SP,AC0 401775' 261 17 0 00 000000
MOVE AC1,-25(SP) ; AC1,-25(SP) 401776' 200 01 0 17 777753
PUSH SP,0(AC1) ; SP,0(AC1) 401777' 261 17 0 01 000000
PUSH SP,AC14 ; SP,PARTITION_BASE 402000' 261 17 0 00 000014
MOVE AC0,AC14 ; AC0,PARTITION_BASE 402001' 200 00 0 00 000014 0793
ADD AC0,AC16 ; AC0,TSK_SIZE 402002' 270 00 0 00 000016
SUBI AC0,1 ; AC0,1 402003' 275 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 402004' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 402005' 261 17 0 00 400665' 0792
MOVE AC10,0(AC10) ; AC10,0(AC10) 402006' 200 10 0 10 000000 0794
HLRZ AC0,36(AC10) ; AC0,36(AC10) 402007' 554 00 0 10 000036
HLRZ AC1,35(AC10) ; AC1,35(AC10) 402010' 554 01 0 10 000035
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 42
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
IOR AC0,AC1 ; AC0,AC1 402011' 434 00 0 00 000001
HRRZ AC1,35(AC10) ; AC1,35(AC10) 402012' 550 01 0 10 000035
IOR AC0,AC1 ; AC0,AC1 402013' 434 00 0 00 000001
PUSH SP,AC0 ; SP,AC0 402014' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 402015' 261 17 0 00 400665' 0792
PUSH SP,AC10 ; SP,AC10 402016' 261 17 0 00 000010
PUSHJ SP,M_PCB ; SP,M_PCB 402017' 260 17 0 00 000000*
MOVEM AC1,-34(SP) ; AC1,TSK_PCB 402020' 202 01 0 17 777744
SETO AC0, ; COUNTER, 402021' 474 00 0 00 000000 0799
JRST L.12 ; L.12 402022' 254 00 0 00 402040'
L.11: MOVEM AC11,0(SP) ; AC11,0(SP) 402023' 202 11 0 17 000000 0800
MOVE AC1,AC14 ; AC1,PARTITION_BASE 402024' 200 01 0 00 000014
ADD AC1,AC0 ; AC1,COUNTER 402025' 270 01 0 00 000000
PUSH SP,AC1 ; SP,AC1 402026' 261 17 0 00 000001
PUSH SP,AC13 ; SP,TSK_FILE 402027' 261 17 0 00 000013
MOVE AC1,-33(SP) ; AC1,TSK_BASE 402030' 200 01 0 17 777745
ADD AC1,AC0 ; AC1,COUNTER 402031' 270 01 0 00 000000
PUSH SP,AC1 ; SP,AC1 402032' 261 17 0 00 000001
PUSHJ SP,GETBYT ; SP,GETBYT 402033' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 402034' 105 17 0 00 777777
MOVEM AC1,0(SP) ; AC1,0(SP) 402035' 202 01 0 17 000000
PUSHJ SP,PUTBYT ; SP,PUTBYT 402036' 260 17 0 00 000000*
ADJSP SP,-2 ; SP,-2 402037' 105 17 0 00 777776
L.12: ADDI AC0,1 ; COUNTER,1 402040' 271 00 0 00 000001 0799
CAMGE AC0,AC16 ; COUNTER,TSK_SIZE 402041' 315 00 0 00 000016
JRST L.11 ; L.11 402042' 254 00 0 00 402023'
MOVEI AC2,1(AC12) ; AC2,1(AC12) 402043' 201 02 0 12 000001 0807
HRLI AC2,10700 ; AC2,10700 402044' 505 02 0 00 010700
MOVEI AC1,1 ; AC1,1 402045' 201 01 0 00 000001
MOVEI AC4,1 ; AC4,1 402046' 201 04 0 00 000001
MOVE AC5,C.62 ; AC5,[POINT 7,P.ABH-1,34] <1,7> 402047' 200 05 0 00 402160'
EXTEND AC1,C.53 ; AC1,[CMPSN ] 402050' 123 01 0 00 402147'
JRST L.14 ; L.14 402051' 254 00 0 00 402131'
MOVEM AC11,0(SP) ; AC11,0(SP) 402052' 202 11 0 17 000000 0810
MOVE AC1,-33(SP) ; AC1,-33(SP) 402053' 200 01 0 17 777745
PUSH SP,0(AC1) ; SP,0(AC1) 402054' 261 17 0 01 000000
PUSH SP,-35(SP) ; SP,TSK_PCB 402055' 261 17 0 17 777743
PUSH SP,2(AC12) ; SP,2(AC12) 402056' 261 17 0 12 000002
PUSH SP,AC10 ; SP,AC10 402057' 261 17 0 00 000010
PUSHJ SP,LD_DCB ; SP,LD_DCB 402060' 260 17 0 00 000000*
MOVE AC14,AC1 ; DCB_ADDR,AC1 402061' 200 14 0 00 000001
MOVEI AC0,0(AC12) ; AC0,0(AC12) 402062' 201 00 0 12 000000 0814
HRLI AC0,10700 ; AC0,10700 402063' 505 00 0 00 010700
MOVEI AC3,7 ; AC3,7 402064' 201 03 0 00 000007
MOVEI AC5,-43(SP) ; AC5,XXXNAME-1 402065' 201 05 0 17 777735 0815
HRLI AC5,10700 ; AC5,10700 402066' 505 05 0 00 010700
MOVEI AC1,3 ; AC1,3 402067' 201 01 0 00 000003 0814
MOVE AC2,C.63 ; AC2,[POINT 7,P.ABI-1,34] <1,7> 402070' 200 02 0 00 402161'
MOVE AC4,AC3 ; AC4,AC3 402071' 200 04 0 00 000003
CAML AC4,AC1 ; AC4,AC1 402072' 311 04 0 00 000001
MOVE AC4,AC1 ; AC4,AC1 402073' 200 04 0 00 000001
SUB AC3,AC4 ; AC3,AC4 402074' 274 03 0 00 000004
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 43
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
EXTEND AC1,C.1 ; AC1,[MOVSLJ ] 402075' 123 01 0 00 400635'
JFCL ; 402076' 255 00 0 00 000000
JUMPLE AC3,L.13 ; AC3,L.13 402077' 323 03 0 00 402105'
MOVEI AC1,3 ; AC1,3 402100' 201 01 0 00 000003
MOVE AC2,AC0 ; AC2,AC0 402101' 200 02 0 00 000000
MOVE AC4,AC3 ; AC4,AC3 402102' 200 04 0 00 000003
EXTEND AC1,C.39 ; AC1,C.39 402103' 123 01 0 00 401533'
JFCL ; 402104' 255 00 0 00 000000
L.13: MOVEM AC11,0(SP) ; AC11,0(SP) 402105' 202 11 0 17 000000 0816
HRRZ AC0,5(AC10) ; AC0,5(AC10) 402106' 550 00 0 10 000005
PUSH SP,AC0 ; SP,AC0 402107' 261 17 0 00 000000
MOVEI AC0,-43(SP) ; AC0,XXXNAME 402110' 201 00 0 17 777735
PUSH SP,AC0 ; SP,AC0 402111' 261 17 0 00 000000
PUSH SP,C.25 ; SP,[0] 402112' 261 17 0 00 400665'
PUSHJ SP,SYM_VAL ; SP,SYM_VAL 402113' 260 17 0 00 000000*
LDB AC0,C.54 ; AC0,[POINT 19,4(AC10),35] <0,19> 402114' 135 00 0 00 402150'
ADD AC1,AC0 ; AC1,AC0 402115' 270 01 0 00 000000
MOVEM AC1,-2(SP) ; AC1,-2(SP) 402116' 202 01 0 17 777776
ADJSP SP,-2 ; SP,-2 402117' 105 17 0 00 777776
PUSH SP,AC11 ; SP,AC11 402120' 261 17 0 00 000011 0817
HRRZ AC0,73(AC10) ; AC0,73(AC10) 402121' 550 00 0 10 000073
ADD AC14,AC0 ; DCB_ADDR,AC0 402122' 270 14 0 00 000000
PUSH SP,AC14 ; SP,DCB_ADDR 402123' 261 17 0 00 000014
PUSHJ SP,GETWRD ; SP,GETWRD 402124' 260 17 0 00 000000*
ADJSP SP,-1 ; SP,-1 402125' 105 17 0 00 777777
MOVEM AC1,0(SP) ; AC1,0(SP) 402126' 202 01 0 17 000000 0816
PUSHJ SP,PUTWRD ; SP,PUTWRD 402127' 260 17 0 00 000000*
ADJSP SP,-6 ; SP,-6 402130' 105 17 0 00 777772 0809
L.14: MOVEM AC13,0(SP) ; TSK_FILE,0(SP) 402131' 202 13 0 17 000000 0831
PUSHJ SP,FCOR ; SP,FCOR 402132' 260 17 0 00 000000*
ADJSP SP,-22 ; SP,-22 402133' 105 17 0 00 777756 0765
L.15: ADJSP SP,-7 ; SP,-7 402134' 105 17 0 00 777771 0756
L.16: SETZ AC1, ; AC1, 402135' 400 01 0 00 000000 0693
ADJSP SP,-12 ; SP,-12 402136' 105 17 0 00 777766
POP SP,AC16 ; SP,AC16 402137' 262 17 0 00 000016
POP SP,AC14 ; SP,AC14 402140' 262 17 0 00 000014
POP SP,AC13 ; SP,AC13 402141' 262 17 0 00 000013
POP SP,AC12 ; SP,AC12 402142' 262 17 0 00 000012
POP SP,AC11 ; SP,AC11 402143' 262 17 0 00 000011
POP SP,AC10 ; SP,AC10 402144' 262 17 0 00 000010
POP SP,AC0 ; SP,AC0 402145' 262 17 0 00 000000
POPJ SP, ; SP, 402146' 263 17 0 00 000000
C.53: CMPSN ; 402147' 006 00 0 00 000000
C.54: POINT 19,4(AC10),35 ; 19,4(AC10),35 402150' 00 23 0 10 000004
C.55: POINT 7,P.ABC-1,34 ; 7,P.ABC-1,34 402151' 01 07 0 00 401553'
C.56: XWD 0,ROUTINE_NAME ; 0,ROUTINE_NAME 402152' 000000 401552'
C.57: XWD 0,P.ABD ; 0,P.ABD 402153' 000000 401555'
C.58: XWD 0,P.ABE ; 0,P.ABE 402154' 000000 401561'
C.59: EXP 50000 ; 50000 402155' 000000 050000
C.60: XWD 0,P.ABF ; 0,P.ABF 402156' 000000 401563'
C.61: POINT 7,P.ABG-1,34 ; 7,P.ABG-1,34 402157' 01 07 0 00 401563'
C.62: POINT 7,P.ABH-1,34 ; 7,P.ABH-1,34 402160' 01 07 0 00 401564'
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 44
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
C.63: POINT 7,P.ABI-1,34 ; 7,P.ABI-1,34 402161' 01 07 0 00 401565'
; Routine Size: 251 words
; 0838 END
; 0839
; 0840 ELUDOM
RELOC 0 ; 000000'
.STACK.:BLOCK 4000 ; 000000'
RELOC 402162 ; 402162'
.MAIN.: TDZA AC1,AC1 ; AC1,AC1 402162' 634 01 0 00 000001 0000
MOVEI AC1,1 ; AC1,1 402163' 201 01 0 00 000001
JSYS 147 ; 147 402164' 104 00 0 00 000147
MOVE AC2,C.64 ; AC2,[-4000,,.STACK.-1] 402165' 200 02 0 00 402201'
PUSH AC2,SP ; AC2,SP 402166' 261 02 0 00 000017
PUSH AC2,AC11 ; AC2,AC11 402167' 261 02 0 00 000011
PUSH AC2,AC7 ; AC2,AC7 402170' 261 02 0 00 000007
PUSH AC2,AC0 ; AC2,AC0 402171' 261 02 0 00 000000
PUSH AC2,AC1 ; AC2,AC1 402172' 261 02 0 00 000001
MOVE SP,AC2 ; SP,AC2 402173' 200 17 0 00 000002
SETZB FP,EFPNT. ; FP,EFPNT. 402174' 403 15 0 00 000000*
PUSHJ SP,VNP20 ; SP,VNP20 402175' 260 17 0 00 400100'
ADJSP SP,-5 ; SP,-5 402176' 105 17 0 00 777773
L.17: JSYS 170 ; 170 402177' 104 00 0 00 000170
JRST L.17 ; L.17 402200' 254 00 0 00 402177'
C.64: XWD -4000,.STACK.-1 ; -4000,.STACK.-1 402201' 774000 777777'
; Routine Size: 16 words
END .MAIN.
; Low segment length: 2048 words
; High segment length: 1154 words
; LIBRARY STATISTICS
;
; -------- Symbols -------- Blocks
; File Total Loaded Percent Read
;
; NETPKG:<VNP36>VNPLIB.L36.6 498 270 54 0
VNP36 25-Jan-1983 10:13:50 TOPS-20 Bliss-36 2A(142) Page 45
X03040 1-Jan-1983 15:47:16 NETPKG:<VNP36>VNP36.BLI.7 (8)
; 0841 ! Local Modes:
; 0842 ! Comment Column:36
; 0843 ! Comment Start:!
; 0844 ! Mode:Fundamental
; 0845 ! Auto Save Mode:2
; 0846 ! End:
; Size: 1059 code + 2143 data words
; Run Time: 00:18.1
; Elapsed Time: 00:59.2
; Memory Used: 66 pages
; Compilation Complete