PMJOBS866

(George Source)

Macros used: JENVNOT, MILL, NAME, OCPSMILL, ON, P, PMCORES, PMOVE, SEGENTRY

PMJOBS866.txt
23YG    #OPT  K0PMJOBS=0
24D6    #LIS  K0PMJOBS>K0POST>K0ALLGEO  
24XQ    #   
25CB ...#SEG  PMJOBS84                     [KAREL KOSKUBA - DIAG
25X2    #   
26BL    #     THIS SEGMENT GIVES A LISTING (PRIOR TO THE POSTMORTEM LISTING) OF 
26W=    #     ALL JOBS IN THE SYSTEM AT THE TIME OF THE ENTRY TO POSTMORTEM. IF 
27*W    #     NO LP IS AVAILABLE THE INFORMATION IS OUTPUT ON THE OPERATORS 
27TG    #     CONSOLE   
28*6    #   
28SQ                   8HPMJOBS 
29#B    #   
29S2    #     ENTRY POINT TABLE 
2=?L    #   
2=R= ... SEGENTRY K1PMJOBS,XK1PMJOBS
2?QG    #   
2#=6    XHEADA         +16,16H^*JOBS IN SYSTEM  
2#PQ    XHEADB         +23,23H^*  JOB NAME,:USER NAME   
2*9B    NONE           +8,8H^*  NONE
2*P2    XARROW         4H^* 
2B8L    XLOST          +52,40H^*  DUE TO CORRUPTION THIS LIST MAY BE I  
2BN=                    12HNCOMPLETE ^* 
2C7W    #SKI  G3
2CMG    XHEADC         40H  GEORGE3 LOADED AT          ON   
2D76    #SKI  G4
2DLQ    XHEADC         40H  GEORGE4 LOADED AT          ON   
2DN3 ...XMILL1         16HDME MILL PERCENT  
2DP# ...XMILL2         8HAGE IS 
2DQK ...XMILL3         20HAGES ARE :  OVERALL   
2DRW ...XMILL4         4H,OCP   
2DT7 ...XPERCENT       4H   %   
2DWD ...XLPMOD         +0   
2DXP ...XOCPNO         +0   
2D^2 ...XLPMAX         +0   
2F2? ...ZERO           +0   
2F3J ...SAVE5          +0   
2F4T ...SAVE6          +0   
2F6B    SPACE          #20  
2FL2    SPACEFUL       #20202020
2G5L    XCOMCOL        4H,: 
2GK=    XBACK          +0                  [TO HOLD ADDR. OF PREVIOUS BLOCK ON  
2H4W                                       [CHAIN   
2HJG    XFIN           +0                  [IF POSITIVE =BACKWARD CHAINING  
2J46    XBHLSQ         +BHLSQ   
2JHQ    XBASE          +BJOBQ   
2K3B    NEXT           +0                  [TO HOLD ADDR. OF NEXT BLOCK IN CHAIN
2KH2    XCOUNT         +0                  [COUNT OF NO. OF JOBS IN SYSTEM  
2L2L    X45            +45  
2LG=    XLINK          +0   
2L^W    QIND           +0                  [SET  0 WHEN SEARCHING HLSQ  
2MFG    XCRUPT          +0                  [ INDICATES EITHER JOBQUEOR HLSQ CRU
2M^6    P     8HSAVED   
2NDQ    Q     4HMOP 
2NYB    [   
2PD2    [     ROUTINE TO GET NEXT BLOCK ON CHAIN WHEN FORWARD CHAINING  
2PXL    [     ENTRY    X2=ADDR. OF CURRENT BLOCK
2QC=    [     EXIT 0 1 IF FORWARD & BACKWARD POINTERS CORRECT   
2QWW    [           X2,X3=ADDR. OF NEXT BLOCK   
2RBG    [              X0=LINK  
2RW6    [     EXIT 0 0 IF BREAK IN CHAIN DETECTED   
2S*Q    [              X3=ADDR. OF NEXT BLOCK   
2STB    [     (SEARCHA:ENTRY POINT FOR FIRST BLOCK ON CHAIN 
2T*2    [   
2TSL    SEARCH  
2W#=          LDX   3  BPTR(2)  
2WRW ...      TXU   3  XBACK(1)            [J IF BPTR IN CURRENT
2X?G          BCS      S1                  [BLOCK INCORRECT 
2XR6    SEARCHA 
2Y=Q ...      STO   2  XBACK(1) 
2YQB          LDX   3  FPTR(2)             [GET ADDR. OF NEXT BLOCK 
2^=2    S3    PMCORES 3,S1  
2^PL ...      TXL   3  X45(1)   
329=          BCS      S1   
32NW    S2    LDX   2  3
338G          EXIT  0  1
33N6    S1    EXIT  0  0                   [BREAK IN CHAIN  
347Q    [   
34MB    [     ROUTINE TO GET ADDR. OF NEXT BLOCK IN CHAIN WHEN BACKWARD CHAINING
3572    [     ENTRY AND EXIT AS SEARCH  
35LL    [     (SEARCHC:ENTRY POINT FOR FIRST BLOCK ON CHAIN 
366=    [   
36KW    SEARCHB 
375G          LDX   3  FPTR(2)  
37K6 ...      TXU   3  XBACK(1)            [J IF FPTR IN CURRENT
384Q          BCS      S1                  [BLOCK INCORRECT 
38JB    SEARCHC 
3942 ...      STO   2  XBACK(1) 
39HL          LDX   3  BPTR(2)             [GET ADDR. OF NEXT BLOCK 
3=3=          BRN      S3   
3=GW    [   
3?2G    [   
3?G6    [     ROUTINE TO GET JOB AND USER NAME FROM NEXT BLOCK IN JOB Q OR HLSQ 
3?^Q    [     ENTRY NEXT=START ADDR. OF CURRENT BLOCK IN QUEUE  
3#FB    [     EXIT  NEXT=UPDATED TO FOLLOWING BLOCK 
3#^2    [             X6=NO. OF CHARS. IN JOB,:USER NAME
3*DL    [           ALL OTHER ACCS UNDEFINED
3*Y=    [           JOB & USER NAMES STORED IN PRINT BUFFER STARTING AT 3RD WORD
3BCW    [   
3BXG    NAMEJOB 
3CC6    [   
3CWQ    [     GET ADDR. OF NEXT BLOCK ON QUEUE  
3DBB    [   
3DW2 ...      STO   7  XLINK(1)            [STORE LINK  
3F*L ...      LDX   2  NEXT(1)  
3FT= ...N     LDN   3  SEARCH(1)
3G#W ...      LDX   7  XFIN(1)  
3GSG          BZE   7  N1                  [J IF FORWARD CHAINING   
3H#6 ...      LDN   3  SEARCHB(1)   
3HRQ    N1    CALL  0  (3)                 [ADDR. OF NEXT BLOCK 
3J?B          BRN      N4                  [J IF BREAK IN CHAIN 
3JR2 ...      TXU   2  XBASE(1) 
3K=L          BCS      N5                  [J IF NOT BASE OF QUEUE  
3KQ=    [   
3L9W    [     TEST & EXIT IF BOTH HLSQ & JOB QUEUE SCANNED  
3LPG    [   
3M96 ...N2    LDX   7  QIND(1)  
3MNQ          BZE   7  N3                  [J IF HLSQ TO BE SCANNED 
3N8B ...      LDX   7  XLINK(1) 
3NN2          EXIT  7  1
3P7L    [   
3PM=    [     SET TO SCAN HLSQ  
3Q6W    [   
3QLG ...N3    LDX   2  XBHLSQ(1)           [BASE OF Q   
3R66 ...      STO   2  XBASE(1) 
3RKQ ...      STO   2  QIND(1)             [Q INDICATOR 
3S5B ...      STOZ     XFIN(1)             [RESET FORWARD/BACKWARD CHAINING IND.
3SK2 ...      LDN   3  SEARCHA(1)   
3T4L          BRN      N1                  [J TO GET ADDR. OF 1ST BLOCK IN Q
3TJ=    [   
3W3W    [     IF BREAK IN CHAIN 
3WHG    [   
3X36 ...N4    LDX   7  XFIN(1)  
3XGQ          BNZ   7  N2                  [J IF THIS IS 2ND BREAK  
3Y2B          LDN   7  1
3YG2 ...      STO   7  XFIN(1)             [SET BACKWARD CHAINING IND   
3Y^L ...      LDX   2  XBASE(1)            [BASE OF Q   
3^F= ...      LDN   3  SEARCHC(1)          [J TO GET ADDR. OF   
3^YW          BRN      N1                  [1ST BLOCK ON Q BACKWARD CHAINING
42DG    [   
42Y6    [     IF POINTERS TO NEXT BLOCK OK  
43CQ    [   
43XB    N5    LDX   3  FPTR(2)  
44C2 ...      LDX   4  XFIN(1)  
44WL ...      BNZ   4  SS1  
45B=          LDX   3  BPTR(2)  
45TW ...SS1   TXU   3  XBACK(1) 
46*G          BCC      NN5                 [ IS AT LEAST THE BPTR OK FOR THIS BL
46T6          LDN   3  1                   [ NO SO SET FLAG 
47#Q ...      STO   3  XCRUPT(1)
47SB          BRN      N4                  [ AND DON'T BOTHER SEAECHING ANY MORE
486R ...NN5   LDX   7  QIND(1)  
48F8 ...      STO   2  NEXT(1)              [ SAVE THIS ADDRESS 
48RL          BNZ   7  N9                  [J IF SCANNING HLSQ  
49?=          LDX   7  JMISC(2) 
49QW          BNG   7  X
4==G ...      LDN   1  Q(1) 
4=Q6          STO   2  3
4?9Q          LDX   2  JOZ  
4?PB          ADN   2  2
4#92          BCHX  2  £
4#NL          MOVE  1  1
4*8=          STO   3  2
4*MW    X     LDN   3  JNAME(2)            [START OF JOB NAME   
4B7G          LDN   7  JUSER(2)            [START OF USER NAME  
4BM6    [   
4C6Q    [     MOVE JOB & USER NAMES INTO OUTPUT BUFFER  
4CLB    [   
4D62    N10   LDN   6  12                  [CHAR. COUNT 
4DKL ...      LDX   2  JOZ  
4F5= ...      ADN   2  4
4FJW ...      BCHX  2  £                   [OUTPUT BUFFER POINTER   
4G4G    N7    LDCH  5  0(3)                [GET NEXT CHAR.  
4GBX ...      LDX   1  FXPM1
4GP# ...      TXU   5  SPACE(1) 
4H3Q          BCC      N8                  [J IF CHAR. = SPACE  
4HHB ...      DCH   5  0(2)                [DEPOSIT IN OUTPUT BUFFER
4J32 ...      BCHX  2  £
4JGL          BCHX  3  £
4K2=          BCT   6  N7                  [FALL THROUGH WHEN 12 CHARS. DEPOSITD
4KFW    N8    SBN   6  34   
4K^G          NGX   6  6                   [NO. OF CHARS. IN OUTPUT BUFFER  
4LBG ...      LDN   1  XCOMCOL(1)   
4LRG ...      MVCH  1  2                   [MOVE ',:' INTO OUTPUT BUFFER
4M8G ...      LDX   1  7
4MKG ...      MVCH  1  12                  [MOVE USER NAME INTO OUTPUT BUFFER   
4N2G ...      LDX   1  FXPM1
4NCL          LDN   0  1
4NX= ...      ADS   0  XCOUNT(1)           [COUNT OF JOBS   
4PBW ...      LDX   7  XLINK(1) 
4PWG ...      EXIT  7  0
4QB6    [   
4QTQ    [     IF SCANNING HLSQ  
4R*B    [   
4RT2    N9    LDX   7  HLSYONQ(2)   
4S#L          BPZ   7  N
4SS=          STO   2  3
4T?W          LDX   2  JOZ  
4TRG          ADN   2  2
4W?6          BCHX  2  £
4WQQ ...      LDN   1  P(1) 
4X=B          MOVE  1  2
4XQ2          STO   3   2   
4Y9L          LDN   3  HLSJNAM(2)          [START OF JOB NAME   
4YP=          LDN   7  HLSUNAM(2)          [START OF USER NAME  
4^8W          BRN      N10  
4^NG    [   
4^NP ...#   
4^NY ...#     ROUTINE TO INSERT OCP NO. AND MILL % IN PRINT LINE AND PRINT  
4^P7 ...#     LINE IF NECESSARY 
4^PB ...#     THIS ROUTINE IS CALLED FROM THE OCPSMILL MACRO
4^PK ...#     ONLY APPLICABLE TO CME DUALS ENVIRONMENT  
4^PS ...#     ENTRY  X7 LINK
4^Q3 ...#            X4 CONTAINS MILL % INSERTED BY OCPSMILL MACRO  
4^Q= ...#            XOCPNO CONTAINS OCP NO. INSERTED BY OCPSMILL MACRO 
4^QF ...#            X0,X5-6 ARE USED BY MACRO  
4^QN ...#     EXIT   X2-4 UNDEFINED 
4^QX ...#            X0,X5-7 AS ON ENTRY
4^R6 ...#   
4^R* ...XOCPRNT 
4^RJ ...     STO   7  XLINK(1)            [SAVE LINK
4^RR ...     STO   5  SAVE5(1)            [PRESERVE X5&6
4^S2 ...     STO   6  SAVE6(1)  
4^S9 ...     LDX   2  XLPMOD(1)           [LOAD BUFFER ADDRESS  
4^SD ...     LDX   6  XMILL4(1)           [INSERT ',OCP' IN 
4^SM ...     STO   6  0(2)                [PRINT BUFFER 
4^SW ...     LDX   6  XOCPNO(1)           [LOAD OCP NO. 
4^T5 ...     CALL  7  (JGNO1)             [CONVERT TO DECIMAL   
4^T# ...     SLC   5  12                  [GET SPACES ON RIGHT  
4^TH ...     STO   5  1(2)  
4^TQ ...     LDX   6  4                   [LOAD MILL %  
4^T^ ...     CALL  7  (JGNO1)             [CONVERT TO DECIMAL   
4^W8 ...     SLC   5  6                   [GET SPACE ON RIGHT   
4^WC ...     LDX   7  XPERCENT(1)         [LOAD % SIGN  
4^WL ...     DCH   7  5                   [INSERT ON RIGHT  
4^WT ...     STO   5  2(2)                [INSERT MILL % IN BUFFER  
4^X4 ...     ADN   2  3                   [INCREASE BUFFER ADDR 
4^X? ...     STO   2  XLPMOD(1) 
4^XG ...     LDX   2  XLPMAX(1)           [INCREASE COUNT OF OCP'S  
4^XP ...     ADN   2  1                   [INSERTED IN BUFFER   
4^XY ...     STO   2  XLPMAX(1) 
4^Y7 ...     SBN   2  6                   [HAVE WE FILLED PRINT LINE
4^YB ...     BNZ   2  XEXIT               [NO   
4^YK ...     STOZ     XLPMAX(1)           [YES  
4^YS ...     CALL  7  (JPRINT1)           [PRINT LINE   
4^^3 ...     LDX   2  JLPMOD              [RESET BUFFER ADDR
4^^= ...     ADN   2  11
4^^F ...     STO   2  XLPMOD(1) 
4^^N ...XEXIT   
4^^X ...     LDX   5  SAVE5(1)  
5226 ...     LDX   6  SAVE6(1)  
522* ...     LDX   7  XLINK(1)  
522J ...     EXIT  7  0 
522R ...#   
5232 ...#     ROUTINE TO INSERT OVERALL MILL % IN PRINT BUFFER  
5239 ...#     CME ENVIRONMENT ONLY  
523D ...#     ENTRY     X7 LINK 
523M ...#     EXIT     X0,X3,X5-7 UNDEFINED 
523W ...#   
5245 ...XOVMILL 
524# ...     STO   7  XLINK(1)            [SAVE LINK
524H ...     LDN   5  0                   [CLEAR FOR MILL MACRO 
524Q ...     LDN   6  0 
524^ ...     MILL     6,ZERO(1),5         [INTERROGATE OVERALL MILL %   
5258 ...     CALL  7  (JGNO1)             [RESULT X6 CONVERT TO DECIMAL 
525C ...     SLC   5  6                   [GET SPACE ON RIGHT   
525L ...     LDX   7  XPERCENT(1)         [INSERT % SIGN ON RIGHT   
525T ...     DCH   7  5 
5264 ...     LDX   3  XLPMOD(1) 
526? ...     STO   5  0(3)                [INSERT IN PRINT BUFFER   
526G ...     LDX   7  XLINK(1)  
526P ...     EXIT  7  0 
526Y ...#   
5277 ...#     MAIN ENTRY POINT  
527B ...#   
5286    XK1PMJOBS   
52#3 ...      LDX   1  FXPM1
52CY ...#   
52HT ...#   
52MQ    #   
537B    #     TO IGNORE 1ST BLOCK ON JOB Q  
53M2    #   
546L          LDN   2  BJOBQ
54L= ...      STO   2  NEXT(1)             [STORE ADDR. OF 1ST BLOCK
555W          LDX   4  BPTR(2)  
55D? ...      STO   4  XBACK(1) 
55QN ...      SMO      FXPMDR   
5656          LDX   6  JUNITNO  
56JQ          BNG   6  TY                  [J IF NO LP AVAILABLE
574B    #   
57J2 ...#     CODING TO OUTPUT DATE AND TIME GEORGE LOADED  
583L    #   
58H= ...      CALL  7  (JPRINT)            [THROW A PAGE
592W          LDN   4  IDENTITY+2   
59GG ...      LDN   5  XHEADC+5(1)  
5=26          MVCH  4  8                   [TIME
5=FQ          ADN   5  1
5=^B          MVCH  4  8                   [DATE
5?F2          LDX   6  JPMOD
5?YL          BCHX  6  £
5#D= ...      LDN   5  XHEADC(1)
5#XW          MOVE  5  10   
5*CG ...      CALL  7  (JPRINT)            [DATE & TIME GEORGE LOADED   
5*CX ...#   
5*D# ...#     CODE TO OUTPUT OVERALL MILL % AND OCP'S % 
5*DP ...#     CME ENVIRONMENT ONLY  
5*F6 ...#   
5*FH ...     JENVNOT  XJOBS,CME,EXCL
5*FY ...     CALL  7  (JPRINT1)           [OUTPUT BLANK LINE
5*G* ...     LDX   3  JLPMOD              [LOAD BUFFER ADDRESS  
5*GQ ...     ADN   3  1 
5*H7 ...     LDN   2  XMILL1(1)           [MOVE 'DME MILL PERCENT'  
5*HJ ...     MOVE  2  4                   [TO PRINT BUFFER  
5*H^ ...     ADN   3  4 
5*JB ...     LDCH  4  APROCNO             [LOAD B18-23  
5*JR ...     SBN   4  1                   [DUALS
5*K8 ...     BZE   4  NDUALS              [NO   
5*KK ...     LDN   2  XMILL3(1)           [MOVE 'AGES : OVERALL'
5*L2 ...     MOVE  2  5                   [TO PRINT BUFFER  
5*LC ...     ADN   3  5 
5*LS ...     STO   3  XLPMOD(1)           [SAVE CURRENT POINTER TO BUFFER   
5*M9 ...     CALL  7  XOVMILL               [INSERT OVERALL %   
5*ML ...     LDN   3  1                   [INCREASE BUFFER ADDR 
5*N3 ...     ADS   3  XLPMOD(1) 
5*ND ...     STOZ     XLPMAX(1)           [CLEAR COUNT OF OCP'S IN LINE 
5*NT ...     OCPSMILL 4,XOCPNO(1),XOCPRNT [INSERT OCP'S MILL %  
5*P= ...     CALL  7  (JPRINT1)           [PRINT FINAL OR ONLY PRINT LINE   
5*PM ...     BRN      XJOBS 
5*Q4 ...#   
5*QF ...NDUALS  
5*QW ...     LDN   2  XMILL2(1)           [MOVE 'AGE IS' TO 
5*R? ...     MOVE  2  2                   [PRINT BUFFER 
5*RN ...     ADN   3  2 
5*S5 ...     STO   3  XLPMOD(1)           [SAVE CURRENT POINTER TO BUFFER   
5*SG ...     CALL  7  XOVMILL               [INSERT OVERALL %   
5*SX ...     CALL  7  (JPRINT1)           [PRINT LINE   
5*T# ...#   
5*TP ...#     CODING TO OUTPUT JOB NAME,:USER NAME ON LINE PRINTER  
5*W6 ...#   
5*WH ...XJOBS   
5*X6 ...      LDN   5  XHEADA+1(1)  
5BBQ          BCHX  5  £
5BWB          BCHX  5  £
5CB2 ...      CALL  7  (JUP)
5CTL                   +5   
5D*=          MVCH  5  14   
5DSW ...      CALL  7  (JPRINT2)           [PRINT 'JOBS IN SYSTEM'  
5F#G ...      LDN   5  XHEADB+2(1)  
5FS6 ...      CALL  7  (JUP)
5G?Q                   +9   
5GRB          MVCH  5  19   
5H?2 ...      CALL  7  (JPRINT2)            [THROW 2 LINES AND PRINT SUB-HEADING
5HQL ...PR    CALL  7  (JPRINT1)            [PRINT A LINE   
5J==          CALL  7  NAMEJOB             [GET NEXT JOB & USER NAME
5JPW          BRN      PR                  [J IF NAMES TO OUTPUT
5K9G ...      LDX   6  XCRUPT(1)
5KP6          BZE   6  PRR                 [ WERE ANY Q'S CRUPT ??  
5L8Q ...      LDN   5  XLOST+2(1)   
5LNB ...      CALL  7  (JUP)
5M82                   +9   
5MML          MVCH  5  45                  [ OUTPUT MESSAGE TO SAY LIST INCOMPLE
5N7= ...      CALL  7  (JPRINT2)
5NLW ...PRR   LDX   6  XCOUNT(1)
5P6G          BNZ   6  PR1                 [J IF JOB NAMES PRINTED  
5PL6 ...      LDN   5  NONE+2(1)           [OTHERWISE PRINT 'NONE'  
5Q5Q ...      CALL  7  (JUP)
5QKB                   +9   
5R52          MVCH  5  4
5RJL ...      CALL  7  (JPRINT2)
5S4= ...      CALL  7  (JPRINT)              [THROW TO TOP OF FORM  
5SHW ...      BRN      (JPMSEG) 
5T3G ...PR1   PMOVE   PMSUMA,FXPM1,3,1  
5TH6    #   
5W2Q    #     CODING TO OUTPUT JOB NAME,:USER NAME ON OPERATORS CONSOLE 
5WGB    #   
5X22 ...TY    LDN   3  XHEADA(1)
5XFL ...      CALL  7  (JCONOUT)           [OUTPUT HEADING  
5X^= ...      LDN   3  XHEADB(1)
5YDW ...      CALL  7  (JCONOUT)
5YYG    TY2   CALL  7  NAMEJOB             [GET NEXT JOB & USER NAME
5^D6          BRN      TY1                 [J IF NAMES TO OUTPUT
5^XQ ...      LDX   6  XCRUPT(1)
62CB          BZE   6  TYY2                [ WERE ANY Q'S CRUPT ??  
62X2 ...      LDN   3  XLOST(1) 
63BL ...      CALL  7  (JCONOUT)
63W= ...TYY2  LDX   6  XCOUNT(1)
64*W          BNZ   6  TY3                 [J IF JOB NAMES OUTPUT   
64TG ...      LDN   3  NONE(1)  
65*6 ...      CALL  7  (JCONOUT)
65SQ ...      BRN      (JPMSEG) 
66#B ...TY3   PMOVE      PMSUMA,FXPM1,2,1   
66S2 ...TY1   LDX   3  JOZ  
67?L ...      BCHX  3  £                   [OUTPUT BUFFER POINTER   
67R=          ADN   6  4
68=W ...      STO   6  0(3)                [COUNT OF CHARS. TO BE OUTPUT
68QG ...      LDX   0  XARROW(1)
69=6 ...      STO   0  1(3)                [INSERT '_' IN MESSAGE   
69PQ ...      CALL  7  (JCONOUT)           [OUTPUT JOB NAME,:USER NAME  
6=9B ...      LDX   6  SPACEFUL(1)  
6=P2 ...      STO   6  0(3)                [SPACEFILL BUFFER AREA   
6?8L ...      LDN   6  0(3) 
6?N= ...      LDN   7  1(3) 
6*76          MOVE  6  29   
6*LQ          BRN      TY2  
6B6B    #   
6C5L    #   
6CK=    #END
^^^^ ...30366265000400000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1