{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: PERION867)}} ====== PERION867 ====== (George Source) **Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ACROSSVAR|ACROSSVAR]], [[george:macro:AUTFAIL|AUTFAIL]], [[george:macro:AUTFIN|AUTFIN]], [[george:macro:AUTSTART|AUTSTART]], [[george:macro:BACKTRAN|BACKTRAN]], [[george:macro:BADBLOCK|BADBLOCK]], [[george:macro:CAPCA|CAPCA]], [[george:macro:CHECKB|CHECKB]], [[george:macro:CHECKEXT|CHECKEXT]], [[george:macro:CHTRAN|CHTRAN]], [[george:macro:CONVERTX|CONVERTX]], [[george:macro:DOWN|DOWN]], [[george:macro:FADDRESS|FADDRESS]], [[george:macro:FDRMQUERY|FDRMQUERY]], [[george:macro:FOUTMOVE|FOUTMOVE]], [[george:macro:GEOERR|GEOERR]], [[george:macro:GETWORD|GETWORD]], [[george:macro:HUNTW|HUNTW]], [[george:macro:ILLEGALX|ILLEGALX]], [[george:macro:JENG|JENG]], [[george:macro:JENVNOT|JENVNOT]], [[george:macro:JNOTFDRM|JNOTFDRM]], [[george:macro:KEEPMESS|KEEPMESS]], [[george:macro:LOCKCA|LOCKCA]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MFINDEXOF|MFINDEXOF]], [[george:macro:MFINDSU|MFINDSU]], [[george:macro:OLPFIN|OLPFIN]], [[george:macro:OUTPACK|OUTPACK]], [[george:macro:PAIR|PAIR]], [[george:macro:PICKREP|PICKREP]], [[george:macro:PMODES|PMODES]], [[george:macro:PROGBRKIN|PROGBRKIN]], [[george:macro:RELSTX|RELSTX]], [[george:macro:RESTART|RESTART]], [[george:macro:RUNPROG|RUNPROG]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETREP|SETREP]], [[george:macro:SMUSEST|SMUSEST]], [[george:macro:STEPBACK|STEPBACK]], [[george:macro:SUSESTX|SUSESTX]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TESTREPX|TESTREPX]], [[george:macro:TOPCA1|TOPCA1]], [[george:macro:TRACE|TRACE]], [[george:macro:TRUSTED|TRUSTED]], [[george:macro:UNPLUG|UNPLUG]], [[george:macro:WORDFIN|WORDFIN]] 22FL ... SEG PERION,860,FRANK BLUNDELL,PERION 22T* ...# 2394 ...# COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 23JR ...# 23YG # 24D6 SEGENTRY K1PERION,QK1PERION 24XQ 25CB ... SEGENTRY K2PERION,QK1PERION 25X2 # 26BL # PROGRAM ILLEGAL 26W= # 27*W XJMOD +JYMODE 27TG XJMR +JYMODER 28*6 XJRV +JYNOCA 28SQ #DEF XCA=EVENT2 29#B #DEF TREP=EXEC3 [REPLY FROM BSTS 29S2 # 2=?L # 2=R= PLINK 2?=W ZA PAIR PERION,1 2?QG # 2#=6 # CHECK IF S-TRUSTED AND MODES 4,5,6 2#PQ XST LDX 0 6 [MODE 2*9B ANDN 0 #4777 2*P2 SBN 0 7 2B8L BPZ 0 XRV [ILLEGAL IF MODE NOT 4,5 OR 6 2BN= TRUSTED APETADDR(2),PA3,S [J TO PA3 IF PROG NOT S-TRUSTED 2C7W LDX 0 EXMODE(2) [OPENING MODE 2CMG SBN 0 #200 2D76 BZE 0 PA4 [J IF ONLY OPEN FOR READING 2DLQ PA5 ACROSS SPERION,1 [DEAL WITH MODES 4,5,6 2F6B PA3 TRUSTED APETADDR(2),XRV,Q [ILLEGAL IF NOT Q-TRUSTED 2FL2 PA4 LDX 0 6 [MODE 2G5L SBN 0 5 2GK= BZE 0 PA5 [O.K IF ONLY CHECK READING 2H4W # PUT OLPA TO SLEEP WAKE UP PCA TO DO ILLEGAL 2HJG XRV TOPCA1 ZA(1) 2J46 UNPLUG 2JHQ ILLEGALX 3 [ILLEGAL 2K3B # 2KH2 # EXEC1 CONTAINS SUBPROGRAM NUMBER 2L2L # EXEC2 CONTAINS ADDRESS OF CONTROL AREA 2LG= # 2L^W # 2MFG QK1PERION 2M^6 LDX 1 APETADDR(2) 2NDQ LOCKCA 1,XCA(2) [LOCK CONTROL AREA 2NYB ... LDX 6 EVENT4(2) 2RW6 LDX 1 FX1 2S*Q #SKI K6PERION>99-99 2STB ( 2T*2 LDX 0 6 [CHECK TYPE IF TRACING 2TSL SRL 0 15 2W#= ANDN 0 #377 [MUST BE 6,7,13 OR 26 2WRW SBN 0 6 [ 2X?G BZE 0 XAA 2XR6 SBN 0 1 2Y=Q BZE 0 XAA 2YQB SBN 0 6 2^=2 BZE 0 XAA 2^PL SBN 0 13 [OR EDS 30 329= BZE 0 XAA 32NW GEOERR 1,WRNGTYPE 338G XAA 33N6 ) 347Q ANDX 6 XM2(1) [MASK OUT TYPE 34MB LDX 4 6 3572 ANDX 4 XM1(1) 35LL BZE 4 XB [JUMP IF TRANSFER MODE 35MC ...#UNS CAFSINT 35N8 ...( 35N^ ...# FOR CAFS, WE SPLIT OUT THE SPECIAL CAFS MODE TRANSFERS 35PQ ...# AT THIS POINT. THE MODES IN QUESTION ARE #12 & #13. 35QH ...# 35R# ... LDX 0 CAFSPTR [MODES ARE ILLEGAL WITHOUT CAFS 35S5 ... BZE 0 SNOTCAFS [JIF NO CAFS SYSTEM 35SW ...# 35TM ... LDEX 4 6 [ISOLATE NON-ADDITIVE PART OF MODE 35WD ... SBN 4 #12 35X9 ... BZE 4 SCAFSMODE [JIF CAFS MODE #12 35Y2 ... SBN 4 1 35YR ... BNZ 4 SNOTCAFS [JIF NOT A CAFS MODE 35^J ...# 362* ...SCAFSMODE 3636 ... ACROSS CAFSPERI,1 [GO TO HANDLE CAFS PERI MODES 363X ...# 364N ...SNOTCAFS 365F ...) 366= LDX 3 XJMOD(1) [MODE IN ERROR INDENTIFIER 36KW LDX 4 6 [ 375G ANDX 4 XM3(1) [ 37K6 BNZ 4 XRV [JUMP IF ILLEGAL MODE 384Q LDX 4 6 38JB ANDN 4 #1777 3942 LDX 5 4 39HL SBN 4 #1600 [JUMP IF ILLEGAL MODE 3=3= BPZ 4 XRV 3=GW LDX 0 EXMODE(2) [OPENING MODE 3?2G SBN 0 #1600 3?G6 BZE 0 PA1 [J IF OPENING MODE #1600 3?^Q SBN 0 #100 3#FB BNZ 0 PA2 [J IF NOT #1700 3#^2 PA1 LDX 4 5 [ACTUAL MODE 3*DL SBN 4 #1000 3*Y= BZE 4 PA2 3BCW SBN 4 #400 [ONLY MODES #1000 AND #1400 ALLOWED 3BXG BNZ 4 XRV [IF OPENING MODES EITHER #1600 OR #17 3CC6 PA2 SRL 6 10 3CWQ ANDN 6 3 [ADDITIVE BITS IF ANY 3DBB LDX 4 5 3DW2 SBN 4 #401 [JUMP IF MODE #100-#400 (OPEN) 3F*L BNG 4 XC 3FT= SBN 4 #177 [JUMP IF #600-OPEN SCRATCH 3G#W BZE 4 XC 3GSG SBN 4 #400 [JUMP IF CREATE #1200 3H#6 BZE 4 XC 3HRQ LDCT 0 #400 3J?B ORS 0 GIVE(2) [SET OPEN ILLEGAL MARK 3JR2 BRN XD 3K=L XC LDCT 0 #400 3KQ= ANDX 0 GIVE(2) 3L9W BNZ 0 XRV [JUMP IF OPEN ILLEGAL 3LPG LDX 3 XJMR(1) [MODE INCOMPATIBLE 3M96 LDX 0 5 3MNQ SBN 0 #401 3N8B BNG 0 XE 3NN2 TXU 5 EXMODE(2) [JUMP IF MODE INCOMPATIBLE 3P7L BCS XRV 3PM= BRN XD 3Q6W XE LDX 0 EXMODE(2) 3QLG SBN 0 #401 3R66 BPZ 0 XRV [JUMP IF MODE INCOMPATIBLE 3RKQ XD LDX 2 5 3S5B #SKI K6PERION>199-199 3SK2 TRACE 2,PERIMODE 3T4L SBN 2 #400 3TJ= BPZ 2 XF 3W3W LDN 2 0 [SET X2 MODIFER TO PAIR TABLE 3WHG XF SRL 2 7-HLINK 3X36 ADX 2 FX1 3XGQ ACROSSVAR XLINK(2) 3Y2B # 3YG2 # LINK TABLE 3Y^L # 3^F= XLINK 3^YW PAIR ANTIC,2 [MODES 100-400 OPEN 42DG PAIR EXTEND,1 42Y6 PAIR ANTIC,3 [MODE 600 SCRATCH 43CQ PAIR RENAMEX,1 43XB PAIR CLOSBAC,1 44C2 PAIR READSPEC,2 44WL PAIR ANTIC,4 [MODE 1200 CREATE 45B= PAIR CLOSBAC,1 45TW PAIR READSPEC,1 46*G PAIR EXINONE,1 [EXTEND INTO(#1500) 46T6 # 47#Q # 47SB # 48#2 XM1 #47730 48RL XM2 #77777 49?= XM3 #70077 49QW # 4==G # CHECK TRANSFER MODE FOR LEGALITY 4=Q6 # 4?9Q # 4?PB XB LDX 3 XJRV(1) 4#92 LDN 4 5 4*8= CHECKEXT XCA(2),4,XRV,APETADDR(2),W,XBA,HLOCK1,,K1PERION 4BM6 XBA 4C6Q LDX 3 XJMOD(1) 4CLB LDX 4 6 4D62 ANDN 4 #47 4DKL SBN 4 4 4F5= BNG 4 YA [JUMP IF MODE 0,1,2,3 4FJW SBN 4 3 4G4G BZE 4 YA [OR 7 4GJ6 SBN 4 26 4H3Q BZE 4 YA 4HHB SBN 4 2 [OR #41 OR #43 4J32 BNZ 4 XST 4JGL YA LDX 5 6 4K2= ANDN 5 7 [X5 HOLDS BASIC MODE 4KFW LDX 4 6 4K^G SRL 4 9 4LF6 ANDN 4 #30 [MODES #20000,#30000 4LYQ ANDN 6 #40 [MODE #40 4MDB ORS 4 6 4MY2 SBN 4 #10 4NCL BZE 4 XRV [JUMP IF ADD MODE #10000ONLYSET 4NX= LDCT 0 #400 4PBW ORS 0 GIVE(2) [SET OPEN ILLEGAL BIT 4PWG LDX 0 5 4QB6 BZE 0 YB 4QTQ SBN 0 2 4R*B BZE 0 YB [JUMP IF READ 4RT2 SBN 0 5 4S#L BZE 0 YB [ 4SS= LDX 0 EXMODE(2) 4T?W SBN 0 #200 4TRG BZE 0 XRV [JUMP IF FILE OPEN FOR READING 4W?6 SBN 0 #1500 4WQQ BZE 0 XRV [NO WRITING ALLOWED IF OPENED AS #170 4X=B BRN YB 4XQ2 # 4Y9L # 4YP= # TRANSFER ROUTINE 4^8W # 4^NG QMASK #777777 5286 RMASK #100000 52MQ TWO +2 537B TEN +10 53M2 SESS +CHWRITE 546L +CHREAD 54L= # 555W # MONITORING FILE MESSAGE IDENTIFIERS 55KG # 5656 NCT +JYCOUNT [COUNT OUT OF RANGE 56JQ NOBUF +JYNOBUF [BUFFER OUT OF PROGS RESERVATIONS 574B RFAIL +EWOWN [BLOCK N FAIL 57J2 #FID 1 1 1 583L PERF +JYPERFAIL [ONLINE %A FAIL 592W #DEF TAC1=EWORK6 5=FQ #DEF TAC2=TAC1+1 5=^B #DEF TAC3=TAC2+1 5?F2 #DEF TAC4=TAC3+1 5?YL #DEF TAC5=TAC4+1 5#D= #DEF TAC6=TAC5+1 5#XW #DEF PB=BSET+BONL+BOBJ 5*CG # 5*X6 # THE SUBROUTINE MERELY RELSTX'S THE SU 5BBQ # 5BWB RELSTX [IF SU SERIAL NO IS IN CA3 OF AOLPT 5CB2 LDX 6 EWORK3(2) 5CTL RELSTY [IF ALREADY IN X6 5D*= SBX 0 FX1 5DN^ ... STO 0 ACOMMUNE1(2) [DUMP LINK 5GRB ... RELSTX 6,PA6 [RELEASE SU 5H?2 BRN PBA6 5HQL PA6 LDX 1 FX1 5J== LDX 2 FX2 5JPW ...PBA6 LDX 0 ACOMMUNE1(2) 5K9G ADX 0 FX1 5KP6 EXIT 0 0 5L8Q # 5LNB # 5M82 # SUBROUTINE TO ISSUE AUTSTART MACRO 5MML # 5N7= # LINK X7 NO COORDINATION 5NLW # 5P6G XAUTS 5PL6 AUTSTART [MAKE AUTO 5Q5Q X1 EXIT 7 0 5QKB # 5R52 # 5RJL YB STOZ AWORK4(2) [CLEAR TO HOLD REPLYS TO PROG 5S4= STO 5 AWORK3(2) [REMEMBER TRANSFER MODE 5SHW STO 6 AWORK1(2) [AND ADDITIVE MODES 5T3G LDX 0 EWCHAN(2) [CHANNEL NO. 5TH6 STO 0 AWORK2(2) [REMEMBER 5W2Q LDX 6 XCA(2) [GET ADDRESS OF PROGS CONTROL AREA 5WGB STO 6 TAC1(2) [AND REMEMBER 5X22 #SKI K6PERION>199-199 5XFL TRACE 6,PERICAAD 5X^= LDN 4 5 [LENGTH OF PROGS CONTROL AREA 5YDW LDX 3 APETADDR(2) [LOAD ADDRESS OF ASSOCIATED PCA 5YYG LDN 7 EWORK1(2) [START OF AREA IN AOLPT TO MOVE CA TO 5^XQ FOUTMOVE 3,6,7,4,HLOCK1,2 [MOVE PROG'S CA TO EWORK1-5 OF AOLPT 63BL #SKI K6PERION>199-199 63W= ( 64*W TRACE EWORK1(2),PERICA1 64TG TRACE EWORK2(2), 65*6 TRACE EWORK3(2), 65SQ TRACE EWORK4(2), 66#B TRACE EWORK5(2), 66S2 ) 67?L LDX 1 ANM(3) [MEMBER NO OF PROG FROM PCA 67R= ANDN 1 #3 [BOTTOM TWO BITS 68=W PMODES 1,3 [GIVES ADDRESSING MODE OF PROG IN X1 68QG ANDN 1 #10 [SEE IF EXTENDED STORE MODE 69=6 BNZ 1 NP [AND JUMP IF IT IS 69PQ LDX 0 BSP16 [GET MASK FOR 15AM 6=9B BRN NP1 6=P2 NP LDX 0 BITS22LS [MASK FOR 22AM 6?8L NP1 ANDX 0 EWORK4(2) [FORGET ANY SPURIOUS BITS 6?N= STO 0 TAC4(2) [REMEMBER PROGS BUFFER ADDRESS 6#7W MFINDEXOF 3,EXNUM(2) [GET ADDRESS OF ASSOCIATED EWDAS/EXOF 6#MG LDCH 0 FIP+8(3) [GET FLAW INDECATOR FROM EXOF 6*76 ANDN 0 #2 [I.E B4=1 NO FLAW ACTION 6*LQ ORS 0 AWORK1(2) [AND REMEMBER 6B6B BNZ 0 NP2 [J IF NO FLAW ACTION 6BDR ... LDN 0 #10 [ ADD. MODE #30000 HAS PRECEDENCE 6BR8 ... ANDX 0 AWORK1(2) [ OVER FLAW ACTION 6C5K ... BZE 0 NP2 [J IF NO MODE #30000 .... 6CD2 ... LDN 0 #2 [ ... OTHERWISE IGNORE FLAW -ACTION- 6CQC ... ORS 0 AWORK1(2) [ -INDICATOR IN THE EXOF 6D4W NP2 LDCT 0 #200 6DJG ANDX 0 EXMAYBE(2) 6F46 BNZ 0 PA6A [J IF NOT S-TRUSTED WITH SYS FILE OFW 6FHQ LDX 0 EXMODE(2) [OPENING MODE 6G3B SBN 0 #1700 6GH2 BNZ 0 PA7 [J NOT #1700 6H2L PA6A LDN 0 #4002 [B12=S-TRUSTED AND OPENED IN #1700 6HG= ORS 0 AWORK1(2) [B22=NO FLAW ACTION REQUIRED 6H^W PA7 LDX 0 EWORK3(2) [GET LENGTH OF PROGS TRANSFER 6JFG LDX 1 FX1 6J^6 BZE 0 RONGLEN [ZERO LENGTH ILLEGAL 6KDQ TXL 0 RMASK(1) [TEST IF LENGTH -VE OR > 32767 6KYB BCC RONGLEN [ILLEGAL IF YES 6LD2 STO 0 TAC3(2) [REMEMBER LENGTH 6LXL LDX 7 EWORK5(2) [GET LOGICAL BUCKET NUMBER 6MC= BZE 7 RONGLBN [ILLEGAL IF ZERO 6MWW BNG 7 RONGLBN [OR NEGITIVE 6NBG LDX 0 EXMODE(2) [MODE FILE WAS OPENED 6NW6 SBN 0 #400 6P*Q BNZ 0 N400 [J IF NOT MODE #400 6PTB ADX 7 FIP+10(3) [JUGGLE WITH LBN 6Q*2 SBN 7 1 [TO MAKE COMPATABLE WITH OTHER MODES 6QSL N400 LDN 1 FDCELLS(3) [POINTER TO FD CELLS 6R#= SBN 1 7 [STEP BACK 7 6RRW LDEX 6 FIP+5(3) 6S?G NEXT BZE 6 RONGLBN [LBN OUT OF RANGE 6SR6 SBN 6 1 [REDUCE COUNT 6T=Q ADN 1 6 [UPDATE POINTER TO NEXT CELL 6TQB TXL 7 6(1) [LOOK AT NEXT CELL 6W=2 BCC NEXT [AND J IF SPECIFIED LBN NOT IN THIS C 6WPL SBX 7 0(1) [GET BUCKET NO. RELATIVE TO START OF 6X9= LDX 4 FIP+8(3) 6XNW ANDN 4 #77 [BUCKET SIZE FROM EXOF 6Y8G MPY 7 4 [BLOCK SIZE IN X7 AND X0 6YN6 DVD 7 5(1) [CONVERT TO CYLINDER X0 AND BLOCK X7 6^7Q ADX 0 2(1) [ADD ST CYL RELATIVE TO THE SU 6^MB STO 0 EWORK1(2) [REMEMBER IN EWORK1 OF AOLPT 7272 LDX 6 5(1) [BLOCKS/SEEK AREA FROM FDCELL 72LL SBX 6 7 [BLOCK REMAINING TO BE TRANSFERED 736= SLL 6 7 [X 128 TO GIVE MAX LENGTH (MODES 2 OR 73KW ADX 7 3(1) [ADD STARTING SEGMENT 745G STO 7 EWORK2(2) [AND STORE 74K6 LDX 0 1(1) [SERIAL NO. OF STORAGE UNIT 754Q STO 0 EWORK3(2) 773= ... SUSESTX 1(1),NOTON [SEE IF SU ONLINE 77GW LDX 0 ABSUN(1) [X1 POINTS TO ASTUC SO GET BSUN 782G LDX 2 FX2 78G6 STO 0 TAC2(2) [REMEMBER FOR BSTS 78^Q LDX 0 ASUBASE(1) [STARTING CYLINDER OF SU 79FB ADS 0 EWORK1(2) [AND ADD TO OTHER CYL 79GJ ...[ 79HQ ...[ EMULATION CHANGE: 79JY ...[ STORE CYL*BLOCKS PER CYL+BLOCK PART INTO X7 79L6 ...[ CONVERTX THEN RETURNS IN X0 THE ABSOLUTE 79M# ...[ BLOCK ADDRESS WITH X0 SET 79NG ...[ 79PN ... LDX 7 EWORK1(2) [CYL PART OF ADDRESS 79QW ... JENVNOT NEMU,MEEP [J IF NOT MEEP EMULATION 79S4 ... LDX 0 EWORK2(2) [BLOCK PART OF ADDRESS 79T= ... MPA 7 HBLOCK(1) [CALCULATE ABSOLUTE BLOCK ADDRESS 79WD ... STO 0 7 [FOR CONVERTX MACRO 79XL ...NEMU 79^2 LDX 0 HTYPE(1) [TYPE/SUBTYPE OF SU 7=DL STO 0 EWORK4(2) 7=Y= #SKI K6PERION>199-199 7?CW ( 7?XG TRACE EWORK1(2),PERICYL 7#C6 TRACE EWORK2(2),PERIBLK 7#WQ TRACE EWORK3(2),PERISU 7*BB ) 7*W2 ... CONVERTX 7,EWORK2(2),EWORK4(2) [GET BS HARDWARE ADDRESS 7B*L LDX 2 FX2 7BT= STO 0 TAC5(2) [STORE FOR BACKTRAN 7C#W LDX 1 FX1 7CSG TXL 5 TWO(1) 7D#6 BCS NP4 [JUMP IF MODES 0 OR 1 7DRQ SBN 5 7 7F?B BNG 5 NP5 [J IF MODES 2 OR 3 7FR2 LDX 3 TAC1(2) [REMEMBER CONTROL ADDRESS 7G=L CALL 7 XAUTS [MAKE AUTO IF NECESSARY 7GQ= BRN SEVEN [MUST BE MODE 7 7H9W NP4 LDN 6 128 [BLOCK SIZE 7HPG MPY 6 4 [MAX LENGLH ALLOWED 7J96 LDX 6 7 7JNQ NP5 TXL 6 TAC3(2) [COMPARE MAX LENGTH WITH LENGTH NEEDE 7K8B BCC NP6 [J IF MAX COUNT NOT EXCEEDED 7KN2 STO 6 TAC3(2) [SET NEW COUNT EQUAL TO MAX LENGTH 7L7L BPZ 5 NP6 [J IF MODES 0 OR 1 7LM= LDCT 0 #200 [END OF SEEK AREA REPLY 7M6W ORS 0 AWORK4(2) 7MLG NP6 LDX 6 TAC3(2) [COUNT 7N66 ADX 6 TAC4(2) [PLUS START ADDRESS TO 7NKQ ANDX 6 QMASK(1) 7P5B ORS 6 AWORK4(2) [REPLY WD 7P=J ...#SKI G4 [RELEASE SU IN G4 IN CASE QUOTA 7PCQ ... CALL 0 RELSTX [NEEDS TO BE INCREASED 7PK2 LDX 5 AWORK3(2) [MODE OF TRANSFER 7Q4L ANDN 5 1 7QJ= SMO 5 [USE AS MOD TO OBTAIN 7R3W LDX 7 SESS(1) [READ OR WRITE ACCESS IDENTIFIER 7RHG ... CHECKB TAC4(2),TAC3(2),OUT,APETADDR(2),7,NP8,HLOCK2,,QK2PERION 7T2B [^ CHECK BUFFER 7T=8 ...#SKI G4 [GET SU BACK ONLINE IN G4 7TG2 ...( 7TPS ...NP8 SUSESTX EWORK3(2),NOTON 7T^L ... LDX 1 FX1 7W9D ... LDX 2 FX2 7WF= ...) 7WP4 ...#SKI G3 7WYW ...NP8 7X8N ... LDX 0 AWORK1(2) [GET ADDITIVE MODES 7XDG ANDN 0 #40 7XY6 BZE 0 NP9 [J IF NOT WRITE WITHOUT CHECK READ 7YCQ LDN 5 9 [SET TO MODE 9 7YXB NP9 LDX 3 TAC1(2) [REMEMBER PROGS CONTROL AREA ADDRESS 7^C2 STO 5 TAC1(2) [STORE MODE AND DO BS TRANSFER 7^WL #SKI ADRMK7&G4 82B= ( 82TW # STORAGE UNIT MAY HAVE GONE OFFLINE DURING CHECKA 83*G # 83T6 JNOTFDRM XGO 84#Q 84SB MFINDSU 3,EWORK3(2) 85#2 JENG HUNIT(3),XGO 85RL CALL 0 RELSTX 86?= BRN NOTONDRM 86QW XGO 87=G ) 87D* ... CALL 7 XAUTS [MAKE AUTO IF NECESSARY 87L8 ... LDX 0 AWORK1(2) [GET ADDITIVE MODES IF ANY 87S3 ... ANDN 0 #30 [ISOLATE #20000 OR #30000 87^W ... SLL 0 9 [ENSURE X0 CONTAINS MODE 887P ... STO 0 4 [STORE ADD. MODE OR ZERO 88*J ... BACKTRAN TAC1(2),PB,TAC3(2),,TAC2(2),TAC5(2),TAC4(2),APETADDR(2),- 88HC ... EX4 88PB CHTRAN EWORK4(2),TFAIL,TFAIL [CHECK TRANSFER IS OK 8992 SEVEN CALL 0 RELSTX [RELEASE SU 89NL NP10 8=8= AUTFIN AWORK4(2) [ELSE SEE IF ANYTHING UP THE SPOUT 8=MW BRN K1PERION [AND GO FOR NEXT 8?7G # 8?M6 # TRANSFER HAS ILLEGAL LENGTH 8#6Q # 8#LB RONGLEN 8*62 LDX 7 NCT(1) [GET MONITORING FILE MESSAGE IDENTIFI 8*KL BRN PATH [JOIN ILLEGAL PATH 8B5= # 8BJW # BUFFER IS OUT OF PROGRAMS RESERVATIONS 8C4G # 8CJ6 OUT LDX 7 NOBUF(1) [RESERVATION VIOLATION MESSAGE 8D3Q CALL 0 RELSTX [RELEASE SU 8DHB PATH TOPCA1 PLINK(1) [CHANGE TO PCA 8F32 UNPLUG [UNPLUG PROG FROM EXEC 8FGL NP15 ILLEGALX 7 [PUMP OUT ILLEGAL MESSAGE 8G2= # 8GFW # PROGRAMS LOGICAL BUCKET NUMBER OUT OF RANGE 8G^G # 8HF6 RONGLBN 8HYQ LDCT 0 #10 [REPLY FOR LBN OUT OF RANGE 8JDB STO 0 AWORK4(2) [IN AWORK4 OF AOLPT 8JY2 LDX 3 TAC1(2) [PROGS CA ADDRESS 8KCL #SKI K6PERION>199-199 8KX= TRACE 7,PERIBLBN 8LBW CALL 7 XAUTS [MAKE AUTO IF NECESSARY 8LWG BRN NP10 8MB6 # 8MTQ # STORAGE UNIT NOT ONLINE 8N*B # 8NT2 NOTON LDX 2 FX2 8P#L #SKI ADRMK7 8PS= FDRMQUERY NOTONDRM [CHANNEL IN DRM 8Q?W LDX 3 AWORK1(2) [REMEMBER IF S-TRUSTED OR NOT 8QRG LDX 4 TAC1(2) [PROGS CONTROL AREA ADDRESS 8R?6 LDX 5 EWCHAN(2) [CHANNEL NO. OF FILE 8RQQ LDX 6 EWORK3(2) [REMEMBER SERIAL NO. OF SU 8S=B LDX 1 FX1 8SQ2 TOPCA1 PLINK(1) [CHANGE TO APET ACTIVITY 8T9L UNPLUG [UNPLUG PROG FROM EXEC 8TP= CAPCA [CHANGE TO CPAT I.E. SWAPOUT PROG 8XMQ ... SMUSEST 6,NONL,REAKIN [GET SU ONLINE 8Y7B CALL 0 RELSTY [RELEASE SU 8YM2 STEPBACK [STEP PROGS ONR BACK 8^6L RUNPROG [AND TRY AGAIN 8^L= #SKI ADRMK7 925W ( 92KG # SU UNIT ONLINE WHEN CHANNEL IN DRM 9356 # 93JQ NOTONDRM 944B LDCT 0 #410 [1**M*1 94J2 STO 0 AWORK4(2) [REJECTED/INOPERABLE REPLY 953L LDX 1 APETADDR(2) 95H= LDX 3 EVENT2(2) 962W ADN 3 1 9726 FADDRESS 1,3,HLOCK1,2 98F2 # NOW HAVE PTR TO THE REPLY WD DESTINATION 98YL LDX 4 AWORK4(2) [GET REPLY 99D= STO 4 0(3) [INSERT REPLY WD 99XW OLPFIN APETADDR(2) [& CAPUT 9=CG BRN K1PERION [NEXT PLEASE 9=X6 ) 9?BQ # 9?WB # BREAK IN OCCURRED WHILE WAITING FOR UNIT TO COME ONLINE 9#B2 # 9#TL REAKIN 9**= STEPBACK [STEP PROGS ONR BACK 9*SW PROGBRKIN [REPORT BREAKIN 9B#G # 9BS6 # OPERATOR TYPES CANDO LOAD STORAGE UNIT 9C?Q # 9CRB NONL ANDN 3 #4000 9D?2 BNZ 3 PA8 [J IF S-TRUSTED BS SET ALSO IN REPLY 9DQL LDCT 3 #40 [FAILED REPLY B3=1 NOT S-TRUSTED 9F== BRN PA9 9FPW PA8 LDCT 3 #50 [FAILED REPLY B3-1 B5=1 FOR S-TRUSTED 9G9G PA9 NGN 7 1 [INDICATE PROG NOT TO BE RESTARTED 9GP6 BRN ZMESS 9H8Q # 9HNB # FAILED OR OR INOPERABLE REPLY FROM BACKTRAN 9J82 # 9JML TFAIL LDX 4 3 [REMEMBER CONTROL AREA ADDRESS 9K7= MFINDSU 3,EWORK3(2) [GET POINTER TO ASTUC 9KLW LDX 5 AWORK2(2) [CHANNEL NUMBER 9L6G LDX 0 TREP(2) [REMEMBER REPLY 9LL6 STO 0 AWORK2(2) [FROM BSTS 9M5Q LDX 6 EWORK3(2) [SERIAL NO. 9MKB STO 6 EWORK5(2) [STORE FOR FLAW 9N52 LDX 7 EWORK1(2) [CYLINDER 9NJL SBX 7 ASUBASE(3) 9P4= MPY 7 HBLOCK(3) [MULTIPLY BY DEPTH OF UNIT 9PHW ADX 0 EWORK2(2) [ADD BLOCK NO 9Q3G STO 0 EWORK3(2) [ACTUAL BLOCK THAT FAILED 9QH6 NGN 7 1 [SET PROGRAM NOT TO BE RESTARTED MARK 9R2Q LDX 0 AWORK1(2) 9RGB ANDN 0 #2 9S22 BZE 0 RUG [J IF FLAW ACTION REQUIRED 9SFL CALL 0 RELSTY [RELEASE SU 9S^= BADBLOCK TAC2(2) [UNSET FAIL BIT IN BSA 9TDW KEEPMESS RFAIL(1),6,EWORK3(2) [OUTPUT FAIL MESSAGE TO MONITORING F 9TYG SETREP 9WD6 LDX 3 AWORK1(2) [ADDITIVE MODES 9WXQ LDN 0 0 9XCB ANDN 3 #4000 9XX2 BZE 3 PA10 [J IF NOT S-TRUSTED 9YBL LDX 0 AWORK2(2) [BSTS REPLY 9YW= SRL 0 18 9^*W ANDN 0 #14 [TEST BITS 2 AND 3 9^TG BNZ 0 PA10 [J IF SET =2*6 ORN 0 1 [SET B5 IF OTHER THAN 2 OR 3 =2SQ PA10 ORN 0 4 [B3 OF REPLY =3#B SLL 0 18 [SHIFT TO TOP =3S2 NP13 STO 0 AWORK4(2) [SAVE REPLY TO PROG =4?L LDX 0 AWORK1(2) =4R= ANDN 0 #20 [SEE IF ADDITIVE MODE #20000 =5=W BNZ 0 RESTART [NO NEED TO STOP PROG =5QG NP11 HUNTW 1,EWDAS,EWMESS [LOOK FOR MESSAGE BLOCK =6=6 BNG 1 NP10 [BLOCK NOT THERE =#K= STO 5 AWORK2(2) [REMEMBER CHANNEL NO =*4W STO 7 AWORK3(2) [ & RESTART FLAG =*JG AUTFAIL AWORK4(2) [TERMINATE =B46 BRN K1PERION [NEXT PLEASE =C3B ZMESS STO 4 AWORK1(2) [SAVE CONTROL AREA ADDRESS =CH2 ...XPAR LDCT 4 #006 [ TYPE IN B0-8 =D2L ... ADX 4 EWCHAN(2) [ CHANNEL IN B9-23 =DG= ... OUTPACK 4,1,PERINAME,XPAR [ ASSEMBLE PARAM FOR ILLEGALX =JC= LDX 4 AWORK1(2) =Q=Q NP12 =QQB ADN 4 1 [X4 PTS TO REPLY WD REL TO PROG DATUM =R=2 GETWORD 4,4 [REL TO GEORGE DATUM =RPL TESTREP RESVIOL,RERR =S9= SMO 4 =SNW STO 3 0 [REPLY INSERTED =T8G WORDFIN =W7Q BNG 7 NP16 [J IF PROG NOT TO BE RESTARTED =WMB RUNPROG [CARRY ON RUNNING PROG =X72 NP16 LDX 7 PERF(1) [ =XLL BRN NP15 =Y6= # =YKW # =^5G RUG DOWN FLAW,1 [DEAL WITH FAILED TRANSFER =^K6 PICKREP 3 [PICKUP REPLY ?24Q CALL 0 RELSTY [RELEASE SU ?2JB TESTREPX 3,EXFAIL,SETREP ?342 TESTREPX 3,ACAFULL,REPLY ?3HL TESTREPX 3,OK,RESTART ?43= GEOERR 1,WRONGREP ?4GW RESTART ?52G LDN 7 0 [INDICATE PROG TO BE RESTARTED ?5G6 LDX 3 4 ?5^Q BRN NP11 ?6FB REPLY LDN 0 8 [B2 OF REPLY ?6^2 BRN PA10 ?7DL # ?7Y= RERR GEOERR 1,RESVIOLA ?8CW # ?9C6 QK2PERION ?=BB BRN K1PERION ?=W2 # ??*L MENDAREA 1023-0?<50,K99PERION ??T= #END ^^^^ ...06622763000100000000