8 22FL #OPT K0LISTFIND=0 18 22_= #LIS K0LISTFIND>K0LISTFILE>K0ALLGEO>K0GREATGEO>K0COMMAND 15 23DW ...#SEG LISTFIND7 [ROB RUSHTON 10 23YG 8HLISTFIND 15 23__ ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1983 11 243F ... SEGENTRY K1LISTFIND,POINT1 12 246D ... SEGENTRY K2LISTFIND,POINT2 12 249C ... SEGENTRY K3LISTFIND,POINT3 12 24=W ... SEGENTRY K4LISTFIND,POINT4 12 24#B ... SEGENTRY K5LISTFIND,POINT5 12 24C* ... SEGENTRY K6LISTFIND,POINT6 12 24G# ... SEGENTRY K7LISTFIND,POINT7 14 24K# ... FSHENTRY K10LISTFIND,,POINT10,POINT10 14 24QG ... FSHENTRY K12LISTFIND,POINT12,,POINT12 14 24S= ... FSHENTRY K13LISTFIND,POINT13,,POINT13 14 24W2 ... FSHENTRY K14LISTFIND,NOTAVDB,,NOTAVDB 11 24XQ MENDAREA 30,K95LISTFIND 4 25CB [ 17 25X2 [ THIS SEGMENT IS OBEYED BY THE LISTFILE SCHEDULER. 19 26BL [ IT CONTAINS SEVERAL OF THE MODULES ENTERED FROM LISTPROC. 20 26W= [ THE CODE IS MAINLY CONCERNED WITH ACCESSING :SYSTEM.OUTPUT. 4 27*W [ 19 27TG [K1LISTFIND IS ENTERED BY THE SCHEDULER WHEN IT IS LOOKING 17 28*6 [ FOR A REQUEST FOR AN ACTLF TO IMPLEMENT. 4 28SQ [ 15 29#B [K2LISTFIND IMPLEMENTS THE LFGETPER MACRO. 19 29S2 [ IT ATTEMPTS TO IMPLEMENT THE REQUEST WHOSE INDEX 12 2=?L [ KEYS ARE SUPPLIED. 4 2=R= [ 19 2?=W [K3LISTFIND HERE THE SCHEDULER PROCESSES AN ACTLF WHICH HAS 20 2?QG [ PERFORMED A GETPER OR A SETPROP BUT CANNOT CONTINUE. 19 2#=6 [ THE ACTLF WILL HAVE FLAG E SET AND,IN ADDITION,IF 17 2#PQ [ A GETPER HAS BEEN PERFORMED THE FLAG D . 4 2*9B [ 19 2*P2 [K4LISTFIND THIS IS THE ENTRY POINT FOR AN ACTLF PERFORMING 17 2B8L [ AN AUTONOMOUS GETPER FOR A REMOTE DEVICE. 13 2BDD ...[ NOW MOVED TO LISTPROC 4 2BN= [ 19 2C7W [K5LISTFIND THIS ENTRY DELETES A REQUEST FROM :SYSTEM.OUTPUT 18 2CMG [ AND FORMS THE FIRST STAGE OF AN LFDEL MACRO 12 2CX# ...[ NOW MOVED TO LISTFNDA 4 2D76 [ 19 2DLQ [K6LISTFIND IS ENTERED BY A CPAT WHICH WAS BROKEN-IN ON WHILE 20 2F6B [ WAITING FOR AN OUTPUT DEVICE FOR AN ONLINE REQUEST 18 2FL2 [ IT DELETES THE REQUEST FROM :SYSTEM.OUTPUT 12 2FTS ...[ NOW MOVED TO LISTFNDA 4 2G5L [ 19 2GK= [K7LISTFIND THIS ENTRY POINT IS USED BY THE SCHEDULER FROM 17 2H4W [ THE LFCHANGE MACRO ISSUED BY CHANGELIST 12 2H#N ...[ NOW MOVED TO LISTFNDA 4 2HJG [ 12 2J46 [AWORK4 IS USED AS A SWITCH: 11 2JHQ [ >0 FOR K1 ENTRY 11 2K3B [ =0 FOR K2 ENTRY 11 2KH2 [ <0 FOR K3 ENTRY 4 2L2L [ 4 2LG= [ 21 2L_W [*********************************************************************** 6 2MFG [DATA AREA 4 2M_6 [ 15 2NDQ [ THERE FOLLOWS A SELECTION OF IDENTIFIERS 7 2NKY ...#UNS G3SIGNET 19 2NR6 ...XSIGPROP #40000 [SIGNET PROPERTY IDENTIFIER. 12 2NYB [ FOR BIT POSITIONS IN GMODE. 19 2PD2 XIMPBIT #21400000 [IMPLEMENTABLE REQUEST MASK 20 2PXL PROPBIT #4000000 [ THERE IS A PROPERTY PARAMETER 17 2QC= SIMPBIT #20000000 [BEING IMPLEMENTED 18 2QWW XPARTIMP #2000000 [PARTIALLY IMPLEMENTED 16 2RBG XFILOFFBS #1400000 [FILES OFFLINE 18 2RW6 SETUPBIT #10000000 [THERE IS A SETUP FILE 4 2S*Q [ 14 2STB [ BLOCK TYPES FOR LISTING ACTIVITIES. 5 2T*2 XACTCEN 9 2TSL #HAL ACTLF+CENTRAL,0 5 2W#= XACTREM 9 2WRW #HAL ACTLF+GREMOTE,0 13 2X?G [ TIME VALUES FOR USE WITH GCOUNT. 11 2XR6 THRS 1000/K9*60*60*24 10 2Y=Q TMINS 30*60*1000/K9 4 2YQB [ 4 2_=2 [ 21 2_PL [*********************************************************************** 7 329= [SUBROUTINE AREA 19 32NW [THIS S/R EXAMINES THE PROPERTIES IN THE LIST POINTED AT BY X1 19 338G [IF ANY ARE EXCLUSIVE THEN A CHECK IS MADE TO SEE IF THEY WERE 19 33N6 [REQUESTED.IF NOT THEN X7 IS INCREMENTED IF THE PROPERTY IS TEMP 16 347Q [OR THE ENTRY ABANDONED IF PROPERTY IS PERMANENT. 12 34MB [X5<0 MEANS NO PROPERTIES REQUESTED. 19 3572 [IT EXPECTS THE FILESTORE-READ-POINTER TO BE POSITIONED ON THE 18 35LL [SECOND RECORD OF A REQUEST IF ANY PROPERTIES ARE NECESSARY. 17 366= PRANL LDN 7 0 [INITIALISE WEIGHT 19 36KW LDN 4 ATTMAX-1 [MAX NUMBER OFF ATTRIBUTIONS 19 375G PRA1 ADN 1 1 [IGNORING CONSOLE PROPERTY 8 37K6 LDXC 0 0(1) 16 384Q BCS PRA2 [J IF EXCLUSIVE 7 38JB #SKI APARSORT 16 3942 BZE 0 PRA3 [J IF END OF LIST 8 39HL PRA5 BCT 4 PRA1 15 3=3= PRA3 EXIT 2 0 [END OF LIST 17 3=GW PRA2 BNG 5 PRA4 [J IF NO PROPS REC 17 3?2G LDX 5 BPROPCNT-A1(3) [NUMBER OF PROPERTIES 8 3?G6 BZE 5 PRA4 7 3?_Q PRA6 SMO 5 11 3#FB TXU 0 BPROPS-A1-1(3) 18 3#_2 BCC PRA5 [J IF PROPERTY REQUESTED 8 3*DL BCT 5 PRA6 7 3*Y= PRA4 SLL 0 1 16 3BCW BNG 0 NEXTE [IF PERM. GIVE UP 6 3BG5 ...#UNS ANIP 4 3BJ# ...( 8 3BLH ... SMO FX2 9 3BNQ ... LDX 5 GSWORK4 20 3BQ_ ... BNG 5 NEXTE [J. IF NIP NO ALTERATIONS ALLOWED 4 3BT8 ...) 16 3BXG ADN 7 1 [INCREASE WEIGHT 8 3CC6 BRN PRA5 4 3CWQ [ 5 3DBB SKIPENT 19 3DW2 [THIS S/R ADVANCES THE READ POINTERS TO THE NEXT ENTRY IN SYSOUT 19 3F*L [X6 CONTAINS A COPY OF GMODE(WHICH MAY HAVE BEEN DOCTORED IF WE 18 3FT= [ARE NO LONGER POSITIONED ON THE FIRST RECORD OF THE ENTRY). 8 3G#W SBX 7 FX1 8 3GSG LFRECNUM 1,6 8 3H#6 SKIP ,0(1) 8 3HRQ ADX 7 FX1 7 3J?B EXIT 7 0 4 3JR2 [ 4 3K=L STEP 8 3KQ= SBX 4 FX1 6 3L9W STEP 8 3LPG ADX 4 FX1 7 3M96 EXIT 4 0 5 3MNQ REPOSN 18 3N8B [THIS S/R POSITIONS THE READ POINTERS ON THE ENTRY WHOSE 14 3NN2 [INDEX KEYS ARE GIVEN IN AWORK1 AND AWORK2 10 3P7L [IF A SETPROP HAS FAILED,WE 14 3PM= [MUST EXIT TO UNSET BEING IMPLEMENTED BIT 8 3Q6W SBX 6 FX1 12 3QLG GETSOUT ,AWORK1(2),AWORK2(2) 4 3R66 [ 20 3RKQ [THE REQUEST MAY NO LONGER BE THERE IF WE CAME IN AT K3ENTRY POINT 9 3S5B TESTREP2 OK,NOUP 17 3SK2 LDX 0 AWORK4(2) [ENTRY POINT SWITCH 14 3T4L BNG 0 NOGEOER [J IF K3 10 3TJ= GEOERR 1,LFENTLOS 5 3W3W NOGEOER 19 3WHG [WE NOW ABANDON OUR CURRENT TASK. BUT FIRST WE MUST DEAL WITH 9 3X36 [ANY LISTING ACTIVITY. 18 3XGQ LFBBS D,2,NOSPUT [SET AT 'REMPERX' LABEL 9 3Y2B CALL 6 SPUTACT 18 3YG2 PAIR LISTNEXT,51 [KICK LISTING ACTIVITY 5 3Y_L NOSPUT 15 3_F= LFBITCLR D,2 [JUST IN CASE 14 3_YW RUP UP [BACK UP 4 42DG NOUP 7 42Y6 STEPAGAIN 9 43CQ LDX 0 AWORK4(2) 17 43XB BPZ 0 NOUP1 [J IF NOT K3 ENTRY 20 44C2 LFBBUS D,2,NOUP1 [J IF K3 ENTRY BUT NOT REMOTE GETPER 19 44WL LDX 0 SIMPBIT(1) [ELSE REQUEST MAY BE BEING 18 45B= ANDX 0 GMODE-A1(3) [IMPLIMENTED BY ANOTHER 19 45TW BNZ 0 RUP [ACTIVITY IN WHICH CASE,UP. 5 46*G NOUP1 8 46T6 ADX 6 FX1 7 47#Q EXIT 6 0 4 47SB [ 5 48#2 SETACT 17 48RL [THIS S/R SETS UP AN ACTLF WITH LINKS INDICATED BY THE 16 49?= [LOCATIONS AFTER THE CALL. IT ALSO SETS F, X2->ACTLF 8 49QW SBX 6 FX1 20 4==G GETACTX 3,4,1 [GET ACTIVITY IN LONGBLOCK AREA 9 4=Q6 SMO BPTR(2) 9 4?9Q LDN 1 JOBRING 11 4?PB LDX 2 JOBRING+BPTR(2) 8 4#92 ENRING 1,2 9 4#NL LDX 2 BPTR(2) 8 4*8= LFBITSET F,2 8 4*MW ADX 6 FX1 6 4B7G #SKI CLONK 4 4BM6 ( 16 4C6Q LDX 1 6 [S/R CALL ADDRESS 15 4CLB LINKSET 2,0(1) [MOVE IN LINK 8 4D62 LDX 1 FX1 8 4DKL EXIT 6 HLINK 4 4F5= ) 7 4FJW #SKI 1 DEVICE LIST OR 17 7H9W BZE 1 XREM [J IF REMOTE DEVICE 6 7H=7 ...#UNS ANIP 8 7H=D ... BNG 1 XREM 7 7H=P ...#UNS G3SIGNET 4 7H?J ...( 19 7H#C ... LDX 7 BPROPCNT-A1(3) [GET NUMBER OF PROPERTY NOS. 7 7H*= ...SIGCK SMO 7 11 7HB5 ... LDX 0 BPROPS-A1-1(3) 8 7HBY ... SMO FX1 12 7HCR ... ANDX 0 XSIGPROP [ 17 7HDL ... BNZ 0 SIGPROP [J IF SIGNET REQUEST. 18 7HFF ... BCT 7 SIGCK [J TO TRY NEXT PROPERTY. 20 7HG# ... TXU 1 ASIGNETPTR [OK IF NOT A SIGNET REQUEST AND 18 7HH7 ... BCS SIGOK [NOT A SIGNET PRINTER. 21 7HJ2 ... BRN NEXTE [IGNORE AS SIG PRTER BUT NOT SIG REQ. 5 7HJT ...SIGPROP 19 7HKN ... TXU 1 ASIGNETPTR [IGNORE AS SIGNET REQUEST BUT 18 7HLH ... BCS NEXTE [NOT A SIGNET PRINTER. 5 7HMB ...SIGOK 4 7HN9 ...) 8 7HPG LADDP 1,1 19 7J96 ADN 1 APERPROP [POINT TO PROPERTIES IN APIA 8 7JNQ BRN READY 11 7K8B XREM MHUNTW 1,GOUT,GPROPNOS 9 7KN2 ADN 1 GPROPNUM 21 7L7L READY LDX 0 CPROPNO-A1(3) [PICK UP CONSOLE PROPERTY REQUESTED 19 7LM= BNZ 0 WANTR [J IF REMOTE DEVICE WANTED 10 7M6W LDX 0 GSWORK4(2) 19 7MLG BZE 0 NEXTE [J IF WE HAVE REMOTE DEVICE 9 7N66 BRN XCONSOK 19 7NKQ WANTR LDXC 4 0(1) [THROW AWAY B0 AS NOT USED IN 16 7P5B BCS / [APROPNOS BLOCK 7 7PK2 SBX 4 0 17 7Q4L BNZ 4 NEXTE [J IF WRONG CLUSTER 5 7QJ= XCONSOK 7 7R3W LDN 5 0 19 7RHG STO 1 ACOMMUNE1(2) [REMEMBER PROPERTY POINTER 20 7S36 CALL 2 PRANL [EVALUATE PROPERTIES ATTRIBUTED 8 7SGQ LDX 2 FX2 15 7T2B [NOW WE MUST EVALUATE THE PROPERTIES REQUESTED. 19 7TG2 [IF THEY ARE NOT ATTRIBUTED THEN WE INCREMENT X7 IF TEMPORARY OR 9 7T_L [GIVE UP IF PERMANENT. 11 7WF= LDX 4 BPROPCNT-A1(3) 21 7WYW BZE 4 WEIGH [J IF NO FURTHER PROPERTIES WANTED 21 7XDG XNX LDN 5 ATTMAX [MAXIMUM NUMBER OF POSSIBLE ATTRIBUTI 17 7XY6 LDX 1 ACOMMUNE1(2) [RESET PROP POINTER 6 7X_T ...#UNS ANIP 4 7Y3J ...( 14 7Y5? ...[ IF NIP GPROPNUM ZERO - NO CONSOLE PROPERTY 10 7Y72 ... LDX 0 GSWORK4(2) 8 7Y8P ... BPZ 0 XT1 7 7Y=D ... SBN 5 1 7 7Y#7 ... ADN 1 1 4 7Y*W ...) 15 7YCQ XT1 LDXC 0 0(1) [IGNORE B0 7 7YXB BCS / 7 7_C2 #SKI APARSORT 15 7_WL BZE 0 XLEN [END OF LIST 10 82B= TXU 0 BPROPS-A1(3) 16 82TW BCC XAT [J IF PROP ATT. 7 83*G ADN 1 1 8 83T6 BCT 5 XT1 16 84#Q XLEN LDX 0 BPROPS-A1(3) [PROPERTY NUMBER 7 84SB SLL 0 1 16 85#2 BNG 0 NEXTE [GIVE UP IF PERM 6 85B9 ...#UNS ANIP 4 85DD ...( 15 85GM ...[ CANNOT ATTRIBUTE IF NIP - SO GIVE UP ANYWAY 10 85JW ... LDX 0 GSWORK4(2) 8 85M5 ... BNG 0 NEXTE 4 85P# ...) 7 85RL ADN 7 1 7 86?= XAT ADN 3 1 8 86QW BCT 4 XNX 8 87=G WEIGH LDX 2 FX2 8 87Q6 LDX 1 FX1 9 889Q TXL 7 AWORK3(2) 19 88PB BCC NEXTE [J IF MATCH NO IMPROVEMENT 16 8992 BZE 7 PERFM [J IF MATCH EXACT 9 89NL LDX 5 AWORK4(2) 19 8=8= BZE 5 PERFM [J IF NOT PREVIOUSLY REFUSED 14 8=MW LDX 0 CLEANCT [TIME NOW 19 8?7G TXL 0 5 [IF LESS THEN WE MUST HAVE 17 8?M6 BCC NOTMID [GONE PAST MIDNIGHT 9 8#6Q ADX 0 THRS(1) 5 8#LB NOTMID 19 8*62 SBX 0 TMINS(1) [GIVE UP IF LESS THAN 30 MINS 19 8*KL BNG 0 NEXTE [GIVE UP IF LESS THAN 30 MINS 19 8B5= TXL 0 5 [HAS ELAPSED SINCE LAST TRY 8 8BJW BCS NEXTE 9 8C4G PERFM STO 7 AWORK3(2) 10 8CJ6 LDX 0 ACOMMUNE2(2) 18 8D3Q STO 0 AWORK1(2) [ELSE TAKE NEW INDEX KEYS 10 8DHB LDX 0 ACOMMUNE3(2) 9 8F32 STO 0 AWORK2(2) 8 8FGL BNZ 7 NEXTE 5 8G2= SELECTED 9 8GFW LDX 0 AWORK1(2) 17 8G_G BZE 0 NWANT [J IF NO ENTRY CHOSEN 11 8HF6 LDX 3 JOBRING+BPTR(2) 16 8HYQ SBN 3 JOBRING [POINT TO ACTLF 19 8JDB STO 2 AWORK4(2) [SET SWITCH FOR K3LISTFIND 19 8JY2 LDX 7 AWORK3(2) [PROPERTY WEIGHT FOR B.M.S.F. 8 8KCL BZE 7 REPOK 9 8KX= KEEPREP 0,PREQ 19 8LBW [PREPARE REPLY TO TELL ACTLF THAT PROPERTIES REQUIRE CHANGES. 9 8LWG BRN REPDONE 5 8MB6 REPOK 8 8MTQ KEEPREP 0,OK 5 8N*B REPDONE 9 8NT2 STO 0 EXEC3(3) 18 8P#L LFBBUS G,2,SGOT [J IF DEVICE NOT REMOTE 18 8PS= LFBITCLR G,2 [[UNSET G IN SCHEDULER 16 8Q?W LFBITSET G,3 [SET G IN ACTLF 11 8QRG MHUNTW 1,GOUT,GPROPNOS 8 8R?6 CHAIN 1,3 8 8RQQ BRN SGOT 5 8S=B NWANT 19 8SQ2 [WE HAVE FOUND NOTHING IN :SYSTEM.OUTPUT THAT THE ACTLF COULD BE 19 8T9L [USED FOR.THUS THE ACTLF IS MADE TO FREE THE DEVICE AND SUICIDE. 20 8TP= [THE SCHEDULER HAS A LOOK IN THE LFCHAIN TO SEE IF THE INFORMATION 17 8W8W [THAT A DEVICE IS ABOUT TO BECOME AVAILABLE CAN BE USED. 4 8W9P ...# 6 8W9R ...#UNS ANIP 4 8W9T ...( 10 8W9X ... LDX 0 GSWORK4(2) 8 8W9_ ... BPZ 0 XNOTL 19 8W=3 ...[ IF NIP ACTLF MUST REPORT BACK TO JOB THAT NO ENTRIES AVAILABLE 8 8W=5 ... LFBITCLR G,2 10 8W=7 ... MFREEW GOUT,GPROPNOS 9 8W=9 ... CALL 6 SPUTACT 10 8W=? ... PAIR LISTOPEN,6 5 8W=* ... UP 5 8W=C ...XNOTL 4 8W=F ...) 9 8WNG CALL 6 SPUTACT 10 8X86 PAIR LISTNEXT,6 10 8XMQ ACROSS LISTSEAR,3 10 8Y7B [ ************ 4 8YM2 [ 21 8_6L [*********************************************************************** 5 8_L= POINT2 15 925W [THIS ENTRY POINT IMPLEMENTS THE LFGETPER MACRO. 17 92KG [IF THE REQUEST IS FOR A CENTRAL DEVICE THEN THE GETPER 16 9356 [IS OBEYED BY THE SCHEDULER.ELSE AN ACTLF IS SET UP. 17 93JQ [ON ENTRY ACOMMUNE1 AND 2 CONTAIN INDEX KEYS OF REQUEST. 15 944B [ON EXIT READ POINTERS ARE ON FOLLOWING REQUEST. 13 94J2 STOZ AWORK4(2) [SWITCH 10 953L LDX 0 ACOMMUNE1(2) 16 95H= STO 0 AWORK1(2) [TRANSFER INDEX KEYS 10 962W LDX 0 ACOMMUNE2(2) 9 96GG STO 0 AWORK2(2) 20 9726 CALL 6 REPOSN [POSITION ON FIRST RECORD OF REQUEST. 10 97FQ LDX 0 XIMPBIT(1) 10 97_B ANDX 0 GMODE-A1(3) 18 98F2 BNZ 0 XGPND [J IF CANT BE IMPLEMENTED 5 98YL SPCHECK 19 99D= [THIS IS THE SUB ENTRY POINTFOR CHECKING THAT A REQUEST IS STILL 7 99XW [IMPLEMENTABLE 21 9=CG [WE HAVE RECIEVED A 'PERMX' REPLY FROM SETPROP AND IT MAY BE THAT ALL 12 9=X6 [DEVICES HAVE PERMEXCL PROPERTIES 20 9?BQ [OR THE OPERATOR HAS REPLIED 'CANTDO' TO A PLEASE ATTRIBUTE REQUEST 13 9?WB [OR SETPROP HAS GENERATED NOPER,NOPROP. 10 9#B2 LDX 5 GOPTY-A1(3) 10 9#TL LDX 7 PROPBIT(1) 10 9**= ANDX 7 GMODE-A1(3) 18 9*SW BZE 7 SCENT [CENTRAL IF NO PROPERTIES 10 9B#G LDX 7 GMODE-A1(3) 6 9BS6 READ 10 9C?Q MHUNTW 3,FILE,FRB 11 9CRB NAME 3,APERI,APROPNOS 10 9D?2 LDX 0 CPROPNO(3) 20 9DQL BZE 0 SCENT [CENTRAL IF CONSOLE PROPNUM. ZERO 10 9F== LDX 3 XACTREM(1) 12 9FPW LDN 4 ACTLFLEN+GREMOTELEN 15 9G9G CALL 6 SETACT [SET UP ACTLF 16 9GP6 ... PAIR LISTPROC,4 [WITH THIS LINK 11 9H8Q MHUNTW 1,APERI,APROPNOS 17 9HNB CHAIN 1,2 [TRANSFER TO ACTLF 11 9J82 LDX 2 JOBRING+BPTR(2) 9 9JML SBN 2 JOBRING 8 9K7= LDX 3 FX2 8 9KLW LFBITSET E,2 9 9L6G LDX 0 AWORK1(3) 17 9LL6 STO 0 AWORK1(2) [TRANSFER INDEX KEYS 9 9M5Q LDX 0 AWORK2(3) 9 9MKB STO 0 AWORK2(2) 16 9N52 STO 5 AWORK3(2) [TRANSFER GOPTY 6 9NJL FPUT 17 9P4= LDX 6 7 [ADJUST COPY OF GMODE 20 9PHW ERX 6 PROPBIT(1) [THE CORRECT NUMBER OF RECORDS 15 9Q3G BRN XGPNXD [ARE SKIPPED. 10 9QH6 XGPND LDX 6 GMODE-A1(3) 5 9R2Q XGPNXD 18 9RGB CALL 7 SKIPENT [POSITION ON NEXT REQUEST 5 9S22 UP 4 9SFL [ 5 9S_= SCENT 11 9TDW GETPER7 5,SBRKIN,SBRKIN 11 9TYG TESTREP2 WRNG,NOTAV,NOTAV,NOTAV 9 9WD6 BRN NPRBLX 4 9WXQ [ 21 9XCB [*********************************************************************** 5 9XX2 POINT3 18 9YBL [THIS IS THE ENTRY POINT WHEN THE SCHEDULER FINDS AN ACTLF 19 9YW= [WHICH HAS EITHER PERFORMED A GETPER FOR A REMOTE DEVICE OR HAS 15 9_*W [RECEIVED AN UNSATISFACTORY REPLY TO A SETPROP. 9 9_TG NGS 2 AWORK4(2) 7 =2*6 LDN 7 0 5 =2SQ NPRBLX 18 =3#B [THIS POINT IN THE CODE BE REACHED FROM A JOURNEY ALONG ONE 9 =3S2 [OF THE FOLLOWING PATHS: 20 =4?L [1. THE SCHEDULER HAS PERFORMED A GETPER FOR A CENTRAL REQUEST.THE 21 =4R= [ REPLIES 'WRNG' AND 'NOTAV' HAVE BEEN ELIMINATED.THERE WILL NOT BE 19 =5=W [ AN ACTLF SET UP YET AND X7 WILL BE NON-ZERO ONLY IF THERE IS 9 =5QG [ AN APROPNOS BLOCK. 21 =6=6 [2. AN ACTLF HAS RECIEVED THE REPLY 'CANT' OR 'PERMEXCL' TO A SETPROP: 20 =6PQ [ THE SCHEDULER HAS TO UNSET THE 'BEING IMPLEMENTED' MARKER AND 20 =79B [ PERFORM ANOTHER GETPER.THE ACTLF WILL BE PICKED UP LATER ON BY 20 =7P2 [ THE NORMAL SEARCH IN LISTPROC.IF THE RNPLY WAS 'CANT' THEN THE 19 =88L [ CURRENT TIME IS STORED IN GCOUNT IN THE REQUEST SO THAT NO 16 =8N= [ PROPERTY CHANGES WILL BE ASKED FOR FOR 30 MINS. 4 =97W [ 21 =9MG [3. AN ACTLF HAS PERFORMED A GETPER FOR A REMOTE REQUEST AT K4LISTFIND. 20 ==76 [ THE REPLIES'WRONG' AND'NOTAV' HAVE BEEN ELIMINATED SO IT LOOKS 21 ==LQ [ MUCH LIKE PATH 1. EXCEPT THAT AN ACTLF HAS BEEN SET UP.THE SCHEDULER 7 =?6B [ HAS G SET. 4 =?L2 [ 6 =?P6 ...#UNS FL7502 13 =?S= ... TESTREP2 OK,SGOT,PREQ,SGOT,LOOP,SGOT 6 =?XB ...#UNS FL7502 4 =#2G ...#SKI 10 =#5L TESTREP2 OK,SGOT,PREQ,SGOT 12 =#89 ...[ SPECIAL CODE FOR LFDBAID MACRO !! 10 =#96 ... SEGENTRY K60LISTFIND 9 =#=3 ... BRN TAMOD1 9 =#?2 ... LDX 0 AWORK4(2) 16 =#?9 ... BZE 0 TAMODA [J. ENTRY PT 2 11 =#?D ... LDX 3 JOBRING+BPTR(2) 9 =##4 ... SBN 3 JOBRING 21 =##N ... LFBBS D,3,TAMOD1 [INCASE REMOTE PROPS CHANGED BEFORE 5 =#*G ...TAMODA 15 =#B* ... TESTREP2 NOPROP,NOTAVDB,PERMEXCL,NOTAVDB 5 =#D2 ...TAMOD1 10 =#GK ... SEGENTRY K61LISTFIND 16 =#K= BZE 7 NPRBL [J NO APROPNOS 11 =*4W MHUNTW 1,APERI,APROPNOS 7 =*JG FREECORE 1 5 =B46 NPRBL 14 =BHQ TESTREP2 NOPER,XDL,PERMEXCL,XDL,NOPROP,XDL 9 =C3B TESTREP2 CANT,XDL 9 =CH2 GEOERR 1,GPREPWR 9 =D2L XDL LDX 0 AWORK4(2) 18 =DG= BZE 0 NOTK3 [J IF NOT K3ENTRY POINT 11 =D_W LDX 3 JOBRING+BPTR(2) 15 =FFG SBN 3 JOBRING [X3 -> ACTLF 21 =F_6 LFBBS D,3,REMPERX [J IF REMOTE GETPER FROM K4LISTFIND 16 =GDQ LDX 5 EXEC3(3) [PRESERVE REPLY 15 =GYB CALL 6 REPOSN [FIND REQUEST 19 =HD2 CALL 6 SPUTACT [SEND LISTING ACTIVITY TO CHECK 20 =HXL PAIR LISTNEXT,51 [IF WAITINF TO BE WRONGED ETC 19 =JC= STOZ AWORK4(2) [CHANGE ENTRY-POINT SWITCH 19 =JWW CALL 6 STEPWRITE [IF WE OUGHT TO DELETE THIS 14 =KBG LDX 0 SIMPBIT(1) [REQUEST 19 =KW6 ERS 0 GMODE-A1(3) [UNSET BEING IMPLEMENTED FLAG 15 =L*Q STO 5 EXEC3(2) [RESET REPLY 10 =LTB TESTRPN2 CANT,SPCHECK 20 =M*2 LDX 0 CLEANCT [STORE CURRENT TIME IN TIME FOR 18 =MSL STO 0 GCOUNT-A1(3) [LAST PROPERTY REFUSAL. 9 =N#= BRN SPCHECK 19 =NRW REMPERX [IN THIS CASE WE MUST DELETE 7 =NSJ ...#UNS FSHTEST 4 =NT= ...#SKI 4 =NTY ...( 21 =NWL ...# THIS CODE IS A TEMPORARY FIX FOR BUG 9565. IT IS NOT COMPILED IN 20 =NX# ...# THE SHARED FILESTORE TESTING ENVIRONMENT IN AN ATTEMPT TO STOP 11 =NY2 ...# THE SEGMENT OVERFLOWING 4 =NYN ...# 21 =N_B ... LDX 0 JSOURCE1(3) [FIND OUT WHETHER THIS ACTIVITY HAS 20 =P24 ... BZE 0 XNOPER [A PERIPHERAL - JIF IT HASN'T!! 4 =P2Q ...# 17 =P3D ... TESTRPN2 CANT,XNOTCANT [JIF NOT REPLY 'CANT' 20 =P46 ... CALL 6 REPOSN [RELOCATE ENTRY IN SYSTEM.OUTPUT 19 =P4S ... BRN XCANTREP [J TO TIDY UP AND CARRY ON 4 =P5G ...# 5 =P68 ...XNOTCANT 21 =P6W ... CALL 6 SPUTACT [RUN CURRENT ACTLF TO LOOK FOR OTHER 15 =P7J ... PAIR LISTNEXT,51 [WORK TO DO 20 =P8= ... BRN NOTK3 [GO TO DELETE CURRENT LF REQUEST 4 =P8Y ...# 5 =P9L ...XNOPER 4 =P=# ...) 9 =P?G CALL 6 SPUTACT 15 =PR6 PAIR LISTNEXT,7 [SUICIDE LINK 10 =PTP ... SEGENTRY K62LISTFIND 8 =PY# ... BRN ROB1 8 =Q2Y ... BRN RUP 10 =Q6T ...ROB1 SEGENTRY K63LISTFIND 17 =Q=Q LFBITSET D,2 [FOR USE IN 'REPOSN' 18 =QQB CALL 6 REPOSN [CHECK ENTRY STILL EXISTS 18 =R=2 LFBITCLR D,2 [ITS WORK DONE,UNSET IT. 15 =RPL NOTK3 LDX 0 AWORK1(2) [SIMULATE LFDEL 10 =S9= STO 0 ACOMMUNE1(2) 9 =SNW LDX 0 AWORK2(2) 10 =T8G STO 0 ACOMMUNE2(2) 15 =TN6 STOZ ACOMMUNE3(2) [GETPER SWITCH 10 =W7Q ... ACROSS LISTFNDA,1 13 =WMB [ ************ 4 =X72 [ 18 =XLL [THIS POINT CAN BE REACHED BY ANY OF THE FOLLOWING PATHS:- 19 =Y6= [1. A GETPER FOR A CENTRAL DEVICE(PERFORMED BY THE SCHEDULER) 14 =YKW [ HAS REPIED 'OK' OR 'PREQ'. AWORK4=0 4 =_5G [ 20 =_K6 [2. A MATCH HAS BEEN FOUND FOR A FREE LISTING ACTIVITY.AWORK4>0 4 ?24Q [ 20 ?2JB [3. A GETPER FOR A REMOTE DEVICE(PERFORMED BY LISTING ACTIVITY) 20 ?342 [ HAS REPLIED 'OK' OR 'PREQ'.AWORK4<0. IN THIS CASE THE ENTRY 20 ?3HL [ MAY NO LONGER BE AVAILABLE.(DUE TO THE POSSIBILITY OF PATH 2.) 4 ?43= [ 9 ?4GW SGOT LDX 0 AWORK4(2) 8 ?52G BNZ 0 NPROP 15 ?5G6 [PATH 1. WE SET UP A CENTRAL LISTING ACTIVITY. 9 ?5_Q LDX 5 EXEC3(2) 10 ?6FB LDX 3 XACTCEN(1) 12 ?6_2 LDN 4 ACTLFLEN+CENTRALLEN 9 ?7DL CALL 6 SETACT 10 ?7Y= PAIR LISTOPEN,1 16 ?8CW STO 5 EXEC3(2) [TRANSFER REPLY 8 ?8XG LDX 3 FX2 9 ?9C6 LDX 0 CPPTR(3) 9 ?9WQ STO 0 CPPTR(2) 10 ?=BB LDX 0 JSOURCE1(3) 10 ?=W2 STO 0 JSOURCE1(2) 10 ??*L LDX 0 JSOURCE2(3) 10 ??T= STO 0 JSOURCE2(2) 8 ?##W BZE 7 NPROP 11 ?#SG MHUNTW 1,APERI,APROPNOS 7 ?*#6 FREECORE 1 8 ?*RQ NPROP LDX 2 FX2 19 ?B?B STOZ JSOURCE1(2) [COMPLETE HANDOVER OF DEVICE 19 ?BR2 STOZ JSOURCE2(2) [OTHERWISE IT LOOKS AS THOUGH 21 ?C=L STOZ CPPTR(2) [WE HAVE IT AND THIS CONFUSES GETPER 7 ?C?? ...#UNS FSHTEST 4 ?C?Y ...#SKI 4 ?C#K ...( 4 ?CP4 ...) 11 ?CQ= LDX 3 JOBRING+BPTR(2) 18 ?D9W SBN 3 JOBRING [X3-> LISTING ACTIVITY 9 ?DH= ... LFBBUS D,3,NRGP 8 ?DSL ... LFBITSET D,2 17 ?F62 ...NRGP CALL 6 REPOSN [CHECK REQUEST EXTANT 8 ?FCB ... LFBITCLR D,2 11 ?FNQ LDX 2 JOBRING+BPTR(2) 15 ?G8B SBN 2 JOBRING [PTR TO ACTLF 8 ?GD8 ... LFBITCLR D,2 17 ?GN2 [WE AVOID REPEATING PREVIOUS PROPERTY DEMANDS TOO SOON. 6 ?GP? ...#UNS FL7502 4 ?GQJ ...( 20 ?GRT ... TESTRPN2 LOOP,NLOOP [ J IF NOT FORMAT LOOP PROBLEM 4 ?GS= ...# 5 ?GSM ...XCANTREP 20 ?GT6 ... CALL 6 STEPWRITE [ REWRITE CHANGED RECORD TO FILE 18 ?GWC ... LDX 0 SIMPBIT(1) [ CLEAR BEING IMPLEMENTED 10 ?GXN ... ERS 0 GMODE-A1(3) 19 ?GY_ ... LDX 0 CLEANCT [ STORE TIME PROBLEM OCCURRED 10 ?H2= ... STO 0 GCOUNT-A1(3) 19 ?H3H ... BRN NOTASK [ FORGET REQUEST FOR 30 MINS 5 ?H4S ...NLOOP 4 ?H65 ...) 10 ?H7L TESTRPN2 PREQ,NOPRCH 10 ?HM= LDX 5 GCOUNT-A1(3) 18 ?J6W BZE 5 NOPRCH [J IF NO PREVIOUS DEMAND 18 ?JLG LDX 0 CLEANCT [TIME NOW,IF LESS THAN 20 ?K66 TXL 0 5 [TIME THEN WE MUST HAVE PASSED 15 ?KKQ BCC PNOTMID [MIDNIGHT! 16 ?L5B ADX 0 THRS(1) [ADD ON 24 HOURS 5 ?LK2 PNOTMID 16 ?M4L SBX 0 TMINS(1) [SUBTRACT 30 MINS 9 ?MJ= BNG 0 NOTASK 7 ?N3W TXL 0 5 9 ?NHG BCC NOPRCH 5 ?P36 NOTASK 15 ?PGQ [WE MUST ABANDON THIS REQUEST FOR THE TIME BEING 8 ?Q2B LDX 2 FX2 20 ?QG2 CALL 6 SPUTACT [SET LISTING ACTIVITY TO CHECK 19 ?Q_L PAIR LISTNEXT,51 [WAITING TO BE WRONGED ETC. 17 ?RF= BRN XGPND [RETURN TO LISTPROC. 5 ?RYW NOPRCH 8 ?SDG LFBITSET F,2 10 ?SY6 LDX 4 JSOURCE1(2) 10 ?TCQ LDX 5 JSOURCE2(2) 9 ?TXB CALL 6 STEPWRITE 11 ?WC2 STO 4 GSOURCE1-A1(3) 11 ?WWL STO 5 GSOURCE2-A1(3) 17 ?XB= LDX 5 SIMPBIT(1) [BEING IMPLEMENTED 10 ?XTW ORS 5 GMODE-A1(3) 10 ?Y*G LDX 5 GMODE-A1(3) 7 ?YT6 READAGAIN 10 ?_#Q MHUNTW 1,FILE,FRB 10 ?_SB NAME 1,GOUT,INFO 17 #2#2 CALL 6 TRANSACT [TRANSFER TO ACTLF 10 #2RL LDX 0 PROPBIT(1) 7 #3?= ANDX 0 5 16 #3QW BZE 0 NPRBLK [J NO PROPERTIES 7 #3Y4 ...#SKI JSKI17<1$1 4 #45= ...( 9 #4=G LDX 0 AWORK4(2) 9 #4Q6 BNG 0 NEEDPR 9 #59Q BZE 0 NEEDPR 9 #5PB BNZ 7 NEEDPR 8 #692 CALL 4 STEP 9 #6NL BRN NPRBLK 4 #6YD ...) 5 #78= NEEDPR 9 #7MW CALL 6 READREC 11 #87G NAME 1,APERI,APROPNOS 9 #8M6 CALL 6 TRANSACT 5 #96Q NPRBLK 15 #9LB BNG 5 ONLI [J IF ONLINE 9 #=62 CALL 6 READREC 10 #=KL NAME 1,GOUT,INFO2 7 #?5= LDX 3 1 9 #?JW CALL 6 TRANSACT 9 ##4G CALL 6 WFLTEST 10 ##J6 ONLI LDX 0 SETUPBIT(1) 7 #*3Q ANDX 0 5 8 #*HB BZE 0 NOSE 9 #B32 CALL 6 READREC 10 #BGL NAME 1,GOUT,INFO3 7 #C2= LDX 3 1 9 #CFW CALL 6 TRANSACT 9 #C_G CALL 6 WFLTEST 8 #DF6 NOSE CALL 4 STEP 9 #DYQ CALL 6 SPUTACT 10 #FDB PAIR LISTOPEN,1 5 #FY2 UP 5 #F_P ...NOTAVDB 9 #G3D ... CALL 6 REPOSN 9 #G57 ... CALL 6 STEPWRITE 10 #G6W ... LDX 0 SIMPBIT(1) 10 #G8K ... ORS 0 GMODE-A1(3) 18 #G=# ... ERS 0 GMODE-A1(3) [ CLEAR BEING IMPLEMENTED 11 #G#3 ... VFREE APERI,APROPNOS 8 #G*Q ... BRN XGPND 17 #GCL NOTAV BZE 7 NXP [J NO PROPERTY BLOCK 11 #GX= MHUNTW 1,APERI,APROPNOS 7 #HBW FREECORE 1 19 #HWG NXP CALL 6 REPOSN [POSITION ON ENTRY IN SYSOUT 8 #JB6 BRN XGPND 4 #JTQ [ 10 #K*B [ ************ 16 #KK8 ...[ THIS ENTRY POINT HAS BEEN MOVED TO LISTPROC 4 #KT2 [ 21 #L#L [*********************************************************************** 5 #LS= ...POINT4 17 #M?W ...[[THIS IS THE ENTRY POINT FOR AN ACTLF ABOUT TO PERFORM 11 #MRG ...[[A GETPER FOR A REMOTE DEVICE 10 #N?6 ...[ LDX 4 AWORK3(2) 10 #NQQ ...[SCAG GETPER7 4,SCAG,SNO 12 #P=B ...[ TESTREP2 WRNG,SNO,NOTAV,SNO 10 #PQ2 ...[ TESTREP2 NOPER,SNO 11 #Q9L ...[ MHUNTW 1,APERI,APROPNOS 8 #QP= ...[ FREECORE 1 17 #R8W ...[ LFBITSET D,2 [SHOW REMOTE GETPER 8 #RNG ...[ LFBITCLR F,2 8 #S86 ...[ STARTACT OUT 6 #SMQ ...[ COOR1 9 #T7B ...[ GEOERR 1,NOLINK 7 #TM2 ...[SNO SUICIDE 5 #W6L SBRKIN 9 #WL= GEOERR 1,BROKEN 10 #X5W [ ************ 4 #XKG [ 4 #Y56 [ 4 #YJQ [ 21 #_4B [*********************************************************************** 5 #_J2 POINT5 5 *6XW POINT6 5 *W*W POINT7 9 *WTG ... GEOERR 1,NOTFIND 14 B=4W [!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!7!!!!!! 4 B=5R ...[ 4 B=6N ...[ 4 B=JG #END 8 ____ ...76716233000100000000