{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: LISTINIT867)}}
====== LISTINIT867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ALTLEND|ALTLEND]], [[george:macro:BXE|BXE]], [[george:macro:COOR1|COOR1]], [[george:macro:COOR3|COOR3]], [[george:macro:DATECON|DATECON]], [[george:macro:DCA|DCA]], [[george:macro:DISENGPER|DISENGPER]], [[george:macro:DOWN|DOWN]], [[george:macro:EMPTY|EMPTY]], [[george:macro:ENGPER|ENGPER]], [[george:macro:ENRING|ENRING]], [[george:macro:FI|FI]], [[george:macro:FILEMOVE|FILEMOVE]], [[george:macro:FLENME|FLENME]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FREELINK|FREELINK]], [[george:macro:FSHENTRY|FSHENTRY]], [[george:macro:GPERI|GPERI]], [[george:macro:HUNT|HUNT]], [[george:macro:HUNTW|HUNTW]], [[george:macro:IF|IF]], [[george:macro:JBC|JBC]], [[george:macro:JBS|JBS]], [[george:macro:JENG|JENG]], [[george:macro:JNRGROP|JNRGROP]], [[george:macro:JWRONG|JWRONG]], [[george:macro:KEEPREP|KEEPREP]], [[george:macro:LADDP|LADDP]], [[george:macro:LFBITCLR|LFBITCLR]], [[george:macro:LFBITSET|LFBITSET]], [[george:macro:LFEND|LFEND]], [[george:macro:LOCKC|LOCKC]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:ON|ON]], [[george:macro:OUTPERA|OUTPERA]], [[george:macro:POINTACT|POINTACT]], [[george:macro:RESTART|RESTART]], [[george:macro:RIGHT|RIGHT]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETENTRY|SETENTRY]], [[george:macro:THEN|THEN]], [[george:macro:TIMECON|TIMECON]], [[george:macro:TRACEVER|TRACEVER]], [[george:macro:UNLOCK|UNLOCK]], [[george:macro:UP|UP]]
22FL #OPT K0LISTINIT=0
22^= ...#OPT ATPOLTR=0
23YG #LIS K0LISTINIT>K0LISTFILE>K0ALLGEO>K0GREATGEO>K0COMMAND
24D6 #SEG LISTINIT
24XQ 8HLISTINIT
25CB [
25X2 [THIS SEGMENT HAS THE FOLLOWING FUNCTIONS(LINE PRINTERS ONLY)
26BL [
26W= [1.IT OUTPUTS DEBATCHERS AND HEADINGS FOR LISTFILE.
27*W [2.IT OUTPUTS DEBATCHERS AND HEADINGS FOR ONLINE.
27TG [3.IT OUTPUTS TERMINATING DEBATCHERS FOR LISTFILE.
28*6 [4.IT OUTPUTS TERMINATING DEBATCHERS FOR ONLINE.
28SQ [5.IT ACTIVATES A PRINTER AFTER AN ENGAGE BUTTON INTERRUPT.
29#B [6.IT OUTPUTS LINE NUMBER OR FILE EMPTY ERROR MESSAGES
29S2 [HERE IS A LIST OF ENTRY POINTS AND BRANCHES
2=?L [
2=R= SETENTRY LISTINIT,POINT,6
2?5M ... FSHENTRY K20LISTINIT,POINT20,,POINT20
2?D4 ... FSHENTRY K21LISTINIT,POINT21,POINT21,POINT21
2?K? ... FSHENTRY K22LISTINIT,XBFAILED,,XBFAILED
2?MW ... SEGENTRY K8LISTINIT,POINT8
2?QG [***********************************************************************
2#=6 [DATA AREA
2#PQ [HEADINGS USED BY LISTFILE
2*9B [
2*F8 ...SHASH 4H###
2*P2 PRINT +1
2B8L THEAD
2BN= 12HPRODUCED ON
2C7W 12H AT
2CMG SHEAD
2D76 4H#OUT
2DLQ SEGENTRY K40LISTINIT
2F6B 24HPUT BY LISTFILE IN ':
2FL2 ONAT 16H' ON AT
2G5L SDOC 12HDOCUMENT
2GQC RCON 16H#CONTINUATION OF
2GS6 RFOL 28H FOLLOWING RESTART ACTION OF
2GTT RPAGE 8H 'ALL'
2GXJ 8H 'PAGE'
2H32 UNLFON 8H USING
2HB* ...SEMPT 16HSETUP FILE EMPTY
2HPN REVF 24H A COPY OF THIS FILE HA
2HWW 24HS BEEN LOST BY REVERSION
2J46 [
2JHQ [HEADINGS FOR ONLINE OBJECT PROGRAM PERIPHERAL
2K3B [
2KH2 OHEAD
2L2L 28H#OUTPUT ON-LINE BY JOB ':
2LG= [
2L^W XAST 4H****
2MFG PASTZ #72 [TEST WHETHER DEBATCHING
2M^6 [CHARACTER OVERRUN ALPHABET
2NDQ N31 #60000001 [CHAR POS3 +1 FOR TIME IN #LIST
2NYB SETUPBIT #10000000
2PD2 [
2PXL SCOLON #12 [:
2QC= SHRIEK #21 [!
2QF8 [
2QM2 RESTARTBIT #4000 [RESTART TAKING PLACE
2QNY RESTACTN #300000 [RESTART ACTION SPECIFIED
2QQW #200000
2QWW [
2RBG [TABLE OF JUMPS FOR PERI SUBROUTINE
2RW6 [
2S*Q STABLE
2STB ... BRN YAB [INTERRUPT DURING HEADINGS
2T*2 BRN SBRK2 [INTERRUPT DURING TERMINATORS
2TSL BRN YABANL [
2W#= [***********************************************************************
2WRW [SUBROUTINE AREA
2X?G [
2XR6 [THIS SUBROUTINE INITIALISES THE COUNT IN THE DEVICE LIST CONTROL AREA
2Y=Q [ACCORDING TO THE WIDTH OF THE PRINTER.
2YQB SETUPCA
2YR9 ...#SKI ANIP
2YS4 ...(
2YSX ... LDX 0 CPPTR(2)
2YTQ ... BZE 0 (7) [EXIT AT ONCE IF NIP
2YWK ...)
2YXJ LDN 4 0 [SET MODE
2^4Q DCA ,DSA,4,MODE
2^=2 LDCT 0 #600 [B0 AND B1 SET
2^PL DCA ,STO,0,CTSA [IN ADDRESS FOR LP
329= LADDP ,4 [GET POINTER TO APIA
32NW SMO 4
338G LDEX 5 AREPERT
38JB ADN 5 1 [ADD ONE FOR PFCC
3942 #SKI ATPOLTR
39HL TRACEVER 5,INITPWID
3=3= DCA ,STO,5,COUNT [SET UP COUNT
3=GW EXIT 7 0
3?2G [
3?G6 [THIS ROUTINE PERFORMS THE PERI ON THE DEVICE AND CHECKS THE REPLY FOR
3?^Q [DISENGAGED OR INOPERABLE STATES,TAKING APPROPRIATE ACTION IF NECESSARY
3#FB [
3#GY ...#SKI ANIP
3#JG ...(
3#L4 ...[ NEW ENTRY POINT FOR NIP TO OUTUT END OF LISTING
3#ML ...PERI4 STOZ GZDUMP(2) [MARK END OF LISTING
3#P8 ...PERI6 SBX 7 FX1
3#QQ ...PERI5 DOWN LISTPREP,4 [DO PERI
3#S# ... ADX 7 FX1
3#TW ... EXIT 7 0
3#XD ...)
3#^2 PERI
3*DL LDN 0 #41
3*Y= PERI2
3BCW STO 0 GZDATA(2)
3BXG PERI3
3CC6 SBX 7 FX1
3CDH ...#SKI ANIP
3CFY ...(
3CH* ...[ IF NIP GO DOWN TO LISTPREP TO DO PERI
3CJQ ... LDX 0 CPPTR(2)
3CL7 ... BNZ 0 RPTPERI [NOT NIP
3CMJ ... LDEX 0 JSOURCE3(2) [NO OF PRINT POSITIONS
3CN^ ... ADN 0 1 [FOR PFCC
3CQB ... STO 0 GZDUMP(2) [CHAR COUNT OF TRANSFER
3CRR ... BRN PERI5 [GO TO LISTPREP
3CT8 ...)
3CWQ RPTPERI
3DBB LDX 0 FINISH
3DW2 SLL 0 2
3F*L BNG 0 SFINI [J IF FINISH NOW
3FT= ERX 0 FINISH
3G#W SLL 0 1
3GSG BPZ 0 NFIN [J IF NOT FINISH
3H#6 SFINI
3HRQ TXU 5 PRINT(1)
3J?B BCS SBRKIN [J IF NOT TERMINATORS
3JR2 NFIN
3K=L LOCKC FX2,SLOCKC [LOCK FOR EXEC
3KQ= LDN 4 GZDATA(2)
3L9W DCA ,ADS,4,CTSA [BUFFER ADDRESS INTO CONTROL AREA
3LPG GPERI ,2
3M96 COOR1
3MNQ DCA ,SBS,4,CTSA
3N8B UNLOCK 2
3NN2 LDCT 4 #50
3P7L ANDX 4 CPRW1(2)
3PM= BNZ 4 NOTENG [J IF ERROR/EXCEPTION CONDITION
3Q6W LDCT 4 #100
3QLG ANDX 4 CPRW1(2)
3R66 BNZ 4 PLOW [J IF PAPER LOW
3RKQ ADX 7 FX1
3S5B EXIT 7 0
3S5Q ...#UNS FLLP4B
3S66 ...(
3S6G ...[
3S6W ...[ THIS SUBROUTINE SENDS SOFT FORMAT LOOP TO LP IF NECESSARY
3S7= ...[
3S7L ...SFLOOP
3S82 ... SBX 6 FX1
3S8B ... MHUNTW 3,ADATA,FORMLOOP
3S8Q ...#UNS FLLP4BC
3S96 ... TRACEVER 3,LI1
3S9G ... IF 3,PZ [ IF THERE IS A FORMLOOP BLOCK
3S9W ... THEN [ THEN ITS AN LP4B PRINTER!
3S== ... LDN 4 #30 [ SO SEND A FORMLOOP WITH MODE #30
3S=L ...#UNS FLLP4BC
3S?2 ... LDN 4 0
3S?B ... DCA ,DSA,4,MODE
3S?Q ... LDX 4 FORMCHAR(3)
3S#6 ...#UNS FLLP4BC
3S#G ... TRACEVER 4,LICOUNT
3S#W ... DCA ,STO,4,COUNT
3SC6 ...#UNS FLLP4BC
3SCG ... TRACEVER 2,LI2PERI?
3SCW ... LDX 2 FX2
3SD6 ... LDN 4 FORMDATA(3)
3SDB ...[ PERI FROM ADATA/FORMLOOP SINCE LENGTH CAN BE GREATER THAN ACTLF BUFFER
3SDL ... DCA ,STO,4,CTSA [ BUFFER IS ON WORD BOUNDARY
3SF2 ... GPERI ,2,NC
3SFB ... CALL 7 SETUPCA [ NO NEED TO COORDINATE HERE
3SFQ ... FI
3SG6 ... LDX 1 FX1
3SGG ... ADX 6 FX1
3SGW ... EXIT 6 0
3SH= ...
3SHL ...)
3SK2 [
3T4L [THIS SUBROUTINE PRINTS A LINE OF ASTERISKS WITH UPWARD ARROWS AT ENDS
3TJ= [
3W3W SHAM
3WHG SBX 6 FX1
3X36 STO 5 ACOMMUNE7(2) [PRESERVE EXIT SWITCH
3XGQ LDX 4 XAST(1)
3Y2B CALL 0 SPFL2 [FILL BUFFER WITH ASTERISKS
3YG2 CALL 7 TEST48 [48 CHAR REPERTOIRE?
3Y^L BNG 0 TO48CHARBD [J IF 48 CHAR REPERTOIRE
3^F= LDN 0 #76
3^YW TOSHAM
42DG #SKI ATPOLTR
42Y6 TRACEVER 0,ASTSLASH
43CQ DCH 0 GZDATA+1(2) [UPWARD POINTING ARROW AT START
43FF ...#SKI ANIP
43H8 ...(
43JX ...[ PRINT WIDTH KEPT IN JSOURCE3
43LL ... LDEX 1 JSOURCE3(2)
43N* ... ADN 1 1
43Q4 ...)
43RR ...#UNS ANIP
43TG ...#SKI
43XB DCA ,LDX,1,COUNT [GET PRINT WIDTH
44C2 ADN 1 2
44WL SRC 1 2
45B= SMO FX2
45TW DCH 0 GZDATA(1) [UPWARD POINTING ARROW AT END
46*G LDX 1 FX1
46T6 LDN 0 #40
472# ...#UNS FLLP4BC
477G ... LDN 0 #41
47#Q LDX 5 ACOMMUNE7(2) [RETURN SWITCH
47SB CALL 7 PERI2 [PRINT ON CURRENT LINE
48#2 ADX 6 FX1
48RL EXIT 6 0
49?= TO48CHARBD
49QW LDN 0 #37 [SLASH TO BOUND ASTERISKS FOR 48 CHAR
4==G BRN TOSHAM
4=Q6 [
4?9Q [THIS SUBROUTINE UPDATES THE DEBATCHING CHARACTER OF THE PRINTER
4?PB [
4#92 SETUPALPHAS
4#?K ...#UNS ANIP
4#B8 ... LDCH 0 JSOURCE3(2) [DEBATCHING CHAR IF NIP
4#DR ...#UNS ANIP
4#HB ...#SKI
4#K^ ...(
4#NL LDN 3 0
4*8= SMO CPPTR(2)
4*MW LDCH 0 K52+4(3)
4*XN ...)
4B7G TXU 0 PASTZ(1) [WAS LAST CHARACTER Z?
4BM6 BCS NOTZ [J IF NOT
4C6Q LDN 0 #40 [ELSE RESTART ALPHABET
4CLB NOTZ ADN 0 1 [UPDATE CHARACTER
4CMR ...#UNS ANIP
4CP8 ...(
4CQK ... DCH 0 JSOURCE3(2) [DEBATCHING CHAR IF NIP
4CS2 ... LDX 3 CPPTR(2)
4CTC ... BZE 3 (7) [J IF NIP ACTLF
4CWS ... DCH 0 K52+4(3) [STORE IN DEVICE LIST TOO
4CY9 ...)
4C^L ...#UNS ANIP
4D33 ...#SKI
4D4D ...(
4D62 SMO CPPTR(2) [IN
4DKL DCH 0 K52+4(3) [DEVICE LIST
4DTD ...)
4F5= EXIT 7 0
4FJW [
4G4G [THIS SUBROUTINE FILLS THE ACTLF PRINT BUFFER WITH THE CURRENT
4GJ6 [DEBATCHING CHARACTER.
4H3Q [
4HHB SETUPBUFFER
4HK^ ...#UNS ANIP
4HNJ ... LDCH 4 JSOURCE3(2)
4HR7 ...#UNS ANIP
4HTQ ...#SKI
4HY* ...(
4J32 LDN 3 0
4JGL SMO CPPTR(2)
4K2= LDCH 4 K52+4(3) [GET CHARACTER
4K=4 ...)
4KFW LDX 5 4 [AND INSERT
4K^G LDN 6 3 [INTO
4LF6 W SLL 4 6 [EACH
4LYQ ADX 4 5 [CHARACTER POSITION
4MDB BCT 6 W [OF X4
4MY2 CALL 0 SPFL2 [FILL BUFFER WITH CHARACTER
4NCL EXIT 7 0
4NX= [
4PBW [THIS SUBROUTINE SPACEFILLS THE FIRST 15 WORDS OF THE ACTLF PRINT BUFFER
4PWG [
4QB6 SPACEBUFFER
4QTQ LDX 4 ACES [ACES HOLDS SPACES
4R*B STO 4 GZDATA+1(2)
4RT2 LDN 3 GZDATA+1(2)
4S#L LDN 4 GZDATA+2(2)
4SS= MOVE 3 14 [SPACEFILL
4T?W EXIT 7 0
4TRG [
4W?6 [ THIS SUBROUTINE ACCOMODATES THE FILENME MACRO
4WQQ [ NOTE THAT X3 IS THE LINK ACCUMULATOR
4X=B [
4XQ2 SFLENME
4Y9L FLENME GUSER,GJOBN,2
4YP= EXIT 3 0
4^8W [
4^NG [ THIS SUBROUTINE SPACEFILLS THE ACTLF PRINT BUFFER
5286 [
52MQ SPFL
537B LDX 4 ACES
53M2 SPFL2 [ENTER HERE IF OTHER CHARACTER WANTED
546L LDX 1 ALOGLEN(2)
54L= SBN 1 GZDATA-A1+1 [GET BUFFER LENGTH
555W STO 4 GZDATA+1(2)
55KG LDN 3 GZDATA+1(2)
5656 LDN 4 GZDATA+2(2)
56JQ MOVE 3 0(1) [FILL BUFFER
574B LDX 1 FX1
57J2 EXIT 0 0
583L [
58H= [
592W [THIS ROUTINE ABANDONS AN OPERATOR TERMINATED LISTING,FREEING BLOCKS
59GG TIDY
5=26 HUNTW 1,ADATA,CREADL
5=FQ BNG 1 TIDY1
5=^B FREECORE 1
5?F2 TIDY1
5?YL HUNTW 1,FILE,ENT
5#D= BNG 1 TIDY2
5#XW FREECORE 1
5*CG TIDY2
5*X6 ... HUNT 1,GOUT,INFOLIST
5BBQ BNG 1 TIDY4
5BWB FREECORE 1
5CB2 TIDY4
5CTL ... HUNT 1,GOUT,INFOSET
5D*= BNG 1 TIDY5
5DSW FREECORE 1
5F#G TIDY5
5FS6 EXIT 3 0
5G?Q [
5GRB [FOR USE BY LOCKC ROUTINE
5H?2 SLOCKC
5HQL LDX 2 FX2
5J== EXIT 1 0
5JPW [
5MML TEST48
5N7= [THIS ROUTINE SETS X0 NEGATIVE IF 48 CHARACTER REPERTOIRE IS IN USE
5N8M ...#UNS ANIP
5N=4 ...(
5N?F ...[ REPERTOIRE KEPT IN JSOURCE3 ONCE NIP IMPLEMENTED
5N#W ... LDN 0 #7000
5NB? ... ANDX 0 JSOURCE3(2)
5NCN ... SLL 0 12
5NF5 ...)
5NGG ...#UNS ANIP
5NHX ...#SKI
5NK# ...(
5NQ# ... LADDP ,0
5NX# ... SMO 0
5P4# ... LDX 0 AREPERT
5P9# ... SLL 0 13
5PB# ...)
5PL6 EXIT 7 0
5PLG ...#
5Q5M ...#UNS ANIP
5Q68 ...(
5Q6P ...[
5Q7= ...[***********************************************************************
5Q7R ...[
5Q8# ...SETUPNIP
5Q8T ...[
5Q9B ...[***********************************************************************
5Q9X ...[
5Q=D ...[ TO SET UP REPERTOIRE INFO IN JSOURCE3 FOR COMPATIBILITY WITH NIP ACTLF
5Q=^ ...[ CALLED ON X7
5Q?G ...[
5Q#3 ... LDX 2 FX2
5Q#F ... LADDP ,4
5Q#X ... SMO 4
5Q** ... LDX 0 AREPERT
5Q*R ... SLL 0 1
5QB9 ... ANDN 0 #6000
5QBN ... STO 0 JSOURCE3(2) [STORE 48,64 OR 96 CHAR REPERT
5QCQ ... SMO 4
5QD? ... LDEX 0 AREPERT
5QDS ... DEX 0 JSOURCE3(2) [STORE PRINT WIDTH
5QF* ... LDX 3 CPPTR(2)
5QFW ... LDCH 0 K52+4(3)
5QGC ... DCH 0 JSOURCE3(2) [STORE DEBATCHING CHAR
5QGY ... EXIT 7 0
5QHF ...[
5QJ2 ...)
5QJH ...[***********************************************************************
5QKB [MAIN BODY OF SEGMENT
5R52 [***********************************************************************
5RJL POINT1
5S4= [THIS ENTRY POINT OUTPUTS DEBATCHERS AND HEADINGS FOR LISTFILE
5SHW [***********************************************************************
5T3G POINT2
5TH6 [THIS ENTRY POINT OUTPUTS DEBATCHERS AND HEADINGS FOR ONLINE
5W2Q [
5WGB [
5WQ8 STO 2 AWORK1(2) [ NOT EB ENTRY
5WR# ...REG1 JNRGROP ,REG3 [JUMP IF REGROPE BIT NOT SET
5WSD ... JENG ,REG2 [JUMP IF ENGAGED
5WTJ ... ENGPER YAB,,YAB [CD &BRKIN EXIT TO YAB
5WWN ...REG2 COOR3 #62
5WXS ... BRN REG1
5WYY ...REG3 CALL 7 SETUPCA [SET UP CONTROL AREA
5X29 ...#UNS ANIP
5X2D ... CALL 7 SETUPNIP [INITIALISE JSOURCE3
5X2P ...#UNS G3SIGNET
5X3D ...(
5X47 ... LDX 0 CPPTR(2)
5X4W ... IF 0,E,ASIGNETPTR [ IF THIS IS A SIGNET LISTING
5X5K ... THEN [ THEN FIND ITS DESTINATION
5X6# ... MHUNTW 3,APERI,APROPNOS [ FROM THE APROPNOS BLOCK
5X73 ... LDX 5 ADTEMP(3)
5X7Q ... SMO 5
5X8F ... LDX 0 FPTR(3)
5X98 ... STO 0 GZDATA+2(2)
5X9X ... LDX 0 SHASH(1)
5X=L ... STO 0 GZDATA+1(2)
5X?* ... LDN 5 9
5X#4 ... DCA ,STO,5,COUNT
5X#R ... DISENGPER [ WE MUST DISENGAGE BEFORE
5X*G ... LDN 5 0 [ ISSUING THE PERI
5XB9 ... CALL 7 PERI
5XBY ... CALL 7 SETUPCA [ AND RESET THE CONTROL AREA
5XCM ... FI
5XDB ...)
5XDR ...#UNS FLLP4B
5XF8 ... CALL 6 SFLOOP
5XF# ...#UNS ANIP
5XFD ...XNLP [NIP ACTLF JOINS HERE
5XFL LDN 5 0 [START OF HEADINGS
5X^= STOZ GZDATA(2)
5YDW LDN 6 3
5YYG NULLS CALL 7 PERI3
5^D6 BCT 6 NULLS
5^MY SEGENTRY K80LISTINIT
5^XQ LDN 0 #11
62CB CALL 7 PERI2 [THROW TO HEAD OF FORM
62X2 CALL 6 SHAM [PRINT LINE OF ASTERISKS
63BL [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
63W= [PART OF SPECIAL DEBATCHING AID
64*W [S71831A
64N? ... SEGENTRY K50LISTINIT
652N ... BRN NODEBS
65*6 [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
65SQ LDN 0 #01
66#B CALL 7 PERI2 [THROW ONE LINE
66S2 CALL 7 SETUPALPHAS [UPDATE DEBATCHING CHARACTER
67?L CALL 7 SETUPBUFFER [AND FILL BUFFER
67HD LDN 5 0
67R= CALL 7 PERI [PRINT FIRST LINE
68=W CALL 7 SPACEBUFFER [SPACEFILL FIRST 15 BUFFER WORDS
68QG CALL 7 PERI [
69=6 CALL 7 PERI [
69PQ LDN 7 GZDATA+4(2)
6=9B ... MHUNTW 2,GOUT,INFO
6=P2 CALL 3 SFLENME [:USERNAME.JOBNAME INTO BUFFER
6?8L LDX 1 FX1 [RESET
6?N= LDN 5 0 [OVERWRITTEN
6#7W LDX 2 FX2 [ACCUMULATORS
6#MG LDX 0 ACES [WIPE OUT
6*76 STO 0 GZDATA+4(2) [CHARACTER COUNT
6*FH ... SEGENTRY K57LISTINIT
6*RY ... BRN NOLFPRINT
6B6B DOWN LISTEXCP,1 [SPACEFILL REQUIRED CHARACTRS
6BL2 SEGENTRY K67LISTINIT
6C5L NOLFPRINT
6CK= [
6D4W CALL 7 TEST48
6DJG #SKI ATPOLTR
6F46 TRACEVER 0,48ORNOT
6FHQ BPZ 0 NOT48A [J IF NOT 48 CHAR REPERTOIRE
6G3B LDN 0 #20 [ELSE SPACEFILL
6GH2 DCH 0 GZDATA+5(2) [COLON
6H2L NOT48A
6HG= CALL 7 PERI [PRINT HIGHLIGHTING LINE
6H^W CALL 7 SPACEBUFFER [SPACEFILL FIRST 15 WORDS AGAIN
6JFG CALL 7 PERI
6J^6 CALL 7 PERI
6KDQ CALL 7 SETUPBUFFER
6KNJ LDN 5 0
6KYB CALL 7 PERI
6LD2 [
6LXL [DEBATCHERS HAVE BEEN OUTPUT-NOW FOR HEADINGS
6MC= [FIRST HEADING-'PRODUCED ON ETC'
6MWW NODEBS
6NBG SEGENTRY K60LISTINIT
6NW6 CALL 0 SPFL [SPACEFILL BUFFER
6P*Q ... MHUNTW 3,GOUT,INFO
6PTB LDX 4 GMODE(3)
6Q*2 BNG 4 TONLINE [J IF ONLINE
6QSL MHUNTW 3,ADATA,CREADL [FIND BLOCK WITH'#LISTING ETC'
6R#= LDX 1 A1+FRH(3)
6RRW LDX 5 1 [LOAD NO OF CHARS
6S?G ANDN 5 3
6SR6 ERN 5 3
6T=Q ADN 5 1 [X5 IS COMPLEMENT WRT 4
6TQB SRC 1 2 [SPACEFILL
6W=2 LDN 0 #20 [BLOCK
6WPL XSP SMO 3 [BUFFER
6X9= DCH 0 CPDATA(1) [BEYOND
6XNW BCHX 1 £ [ENTRANT
6Y8G BCT 5 XSP [NAME
6YN6 LDN 5 CPDATA(3)
6^7Q LDN 6 GZDATA+1(2)
6^MB MOVE 5 0(1) [MOVE IN #LISTING OF ENTRANT NAME
7272 SMO FX1
72LL LDN 5 THEAD
736= ADX 6 1
73KW MOVE 5 6 [MOVE'PRODUCED ETC'TO BUFFER
745G ADN 6 3 [POSITION AFTER 'ON'
74K6 SBX 6 FX2
754Q MHUNTW 3,FILE,ENT
75JB LDX 4 EWRITDAY(3) [GET DATA AND TIME FILE LAST WRITTEN
7642 LDX 5 EWRITTIME(3) [FOR HEADING
773= DATECON 4 [CONVERT DATE
77GW LDX 1 ACOMMUNE1(2) [GET PART OF CONVERTED DATE
782G ADX 6 FX2
78G6 SMO 6
78^Q STO 1 0 [STORE BEFORE'AT'
79FB ADN 6 1
79^2 LDX 1 ACOMMUNE2(2) [GET REST OF CONVERTED DATE
7=DL SMO 6
7=Y= STO 1 0 [STORE BEFORE'AT'
7?CW SBX 6 FX2
7?XG TIMECON 5 [CONVERT TIME
7#C6 ADX 6 FX2
7#WQ ADX 6 N31(1) [ADD 1.3
7*BB LDN 5 ACOMMUNE1(2)
7*W2 MVCH 5 8 [STORE AFTER'AT'
7B*L [
7BT= CALL 7 TEST48
7C#W BPZ 0 NOT48B [J IF NOT 48 CHAR REPERTOIRE
7CSG LDN 0 #32 [ELSE REPLACE HASH WITH
7D#6 DCH 0 GZDATA+1(2) [ASTERISK
7DRQ LDN 0 #20 [AND REPLACE COLON WITH
7F?B DCH 0 GZDATA+4(2) [SPACE
7FR2 NOT48B
7G=L LDN 0 #42
7GQ= LDN 5 0
7H9W CALL 7 PERI2
7HPG [
7J96 [NOW SET UP AND PRINT SECOND HEADING,IE 'OUTPUT BY' ETC
7JNQ [
7K8B CALL 0 SPFL [SPACEFILL BUFFER
7KN2 LDX 3 FX2 [PRESERVE POINTER
7L7L ... MHUNTW 2,GOUT,INFO
7LM= LDN 4 SHEAD(1) [NEXT HEADING
7M6W TONLINE2
7MLG LDN 5 GZDATA+1(3)
7N66 MOVE 4 6
7NKQ LDN 7 GZDATA+6(3)
7P5B CALL 3 SFLENME
7PK2 LDX 1 FX1
7Q4L LDX 4 GMODE(2)
7QJ= BNG 4 ZON [J IF ONLINE
7R3W LDX 4 SHEAD+5(1)
7RHG BRN XBAC
7S36 ZON
7SGQ LDX 4 OHEAD+5(1)
7T2B XBAC SMO FX2
7TG2 STO 4 GZDATA+6
7T^L LDN 6 ONAT(1) [STORE REST OF HEADING
7WF= MVCH 6 16
7WYW LDX 4 CLEANCT [GET TIME
7XDG SBX 7 FX2
7XY6 TIMECON 4 [CONVERT TIME
7YCQ ADX 7 FX2
7YXB LDN 6 ACOMMUNE1(2) [PUT TIME IN HEADING
7^C2 MVCH 6 8
7^WL SBX 7 FX2
82B= DATECON EDATE [GET DATE
82TW ADX 7 FX2
838= STO 7 ACOMMUNE4(2) [RETAIN BUFFER POINTER
83*G LDN 6 ACOMMUNE1(2) [PUT DATE IN HEADING
83T6 SLC 7 2
84#Q SBN 7 19
84SB SRC 7 2
85#2 MVCH 6 7 [MOVE TO BUFFER
85BP LDN 6 UNLFON(1)
85CL LDX 7 ACOMMUNE4(2)
85DH MVCH 6 8 [MOVE IN 'USING'
85FD LDN 5 JSOURCE1(2) [MOVE JSOURCE WORDS TO ACOM 1 AND 2
85G* LDN 6 ACOMMUNE1(2)
85H= MOVE 5 2
85J7 SBX 7 FX2
85K4 OUTPERA [GET UNIT NO. IN ACOM2
85K^ ADX 7 FX2
85LW LDN 6 ACOMMUNE2(2) [AND NO. OF CH. IN 'UNIT NO' IN AC1
85MR LDX 5 ACOMMUNE1(2)
85NN SMO 5
85PK MVCH 6 0 [MOVE IN UNIT NO.
85RL LDN 5 0 [DURING HEADINGS
86?= [
86QW CALL 7 TEST48
87=G BPZ 0 NOT48C [J IF NOT 48 CHAR REPERTOIRE
87Q6 LDN 0 #32 [ELSE REPLACE HASH WITH
889Q DCH 0 GZDATA+1(2) [ASTERISK
88PB LDN 0 #20 [AND REPLACE COLON WITH
8992 DCH 0 GZDATA+7(2) [SPACE
89NL NOT48C
8=8= LDN 0 #42 [NOT SET UP IF ONLINE
8=MW CALL 7 PERI2 [OUTPUT HEADING
8?7G [
8?M6 [OUTPUT THIRD HEADING,IE'DOCUMENT' OR 'CONTINUATION' ETC
8#6Q [
8#LB CALL 0 SPFL [SPACEFILL BUFFER
8#LC HUNTW 3,FILE,ENT
8#LD BNG 3 NOREVFIL1 [ J IF ONLINE
8#LF JBC NOREVFIL,3,BELOSE [JUMP IF FILE NOT REVERTED BY CLOSE
8#LG FREECORE 3
8#LH LDN 4 REVF(1) [PICK UP COPY LOST MESSAGE
8#LJ LDN 5 GZDATA+1(2)
8#LK MOVE 4 12 [AND PUT IT IN BUFFER
8#LL LDN 0 #42
8#LM LDN 5 0
8#LN CALL 7 PERI2
8#LP CALL 0 SPFL
8#LQ BRN NOREVFIL1
8#LR NOREVFIL
8#LS FREECORE 3
8#LT NOREVFIL1
8#M? ... MHUNTW 3,GOUT,INFO [CONTINUATION CODE!!!!
8#MQ [START OF CONTINUATION CODE
8#N5 LDX 0 RESTARTBIT(1)
8#ND ANDX 0 GMODE(3)
8#NR BZE 0 NOTRESTA [ J IF NOT RESTART
8#P6 LDN 4 RCON(1)
8#PF LDN 5 GZDATA+1(2)
8#PS MOVE 4 4 [MOVE 'CONTINUATION' INTO BUFFER
8#Q7 MHUNTW 2,ADATA,CREADL
8#QG LDX 4 A1+FRH(2) [NO. OF CH. IN FILENAME+12
8#QT LDCT 5 #600
8#R8 ADN 5 CPDATA+2(2)
8#RH LDX 2 FX2
8#RW LDN 6 GZDATA+5(2)
8#S9 SBN 4 11 [REMOVE #LISTING OF
8#SJ SMO 4
8#SX MVCH 5 0 [MOVE FILENAME IN BUFFER
8#T= LDX 0 GMODE(3)
8#TK ANDX 0 RESTACTN(1)
8#TY BZE 0 NORESACT [ J IF NO RESTART ACTION SPEC.
8#W? LDN 5 RFOL(1)
8#WL ADN 6 1
8#W^ [X6 STILL CONTAINS BUFFER POINTER
8#X# MOVE 5 7 [MOVE 'FOLLOWING' ETC IN BUFFER
8#XM ANDX 0 RESTACTN+1(1)
8#Y2 ADN 6 7 [RESET BUFFER POINTER
8#Y* SRL 0 15 [ J IF ALL SPECIFIED
8#YN SMO 0
8#^3 LDN 5 RPAGE(1)
8#^B MOVE 5 2 [MOVE IN 'PAGE OR 'ALL'
8#^P NORESACT
8#^Q ... CALL 7 TEST48 [J. IF NOT 48 CHAR REP
8#^R ... BPZ 0 NOT48E [ELSE REPLACE HASH WITH
8#^S ... LDN 0 #32 [ASTERISK
8#^T ... DCH 0 GZDATA+1(2) [AND REPLACE COLON WITH
8#^W ... LDN 0 #20 [SPACE
8#^X ... DCH 0 GZDATA+5(2)
8#^Y ...NOT48E
8*24 LDN 0 #42
8*2C LDN 5 0
8*2Q CALL 7 PERI2
8*35 CALL 0 SPFL
8*3D NOTRESTA
8*3R [END OF CONTINUATION CODE!!!
8*46 [OUTPUT 'DOCUMENT ETC.
8*54 ... MHUNTW 3,GOUT,INFO
8*62 LDN 4 SDOC(1)
8*KL LDN 5 GZDATA+1(2)
8B5= MOVE 4 3 [MOVE IN 'DOCUMENT'
8C4G LDEX 4 GSUSE(3)
8CJ6 ADN 4 3
8D3Q SRL 4 2
8DHB ADN 4 GZDATA-A1+4
8F32 TXU 4 ALOGLEN(2) [TEST AND J IF BUFFER LARGE ENOUGH
8FGL BCC RIGHT
8G2= TXL 4 ALOGLEN(2)
8GFW BCS RIGHT
8G^G LDX 6 ALOGLEN(2) [ELSE WE MOVE AS MUCH AS POSSIBLE
8HF6 SBN 6 GZDATA-A1+4
8HYQ SLL 6 2
8JDB BRN RIG
8JY2 RIGHT
8KCL LDEX 6 GSUSE(3)
8KX= RIG
8LBW LDN 4 GHEAD(3) [COPY ACROSS USER'S HEADER
8LWG TAG2 LDN 5 GZDATA+4(2)
8MB6 SMO 6
8MTQ MVCH 4 0
8N*B LDN 5 0
8NT2 [
8P#L CALL 7 TEST48 [IS IT 48 CHAR REPERTOIRE?
8PS= BPZ 0 NOT48D [J IF NOT 48 CHAR REPERTOIRE
8Q?W LDCH 0 GZDATA+4(2)
8QRG TXU 0 SCOLON(1) [IS IT A COLON?
8R?6 BCS NOTCOLON [IF NOT JUMP
8RQQ LDN 0 #20 [ELSE REPLACE BY
8S=B DCH 0 GZDATA+4(2) [SPACE
8SQ2 BRN NOT48D
8T9L NOTCOLON
8TP= TXU 0 SHRIEK(1) [IS IT A !
8W8W BCS NOT48D [IF NOT,JUMP
8WNG LDN 0 #27 [ELSE REPLACE WITH
8X86 DCH 0 GZDATA+4(2) [APOSTROPHE
8XMQ CALL 7 PERI3
8Y7B CALL 0 SPFL [SPACEFILL BUFFER
8YM2 LDN 0 #36 [NOW OVERPRINT
8^6L DCH 0 GZDATA+4(2) [WITH POINT
8^L= LDN 0 #40
925W CALL 7 PERI2
92KG BRN NOMORE
9356 NOT48D
93JQ CALL 7 PERI3 [PRINT THIRD HEADING
944B NOMORE
94J2 LDN 0 #02
953L CALL 7 PERI2 [THROW TWO LINES WITHOUT PRINTING
95H= HUNTW 1,ADATA,CREADL
962W BNG 1 NFR [THERE ISN'T ONE IF ONLINE
96GG FREECORE 1
9726 NFR
97#H ... MHUNTW 3,GOUT,INFO
97LY ... JBS XFRTOERR,3,BLFFRTOER [ J IF ERROR FOUND
97^B LDX 4 GMODE(3)
98F2 SMO FX1
98YL LDX 5 SETUPBIT
99D= ANDX 5 4
99XW BNZ 5 XCROSS [J IF THERE IS A SETUP FILE
9=CG BPZ 4 XCROSS [J IF NOT ONLINE
9=X6 ...XFRTOEXIT
9?BQ LFEND
9?WB XCROSS
9#B2 ACROSS LISTPREP,1
9#TL [
9**= [
9*SW [
9B#G [***********************************************************************
9BS6 POINT3
9C?Q [THIS ENTRY POINT OUTPUTS THE TERMINATING DEBATCHERS FOR LISTFILE
9CRB STO 2 AWORK1(2)
9D?2 BRN ZLFTERMS
9DQL [***********************************************************************
9F== POINT4
9FPW [THIS ENTRY POINT OUTPUTS THE TERMINATING DEBATCHERS FOR ONLINE
9G9G NGS 2 AWORK1(2)
9G?9 ...#UNS ANIP
9G#Y ... CALL 7 SETUPNIP
9GP6 ZLFTERMS
9GRP ...#UNS ANIP
9GW# ...(
9GYX ...[ IF NIP CANNOT USE MODE WORD TO TELL IF ACTLF EXTENDED
9H3G ... LDX 2 FX2
9H65 ... LDX 0 ALOGLEN(2)
9H8N ... SBN 0 120
9H?? ... LDX 7 CPPTR(2)
9H*W ... BNZ 7 NOTM4
9HDF ... SBN 0 70
9HH4 ... BNG 0 NOTM4
9HKM ... ALTLEND FX2,187
9HN= ... BRN NOTM4
9HQT ...NOTNIP1
9HTD ...)
9HY3 ...#UNS ANIP
9J2L ...#SKI
9J59 ...(
9J82 DCA ,LDEX,0,MODE
9JML BZE 0 NOTM4 [J IF NOT MODE 4
9JXD ...)
9K7= ALTLEND FX2,100
9LL6 NOTM4
9MKB CALL 7 SETUPCA [SET UP CONTROL AREA
9N52 LDN 5 1
9N6? ...#UNS ANIP
9N7J ...(
9N8T ...[ IF NIP OUTPUT REPLY CHANGED BEFORE TERMINATORS
9N=6 ... LDX 0 CPPTR(2)
9N?C ... BNZ 0 NOTNP
9N#N ... KEEPREP 0,CHANGED
9N*^ ... ORX 0 GSIGN
9NC= ... STO 0 GZDUMP(2)
9NDH ... CALL 7 PERI6
9NFS ...NOTNP
9NH5 ...)
9NJL [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9P4= [SPECIAL TO THROW THOF BEFORE DEBATCHERS
9PHW [S71102A
9Q3G [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9QH6 [S71831B
9QTH ... SEGENTRY K52LISTINIT
9R7Y ... BRN NOT
9RGB [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9S22 [SPECIAL DEBATCHERS
9SFL LDN 6 3
9S^= STOZ GZDATA(2)
9TDW NULL2
9TYG CALL 7 PERI3
9WD6 BCT 6 NULL2
9WXQ [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9XCB NOT
9XX2 SEGENTRY K62LISTINIT
9YBL LDN 0 #02
9YLD ... SEGENTRY K30LISTINIT
9YW= ... BRN SPER
9^64 SEGENTRY K81LISTINIT
9^*W LDN 0 #11
9^TG SPER
=2*6 SEGENTRY K35LISTINIT
=2SQ CALL 7 PERI2 [THROW THOF
=3#B [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
=3S2 [SPECIAL DEBATCHERS
=4?L [S71831C
=4L3 ... SEGENTRY K54LISTINIT
=4YD ... BRN SHAMP
=5=W CALL 7 SETUPBUFFER [FILL BUFFER WITH CURRENT CHARACTER
=5QG LDN 5 1
=6=6 LDN 0 #40
=6PQ CALL 7 PERI2 [PRINT FIRST LINE
=79B LDN 6 6
=7P2 REPT CALL 7 PERI [PRINT OTHER 6 LINES
=88L BCT 6 REPT
=8N= SEB LDN 0 #02
=97W CALL 7 PERI2 [THROW TWO LINES
=9MG SHAMP
==76 SEGENTRY K64LISTINIT
==LQ [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
=?6B CALL 6 SHAM [PRINT LINE OF * WITH ^ AT EACH END
=?L2 SEGENTRY K18LISTINIT
=#5L NULL
=#K= NULL
=#T4 SEGENTRY K82LISTINIT
=*4W LDN 0 #11
=*JG LDX 7 AWORK1(2)
=B46 BZE 7 SX1
=BHQ SEGENTRY K70LISTINIT
=C3B NULL
=CH2 SEGENTRY K71LISTINIT
=CQS SX1
=D2L CALL 7 PERI2 [THROW THOF
=D43 ...#UNS ANIP
=D5D ...(
=D6T ...[ IF NIP ACTLF MUST OUTPUT END OF LISTING
=D8= ...[ WILL NOT RETURN UNLESS A NIPENDLF OR NIPREL MACRO IS ISSUED
=D9M ... LDX 0 CPPTR(2)
=D?4 ... BNZ 0 XNL
=D#F ... CALL 7 PERI4
=D*W ... BRN SBRK3
=DC? ...XNL STOZ JSOURCE3(2) [NOT NIP - CLEAR OUT REPERTOIRE INFO
=DDN ...)
=DG= SBRK2
=DHS ...#UNS G3SIGNET
=DKB ...(
=DLY ... LDX 0 CPPTR(2)
=DNG ... IF 0,E,ASIGNETPTR
=DQ4 ... THEN
=DRL ... DISENGPER
=DT8 ... FI
=DWQ ...SIGNETKICK
=DY# ...)
=F8X ...SBRK3 LDX 0 AWORK1(2)
=FFG BZE 0 TIDYPER [J IF EBI OR OL TERMINATORS
=F^6 BNG 0 TIDYPER
=G6# ... SBN 0 1
=G?G ... BZE 0 XFRTOEXIT [ J IF FROM/TO ERROR
=GDQ UP
=GYB TIDYPER
=HD2 SEGENTRY K19LISTINIT
=HXL LDX 0 FINISH
=JC= SLL 0 1
=JWW BPZ 0 NFINISH
=KBG ACROSS LISTNEXT,6
=KW6 NFINISH
=L?6 ...#
=L?Y ...POINT20
=L#Q ...#
=L*Q LFBITSET F,2 [ACTLF
=LTB LDN 1 JOBRING(2) [CAN
=M*2 POINTACT OUT,2 [BE
=MSL ADN 2 JOBRING [CONSIDERED
=N#= ENRING 1,2 [FOR
=NRW LFEND EB [LISTING
=P?G [
=PR6 [***********************************************************************
=Q=Q POINT5
=QQB [THIS ENTRY POINT IS FROM ENGAGE AFTER EB INTERRUPT
=QRJ ...#
=R8L ...#
=R=2 STOZ AWORK1(2)
=R#K ...#UNS G3SIGNET
=RC8 ...(
=RFR ... LDX 0 CPPTR(2)
=RJB ... BXE 0 ASIGNETPTR,SIGNETKICK
=RL^ ...)
=RPJ ...REG4 JNRGROP ,REG6
=RS7 ... JENG ,REG5
=RWQ ... BRN TIDYPER
=R^* ...REG5 COOR3 #62
=S3Y ... BRN REG4
=S6H ...REG6 CALL 7 SETUPCA [SET UP CONTROL AREA
=S9= LDN 5 1 [TERMINATORS
=SF4 ... JWRONG ,TIDYPER [J. DEVICE HAS BEEN WRONGED.
=SNW BRN SEB
=T8G [***********************************************************************
=TN6 POINT6
=W7Q [THIS ENTRY OUTPUTS AN ERROR MESSAGE ON PERIPHERAL INDICATING
=WMB [THAT THE SETUP FILE IS EMPTY
=X72 [
=XLL STO 2 AWORK1(2) [ NOT EB PATH
=^5G CALL 0 SPFL [SPACEFILL BUFFER
=^K6 ... LDX 1 FX1
?24Q LDN 4 SEMPT(1) [LOAD ADDRESS OF EMPTY MESSAGE
?2JB LDN 5 GZDATA+1(2) [COPY INTO BUFFER
?342 ... MOVE 4 4
?8CW CALL 7 SETUPCA [SET UP CONTROL AREA
?8XG LDN 0 #42 [PFCC
?9C6 LDN 5 2
?9WQ CALL 7 PERI2 [OUTPUT MESSAGE
?=BB UP
?=G? ...[
?=L8 ...[ OUPUT MESSAGE SET UP BY CENTRAL ROUTINES
?=Q5 ...[
?=W2 XFRTOERR
??38 ... LDN 0 1
??8B ... STO 0 AWORK1(2) [ EXIT PATH MARKER
??*L CALL 0 SPFL
??T= ... MHUNTW 3,ADATA,HEADING
?##W ... LDN 4 HEADPFCC(3)
?#SG LDN 5 GZDATA(2)
?*#6 ... SMO HEADCNT(3)
?*RQ ... MVCH 4 3
?B?B FREECORE 3
?BBT ... CALL 7 SETUPCA
?BG# ... LDN 5 1
?BKR ... CALL 7 PERI3
?BP= ... MHUNT 1,GOUT,INFO
?BSP ... JBC ZLFTERMS,1,BLFSETUP [ J IF NO SETUP FILE
?BY8 ... FILEMOVE 0,1 [ INTERCHANGE SO MAIN FILE AT TOP
?C3M ... BRN ZLFTERMS [ TERMINATE LISTING
?C76 ...[
?C=L [
?CQ= [***********************************************************************
?D9W [CODE FOR DEALING WITH FAILED/DISENGAGED PRINTERS OR PAPER LOW
?DPG NOTENG
?DTC SMO FX2
?D^# LDX 0 AWORK1
?F59 BZE 0 TIDYPER [ J IF EB PATH
?F96 ENGPER SBRKIN,,SBRKIN
?FNQ BRN RPTPERI
?G8B SBRKIN
?GN2 LDX 4 FX1
?H7L ADX 4 5
?HM= EXIT 4 STABLE
?J6W PLOW
?JLG DOWN LISTNEXT,10
?K66 BRN SBRKIN
?KKQ YABANL
?L5B FREELINK
?LK2 YAB
?M4L LDN 4 0
?MJ= CALL 3 TIDY
?N3W LFEND CD
?Q2B [
?QG2 [***********************************************************************
?Q^L [SECOND HEADING FOR ONLINE
?RF= TONLINE
?RYW LDN 4 OHEAD(1)
?SDG LDX 2 3 [INTERFACE FOR
?SY6 LDX 3 FX2 [SFLENME SUBROUTINE
?TCQ BRN TONLINE2
?TDC ...[
?TF4 ...[***********************************************************************
?TFP ...POINT21
?TGB ...#
?TW9 ...[
?TW= ...[
?TW? ...[***********************************************************************
?TW# ...[
?TW* ...POINT8
?TWB ...[
?TWC ...[***********************************************************************
?TWD ...[
?TWF ...#UNS ANIP
?TWG ...(
?TWH ...[ ENTRY POINT OF NIPLINES MACRO ON FIRST CALL OF LISTING
?TWJ ...[ FLAG Q (BEFORE FIRST LINE OF LISTING) SHOULD BE SET
?TWK ...[ IT MUST BE CLEARED IMMEDIATELY S THAT THIS ENTRY IS NOT USED AGAIN
?TWL ...[ EVEN IF THERE IS A BREAKIN - AND NIPREL WILL KNOW TO FORCE CLOSEDOWN
?TWM ...[ NOT ENTER LISTNEXT DIRECT
?TWN ...[
?TWP ... STO 2 AWORK1(2) [NOT EB AND OUTPUTTING HEADERS
?TWQ ... LFBITCLR Q,2
?TWR ... BRN XNLP [JOIN MAIN CODE PATH
?TWS ...[
?TWT ...)
?TXB #END
^^^^ ...47115546000100000000