{{htmlmetatags>metatag-description:(ICL George 3 and George 4 source: CONNECT867)}}
====== CONNECT867 ======
(George Source)
**Macros used:** [[george:macro:ACROSS|ACROSS]], [[george:macro:ADDJOB|ADDJOB]], [[george:macro:ADDJOBJ|ADDJOBJ]], [[george:macro:BC|BC]], [[george:macro:BITDEFS|BITDEFS]], [[george:macro:BS|BS]], [[george:macro:BSON|BSON]], [[george:macro:CANAMONST|CANAMONST]], [[george:macro:CHEKLFN2|CHEKLFN2]], [[george:macro:CHEKPASWRD|CHEKPASWRD]], [[george:macro:CHNUMCOD|CHNUMCOD]], [[george:macro:CJOBLOCK|CJOBLOCK]], [[george:macro:CLOSE|CLOSE]], [[george:macro:COMBRKIN|COMBRKIN]], [[george:macro:COOR3|COOR3]], [[george:macro:DOWN|DOWN]], [[george:macro:ENDCOM|ENDCOM]], [[george:macro:ERRORX|ERRORX]], [[george:macro:FCAJO|FCAJO]], [[george:macro:FILECOUNT|FILECOUNT]], [[george:macro:FILELOG|FILELOG]], [[george:macro:FSHENTRY|FSHENTRY]], [[george:macro:GEOERR|GEOERR]], [[george:macro:HLSAV|HLSAV]], [[george:macro:HUNT|HUNT]], [[george:macro:INHIBITBRK|INHIBITBRK]], [[george:macro:JBC|JBC]], [[george:macro:JBCC|JBCC]], [[george:macro:JBS|JBS]], [[george:macro:JBSS|JBSS]], [[george:macro:JMBAC|JMBAC]], [[george:macro:JOBLOCK|JOBLOCK]], [[george:macro:LFEJCNT|LFEJCNT]], [[george:macro:LIMBO|LIMBO]], [[george:macro:LOGANAL|LOGANAL]], [[george:macro:LONGWAIT|LONGWAIT]], [[george:macro:MFREE|MFREE]], [[george:macro:MHUNT|MHUNT]], [[george:macro:MHUNTW|MHUNTW]], [[george:macro:MONOUT|MONOUT]], [[george:macro:NEXTW|NEXTW]], [[george:macro:OPENBUDO|OPENBUDO]], [[george:macro:OUTMILL|OUTMILL]], [[george:macro:OUTPACKX|OUTPACKX]], [[george:macro:OUTPAR|OUTPAR]], [[george:macro:PERMITBRK|PERMITBRK]], [[george:macro:SECHECK|SECHECK]], [[george:macro:SEG|SEG]], [[george:macro:SEGENTRY|SEGENTRY]], [[george:macro:SETNCORE|SETNCORE]], [[george:macro:SHLSQ|SHLSQ]], [[george:macro:SINM551|SINM551]], [[george:macro:SINMAC2|SINMAC2]], [[george:macro:SKIP|SKIP]], [[george:macro:SPARABEG|SPARABEG]], [[george:macro:SPARAPAS|SPARAPAS]], [[george:macro:SPARUNAC|SPARUNAC]], [[george:macro:SUBJOB|SUBJOB]], [[george:macro:SUBJOBJ|SUBJOBJ]], [[george:macro:TESTRPN2|TESTRPN2]], [[george:macro:UNSAVE|UNSAVE]], [[george:macro:VFREE|VFREE]]
2256 ... SEG CONNECT,865,SECTION CENT,,G3UGSI,G551,G400
228= ...[
22?B ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
22BG ...[ THIS EXCLUDES CODE UNDER #SKI G551
22FL ...[ AND UNDER #SKI G3UGSI
22JQ ...[
22KR ...#UNS G400
22LS ...# THIS CHAPTER IS MODIFIED FOR G3PLUS-IH MK2
22MW ...#OPT G551 = 0
22R2 ...#SKI G551&1
22W6 ...# WITH G3UG EDIT M551 (SELECTIVE PASSWORD CHECKS FOR CENTRAL AND REMOTE)
22^= #
232^ ...#OPT G3UGSI=0
234N ...[
236C ...#SKI G3UGSI
2386 ...(
239T ...# MACRO TO PREVENT M551 AND SECURITY INTERFACE CLASH
23?J ... SINM551
23*? ...)
23C2 ...[
23DW SEGENTRY K1CONNECT,XK1 [CONNECT COMMAND ENTRY
23YG SEGENTRY K2CONNECT,XK2 [IMPLICIT CONNECT FROM DISCONNECT
24*R ... FSHENTRY K3CONNECT,RETRY,,RETRY
24R4 ... FSHENTRY K4CONNECT,,XK4,XK4
258* ... FSHENTRY K5CONNECT,XK5,,XK5
25KL ... FSHENTRY K7CONNECT,,XK7,XK7 [ENTRY FOR LIMBO CHECK
262X ...[
26BL #OPT WELLTEST=0
26W= #
285# PCON #700000
28*6 STRING +1
28SQ 4H:
2#PQ #
2*9B # THIS SEGMENT INPLEMENTS THE CONNECT COMMAND, WHICH BREAKS IN ON A
2*P2 # SPECIFIED OFFLINE JOB,AND CONVERTS IT TO AN ONLINE JOB ATTACHED TO
2B8L # CONSOLE, AND TERMINATING THE CURRENT MOP ACTIVITY .
2BN= #
2C7W # IN THE COMMENT CONTAINED IN THIS SEGMENT, 'Y' IS THE JOB WHICH HAS
2CMG # ISSUED THE CONNECT, AND 'Z' IS THE JOB BEING CONNECTED
2D76 #
2D87 [ USE OF AWORK WORDS
2D98 [
2D=9 [ ON ENTRY,AWORK1 HOLDS CONTEXT WORD (FROM VERBCLAS)
2D?= [ AWORK1-3 HOLD USER NAME DURING JOB & HLSQ SEARCHES
2D#? [ AWORK4 USED FOR VARIOUS INDICATORS:
2D*# [ B6-8 SET RESPECTIVELY IF CONNECT IS RESTRICTED BY
2DB* [ BY CONTEXT PRIVILEGES. (FOR NO-USER CASE)
2DCB [ B17 - NUMBER - SET IF JOB NO. GIVEN
2DDC [ B18 - XADDJOBJ - SET IF ADDJOBJ OBEYED
2DFD [ B19 - XCHECKPW - SET IF CHEKPASWD OBEYED
2DGF [ B20 - XADDJOB - SET IF ADDJOB OBEYED
2DHG [ B21 - SRCALL - SET IF XADDCHEK S/R NEEDN'T BE REOBEYED
2DJH [ B22 - MESSOP - SET IF MESSAGE ALREADY O/P IF WAIT REQ'D
2DKJ [ B23 - NOTDC - SET IF CN, AS OPPOSED TO DC
2DLQ [
2F6B [ SWITCHES FOR KEEPING TRACK OF JOBCOUNTS ETC
2FDR BITDEFS AWORK4,17,NUMBER,XADDJOBJ,XCHECKPW,XADDJOB
2FR8 BITDEFS AWORK4,21,SRCALL,MESSOP,NOTDC
2G5L [ SUBROUTINE TO KEEP JOBCONTS OK
2GK= TIDY JMBAC (5),2,XADDJOB,XADDJOBJ
2GT4 SBX 5 FX1
2H4W JBCC NOADDJOB,2,XADDJOB
2HJG SUBJOB [UNDO ADDJOB
2HS# ADX 5 FX1
2J46 EXIT 5 0
2JHQ NOADDJOB
2K3B BC 2,XADDJOBJ
2KH2 SUBJOBJ [UNDO ADJOBJ
2KQS ADX 5 FX1
2L2L EXIT 5 0
2LG= [
2L^W SEEKJBLK
2MFG CJOBLOCK 3 [ LOOK FOR JOBBLOCK
2M^6 EXIT 5 0
2NDQ [
2NFT SKJOBYNUM
2NGY [ SUBROUTINE TO FIND JOB BLOCK OF Z
2NJ3 [ AWORK1= JOB NUMBER
2NK6 [ X7 IS LINK
2NL9 [ EXIT 0 IF NOT FOUND
2NM# [ EXIT 1 IF FOUND,WITH X3= POINTER
2NNC [ ON ENTRY, EXPECTS X2=FX2
2NPG JOBLOCK AWORK1(2),3
2NQK BNG 3 SKJ10
2NRN EXIT 7 1
2NSR SKJ10
2NTW EXIT 7 0
2NW^ [
2NYB [
2PD2 #
2PXL # ENTRY FOR DISCONNECT WITH IMPALICITY CONNE.T ENTRY IS MADE FROM
2QC= # LOGIN WHEN THE JOB NAME IS FOUND TO BE NOT UNIQUE
2QWW #
2RBG XK2
2YQB STOZ AWORK4(2)
2^=2 BRN XSTART
2^PL XK1
329= STOZ AWORK4(2)
32NW BS 2,NOTDC
338G LDX 4 CPLEV(2)
33N6 BNZ 4 NOTCON [ERROR NOT DIRECTLY FROM CONSOLE
33S3 LDX 4 AWORK1(2) [CONTEXT WORD
33XY ANDX 4 ICONTEXT [MASK OUT CONTEXT PRIVS NOT I USE
343T ORS 4 AWORK4(2) [SET RELEVANT BITS IN AWORK4
347Q [
3DW2 LDN 7 1
3F*L ANDX 7 CONTEXT(2)
3FT= BNZ 7 USERA [B. IF IN USER CONTEXT
3G#W SPARABEG 1,STRING(1) [GET USER NAME
3GSG CHEKLFN2 NUMB,NLF [CHECK FORMAT, IF MISSING GO NUMB
3H#6 LDX 6 JPARNUM(3)
3HRQ SBN 6 3 [CHECK ONE OF FIRST TWO PARAMETERS
3J?B BPZ 6 NUSEN
3JR2 LDX 6 ACES [STORE USER NAME
3K=L STO 6 AWORK1(2)
3KQ= STO 6 AWORK2(2)
3L9W STO 6 AWORK3(2)
3LPG LDN 4 APARA(3)
3M96 LDN 5 AWORK1(2)
3MNQ SMO ANUM(3)
3N8B MVCH 4 0
3NN2 MFREE CPB,CUNI
3P7L USERA
3PM= SPARUNAC [GET JOB NAME
3Q6W CHEKLFN2 NOJOBNA,NUMB20 [CHECK FORMAT
3QLG BNZ 7 USER
3QQC [
3QW# LDX 5 AWORK1(2) [COPY USERNME INTO X5,6,7
3R29 LDX 6 AWORK2(2)
3R66 LDX 7 AWORK3(2)
3R=3 [
3R*Y NOTUSER
3RFT [ SET UP FABSNB WITH USER NAME
3RKQ SETNCORE 4,3,FILE,FABSNB
3S5B STO 5 A1+1(3) [MOVE USERNAME INTO FABSNB
3SK2 STO 6 A1+2(3)
3T4L STO 7 A1+3(3)
3TJ= LDN 0 4
3W3W STO 0 A1(3)
3WHG OPENBUDO WRONGUN [GET A FILE/ADICTENT BLOCK
3X36 CLOSE
3XGQ BRN RETRY
3XG^ [
3XH8 WRONGUN
3XHC [ USERNAME NOT FOUND IN DICTIONARY
3XHL [ IF NAME WAS INPUT BY USER, GO TO XCHEK.
3XHT [ THIS WILL RESULT IN CHEKPASSWD GIVING AN ERROR.
3XJ4 JBC XCHEK,2,NUMBER
3XJ? [ OTHER CASE IS WHEN ONLY JOB NO. WAS INPUT, AND USERNAME
3XJG [ WAS FOUND IN JOB BLOCK. THIS MEANS THAT NAME HAS DISAPPEARED
3XJP [ FROM DICTIONARY, SO FIND OUT WHAT HAPPEND
3XJY CALL 7 SKJOBYNUM [GET JOB BLOCK AGAIN
3XK7 BRN XCHEK [MISSING - USER HAS BEEN ERASED
3XKB GEOERR 1,USERLOST [OTHERWISE BREAK
3XKK [
3XKS [
3XL3 SHLSR
3XL= [ SUBROUTINE TO SEARCH HLSQ FOR JOB
3XLF [ WHOSE NUMBER IS IN AWORK1
3XLN [ IF BLOCK NOT FOUND, GOES TO XNOJOB
3XLX [ EXIT 0 IF FOUND, WITH X3=POINTER
3XM6 [ X7 IS LINK
3XM* [ ON ENTRY, EXPECTS X2=FX2
3XMJ SHLSQ AWORK1(2),3,XNOJOB
3XMR EXIT 7 0
3XN2 [
3XN9 [
3XND NUMB
3XNM [ JOB NO INPUT
3XNQ MFREE CPB,CUNI
3XNW SPARAPAS [GET 1ST PARAM
3XNX MHUNT 3,CPB,CUNI
3XNY LDX 4 ANUM(3) [J IF 1ST PARAM NULL OR NON-EXISTING
3XN^ BNG 4 NOJOBNA
3XP2 BZE 4 NOJOBNA
3XP5 NUMB20
3XP# [ CONVERT JOB NUMBER
3XPH CHNUMCOD 1
3XPQ TESTRPN2 OK,NUMERR [J IF NOT VALID NUMBER
3XP^ MHUNT 3,CPB,CUNI
3XQ8 LDX 4 JPARNUM(3)
3XQC SBN 4 1
3XQL BNZ 4 NOJOBNA [J IF NOT 1ST PARAM
3XQT [
3XR4 LDX 4 ACOMMUNE1(2)
3XR? STO 4 AWORK1(2) [STORE JOB NUMBER IN AWORK1
3XRG BS 2,NUMBER [AND SET NUMBER BIT IN AWORK4
3XRP [
3XRY [ NOW LOOK FOR JOB BLOCK
3XS7 CALL 7 SKJOBYNUM
3XSB BRN NONUMB [J IF NOT FOUND
3XSK LDX 5 JUSER(3) [PICK UP USERNAME
3XSS LDX 6 JUSER+1(3)
3XT3 LDX 7 JUSER+2(3)
3XT= [
3XTF NUMFOUND
3XTN LDN 4 1
3XTX ANDX 4 CONTEXT(2)
3XW6 BNZ 4 USER [J IF IN USER CONTEXT
3XW* BRN NOTUSER
3XWJ [
3XWR NONUMB
3XX2 [ JOB NOT FOUND IN JOB QUEUE
3XX9 BSON HLSBIT,XNOJOB [J IF HLS NOT IN USE
3XXD CALL 7 SHLSR [LOOK IN HLSQ
3XXM LDX 5 HLSUNAM(3) [PICK UP USERNAME
3XXW LDX 6 HLSUNAM+1(3)
3XY5 LDX 7 HLSUNAM+2(3)
3XY# BRN NUMFOUND
3XYH [
3XYQ [
3Y2B XOUTPACK
3YG2 SBX 7 FX1
3Y^L OUTPACKX 3,4,5
3^F= ADX 7 FX1
3^YW EXIT 7 0
428N [
42DG XADDCHEK
42Y6 JBSS (7),2,SRCALL
43CQ JBC XDC,2,NOTDC
43XB LDX 0 CONTEXT(2) [DON'T PROCEED IN USER CONTEXT
44C2 ANDN 0 2
44WL BZE 0 (7)
45B= BPZ 4 XCHEK2 [LIMBO CALL DON'T ADDJOB
46T6 ADDJOB XDEAD,XBROKE
47#Q BS 2,XADDJOB
47SB BRN XCHEK2
48#2 XDC BNG 4 (7) [J IF NOT LIMBO
48RL ADDJOBJ XDEAD,XBROKE [ADD BACK JOB IF DC&LIMBO
49?= BS 2,XADDJOBJ
49QW XCHEK2
4==G JBS RETRY,2,XCHECKPW
4=G# JBC RETRY,2,NOTDC [NO CHECK IF ALREADY MOP JOB
4=GS ...[
4=H# ...#SKI G551&1
4=HS ...(
4=J# ...[ MEND EXCHANGE SCHEME CODE
4=JS ... LDN 7 1
4=K# ... DOWN INITJOB,20
4=KS ... BRN XBROKE
4=L# ... BRN MESSU
4=LS ... BRN PWOK
4=M# ... BRN MESSU
4=MS ...PWOK
4=N# ...)
4=NS ...#SKI G551^G3UGSI<1$1
4=P# ...(
4=Q6 HUNT 3,FILE,ADICTENT [CHECK USERS PASSWORD UNLESS
4?9Q SECHECK 3,RETRY,XCHEK [SECURITY IS LOW
4?PB XCHEK
4*8= CHEKPASWRD XBROKE,MESSU
4*9D ...)
4*=L ...#SKI G3UGSI
4*?S ...(
4**2 ...[ THIS SECTION COMPILED IF USER GROUP SECURITY
4*B8 ...[ INTERFACE IS SWITCHED ON
4*CB ... SINMAC2 XDEAD,XBROKE,5
4*DJ ... BRN XK31
4*FQ ...XCHEK
4*GY ... BRN MESSU [ERROR IN USERNAME OR PASSWORD
4*J6 ...XK31
4*K# ...)
4*LG ...[
4*MW BS 2,XCHECKPW
4B7G BRN RETRY [REFIND JOB BLOCK
4B#N [
4BFW [
4BM6 USER
4C6Q CANAMONST XDEAD [ANALYSE MONITORING STYLE PARAMS
4CLB XSTART
4CRJ STO 5 ACOMMUNE4(2) [PRESERVE X5
4CYQ [ GET NAME OF PROPER USER
4D62 CALL 5 SEEKJBLK
4D*S JBS USERCHEK,2,NUMBER [J IF JOB NO. INPUT
4DKL LDN 5 JUSER(3)
4F5= LDN 6 AWORK1(2)
4FJW MOVE 5 3 [STICK USERNAME IN AWORK WORDS
4FL4 BRN RETRY
4FM= [
4FND USERCHEK
4FPL [ COMPARE PROPER USER NAME WITH THAT IN JOB BLOCK FOR Z
4FQS LDX 5 ACOMMUNE4(2)
4FS2 TXU 5 JUSER(3)
4FT8 TXU 6 JUSER+1(3)
4FWB TXU 7 JUSER+2(3)
4FXJ BCC RETRY [J IF THEY ARE SAME
4FYQ BRN XUSER
4F^Y [
4G36 [
4G4G RETRY
4N7S JBS RETNUM,2,NUMBER [J IF JOB NO. WAS INPUT
4NCL HUNT 1,CPB,CUNI
4NX= LDX 4 ANUM(1) [MOVE JOB NAME TO COMMUNE WORDS AND
4PBW LDN 5 12 [SPACEFILL
4PWG RET1 LDCH 6 APARA(1)
4QB6 DCH 6 ACOMMUNE1(2)
4QTQ BCHX 1 £
4R*B BCHX 2 £
4RT2 SBN 5 1
4S#L BCT 4 RET1
4SS= BZE 5 RET3
4T?W LDN 6 #20
4TRG RET2 DCH 6 ACOMMUNE1(2)
4W?6 BCHX 2 £
4WQQ BCT 5 RET2
4X=B RET3 LDX 2 FX2 [RESTORE X2
4XQ2 # FIND JOB QUEUE ENTRY
4Y9L LDN 3 BJOBQ
4YP= NEXTB LDX 3 FPTR(3) [GET NEXT IN CHAIN
4^8W TXU 3 CXJO [CHECK FOR END OF JOBQ
4^NG BCC NOJOB [J IF 'Z' NON-EXISTENT
55KG LDN 7 3
5656 NEXTW SMO 7
56JQ LDX 4 JNAME-1(3)
574B SMO 7
57J2 TXU 4 ACOMMUNE1-1(2) [COMPARE JOBNAME
583L BCS NEXTB [J THIS JOBLOCK NOT 'Z'
58H= BCT 7 NEXTW [COMPARE WHOLE OF JOB/USER NAME
592W LDN 7 3
59GG NEXTX SMO 7
5=26 LDX 4 JUSER-1(3)
5=FQ SMO 7
5=^B TXU 4 AWORK1-1(2) [COMPARE USERNAME
5?F2 BCS NEXTB [BRN IF FAIL
5?YL BCT 7 NEXTX
5?^D BRN TESTJB [JOB FOUND!
5#2= [
5#34 RETNUM
5#3W [ JOB NO. WAS INPUT, HENCE FIND JOB BLOCK
5#4N CALL 7 SKJOBYNUM
5#5G BRN NOJOB [J IF NOT FOUND
5#6# [
5#76 TESTJB
5#7Y LDCH 4 JSOURCE1(2) [GET SOURCE OF JOB Y
5#8Q SBN 4 #74
5#9J BNZ 4 TESTJB10 [J IF NOT CI
5#=B MHUNTW 1,AMXOR,CILCB
5#?8 LDX 4 CIJOBNUM(1) [GET JOB NO OF CI JOB
5#*L LDX 1 FX1
5#*W TXU 4 JOBNUM(3)
5#B6 BCC SAMEJOB [J IF SAME AS JOB Y
5#BD [
5#C= TESTJB10
5#D= LDN 6 0
5#XW LDX 4 JMISC(3)
5*CG BNG 4 XNOTLIMBO [BACKGROUND JOB
5*X6 FCAJO 2,3
5B2= [
5D3W LIMBO 6,2
5D72 LDX 2 FX2
5D=6 BZE 6 ONLINE [ERROR CN TO MOP JOB!!!!
5D*= XNOTLIMBO
5DBM [ CHECK CONTEXT PRIVS IF NECESSARY
5DC* LDX 1 FX1
5DD4 LDX 7 AWORK4(2)
5DFF ANDX 7 PCON(1)
5DGW BZE 7 NOTLIMB10 [J IF NOT NECESSARY
5DJ? LDX 5 JPRIV(3) [PRIVILEGE WORD IN JOB BLOCK
5DKN ANDX 5 7
5DM5 ERX 5 7
5DNG BNZ 5 NOPRIV [J IF REQUIRED PRIV IS NOT HELD
5DPX [
5DR# NOTLIMB10
5MML CALL 7 XADDCHEK [CHECK JOBCOUNTS & PASSWORD
5P6G INHIBITBRK XBROKE
5PL6 BSON HLSBIT,XNBSAVED [J IF PRE-HLS
5Q5Q LDCT 4 1
5QKB ANDX 4 JMISC(3)
5R52 BZE 4 XNBSAVED [TAKE NO ACTION IF NOT BEING SAVED
5RJL LDX 4 JOBNUM(3)
5S4= SHLSQ 4,2,US2
5SHW HLSAV 2,CLEAR,SAVING,HLSQ,US6
5T3G LDCT 5 #020 [MARK TO REVERSE SAVING PROCESS
5TH6 ORS 5 HLSYONQ(2)
5W2Q US7 COOR3 #34 [WAIT FOR SAVING PROCESS TO BE REVERS
5WGB SHLSQ 4,2,US2
5X22 LDX 5 HLSYONQ(2)
5XFL BNG 5 US6 [J IF SAVED
5X^= SLL 5 1
5YDW BNG 5 US7 [J IF STILL BEING SAVED
5YYG XNBSAVED
5^D6 LDX 4 6 [REMEMBER 'LIMBO' STATE
5^XQ LDX 6 JOBNUM(3) [& REMEMBER JOB NUMBER OF 'Z'
66S2 DOWN PROCONTX,13 [STOP 'Z' (JOBNO IN X6)
67?L BRN NOTSTOPPED [J NOT STOPPABLE
67R= BRN XNOTCON
68=W # CLOSE AND O/P MONITORING FILE OF 'Y'
69PQ [
6=9B [ UPDATE JWELL AND CHANGE JLSTAT IN JOBLIST ENTRY...
6=P2 [
6?8L BNZ 4 WASLIMBO
6?N= DOWN DSCNCT,3
6#7W WASLIMBO
6#MG [
6*76 [
6B6B STO 6 AWORK3(2)
6BL2 LDN 0 1
6C5L ANDX 0 CONTEXT(2)
6CK= BZE 0 NOUSE
6D4W JBC NOUSE,2,NOTDC
6DJG FILECOUNT 3
6F46 SBN 3 1
6FHQ BZE 3 NCLOSE
6G3B CLOSE
6GH2 NCLOSE
6H2L LDN 4 1 [OUTPUT MAX. ONLINE BACKSTORE USED
6HG= CALL 5 SEEKJBLK
6H^W LDX 6 GUBS(3) [GET GUBS/2
6JFG SRA 6 1
6J^6 LDN 3 6 [SET PTR TO RESULT
6KDQ LDN 5 JPDNUMA
6KYB CALL 7 XOUTPACK
6LD2 MONOUT GUBSOUT
6LXL OUTPAR USERNAME,JOBNAME,TIMENOW
6MC= OUTMILL
6MWW LFEJCNT AWORK1(2),AWORK2(2),6
6NBG LDN 4 1
6NW6 MHUNT 3,ADATA,AREPORT
6P*Q LDX 0 A1(3)
6PTB BZE 0 NOMFLF [J IF CN ,NONE
6Q*2 ADS 4 AWORK1(2) [ALLOW FOR MONITORING FILE
6QSL NOMFLF
6R#= LDN 3 AWORK1(2)
6RRW LDN 5 JPDNUMA
6S?G CALL 7 XOUTPACK
6SR6 LDX 0 AWORK2(2)
6T=Q BZE 0 XNONEA
6TQB LDN 3 AWORK2(2)
6W=2 LDN 5 JPDNUMB
6WPL CALL 7 XOUTPACK
6X9= BRN XAON
6XNW XNONEA
6Y8G OUTPAR SKIP
6YN6 XAON BZE 6 XBON
6^7Q LDN 3 6
6^MB LDN 5 JPDNUMC
7272 CALL 7 XOUTPACK
72LL XBON
736= MONOUT JOBT,,NONAUT
73KW #
73MS ...#UNS G400
73PQ ...(
73RN ... SEGENTRY K60CONNECT
73TL ... BRN NOHOOK [HOOK NOT REQUIRED
73XJ ... DOWN DOMONOP,4 [CALL JOBEND HOOK
73^G ...NOHOOK
743D ...)
745G # PROCESS MONITORING FILE
74K6 SEGENTRY K50CONNECT [USED BY BILA MACRO (TO MEND IN/OUT BILA)
754Q LOGANAL
75JB #
7=DL FILELOG [DELETE TEMPORARY FILES AND DIRECTORY
7=Y= CALL 5 SEEKJBLK
7?CW LDX 6 CUBS(3) [GET CUBS/2
7?XG SRA 6 1
7#C6 BZE 6 XCUBSOK [CUBS SHOULD HAVE RETURNED TO ZERO
7#WQ OUTPAR USERNAME,JOBNAME [OUTPUT USERNAME & JOBNAME PARAMETERS
7*BB LDN 3 6 [SET PTR TO RESULT
7*W2 LDN 4 1
7B*L LDN 5 JPDNUMA
7BT= CALL 7 XOUTPACK
7C#W MONOUT CUBSWRONG
7CSG XCUBSOK
7D#6 NOUSE
7J96 ACROSS CONNECTA,1
7JNQ #
7K8B #
7LM= XBROKE
7M6W CALL 5 TIDY [KEEP COUNT OK
7R3W NSJ COMBRKIN
7T2B PJXCONSOLE +JXCONSOLE
7TG2 PJPARMIS +JPARMIS
7T^L PJJOBNA +JJOBNA
7WF= PJUSNA +JUSNA
7WLD ...#SKI G551&1
7WRL ...PERNOUSER +ERNOUSER
7WYW PIMPASSE +IMPASSE
7XDG PJXEXIST +JXEXIST
7XY6 PHNOTCON +HNOTCON
7YCQ PJNOTOFF +JNOTOFF
7YXB PJNLFNF +JNLFNF
7^C2 PHSAMLN +HSAMLN
7^G6 PGENERR +GENERR
7^K= PHWSUSER +HWSUSER
7^NB PCNSELF +CNSELF
7^RG PJINVJNO +JINVJNO
7^T4 PANOPRIV +ANOPRIV
7^WL # JOB 'Z' DOES NOT EXIST
82B= NOJOB
82TW BSON HLSBIT,XNOJOB
83*G # NO JOB BLOCK. MAY BE SAVED SO SEARCH FOR HLSQ BLOCK
83T6 #
844Y JBS SNUM,2,NUMBER
84#Q LDN 3 BHLSQ
84SB SHLSQ
85#2 LDX 3 FPTR(3)
85RL TXU 3 CXHL
86?= BCC XNOJOB [NOT IN HLSQ
86QW LDN 7 3
87=G XNEXTW
87Q6 SMO 7
889Q LDX 4 HLSJNAM-1(3)
88PB SMO 7
8992 TXU 4 ACOMMUNE1-1(2)
89NL BCS SHLSQ [J IF NOT CORRECT JOBNAME
8=8= BCT 7 XNEXTW
8=MW LDN 7 3
8?7G XNEXTX
8?M6 SMO 7
8#6Q LDX 4 HLSUNAM-1(3)
8#LB SMO 7
8*62 TXU 4 AWORK1-1(2)
8*KL BCS SHLSQ [J IF NOT CORRECT USER NAME
8B5= BCT 7 XNEXTX
8B78 BRN SFOUND [JOB FOUND
8B96 [
8B?4 SNUM
8B*2 [ SEARCH HLSQ BY JOB NO.
8BBY CALL 7 SHLSR
8BDW [
8BGS SFOUND
8BJW NGN 4 1
8C4G CALL 7 XADDCHEK [CHECK JOBCOUNT & PASSWORD
8CJ6 LDX 4 HLSJONO(3)
8MB6 US6 UNSAVE 4
8MTQ BRN XNOJOB [UNSUCCESSFUL UNSAVE
8N*B BRN RETRY
8NT2 XNOJOB
8P#L JBS XIST,2,NOTDC
8PS= # FILE WITH SAME LOCAL NAME
8Q?W SMO FX1
8QRG LDX 7 PHSAMLN
8R?6 BRN NGN
8RQQ XIST
8S=B SMO FX1
8SQ2 LDX 7 PJXEXIST
8T9L BRN NGN
8TP= US2 GEOERR 1,NOHLSQ
8W8W #
8WNG NOTSTOPPED
8X86 PERMITBRK
8XMQ [TO COVER CASE OF CHANGE OF LIMBO STATE OVER WAIT
8Y7B [WE ENSURE XADDCHEK WILL DO ADDJOB IF NECESSARY-THIS MEANS CLEARING
8YM2 [B21 &20 AND DOING SUBJOB IF ADDJOB DONE.THEN ON TRYING AGAIN @RETRY
8^6L [XADDCHEK WILL REPEAT ALL BUT CHEKPW AS BIT 19 LEFT
8^L= CALL 5 TIDY
925W BC 2,SRCALL
92KG JBSS XNOMESTP,2,MESSOP
944B LONGWAIT XBROKE,#62,JCONWAIT,XNOMESTP [WAIT AWHILE
94J2 BRN RETRY
953L XNOTCON
95H= PERMITBRK
962W SMO FX1
96GG LDX 7 PHNOTCON [NOT CONNECTABLE
9726 BRN NGN
97FQ NOTCON
97^B LDX 7 PJXCONSOLE(1) [NOT FROM A CONSOLE
98F2 BRN NGN
98YL NOJOBNA
99D= LDX 7 PJPARMIS(1) [JOB NAME MISSING
99XW LDX 6 PJJOBNA(1)
9=CG BRN XERR
9=G5 ...#SKI G551&1
9=JN ...(
9=M? ...XCHEK LDX 7 PERNOUSER(1)
9=PW ... BRN NGN
9=SF ...)
9=X6 ONLINE
9?BQ SMO FX1
9?WB LDX 7 PJNOTOFF [JOB Z IS ALREADY ONLINE
9#B2 BRN NGN
9#TL NLF LDX 7 PJNLFNF(1) [NOT A LOCAL NAME
9**= BRN NGN
9*SW NUSEN LDX 7 PJPARMIS(1) [USER NAME MISSING
9B#G LDX 6 PJUSNA(1)
9BS6 BRN XERR
9BSY [
9BTQ NUMERR
9BWJ [ INVALID JOB NUMBER
9BXB LDX 7 PGENERR(1)
9BY8 LDX 6 PJINVJNO(1)
9B^2 BRN XERR
9B^S [
9C2L XUSER
9C3D [ SPECIFIED JOB DOES NOT BELONG TO PROPER USER
9C4= LDX 7 PHWSUSER(1)
9C54 BRN NGN
9C5W [
9C6N SAMEJOB
9C7G [ CI JOB TRYING TO CONNECT TO ITSELF
9C8# VFREE CPB,CUNI
9C96 LDX 7 PCNSELF(1)
9C9Y BRN NGN
9C=Q [
9C=X NOPRIV
9C?4 [ USER HAS NOT GOT REQUIRED PRIVILEGE
9C?9 LDX 7 PANOPRIV(1)
9C?B BRN NGN
9C?H [
9C?Q MESSU LDX 7 PIMPASSE(1) [INCORRECT PASSWORD
9CRB NGN NGN 6 1
9D?2 XERR ERRORX 7,6
9FPW XDEAD
9G9G CALL 5 TIDY
9L6G NSJ1 ENDCOM
=7P2 #END
^^^^ ...343013330005