14 22FL #LIS K0ADDJOB>K0ALLGEO>K0GREATGEO>K0COMMAND 15 22J9 ... SEG ADDJOB,867,SECTION CENT,,G3UGSI 4 22LS ...[ 17 22PC ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LIMITED 1982 14 22S2 ...[ THIS EXCLUDES CODE UNDER #SKI G3UGSI 4 22WK ...[ 7 22_8 ...#OPT G3UGSI=0 6 233R ...#SKI G3UGSI 4 236B ...( 16 238_ ...[ MACRO TO PREVENT M551 AND SECURITY INTERFACE CLASH 7 23?J ... SINM551 4 23B7 ...) 7 23DW #OPT WELLTEST=0 17 24D6 # THIS SEGMENT IMPLEMENTS THE FOLLOWING MACROS... 4 24XQ # 18 25CB # 1. ADDJOB --- ADD 1 TO COUNT OF MOP JOBS (K1) 18 25X2 # 2. ADDJOBJ --- ADD 1 TO COUNT OF BG. JOBS (K5) 18 26BL # 3. SUBJOB --- TAKE 1 FROM MOP COUNT (K2) 18 26W= # 4. SUBJOBJ --- TAKE 1 FROM BG. COUNT (K7) 18 272N ...# 5. CHEKPASWRD --- READ AND CHECK PASSWORD (K3) 7 2776 ...#SKI CASKI8214 4 27?J ...( 18 27D2 ...# 6. ADDJOBW --- ADD 1 TO COUNT OF BG. JOBS EVEN IF 17 27JD ...# FINISH HAS BEEN ISSUED (K11) 4 27NW ...) 4 27TG # 10 28*6 SEGENTRY K1ADDJOB,XK1 10 28SQ SEGENTRY K2ADDJOB,XK2 10 29#B SEGENTRY K3ADDJOB,XK3 10 29S2 SEGENTRY K5ADDJOB,XK5 10 2=?L SEGENTRY K7ADDJOB,XK7 11 2=CH ... FSHENTRY K8ADDJOB,,XK8,XK8 11 2=HD ... FSHENTRY K9ADDJOB,XK9,,XK9 12 2=M* ... FSHENTRY K10ADDJOB,XK10,,XK10 7 2=N= ...#SKI CASKI8214 11 2=P7 ... SEGENTRY K11ADDJOB,XK11 4 2=Q6 ...[ 4 2=SX ...[ 14 2=XN ...[ SEGENTRY K20ADDJOB & K21ADDJOB USED BY 12 2?2F ...[ RESTORE-TIME MACRO CLEARPASS 4 2?5= ...[ 4 2?83 ...[ 8 2?=W PHNOW +HNOW 9 2?QG PHSOON +HSOON 9 2#=6 MASK #03777777 8 2#PQ XIN 4HIN 9 2*9B XFONINTP +FONINTP 8 2*P2 XSECS 4HSECS 9 2B8L XMINS 4HMINS 8 2BN= SIXTY +60 8 2C7W THOU +1000 9 2CMG MAGIC +7036875 4 2D76 # 20 2DLQ ...# THE FOLLOWING ROUTINE IMPLEMENTS ADDJOB/J/W. ITS USE IN SYSTEM 20 2F6B # ISSUED CPA'S HAS NULL EFFECT. IT GEOERR'S IF OBEYED FROM AN 11 2FL2 # ACTIVITY OTHER THAN A CPA. 4 2G5L # 13 2G=# ...[ SET ENTRY INDICATORS AS FOLLOWS: 11 2GC2 ...[ X3=1 FOR MOP (ENTRY K1) 16 2GHN ...[ X3=0 FOR BACKGROUND (ENTRIES K5 AND K11) 21 2GNB ...#SKI CASKI8214 [SKIP FOR ENHANCEMENT DS8214 - PUT JOBS IN WELL AFT 4 2GT4 ...( 13 2G_Q ...[ AWORK2=0 FOR ENTRIES K1 AND K5 21 2H6D ...[ AWORK2=1 FOR ENTRY K11 (PUT JOB IN WELL IF FN ISSUED) - DS8214 4 2H?6 ...[ 4 2HCS ...) 7 2HJG XK1 NGNC 3 1 18 2J46 XK5 [ X3 = 1(MOP) 0(BACK) 7 2JB7 ... LDN 3 0 7 2JN8 ...#SKI CASKI8214 4 2K29 ...( 9 2K#= ... STOZ AWORK2(2) 9 2KL? ... BRN STARTADDJ 4 2KY# ...[ 4 2L=* ...XK11 7 2LJB ... LDN 4 1 9 2LWC ... STO 4 AWORK2(2) 7 2M8D ... LDN 3 0 4 2MGF ...[ 6 2MSG ...STARTADDJ 4 2N6H ...) 21 2NDQ CALL 7 SICPA [CHECK IF SYSTEM ISSUED OR NOT CPA 16 2NYB BRN UP2 [SYSTEM ISSUED 9 2PD2 LDXC 0 FINISH 8 2PMS ...#SKI CASKI8214<1$1 19 2PXL BCS XFIN [J IF FINISH HAS BEEN ISSUED 7 2PXQ ...#SKI CASKI8214 4 2PXW ...( 8 2PY2 ... BCC XK9 8 2PY6 ... CALL 5 SRFIN 4 2PY= ...) 4 2Q#? ...# 4 2Q*6 ...XK9 4 2Q*_ ...# 19 2QC= LDN 5 0 [X5=0 => FIRST TIME THROUGH 9 2RBG STO 5 AWORK1(2) 5 2RW6 XCHEK 4 2T*2 [ 4 2TSL [ 12 2W#= [ CALCULATE EFFECTIVE LIMIT L 12 2WRW [ FOR JOBS TYPE-X,OTHER TYPE-Y 4 2X?G [ 15 2XR6 [ L=MAX(X-JOBS,JOBLIMIT-MAX(Y-JOBS,Y-COUNT)) 4 2Y=Q [ 9 2YBK ... LDX 0 IMOPTOTAL 14 2YCW ... BNZ 3 XNCH [J IF MOP 9 2YF7 ... LDX 0 JOBLIMIT 9 2YGD ... SBX 0 IMOPTOTAL 8 2YHP ... BPZ 0 XEFFL 7 2YK2 ... LDN 0 0 18 384Q XEFFL [ EFFECTIVE LIMIT IN X0 8 38JB BZE 0 XNCH 10 3942 LDX 4 CONTEXT(2) 8 39HL ANDN 4 #20 17 3=3= BZE 4 XNEWL [ J IF NOT OPERATOR 10 3=GW LDX 7 CONTEXT(2) 16 3?2G ANDN 7 #200 [ X7 #0 IF REMOTE 8 3?G6 LDN 6 110 7 3?_Q LDN 4 5 8 3#FB BZE 7 XCAL 8 3#_2 LDN 6 105 7 3*DL LDN 4 2 18 3*Y= XCAL MPR 6 0 [ CALC MAX(L+X4,L*X6/100) 8 3BCW LDN 7 100 7 3BXG DVS 5 7 7 3CC6 ADX 0 4 7 3CWQ TXL 0 5 8 3DBB BCC XNEWL 7 3DW2 LDX 0 5 12 3F*L [ NEW CALCULATED EFFECTIVE LIMIT 15 3FT= [ ALLOWING FOR OPERATOR CONTEXTS AS REQUIRED 5 3G#W XNEWL 4 3GSG XNCH 10 3H#6 LDX 4 JOBCOUNT(3) 7 3HRQ TXL 4 0 8 3J?B BCS OK 4 3K=L [ 4 3KQ= [ 8 3WHG BNZ 3 XJER2 16 3X36 LONGSET #44,XLONG [MAY HAVE TO WAIT 9 3Y2B LDX 5 AWORK1(2) 19 3YG2 BNZ 5 WAIT [J IF NOT FIRST TIME THROUGH 10 3Y_L LDX 0 CONTEXT(2) 8 3_F= ANDN 0 #220 8 3_YW ERN 0 #200 20 42DG BNZ 0 XNREM [J IF (NOT REMOTE) OR (OPERATOR) 20 42Y6 # [I.E. CONTINUE FOR REMOTE AND... 15 43CQ # [NOT OPERATOR 6 43XB OUTPER 21 44C2 INFORM 0,JOBLIMR,1 [OUTPUT 'JOBLIMIT REACHED' MESSAGE 4 44WL WAIT 19 46*G LONGSTOP UPLS1 [WAIT. UPPLIS 1 IF BREAK IN 21 46T6 ORN 5 1 [TO INDICATE NOT FIRST TIME THROUGH 9 47SB STO 5 AWORK1(2) 19 48#2 BRN XCHEK [REPEAT COUNTS V LIMITS CHECK 10 48RL XNREM LDX 0 CONTEXT(2) 7 49?= ANDN 0 1 17 49QW BZE 0 NOUSE [J IF NO USER CONTEXT 9 4==G MONOUT JOBREACH 8 4=Q6 BRN WAIT 10 4?9Q NOUSE LDX 0 CONTEXT(2) 8 4?PB ANDN 0 #30 19 4#92 BNZ 0 XJER1 [J IF OPERATOR OR MOP CONTEXT 19 4#NL SETJOBLMT [SET JOBLIMIT ON READER... 20 4*8= LDCT 5 #400 [AND REMEMBER TO CLEAR IT LATER. 8 4*MW BRN WAIT 20 4B7G OK BZE 5 OK1 [NO COORDINATION ETC. SINCE ENTRY 8 4BM6 BPZ 5 NCL 20 4C6Q CLJOBLMT [CLEAR JOBLIMIT IF PREVIOUSLY SET 9 4CLB NCL LDXC 0 FINISH 8 4CW8 ...#SKI CASKI8214<1$1 20 4D62 BCS XFIN [J IF FINISH ISSUED SINCE ENTRY 7 4D8K ...#SKI CASKI8214 4 4D?8 ...( 8 4D*R ... BCC OK1 8 4DDB ... CALL 5 SRFIN 4 4DG_ ...) 7 4DKL OK1 LDN 0 1 10 4GJ6 ADS 0 JOBCOUNT(3) 4 4GM= ...UP2 7 4HD= ...UP2X UPPLUS 2 4 4HHB # 13 4J32 # ROUTINE FOR CATERING FOR FINISH 4 4JGL # 7 4JJ8 ...#SKI CASKI8214 4 4JKQ ...( 5 4JM# ...SRFIN 14 4JNW ...[ SUBROUTINE TO BE ENTERED IF FN SET. 7 4JQD ...[ LINK=X5 13 4JS2 ...[ IF JOB TO BE PUT IN WELL, EXIT 0 16 4JTJ ...[ OTHERWISE OUTPUT APPROPRIATE MESSAGE AND GO UP 4 4JX6 ...[ 4 4JYN ...) 18 4K2= ...XFIN LDX 6 PHNOW(1) [SET UP FINISH NOW MESSAGE 7 4KFW SLL 0 1 16 4K_G BNG 0 OUTM [J IF FINISH NOW 7 4K_X ...#SKI CASKI8214 4 4L2# ...( 9 4L2P ... LDX 4 AWORK2(2) 21 4L36 ... BZE 4 SRFIN5 [IF JOB CAN'T BE KEPT IN WELL 7 4L3H ... EXIT 5 0 4 4L3Y ...[ 5 4L4* ...SRFIN5 4 4L4Q ...) 9 4LF6 LDX 4 FINISH 9 4LYQ ANDX 4 MASK(1) 16 4MDB BNZ 4 TIME [J IF FINISH N 18 4MY2 LDX 6 PHSOON(1) [ELSE MUST BE FINISH SOON 7 4NCL OUTM OUTMESSX 6 8 4NX= XFER CALL 3 XERR 20 4PBW +HNOMORJ [NO MORE JOBS ARE BEING ACCEPTED 9 4PWG TIME LDX 0 XIN(1) 10 4QB6 STO 0 ACOMMUNE1(2) 8 4QTQ LDX 0 ACES 10 4R*B STO 0 ACOMMUNE2(2) 10 4RT2 MPY 4 XFONINTP(1) 9 4S#L LDX 6 XSECS(1) 10 4SS= BXL 5 SIXTY(1),SECS 9 4T?W DVR 4 SIXTY(1) 9 4TRG LDX 6 XMINS(1) 10 4W?6 SECS STO 6 ACOMMUNE3(2) 17 4WQQ BXL 5 THOU(1), X3FIG [J IF < 4 FIGURE TIME 19 4X=B LDN 5 999 [REPLACE SILLY TIME BY 999 9 4XQ2 X3FIG MPY 5 MAGIC(1) 10 4Y9L LDN 3 ACOMMUNE2(2) 7 4YP= LDN 0 7 7 4_8W MODE 0 8 4_NG XCBD1 CBD 5 0(3) 8 5286 LDCH 4 0(3) 19 52MQ BNZ 4 NZ [FIRST NON-ZERO CHAR FOUND 8 537B BCT 0 XCBD1 18 53M2 BRN WEND [SHOULDN'T DROP THROUGH 7 546L XCBD2 BCHX 3 / 8 54L= CBD 5 0(3) 8 555W NZ BCT 0 XCBD2 7 55KG WEND OUTBLOCN 4 8 5656 LDN 4 12 10 56JQ OUTPARAM 4,ACOMMUNE1 8 574B BRN XFER 4 57J2 # 7 583L XJER1 LONGOFF 8 58H= XJER2 CALL 3 XERR 9 592W +JLIMIT 8 59GG XERR ERRORX 0(3) 5 5=26 UP 4 5=FQ # 20 5=_B # THE FOLLOWING ROUTINE IMPLEMENTS SUBJOB/J. ITS USE IN SYSTEM 19 5?F2 # ISSUED JOBS HAS NULL EFFECT. IT MUST BE OBEYED FROM A CPA. 4 5?YL # 7 5*CG XK2 NGNC 3 1 4 5*X6 XK7 7 5FS6 LDN 3 0 21 5G?Q CALL 7 SICPA [CHECK IF SYSTEM ISSUED OR NOT CPA 16 5GRB BRN UP [SYSTEM ISSUED 4 5G_# ...# 4 5G_X ...# 4 5H2G ...XK10 4 5H35 ...# 10 5JPW LDX 0 JOBCOUNT(3) 7 5K9G SBN 0 1 17 5KP6 BNG 0 XFEW [GEOERR IF COUNT -VE 10 5MML STO 0 JOBCOUNT(3) 21 5N7= LONGON #44 [KICK ANY CPA'S WAITING FOR JOBLIMIT 4 5N=B ...UP 5 5P3B ...UPX UP 4 5P6G # 5 5PL6 SICPA 10 5Q5Q LDXC 0 CONTEXT(2) 8 5QKB BCS (7) 7 5R52 ADN 7 1 9 5RJL LDX 0 ATYPE(2) 8 5S4= SRL 0 12 8 5SHW ERN 0 CPAT 14 5T3G BZE 0 (7) [J IF CPA 9 5TH6 GEOERR 1,ADDJOB 4 5W2Q # 5 5WGB XLONG 10 5X22 GEOERR 1,LONGSET? 4 5XFL XFEW 9 5X_= GEOERR 1,FEWJOBS 4 5YDW # 4 5YYG # 12 5_D6 # ENTRY FOR THE CHEKPASWRD MACRO 4 5_XQ # 4 62CB # 4 62X2 XK3 8 63BL OUTMESS JPASS 8 63W= CALL 5 SR4 20 64*W READY UPA [J. IF BROKEN IN OR INOPERABLE 8 64TG CALL 5 SR4 10 65*6 MHUNTW 3,FILE,FRB 16 65SQ LDCT 5 #600 [GET CHAR COUNT 9 66#B LDEX 4 A1+FRH(3) 10 66S2 ANDX 5 A1+FRH+1(3) 7 67?L SBN 4 2 8 67R= BZE 5 XNEXT 7 68=W SBN 4 1 7 68QG XNEXT SLL 45 2 8 69=6 LDX 5 ACES 7 69PQ LDX 6 5 7 6=9B LDX 7 5 8 6=P2 BZE 4 ZRH 17 6?8L XTAC LDCH 0 A1+FRH+2(3) [IGNORELEADING SPACES 9 6?N= TXU 0 SPACE(1) 8 6#7W BCS START 7 6#MG BCHX 3 / 8 6*76 BCT 4 XTAC 8 6*LQ BRN ZRH 8 6B6B SPACE #20 8 6BL2 THIRTN +13 9 6C5L START TXL 4 THIRTN(1) 8 6CK= BCS PLUS2 16 6D4W LDN 4 12 [MAX OF 12 CHARS 7 6DJG PLUS2 LDN 2 0 10 6F46 PLUS3 LDCH 0 A1+FRH+2(3) 16 6FHQ DCH 0 5(2) [STORE PASS WORD 7 6G3B BCHX 2 / 7 6GH2 BCHX 3 / 8 6H2L BCT 4 PLUS3 4 6H3= ...[ 9 6H3W ... SEGENTRY K20ADDJOB 21 6H4G ... BRN SEC [THIS IS MENDED BY MACRO CLEARPASS 18 6H56 ... CLEARVDU [CLEAR PASSWORD ON VDU 4 6H5Q ...[ 9 6H6B ... SEGENTRY K21ADDJOB 4 6H72 ...SEC 7 6H8G ...#SKI G3UGSI<1$1 4 6H=2 ...( 18 6H?G ...[ SKIPPED IF USER GROUP SECURITY INTERFACE SWITCHED ON 18 6H*2 ... SINMAC1 5 [SECURITY INTERFACE MACRO 9 6HG= ZRH MFREEW FILE,FRB 4 6HHS ...) 6 6HKB ...#SKI G3UGSI 4 6HLY ...( 20 6HNG ...[ THIS SECTION IS COMPILED IF G3 USER GROUP SECURITY INTERFACE 11 6HQ4 ...[ ENHANCEMENT IS SWITCHED ON 4 6HRL ...ZRH 8 6HT8 ... SINMAC1 5,,1 9 6HWQ ... MFREEW FILE,FRB 4 6HY# ...) 10 6H_W HUNTW 3,FILE,ADICTENT 8 6JFG BNG 3 UPLS1 9 6J_6 TXU 5 CPASS(3) 10 6KDQ TXU 6 CPASS+1(3) 10 6KYB TXU 7 CPASS+2(3) 8 6LD2 BCS UPLS1 7 6LXL FREECORE 3 7 6MC= UPPLUS 2 4 6MWW UPA 8 6NBG CALL 5 SR4 5 6NW6 UP 7 6P*Q UPLS1 UPPLUS 1 4 6PTB # 20 6Q*2 # THIS SUBROUTINE SETS OR UNSETS A BIT TO SAY 'PSEUDO-USER' DO 8 6QSL # NOT CLOSE DOWN 6 6R#= SR4 SNUIB 7 6RRW EXIT 5 0 4 6SR6 #END 8 ____ ...46244534000600000000