{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: EXPRESS864)}}
====== EXPRESS864 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:BSOFF|BSOFF]], [[george:macro:CHEKLFN2|CHEKLFN2]], [[george:macro:CHNUMCOD|CHNUMCOD]], [[george:macro:COMERR|COMERR]], [[george:macro:COMERRX|COMERRX]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:FREECORE|FREECORE]], [[george:macro:FSHCODE|FSHCODE]], [[george:macro:HUNT|HUNT]], [[george:macro:HUNT2|HUNT2]], [[george:macro:JOBLOCK|JOBLOCK]], [[george:macro:MENDAREA|MENDAREA]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MONOUT|MONOUT]], [[george:macro:MONOUTX|MONOUTX]], [[george:macro:NAME|NAME]], [[george:macro:ON|ON]], [[george:macro:OUTBLOCN|OUTBLOCN]], [[george:macro:OUTNUM|OUTNUM]], [[george:macro:OUTPARAM|OUTPARAM]], [[george:macro:PARANOT|PARANOT]], [[george:macro:PARAPASS|PARAPASS]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SHLSQ|SHLSQ]], [[george:macro:SPARABEG|SPARABEG]], [[george:macro:SPARANOX|SPARANOX]], [[george:macro:SPARAPAS|SPARAPAS]], [[george:macro:SPRIVJUMP|SPRIVJUMP]], [[george:macro:TEMPQ|TEMPQ]], [[george:macro:TESTREP|TESTREP]], [[george:macro:TRACE|TRACE]], [[george:macro:UNIFREE|UNIFREE]]
22FL #LIS K0EXPRESS>K0HLS>K0COMMAND>K0GREATGEO>K0ALLGEO
22^= #SEG EXPRESS60 [RICHARD GRIMWADE
23DW 8HEXPRESS
23YG #
24D6 # THIS COMMAND INFORMS THE HLS SUBJECT PROGRAM THAT A JOB MUST BE
24XQ # RUN IMMEDIATELY
25CB # TO DO THIS IT PUTS AN ENTRY FOR THE JOB ON THE TEMP HLSQ
25X2 #
26BL SEGENTRY K1EXPRESS,XK1
26W= #
27*W STRING +1
27TG 4H:
28*6 TWO +2
28SQ XK1
28W^ ... FSHCODE B,XNOTB
28^8 ...(
293C ... COMERR INCDUMP [THIS COMMAND CANNOT BE USED ON 'B'
295L ...#
297T ...XNOTB
29=4 ...)
29#B BSOFF HLSBIT,ON [DROP THRU IF HLS SWITCHED OFF
29S2 LDX 6 Y8(1)
2=?L BRN RERR
2=R= ON
2?=W SPARABEG 1,STRING(1) [GET USERNAME PARAM
2?QG CHEKLFN2 XJONO,NLFN [J TO XJONO IF NO USERNAME
2#=6 [AND TO NLFN IF NOT L.F.N.FORMAT
2#PQ LDX 4 JPARNUM(3) [GET PARAM NO.
2*9B LDN 5 3
2*P2 TXL 4 5
2B8L BCC NUNA [J IF NOT 1ST OR 2ND PARAM
2BN= LDN 5 1
2C7W TXU 4 TWO(1)
2CMG BCC X1 [J IF USERNAME IS 2ND PARAM
2D76 LDN 5 2
2DLQ X1 SPARANOX 5 [GET JOBNAME PARAMETER
2F6B CHEKLFN2 NJBNA,NLFN [J TO NJBNA IF NO JOBNAME AND
2FL2 [ TO NLFN IF FORMAT ERROR
2G5L LDX 5 ACES [LOAD SPACES
2GK= STO 5 ACOMMUNE1(2)
2H4W LDN 5 ACOMMUNE1(2)
2HJG LDN 6 ACOMMUNE2(2) [ SPACEFILL ACOMMUNE
2J46 MOVE 5 5 [ AREA
2JHQ LDEX 6 ANUM(3) [NO. CHARS IN JOBNAME
2K3B LDN 4 APARA(3) [PTR TO JOBNAME
2KH2 LDN 5 ACOMMUNE1(2)
2L2L SMO 6
2LG= MVCH 4 0 [MOVE IN JOBNAME
2L^W STO 6 AWORK1(2) [SAVE COUNT OF JOBNAME CHARS
2MFG HUNT2 3,CPB,CUNI [FIND /CUNI CONTAINING USERNAME
2M^6 LDEX 6 ANUM(3)
2NDQ LDN 4 APARA(3)
2NYB LDN 5 ACOMMUNE4(2)
2PD2 SMO 6
2PXL MVCH 4 0 [MOVE USERNAME INTO ACOM. AREA
2QC= STO 6 AWORK2(2)
2QWW CALL 6 SRNAM
2RBG PARAPASS
2RW6 PARAPASS
2S*Q UNIFREE
2STB #
2T*2 # RETURNS WITH JOBNUMBER IN X4
2TSL #
2W#= #SKI K6ALLGEO>99-99
2WRW TRACE 4,*NUMBER*
2X?G OUTBLOCN 8
2XR6 OUTPARAM AWORK1(2),ACOMMUNE1
2Y=Q OUTPARAM AWORK2(2),ACOMMUNE4
2YQB LDX 0 Z2(1) [LOAD MESSAGE IDENTIFIER
2^=2 X2
2^PL MONOUTX 0 [OUTPUT MESSAGE
329= LDN 7 #40
32NW SPARAPAS [GET TEXT PARAMETER
32QD ...#SKI JWPHASE4
32S2 ...(
32TJ ... MHUNT 3,CPB,CUNI
32X6 ... NAME 3,ADATA,CSTORE
32YN ... LDX 6 4
332= ... ACROSS JWELLONE,7
333S ...)
335B ...#SKI JWPHASE4<1$1
336Y ...(
338G TEMPQ 7,4 [ENTRX TO HLSQ,MUST DF AFTER COOR
33N6 HUNT 3,CPB,CUNI
347Q LDN 1 24
34MB NGX 0 ANUM(3)
3572 BPZ 0 THEND [J IF MISSING OR MVLL
35LL ADN 0 24
366= BNG 0 MOVE
36KW LDEX 1 ANUM(3)
375G MOVE LDX 2 BHTEMP+1 [X1 = MIN OF 24 AND ANUM
37K6 [X2 -> LAST BLOCK IN TEMPQ
384Q ADN 3 APARA
38JB LDN 4 HLSJNAM(2)
3942 MVCH 3 0(1) [MOVE IN CHAR STRING
39?S ...)
39HL THEND
3=3= ENDCOM
3=GW #
3?2G # THIS PATH IS ENTERED WHEN THERE IS NO USERNAME PARAM. , AND THEREFORE
3?G6 # A JOBNUMBER PARAMETER IS ASSUMED
3?^Q #
3#FB XJONO FREECORE 3 [FREE CPB/CUNI
3#^2 PARAPASS [GET JOBNO. PARAM
3*DL MHUNT 3,CPB,CUNI
3*Y= NGX 4 ANUM(3)
3BCW BPZ 4 NJBNO [JOBNO. PARAM MISSING
3BXG CHNUMCOD 1,3 [CONVERT NO. TO BINARY
3CC6 TESTREP CHNUMERR,NUMERR [TO REPORT NUMBER ERROR
3CWQ LDX 4 ACOMMUNE1(2)
3DBB #SKI K6ALLGEO>99-99
3DW2 TRACE 4,*JOBNO**
3F*L BZE 4 NOTVAL [ JOBNUMBER MUST BE NON-ZERO
3FT= BNG 4 NOTVAL [ AND +VE.
3G#W CALL 6 SRNUM [ S/R TO CHECK IF JOB EXISTS
3GSG OUTNUM 4,0
3H#6 LDX 0 Z1(1) [LOAD MESSAGE IDENTIFIER
3HRQ BRN X2
3J?B #
3JR2 # THE FOLLOWING S/R CHECKS FOR THE EXISTENCE OF JOB , GIVEN
3K=L # THE JOBNUMBER
3KQ= #
3L9W SRNUM JOBLOCK 4,3 [LOOK FOR JOBBLOCK
3LPG BNG 3 SRNUM1 [J IF NO JOBBLOCK
3M96 SPRIVJUMP JSISSUE,3,SYS [J IF SYSTEM ISSUED
3MNQ SRNUM2
3N8B EXIT 6 0
3NN2 SRNUM1
3P7L SHLSQ 4,3,NONX [SEARCH HLSQ FOR JOB ENTRY
3PM= BRN SRNUM2 [J IF FOUND
3Q6W #
3QLG # THE FOLLOWING S/R CHECKS FOR THE EXISTENCE OF JOB, GIVEN
3R66 # THE JOBNAME AND USERNAME
3RKQ #
3S5B SRNAM LDN 3 BJOBQ
3SK2 SRNAM2
3T4L LDX 3 FPTR(3)
3TJ= TXU 3 CXJO
3W3W BCC SRNAM1 [J IF END OF Q FOUND
3WHG LDN 0 3
3X36 SRNAM3
3XGQ SMO 0
3Y2B LDX 4 JNAME-1(3)
3YG2 SMO 0
3Y^L TXU 4 ACOMMUNE1-1(2)
3^F= BCS SRNAM2 [J IF NO MATCH
3^YW BCT 0 SRNAM3
42DG LDN 0 3
42Y6 SRNAM4
43CQ SMO 0
43XB LDX 4 JUSER-1(3)
44C2 SMO 0
44WL TXU 4 ACOMMUNE4-1(2)
45B= BCS SRNAM2 [J IF NO MATCH
45TW BCT 0 SRNAM4
46*G SPRIVJUMP JSISSUE,3,SYS [J IF SYSTEM ISSUED
46T6 LDX 4 JOBNUM(3) [BLOCK FOUND - LOAD JOBNUMBER
47#Q EXIT 6 0
47SB #
48#2 # THE FOLLOWING IS THE SEARCH DOWN THE HLSQ
48RL #
49?= SRNAM1
49QW LDN 3 BHLSQ
4==G SRNAM5
4=Q6 LDX 3 FPTR(3)
4?9Q TXU 3 CXHL
4?PB BCC NONX [J IF JOB NON EXISTENT
4#92 LDN 0 3
4#NL SRNAM6
4*8= SMO 0
4*MW LDX 4 HLSJNAM-1(3)
4B7G SMO 0
4BM6 TXU 4 ACOMMUNE1-1(2)
4C6Q BCS SRNAM5 [J IF NO MATCH
4CLB BCT 0 SRNAM6
4D62 LDN 0 3
4DKL SRNAM7
4F5= SMO 0
4FJW LDX 4 HLSUNAM-1(3)
4G4G SMO 0
4GJ6 TXU 4 ACOMMUNE4-1(2)
4H3Q BCS SRNAM5 [J IF NO MATCH
4HHB BCT 0 SRNAM7
4J32 LDX 4 HLSJONO(3) [GET JOBNUMBER
4JGL EXIT 6 0
4K2= SYS MONOUT EXSYS
4KFW BRN THEND
4K^G #
4LF6 # THE FOLLOWING IS THE ERROR REPORTING ROUTINE
4LYQ #
4MDB NONX LDX 6 Y1(1) [JOB NON EXISTENT
4MY2 BRN RERR
4NCL NLFN LDX 6 Y2(1) [NOT LFN FORMAT
4NX= BRN RERR
4PBW NUNA LDX 7 Y3(1) [USERNAME PARAM MISSING
4PWG BRN RER1
4QB6 NJBNA
4QTQ LDX 7 Y4(1) [JOBNAME PARAM MISSING
4R*B RER1 LDX 6 Y5(1)
4RT2 BRN RER2
4S#L NJBNO FREECORE 3 [FREE /CUNI
4SS= BNZ 4 X3
4T?W # IF FIRST PARAMETER NULL SEE IF A SECOND PARAMETER EXISTS
4TRG PARANOT 2
4W?6 MHUNT 3,CPB,CUNI
4WQQ NGX 6 ANUM(3)
4X=B FREECORE 3
4XQ2 BPZ 6 X3
4Y9L LDX 0 Z3(1)
4YP= BRN X2
4^8W X3
4^NG LDX 6 Y5(1)
5286 BRN RERR
52MQ NUMERR
537B LDX 6 Y6(1) [NO. FORMAT ERROR
53M2 BRN RERR
546L NOTVAL
54L= LDX 6 Y7(1)
555W RERR NGN 7 1
55KG RER2
5656 COMERRX 6,7 [REPORT ERROR
56JQ Y1 +JXEXIST
574B Y2 +JNLFNF
57J2 Y3 +JUSNA
583L Y4 +JJOBNA
58H= Y5 +JPARMIS
592W Y6 +CHNUMERR
59GG Y7 +FWHSTAT
5=26 Y8 +EPHLSOFF
5=FQ #
5=^B # THE FOLLOWING ARE MESSAGE IDENTIFIERS
5?F2 #
5?YL Z1 +EXJOBNO
5#D= Z2 +EXJOBNA
5#XW Z3 +EXMESS
5*CG #
5*X6 MENDAREA 50,K99EXPRESS
5BBQ #END
^^^^ ...55021474000100000000