{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: IPBLISTC867)}}
====== IPBLISTC867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:CHAIN|CHAIN]], [[george:macro:COOR1|COOR1]], [[george:macro:DEMAND|DEMAND]], [[george:macro:DEMANDX|DEMANDX]], [[george:macro:DEMANDY|DEMANDY]], [[george:macro:FILEMOVE|FILEMOVE]], [[george:macro:FPUT|FPUT]], [[george:macro:FREECORE|FREECORE]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HUNTW|HUNTW]], [[george:macro:INFORM|INFORM]], [[george:macro:JBC|JBC]], [[george:macro:LFEND|LFEND]], [[george:macro:LONGOFF|LONGOFF]], [[george:macro:LONGSET|LONGSET]], [[george:macro:MFREEW|MFREEW]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:OUTPER|OUTPER]], [[george:macro:REWIND|REWIND]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:STEP|STEP]], [[george:macro:VFREEW|VFREEW]]
22FL #SEG IPBLISTC8 [R.WEYAND
22PD ...# (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982.
22^= #LIS K0IPBLISTC>K0IPB>K0ALLGEO
23DW 8HIPBLISTC
23YG #
24D6 SEGENTRY K1IPBLISTC,SK1IPBLISTC
24XQ SEGENTRY K2IPBLISTC,SK2IPBLISTC
2562 SEGENTRY K3IPBLISTC,SK3IPBLISTC
25#= SEGENTRY K4IPBLISTC,SK4IPBLISTC
25*S SEGENTRY K5IPBLISTC,SK5IPBLISTC
25BK SEGENTRY K7IPBLISTC,SK7IPBLISTC
25CB #
25X2 XCLOS #01260000
26BL XCRAS #01270000
26W= XOPEN #01200000
27*W ZLIST #76200000
27TG ZJKEN +JKEN
28*6 ZJMARY +JMARY
28MG ZJCO +JCORRUPT
28SQ ZJRESET +JRESET
28Y8 ZLISTA #76350000
293L XMSK #77700037
2976 XPAGI +JPAGES
29#B #
29S2 # FREE REDUNDANT OUTPUT BLOCKS FOR RESTART OR IPB INOPERABILITY
2=?L #
2=FF REFRE VFREEW AMXOR,#77 [FREE ANY UNPACKED NPU(IOUT) PRESENT
2=M# LDX 1 FX1 [RESET X1 IN CASE IT WAS DESTROYED
2=T7 LDEX 5 AWORK1(2) [COUNT OF IOUT BLOCKS WAITING
2?34 BZE 5 (7) [NONE : EXIT
2?=W TEKRA MFREEW AMXOR,IOUT
2?QG BCT 5 TEKRA
2#=6 DEX 5 AWORK1(2) [CLEAR COUNT
2#PQ EXIT 7 0
2*9B #
2*P2 # FREE REDUNDANT BLOCKS LEFT BY DEMAND IF NOT LIKELY TO RE-ENTER
2B8L #
2BN= RIDEM MFREEW ADATA,ADEMAND
2C7W VFREEW GMON,AOUT [ABSENT IF DEMANDY DELAY NOT ENDED
2CMG MHUNTW 3,AMXOR,ADCB
2D76 SMO IADIN(3)
2DLQ LDX 0 IPBSW
2F6B BNG 0 (4) [IPB INOPERABLE
2FL2 EXIT 4 1 [IPB OPERABLE
2FLX #
2FMS # IF IPB INOPERABLE,MOPPING OFF,OR FINISH NOW,EXIT+0 ELSE EXIT+1
2FNP #
2FPL TESTIPBSTAT
2FQH MHUNTW 3,AMXOR,ADCB
2FRD SMO A1+FPTR(3)
2FS* LDX 0 FOURTHWD
2FT= ORX 0 FINISH
2FW7 SLL 0 2
2FX4 SMO IADIN(3)
2FX^ ORX 0 IPBSW
2FYW BPZ 0 TISX
2F^R LONGOFF [IN CASE LONGSET ISSUED
2G2N VFREEW GMON,ASET [IN CASE OUTPER ISSUED
2G2X LDCT 0 #100
2G36 ORS 0 CLONG1(2)
2G3* ERS 0 CLONG1(2) [CLEAR "GMON/ASET PRESENT" FLAG
2G3K EXIT 4 0
2G4G TISX EXIT 4 1
2G5L #
2GK= # RING AMXOR/IOUT BLOCK(S) BEHIND IPBOUT ACTIVITY , WHICH IS THEN
2H4W # PUT ON LIST
2HJG #
2J46 RINGO SBX 7 FX1
2JHQ REF MHUNTW 3,AMXOR,ADCB
2JWX SMO IADIN(3)
2K=4 LDX 2 IPBRING
2KK9 LDCT 0 #420
2KYB ANDX 0 IPBSW-IPBRING(2)
2L?H LDX 2 FX2
2LLN BNZ 0 RGO [IPB INOP OR MOP OFF,PM : EXIT
2LNX # A CHECK TO SEE IF MOP OFF IS BEING DONE IS NOT TESTED FOR AT THIS
2LR6 # STAGE AS WE ARE RIGHT AT THE END OF A LISTING AND MIGHT AS WELL LET
2LT* # IT FINISH. MOP OFF WILL COMPLETE OK BECAUSE OF A RESPONSE FROM THE DE
2LWD # EXCEPT MUST TEST MOP OFF IF WAITING ON WARNING CONDITION
2LXJ #
2L^W LDX 0 GSIGN
2MFG LDN 5 #100
2M^6 ANDX 5 IWAIT(3) [B17 SET IF SENDING CRASH CLOSE
2NDQ ERS 5 IWAIT(3)
2NYB BNZ 5 NOWAR [SUPERVISORY SEGMENT : IGNORE ISTATUS
2PD2 LDX 4 ISTATUS(3)
2PXL BNG 4 TINOP [BECAME INOPERABLE WHILE WARNING SET
2Q3H SLL 4 4
2Q7D BNG 4 TINOP
2Q?* LDX 4 ISTATUS(3)
2QC= SLL 4 1
2QWW BPZ 4 NOWAR [WARNING BIT NOT SET
2R44 CALL 4 TESTIPBSTAT
2R9= BRN NOID
2R?W LDX 0 GSIGN
2RBG ADN 0 #2000
2RW6 ORS 0 IWAIT(3) [INDICATE WARNING NOTICED TO IPBIN
2S*Q COOR1 [WAIT UNTIL WARNING CONDITION ENDS
2STB BRN REF
2T*2 NOWAR
2TMC HUNTW 1,AMXOR,IOUT
2T^S BNG 1 SREPLY [ALREADY SENT OUTPUT:CHECK FOR REPLY
2W#= LDN 0 1
2WRW ERS 0 IMOPTY(1) [WAKE IF DATA ; DONT WAKE IF SUP SEG
2X?G ERX 0 IMOPTY(1)
2XR6 SRC 0 9
2Y=Q ORS 0 IWAIT(3) [SET B8 IF SUP SEG TO CHAIN REPLIES
2YQB LDX 3 IADIN(3) [ADDRESS OF IPBIN ACTIVITY
2^=2 LDX 3 IPBRING(3)
2^PL SBN 3 IPBRING [ADDRESS OF IPBOUT ACTIVITY
329= LDX 2 ACTRING(3)
32NW SBN 2 ACTRING [FIND ACTIVITY AFTER IPBOUT
338G LDX 4 BPTR(2)
33N6 SMO FX2
347Q LDEX 5 AWORK1
34MB BRN NOWCH
3572 NEBO MHUNTW 1,AMXOR,IOUT [FIND NEXT OUTPUT BLOCK
35LL NOWCH CHAIN 1,4
366= BCT 5 NEBO
36KW NGN 0 #1000 [#77777000
375G ANDS 0 AWORK1(2) [CLEAR COUNT OF OUTPUT BLOCKS
37K6 LDCT 0 #100
384Q ANDX 0 IPBSW(3) [B2 SET IF IPBOUT ASLEEP
38JB BZE 0 RGO [ALREADY ON LIST
3942 ERS 0 IPBSW(3) [INDICATE ON LIST
39HL LDX 2 3
3=3= FPUT
3?2G RGO ADX 7 FX1
3?G6 EXIT 7 0
3?^Q #
3#FB # GET AMXOR/IOUT BLOCK FOR OUTPUT ; WORD COUNT IN X3 ON ENTRY
3#^2 #
3*DL SETU SBX 7 FX1
3*Y= ... SETNCORE IDATA-A1(3),2,AMXOR,IOUT
3BCW SMO FX2
3BXG STO 2 ACOMMUNE2 [PRESERVE AMXOR/IOUT ADDRESS
3CC6 LDN 0 1
3CWQ SMO FX2
3DBB ADS 0 AWORK1 [COUNT OF BLOCKS FOR OUTPUT
3DW2 STOZ IMOPTY(2) [MADE NON-ZERO IF OUTPUT ALONE
3F*L STOZ IBSW(2) [BLOCK STATUS WORD
3FT= LDCT 0 #400
3G#W STO 0 IPBIDE+1(2)
3GSG SMO FX2
3H#6 LDX 0 JSOURCE1
3HRQ ANDN 0 #7777
3J?B STO 0 IPBIDE(2) [IDENTIFIER NUMBER
3JR2 ADX 7 FX1
3K=L EXIT 7 0
3KQ= #
3L9W # SEND SUPERVISORY MESSAGE
3LPG #
3M96 SUPER SBX 6 FX1
3MB# SMO FX2
3MHG DSA 6 IWORK20 [PRESERVE RELATIVISED LINK
3MNQ LDX 3 IDENTNO(3)
3N8B ... SETNCORE 3,2,AMXOR,IOUT
3NN2 ADX 4 3
3P7L STO 4 IPBIDE(2)
3PM= LDX 0 GSIGN
3Q6W STO 0 IBSW(2) [NO DATA SEGMENT IN THIS BLOCK
3QLG LDN 0 1
3R66 SMO FX2
3RKQ ADS 0 AWORK1 [COUNT OF BLOCKS TO BE OUTPUT
3S5B STO 0 IMOPTY(2) [INVERTED IN RINGO
3S9? LDX 2 FX2 [PRESERVE SUPERVISORY CODE BEING SENT
3S*8 SLC 4 12
3SF5 DCH 4 IWORK20(2) [IN B0-5 OF IWORK20
3SFW ADN 4 32 [DERIVE EXPECTED REPLY CODE
3SGM ANDN 4 #76 [IGNORE B23 FOR CRASH CLOSE CODE
3SHD BCHX 2 £ [AND PRESERVE IN B6-11 OF IWORK20
3SJ9 DCH 4 IWORK20(2)
3SK2 CALL 7 RINGO
3SL= #
3SMG # AWAIT SUPERVISORY REPLY
3SNQ #
3SQ# WTREP
3SRW MHUNTW 3,AMXOR,ADCB
3SX2 SLOOP
3SX5 SMO IADIN(3)
3SX8 LDX 2 IPBRING
3SX? LDCT 0 #420
3SXB ANDX 0 IPBSW-IPBRING(2)
3SXF BNZ 0 SEX [IPB INOP OR MOPOFF,PM : EXIT
3SXJ LDCT 0 #100
3SXM SMO A1+FPTR(3)
3SXQ ANDX 0 FOURTHWD
3SXT SLL 0 1
3SXY ANDX 0 IPBSW-IPBRING(2)
3SY3 BNZ 0 SEX [MOPPING OFF DURING SYS OVERLOAD:EXIT
3SY= LDCT 0 #401
3S^G ORN 0 #2000[MARK TO BE WOKEN IF REP IS FAIL(/UNAV/CONT)
3T2Q ORS 0 IWAIT(3) [MARK ACTLF ASLEEP AWAITING SUPER SEG
3T42 COOR1
3T5= MHUNTW 3,AMXOR,ADCB
3T=W SREPLY
3T?G HUNTW 1,AMXOR,IDATSG
3T#Q BNG 1 SFLAG [NO SUPERVISORY SEGMENT
3T*S LDX 5 A1+2(1) [COMPARE REPLY CODE RECEIVED
3TBW [WITH EXPECTED REPLY CODE
3TF2 ERX 5 IWORK20(2)
3TG4 SRL 5 12
3TH6 ANDN 5 #77
3TH? ... BZE 5 SEXPR
3THD ... BCHX 1 £
3THK ... LDCH 5 A1+2(1)
3THQ ... SBN 5 #45
3THX ... ANDX 1 BITS22LS
3TJ4 ... LDX 0 A1+3(1)
3TJ9 ... FREECORE 1
3TJB ... BNZ 5 SREPLY
3TJH ... SRL 0 12
3TJN ... SBN 0 #2420
3TJT ... BZE 0 SEX
3TK2 ... BRN SREPLY
3TK7 ...SEXPR
3TK# ... FREECORE 1
3TKG LDCH 0 IWORK20(2)
3TLQ SBN 0 16
3TN2 BZE 0 SOPENED [SUPERVISORY CODE- OPEN SENT
3TNC SEX LDX 2 FX2 [RESTORE LINK
3TNF LDCT 0 1
3TNH ADN 0 #2000
3TNK ORS 0 IWAIT(3)
3TNM ERS 0 IWAIT(3) [ENSURE BITS 8 & 13 ARE LEFT UNSET
3TNS LDX 6 IWORK20(2)
3TP= ANDN 6 #7777
3TPW ADX 6 FX1
3TQG EXIT 6 0
3TRQ SFLAG LDX 1 FX1
3TT2 LDCH 0 IWORK20(2)
3TW= SBN 0 22
3TWL BZE 0 SCLOSENT
3TWQ SBN 0 6
3TWW BNZ 0 SLOOP [J UNLESS WAITING FOR OUTPUT SENT
3TX2 SCLOSENT
3W3J LDX 7 ISTATUS(3)
3W7L BNG 7 TINOP [UNAVAILABLE OR FAIL REPLY
3W8^ SLL 7 4
3W=# BNG 7 TINOP
3W?N BRN SLOOP
3WCQ SOPENED [CHANGE MODE/NPU SIZE IF NECESSARY
3WF2 BRN SEX
3WHG #
3X36 # FREE PAGE RESTART BLOCK IF PRESENT BEFORE RETURN TO LISTFILE
3XGQ #
3Y2B VF VFREEW ADATA,IPTEMP
3YG2 VFA VFREEW ADATA,ACONV
3Y^L EXIT 7 0
3^2H #
3^F= #
3^F* [
3^FL ZDEAL
3^FP SBX 5 FX1
3^FS BNZ 7 WTOUS [J IF SPOOLING TO WAIT FOR OUTPUT SEN
3^FX LONGSET #36,SET,6
3^G2 WTUNAV
3^G5 CALL 4 TESTIPBSTAT [SEE IF MOP OFF ETC
3^G8 BRN NOID [J IF SO
3^G? LDX 0 ISTATUS(3)
3^GB BNG 0 ZUNAV [J IF UNAVAILABLE
3^GF LDCT 4 #400
3^GJ ADN 4 #2000
3^GM ORS 4 IWAIT(3)
3^GQ COOR1 [WAIT FOR UNAVAILABLE
3^GT BRN WTUNAV
3^GY ZUNAV ADX 5 FX1
3^H3 EXIT 5 0
3^H6 [
3^H9 WTOUS LDX 2 FX2
3^H# DSA 5 IWORK20(2)
3^HC [ SAVE LINK ADDRESS
3^HG LDN 4 28 [SHOW WAITING FOR OUTPUT SENT
3^HK DCH 4 IWORK20(2) [(THERE IS NO CODE 28)
3^HN ADN 4 32
3^HR BCHX 2 £
3^HW DCH 4 IWORK20(2)
3^H^ BRN WTREP
3^J4 [
3^J7 [
3^J= SK3IPBLISTC
3^J* CALL 7 RINGO
3^JB LDCT 7 #40
3^JC CALL 5 ZDEAL [WAIT FOR OUTPUT SENT REPORT...
3^JD [ ...WHICH SHOWS ALL PREV RECORDS OUTPUT
3^K5 LDN 3 1
3^K8 CALL 7 SETU [SET IP A DATA BLOCK
3^K? LDX 6 0 [SAVE IDENT NO.
3^KB LDX 0 ZLIST(1)
3^KF STO 0 IDATA(2)
3^KJ LDCT 0 #500 [SEND END OF DATA STREAM
3^KM ADN 0 2
3^KQ LDCT 7 #40
3^KT SMO FX2
3^KY ANDX 7 AWORK4 [BIT 3 SET IF SPOOLING
3^L3 ORX 0 7 [BI 3 HERE MEANS ACKNOWLEDGE OUTPUT
3^L6 STO 0 IPBIDE+1(2)
3^L9 CALL 7 RINGO [SEND OUTPUT
3^L# LDCT 7 #40
3^LC ANDX 7 AWORK4(2)
3^LG CALL 5 ZDEAL [WAIT TILL DC4 SENT
3^LK REPASK
3^LN OUTPER
3^LR BZE 7 NSPLI [J IF NOT SPOOLING
3^LW TELCO
3^L^ LONGOFF
3^M4 INFORM 0,JCORRUPT,1 [JUST SAY CORRUPT AND CONTINUE
3^M7 BRN RETLI
3^M= NSPLI
3^M* CALL 4 TESTIPBSTAT
3^MD BRN NOID [J IF MOP OFF ETC.
3^MH LDXC 0 ISTATUS(3)
3^ML BCC TELCO [IF ALREADY ENGAGED JUST TELL THEM
3^MP LDN 0 0
3^MS DSA 0 AWORK4(2)
3^MX STOZ AWORK3(2) [PRESET CD REPLY
3^N2 DEMAND 0,JCORRUPT,REPCD,TERM,REDEM,2
3^N5 CALL 4 RIDEM
3^N8 BRN RECL
3^N? RETLI
3^N# LDX 0 AWORK1(2)
3^N* BPZ 0 NOTP [J. NOT TP
3^NB ACROSS IPBLISTE,4
3^NC NOTP
3^ND ACROSS IPBLISTB,4
3^NF [
3^NJ SK4IPBLISTC
3^NM BPZ 7 RCRAL
3^NQ LDN 7 0
3^NT REPCO CALL 4 TESTIPBSTAT
3^NY BRN RNWCD [J IF MOP OFF ETC.
3^P3 LDXC 7 ISTATUS(3)
3^P6 BCS RCREQ [J IF DEV UNAV
3^P9 LDCT 7 #401
3^P# ORN 7 #2000
3^PC ORS 7 IWAIT(3)
3^PG COOR1 [WAIT TILL UNAVAILABLE
3^PK MHUNTW 3,AMXOR,ADCB
3^PN LDXC 7 7
3^PR ORS 7 IWAIT(3) [UNSET BITS 8 AND 13
3^PW ERS 7 IWAIT(3)
3^P^ BRN REPCO
3^Q4 RCRAL MHUNTW 3,AMXOR,ADCB
3^Q7 RCREQ
3^Q= SLL 7 4
3^Q* BNG 7 RNWER
3^QD SMO FX1
3^QH LDX 5 ZJCO
3^QL ZDEM LDN 4 0
3^QP OUTPER
3^QS ZDECO
3^QX DEMANDX 4,5,RNWCD,RNWTE,REPIN,2
3^R2 CALL 4 RIDEM
3^R5 ... BNG 7 TRYV
3^R8 ... BNG 7 TRYV [J IF DEV ERR ON HEADINGS
3^R? BRN NDRQ
3^RB [
3^RF RNWCD
3^RJ MHUNTW 3,AMXOR,ADCB
3^RM LDN 0 #1000
3^RQ ORS 0 IWAIT(3)
3^RT NGNC 0 1
3^RY RNWTE
3^S3 LDN 0 0
3^S6 STO 0 AWORK3(2) [INDICATE CD OR TE
3^S# ... BNG 7 TRYV
3^SG RNWER LDCT 0 #400
3^SK SMO FX2
3^SN STO 0 AWORK3
3^SR [ INDICATE DEV ERROR
3^SW BRN TOCRC
3^S^ NDRQ
3^T4 ... ACROSS IPBLISTD,4
3^T7 TOCRC
3^T= CALL 7 REFRE [FREE ANY REMAINING IOUTS
3^T* MHUNTW 3,AMXOR,ADCB
3^TD LDN 0 #100
3^TH LDX 4 XCRAS(1) [CRASH CLOSE
3^TL ORS 0 IWAIT(3)
3^TP CALL 6 SUPER
3^TS LDN 6 #40
3^TX ANDX 6 IWAIT(3)
3^W2 BNZ 6 TZECL
3^W5 LDN 0 #100
3^W8 LDX 4 XOPEN(1) [OPEN AGAIN
3^W? ORS 0 IWAIT(3)
3^WB CALL 6 SUPER
3^WF TZECL
3^WJ CALL 7 VF [GET RID OF ANY UNWANTED BLOCKS
3^WM LDX 7 AWORK3(2)
3^WQ BNG 7 TRESQ [J IF ERROR ON HEADINGS
3^WT BNZ 7 TATE
3^WY BRN TLFTE [J FOR TERMINATE
3^X3 TRESQ
3^X6 SMO FX1
3^X9 LDX 5 ZJRESET
3^X# BRN ZDEM
3^Y5 #
3^YW # ENTRY FROM IPBLISTB WHEN OUTPUTTING TO A 7020 VIA AN IPB
42DG # OR WHEN MOP OFF IN PROGRESS : CLOSE IDENTIFIER TO ENSURE
42Y6 # ALL OUTPUT HAS BEEN LISTED ; IF FAIL REPLY CRASH CLOSE IDENTIFIER
43CQ # AND TAKE CAN'T DO ACTION TO RESTART LATER
43XB #
44C2 SK5IPBLISTC
44WL LDX 4 XCLOS(1) [CODE FOR 'CLOSE'
45B= MHUNTW 3,AMXOR,ADCB
49QW CALL 6 SUPER
4==G NOID
4FJW LDCH 6 IWORK9(2) [CURRENT RESTART SECTION NUMBER
4GJ6 LDN 0 1
4HHB STOZ AWORK3(2) [SIMULATE CD FOR JUMP TO REBIG
4K2= STO 0 ACOMMUNE6(2) [FOR PAGE RESTART AFTER MOP OFF
4K#M CALL 4 TESTIPBSTAT
4KM4 BRN REBIG [IPB INOP,MOPPING OFF,OR FINISH NOW
4KML BRN REBIG [ SHOULD ALWAYS BE THE ABOVE
4KN8 #
4KNQ # ENTRY FROM IPBLISTB WHEN OUTPUTTING TO A 7020 VIA AN IPB
4KP# # WHEN LISTING HAS FINISHED : WAIT FOR OUTPUT SENT REPLY
4KPW # IF FAIL REPLY CRASH CLOSE IDENTIFIER
4KQD # AND TAKE CAN'T DO ACTION TO RESTART LATER
4KR2 #
4KRJ SK1IPBLISTC
4KS6 CALL 7 RINGO [ SEND OUTPUT WITH
4KSN LDCT 7 #40 [ "REPORT OUTPUT SENT"
4KT= CALL 5 ZDEAL [ WAIT FOR REPLY
4KTS LDCH 6 IWORK9(2) [CURRENT RESTART SECTION NUMBER
4KWB LDN 0 1
4KWY STOZ AWORK3(2) [SIMULATE CD FOR JUMP TO REBIG
4KXG STO 0 ACOMMUNE6(2) [FOR PAGE RESTART AFTER MOP OFF
4KY4 CALL 4 TESTIPBSTAT
4KYL BRN REBIG [IPB INOP,MOPPING OFF,OR FINISH NOW
4K^G #
4NCL LDX 5 AWORK4(2)
4NX= BNG 5 SPECS [HAVE JUST LISTED TESTPATTERN FILE
4PBW CALL 7 VF
4PWG ... ACROSS IPBLISTD,3 [OUTPUT TERMINATORS
4QB6 #
4QTQ SPECS LDN 3 1
4R*B CALL 7 SETU
4RT2 LDX 6 0 [IDENTIFIER NUMBER
4RYF MHUNTW 3,AMXOR,ADCB
4S3Y JBC SPECA,3,ADCBTSPOOL
4S7C JBC SPECA,3,ADCB7502LP
4S=W LDX 0 ZLISTA(1)
4SB* BRN SPECB
4SFS SPECA
4SK? LDX 0 ZLIST(1)
4SNQ SPECB
4SS= STO 0 IDATA(2) [FF AND DISENGAGE PRINTER
4T?W LDCT 0 #500 [B2 FOR END OF DATA STREAM
4TRG ADN 0 2
4W?6 STO 0 IPBIDE+1(2)
4WQQ CALL 7 RINGO
4W^C LDCT 7 #40
4X3L ANDX 7 AWORK4(2)
4X5T BNZ 7 NAVAL [J IF SPOOLING
4X=B LONGSET #36,SET,6 [PUT IDENTIFIER NO. IN CLONG2
4XQ2 TEAL CALL 4 TESTIPBSTAT
4Y9L BRN NOID [IPB INOP,MOPPING OFF,OR FINISH NOW
52MQ LDX 0 ISTATUS(3)
537B BNG 0 NAVAL [UNAVAILABLE ALREADY
53M2 LDCT 4 #400
546L ADN 4 #2000
54L= ORS 4 IWAIT(3)
555W COOR1 [WAIT FOR UNAVAILABLE REPORT
55KG BRN TEAL [TEST WHETHER UNAVAILABLE YET
5656 NAVAL LDCT 6 #200
56JQ OUTPER [OUTPUT 'IDENTIFIER' + NUMBER
574B ANDX 6 AWORK4(2) [B1 SET IF FIRST TIME SETUP FILE
57J2 ERS 6 AWORK4(2) [HAS BEEN LISTED
57MF NGN 5 1 [IN CASE PLSE ENGAGE OBEYED
57^W BZE 7 XNSPL [J IF NOT SPOOLING
585* INFORM 0,JKEN,1 [OUTPUT PLESE LINE UP...
588S BRN TERMA [...ONLY ONCE
58#? XNSPL
58H= ADN 6 #2000
59GG SLC 6 2 [SET B11 FOR INTERVAL ; SET B23 IF
5=26 ERN 6 1 [MINUTE DELAY REQUIRED
5=63 CALL 4 TESTIPBSTAT
5=9Y ... BRN TRYV [IPB INOP,MOPPING OFF,OR FINISH NOW
5=*T LDN 0 0 [ASK CLUSTER CONSOLE
5=FQ LDX 7 ZJKEN(1)
5=^B DEMANDY 0,7,REPCD,TERMA,YMOC,6 ['PLEASE LINE UP'
5?F2 CALL 4 RIDEM [FREE DEMAND'S BLOCKS
5?YL ... BRN TRYV [IPB INOP : REPEAT LATER
5#D= REWIND [REPEAT SETUP AFTER LINING UP
5#N4 STEP
5#XW LDN 4 IWORK5(2)
5*CG TMAIN LDN 5 IWORK10(2) [ENTRY TO START MAINFILE AFTER SETUP
5*X6 MOVE 4 4
5BBQ TREST STOZ IWORK9(2) [ENTRY TO RESTART MAINFILE AFTER FAIL
5BWB STOZ IWORK17(2) [CLEAR PAGE LINE COUNT
5C34 LDCT 0 #40
5C4L ANDX 0 AWORK4(2)
5C68 BZE 0 XYAB [J IF NOT SPOOLING
5C7Q LDCT 0 #100
5C9# ORS 0 AWORK4(2) [OUTPUT PAGE NO
5C=W XYAB
5C?G LDX 0 AWORK1(2)
5C#6 BPZ 0 NOTP1 [J NOT TP
5C#Q ACROSS IPBLISTE,1 [SHOULD NEVER GET HERE I THINK
5C*B NOTP1
5CB2 ACROSS IPBLISTB,1
5CTL #
5D*= # IDENTIFIER INOPERABLE : SEND 'PLEASE ENGAGE' MESSAGE TO CONSOLE
5DSW # RESTART,POSTPONE RESTART OR DELETE FILE ACCORDING TO REPLY
5F#G #
5FS6 TINOP LDX 2 FX2
5HQL LDCH 0 ISTATUS(3) [B4 SET IF FAIL RATHER THAN UNAV
5J== ANDN 0 2 [B4 SET IF FAIL RATHER THAN UNAV
5JPW DEX 0 AWORK4(2) [0 IF HOLD BUTTON ; 2 IF STOP BUTTON
5JTR LDCT 0 #030
5J^N ORS 0 ISTATUS(3)
5K5K ERS 0 ISTATUS(3)
5K9G SK2IPBLISTC
5KP6 MHUNTW 3,AMXOR,ADCB
5L8Q LDEX 0 AWORK4(2)
5LNB BZE 0 TUNA
5M82 CALL 7 REFRE [FREE REDUNDANT IOUT BLOCKS
5MML NOTES LDN 0 #100
5N7= ORS 0 IWAIT(3) [IGNORE INOPERABILITY IN RINGO
5NLW LDX 4 XCRAS(1) [CODE FOR 'CRASH CLOSE'
5PL6 CALL 6 SUPER
5Q5Q LDN 0 #40
5QKB ANDX 0 IWAIT(3)
5R52 BNZ 0 REQC
5S4= LDN 0 #100
5SHW ORS 0 IWAIT(3) [IGNORE INOPERABLE IN RINGO
5T3G LDX 4 XOPEN(1)
5TH6 CALL 6 SUPER
5TPR LDX 0 IWAIT(3)
5TS2 ANDN 0 4
5TW9 BNZ 0 TERMA [J IF SPOOLING
5W2Q REQC LDX 7 IDENTNO(3)
5WGB LDXC 5 IWORK11(2)
5X22 BCC TERMA [NOT PAGE RESTART
5X9S HUNTW 3,ADATA,IPTEMP
5XFL BNG 3 TERF
5XPD LDX 0 A1+1(3) [PAGE NO FOR CURRENT FILE
5YDW BZE 0 TERF [STILL ON FIRST PAGE : REPEAT IT
5YYG LDX 6 ALOGLEN(3)
5^=W SBN 6 1
5^D6 SBN 6 10 [VALUE OF IPAGE AT START OF LISTING
5^XQ BZE 6 TERMA
62CB LONGSET #104,SET,7
62X2 STO 6 ACOMMUNE6(2)
63BL OUTPER
63CX CALL 4 TESTIPBSTAT
63F9 BRN NOID [IPB INOP,MOPPING OFF,OR FINISH NOW
63K5 LDX 6 IWAIT(3)
63LB ANDN 6 2 [SET IF UNATTENDED
63MM DEMANDX 6,XPAGI(1),TERF,NOTE,YBAC,2
64*W CALL 4 RIDEM [FREE DEMAND'S REDUNDANT BLOCKS
64TG BRN TERF [IPB INOP : CD ACTION
655# BRN TERMK
65SQ #
66#B TERF LDN 0 1
66S2 STO 0 ACOMMUNE6(2) [CANT DONE : SIMULATE 1 PAGE RESTART
66XT TERMK LDCT 0 #40
66^6 ANDX 0 AWORK4(2)
672C BZE 0 TERMA [J IF NOT SPOOLING
673N LDEX 0 AWORK4(2)
674^ BZE 0 TERMA [J IF NOT FAIL
676= MHUNTW 3,AMXOR,ADCB
677H LDXC 6 ISTATUS(3)
678S BRN REBIG
67?L TERMA REWIND
67HD BNG 5 NOWMA [SETUP FILE LISTED:NOW LIST MAINFIL
67R= LDX 0 AWORK4(2)
68=W BNG 0 TUNA [NOT MAINFILE
68QG LDXC 0 IWORK11(2)
69=6 BCC TUNA [NOT PAGE RESTART
69PQ LDEX 0 AWORK4(2) [ZERO IF HOLD
6=9B BZE 0 RHEL [PGP AFTER CD TO PE WHEN HELD
6=P2 TUNA MHUNTW 3,AMXOR,ADCB [ENTRY FOR HOLD BUTTON
6?8L LDX 0 ISTATUS(3)
6?N= BPZ 0 NOWAV [ALREADY RE-ENGAGED
6?Y3 LDX 6 IWAIT(3)
6#2L ANDN 6 2 [SET IF UNATTENDED
6#7W LONGSET #36,SET,IDENTNO(3)
6#MG OUTPER
6*76 STOZ AWORK3(2) ['CAN'T DO' MARKER
6*## CALL 4 TESTIPBSTAT
6*FH BRN NOID [IPB INOP,MOPPING OFF,OR FINISH NOW
6*LQ LDEX 0 AWORK4(2)
6B6B BZE 0 YPE [J IF HOLD BUTTON
6BL2 LDX 4 ZJRESET(1) ["PLEASE ENGAGE FOR ERROR RESTART"
6C5L BRN YDEM [STOP BUTTON
6CK= YPE LDX 4 ZJMARY(1) ["PLEASE ENGAGE"
6CRG YDEM
6CYP ... MHUNTW 3,AMXOR,ADCB
6D?7 ... LDN 0 #40
6DDB ... ANDX 0 IWAIT(3)
6DKK ... BNZ 0 REPCD
6DQS ...YMESS
6DY9 DEMANDX 6,4,REPCD,TERM,YTER,2
6F46 CALL 4 RIDEM [FREE DEMAND'S BLOCKS
6FHQ BRN NOID [IPB INOP
6G3B NOWAV
6GH2 LDEX 0 AWORK4(2)
6H2L BZE 0 REO [HELD : BLOCKS STILL WAITING
6HG= STO 3 AWORK3(2) [ENGAGED RATHER THAN CAN'T DONE
6H^W LDX 6 ISTATUS(3)
6JFG BNG 6 NOTES [STILL INOPERABLE
6J^6 LDX 5 AWORK4(2)
6KDQ BPZ 5 REBIG [NOT SETUP FILE
6KMC LDX 0 IWAIT(3)
6KPL ANDN 0 4
6KRT BNZ 0 REBIG
6KYB LDN 5 IWORK1(2) [REPEAT TESTPATTERN FILE FROM START
6LD2 LDN 6 IWORK10(2) [COUNTERACT MOVE 5 4 IN K2IPBLISTB
6LXL MOVE 5 4
6MC= ACROSS IPBLISTB,2 [RESTART LINING UP PROCEDURE
6MWW REO BNZ 7 REF [HELD WHILE SENDING CLOSE OR FF
6N22 LDX 0 AWORK1(2)
6N56 BPZ 0 NOTP2 [J. NOT TP
6N8= ACROSS IPBLISTE,3
6N?B NOTP2
6NBG ACROSS IPBLISTB,3 [HELD DURING LISTING : CONTINUE
6NW6 #
6P*Q TERM REWIND [SET FILE(SETUP) TO BEGINNING
6PTB MHUNTW 3,AMXOR,ADCB
6Q*2 NGS 3 AWORK3(2) [INDICATE 'TERMINATED'
6QSL BRN UPRE [GET RESTART LINE NUMBER
6QXX REBIS LDX 0 IWAIT(3)
6Q^2 ANDN 0 4
6R25 BZE 0 REBIG [J IF NOT SPOOLING
6R38 LDXC 0 IWORK11(2)
6R4? BCC REBIG [NOT PAGES
6R5B LDX 0 AWORK3(2)
6R6F BNZ 0 REBIG [NOT CANTDO
6R7J LDN 0 1
6R8M STO 0 ACOMMUNE6(2)
6R9Q BRN REQC [ASK FOR PAGES
6R#= #
6RRW REPCD MHUNTW 3,AMXOR,ADCB
6S?G LDN 0 #1000
6SR6 ORS 0 IWAIT(3) [MARK 'WAITING TO BE WRONGED'
6T=Q LDX 5 AWORK4(2)
6TQB ... BNG 5 TRYV [SPEC. CASE : TRY AGAIN LATER
6W=2 UPRE LDX 6 ISTATUS(3) [FAIL RESTART SECTION NUMBER
6WPL LDEX 0 AWORK4(2)
6W^D BNZ 0 REBIS
6XNW CALL 7 REFRE [FREE REDUNDANT IOUT BLOCKS
6Y8G LDN 0 #100
6YN6 LDX 4 XCRAS(1) [CODE FOR 'CRASH CLOSE'
6^MB ORS 0 IWAIT(3) [IGNORE INOPERABILITY IN RINGO
7272 CALL 6 SUPER
72LL LDN 0 #40
736= ANDX 0 IWAIT(3)
73KW BNZ 0 RECL
74K6 LDN 0 #100
754Q LDX 4 XOPEN(1)
75JB ORS 0 IWAIT(3) [IGNORE INOPERABILITY IN RINGO
7642 CALL 6 SUPER
76HL RECL LDN 0 1
773= STO 0 ACOMMUNE6(2) [GO BACK 1 PAGE IF PAGE RESTART
77GW LDXC 0 IWORK11(2)
782G BCC RHEL [NOT PAGE RESTART
78G6 LDX 0 AWORK3(2)
78^Q BZE 0 REQC [CANT DONE : ASK FOR PAGES IF NEC.
79FB RHEL LDCH 6 IWORK9(2) [RETURN AFTER PLEASE GIVE PAGES
79LJ LDX 0 AWORK1(2)
79RQ BNG 0 TBUFF [TP
79YY LDX 0 AWORK3(2)
7=66 BNG 0 REBIG [LP "TERMINATED" : SKIP "TBUFF"
7=?# TBUFF SBN 6 1 [SIMULATE AN EXTRA RESTART SECT AGO
7=DL #
7=Y= REBIG ANDN 6 #37 [ENTRY IF MOPPING OFF
7?CW LDX 0 AWORK3(2)
7?MM LDCT 7 #40
7?Q= ANDX 7 AWORK4(2) [SPL BIT
7?XG BNG 0 PLRES [J IF "TERMINATED"
7#67 BZE 0 XS1 [J IF CANTDO
7#8B BNZ 7 PLRES [...IF SPOOLING
7#=K XS1
7#C6 LDX 0 IWORK11(2)
7#WQ SLC 0 1
7*BB ... BNG 0 TRYV [WHOLE RESTART REQUIRED
7*W2 #
7B*L # LINE OR PAGE RESTART REQUIRED : CALCULATE RESTART RECORD NUMBER
7BT= # FROM CURRENT AND FAILED RESTART SECTION NUMBERS AND CURRENT RECORD
7C#W # NUMBER ; IF PAGE , ACOMMUNE6 CONTAINS NO. OF PAGES TO GO BACK
7CSG #
7D#6 PLRES LDCH 5 IWORK9(2)
7DRQ ORN 5 #40
7F?B SBX 5 6 [GET DIFFERENCE BETWEEN PRESENT AND
7FR2 ANDN 5 #37 [FAILED RESTART SECTION NUMBERS
7FY8 LDX 0 AWORK1(2)
7G5B BPZ 0 PRES [LP
7G=L SLL 5 1
7GQ= LDXC 0 IWORK9(2) [B0 SET DURING SECOND REC. OF SECTION
7H9W ADN 5 5
7HPG LDX 6 IWORK10(2) [CURRENT RECORD NUMBER
7J96 BRN RETOG
7K8B #
7K8L PRES
7K9B LDX 0 AWORK3(2)
7K9L BNG 0 XS23 [J IF TERMINATED
7K9W BZE 0 XS2 [J IF CANTDO
7K=6 BZE 7 XS2 [J IF NOT SPOOLING
7K=B STO 5 ACOMMUNE6(2) [BACK TO FAILED PAGE
7K=L LDN 0 1
7K=W ADS 0 ACOMMUNE6(2)
7K?6 BRN SPREC
7K?B XS23 BNZ 7 XS24 [J IF SPOOLING
7K?L XS2
7K#6 LDXC 7 IWORK11(2)
7K#S BCS SPREC [PAGE RESTART
7KB= XS24
7KC3 LDN 0 1
7KF= STO 0 ACOMMUNE6(2) [LINE RESTART:GO BACK 1 PAGE
7KHF SPREC
7KKN LDX 6 5 [NO OF PAGES FROM CURRENT TO FAILED
7KM8 HUNTW 3,ADATA,IPTEMP [CONTAINS FIRST RECORD NOS PER PAGE
7KNN BNG 3 XEREND
7KQ9 LDX 1 A1(3)
7KSD SBX 1 6
7KWM BPZ 1 SPOK [PAGES PRINTED > PAGES TO GO BACK
7KYW LDX 6 A1(3) [IF NOT SET DIFFERENCE = PAGES SO FAR
7L35 SPOK
7L5# SBS 6 A1(3) [UPDATE
7L5Y LDX 0 IWORK11(2)
7L6J SBX 0 6
7L78 ANDN 0 #37
7L7S LDCT 5 #777
7L8D ANDS 5 IWORK11(2)
7L94 ADS 0 IWORK11(2)
7L9Q LDX 5 A1+1(3)
7M6W LDX 0 ALOGLEN(3)
7MLG LDX 1 5
7MW# SBN 0 2
7NKQ DVS 4 0
7P5B LDX 5 3
7PK2 ADX 3 4 [POSITION OF CURRENT PAGE RECORD NO.
7Q4L LDX 4 0
7QJ= TEREC BZE 6 PAGEF [FOUND POS OF FAILED PAGE REC NO
7R3W SBN 6 1 [STEP BACK (X6) PAGES(RSNS)
7RHG SBN 3 1 [TRY PREVIOUS PAGE
7S36 SBN 1 1
7SGQ TXL 3 5
7T2B BCC PAGES [NOT YET AT BEGINNING OF BLOCK
7TG2 ADX 3 0 [BACK TO LAST WORD IN BLOCK
7T^L PAGES BCT 4 TEREC
7WF= ... BRN TRYV [UNREMEMBERED PAGE NO : TAKE CANTDO ACTION
7WYW PAGEF TXL 1 ACOMMUNE6(2)
7XDG BCS NUPR [PAGES PRINTED < PAGES TO GO BACK
7XY6 LDX 1 ACOMMUNE6(2)
7YCQ SBN 1 1
7YXB NUPR SBX 3 1 [GO BACK NO. OF PAGES IN X1
7^C2 TXL 3 5
7^WL BCC TOZB [NOT PAST START OF BLOCK
82B= ADX 3 0
82F4 TOZB
82PG SMO 5
82S# SBS 1 A1 [UPDATE TOTAL NO OF PAGES
82T5 LDX 0 IWORK11(2)
82TW SBX 0 1
82WM ANDN 0 #37
82XD LDCT 5 #777
82Y9 ANDS 5 IWORK11(2)
82^2 ADS 0 IWORK11(2)
82^Y LDX 5 IWORK10(2) [CURRENT RECORD NUMBER
837J SBX 5 A1+2(3)
83T6 MHUNTW 1,ADATA,IPTEMP
84#Q SBX 3 1
84JJ STO 3 A1+1(1)
85#2 #
85RL RETOG LDX 0 IWORK12(2)
86?= SBS 5 IWORK10(2) [UPDATE START RECORD NUMBER
86QW BNG 0 REW [LIST ALL RECORDS
87=G ADS 5 IWORK12(2) [UPDATE COUNT OF RECS TO BE LISTED
87Q6 REW LDX 0 IWORK10(2) [RESTART RECORD NUMBER
889Q SBX 0 IWORK1(2) [INITIAL RECORD NUMBER
88D2 LDX 7 AWORK1(2)
88L= BNG 7 TPF [TP
88SG BZE 0 TRYV [FAIL DURING FIRST PAGE:REPEAT IT
892Q TPF BNG 0 TRYV [FAIL DURING TP HEADINGS:REPEAT THEM
8992 LDX 0 AWORK3(2)
89NL BZE 0 TRYL [RECEIVED CAN'T DO TO PLEASE ENGAGE
8=8= BNG 0 TERMB [TERMINATED
8=BX LDCT 5 #40
8=F6 ANDX 5 AWORK4(2) [DONOT BOTHER WITH SETUP...
8=JG BNZ 5 POSITION [...IF SPOOLING
8=MW LDCT 5 #100
8?7G ANDX 5 AWORK2(2) [B2 SET IF TESTPATTERN FILE FIRST
8?M6 BZE 5 POSITION [NO SPECIAL STATIONERY
8#6Q LDX 5 AWORK4(2)
8#LB #
8*62 NOWMA FILEMOVE 1,0 [INTERCHANGE MAINFILE AND TESTPATTERN
8*KL CALL 7 VFA [FREE ADATA/ACONV BLOCK , IF ANY
8*RD MHUNTW 3,ADATA,IPTEMP
8*SC STOZ A1(3)
8*TB STOZ A1+1(3) [NO OF CURRENT FILE PAGES PRINTED
8*X# LDX 0 IWORK1(2) [START OF MAINFILE
8*^= STO 0 A1+2(3)
8B5= LDCT 0 #400
8BJW ERS 0 AWORK4(2) [INVERT FILE INDICATOR
8C4G BNG 5 POSITION1 [J TO LIST MAINFILE
8CT2 LDX 0 IWORK5(2)
8CX9 STO 0 A1+2(3) [START OF SETUP FILE
8D3Q ACROSS IPBLISTB,2 [REPEAT SETUP AFTER MAINFILE FAIL
8D4K [
8D5D POSITION1
8D6? LDN 4 IWORK1(2)
8D76 LDN 5 IWORK10(2)
8D7^ MOVE 4 4
8D89 LDX 0 IWORK11(2)
8D8F ADN 0 1
8D8P SMO FX1
8D8^ ANDX 0 XMSK
8D99 STO 0 IWORK11(2)
8D9F REWIND
8D9P LDX 7 IWORK10(2)
8D9^ ADN 7 1
8D=9 BRN STEPS
8D=G [
8D?* POSITION [ MAINFILE AT RESTART POINT
8D#8 [
8D*3 REWIND
8D*W LDX 7 IWORK10(2)
8DBP ADN 7 1 [ RESTART RECORD NO.
8DBT MHUNTW 3,AMXOR,ADCB
8DB^ JBC STEPS,3,ADCBTSPOOL
8DC5 JBC STEPS,3,ADCB7502LP
8DC9 STO 7 IWORK10(2)
8DC* ADN 7 1
8DCJ STEPS
8DDC STEP
8DF= BCT 7 STEPS
8DG5 BRN TREST [ RETURN TO IPBLISTB
8DG6 [
8DG7 SK7IPBLISTC
8DG8 [
8DG9 [ ENTRY FROM IPBLISTA TO SEND CRASH CLOSE & OPEN AFTER FAIL
8DG= [
8DG? MHUNTW 3,AMXOR,ADCB
8DG# LDN 0 #100
8DG* ORS 0 IWAIT(3)
8DGB LDX 4 XCRAS(1)
8DGC CALL 6 SUPER
8DGD LDN 0 #40
8DGF ANDX 0 IWAIT(3)
8DGG BNZ 0 SLEND
8DGH LDN 0 #100
8DGJ ORS 0 IWAIT(3)
8DGK LDX 4 XOPEN(1)
8DGL CALL 6 SUPER
8DGM SLEND
8DGN ACROSS IPBLISTA,1
8DGP [
8DGQ [
8DHB #
8F32 TRYL CALL 7 VF
8FGL LFEND CD,IWORK10(2) [RESTART LINE NO. IN IWORK10
8G2= TRYV CALL 7 VF
8G64 TATE
8GFG LFEND CD
8GK* TERMB
8GXQ LDCT 0 #40
8H39 ANDX 0 AWORK4(2)
8H6N BNZ 0 XS25
8H*L LDX 5 AWORK4(2) [IF "TE" DURING SETUP FILE,OUTPUT MAINFILE
8HF6 BNG 5 NOWMA
8HRG XS25
8HYQ CALL 7 VF
8JDB LDX 0 IWORK10(2)
8JY2 SBX 0 IWORK1(2) [TAKE CD ACTION IF
8KCL BNG 0 TATE [TERMINATED DURING HEADINGS
8KG9 TLFTE
8KX= LFEND TE
8KYM XEREND
8L24 LDX 0 AWORK1(2)
8L3F BNG 0 XGTP [J IF TP
8L4W LDEX 0 AWORK4(2)
8L6? BNZ 0 TATE [J IF NOT ON HOLD
8L7N LDX 0 AWORK3(2)
8L95 BNG 0 TLFTE [J IF HELD + TE
8L=G BRN TATE
8L?X [
8L*# XGTP GEOERR 1,LFNOTLP
8LBW #
8LWG NOTE GEOERR 1,TERNOTAL [PAGES DEMAND CANT BE TERMINATED
8MB6 SET GEOERR 1,ALRDYSET [LONGSET GIVEN TWICE
8N*B #END
^^^^ ...74222153000700000000