(George Source)
Macros used: ACROSS, APJOBSET, BC, BITDEFS, BS, BXU, CHAIN, CHAINJWELL, CLOSETOP, ENDCOM, ENRING, FCAJO, FINDOLPA, FJOCA, FPUT, GETACT, HUNT2J, HUNTACTJ, ICT, JBC, JBCC, JBS, JLADJUST, JMBAC, JMBAS, LINK, LINKSET, LONGON, MFREE, MHUNTW, SEG, SEGENTRY, SPRIVON, UP, VOP
22FL #OPT K0SETJOBQ=0 22^= #LIS K0SETJOBQ>K0ALLGEO>K0GREATGEO>K0COMMAND 23=L ... SEG SETJOBQ,867,SECTION CENT 23J2 ...[ 23TB ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 246Q ...[ 24D6 # 24XQ # THIS SEGMENT IS ENTERED FROM ENWELL/JSASCAN/SCHEDULE/SCHEDJOB 25CB # TO SET UP THE CPAT AND JOBQ BLOCKS FOR A JOB ABOUT TO BE STARTED. 25X2 # 26BL SEGENTRY K1SETJOBQ,XENWELL 26W= SEGENTRY K2SETJOBQ,XJSA 27*W SEGENTRY K3SETJOBQ,XHLS 27TG # 29XX XLINKS 2=3S LINK DEWELL,1 2=7P LINK DEWELL,2 2*P2 X1000 1000 2B8L XCONT #22405 2BN= MOPCONT #20411 2D76 MASKQ #20000000 2F6B BITDEFS HLSCONREC+6,20,TBEXPREQ 2KKK XPRIVS +APHLSEXT^APSJMESS^APNOTOWNER^APBUDGEXT 2KN8 XUSERS 12HMANAGER 2KQR 12HSYSTEM 2KTB 12HJOURNAL 2KX^ +0 3B6G [ 3B84 WELL3 3B9L STO 0 GEN0 3B?8 MHUNTW 3,JWELL,COPYSYS 3B#Q JLADJUST 3 3BB# BRN (GEN0) 3BCW [ 3BH2 FINDOLPA 3BL6 LDX 2 FX2 3BP= FINDACTN 2,AWORK2(2) 3BSB EXIT 7 0 3BXG [ 3C25 XHLS 3C4N LDN 7 0 3C7? STO 7 ACOMMUNE1(2) [=0 IMPLIES JOB IS BEING DEWELLED 3C9W STO 1 ACOMMUNE2(2) [IMPLIES ENTERED FROM SCHEDJOB 3C#F BRN XENTER 3CC6 XENWELL 3CWQ NGNC 0 1 3DBB XJSA 3DW2 LDN 7 0 [X7=0 IF ENTERED FROM JSA 3F*L STO 7 ACOMMUNE1(2) [X7=1 IF FROM ENWELL 3FBX STOZ ACOMMUNE2(2) 3FD8 XENTER 3FFH CALL 0 WELL3 3GSG JBS XMOP1,3,JLBMOP [J IF MOP 3H#6 GETACT CPAT 3HRQ LDX 3 BPTR(2) 3J?B ADX 1 7 3JR2 LINKSET 3,XLINKS(1) 3K=L LDCT 0 #40 3KQ= STO 0 JOBEVENTS(3) [INHIBIT BRK IN 3L9W BZE 7 XMOP1 [J IF FROM JSA 3LPG CHAINJWELL [ELSE PASS OVER 3 JWELL BLOCKS 3M96 XMOP1 3MNQ LDN 4 EXTJOB 3N8B LDX 0 ACOMMUNE2(2) 3NN2 BZE 0 NHLS1 [J IF NOT HLSDEWELL 3P7L CALL 7 FINDOLPA 3PM= LDX 0 HLSCONREC+7(2) 3Q6W BNG 0 NHLS1 [J IF NO NEEDS TO GO IN JOBQ 3QLG HUNT2J 3,ADATA,CSTORE,2,(GEOERR) 3R66 ADX 4 A1(3) 3RKQ NHLS1 3S5B SETUPCOR 4,3,JOBQE,,,1,2 [CREATE JOB BLOCK 6BL2 STOZ JOBNUM(3) 6C5L LDN 4 JOBNUM(3) 6CK= LDN 5 JOBNUM+1(3) 6D4W MOVE 4 EXTJOB-1-JOBNUM+A1 [ CLEAR BLOCK 6DJG [ 6DKC MHUNTW 2,JWELL,COPYSYS 6DL# LDX 6 A1+JLJOBNO(2) 6DM9 JLADJUST 2 6DN6 LDX 7 2 6DP3 JBC XEASY,2,JLBMOP [J IF NOT MOP 6DPY LDX 2 FX2 6DQT LDX 0 ACOMMUNE1(2) 6DRQ BNZ 0 XEASY1 [J IF FROM ENWELL 6DSM XFIND FINDACTF 2,2,CPAT,,(GEOERR),FPTR 6DTJ HUNT2J 1,JWELL,COPYSYS,2,XFIND 6DWF BXU 6 A1+JLJOBNO(1),XFIND 6DWQ JLADJUST 1 6DX3 BS 1,JLBRUNNING 6DXB BRN XEASY1 6DY? XEASY LDX 2 FX2 6D^8 LDX 2 ACTRING+1(2) 6F25 SBN 2 ACTRING 6F32 XEASY1 6F46 LDN 1 AJBRING(3) 6FHQ LDN 2 JOBRING(2) 6G3B ENRING 1,2 [ RING JOBBLOCK TO CPA 6GH2 [ 6H2L LDX 2 7 6H^W STOZ JMISC(3) [ STATE OF JOB 6JFG JBS SETJB,2,JLBMOP 6J^6 LDX 0 GSIGN 6KDQ ORS 0 JMISC(3) [ OFFLINE JOB 6KYB SETJB LDX 0 IDEFBS 6L6L SLA 0 1 6L#W BVCR NOOVRFL 6LH6 LDCT 0 #377 6LPB NOOVRFL 6LXL STO 0 AMBS(3) 6MC= [ 6MWW [ NB. CUBS AND GUBS ALREADY ZERO . 6NBG [ 6NCS JMBAC NREST,2,JLBGENRES,JLBBREAK,JLBABANDON,JLBPARTRES 6NGW BS 3,JBRESTARTED 6NH^ NREST 6NL# LDN 7 0 6NW6 JBC SUSER,2,JLBSYSIS [ J IF NOT SYSTEM ISSUED 6P*Q SPRIVON JSISSUE,3 [ SET SYSTEM ISSUED STATUS 6PKJ LDX 7 XPRIVS(1) 6PTB SUSER 6P^? JBCC NSECURE,2,JLBSINFACE1 [J IF NOT SECURE USER 6Q58 BS 3,JBSINFACE1 [MARK JOB SECURE 6Q95 NSECURE 6Q*2 LDX 0 JLBUDGETS(2) 6QSL ORS 0 JPRIV(3) 6RRW SBX 2 JOBDATASIZE 6S?G LDX 0 JLJOBNO(2) 6SR6 STO 0 JOBNUM(3) 6Y8G LDN 4 JLUSER(2) 6YN6 LDN 5 JUSER(3) 6^7Q MOVE 4 3 [ USERNAME 6^8M LDX 4 JUSER(3) 6^9J LDX 5 JUSER+1(3) 6^=F LDX 6 JUSER+2(3) 6^?B XPR TXU 4 XUSERS(1) 6^#? TXU 5 XUSERS+1(1) 6^*8 TXU 6 XUSERS+2(1) 6^B5 BCC XGRANT 6^C2 LDX 0 XUSERS+3(1) 6^CX ADN 1 3 6^DS BNZ 0 XPR 6^FP BRN XGR 6^GL XGRANT 6^HH SMO FX1 6^JD LDX 7 XPRIVS 6^K* XGR LDX 1 FX1 6^L= ORS 7 JPRIV(3) 6^MB [ 7272 LDN 4 JLJOBNAME(2) 72LL LDN 5 JNAME(3) 736= MOVE 4 3 [ JOBNAME 73KW CHJOBLOC 3 [ CHAIN IN JOBBLOCK 73TN FCAJO 2,3 73XL CALL 0 WELL3 754Q JBC SBITS,3,JLBMOP [ J IF NOT MOP 75JB SBX 3 JOBDATASIZE 75NS LDN 0 #6000 75T= ANDX 0 CONTEXT(2) [PRESERVE FULLY STARTED-NESS 75^N BNZ 0 TSFS 7666 ORN 0 #2000 76=J TSFS 76C2 ORX 0 MOPCONT(1) 76HL STO 0 CONTEXT(2) [ INITIAL MOP CONTEXT 773= BRN XNO [ MOP 77GW SBITS LDX 4 XCONT(1) [ CONTEXTS 782G JBC NOSYS,3,JLBSYSIS [ J IF NOT SYSTEM ISSUED 78G6 ORX 4 GSIGN 78^Q JBC NOSYS,3,JLBSPRIV 79FB LDX 0 MASKQ(1) 79^2 STO 0 CLONG1(2) 7=DL NOSYS STO 4 CONTEXT(2) [ INITIAL JOB CONTEXT 7=Y= [ 7?CW NGN 0 1 7?XG STO 0 CPLEV(2) [ INITIAL CP LEVEL 7#C6 STOZ JSOURCE1(2) 7#WQ STOZ JSOURCE2(2) 7C#W [ 7CSG MHUNTW 3,JWELL,COPYSYS 7D#6 ADN 3 A1+FRH 7DRQ LDX 0 JLPROPNO(3) 7F?B STO 0 JSOURCE3(2) 7FR2 [ 7FR= XNO LDX 6 JLJOBNO(3) 7FRG STO 6 JOBNO(2) [ CPAT JOBNO 7FRH FJOCA 1,2 7FRJ ADX 3 JOBDATASIZE 7FRY LDX 4 BACKCP 7FS4 JMBAC SYSPRI,3,JLBCLUS,JLBMOP [J IF CENTRAL &BACK 7FS8 LDX 4 CLUSMOPCP 7FS# JMBAS SYSPRI,3,JLBCLUS,JLBMOP [J IF CLUSTER&MOP 7FSD LDX 4 CLUSBACKCP 7FSJ JBS SYSPRI,3,JLBCLUS [J IF CLUSTER&BACK 7FSN LDX 4 IMOPCP [ELSE CENTRAL&MOP 7FSS SYSPRI 7FSY JBC NOSYSPRI,3,JLBSYSIS [J IF NOT SYS ISSUED 7FT4 LDN 4 62 7FT8 LDX 0 ISISSMP 7FT# STO 0 AMILLP(1) [MILL PRIORITIES 7FTD NOSYSPRI 7FTJ DEX 4 ACOREP(1) 7FTS JBC XNOJT,3,JLJTDF [J IF NO JOBTIME ON JOB CARD 7FTY BS 1,JBJOBT [TO FORBID A FURTHER JT COMMAND 7FW4 XNOJT 7FW8 SBX 3 JOBDATASIZE 7FW# LDX 4 JLJT(3) 7FWD ADX 3 JOBDATASIZE 7FWJ BNZ 4 NCV1 [J IF NON ZERO JT FIELD 7FWN JBS NCV1,3,JLJTDF 7FWS LDX 4 JOBTIME 7FWY NCV1 SBX 3 JOBDATASIZE 7FX4 SMO FX1 7FX8 MPY 4 X1000 7FX# STO 4 ATIMEJ(1) 7FXD STO 5 ATIMEJ+1(1) [STORE JOBTIME AS MILLISECS 7FXJ LDX 0 JLURG(3) 7FXN STO 0 JURGE(1) 7FXS SEGENTRY K50SETJOBQ [FOR NEWNEEDS MACRO 7FXY LDX 0 JLMAXSIZE(3) 7FY4 LDX 4 0 7FY8 ADX 3 JOBDATASIZE 7FY# BNZ 4 NCV2 7FYD JBS NCV2,3,JLMZDF 7FYJ LDX 4 COREDEFAULT 7FYN NCV2 7FYS STO 4 JSIZE(1) 7FYW SBX 3 JOBDATASIZE 7F^P SMO FX2 7F^Q LDX 0 ACOMMUNE2 7F^R BZE 0 NHLS2 [J IF NOT HLSDEWELL 7F^S CALL 7 FINDOLPA 7F^T LDXC 0 HLSCONREC+2(2) 7F^W BCS NOCPI [J IF NO CPI GIVEN 7F^X STO 0 JCPI(1) 7F^Y NOCPI 7F^^ LDXC 4 HLSCONREC+3(2) 7G24 BCS NOJOBT [J IF NO JOBTIME GIVEN 7G28 SMO FX1 7G2# MPY 4 X1000 7G2D STO 4 ATIMEJ(1) 7G2J STO 5 ATIMEJ+1(1) 7G2N NOJOBT 7G2S LDXC 0 HLSCONREC+4(2) 7G2Y BCS NOURGE [J IF NO URGENCY GIVEN 7G34 STO 0 JURGE(1) 7G38 NOURGE 7G3# LDXC 0 HLSCONREC+5(2) 7G3D BCS NOMAXS [J IF NO MAXSIZE GIVEN 7G3J STO 0 JSIZE(1) 7G3N NOMAXS 7G4Y LDX 6 HLSCONREC+6(2) [STATUS WORD 7G54 BNG 6 SETEP6 [J IF DEFAULT 7G58 SRC 6 4 7G5# ERX 6 GSIGN [UNSET B0 IF EP 7G5D SETEP6 7G5J LDXC 0 HLSCONREC+10(2) 7G5N BCC TCPR [J IF CORE PRIORITY GIVEN 7G5S BNG 6 NOCOREP [J IF NOT EXPRESSED 7G5Y LDN 0 60 7G64 TCPR DEX 0 ACOREP(1) 7G68 NOCOREP 7G6# LDN 4 4 7G6D TMPR2 LDCH 5 HLSCONREC+11(2) [MILL PRIORITY OF MEMBER 7G6J BNZ 5 TMPR4 [J IF MILL PRIORITY GIVEN 7G6N BNG 6 TMPR8 [J IF NOT EXPRESSED 7G6S LDN 5 59 [DEFAULT MILL PRIORITY 7G6Y TMPR4 DCH 5 AMILLP(1) 7G74 TMPR8 BCHX 1 £ 7G78 BCHX 2 £ 7G7# BCT 4 TMPR2 7G7D SBN 1 1 7G7J SBN 2 1 7G7S LDXC 0 HLSCONREC+7(2) 7G7Y BCS NOPERIS [J IF NO PERI NEEDS GIVEN 7G84 HUNT2J 2,ADATA,CSTORE,,(GEOERR) 7G88 LDN 4 A1(2) 7G8# LDX 0 A1(2) 7G8D LDX 2 FX2 7G8J LDN 5 JBPERIS(1) 7G8N SMO 0 7G8S MOVE 4 0 [MOVE NEEDS INTO JOBQ 7G8Y LDN 5 JBPERIS-JOBNUM 7G94 STO 5 JNEEDSPTR(1) [STORE POINTER TO NEEDS 7G98 CALL 7 FINDOLPA [X2->OLPA 7G9# NOPERIS 7G9D LDX 6 HLSCONREC+6(2) 7G9J FCAJO 2,1 7G9N BNG 6 NOTFS 7G9S LDX 5 6 7G9Y ANDN 5 #14 7G=4 BZE 5 NCHEP [J IF NOT CC EP OR EP 7G=8 BS 1,JBEXPREQ 7G=# ANDN 5 #10 7G=D BNZ 5 NCHEP [J IF NOT CC EP 7G=J BC 1,JBEXPREQ 7G=N NCHEP ANDN 6 2 7G=S BZE 6 NOTFS [J IF NOT REQUIRED TO BECOME F/S 7G=Y LDX 0 JURGE(1) 7G?4 BNZ 0 NODEF 7G?8 LDN 0 #55 [TAKE 'M' AS DEFAULT IF NONE GIVEN 7G?# NODEF 7G?D ORX 0 GSIGN 7G?J STO 0 JURGE(1) 7G?N LDN 0 #6000 7G?S ERS 0 CONTEXT(2) [SET F/S IN CPAT 7G?Y LDN 0 1 7G#4 LDX 6 CONTEXT(2) 7G#8 ANDN 6 4 7G## SRL 6 2 [X6=0 FOR MOP; =1 FOR BACK 7G#R SMO 6 7G#S ADS 0 HLSCOUNT 7G#T NOTFS 7G#W NHLS2 7G#X #UNS ICT 7G#Y ( 7G#^ [ SET ACTIVITY PRIORITY OF JOB 7G*2 [ X1=AD OF JOB BLOCK 7G*3 SMO FX2 7G*4 LDX 0 ACOMMUNE2 7G*5 BZE 0 NHLS3 [J IF NOT HLSDEWELL 7G*6 [ GET HLS CONTROL RECORD 7G*7 CALL 7 FINDOLPA 7G*8 LDCH 4 HLSCONREC+10(2) [ACTIVITY PRIORITY IN B0-5 OF WORD9 7G*9 ANDN 4 #37 7G*= LDN 0 #20 7G*? ANDX 0 4 [KEEP FIXING BIT 7G*# SLL 0 1 [PUT INEXPECTED PLACE 7G** ORX 4 0 [READY FOR APJOBSET 7G*B BRN NHLS4 7G*C [ 7G*D NHLS3 7G*F LDN 4 0 [SET FOR DEFAULT 7G*G [ 7G*H NHLS4 7G*J LDX 5 JOBNUM(1) 7G*K LDX 2 FX2 7G*L LDX 6 ACOMMUNE1(2) [PRESERVE ACOMMUNE1,2 7G*M LDX 7 ACOMMUNE2(2) 7G*N [ SET ACTIVITY PRIORITY 7G*P APJOBSET 5,4 7G*Q [ 7G*R STO 6 ACOMMUNE1(2) 7G*S STO 7 ACOMMUNE2(2) 7G*T MHUNTW 1,JWELL,COPYSYS [FIND JWELL/COPYSYS AGAIN 7G*W LDX 3 1 7G*X ADN 3 FRH+A1 7G*Y LDX 6 JLJOBNO(3) 7G*^ [ 7GB2 [ FIND ACTIVITY AGAIN 7GB3 ADX 3 JOBDATASIZE 7GB4 JBS NHLS5,3,JLBMOP [J IF MOP JOB FX2 IS CPAT 7GB5 HUNTACTJ CPAT,6,2,(GEOERR) 7GB6 [ 7GB7 NHLS5 7GB8 ) 7GB9 #UNS ICT 7GB= #SKI 7GB? ( 7GB# LDX 1 3 7GB* SBN 1 A1 7GBB LDX 6 JLJOBNO(3) 7GBC ADX 3 JOBDATASIZE 7GBD ) 7GBF JBS XMOP2,3,JLBMOP [J IF MOP 7GBG LDN 3 0 7GBH CHAIN 1,2 7GBJ LDX 2 ACTRING+1(2) 7GBK SBN 2 ACTRING 7GBL FPUT 7GBM XMOP2 LDX 2 FX2 7GBN LDX 7 ACOMMUNE1(2) 7GBP BZE 7 XJSA1 [J IF FROM JSA 7GBQ CLOSETOP 7GBR VOP ,JWACCESS 7GBS BZE 3 XENDC [J IF NOT MOP 7GBY BNZ 7 WAYON [J IF FROM ENWELL AND MOP 7GC4 XJSA1 BZE 3 XJSA2 7GC8 LONGON #145,6 7GC# MFREE JWELL,COPYSYS 7GCD XJSA2 UP 7GD6 WAYON 7GXQ ACROSS DEWELL,2 7HCB XENDC 7HX2 ENDCOM 7JBL #END ^^^^ ...407205310001