JWELLTWO867
(George Source)
Macros used: ACROSS, ALTLEN, BS, CLOSETOP, DOWN, FINDCORE, FJOCA, FREECORE, FSHENTRY, GETCORE, HUNT, INHIBITBRK, ISSUCOMB, JLADJUST, MHUNT, MHUNTW, NAME, NAMEX, PARABEG, PARAFREE, PARALYSX, READ, SEG, SEGENTRY, SPARANOX, SPARUNAC, TESTRPN2
- JWELLTWO867.txt
22FL ... SEG JWELLTWO,867,SECTION CENT 22^= # 23DW # 23JR ...[ 23NN ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982 23SK ...[ 23YG # THIS SEGMENT CONTAINS THE OVERFLOW CODE FROM TWO OTHER 24D6 # SEGMENTS INVOLVED WITH THE JOBWELL. THE SEGMENTS CONCERNED 24XQ # ARE: 25CB # 25X2 # ENWELL & DEWELL 26BL # 26W= # 27*W SEGENTRY K1JWELLTWO,(GEOERR) [REDUNDANT ENTRY POINT 27TG SEGENTRY K2JWELLTWO,XK2 [OVERFLOW FROM ENWELL 28*6 FSHENTRY K3JWELLTWO,XK3,XK3,XK3 [OVERFLOW FROM DEWELL (SHFS) 28SQ FSHENTRY K4JWELLTWO,,XK4,XK4 [RETURN TO 'B' TO INPUT JDF (SHFS) 29#B ... FSHENTRY K5JWELLTWO,(GEOERR),,(GEOERR) [REDUNDANT ENTRY POINT 29S2 FSHENTRY K7JWELLTWO,XK7,XK7,XK7 [YET MORE O'FLOW FROM DEWELL 2=3S ... FSHENTRY K8JWELLTWO,XK8,,XK8 2=?L # 2=R= # 2?=W #PAG [OVERFLOW CODE FROM THE SEGMENT ENWELL 2?QG # 2#=6 #OPT WELLTEST=0 2#PQ # 2*9B #DEF SIZEIN=CPDATA-A1*4+48 2*P2 #DEF XMODP=CPDATA+11 2B8L #DEF XCOUNT=A1 2BN= #DEF XUSNM=CPDATA+1 2C7W #DEF XJBNM=CPDATA+5 2CMG # 2D76 PEINPUT +EINPUT 2DLQ XIN 4HIN : [INPUT FOR WJDF 2F6B 12H [USERNAME 2FL2 4H , 2G5L 12H [JOBNAME 2GK= 4H(1 / 2H4W TLANG 8HB5B1) 2JHQ XJOBD 8HJOBDATA 2K3B 2HJD 2KH2 PARFORM +APFERR 2LG= # 2L^W # SUBROUTINE TO PARABEG 4 CHARS ADDRESSED BY X4. 2MFG # 2M^6 XPARBEG 2PD2 LDN 6 4 2PXL XPARBEG6 2QWW SBX 7 FX1 2S*Q ADX 1 4 2STB PARABEG 1,6,0(1),,0 2T*2 MHUNT 1,CPB,CUNI 2TSL LDX 6 ANUM(1) 2X?G LDX 0 JPARNUM(1) [SAVE PARAM NO. IN CASE JD IN ERROR 2XR6 STO 0 ACOMMUNE2(2) 2YQB FREECORE 1 2^=2 BRN X7XIT 2^PL # 32NW [ 338G [ 33N6 [ X4USER SETS X4 TO POINT TO THE 3 WORD USERNAME. THIS IS CPREFIX 347Q [ IN THE CPA FOR NO-USER AND JUSER IN THE JOBLOCK FOR USER. 34MB [ 3572 X4USER 35LL LDN 4 CPREFIX(2) 366= LDX 0 CONTEXT(2) 36KW ANDN 0 1 375G BZE 0 X4XIT 37K6 FJOCA 2 384Q LDN 4 JUSER(2) 38JB LDX 2 FX2 3942 X4XIT EXIT 7 0 39HL [ 3=3= PARAL 3?G6 NGN 0 1 3?^Q PARALX 3#^2 SBX 7 FX1 3*Y= PARALYSX 0,,4 3CC6 BRN X7XIT 3CWQ [ 3DBB # SUBROUTINE TO GET CORE 3DW2 # SIZE IN X3 3F*L # NAME IN WORD AFTER CALL 3FT= # LINK X7 3G#W SETCORE 3GSG SBX 7 FX1 3H#6 GETCORE 3,1 3HRQ ADX 7 FX1 3J?B FINDCORE 3 3JR2 SMO 7 3K=L LDX 0 0 3KQ= NAMEX 3 3L9W EXIT 7 1 3LPG [ 3N8B PARAF 3NN2 SBX 7 FX1 3P7L BRN PFR1 3PM= PNOTFREE 3Q6W SBX 7 FX1 3QLG SPARANOX 4 3R66 PFR1 3RKQ PARAFREE 3S5B X7XIT 3SK2 ADX 7 FX1 3T4L EXIT 7 0 3TJ= # 3W3W # 3WHG # 3X36 XK2 [ENTRY POINT TWO 3XGQ # 3Y2B # 3YG2 LDN 6 7 3Y^L LDN 4 XJOBD 3^F= CALL 7 XPARBEG6 3^YW BPZ 6 XJDFOUND 42DG LDN 6 2 42Y6 LDN 4 XJOBD+2 43CQ CALL 7 XPARBEG6 43XB BNG 6 NOJD [J IF NO JOBDATA PARAMETER 44C2 XJDFOUND 44WL LDX 0 PARFORM(1) 45B= STO 0 ACOMMUNE1(2) [POSSIBLE ERROR MESSAGE 45TW LDX 0 6 46*G SRL 0 12 46T6 SBN 0 2 47#Q BNZ 0 XJDERROR1 [J IF NOT COMPOSITE 47SB LDX 4 ACOMMUNE2(2) 48#2 CALL 7 PARAL 48RL TESTRPN2 OK,XJDERROR1 49?= LDN 4 2 49QW LDN 0 #34 4==G CALL 7 PARALX 4=Q6 TESTRPN2 OK,XJDERROR1 4?9Q NOJD 4?PB MHUNTW 3,CPB,CALAS 4#92 LDX 3 ALOGLEN(3) 4#NL ADN 3 2+FRH 4*8= CALL 7 SETCORE 4*MW #HAL ADATA+CSTORE,+0 4B7G LDN 5 0 4BM6 LDN 3 A1+2 4C6Q XPASS 4CLB SPARUNAC [COLLECT UNACCESSED PAR'S INTO CSTORE 4D62 MHUNT 2,CPB,CUNI 4DKL NAME 2,ADATA,CREADL 4F5= MHUNT 1,ADATA,CSTORE 4FJW LDX 0 ANUM(2) 4G4G BNG 0 XEND [J IF NONE LEFT 4GJ6 ADX 3 1 4H3Q BZE 0 XCOMMA 4HHB LDN 2 APARA(2) 4J32 SMO 0 4JGL MVCH 2 0 4K2= ANDN 0 #7777 4KFW ADX 5 0 4K^G XCOMMA 4LF6 LDN 0 #34 4LYQ DCH 0 0(3) 4MDB SBX 3 1 4MY2 LDX 7 3 4NCL BCHX 3 £ 4NX= ADN 5 1 4PBW BRN XPASS 4PWG XEND 4QB6 BZE 5 XCSFREE [J IF NO UNACC'ED PARS 4QTQ SBN 5 1 4R*B BZE 5 XCSFREE 4RT2 LDN 6 ACES 4S#L ADX 7 1 4SS= MVCH 6 4 4T?W STO 5 A1+1(1) 4TRG ADN 5 11 4W?6 SRL 5 2 4WQQ STO 5 A1(1) 4X=B ALTLEN 1,5 4XQ2 XEND3 4Y9L HUNT 1,ADATA,CREADL 4YP= BNG 1 XCUNIGONE 4^8W XCSFREE 4^NG FREECORE 1 5286 BRN XEND3 [MOP UP ALL CUNI'S SET UP BY XPASS 52MQ XCUNIGONE 53M2 [ 546L [ 54L= [ 555W [ 55KG [ 5656 [ 56JQ [ 574B [ WRITE USER JOBLIST ENTRY AND CREATE SYSTEM JOBLIST ENTRY 57J2 [ THE SYSTEM JOBLIST ENTRY IS NOT WRITTEN AWAY AND IS LEFT 583L [ IN A JWELL/COPYSYS BLOCK... 58H= [ 592W DOWN JOBLIST,1 5=FQ BRN XJDERROR 5=^B CALL 7 PARAF 5?YL [ 5#D= LDX 0 AWORK2(2) 5#XW BNZ 0 NJOB1 [ JUMP IF NOT JOB 5*CG [ 5*X6 [ INPUT JDF 5BBQ [ 5BWB [ 5CB2 [ IN THE CASE OF 'JOB' SET UP A ADATA/CREADL BLOCK CONTAINING AN 5CTL [ 'INPUT' FOR THE WORKING JDF. INPUT THE WJDF BY ISSUCOMB 5D*= [ 5DSW LDN 3 SIZEIN [N.B. THIS IS CHAR. SIZE 5F#G LDX 4 AWORK4(2) 5FS6 ANDN 4 #77 [ISOLATE MODE PARAMETER NUMBER 5G?Q BZE 4 TERQU [J IF NO MODE PARAMETER 5GRB CALL 7 PARAL 5J== LDN 4 2 5JPW CALL 7 PNOTFREE 5N7= MHUNT 1,CPB,CUNI 5NLW ADX 3 ANUM(1) 5P6G ANDN 3 #7777 5PL6 TERQU LDX 5 AWORK4(2) 5Q5Q ANDN 5 #7700 [ISOLATE T/S IF PRESENT 5QKB BZE 5 NTERM [J IF NO TERMINATOR 5R52 ERS 5 AWORK4(2) [ZEROIZE CHAR 2 OF AWORK4 5RJL SRL 5 6 5S4= ADN 3 6 [6 EXTRA CHARS FOR COMMA TERM. 5SHW NTERM ADN 3 3 5T3G SRL 3 2 [CONVERT TO WORD COUNT 5TH6 CALL 7 SETCORE 5W2Q #HAL ADATA+CREADL,+0 5WGB LDX 7 5 5X22 LDN 5 XMODP(3) [ADDRESS FOR MODE QUALIFIER 5XFL LDN 6 44 [INITIAL CHAR COUNT FOR COMMAND 5X^= BZE 4 NMOD2 [J IF NO MODE SPECIFIED 5YDW MHUNT 1,CPB,CUNI 5YYG LDN 4 APARA(1) 5^D6 LDX 2 ANUM(1) 5^XQ MVCH 4 0(2) [MOVE MODE QUALIFIERS INTO COMMAND 62CB ANDN 2 #7777 62X2 ADX 6 2 [UPDATE CHAR COUNT 63BL FREECORE 1 63W= NMOD2 BZE 7 NTERM1 [J IF NO TERMINATOR 64*W LDX 1 5 64TG LDN 4 #34 65*6 DCH 4 0(1) [COMMA BEFORE TERMINATOR 65SQ BCHX 1 £ 66#B DCH 7 0(1) [T/S 66S2 BCHX 1 £ 67?L LDX 0 FX2 67R= ADN 0 AWORK3 68=W MVCH 0 4 [MOVE ACROSS TEXT OF TERMINATOR 68QG ADN 6 6 [UPDATE CHAR COUNT 69=6 NTERM1 69PQ STO 6 XCOUNT(3) [CHAR COUNT FOR COMMAND 6=9B SMO FX1 6=P2 LDN 4 XIN 6?8L LDN 5 CPDATA(3) 6?N= MOVE 4 11 [MOVE BASIS OF COMMAND ACROSS 6#7W CALL 7 X4USER 6#MG LDN 5 XUSNM(3) 6*76 MOVE 4 3 [MOVE USERNAME 6*LQ MHUNT 1,CPB,CUNI 6B6B LDN 4 APARA(1) 6BL2 LDN 5 XJBNM(3) 6C5L LDX 1 ANUM(1) 6CK= MVCH 4 0(1) [MOVE JOBNAME 6D4W LDCT 4 #40 6DJG ORS 4 EXT+11(2) [SET ISITJOB BIT FOR INPUT 6F46 #SKI WELLTEST 6FHQ RGTRACE 5,XBROKE 6TQB ISSUCOMB XINERR,XBROKE 6W=2 # 6WPL XMODCH 6X9= ERS 4 EXT+11(2) [CLEAR ISITJOB BIT 6XNW [ 6Y8G FREEZESA READ [FREEZE-SAVE JDF BUT ONLY FOR READING 6YN6 [ (EVEN THOUGH OPEN FOR WRITING) 6^7Q [ 6^MB NJOB1 LDX 0 AWORK2(2) 7272 ADN 0 2 72LL BNZ 0 NOTDC 736= INHIBITBRK XBROKE 73KW ACROSS DSCNCT,2 [ DC COMMAND 745G # 74K6 NOTDC 754Q ACROSS ENWELL,3 75JB [ 7642 [ 76HL [ 773= [ ERROR REPORTS 77GW [ 782G [ 78G6 [ ROUTINE TO DELETE A USER JOBLIST ENTRY 78^Q [ 79FB SCRUB LDCT 4 #40 79^2 ERS 4 EXT+11(2) [ CLEAR ISITJOB BIT FROM INPUT 7=DL SKRUB SBX 7 FX1 7=Y= DOWN JOBLIST,5 [ DELETE USER JOBLIST ENTRY 7?CW ADX 7 FX1 7?XG EXIT 7 0 7#C6 [ 7#TQ ...[ 7#WQ XINERR [ EROR IN INPUT 7*BB CALL 7 SCRUB [ REMOVE USER JOBLIST ENTRY 7*W2 LDX 5 PEINPUT(1) [ ERROR UNIVERSAL 7B*L XCOM LDN 4 0 7BT= NGN 6 1 7C#W BRN XAA 7CSG [ 7D#6 XBROKE [ INPUT BROKEN IN ON.... 7DRQ CALL 7 SCRUB 7F?B LDN 5 0 7FBG ...XAA 7FMW ... ACROSS INITJOB,9 7FR2 # 7G=L # 7GQ= # 7H9W XJDERROR1 7HPG MHUNT 3,JWELL,COPYSYS 7J96 JLADJUST 3 7JNQ LDX 7 AWORK2(2) 7K8B BPZ 7 XJDR2 [J IF NOT MOP 7KN2 BS 3,JLBMOP 7L7L BRN XJDR5 7LM= XJDR2 BZE 7 XJDR4 [J IF JOB 7M6W BS 3,JLBRJ 7MLG BRN XJDR5 7N66 XJDR4 BS 3,JLBJB 7NKQ XJDR5 7P5B LDX 7 ACOMMUNE2(2) 7PK2 CLOSETOP 7Q4L STO 7 ACOMMUNE2(2) 7QJ= XJDERROR 7R3W ... ACROSS ENWELLB,3 7S36 # 7SGQ [*********************************************************************** 7T2B #PAG [OVERFLOW CODE FROM THE SEGMENT DEWELL ?9WQ #END ^^^^ ...706302030001