PARAM865

(George Source)

Macros used: CHARMOVE, FINDCORE, FINDLINK, FREECORE, GETCORE, HUNT, MASK, MENDAREA, MFREE, MHUNTW, NAME, PHOTO, PTYPE, SEGENTRY, SETUPCORE, TESTMOVE, TRACE, UP, WRONG

PARAM865.txt
22FL    #LIS  K0PARAM>K0ALLGEO>K0GREATGEO>K0COMMAND 
22^=    #SEG  PARAM                        [ BILL IZATT : CENT  
23DW                   8HPARAM  
23YG    [ THE ENTRY POINTS  
24D6    [     THESE ENTRY POINTS MUST BE KEPT FIXED WITHIN THE SEGMENT  
24XQ          SEGENTRY K3PARAM,QENTRY3  
25CB          SEGENTRY K4PARAM,QENTRY4  
25X2          SEGENTRY K5PARAM,QENTRY5  
26BL          SEGENTRY K7PARAM,QENTRY7  
26W=          SEGENTRY K8PARAM,QENTRY8  
27*W          SEGENTRY K9PARAM,QENTRY9  
27QB ...[      ENTRY POINTS NO LONGER USED  
286W ...      BRN      (GEOERR) 
28HB ...      BRN      (GEOERR) 
28XW ...      BRN      (GEOERR) 
29#B          SEGENTRY K14PARAM,QENTRY14
29S2          SEGENTRY K15PARAM,QENTRY15
2=?L          SEGENTRY K16PARAM,QENTRY16
2=P2 ...[     ENTRY POINTS NO LONGER USED   
2?6B ...      BRN      (GEOERR) 
2?HQ ...      BRN      (GEOERR) 
2?^6 ...      SEGENTRY K19PARAM,QENTRY19
2#BG ...      SEGENTRY K20PARAM,QENTRY20
2#RW ...      SEGENTRY K25PARAM,QENTRY25
2*9B    [   
2*P2    [   
2*XS ...[           THIS SEGMENT IS ENTERED BY THE  PARAMETER PASSING MACROS
2B6L ...[           AND MISCELLANEOUS MACROS CONCERNED WITH COMMAND PARAMETERS  
2B*D ...[           ENTRY POINTS - PARANOT   - K3   
2BJ= ...[                          PARABEG   - K4   
2BR4 ...[                          PARAPASS  - K5   
2B^W ...[                          PARAFREE  - K7   
2C8N ...[                          PARATYPE  - K8   
2CCG ...[                          PARANUMB  - K9   
2CL# ...[                          SPARABEG  - K14  
2CT6 ...[                          SPARAPASS - K15  
2D3Y ...[                          SPARANOT  - K16  
2D=Q ...[                          SPARUNAC  - K19  
2DFJ ...[                          PARUNACC  - K20  
2DNB ...[           K25 - ENTRY FROM ANALYSEA TO COMPLETE PARANEXT ETC  
2DX8 ...[           ON COMPLETION EACH ROUTINE GOES UP TO THE CALLING ROUTINE   
2F6B    #   
2FL2    MASK           #17777777
2G5L    UPDT           #10001   
2GK= ...MINUS1         #77777777
2T*2    SPACE          #20  
2TSL ...WBLANK         #20202020
2WRW    #   
2X?G    [              SUBROUTINE TO LOCATE A COMMAND PARAMETER BLOCK ACCORDING 
2XR6    [              TO THE ANALYSIS LEVEL SPECIFIED IN EXT+2 IN THE ACTIVITY 
2Y=Q    SEARCHLEV   
2YQB          LDX   2  FX2  
2^=2    P2    LDX   2  FPTR(2)  
2^PL          LDCH  0  ATYPE(2)            [CHECK IS A CPB BLOCK
329=          SBN   0  CPB/64   
32NW          BNZ   0  P2                  [BRANCH IF NOT   
338G          LDX   0  ATYPE(2) 
33N6          SRL   0  12   
347Q          ERN   0  CPB+CUNI 
34MB          BZE   0  P2                  [REJECT IF UNIBLOCK  
3572          SMO      FX2  
35LL          LDX   1  EXT+2               [ANALYSIS LEVEL OF REQUIRED BLOCK
366=          BNG   1  RET                 [BRANCH IF ANALYSIS LEVEL 'LOWEST'   
36KW          TXL   1  ANALEV(2)           [CHECK ANALYSIS LEVEL
375G          BCS      P3   
37K6          TXU   1  ANALEV(2)
384Q          BCC      RET  
38JB          NGN   4  1
3942          BRN      NOPARAM             [ERROR IF ANALYSIS LEVEL TOO LARGE   
39HL    P3    LDX   2  FPTR(2)  
3=3=          TXU   1  ANALEV(2)
3=GW          BCS      P3                  [BRANCH IF NOT CORRECT ANALYSIS LEVEL
3?2G    RET   EXIT  7  0                   [BLOCK FOUND, RETURN 
3?55 ...#   
3?7N ...[              SUBROUTINE TO MOVE CHARACTERS (SAVES SPACE IN SEGMENT)   
3?=? ...XCHMOVE 
3?#W ...      CHARMOVE 6,1  
3?CF ...      EXIT  4  0
3?G6    #   
3?^Q    [              ROUTINE IF PARAMETER NULL OR NON EXISTANT
3#FB    NULLP SMO      FX1  
3#^2          LDX   7  UPDT 
3*DL          ADS   7  APTBEPAR(2)         [UPDATE POINTER TO NEXT PAR. TO BE PA
3*Y=    NULLQ LDX   3  ANALEV(2)           [X3 HOLDS ANALYSIS LEVEL OF PARENT BL
3BCW          LDX   6  CPBPROGLEV(2)       [IF NOT ALAS BLOCK,HOLDS NO. IN ALAS 
3BXG    NOPARAM 
3CC6          LDN   7  2
3CWQ          GETCORE  7,1                 [GET A BLOCK OF 2 WORDS  
3DBB          FINDCORE 2
3DW2          NAME     2,CPB,CUNI   
3F*L          STO   4  ANUM(2)             [SET NULL OR ABSENT PARAMETER
3FT=          BNZ   4  VAMOS               [END IF NOT NULL PARAMETER   
3G#W          SMO      FX2  
3GSG          LDX   1  EXT+3
3H#6          ORS   1  ATYPE(2)            [STO NO. OF PARAMETER IN PARENT BLOCK
3HRQ          BZE   3  XALAS               [BRN IF ALAS BLOCK   
3J?B          LDX   1  6                   [X1 NOW HOLDS NO OF PARAMETER IN ALAS
3JR2    XALAS STO   1  JPARNUM(2)          [SET JPARNUM 
3K=L          UP
3KQ=    VAMOS SMO      FX2  
3L9W          LDX   7  EXT+2
3LPG          NGN   5  1
3M96          LDX   3  2
3MNQ          BZE   7  VAMOT
3N8B          BNG   7  VAMOT
3NN2          HUNT 2,CPB,CMULTI 
3P7L          BNG   2  XJUMP
3PM=          SBX   7  ANALEV(2)
3Q6W          BZE   7  VAMOU
3QLG          BPZ   7  XJUMP
3R66    VAMOT CALL  7  SEARCHLEV
3RKQ    VAMOU LDX   5  APARANUM(2)  
3S5B          ADN   5  1
3SK2          ORS   5  ATYPE(3) 
3T4L          LDX   0  ANALEV(2)
3TJ=          BZE   0  XJUMP
3W3W          LDX   5  CPBPROGLEV(2)
3WHG    XJUMP STO   5  JPARNUM(3)   
3X36          UP
3XGQ    #   
3Y2B    [              PARANOT  
3YG2    #   
3Y^L    [              ON ENTRY,EXT+3(2) HOLDS THE NUMBER OF THE PARAMETER REQUE
3^F=    [              AND EXT+2(2) HOLDS THE ANALYSIS LEVEL OF BLOCK CONTAINING
3^YW    [              EXT+7 IS SET -1 IN THE CASE OF SPARANOT .
42DG    QENTRY16
42Y6          NGN   0  1
43CQ          STO   0  EXT+7(2) 
43XB          BRN      ST2  
44C2    QENTRY3 
44WL          STOZ     EXT+7(2) 
45B=    ST2 
45TW          CALL  7  SEARCHLEV           [FIND MULTI PARAMETER BLOCK  
46*G    #SKI           K6PARAM>499-499  
46T6          TRACE    2,NOT
47#Q          SMO      FX2  
47SB          LDX   1  EXT+3               [PARAMETER NUMBER
48#2          LDN   5  APARAFIR            [POINTER TO FIRST PARAMETER  
48RL          BRN      NCHA 
49?=    NPARA ANDN  4  #7777               [EXTRACT NO. OF CHARACTERS IN PARAMET
49QW          ADN   4  7
4==G          SRL   4  2
4=Q6          ADX   5  4                   [POINTER TO NEXT PARAMETER   
4?9Q    NCHA  SMO      5
4?PB          LDX   4  0(2)                [NO. OF CHARACTERS IN PARAMETER  
4#92          SMO      FX1  
4#NL          TXU   4  MINUS1   
4*8=          BCC      NOPARAM             [BRN IF END OF BLOCK 
4*MW          BCT   1  NPARA               [BRANCH IF NOT N'TH PARAMETER
4B7G    #SKI  AJOBUSE<1$1   
4BM6    (   
4C6Q          LDX   7  ANALEV(2)
4CLB          BNZ   7  MULT1               [BRN NOT ALAS BLOCK  
4D62    )   
4DKL          LDCT  7  #400 
4F5=          SMO      5
4FJW          ORS   7  0(2)                [INDICATE 'ACCESSED' IN TYPE WORD
4G4G          LDXC  4  4                   [REMOVE 'ACCESSEO' BIT IF SET
4GJ6    MULT1 BZE   4  NULLQ               [N'TH PARAMETER,BRN IF NULL  
4H3Q          ANDN  4  #7777               [EXTRACT NO. OF CHARACTERS IN PARAMET
4HHB          ADN   4  11   
4J32          SRL   4  2                   [SIZE OF PARAMETER IN WORDS  
4JGL          STO   2  6                   [STORE ADDRESS OF MULTI BLOCK
4K2=          PHOTO    7
4KFW          GETCORE  4,1                 [GET A BLOCK SIZE OF PARAMETER   
4K^G          FINDCORE 3
4LF6          NAME     3,CPB,CUNI          [NAME BLOCK  
4LYQ          LDX   1  EXT+3(2) 
4MDB          ORS   1  ATYPE(3)            [STORE NUMBER OF PARAMETER   
4MY2          LDX   2  6                   [LOAD ADDRESS OF MULTI BLOCK 
4NCL          TESTMOVE 7,NSER1  
4NX=          CALL  7  SEARCHLEV           [FIND MULTI PARAMETER BLOCK IF MOVED 
4PBW    NSER1 LDX   7  ANALEV(2)
4PWG          BZE   7  ZAL1                [BRN IF ALAS BLOCK   
4QB6          LDX   7  CPBPROGLEV(2)
4QTQ          BRN      STJP1
4R*B    ZAL1  SMO      FX2  
4RT2          LDX   7  EXT+3
4S#L    STJP1 STO   7  JPARNUM(3)          [STO NO. OF PAR. IN ORIGINAL ALAS BLO
4SS=          SMO      5
4T?W          LDX   1  0(2) 
4TRG          ANDN  1  #7777               [NO. OF CHARACTERS IN PARAMETER  
4W?6          SMO      5
4WQQ          LDN   6  0(2)                [ADDRESS OF PARAMETER IN MULTI BLOCK 
4X=B          LDN   7  ANUM(3)             [ADDRESS IN UNI BLOCK
4XQ2          MVCH  6  4                   [STO PT/N WORD   
4Y9L          SMO      FX2  
4YP=          LDX   0  EXT+7
4^8W          BNG   0  SPAR1               [BRN IF SPARANOT 
4^NG          LDX   0  1                   [NO.OF CHARS TO BE TRANSFERRED   
5286    XGNC1 LDX   1  6                   [ADDRESS OF NEXT CHAR IN MODIFIER
52MQ          LDCH  4  0(1)                [LOAD NEXT CHAR  
537B          SMO      FX1  
53M2          TXU   4  SPACE
546L          BCS      MVCH1               [BRN NOT SPACE   
54L=          LDN   5  1
555W          SBS   5  ANUM(3)             [REDUCE NO.OF CHARS FOR SPACE
55KG          BCHX  6  £
5656          BRN      XBCT1
56JQ    MVCH1 MVCH  6  1                   [STO A CHAR IN UNIBLOCK  
574B    XBCT1 BCT   0  XGNC1               [GET NEXT CHAR   
57J2          LDX   1  ANUM(3)  
583L          ANDN  1  3
58H= ...      BZE   1  XCSB                [PAR IS EXACT NO OF WORDS
592W          SBN   1  4
59GG          NGX   1  1                   [X1 HOLDS NO. OF SPACES NEEDED   
5=26          SMO      FX1  
5=FQ          LDN   6  WBLANK   
5=^B          MVCH  6  0(1)                [SPACEFILL LAST WORD 
5?F2 ...      BRN      XCSB 
5?YL    SPAR1 SMO      FX1  
5#D=          LDX   0  WBLANK   
5#XW ...XCHMV SMO      4
5*CG          STO   0  A1-1(3)             [SPACEFILL LAST WORD 
5*X6 ...      CALL  4  XCHMOVE  
5BBQ ...XCSB  SMO      FX1  
5BWB          LDX   1  MASK 
5CB2          ANDS  1  ANUM(3)             [CLEAR ANY 'ACCESSED' BIT
5CTL          UP
5D*=    #   
5DSW    [              PARABEG  
5F#G    #   
5FS6    [              ON ENTRY EXT+4(2) HOLDS A COUNT OF THE NO. OF CHARACTERS 
5G?Q    [              IN THE STRING CONTAINED IN EXT+5(2) AND EXT+6(2).EXT+3(2)
5GRB    [              HOLDS THE NO. OF THE PARAMETER STARTING WITH THIS STRING 
5H?2    [           REQUIRED, EXT+2(2) HOLDS THE ANALYSIS LEVEL OF THE BLOCK
5HQL    [              CONTAINING THE PARAMETER. EXT+7(2) IS -1 FOR SPARABEG .  
5J==    QENTRY14
5JPW          NGN   0  1
5K9G          STO   0  EXT+7(2) 
5KP6          BRN      ST   
5L8Q    QENTRY4 
5LNB          STOZ     EXT+7(2) 
5M82    ST  
5MML          LDX   0  EXT(2)   
5N7=          STO   0  AWORK1(2)
5NLW    [              REMOVE SPACES FROM SPECIFIED CHARACTER STRING
5P6G          LDN   3  0
5PL6          LDX   4  EXT+4(2)            [CHARACTER COUNT 
5Q5Q          LDN   0  8
5QKB          TXL   0  4
5R52          BCC      TACH 
5RJL          LDN   4  8
5S4=          BRN      TACH 
5SHW    UD2   BCHX  2  £
5T3G    TACH  LDCH  5  EXT+5(2)            [TAKE A CHARACTER FROM STRING
5TH6          TXU   5  SPACE(1) 
5W2Q          BCS      NSP                 [BRN IF NOT SPACE
5WGB          LDN   0  1
5X22          SMO      FX2  
5XFL          SBS   0  EXT+4               [REDUCE CHARACTER COUNT FOR SPACE
5X^=          BRN      SB4  
5YDW    NSP   DCH   5  6(3)                [STO A CHARACTER OF CENSORED STRING  
5YYG          BCHX  3  £
5^D6    SB4   BCT   4  UD2                 [GO TO GET NEXT CHARACTER
5^XQ          LDX   2  FX2  
62CB          STO   6  EXT+5(2) 
62X2          STO   7  EXT+6(2)            [STO CENSORED STRING 
63BL          CALL  7  SEARCHLEV
63W=    #SKI           K6PARAM>499-499  
64*W          TRACE    2,BEG
64TG          LDX   3  FX2  
65*6          LDX   1  2                   [MULTIBLOCK DATUM
65SQ          ADN   2  APARAFIR            [POINTER TO FIRST PARAMETER  
66#B          LDX   0  EXT+4(3)            [COUNT OF CHARACTERS IN STRING   
66S2          LDN   5  0
67?L          BRN      NUMCH
67R=    #   
68=W    WRONF STO   0  EXT+3(3)            [UPDATE NO. OF PARAMETER REQUIRED
68QG    WRONG LDX   3  FX2  
69=6          LDX   4  EXT+1(3)            [RELOAD CHARACTER COUNT  
69PQ          LDX   2  EXT(3)   
6=9B          LDX   0  EXT+4(3) 
6=P2    NCPAR ADN   4  7
6?8L          SRL   4  2                   [GET LENGTH OF PARAMETER +1 IN WORDS 
6?N=          ADX   2  4                   [UPDATE 2 TO POINT TO NEXT PARAMETER 
6#7W    NUMCH ADN   5  1                   [NO OF PARAMETERS LOOKED AT  
6#MG          LDX   4  0(2) 
6*76          SMO      FX1  
6*LQ          TXU   4  MINUS1   
6B6B          BCC      NOPARAM             [END IF NO MORE PARAMETERS   
6BL2          ANDN  4  #7777               [ISOLATE NO OF CHARACTERS
6C5L          STO   4  EXT+1(3)            [PRESERVE CHARACTER COUNT
6CK=          TXL   4  EXT+4(3) 
6D4W          BCS      NCPAR               [WRONG PARAMETER IF SHORTER THAN STRI
6DJG          STO   2  EXT(3)              [HOLD POINTER TO PT/N WORD   
6F46          SMO      FX2  
6FHQ          LDX   6  AWORK1   
6G3B          BNG   6  XCOMP               [ORDINARY PARABEG
6GH2          LDX   6  0(2) 
6H2L          BNG   6  WRONG               [DO NOT CHECK ACCESSED PARAMETER 
6HG=    XCOMP LDCH  6  1(2)                [GET A CHARACTER FROM PARAMETER  
6H^W          SMO      FX1  
6JFG          TXU   6  SPACE
6J^6          BCS      OK                  [BRN IF NOT SPACE
6KDQ          BCHX  2  £                   [IGNORE SPACE CHARACTER IN COMPARISON
6KYB          SBN   4  1                   [REDUCE CHARACTER COUNT FOR SPACE
6LD2          BRN      XCOMP
6LXL    OK    LDCH  7  EXT+5(3) 
6MC=          TXU   6  7
6MWW          BCS      WRONG               [BRN IF DISSIMILAR   
6NBG          BCHX  2  £
6NW6          BCHX  3  £
6P*Q          BCT   0  XCOMP               [BRN TO COMPARE ANOTHER CHARACTER
6PTB          LDX   3  FX2  
6Q*2          SBX   4  EXT+4(3)            [NO OF CHARS IN RESIDUAL PARAMETER   
6QSL          BPZ   4  OK1                 [BRN IF CORRECT PARAMETER
6R#=          BRN      WRONG               [PARAMETER HAS GOT THROUGH BACK DOOR 
6RRW    OK1 
6S?G          LDX   0  EXT+3(3)            [NO. OF 'CORRECT' PARAMETER REQUIRED 
6SR6          BCT   0  WRONF               [BRN IF NOT 'CORRECT' PARAMETER REQUI
6T=Q    #SKI  AJOBUSE<1$1   
6TQB    (   
6W=2          LDX   7  ANALEV(1)           [ANALYSIS LEVEL  
6WPL          BNZ   7  MULT3               [BRN NOT ALAS BLOCK  
6X9=    )   
6XNW          LDCT  7  #400 
6Y8G          SMO      EXT(3)   
6YN6          ORS   7  0                   [SET 'ACCESSED' IF ALAS BLOCK PARAMET
6^7Q    MULT3 STO   5  EXT+3(3)            [HOLD NO OF PARAMETER IN PARENT BLOCK
6^MB          BNZ   4  UNNUL               [BRN IF NOT NULL PARAMETER   
7272          LDX   2  1                   [MULTIBLOCK DATUM
72LL          BRN      NULLQ
736=    UNNUL   
73KW          STO   4  5
745G          ADN   5  11   
74K6          SRL   5  2                   [LENGTH OF PARAMETER +2 IN X5
754Q          SBS   1  EXT(3)              [RELATIVISE POINTER  
75JB          GETCORE  5,1  
7642          FINDCORE 3
76HL          NAME     3,CPB,CUNI          [NAME BLOCK  
773=          LDX   6  EXT+3(2) 
77GW          ORS   6  ATYPE(3)            [STO NO OF PARAMETER 
782G          LDX   5  EXT(2)   
78G6          CALL  7  SEARCHLEV           [FIND MULTI PARAMETER BLOCK  
78^Q          LDX   7  ANALEV(2)           [ANALYSIS LEVEL  
79FB          BZE   7  STJP3               [BRN IF ALAS BLOCK   
79^2          LDX   6  CPBPROGLEV(2)
7=DL    STJP3 STO   6  JPARNUM(3)          [PASS ON ALAS BLOCK SOURCE PARAMETER 
7=Y=          STO   4  ANUM(3)             [STORE CHARACTER COUNT   
7?CW          SMO      FX1  
7?XG          LDX   1  MASK 
7#C6          ANDS  1  ANUM(3)            [CLEAR SIGN BIT   
7#WQ          SMO      5
7*BB          LDN   6  1(2)                [ADDRESS OF PARAMETER IN MULTI BLOCK 
7*W2          SLC   6  2
7B*L          SMO      FX2  
7BT=          ADX   6  EXT+1               [EXT+1 - X4 REPRESENTS THE NO. OF
7C#W          SBX   6  4                   [CHARACTERS LOST DURING COMPARISON   
7CSG          SRC   6  2                   [HENCE X6 IS NOW POINTER TO 1ST CHAR 
7D#6          LDN   7  APARA(3)            [ADDRESS IN UNI BLOCK
7DRQ          SMO      FX2  
7F?B          LDX   0  EXT+7
7FR2          BNG   0  SPAR3               [BRN IF SPARABEG 
7G=L    XGNC3 LDX   1  6
7GQ=          LDCH  0  0(1)                [GET NEXT CHARACTER OF PARAMETER 
7H9W          SMO      FX1  
7HPG          TXU   0  SPACE
7J96          BCS      MVCH3               [BRN IF NOT SPACE
7JNQ          LDN   5  1
7K8B          SBS   5  ANUM(3)             [REDUCE NO.OF CHARS FOR SPACE
7KN2          BCHX  6  £
7L7L          BRN      XBCT3
7LM=    MVCH3 MVCH  6  1                   [PARABEG: STO A CHARACTER IN UNIBLOCK
7M6W    XBCT3 BCT   4  XGNC3               [GET NEXT CHAR   
7MLG          LDX   4  ANUM(3)  
7N66    SFILL                              [SPACEFILL LAST WORD OF PARAMETER
7NKQ          ANDN  4  3
7P5B          BZE   4  XEND3
7PK2          LDN   1  4
7Q4L          SBX   1  4                   [X1 HOLDS COUNT FOR SPACEFILLING 
7QJ=          SMO      FX1  
7R3W          LDN   6  WBLANK   
7RHG          MVCH  6  0(1)                [SPACEFILL TO COMPLETE WORD  
7S36    XEND3   
7SGQ    [              EVALUATE PARAMETER TYPE  
7T2B          PTYPE    CPB,CUNI,3,APARA,ANUM(3) 
7TG2    XEND4   
7T^L          UP
7WF=    [              REMOVE ANY LEADING SPACES
7WYW    SPAR3 LDX   2  6
7XDG          LDN   0  1
7XY6          BRN      SBEG3
7YCQ    SBEG1 SBS   0  ANUM(3)  
7YXB          BCT   4  SBEG2
7^C2          STOZ     ANUM(3)             [NULL PARAMETER  
7^WL          BRN      XEND4
82B=    SBEG2 BCHX  2  £
82TW    SBEG3 LDCH  5  0(2) 
83*G          SMO      FX1  
83T6          TXU   5  SPACE
84#Q          BCC      SBEG1               [IF SPACE,LOOK AGAIN 
84SB          LDX   6  2                   [NON-SPACE CHARACTER FOUND   
8548 ...      LDX   1  4                   [TRANSFER X4 TO X1 FOR CALL  
85#2 ...      CALL  4  XCHMOVE              [SPARABEG: STO PARAMETER IN UNIBLOCK
85HS ...      STO   1  4                   [RETURN X1 TO X4 
85RL          BRN      SFILL
86?=    #   
86QW    [              PARAPASS 
87=G    #   
87Q6    [              ON ENTRY EXT+2(2) = THE ANALYSIS LEVEL OF THE BLOCK CONTA
889Q    [              THE REQUIRED PARAMETER. EXT+7(2) = -1 IF SPARAPAS .  
88PB    QENTRY15
8992          NGN   0  1
89NL          STO   0  EXT+7(2) 
8=8=          BRN      ST1  
8=MW    QENTRY5 
8?7G          STOZ     EXT+7(2) 
8?M6    QENTRY25
8#6Q    ST1 
8#LB          CALL  7  SEARCHLEV           [FIND MULTI PARAMETER BLOCK  
8*62    PASS  LDX   5  APTBEPAR(2)  
8*KL    #SKI           K6PARAM>499-499  
8B5=          TRACE    2,PASS   
8BJW          SRL   56 12                  [POINTER TO PARAMETER IN X5  
8C4G          SRL   6  12                  [NUMBER OF PARAMETER IN X6   
8CJ6          SMO      FX2  
8D3Q          STO   6  EXT+3
8DHB          SMO      5
8F32          LDX   4  0(2)                [NUMBER OF CHARACTERS IN PARAMETER   
8FGL          SMO      FX1  
8G2=          TXU   4  MINUS1   
8GFW          BCC      NOPARAM             [BRN IF NO MORE PARAMETERS   
8G^G    #SKI  AJOBUSE<1$1   
8HF6    (   
8HYQ          LDX   7  ANALEV(2)
8JDB          BNZ   7  MULT2
8JY2    )   
8KCL          LDCT  7  #400 
8KX=          SMO      5
8LBW          ORS   7  0(2)                [INDICATE 'ACCESSED' IN PARAMETER TYP
8LWG          LDXC  4  4                   [REMOVE 'ACCESSED' BIT IF PRESENT
8MB6    MULT2 BZE   4  NULLP               [BRN IF NULL PARAMETER   
8MTQ          ANDN  4  #7777               [EXTRACT NO. OF CHARACTERS IN PARAMET
8N*B          ADN   4  11   
8NT2          SRL   4  2                   [SIZE OF PARAMETER IN WORDS  
8P#L          STO   2  3                   [STORE ADDRESS OF MULTI BLOCK
8PS=          PHOTO    7
8Q?W          GETCORE  4,1  
8QRG          FINDCORE 1
8R?6          LDX   2  3
8RQQ          LDX   3  1
8S=B          NAME     3,CPB,CUNI   
8SQ2          ORS   6  ATYPE(3)            [STO NO. OF PARAMETER IN PARENT BLOCK
8T9L          TESTMOVE 7,NSER2  
8TP=          CALL  7  SEARCHLEV           [FIND MULTI PARAMETER BLOCK IF MOVED 
8W8W    NSER2 LDX   7  ANALEV(2)
8WNG          BZE   7  ZAL2                [BRN IF ALAS BLOCK   
8X86          LDX   7  CPBPROGLEV(2)
8XMQ          BRN      STJP2
8Y7B    ZAL2  SMO      FX2  
8YM2          LDX   7  EXT+3
8^6L    STJP2 STO   7  JPARNUM(3)          [SET NO. OF ALAS PAR. THIS PAR. DERIV
8^L=          ADX   4  5                   [UPDATE POINTER  
925W          SBN   4  1
92KG          ADN   6  1                   [UPDATE PARAMETER NUMBER 
9356          STO   6  APTBEPAR(2)         [STO NO. OF NEXT PARAMETER TO BE PASS
93JQ          SLL   4  12   
944B          ORS   4  APTBEPAR(2)         [STO POINTER TO NEXT PARAMETER TO BE 
94J2          SMO      5
953L          LDX   1  0(2)                [SIZE OF PARAMETER   
95H=          ANDN  1  #7777
962W          SMO      5
96GG          LDN   6  0(2)                [ADDRESS OF PARAMETER IN MULTI BLOCK 
9726          LDN   7  ANUM(3)             [ADDRESS IN UNI BLOCK
97FQ          MVCH  6  4                   [STO PT/N WORD   
97^B          SMO      FX2  
98F2          LDX   0  EXT+7
98YL          BNG   0  SPAR2               [BRN IF SPARAPAS 
99D=          LDX   0  1                   [NO OF CHARS TO BE TRANSFERRED   
99XW    XGNC2 LDX   1  6                   [ADDRESS OF NEXT CHAR IN MODIFIER
9=CG          LDCH  4  0(1)                [LOAD NEXT CHAR  
9=X6          SMO      FX1  
9?BQ          TXU   4  SPACE
9?WB          BCS      MVCH2               [BRN NOT SPACE   
9#B2          LDN   5  1
9#TL          SBS   5  ANUM(3)             [SPACE;REDUCE NO.OF CHARS
9**=          SMO      FX2  
9*SW          SBS   5  EXT+7               [SET EXT+7 -VE IF SPACE FOUND (JOB)  
9B#G          BCHX  6  £
9BS6          BRN      XBCT2
9C?Q    MVCH2 MVCH  6  1                   [STO A CHAR IN UNIBLOCK  
9CRB    XBCT2 BCT   0  XGNC2               [GET NEXT CHAR   
9D?2          LDX   1  ANUM(3)  
9DQL          ANDN  1  3
9F== ...      BZE   1  XCSB                [J IF PARAMETER IS EXACT NO. OF WORDS
9FPW          SBN   1  4
9G9G          NGX   1  1                   [SPACE COUNT IN X1   
9GP6          SMO      FX1  
9H8Q          LDN   6  WBLANK   
9HNB          MVCH  6  0(1)                [SPACEFILL LAST WORD OF PARAMETER
9J82 ...      BRN      XCSB 
9JML    SPAR2 SMO      FX1  
9K7=          LDX   0  WBLANK   
9KLW          LDX   4  1
9L6G          ADN   4  11   
9LL6          SRL   4  2                   [SIZE OF PARAMETER IN WORDS +2   
9M5Q ...      BRN      XCHMV
9QH6    #   
9R2Q    [     PARUNACC AND SPARUNAC MACROS. TO GET THE FIRST UNACCESSED 
9RGB    [     PARAMETER AND UPDATE THE PARAPASS POINTER TO THE NEXT UNACCESSED  
9S22    [     PARAMETER.
9SFL    QENTRY19                           [ SPARUNAC   
9S^=          NGN   0  1
9TDW          STO   0  EXT+7(2) 
9TYG          BRN      STACC
9WD6    QENTRY20                           [ PARUNACC   
9WXQ          STOZ     EXT+7(2) 
9XCB    STACC   
9XX2          MHUNTW   3,CPB,CALAS  
9YBL          LDX   7  APTBEPAR(3)  
9YW=          LDN   6  0                   [NUMBER OF PARAMETER 
9^*W          SRC   67 12   
9^TG          SRL   6  12                  [POINTER TO PARAMETER
=2*6    XLOP  SMO      7                   [LOOK DOWN PARAMETERS IN CALAS BLOCK 
=2SQ          LDX   4  0(3)                [FOR AN UNACCESSED PARAMETER 
=3#B          TXU   4  MINUS1(1)
=3S2          BCS      XCO  
=4?L          STOZ     EXT+2(2) 
=4R=          SLL   7  12   
=5=W          ORX   6  7
=5QG          STO   6  APTBEPAR(3)         [NOWT BUT ACCESSED   
=6=6          BRN      NOPARAM             [PARAMETERS  
=6PQ    XCO   BPZ   4  UNACC
=79B          ANDN  4  #7777
=7P2          ADN   4  7
=88L          SRL   4  2
=8N=          ADX   7  4
=97W          ADN   6  1
=9MG          BRN      XLOP 
==76    [              UNACCESSED PARAMETER FOUND   
==LQ    UNACC ANDN  4  #7777
=?6B          LDX   5  4
=?L2          ADN   5  11   
=#5L          SRL   5  2
=#K=          SETUPCORE    5,3,CPB,CUNI 
=*4W          STO   6  JPARNUM(3)          [PUT PARAMETER NUMBER AWAY   
=*JG          ORS   6  ATYPE(3) 
=B46          MHUNTW   2,CPB,CALAS  
=BHQ          LDX   6  4
=C3B          LDX   4  2
=CH2          LDX   5  3
=D2L          ADX   4  7
=DG=          ADN   5  ANUM 
=D^W          MVCH  4  4                   [MOVE ANUM ACROSS
=FFG          BZE   6  XPS  
=F^6          SMO      FX2  
=GDQ          LDX   0  EXT+7
=GYB          BNG   0  SPR2                [J IF SPARUNAC   
=HD2    XLP2  LDX   1  4
=HXL          LDCH  0  0(1)                [MOVE CHARACTERS ACROSS IGNORING 
=JC=          SMO      FX1                 [SPACES  
=JWW          TXU   0  SPACE
=KBG          BCS      MV   
=KW6          LDN   0  1
=L*Q          SBS   0  ANUM(3)  
=LTB    [              TO NOTIFY JOB-TYPE COMMANDS THAT THERE ARE SPACES
=M*2          SMO      FX2  
=MSL          SBS   0  EXT+7
=N#=          BCHX  4  £
=NRW          BRN      XBT  
=P?G    MV    MVCH  4  1
=PR6    XBT   BCT   6  XLP2 
=Q=Q          BRN      SFIL 
=QQB    SPR2  CHARMOVE 4,6  
=R=2    SFIL  LDX   1  ANUM(3)             [SPACEFILL LAST WORD 
=RPL          ANDN  1  3
=S9=          BZE   1  XPS  
=SNW          SBN   1  4
=T8G          NGX   1  1
=TN6          LDN   4  ACES 
=W7Q          MVCH  4  0(1) 
=WMB    XPS 
=X72          LDX   1  FX1  
=XLL          LDX   0  GSIGN
=Y6=          SMO      7
=YKW          ORS   0  0(2) 
=^5G          LDX   6  JPARNUM(3)   
=^K6          SMO   7   
?24Q          LDX   0  0(2) 
?2JB    XRET  ANDN  0  #7777
?342          ADN   0  7
?3HL          SRL   0  2
?43=          ADX   7  0
?4GW          ADN   6  1
?52G          SMO      7                   [LOOP LOOKING FOR NEXT UNACCESSED
?5G6          LDX   0  0(2)                [PARAMETER   
?5^Q          TXU   0  MINUS1(1)
?6FB          BCC      XPNT 
?6^2          BNG   0  XRET 
?7DL    XPNT
?7Y=          SLL   7  12   
?8CW          ORX   6  7
?8XG          STO   6  APTBEPAR(2)  
?9C6    XST   UP
?9WQ    #   
?=BB    [              PARAFREE 
?=W2    #   
??*L    [              ON ENTRY EXT+3(2) HOLDS THE ANALYSIS LEVEL INDICATING THE
??T=    [              HIGHEST LEVEL OF CPB,CMULTI BLOCK TO BE FREED
?##W    QENTRY7 
?#SG          NGN   7  1
?*#6          STO   7  EXT+2(2) 
?*RQ          BRN      SRCH 
?B?B    MFREE FREECORE 2                   [FREE TYPE CMULTI BLOCK  
?BR2    SRCH  CALL  7  SEARCHLEV           [FIND FIRST MULTI PARAMETER BLOCK
?C=L          LDX   7  ANALEV(2)
?CQ=          SMO      FX2  
?D9W          TXL   7  EXT+3               [COMPARE WITH SPECIFIED ANALYSIS LEVE
?DPG          BCS      XGOUP
?F96          BNZ   7  MFREE               [BRANCH IF NOT A TYPE CALAS BLOCK
?FNQ    XGOUP UP
?G8B    #   
?GN2    [              PARATYPE 
?H7L    #   
?HM=    [              ON ENTRY EXT+3(2) HOLDS THE ACCUMULATOR WHERE THE TYPE IS
?J6W    [              TO BE STORED,AND EXT+2(2) THE ANALYSIS LEVEL OF THE MULTI
?JLG    [              BLOCK DERIVED FROM THE PARAMETER OF WHICH TYPE IS REQUEST
?K66    QENTRY8 
?KKQ          LDX   4  EXT+3(2)            [ACCUMULATOR WHERE TYPE TO BE STORED 
?L5B          LDX   7  EXT+2(2)            [ANALYSIS LEVEL  
?LK2          BZE   7  OKAY1
?M4L          BNG   7  OKAY1
?MJ=          HUNT     2,CPB,CMULTI 
?N3W          BNG   2  UNOK1               [NO MULTIBLOCK   
?NHG          TXL   7  ANALEV(2)
?P36          BCS      OKAY1
?PGQ    UNOK1 NGN   7  1                   [SPECIFIED ANALYSIS LWEL  TOO LARGE  
?Q2B          BRN      TRACE
?QG2    OKAY1 CALL  7  SEARCHLEV
?Q^L          LDX   7  APARANUM(2)  
?RF=          BNG   7  TRACE               [NON EXISTENT PARAMETER  
?RYW          LDN   7  #7777
?SDG          ANDX  7  ATYPE(2)            [TYPE OF PARENT PARAMETER
?SY6    TRACE   
?TCQ    #SKI           K6PARAM>499-499  
?TXB          TRACE    2,TYPE   
?WC2          FINDLINK 3                   [LOCATE LINE BLOCK   
?WWL          SBN   4  3
?XB=          SMO      4
?XTW          STO   7  ACC3(3)             [STORE PARAMETER TYPE IN SPECIFIED AC
?Y*G          UP
?YT6    #   
?^#Q    [              PARANUMB 
?^SB    #   
#2#2    [              ON ENTRY,EXT+2(2) HOLDS AN ANALYSIS LEVEL. THE NUMBER OF.
#2RL    [              PARAMETERS IN THE BLOCK CORRESPONDING TO THIS ANALYSIS LE
#3?=    [              IS STORED IN THE ACCUMULATOR SPECIFIED IN EXT+3(2) . 
#3QW    QENTRY9 
#4=G          LDX   4  EXT+3(2)            [ACCUMULATOR WHERE ANSWER TO BE STORE
#4Q6          LDX   7  EXT+2(2)            [ANALYSIS LEVEL  
#59Q          BZE   7  OK2  
#5PB          BNG   7  OK2  
#692          HUNT     2,CPB,CMULTI 
#6NL          BNG   2  UNOK2
#78=          TXL   7  ANALEV(2)
#7MW          BCS      OK2                 [SPECIFIED ANALYSIS LEVEL OK 
#87G          TXU   7  ANALEV(2)
#8M6          BCC      OK2+1
#96Q    UNOK2 NGN   7  1
#9LB          BRN      TPACE1   
#=62    OK2   CALL  7  SEARCHLEV
#=KL          LDX   7  APARANUM(2)         [NUMBER OF PARAMETERS
#?5=    TPACE1  
#?JW    #SKI           K6PARAM>499-499  
##4G          TRACE    2,NUMB   
##J6    STORE FINDLINK 3                   [LOCATE LINK BLOCK   
#*3Q          SBN   4  3
#*HB          SMO      4
#B32          STO   7  ACC3(3)             [STORE NUMBER OF PARAMETERS IN SPECIF
#BGL          UP
D^26          MENDAREA 1023-0?,K99PARAM 
D^FQ    #END
^^^^ ...77146016000300000000
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1