YUL_SYSTEM_PASS_0_SERVICE_MODULE.argus
# Copyright: Public domain.
# Logname: YUL SYSTEM PASS 0 SERVICE MODULE
# Purpose: Part of the source code for YUL (revision 9).
# Assembler: TBD
# Contact: Jim Lawton <jim.lawton@gmail.com>
# Website: https://www.ibiblio.org/apollo/index.html
# Page scans: https://archive.org/details/yulsystemsourcec00hugh
# Pages: 108-152
# Mod history: 2016-10-06 JL Created.
# 2016-11-07 JL Transcribed pages 108-124.
# 2016-11-11 JL Transcribed pages 125-133.
# 2016-11-12 JL Transcribed pages 134-152.
# 2018-01-27 JL Fixed typo on page 117.
# Annotations:
#
# B L A I R - S M I T H
# Y U L S Y S T E M
#
# Listings in
# MITIGUS Format
#
# Note: Page numbers are scan page numbers rather than listing.
L @YUL SYSTEM PASS 0 SERVICE MODULE
# Page 108
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 1 PAGE 68
R0001 WE ARE DEEPLY INDEBTED TO THE ONE, THE ONLY, THE GREAT JOHN SHAW FOR THE FOLLOWING STRONG MAGIC....
R0003 JSOCTL
0004 SETLOC,2 0 B4
0005 MASKGRP,1 S,0 F,0
R0006 THE YUL SYSTEM PASS 0 SERVICE MODULE IS LOADED (INTO BANK 4) WHENEVER PASS 0 IS LOADED. IT SERVES TO
R0008 PREVENT PASS 0 FROM OVERFLOWING ITS BANK. THE CONTENTS OF THE SERVICE MODULE FALL INTO THREE MAIN CLASSES:
R0010 1) SYSTEM FUNCTIONS NOT RELATED TO A PARTICULAR COMPUTER OR PROGRAM -- E.G. BACKUP TRAPE PROCESSING.
R0012 2) OPERATIONS ON A PARTICULAR PROGRAM OR SUBROUTINE THAT ARE ALIKE FOR ALL COMPUTERS -- E.G. PUNCH SYMB. DECK.
R0014 3) OPERATIONS ON THE STATUS OF A PARTICULAR COMPUTER -- E.G. ADD COMPUTER NAME.
R0016 MAIN PASS 0, RUNNING IN BANK 1, REFERENCES THE SERVICE MODULE BY AUGMENTING SPEC,B4...0 AND USING THE SPEC
R0018 CONSTANT REFERENCED THEREBY.
R0019 RUDIMENTARY TRANSFER VECTOR AT BASE OF SERVICE MODULE:
0020 L BACKUP SPEC BACKUP
0021 L PRINT PS SPEC PRINT PS
0022 L PUNCH PS SPEC PUNCH PS
0023 L XFER PS SPEC XFER PS
0024 L ADD COM SPEC ADD COM
0025 L RMOV COM SPEC RMOV COM
0026 L PASS STA SPEC PASS STA
0027 L MANU STA SPEC MANU STA
# Page 109
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 2 PAGE 69
P0029 ONE-WORD ALPHABETIC CONSTANTS.
0030 A999999 ALF 09999990
0031 ASTRISK ALF *
0032 COMA 1962 ALF , 1962
0033 DASH 1T3 ALF ---
0034 DASHES ALF --------
0035 PASSS RE ALF RE: ASSE
0036 MANUS RE ALF RE: MA
0038 PASS S EQU ALF = ASSE
0039 MANU S EQU ALF = MA
0040 S ZERO C1 ALF 0
0041 4 C1 ALF 4
0042 EQUALS C1 ALF =
0043 L COLUMN 1 ALF L
0044 T COLUMN 1 ALF T
0045 P COLUMN 1 ALF P
0046 Y COLYUM 1 ALF Y 3
0047 PMAX9 MSJ ALF PMAX = 9
# (jl) I think ALF specifies units of a H-800 word (48 bits). So ALF on its own
# means 8 6-bit characters. I'm assuming the word is blank-filled.
0048 S BLANKS ALF
0049 S BLOTS ALF ████████
0050 S COLON C1 ALF :
00505 S SIGH ALF (SIGH)
0051 SW CMPUTR ALF COMPUTER
0052 S W MOD ALF MOD
0053 SW PRINT ALF PRINT
0054 SW PUNCH ALF PUNCH
0055 W 254P ALF 254+
0056 W AMENDED ALF AMENDED
0057 W AS ALF AS
0058 W AUTHORC ALF AUTHOR:
0059 W CHECKED ALF CHECKED
0060 W COMPUTR ALF COMPUTER
0061 W CONTRL ALF CONTROL
0062 S FOR ALF FOR
0063 W IS ALF IS
# (jl) Hand annotation on the listing, insert line
# W LENGTH ALF LENGTH = (=PATCH)
0064 W NAME ALF NAME
0065 S NEW ALF NEW
0066 WM NEW ALF (NEW)
0067 W NO ALF NO
# Page 110
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 3 PAGE 70
P0068 ONE-WORD ALPHABETIC CONSTANTS CONCLUDED.
0069 W NONE ALF (NONE)
0070 W OBS ALF *OBS*
0071 W OBSOLET ALF OBSOLETE
0072 W OLD ALF OLD
0073 W OUT ALF OUT
0074 W PASS ALF PASS
0075 W PASS 0 ALF YULPASS0
0076 W PNCHING ALF PUNCHING
0077 W PRNTING ALF PRINTING
0078 W PROGRMS ALF PROGRAMS
0079 W SOFTWAR ALF SOFTWARE
0080 W SNONE ALF S: NONE
0081 W STATUS ALF STATUS:
0082 S NO DISC ALF NO DISC:
0083 W UNUSED ALF UNUSED
0084 W YES ALF YES
00841 YUL D LIST ALF YULDLIST
0085 ZSUP ONE ALF 1
R0086 ALPHABETIC ARRAYS.
0088 BKUP LINE ALF,4 DIRECTORY LISTING OF YULPROGS #
0089 BUREL MSG ALF,2 BACKUP RELABELED
0090 CHEDL MSG ALF,3 CHECK DIRECTORY LISTING
0091 COMPU LIN ALF,2
0092 COMUS MSG ALF,3 COMPUTER IS STILL IN USE
0093 CONCN MSG ALF,5 CONFLICT WITH EXISTING COMPUTER NAME-
0094 DCLAV MSG ALF,3 DECLARED AVAILABLE
0095 DCLOB MSG ALF,3 DECLARED OBSOLETE
0096 DCLOK MSG ALF,3 DECLARED CHECKED OUT
0097 MANUS MSG ALF,2 NUFACTURING FOR
# Page 111
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 4 PAGE 71
P0098 ALPHABETIC ARRAYS CONTINUED.
0099 MNTN LINE ALF,4 YUL SYSTEM MAINTENANCE FUNCTION:
0100 NEWCO MSG ALF,3 NEW COMPUTER:
0101 NEW LINE OCT 0
0102 ALF,5
0103 ALF,5
0104 ALF,5
0105 NOMAT MSG ALF,4 NO MATCH FOUND FOR THIS CARD:
0106 NOTAV MSG ALF,2 NOT AVAILABLE
0107 NOW OP MSG ALF,4 NOW OPERATING FROM NEW YULPROGS
0108 OBUWK MSG ALF,4 FORMER BACKUP WILL BE WORKER
0109 OP SLP MSJ ALF,2 OPERATOR ASLEEP
0110 PASSS MSG ALF,2 MBLY PASS █ FOR
0111 PCH CARD OCT 0
0112 ALF,5
0113 ALF,5
# Page 112
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 5 PAGE 72
P0114 ALPHABETIC ARRAYS CONTINUED.
0115 XFR CONFL ALF,4 CONFLICT WITH EXISTING FILE NAME
0116 LAK TR MSG ALF,4 INSUFFICIENT TRACKS AVAILABLE;
0117 W CDIMS ON ALF,3 CARD IMAGES ON DISC
0118 PRSUB HDS ALF,4 NAME REVISION AUTHOR
0119 ALF,5 LAST ASSEMBLED M'F'ABLE SUBROUTINES
0120 ALF,5 (OBSOLETING SUBROUTINES PREFIXED BY "/")
01202 ASAMB MSG ALF,4 ASA TO AMEND BACKUP TAPE LABEL;
01204 S ACA OTHE ALF,2 ACA OTHERWISE
0121 REDUN MSG ALF,2 REDUNDANT
0122 REMCO MSG ALF,4 REMOVING COMPUTER NAME:
0123 SFWR HEDS ALF,3 ASSEMBLY PASS 1
0124 ALF,3 ASSEMBLY PASS 2
0125 ALF,3 ASSEMBLY PASS 3
0126 ALF,5 MANUFACTURING
# Page 113
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 6 PAGE 73
P0127 ALPHABETIC ARRAYS CONTINUED.
0130 STATS MSG ALF,4
0131 STNED MSG ALF,3 STILL NEEDED BY
0132 SURCO MSG ALF,4 COMPUTER NAME NOT RECOGNIZED.
0133 UNAVP MSG ALF,2 UNAVAILABLE
01332 UNCSD MSG ALF,3 UNNECESSARY SUBDIRECTOR:
0134 USER LOG OCT 0002
0135 ALF,5
0136 ALF,5
0137 ALF,5 USER'S OWN PAGE NO.
0138 W TRNSFER ALF TRANSFER
0139 ALF,5 NEEDS SUBDIRECTOR GIVING DISCFILE NAME
0140 XFR WRSIZ ALF,4 DISCFILE NAME VOID OR TOO LONG
0141 XFR TERMS ALF,5 DISCFILE NAME CONTAINS TERMINATOR CHARS.
0143 NO XFR MSG ALF,3 CAN'T PERFORM TRANSFER
# Page 114
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 7 PAGE 74
P91435 ALPHABETIC ARRAYS CONCLUDED.
0144 WAA 10060 ALF,3 W A A10060 0000000P
0145 W AVALABL ALF,2 AVAILABLE
0146 W CARD DUN ALF,2 CARD OUTPUT SENT
0147 W END REV ALF,2 END OF REVISIO
0148 W LAB AVAL ALF,2 AVAILABLE
0149 W LAB CHKO ALF,2 CHECKED OUT
0150 W LAB UNAV ALF,2 NOT AVAILABLE
0151 W LAST ASS ALF,2 LAST ASSEMBLED 0
0152 W LIST DUN ALF,2 LISTING FINISHED
0153 W NPR SUBS ALF,5 NUMBER OF PROGRAMS AND SUBROUTINES:
0154 W PASS 1 ALF,2 ASSEMBLY PASS 1
0155 ALF,2 ASSEMBLY PASS 2
0156 ALF,2 ASSEMBLY PASS 3
0157 W MANUF ALF,2 MANUFACTURING
0158 W SUBROS ALF,2 SUBROUTINES
0159 YUL BU MSG ALF,4 PRESENT YULPROGS WILL BE BACKUP
01591 MONTHS ALF,4 JAN FEB MAR APR
01592 ALF,4 MAY JUN JUL AUG
01593 ALF,4 SEP OCT NOV DEC
# Page 115
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 8 PAGE 75
P0160 NUMERIC CONSTANTS.
0161 5 LINES OCT 0005
0162 A ADRES OCT 0000 7777
0163 B9 OCT 001
0164 B10 OCT 0004
0165 B12 OCT 0001
01652 B9 B12 OCT 0011
0166 128 BLOX OCT 0000 02
0167 B9B10 OCT 0014
0168 B7T13 OCT 00774
0169 S B14T18 OCT 0000 37
0171 B ADDR 6 OCT -6 0000
0172 BAN EOFRI OCT -420 0000
0173 END OF 1 OCT 7611 1111 1111 1150
0174 LEFT HALF DEC GGGGGG
0175 OCTAL 60 OCT -60
0176 S 1 C6 OCT -1 0000
0177 DISABLED DEC -GF0
0178 S BIT 32 DEC -10000
0180 S13 FXBIN -13
0181 S 4SPACE OCT 0004
0182 S BIT 1 OCT 4
0183 S C1T2 OCT 7777
0184 S CAC 3 DEC - GGGG
0185 S D12 DEC -G
0186 S NINE DEC -9
0187 S ONE OCT -1
0188 SP1 OCT 0001
0189 S PLS ZERO DEC +0
# Page 116
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 9 PAGE 76
P0190 NUMERIC CONSTANTS CONCLUDED.
0191 SSWITCH OCT 0
0192 S TEN C1 OCT 12
0193 S THRED 10 OCT -3776
0194 S THRED 11 OCT -3777
0195 S TWO OCT -2
0196 S THREE OCT -3
0197 S SIX DEC -6
0198 S EIGHT DEC -8
0199 S CHAR 1 OCT 77
0200 S CHAR 8 OCT -77
0201 S C2T7 OCT 0077 7777 7777 7700
0202 S FOUR OCT -4
0203 SLASH OCT -61
0204 USER PAGE DEC 0
0205 OK BANNER OCT -120 0000, -120 0000, -420 0000
0206 OCT -120 0000, -120 0000, -420 0000
0207 B ARG DEC 000EEEEE
0208 AVCO BITS OCT 4001 4001 4001 4001
0209 MANU MASK OCT -7777
0210 S PAV BITS OCT 0001 0001 0001 0001
0211 PCO BITS OCT 4000 4000 4000 4000
# Page 117
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 10 PAGE 77
P0212 ASSIGNMENTS IN YUL PASS 0 TRANSFER VECTOR.
0213 PROG NAME ASSIGN 0,0
0214 SWITCH ASSIGN 0,2
0215 L OLD LINE ASSIGN 0,3
0216 OLD LINE ASSIGN 0,4
0217 PAGE HEAD ASSIGN 0,20
0218 PAGE NO ASSIGN 0,36
0219 L COP BUFS ASSIGN 0,39
0220 LIN COUNT ASSIGN 0,41
0221 L PROG FIL ASSIGN 0,44
0222 N LINES ASSIGN 0,45
0223 L COMP NAM ASSIGN 0,46
0224 N COPIES ASSIGN 0,47
0225 PAPER PLY ASSIGN 0,48
0226 L AUTH NAM ASSIGN 0,51
0227 COMPUTER ASSIGN 0,53
0228 YUL TYPER ASSIGN 0,63
0229 RD SBDIRC ASSIGN 0,65
0230 HOWZAT ASSIGN 0,66
0231 IGN SUBDR ASSIGN 0,68
0232 MANUF RTN ASSIGN 0,76
0233 YUL MASKS ASSIGN 0,77
0234 OCTAL 20 ASSIGN 0,78
0236 SERCH KEY ASSIGN 0,79
0236 WHODUNIT ASSIGN 0,80
0237 6 COMMA 19 ASSIGN 0,81
0238 L GPB STT ASSIGN 0,82
0239 L DIRECTY ASSIGN 0,83
0240 BANK 1 ASSIGN 0,83
02402 CHAS 2500 ASSIGN 0,84
0241 PUNCH CD ASSIGN 0,87
0242 TYP ABORT ASSIGN 0,89
0243 L OBJC MSG ASSIGN 0,90
0244 REJEC DIR ASSIGN 0,91
0245 TASK MSG ASSIGN 0,93
0246 TASK OBJC ASSIGN 0,97
0247 TYP TK OBJ ASSIGN 0,98
0248 KNOWN PSR ASSIGN 0,99 (CONTINUED).
# Page 118
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 11 PAGE 78
P02485 FURTHER ASSIGNMENTS.
0249 TAPE SRCH ASSIGN 0,100
0250 L PGHED P3 ASSIGN 0,101
0251 ASSY SUBD ASSIGN 0,102
0252 COMMON ASSIGN 0,103
0253 PUT CHAR ASSIGN 0,105
0254 WRIT OBJC ASSIGN 0,114
0255 LABEL YUL ASSIGN 0,115
0256 POSIT YUL ASSIGN 0,116
0259 PHI WAA ASSIGN 0,117
0260 GROUP A ASSIGN 0,118
0261 YUL D2A ZS ASSIGN 0,119
0262 FOUND BUF ASSIGN 0,120
0263 GROUP NAP ASSIGN 0,122
0264 SUB THRDS ASSIGN 0,125
0265 DISASTER ASSIGN 0,126
0266 COMP NAME ASSIGN 0,128
0267 1 COMMA 8 ASSIGN 0,129
0268 ACCEPT M2 ASSIGN 0,130
0269 DECOD CPN ASSIGN 0,131
0270 CPN FIXER ASSIGN 0,132
0271 GIVE PAIR ASSIGN 0,133
0272 FIND COMP ASSIGN 0,134
0273 FIND PAIR ASSIGN 0,135
0274 L BLANCD ASSIGN 0,136
0275 REVNO ASSIGN 0,137
0276 S LINE ASSIGN 2,0
# Page 119
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 12 PAGE 79
P0277 ADDRESS CONSTANTS.
0278 BANK 5 SPEC,B5 DAMN ZERO
0279 L BUF 1 SPEC,B5 512
0280 L BUF 2 SPEC,B5 1024
0281 L BUF 3 SPEC,B5 1536
0282 L TEMP MSK SPEC TEMP MASK
0283 L END MLIS SPEC END M LIST
0284 L NEW LINE SPEC NEW LINE
0285 L LONG CUS SPEC LONG CUSS
0286 L PUT IT SPEC PUT IT ON
0287 L PCH CARD SPEC PCH CARD +1
0288 SPEC PCH CARD +6
0289 L S MONTHS SPEC MONTHS -1
0290 L BANK 1 SPEC,B1 DAMN ZERO
0291 L W PASS 1 SPEC W PASS 1
0292 INIT WD 8 CAC,B7 6 6 10
0293 S BANK 1 CAC 2048 MOR SUBW Q
0294 S END THR SPEC,B7 6
0295 XFR BUFFS SPEC,B7 2045
0296 XFR LIMIT SPEC,BC 2043
0297 SPEC,BC 2046
0298 SPEC,BG 2044
0299 RESERVE 2
R0300 RESERVATIONS.
0301 TRINDEX RESERVE 15
0302 COMP LOCN RESERVE 1
0303 PASS MASK RESERVE 1
0304 SAVE X23 RESERVE 2
0305 SAVE X4 RESERVE 1
0306 TASK 2 RESERVE 1
0307 TEMP MSK RESERVE 1
0308 PRG OR SUB RESERVE 1
0309 DISCALIM RESERVE 1
0310 TRACK LOG RESERVE 1
0311 DISC ADDR RESERVE 1
0312 XFR PLACE RESERVE 1
# Page 120
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 13 PAGE 80
P0313 EQUIVALENCES.
0314 ALPHA EQUALS 0
0315 BINARY EQUALS 16
0316 L JUNK EQUALS L BUF 2
03161 L MOR SBWQ EQUALS S BANK 1
0317 S C1T4 EQUALS LEFT HALF
0318 SP2 EQUALS USER LOG
0319 SP3 EQUALS PAGE HEAD
0320 S ZERO EQUALS PCH CARD
0321 DEPAGIN8 EQUALS L PGHED P3
0322 S STOPPER EQUALS S CAC 3
0323 SNATRACK EQUALS SLASH
R0324 JUMP TABLE FOR UNSQUEEZING CARD IMAGES FROM TAPE.
0325 EXPANDER MT N,X4,1 5 N,X6,1
0326 TN N,X4,4 4 6,1
0327 TX N,X4,1 - N,X6 C
0328 TN N,X4,3 3 6,2
0329 TX N,X4,1 - N,X6 C
0330 TS N,X4,1 6,1 C,+2 C
0331 TX N,X4,1 - N,X6 C
0332 TN N,X4,2 2 6,3
0333 TX N,X4,1 - N,X6 C
0334 TS N,X4,1 6,1 C,+2 C
0335 MT N,X4,1 3 N,X6,2
0336 TS N,X4,1 6,2 C,+4 C
0337 TX N,X4,1 - N,X6 C
0338 TS N,X4,1 6,1 C,+2 C
0339 MT N,X4,1 2 N,X6,4
0340 TX N,X4,1 - 6,4
0341 MT N,X4,1 4 N,X6,1
0342 TN N,X4,3 3 6,1
0343 TX N,X4,1 - N,X6 C
0344 TN N,X4,2 2 6,2
0345 TX N,X4,1 - N,X6 C
0346 TS N,X4,1 6,1 C,+2 C
0347 MT N,X4,1 2 N,X6,3
0348 TX N,X4,1 - 6,3
0349 MT N,X4,1 3 N,X6,1
0350 TN N,X4,2 2 6,1
0351 MT N,X4,1 2 N,X6,2
0352 TX N,X4,1 - 6,2
0353 MT N,X4,1 2 N,X6,1
0354 TX N,X4,1 - 6,1
0355 TX N,X4,1 - N,X6
0356 TX - - -
# Page 121
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 14 PAGE 81
P0357 ROUTINE IN SERVICE MODULE FOR PRINTING A SYMBOLIC LISTING, PUNCHING A SYMBOLIC DECK, OR BOTH SIMUL-
R0359 TANEOUSLY. FOR THE LATTER CASE, THE VERB ON THE DIRECTOR CARD MAY BE EITHER "PRINT, PUNCH" OR "PUNCH, PRINT".
R0361 THE SYMBOLIC DECK PUNCHED BY THIS ROUTINE IS HEADED BY AN EXACT COPY OF THE YUL DIRECTOR CARD, THUS IDENTIFYING
R0363 THE DECK AND INCIDENTALLY SHOWING WHETHER A LISTING WAS MADE AT THE SAME TIME. THE FORMAT OF THE LISTING IS
R0365 THAT OF A YUL ASSEMBLY LISTING IN WHICH ALL CARDS ARE REMARKS CARDS. THE NUMBER OF COPIES AND THE NUMBER OF
R0367 LINES PER PAGE ARE GOVERNED BY THE SAME SUBDIRECTORS AS IN ASSEMBLY.
R0368 ENTRY TO PRINT A SYMBOLIC LISTING OF A PROGRAM OR SUBROUTINE.
0369 PRINT PS NA 6,19 SW PUNCH C,+4 BRANCH UNLESS PUNCHING ALSO WANTED.
0371 TN 6,22 33 6,19 SHIFT UP SENTENCE TO COVER 2ND VERB.
0373 TX B10 - SSWITCH SET INDICATOR BIT FOR PUNCHING.
0375 TS W PNCHING TASK2 PRINTASK
0376 NA 6,19 W TRNSFER C,+3 BRANCH IF NOT "PRINT, TRANSFER".
0378 TS, BIT12 S ONES S SWITCH PRINT PS +1 C SET INDICATOR BIT FOR TRANSFERRING.
0380 TX W TRNSFER - TASK2
0381 PRINTASK TS W PRNTING TASK MSG TASK OBJC BREAK DOWN AND RE-FORM REST OF DIRECTOR.
0383 TS, BIT9 S ONES SSWITCH PRINT PCH SET INDICATOR BIT FOR PRINTING.
R0385 ENTRY TO PUNCH A SYMBOLIC DECK OF A PROGRAM OR SUBROUTINE.
0386 PUNCH PS NA 6,19 SW PRINT C,+4 BRANCH UNLESS PRINTING ALSO WANTED.
0388 TN 6,22 33 6,19 SHIFT UP SENTENCE TO COVER 2ND VERB.
0390 TX B9 - SSWITCH SET INDICATOR BIT FOR PRINTING.
0392 TX W PRNTING - TASK 2
0393 TS W PNCHING TASK MSG TASK OBJC BREAK DOWN AND RE-FORM REST OF DIRECTOR.
0395 TS, BIT10 S ONES SSWITCH PRINT PCH SET INDICATOR BIT FOR PUNCHING.
R0397 SIMILAR ENTRANCE FOR FILING ON THE DISC ALL OR PART OF A PROGRAM OR SUBROUTINE IN SYMBOLIC CARD IMAGE FORM. MAY
R0399 ALSO SPECIFY PRINTING. REQUIRES A SUBDIRECTOR WITH "AS" AND A DISC FILE NAME CHOSEN BY THE USER.
0401 XFER PS NA 6,19 SW PRINT C,+4 BRANCH UNLESS PRINTING ALSO WANTED.
0403 TN 6,22 33 6,19 SHIFT UP SENTENCE TO COVER 2ND VERB.
0405 TX B9 - S SWITCH SET INDICATOR BIT FOR PRINTING.
0407 TX W PRNTING - TASK2
0408 TS W TRNSFER TASK MSG TASK OBJC BREAK DOWN AND RE-FORM REST OF DIRECTOR.
0410 TS, BIT12 S ONES S SWITCH PRINT PCH SET INDICATOR BIT FOR TRANSFERRING.
# Page 122
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 15 PAGE 82
P0412 COMMON PROCEDURE, PRINTING, PUNCHING, AND TRANSFERRING.
0413 PRINT PCH SWE, CAC3 S BANK 1 32 Z,X0
0414 SWS, D12 S ZERO 0 S SWITCH INITIALIZE CARD SELECTION MODE.
0416 LA B9 B10 S SWITCH C,+2 BRANCH IF PRINTING AND PUNCHING.
0418 NA S SWITCH B9 B12 C,+3 BRANCH IF DOING ONLY ONE TASK.
0420 S, YUL TYPER TASK MSG AMTF +4 C,+1 TYPE FIRST TASK MESSAGE OF TWO.
0422 TX TASK2 - TASK MSG
0423 TS Z,SC WHODUNIT TYP TKOBJ TYPE LAST TASK AND OBJECT OF TASK(S).
0425 SWE, CAC3 S BANK 1 32 Z,X0
0426 TS Z,X4 SAVE X4 KNOWN PSR CHECK REVN, AUTHOR NAME, ETC.
0428 SWE, CAC3 S BANK 1 32 Z,X0
0429 TS PROG NAME SERCH KEY TAPE SRCH C SET GRP B SEARCHING FOR PROG OR SUBRO.
0431 NA, BIT12 S SWITCH S ONES NOT XFER BRANCH IF NOT TRANSFERRING.
0433 LA, CHAR5 S ONES DISC STAT C,+3
0434 S, MON TYPER S NO DISC SPRAM +8 - "NO DISC;".
0436 CANT XFER S, MON TYPER NO XFR MSG SPRAMR +24 TYP ABORT " CAN'T PERFORM TRANSFER".
0438 EX DISC STAT S B14T18 DISCALIM EXTRACT NUMBER OF DISCS.
04392 TN 6,16 39 6,120
0440 TS - - RD SBDIRC
0441 S, MON TYPER W TRNSFER SPRAMR +48 CANT XFER CUSS LACK OF "AS FILENAME" SUBDIRECTOR.
0443 NA 6,16 W AS C,-1
0444 LA, CHAR1 S ONES 6,18 C,-2 BRANCH IF FILE NAME NOT ON CARD.
0446 LA, CHAR6 6,21 S ZERO C,+2 BRANCH IF NAME HAS ZERO LENGTH.
0448 LA, CHAR6 6,21 S BIT 32 C,+2 BRANCH IF LENGTH IS 16 OR LESS.
0450 S, MON TYPER XFR WRSIZ SPRAMR +32 REJEC DIR "DISCFILE NAME VOID OR TOO LONG".
0452 LA, CHAR1 S ONES 6,22 C,+2
0453 S, MON TYPER XFR TERMS SPRAMR +40 REJEC DIR "DISCFILE NAME CONTAINS TERMINATORS".
0455 TN 6,19 2 TRINDEX
0456 S, MON TYPER 6,2 A +9 C,+1 "AS OUTPUTFILENAME ".
04572 TN 6,120 39 6,16
0458 XFR RE TLU TS S ONES TRINDEX +2 TR LOOKUP RESTART LOOKUP AFTER TRACK RELEASE.
0460 SS S ZERO S D 12 TRINDEX +3
0461 NA, C7T8 TRINDEX DISABLED SETRALOG -1 IGNORE DISABLED FILES.
0463 TR LOOKUP TS S ZERO TRINDEX +4 DISCAP C
0464 OCT -15
0465 SPEC TRINDEX
0466 SSL, THREE TR LOOKUP +1 0 C,+1 TO C,+2 ON LOOKUP, TO C,+4 ON RELEASE.
0468 TS SNATRACK TRINDEX +3 SETRALOG THERE ARE NO FILE NAME CONFLICTS; BEGIN.
0470 NA, C7T8 TRINDEX +3 SNATRACK XFR RE TLU +1 IGNORE OTHER-TYPE FILE WITH SAME NAME.
0472 SSL, ONE TRINDEX +4 0 C,+2 TEST PSEUDO-CONFIRMATION BIT.
0474 TS, CHAR8 S BLANKS TR LOOKUP +1 XFR RE TLU RESTORE LOOKUP MODE AFTER TRACK RELEASE.
0476 TS, CHAR8 S D 12 TR LOOKUP +1 TR LOOKUP RELEASE OLD UNCONFIRMED TRACKS.
0478 S, MON TYPER XFR CONFL SPRAMR +32 TYP ABORT "CONFLICT WITH EXISTING FILE NAME".
0480 SETRALOG SWE, C5T8 YUL LOG D,6 TRACK LOG JOB'S LOG ON 1ST TRACK, 1 LESS EACH SUC.
0482 TS CHAS 2500 TRINDEX +5 PRINT HED -1 SET UP CHARLIE-WORD OF 2500 FOR ALL TRX.
# Page 123
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 16 PAGE 83
P04835 INITIALIZATION OF PUNCHING AND PRINTING.
0484 NOT XFER NA, BIT10 SSWITCH S ONES PRINT HED BRANCH IF NOT PUNCHING.
0486 TX Y COLYUM 1 - PCH CARD +1
0487 TN 6,2 9 PCH CARD +2
0488 S, PUNCH CD PCH CARD ALPHA C,+1 PUNCH YUL DIRECTOR CARD AS HEADER.
0490 NA, BIT9 SSWITCH S ONES INIT PRNT +1 BRANCH IF NOT PRINTING.
0492 PRINT HED WA Z,X6 OCTAL 20 Z,X5 INCLUDE COMPUTER NAME IN PAGE HEAD.
0494 TX L PGHED P3 - Z,S2
0495 TS N,X5,2 COMMON PUT CHAR +7 C
0496 WA N,X5 S 1 C6 N,X5
0497 TS SAVE X4 Z,X4 WRIT OBJC WRITE OBJECT MESSAGE IN PAGE HEAD.
0499 TX S ZERO - N COPIES
0500 TS, B2B11 S ONES SWITCH RD SBDIRC PROHIBIT "RENUMBER", GET SUBDIRECTOR.
0502 TX Z,SC,1 - - CHECK ON NUMBER OF COPIES WHEN SBDS END.
0504 TS S ZERO PAPER PLY ASSY SUBD PROCESS PRINTING SUBDIRECTORS.
0506 LA N COPIES S ZERO INIT PRNT BRANCH IF NO EXTRA COPIES TO BE MADE.
0508 PLY WAIT TX C,+0 0 Z,AU2,31
0509 TX C,+0 0 Z,AU1,31
0510 NA PAPER PLY S ZERO 9 PLY CHEK BRANCH WHEN OPERATOR HAS REPLIED.
0512 NA Z,AU1,1 S ONE C,-1
0513 NA Z,AU2,1 S ONE C,-3
0514 S, MON TYPER OP SLP MSJ SPRA +16 - AFTER TOO LONG, TYPE "OPERATOR ASLEEP".
0516 TS S ONE PAPER PLY OK PLY
0517 9 PLY CHEK LA PAPER PLY S NINE OK PLY
0518 S, MON TYPER PMAX9 MSJ SPRAMR +8 -
0519 TX S ZERO - PAPER PLY
0520 S, MON TYPER WAA 10060 SPRA +24 PLY WAIT ASK AGAIN AFTER UNSATISFACTORY REPLY.
0522 TS S ZERO N COPIES INIT PRNT
0523 OK PLY LA N COPIES PAPER PLY C,-1 BRANCH IF ONE RUN THRU PRINTER WILL DO.
0525 S, MON TADDR COPY OP
0526 TS PAPER PLY COMMON POSIT CPY GO POSITION PRE-SNATCHED TAPE.
0528 TS PAPER PLY COMMON PHI SNACH
0529 ALF,2 W10Y0102YULWRK2
0530 S ONES DEC GGGG GGGG GGGG
# Page 124
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 17 PAGE 84
P0531 INITIALIZATION FOR MULTIPLE PRINTER RUNS, RECEPTION OF CARD IMAGES.
0532 POSIT CPY TS - - PHI TAPE
0533 COPY OP RW,2 - - -
0534 TS S STOPPER Z,X4 PHI TAPE
0535 RF,2 4,0 - - SPACE FORWARD OVER LABEL.
0537 WD N COPIES S ONE N COPIES
0538 WA COMMON PAPER PLY COMMON
0539 LA COMMON N COPIES C,-1 COMPUTE EXACT NUMBER OF COPIES.
0541 TS COMMON N COPIES PHI TAPE
0542 RF,2 - - -
0543 INIT PRNT TN PAGE HEAD +1 13 OLD LINE +1 SET UP TITLE ON COVER SHEET.
0545 TS L NEW LINE Z,X2 RD SBDIRC SLINE IS ASSIGNED TO 2,0.
0547 TS S BLANKS PAGE HEAD +14 FETCH SYM -2 PROCEED WHEN OUT OF SUBDIRECTORS.
05472 S, MON TYPER UNCSD MSG SPRAMR +24 - "UNNECESSARY SUBDIRECTOR:".
05474 S, YUL TYPER 6,2 A +9 INIT PRNT +1
0548 TS L JUNK Z,X3 FETCH SYM FAIL-SAFE WHEN 1ST CARD IS RIGHT PRINT.
0550 NA 5,2 EOR FIX CARD BRANCH IF MORE CARDS IN CURRENT RECORD.
0552 FETCH SYM NA SERCH KEY EOR GROUP NAP SLEEP UNTIL GRP B LOCATES RECORD.
0554 TX FOUND BUF - Z,X4
0555 EX N,X4 LEFT HALF TASK 2 SAVE INDICATOR: SQUEEZED OR NOT.
0557 TX L BUF 1 - Z,X5
0558 RT N,X4 - N,X5,2 MOVE RECORD TO SAFETY.
0560 WD Z,AU2 S 13 Z,AU2
0561 TX Z,AU2,10 - Z,AU1
0562 NA END OF 1 N,AU1,1 C,+2 SEE IF THIS RECORD CONTAINS "END OF".
05632 TS - - PR PCH REW
0564 NA Z,AU1 Z,AU2 C,-2
0565 TX PROG NAME - SERCH KEY
0566 SET UP GPB TX L GPB STT - Z,SH
0567 TS N,SC,3 N,SH MON WAKE C SET GRP B GOING AFTER READING LAST RECD.
0569 SPEC SRCH TEST -3
0570 PR PCH REW TS - - PHI TAPE
0571 RW,1 - - - REWIND YULPROGS AFTER READING LAST RECD.
0573 FIX CARD TX L PCH CARD - Z,X6
0574 LA TASK 2 S ZERO END OF Q -1 BRANCH IF RECORD IS NOT CONDENSED.
0576 TX Z,X5 - Z,X4 KEEP FWA IN X5.
0578 MT S BLANKS 10 N,X6,1
0579 TX L PCH CARD - Z,X6
0580 SSL, LOW5 N,X4,1 0 EXPANDER C RECONSTITUTE FIRST HALF OF CARD.
0582 TX L PCH CARD +1 - Z,X6
0583 SSL, LOW5 N,X5 5 EXPANDER C RECONSTITUTE SECOND HALF OF CARD.
0585 TS Z,X4 Z,X5 END OF Q
0586 MT N,X5,1 10 N,X6,1 MOVE UNCONDENSED CARD.
# Page 125
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 18 PAGE 85
P0588 SELECT CARD IMAGES FOR SYMBOLIC-CARD-IMAGE TYPE TASK.
0589 END OF Q LA END OF 1 PCH CARD +1 END PR PCH BRANCH IF JUST RECONSTITUTED "END OF".
0591 TEST MODE SSL, D12 S SWITCH 0 C,+1 BRANCH ON 4-WAY CARD SELECTION MODE.
0593 TS PHI WAA Z,X4 SEL PEEK INIITAL MODE = 0.
0595 TS PHI WAA Z,X4 SEEK MTCH REQUEST-SEEKING MODE = 1.
0597 SSL, ONE PCH CARD +1 5 C,+1 ACCEPT UNTIL SEQBREAK (MODE = 2).
0599 TS - - USE CARD ACCEWPT ALL (MODE = 3) OR COND. ACCEPT.
0601 TX PHI WAA - Z,X4
0602 SEL PEEK TS Z,X4,1 Z,X6 PHI PEEK C PEEK AT POSSIBLE REQUEST CARD.
0604 NA, CHAR1 4,0 ASTRISK C,+2
0605 SSL, ONE S SWITCH 1 C,+3 IF MONITOR CARD, TEST MODE AGAIN.
0607 NA, CHAR1 4,0 Y COLYUM 1 C,+3
0608 SSL, ONE S SWITCH 1 C,+1 IF YUL DIRECTOR, TEST MODE AGAIN.
0610 TS, CHAR8 S THREE S SWITCH USE CARD ACCEPT ALL IF NO REQUESTS.
0612 TN N,X4 10 6,1
0613 TX Z,X5 - SAVE X4
0614 TX, CHAR8 S ONE - S SWITCH SET UP MODE 1 (SEEK 80-COLUMN MATCH).
0616 TX L TEMP MSK - Z,AU1
0617 NA, CHAR1 6,1 T COLUMN 1 C,+2
0618 TS, CHAR1 L COLUMN 1 6,1 C,+2 CHANGE "T" CARD TO "L" CARD.
0620 NA, CHAR1 6,1 L COLUMN 1 SEL UNLOG BRANCH OF NOT ANY KIND OF LOG CARD.
0622 NA,DATE MASK 6,9 S BLANKS C,+2
0623 TS S CHAR 1 N,AU1 SEEK MTCH -1 DO NOT TEST COLUMNS 2-8 OF LOG CARDS.
0625 TX, CHAR6 DASHES - 6,9
0626 TS, CHAR1 DASHES 6,10 C,-2 PUT DASHES INTO DATE.
0628 SEL UNLOG SM S CHAR 1 S C2T7 N,AU1 CHECK ALL BUT COLUMN 8 OF NON-LOG CARDS.
0630 SWE,YYNNYYYY 6,1 A,3 6,12
0631 TS S SIX Z,X5 C,+2 SET UP CHECK ON 6-COLUMN CARD NO. FIELD.
0633 CDNO CHEK SWS, ONES 6,12 A,1 6,12
0634 LA, CHAR2 6,12 END OF 1 C,+3 BRANCH IF CHARACTER IS A DIGIT.
0636 NA, CHAR2 6,12 S BLANKS SEEK MTCH -1
0637 TX, CHAR2 S ZERO - 6,12 REPLACE BLANK BY ZERO.
0639 NA Z,X5,1 S ONE CDNO CHEK
0640 LA A999999 6,12 SEEK MTCH -1 CARD NUMBER 999999 IS ALSO A SEQ. BREAK.
0642 SS 6,12 S C2T7 6,1 STANDARDIZE NON-SEQUENCE-BREAK NUMBER.
0644 TS SAVE X4 Z,X5 TEST MODE +2 REQUEST CARD IS NOW READY TO LOOK AT.
0646 SEEK MTCH NA, TEMPMASK PCH CARD +1 4,1 FETCH SYM -1 FAST IGNORE IF FIRST WORD DOESN'T MATCH.
0648 TN PCH CARD +1 1 4,1 SET UP AU1 AND AU2.
0650 TX S NINE - Z,CSH
0651 NA N,AU1,1 N,AU2,1 FETCH SYM -1 IGNORE CARD IF ANY NON-MATCH.
0653 NA Z,CSH,1 S ONE C,-1
0654 S, PHI READ 4,1 READ USED REQUEST CARD AFTER SUCCESS.
0656 TX, CHAR8 S TWO - S SWITCH SET UP MODE 2 TO ACCEPT UNTIL SEQBREAK.
# Page 126
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 19 PAGE 86
P0658 PREPARE A CARD IMAGE FOR TRANSFERRING, PRINTING, PUNCHING, OR PRINTING WITH EITHER TRANSFERRING OR PUNCHING.
0660 USE CARD NA, BIT12 S SWITCH S ONES NOT XFER 2 BRANCH IF NOT TRANSFERRING.
0662 TS S ZERO C,+0 SNATCH TR SNATCH TRACK HERE FIRST TIME ONLY.
0664 TX XFR PLACE - Z,X4
0665 NA XFR PLACE XFR LIMIT SEND XFER BRANCH IF NOT END OF OUTPUT BUFFER.
0667 EX EOR LEFT HALF N,X4,2 PLANT END-OF-BUFFER FLAG.
0669 TS EOR N,X4 DISC CHEK
0670 XFR LD X4 TX XFR BUFFS - Z,X4 S
0671 TN XFR BUFFS 2 XFR BUFFS +4
0672 TN N,AU1 4 XFR BUFFS SWAP OUTPUT BUFFER NAMES.
0674 S, DISC WRIT 4,0 128 DISC ADDR WRITE BLOCKS OF 8192 WORDS ON THE DISC.
0676 WA DISC ADDR 128 BLOX DISC ADDR
0678 TS XFR BUFFS XFR PLACE XFR LD X4 C
0679 NA DISC ADDR DISCALIM SEND XFER
0680 SNATCH TR SWE, C1T4 TRACK LOG D,6,L TRINDEX +2
0681 TS, C1T4 TRINDEX +2 TRINDEX +5 DISCAP C
0682 TR CODE WD OCT -1016 SNATCH A TRACK, GIVE IT A LOG NUMBER.
0684 SPEC TRINDEX
0685 TS XFR BUFFS Z,X4 NEW TRACK TRACK SNATCH WAS SUCCESSFUL.
0687 XFER FAIL NA, C1T4 TRINDEX +2 YUL LOG C,+2 BRANCH UNLESS ALL TRACKS ARE RELEASED.
0689 S, MON TYPER LAK TR MSG SPRAM +32 CANT XFER "INSUFFICIENT TRACKS AVAILABLE;".
0691 DA TRACK LOG S ONE TRACK LOG INCREMENT LOG NUMBER TOWARD JOB LOG NO.
0693 SWE, C1T4 TRACK LOG D,6,L TRINDEX +2
0694 TS - - DISCAP C
0695 OCT -1017
0696 SPEC TRINDEX
0697 TS - - XFER FAIL
0698 TS - - DISASTER BAD RETURN SHOULD BE IMPOSSIBLE HERE.
0700 NEW TRACK DS TRACK LOG S ONE TRACK LOG DECREMENT LOG NUMBER FOR EACH TRACK.
0702 EX TR CODE WD B7T13 DISC ADDR
0703 SS DISC ADDR B7T13 DISCALIM FORM DISC ADDRESSES OF TRACK AND TR +1.
0705 SEND XFER TN PCH CARD +1 10 N,X4,10
07052 TX Z,X4 - XFR PLACE
0706 LA END OF 1 PCH CARD +1 CLOSE XFR BRANCH IF THAT WAS "END OF" CARD.
# Page 127
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 20 PAGE 87
P0708 PREPARE A CARD IMAGE FOR PRINTING AND/OR PUNCHING.
0709 NOT XFER 2 SSL, FOUR PCH CARD +1 3 C,+1 BRANCH IF CARD IS A SEQUENCE BREAK.
0711 NA, CHAR7 PCH CARD +1 S ZERO C,+4 BACKWARDS ZERO SUPPRESS IN COLUMNS 7,6.
0713 TX, CHAR7 S BLANKS - PCH CARD +1
0714 NA, CHAR6 PCH CARD +1 S ZERO C,+2
0715 TX, CHAR6 S BLANKS - PCH CARD +1
0716 SS S ZERO OCTAL 60 PCH CARD +1 REMOVE SEQUENCE BREAK FLAG & ASTERISK.
0718 NA, CHAR8 PCH CARD +1 S NINE C,+3 BRANCH IF CARD NOT RIGHT PRINT REMARKS.
0720 TN PCH CARD +2 5 3,11 DEPOSIT RIGHT PRINT IN OLD LINE.
0722 TS - - ASK PUNCH
0723 NA, BIT9 SSWITCH S ONES ASK PUNCH BRANCH IF NOT PRINTING.
0725 TN PCH CARD +1 10 SLINE +1
0726 MT S BLANKS 5 N,AU2,1
0727 SWE, BIT 1 SLINE +1 4 SLINE
0728 SWS, ACO2 SLINE +1 12 SLINE
0729 TX, CHAR8 S BLANKS - SLINE +1 TRANSLATE UPSPACING NOTATION.
0731 SET OLD TX L OLD LINE - Z,X3
0732 TX Z,X2 - L OLD LINE BEGIN SWAP OF PRINT BUFFERS.
0734 NA, CHAR1 SLINE +1 L COLUMN 1 NO NEW LOG
0735 TX, C5T8 ZSUP ONE - USERLOG +13 INITIALIZE USER'S OWN PAGE NUMBER.
0737 TX, C5T8 S BLANKS - SLINE +10 DELETE ANY PAGE NUMBER IN CARD.
0739 TN SLINE +1 10 USERLOG +1 SET LOG LINE ASIDE AS SUBHEAD.
0741 MT N,AU2,1 5 N,AU1,1 BUT PRINT "USER'S OWN PAGE NO. 1".
0743 TS S ONE USER PAGE PRIN SKIP -1 SKIP BEFORE PRINTING LOG CARD.
0745 NO NEW LOG NA, CHAR1 SLINE +1 P COLUMN 1 C,+2 UNLESS IMMEDIATELY PRECEDED BY LOG CARD.
0746 NA, CHAR1 3,1 L COLUMN 1 PRIN SKIP -1 SKIP BEFORE PRINTING "P" CARD.
0748 LA S BIT 1 N,X3 PRIN SKIP SKIP IF LAST LINE SO SPECIFIED.
0750 WA LIN COUNT N,X3 LIN COUNT ADD IN UPSPACING OF LAST LINE.
0752 LA LIN COUNT N LINES PRINT OLD BRANCH IF MORE ROOM ON THIS PAGE.
0754 TX S BIT 1 - N,X3
0755 PRIN SKIP NA N COPIES S ZERO COPY PRT2
0756 S, PHI PRINT DEPAGIN8
0757 NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0759 S, PHI PRINT 3,0 PRINT LAST LINE ON PREVIOUS PAGE.
0761 DA PAGE NO S ONE PAGE NO
0762 SWE, ONES PAGE NO D,4,L SERV ARG
0763 TS Z,SC Z,AU1 S D2A ZSUP
0764 TX, C5T8 SERV ARG +2 - PAGE HEAD +15
0765 NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0767 S, PHI PRINT PAGE HEAD
0768 TX PAGE HEAD - LIN COUNT RESET LINE COUNT TO 3.
0770 LA USER PAGE SZERO PRINT OLD +2 BRANCH IF NO LOG CARDS YET.
# Page 128
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 21 PAGE 88
P0772 PRINT LOG LINE HERE ON ITS 2ND AND SUBSEQUENT APPEARANCES.
0773 NA USER PAGE S ONE PRINT LOG BRANCH IF LOG CARD ALREADY ESTABLISHED.
0775 TS S TWO USER PAGE PRINT OLD +2 SET PAGE NUMBER FOR NEXT TIME.
0777 PRINT LOG SWE, ONES USER PAGE D,4,L SERV ARG
0778 TS Z,SC Z,AU1 S D2A ZSUP
0779 TX, C5T8 SERV ARG +2 - USER LOG +13
0780 NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0782 S, PHI PRINT USER LOG
0783 DA USER PAGE S ONE USER PAGE
0784 TS 5 LINES LIN COUNT PRINT OLD +2
0785 PRINT OLD NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0787 S, PHI PRINT 3,0 NORMAL WAY OF PRINTING OLD LINE.
0789 TX Z,X3,1 - Z,X2
0790 MT S BLANKS 15 N,X3,1
0791 TX L OLD LINE - Z,X3
0792 TS S ZERO N,X2 ASK PUNCH FINISH BUFFER SWAP, SWAB OUT NEW LINE.
R0794 MINOR SUBROUTINE TO COPY EACH LINE PRINTED ONTO THE COPY TAPE WHEN MORE THAN ONE PRINTER RUN IS REQUIRED.
0796 COPY PRT2 SS N,SH A ADRES C,+2
0797 WA L COP BUFS S ONE Z,X6
0798 TN 16 N,X6,15 COLLECT 4 LINES BEFORE WRITING.
0800 TX Z,SH - COMMON
0801 NA 6,3 EOR COPY EXIT BRANCH IF RECORD NOT FILLED YET.
0803 TX 6,4 - Z,X6
0804 CC 6,1 - 6,65
0805 TS N,X6 L COP BUFS PHI TAPE SWAP TAPE BUFFERS.
0807 WF,2 6,1 - DISASTER
0808 TX COMMON - Z,SC
0809 COPY EXIT TS Z,X6 L COP BUFS C,-1 ADVANCE POINTER WITHIN BUFFER.
0811 ASK PUNCH NA, BIT10 SSWITCH S ONES FETCH SYM -1 BRANCH IF NOT PUNCHING.
0813 NA, CHAR8 PCH CARD +1 S ONE C,+2
0814 TX, CHAR8 S BLANKS - PCH CARD +1 BLANK OUT "1" IN COLUMN 8.
0816 S, PUNCH CD PCH CARD ALPHA FETCH SYM -1
# Page 129
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 22 PAGE 89
P0817 CLOSE OUT PUNCHING, PRINTING, TRANSFERRING, OR PRINTING WITH PUNCHING OR TRANSFERRING.
0819 END PR PCH TS PAGE HEAD N,X3 SEL PEEK -1 C FORCE SP3 BEFORE "END OF" CARD.
0821 TX Z,X4,1 - Z,X6
0822 TS S BIT 1 SLINE PHI PEEK C PEEK AHEAD FOR (HOPEFULLY) Y OR *.
0824 TN W END REV 2 SLINE +1
0825 TN PCH CARD +2 6 SLINE +3
0826 TN W LAST ASS 2 SLINE +11
0827 TN PCH CARD +8 2 SLINE +13 FORM UP COMPLETE "END OF " LINE.
0829 NA, CHAR1 4,0 Y COLYUM 1 C,+2 BRANCH IF NEXT CARD NOT A YUL DIRECTOR.
0831 TS, CHAR1 PCH CARD +2 SLINE +13 C,+5 (INCLUDE "N" IN "LAST ASSEMBLED ON".)
0833 NA, CHAR1 4,0 ASTRISK C,+2 BRANCH IF THERE'S AN UNUSED DETAIL CARD.
0835 TS Y COLYUM 1 6,1 C,-2 HIDE ASTERISK FROM "END CHECK" IN BNK 1.
0837 S, YUL TYPER NOMAT MSG AMTF +4 C,+1 CUSS 1ST UNUSED DETAIL CARD ON CONSOLE.
0839 S, YUL TYPER 4,0 A +10 C,-2
0840 NA, BIT9 S SWITCH S ONES CLOSFER Q BRANCH IF NOT PRINTING.
0842 CLOSE PRT NA Z,X3 L JUNK C,+2
0843 TS L OLD LINE Z,X3 END PR PCH C IN CASE NOTHING WAS PRINTED.
0845 NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0847 S, PHI PRINT 3,0 PRINT LAST ORDINARY LINE.
0849 NA N COPIES S ZERO COPY PRT2 BRANCH IF MUST WRITE ON COPY TAPE.
0851 S, PHI PRINT SLINE PRINT "END OF" LINE.
0853 CLOSFER Q NA, BIT12 S SWITCH S ZERO USE CARD +1 IF TRANSFERRING, SEND "END OF" CARD.
0855 NA, BIT10 SSWITCH S ONES END PRINT BRANCH IF NOT PUNCHING.
0857 CLOSE PCH S, PUNCH CD EOR BINARY C,+1 CLOSE OUT PUNCHING.
0859 NA, BIT9 SSWITCH S ZERO C,+2 BRANCH IF PRINTING ALSO.
0861 S, MON TYPER W CARD DUN SPRAMR +16 RELOAD P0 ANNOUNCE END OF CARD OUTPUT.
0863 S, MON TYPER W CARD DUN SPRA +16 END PRINT
08639 MT S ZERO 10 N,X4,1
0864 CLOSE XFR NA Z,X4 XFR LIMIT C,-1
0865 EX EOR LEFT HALF N,X4,2
0866 TS EOR N,X4 XFR LD X4 C
0867 S, DISC WRIT 4,0 128 DISC ADDR CLOSE OUT, SEND RECD W/ "END OF" CARD.
0869 TS - - DISC CHEK PREPARE PSEUDO-CONFIRMATION BIT.
0871 TCONFIRM DA TRACK LOG S ONE TRACK LOG INCREMENT LOG TOWARD JOB LOG.
0873 SWE, C1T4 TRACK LOG D,6,L TRINDEX +2
08732 TS - - DISCAP C
08733 OCT -1
08734 SPEC TRINDEX LOOK UP EACH TRACK, THEN MODIFY INDEX.
08736 TS S ONE TRINDEX +4 C,+2 PLANT PSEUDO-CONFIRMATION BIT.
08738 TS - - DISASTER
0874 TX CHAS 2500 - TRINDEX +5 CLEAN OUT SUPERFLUOUS BITS IN ADDRESS.
0876 TS, C1T4 TRINDEX +2 TRINDEX +5 DISCAP C
0877 OCT -12 PLANT PSEUDO-CONFIRMATION BIT IN INDEX.
0879 SPEC TRINDEX
0880 NA, C1T4 TRINDEX +2 YUL LOG TCONFIRM
0881 SWS, CHAR6 PAGE HEAD +1 A,1,L W CDIMS ON +2 PUT 1800 SUFFIX LETTER IN MESSAGE.
0883 NA, BIT9 S SWITCH S ZERO C,+2 BRANCH IF PRINTING ALSO.
0885 S, MON TYPER W CDIMS ON SPRAMR +24 RELOAD P0
0886 S, MON TYPER W CDIMS ON SPRA +24 END PRINT ANNOUNCE "CARD IMAGES ON DISC X".
# Page 130
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 23 PAGE 90
P08875 RUN COPY TAPE ONTO PRINTER AS REQUIRED, AND END TASK.
0888 END PRINT LA N COPIES S ZERO RUNOUT PR BRANCH IF ONE PRINTER RUN WAS ENOUGH.
0890 NA Z,X6 L COP BUFS C,+3 BRANCH WHEN LAST COPY BUFFER CLOSED OUT.
0892 TS L BLANCD Z,X2 COPY PRT2 FILL OUT LAST COPY BUFFER.
0894 TS 2,0 2,0 C,-2
0895 S, MON EOFRI COPY OP - S ZERO CLOSE OUT COPY TAPE.
0898 COPIES TS S TWO Z,R2 PHI TAPE
0899 RW,2 - - -
0900 TS L COP BUFS Z,X4 PHI TAPE FETCH BUFFER ADDRESSES.
0902 RF,2 4,1 - DISASTER SPACE OVER LABEL, READ FIRST LINE.
0904 NA Z,R2,1 S ONE C,-2
0905 WD N COPIES PAPER PLY N COPIES
0906 TS - - GET LOG NO C
0907 SWS, D8T12 Z,SC,4 16 N,AU2 CLEAR MONITOR'S PRINTLINE COUNTER & TAB.
0909 PRINT COP S, PHI PRINT 3,1
0910 S, PHI PRINT 3,17
0911 S, PHI PRINT 3,33
0912 S, PHI PRINT 3,49
0913 TX Z,X4 - Z,X3
0914 TS N,X3 Z,X4 PHI TAPE READ AND SWAP BUFFERS.
0915 RF,2 4,1 - DISASTER
0917 NA, BANBITS 3,1 BAN EOFRI PRINT COP
0918 TS Z,X4 Z,X2 PHI TAPE (IN CASE X2 WAS SET TO BLANCARD).
0920 RF,2 - - - FINISH READING SECOND EOFRI.
0922 NA N COPIES PAPER PLY COPIES BRANCH IF MORE RUNS ARE NEEDED.
0924 TS Z,X2,1 - PHI PEEK C X4 HAS AN OK VALUE HERE.
0926 NA, CHAR1 4,0 ASTRISK C,+2 BRANCH IF ANOTHER YUL TASK FOLLOWS.
0928 TS Z,SC,1 - MON RLEAS OTHERWISE RELEASE COPY TAPE.
0930 TS - - PHI TAPE
0931 RW,2 - - -
0932 RUNOUT PR TS S 4SPACE N,X2,1 GET LOG NO C
0933 SWS, D8T12 S ZERO N,AU2
0934 MT S BLANKS 15 N,X2,1
0935 WD Z,X2 OCTAL 20 Z,X2
0936 S, PHI PRINT 2,0
0937 S, PHI PRINT 2,0
0938 S, PHI PRINT 2,0 FORCE LAST LINES THROUGH BUFPRINT.
0940 S, MON TYPER W LIST DUN SPRAMR +16 - ANNOUNCE END OF LISTING.
0942 RELOAD P0 S, MON TYPER S BLANKS SPRA +8 -
0943 S, PHI LOAD W PASS 0 2 BASE ADDR RELOAD PASS 0 AND DO NEXT TASK (IF ANY).
# Page 131
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 24 PAGE 91
P0945 PROCEDURE IN THE SERVICE MODULE TO ENSURE THAT THE BACKUP YULPROGS IS BROUGHT ENTIRELY UP TO DATE AT
R0947 THE END OF EACH JOB, AND TO CHECK WHETHER THE BACKUP IS UP TO DATE AT THE BEGINNING OF A JOB. THIS AIM IS AC-
R0949 COMPLISHED IN ONE OF TWO WAYS: IF AN ASSEMBLY (NOT REJECTED AS A BAD MERGE) HAS BEEN RECORDED ON ONE TAPE BUT
R0951 NOT ON THE OTHER, THE CURRENT YULPROGS IS COPIED IN ITS ENTIRETY ONTO A WORKER, WHICH THEN BECOMES THE NEW
R0953 YULPROGS. IF A DELETION OR OTHER "FILE-MAINTENANCE" ACTIVITY (ONE THAT AFFECTS THE LABEL RECORD ONLY) HAS BEEN
R0955 RECORDED ON ONE TAPE BUT NOT ON THE OTHER, THE BACKUP IS CALLED FOR AND ITS LABEL RECORD IS AMENDED. THE ENTIRE
R0957 COPY OCCURS IF AT THE BEGINNING OR END OF A JOB LOCATION 7,0000 CONTAINS 6034 0020 0020 0001. IT CAN OCCUR AT
R0959 THE BEGINNING OF A JOB WHEN A BACKUP TAPE IS MOUNTED AS THE PRINCIPAL YULPROGS. THIS IS TYPICALLY DONE WHEN THE
R0961 REGULAR YULPROGS HAS BEEN CLOBBERED IN SOME WAY. AN ASSEMBLY PLACES THIS PATTERN IN 7,0000 AS SOON AS IT IS AS-
R0963 SURED OF NOT BEING REJECTED FOR BAD MERGING. WHENEVER A NEW YULPROGS IS MADE AT THE END OF A JOB, THE FORMER
R0965 BACKUP IS CALLED FOR AND RETURNED TO WORKER STATUS. LABEL AMENDMENT IS EVOKED AT EITHER END OF A JOB BY THE
R0967 PATTERN 6034 0020 0020 0002 IN 7,0000. THIS IS GENERATED BY DELETION, ADDING A NEW COMPUTER NAME, PUNCHING A
R0969 MASTER DECK, ETC. A DIRECTORY LISTING IS PRINTED AS DESCRIBED BELOW, BUT IT IS CALLED AN "AMENDED" LISTING.
R0971 GROUP B PRINTS A DIRECTORY LISTING. FOR EACH ESTABLISHED COMPUTER, THE SOFTWARE STATUS IS PRINTED,
R0973 AND THE PROGRAMS AND SUBROUTINES FOR THAT COMPUTER ARE LISTED. WITH REVISION NUMBER, AUTHOR, DATE LAST
R0975 ASSEMBLED, EXISTENCE OF BINARY RECORD (PROGRAMS) OR CONTROL STATUS (SUBROUTINES), AND LIST OF SUBSIDIARY SUB-
R0977 ROUTINES GIVEN FOR EACH. ESTABLISHED AUTHORS ARE LISTED, WITH THE NUMBER OF PROGRAMS AND SUBROUTINES CREDITED
R0979 TO EACH. WHEN THE LISTING IS FINISHED, GROUP B HOISTS A FLAG AND EXPIRES.
0981 BACKUP TS S ZERO COMMON SET UP GPB C COMMUNICATION FLAG FOR END.
0983 TS Z,SC,4 N,SH MON WAKE C
0984 BK1 VIA X0 TX L BANK 1 - Z,X0
0985 TX L DIRECTY - Z,X1
0986 TX PHI WAA - Z,X6
0987 TS YUL MASKS Z,MXR LIST LABL START GROUP B GOING ON LISTING.
0989 TX 1,1 - YUL BU MSG +1
0991 NA, CHAR8 1,0 S ONE AMEND BUL BRANCH IF ONLY MUST AMEND BACKUP LABEL.
# Page 132
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 25 PAGE 92
P0993 PROCEDURE TO MAKE A WORKER INTO A NEW YULPROGS.
0994 S, YUL TYPER YUL BU MSG A+4 C,+1 ANNOUNCE TASK ON TYPEWRITER.
0996 TX 1,1 - SNATCH T6 +2
0997 TS 1,2 SNATCH T6 +3 MON RLEAS RELEASE YULPROGS, PREPARE RESNATCH.
0999 YUL PROP RW,1 - - -
1000 DA, C7T8 1,2 S ONE 1,2 INCREMENT YULPROGS SERIAL NUMBER.
1002 SNATCH T6 TS, C1T4 YUL LOG 1,2 PHI SNACH RESNATCH YULPROGS, PROTECT AND SAVE.
1004 ALF,3 N00J0006YULPROGSLLLLRRSS
1005 TS S ONE TASK 2 PHI TAPE PLAY SAFE WITH T6.
1007 RW,6 - - -
1008 S, MON TADDR COPY OP SKIP IF WE POSSESS A TAPE 2.
1010 TS Z,SC,1 - MON RLEAS YES, SO WE MUST RELEASE IT.
1012 TX Z,SC,1 - - NO, SO SKIP AGAIN.
1014 RW,2 - - - (GOES WITH RELEASE CALL ABOVE).
1016 TS L BUF 3 Z,X5 PHI SNACH SNATCH WORKER AS NEW YULPROGS.
1018 ALF,3 W10Y0101NEWYULPR
1019 TS L BUF 2 Z,X4 POSIT YUL POSITION, LIKE OLD TAPE, AFTER LABEL.
1021 TS S STOPPER Z,X2 PHI TAPE
1022 RF,6 2,0 - - BYPASS LABEL ON OLD YULPROGS.
1024 TX L BUF 1 - Z,X3
1025 TN OK BANNER +3 3 OK BANNER INITIALIZE CHECKING FUNCTION IN COPYING.
1027 TS L BUF 3 Z,X2 PHI TAPE
1028 RF,6 2,0 - - READ FIRST RECORD TO BE COPIED.
R1030 LOOP TO COPY OLD YULPROGS TO NEW. THE DANCE OF THE INDEX REGISTERS, AS IN
1032 BAKUP LUP TS Z,X3 Z,X2 PHI TAPE PASS 3, THE EFFECT BEING AN EFFICIENT
1034 RF,6 2,0 - DISASTER AND QUIET TRIPLE-BUFFERED COPY OF OLD
1036 TX Z,X4 - Z,X3 YULPROGS TO NEW.
1038 NA, CAC3 5,0 TASK2 CLOBBERD BRANCH IF RECORD NUMBER IS WRONG.
1040 LA, BANBITS 5,0 S ZERO INC RECNO BRANCH ON GOOD RECD NO. AND ZERO BANNER.
1042 NA, BANBITS 5,0 OK BANNER CLOBBERD BRANCH IF WRONG BANNER BITS.
1044 TN OK BANNER +1 2 OK BANNER MOVE NEXT LEGAL BANNER CONFIG. UP.
1046 INC RECNO WA TASK2 S ONE TASK2
# Annotation: Operand3 is hand-changed from C,+3 to C,+5.
1047 NA, BANBITS 5,0 BAN EOFRI C,+3 BRANCH UNLESS ABOUT TO WRITE 1ST EOFRI.
1049 S, MON EOFRI YUL PROP 5,0 CLOSE NEW YULPROGS OSTENTATIOUSLY.
# Annotation:
# S, MON TYPER W LENGTH SPRAM +8 -
# S, MON TYPER TASK2 SPRA -56 -
# =PATCH
1051 TS Z,SC,3 - MON RLEAS NOW RELEASE OLD YULPROGS FOR GOOD.
1053 TS Z,X5 Z,X4 PHI TAPE
1054 WF,1 4,0 - DISASTER
1055 TS Z,X2 Z,X5 BAKUP LUP
1056 RW,6 - - - GOES WITH RELEASE CALL ABOVE.
1058 TS L BUF 3 Z,X3 PHI TAPE
1059 RB,1 3,0 - SHORTEN READ BACKWARD, BRANCHING AT BEGINNING.
1061 TS Z,SC COMMON MON WAKE C SIGNAL END OF COPYING LOOP.
1063 TS C,+0 C,-1 C,-3 SAVE TIME BY DOING THAT JUST ONCE.
# Page 133
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 26 PAGE 93
P1065 PROCEDURE TO SHORTEN LABEL BY PACKING UP USED WORDS AND REVALUING THE THREADS, USING SOMETHING SIMILAR IN FORM
R1067 TO A SIMPLE TWO-PASS ASSEMBLER. THIS PAGE: PASS 1, LEAVING BANK 7 ADDRESSES IN BANK 5.
1069 SHORTEN TX BANK 5 - Z,X3
1070 TX Z,X3 - Z,R1
1071 TX Z,X3 - Z,R2 DISTRIBUTE BANK 5 INDICATOR TO R1,2.
1073 TX 1,8 - Z,X2
1074 RT 1,6 N,X2 3,6 COPY LABEL INTO BANK 5.
1076 INIT SLOT TX INIT WD 8 - 1,8
1077 TX INIT WD 8 - Z,X2 PREPARE TO BUILD SHORTER LABEL IN BNK 7.
1079 SWS,THREAD10 3,9 32 Z,R1 BANK 5 (OLD) ADDRESS OF FIRST COMPUTER.
1081 TS S ONES 3,6 LAST COM Q MAKE ANY TERMINAL THREAD LOOK AT ONES.
1083 MOVE COMP TN N,R1 2 N,X2 MOVE COMPUTER NAME WITH SOFTWARE STATUS.
1085 TX Z,X2 - N,R1 LEAVE FORWARDING ADDRESS.
1087 SWS,THREAD10 N,X2 0 Z,R1 THREAD TO NEXT COMPUTER (OLD ADDRESS).
1089 SWS,THREAD10 N,X2,2 12 Z,R2 B5 THREAD TO PROGRAMS OF COMPUTER.
1091 TS Z,R2 Z,R3 LAST PRG Q PUT BANK INDICATOR 5 IN R3.
1093 MOVE PSR TN N,R2 2 N,X2 MAIN WORD PAIR OF PROG/SUB ENTRY.
1095 TX Z,X2,1 - N,R2 LEAVE FORWARDING ADDRESS.
1097 SWS,THREAD10 N,X2 0 Z,R2 THREAD TO NEXT PROG/SUB OF COMPUTER.
1099 NA, BIT25 2,0 S ONES LAST PRG Q -1 BRANCH IF PROG/SUB HAS NO SUBROUTINES.
1101 SWS,THREAD11 N,X2 24 Z,R3 THREAD TO WORD 3 (1ST SUBRO THREAD WD).
1103 SM Z,X2,1 Z,SC,1 -
1104 SWS,THREAD11 Z,AU1 0 Z,R3 THREAD TO NEXT WORD OF SUBRO THREADS.
1106 TS N,R3 N,X2 PUT 1 WORD C STORE THREAD WORD PENDING CHECK.
1108 SSL, FOUR Z,AU1 9 C,-2 AFTER CHECK, STEP BACK IF MORE THREDWDS.
1110 TX Z,X2,1 - - (DONE FOR SUBRO-LESS PROGRAM OR SUBRO).
1112 LAST PRG Q NA N,R2 S ONES MOVE PSR BRANCH IF MORE PROG/SUBS FOR THIS COMP.
1114 LAST COM Q NA N,R1 S ONES MOVE COMP BRANCH IF MORE COMPUTERS TO MOVE.
1116 SWS,THREAD10 3,9 16 Z,R1 BANK 5 ADDRESS OF FIRST AUTHOR NAME.
1118 LA S ONES N,R1 LAS AUTH Q +1 BRANCH IF THERE ARE NO AUTHORS.
1120 MOVE AUTN TN N,R1 2 N,X2 MOVE 1ST HALF AND THREADS OF AUTHORNAME.
1122 TX Z,X2,1 - N,R1 LEAVE FORWARDING ADDRESS.
1124 SWS,THREAD10 N,X2 12 Z,R1 THREAD TO NEXT AUTHOR NAME.
1126 SWS,THREAD11 N,X2,1 0 Z,R3 THREAD TO 2ND HALF OF AUTHOR NAME.
1128 TS N,R3 N,X2 PUT 1 WORD C STORE LIKE PROG/SUB THREAD WORD, ABOVE.
1130 LAS AUTH Q NA N,R1 S ONES MOVE AUTN BRANCH IF MORE AUTHOR NAMES TO MOVE.
1132 SWS,THREAD10 3,9 0 Z,R1 BANK 5 ADDRESS OF FIRST DELETE.
1134 LA S ONES N,R1 LAS DELE Q +1 BRANCH IF THERE ARE NO DELETES.
1136 MOV DELES TN N,R1 2 N,X2 MOVE DELETE ENTRY.
1138 TX Z,X2,1 - N,R1 LEAVE FORWARDING ADDRESS.
1140 SWS,THREAD10 N,X2,1 0 Z,R1 THREAD TO NEXT DELETE.
1142 LAS DELE Q NA N,R1 S ONES MOV DELES BRANCH IF MORE DELETES TO MOVE.
# Page 134
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 27 PAGE 94
P1144 SHORTENING PROCEDURE CONTINUED: PASS 2, USING SUBADDRESSES IN BANK 7 TO REFERENCE LOCATIONS IN BANK 5 CONTAINING
P1146 NEW SUBADDRESSES FOR BANK 7. IN OTHER WORDS, FILL IN DEFINITIONS OF SYMBOLS.
1148 SS Z,X2 S CAC 3 1,8 STORE LENGTH OF SHORTENED LABEL.
1150 TX S END THR - 3,6 CLOSE TERMINAL THREAD ON ITSELF.
1152 SWS,THREAD10 3,9 32 Z,R1 BANK 5 ADDRESS OF FIRST COMPUTER.
1154 SWS, CAC1 N,R1 32,L 1,9 ...YIELDS BANK 7 ADDRESS OF DITTO.
1156 TX Z,R1 - Z,AU2 SUPPLY BANK 5 INDICATOR TO AU2.
1158 TS N,R1 Z,R4 CMPS DUN Q
1159 XFORM CMP SWS,THREAD10 N,R4 12 Z,R2
1160 SWS,BTHRED10 N,R2 12,L N,R4 REVALUE THREAD TO FIRST PROGRAM/SUBRO.
1162 SWS,THREAD10 N,R4 0 Z,R1
1163 SWS,THREAD10 N,R1 0 N,R4,1 REVALUE THREAD TO NEXT COMPUTER.
1165 TS Z,R4 Z,AU1 4 THREADS C REVALUE ALL FOUR SOFTWARE THREADS.
1167 TS N,R1 Z,R4 10 BIT THR SET UP THREAD TO NEXT COMPUTER NAME.
1169 XFORM PSR WA N,R2 S ONE Z,X2
1170 TS Z,X2 Z,AU1 2 THREADS C REVALUE AUTHOR AND PROG/SUBRO THREADS.
1172 SWS,THREAD10 N,X2 0 Z,R2 SAVE PROGRAM/SUBROUTINE THREAD.
1174 SWS,THREAD10 N,R2 0 N,X2
1175 NA, BIT 25 2,0 S ONES PSRS DUN Q PROG/SUBRO WITHOUT SUBROUTINES IS DONE.
1177 SWS,THREAD11 N,X2 24 Z,R3 THREAD TO WORD 3 (1ST SUBRO THREAD WD).
1179 SWS,ATHRED11 N,R3 24,L N,X2 REVALUE THREAD TO WORD 3.
1181 TS N,R3 Z,AU1 3 THREADS C FIRST SUBRO THREAD WORD HAS 3 THREADS.
1183 MOR SUBW Q SSL, ONE N,AU1 11 C,+3 BRANCH IF JUST ONE SUBRO THREAD WORD.
1185 SWS,THREAD11 N,AU1 0 Z,AU1 FOLLOW THREAD TO NEXT SUBRO THREAD WORD.
1187 TS L MOR SBWQ Z,SC 4 THREADS C SUBRO THREAD WORDS HAVE UP TO 4 THREADS.
1189 TX Z,SH - Z,SC C DO 11-BIT THREAD AND GO AROUND AGAIN.
1191 10 BIT THR TX Z,CSC,3 - - C DO 10-BIT THREAD AT END OF PROG/SUB PRC.
1193 PSRS DUN Q NA N,R2 S END THR XFORM PSR BRANCH IF MORE PROG/SUBS FOR THIS COMP.
1195 CMPS DUN Q NA Z,R4 S END THR XFORM CMP BRANCH IF MORE COMPUTERS TO REVALUE.
1197 SWS,THREAD10 3,9 16 Z,R1 BANK 5 ADDRESS OF FIRST AUTHOR NAME.
1199 SWS, CAC2 N,R1 16,L 1,9 REVALUE THREAD TO FIRST AUTHOR.
1201 TS N,R1 Z,R4 AUTS DUN Q
1202 XFORM AUT TS Z,R4 Z,AU1 3 THREADS C AUTHOR THREAD WORD HAS 3 THREADS.
1204 SWS,THREAD11 N,R4 12 Z,R4 C
1205 AUTS DUN Q NA Z,R4,1 S END THR XFORM AUT BRANCH IF MORE AUTHORS TO REVALUE.
1207 SWS,THREAD10 3,9 0 Z,R1 BANK 5 ADDRESS OF FIRST DELETE.
1209 SWS, CAC3 N,R1 0 1,9 REVALUE THREAD TO FIRST DELETE.
1211 TS N,R1 Z,R4 DELS DUN Q
1212 XFORM DEL SWS,THREAD10 N,R4 0 Z,R1
1213 SWS, CAC3 N,R1 0 N,R4 REVALUE THREAD TO NEXT DELETE.
1215 TX N,R4 - Z,R4
1216 DELS DUN Q NA Z,R4,1 S END THR XFORM DEL BRANCH IF MORE DELETES TO REVALUE.
# Page 135
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 28 PAGE 95
P1218 TERMINATION OF FULL COPY. WRITE SHORTENED LABEL RECORD ON NEW YULPROGS AND INSTALL IT IN OFFICE.
1220 TS 1,1 NOW OP MSG +3 PHI TAPE
1221 RB,1 - - -
1222 NA, CHAR8 1,0 S ONE C,+2 BRANCH IF FULL-COPY FLAG IS NOW OFF.
1224 LA REVERT ID S ZERO C,-1 WAIT FOR SEQUENCE # OF FORMER BACKUP.
1226 TS, CHAR8 S ZERO 1,0 LABEL YUL LABEL AND UPGRADE NEW YULPROGS.
1228 TS S ONES COMMON MON WAKE C SHOW END OF READBACK IF WE GET HERE 1ST.
1230 BKUP STOP TS - - GROUP NAP
1231 S, MON TYPER NOW OP MSG SPRAMR +32 RELOAD P0 REPLACES BKUP STOP WHEN GROUP B IS DONE.
R1233 MINOR SUBROUTINE TO PLACE A SINGLE WORD IN THE NEW LABEL AREA.
1234 PUT 1 WORD SWE, CAC3 1,8 32 Z,AU2 C ADDRESS OF FIRST 1-WORD EMPTY SPACE.
1236 TX N,R3 - Z,AU1 C SAVE RIGHT 12 BITS OF WORD.
1238 NA Z,AU2 S END THR INSERT WD C BRANCH IF THERE IS A HOLE FOR IT.
1240 TX Z,X2,1 - N,R3 C LEAVE FORWARDING ADDRESS.
1242 SWS, CAC1 Z,AU2 32,L N,X2 C PLACE TERMINAL THREAD IN HOLE.
1244 SWS, CAC1 Z,X2,1 32,L 1,8 RECORD PRESENCE OF HOLE, EXIT.
1246 INSERT WD TX N,R3 - N,AU2 C PLACE WORD IN HOLE.
1248 TS Z,AU2 N,R3 INIT SLOT C LEAVE FORWARDING ADDRESS, RESET THREAD.
R1250 FOUR MINOR SUBROUTINES TO REVALUE FROM ONE TO FOUR THREADS IN THE WORD AT N,AU1. THEN-BIT THREADS ARE ASSUMED.
1252 4 THREADS SWS,THREAD10 N,AU1 36 Z,AU2 C
1253 SWS,OTHRED10 N,AU2 36,L N,AU1 C REVALUE OPCODE-FILLED THREAD.
1255 3 THREADS SWS,THREAD10 N,AU1 24 Z,AU2 C
1256 SWS,ATHRED10 N,AU2 24,L N,AU1 C REVALUE A-ADDRESS-FIELD THREAD.
1258 2 THREADS SWS,THREAD10 N,AU1 12 Z,AU2 C
1259 SWS,BTHRED10 N,AU2 12,L N,AU1 REVALUE A-ADDRESS-FIELD THREAD AND EXIT.
1261 1 THREAD SWS,THREAD11 N,AU1 0 Z,AU2 C BACK INTO CSC MODE GETS 11-BIT THREAD.
1263 SWS,THREAD11 N,AU2 0 N,AU1 C
1264 SWS, ONE S ZERO 0 Z,AU2
1265 SWS,THREAD10 N,AU1 0 Z,AU2 C INCR CSC BY 3 AND DITTO FOR 10-BIT THRD.
1267 SWS,THREAD10 N,AU2 0 N,AU1
# Page 136
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 29 PAGE 96
P1268 AMEND LABEL OF BACKUP TAPE.
1269 AMEND BUL SWS, CHAR3 GROUP A A,5,L ASAMB MSG
12692 S, MON TYPER ASAMB MSG SPRAMR +32 - "ASA TO AMEND BACKUP TAPE LABEL;"
12694 TX, CHAR3 ASAMB MSG - S ACA OTHE
12696 S, MON TYPER S ACA OTHE SPRA +16 AMEND SC "ACA OTHERWISE"
1270 AMEND QST STOP - S
12702 TS, CHAR8 S ZERO 1,0 C,+1 S WIPE OUT AMEND FLAG AFTER REFUSAL.
12704 NA BKUP STOP BKUP STOP +1 GROUP NAP WAIT FOR GROUP B TO FINISH LISTING.
12706 S, MON TYPER S SIGH SPRAMR +8 RELOAD P0 "(SIGH)"
12708 AMEND SC TS - - AMEND QST C ARA OR DON A AMENDS BACKUP TAPE LABEL.
1271 DS, C7T8 1,2 S ONE SNATCH B6 +2
1272 TS 1,1 SNATCH B6 +1 PHI SNACH
1273 SNATCH B6 ALF,2 N00/0006YULPROGS
1274 DEC GGGGGG GGG 000 SNATCH BACKUP TAPE FOR RELABELING.
1276 TS L BUF 3 Z,X2 PHI TAPE
1277 RW,6 - - -
1278 TS L BUF 3 Z,X3 PHI TAPE
1279 RF,6 2,0 - - READ LABEL INTO TEMPORARY AREA.
1281 WD 1,8 Z,X1 Z,X4
1282 WA Z,X3 Z,X4 Z,X3 LOCATE END OF NEW LABEL IN TEMP. AREA.
1284 TS 1,8 Z,X4 PHI TAPE
1285 RF,6 - - -
1286 LA, CAC3 2,8 1,8 C,+2 BRANCH IF BACKUP LABEL IS NO LONGER.
1288 TX 2,8 - Z,X3 STRETCH LABEL RECORD OUT TO OLD LENGTH.
1290 TS 1,5 2,5 MON UNLOK C
1291 WF,6 - - - UNLOCK BACKUP BEFORE RELABELING IT.
1293 IT 1,6 N,X4 2,6 MOVE NEW FACTS INTO TEMPORARY AREA.
1295 CC N,X2 - N,X3
1296 TS 2,1 S FIX SN +1 PHI LABEL
1297 WF,6 2,0 - - WRITE AMENDED LABEL ON BACKUP TAPE.
1299 TS 2,2 S FIX SN +2 PHI SNACH
1300 S FIX SN ALF,3 N00/0:06YULPROGS UNDO EVIL EFFECTS OF LABELING.
1302 TS - - MON RLEAS
1303 RW,6 - - - PUT BACKUP TAPE BACK ON SHELF.
1305 TS - - MON UNLOK C
1306 WF,1 - - - UNLOCK CURRENT TAPE BEFORE UNLABELING.
1308 NA BKUP STOP BKUP STOP +1 GROUP NAP SLEEP UNTIL GROUP B FINISHES.
1310 TS, CHAR8 S ZERO 1,0 LABEL YUL NOW WRITE CLEAN LABEL ON CURRENT TAPE.
1312 S, MON TYPER BUREL MSG SPRAMR +16 RELOAD P0 TYPE "BACKUP RELABELED".
R1314 SUBROUTINE IN SERVICE MODULE TO COMBINE THE FUNCTIONS OF THE MONITOR DECIMAL-TO-ALPHABETIC CONVERTER AND LEFT
R1316 ZERO SUPPRESSOR. SET UP ARGUMENT IN SERV ARG, SEQUENCE CALL WITH RETURN IN AU1. USE EITHER RESULT OR BOTH.
1319 S D2A ZSUP TX Z,AU1 - SERV ARG +2 SAVE RETURN DURING TRIP TO BANK 1.
1321 TS Z,SC Z,AU1 YUL D2A ZS
1322 SERV ARG RESERVE 1
1323 TX N,SC,1 - Z,AU1
1324 RESERVE 1
1325 TX N,SH,2 - SERV ARG
1326 TS N,SH SERV ARG +2 N,AU1 MOVE RESULTS TO THIS BANK AND EXIT.
# Page 137
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 30 PAGE 97
P1328 GROUP B ACTIVITY DURING YULPROGS COPY, PRINTING A COMPLETE DIRECTORY LISTING.
1330 LIST LABL TX YUL LOG A - PAGE HEAD +1
1331 TN MNTN LINE 4 PAGE HEAD +2 ANNOUNCE YUL SYSTEM MAINTENANCE FCN.
1333 SWS, C7T8 1,1 A,2,L BKUP LINE +2
1334 SWS, C1T6 1,1 A,2,L BKUP LINE +3 PUT ACTUAL NAME OF TAPE INTO PAGE HEAD.
1336 NA, CHAR8 1,0 S ONE C,+2 BRANCH IF NOT DOING FULL BACKUP COPY.
1338 TS 1,2 COMMON +1 C,+3 OTHERWISE LISTING IS OF CURRENT TAPE.
1340 TX W AMENDED - N,AU2,1 INSERT "AMENDED" INTO PAGE HEAD.
1342 DS, C7T8 1,2 S ONE COMMON +1 SUPPLY SERIAL NO. OF BACKUP.
1344 TX B ARG - SERV ARG
1345 SWS,B1THRU12 COMMON +1 D,9,L SERV ARG
1346 TX Z,AU2 - Z,X5
1347 TS Z,SC Z,AU1 S D2A ZSUP CONVERT YULPROGS SERIAL NUMBER TO ALPHA.
1349 TN BKUP LINE 4 N,X5
1350 TX SERV ARG - N,AU2 PUT SERIAL NO. IN PAGE HEAD.
1352 TN YUL DATE 2 PAGE HEAD +12
1353 TX S BLANKS - N,AU2
1354 TS L NEW LINE Z,X2 INIT PRNT C SET UP FRONT PAGE COVER.
1356 SWE, CAC3 1,9 32 Z,X5 GET ADDRESS OF FIRST COMPUTER NAME.
1358 SET SP1 TS SP1 SLINE SET OLD C SLINE IS ASSIGNED TO 2,0.
1360 TN SW CMPUTR 1 SLINE +1
1361 MT S BLANKS 2 N,AU2,1
1362 NA Z,X5 S END THR M LIS CMPS BRANCH IF THERE ARE ANY COMPUTERS.
1364 TX W SNONE - SLINE +2
1365 TS L END M LIS Z,X4 PRINT LIN PRINT LACK AND GO TO FINALIZATION.
1367 M LIS CMPS TX S COLON C1 - SLINE +2
1368 SWS, C3T6 N,X5 A,2 SLINE +2 PRINT COMPUTER NAME.
1370 TX S BLANKS - COMPU LIN
1371 TX S BLANKS - COMPU LIN +1
1372 TX, C1T6 S BLOTS - COMPU LIN
1373 NA, CHAR6 SLINE +2 S BLANKS C,+6
1374 TX, CHAR6 SLINE +2 - COMPU LIN
1375 NA, CHAR5 SLINE +2 S BLANKS C,+4
1376 TX, CHAR5 SLINE +2 - COMPU LIN
1377 NA, CHAR4 SLINE +2 S BLANKS C,+2
1378 TX, CHAR4 SLINE +2 - COMPU LIN UNDERLINE COMPUTER NAME WITH BLOTS.
1380 LA, CHAR1 S TEN C1 5,0 PRIN CNAM BRANCH UNLESS NAME BEGINS WITH DIGIT.
1382 LA, CHAR3 5,0 END OF 1 PRIN CNAM BRANCH ALSO IF 3RD CHARACTER IS A DIGIT.
1384 SWS, C1T2 SLINE +2 A,4 SLINE +2
1385 SWS, C7T8 SLINE +2 A,4 SLINE +2 MOVE NAME OVER...
1387 SWS, C3T6 S W MOD A,2 SLINE +2 ...AND INSERT "MOD".
1389 SWS, ONES COMPU LIN A,4 COMPU LIN
1390 SWS, C1T2 COMPU LIN 0 COMPU LIN +1
1391 TX, C1T6 S BLOTS - COMPU LIN MOVE UNDERLINE OVER ACCORDINGLY.
1393 PRIN C NAM TS Z,SC Z,X4 PRINT LIN PRINT ACTUAL COMPUTER NAME.
1395 SET SP3 TX SP3 - SLINE
1396 TX S BLOTS - SLINE +1
1397 TN COMPU LIN 2 SLINE +2 SET UP UNDERLINE OF BLOTS.
1399 GO PRINT TS Z,SC Z,X4 PRINT LIN
# Page 138
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 31 PAGE 98
P1400 PROCEDURE TO TEST AND PRINT THE STATUS OF SOFTWARE FOR EACH COMPUTER.
1401 TX W SOFTWAR - SLINE +2 SET UP HEADING ABOUT SOFTWARE STATUS.
1403 MSPACE1 TS SP1 SLINE GO PRINT C
1404 TS DASHES SLINE +2 MSPACE2 C UNDERLINE IT.
1406 TN SFWR HEDS 14 SLINE +2 SET UP COLUMN HDGS FOR SOFTWARE STATUS.
1408 MSPACE2 TS SP2 SLINE GO PRINT C
1409 TX Z,X5 - Z,CSC SET BANK INDICATOR 7, EVEN BIT INTO CSC.
1411 TX S FOUR - Z,CSH
1412 WA Z,X2 S TWO Z,AU2 POINT TO SECOND WORD OF PRINT LINE.
1414 SOF ST LUP NA, BIT12 5,1 S ZERO C,+2 BRANCH IF THIS PASS IS AVAILABLE.
1416 TS L SFW STAS Z,AU1 SET STATS
1417 LA S BIT 1 5,1 C,+3 BRANCH IF THIS PASS IS CHECKED OUT.
1419 SWE, CAC3 N,SC,2 16 Z,AU1
1420 L SFW STAS CAC W LAB CHKO W LAB AVAL W LAB UNAV
1421 SWE, CAC3 L SFW STAS 32 Z,AU1
1422 SET STATS MT N,AU1,1 2 N,AU2,1 SET SOFTWARE PASS STATUS IN PRINT.
1424 SWS,THREAD10 5,1 36 Z,CSC
1425 NA Z,CSC Z,X5 C,+2 BRANCH IF SOFTWARE IS BORROWED.
1427 TS S BLANKS N,AU2,1 C,+2 NO SPECIAL MARK WHEN PASS USES OWN SFW.
1429 SWS, C1T4 N,CSC 0 N,AU2,1 NAME OF OWNER OF BORROWED SOFTWARE.
1431 SWE, ONES 5,1 12,L 5,1 ROTATE WORD TO STATUS OF NEXT PASS.
1433 NA Z,CSH,1 S ONE SOF ST LUP BRANCH IF HAVEN'T DONE 4 PASSES YET.
1449 M SPACE 3 TS SP3 SLINE GO PRINT C
# Page 139
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 32 PAGE 99
P1450 PROCEDURE TO PRINT A LIST OF PORGRAMS AND A LIST OF SUBROUTINES FOR EACH COMPUTER, WITH STATUS INFORMATION.
1452 TS W PROGRMS SLINE +2 MSPACE 1 C
1453 TS Z,X5 COMP LOCN MSPACE1 +1 C PRINT AND UNDERLINE PROGRAM HEADING.
1455 TX S ZERO - PRG OR SUB DO THE LIST OF PROGRAMS FIRST.
1457 LIST PR SU TN PRSUB HDS 14 SLINE +2
1458 SS W CONTRL PRG OR SUB SLINE +8 ALTER PROG HEADER TO SUBRO IF NECESSARY.
1460 TS SP2 SLINE GO PRINT C PRINT COL HDGS FOR PROG OR SUBRO LIST.
1462 SWS,THREAD10 N,X5 12 Z,X5 THREAD TO FIRST PROG OR SUBRO OF COMP.
1464 LA Z,X5 S END THR NO PRSUBS BRANCH IF NO PROGRAMS OR SUBROS.
1466 M LIST PS NA, BIT 36 5,1 PRG OR SUB END PRSB Q BR IF PRG WHEN WANT SUBS OR VICE VERSA.
1468 TX N,X5 - SLINE +2 SET PROGRAM OR SUBROUTINE NAME IN PRINT.
1470 SSL, TWO 5,1 22 C,+1 FIND OUT WHERE REVISION NO. IS STORED.
1472 SWE, C1T2 5,1 D,3,L SERV ARG IN WORD 2 IF NO SUBROUTINES.
1474 TS W NONE SLINE +10 ALF REVN SHOW LACK OF SUBSIDIARY SUBROS.
1476 TX Z,X5 - Z,R2 HANG ON TO BANK INDICATOR.
1478 SWS,THREAD11 5,1 24 Z,R2
1479 EX N,R2 S C1T2 SERV ARG REVISION NUMBER IS IN WORD 3.
1481 ALF REVN NA SERV ARG S ZERO C,+2
1482 TS WM NEW SLINE +3 C,+3 SAY "NEW" IF REVISION 0.
1484 TS Z,SC Z,AU1 S D2A ZSUP
1485 SWS, C3T5 SERV ARG +2 A,2 SLINE +3 SET UP ZERO-SUPPRESSED REVISION NUMBER.
1487 NA PRG OR SUB S ZERO UNUSUB Q BRANCH IF DOING SUBROUTINE LIST.
1489 SSL, ONE 5,1 35 C,+1 TEST OBSOLESCENCE BIT.
1491 PSN VIA X4 TS Z,X5 Z,X4 LIST AUTH HANG ON TO BANK INDICATOR.
1493 SSL, TWO 5,1 22 C,-1 IF NO SUBROS, THAT WAS NOT AN OBS BIT.
1495 TS W OBS SLINE +1 C,-2 SUBSIDIARY SUBROS HAVE CHANGED.
R1497 IF A SUBROUTINE IS NOT CALLED BY ANY PROGRAM OR SUBROUTINE, MARK IT "UNUSED". (IGNORE BANK ERROR AT 0982.1).
1499 UNUSUB Q TN Z,X2 2 SAVE X23
1500 TX COMP LOCN - Z,X2 POINT TO COMPUTER NAME ENTRY.
1502 TN Z,X2 2 Z,X3 DISTRIBUTE BANK INDICATOR 7.
1504 SWS,THREAD10 N,X2 12 Z,X2 POINT TO FIRST PROGRAM OR SUBROUTINE.
1506 TS N,SC,6 - SUB THRDS C ASK FOR PRESENTATION OF SUBRO THREADS.
1508 WD Z,SC FOUR Z,SC S (DISPOSITION WHEN THREADS RUN OUT).
1510 TS Z,X4 Z,X2 C,-2 GO TO EXAMINE NEXT PROGRAM OR SUBRO.
1512 NA Z,X4 S END THR C,-1 BRANCH IF THERE ARE MORE PROGS OR SUBS.
1514 TN SAVE X23 2 Z,X2
1515 TS W UNUSED SLINE +1 PSN VIA X4 PUT "UNUSED" AT LEFT OF SUBROUTINE NAME.
1517 TX - - - C ASK FOR NEXT SUBROUTINE CALL THREAD.
1519 NA Z,X4 Z,X5 C,-1 BRANCH IF SUB NOT CALLED VIA THIS THRED.
1521 TN SAVE X23 2 Z,X2 LEAVE LOOP WHEN FIRST USER IS FOUND.
# Page 140
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 33 PAGE 100
P1523 SET UP AUTHOR NAME, DATE OF LAST ASSEMBLY, WHETHER A PROGRAM HAS BINARY RECORDS, OR WHETHER A SUBROUTINE IS
R1525 CONTROLLED.
1526 LIST AUTH SWS,THREAD10 4,1 12 Z,X4
1527 LA 4,1 S PLS ZERO C,-1 BRANCH IF AUTHOR NAME NOT FOUND.
1529 TX N,X4 - SLINE +4 SET UP FIRST WORD OF AUTHOR NAME.
1531 SS 4,1 S THRED 11 Z,X4
1532 TX N,X4 - SLINE +5 SET UP SECOND WORD OF AUTHOR NAME.
1534 SWE, D12 5,1 44 Z,R2
1535 WA Z,R2 L S MONTHS Z,R2
1536 TX N,R2 - SLINE +6 SET UP ALPHABETIC MONTH ABBREVIATION.
1538 SWE, THREE 5,1 42 COMMON +1
1539 DT COMMON +1 8 COMMON +1
1540 SWE, SEVEN 5,1 39 Z,R2
1541 DA COMMON +1 Z,R2 COMMON +1
1542 LA COMMON +1 S D12 C,+2 BRANCH IF 1-DIGIT DECIMAL DAY NUMBER.
1544 SWS, CHAR7 COMMON +1 2,L SLINE +6
1545 SS COMMON +1 S D12 SLINE +6 SET UP DECIMAL DAY NUMBER.
1547 SWE, 7C6 5,1 24 COMMON +1
1548 WA COMA 1962 COMMON +1 SLINE +7 SET UP COMMA AND YEAR NUMBER.
1550 SSL, ONE 5,1 11 C,+1 TEST FOR BINARY (PROG) OR CONTROL (SUB).
1552 TS W NO SLINE +8 C,+2
1553 TX W YES - SLINE +8
1554 NA, BIT 25 5,1 S ONES END PRSB Q -1 BRANCH IF NO SUBSIDIARY SUBROUTINES.
# Page 141
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 34 PAGE 101
P1556 LIST THE NAMES OF SUBSIDIARY SUBROUTINES OF THE PROGRAM OR SUBROUTINE BEING DESCRIBED, AT FOUR TO THE LINE.
1558 TN Z,X4 2 Z,R1 HANG ON TO BANK INDICATORS.
1560 SWS,THREAD11 5,1 24 Z,R1 THREAD TO WORD 3 (1ST SUBRO THREAD WD).
1562 WA Z,X2 S EIGHT Z,R7
1563 TS Z,R7,8 Z,R6 PRA SUBTH POINT TO ENDS OF SUBRO LIST AREA.
1565 PRO SUBTH SS N,R1 S THRED 11 Z,R1 FOLLOW THREAD TO NEXT SUBRO THREAD WORD.
1567 SWS,THREAD10 N,R1 36 Z,R2 GET SUBROUTINE THREAD FROM OP CODE.
1569 SSL, ONE N,R1 36 PR SLAVES C TEST OBSOLETING BIT AND PRINT.
1571 PRA SUBTH SWS,THREAD10 N,R1 24 Z,R2 GET SUBROUTINE THREAD FROM A ADDRESS.
1573 SSL, ONE N,R1 24 PR SLAVES C TEST OBSOLETING BIT AND PRINT.
1575 SSL, ONE N,R1 35 LASUB THR C SEE IF THIS IS THE LAST SUBRO THREAD.
1577 PRB SUBTH SWS,THREAD10 N,R1 12 Z,R2 GET SUBROUTINE THREAD FROM B ADDRESS.
1579 SSL, ONE N,R1 12 PR SLAVES C TEST OBSOLETING BIT AND PRINT.
1581 SSL, ONE N,R1 23 LASUB THR C SEE IF THIS IS THE LAST SUBRO THREAD.
1583 PRC SUBTH SSL, ONE N,R1 11 C,+1 SEE IF THIS IS THE LAST SUBRO THREAD.
1585 TS - - PRO SUBTH
1586 SS N,R1 S THRED 10 Z,R2 GET SUBROUTINE THREAD FROM C ADDRESS.
1588 SSL, ONE N,R1 0 PR SLAVES C TEST OBSOLETING BIT AND PRINT.
1590 LASUB THR TX - - - C RETURN EXCEPT FROM C ADDRESS.
1592 TS Z,R6,8 - C,+1 FORCE SEQUENCE MODE.
1594 LA Z,R6 Z,R7 C,+2 BRANCH IF LIST IS ALL PRINTED.
1596 TS SP2 SLINE GO PRINT C OTHERWISE PRINT PARTIAL LINE NOW.
1598 TS SP2 N,X3 END PRSB Q DOUBLE-SPACE RETROACTIVELY.
R1600 MINOR SUBROUTINE TO SET IN PRINT THE NAMES OF SUBSIDIARY SUBROUTINES, PREFIXING OBSOLETE ONES BY "/".
1602 PR SLAVES SM Z,R6,1 Z,CSC,1 - C ENTER HERE IF NOT AN OBSOLETING SUBRO.
1604 SS SLASH S CHAR 8 N,R6,1 C ENTER HERE TO SHOW PATH OF OBSOLESCENCE.
1606 TX N,R2 - N,R6,1 C SET SUBROUTINE NAME IN PRINT.
1608 NA Z,R6 Z,R7 N,SC,1 C RETURN IF LINE NOT FULL YET.
1610 WA Z,X3 S EIGHT Z,R7 C RESET POINTERS TO OTHER PRINT BUFFER.
1612 TS Z,R7,8 Z,R6 M SPACE 1 C PRINT 4 SUBSIDIARY SUBRO NAMES, RETURN.
1614 TS SP2 S LINE GO PRINT C PRINT PROG OR SUBRO WITHOUT SUBROUTINES.
1616 END PRSB Q SS 5,1 S THRED 10 Z,X5
1617 NA Z,X5 S END THR M LIST PS BRANCH IF THERE ARE MORE PROGS OR SUBS.
# Page 142
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 35 PAGE 102
P1619 TERMINATION OF EITHER THE PROGRAM LIST OR THE SUBROUTINE LIST.
1620 NA 3,2 PR SUB HDS NO PRSUBS +2 BRANCH IF THE LIST IS NOT EMPTY.
1622 NO PRSUBS TN 3,1 14 3,2
1623 TX W NONE - 3,2 ERASE HEADINGS AND SUBSTITUTE "(NONE)".
1625 TX SP3 - N,X3
1626 SS S BIT 1 PRG OR SUB N,X3 SP3 AFTER PROG LIST, SKIP AFTER SUBRO.
1628 NA PRG OR SUB S ZERO EN COMPS Q BRANCH IF JUST FINISHED SUBROUTINE LIST.
1630 TS W SUBROS SLINE +2 EN COMPS Q C
1631 TS W SUBROS +1 SLINE +3 M SPACE 1 C
1632 TS DASH 1T3 SLINE +3 M SPACE 1 +1 C PRINT AND UNDERLINE SUBROUTINE HEADING.
1634 TS S ONES PRG OR SUB LIST PRSU BEGIN LIST OF SUBROUTINES FOR COMPUTER.
1636 EN COMPS Q TX COMP LOCN - Z,X5
1637 TS SW CMPUTR SLINE +1 SET SP1 C
1638 SS N,X5 S THRED 10 Z,X5
1639 NA Z,X5 S END THR M LIS CMPS BRANCH IF THERE ARE MORE COMPUTERS.
R1641 PROCEDURE TO LIST ESTABLISHED AUTHORS.
1642 M LIS AUTS SWE, CAC3 1,9 16 Z,X5 GET ADDRESS OF FIRST AUTHOR NAME.
1644 LA Z,X5 S END THR END M LIST BRANCH IF THERE ARE NO AUTHORS.
1646 M LIS AUTH TX W AUTHOR C - SLINE +1
1647 TX N,X5 - SLINE +2 SET UP FIRST WORD OF AUTHOR NAME.
1649 TX Z,X5 - Z,R2
1650 SS 5,1 S THRED 11 Z,R2
1651 TX N,R2 - SLINE +3 SET UP SECOND WORD OF AUTHOR NAME.
1653 TN W NPR SUBS 5 SLINE +4
1654 LA 5,1 S C1T2 C,+2 BRANCH IF LESS THAN 255 PROGS AND SUBS.
1656 TS W 254P SLINE +9 MOR AUTH Q OTHERWISE JUST SAY "254+".
1658 SWE, 3D8 5,1 26 SERV ARG
1659 DT SERV ARG 8 SERV ARG CONVERT NUMBER TO DECIMAL.
1661 SWE, 7D8 5,1 23 COMMON +1
1662 DA SERV ARG COMMON +1 SERV ARG
1663 DT SERV ARG 8 SERV ARG
1664 SWE, 7D8 5,1 20 COMMON +1
1665 DA SERV ARG COMMON +1 SERV ARG
1666 TS Z,SC Z,AU1 S D2A ZSUP CONVERT TO ALPHABETIC.
1668 SWS, C1T3 SERV ARG +2 A,5,L SLINE +9
1669 MOR AUTH Q TS SP2 SLINE GO PRINT C PRINT AN AUTHOR LINE.
1671 SWS,THREAD10 5,1 12 Z,X5
1672 NA Z,X5 S END THR M LIS AUTH BRANCH IF THERE ARE MORE AUTHORS.
# Page 143
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 36 PAGE 103
P1674 FINALIZING PROCEDURE IN DIRECTORY LISTING.
1675 END M LIST TX S BIT 1 - N,X3
1676 S, PHI PRINT 3,0 - - PRINT FINAL LINE OF LISTING.
16762 NA, CHAR5 DISC STAT S ONES AFTER YDL +2 AVOID YULDLIST IF DISC IS INOPERATIVE.
16764 S, MON RELOX YUL D LIST XFR LIMIT YULDLIST WILL RUN IN BANK C HERE.
16766 TS Z,AU2,1 Z,AU1 YDL RETRN +1 C SAVE BASE ADDRESS.
16768 NA N,AU2 BYE BYE AFTER YDL CANCEL QUIETLY IF WRONG REV OF YULDLIST.
1677 TS YDL RETRN N,AU2 N,AU1 PLANT SPECIAL EXIT AND EXECUTE YULDLIST.
16772 BYE BYE TS - - MONITOR (SHOULD BE AT BASE ADDRESS +1).
16773 YDL RETRN TS - - N,S3
16774 TX Z,CSC - Z,S3 S MAKE S3 POINT TO SPECIAL RETURN.
16776 AFTER YDL TS L BANK 1 Z,X0 BK1 VIA X0 +1 C
16778 TX YUL MASKS - Z,MXR C SET UP ALL SPECIAL REGS AFTER YULDLIST.
1678 TN S 4 SPACE 1 N,X3
1679 MT S BLANKS 14 N,AU2,1 FORM SPACER LINE.
16802 S, PHI PRINT DEPAGIN8
1681 S, PHI PRINT 3,0
1682 S, PHI PRINT 3,0
1683 S, PHI PRINT 3,0 FORCE LAST LINES THROUGH BUFPRINT.
1685 NA, CHAR8 1,0 S ONE LIST XIT BRANCH IF NOT DOING FULL BACKUP COPY.
1687 TS N,SC,2 Z,X4 C,+2 C
1688 SPEC,B7 601
1689 NA,CHAR1 4,0 ASTRISK PHI PEEK C CHECK ON STAR WHETHER HAVE READ OR NOT.
1691 NA, CHAR1 4,0 ASTRISK LIST XIT BRANCH IF MORE TASKS IN THIS JOB.
1693 LA COMMON S ZERO GROUP NAP SLEEP IF COPYING NOT DONE YET.
16948 TS S ONES REVERT ID -
1695 DS, C7T8 1,2 S TWO REVERT ID FORM SEQUENCE NUMBER OF GRANDFATHER.
1697 NA COMMON S ONES GROUP NAP SLEEP IF READ-BACK NOT DONE YET.
16981 NA, BTHRED10 $PAR IDLE S ZERO REVERT GF BRANCH IF NOT FIRST BACKUP IN THE JOB.
169812 TX, BTHRED10 S ONES - $PAR IDLE REVERT ALL GRAMPAS MADE IN THIS JOB.
16982 NA 1,1 N,SC,6 C,+2 TEMPORARY UNTIL SUPER-CAREFUL TAPE OPS.
16984 ALF NANSTONE
1699 REVERT GF S, MON TYPER OBUWK MSG SPRA +32 - TYPE "FORMER BACKUP WILL BE WORKER".
1701 TS 1,1 C,+2 PHI SNACH SUPPLY TRUE NAME OF GRANDFATHER TAPE.
1703 ALF,2 N00L0006YULPROGS SNATCH FORMER BACKUP, TYPE 3 DISPO.
1705 REVERT ID DEC 0
1706 TS - - MON RLEAS
1707 RW,6 - - - DEMOTE GRANDFATHER TO WORKER.
1709 LIST XIT TS BKUP STOP +1 BKUP STOP MON WAKE C ALLOW GROUP A TO EXIT FROM TASK.
1711 TS S ONES REVERT ID N,R0 GROUP B GOES TO BED.
# Page 144
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 37 PAGE 104
P1713 PRINTING SUBROUTINE IN PASS 0 WITH ONE-LINE DELAY, AS IN PASSES 2 AND 3. PERFORMS PAGINATION. ENTER
R1715 WITH RETURN IN X4.
1716 PRINT LIN LA S BIT 1 N,X3 PRINZ KIP ALWAYS SKIP IF CODE SAYS SO.
1718 WA LIN COUNT N,X3 LIN COUNT
1719 LA LIN COUNT N LINES PRINT OLE BRANCH IF STILL IN SAME PAGE.
1721 TX S BIT 1 - N,X3 SUPPLY SKIP WHEN COUNT OVERFLOWS.
1723 PRINZ KIP S, PHI PRINT DEPAGIN8
1724 S, PHI PRINT 3,0
1725 DA PAGE NO S ONE PAGE NO
1726 SWE, ONES PAGE NO D,4,L SERV ARG
1727 TS Z,SC Z,AU1 S D2A ZSUP
1728 TX, C5T8 SERV ARG +2 - PAGE HEAD +15
1729 S, PHI PRINT PAGE HEAD PRINT HEADING WITH ZERO-SUPPRESSED PGNO.
1731 TS PAGE HEAD LIN COUNT PRINT OLE +1
1732 PRINT OLE S, PHI PRINT 3,0
1733 TX Z,X2 - L OLD LINE
1734 TX Z,X3,1 - Z,X2 SWAP PRINT DELAY BUFFERS.
1736 MT S BLANKS 15 N,X3,1 SWAB OUT CURRENT LINE.
1738 TX L OLD LINE - Z,X3
1739 TS S ZERO N,X2 N,X4
R1740 BRUTAL ROUTINE TO TYPE OUT THE LONG CUSS (SEE NEXT PAGE) AND COME TO AN IMMUTABLE STOP.
1742 CLOBBERD S, MON TYPER OH DAMN SPRAMR +8 -
1743 TX 1,1 - LONG CUSS FILL IN ACTUAL TAPE NAME.
1745 TX L LONG CUS - Z,X6
1746 S, MON TYPER 6,0 SPRAMR +40 -
1747 NA Z,X6,5 L PUT IT C,-1
1748 S, MON TYPER S BLANKS SPRA +8 -
1749 TS Z,SC Z,R0 C,+1 C NEITHER ASA NOR ACA NOR ARA NOR FAX
1751 STOP - SHALL BUDGE US FROM THIS SPOT.
1753 TS - - C,-2
# Page 145
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 38 PAGE 105
P1754 A LONG CUSS FOR A DISTRESSING SITUATION.
1755 OH DAMN ALF OH DAMN.
1756 LONG CUSS ALF,5 YULPROGS IS CLOBBERED. PLEASE DO THUNDER
1757 ALF,5 EDIT *TEI.A72 (T = ACTUAL DRIVE NUMBER),
1758 ALF,5 ASK FIELD SERVICE TO INSPECT THIS TAPE,
1759 ALF,5 MOUNT BACKUP AND RERUN JOB AS REQUIRED.
1760 ALF,5 IF NO BACKUP, FREEZE OPERATIONS ON THIS
1761 ALF,5 TAPE UNTIL I CAN REPAIR THE DAMAGE. IF I
1762 ALF,5 AM UNAVAILABLE AND THERE IS NO BACKUP
1763 ALF,5 AND THE JOB HAS TO BE DONE IN A HURRY,
1764 ALF,5 TRANSFER THE PROGRAM TO THE DISC, AND
1765 PUT IT ON ALF,5 PUT IT ON ANOTHER TAPE. (SIGNED) H B-S
# Page 146
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 39 PAGE 106
P1766 ROUTINE TO PROCESS THE ANNOUNCEMENT THAT A NEW COMPUTER NAME IS TO BE RECOGNIZED.
1768 ADD COM NA N,X5 S NEW C,+2
1769 TX Z,X5,3 - - "NEW" IS OPTIONAL HERE.
1771 TX Z,X5 - WHODUNIT
1772 NA N,X5,1 W COMPUTR HOWZAT
1773 NA N,X5,2 S BLANKS HOWZAT "COMPUTER" IS REQUIRED.
1775 NA N,X5 W NAME C,+2
1776 TX Z,X5,3 - - "NAME" IS OPTIONAL.
1778 TS - - DECOD CPN C DECODE COMPUTER NAME.
1780 TX Z,SC,2 - Z,CSC C MAKE FOLLOWING TWO WORDS A SUBROUTINE.
1782 NO EXTRAS WA Z,X5 S THREE WHODUNIT C
1783 NA 5,3 S ONES HOWZAT SUPERFLUOUS WORDS ARE FORBIDDEN.
1785 TS N,X5 NEWCO MSG +2 FIND PAIR C FIND ROOM FOR COMPUTER NAME ENTRY.
1787 S, YUL TYPER NEWCO MSG AMTF +3 C,+1 ANNOUNCE NEW NAME.
1789 TS - - FIND COMP C SEE IF IT EXISTS ALREADY.
1791 TS Z,SC,1 - CHED LIST +1 C XO TO X2, L BANK 1 TO X0.
1792 S, MON TYPER CONCN MSG SPRAMR +40 SM ABORT CUSS AND ABORT IF CONFLICT.
1794 EX COMP NAME S C1T4 N,X3 FORM COMPUTER NAME ENTRY.
1796 SS Z,X2 S THRED 10 N,X3
1797 SWS,BTHRED10 S END THR 12,L N,X3 INSERT VACUOUS PROGRAM THREAD.
1799 EX Z,X3 S THRED 10 3,1
1800 SWS,BTHRED10 3,1 12,L 3,1
1801 SWS, C1T4 3,1 24,L 3,1 ASSUME IT HAS ITS OWN PARTICULAR PASSES.
1803 NA Z,R4 S ZERO C,+3 BRANCH IF NOT SMALLEST OF COMPUTER NAMS.
1805 SWS, CAC1 Z,X3 32,L 1,9 OTHERWISE THREAD TO IT THUS.
1807 TS - - ACCEPT M2
1808 SS Z,X3 S THRED 10 N,R4
1809 TS - - ACCEPT M2 THREAD TO THIS FROM NEXT SMALLER CNAME.
R1811 TRIVIAL ROUTINES TO ABORT A TASK FROM THE SERVICE MODULE.
1812 SM ABORT TS L BANK 1 Z,X0 TYP ABORT
1813 SM REJECT TS L BANK 1 Z,X0 REJEC DIR
# Page 147
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 40 PAGE 107
P1814 PROCEDURE TO PROCESS THE ANNOUNCEMENT THAT AN OLD COMPUTER (NAME) IS TO BE REMOVED.
1816 RMOV COM NA N,X5 W OLD C,+2 "OLD" IS OPTIONAL.
1818 TX Z,X5,3 - -
1819 TX Z,X5 - WHODUNIT
1820 NA N,X5,1 W COMPUTR HOWZAT
1821 NA N,X5,1 S BLANKS HOWZAT "COMPUTER" IS REQUIRED.
1823 NA N,X5 W NAME C,+2 "NAME" IS OPTIONAL.
1825 TX Z,X5,3 - -
1826 TS - - DECOD CPN C
1827 TS N,X5 REMCO MSG +3 NO EXTRAS C
1828 S, MON TYPER REMCO MSG SPRAMR +32 - DECODE COMPUTER NAME AND ANNOUNCE TASK.
1830 TS - - FIND COMP C LOOK UP COMPUTER NAME.
1832 S, MON TYPER SURCO MSG SPRAMR +32 SM ABORT CUSS AND ABORT IF NO SUCH COMPUTER.
1834 LA,BTHRED10 0,0 B ADDR 6 C,+3 BRANCH IF COMPUTER HAS NO PROGRAMS.
1836 S, MON TYPER COMUS MSG SPRAMR +24 CHED LIST CUSS ABOUT REMOVING COMPUTER IN USE.
1838 CHED LIST S, MON TYPER CHEDL MSG SPRAMR +24 SM ABORT TELL HIM TO CHECK THE DIRECTORY LISTING.
1840 TS Z,X0 Z,X2 BK1 VIA X0 C
1841 SWE, CAC3 1,9 32 Z,X3 CHECKING ON SOFTWARE SHARING: LOCATION
1843 TS Z,X2 L COMP NAM THIS COM Q OF 1ST COMPUTER AND OF THIS ARE SET UP.
1845 SOFT SHAR TX N,X3 - N,X5
1846 TS - - CPN FIXER C EXPAND COMPUTER NAME TO STANDARD FORM.
1848 TX N,X5 - STNED MSG +2
1849 TX L W PASS 1 - Z,X4
1850 SHAR LOOP SWS, ONES 3,1 12,L 3,1 ROTATE SOFTWARE THREADS.
1852 NA, THREAD10 3,1 L COMP NAM 4 PASS CT BRANCH IF NO SHARING HERE.
1854 SM L COMP NAM S CHAR 1 L COMP NAM SET FLAG TO SHOW SOME SHARING.
1856 S, MON TYPER 4,0 SPRAM +16 -
1857 S, MON TYPER STNED MSG SPRAMR +24 - TYPE OUT WHO NEEDS WHICH SOFTWARE.
1859 4 PASS CT NA N,X4,2 W MANUF SHAR LOOP DO ALL 4 "PASSES" FOR EACH OTHER COMP.
1861 SS N,X3 S THRED 10 Z,X3 FOLLOW THE THREAD TO NEXT COMPUTER.
1863 LA Z,X3 1 COMMA 8 CHK SHARE BRANCH IF ALL COMPUTERS DONE.
1865 THIS COM Q NA Z,X3 Z,X2 SOFT SHAR BRANCH IF NOT COMPUTER BEING REMOVED.
1867 TS - - C,-3
1868 CHK SHARE LA S CHAR 1 L COMP NAM TYP ABORT ABORT IF THERE WAS ANY SHARING.
1870 NA Z,R4 S ZERO NOT 1ST CO BRANCH IF COMPUTER NOT 1ST IN LIST.
1872 SS N,X2 S THRED 10 Z,X3
1873 SWS, CAC1 Z,X3 32,L 1,9 SEW UP THREAD AROUND THIS COMPUTER.
1875 TX Z,SC,1 - -
1876 NOT 1ST CO SS N,X2 S THRED 10 N,R4 SEW UP THREAD AROUND THIS COMPUTER.
1878 TS Z,X2 Z,AU1 GIVE PAIR C GIVE UP ITS TWO WORDS.
1880 TS - - ACCEPT M2 CALL FOR BACKUP LABEL AMENDMENT IF NEC.
# Page 148
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 41 PAGE 108
P1882 ROUTINE TO PROCESS A DECLARATION THAT ASSEMBLY PASS 1, ASSEMBLY PASS 2, ASSEMBLY PASS 3, OR MANUFACT-
R1884 URING FOR A PARTICULAR COMPUTER IS AVAILABLE, CHECKED OUT, OR OBSOLETE. CUSSES RESULT FROM VARIOUS INCONSISTEN-
R1886 CIES AND REDUNDANCIES IN SUCH DECLARATIONS. A PASS (GENERIC TERM FOR THE FOUR ITEMS ABOVE) MAY BE DECLARED
R1888 CHECKED OUT OR OBSOLETE ONLY AFTER BEING DECLARED AVAILABLE. ANY PASS MAY BE DECLARED EQUIVALENT TO THE CORRES-
R1890 PONDING PASS FOR ANOTHER COMPUTER.
1893 PASS STA TX Z,X5 - WHODUNIT ENTRY FOR STATUS OF ASSEMBLY PASSES.
1895 NA N,X5,3 W PASS HOWZAT "PASS" IS REQUIRED.
1897 TX Z,X5 - WHODUNIT
1898 NA, CHAR6 5,2 S 1 C6 HOWZAT PASS NUMBER MUST BE ONE DIGIT.
1900 LA N,X5 S ZERO C1 HOWZAT
1901 LA 4 C1 N,X5 HOWZAT AND MUST BE IN THE RANGE 1-3.
1903 SWS, CHAR3 N,X5,3 A,2 PASSS MSG +1 PUT PASS NUMBER IN ANNOUNCEMENT.
1905 SSL, CHAR8 PASSS MSG +1 A,5 MASKIFTS -1 C SHIFT MASK ACCORDING TO PASS.
1907 TN PASSS MSG 2 STATS MSG +1 STATUS MESSAGE DEALS WITH A PASS.
1909 TS PASSS RE STATS MSG CHECK FOR
1910 MASKIFTS SWE, ONES MANU MASK 12 PASS MASK
1911 SWE, ONES MANU MASK 24 PASS MASK
1912 SWE, ONES MANU MASK 36 PASS MASK MASK FOR 2ND WD OF COMPUTER NAME ENTRY.
1914 MANU STA TX MANU MASK - PASS MASK ENTRY FOR STATUS OF MANUFACTURING.
1916 TN MANUS MSG 2 STATS MSG +1
1917 TX MANUS RE - STATS MSG
1922 CHECK FOR TX Z,X5 - WHODUNIT JOINT ROUTINE FOR STATUS DECLARATIONS.
1924 NA N,X5,3 S FOR HOWZAT
1925 WHOS STAT TS - - DECOD CPN C DECODE COMPUTER NAME.
1927 TX N,X5 - STATS MSG +3
1928 S, YUL TYPER STATS MSG A +4 C,+1 ANNOUNCE WHICH PASS FOR WHICH COMPUTER.
1930 TS - - FIND COMP C FIND COMPUTER NAME IN DIRECTORY.
1932 S, MON TYPER SURCO MSG SPRAMR +32 SM REJECT CUSS AND ABORT IF NONEXISTENT COMPUTER.
1934 TS Z,X0 Z,X2 BK1 VIA X0 C
1937 NA, CHAR1 5,2 EQUALS C1 CHECK IS BRANCH IF ABSOLUTE DECLARATION.
# Page 149
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 42 PAGE 109
P1939 PROCEDURE FOR EQUIVALENCE DECLARATIONS.
1940 WA Z,X6 OCTAL 20 Z,X4
1941 EQIV LOOP WA Z,X5,3 S THREE WHODUNIT WHEN "*" IS THE NON-BLANK TERMINATOR OF
1943 NA N,X5 N,X4,1 HOWZAT THE COMPUTER NAME, THE DECLARATION IS:
1945 NA 5,1 N,X4,2 HOWZAT A PASS (NOT SIMULATION) FOR THE 1ST-
1947 NA N,X5 S FOR EQIV LOOP NAMED COMPUTER = THAT FOR THE 2ND-NAMED.
R1949 AT THIS POINT WE KNOW THAT ALL THE WORDS THROUGH "FOR" WERE DUPLICATED.
1950 NA STATS MSG MANUS RE C,+2
1951 TS MANUS EQU STATS MSG C,+2 CHANGE "RE:" TO "=" (MANUFACTURING).
1953 TX PASSS EQU - STATS MSG CHANGE "RE:" TO "=" (ASSEMBLY PASSES).
1955 TS Z,X5,3 - WHOS STAT C DECODE SECOND COMPUTER NAME.
1957 TX COMP NAME - STATS MSG +3
1958 S, YUL TYPER STATS MSG A +4 C,+1 ANNOUNCE EQUIVALENCE.
1960 TS Z,X2 Z,X4 FIND COMP C SAVE ADDR. OF 1ST NAME, FIND 2ND.
1962 S, YUL TYPER SURCO MSG AMTF +4 TYP ABORT CUSS AND ABORT IF NO SUCH COMPUTER.
19632 TS Z,X0 Z,X2 BK1 VIA X0 C
1964 NA Z,X2 Z,X4 XFER STAT BRANCH IF NAMES ARE DIFFERENT.
1966 EX Z,X2 S THRED 10 TEMP MSK WHEN NAMES ARE SAME, IT MEANS THAT THE
1968 SWS, C1T6 TEMP MASK 12,L TEMP MSK COMPUTER HAS STOPPED SHARING A PASS.
1970 SWS, C1T6 TEMP MASK 24,L TEMP MSK MAKE 4 COPIES OF COMPUTER NAME ADDRESS.
1972 SS TEMP MASK PASS MASK 2,1 SHOW THAT COMPUTER HAS OWN VERSION.
1974 XFER STAT SS 2,1 PASS MASK 4,1 TRANSFER KNOWN STATUS.
1976 EX PASS MASK S PAV BITS TEMP MSK FORM AVAILABILITY BIT FOR THIS PASS.
1978 S, MON TYPER W STATUS SPRAM +8 - TYPE "STATUS: ".
1980 EX 2,1 TEMP MSK COMMON
1981 NA COMMON S ZERO C,+2
1982 S, MON TYPER UNAVP MSG SPRAMR +16 AC PA STAT ANNOUNCE AND EXIT IF UNAVAILABLE.
1984 EX PASS MASK PCO BITS TEMP MSK FORM CHECKOUT BIT FOR THE PASS.
1986 EX 2,1 TEMP MSK COMMON
1987 NA COMMON S ZERO C,+2
1988 S, MON TYPER W AVALABL SPRAMR +16 AC PA STAT ANNOUNCE AND EXIT IF AVAILABLE.
1990 S, MON TYPER W CHECKED SPRAMR +16 AC PA STAT ANNOUNCE AND EXIT IF CHECKED OUT.
# Page 150
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 43 PAGE 110
P2000 PROCEDURE FOR ABSOLUTE, RATHER THAN EQUIVALENCE, DECLARATION.
2001 CHECK IS NA 5,3 W IS C,+2 "IS" IS OPTIONAL HERE.
2003 TX Z,X5,3 - -
2004 WA Z,X5,3 S THREE WHODUNIT
2005 NA N,X5 W AVALABL CHK OR OBS BRANCH IF CANNOT BE "AVAILABLE".
2007 NA 5,1 W AVALABL +1 HOWZAT CUSS AND ABORT IF MIS-SPELLED.
2009 S, YUL TYPER DCLAV MSG AMTF +3 C,+1 TYPE "DECLARED AVAILABLE".
2011 EX PASS MASK S PAV BITS TEMP MSK FORM AVAILABILITY BIT FOR PASS.
2016 EX 2,1 TEMP MSK COMMON
2017 NA COMMON TEMP MSK C,+2
2018 TYP REDUN S, YUL TYPER REDUN MSG AMTF +2 TYP ABORT CUSS AND ABORT IF REDUNDANT.
2020 SM 2,1 TEMP MSK 2,1
2021 TS - - AC PA STAT SIGNAL AVAILABILITY OR CHECKOUT, EXIT.
2023 CHK OR OBS NA N,X5 W CHECKED OBSOLETE BRANCH IF CANNOT BE "CHECKED OUT".
2025 WA Z,X5,3 S THREE WHODUNIT
2026 NA N,X5 W OUT HOWZAT CUSS AND ABORT IF MIS-SPELLED.
2028 S, YUL TYPER DCLOK MSG AMTF +3 C,+1 TYPE "DECLARED CHECKED OUT".
2030 EX PASS MASK S PAV BITS TEMP MSK FORM AVAILABILITY BIT FOR THE PASS.
2035 EX 2,1 TEMP MSK COMMON
2036 NA COMMON S ZERO C,+2
2037 S, YUL TYPER NOTAV MSG AMTF +2 TYP ABORT CUSS AND ABORT IF NOT AVAILABLE.
2039 EX PASS MASK PCO BITS TEMP MSK FORM CHECKOUT BIT FOR THE PASS.
2041 TS - - TYP REDUN -2
2042 OBSOLETE NA N,X5,1 W OBSOLET HOWZAT
2043 NA N,X5 S BLANKS HOWZAT CUSS AND ABORT IF NOT "OBSOLETE".
2045 S, YUL TYPER DCLOB MSG AMTF +3 C,+1 TYPE "DECLARED OBSOLETE".
2047 EX PASS MASK AVCO BITS TEMP MSK FORM AVAIL AND CHKO BITS FOR PASS.
2051 EX 2,1 TEMP MSK COMMON
2052 NA COMMON S ZERO C,+2 BRANCH IF NOW CALLED AVAILABLE.
2054 S, YUL TYPER NOTAV MSG AMTF +2 TYP ABORT CUSS AND ABORT OTHERWISE.
2056 SS S ZERO TEMP MSK 2,1 ERASE AVAIL AND CHKO BITS, EXIT.
R2058 COMMON EXIT FOR ACCEPTANCE OF ANY PASS STATUS CHANGE.
2059 AC PA STAT NA, CHAR8 1,0 S ZERO MANUF RTN BRANCH IF SOME BACKUP ALREADY WANTED.
2061 TS, CHAR8 S TWO 1,0 MANUF RTN CALL FOR BACKUP LABEL AMENDMENT.
# Page 151
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 44 PAGE 111
P3000 COMMON SUBSEGMENT IN BANK 4 FOR OVERSPILL OF BANK 1.
3001 OVERSPIL EQUALS AC PA STAT - L BACKUP +12 LEAVE ROOM FOR 10 PATCHES.
3002 SETLOC,5C OVERSPIL B4
3003 NUMERALS OCT 3442 4242 34, 4040 7644 40
3004 OCT 4452 4262 44, 2452 5252 42
3005 OCT 2076 2430 20, 2252 5252 56
3006 OCT 2252 5252 34, 0206 1222 42
3007 OCT 2452 5252 24, 3452 5252 44
# Page 152
# @YUL SYSTEM PASS 0 SERVICE MODULE USER'S OWN PAGE NO. 45 PAGE 112
# This page is assembly status information only. Omitted.