SETJD867

(George Source)

Macros used: BXE, CHECKLFN, CLOSETOP, DATECON, FREECORE, GEOERR, GETJOB, MFREE, MHUNT, OPENSYSX, PARAMOVE, PARANOTX, PHOTO, PMOVE, READ, READAGAIN, SEG, SEGENTRY, SETMODE, SETNCORE, SETUPCORE, SPARABEG, SPARANOX, SPARANXT, SPARAPAS, STEP, TESTMOVE, TESTREP2, TESTRPN2, TIMECON, UP, UPPLUS

SETJD867.txt
22FL ...       SEG      SETJD,,CENT(INSTALLATION HOOKS),,G400   
22^=    [   
23DW    [ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1982
23YG    [   
24D6    #   
24XQ          SEGENTRY K1SETJD,SENTRY1  
25CB          SEGENTRY K2SETJD,SENTRY2  
25X2    #   
26BL    #DEF VARPOINT=+11   
26W=    #DEF SIZELIST=+10   
27*W    #DEF XFACLEN=+18
27TG    X1K         +1024   
28*6    X2K         +2048   
28SQ    X5          +5  
29#B    X15         +15 
29S2    XBR         4H   )  
2=?L    XBRL        4H   (  
2=R=    XCM         4H   ,  
2?=W    XCOM        4H, 
2?QG    X2TENS      +100
2#=6    XSECS       4HSECS  
2#PQ    XHASH       4H   #  
2*9B    XZERO       4H   0  
2*P2    MAGIC       +7036875
2B8L    MINUS       #35 
2BN=    SPA1        #20 
2C7W    SPEC        8H-8388608  
2CMG    SEVEN       +7  
2D76    TABLE       32HTRTPLPCRCPMTEDMCDSDR  MXCTFDAD   
2DLQ                32H        GPGD      HDMD   
2F6B                32H 
2FL2                32H    IPOPGECOEMOIOOGSRRET 
2G5L    XER1        +JUSERJOB   
2GK=    XER2        +JUSNA  
2H4W    XER3        +JJOBNA 
2HJG    XER4        +JPARMIS
2J46    XER5        +JINVJNO
2JHQ    XER6        +APFERR 
2K3B    XER7        +GENERR 
2KH2    XER8        +JNUMBER
2L2L    XER9        +JPARNULL   
2LG=    XER10       +JNUMBER1   
2L^W    XER11       +JONLINE
2MFG    XER12       +JTOOMANY   
2M^6    XER13       +ERNOCMD
2NDQ    #   
2NYB    #   
2PD2    #          TABLE OF INVALID IDENTIFIERS FOR JD HOOK FORMAT  
2PXL    #              USED WHEN VALIDATING JOBDATA STARTING WITH * 
2QC=    PDUR           2HUR 
2QWW    PDJT           2HJT 
2RBG    PDMZ           2HMZ 
2RW6    PDNE           5HNEEDS  
2S*Q    PDDE           8HDEADLINE   
2STB    PDST           9HSTARTTIME  
2T*2    PDEND          +0                  [END OF TABLE NEW ENTRIES IN FRONT   
2TSL    #   
2W#=    #           THE FOLLOWING ARE POINTERS TO ABOVE DATA
2WRW    #               CH 0 = COUNT   CH 1,2,3 = PTR ADDRESS   
2X?G    #   
2XR6    JDTAB   
2Y=Q    #HAL #0200,+PDUR
2YQB    #HAL #0200,+PDJT
2^=2    #HAL #0200,+PDMZ
2^PL    #HAL #0500,+PDNE
329=    #HAL #1000,+PDDE
32NW    #HAL #1100,+PDST
338G    #HAL #0100,+PDEND   
33N6    #     END OF POINTERS   
347Q    #   
34MB    #     S/R TO GET :USERNAME AND CHECK LOCAL NAME FORMAT  
3572    #   
35LL    UPAR
366=          LDN   4  1
36KW          LDCT  5  #120                [:   
375G          SBX   6  FX1  
37K6          SPARABEG 1,4  
384Q          ADX   6  FX1  
38JB    UPAR1   
3942          SBX   6  FX1  
39HL          CHECKLFN UPAR2,UPAR3  
3=3=          ADX   6  FX1  
3=GW          MHUNT    3,CPB,CUNI   
3?2G          EXIT  6  2                   [OK  
3?G6    UPAR2   
3?^Q          ADX   6  FX1  
3#FB          EXIT  6  1                   [NULL
3#^2    UPAR3   
3*DL          ADX   6  FX1  
3*Y=          EXIT  6  0                   [FORMAT ERROR
3BCW    #   
3BXG    #     THIS S/R MOVES THE NO. OF CHARS HELD IN THE ANUM  
3CC6    #     WORD TO THE ADDRESS IN X5 
3CWQ    #     AT ENTRY  X4: START ADDRESS OF CHAR STRING
3DBB    #               X5: DEST. ADDRESS OF CHAR STRING
3DW2    #               X6  CORRUPTED   
3F*L    #               X7  LINK
3FT=    PMOVE   
3G#W          LDX   6  ANUM(3)  
3GSG          ANDN  6  #7777
3H#6          SMO      6
3HRQ          MVCH  4  0
3J?B          EXIT  7  0
3JR2    READ
3K=L          SBX   7  FX1  
3KQ=          STEP  
3L9W          ADX   7  FX1  
3LPG          EXIT  7  0
3M96    XCOMP   
3MNQ          STO   7  GEN0 
3N8B          LDN   0  3
3NN2    XCA1
3P7L          SMO      5
3PM=          LDX   7  0(3) 
3Q6W          SMO      1
3QLG          TXU   7  A1(2)
3R66          BCS      XCA3 
3RKQ          ADN   5  1
3S5B          ADN   1  1
3SK2          BCT   0  XCA1 
3T4L          SBN   5  3
3TJ=          LDX   7  GEN0 
3W3W          EXIT  7  1                   [RECORD FOUND
3WHG    XCA3
3X36          SBN   0  3                   [RESTORE X5 TO POINTING TOUSER   
3XGQ          ADX   5  0
3Y2B          LDX   7  GEN0 
3YG2          EXIT  7  0
3Y^L    #   
3^F=    #  S/R SETS UP COMDAT CSETP BLK AND INSERTS OPENING 
3^YW    #  PARENTHESIS   ON ENTRY X1:=FX1   
42DG    #                         X7:=LINK  
42Y6    #                AT EXIT  X3:=BLOCK POINTER 
43CQ    #                         X6:=CHAR PTR TO N1 OF APARA(3)
43XB    #                         A "(" HAS BEEN INSERTED IN NO 
44C2    #   
44WL    XOPCC   
45B=          ADN   0  APARA-A1 
45TW          SBX   7  FX1  
46*G          SETUPCORE 0,3,COMDAT,CSETP
46T6          ADX   7  FX1  
47#Q          LDN   6  APARA(3) 
47SB          STOZ     ANUM(3)  
48#2          EXIT  7  0
48RL    #   
49?=    #     S/R TO DUMP 1CHAR IN COMDAT/CSETP BLOCK   
49QW    #     AT ENTRY X3:= PTR. TO BLOCK   
4==G    #              X6:= ABS. CHAR PTR TO NEXT CHAR IN BLOCK 
4=Q6    #              X0:= IN N3 THE CHAR TO BE DUMPED 
4?9Q    #              X7:= LINK
4?PB    #     AT EXIT  X6:= CHAR PTR TO NEXT CHAR   
4#92    #              X3:= BLOCK PTR   
4#NL    #              X2:= FX2 
4*8=    #   
4*MW    XCH1
4B7G          SBX   6  3
4BM6          STO   6  2
4C6Q          ADX   6  3
4CLB          BCHX  6  £
4D62          SMO      3
4DKL          DCH   0  0(2) 
4F5=          LDX   2  FX2  
4FJW          EXIT  7  0
4G4G    #   
4GJ6    #     S/R TO MOVE CHARS TO COMDAT CSETP BLOCK   
4H3Q    #     COUNT IN ANUM WORD IS ADVANCED
4HHB    #     AT ENTRY X7:= NO OF CHARS 
4J32    #               X5:= CHAR. PTR. TO 1ST CHAR 
4JGL    XCH2
4K2=          SMO      7
4KFW          MVCH  5  0
4K^G          ADS   7  ANUM(3)  
4LF6          EXIT  4  0
4LYQ    #   
4MDB    #     BINARY TO DECIMAL CONVERSION. AT ENTRY X1=FX1,X2 =
4MY2    #     DESTINATION CHAR ADDRESS,X4 CONTAINS NO. TO BE CONVERTED  
4NCL    #     ON EXIT X1=FX1,X2=PTR TO LAST CHAR DUMPED,X7=COUNT OF 
4NX=    #     CHARACTERS TRANSFERRED.X6=LINK.X3 IS UNUSED.  
4PBW    #   
4PWG    XCONV   
4QB6          STO   6  GEN2                [INITIAL COUNT   
4QTQ          LDN   7  1                   [INITIAL COUNT   
4R*B          BPZ   4  POZ  
4RT2          ADN   7  1
4S#L          NGX   4  4
4SS=          BNG   4  SPECIAL  
4T?W          LDX   6  MINUS(1) 
4TRG          DCH   6  0(2) 
4W?6          BCHX  2  £
4WQQ    POZ 
4X=B          MPY   4  MAGIC(1) 
4XQ2          LDN   0  7
4Y9L          MODE     0
4YP=    XCDR
4^8W          CBD   4  0(2) 
4^NG          LDCH  6  0(2) 
5286          BNZ   6  YOKO                [1ST NON-ZERO CHAR   
52MQ          BCT   0  XCDR 
537B          BRN      WEND 
53M2    ONO 
546L          BCHX  2  £
54L=          CBD   4  0(2) 
555W          ADN   7  1
55KG    YOKO
5656          BCT   0  ONO  
56JQ    WEND
574B          BRN      XIT  
57J2    SPECIAL 
583L          LDN   1  SPEC(1)  
58H=          MOVE  1  2
592W          LDN   7  8
59GG    XIT 
5=26          LDX   1  FX1  
5=FQ          LDX   6  GEN2 
5=^B          EXIT  6  0
5?F2    #   
5?YL    #     S.R. TO CONVERT A DECIMAL NUMBER IN ACPB BLOCK
5#D=    #     TO BINARY.ANY SPACES IN THE PARAMETER ARE DROPPED.
5#XW    #     ON ENTRY-X3=PTR.TO 1ST CHAR OF DEC NO.X4=CHAR COUNT   
5*CG    #     ON EXIT X6=BINARY NUMBER X3=CPB BLK PTR   
5*X6    #     X0,X4,X5,GEN0,GEN1,ARE USED.X7=LINK   
5BBQ    #   
5BWB    NUMST   
5CB2          STO   3  GEN0 
5CTL          ADN   3  APARA
5D*=                                       [ ABOVE SET POINTER  
5DSW    NUMCON  
5F#G          STOZ     5
5FS6          STOZ     6
5G?Q    NU1 
5GRB          LDCH  0  0(3) 
5H?2          TXU   0  SPA1(1)             [IGNORE SPACES   
5HQL          BCC      NU2  
5J==          CDB   5  0(3) 
5JPW          BCS      NU3                 [INVALID CHARACTER   
5K9G    NU2 
5KP6          BCHX  3  £
5L8Q          BCT   4  NU1  
5LNB          ADN   7  1                   [UPDATE EXIT PASSED ERROR LAB
5M82    NU3 
5MML          STO   3  GEN6                [PTR FOR QJD3
5N7=          LDX   3  GEN0 
5NLW          EXIT  7  0
5P6G    #   
5PL6    #   
5Q5Q    #     ############################################################# 
5QKB    #   
5R52    #           K    K            1 
5RJL    #           K   K            11 
5S4=    #           K  K              1 
5SHW    #           K K               1 
5T3G    #           KKK               1 
5TH6    #           K  K              1 
5W2Q    #           K   K             1 
5WGB    #           K    K            1 
5X22    #           K     K           1 
5XFL    #   
5X^=    #     ############################################################# 
5YDW    #   
5YYG    SENTRY1 
5^D6    #   
5^XQ    #     THE MAIN ENTRY POINT FROM SETPC.THE CODE  
62CB    #     ACCESSES THE SPECIFIED FIELD IN :SYSTEM.JOBLIST   
62X2    #     FORMATS IT AND RETURNS IT TO THE COMMAND PARAMETER
63BL    #     IN A COMDAT CSETP BLOCK   
63W=    #   
64*W          LDN   4  2
64TG          SPARANXT #34,,4   
65*6          SETNCORE 8,2,ADATA,CSTORE 
65SQ          MHUNT    3,CPB,CUNI   
66#B          LDX   4  ANUM(3)  
66S2          BZE   4  PT2                 [PARAM NULL  
67?L          BNG   4  PARERR              [NON-EXISTENT
67R=          ANDN  4  #7777
68=W          CALL  7  NUMST
68QG          BRN      PT1                 [J IF MON NUMERIC
69=6          BZE   6  NUMERR              [JOBNO ZERO  
69PQ          BRN      PT3  
6=9B    PT2 
6=P2          SMO      FX2  
6?8L          LDX   6  JOBNO               [DEFAULT JOBNO.  
6?N=    PT3 
6#7W          MHUNT    2,ADATA,CSTORE   
6#MG          STO   6  A1+1(2)  
6*76          NGN   4  1                   [MARKER TO INDICATE KEYED
6*LQ          STO   4  A1(2)               [SEARCH OF JOBLIST   
6B6B          MHUNT    3,CPB,CUNI   
6BL2          FREECORE 3                   [LOSE CUNI BLK   
6C5L          LDN   0  2                   [SET UP FOR PARANOX  
6CK=          BRN      PCH1 
6D4W    #   
6DJG    #     JOBNO NOT GIVEN.SEARCH AMONG PARAMS FOR USERNAME/JOBNAME  
6F46    #   
6FHQ    PT1 
6G3B          MHUNT    3,CPB,CUNI   
6GH2          FREECORE 3
6H2L          CALL  6  UPAR 
6HG=          BRN      SJERR1              [FORMAT ERROR
6H^W          BRN      NUSERR              [NO USERNAME PARAM FOUND 
6JFG    #   
6J^6    #     SPACEFILL ADATA/CSTORE BLOCK  
6KDQ    #   
6KYB          MHUNT    2,ADATA,CSTORE   
6LD2          LDX   4  ACES 
6LXL          STO   4  A1(2)
6MC=          LDN   4  A1(2)
6MWW          LDN   5  A1+1(2)  
6NBG          MOVE  4  7
6NW6    #   
6P*Q    #     TRANSFER USERNAME TO ADATA/CSTORE BLOCK   
6PTB    #   
6Q*2          LDN   4  APARA(3) 
6QSL          LDN   5  A1(2)
6R#=          CALL  7  PMOVE
6RRW    #   
6S?G    #     NOW SEE WHICH PARAM IN CMULTI BLOCK MUST BE JOBNAME   
6SR6    #   
6T=Q          LDX   0  ATYPE(3) 
6TQB          ANDN  0  #7777
6W=2          SBN   0  1
6WPL          BNZ   0  PC1                 [JOBNAME IS 1ST PARAM
6X9=          LDN   0  2                   [JOBNAME IS 2ND PARAM
6XNW    PC1 
6Y8G          STO   0  5
6YN6          FREECORE 3
6^7Q          LDX   0  5
6^MB          SPARANOX 0
7272          CALL  6  UPAR1
72LL          BRN      PARERR2             [ERROR IN JOBNAME FORMAT 
736=          BRN      NJOBERR             [NO JOBNAME FOUND
73KW          MHUNT    2,ADATA,CSTORE   
745G          LDN   4  APARA(3) 
74K6          LDN   5  A1+3(2)  
754Q          CALL  7  PMOVE
75JB          FREECORE 3
7642          LDN   0  3                   [STEP TO GET NEXT PARAM  
76HL    PCH1
773=          PARANOTX 0                   [SHOULD BE FAC/ITEM NO.  
77GW          MHUNT    3,CPB,CUNI   
782G          LDX   4  ANUM(3)  
78G6          BZE   4  NULLERR             [PARAM NULL  
78^Q          BNG   4  NUMERR2             [PARAM NON EXISTENT  
79FB          ANDN  4  #7777
79^2          CALL  7  NUMST
7=DL          BRN      VNO                 [J TO CHECK IF V-FORMAT  
7=Y=          SBX   6  X2K(1)   
7?CW          BPZ   6  PARERR1             [ITEM NO.TOO LARGE   
7?XG          ADX   6  X2K(1)   
7#C6          BRN      V5                  [SKIP OVER 'V' TEST  
7#WQ    #   
7*BB    #     THE FOLLOWING CHUNK OF CODE CHECKS TO SEE IF THE  
7*W2    #     ITEM NUMBER IS PRECEDED BY THE LETTER "V" 
7B*L    #   
7BT=    VNO 
7C#W          MHUNT    3,CPB,CUNI   
7CSG          LDCH  5  APARA(3)            [1ST CHAR OF PARAM   
7D#6          SBN   5  #66  
7DRQ          BNZ   5  PARERR1             [NON NUMERIC PARAM OF FORBIDD-   
7F?B          LDN   5  APARA(3)            [EN FORMAT   
7FR2          LDX   6  5
7G=L          BCHX  5  £
7GQ=          SBN   4  1                   [NEW LENGTH OF PARAM 
7H9W          BZE   4  PARERR1             [NO CHARACTER AFTER "V"  
7HPG          SMO      4                   [MOVE UP NUMERIC CHARS IN
7J96          MVCH  5  0                   [CPB/CUNI BLOCK  
7JNQ          STO   4  ANUM(3)             [RESET COUNT 
7K8B          CALL  7  NUMST
7KN2          BRN      PARERR1             [NON-NUMERIC FACILITY NUMBER 
7L7L    NNON2   
7LM=          ADX   6  X2K(1)              [J TO HERE IF NEWNEEDS ON TO SIMULATE
7M6W    V5  
7MLG          MHUNT    2,ADATA,CSTORE   
7N66          STO   6  A1+6(2)             [FAC/ITEM NO.
7NKQ    #   
7P5B    #     DATA TO READ JOBLIST RECS NOW IN ADATA/CSTORE BLOCK.  
7PK2    #     THE NEXT SECTION OF CODE OPENS JOBLIST
7Q4L    #   
7QJ=          SETMODE  6,READ   
7R3W          OPENSYSX XBRK,JOBLIST,6   
7RHG          TESTREP2 OK,XOK   
7S36          GEOERR   1,JOBLIST?   
7SGQ    XOK 
7T2B          CALL  7  READ                [READ FORMAT REC 
7TG2          MHUNT    2,ADATA,CSTORE   
7T^L          LDX   1  FX2  
7WF=          LDX   4  VARPOINT(3)  
7WYW          STO   4  AWORK1(1)           [STORE FOR LATER IF NEC. 
7XDG          LDX   6  A1+6(2)             [FAC/ITEM NO 
7XY6          SMO      FX1  
7YCQ          TXL   6  X1K  
7YXB          BCS      PF1                 [J IF FIXED RESOURCE 
7^C2          BRN      RED1                [TO SEARCH JOB'S REC 
7^WL    #   
82B=    #     NOW FROM THE FIXED FAC.TABLE FIND THE 3-WORD ENTRY
82TW    #   
83*G    #     CORRESPONDING TO THE FAC. NO AND TRANSFER TO AWORK2-4 
83T6    #   
84#Q    PF1 
84SB          STO   3  GEN0 
85#2          LDX   4  JFACTAB-A1(3)       [PTR. TO FAC.TABLE  WITHIN RECORD
85RL          ADN   4  1                   [PTR. TO FAC. TABLE WITHIN BUFFER
86?=          ADX   3  4                   [PTR, TO LENGTH WORD 
86QW          LDX   5  0(3)                [LENGTH OF TABLE 
87=G          SBN   5  1                   [SET UP LENGTH-1 FOR COMPARISON  
87Q6          ADN   3  1                   [1ST WORD OF TABLE   
889Q          SLL   6  1                   [MULT. BY 3  
88PB          ADX   6  A1+6(2)  
8992          TXL   5  6
89NL          BCS      NOFACERR1           [NO ENTRY FOR THIS FAC NO.   
8=8=    #   
8=MW    #     NOW TEST IF FAC. NUMBER IS 5 AND NEWNEEDS IS ON   
8?7G    #     IF SO, JUMP OUT HERE AND RE-ENTER SIMULATING A VARIABLE   
8?M6    #     FIELD ENTRY WITH ITEM N0. OF 5
8#6Q    #   
8#LB          SMO      FX1  
8*62          TXU   6  X15  
8*KL          BCS      NOTN                [J. IF NEWNEEDS NOT ON   
8B5=          SMO      6
8BJW          LDX   4  1(3) 
8C4G          BNG   4  NNON1               [J IF PTR IS NEGATIVE -NEWNEEDS ON   
8CJ6    NOTN
8D3Q          SMO      6
8DHB          LDN   4  0(3) 
8F32          LDN   5  AWORK2(1)
8FGL          MOVE  4  3
8G2=          LDX   3  GEN0                [PTR TO START OF FORMAT REC  
8GFW    #   
8G^G    #     NOW READ JOBLIST ENTRY FOR EACH JOB AFTER FIRST   
8HF6    #     DECIDING WHETHER TO DO AN INDEXED SEARCH BY JOBNO 
8HYQ    #   
8JDB    RED1
8JY2          LDX   6  A1(2)
8KCL          ADN   6  1
8KX=          BZE   6  XKEY                [KEYED READ BY JOBNO 
8LBW    #   
8LWG    #     JOB ENTRY MUST BE FOUND BY USERNAME/JOBNAME SEARCH
8MB6    #     FIRST OBTAIN THESE PTRS. FROM JLIST FORMAT RECORD 
8MTQ    #   
8N*B          LDX   5  JUSERELADD-A1(3) 
8NT2          LDX   4  JJOBRELADD-A1(3) 
8P#L    XCA4
8PS=          CALL  7  READ 
8Q?W          LDX   7  0(3) 
8QRG          BZE   7  SJERR1A             [NO REC FOR THIS USER/JOBNAME
8R?6          MHUNT    2,ADATA,CSTORE   
8RQQ          LDN   1  0                   [WORD POINTER
8S=B          CALL  7  XCOMP
8SQ2          BRN      XCA4                [RECORD NOT FOUND
8T9L    XCA5
8TP=          STO   5  GEN1                [KEEP USERPOINTER
8W8W          LDX   5  4                   [AND LOOK FOR JOBNAME
8WNG          LDN   1  3
8X86          CALL  7  XCOMP
8XMQ          BRN      XCA6                [NOT THE CORRECT JOBNAME 
8Y7B          LDX   1  FX1                 [JUMP TO GET FAC.DATA
8YM2          BRN      XTRACT   
8^6L    XCA6
8^L=          LDX   5  GEN1 
925W          BRN      XCA4                [READ NEW RECORD 
92KG    XKEY
9356          LDX   6  A1+1(2)  
93JQ          GETJOB   6,SYSTEM 
944B          TESTRPN2 OK,NUMERR1          [NO JOB OF THIS NO.  
94J2    XTRACT  
953L          READAGAIN                    [REC. IN FRB BLK 
95H=          CLOSETOP  
962W          MHUNT    2,ADATA,CSTORE   
96GG          LDX   6  A1+6(2)  
9726          FREECORE 2                   [FINISHED WITH ADATA BLOCK   
97FQ          MHUNT    3,FILE,FRB   
97^B          LDX   5  ALOGLEN(3)   
98F2          ADN   3  A1                  [X3 POINTS TO HEADER REC.
98YL          LDX   2  FX2  
99D=          TXL   6  X1K(1)   
99XW          BCC      VAR1                [DATA IN VAR.RESOURCE FIELD  
9=CG    #   
9=X6    #     DATA IS IN FIXED FIELD.GET FORMAT NUMBER AND BRANCH TO
9?BQ    #     APPROPRIATE CONVERSION ROUTINE
9?WB    #   
9#B2          LDX   0  ACES 
9#TL          STO   0  ACOMMUNE1(2) 
9**=          STO   0  ACOMMUNE2(2) 
9*SW          STO   0  ACOMMUNE3(2) 
9B#G          ADX   3  AWORK3(2)           [PTS. TO ENTRY   
9BS6          SMO      AWORK2(2)
9C?Q          BRN      XFORMAT-1
9CRB    #   
9D?2    #                  BRANCH TABLE FOR FORMAT TYPE 
9DQL    #   
9F==    XFORMAT 
9FPW          BRN      XFORM1   
9G9G          BRN      XFORM2   
9GP6          BRN      XFORM3   
9H8Q          BRN      XFORM4   
9HNB          BRN      XFORM5   
9J82          BRN      XFORM6   
9JML          BRN      XFORM7   
9K7=          BRN      XFORM8   
9KLW          BRN      XFORM9   
9L6G          BRN      XFORM10  
9LL6          BRN      XFORM11  
9M5Q          BRN      XFORM12  
9MKB    #   
9N52    NNON1   
9NJL          LDX   6  X5(1)
9P4=          CLOSETOP  
9PHW          BRN      NNON2
9Q3G    #   
9QH6    #     ROUTINE TRANSFERS CHARS TO COMDAT/CSETP BLOCK 
9R2Q    #   
9RGB    XFORM1  
9S22          LDN   0  2
9SFL          LDX   4  0(3)                [KEEP FORLATER X3 WILLBE LOST SOON   
9S^=          CALL  7  XOPCC               [SET UP BLOCK
9TDW          STOZ     0
9TYG          LDN   7  4                   [MAX CHAR COUNT  
9WD6          LDX   1  4
9WXQ    RL1 
9XCB          SLL   01 6
9XX2          BZE   0  RL2                 [IGNORE LEADING ZERO 
9YBL          SRL   01 6
9YW=          LDN   5  1
9^*W          CALL  4  XCH2                [MOVE CHARACTERS 
9^TG          BRN      XACR 
=2*6    RL2 
=2SQ          BCT   7  RL1  
=3#B          BRN      XFNULL              [NULL PARAM SET UP   
=3S2    #   
=4?L    #     ROUTINE TO CONVERT TIME   
=4R=    #   
=5=W    XFORM2  
=5QG          LDX   4  0(3) 
=6=6          SLL   4  2
=6PQ          ADX   4  0(3)                [MULT   BY 5 
=79B          TIMECON  4
=7P2          LDN   0  3                   [LOG LENGTH  
=88L          CALL  7  XOPCC               [INITIALISE COMDAT BLK   
=8N=          LDN   7  8
=97W          LDN   5  ACOMMUNE1(2) 
=9MG          CALL  4  XCH2 
==76          BRN      XACR 
==LQ    #   
=?6B    #     S/R TO CONVERT DATE   
=?L2    #   
=#5L    XFORM3  
=#K=          LDX   4  0(3) 
=*4W          DATECON  4
=*JG          LDN   0  3                   [LOG LENGTH  
=B46          CALL  7  XOPCC
=BHQ          LDX   4  ACOMMUNE1(2) 
=C3B          TXU   4  ACES 
=CH2          BCC      XFNULL              [J. TO RETURN NULL STRING IF ZERO FIE
=D2L          LDN   7  8
=DG=          LDN   5  ACOMMUNE1(2) 
=D^W          CALL  4  XCH2 
=FFG          BRN      XACR 
=F^6    #   
=GDQ    #     ROUTINE TO CONVERT A BINARY NO. TO DECIMAL
=GYB    #   
=HD2    XFORM4  
=HXL          LDX   4  0(3) 
=JC=          LDN   0  3
=JWW          CALL  7  XOPCC
=KBG          LDX   2  6
=KW6          CALL  6  XCONV
=L*Q          ADS   7  ANUM(3)  
=LTB          BRN      XACR 
=M*2    #   
=MSL    #     ROUTINE TO CONVERT TIME TO DEC & O.P WITH 'SECS' STRING   
=N#=    #   
=NRW    XFORM5  
=P?G          LDX   4  0(3) 
=PR6          LDN   0  4
=Q=Q          CALL  7  XOPCC
=QQB          LDX   2  6
=R=2          CALL  6  XCONV
=RPL          LDCH  5  0(2) 
=S9=          BNZ   5  X51                 [J. IF FINAL CHAR MOVED WAS NONZERO  
=SNW          LDX   5  7
=T8G          SBN   5  1                   [IF JT FIELD IS ZERO,ONE CHAR WILL   
=TN6          BZE   5  XFNULL              [SET NULL STRING 
=W7Q    X51 
=WMB          LDX   6  2
=X72          BCHX  6  £
=XLL          ADS   7  ANUM(3)  
=Y6=          LDN   5  XSECS(1) 
=YKW          LDN   7  4
=^5G          CALL  4  XCH2 
=^K6          BRN      XACR 
?24Q    #   
?2JB    #     ROUTINE FORMATS THE NEEDS FIELD AND OUTPUTS IT AS 
?342    #     DECIMAL NUMBERS FOLLOWED BY 2 CHAR PERIPHERAL NAMES   
?3HL    #     -NUMBERS OF EACH TYPE SEPARATED BY COMMAS 
?43=    #    S R  FOR FORMATS 6 7 10
?4GW    #   
?52G    #              COMMON CODE  
?5G6    #   
?5^Q    XF6710  
?6FB          LDN   0  84   
?6^2          PHOTO    4
?7DL          STO   3  AWORK2(2)
?7Y=          CALL  7  XOPCC               [SET UP BLOCK
?8CW          LDX   0  XBRL(1)  
?8XG          CALL  7  XCH1                [PUT IN BRACKET  
?9C6          STO   3  7
?9WQ          TESTMOVE 4,XG2               [J IFNO BLOCKS MOVED 
?=BB          MHUNT    3,FILE,FRB          [FIND BLOCK  
?=W2          ADN   3  A1   
??*L          ADX   3  AWORK3(2)
??T=          BRN      XG3  
?##W    XG2 
?#SG          LDX   3  AWORK2(2)
?*#6    XG3 
?*RQ          STOZ     AWORK2(2)
?B?B          STO   3  GEN0 
?BR2          STO   7  GEN1                [KEEP POINTERS   
?C=L          LDX   0  AWORK4(2)
?CQ=          BZE   0  NOFACERR 
?D9W          EXIT  5  0
?DPG    #   
?F96    #    END OF FIRST S R   
?FNQ    #   
?G8B    #     START OF SECOND   
?GN2    #   
?H7L    XF6710A 
?HM=          LDX   1  FX2  
?J6W          STO   5  AWORK1(1)
?JLG          STO   0  AWORK4(1)
?K66          LDX   3  GEN1 
?KKQ          BZE   4  XNOEN
?L5B          STO   2  AWORK3(1)
?LK2          LDN   7  1
?M4L          LDX   0  AWORK2(1)           [PTR TO CHAR 
?MJ=          ADS   7  AWORK2(1)
?N3W          BZE   0  NOCOM
?NHG          SMO      FX1  
?P36          LDN   5  XCOM                [PUT IN COMMA
?PGQ          MVCH  5  1
?Q2B          ADS   7  ANUM(3)  
?QG2    NOCOM   
?Q^L          LDX   2  6
?RF=          LDX   1  FX1  
?RYW          CALL  6  XCONV               [PUT IN PARAM
?SDG          LDX   6  2
?SY6          BCHX  6  £
?TCQ          ADS   7  ANUM(3)             [UPDATE COUNT IN BLOCK   
?TXB          SMO      FX2  
?WC2          LDX   2  AWORK3   
?WWL          SMO      FX2  
?XB=          LDX   5  AWORK1   
?XTW          EXIT  5  1
?Y*G    XNOEN   
?YT6          LDX   1  FX1  
?^#Q          SMO      FX2  
?^SB          LDX   5  AWORK1              [NO ENTRY RETURN 
#2#2          EXIT  5  0
#2RL    #   
#3?=    #    END OF SECOND ROUTINE  
#3QW    #   
#4=G    #      START OF THIRD   
#4Q6    #   
#59Q    XF6710B 
#5PB          ADN   5  TABLE(1)            [FIND TABLE ENTRY
#692          LDN   7  2
#6NL          CALL  4  XCH2 
#78=          EXIT  0  0
#7MW    #   
#87G    #    END OF THIRD   
#8M6    #                   END OF COMMON CODE FOR 6 7 10   
#96Q    #   
#9LB    XFORM6  
#=62          CALL  5  XF6710              [SET BLOCK   
#=KL          SLL   0  2
#?5=          LDN   2  0
#?JW    X62 
##4G          SMO      GEN0 
##J6          LDCH  4  0(2) 
#*3Q          CALL  5  XF6710A             [PUT IN NUMBER   
#*HB          BRN      X61  
#B32          STO   2  5
#BGL          SLC   5  1
#C2=          CALL  0  XF6710B             [PUT IN TYPE 
#CFW    X61 
#C^G          BCHX  2  £
#DF6          SMO      FX2  
#DYQ          LDX   0  AWORK4   
#FDB          BCT   0  X62  
#FY2          BRN      XENDBR             [END PARAM
#GCL    #   
#GX=    #        FORMAT   7     SHARES CODE WITH 6 & 10 
#HBW    #   
#HWG    XFORM7  
#JB6          CALL  5  XF6710              [SETUP BLOCK COMMENTS ARE AS FOR TYPE
#JTQ          LDN   2  0
#K*B    X72 
#KT2          SMO      GEN0 
#L#L          LDX   4  0(2) 
#LS=          CALL  5  XF6710A  
#M?W          BRN      X71  
#MRG          STO   2  5
#N?6          SRC   5  1
#NQQ          CALL  0  XF6710B  
#P=B    X71 
#PQ2          ADN   2  1
#Q9L          SMO      FX2  
#QP=          LDX   0  AWORK4   
#R8W          BCT   0  X72  
#RNG          BRN      XENDBR   
#S86    #   
#SMQ    #        END OF FORMAT 7
#T7B    #   
#TM2    #     ROUTINE COMBINING FORMATS TYPE 2,3,5  
#W6L    #   
#WL=    XFORM8  
#X5W          LDX   4  0(3)                [DATE
#XKG    XF2 
#Y56          DATECON  4
#YJQ          LDX   4  ACOMMUNE1(2) 
#^4B          TXU   4  ACES 
#^J2          BCS      XF1  
*23L          DATECON  EDATE               [SPACES SO RETURN TODAY'S DATE   
*2H=    XF1 
*32W          LDN   0  12                  [INITIALISE COMDAT/CSETP BLOCK   
*3GG          CALL  7  XOPCC
*426          LDN   7  8
*4FQ          LDN   5  ACOMMUNE1(2) 
*4^B          CALL  4  XCH2                [MOVE DATE ACROSS
*5F2          LDX   0  XCM(1)   
*5YL          CALL  7  XCH1                [COMMA NEXT  
*6D=          STO   3  AWORK4(2)           [PTR TO COMDAT/CSETP BLK 
*6XW          MHUNT    3,FILE,FRB   
*7CG          ADN   3  A1   
*7X6          ADX   3  AWORK3(2)           [PTR TO 1ST WRD OF DATA  
*8BQ          STO   3  AWORK2(2)
*8WB          ADN   3  1                   [PTR. TO BINARY TIME 
*9B2          LDX   4  0(3) 
*9TL          SLL   4  2
*=*=          ADX   4  0(3)                [MULTIPLY BY 5 FOR K9 COUNT  
*=SW          PHOTO    7
*?#G          TIMECON  4
*?S6          TESTMOVE 7,XF4
*#?Q          MHUNT    3,FILE,FRB   
*#RB          ADN   3  A1   
**?2          ADX   3  AWORK3(2)
**QL          STO   3  AWORK2(2)
*B==          MHUNT    3,COMDAT,CSETP   
*BPW          BRN      XF5  
*C9G    XF4 
*CP6          LDX   3  AWORK4(2)
*D8Q    XF5 
*DNB          LDN   7  8
*F82          LDN   5  ACOMMUNE1(2) 
*FML          CALL  4  XCH2                [MOVE TIME ACROSS
*G7=          LDX   0  XCM(1)   
*GLW          CALL  7  XCH1                [COMMA NEXT  
*H6G          LDX   3  AWORK2(2)
*HL6          ADN   3  2
*J5Q          LDX   4  0(3)                [NO. TO BE CONVERTED 
*JKB          LDX   3  AWORK4(2)           [PTR TO C.CSETP BLK  
*K52          LDX   2  6
*KJL          CALL  6  XCONV
*L4=          LDCH  5  0(2)                [SEE COMMENTS IN XFORM5  
*LHW          BNZ   5  XF81 
*M3G          LDX   5  7
*MH6          SBN   5  1
*N2Q          BZE   5  XF82 
*NGB    XF81
*P22          LDX   6  2
*PFL          BCHX  6  £
*P^=          ADS   7  ANUM(3)             [STEP COUNT FOR CHARS MOVED  
*QDW          LDN   5  XSECS(1) 
*QYG          LDN   7  4
*RD6          CALL  4  XCH2                [MOVE 'SECS' & UP COUNT  
*RXQ          LDN   7  2
*SCB          ADS   7  ANUM(3)  
*SX2          BRN      XF83 
*TBL    XF82
*TW=          LDN   7  1
*W*W          ADS   7  ANUM(3)             [-1 FOR COMMA
*WTG    XF83
*X*6          BRN      XACR                [PREV. INSTR. UPS CT FOR COMMAS  
*XSQ    #   
*Y#B    #     ROUTINE TRANSFERS CHAR STRING 
*YS2    #   
*^?L    XFORM9  
*^R=          STO   3  5                   [SAVE PTR. TO START OF STRING
B2=W          LDX   4  AWORK4(2)           [WORDLENGTH OF STR   
B2QG          LDX   0  4
B3=6          ADN   0  1                   [LOG. LENGTH FOR BLOCK   
B3PQ          SLL   4  2                   [CHAR .LENGTH OF STR 
B49B          CALL  7  XOPCC
B4P2          LDX   7  4                   [COUNT   
B58L          CALL  4  XCH2 
B5N=          BRN      XACR 
B67W    #   
B6MG    #     SIMILAR TO XFORM6 
B776    #            FORMAT 10 USES COMMON CODE SEE FORMAT 6 &7 
B7LQ    #   
B86B    XFORM10                            [SPEC ENTRY WILL BE FROM VAR FIELD   
B8L2          CALL  5  XF6710              [SEE TYPE 6 FOR COMMENT  
B95L    X102
B9K=          SMO      GEN0 
B=4W          LDCH  4  0
B=JG          CALL  5  XF6710A  
B?46          BRN      X101 
B?HQ          LDX   3  GEN0 
B#3B          LDCH  5  0(3) 
B#H2          SRC   5  1
B*2L          LDX   3  GEN1 
B*G=          CALL  0  XF6710B  
B*^W    X101
BBFG          LDN   7  1
BB^6          ADS   7  GEN0 
BCDQ          SMO      FX2  
BCYB          LDX   0  AWORK4   
BDD2          BCT   0  X102 
BDXL          BRN      XENDBR   
BFC=    #   
BFWW    #     T.S.N. TO BE TRANSFERRED  
BGBG    #   
BGW6    XFORM11 
BH*Q          LDX   5  0(3)                [TAPE NO.
BHTB          LDN   0  3                   [LOG. LENGTH 
BJ*2          CALL  7  XOPCC               [SET UP COMDAT. CSETP BLK
BJSL          LDX   0  XBRL(1)             [INSERT LEFT PAREN FOR TAPENO.   
BK#=          CALL  7  XCH1 
BKRW          LDN   2  0                   [CHAR MODIFIER FOR CONVERSION
BL?G          LDN   7  8                   [COUNT   
BLR6    TS1 
BM=Q          STOZ     4
BMQB          SLL   45 3
BN=2          LDCH  0  4
BNPL          BNZ   0  TS2                 [FIRST NON ZERO CHARACTER
BP9=          BCT   7  TS1  
BPNW          BRN      TS3                 [TAPE NO = ZERO  
BQ8G    TS2 
BQN6          STO   7  GEN0                [COUNT OF SIGNIFICANT CHARS  
BR7Q          BRN      TS5  
BRMB    TS4 
BS72          STOZ     4
BSLL          SLL   45 3
BT6=          LDCH  0  4
BTKW    TS5 
BW5G          SMO      FX2  
BWK6          DCH   0  AWORK3(2)
BX4Q          BCHX  2  £
BXJB          BCT   7  TS4  
BY42          LDX   7  GEN0 
BYHL          BRN      TS6  
B^3=    TS3 
B^GW          LDN   7  1
C22G          SMO      FX2  
C2G6          STOZ     AWORK3              [IF TAPE NO. IS ZERO 
C2^Q    TS6 
C3FB          LDX   2  FX2  
C3^2          LDN   5  AWORK3(2)
C4DL          SMO      7
C4Y=          MVCH  5  0
C5CW          ADS   7  ANUM(3)  
C5XG          BRN      XENDBR   
C6C6    #   
C6WQ    #     BINARY-OCTAL CONVERSION   
C7BB    #   
C7W2    XFORM12 
C8*L          LDX   7  0(3)                [BINARY NO. TO BE CONVERTED  
C8T=          LDN   0  8                   [COUNT OF CHARS  
C9#W          LDN   5  ACOMMUNE1
C9SG    XOCT
C=#6          STOZ     6
C=RQ          SLL   67 3
C??B          SMO      5
C?R2          DCH   6  0(2)                [CHARS IN ACOMMUNE1-2
C#=L          BCHX  2  £
C#Q=          BCT   0  XOCT 
C*9W          LDX   2  FX2  
C*PG          LDN   0  3
CB96          CALL  7  XOPCC
CBNQ          LDX   0  XHASH(1) 
CC8B          CALL  7  XCH1                [DUMP #  
CCN2          LDN   7  8
CD7L          LDN   5  ACOMMUNE1(2) 
CDM=          CALL  4  XCH2 
CF6W          LDN   7  1
CFLG          ADS   7  ANUM(3)             [  + #   
CG66          BRN      XACR 
CGKQ    #   
CH5B    #     THE CODE WHICH FOLLOWS EXTRACTS DATA FROM THE VARIABLE
CHK2    #     RESOURCE FIELD. X6 CONTAINS ITEM NO. AN ITEM NO RESULTING 
CJ4L    #     FROM A"V" FORMAT PARAMETER MUST FIRST HAVE 2048 SUBTRACTED
CJJ=    #     FROM IT .X3 POINTS TO HEADER REC.X5=REC.LENGTH
CK3W    #     AWORK1 = PTR.TO VAR.RESOURCE  FIELD PTR   
CKHG    #   
CL36    VAR1
CLGQ          SBX   6  X2K(1)              [CORRECT  ITEM NUMBER
CM2B          BPZ   6  VA1  
CMG2          ADX   6  X2K(1)   
CM^L    VA1 
CNF=          LDX   2  AWORK1(2)
CNYW          SMO      3                   [PTR TO VAR.RES FIELD
CPDG          LDX   2  0(2) 
CPY6          BZE   2  NOFACERR            [ERROR! NO VAR.RES FIELD 
CQCQ          SBN   5  1                   [SET UP REC LENGTH IN FILE FRB   
CQXB    VA2 
CRC2          TXL   5  2
CRWL          BCS      VA4                 [NO ENTRY FOR THIS ITEM NO   
CSB=          SMO      3
CSTW          LDX   4  0(2)                [WORD 0 OF ENTRY 
CT*G          LDEX  7  4                   [LENGTH OF ENTRY 
CTT6          SRL   4  12                  [ITEM NO IN L.S.END  
CW#Q          TXU   4  6
CWSB          BCC      VA3                 [BRANCH IF FOUND 
CX#2          ADX   2  7                   [STEP ON POINTER 
CXRL          BRN      VA2                 [AND TRY AGAIN   
CY?=    VA3 
CYQW          ADN   2  1                   [POINTS TO 1ST WORDOF DATA   
C^=G          LDX   0  7                   [LOG. LENGTH FOR COMDAT BLK  
C^Q6          SBN   7  1
D29Q    #   
D2PB    #     IF FACILITY NUMBER IS 5 THE ENTRY WILL ALWAYS BE THE  
D392    #     NEEDS FIELD IN FORMAT 6, HENCE WE CAN REFORMAT
D3NL    #      AWORK3 NON ZERO IMPLIES FORMAT 10
D48=    #   
D4MW          TXU   6  X5(1)
D57G          BCS      NNOFF
D5M6          ADX   3  2
D66Q          SMO      FX2  
D6LB          STO   2  AWORK3   
D762          LDX   2  FX2  
D7KL          STO   7  AWORK4(2)
D85=          BRN      XFORM10             [J. TO STANDARD FORMAT ROUTINE   
D8JW    NNOFF   
D94G          LDX   5  2                   [SET UP ADDRESS PTR  
D9J6          ADX   5  3                   [FOR MOVE
D=3Q          SLL   7  2                   [CHAR. COUNT FOR MOVE
D=HB          LDX   4  7
D?32          CALL  7  XOPCC               [INITIALISE  
D?GL          LDX   7  4                   [RETURN COUNT
D#2=          CALL  4  XCH2 
D#FW          BRN      XACR 
D#^G    #   
D*F6    VA4 
D*YQ          TXU   6  X5(1)
DBDB          BCS      NOFACERR            [ERROR MESSAGE IF NOT FAC 5  
DBY2          LDN   0  1                   [LOG LENGTH  
DCCL          CALL  7  XOPCC               [OTHERWISE RETURN NULL STRING
DCX=          LDX   0  XBRL(1)  
DDBW          CALL  7  XCH1 
DDWG    #   
DFB6    #           PATHS REJOIN HERE FOR LAST BRACKET  
DFTQ    #   
DG*B    XENDBR  
DGT2          LDX   0  XBR(1)              [ PUT IN CLOSE BRACKET   
DH#L          CALL  7  XCH1 
DHS=          LDN   7  2
DJ?W          ADS   7  ANUM(3)  
DJRG          BRN      XACR 
DK?6    #   
DKQQ    XFNULL  
DL=B          STOZ     ANUM(3)             [SET NULL PARAM  
DLQ2    #   
DM9L    #               END OF CHAPTER FOR SETPARAM ENTRY   
DMP=    #   
DN8W    XACR
DNNG          MFREE   FILE,FRB  
DP86          UPPLUS   2
DPMQ    #   
DQ7B    #     ############################################################# 
DQM2    #   
DR6L    #           K    K          222 
DRL=    #           K   K          2   2
DS5W    #           K  K               2
DSKG    #           K K                2
DT56    #           KKK               2 
DTJQ    #           K  K             2  
DW4B    #           K   K           2   
DWJ2    #           K    K         2
DX3L    #           K     K       2222222   
DXH=    #   
DY2W    #     ############################################################# 
DYGG    #   
D^26    SENTRY2 
D^FQ    #   
D^^B    #   
F2F2    #                 JOBDATA ENTRY TO SETJD
F2YL    #   
F3D=    #     AT THIS ENTRY, WE HAVE IDENTIFIED THE FIRST PARAMETER 
F3XW    #     TO THE JD COMMAND AS STARTING WITH AN ASTERISK. THE CPB/  
F4CG    #     CUNI BLOCK HAS BEEN FREED 
F4X6    #   
F5BQ          LDN   6  1
F5WB          PARAMOVE 6                   [OVERWRITE * 
F6B2          SPARAPAS  
F6TL          MHUNT    3,CPB,CUNI   
F7*=          LDX   4  ANUM(3)  
F7SW          BZE   4  PARERR              [NULL PARAM  
F8#G          BNG   4  PARERR              [NON-EXISTENT PARAM  
F8S6          ANDN  4  #7777
F9?Q          CALL  7  NUMST
F9RB          BRN      QT1  
F=?2    #   
F=QL    #     CONTINUE HERE IF NUMERIC JOBNO. PARAMETER 
F?==    #   
F?PW          BZE   6  NUMERR              [JOBNO ZERO  
F#9G          ORX   6  GSIGN               [MARKS JOBNO 
F#P6          LDX   7  6
F*8Q          BRN      QJD1 
F*NB    QT1 
FB82          FREECORE 3
FBML          CALL  6  UPAR 
FC7=          BRN      SJERR1              [LOCAL NAME FORMAT ERROR 
FCLW          BRN      NUSERR              [NO USERNAME FOUND   
FD6G          LDN   7  3
FDL6          SBX   7  JPARNUM(3)   
FF5Q    QT2 
FFKB          FREECORE 3
FG52          SPARANOX 7
FGJL          CALL  6  UPAR1
FH4=          BRN      PARERR2             [ERROR IN JOBNAME FORMAT 
FHHW          BRN      NJOBERR             [NONE FOUND  
FJ3G    #   
FJH6    #     THE NEXT UNACCESSED PARAM IN CPB/CALAS BLOCK SHOULD BE
FK2Q    #     FACILITY NO. HENCE WE CAN REJOIN JOBDATA AT K1JOBDATA 
FKGB    #     AWORK1 HAS SUFFICIENT INFORMATION IN IT TO DETERMINE  
FL22    #     THE STRUCTURE OF THE CPB/CALAS BLOCK: VIZ 
FLFL    #     B0 = 1  IF IDENTIFIED BY JOBNO. BS 1 - 23 = JOBNO 
FL^=    #     B0 = 0  BS1-23 = +1   JOBNAME/USERNAME
FMDW    #     B0 =0   BS1-23 = +2   USERNAME/JOBNAME
FMYG    #   
FND6    #   
FNXQ    QJD1
FPCB          MFREE    CPB,CUNI             [BLK CONTAINS JOB OR USER NAME  
FPX2    #   
FQBL    #   
FQW=    #     NOW INVESTIGATE NEXT PARAM IN CPB CALAS BLK   
FR*W    #     TO SEE IF IT IS A FAC. NUMBER LESS THAN SEVEN 
FRTG    #   
FS*6          MHUNT    3,CPB,CALAS  
FSSQ    #   
FT#B    #            CHECK FOR TO MANY PARAMS   
FTS2    #   
FW?L          STO   7  AWORK1(2)
FWR=    #   
FX=W          BNG   7  QJD2                [J. IF SEARCH IS TO BE BY JOBNO. 
FXQG    #   
FY=6    #     IF JOB IS TO BE IDENTIFIED BY JOB AND USER NAMES  
FYPQ    #     THE PARAPASS POINTER HAS TO BE UPDATED TO POINT TO
F^9B    #     FACILITY-ITEM NUMBER BEFORE GOING UP TO JOBDATA850
F^P2    #   
G28L          CALL  5  XUPTR               [UPDATE PARAM PTR IN BLOCK   
G2N=          SBN   4  1
G37W          SRL   4  2
G3MG          ADN   4  2                   [ROUNDED +1 FOR TYPE WORD
G476          SLL   4  12   
G4LQ          ADN   4  1                   [PARAM NO ADDITION   
G56B          ADS   4  APTBEPAR(3)  
G5L2    QJD2
G65L          CALL  5  XUPTR               [UPDATE PARAM PTR IN BLOCK   
G6K=          STO   4  GEN5 
G74W          STO   3  GEN0                [SET UP FOR S.RQ 
G7JG          ADX   3  2
G846          ADN   3  1                   [PTR TO 1ST CHAR OF UNACCESSED PARAM 
G8HQ          CALL  7  NUMCON   
G93B          BRN      QJD3                [J IF NON NUMERIC
G9H2          TXL   6  SEVEN(1) 
G=2L          BCS      XJDERR              [FAC. NUMBER OUT OF RANGE
G=G=          LDX   2  FX2  
G=^W          LDX   4  AWORK1(2)
G?FG          LDN   5  3
G?^6          BNG   4  QQ2  
G#DQ          ADN   5  1
G#YB    QQ2 
G*D2          SBX   5  APARANUM(3)         [MAX 4 PARAMS
G*XL          BNG   5  XTOMANY             [TOO MANY FOUND  
GBC=    QJD4
GBWW          LDX   2  FX2  
GCBG          LDX   4  AWORK1(2)
GCW6          STO   4  ACOMMUNE1(2)        [PRESERVE OVER CO-ORDINATION 
GD*Q          UPPLUS 2                     [SUCCESSFUL RETURN   
GDTB    #   
GF*2    #     THE NEXT PARAMETER IS NON-NUMERIC AND WILL BE 
GFSL    #     ANALYSED BY THE STANDARD ICL ROUTINES IN JOBDATA850   
GG#=    #     WE GO DOWN TO OVERFLOW TO CHECK WHETHER IT IS ONE OF  
GGRW    #     THE SCHEDULING IDENTIFIERS REFERRING TO FACILITY NUMBERS  
GH?G    #     0-6.IF IT IS ,AN ERROR MESSAGE IS OUTPUT  
GHR6    #   
GJ=Q    #             CHECK FOR INVALID IDENT   
GJQB    #   
GK=2    QJD3
GKPL          SMO      FX2  
GL9=          LDX   7  AWORK1   
GLNW          LDN   5  2
GM8G          BNG   7  QQ1                 [J ONLY 2PARAMS FOR JOBNO TYPE   
GMN6          ADN   5  1
GN7Q    QQ1 
GNMB          SBX   5  APARANUM(3)  
GP72          BNG   5  XTOMANY             [J TOO MANY PARAMS   
GPLL          LDX   3  GEN6 
GQ6=          LDX   7  GEN5 
GQKW          SBX   7  4                   [CNT BEFORE FIRST ALPHA CHAR 
GR5G          BZE   7  QJD9                [J IF FIRST CHAR 
GRK6          SLC   3  2
GS4Q          SBX   3  7
GSJB          SRC   3  2
GT42    QJD5                               [CHECK PRECEDING CHARACTERS  
GTHL          LDCH  5  0(3) 
GW3=          TXU   5  SPA1(1)  
GWGW          BCS      QJD4                [J NOT ALPHA CONNOT BE INVALID CHAR S
GX2G          BCHX  3  £
GXG6          BCT   7  QJD5 
GX^Q    QJD9
GYFB          STOZ     0
GY^2    QJD6                               [CHECK FOR INVALID IDENT 
G^DL          SMO      0
G^Y=          LDCH  6  JDTAB(1) 
H2CW          SMO      0
H2XG          LDX   2  JDTAB(1) 
H3C6          ANDN  2  #7777
H3WQ          ADX   2  1                   [ABS ADDRESS 
H4BB    QJD7
H4W2          LDCH  4  0(3) 
H5*L          LDCH  5  0(2) 
H5T=          TXU   4  5
H6#W          BCS      QJD8                [J CHAR DO NOT AGREE 
H6SG          BCHX  3  £
H7#6          BCHX  2  £
H7RQ          BCT   6  QJD7 
H8?B          BRN      XJDERR   
H8R2    QJD8
H9=L          BZE   5  QJD4                [J BECAUSE END OF TABLE  
H9Q=          ADN   0  1
H=9W          BRN      QJD6                [CHECK NEXT TABLE ENTRY  
H=PG    #   
H?96    #          S  R FOR EARLIER CODE AT QJD2
H?NQ    #   
H#8B    XUPTR   
H#N2          LDX   2  APTBEPAR(3)         [PARAM PTR   
H*7L          SRL   2  12   
H*M=          SMO      3
HB6W          LDX   4  0(2) 
HBLG          BXE   4  GMINUS1,PARERR1     [J END OF PARAM  
HC66          ANDN  4  #7777
HCKQ          BZE   4  PARERR1             [J NULL PARAM
HD5B          EXIT  5  0
HDK2    #   
HF4L    #      END OF S R   
HFJ=    #   
HG3W    #      ERROR ROUTINES FOR RETURN TO JOBDATA 
HGHG    #   
HH36    XJDERR                             [RESERVED FACILITY TYPES 
HHGQ          LDX   6  XER13(1) 
HJ2B          BRN      XNER 
HJG2    XTOMANY                            [TO MANY PARAMS  
HJ^L          LDX   6  XER12(1) 
HKF=    XNER                               [SETS %B TO NULL 
HKYW          NGN   7  1
HLDG          BRN      XERROR   
HLY6    PARERR1 
HMCQ          LDX   7  XER10(1) 
HMXB          BRN      XAPFERR  
HNC2    PARERR2 
HNWL          LDX   7  XER3(1)  
HPB=          BRN      XAPFERR  
HPTW    PARERR  
HQ*G          LDX   7  XER1(1)  
HQT6          BRN      PARMISS  
HR#Q    NUSERR  
HRSB          LDX   7  XER2(1)  
HS#2          BRN      PARMISS  
HSRL    NJOBERR 
HT?=          LDX   7  XER3(1)  
HTQW    PARMISS 
HW=G          LDX   6  XER4(1)  
HWQ6          BRN      XERROR   
HX9Q    NUMERR1 
HXPB          CLOSETOP  
HY92    NUMERR  
HYNL          LDX   7  XER5(1)  
H^8=          BRN      XAPFERR  
H^MW    SJERR1A 
J27G          CLOSETOP  
J2M6    SJERR1  
J36Q          LDX   7  XER1(1)  
J3LB    XAPFERR 
J462          LDX   6  XER6(1)  
J4KL          BRN      XERROR   
J55=    NUMERR2 
J5JW          LDX   6  XER7(1)  
J64G          LDX   7  XER8(1)  
J6J6          BRN      XERROR   
J73Q    NULLERR 
J7HB          LDX   6  XER9(1)  
J832          LDX   7  XER10(1) 
J8GL          BRN      XERROR   
J92=    NOFACERR1   
J9FW          CLOSETOP  
J9^G    NOFACERR
J=F6          LDX   6  XER11(1) 
J=YQ          LDX   7  XER10(1) 
J?DB    XERROR                             [STORE DETAILS READY FOR UP  
J?Y2          LDX   2  FX2  
J#CL          STO   6  ACOMMUNE1(2) 
J#X=          STO   7  ACOMMUNE2(2) 
J*BW    #   
J*WG    #   
JBB6    #                 ERROR RETURN  
JBTQ    #   
JC*B          UPPLUS 1  
JCT2    #   
JD#L    #                  BREAKIN RETURN   
JDS=    #   
JF?W    XBRK
JFRG          UP
JG?6    #   
JGQQ    #END
^^^^ ...600127460001