8 22FL #OPT K0LISTFREE=0 12 22_= #LIS K0LISTFREE>K0LISTFILE>K0ALLGEO 9 236D ... SEG LISTFREE,,,,G253 4 23?L ...[ 15 23DS ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 13 23L2 ...[ THIS EXCLUDES CODE UNDER #SKI G253 4 23R8 ...[ 7 23YB ...#OPT G253 = 0 6 245J ...#SKI G253&1 16 24=Q ...# WITH UGUG EDIT M253 (LISTFILE IN NO USER CONTEXT) 11 24D6 SETENTRY LISTFREE,POINT,2 13 24MY FSHENTRY K3LISTFREE,,POINT3,POINT3 11 24QH SEGENTRY K4LISTFREE,POINT4 10 24T6 [ ENTRY FOR THE LFSIZE MACRO 11 24XQ MENDAREA 30,K95LISTFREE 17 25CB [THIS SEGMENT FREEZES ANY FILES INVOLVED IN THE REQUEST. 14 25X2 [IT THEN CHAINS THE BLOCKS IN THE LFCHAIN. 4 26BL [ 4 26W= [ 21 27*W [*********************************************************************** 6 27TG [DATA AREA 18 28*6 [THERE FOLLOWS A LIST OF FLAGS IN GMODE IN THE GOUT/INFO. 18 28SQ PERFREBIT #20 [PERI IS FREE AT ISPER 16 29#B PROPBIT #4000000 [PROPERTY BLOCK 15 29S2 SETUPBIT #10000000 [SETUP FILE 19 2=?L OPENSET #400000 [SETUP FILE OPEN OR OFFLINE 16 2=R= OPENMAIN #1000000 [MAIN FILE OPEN 18 2?=W XLOSTBOTH #1400 [FILE LOST MASK FOR GKEY 8 2?QG XLOSTM #1000 16 2#=6 XLOSTS #400 [SETUP FILE LOST 15 2#FY SMFILEMSET #2010 [MULTIFILE 17 2#PQ SMULTSETBIT #10 [MULTIFILE WITH SETUP 8 2*9B SHIFTLEN +12 8 2*P2 OPENBOTH #140 17 2*R9 XREM #770000 [REMOTE LF COUNT MASK 17 2*TD #7777 [LOCAL LF COUNT MASK 10 2*XM SEGENTRY K60LISTFREE 16 2*_W XREMMX #1000000 [REMOTE LF MAX 10 2B45 SEGENTRY K61LISTFREE 16 2B6# #100 [LOCAL LF MAX 12 2B8L [NOW A FEW MISCELLANEOUS CONSTANTS. 20 2BN= XOLIN +GOUT+INFO [ONLINE INFORMATION BLOCK TYPE 18 2C7W WJLFNOP +JLFNOP [NOPER REPLY FOR ONLINE 18 2CMG WJSETP15 +JSETP15 [ONLINE SETUP FILE LOST 5 2D76 SEARCH 4 2DLQ [ 21 2F6B [*********************************************************************** 7 2FL2 [SUBROUTINE AREA 13 2G5L [THIS S/R SEARCHES THE MISC CHAIN FOR 12 2GK= [INFORMATION ABOUT AN ONLINE REQUEST 8 2H4W LDX 2 FX2 8 2HJG LDX 1 FX1 8 2J46 LDN 4 BMISC 8 2JHQ LDN 3 BMISC 9 2K3B SEAR1 LDX 3 FPTR(3) 7 2KH2 TXU 3 4 8 2L2L BCS SEAR2 15 2LG= LDN 3 0 [NOT FOUND 7 2L_W SEAR3 EXIT 7 0 9 2MFG SEAR2 LDX 0 ATYPE(3) 8 2M_6 SRL 0 12 9 2NDQ TXU 0 XOLIN(1) 8 2NYB BCS SEAR1 9 2PD2 LDX 0 GJOBS(3) 9 2PXL TXU 0 JOBNO(2) 8 2QC= BCC SEAR3 8 2QWW BRN SEAR1 5 2RBG TESTATE 16 2RW6 [THIS S/R EXPECTS A FILE/FABSNB AND A DIRECTORY OPEN 18 2S*Q [IT CHECKS WHETHER THE FILE IS OPEN UNCLEANLY OR OFFLINE, 18 2STB [INITIATING A RETRIEVE IF NECESSARY.IT CLOSES THE DIRECTORY. 20 2T*2 [EXIT 0 WHEN THE FILE IS IN A SUITABLE STATE FOR OPENING 12 2TSL [EXIT 1 WHEN FILE IS LOST 19 2W#= [EXIT 2 WHEN FILE IS OFW OR OFFLINE(IT CANT BE BOTH!) 4 2WRW [ 8 2X?G SBX 6 FX1 10 2XR6 MHUNT 1,FILE,FABSNB 9 2Y=Q LDX 0 ATYPE(1) 8 2YQB ANDN 0 #200 17 2_=2 BZE 0 TNWF [J IF NOT WORKFILE 18 2_PL OPENTEST TOK1,TSETD [TEST FOR UNCLEAN OPEN 8 329= BRN TOK 10 32NW TOK1 MHUNT 1,FILE,FABSNB 8 338G LDN 0 #200 16 33N6 ERS 0 ATYPE(1) [NO LONGER W/F 18 347Q TNWF TESTOPEN TSETC [TEST FOR UNCLEAN OPEN 9 34CJ TESTREP2 OK,TOK3 8 34MB OFFLTEST TOK3 6 3572 RVDIR 6 357T ...#SKI G253&1 4 358N ...( 14 359H ... TESTREP2 OK,RHA,LOST,TLOST,ONLINE,TOK 10 35=B ... GEOERR 1,LFRVREPW 4 35?9 ...RHA 10 35#4 ... ANOTHER FILE,FABSNB 11 35#X ... SETNCORE 20,3,ADATA,CREADL 8 35*Q ... STOZ A1(3) 8 35BK ... UNNORM TWO 11 35CD ... MHUNTW 3,ADATA,CREADL 13 35D? ... OUTPARAM A1(3),CPDATA,ADATA,CREADL 9 35F6 ... MONOUT ARHLF2 10 35F_ ... MFREEW ADATA,CREADL 10 35GS ... MFREEW FILE,FABSNB 8 35HM ... BRN TSETB 4 35JG ...) 7 35K* ...#SKI G253&1$1 15 35LL TESTREP2 OK,TSETB,LOST,TLOST,ONLINE,TOK 10 366= GEOERR 1,LFRVREPW 15 36KW [TESTOPEN DOES NOT INDICATE A WRITE SAVED FILE 10 375G [WE MUST TEST FOR THIS AND 11 37K6 [IF FOUND TAKE UNCLEAN OPEN EXIT 9 37XH TOK3 MHUNTW 1,FILE,ENT 9 389Y LDX 0 ESVCT(1) 8 38JB SRL 0 12 17 3942 BZE 0 TOK2 [J IF NOT WRITE SAVED 18 39HL ADN 6 2 [ELSE UNCLEAN OPEN EXIT 7 3=3= TOK2 CLOSETOP 8 3=GW BRN TOK 7 3?2G TSETC CLOSETOP 18 3?G6 TSETD LDX 0 AWORK1(2) [ERROR IF SETUP FILE IN 17 3?_Q BNG 0 OLSETOPEN [ONLINE REQUEST OPEN 7 3#FB TSETB ADN 6 1 7 3#_2 TLOST ADN 6 1 8 3*DL TOK ADX 6 FX1 7 3*Y= EXIT 6 0 4 3BCW [ 5 3BXG PRESERVE 17 3CC6 [THIS S/R CHAINS A COPY OF A FILE/FABSNB IN THE CORRECT 14 3CWQ [PLACE IN THE LFCHAIN,NAMING IT A GOUT,INFO3 8 3DBB SBX 6 FX1 13 3DW2 ANOTHER FILE,FABSNB [COPY 10 3F*L NAMETOP 2,GOUT,INFO3 7 3FT= LDX 1 2 8 3G#W LDN 0 #200 17 3GSG ANDX 0 ATYPE(3) [TRANSFER WORKFILE 16 3H#6 ORS 0 ATYPE(1) [CHARACTERISTICS 8 3HRQ LDX 2 FX2 10 3J?B STO 6 ACOMMUNE1(2) 12 3JR2 LFHUNT 7,AWORK2(2),AWORK4(2) 10 3K=L LDX 6 ACOMMUNE1(2) 9 3KCS LDX 7 AWORK1(2) 9 3KK2 ORS 7 GMODE(3) 6 3KQ8 #UNS AWLSZ 4 3KXB ( 11 3L4J JBC SPREV,3,BLFWLSIZE 9 3L9Q LDX 3 FPTR(3) 5 3LBY SPREV 4 3LJ6 ) 8 3LPG SMO FX1 9 3M96 ANDX 7 PROPBIT 18 3MNQ BZE 7 NOPROP [J IF NO PROPERTY BLOCK 18 3N8B LDX 3 FPTR(3) [OTHERWISE CHAIN AFTER IT 5 3NN2 NOPROP 8 3P7L CHAIN 1,3 9 3PM= LDX 3 FPTR(3) 8 3Q6W ADX 6 FX1 7 3QLG EXIT 6 0 4 3R66 [ 6 3RKQ TIDYCHAIN 14 3S5B [THIS S/R TIDIES UP THE LFCHAIN FOR A JOB 16 3SK2 STO 6 ACOMMUNE1(2) [PRESERVE LINK 12 3T4L LFHUNT 7,AWORK2(2),AWORK4(2) 10 3TJ= LDX 6 ACOMMUNE1(2) 10 3W3W LFRECNUM 7,GMODE(3) 5 3WHG TIDAGAIN 7 3X36 LDX 1 3 9 3XGQ LDX 3 FPTR(3) 7 3Y2B FREECORE 1 9 3YG2 BCT 7 TIDAGAIN 7 3Y_L EXIT 6 0 7 3_F= ZERRORY 4 3_YW [ 5 42DG USEROUT 21 42Y6 [THIS S/R SETS UP A GOUT/INFO TO PRESERVE OLD INTERFACE WITH USEROPEN 8 43CQ SBX 7 FX1 12 43XB SETNCORE GFTY-A1+1,1,GOUT,INFO 10 44C2 STO 7 ACOMMUNE1(2) 12 44WL LFHUNT 7,AWORK2(2),AWORK4(2) 8 45B= BNG 3 XERB 10 45TW LDX 7 ACOMMUNE1(2) 8 46*G LDN 0 A1(3) 8 46T6 LDN 1 A1(1) 9 47#Q MOVE 0 GFTY-A1+1 8 47SB ADX 7 FX1 7 48#2 EXIT 7 0 4 48RL [ 5 49?= OPTFREE 18 49QW [THIS S/R FREES A BLOCK IF IT HAS BEEN SUCCESSFULLY HUNTED 8 4==G BNG 1 NOFRY 7 4=Q6 FREECORE 1 8 4?9Q NOFRY LDX 1 FX1 8 4?PB LDX 2 FX2 7 4#92 EXIT 7 0 4 4#NL [ 21 4*8= [*********************************************************************** 9 4*MW [MAIN BODY OF SEGMENT 21 4B7G [*********************************************************************** 5 4BM6 POINT1 13 4C6Q [THIS ENTRY POINT FREEZES A SETUP FILE 17 4CLB CALL 7 USEROUT [SET UP A GOUT/INFO 14 4D62 USEROPEN SBRKIN,READ,FREEZE,DIR,LEAVE 18 4DKL REPERR OKB1 [REPORT ANY ERRORS 14 4F5= STOZ AWORK3(2) [SWITCH 9 4FJW BRN SBRKIN 10 4G4G OKB1 MHUNTW 1,GOUT,INFO 7 4GJ6 FREECORE 1 18 4H3Q CALL 6 PRESERVE [CHAIN FABSNB IN LFCHAIN 18 4HHB CALL 6 TESTATE [CHECK FILE CAN BE OPENED 17 4J32 BRN OKB2 [FILE CAN BE OPENED 16 4JGL BRN XLOSTSET [SETUP FILE LOST 8 4K2= SMO FX1 17 4KFW LDX 0 OPENSET [INDICATE SETUP FILE 9 4K_G ORS 0 AWORK1(2) 10 4LF6 OKB2 MHUNT 1,CPB,CUNI 7 4LYQ FREECORE 1 10 4MDB MHUNT 1,FILE,FABSNB 7 4MY2 FREECORE 1 4 4NCL [ 21 4NX= [*********************************************************************** 5 4PBW POINT2 13 4PWG [THIS ENTRY POINT FREEZES THE MAINFILE 9 4QB6 LDX 5 AWORK1(2) 15 4QTQ BNG 5 XFIN [J IF ONLINE 16 4R*B CALL 7 USEROUT [SET UP GOUT/INFO 8 4RBJ LDX 1 FX1 7 4RCQ LDN 4 1 9 4RDY LDX 0 GMODE(3) 10 4RG6 ANDX 0 PROPBIT(1) 17 4RH# BZE 0 SCLS [J IF NO PROPERTIES 9 4RJG SMO FPTR(3) 16 4RKN LDX 0 CPROPNO [CONSOLE PROPERTY 9 4RLW ANDX 0 BITS22LS 8 4RN4 BZE 0 SCLS 10 4RP= LDX 5 JSOURCE3(2) 9 4RQD ANDX 5 BITS22LS 7 4RRL TXU 0 5 17 4RSS BCC SCLS [J IF SAME CLUSTER 8 4RW2 SLL 4 12 8 4RX8 BRN NCLUS 19 4RYB SCLS ADN 1 1 [X1 POINTS TO LOCAL CONSTANTS 9 4R_J NCLUS LDX 0 GMODE(3) 8 4S2Q ANDN 0 #4 17 4S3Y BNZ 0 XMON [J IF MONITORING FILE 9 4S56 LDX 5 ALFCNT(2) 19 4S6# ANDX 5 XREM(1) [OBTAIN COUNT BEING TESTED 7 4S7G ADX 5 4 17 4S8N SBX 5 XREMMX(1) [SUBTRACT MAX ALLOWED 17 4S9W BPZ 5 UNMAX [J IF MAX EXCEEDED 4 4S?4 XMON 16 4S?6 [ IF WLSIZE MACRO IS ON CREATE A GOUT/GESIZE BLOCK 4 4S?8 [ 10 4S?9 ... SEGENTRY K50LISTFREE 8 4S?= ... BRN XK51 6 4S?# #UNS AWLSZ 4 4S?B ( 11 4S?D SETNCORE 256,3,GOUT,GESIZE 8 4S?G LDN 4 256 8 4S?J XK5 LDX 0 GSIGN 8 4S?L STO 0 A1(3) 7 4S?N ADN 3 1 8 4S?Q BCT 4 XK5 13 4S?S [ SET MARKER SO NO LFCLOSES ARE MISSED 12 4S?W LFHUNT 7,AWORK2(2),AWORK4(2) 10 4S?Y BS 3,BLFWLCLOSE 4 4S#2 ) 10 4S#4 XK51 SEGENTRY K51LISTFREE 16 4S#L USEROPEN SBRKINX,READ,FREEZE,DIR,LEAVE,STREAMS 10 4TRG MHUNTW 1,GOUT,INFO 7 4W?6 FREECORE 1 8 4WQQ REPERR OKC1 9 4X=B STOZ AWORK3(2) 8 4XQ2 BRN SENDX 6 4XQT #UNS AWLSZ 4 4XRN ( 18 4XSH [ IF WLSIZE MACRO CHAIN GOUT/GESIZE BLOCK AFTER GOUT/INFO 14 4XTB [ IF NOT A MULTIFILE REDUCE SIZE TO ONE WORD 10 4XW9 OKC1 HUNTW 1,GOUT,GESIZE 8 4XX4 BNG 1 OKC3 11 4XXX TREP MULTFILE,XMTFL 4 4XXY [ 14 4XX_ [ IF LISTING ONE ELEMENT OF A MULTIFILE ONLY 16 4XY2 [ USEROPEN WILL HAVE TAKEN THE MULTIFILE PATH WHEN 18 4XY3 [ SUPPLYING ME WITH SIZE SO LFSIZE WILL HAVE PUT THE SIZE 15 4XY4 [ IN THE WRONG PLACE IN THE GOUT/GESIZE BLOCK 15 4XY5 [ ALSO BLFWLCLOSE BIT WILL NOT HAVE BEEN CLEARED 10 4XY6 MHUNT 3,FILE,ENT 11 4XY7 JBC XNELE,3,BEMULT 8 4XY8 LDN 4 256 7 4XY9 LDX 3 1 8 4XY= XK6 LDX 0 A1(3) 8 4XY? BPZ 0 XNEL2 7 4XY# ADN 3 1 8 4XY* BCT 4 XK6 8 4XYB BRN XNELE 8 4XYC XNEL2 STO 0 A1(1) 12 4XYD LFHUNT 7,AWORK2(2),AWORK4(2) 10 4XYF BC 3,BLFWLCLOSE 5 4XYG XNELE 8 4XYQ ALTLENGD 1,1 11 4X_K MHUNTW 1,GOUT,GESIZE 12 4Y2D XMTFL LFHUNT 7,AWORK2(2),AWORK4(2) 10 4Y3? BS 3,BLFWLSIZE 8 4Y46 CHAIN 1,3 8 4Y4_ OKC3 LDX 1 FX1 10 4Y5S TREP MULTFILE,XEND 4 4Y6M ) 6 4Y7G #UNS AWLSZ 4 4Y8* #SKI 16 4Y9L OKC1 TREP MULTFILE,XEND [J IF MULTIFILE 9 4YP= CALL 6 PRESERVE 10 4_8W NAMETOP 3,GOUT,INFO2 12 4_NG LFHUNT 7,AWORK2(2),AWORK4(2) 8 546L QNPRB LDX 0 GSIGN 9 54L= ERS 0 GMODE(3) 6 54MS #UNS AWLSZ 4 54PB ( 12 54QY JBC XOPEN,3,BLFWLCLOSE 8 54W4 SMO FX1 9 54XL LDX 0 OPENMAIN 9 54_8 ORS 0 AWORK1(2) 5 552Q XOPEN 4 554# ) 9 555W CALL 6 TESTATE 14 55KG BRN OKC2 [FILE OK 15 5656 BRN XLOSTMAIN [FILE LOST 8 56JQ SMO FX1 9 574B LDX 0 OPENMAIN 17 57J2 ORS 0 AWORK1(2) [SHOW MAIN FILE OPEN 10 583L OKC2 MHUNT 1,FILE,FABSNB 7 58H= FREECORE 1 8 592W BRN XFIN 12 59GG XEND LFHUNT 7,AWORK2(2),AWORK4(2) 10 5=26 STO 3 ACOMMUNE1(2) 6 5=4* #UNS AWLSZ 4 5=6J ( 11 5=8R JBC XEND2,3,BLFWLSIZE 9 5=?2 LDX 3 FPTR(3) 5 5=*9 XEND2 4 5=CD ) 10 5=FQ LDX 0 PROPBIT(1) 10 5=S7 SMO ACOMMUNE1(2) 8 5?6J ANDX 0 GMODE 8 5?F2 BZE 0 QNPR 9 5?YL LDX 3 FPTR(3) 10 5#D= QNPR MHUNT 1,FILE,FABSNB 10 5#XW NAME 1,GOUT,INFO2 8 5*CG CHAIN 1,3 10 5*X6 LDX 3 ACOMMUNE1(2) 8 5BBQ LDX 0 GSIGN 9 5BWB ERS 0 GMODE(3) 6 5C3J #UNS AWLSZ 10 5C8Q BC 3,BLFWLCLOSE 10 5CB2 LDX 4 GWAKECOUNT(3) 6 5CFX ...#SKI G253&1 8 5CKS ... BRN RU1 7 5CPP ...#SKI G253&1$1 8 5CTL BRN SMUL 15 5D*= # ALL THE NECESSARY CHECKS HAVE BEEN PERFORMED. 16 5DSW # IT NOW ONLY REMAINS TO REPLACE THE GOUT/KEY BLOCK 11 5F#G # IN THE LFCHAIN BY A GOUT/INFO. 12 5FS6 XFIN LFHUNT 7,AWORK2(2),AWORK4(2) 8 5G?Q BNG 3 XERB 6 5GDY #UNS AWLSZ 10 5GL6 BC 3,BLFWLCLOSE 7 5GRB LDN 4 1 10 5H?2 STO 4 GWAKECOUNT(3) 6 5H#Y ...#SKI G253&1 4 5HBW ...( 9 5HDS ...RU1 LDXC 5 ALFCNT(2) 8 5HGQ ... BCC SMUL 20 5HJN ... LDN 4 0 [ SUPPRESS LF COUNTING IF 'LIST' 17 5HLL ... STO 5 ALFCNT(2) [ AND CLEAR MARKER 4 5HNJ ...) 9 5HQL SMUL LDX 0 GMODE(3) 10 5J== ANDX 0 PROPBIT(1) 8 5JG4 BNZ 0 XNSCL 10 5JPW XNSC3 LDX 0 JSOURCE3(2) 9 5JTR ANDX 0 BITS22LS 8 5J_N BNZ 0 XNSC2 8 5K9G BRN SMCLS 7 5K#L XNSCL LDX 1 3 6 5KCQ #UNS AWLSZ 4 5KGW ( 11 5KL2 JBC XNSC4,3,BLFWLSIZE 9 5KP6 LDX 1 FPTR(1) 5 5KS= XNSC4 4 5KXB ) 9 5L2G LDX 1 FPTR(1) 16 5L5L LDX 0 CPROPNO(1) [CONSOLE PROPERTY 9 5L8Q ANDX 0 BITS22LS 8 5LNB BZE 0 XNSC3 10 5M82 LDX 5 JSOURCE3(2) 9 5MML ANDX 5 BITS22LS 7 5N7= TXU 0 5 17 5NLW BCC SMCLS [J IF SAME CLUSTER 8 5P3D XNSC2 SLL 4 12 5 5PD2 SMCLS 9 5PL# ADX 4 ALFCNT(2) 7 5PSL STO 4 7 14 5Q32 LDX 1 FX1 [RESET X1 10 5Q5Q LDX 0 GMULTID(3) 18 5QKB BZE 0 NOTOPENM [J IF NOT OPEN MULTIFILE 8 5R52 LDCT 0 #10 7 5R#S ADX 0 7 9 5RJL BNG 0 NOTOPENM 7 5RSD STO 0 7 5 5S4= NOTOPENM 18 5SHW NAME 3,GOUT,INFO [UPDATE INFORMATION ABOUT 17 5T3G LDX 4 GMODE(3) [FILE AVAILABILITY. 10 5TH6 LDX 5 XLOSTBOTH(1) 7 5W2Q ANDX 5 4 19 5WGB BNZ 5 WLOST [J IF WE NOW KNOW FILE LOST 18 5X22 ANDX 4 OPENBOTH(1) [BITS MAY HAVE BEEN SET 18 5XFL SMO SHIFTLEN(1) [IN GOUT/INFO WHILE WE 17 5X_= SLL 4 0 [HAVE BEEN MAKING OUR 19 5YDW ANDX 4 AWORK1(2) [CHECKS,DUE TO FILES BEING 17 5YYG ERX 4 AWORK1(2) [RETRIEVED OR CLOSED. 18 5_D6 LDX 0 SMFILEMSET(1) [MULTIFILE WITH SETUP BIT 19 5_XQ ANDX 0 GMODE(3) [WHICH MAY HAVE BEEN SET BY 18 62CB ORX 4 0 ['LFMULT' IN 'USEROPEN'. 9 62X2 STO 4 GMODE(3) 9 63BL LDX 5 GMODE(3) 8 63W= BPZ 5 NOLIN 7 643D LDN 0 2 9 648L ORS 0 EXT+9(2) 20 64*W LONGSET #27,YLONG,AWORK2(2) [MAKE SURE WE DON'T MISS ANYTHING 17 64TG NOLIN STARTACT OUT [WAKE UP SCHEDULER 9 65*6 BNG 5 ONLINE 9 65JY STO 7 ALFCNT(2) 5 65KF SENDZ 6 65SQ ENDCOM 9 66#B YLONG GEOERR 1,ONLONG 5 66S2 ONLINE 18 67?L [THE CPA NOW WAITS FOR ITS ONLINE REQUEST TO BE PROCESSED BY 11 67R= [THE LISTFILE SCHEDULER & CO. 21 68=W [WHEN THIS HAS BEEN DONE,A FILE/FWB WILL BE CHAINED IN THE MISC. CHAIN 19 68QG [WHICH WILL EITHER CONTAIN A POINTER TO THE DEVICE LIST OF THE 21 69=6 [PERIPHERAL RESERVED,OR THE IDENTIFIER OF AN APPROPRIATE ERROR MESSAGE. 7 69FY LDX 5 7 12 69PQ LONGSTOP XBRK,,JOLWAIT,XNULL 20 6=9B CALL 7 SEARCH [LOOK FOR BLOCK IN MISC. CHAIN 15 6=P2 BZE 3 XER [NONE FOUND 5 6?8L OLFOUND 9 6?N= LDX 7 GMODE(3) 9 6#7W LDX 6 GOPTY(3) 7 6#MG SRL 6 3 18 6*76 BNG 7 RECHAIN [IT MAY BE NECESSARY TO 18 6*LQ TXU 7 WJSETP15(1) [PASS INFORMATION ON TO 15 6B6B BCC RECHAIN [SCHEDULER 10 6BL2 LDX 5 GSOURCE1(3) 7 6C5L FREECORE 3 10 6CK= TXU 7 WJLFNOP(1) 9 6D4W BCS NOTNOPER 10 6DJG ACROSS LISTNEXT,8 5 6F46 NOTNOPER 5 6FHQ XCOMERR 7 6G3B COMERRX 7 5 6GH2 RECHAIN 17 6H2L STOZ GMODE(3) [TO GET ENTRY DELETED 11 6HG= NAME 3,GOUT,GUPDATE 9 6H_W CHAIN 3,BLF+1 17 6JFG STARTACT OUT [WAKE UP SCHEDULER 19 6J_6 BPZ 7 XCOMERR [J IF NO PERIPHERAL OBTAINED 19 6KDQ ERX 7 GSIGN [X7 NOW CONTAINS D.L. POINTER 6 6KWS #UNS FSHB 5 6KXK POINT3 7 6KYB PERON 7 8 6LD2 PUTPERENT 6,7 9 6LMS STO 5 ALFCNT(2) 6 6LXL SEND ENDCOM 20 6MC= XBRK CALL 7 SEARCH [WE MIGHT HAVE MISSED AN EVENT 16 6MWW BNZ 3 OLFOUND [DUE TO BREAK-IN 20 6NBG [THE REQUEST HAS NOT YET BEEN COMPLETELY PROCESSED. IF AN ACTLF IS 20 6NW6 [CURRENTLY TRYING TO RESERVE A PERIPHERAL,B22 OF EXT+9 WILL BE SET. 19 6P*Q LDN 0 2 [IS ONLINE REQUEST CURRENTLY 19 6PTB ANDX 0 EXT+9(2) [BEING SERVICED BY AN ACTLF? 13 6Q*2 BZE 0 RESPOND [NO! 12 6QSL LONGSET #27,YLONG,AWORK2(2) 8 6R#= [IGNORE 'BREAK-IN' 8 6RRW BRN XNULL 5 6S?G RESPOND 15 6SR6 LFHUNT 7,AWORK2(2),AWORK4(2),GOUT,INFO 18 6T=Q BPZ 3 XINT [J IF STILL IN LFCHAIN 7 6TQB XINT2 LONGOFF 15 6W=2 [WE MUST DELETE THE ENTRY FROM :SYSTEM.OUTPUT 10 6WPL ACROSS LISTFNDA,2 9 6WXW XINT LDXC 0 GMODE(3) 8 6X66 BPZ 0 XINT2 9 6X#B STO 0 AWORK1(2) 15 6XGL STO 2 AWORK3(2) [SET SWITCH 7 6XNW XTID LDX 1 3 9 6Y8G LDX 3 FPTR(3) 7 6YN6 FREECORE 1 10 6_7Q LDX 0 PROPBIT(1) 9 6_MB ANDX 0 AWORK1(2) 18 7272 BZE 0 NOLPR [J IF NO PROPERTY BLOCK 7 72LL LDX 1 3 9 736= LDX 3 FPTR(3) 7 73KW FREECORE 1 10 745G NOLPR LDX 0 SETUPBIT(1) 9 74K6 ANDX 0 AWORK1(2) 17 754Q BZE 0 SCOM [J IF NO SETUP FILE 10 75JB NAMETOP 3,FILE,FABSNB 8 7642 CHAIN 3,2 16 76HL LFTHAW [THAW SETUP FILE 9 773= LDX 0 AWORK3(2) 8 77GW BZE 0 SEND 4 77JY SCOM 7 78CQ COMBRKIN 9 78G6 XERB GEOERR 1,BLKLST 4 78_Q [ 5 79FB XLOSTSET 10 79_2 [WE HAVE LOST THE SETUP FILE 20 7=DL CALL 6 TIDYCHAIN [THROW AWAY GKEY BLOCK AND COPY 10 7=Y= XLS2 ACROSS LISTNEXT,1 4 7?CW [ 6 7?XG XLOSTMAIN 10 7#C6 [WE HAVE LOST THE MAIN FILE 12 7#WQ LFHUNT 7,AWORK2(2),AWORK4(2) 9 7*BB LDX 7 GMODE(3) 6 7*D5 #UNS AWLSZ 4 7*FS ( 12 7*HH JBC XNOGSZ,3,BLFWLSIZE 7 7*K= LDX 1 3 9 7*L_ LDX 3 FPTR(3) 7 7*NN FREECORE 1 5 7*QC XNOGSZ 4 7*S6 ) 7 7*W2 LDX 1 3 9 7B*L LDX 3 FPTR(3) 7 7BT= FREECORE 1 17 7C#W LDX 0 PROPBIT(1) [FOR SUBSEQUENT CHECK 7 7CSG LDX 1 3 9 7D#6 LDX 3 FPTR(3) 7 7DRQ ANDX 0 7 9 7F?B BZE 0 NFRPRB 16 7FR2 FREECORE 1 [PROPERTY BLOCK 7 7G=L LDX 1 3 9 7GQ= LDX 3 FPTR(3) 5 7H9W NFRPRB 19 7HPG FREECORE 1 [COPY OF MAIN FILE'S FABSNB 10 7J96 ANDX 7 SETUPBIT(1) 17 7JNQ BZE 7 XLS2 [J IF NO SETUP FILE 10 7K8B NAMETOP 3,FILE,FABSNB 10 7KN2 MHUNT 2,FILE,FABSNB 8 7L7L CHAIN 3,2 8 7LM= BRN XLS2 4 7M6W [ 6 7MLG OLSETOPEN 17 7N66 [THE SETUP FILE IN AN ONLINE REQUEST IS OPEN UNCLEANLY 9 7NKQ CALL 6 TIDYCHAIN 16 7P5B LFTHAW [THAW SETUP FILE 18 7PK2 ZERRORX AOLSERR [ALREADY USING SETUP FILE 18 7PKG [THE MAXIMUM NUMBER OF LFS TO REMOTE OR LOCAL PRINTERS HAS 15 7PL2 [BEEN REACHED. WE MUST TIDY UP AND REPORT ERROR. 9 7PLG UNMAX LDX 7 GMODE(3) 7 7PM2 LDX 1 3 9 7PMG LDX 3 FPTR(3) 16 7PN2 FREECORE 1 [FREE GOUT,GKEY 10 7PNG LDX 0 PROPBIT(1) 7 7PP2 ANDX 0 7 16 7PPG BZE 0 SNPR [J IF NO PROPERTY 7 7PQ2 LDX 1 3 9 7PQG LDX 3 FPTR(3) 7 7PR2 FREECORE 1 4 7PS7 SNPR 10 7PT# LDX 0 SETUPBIT(1) 7 7PWG ANDX 0 7 17 7PX2 BZE 0 SNOS [J IF NO SETUP FILE 7 7PXG LDX 1 3 10 7PY2 NAMETOP 1,FILE,FABSNB 8 7PYG CHAIN 1,2 20 7P_G LFTHAW [THAW SETUP FILE & FREE FABSNB 4 7P_S SNOS 9 7Q26 ANDX 4 XREM(1) 18 7Q2G BZE 4 XLOC [J IF LOCAL MAX EXCEEDED 9 7Q32 ZERRORX JLFMAXR 9 7Q3G XLOC ZERRORX JLFMAXL 5 7Q4L SBRKIN 13 7QJ= [BREAK-IN DURING USEROPEN OF SETUP FILE 10 7R3W MHUNTW 1,GOUT,INFO 7 7RHG FREECORE 1 5 7S36 SENDY 9 7SGQ CALL 6 TIDYCHAIN 10 7T2B MHUNT 1,FILE,FABSNB 16 7TG2 CALL 7 OPTFREE [FREE IF THERE 20 7T_L [UNDER CERTAIN CIRCUMSTANCES(E.G.NAMEFORM REPLY) USEROPEN DOES NOT 7 7WF= [SET UP A FABSNB 9 7WYW LDX 0 AWORK3(2) 8 7XDG BZE 0 SEND 8 7XY6 BRN SCOM 5 7YCQ SBRKINX 13 7YXB [BREAK-IN DURING USEROPEN OF MAIN FILE 10 7_C2 MHUNT 1,GOUT,INFO 7 7_WL FREECORE 1 5 82B= SENDX 6 82HD #UNS AWLSZ 10 82NL VFREEW GOUT,GESIZE 8 82R= LDX 1 FX1 10 82TW LDX 0 SETUPBIT(1) 9 83*G ANDX 0 AWORK1(2) 19 83T6 BZE 0 SENDY [J IF NO SETUP FILE TO THAW 15 84#Q MHUNT 1,FILE,FABSNB [MAIN FILE 9 84SB CALL 7 OPTFREE 12 85#2 LFHUNT 7,AWORK2(2),AWORK4(2) 8 85RL BRN XTID 4 86?= [ 14 86QW [WE HAVE JUST NOTICED THAT A FILE IS LOST 6 86SD #UNS AWLSZ 4 86W2 ( 11 86XJ WLOST JBC WLST2,3,BLFWLSIZE 9 86_6 LDX 1 FPTR(3) 7 872N FREECORE 1 9 874= WLST2 LDX 7 GMODE(3) 4 875S ) 6 877B #UNS AWLSZ 4 878Y #SKI 9 87=G WLOST LDX 7 GMODE(3) 9 87Q6 ANDX 5 XLOSTM(1) 7 889Q LDX 1 3 9 88PB LDX 3 FPTR(3) 15 8992 CHAIN 1,2 [GOUT/INFO 10 89NL LDX 0 PROPBIT(1) 7 8=8= ANDX 0 7 16 8=MW BZE 0 XNPR [J NO PROPERTY 7 8?7G LDX 1 3 9 8?M6 LDX 3 FPTR(3) 7 8#6Q FREECORE 1 14 8#LB XNPR BNG 7 XOLB [J ONLINE 10 8*62 NAMETOP 3,FILE,FABSNB 7 8*KL LDX 1 3 9 8B5= LDX 3 FPTR(3) 8 8BJW CHAIN 1,2 10 8C4G XOLB ANDX 7 SETUPBIT(1) 16 8CJ6 BZE 7 XLS2 [J IF NO SETUP 7 8D3Q LDX 1 3 10 8DHB NAMETOP 1,FILE,FABSNB 8 8F32 BZE 5 XLS1 10 8FGL MHUNT 2,FILE,FABSNB 8 8G2= XLS1 CHAIN 1,2 8 8GFW BRN XLS2 4 8G_G [ 19 8HF6 XER GEOERR 1,NOLFWB [NO OL BLOCK IN MISC. CHAIN. 4 8HFK [ 21 8HG4 [ ********************************************************************** 4 8HGH [ 7 8HH2 [ LFSIZE MACRO 4 8HHF [ 21 8HHY [ ********************************************************************** 4 8HJC [ 5 8HJW POINT4 6 8HK* #UNS AWLSZ 4 8HKS ( 10 8HL? LDX 6 ACOMMUNE1(2) 10 8HLQ LDX 7 ACOMMUNE2(2) 10 8HM9 HUNTW 3,GOUT,GESIZE 8 8HMN BNG 3 XUP 19 8HN7 BZE 7 XRTSZ [BLOCK MUST BE RIGHT SIZE 10 8HNL LDX 5 ALOGLEN(3) 7 8HP5 SBN 7 1 7 8HPJ TXL 7 5 8 8HQ3 BCS XRTS2 10 8HQG GEOERR 1,GESIZEWR 4 8HQK [ 7 8HQN XRTS2 SMO 7 8 8HQR STO 6 A1(3) 8 8HQW BRN XUP 4 8HQ_ [ 7 8HRD XRTSZ SMO 7 8 8HRX STO 6 A1(3) 10 8HSB [ NO LFCLOSE TO WAIT FOR NOW 10 8HST MHUNTW 3,GOUT,INFO 13 8HT# LFHUNT 7,GOUTKEY1(3),GOUTKEY2(3) 10 8HW= BC 3,BLFWLCLOSE 5 8HWP XUP UP 4 8HX8 [ 4 8HXM ) 4 8HYQ #END 8 ____ ...46662121000200000000