8 22FL #OPT K0LISTPREP=0 9 22_= ...#OPT ATPOLTR=0 18 23YG #LIS K0LISTPREP>K0LISTFILE>K0ALLGEO>K0GREATGEO>K0COMMAND 7 24D6 #SEG LISTPREP 10 24XQ 8HLISTPREP 11 25CB ... SETENTRY LISTPREP,POINT,4 4 26BL [ 21 26W= [THIS SEGMENT IS ENTERED FROM LISTINIT.IT SETS UP THE SHORT GOUT INFO 20 27*W [BLOCKS.IT OUTPUTS THE 'PLEASE LINE UP MESSAGE' FOR SPEC STATIONERY 4 27TG [ 21 28*6 [*********************************************************************** 6 28SQ [DATA AREA 16 29#B TLP2 +2 [FILE TYPE FOR LP 18 29S2 TLP [COMPARISON WORD FOR LP 8 2=?L PRINT +1 9 2=R= SETUPBIT #10000000 8 2?=W [TABLE OF LP WIDTHS 9 2?QG PP96 #2000000 9 2#=6 PP120 #5000000 9 2#PQ PP132 #6400000 9 2*9B PP160 #12000000 4 2*9H ...[ 4 2*9N ...[ 21 2*9T ...[*********************************************************************** 4 2*=2 ...[ 8 2*=7 ...[ SUBROUTINE AREA 4 2*=# ...[ 21 2*=F ...[*********************************************************************** 4 2*=L ...[ 6 2*=R ...#SKI ANIP 4 2*=Y ...( 4 2*?5 ...[ 4 2*?= ...[ 6 2*?C ...SCHKBREAK 4 2*?J ...[ 21 2*?P ...[*********************************************************************** 4 2*?W ...[ 13 2*#3 ...[ TO CHECK FOR THE BREAKIN BIT BEING SET 14 2*#8 ...[ IF SET THEN WAKE CPAT FOR JOB IF WAITING 18 2*#* ...[ ON RETURN CHECK WHETHER NIPREL MACRO IS FORCING CLOSEDOWN 4 2*#G ...[ 7 2*#M ...[ CALLED ON X7 4 2*#S ...[ 8 2*#_ ...[ EXPECTS X2 = FX2 4 2**6 ...[ 8 2**? ... SBX 7 FX1 15 2**D ...SCHK2 LFBBS B,2,SBSET [J IF BREAKIN 8 2**K ... ADX 7 FX1 7 2**Q ... EXIT 7 0 4 2**X ...[ 17 2*B4 ...SBSET LFBITCLR B,2 [CLEAR BREAKIN BIT 17 2*B9 ... LONGON1 ANIPBRK,JOBNO(2) [WAKE WAITING CPAT 17 2*BB ... COOR1 [WAIT FOR NEXT MACRO 4 2*BH ...[ 19 2*BN ... LFBBUS R,2,SCHK2 [NIPREL NOT FORCING CLOSEDOWN 12 2*BT ...[ ENTRY FROM OTHER PARTS OF SEGMENT 20 2*C2 ...SRSET LFBITCLR R,2 [ILLEGAL USE OF BIT R - CLEAR IT 20 2*C7 ... FINDLINK 3 [FIND LISTLOOP OR LISTINIT DATA 9 2*C# ... LDX 5 ACC5(3) 17 2*CF ... BZE 5 SHEAD [OUTPUTTING HEADINGS 7 2*CL ... SBN 5 1 18 2*CR ... BZE 5 STERM [OUTPUTTING TERMINATORS 7 2*CY ... SBN 5 1 16 2*D5 ... BNZ 5 SLOOP [DURING LISTLOOP 17 2*D= ...[ LISTINIT HAD BEEN ENTERED BY A DOWN - FREE THE LINK 7 2*DC ...STRM FREELINK 4 2*DJ ...[ 5 2*DP ...SLOOP 20 2*DW ...SHEAD FREELINK [FREE LINK FROM LISTLOOP/LISTINIT 6 2*F3 ...[ TIDY UP 10 2*F8 ... VFREEW ADATA,CREADL 9 2*F* ... VFREEW FILE,ENT 10 2*FG ... VFREEW GOUT,INFOLIST 15 2*FM ... VFREEW GOUT,INFOLIST [SETUP FILE 10 2*FS ... VFREEW GOUT,INFOSET 10 2*F_ ... VFREEW GOUT,GLINES 16 2*G6 ... LFEND CD [STOP LISTFILE 4 2*G? ...[ 9 2*GD ...STERM LDX 0 AWORK1(3) 7 2*GK ... SBN 0 1 16 2*GQ ... BZE 0 SLOOP [ERROR IN FROM/TO 18 2*GX ... BRN STRM [OUTPUTTING TERMINATORS 4 2*H4 ...[ 4 2*H9 ...[ 21 2*HB ...[********************************************************************** 4 2*HH ...[ 4 2*HN ...[ 6 2*HT ...SPASSLINES 4 2*J2 ...[ 4 2*J7 ...[ 21 2*J# ...[********************************************************************** 4 2*JF ...[ 21 2*JL ...[ SUBROUTINE TO PASS ACROSS GOUT/GLINES BLOCK AND/OR SET REPLY IN CPAT 7 2*JR ...[ CALLED ON X7 9 2*JY ...[ X6 - REPLY FOR CPAT 4 2*K5 ...[ 8 2*K= ... SBX 7 FX1 10 2*KC ... JOBLOCK JOBNO(2),3 20 2*KJ ... BNG 3 (GEOERR) [IF BREAKIN BIT CLEAR MUST EXIST 7 2*KP ... FCAJO 3 20 2*KW ... BNG 3 (GEOERR) [IF BREAKIN BIT CLEAR MUST EXIST 10 2*L3 ... HUNTW 1,GOUT,GLINES 8 2*L8 ... BNG 1 SPASS 9 2*L* ... LDN 0 GFIRSTL 19 2*LG ... STO 0 GNEXTL(1) [FINISH INITIALISING BLOCK 18 2*LM ... CHAIN 1,3 [CHAIN GLINES AFER CPAT 17 2*LS ...SPASS STO 6 EXEC3(3) [SET REPLY IN CPAT 15 2*L_ ... LONGON1 AWAITNIP,JOBNO(2) [WAKE UP CPAT 17 2*M6 ... COOR1 [WAIT FOR NEXT MACRO 4 2*M? ...[ 8 2*MD ... ADX 7 FX1 7 2*MK ... EXIT 7 0 4 2*MQ ...[ 4 2*MX ...[ 4 2*N4 ...) 4 2*N9 ...[ 21 2*P2 [*********************************************************************** 9 2B8L [MAIN BODY OF SEGMENT 21 2BN= [*********************************************************************** 4 2BRB ...[ 4 2BWG ...[ 10 2B_L ...[ ENTRY POINT FROM LISTINIT 4 2C4Q ...[ 5 2C7W POINT1 18 2CMG LFBITCLR I,2 [LINE-UP MESSAGE SWITCH 19 2D76 LDN 6 0 [SWITCH FOR FIRST TIME ROUND 10 2DLQ ... MHUNTW 3,GOUT,INFO 17 2F6B LDCH 7 GOPTY(3) [GET PERIPHERAL TYPE 7 2FL2 SRL 7 1 9 2G5L STOZ AWORK4(2) 10 2GK= LDX 0 SETUPBIT(1) 9 2H4W ANDX 0 GMODE(3) 8 2HJG BZE 0 NSETP 8 2J46 LDX 0 GSIGN 9 2JHQ ORS 0 AWORK4(2) 9 2K3B NSETP LDX 5 GMODE(3) 15 2KH2 BNG 5 XBUFFER [J IF ONLINE 5 2L2L NOFAB 10 2LG= ... MHUNTW 2,GOUT,INFO 19 2L_W LDN 5 1 [INITIAL VALUE FOR SETUPCORE 7 2MFG LDCT 4 2 9 2M_6 ANDX 4 GMODE(2) 17 2NDQ BZE 4 NOPAGE [J NOT PAGE RESTART 6 2NG_ ...#SKI ANIP 4 2NK8 ...( 8 2NMC ... SMO FX2 8 2NPL ... LDX 0 CPPTR 18 2NRT ... BZE 0 NOPAGE [J IF NIP-NO PAGE RESTART 4 2NW4 ...) 8 2NYB SMO FX2 9 2PD2 ANDX 5 AWORK4 17 2PXL BNZ 5 NOPAGE [J IF FOR SETUP FILE 19 2QC= LDX 5 IPAGE [LOAD INSTALLATION PARAMETER 5 2QWW NOPAGE 10 2RBG ADN 5 GREST-GNUM 20 2RW6 ... SETUPCORE 5,3,GOUT,INFOLIST [SET UP SHORT INFORMATION BLOCK 10 2S*Q SBN 5 GREST-GNUM+1 16 2STB STO 5 GLEN(3) [STORE IPAGE-1 18 2T*2 STOZ GNEXT(3) [ZEROISE GOUT FROM GNEXT 9 2TSL STOZ GREST(3) 8 2W#= BZE 5 NOIP 9 2WRW LDN 4 GREST(3) 10 2X?G LDN 5 GREST+1(3) 9 2XR6 SMO GLEN(3) 7 2Y=Q MOVE 4 0 10 2YQB ...NOIP MHUNTW 2,GOUT,INFO 7 2_=2 LDN 5 1 8 2_PL SMO FX2 9 329= ANDX 5 AWORK4 18 32NW BZE 5 MAINGOUT [J NOT SETUP GOUT REQD. 9 338G STOZ GNUM(3) 9 33N6 STOZ GREST(3) 9 347Q STOZ GQUAL(3) 8 34MB LDX 5 GSIGN 9 3572 STO 5 GLNO(3) 9 35LL BRN SETUPGOUT 5 366= MAINGOUT 17 36KW LDX 4 GFLI(2) [COPY START LINE NO. 9 375G STO 4 GREST(3) 9 37K6 STO 4 GNUM(3) 20 384Q LDX 4 GNLI(2) [LOAD NO OF LINES FOR O/P AND J 17 38JB BNZ 4 STORE [NOT TO END OF FILE 18 3942 LDCT 4 256 [SET END OF FILE MARKER 20 39HL STORE STO 4 GLNO(3) [STORE IN REMAINING LINES WORD 21 3=3= LDCT 4 3 [LOAD AND STORE RESTART TYPE MARKER 9 3=GW ANDX 4 GMODE(2) 6 3=JD ...#SKI ANIP 4 3=L2 ...( 8 3=MJ ... SMO FX2 8 3=P6 ... LDX 0 CPPTR 8 3=QN ... BNZ 0 STORT 10 3=S= ...[ ONLY ALL RESTART ON NIP 7 3=TS ... LDCT 4 1 5 3=XB ...STORT 4 3=YY ...) 7 3?2G SLL 4 7 9 3?G6 ORS 4 GREST(3) 9 3?_Q STOZ GQUAL(3) 16 3#FB BZE 7 SEGOUT [J IF TAPE PUNCH 15 3#_2 TXU 7 PRINT(1) [J IF CARDS 8 3*DL BCS TCAR 9 3*Y= LDX 4 GMFMSK(2) 10 3BCW STO 4 GCATBITS(3) 19 3BXG LDN 0 10 [INITIALISE PAGE LINE COUNT 14 3CC6 [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 10 3CWQ [SPECIAL DEBATCHERS FACILITY 5 3DBB [S71831Q 10 3DNR ... SEGENTRY K50LISTPREP 9 3F38 ... BRN SNODEBS 17 3F*L ADN 0 8 [ALLOW FOR DEBATCHERS 10 3FT= SEGENTRY K60LISTPREP 5 3G#W SNODEBS 14 3GSG [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 9 3H#6 STO 0 GPREM(3) 5 3HRQ SEGOUT 20 3J?B LDX 4 GMODE(2) [UNPACK AND STORE SEQUENCING AND 20 3JR2 ANDN 4 7 [MONFILE AND SPECIAL LISTING BITS 9 3K=L ORS 4 GQUAL(3) 15 3KBT [ IF A CORRUPT BLK WAS DETECTED WHILST DOING 18 3KD= [ A CONTEXT SEARCH IN LISTOPEN ..B 11 IN GMODE WILL BE SET 17 3KFM [ IF SO WE MUST TRANSFER THIS FLAG INTO GQUAL AND CHK. 12 3KH4 [ FOR IT IN LISTLOOP AND LISTTPCP 8 3KJF LDBIT 11,0 9 3KKW ANDX 0 GMODE(2) 18 3KM? ORS 0 GQUAL(3) [SET B11 IF SET IN GMODE 6 3KQ= SETUPGOUT 8 3L9W LDN 4 #17 8 3LPG SMO FX2 9 3M96 LDX 5 AWORK4 7 3MNQ ANDN 5 1 8 3N8B BZE 5 NSE1 7 3NN2 SLL 4 4 9 3P7L NSE1 ANDX 4 GFTY(2) 8 3PM= BZE 5 NSE2 7 3Q6W SRL 4 4 7 3QLG NSE2 SLL 4 5 9 3R66 ORS 4 GQUAL(3) 9 3RKQ TXU 7 PRINT(1) 9 3S5B BCS XBUFFER 8 3SK2 SMO FX2 8 3T4L LDX 0 CPPTR 6 3T9S ...#SKI ANIP 14 3TC2 ... BZE 0 XBUFFER [J IF NIP 8 3TJ= LPROP 0,4 8 3W3W LDN 5 #140 7 3WHG ANDX 5 4 8 3X36 SBN 5 #140 18 3XGQ BZE 5 P1933 [J IF BUFFERED PRINTER 8 3YG2 LDN 5 #20 9 3Y_L ORS 5 GQUAL(3) 5 3_F= P1933 4 3_YW [ 7 42DG SRC 4 5 18 42Y6 BNG 4 TO160 [J IF 160 PRINT POSITION 7 43CQ SLC 4 3 15 43XB BNG 4 TO132 [J IF 132PP 7 44C2 SRC 4 2 15 44WL BNG 4 TO120 [J IF 120PP 9 45B= LDX 5 PP96(1) 8 45TW BRN SETPW 5 46*G TO120 9 46T6 LDX 5 PP120(1) 8 47#Q BRN SETPW 5 47SB TO132 9 48#2 LDX 5 PP132(1) 8 48RL BRN SETPW 5 49?= TO160 9 49QW LDX 5 PP160(1) 5 4==G SETPW 7 4=Q6 #SKI ATPOLTR 9 4?9Q TRACEVER 5,PREPWID 9 4?PB ORS 5 GQUAL(3) 5 4#92 XBUFFER 8 4#NL SMO FX2 9 4*8= LDX 4 AWORK4 15 4*MW BPZ 4 NOTSE [J NOT SETUP 7 4B7G LDN 5 1 7 4BM6 ANDX 4 5 19 4C6Q BNZ 4 TWICE [J TWICE MARKER SET FOR GOUT 8 4CLB SMO FX2 9 4D62 ADS 5 AWORK4 17 4DKL BRN NOFAB [J IF 2ND GOUT REQD 8 4F5= TWICE SMO FX2 9 4FJW SBS 5 AWORK4 5 4G4G NOTSE 9 4GJ6 LDX 5 GMODE(2) 9 4HHB BRN PLOOP1 4 4J32 [ 20 4JGL [ THIS ENTRY POINT IS USED AFTER A TESTPATTERN FILE HAS BEEN LISTED 4 4K2= [ 4 4KFW [ 21 4K_G [*********************************************************************** 5 4LF6 POINT2 14 4LYQ LDN 7 1 [LP KEY 9 4NCL LDX 0 AWORK1(2) 8 4NX= ANDN 0 #1000 18 4PBW BZE 0 PLOOP1 [J IF NOT EXTENDED ACTLF 18 4PWG ALTLEND FX2,100 [ELSE REDUCE ACTLF LENGTH 7 4QB6 LDN 0 0 16 4QTQ DCA ,DEX,0,MODE [AND ZEROISE MODE 5 4RT2 PLOOP1 8 4S#L LDX 2 FX2 9 4SS= LDX 4 AWORK4(2) 16 4T?W BZE 4 PLOOP [J IF NOT SETUP 17 4TRG BZE 6 PLOOP [J FIRST TIME THROUGH 9 4W?6 XISBY JUNBUSY ,NOTBUSY 8 4WQQ BRN XISBY 5 4X=B NOTBUSY 7 4XQ2 DISENGPER 19 4Y9L LFBBS I,2,NOINITMSG [J IF MESSAGE ALREADY OUTPUT 8 4YP= LFBITSET I,2 6 4_8W OUTPER 16 4_NG ENGPER TERM,,XOUT,2 [PLEASE LINE UP 6 5286 NOINITMSG 10 52MQ ENGPER TERM,,XOUT,3 5 537B PLOOP 9 53M2 TXU 7 PRINT(1) 8 546L BCS NOTLP 10 54L= ACROSS LISTLOOP,1 10 555W NOTLP ACROSS LISTTPCP,1 11 55KG ...XOUT HUNTW 1,GOUT,INFOLIST 8 5656 BNG 1 XOUT1 7 56JQ FREECORE 1 8 574B BRN XOUT 8 57J2 XOUT1 LFEND CD 4 583L [ 21 58H= [*********************************************************************** 5 592W POINT3 19 59GG [THIS IS THE ENTRY POINT FROM LISTLOOP WHEN SET_P IS TERMINATED 6 5=26 TERM LPSET 9 5=FQ LDX 0 AWORK2(2) 8 5=_B BNG 0 OLEND 8 5?F2 LDX 0 GSIGN 9 5?YL ERS 0 AWORK4(2) 8 5#D= FILEMOVE 1,0 11 5#XW ... MHUNTW 1,GOUT,INFOLIST 11 5*CG ... NAME 1,GOUT,INFOSET 10 5*X6 ACROSS LISTLOOP,1 7 5BBQ TERM2 LPUNSET 6 5BWB OLEND LFEND 4 5CB2 [ 4 5CTL [ 9 5D*= [FOR PAPER TAPE OUTPUT 4 5DSW [ 9 5F#G [FOR CARD PUNCH OUTPUT 4 5FS6 [ 18 5G?Q TCAR LDN 4 2 [TEST FOR CARD SEQUENCING 9 5GRB ANDX 4 GMODE(2) 14 5H?2 BZE 4 NONUM [J NONE 18 5HQL LDCT 4 256 [SET SEQUENCING MARKER 9 5J== ORS 4 GQUAL(3) 5 5JPW NONUM 21 5K9G LDN 4 #20 [SHOW SPACE FILLING MAY BE REQUIRED 9 5KP6 ORS 4 GQUAL(3) 9 5L8Q BRN SEGOUT 4 5L8X ...[ 4 5L94 ...[ 21 5L99 ...[*********************************************************************** 4 5L9B ...[ 5 5L9H ...POINT4 4 5L9N ...[ 21 5L9T ...[*********************************************************************** 3 5L=2 ... 4 5L=7 ...[ 19 5L=# ...[ ENTRY POINT FROM LISTINIT OR LISTLOOP TO DO A 'PERI' FOR NIP 20 5L=F ...[ THIS INVOLVES MOVING THE LINE FOR OUTPUT INTO A GOUT GLINES BLOCK 19 5L=L ...[ AND WHEN THE BLOCK IS FULL (SEVERAL PERIS) PASSING IT TO THE 13 5L=R ...[ WAITING CPAT AND WAKING UP THE CPAT 16 5L=Y ...[ CHECKING FOR BREAKIN AND FINISH NOW IS NECESSARY 19 5L?5 ...[ ON ENTRY GZDUMP IN THE ACTIVITY BLOCK MAY HAVE THESE VALUES: 15 5L?= ...[ +VE - A LINE OF DATA IS BEING PASSED 15 5L?C ...[ ZERO- END OF LISING IS TO BE PASSED 19 5L?J ...[ -VE - THE FILE IS CORRUPT,THE CURRENT GLINES BLOCK 18 5L?P ...[ IS TO BE PASSED AND THEN A CORRUPT REPLY 4 5L?W ...[ 4 5L#3 ...[ 9 5L#8 ... LDX 0 GZDUMP(2) 6 5L#* ...#SKI ANIP 4 5L#G ...( 20 5L#M ... BPZ 0 XHNT [NORMAL ENTRY OR END OF LISTING 18 5L#S ...[ CORRUPT OR CHANGED REPLY - IS THERE A GLINES BLOCK TO PASS 10 5L#_ ... HUNTW 3,GOUT,GLINES 8 5L*6 ... BPZ 3 XNORM 19 5L*? ... BRN XBRK [NO BLOCK - GO TO SET REPLY 4 5L*D ...[ 10 5L*K ...XHNT HUNTW 3,GOUT,GLINES 8 5L*Q ... BPZ 3 XIST 11 5L*X ...[ NO BLOCK EXISTS - CREATE ONE 11 5LB4 ... SETNCORE 512,3,GOUT,GLINES 10 5LB9 ... STOZ GTOTLIN(3) 10 5LBB ... STOZ GUSELIN(3) 9 5LBH ... LDN 0 GFIRSTL 9 5LBN ... STO 0 GNEXTL(3) 11 5LBT ...[ BLOCK SET UP AND INITIALISED 9 5LC2 ...XIST LDX 0 GZDUMP(2) 18 5LC7 ... BZE 0 ZERO [ONLY ONE WORD NEEDED 7 5LC# ... ADN 0 2 17 5LCF ... SRL 0 2 [GET WORDS NEEDED 16 5LCL ... ADN 0 1 [ADD FOR PFCC 7 5LCR ... LDX 4 0 18 5LCY ...ZERO ADN 0 1 [ADD FOR CHAR COUNT WORD 17 5LD5 ... ADX 0 GNEXTL(3) [WORDS USED SO FAR 16 5LD= ... SBN 0 A1 [LOGICAL LENGTH 8 5LDC ... SBN 0 513 14 5LDJ ... BPZ 0 XNORM [NO ROOM 9 5LDP ... LDX 5 GZDUMP(2) 9 5LDW ... SMO GNEXTL(3) 17 5LF3 ... STO 5 0(3) [STORE CHAR COUNT 7 5LF8 ... LDN 0 1 10 5LF* ... ADS 0 GTOTLIN(3) 16 5LFG ... BZE 5 XENDL [END OF LISTING 9 5LFM ... LDN 6 GZDATA(2) 9 5LFS ... SMO GNEXTL(3) 8 5LF_ ... LDN 7 1(3) 7 5LG6 ... SMO 4 16 5LG? ... MOVE 6 0 [MOVE IN LINE 7 5LGD ... ADN 4 1 9 5LGK ... ADS 4 GNEXTL(3) 5 5LGQ ... UP 4 5LGX ...[ 7 5LH4 ...[ END OF LISTING 9 5LH9 ...XENDL CALL 7 SCHKBREAK 8 5LHB ... LFBITSET R,2 8 5LHH ... KEEPREP 6,OK 10 5LHN ... CALL 7 SPASSLINES 4 5LHT ...[ 18 5LJ2 ...[ NIPREL WILL FORCE CANTDO IN THIS CASE BY CLEARING FLAG R 9 5LJ7 ... LFBBUS R,2,SRSET 5 5LJ# ... UP 4 5LJF ...[ 14 5LJL ...[ NO ROOM IN GLINES BLOCK -PASS IT TO CPAT 9 5LJR ...XNORM CALL 7 SCHKBREAK 8 5LJY ... KEEPREP 6,OK 9 5LK5 ... LDX 0 FINISH 7 5LK= ... SLL 0 2 8 5LKC ... BPZ 0 XNFIN 10 5LKJ ...[ FINISH NOW - WARN PROGRAM 9 5LKP ... KEEPREP 6,STOP 10 5LKW ...XNFIN CALL 7 SPASSLINES 19 5LL3 ... LFBBS R,2,SRSET [NIPREL FORCING CLOSEDOWN 9 5LL8 ... LDX 0 GZDUMP(2) 8 5LL* ... BPZ 0 XHNT 10 5LLG ...[ CORRUPT OR CHANGED REPLY 9 5LLM ...XBRK CALL 7 SCHKBREAK 9 5LLS ... LDX 6 GZDUMP(2) 8 5LL_ ... ERX 6 GSIGN 17 5LM6 ... CALL 7 SPASSLINES [PASS REPLY TO CPAT 18 5LM? ... LFBBS R,2,SRSET [NIPREL FORCING CLOSEDOWN 5 5LMD ... UP 4 5LMK ...[ 4 5LMQ ...[ 4 5LMX ...) 4 5LNB #END 8 ____ ...56510163000200000000