User Tools

Site Tools


cdc:nos2.source:opl.opl871:common:compmac

Common COMPMAC

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.compmac +++|          CTEXT  COMPMAC - PP SYSTEM MACROS.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00002  M01S00001.281l803 +++| COMPMAC  SPACE  4,10
00003  M01S00002.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00004  M00S00002.compmac +++| COMPMAC  SPACE  4,10
00005  M00S00003.compmac +++|***       COMPMAC - PP SYSTEM MACROS.
00006  M00S00004.compmac +++|*         G. R. MANSFIELD.  09/27/69.
00007  M00S00005.compmac +++|*         W. E. GOEBEL.      78/07/12.
00008  M00S00006.compmac +++| COMPMAC  SPACE  4,10
00009  M00S00007.compmac +++|***              COMPMAC DEFINES SEVERAL MACROS WHICH ARE USED IN THE
00010  M00S00008.compmac +++|*         SYSTEM PP PACKAGES.
00011  M00S00009.compmac +++| COMPMAC  SPACE  4,10
00012  M00S00010.compmac +++|***       SCRATCH SYMBOLS.
00013  M00S00011.compmac +++|*
00014  M00S00012.compmac +++|*
00015  M00S00013.compmac +++|*         THE FOLLOWING SYMBOLS ARE USED IN MACROS FOR SCRATCH.
00016  M00S00014.compmac +++|*         .1, .2, .3, .4, .5.
00017  M00S00015.compmac +++|
00018  M00S00016.compmac +++|
00019  M00S00017.compmac +++|          NOREF  .1,.2,.3,.4
00020  M00S00018.compmac +++| MACREF   SPACE  4,10
00021  M00S00019.compmac +++|**        MACREF - GENERATE MACRO SYMBOLIC REFERENCE TABLE LISTING.
00022  M00S00020.compmac +++|*
00023  M00S00021.compmac +++|*         CAUSES THE MACRO NAME TO BE LISTED IN THE SYMBOLIC
00024  M00S00022.compmac +++|*         REFERENCE TABLE UNDER THE QUALIFIER *MACRO$*.
00025  M00S00023.compmac +++|*
00026  M00S00024.compmac +++|*         MACREF MNAME
00027  M00S00025.compmac +++|*                MNAME    MACRO NAME FOR REFERENCE TABLE.
00028  M00S00026.compmac +++|
00029  M00S00027.compmac +++|
00030  M00S00028.compmac +++|          PURGMAC MACREF
00031  M00S00029.compmac +++|
00032  M00S00030.compmac +++| MACREF   MACRO  N
00033  M00S00031.compmac +++|  QUAL MACRO$
00034  M00S00032.compmac +++|N SET *
00035  M00S00033.compmac +++|  QUAL *
00036  M00S00034.compmac +++|  ENDM
00037  M00S00035.compmac +++| ADK      SPACE  4,15
00038  M00S00036.compmac +++|***       ADK - ADD CONSTANT TO (A).
00039  M00S00037.compmac +++|*
00040  M00S00038.compmac +++|*         GENERATES EITHER AN *ADC*, *ADN*, OR *SBN* INSTRUCTION,
00041  M00S00039.compmac +++|*         DEPENDING UPON THE VALUE OF THE OPERAND.  IF THE VALUE
00042  M00S00040.compmac +++|*         OF THE OPERAND REDUCES TO ZERO, NO INSTRUCTION WILL BE
00043  M00S00041.compmac +++|*         GENERATED.
00044  M00S00042.compmac +++|*
00045  M00S00043.compmac +++|*         ADK    K
00046  M00S00044.compmac +++|*
00047  M00S00045.compmac +++|*         ENTRY  K = CONSTANT TO BE ADDED TO (A).
00048  M00S00046.compmac +++|*
00049  M00S00047.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
00050  M00S00048.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
00051  M00S00049.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
00052  M00S00050.compmac +++|
00053  M00S00051.compmac +++|
00054  M00S00052.compmac +++|          PURGMAC  ADK
00055  M00S00053.compmac +++|
00056  M00S00054.compmac +++| ADK      MACRO K
00057  M00S00055.compmac +++|  IF DEF,K,12D
00058  M00S00056.compmac +++| .2 SET K
00059  M00S00057.compmac +++|  IFNE K,0,11D
00060  M00S00058.compmac +++|  IFMI K,1
00061  M00S00059.compmac +++| .2 SET 777777B+K
00062  M00S00060.compmac +++|  IFLE .2,77B,3
00063  M00S00061.compmac +++|  IFNE .2,0,7
00064  M00S00062.compmac +++|  ADN .2
00065  M00S00063.compmac +++|  SKIP 5
00066  M00S00064.compmac +++|  IFGE .2,777700B,3
00067  M00S00065.compmac +++|  IFNE .2,777777B,1
00068  M00S00066.compmac +++|  SBN 777777B-.2
00069  M00S00067.compmac +++|  SKIP 1
00070  M00S00068.compmac +++|  ADC K
00071  M00S00069.compmac +++| ADK      ENDM
00072  M00S00070.compmac +++| BITSET   SPACE  4,10
00073  M00S00071.compmac +++|***       BITSET - GENERATE BIT CONSTANT.
00074  M00S00072.compmac +++|*
00075  M00S00073.compmac +++|*
00076  M00S00074.compmac +++|*NAME     BITSET (P1,P2,...,PN)
00077  M00S00075.compmac +++|*         ENTRY  *NAME* = NAME OF BIT CONSTANT.
00078  M00S00076.compmac +++|*                (PN) = BITS TO SET.
00079  M00S00077.compmac +++|
00080  M00S00078.compmac +++|
00081  M00S00079.compmac +++|          PURGMAC  BITSET
00082  M00S00080.compmac +++|
00083  M00S00081.compmac +++|          MACRO  BITSET,N,P
00084  M00S00082.compmac +++|N SET 0
00085  M00S00083.compmac +++|  IRP P
00086  M00S00084.compmac +++|.1 DECMIC P
00087  M00S00085.compmac +++|N SET N+1S".1"
00088  M00S00086.compmac +++|  IRP
00089  M00S00087.compmac +++|  BSS     0
00090  M00S00088.compmac +++|  ENDM
00091  M00S00089.compmac +++|          SPACE  4,10
00092  M00S00090.compmac +++|***       DEFINE ABSOLUTE MEMORY INSTRUCTIONS.
00093  M00S00091.compmac +++|*
00094  M00S00092.compmac +++|*
00095  M00S00093.compmac +++|*         LJP    ADDRESS
00096  M00S00094.compmac +++|*         RJP    ADDRESS
00097  M00S00095.compmac +++|*         LDP    ADDRESS
00098  M00S00096.compmac +++|*         ADP    ADDRESS
00099  M00S00097.compmac +++|*         SBP    ADDRESS
00100  M00S00098.compmac +++|*         LMP    ADDRESS
00101  M00S00099.compmac +++|*         STP    ADDRESS
00102  M00S00100.compmac +++|*         RAP    ADDRESS
00103  M00S00101.compmac +++|*         AOP    ADDRESS
00104  M00S00102.compmac +++|*         SOP    ADDRESS
00105  M00S00103.compmac +++|*
00106  M00S00104.compmac +++|*         DEFINE ABSOLUTE MEMORY INSTRUCTION FOR USE BY OTHER MACROS.
00107  M00S00105.compmac +++|*         ENTRY  (ADDRESS) = ABSOLUTE MEMORY ADDRESS.
00108  M00S00106.compmac +++|
00109  M00S00107.compmac +++|
00110  M00S00108.compmac +++| LJP      PPOP   5,0100B
00111  M00S00109.compmac +++| RJP      PPOP   5,0200B
00112  M00S00110.compmac +++| LDP      PPOP   5,5000B
00113  M00S00111.compmac +++| ADP      PPOP   5,5100B
00114  M00S00112.compmac +++| SBP      PPOP   5,5200B
00115  M00S00113.compmac +++| LMP      PPOP   5,5300B
00116  M00S00114.compmac +++| STP      PPOP   5,5400B
00117  M00S00115.compmac +++| RAP      PPOP   5,5500B
00118  M00S00116.compmac +++| AOP      PPOP   5,5600B
00119  M00S00117.compmac +++| SOP      PPOP   5,5700B
00120  M00S00118.compmac +++| LDBC     SPACE  4,10
00121  M00S00119.compmac +++|***       LDBC - LOAD (A) WITH BIT CONSTANT.
00122  M00S00120.compmac +++|*
00123  M00S00121.compmac +++|*
00124  M00S00122.compmac +++|*         LDBC   (P1,P2,...,PN)
00125  M00S00123.compmac +++|*         LOAD (A) WITH A CONSTANT CONTAINING BITS PN.
00126  M00S00124.compmac +++|
00127  M00S00125.compmac +++|
00128  M00S00126.compmac +++|          PURGMAC  LDBC
00129  M00S00127.compmac +++|
00130  M00S00128.compmac +++| LDBC     MACRO  P
00131  M00S00129.compmac +++|  .1 (P)
00132  M00S00130.compmac +++|  LDC .1
00133  M00S00131.compmac +++|  ENDM
00134  M00S00132.compmac +++| ADBC     SPACE  4,10
00135  M00S00133.compmac +++|***       ADBC - ADD BIT CONSTANT TO (A).
00136  M00S00134.compmac +++|*
00137  M00S00135.compmac +++|*
00138  M00S00136.compmac +++|*         ADBC   (P1,P2,...,PN)
00139  M00S00137.compmac +++|*         ADD A CONSTANT CONTAINING BITS PN TO (A).
00140  M00S00138.compmac +++|
00141  M00S00139.compmac +++|
00142  M00S00140.compmac +++|          PURGMAC  ADBC
00143  M00S00141.compmac +++|
00144  M00S00142.compmac +++| ADBC     MACRO  P
00145  M00S00143.compmac +++|  .1 (P)
00146  M00S00144.compmac +++|  ADC .1
00147  M00S00145.compmac +++|  ENDM
00148  M00S00146.compmac +++| LPBC     SPACE  4,10
00149  M00S00147.compmac +++|***       LPBC - ADD BIT CONSTANT TO (A).
00150  M00S00148.compmac +++|*
00151  M00S00149.compmac +++|*
00152  M00S00150.compmac +++|*         LPBC   (P1,P2,...,PN)
00153  M00S00151.compmac +++|*         LOGICAL PRODUCT OF (A) AND CONSTANT CONTAINING BITS PN.
00154  M00S00152.compmac +++|
00155  M00S00153.compmac +++|
00156  M00S00154.compmac +++|          PURGMAC  LPBC
00157  M00S00155.compmac +++|
00158  M00S00156.compmac +++| LPBC     MACRO  P
00159  M00S00157.compmac +++|  .1 (P)
00160  M00S00158.compmac +++|  LPC .1
00161  M00S00159.compmac +++|  ENDM
00162  M00S00160.compmac +++| LMBC     SPACE  4,10
00163  M00S00161.compmac +++|***       LMBC - ADD BIT CONSTANT TO (A).
00164  M00S00162.compmac +++|*
00165  M00S00163.compmac +++|*
00166  M00S00164.compmac +++|*         LMBC   (P1,P2,...,PN)
00167  M00S00165.compmac +++|*         LOGICAL DIFFERENCE OF (A) AND CONSTANT CONTAINING BITS PN.
00168  M00S00166.compmac +++|
00169  M00S00167.compmac +++|
00170  M00S00168.compmac +++|          PURGMAC  LMBC
00171  M00S00169.compmac +++|
00172  M00S00170.compmac +++| LMBC     MACRO  P
00173  M00S00171.compmac +++|  .1 (P)
00174  M00S00172.compmac +++|  LMC .1
00175  M00S00173.compmac +++|  ENDM
00176  M00S00174.compmac +++| SCBN     SPACE  4,10
00177  M00S00175.compmac +++|****      SCBN - CLEAR (A) WITH BIT CONSTANT.
00178  M00S00176.compmac +++|*
00179  M00S00177.compmac +++|*
00180  M00S00178.compmac +++|*         SCBN   (P1, P2,...,PN)
00181  M00S00179.compmac +++|*         SELECTIVE CLEAR (A) WITH A CONSTANT CONTAINING BITS PN.
00182  M00S00180.compmac +++|
00183  M00S00181.compmac +++|
00184  M00S00182.compmac +++|          PURGMAC SCBN
00185  M00S00183.compmac +++|
00186  M00S00184.compmac +++| SCBN     MACRO  P
00187  M00S00185.compmac +++|  .1 (P)
00188  M00S00186.compmac +++|  SCN .1
00189  M00S00187.compmac +++| SCBN     ENDM
00190  M00S00188.compmac +++| BLI      SPACE  4,20
00191  M00S00189.compmac +++|***       BLI - BUILD LONG INSTRUCTION.
00192  M00S00190.compmac +++|*
00193  M00S00191.compmac +++|*
00194  M00S00192.compmac +++|*TAG      BLI    D
00195  M00S00193.compmac +++|*
00196  M00S00194.compmac +++|*         ENTRY  (T3) = ADDRESS AT WHICH TO STORE THE LONG INSTRUCTION.
00197  M00S00195.compmac +++|*                IF D = *T3*, MODIFY THE INSTRUCTION AT (T3).
00198  M00S00196.compmac +++|*                IF D IS OMITTED, (A) = THE INSTRUCTION TO BE STORED AT
00199  M00S00197.compmac +++|*                   (T3).
00200  M00S00198.compmac +++|*
00201  M00S00199.compmac +++|*         EXAMPLE -
00202  M00S00200.compmac +++|*
00203  M00S00201.compmac +++|*         LDC    TAGA
00204  M00S00202.compmac +++|*         STD    T3
00205  M00S00203.compmac +++|*         BLI    T3          ADD LONG BIT TO INSTRUCTION AT *TAGA*
00206  M00S00204.compmac +++|*
00207  M00S00205.compmac +++|*         CALLS  .EST, .BLI.
00208  M00S00206.compmac +++|*
00209  M00S00207.compmac +++|*         NOTE - *BLI* CALLS THE *.BLI* ENTRY POINT IN *PPR*.  WHEN
00210  M00S00208.compmac +++|*         *PPR* IS LOADED INTO A CONCURRENT PP (CPP), AN *STIL*
00211  M00S00209.compmac +++|*         INSTRUCTION IS STORED AT *.BLI*.  THE *BLI* MACRO JUMPS TO
00212  M00S00210.compmac +++|*         THIS INSTRUCTION TO STORE THE DESIRED LONG INSTRUCTION.  TO
00213  M00S00211.compmac +++|*         GET BACK, *BLI* USES THE *LJM* THAT ACTS AS THE ENTRY/EXIT
00214  M00S00212.compmac +++|*         POINT FOR THE *.EST* SUBROUTINE IN *PPR*.  TO INSURE THAT
00215  M00S00213.compmac +++|*         CONTROL RETURNS TO THE MACRO GENERATED CODE, *BLI* FIRST
00216  M00S00214.compmac +++|*         CALLS *.EST* TO PRESET THE *LJM*.
00217  M00S00215.compmac +++|
00218  M00S00216.compmac +++|
00219  M00S00217.compmac +++|          PURGMAC  BLI
00220  M00S00218.compmac +++|
00221  M00S00219.compmac +++| BLI      MACRO  D
00222  M00S00220.compmac +++|  LOCAL A,B
00223  M00S00221.compmac +++|  IFC NE,/D//,2
00224  M00S00222.compmac +++|  IFC NE,/D/T3/,1
00225  M00S00223.compmac +++|  ERR THE VARIABLE FIELD MUST BE NULL OR CONTAIN *T3*
00226  M00S00224.compmac +++|  IFC EQ,/D//,1
00227  M00S00225.compmac +++|  STM A
00228  M00S00226.compmac +++|  LDC 400000B/ESTE
00229  M00S00227.compmac +++|  RJM .EST
00230  M00S00228.compmac +++|  PJN B
00231  M00S00229.compmac +++|  LDC 1S15+**
00232  M00S00230.compmac +++| A EQU *-1
00233  M00S00231.compmac +++|  IFC EQ,/D/T3/,1
00234  M00S00232.compmac +++|  LMI T3
00235  M00S00233.compmac +++|  LJM .BLI
00236  M00S00234.compmac +++| B EQU *
00237  M00S00235.compmac +++| BLI      ENDM
Line S00236 Modification History
M01 (Removed by) ns2483
Seq #  *Modification Id* Act 
----------------------------+
00238  M01S00236.ns2483  ---| BSSN     SPACE  4,20
00239  M01S00237.ns2483  ---|***       BSSN - SEQUENTIAL TAG DEFINITION WITHOUT RESERVING SPACE.
00240  M01S00238.ns2483  ---|*
00241  M01S00239.ns2483  ---|*
00242  M01S00240.ns2483  ---|* BEGIN   BSSN   A           BEGIN TAG DEFINITION SEQUENCE
00243  M01S00241.ns2483  ---|* TAG1    BSSN   N
00244  M01S00242.ns2483  ---|* .       .      .
00245  M01S00243.ns2483  ---|* .       .      .
00246  M01S00244.ns2483  ---|*
00247  M01S00245.ns2483  ---|* TAGN    BSSN   N
00248  M01S00246.ns2483  ---|* END     BSSN               END TAG DEFINITION SEQUENCE
00249  M01S00247.ns2483  ---|*
00250  M01S00248.ns2483  ---|*         TO GET THE TAG VALUES PRINTED ON A LISTING A *LIST G*
00251  M01S00249.ns2483  ---|*         CARD MUST BE PRESENT BEFORE THIS MACRO IS CALLED.
00252  M01S00250.ns2483  ---|*
00253  M01S00251.ns2483  ---|*                A = NUMBER TO START TAG DEFINITION AT.
00254  M01S00252.ns2483  ---|*                N = NUMBER OF LOCATIONS RESERVED TO THIS TAG.
00255  M01S00253.ns2483  ---|
00256  M01S00254.ns2483  ---|
00257  M01S00255.ns2483  ---|          PURGMAC  BSSN
00258  M01S00256.ns2483  ---|          MACRO  BSSN,T,N
00259  M01S00257.ns2483  ---|.1 IFC EQ,*T*BEGIN*
00260  M01S00258.ns2483  ---|.2 IFC NE,$N$$
00261  M01S00259.ns2483  ---|  LOC N
00262  M01S00260.ns2483  ---|.2 ELSE 1
00263  M01S00261.ns2483  ---|  LOC 0
00264  M01S00262.ns2483  ---|.3 SKIP
00265  M01S00263.ns2483  ---|.1 ENDIF
00266  M01S00264.ns2483  ---|.2 IFC EQ,*T*END*
00267  M01S00265.ns2483  ---|  LOC *O
00268  M01S00266.ns2483  ---|.3 SKIP
00269  M01S00267.ns2483  ---|.2 ENDIF
00270  M01S00268.ns2483  ---|  IFC NE,*T**,1
00271  M01S00269.ns2483  ---|T EQU *
00272  M01S00270.ns2483  ---|  LOC *+N
00273  M01S00271.ns2483  ---|.3 ENDIF
00274  M01S00272.ns2483  ---|  ENDM
00275  M01S00273.ns2483  ---| BSSB     SPACE  4,20
00276  M01S00274.ns2483  ---|***       BSSB - BACKWARD SEQUENTIAL SYMBOL DEFINITION WITHOUT
00277  M01S00275.ns2483  ---|*                RESERVING SPACE.
00278  M01S00276.ns2483  ---|*
00279  M01S00277.ns2483  ---|*
00280  M01S00278.ns2483  ---|* BEGIN   BSSB   A           BEGIN SYMBOL DEFINITION SEQUENCE
00281  M01S00279.ns2483  ---|* TAG1    BSSB   N
00282  M01S00280.ns2483  ---|* .       .      .
00283  M01S00281.ns2483  ---|* .       .      .
00284  M01S00282.ns2483  ---|*
00285  M01S00283.ns2483  ---|* TAGN    BSSB   N
00286  M01S00284.ns2483  ---|* END     BSSB               END SYMBOL DEFINITION SEQUENCE
00287  M01S00285.ns2483  ---|*
00288  M01S00286.ns2483  ---|*         TO GET THE SYMBOL VALUES PRINTED ON A LISTING A *LIST G*
00289  M01S00287.ns2483  ---|*         STATEMENT MUST BE PRESENT BEFORE THIS MACRO IS CALLED.
00290  M01S00288.ns2483  ---|*
00291  M01S00289.ns2483  ---|*                A = VALUE AT WHICH TO START DEFINITION SEQUENCE.
00292  M01S00290.ns2483  ---|*                N = NUMBER OF LOCATIONS RESERVED TO THIS SYMBOL.
00293  M01S00291.ns2483  ---|
00294  M01S00292.ns2483  ---|
00295  M01S00293.ns2483  ---|          PURGMAC  BSSB
00296  M01S00294.ns2483  ---|          MACRO  BSSB,S,N
00297  M01S00295.ns2483  ---|.1 IFC EQ,*S*BEGIN*
00298  M01S00296.ns2483  ---|.2 IFC NE,$N$$
00299  M01S00297.ns2483  ---|  LOC N
00300  M01S00298.ns2483  ---|.2 ELSE 1
00301  M01S00299.ns2483  ---|  LOC 0
00302  M01S00300.ns2483  ---|.3 SKIP
00303  M01S00301.ns2483  ---|.1 ENDIF
00304  M01S00302.ns2483  ---|.2 IFC EQ,*S*END*
00305  M01S00303.ns2483  ---|  LOC *O
00306  M01S00304.ns2483  ---|.3 SKIP
00307  M01S00305.ns2483  ---|.2 ENDIF
00308  M01S00306.ns2483  ---|   IFC NE,*S**,1
00309  M01S00307.ns2483  ---|S EQU *
00310  M01S00308.ns2483  ---|  LOC *-N
00311  M01S00309.ns2483  ---|.3 ENDIF
00312  M01S00310.ns2483  ---|  ENDM
Line S00001 Modification History
M01 (Added by) ns2483
Seq #  *Modification Id* Act 
----------------------------+
00313  M01S00001.ns2483  +++| BSSB     SPACE  4,25
00314  M01S00002.ns2483  +++|***       BSSB - BACKWARD SEQUENTIAL SYMBOL DEFINITION WITHOUT
00315  M01S00003.ns2483  +++|*                RESERVING SPACE.
00316  M01S00004.ns2483  +++|*
00317  M01S00005.ns2483  +++|*
00318  M01S00006.ns2483  +++|* BEGIN   BSSB   A           BEGIN SYMBOL DEFINITION SEQUENCE
00319  M01S00007.ns2483  +++|* TAG1    BSSB   N
00320  M01S00008.ns2483  +++|* .       .      .
00321  M01S00009.ns2483  +++|* .       .      .
00322  M01S00010.ns2483  +++|*
00323  M01S00011.ns2483  +++|* TAGN    BSSB   N
00324  M01S00012.ns2483  +++|* END     BSSB               END SYMBOL DEFINITION SEQUENCE
00325  M01S00013.ns2483  +++|*
00326  M01S00014.ns2483  +++|*         A = VALUE AT WHICH TO START DEFINITION SEQUENCE.
00327  M01S00015.ns2483  +++|*         N = NUMBER OF LOCATIONS RESERVED TO THIS SYMBOL.
00328  M01S00016.ns2483  +++|*
00329  M01S00017.ns2483  +++|*         IF NO *BEGIN BSSB* IS USED, THE STARTING VALUE WILL BE THE
00330  M01S00018.ns2483  +++|*         THE CURRENT VALUE OF THE LOCATION COUNTER.
00331  M01S00019.ns2483  +++|*
00332  M01S00020.ns2483  +++|*         THE *END BSSB* IS ONLY NEEDED IF IT IS NECESSARY TO RESET THE
00333  M01S00021.ns2483  +++|*         LOCATION COUNTER TO THE ORIGIN COUNTER OR TO PRINT THE FINAL
00334  M01S00022.ns2483  +++|*         VALUE OF THE *BSSB* SERIES.
00335  M01S00023.ns2483  +++|
00336  M01S00024.ns2483  +++|
00337  M01S00025.ns2483  +++|          PURGMAC  BSSB
00338  M01S00026.ns2483  +++|
00339  M01S00027.ns2483  +++|          MACRO  BSSB,S,N
00340  M01S00028.ns2483  +++|.1 IFC EQ,*S*BEGIN*
00341  M01S00029.ns2483  +++|  BSS
00342  M01S00030.ns2483  +++|  LOC N
00343  M01S00031.ns2483  +++|.3 SKIP
00344  M01S00032.ns2483  +++|.1 ENDIF
00345  M01S00033.ns2483  +++|.2 IFC EQ,*S*END*
00346  M01S00034.ns2483  +++|  BSS
00347  M01S00035.ns2483  +++|  LOC *O
00348  M01S00036.ns2483  +++|.3 SKIP
00349  M01S00037.ns2483  +++|.2 ENDIF
00350  M01S00038.ns2483  +++| S BSS
00351  M01S00039.ns2483  +++|  LOC *-N
00352  M01S00040.ns2483  +++|.3 ENDIF
00353  M01S00041.ns2483  +++|  ENDM
00354  M01S00042.ns2483  +++| BSSN     SPACE  4,20
00355  M01S00043.ns2483  +++|***       BSSN - SEQUENTIAL TAG DEFINITION WITHOUT RESERVING SPACE.
00356  M01S00044.ns2483  +++|*
00357  M01S00045.ns2483  +++|*
00358  M01S00046.ns2483  +++|* BEGIN   BSSN   A           BEGIN TAG DEFINITION SEQUENCE
00359  M01S00047.ns2483  +++|* TAG1    BSSN   N
00360  M01S00048.ns2483  +++|* .       .      .
00361  M01S00049.ns2483  +++|* .       .      .
00362  M01S00050.ns2483  +++|*
00363  M01S00051.ns2483  +++|* TAGN    BSSN   N
00364  M01S00052.ns2483  +++|* END     BSSN               END TAG DEFINITION SEQUENCE
00365  M01S00053.ns2483  +++|*
00366  M01S00054.ns2483  +++|*         A = NUMBER TO START TAG DEFINITION AT.
00367  M01S00055.ns2483  +++|*         N = NUMBER OF LOCATIONS RESERVED TO THIS TAG.
00368  M01S00056.ns2483  +++|*
00369  M01S00057.ns2483  +++|*         IF NO *BEGIN BSSN* IS USED, THE STARTING VALUE WILL BE THE
00370  M01S00058.ns2483  +++|*         THE CURRENT VALUE OF THE LOCATION COUNTER.
00371  M01S00059.ns2483  +++|*
00372  M01S00060.ns2483  +++|*         THE *END BSSN* IS ONLY NEEDED IF IT IS NECESSARY TO RESET THE
00373  M01S00061.ns2483  +++|*         LOCATION COUNTER TO THE ORIGIN COUNTER OR TO PRINT THE FINAL
00374  M01S00062.ns2483  +++|*         VALUE OF THE *BSSN* SERIES.
00375  M01S00063.ns2483  +++|
00376  M01S00064.ns2483  +++|
00377  M01S00065.ns2483  +++|          PURGMAC  BSSN
00378  M01S00066.ns2483  +++|
00379  M01S00067.ns2483  +++|          MACRO  BSSN,T,N
00380  M01S00068.ns2483  +++|.1 IFC EQ,*T*BEGIN*
00381  M01S00069.ns2483  +++|  BSS
00382  M01S00070.ns2483  +++|  LOC N
00383  M01S00071.ns2483  +++|.3 SKIP
00384  M01S00072.ns2483  +++|.1 ENDIF
00385  M01S00073.ns2483  +++|.2 IFC EQ,*T*END*
00386  M01S00074.ns2483  +++|  BSS
00387  M01S00075.ns2483  +++|  LOC *O
00388  M01S00076.ns2483  +++|.3 SKIP
00389  M01S00077.ns2483  +++|.2 ENDIF
00390  M01S00078.ns2483  +++| T BSS
00391  M01S00079.ns2483  +++|  LOC *+N
00392  M01S00080.ns2483  +++|.3 ENDIF
00393  M01S00081.ns2483  +++|  ENDM
00394  M00S00311.compmac +++| CFI      SPACE  4,25
00395  M00S00312.compmac +++|***       CFI - CALCULATE FIRST WORD INDEX IN MANAGED TABLE.
00396  M00S00313.compmac +++|*
00397  M00S00314.compmac +++|*         GIVEN AN ORDINAL IN A MANAGED TABLE (CLT, EJT, EST, SYSTEM
Line S00315 Modification History
M01 (Removed by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00398  M01S00315.271l750 ---|*         FNT OF QFT), THE *CFI* MACRO CALCULATES THE TABLE INDEX OF
00399  M01S00316.271l750 ---|*         THE FIRST WORD OF THE ENTRY.
Line S00001 Modification History
M01 (Added by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00400  M01S00001.271l750 +++|*         FNT, JCB OR QFT), THE *CFI* MACRO CALCULATES THE TABLE INDEX
00401  M01S00002.271l750 +++|*         OF THE FIRST WORD OF THE ENTRY.
00402  M01S00003.271l750 +++|*
00403  M01S00004.271l750 +++|*         THE *CFI* MACRO REQUIRES THAT TABLE ENTRY LENGTHS BETWEEN
00404  M01S00005.271l750 +++|*         10B AND 40B BE A MULTIPLE OF 4 AND THAT ENTRY LENGTHS
00405  M01S00006.271l750 +++|*         GREATER THAN 40B BE A MULTIPLE OF 10B.  THE MAXUMUM ENTRY
00406  M01S00007.271l750 +++|*         LENGTH SUPPORTED BY *CFI* IS 100B.  THE MAXIMUM ENTRY LENGTH
00407  M01S00008.271l750 +++|*         OF CERTAIN TABLES SUCH AS THE EJT AND QFT IS CONSTRAINED BY
00408  M01S00009.271l750 +++|*         SPACE ALLOCATED IN OTHER TABLES SUCH AS THE QUEUE FILE OR
00409  M01S00010.271l750 +++|*         ROLLOUT FILE SYSTEM SECTOR.
00410  M00S00317.compmac +++|*
00411  M00S00318.compmac +++|*         CFI    TABLE,ORD,ODC
00412  M00S00319.compmac +++|*
00413  M00S00320.compmac +++|*         ENTRY  TABLE = MANAGED TABLE MNEMONIC.
00414  M00S00321.compmac +++|*                      CLT = COMMON LIBRARIES TABLE.
00415  M00S00322.compmac +++|*                      EJT = EXECUTING JOB TABLE.
00416  M00S00323.compmac +++|*                      EST = EQUIPMENT STATUS TABLE.
00417  M00S00324.compmac +++|*                      FNT = SYSTEM FNT TABLE.
Line S00011 Modification History
M01 (Added by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00418  M01S00011.271l750 +++|*                      JCB = JOB CONTROL BLOCK TABLE.
00419  M00S00325.compmac +++|*                      QFT = QUEUE FILE TABLE.
Line S00001 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
00420  M01S00001.274l797 +++|*                      ORT = OPTICAL DISK REQUEST TABLE.
00421  M00S00326.compmac +++|*                ORD = OPTIONAL PARAMETER SPECIFYING DIRECT CELL
00422  M00S00327.compmac +++|*                      CONTAINING TABLE ORDINAL.
00423  M00S00328.compmac +++|*                (A) = TABLE ORDINAL, IF *ORD* NOT SPECIFIED.
00424  M00S00329.compmac +++|*                ODC = OPTIONAL PARAMETER SPECIFYING DIRECT CELL
00425  M00S00330.compmac +++|*                      CONTAINING TABLE ORDINAL, IF *ORD* NOT
00426  M00S00331.compmac +++|*                      SPECIFIED.
00427  M00S00332.compmac +++|*                      THIS OPTION SHOULD BE USED IF THE ORDINAL
00428  M00S00333.compmac +++|*                      IS IN A DIRECT CELL AND IS LOADED IN (A)
00429  M00S00334.compmac +++|*                      ON ENTRY TO THE *CFI* MACRO.
00430  M00S00335.compmac +++|*
00431  M00S00336.compmac +++|*         EXIT   (A) = WORD INDEX OF TABLE ENTRY.
00432  M00S00337.compmac +++|
00433  M00S00338.compmac +++|
00434  M00S00339.compmac +++|          PURGMAC  CFI
00435  M00S00340.compmac +++|
00436  M00S00341.compmac +++| CFI      MACRO  T,R1,R2
00437  M00S00342.compmac +++|  LOCAL AS1,DC,EL,MN,MNL,MX,MXL,SC1,SC2,ST,TB,TL
00438  M00S00343.compmac +++|  MACREF CFI
00439  M00S00344.compmac +++|.1 SET 0
Line S00345 Modification History
M01 (Removed by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00440  M01S00345.271l750 ---|.A ECHO ,TB=(CLT,EJT,EST,FNT,QFT),MN=(3,4,2,2,4),MX=(10B,10B,10B,10B,10B
00441  M01S00346.271l750 ---|,)
Line S00012 Modification History
M01 (Added by) 271l750
M02 (Removed by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
00442  M02S00012.274l797 ---|.A ECHO ,TB=(CLT,EJT,EST,FNT,JCB,QFT),MN=(3,4,2,2,10B,4),MX=(10B,10B,10B
00443  M02S00013.274l797 ---|,,10B,100B,10B)
Line S00002 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
00444  M01S00002.274l797 +++|.A ECHO ,TB=(CLT,EJT,EST,FNT,JCB,QFT,ORT),MN=(3,4,2,2,10B,4,4),MX=(10B,1
00445  M01S00003.274l797 +++|,0B,10B,10B,100B,10B,10B)
00446  M00S00347.compmac +++|.B IFC EQ,$TB$T$
00447  M00S00348.compmac +++|.1 SET 1
00448  M00S00349.compmac +++|MNL SET MN
00449  M00S00350.compmac +++|MXL SET MX
00450  M00S00351.compmac +++|  STOPDUP
00451  M00S00352.compmac +++|.B ENDIF
00452  M00S00353.compmac +++|.A ENDD
00453  M00S00354.compmac +++|.A IFEQ .1,0
00454  M00S00355.compmac +++|  ERR ILLEGAL TABLE TYPE - T
00455  M00S00356.compmac +++|.A ELSE
00456  M00S00357.compmac +++|TL SET T_E
00457  M00S00358.compmac +++|DC SET R1 R2 T0
00458  M00S00359.compmac +++|.B IFC NE,$R1$$
00459  M00S00360.compmac +++|  LDD R1
00460  M00S00361.compmac +++|.B ENDIF
00461  M00S00362.compmac +++|.B IFGE TL,MNL
00462  M00S00363.compmac +++|.B IFLE TL,MXL
Line S00364 Modification History
M01 (Removed by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00463  M01S00364.271l750 ---|.C ECHO ,EL=(2,3,4,5,6,7,10B),ST=(0,1,0,1,1,1,0),SC1=(1,1,2,2,1,3,3),AS1
00464  M01S00365.271l750 ---|,=(0,1,0,1,1,2,0),SC2=(0,0,0,0,1,0,0)
Line S00014 Modification History
M01 (Added by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00465  M01S00014.271l750 +++|.C ECHO ,EL=(2,3,4,5,6,7,10B,14B,20B,24B,30B,34B,40B,50B,60B,70B,100B),S
00466  M01S00015.271l750 +++|,T=(0,1,0,1,1,1,0,1,0,1,1,1,0,1,1,1),SC1=(1,1,2,2,1,3,3,1,4,2,1,3,5,2,1,
00467  M01S00016.271l750 +++|,3),AS1=(0,1,0,1,1,2,0,1,0,1,1,2,0,1,1,2),SC2=(0,0,0,0,1,0,0,2,0,2,3,2,0
00468  M01S00017.271l750 +++|,3,4,3)
00469  M00S00366.compmac +++|.D IFEQ TL,EL
00470  M00S00367.compmac +++|.E IFC EQ,$R1$$
00471  M00S00368.compmac +++|.E IFC EQ,$R2$$
00472  M00S00369.compmac +++|.E IFEQ ST,1
00473  M00S00370.compmac +++|  STD T0
00474  M00S00371.compmac +++|.E ENDIF
00475  M00S00372.compmac +++|  SHN SC1
00476  M00S00373.compmac +++|.E IFEQ AS1,1
00477  M00S00374.compmac +++|  ADD DC
00478  M00S00375.compmac +++|.E ENDIF
00479  M00S00376.compmac +++|.E IFEQ AS1,2
00480  M00S00377.compmac +++|  SBD DC
00481  M00S00378.compmac +++|.E ENDIF
00482  M00S00379.compmac +++|.E IFNE SC2,0
00483  M00S00380.compmac +++|  SHN SC2
00484  M00S00381.compmac +++|.E ENDIF
00485  M00S00382.compmac +++|  STOPDUP
00486  M00S00383.compmac +++|.D ENDIF
00487  M00S00384.compmac +++|.C ENDD
00488  M00S00385.compmac +++|.B ELSE
00489  M00S00386.compmac +++|  ERR T ENTRY LENGTH ERROR
00490  M00S00387.compmac +++|.B ENDIF
00491  M00S00388.compmac +++|.A ENDIF
00492  M00S00389.compmac +++| CFI      ENDM
00493  M00S00390.compmac +++| CMTM     SPACE  4,10
00494  M00S00391.compmac +++|***       CMTM - CREATE MACROS TO ACCESS MANAGED TABLES.
00495  M00S00392.compmac +++|*
00496  M00S00393.compmac +++|*         CMTM   TB
00497  M00S00394.compmac +++|*
00498  M00S00395.compmac +++|*         ENTRY  TB = MANAGED TABLE NAME.
00499  M00S00396.compmac +++|
00500  M00S00397.compmac +++|
00501  M00S00398.compmac +++|          PURGMAC  CMTM
00502  M00S00399.compmac +++|
00503  M00S00400.compmac +++| CMTM     MACRO  TB
00504  M00S00401.compmac +++|  PURGMAC C_TB
00505  M00S00402.compmac +++|C_TB MACRO
00506  M00S00403.compmac +++|.A IF -DEF,.TB
00507  M00S00404.compmac +++|  MACREF C_TB
00508  M00S00405.compmac +++|.TB SUBR
00509  M00S00406.compmac +++|  STD T0
00510  M00S00407.compmac +++|  LDK TB_P
00511  M00S00408.compmac +++|  CRD CM
00512  M00S00409.compmac +++|  CFI TB,T0
00513  M00S00410.compmac +++|  ADD CM+1
00514  M00S00411.compmac +++|  SHN 6
00515  M00S00412.compmac +++|  ADD CM
00516  M00S00413.compmac +++|  SHN 14
00517  M00S00414.compmac +++|  UJN .TB_X
00518  M00S00415.compmac +++|.A ENDIF
00519  M00S00416.compmac +++| CMTM     ENDM
00520  M00S00417.compmac +++| CEJT     SPACE  4,10
00521  M00S00418.compmac +++|***       CEJT - CONVERT EJT ADDRESS.
00522  M00S00419.compmac +++|*
00523  M00S00420.compmac +++|*         ENTRY  (A) = EJT ORDINAL.
00524  M00S00421.compmac +++|*
00525  M00S00422.compmac +++|*         USES   CM - CM+4.
00526  M00S00423.compmac +++|*
00527  M00S00424.compmac +++|*         MACROS CFI.
00528  M00S00425.compmac +++|
00529  M00S00426.compmac +++|
00530  M00S00427.compmac +++|          CMTM   EJT
00531  M00S00428.compmac +++| CEST     SPACE  4,10
00532  M00S00429.compmac +++|***       CEST - CONVERT EST ADDRESS.
00533  M00S00430.compmac +++|*
00534  M00S00431.compmac +++|*         ENTRY  (A) = EST ORDINAL.
00535  M00S00432.compmac +++|*
00536  M00S00433.compmac +++|*         USES   CM - CM+4.
00537  M00S00434.compmac +++|*
00538  M00S00435.compmac +++|*         MACROS CFI.
00539  M00S00436.compmac +++|
00540  M00S00437.compmac +++|
00541  M00S00438.compmac +++|          CMTM   EST
00542  M00S00439.compmac +++| CFNT     SPACE  4,10
00543  M00S00440.compmac +++|***       CFNT - CONVERT FNT ADDRESS.
00544  M00S00441.compmac +++|*
00545  M00S00442.compmac +++|*         ENTRY  (A) = FNT ORDINAL.
00546  M00S00443.compmac +++|*
00547  M00S00444.compmac +++|*         USES   CM - CM+4.
00548  M00S00445.compmac +++|*
00549  M00S00446.compmac +++|*         MACROS CFI.
00550  M00S00447.compmac +++|
00551  M00S00448.compmac +++|
00552  M00S00449.compmac +++|          CMTM   FNT
Line S00018 Modification History
M01 (Added by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
00553  M01S00018.271l750 +++| CJCB     SPACE  4,10
00554  M01S00019.271l750 +++|***       CJCB - CONVERT JCB ADDRESS.
00555  M01S00020.271l750 +++|*
00556  M01S00021.271l750 +++|*         ENTRY  (A) = JCB ORDINAL.
00557  M01S00022.271l750 +++|*
00558  M01S00023.271l750 +++|*         USES   CM - CM+4.
00559  M01S00024.271l750 +++|*
00560  M01S00025.271l750 +++|*         MACROS CFI.
00561  M01S00026.271l750 +++|
00562  M01S00027.271l750 +++|
00563  M01S00028.271l750 +++|          CMTM   JCB
00564  M00S00450.compmac +++| CQFT     SPACE  4,10
00565  M00S00451.compmac +++|***       CQFT - CONVERT QFT ADDRESS.
00566  M00S00452.compmac +++|*
00567  M00S00453.compmac +++|*         ENTRY  (A) = QFT ORDINAL.
00568  M00S00454.compmac +++|*
00569  M00S00455.compmac +++|*         USES   CM - CM+4.
00570  M00S00456.compmac +++|*
00571  M00S00457.compmac +++|*         MACROS CFI.
00572  M00S00458.compmac +++|
00573  M00S00459.compmac +++|
00574  M00S00460.compmac +++|          CMTM   QFT
Line S00004 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
00575  M01S00004.274l797 +++| CORT     SPACE  4,10
00576  M01S00005.274l797 +++|***       CORT - CONVERT ORT ADDRESS.
00577  M01S00006.274l797 +++|*
00578  M01S00007.274l797 +++|*         ENTRY  (A) = ORT ORDINAL.
00579  M01S00008.274l797 +++|*
00580  M01S00009.274l797 +++|*         USES   CM - CM+4.
00581  M01S00010.274l797 +++|*
00582  M01S00011.274l797 +++|*         MACROS CFI.
00583  M01S00012.274l797 +++|
00584  M01S00013.274l797 +++|
00585  M01S00014.274l797 +++|          CMTM   ORT
Line S00001 Modification History
M01 (Added by) 273l780
Seq #  *Modification Id* Act 
----------------------------+
00586  M01S00001.273l780 +++| CREL     SPACE  4,10
00587  M01S00002.273l780 +++|**        CREL  - ASSEMBLED CONSTANT RELOCATION.
00588  M01S00003.273l780 +++|*
00589  M01S00004.273l780 +++|*         ASSEMBLES INFORMATION TO ALLOW THE SPECIFIED INSTRUCTION OR
00590  M01S00005.273l780 +++|*         DATA LOCATION TO BE MODIFIED BY *COMPSIC*.
00591  M01S00006.273l780 +++|*
00592  M01S00007.273l780 +++|*         CREL   A,R
00593  M01S00008.273l780 +++|*
00594  M01S00009.273l780 +++|*         ENTRY  *A* = ADDRESS OF TWO BYTES TO BE MODIFIED.
00595  M01S00010.273l780 +++|*                *R* = ADDRESS OF VALUE TO BE ADDED TO TWO BYTES AT *A*
00596  M01S00011.273l780 +++|*                      BY *COMPSIC*.
00597  M01S00012.273l780 +++|
00598  M01S00013.273l780 +++|
00599  M01S00014.273l780 +++|          PURGMAC  CREL
00600  M01S00015.273l780 +++|
00601  M01S00016.273l780 +++| CREL     MACRO  A,R
00602  M01S00017.273l780 +++|          LOCAL  B
00603  M01S00018.273l780 +++| B        EQU    A
00604  M01S00019.273l780 +++| SIC      RMT
00605  M01S00020.273l780 +++|          CON    B
00606  M01S00021.273l780 +++|          CON    R
00607  M01S00022.273l780 +++| SIC      RMT
00608  M01S00023.273l780 +++| CREL     ENDM
00609  M00S00461.compmac +++| DCHAN    SPACE  4,10
00610  M00S00462.compmac +++|***       DCHAN - DROP CHANNEL.
00611  M00S00463.compmac +++|*
00612  M00S00464.compmac +++|*
00613  M00S00465.compmac +++|*         DCHAN
00614  M00S00466.compmac +++|*         ENTRY  (A) = CHANNEL NUMBER.
00615  M00S00467.compmac +++|
00616  M00S00468.compmac +++|
00617  M00S00469.compmac +++|          PURGMAC  DCHAN
00618  M00S00470.compmac +++|
00619  M00S00471.compmac +++| DCHAN    MACRO
00620  M00S00472.compmac +++|  MACREF DCHAN
00621  M00S00473.compmac +++|  STD CM+1
00622  M00S00474.compmac +++|  MONITOR DCHM
00623  M00S00475.compmac +++|  ENDM
00624  M00S00476.compmac +++| DEFC     SPACE  4,10
00625  M00S00477.compmac +++|***       DEFC - CONDITIONALLY DEFINE SYMBOL.
00626  M00S00478.compmac +++|*
00627  M00S00479.compmac +++|*
00628  M00S00480.compmac +++|* SYM     DEFC   VAL
00629  M00S00481.compmac +++|
00630  M00S00482.compmac +++|
00631  M00S00483.compmac +++|          PURGMAC  DEFC
00632  M00S00484.compmac +++|
00633  M00S00485.compmac +++|          MACRO  DEFC,SYM,VAL
00634  M00S00486.compmac +++|  MACREF DEFC
00635  M00S00487.compmac +++|  IF -DEF,SYM,1
00636  M00S00488.compmac +++| SYM = VAL
00637  M00S00489.compmac +++|  ENDM
00638  M00S00490.compmac +++| DELAY    SPACE  4,10
00639  M00S00491.compmac +++|***       DELAY - DELAY FOR SYSTEM DELAY TIME.
00640  M00S00492.compmac +++|*
00641  M00S00493.compmac +++|*         DELAYS APPROXIMATELY N/8 MILLISECONDS.  IF N IS NOT SPECIFIED
00642  M00S00494.compmac +++|*         THE DELAY TIME IS APPROXIMATELY 1/8 MILLISECOND.
00643  M00S00495.compmac +++|*
00644  M00S00496.compmac +++|*         DELAY  N
00645  M00S00497.compmac +++|*
00646  M00S00498.compmac +++|*         WHERE  N/8 IS THE NUMBER OF MILLISECONDS TO DELAY.
00647  M00S00499.compmac +++|*
00648  M00S00500.compmac +++|*         EXIT   (A) = 0.
00649  M00S00501.compmac +++|
00650  M00S00502.compmac +++|
00651  M00S00503.compmac +++|          PURGMAC  DELAY
00652  M00S00504.compmac +++| DELAY    MACRO  N
00653  M00S00505.compmac +++|  LOCAL A
00654  M00S00506.compmac +++|  MACREF DELAY
00655  M00S00507.compmac +++|  NOREF .2,.3
00656  M00S00508.compmac +++|.2 SET 0
00657  M00S00509.compmac +++|.3 SET N 1
00658  M00S00510.compmac +++|  DUP 10,5
00659  M00S00511.compmac +++|  IFEQ .3/2*2-.3,0
00660  M00S00512.compmac +++|.3 SET .3/2
00661  M00S00513.compmac +++|.2 SET .2+1
00662  M00S00514.compmac +++|  ELSE 1
00663  M00S00515.compmac +++|  STOPDUP
00664  M00S00516.compmac +++|  IFGT .3,1,2
00665  M00S00517.compmac +++|  LDK .3
00666  M00S00518.compmac +++|  STD T0
00667  M00S00519.compmac +++|A LDP .DLY
00668  M00S00520.compmac +++|  ERRNG 10D-.2 DELAY TIME TOO LARGE
00669  M00S00521.compmac +++|  SHK .2
00670  M00S00522.compmac +++|  SBN 1
00671  M00S00523.compmac +++|  NJN *-1
00672  M00S00524.compmac +++|  IFGT .3,1,2
00673  M00S00525.compmac +++|  SOD T0
00674  M00S00526.compmac +++|  NJN A
00675  M00S00527.compmac +++|  ENDM
00676  M00S00528.compmac +++| DFIM     SPACE  4,40
Line S00529 Modification History
M01 (Removed by) 273l780
Seq #  *Modification Id* Act 
----------------------------+
00677  M01S00529.273l780 ---| DFIM     SPACE  4,15
00678  M00S00530.compmac +++|***       DFIM - DEFINE INSTRUCTION MODIFICATION.
00679  M00S00531.compmac +++|*
00680  M00S00532.compmac +++|*         *DFIM* CREATES A REMOTE BLOCK CONTAINING THE INSTRUCTION AND
00681  M00S00533.compmac +++|*         ITS ADDRESS.  *DIMB* CONTAINS THE *HERE* PSEUDO-OP WHICH
00682  M00S00534.compmac +++|*         CAUSES THE REMOTE CODE TO BE ASSEMBLED AND *MDIN* IS AN
00683  M00S00535.compmac +++|*         EXECUTABLE MACRO THAT ACTUALLY MAKES THE MODIFICATIONS SPECI-
00684  M00S00536.compmac +++|*         FIED BY THE *DFIM* MACRO.
00685  M00S00537.compmac +++|*
00686  M00S00538.compmac +++|*TAG      DFIM   (OPC),ADR
00687  M00S00539.compmac +++|*
00688  M00S00540.compmac +++|*         ENTRY  *OPC* = COMPASS OP CODE AND VARIABLE FIELD.
00689  M00S00541.compmac +++|*                *ADR* = ADDRESS TO BE MODIFIED WITH *OPC*.
00690  M00S00542.compmac +++|*                      = * IF NOT SPECIFIED.
00691  M00S00543.compmac +++|*                *TAG* = OPTIONAL LOCATION FIELD SYMBOL.
00692  M00S00544.compmac +++|*
00693  M00S00545.compmac +++|*         EXIT   *OPC* PLACED IN REMOTE BLOCK NAMED BY
00694  M00S00546.compmac +++|*                *R$* MICRO (DEFAULT IS *SRMT*).
00695  M00S00547.compmac +++|*
00696  M00S00548.compmac +++|*         EXAMPLE -
00697  M00S00549.compmac +++|*
00698  M00S00550.compmac +++|*         LDM    ABCA
00699  M00S00551.compmac +++|*         DFIM   (UJN  ABCX)
00700  M00S00552.compmac +++|* ABC3    NJN    ABCX
00701  M00S00553.compmac +++|*
00702  M00S00554.compmac +++|*         SINCE THE *ADR* PARAMETER WAS OMITTED ON THE *DFIM*, THE
00703  M00S00555.compmac +++|*         *UJN* WILL BE ASSEMBLED SO THAT IT WILL WORK CORRECTLY WHEN
00704  M00S00556.compmac +++|*         IT IS MOVED TO *ABC3*.
00705  M00S00557.compmac +++|*
00706  M00S00558.compmac +++|*         SOMEWHERE IN THE PRESET CODE FOR THE PROGRAM, A TEST IS MADE
00707  M00S00559.compmac +++|*         TO DETERMINE WHETHER OR NOT TO ACTUALLY MODIFY THE INSTRUC-
00708  M00S00560.compmac +++|*         TIONS.  FOR EXAMPLE-
00709  M00S00561.compmac +++|*
00710  M00S00562.compmac +++|*         LDM    XXXX
00711  M00S00563.compmac +++|*         ZJN    PRS4        IF INSTRUCTIONS ARE NOT TO BE MODIFIED
00712  M00S00564.compmac +++|*         MDIN   PRSA        MODIFY THE INSTRUCTIONS
00713  M00S00565.compmac +++|* PRS4      CONTINUE WITH PRESETTING
00714  M00S00566.compmac +++|*
00715  M00S00567.compmac +++|*
00716  M00S00568.compmac +++|* PRSA    BSS    0           TABLE OF MODIFIED INSTRUCTIONS
00717  M00S00569.compmac +++|*         DIMB
00718  M00S00570.compmac +++|
00719  M00S00571.compmac +++|
00720  M00S00572.compmac +++|          PURGMAC  DFIM
00721  M00S00573.compmac +++|
00722  M00S00574.compmac +++|          MACRO  DFIM,TAG,OPC,ADR
00723  M00S00575.compmac +++|  LOCAL X,Y,Z
00724  M00S00576.compmac +++|  MACREF DFIM
00725  M00S00577.compmac +++|Z MICRO 1,, "QUAL"
00726  M00S00578.compmac +++|X SET ADR *
00727  M00S00579.compmac +++|Y EQU *O-*L+X
00728  M00S00580.compmac +++|.1D SET *
00729  M00S00581.compmac +++|.2D SET *O
00730  M00S00582.compmac +++|  IF -MIC,R$,1
00731  M00S00583.compmac +++|R$ MICRO 1,4, SRMT
00732  M00S00584.compmac +++|  IF DEF,.O"R$",1
00733  M00S00585.compmac +++|  IFNE .O"R$",*O,2
00734  M00S00586.compmac +++|.O"R$" SET *O
00735  M00S00587.compmac +++|.L"R$" SET X
00736  M00S00588.compmac +++|  LOC .L"R$"
00737  M00S00589.compmac +++|TAG  OPC
00738  M00S00590.compmac +++|.L"R$" SET *
00739  M00S00591.compmac +++|  ORG .2D
00740  M00S00592.compmac +++|  LOC .1D
00741  M00S00593.compmac +++|"R$" RMT
00742  M00S00594.compmac +++|  IF DEF,"R$"A,1
00743  M00S00595.compmac +++|  IFEQ "R$"A,10000,3
00744  M00S00596.compmac +++|"R$" EQU *O
00745  M00S00597.compmac +++|  QUAL
00746  M00S00598.compmac +++|"R$"A SET 10000
00747  M00S00599.compmac +++|  IFNE /"Z"/Y,"R$"A,4
00748  M00S00600.compmac +++|"R$"B SET *O
00749  M00S00601.compmac +++|"R$"C SET 0
00750  M00S00602.compmac +++|  ORG *O+1
00751  M00S00603.compmac +++|  CON /"Z"/Y
00752  M00S00604.compmac +++|"R$"A SET /"Z"/Y
00753  M00S00605.compmac +++|  QUAL "Z"
00754  M00S00606.compmac +++|  LOC X+"R$"C
00755  M00S00607.compmac +++|TAG  OPC
00756  M00S00608.compmac +++|  QUAL
00757  M00S00609.compmac +++|"R$"C SET *O-"R$"B-2
00758  M00S00610.compmac +++|  ORG "R$"B
00759  M00S00611.compmac +++|  CON "R$"C
00760  M00S00612.compmac +++|  ORG *O+"R$"C+1
00761  M00S00613.compmac +++|  RMT
00762  M00S00614.compmac +++| DFIM     ENDM
00763  M00S00615.compmac +++| DIMB     SPACE  4,10
00764  M00S00616.compmac +++|***       DIMB - DUMP INSTRUCTION MODIFICATION BLOCK.
00765  M00S00617.compmac +++|*
00766  M00S00618.compmac +++|*         DIMB   BN
00767  M00S00619.compmac +++|*
00768  M00S00620.compmac +++|*         ENTRY  *BN* = NAME OF REMOTE BLOCK.
00769  M00S00621.compmac +++|*                     = *SRMT* IF NOT SPECIFIED.
00770  M00S00622.compmac +++|
00771  M00S00623.compmac +++|
00772  M00S00624.compmac +++|          PURGMAC  DIMB
00773  M00S00625.compmac +++|
00774  M00S00626.compmac +++| DIMB     MACRO  BN
00775  M00S00627.compmac +++|  LOCAL Q
00776  M00S00628.compmac +++|  MACREF DIMB
00777  M00S00629.compmac +++|Q MICRO 1,, "QUAL"
00778  M00S00630.compmac +++|  IFC EQ,*BN**,2
00779  M00S00631.compmac +++|TN MICRO 1,4, SRMT
00780  M00S00632.compmac +++|  ELSE 1
00781  M00S00633.compmac +++|TN MICRO 1,, BN
00782  M00S00634.compmac +++|  QUAL
00783  M00S00635.compmac +++|  NOREF "TN"A,"TN"B,"TN"C
00784  M00S00636.compmac +++|  QUAL *
00785  M00S00637.compmac +++|"TN" HERE
00786  M00S00638.compmac +++|  CON 0
00787  M00S00639.compmac +++|"TN"A SET 10000
00788  M00S00640.compmac +++|  QUAL "Q"
00789  M00S00641.compmac +++| DIMB     ENDM
00790  M00S00642.compmac +++| ENDMS    SPACE  4,15
00791  M00S00643.compmac +++|***       ENDMS - END MASS STORAGE OPERATION.
00792  M00S00644.compmac +++|*
00793  M00S00645.compmac +++|*
00794  M00S00646.compmac +++|*         ENDMS
00795  M00S00647.compmac +++|*         *ENDMS* RELEASES ALL RESOURCES RESERVED TO THE MASS STORAGE
00796  M00S00648.compmac +++|*         OPERATION.  SEE *PPR* FOR MORE INFORMATION ON USING THE
00797  M00S00649.compmac +++|*         *ENDMS* MACRO.
00798  M00S00650.compmac +++|*
00799  M00S00651.compmac +++|*         EXIT   (A) = 0.
00800  M00S00652.compmac +++|*
00801  M00S00653.compmac +++|*         USES   T1, T2, CM - CM+4.
00802  M00S00654.compmac +++|*
00803  M00S00655.compmac +++|*         NOTE - THIS MACRO IS THE ONLY SUPPORTED INTERFACE TO THE
00804  M00S00656.compmac +++|*         *.EMS* PPR ENTRY POINT.  THE VALUE OF THIS SYMBOL IS
00805  M00S00657.compmac +++|*         DEFINED IN *COMSMSP* AND *PPCOM*.
00806  M00S00658.compmac +++|
00807  M00S00659.compmac +++|
00808  M00S00660.compmac +++|          PURGMAC  ENDMS
00809  M00S00661.compmac +++|
00810  M00S00662.compmac +++| ENDMS    MACRO
00811  M00S00663.compmac +++|  MACREF ENDMS
00812  M00S00664.compmac +++|  RJP .EMS
00813  M00S00665.compmac +++|  ENDM
00814  M00S00666.compmac +++| EXECUTE  SPACE  4,15
00815  M00S00667.compmac +++|***       EXECUTE - PROGRAM/OVERLAY CALL.
00816  M00S00668.compmac +++|*         THIS MACRO IS INTENDED TO BE USED FOR CROSS REFERENCE
00817  M00S00669.compmac +++|*         PURPOSES.
00818  M00S00670.compmac +++|*
00819  M00S00671.compmac +++|*
00820  M00S00672.compmac +++|*         EXECUTE NAME,ADDRESS
00821  M00S00673.compmac +++|*         ENTRY  (NAME) = NAME OF PROGRAM/OVERLAY.
00822  M00S00674.compmac +++|*                (ADDRESS) = LOAD ADDRESS FOR OVERLAY IF *NAME* BEGINS
00823  M00S00675.compmac +++|*                            WITH *0*.
00824  M00S00676.compmac +++|*                (ADDRESS) = (*), LOAD *NAME* INTO -A- REGISTER, BUT
00825  M00S00677.compmac +++|*                            DO NOT EXECUTE.
00826  M00S00678.compmac +++|*                (ADDRESS) = (=), DO NOT GENERATE CODE.
00827  M00S00679.compmac +++|*         CALLS  EXR.
00828  M00S00680.compmac +++|
00829  M00S00681.compmac +++|
00830  M00S00682.compmac +++|          PURGMAC  EXECUTE
00831  M00S00683.compmac +++|
00832  M00S00684.compmac +++| EXECUTE  MACRO  N,A
00833  M00S00685.compmac +++|  MACREF EXECUTE
00834  M00S00686.compmac +++|  QUAL
00835  M00S00687.compmac +++|(N) SET 0
00836  M00S00688.compmac +++|  QUAL *
00837  M00S00689.compmac +++|  IFC NE,$A$=$
00838  M00S00690.compmac +++|M MICRO 1,1, N
00839  M00S00691.compmac +++|  IFC EQ,$"M"$0$,3
00840  M00S00692.compmac +++|  IFC NE,$A$*$,2
00841  M00S00693.compmac +++|  LDC A . NO LOAD ADDRESS SPECIFIED
00842  M00S00694.compmac +++|  STD LA
00843  M00S00695.compmac +++|  LDC 3R_N
00844  M00S00696.compmac +++|  IFC NE,$A$*$,1
00845  M00S00697.compmac +++|  RJP EXR
00846  M00S00698.compmac +++|  ENDIF
00847  M00S00699.compmac +++|  ENDM
00848  M00S00700.compmac +++| ISTORE   SPACE  4,15
00849  M00S00701.compmac +++|***       ISTORE - INSTRUCTION STORE.
00850  M00S00702.compmac +++|*
00851  M00S00703.compmac +++|*         BUILDS AND STORES PP INSTRUCTION VIA IN-LINE CODE
00852  M00S00704.compmac +++|*         MODIFICATION.  LOCATION TO BE MODIFIED MUST BE
00853  M00S00705.compmac +++|*         PREVIOUSLY DEFINED.
00854  M00S00706.compmac +++|*
00855  M00S00707.compmac +++|*         ISTORE CADDR,(INSTR)
00856  M00S00708.compmac +++|*
00857  M00S00709.compmac +++|*         ENTRY  CADDR = ADDRESS OF CODE TO BE MODIFIED.
00858  M00S00710.compmac +++|*                INSTR = INSTRUCTION (OPERATION CODE AND ADDRESS
00859  M00S00711.compmac +++|*                        FIELD) TO BE STORED.
00860  M00S00712.compmac +++|
00861  M00S00713.compmac +++|
00862  M00S00714.compmac +++|          PURGMAC  ISTORE
00863  M00S00715.compmac +++|
00864  M00S00716.compmac +++| ISTORE   MACRO  CADDR,INSTR
00865  M00S00717.compmac +++|  MACREF ISTORE
00866  M00S00718.compmac +++|.1 IFC EQ,$INSTR$PSN$
00867  M00S00719.compmac +++|  LDN 0
00868  M00S00720.compmac +++|.1 ELSE
00869  M00S00721.compmac +++|  LDC **
00870  M00S00722.compmac +++|  ORG *-1
00871  M00S00723.compmac +++|  LOC CADDR
00872  M00S00724.compmac +++|  INSTR
00873  M00S00725.compmac +++|  LOC *O
00874  M00S00726.compmac +++|.1 ENDIF
00875  M00S00727.compmac +++|  STM CADDR
00876  M00S00728.compmac +++| ISTORE   ENDM
00877  M00S00729.compmac +++| LDK      SPACE  4,15
00878  M00S00730.compmac +++|***       LDK - LOAD CONSTANT INTO (A).
00879  M00S00731.compmac +++|*
00880  M00S00732.compmac +++|*         GENERATES EITHER A *LDC*, *LDN*, OR *LCN* INSTRUCTION,
00881  M00S00733.compmac +++|*         DEPENDING UPON THE VALUE OF THE OPERAND.
00882  M00S00734.compmac +++|*
00883  M00S00735.compmac +++|*         LDK    K
00884  M00S00736.compmac +++|*
00885  M00S00737.compmac +++|*         ENTRY  K = CONSTANT TO BE LOADED INTO (A).
00886  M00S00738.compmac +++|*
00887  M00S00739.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
00888  M00S00740.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
00889  M00S00741.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
00890  M00S00742.compmac +++|
00891  M00S00743.compmac +++|
00892  M00S00744.compmac +++|          PURGMAC  LDK
00893  M00S00745.compmac +++|
00894  M00S00746.compmac +++| LDK      MACRO  K
00895  M00S00747.compmac +++|  IF DEF,K,9D
00896  M00S00748.compmac +++| .1 SET K
00897  M00S00749.compmac +++|  IFMI .1,1
00898  M00S00750.compmac +++| .1 SET 777777B+.1
00899  M00S00751.compmac +++|  IFLE .1,77B,2
00900  M00S00752.compmac +++|  LDN .1
00901  M00S00753.compmac +++|  SKIP 4
00902  M00S00754.compmac +++|  IFGE .1,777700B,2
00903  M00S00755.compmac +++|  LCN 777777B-.1
00904  M00S00756.compmac +++|  SKIP 1
00905  M00S00757.compmac +++|  LDC K
00906  M00S00758.compmac +++| LDK      ENDM
00907  M00S00759.compmac +++| LMK      SPACE  4,15
00908  M00S00760.compmac +++|***       LMK - LOGICAL MINUS CONSTANT WITH (A).
00909  M00S00761.compmac +++|*
00910  M00S00762.compmac +++|*         GENERATES EITHER AN *LMC* OR AN *LMN* INSTRUCTION,
00911  M00S00763.compmac +++|*         DEPENDING UPON THE VALUE OF THE OPERAND. IF THE
00912  M00S00764.compmac +++|*         VALUE OF THE OPERAND REDUCES TO ZERO, NO INSTRUCTION
00913  M00S00765.compmac +++|*         WILL BE GENERATED.
00914  M00S00766.compmac +++|*
00915  M00S00767.compmac +++|*         LMK    K
00916  M00S00768.compmac +++|*
00917  M00S00769.compmac +++|*         ENTRY  K = CONSTANT TO BE MINUSED WITH (A).
00918  M00S00770.compmac +++|*
00919  M00S00771.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
00920  M00S00772.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
00921  M00S00773.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
00922  M00S00774.compmac +++|
00923  M00S00775.compmac +++|
00924  M00S00776.compmac +++|          PURGMAC LMK
00925  M00S00777.compmac +++|
00926  M00S00778.compmac +++| LMK      MACRO  K
00927  M00S00779.compmac +++|  LOCAL B
00928  M00S00780.compmac +++|  IF DEF,K,6
00929  M00S00781.compmac +++|B SET K
00930  M00S00782.compmac +++|  IFPL K,4
00931  M00S00783.compmac +++|  IFLE K,77B,3
00932  M00S00784.compmac +++|  IFNE K,0,3
00933  M00S00785.compmac +++|  LMN K
00934  M00S00786.compmac +++|  SKIP 1
00935  M00S00787.compmac +++|  LMC K
00936  M00S00788.compmac +++| LMK      ENDM
00937  M00S00789.compmac +++| LPK      SPACE  4,15
00938  M00S00790.compmac +++|***       LPK - LOGICAL PRODUCT CONSTANT WITH (A).
00939  M00S00791.compmac +++|*
00940  M00S00792.compmac +++|*         GENERATES EITHER AN *LPC*, *LPN*, OR *SCN* INSTRUCTION,
00941  M00S00793.compmac +++|*         DEPENDING UPON THE VALUE OF THE OPERAND.  IF THE VALUE
00942  M00S00794.compmac +++|*         OF THE OPERARND REDUCES TO ZERO, NO INSTRUCTION WILL BE
00943  M00S00795.compmac +++|*         GENERATED.
00944  M00S00796.compmac +++|*
00945  M00S00797.compmac +++|*         LPK    K
00946  M00S00798.compmac +++|*
00947  M00S00799.compmac +++|*         ENTRY  K = CONSTANT TO BE *ANDED* WITH (A).
00948  M00S00800.compmac +++|*
00949  M00S00801.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
00950  M00S00802.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
00951  M00S00803.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
00952  M00S00804.compmac +++|
00953  M00S00805.compmac +++|
00954  M00S00806.compmac +++|          PURGMAC LPK
00955  M00S00807.compmac +++|
00956  M00S00808.compmac +++| LPK      MACRO  K
00957  M00S00809.compmac +++|  IF DEF,K,10D
00958  M00S00810.compmac +++| .1 SET K
00959  M00S00811.compmac +++|  IFMI .1,1
00960  M00S00812.compmac +++| .1 SET 777777B+.1
00961  M00S00813.compmac +++|  IFLE .1,77B,2
00962  M00S00814.compmac +++|  LPN .1
00963  M00S00815.compmac +++|  SKIP 5
00964  M00S00816.compmac +++|  IFGE .1,777700B,3
00965  M00S00817.compmac +++|  IFNE .1,777777B,1
00966  M00S00818.compmac +++|  SCN 777777B-.1
00967  M00S00819.compmac +++|  SKIP 1
00968  M00S00820.compmac +++|  LPC K
00969  M00S00821.compmac +++| LPK      ENDM
00970  M00S00822.compmac +++| MDIN     SPACE  4,20
00971  M00S00823.compmac +++|***       MDIN - MODIFY INSTRUCTIONS FROM REMOTE LIST.
00972  M00S00824.compmac +++|*
00973  M00S00825.compmac +++|*         MDIN   BN
00974  M00S00826.compmac +++|*
00975  M00S00827.compmac +++|*         ENTRY  *BN* = NAME OF REMOTE BLOCK.
00976  M00S00828.compmac +++|*                    = *SRMT* IF NOT SPECIFIED.
00977  M00S00829.compmac +++|*
00978  M00S00830.compmac +++|*         EXIT   (A) = 0.
00979  M00S00831.compmac +++|*
00980  M00S00832.compmac +++|*         USES   T0 - T2.
00981  M00S00833.compmac +++|*
00982  M00S00834.compmac +++|*         FORMAT OF REMOTE BLOCK SEGMENT =
00983  M00S00835.compmac +++|*
00984  M00S00836.compmac +++|*                VFD    12  / BYTE COUNT (N).
00985  M00S00837.compmac +++|*                VFD    12  / LOCATION FOR CODE.
00986  M00S00838.compmac +++|*                VFD    N*12/ (N) BYTES OF CODE.
00987  M00S00839.compmac +++|
00988  M00S00840.compmac +++|
00989  M00S00841.compmac +++|          PURGMAC  MDIN
00990  M00S00842.compmac +++|
00991  M00S00843.compmac +++| MDIN     MACRO  BN
00992  M00S00844.compmac +++|  LOCAL L1,L2,L3
00993  M00S00845.compmac +++|  MACREF MDIN
00994  M00S00846.compmac +++|  IFC EQ,*BN**,2
00995  M00S00847.compmac +++|TN MICRO 1,4, SRMT
00996  M00S00848.compmac +++|  ELSE 1
00997  M00S00849.compmac +++|TN MICRO 1,, BN
00998  M00S00850.compmac +++|  LDC "TN"-1
00999  M00S00851.compmac +++|  STD T1
01000  M00S00852.compmac +++|  UJN L3
01001  M00S00853.compmac +++|
01002  M00S00854.compmac +++|L1 STD T0
01003  M00S00855.compmac +++|  AOD T1
01004  M00S00856.compmac +++|  LDI T1
01005  M00S00857.compmac +++|  STD T2
01006  M00S00858.compmac +++|L2 AOD T1
01007  M00S00859.compmac +++|  LDI T1
01008  M00S00860.compmac +++|  STI T2
01009  M00S00861.compmac +++|  AOD T2
01010  M00S00862.compmac +++|  SOD T0
01011  M00S00863.compmac +++|  NJN L2
01012  M00S00864.compmac +++|L3 AOD T1
01013  M00S00865.compmac +++|  LDI T1
01014  M00S00866.compmac +++|  NJN L1
01015  M00S00867.compmac +++| MDIN     ENDM
01016  M00S00868.compmac +++| MJP      SPACE  4,15
01017  M00S00869.compmac +++|***       MJP - CONDITIONAL NEGATIVE SHORT OR LONG JUMP.
01018  M00S00870.compmac +++|*
01019  M00S00871.compmac +++|*         GENERATES EITHER AN *MJN* OR THE EQUIVALENT LONG JUMP
01020  M00S00872.compmac +++|*         SERIES, DEPENDING UPON THE VALUE OF THE ADDRESS FIELD,
01021  M00S00873.compmac +++|*         AND UPON WHETHER THE ADDRESS HAS OR HAS NOT YET BEEN
01022  M00S00874.compmac +++|*         DEFINED.
01023  M00S00875.compmac +++|*
01024  M00S00876.compmac +++|*         MJP    ADDR
01025  M00S00877.compmac +++|*
01026  M00S00878.compmac +++|*         ENTRY  ADDR = BRANCH ADDRESS.
01027  M00S00879.compmac +++|*
01028  M00S00880.compmac +++|*         NOTE   DISCRETION SHOULD BE EXERCISED IN THE USE OF
01029  M00S00881.compmac +++|*                THIS MACRO AS IT WILL ALWAYS GENERATE A LONG
01030  M00S00882.compmac +++|*                JUMP SEQUENCE WHEN BRANCHING FORWARD.
01031  M00S00883.compmac +++|
01032  M00S00884.compmac +++|
01033  M00S00885.compmac +++|          PURGMAC  MJP
01034  M00S00886.compmac +++|
01035  M00S00887.compmac +++| MJP      MACRO  A
01036  M00S00888.compmac +++|.J IF DEF,A
01037  M00S00889.compmac +++|.J IFLE *-A,37B
01038  M00S00890.compmac +++|.J IFPL *-A
01039  M00S00891.compmac +++|  MJN A
01040  M00S00892.compmac +++|.J ELSE
01041  M00S00893.compmac +++|  PJN *+3
01042  M00S00894.compmac +++|  LJM A
01043  M00S00895.compmac +++|.J ENDIF
01044  M00S00896.compmac +++| MJP      ENDM
01045  M00S00897.compmac +++| MONITOR  SPACE  4,10
01046  M00S00898.compmac +++|***       MONITOR - REQUEST MONITOR FUNCTION.
01047  M00S00899.compmac +++|*
01048  M00S00900.compmac +++|*
01049  M00S00901.compmac +++|*         MONITOR FUNCTION
01050  M00S00902.compmac +++|*         ENTRY  (FUNCTION) = MONITOR FUNCTION TO PERFORM.
01051  M00S00903.compmac +++|*                PARAMETERS PRESTORED IN (CM+1 - CM+4).
01052  M00S00904.compmac +++|*         EXIT   NONE.
01053  M00S00905.compmac +++|*         CALLS  FTN.
01054  M00S00906.compmac +++|
01055  M00S00907.compmac +++|
01056  M00S00908.compmac +++|          PURGMAC  MONITOR
01057  M00S00909.compmac +++|
01058  M00S00910.compmac +++| MONITOR  MACRO  F
01059  M00S00911.compmac +++|  MACREF MONITOR
01060  M00S00912.compmac +++|.A IFLT F,100B
01061  M00S00913.compmac +++|  LDN F
01062  M00S00914.compmac +++|.A ELSE
01063  M00S00915.compmac +++|  LDC F
01064  M00S00916.compmac +++|.A ENDIF
01065  M00S00917.compmac +++|  RJP FTN
01066  M00S00918.compmac +++|  ENDM
01067  M00S00919.compmac +++| NFA      SPACE  4,25
01068  M00S00920.compmac +++|***       NFA - NEGATIVE FL ACCESS.
01069  M00S00921.compmac +++|*         THIS MACRO SHOULD BE USED BY PP PROGRAMS WHEN
01070  M00S00922.compmac +++|*         ACCESSING NEGATIVE FL.
01071  M00S00923.compmac +++|*
01072  M00S00924.compmac +++|*         NFA    ADDR,CON
01073  M00S00925.compmac +++|*
01074  M00S00926.compmac +++|*         ENTRY  ADDR = RELATIVE ADDRESS OF NEGATIVE FL LOCATION.
01075  M00S00927.compmac +++|*                CON    IF PRESENT, (ADDR) CONTAINS RELATIVE
01076  M00S00928.compmac +++|*                       ADDRESS OF NEGATIVE FL LOCATION.
01077  M00S00929.compmac +++|*                (RA) = REFERENCE ADDRESS.
01078  M00S00930.compmac +++|*
01079  M00S00931.compmac +++|*         EXIT   (A) = ABSOLUTE ADDRESS.
01080  M00S00932.compmac +++|*
01081  M00S00933.compmac +++|*         THE FOLLOWING ADDRESSING CONVENTION IS TO BE FOLLOWED WHEN
01082  M00S00934.compmac +++|*         USING THIS MACRO WITH ADDR OF THE FORM (TAG+VAL) OR
01083  M00S00935.compmac +++|*         (TAG-VAL).
01084  M00S00936.compmac +++|*
01085  M00S00937.compmac +++|*         ABSOLUTE    NFA MACRO        ADDRESS
01086  M00S00938.compmac +++|*         ADDRESS     ADDR FIELD       DESCRIPTION
01087  M00S00939.compmac +++|*
01088  M00S00940.compmac +++|*         RA-TAG-N    TAG-N            N WORDS BEFORE TAG IN NFL
01089  M00S00941.compmac +++|*         RA-TAG      TAG              LOCATION TAG IN NFL
01090  M00S00942.compmac +++|*         RA-TAG+N    TAG+N            N WORDS AFTER TAG IN NFL
Line S00001 Modification History
M01 (Added by) 271l716
Seq #  *Modification Id* Act 
----------------------------+
01091  M01S00001.271l716 +++|*
01092  M01S00002.271l716 +++|*         IF SYMBOL *PCP$* IS DEFINED, THE NFA MACRO MAY BE USED TO
01093  M01S00003.271l716 +++|*         ACCESS THE NFL OF A PCP JOB.  IN THIS CASE, THE *NFA* MACRO
01094  M01S00004.271l716 +++|*         CALLS THE *AJFL* MACRO TO ENSURE THAT CELL *RA* IS SET TO THE
01095  M01S00005.271l716 +++|*         PCP-S RA PRIOR TO ITS USE BY THE *NFA* MACRO.  THIS REQUIRES
01096  M01S00006.271l716 +++|*         THAT COMMON DECK *COMSPCP* BE CALLED PRIOR TO THIS POINT,
01097  M01S00007.271l716 +++|*         WITH SYMBOL *AJF$* DEFINED.
01098  M00S00943.compmac +++|
01099  M00S00944.compmac +++|          PURGMAC  NFA
01100  M00S00945.compmac +++|
01101  M00S00946.compmac +++| NFA  MACRO  A,R
01102  M00S00947.compmac +++|  MACREF NFA
Line S00948 Modification History
M01 (Removed by) 271l716
Seq #  *Modification Id* Act 
----------------------------+
01103  M01S00948.271l716 ---|  LDD RA
Line S00008 Modification History
M01 (Added by) 271l716
Seq #  *Modification Id* Act 
----------------------------+
01104  M01S00008.271l716 +++|.P IF DEF,PCP$
01105  M01S00009.271l716 +++|  AJFL RA
01106  M01S00010.271l716 +++|.P ELSE
01107  M01S00011.271l716 +++|  LDD RA
01108  M01S00012.271l716 +++|.P ENDIF
01109  M00S00949.compmac +++|  SHN 6
01110  M00S00950.compmac +++|.A IFC EQ,$R$$
01111  M00S00951.compmac +++|  ADK -A
01112  M00S00952.compmac +++|.A ELSE
01113  M00S00953.compmac +++|.C IFLT A,100B
01114  M00S00954.compmac +++|  SBD A
01115  M00S00955.compmac +++|.C ELSE
01116  M00S00956.compmac +++|  SBM A
01117  M00S00957.compmac +++|.C ENDIF
01118  M00S00958.compmac +++|.A ENDIF
01119  M00S00959.compmac +++|  ENDM
01120  M00S00960.compmac +++| NJP      SPACE  4,15
01121  M00S00961.compmac +++|***       NJP - CONDITIONAL NONZERO SHORT OR LONG JUMP.
01122  M00S00962.compmac +++|*
01123  M00S00963.compmac +++|*         GENERATES EITHER AN *NJN* OR THE EQUIVALENT LONG JUMP
01124  M00S00964.compmac +++|*         SERIES, DEPENDING UPON THE VALUE OF THE ADDRESS FIELD,
01125  M00S00965.compmac +++|*         AND UPON WHETHER THE ADDRESS HAS OR HAS NOT YET BEEN
01126  M00S00966.compmac +++|*         DEFINED.
01127  M00S00967.compmac +++|*
01128  M00S00968.compmac +++|*         NJP    ADDR
01129  M00S00969.compmac +++|*
01130  M00S00970.compmac +++|*         ENTRY  ADDR = BRANCH ADDRESS.
01131  M00S00971.compmac +++|*
01132  M00S00972.compmac +++|*         NOTE   DISCRETION SHOULD BE EXERCISED IN THE USE OF
01133  M00S00973.compmac +++|*                THIS MACRO AS IT WILL ALWAYS GENERATE A LONG
01134  M00S00974.compmac +++|*                JUMP SEQUENCE WHEN BRANCHING FORWARD.
01135  M00S00975.compmac +++|
01136  M00S00976.compmac +++|
01137  M00S00977.compmac +++|          PURGMAC  NJP
01138  M00S00978.compmac +++|
01139  M00S00979.compmac +++| NJP      MACRO A
01140  M00S00980.compmac +++|.J IF DEF,A
01141  M00S00981.compmac +++|.J IFLE *-A,37B
01142  M00S00982.compmac +++|.J IFPL *-A
01143  M00S00983.compmac +++|  NJN A
01144  M00S00984.compmac +++|.J ELSE
01145  M00S00985.compmac +++|  ZJN *+3
01146  M00S00986.compmac +++|  LJM A
01147  M00S00987.compmac +++|.J ENDIF
01148  M00S00988.compmac +++| NJP      ENDM
01149  M00S00989.compmac +++| OVERFLOW SPACE  4,30
01150  M00S00990.compmac +++|***       OVERFLOW - TEST FOR PP MEMORY OVERFLOW.
01151  M00S00991.compmac +++|*
01152  M00S00992.compmac +++|*         THIS MACRO IS INTENDED TO TEST FOR PP MEMORY OVERFLOW WHEN
01153  M00S00993.compmac +++|*         LOADING OVERLAYS FROM MASS STORAGE.  THIS MACRO SHOULD
01154  M00S00994.compmac +++|*         BE PLACED AT THE END OF THE OVERLAY BEING TESTED.
01155  M00S00995.compmac +++|*         THIS MACRO ASSUMES THE OVERLAY IS LOADED BY *PPR/PLL*
01156  M00S00996.compmac +++|*         WHICH WILL NOT READ AN EMPTY END OF RECORD AT THE END
01157  M00S00997.compmac +++|*         OF THE OVERLAY.
01158  M00S00998.compmac +++|*
Line S00999 Modification History
M01 (Removed by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01159  M01S00999.253l688 ---|*         OVERFLOW ORIGIN,END
01160  M01S01000.253l688 ---|*         ENTRY  (ORIGIN) = ORIGIN ADDRESS OF OVERLAY.  *PPFW* IS
Line S00001 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01161  M01S00001.253l688 +++|*         OVERFLOW ORIGIN,END,CMR
01162  M01S00002.253l688 +++|*         ENTRY  ORIGIN = ORIGIN ADDRESS OF OVERLAY.  *PPFW* IS
01163  M00S01001.compmac +++|*                   ASSUMED IF NO PARAMETER IS ENTERED.
Line S01002 Modification History
M01 (Removed by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01164  M01S01002.253l688 ---|*                (END) = ADDRESS THAT IS NOT TO BE DESTROYED.  (I.E.
Line S00003 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01165  M01S00003.253l688 +++|*                END = ADDRESS THAT IS NOT TO BE DESTROYED.  (I.E.
01166  M00S01003.compmac +++|*                   LWA+1 OF AREA BEING LOADED INTO.)  10000B (END OF
01167  M00S01004.compmac +++|*                   PP MEMORY) IS ASSUMED IF NO PARAMETER IS ENTERED.
Line S00004 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01168  M01S00004.253l688 +++|*                CMR = RESIDENCY STATUS.
01169  M01S00005.253l688 +++|*                      *CMR* = OVERLAY MUST BE CENTRAL MEMORY RESIDENT.
01170  M01S00006.253l688 +++|*                      DEFAULT IS MASS STORAGE RESIDENT.
01171  M00S01005.compmac +++|*
01172  M00S01006.compmac +++|*         FOUR *ERRNG* PSEUDO OPS ARE USED TO INDICATE THE SPACE LEFT
01173  M00S01007.compmac +++|*         AND THE SIZE OF THE OVERLAY.
01174  M00S01008.compmac +++|*                *BYTES LEFT AFTER LAST SECTOR* = THE NUMBER OF BYTES
01175  M00S01009.compmac +++|*                   BETWEEN THE LAST BYTE OF THE LAST SECTOR READ IN
01176  M00S01010.compmac +++|*                   AND *END*.  THE ORIGIN ADDRESS OF THE OVERLAY CAN
01177  M00S01011.compmac +++|*                   BE INCREASED BY THIS AMOUNT WITHOUT CAUSING OVER-
01178  M00S01012.compmac +++|*                   FLOW.  IF THIS IS LESS THAN 500 THE OVERLAY SIZE
01179  M00S01013.compmac +++|*                   CANNOT BE INCREASED BY SO MUCH THAT ANOTHER SECTOR
01180  M00S01014.compmac +++|*                   IS REQUIRED.
01181  M00S01015.compmac +++|*                *BYTES LEFT IN LAST SECTOR* = THE NUMBER OF BYTES
01182  M00S01016.compmac +++|*                   THAT CAN BE ADDED TO THE OVERLAY WITHOUT REQUIR-
01183  M00S01017.compmac +++|*                   ING ANOTHER SECTOR.
01184  M00S01018.compmac +++|*                *BYTES CAN BE ADDED TO OVERLAY* = THE MAXIMUM NUMBER
01185  M00S01019.compmac +++|*                   OF BYTES THAT CAN BE ADDED TO THIS OVERLAY (ASSUM-
01186  M00S01020.compmac +++|*                   ING THE ORG ADDRESS DOES NOT CHANGE) WITHOUT CAUS-
01187  M00S01021.compmac +++|*                   ING OVERFLOW.
01188  M00S01022.compmac +++|*                *SECTORS NEEDED FOR OVERLAY* = THE NUMBER OF SECTORS
01189  M00S01023.compmac +++|*                   THAT WILL BE READ INTO THE PP WHEN THE OVERLAY IS
01190  M00S01024.compmac +++|*                   LOADED FROM MASS STORAGE.
01191  M00S01025.compmac +++|*
01192  M00S01026.compmac +++|*         NOTE.  THIS MACRO USES A *USE OVERFLOW* PSEUDO OP TO FORCE
01193  M00S01027.compmac +++|*                THE LITERALS BLOCK TO BE DEFINED.  IF THE PROGRAM HAS
01194  M00S01028.compmac +++|*                A USE BLOCK CALLED *OVERFLOW* THE TEST WILL BE
01195  M00S01029.compmac +++|*                INCORRECT.
01196  M00S01030.compmac +++|
01197  M00S01031.compmac +++|
01198  M00S01032.compmac +++|          PURGMAC  OVERFLOW
01199  M00S01033.compmac +++|
Line S01034 Modification History
M01 (Removed by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01200  M01S01034.253l688 ---| OVERFLOW MACRO  O,E
Line S00007 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01201  M01S00007.253l688 +++| OVERFLOW MACRO  O,E,C
01202  M00S01035.compmac +++|  MACREF OVERFLOW
01203  M00S01036.compmac +++|  NOREF .1,.2,.3,.4
01204  M00S01037.compmac +++|  USE OVERFLOW
01205  M00S01038.compmac +++|.1 SET O PPFW
01206  M00S01039.compmac +++|.2 SET E 10000B
Line S00008 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01207  M01S00008.253l688 +++|.A IFC EQ,/C//
01208  M00S01040.compmac +++|.3 SET *-.1+5+477B
Line S00009 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01209  M01S00009.253l688 +++|.A ELSE
01210  M01S00010.253l688 +++|.3 SET *-.1+5+4
01211  M01S00011.253l688 +++|.A ENDIF
01212  M00S01041.compmac +++|.4 SET .2-.1+5
Line S00012 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01213  M01S00012.253l688 +++|.A IFC EQ,/C//
01214  M00S01042.compmac +++|          LIST   M
01215  M00S01043.compmac +++|
01216  M00S01044.compmac +++|          ERRNG  .2-.1+5-.3/500B*500B   BYTES LEFT AFTER LAST SECTOR
01217  M00S01045.compmac +++|          ERRNG  .3/500B*500B-*+.1-5    BYTES LEFT IN LAST SECTOR
01218  M00S01046.compmac +++|          ERRNG  .4/500B*500B-*+.1-5    BYTES CAN BE ADDED TO OVERLAY
01219  M00S01047.compmac +++|          ERRNG  .3/500B                SECTORS NEEDED FOR OVERLAY
01220  M00S01048.compmac +++|
01221  M00S01049.compmac +++|          LIST   *
Line S00013 Modification History
M01 (Added by) 253l688
Seq #  *Modification Id* Act 
----------------------------+
01222  M01S00013.253l688 +++|.A ELSE
01223  M01S00014.253l688 +++|          LIST   M
01224  M01S00015.253l688 +++|
01225  M01S00016.253l688 +++|          ERRNG  .2-.1+5-.3/5*5   BYTES LEFT AFTER LAST WORD
01226  M01S00017.253l688 +++|          ERRNG  .3/5*5-*+.1-5    BYTES LEFT IN LAST WORD
01227  M01S00018.253l688 +++|          ERRNG  .4/5*5-*+.1-5    BYTES CAN BE ADDED TO OVERLAY
01228  M01S00019.253l688 +++|          ERRNG  .3/5             WORDS NEEDED FOR OVERLAY
01229  M01S00020.253l688 +++|
01230  M01S00021.253l688 +++|          LIST   *
01231  M01S00022.253l688 +++|.A ENDIF
01232  M00S01050.compmac +++|  USE *
01233  M00S01051.compmac +++|  ENDM
01234  M00S01052.compmac +++| PAUSE    SPACE  4,10
01235  M00S01053.compmac +++|***       PAUSE - PAUSE FOR RELOCATION AND RESET (RA) AND (FL).
01236  M00S01054.compmac +++|*
01237  M00S01055.compmac +++|*
01238  M00S01056.compmac +++|*         PAUSE  ST
01239  M00S01057.compmac +++|*         ENTRY  ST IF PRESENT INDICATES CM - CM+4 NEED NOT BE STSW
01240  M00S01058.compmac +++|*                UPON EXIT FROM PAUSE.
01241  M00S01059.compmac +++|*         CALLS  FTN.
01242  M00S01060.compmac +++|
01243  M00S01061.compmac +++|
01244  M00S01062.compmac +++|          PURGMAC  PAUSE
01245  M00S01063.compmac +++|
01246  M00S01064.compmac +++| PAUSE    MACRO  ST
01247  M00S01065.compmac +++|  MACREF PAUSE
01248  M00S01066.compmac +++|  MONITOR 0
01249  M00S01067.compmac +++|  IFC EQ,*ST**,3
01250  M00S01068.compmac +++|  LDD CP
01251  M00S01069.compmac +++|  ADN STSW
01252  M00S01070.compmac +++|  CRD CM
01253  M00S01071.compmac +++|  ENDM
01254  M00S01072.compmac +++| PJP      SPACE  4,15
01255  M00S01073.compmac +++|***       PJP - CONDITIONAL POSITIVE SHORT OR LONG JUMP.
01256  M00S01074.compmac +++|*
01257  M00S01075.compmac +++|*         GENERATES EITHER A *PJN* OR THE EQUIVALENT LONG JUMP
01258  M00S01076.compmac +++|*         SERIES, DEPENDING UPON THE VALUE OF THE ADDRESS FIELD,
01259  M00S01077.compmac +++|*         AND UPON WHETHER THE ADDRESS HAS OR HAS NOT YET BEEN
01260  M00S01078.compmac +++|*         DEFINED.
01261  M00S01079.compmac +++|*
01262  M00S01080.compmac +++|*         PJP    ADDR
01263  M00S01081.compmac +++|*
01264  M00S01082.compmac +++|*         ENTRY  ADDR = BRANCH ADDRESS.
01265  M00S01083.compmac +++|*
01266  M00S01084.compmac +++|*         NOTE   DISCRETION SHOULD BE EXERCISED IN THE USE OF
01267  M00S01085.compmac +++|*                THIS MACRO AS IT WILL ALWAYS GENERATE A LONG
01268  M00S01086.compmac +++|*                JUMP SEQUENCE WHEN BRANCHING FORWARD.
01269  M00S01087.compmac +++|
01270  M00S01088.compmac +++|
01271  M00S01089.compmac +++|          PURGMAC  PJP
01272  M00S01090.compmac +++|
01273  M00S01091.compmac +++| PJP      MACRO  A
01274  M00S01092.compmac +++|.J IF DEF,A
01275  M00S01093.compmac +++|.J IFLE *-A,37B
01276  M00S01094.compmac +++|.J IFPL *-A
01277  M00S01095.compmac +++|  PJN A
01278  M00S01096.compmac +++|.J ELSE
01279  M00S01097.compmac +++|  MJN *+3
01280  M00S01098.compmac +++|  LJM A
01281  M00S01099.compmac +++|.J ENDIF
01282  M00S01100.compmac +++| PJP      ENDM
01283  M00S01101.compmac +++| RCHAN    SPACE  4,10
01284  M00S01102.compmac +++|***       RCHAN - REQUEST CHANNEL.
01285  M00S01103.compmac +++|*
01286  M00S01104.compmac +++|*
01287  M00S01105.compmac +++|*         RCHAN
01288  M00S01106.compmac +++|*         ENTRY  (A) = CHANNEL NUMBER.
01289  M00S01107.compmac +++|
01290  M00S01108.compmac +++|
01291  M00S01109.compmac +++|          PURGMAC  RCHAN
01292  M00S01110.compmac +++|
01293  M00S01111.compmac +++| RCHAN    MACRO  CH
01294  M00S01112.compmac +++|  MACREF RCHAN
01295  M00S01113.compmac +++|  STD CM+1
01296  M00S01114.compmac +++|  STD CM+2
01297  M00S01115.compmac +++|  MONITOR RCHM
01298  M00S01116.compmac +++|  ENDM
01299  M00S01117.compmac +++| SBK      SPACE  4,15
01300  M00S01118.compmac +++|***       SBK - SUBTRACT CONSTANT FROM (A).
01301  M00S01119.compmac +++|*
01302  M00S01120.compmac +++|*         GENERATES EITHER AN *ADC*, *SBN*, OR *ADN* INSTRUCTION,
01303  M00S01121.compmac +++|*         DEPENDING UPON THE VALUE OF THE OPERAND.  IF THE VALUE
01304  M00S01122.compmac +++|*         OF THE OPERAND REDUCES TO ZERO, NO INSTRUCTION WILL BE
01305  M00S01123.compmac +++|*         GENERATED.
01306  M00S01124.compmac +++|*
01307  M00S01125.compmac +++|*         SBK    K
01308  M00S01126.compmac +++|*
01309  M00S01127.compmac +++|*         ENTRY  K = CONSTANT TO BE SUBTRACTED FROM (A).
01310  M00S01128.compmac +++|*
01311  M00S01129.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
01312  M00S01130.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
01313  M00S01131.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
01314  M00S01132.compmac +++|
01315  M00S01133.compmac +++|
01316  M00S01134.compmac +++|          PURGMAC  SBK
01317  M00S01135.compmac +++|
01318  M00S01136.compmac +++| SBK      MACRO  K
01319  M00S01137.compmac +++|  LOCAL B
01320  M00S01138.compmac +++|  IF DEF,K,3
01321  M00S01139.compmac +++|.1 SET K
01322  M00S01140.compmac +++|  ADK -.1
Line S01141 Modification History
M01 (Removed by) pmac5
Seq #  *Modification Id* Act 
----------------------------+
01323  M01S01141.pmac5   ---|  SKIP 5
Line S00001 Modification History
M01 (Added by) pmac5
Seq #  *Modification Id* Act 
----------------------------+
01324  M01S00001.pmac5   +++|  SKIP 8D
01325  M01S00002.pmac5   +++|B MICRO 1,, "QUAL"
01326  M00S01142.compmac +++|  RMT
Line S00003 Modification History
M01 (Added by) pmac5
Seq #  *Modification Id* Act 
----------------------------+
01327  M01S00003.pmac5   +++|  QUAL "B"
01328  M00S01143.compmac +++|B EQU K
Line S00004 Modification History
M01 (Added by) pmac5
Seq #  *Modification Id* Act 
----------------------------+
01329  M01S00004.pmac5   +++|  QUAL *
01330  M00S01144.compmac +++|  RMT
01331  M00S01145.compmac +++|.1 MICRO 1,,*B*
01332  M00S01146.compmac +++|  ADC -".1"
01333  M00S01147.compmac +++| SBK      ENDM
01334  M00S01148.compmac +++| SETMS    SPACE  4,30
01335  M00S01149.compmac +++|***       SETMS - SELECT MASS STORAGE PROCESSING DRIVER AND OPTIONS.
01336  M00S01150.compmac +++|*
01337  M00S01151.compmac +++|*         THE *SETMS* MACRO LOADS A MASS STORAGE DRIVER APPROPRIATE
01338  M00S01152.compmac +++|*         FOR THE OPERATION TO BE PERFORMED AND SELECTS THE DESIRED
01339  M00S01153.compmac +++|*         ERROR PROCESSING OPTIONS.  THE DRIVER INTERFACE IS FULLY
01340  M00S01154.compmac +++|*         DOCUMENTED IN *PPR*.
01341  M00S01155.compmac +++|*
01342  M00S01156.compmac +++|*
01343  M00S01157.compmac +++|*         SETMS  OP,(EP1,EP2,... ,EPN),AD
01344  M00S01158.compmac +++|*
01345  M00S01159.compmac +++|*         OP     OPERATION TO PERFORM.
01346  M00S01160.compmac +++|*                IO      = NORMAL I/O OPERATION SELECTION.
01347  M00S01161.compmac +++|*                PIO     = PRIVILEGED I/O.  DRIVER NAME IS FORCED
01348  M00S01162.compmac +++|*                          TO *6DI* FOR 7155-TYPE BUFFERED DEVICES.
01349  M00S01163.compmac +++|*                READSTR = READ STREAM DEVICE.  THIS OPTION APPLIES TO
01350  M00S01164.compmac +++|*                          BUFFERED DEVICES ONLY.
01351  M00S01165.compmac +++|*                READSYS = READ SYSTEM FILE.  THE EST ORDINAL MAY BE
01352  M00S01166.compmac +++|*                          RESET BY *MTR* TO A BETTER DEVICE.  THIS
01353  M00S01167.compmac +++|*                          OPERATION TYPE IMPLIES SELECTION OF THE
01354  M00S01168.compmac +++|*                          *EPNS* ERROR PROCESSING OPTION IN THAT *MTR*
01355  M00S01169.compmac +++|*                          WILL NOT RETURN THE *LNRE* ERROR FLAG FOR AN
01356  M00S01170.compmac +++|*                          OFF OR SUSPECT DEVICE IF THE *READSYS*
01357  M00S01171.compmac +++|*                          OPERATION TYPE IS IN EFFECT.
01358  M00S01172.compmac +++|*                STATUS  = RETURN LOGICAL STATUS.  THE NORMAL *SETMS*
01359  M00S01173.compmac +++|*                          RETURN PARAMETERS ARE SET BUT THE DRIVER IS
01360  M00S01174.compmac +++|*                          NOT RELOADED.
01361  M00S01175.compmac +++|*                NODRIVER= THE CURRENT DRIVER IS INVALIDATED SUCH THAT
01362  M00S01176.compmac +++|*                          THE NEXT SETMS WILL LOAD A NEW DRIVER.
01363  M00S01177.compmac +++|*                POSITION= CELL *DRSW* IS CLEARED SO THAT A SEEK WILL
01364  M00S01178.compmac +++|*                          BE PERFORMED THE NEXT TIME THE DRIVER IS
01365  M00S01179.compmac +++|*                          CALLED.
01366  M00S01180.compmac +++|*
01367  M00S01181.compmac +++|*         EPX    ERROR PROCESSING OPTIONS.
01368  M00S01182.compmac +++|*                AD = ALLOW ACCESS OF *DOWN* DEVICE.
01369  M00S01183.compmac +++|*                AR = RETURN TO THE CALLER IMMEDIATELY FOR ANY TYPE
01370  M00S01184.compmac +++|*                     OF ERROR.
01371  M00S01185.compmac +++|*                DE = DISABLE *ENDMS*.
01372  M00S01186.compmac +++|*                DF = DISABLE FAILURE EVALUATION.  THE DEVICE WILL NOT
01373  M00S01187.compmac +++|*                     BE FLAGGED AS SUSPECT NOR WILL A TRACK BE SET IN
01374  M00S01188.compmac +++|*                     THE MST WHEN A MEDIA ERROR OCCURS.
01375  M00S01189.compmac +++|*                ER = RETURN TO CALLER FOR NORMAL ERROR CONDITIONS.
01376  M00S01190.compmac +++|*                     NORMAL ERRORS ARE THOSE NOT INCLUDED AMOUNG
01377  M00S01191.compmac +++|*                     RESERVE ERROR TYPES.
01378  M00S01192.compmac +++|*                ND = NO LEVEL 1 DIAGNOSTICS SHOULD BE RUN
01379  M00S01193.compmac +++|*                     (ISD DEVICES ONLY).
01380  M00S01194.compmac +++|*                NF = NO FLUSH OF EXTENDED MEMORY BUFFER ON *WLSF*
01381  M00S01195.compmac +++|*                     FUNCTION (BUFFERED DEVICES ONLY).
01382  M00S01196.compmac +++|*                NR = IMMEDIATE RETURN ON *DEVICE NOT READY* CONDITION.
01383  M00S01197.compmac +++|*                NS = IGNORE DEVICE STATE.  THIS OPTION IS USED BY PP
01384  M00S01198.compmac +++|*                     PROGRAMS ATTEMPT TO ACCESS A DEVICE REGARDLESS OF
01385  M00S01199.compmac +++|*                     ITS LOGICAL STATUS.
01386  M00S01200.compmac +++|*                RR = IMMEDIATE RETURN ON RESERVE ERRORS.
01387  M00S01201.compmac +++|*                RW = REWRITE DATA OPERATION, RECOPY OF EXISTING DATA
01388  M00S01202.compmac +++|*                     (BUFFERED DEVICES ONLY).
01389  M00S01203.compmac +++|*                SM = DISALLOW *1DD* LOAD INTO THIS PP.
01390  M00S01204.compmac +++|*
01391  M00S01205.compmac +++|*         AD     ADDRESS OF WRITE ERROR PROCESSING BUFFER
01392  M00S01206.compmac +++|*
01393  M00S01207.compmac +++|*         THIS MACRO MAY BE CALLED FOR CROSS REFERENCE PURPOSES
01394  M00S01208.compmac +++|*         WITHOUT GENERATING CODE VIA THE FOLLOWING FORMAT -
01395  M00S01209.compmac +++|*
01396  M00S01210.compmac +++|*                SETMS   =,OP,(EP1,EP2,...,EPN),AD
01397  M00S01211.compmac +++|*
01398  M00S01212.compmac +++|*         NOTE - THIS MACRO IS THE ONLY SUPPORTED INTERFACE TO THE
01399  M00S01213.compmac +++|*         *.SMS* PPR ENTRY POINT.  THE VALUE OF THIS SYMBOL IS
01400  M00S01214.compmac +++|*         DEFINED IN *COMSMSP* AND *PPCOM*.
01401  M00S01215.compmac +++|
01402  M00S01216.compmac +++|
01403  M00S01217.compmac +++|          PURGMAC  SETMS
01404  M00S01218.compmac +++|
01405  M00S01219.compmac +++| SETMS    MACRO  O,E,A
01406  M00S01220.compmac +++|  MACREF SETMS
01407  M00S01221.compmac +++|  IFC EQ,*O*PREAD*,1
01408  M00S01222.compmac +++|  SKIP 1
01409  M00S01223.compmac +++|.1 IFC EQ,*O*PWRITE*
01410  M00S01224.compmac +++|.2 IF DEF,REL=
01411  M00S01225.compmac +++|.2 IFEQ REL=,1
01412  M00S01226.compmac +++|  LDD LA
01413  M00S01227.compmac +++|  ADC *+5
01414  M00S01228.compmac +++|.2 ELSE
01415  M00S01229.compmac +++|  LDC *+5
01416  M00S01230.compmac +++|.2 ENDIF
01417  M00S01231.compmac +++|  STP .SMSB
01418  M00S01232.compmac +++|  LDC 2RDI
01419  M00S01233.compmac +++|.1 ENDIF
01420  M00S01234.compmac +++|  NOREF .1,.2,.3,.4
01421  M00S01235.compmac +++|.1 IFC NE,*O*=*
01422  M00S01236.compmac +++|  IFC EQ,*O*POSITION*,3
01423  M00S01237.compmac +++|  LDN 0
01424  M00S01238.compmac +++|  STI D1
01425  M00S01239.compmac +++|.1 SKIP
01426  M00S01240.compmac +++|  IFC EQ,*O*NODRIVER*,3
01427  M00S01241.compmac +++|  LDN 0
01428  M00S01242.compmac +++|  STP MSD
01429  M00S01243.compmac +++|.1 SKIP
01430  M00S01244.compmac +++|.2 SET 0
01431  M00S01245.compmac +++|.3 SET 10
01432  M00S01246.compmac +++|  ECHO ,SO=(IO,PIO,PIOCH,READSYS,READSTR,STATUS,IOCH)
01433  M00S01247.compmac +++|.2 SET .2+1
01434  M00S01248.compmac +++|.4 IFC EQ,$SO$O$
01435  M00S01249.compmac +++|._O EQU .2-1
01436  M00S01250.compmac +++|.3 SET ._O
01437  M00S01251.compmac +++|  STOPDUP
01438  M00S01252.compmac +++|.4 ENDIF
01439  M00S01253.compmac +++|  ENDD
01440  M00S01254.compmac +++|.4 IFEQ .3,10
01441  M00S01255.compmac +++|  ERR ILLEGAL SETMS OPTION - O
01442  M00S01256.compmac +++|.4 ELSE
01443  M00S01257.compmac +++|  IRP E
01444  M00S01258.compmac +++|.3 SET .3+EP_E*10B
01445  M00S01259.compmac +++|  IRP
01446  M00S01260.compmac +++|  IFC NE,*A**,3
01447  M00S01261.compmac +++|.3 SET .3+400000B
01448  M00S01262.compmac +++|  LDC A
01449  M00S01263.compmac +++|  STP WDSE
01450  M00S01264.compmac +++|  LDK .3
01451  M00S01265.compmac +++|  RJP .SMS
01452  M00S01266.compmac +++|.4 ENDIF
01453  M00S01267.compmac +++|.1 ENDIF
01454  M00S01268.compmac +++|  ENDM
01455  M00S01269.compmac +++| SFA      SPACE  4,25
01456  M00S01270.compmac +++|***       SFA - CALCULATE FIRST WORD ADDRESS IN MANAGED TABLE.
01457  M00S01271.compmac +++|*
01458  M00S01272.compmac +++|*         GIVEN AN ORDINAL IN A MANAGED TABLE (CLT, EJT, EST, SYSTEM
01459  M00S01273.compmac +++|*         FNT OR QFT), THE *SFA* MACRO CALCULATES THE TABLE ADDRSS OF
01460  M00S01274.compmac +++|*         THE FIRST WORD OF THE ENTRY BY CALLING THE APPROPRIATE
01461  M00S01275.compmac +++|*         PROCESSOR IN THE COMMON DECK *COMPGFP*.  IN THE CASE OF THE
01462  M00S01276.compmac +++|*         EST, THE *PPR* ROUTINE IS NORMALLY USED.
01463  M00S01277.compmac +++|*
01464  M00S01278.compmac +++|*         SFA    TABLE,ORD
01465  M00S01279.compmac +++|*
01466  M00S01280.compmac +++|*         ENTRY  TABLE = MANAGED TABLE MNEMONIC.
01467  M00S01281.compmac +++|*                      CLT = COMMON LIBRARIES TABLE.
01468  M00S01282.compmac +++|*                      EJT = EXECUTING JOB TABLE.
01469  M00S01283.compmac +++|*                      EST = EQUIPMENT STATUS TABLE.
01470  M00S01284.compmac +++|*                      FNT = SYSTEM FNT TABLE.
Line S00029 Modification History
M01 (Added by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
01471  M01S00029.271l750 +++|*                      JCB = JOB CONTROL BLOCK TABLE.
01472  M00S01285.compmac +++|*                      QFT = QUEUE FILE TABLE.
Line S00015 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
01473  M01S00015.274l797 +++|*                      ORT = OPTICAL DISK REQUEST TABLE.
01474  M00S01286.compmac +++|*                ORD = OPTIONAL DIRECT CELL OR MEMORY LOCATION
01475  M00S01287.compmac +++|*                      CONTAINING TABLE ORDINAL.
01476  M00S01288.compmac +++|*                (A) = TABLE ORDINAL, IF *ORD* NOT SPECIFIED.
01477  M00S01289.compmac +++|*
01478  M00S01290.compmac +++|*         EXIT   (A) = ABSOLUTE ADDRESS OF TABLE ENTRY.
01479  M00S01291.compmac +++|*
Line S01292 Modification History
M01 (Removed by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
01480  M01S01292.271l750 ---|*         CALLS  .CLT, .EJT, .EST, .FNT, .QFT.
Line S00030 Modification History
M01 (Added by) 271l750
M02 (Removed by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
01481  M02S00030.274l797 ---|*         CALLS  .CLT, .EJT, .EST, .FNT, .JCB, .QFT.
Line S00016 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
01482  M01S00016.274l797 +++|*         CALLS  .CLT, .EJT, .EST, .FNT, .JCB, .QFT, .ORT.
01483  M00S01293.compmac +++|
01484  M00S01294.compmac +++|
01485  M00S01295.compmac +++|          PURGMAC  SFA
01486  M00S01296.compmac +++|
01487  M00S01297.compmac +++| SFA      MACRO  T,R
01488  M00S01298.compmac +++|  MACREF SFA
01489  M00S01299.compmac +++|.1 SET 0
Line S01300 Modification History
M01 (Removed by) 271l750
Seq #  *Modification Id* Act 
----------------------------+
01490  M01S01300.271l750 ---|.A ECHO ,TB=(CLT,EJT,EST,FNT,QFT)
Line S00031 Modification History
M01 (Added by) 271l750
M02 (Removed by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
01491  M02S00031.274l797 ---|.A ECHO ,TB=(CLT,EJT,EST,FNT,JCB,QFT)
Line S00017 Modification History
M01 (Added by) 274l797
Seq #  *Modification Id* Act 
----------------------------+
01492  M01S00017.274l797 +++|.A ECHO ,TB=(CLT,EJT,EST,FNT,JCB,QFT,ORT)
01493  M00S01301.compmac +++|.B IFC EQ,$TB$T$
01494  M00S01302.compmac +++|.1 SET 1
01495  M00S01303.compmac +++|  STOPDUP
01496  M00S01304.compmac +++|.B ENDIF
01497  M00S01305.compmac +++|.A ENDD
01498  M00S01306.compmac +++|.A IFEQ .1,1
01499  M00S01307.compmac +++|.B IFC NE,$R$$
01500  M00S01308.compmac +++|.C IFLT R,100B
01501  M00S01309.compmac +++|  LDD R
01502  M00S01310.compmac +++|.C ELSE
01503  M00S01311.compmac +++|  LDM R
01504  M00S01312.compmac +++|.C ENDIF
01505  M00S01313.compmac +++|.B ENDIF
01506  M00S01314.compmac +++|.B IFC NE,/T/EST/
01507  M00S01315.compmac +++|  RJM .T
01508  M00S01316.compmac +++|.B ELSE
01509  M00S01317.compmac +++|  RJP .T
01510  M00S01318.compmac +++|.B ENDIF
01511  M00S01319.compmac +++|.A ELSE
01512  M00S01320.compmac +++|  ERR ILLEGAL TABLE TYPE - T
01513  M00S01321.compmac +++|.A ENDIF
01514  M00S01322.compmac +++| SFA      ENDM
01515  M00S01323.compmac +++| SHK      SPACE  4,15
01516  M00S01324.compmac +++|***       SHK - CONDITIONALLY GENERATE SHIFT INSTRUCTION.
01517  M00S01325.compmac +++|*
01518  M00S01326.compmac +++|*         GENERATES A *SHN* INSTRUCTION IF THE VALUE
01519  M00S01327.compmac +++|*         OF THE OPERAND IS NON-ZERO.
01520  M00S01328.compmac +++|*
01521  M00S01329.compmac +++|*         SHK    K
01522  M00S01330.compmac +++|*
01523  M00S01331.compmac +++|*         ENTRY  K = SHIFT COUNT.
01524  M00S01332.compmac +++|*
01525  M00S01333.compmac +++|*         NOTE   BECAUSE OF THE VARIABILITY OF THE CODE
01526  M00S01334.compmac +++|*                GENERATED BY THIS MACRO, IT MUST NOT BE
01527  M00S01335.compmac +++|*                CHANGED BY ON-LINE CODE MODIFICATION.
01528  M00S01336.compmac +++|
01529  M00S01337.compmac +++|
01530  M00S01338.compmac +++|          PURGMAC SHK
01531  M00S01339.compmac +++|
01532  M00S01340.compmac +++| SHK      MACRO  K
01533  M00S01341.compmac +++|  IFNE K,0,1
01534  M00S01342.compmac +++|  SHN K
01535  M00S01343.compmac +++| SHK      ENDM
01536  M00S01344.compmac +++| SUBR     SPACE  4,10
01537  M00S01345.compmac +++|***       SUBR - DEFINE SUBROUTINE ENTRY/EXIT LINE.
01538  M00S01346.compmac +++|*
01539  M00S01347.compmac +++|*
01540  M00S01348.compmac +++|*NAME     SUBR   RTN
01541  M00S01349.compmac +++|*         DECLARE *NAME* TO BE THE ENTRY POINT TO A PP SUBROUTINE.
01542  M00S01350.compmac +++|*         THIS SUBROUTINE IS ENTERED VIA RETURN JUMP TO *NAME*.
01543  M00S01351.compmac +++|*         *RTN* = OPTIONAL RETURN IF NOT ENTERED VIA RETURN JUMP.
01544  M00S01352.compmac +++|*
01545  M00S01353.compmac +++|*         THE FOLLOWING CODE IS GENERATED -
01546  M00S01354.compmac +++|*NAMEX    LJM    RTN         OR
01547  M00S01355.compmac +++|*NAMEX    LJM    *
01548  M00S01356.compmac +++|*NAME     EQU    *-1
01549  M00S01357.compmac +++|
01550  M00S01358.compmac +++|
01551  M00S01359.compmac +++|          PURGMAC  SUBR
01552  M00S01360.compmac +++|
01553  M00S01361.compmac +++|          MACRO  SUBR,A,B
Line S01362 Modification History
M01 (Removed by) ns2552
Seq #  *Modification Id* Act 
----------------------------+
01554  M01S01362.ns2552  ---|.1 SET B *
01555  M01S01363.ns2552  ---|A_X LJP .1
Line S00001 Modification History
M01 (Added by) ns2552
Seq #  *Modification Id* Act 
----------------------------+
01556  M01S00001.ns2552  +++|          IFC    EQ,$B$$,2
01557  M01S00002.ns2552  +++| A_X      LJP    *
01558  M01S00003.ns2552  +++|          ELSE   1
01559  M01S00004.ns2552  +++| A_X      LJP    B
01560  M00S01364.compmac +++|A EQU *-1
01561  M00S01365.compmac +++|  ENDM
Line S00024 Modification History
M01 (Added by) 273l780
Seq #  *Modification Id* Act 
----------------------------+
01562  M01S00024.273l780 +++| TADC     SPACE  4,10
01563  M01S00025.273l780 +++|***       TADC - RELOCATABLE *ADC* INSTRUCTION.
01564  M01S00026.273l780 +++|*
01565  M01S00027.273l780 +++|*         ASSEMBLES AN *ADC* INSTRUCTION AND INFORMATION TO ALLOW THE
01566  M01S00028.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01567  M01S00029.273l780 +++|*
01568  M01S00030.273l780 +++|*         TADC   C,R
01569  M01S00031.273l780 +++|*
01570  M01S00032.273l780 +++|*         ENTRY  C = CONSTANT TO BE ASSEMBLED INTO *ADC* INSTRUCTION.
01571  M01S00033.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *C* BY *COMPSIC*.
01572  M01S00034.273l780 +++|
01573  M01S00035.273l780 +++|
01574  M01S00036.273l780 +++|          PURGMAC  TADC
01575  M01S00037.273l780 +++|
01576  M01S00038.273l780 +++| TADC     MACRO  C,R
01577  M01S00039.273l780 +++|          LOCAL  A
01578  M01S00040.273l780 +++| A        EQU    *
01579  M01S00041.273l780 +++|          ADC    C
01580  M01S00042.273l780 +++| SIC      RMT
01581  M01S00043.273l780 +++|          CON    A
01582  M01S00044.273l780 +++|          CON    R
01583  M01S00045.273l780 +++| SIC      RMT
01584  M01S00046.273l780 +++| TADC     ENDM
01585  M01S00047.273l780 +++| TADM     SPACE  4,10
01586  M01S00048.273l780 +++|***       TADM - RELOCATABLE *ADM* INSTRUCTION.
01587  M01S00049.273l780 +++|*
01588  M01S00050.273l780 +++|*         ASSEMBLES AN *ADM* INSTRUCTION AND INFORMATION TO ALLOW THE
01589  M01S00051.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01590  M01S00052.273l780 +++|*
01591  M01S00053.273l780 +++|*         TADM   M,D,R
01592  M01S00054.273l780 +++|*
01593  M01S00055.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *ADM* INSTRUCTION.
01594  M01S00056.273l780 +++|*                D = DIRECT CELL.
01595  M01S00057.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01596  M01S00058.273l780 +++|
01597  M01S00059.273l780 +++|
01598  M01S00060.273l780 +++|          PURGMAC  TADM
01599  M01S00061.273l780 +++|
01600  M01S00062.273l780 +++| TADM     MACRO  M,D,R
01601  M01S00063.273l780 +++|          LOCAL  A
01602  M01S00064.273l780 +++| A        EQU    *
01603  M01S00065.273l780 +++|          IFC    EQ,$D$$,1
01604  M01S00066.273l780 +++|          ADM    M
01605  M01S00067.273l780 +++|          ELSE   1
01606  M01S00068.273l780 +++|          ADM    M,D
01607  M01S00069.273l780 +++| SIC      RMT
01608  M01S00070.273l780 +++|          CON    A
01609  M01S00071.273l780 +++|          CON    R
01610  M01S00072.273l780 +++| SIC      RMT
01611  M01S00073.273l780 +++| TADM     ENDM
01612  M01S00074.273l780 +++| TADN     SPACE  4,10
01613  M01S00075.273l780 +++|***       TADN - RELOCATABLE *ADN* INSTRUCTION.
01614  M01S00076.273l780 +++|*
01615  M01S00077.273l780 +++|*         ASSEMBLES AN *ADN* INSTRUCTION AND INFORMATION TO ALLOW THE
01616  M01S00078.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01617  M01S00079.273l780 +++|*
01618  M01S00080.273l780 +++|*         TADN   N,R
01619  M01S00081.273l780 +++|*
01620  M01S00082.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *ADN* INSTRUCTION.
01621  M01S00083.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01622  M01S00084.273l780 +++|
01623  M01S00085.273l780 +++|
01624  M01S00086.273l780 +++|          PURGMAC  TADN
01625  M01S00087.273l780 +++|
01626  M01S00088.273l780 +++| TADN     MACRO  N,R
01627  M01S00089.273l780 +++|          LOCAL  A
01628  M01S00090.273l780 +++| A        EQU    *-1
01629  M01S00091.273l780 +++|          ADN    N
01630  M01S00092.273l780 +++| SIC      RMT
01631  M01S00093.273l780 +++|          CON    A
01632  M01S00094.273l780 +++|          CON    R
01633  M01S00095.273l780 +++| SIC      RMT
01634  M01S00096.273l780 +++| TADN     ENDM
01635  M01S00097.273l780 +++| TAOM     SPACE  4,10
01636  M01S00098.273l780 +++|***       TAOM - RELOCATABLE *AOM* INSTRUCTION.
01637  M01S00099.273l780 +++|*
01638  M01S00100.273l780 +++|*         ASSEMBLES AN *AOM* INSTRUCTION AND INFORMATION TO ALLOW THE
01639  M01S00101.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01640  M01S00102.273l780 +++|*
01641  M01S00103.273l780 +++|*         TAOM   M,D,R
01642  M01S00104.273l780 +++|*
01643  M01S00105.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *AOM* INSTRUCTION.
01644  M01S00106.273l780 +++|*                D = DIRECT CELL.
01645  M01S00107.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01646  M01S00108.273l780 +++|
01647  M01S00109.273l780 +++|
01648  M01S00110.273l780 +++|          PURGMAC  TAOM
01649  M01S00111.273l780 +++|
01650  M01S00112.273l780 +++| TAOM     MACRO  M,D,R
01651  M01S00113.273l780 +++|          LOCAL  A
01652  M01S00114.273l780 +++| A        EQU    *
01653  M01S00115.273l780 +++|          IFC    EQ,$D$$,1
01654  M01S00116.273l780 +++|          AOM    M
01655  M01S00117.273l780 +++|          ELSE   1
01656  M01S00118.273l780 +++|          AOM    M,D
01657  M01S00119.273l780 +++| SIC      RMT
01658  M01S00120.273l780 +++|          CON    A
01659  M01S00121.273l780 +++|          CON    R
01660  M01S00122.273l780 +++| SIC      RMT
01661  M01S00123.273l780 +++| TAOM     ENDM
01662  M01S00124.273l780 +++| TLCN     SPACE  4,10
01663  M01S00125.273l780 +++|***       TLCN - RELOCATABLE *LCN* INSTRUCTION.
01664  M01S00126.273l780 +++|*
01665  M01S00127.273l780 +++|*         ASSEMBLES AN *LCN* INSTRUCTION AND INFORMATION TO ALLOW THE
01666  M01S00128.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01667  M01S00129.273l780 +++|*
01668  M01S00130.273l780 +++|*         TLCN   N,R
01669  M01S00131.273l780 +++|*
01670  M01S00132.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *LCN* INSTRUCTION.
01671  M01S00133.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01672  M01S00134.273l780 +++|
01673  M01S00135.273l780 +++|
01674  M01S00136.273l780 +++|          PURGMAC  TLCN
01675  M01S00137.273l780 +++|
01676  M01S00138.273l780 +++| TLCN     MACRO  N,R
01677  M01S00139.273l780 +++|          LOCAL  A
01678  M01S00140.273l780 +++| A        EQU    *-1
01679  M01S00141.273l780 +++|          LCN    N
01680  M01S00142.273l780 +++| SIC      RMT
01681  M01S00143.273l780 +++|          CON    A
01682  M01S00144.273l780 +++|          CON    R
01683  M01S00145.273l780 +++| SIC      RMT
01684  M01S00146.273l780 +++| TLCN     ENDM
01685  M01S00147.273l780 +++| TLDC     SPACE  4,10
01686  M01S00148.273l780 +++|***       TLDC - RELOCATABLE *LDC* INSTRUCTION.
01687  M01S00149.273l780 +++|*
01688  M01S00150.273l780 +++|*         ASSEMBLES AN *LDC* INSTRUCTION AND INFORMATION TO ALLOW THE
01689  M01S00151.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01690  M01S00152.273l780 +++|*
01691  M01S00153.273l780 +++|*         TLDC   C,R
01692  M01S00154.273l780 +++|*
01693  M01S00155.273l780 +++|*         ENTRY  C = CONSTANT TO BE ASSEMBLED INTO *LDC* INSTRUCTION.
01694  M01S00156.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *C* BY *COMPSIC*.
01695  M01S00157.273l780 +++|
01696  M01S00158.273l780 +++|
01697  M01S00159.273l780 +++|          PURGMAC  TLDC
01698  M01S00160.273l780 +++|
01699  M01S00161.273l780 +++| TLDC     MACRO  C,R
01700  M01S00162.273l780 +++|          LOCAL  A
01701  M01S00163.273l780 +++| A        EQU    *
01702  M01S00164.273l780 +++|          LDC    C
01703  M01S00165.273l780 +++| SIC      RMT
01704  M01S00166.273l780 +++|          CON    A
01705  M01S00167.273l780 +++|          CON    R
01706  M01S00168.273l780 +++| SIC      RMT
01707  M01S00169.273l780 +++| TLDC     ENDM
01708  M01S00170.273l780 +++| TLDM     SPACE  4,10
01709  M01S00171.273l780 +++|***       TLDM - RELOCATABLE *LDM* INSTRUCTION.
01710  M01S00172.273l780 +++|*
01711  M01S00173.273l780 +++|*         ASSEMBLES AN *LDM* INSTRUCTION AND INFORMATION TO ALLOW THE
01712  M01S00174.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01713  M01S00175.273l780 +++|*
01714  M01S00176.273l780 +++|*         TLDM   M,D,R
01715  M01S00177.273l780 +++|*
01716  M01S00178.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *LDM* INSTRUCTION.
01717  M01S00179.273l780 +++|*                D = DIRECT CELL.
01718  M01S00180.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01719  M01S00181.273l780 +++|
01720  M01S00182.273l780 +++|
01721  M01S00183.273l780 +++|          PURGMAC  TLDM
01722  M01S00184.273l780 +++|
01723  M01S00185.273l780 +++| TLDM     MACRO  M,D,R
01724  M01S00186.273l780 +++|          LOCAL  A
01725  M01S00187.273l780 +++| A        EQU    *
01726  M01S00188.273l780 +++|          IFC    EQ,$D$$,1
01727  M01S00189.273l780 +++|          LDM    M
01728  M01S00190.273l780 +++|          ELSE   1
01729  M01S00191.273l780 +++|          LDM    M,D
01730  M01S00192.273l780 +++| SIC      RMT
01731  M01S00193.273l780 +++|          CON    A
01732  M01S00194.273l780 +++|          CON    R
01733  M01S00195.273l780 +++| SIC      RMT
01734  M01S00196.273l780 +++| TLDM     ENDM
01735  M01S00197.273l780 +++| TLDN     SPACE  4,10
01736  M01S00198.273l780 +++|***       TLDN - RELOCATABLE *LDN* INSTRUCTION.
01737  M01S00199.273l780 +++|*
01738  M01S00200.273l780 +++|*         ASSEMBLES AN *LDN* INSTRUCTION AND INFORMATION TO ALLOW THE
01739  M01S00201.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01740  M01S00202.273l780 +++|*
01741  M01S00203.273l780 +++|*         TLDN   N,R
01742  M01S00204.273l780 +++|*
01743  M01S00205.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *LDN* INSTRUCTION.
01744  M01S00206.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01745  M01S00207.273l780 +++|
01746  M01S00208.273l780 +++|
01747  M01S00209.273l780 +++|          PURGMAC  TLDN
01748  M01S00210.273l780 +++|
01749  M01S00211.273l780 +++| TLDN     MACRO  N,R
01750  M01S00212.273l780 +++|          LOCAL  A
01751  M01S00213.273l780 +++| A        EQU    *-1
01752  M01S00214.273l780 +++|          LDN    N
01753  M01S00215.273l780 +++| SIC      RMT
01754  M01S00216.273l780 +++|          CON    A
01755  M01S00217.273l780 +++|          CON    R
01756  M01S00218.273l780 +++| SIC      RMT
01757  M01S00219.273l780 +++| TLDN     ENDM
01758  M01S00220.273l780 +++| TLMC     SPACE  4,10
01759  M01S00221.273l780 +++|***       TLMC - RELOCATABLE *LMC* INSTRUCTION.
01760  M01S00222.273l780 +++|*
01761  M01S00223.273l780 +++|*         ASSEBLES AN *LMC* INSTRUCTION AND INFORMATION TO ALLOW THE
01762  M01S00224.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01763  M01S00225.273l780 +++|*
01764  M01S00226.273l780 +++|*         TLMC   C,R
01765  M01S00227.273l780 +++|*
01766  M01S00228.273l780 +++|*         ENTRY  C = CONSTANT TO BE ASSEMBLED INTO *LMC* INSTRUCTION.
01767  M01S00229.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *C* BY *COMPSIC*.
01768  M01S00230.273l780 +++|
01769  M01S00231.273l780 +++|
01770  M01S00232.273l780 +++|          PURGMAC  TLMC
01771  M01S00233.273l780 +++|
01772  M01S00234.273l780 +++| TLMC     MACRO  C,R
01773  M01S00235.273l780 +++|          LOCAL  A
01774  M01S00236.273l780 +++| A        EQU    *
01775  M01S00237.273l780 +++|          LMC    C
01776  M01S00238.273l780 +++| SIC      RMT
01777  M01S00239.273l780 +++|          CON    A
01778  M01S00240.273l780 +++|          CON    R
01779  M01S00241.273l780 +++| SIC      RMT
01780  M01S00242.273l780 +++| TLMC     ENDM
01781  M01S00243.273l780 +++| TLMM     SPACE  4,10
01782  M01S00244.273l780 +++|***       TLMM - RELOCATABLE *LMM* INSTRUCTION.
01783  M01S00245.273l780 +++|*
01784  M01S00246.273l780 +++|*         ASSEMBLES AN *LMM* INSTRUCTION AND INFORMATION TO ALLOW THE
01785  M01S00247.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01786  M01S00248.273l780 +++|*
01787  M01S00249.273l780 +++|*         TLMM   M,D,R
01788  M01S00250.273l780 +++|*
01789  M01S00251.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *LMM* INSTRUCTION.
01790  M01S00252.273l780 +++|*                D = DIRECT CELL.
01791  M01S00253.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01792  M01S00254.273l780 +++|
01793  M01S00255.273l780 +++|
01794  M01S00256.273l780 +++|          PURGMAC  TLMM
01795  M01S00257.273l780 +++|
01796  M01S00258.273l780 +++| TLMM     MACRO  M,D,R
01797  M01S00259.273l780 +++|          LOCAL  A
01798  M01S00260.273l780 +++| A        EQU    *
01799  M01S00261.273l780 +++|          IFC    EQ,$D$$,1
01800  M01S00262.273l780 +++|          LMM    M
01801  M01S00263.273l780 +++|          ELSE   1
01802  M01S00264.273l780 +++|          LMM    M,D
01803  M01S00265.273l780 +++| SIC      RMT
01804  M01S00266.273l780 +++|          CON    A
01805  M01S00267.273l780 +++|          CON    R
01806  M01S00268.273l780 +++| SIC      RMT
01807  M01S00269.273l780 +++| TLMM     ENDM
01808  M01S00270.273l780 +++| TLMN     SPACE  4,10
01809  M01S00271.273l780 +++|***       TLMN - RELOCATABLE *LMN* INSTRUCTION.
01810  M01S00272.273l780 +++|*
01811  M01S00273.273l780 +++|*         ASSEMBLES AN *LMN* INSTRUCTION AND INFORMATION TO ALLOW THE
01812  M01S00274.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01813  M01S00275.273l780 +++|*
01814  M01S00276.273l780 +++|*         TLMN   N,R
01815  M01S00277.273l780 +++|*
01816  M01S00278.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *LMN* INSTRUCTION.
01817  M01S00279.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01818  M01S00280.273l780 +++|
01819  M01S00281.273l780 +++|
01820  M01S00282.273l780 +++|          PURGMAC  TLMN
01821  M01S00283.273l780 +++|
01822  M01S00284.273l780 +++| TLMN     MACRO  N,R
01823  M01S00285.273l780 +++|          LOCAL  A
01824  M01S00286.273l780 +++| A        EQU    *-1
01825  M01S00287.273l780 +++|          LMN    N
01826  M01S00288.273l780 +++| SIC      RMT
01827  M01S00289.273l780 +++|          CON    A
01828  M01S00290.273l780 +++|          CON    R
01829  M01S00291.273l780 +++| SIC      RMT
01830  M01S00292.273l780 +++| TLMN     ENDM
Line S00001 Modification History
M01 (Added by) 283l840
Seq #  *Modification Id* Act 
----------------------------+
01831  M01S00001.283l840 +++| TLPC     SPACE  4,10
01832  M01S00002.283l840 +++|***       TLPC - RELOCATABLE *LPC* INSTRUCTION.
01833  M01S00003.283l840 +++|*
01834  M01S00004.283l840 +++|*         ASSEMBLES AN *LPC* INSTRUCTION AND INFORMATION TO ALLOW THE
01835  M01S00005.283l840 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01836  M01S00006.283l840 +++|*
01837  M01S00007.283l840 +++|*         TLPC   N,R
01838  M01S00008.283l840 +++|*
01839  M01S00009.283l840 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *LPC* INSTRUCTION.
01840  M01S00010.283l840 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01841  M01S00011.283l840 +++|
01842  M01S00012.283l840 +++|
01843  M01S00013.283l840 +++|          PURGMAC  TLPC
01844  M01S00014.283l840 +++|
01845  M01S00015.283l840 +++| TLPC     MACRO  N,R
01846  M01S00016.283l840 +++|          LOCAL  A
01847  M01S00017.283l840 +++| A        EQU    *
01848  M01S00018.283l840 +++|          LPC    N
01849  M01S00019.283l840 +++| SIC      RMT
01850  M01S00020.283l840 +++|          CON    A
01851  M01S00021.283l840 +++|          CON    R
01852  M01S00022.283l840 +++| SIC      RMT
01853  M01S00023.283l840 +++| TLPC     ENDM
Line S00293 Modification History
M01 (Added by) 273l780
Seq #  *Modification Id* Act 
----------------------------+
01854  M01S00293.273l780 +++| TLPN     SPACE  4,10
01855  M01S00294.273l780 +++|***       TLPN - RELOCATABLE *LPN* INSTRUCTION.
01856  M01S00295.273l780 +++|*
01857  M01S00296.273l780 +++|*         ASSEMBLES AN *LPN* INSTRUCTION AND INFORMATION TO ALLOW THE
01858  M01S00297.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01859  M01S00298.273l780 +++|*
01860  M01S00299.273l780 +++|*         TLPN   N,R
01861  M01S00300.273l780 +++|*
01862  M01S00301.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *LPN* INSTRUCTION.
01863  M01S00302.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01864  M01S00303.273l780 +++|
01865  M01S00304.273l780 +++|
01866  M01S00305.273l780 +++|          PURGMAC  TLPN
01867  M01S00306.273l780 +++|
01868  M01S00307.273l780 +++| TLPN     MACRO  N,R
01869  M01S00308.273l780 +++|          LOCAL  A
01870  M01S00309.273l780 +++| A        EQU    *-1
01871  M01S00310.273l780 +++|          LPN    N
01872  M01S00311.273l780 +++| SIC      RMT
01873  M01S00312.273l780 +++|          CON    A
01874  M01S00313.273l780 +++|          CON    R
01875  M01S00314.273l780 +++| SIC      RMT
01876  M01S00315.273l780 +++| TLPN     ENDM
01877  M01S00316.273l780 +++| TRAM     SPACE  4,10
01878  M01S00317.273l780 +++|***       TRAM - RELOCATABLE *RAM* INSTRUCTION.
01879  M01S00318.273l780 +++|*
01880  M01S00319.273l780 +++|*         ASSEMBLES AN *RAM* INSTRUCTION AND INFORMATION TO ALLOW THE
01881  M01S00320.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01882  M01S00321.273l780 +++|*
01883  M01S00322.273l780 +++|*         TRAM   M,D,R
01884  M01S00323.273l780 +++|*
01885  M01S00324.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *RAM* INSTRUCTION.
01886  M01S00325.273l780 +++|*                D = DIRECT CELL.
01887  M01S00326.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01888  M01S00327.273l780 +++|
01889  M01S00328.273l780 +++|
01890  M01S00329.273l780 +++|          PURGMAC  TRAM
01891  M01S00330.273l780 +++|
01892  M01S00331.273l780 +++| TRAM     MACRO  M,D,R
01893  M01S00332.273l780 +++|          LOCAL  A
01894  M01S00333.273l780 +++| A        EQU    *
01895  M01S00334.273l780 +++|          IFC    EQ,$D$$,1
01896  M01S00335.273l780 +++|          RAM    M
01897  M01S00336.273l780 +++|          ELSE   1
01898  M01S00337.273l780 +++|          RAM    M,D
01899  M01S00338.273l780 +++| SIC      RMT
01900  M01S00339.273l780 +++|          CON    A
01901  M01S00340.273l780 +++|          CON    R
01902  M01S00341.273l780 +++| SIC      RMT
01903  M01S00342.273l780 +++| TRAM     ENDM
01904  M01S00343.273l780 +++| TSBM     SPACE  4,10
01905  M01S00344.273l780 +++|***       TSBM - RELOCATABLE *SBM* INSTRUCTION.
01906  M01S00345.273l780 +++|*
01907  M01S00346.273l780 +++|*         ASSEMBLES AN *SBM* INSTRUCTION AND INFORMATION TO ALLOW THE
01908  M01S00347.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01909  M01S00348.273l780 +++|*
01910  M01S00349.273l780 +++|*         TSBM   M,D,R
01911  M01S00350.273l780 +++|*
01912  M01S00351.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *SBM* INSTRUCTION.
01913  M01S00352.273l780 +++|*                D = DIRECT CELL.
01914  M01S00353.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
01915  M01S00354.273l780 +++|
01916  M01S00355.273l780 +++|
01917  M01S00356.273l780 +++|          PURGMAC  TSBM
01918  M01S00357.273l780 +++|
01919  M01S00358.273l780 +++| TSBM     MACRO  M,D,R
01920  M01S00359.273l780 +++|          LOCAL  A
01921  M01S00360.273l780 +++| A        EQU    *
01922  M01S00361.273l780 +++|          IFC    EQ,$D$$,1
01923  M01S00362.273l780 +++|          SBM    M
01924  M01S00363.273l780 +++|          ELSE   1
01925  M01S00364.273l780 +++|          SBM    M,D
01926  M01S00365.273l780 +++| SIC      RMT
01927  M01S00366.273l780 +++|          CON    A
01928  M01S00367.273l780 +++|          CON    R
01929  M01S00368.273l780 +++| SIC      RMT
01930  M01S00369.273l780 +++| TSBM     ENDM
01931  M01S00370.273l780 +++| TSBN     SPACE  4,10
01932  M01S00371.273l780 +++|***       TSBN - RELOCATABLE *SBN* INSTRUCTION.
01933  M01S00372.273l780 +++|*
01934  M01S00373.273l780 +++|*         ASSEMBLES AN *SBN* INSTRUCTION AND INFORMATION TO ALLOW THE
01935  M01S00374.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01936  M01S00375.273l780 +++|*
01937  M01S00376.273l780 +++|*         TSBN   N,R
01938  M01S00377.273l780 +++|*
01939  M01S00378.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *SBN* INSTRUCTION.
01940  M01S00379.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01941  M01S00380.273l780 +++|
01942  M01S00381.273l780 +++|
01943  M01S00382.273l780 +++|          PURGMAC  TSBN
01944  M01S00383.273l780 +++|
01945  M01S00384.273l780 +++| TSBN     MACRO  N,R
01946  M01S00385.273l780 +++|          LOCAL  A
01947  M01S00386.273l780 +++| A        EQU    *-1
01948  M01S00387.273l780 +++|          SBN    N
01949  M01S00388.273l780 +++| SIC      RMT
01950  M01S00389.273l780 +++|          CON    A
01951  M01S00390.273l780 +++|          CON    R
01952  M01S00391.273l780 +++| SIC      RMT
01953  M01S00392.273l780 +++| TSBN     ENDM
01954  M01S00393.273l780 +++| TSCN     SPACE  4,10
01955  M01S00394.273l780 +++|***       TSCN - RELOCATABLE *SCN* INSTRUCTION.
01956  M01S00395.273l780 +++|*
01957  M01S00396.273l780 +++|*         ASSEMBLES AN *SCN* INSTRUCTION AND INFORMATION TO ALLOW THE
01958  M01S00397.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01959  M01S00398.273l780 +++|*
01960  M01S00399.273l780 +++|*         TSCN   N,R
01961  M01S00400.273l780 +++|*
01962  M01S00401.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *SCN* INSTRUCTION.
01963  M01S00402.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01964  M01S00403.273l780 +++|
01965  M01S00404.273l780 +++|
01966  M01S00405.273l780 +++|          PURGMAC  TSCN
01967  M01S00406.273l780 +++|
01968  M01S00407.273l780 +++| TSCN     MACRO  N,R
01969  M01S00408.273l780 +++|          LOCAL  A
01970  M01S00409.273l780 +++| A        EQU    *-1
01971  M01S00410.273l780 +++|          SCN    N
01972  M01S00411.273l780 +++| SIC      RMT
01973  M01S00412.273l780 +++|          CON    A
01974  M01S00413.273l780 +++|          CON    R
01975  M01S00414.273l780 +++| SIC      RMT
01976  M01S00415.273l780 +++| TSCN     ENDM
01977  M01S00416.273l780 +++| TSHN     ENDM
01978  M01S00417.273l780 +++|***       TSHN - RELOCATABLE *SHN* INSTRUCTION.
01979  M01S00418.273l780 +++|*
01980  M01S00419.273l780 +++|*         ASSEMBLES AN *SHN* INSTRUCTION AND INFORMATION TO ALLOW THE
01981  M01S00420.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
01982  M01S00421.273l780 +++|*
01983  M01S00422.273l780 +++|*         TSHN   N,R
01984  M01S00423.273l780 +++|*
01985  M01S00424.273l780 +++|*         ENTRY  N = CONSTANT TO BE ASSEMBLED INTO *SHN* INSTRUCTION.
01986  M01S00425.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *N* BY *COMPSIC*.
01987  M01S00426.273l780 +++|
01988  M01S00427.273l780 +++|
01989  M01S00428.273l780 +++|          PURGMAC  TSHN
01990  M01S00429.273l780 +++|
01991  M01S00430.273l780 +++| TSHN     MACRO  N,R
01992  M01S00431.273l780 +++|          LOCAL  A
01993  M01S00432.273l780 +++| A        EQU    *-1
01994  M01S00433.273l780 +++|          SHN    N
01995  M01S00434.273l780 +++| SIC      RMT
01996  M01S00435.273l780 +++|          CON    A
01997  M01S00436.273l780 +++|          CON    R
01998  M01S00437.273l780 +++| SIC      RMT
01999  M01S00438.273l780 +++| TSHN     ENDM
02000  M01S00439.273l780 +++| TSOM     SPACE  4,10
02001  M01S00440.273l780 +++|***       TSOM - RELOCATABLE *SOM* INSTRUCTION.
02002  M01S00441.273l780 +++|*
02003  M01S00442.273l780 +++|*         ASSEMBLES AN *SOM* INSTRUCTION AND INFORMATION TO ALLOW THE
02004  M01S00443.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
02005  M01S00444.273l780 +++|*
02006  M01S00445.273l780 +++|*         TSOM   M,D,R
02007  M01S00446.273l780 +++|*
02008  M01S00447.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *SOM* INSTRUCTION.
02009  M01S00448.273l780 +++|*                D = DIRECT CELL.
02010  M01S00449.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
02011  M01S00450.273l780 +++|
02012  M01S00451.273l780 +++|
02013  M01S00452.273l780 +++|          PURGMAC  TSOM
02014  M01S00453.273l780 +++|
02015  M01S00454.273l780 +++| TSOM     MACRO  M,D,R
02016  M01S00455.273l780 +++|          LOCAL  A
02017  M01S00456.273l780 +++| A        EQU    *
02018  M01S00457.273l780 +++|          IFC    EQ,$D$$,1
02019  M01S00458.273l780 +++|          SOM    M
02020  M01S00459.273l780 +++|          ELSE   1
02021  M01S00460.273l780 +++|          SOM    M,D
02022  M01S00461.273l780 +++| SIC      RMT
02023  M01S00462.273l780 +++|          CON    A
02024  M01S00463.273l780 +++|          CON    R
02025  M01S00464.273l780 +++| SIC      RMT
02026  M01S00465.273l780 +++| TSOM     ENDM
02027  M01S00466.273l780 +++| TSTM     SPACE  4,10
02028  M01S00467.273l780 +++|***       TSTM - RELOCATABLE *STM* INSTRUCTION.
02029  M01S00468.273l780 +++|*
02030  M01S00469.273l780 +++|*         ASSEMBLES AN *STM* INSTRUCTION AND INFORMATION TO ALLOW THE
02031  M01S00470.273l780 +++|*         CONSTANT VALUE TO BE MODIFIED BY *COMPSIC*.
02032  M01S00471.273l780 +++|*
02033  M01S00472.273l780 +++|*         TSTM   M,D,R
02034  M01S00473.273l780 +++|*
02035  M01S00474.273l780 +++|*         ENTRY  M = CONSTANT TO BE ASSEMBLED INTO *STM* INSTRUCTION.
02036  M01S00475.273l780 +++|*                D = DIRECT CELL.
02037  M01S00476.273l780 +++|*                R = ADDRESS OF VALUE TO BE ADDED TO *M* BY *COMPSIC*.
02038  M01S00477.273l780 +++|
02039  M01S00478.273l780 +++|
02040  M01S00479.273l780 +++|          PURGMAC  TSTM
02041  M01S00480.273l780 +++|
02042  M01S00481.273l780 +++| TSTM     MACRO  M,D,R
02043  M01S00482.273l780 +++|          LOCAL  A
02044  M01S00483.273l780 +++| A        EQU    *
02045  M01S00484.273l780 +++|          IFC    EQ,$D$$,1
02046  M01S00485.273l780 +++|          STM    M
02047  M01S00486.273l780 +++|          ELSE   1
02048  M01S00487.273l780 +++|          STM    M,D
02049  M01S00488.273l780 +++| SIC      RMT
02050  M01S00489.273l780 +++|          CON    A
02051  M01S00490.273l780 +++|          CON    R
02052  M01S00491.273l780 +++| SIC      RMT
02053  M01S00492.273l780 +++| TSTM     ENDM
02054  M00S01366.compmac +++| UJP      SPACE  4,15
02055  M00S01367.compmac +++|***       UJP - UNCONDITIONAL SHORT OR LONG JUMP.
02056  M00S01368.compmac +++|*
02057  M00S01369.compmac +++|*         GENERATES EITHER A *UJN* OR AN *LJM* INSTRUCTION,
02058  M00S01370.compmac +++|*         DEPENDING UPON THE VALUE OF THE ADDRESS FIELD,
02059  M00S01371.compmac +++|*         AND UPON WHETHER THE ADDRESS HAS OR HAS NOT YET
02060  M00S01372.compmac +++|*         BEEN DEFINED.
02061  M00S01373.compmac +++|*
02062  M00S01374.compmac +++|*         UJP    ADDR
02063  M00S01375.compmac +++|*
02064  M00S01376.compmac +++|*         ENTRY  ADDR = BRANCH ADDRESS.
02065  M00S01377.compmac +++|*
02066  M00S01378.compmac +++|*         NOTE   DISCRETION SHOULD BE EXERCISED IN THE USE OF
02067  M00S01379.compmac +++|*                THIS MACRO AS IT WILL ALWAYS GENERATE A LONG
02068  M00S01380.compmac +++|*                JUMP SEQUENCE WHEN BRANCHING FORWARD.
02069  M00S01381.compmac +++|
02070  M00S01382.compmac +++|
02071  M00S01383.compmac +++|          PURGMAC  UJP
02072  M00S01384.compmac +++|
02073  M00S01385.compmac +++| UJP      MACRO  A
02074  M00S01386.compmac +++|.J IF DEF,A
02075  M00S01387.compmac +++|.J IFLE *-A,37B
02076  M00S01388.compmac +++|.J IFPL *-A
02077  M00S01389.compmac +++|  UJN A
02078  M00S01390.compmac +++|.J ELSE
02079  M00S01391.compmac +++|  LJM A
02080  M00S01392.compmac +++|.J ENDIF
02081  M00S01393.compmac +++| UJP      ENDM
02082  M00S01394.compmac +++| ZJP      SPACE  4,15
02083  M00S01395.compmac +++|***       ZJP - CONDITIONAL ZERO SHORT OR LONG JUMP.
02084  M00S01396.compmac +++|*
02085  M00S01397.compmac +++|*         GENERATES EITHER A *ZJN* OR THE EQUIVALENT LONG JUMP
02086  M00S01398.compmac +++|*         SERIES, DEPENDING UPON THE VALUE OF THE ADDRESS FIELD,
02087  M00S01399.compmac +++|*         AND UPON WHETHER THE ADDRESS HAS OR HAS NOT YET BEEN
02088  M00S01400.compmac +++|*         DEFINED.
02089  M00S01401.compmac +++|*
02090  M00S01402.compmac +++|*         ZJP    ADDR
02091  M00S01403.compmac +++|*
02092  M00S01404.compmac +++|*         ENTRY  ADDR = BRANCH ADDRESS.
02093  M00S01405.compmac +++|*
02094  M00S01406.compmac +++|*         NOTE   DISCRETION SHOULD BE EXERCISED IN THE USE OF
02095  M00S01407.compmac +++|*                THIS MACRO AS IT WILL ALWAYS GENERATE A LONG
02096  M00S01408.compmac +++|*                JUMP SEQUENCE WHEN BRANCHING FORWARD.
02097  M00S01409.compmac +++|
02098  M00S01410.compmac +++|
02099  M00S01411.compmac +++|          PURGMAC  ZJP
02100  M00S01412.compmac +++|
02101  M00S01413.compmac +++| ZJP      MACRO  A
02102  M00S01414.compmac +++|.J IF DEF,A
02103  M00S01415.compmac +++|.J IFLE *-A,37B
02104  M00S01416.compmac +++|.J IFPL *-A
02105  M00S01417.compmac +++|  ZJN A
02106  M00S01418.compmac +++|.J ELSE
02107  M00S01419.compmac +++|  NJN *+3
02108  M00S01420.compmac +++|  LJM A
02109  M00S01421.compmac +++|.J ENDIF
02110  M00S01422.compmac +++| ZJP      ENDM
02111  M00S01423.compmac +++| .1       SPACE  4,10
02112  M00S01424.compmac +++|**        .1 - GENERATE BIT CONSTANT.
02113  M00S01425.compmac +++|*
02114  M00S01426.compmac +++|*
02115  M00S01427.compmac +++|*         .1     (P1,P2,...,PN)
02116  M00S01428.compmac +++|*         ENTRY  (PN) = BIT CONSTANT TO SET.
02117  M00S01429.compmac +++|
02118  M00S01430.compmac +++|
02119  M00S01431.compmac +++|          PURGMAC  .1
02120  M00S01432.compmac +++|
02121  M00S01433.compmac +++| .1       MACRO  P
02122  M00S01434.compmac +++|.1 SET 0
02123  M00S01435.compmac +++|  IRP P
02124  M00S01436.compmac +++|.2 DECMIC P
02125  M00S01437.compmac +++|.1 SET .1+1S".2"
02126  M00S01438.compmac +++|  IRP
02127  M00S01439.compmac +++|  ENDM
02128  M00S01440.compmac +++| BITCON   SPACE  4,10
02129  M00S01441.compmac +++|***       BITCON - SET BIT CONSTANT.
02130  M00S01442.compmac +++|*
02131  M00S01443.compmac +++|*
02132  M00S01444.compmac +++|*         BITCON (P1,P2,...,PN)
02133  M00S01445.compmac +++|*         ENTRY  (PN) = BIT NUMBERS TO SET.
02134  M00S01446.compmac +++|
02135  M00S01447.compmac +++|
02136  M00S01448.compmac +++|          PURGMAC  BITCON
02137  M00S01449.compmac +++|
02138  M00S01450.compmac +++| BITCON   MACRO  P
02139  M00S01451.compmac +++|.1 BITSET (P)
02140  M00S01452.compmac +++|  CON .1
02141  M00S01453.compmac +++|  ENDM
02142  M00S01454.compmac +++| INDEX    SPACE  4,30
02143  M00S01455.compmac +++|***       INDEX - GENERATE INDEXED TABLE.
02144  M00S01456.compmac +++|*
02145  M00S01457.compmac +++|*
02146  M00S01458.compmac +++|*NAME     INDEX  TYPE,ADDRESS
02147  M00S01459.compmac +++|*         THIS MACRO IS INTENDED TO GENERATE TABLES WHICH ARE INDEXED
02148  M00S01460.compmac +++|*         BY SYMBOLIC CONSTANTS SUCH AS FILE AND JOB ORIGIN CODES.
02149  M00S01461.compmac +++|*         IT HAS 3 CALLING SEQUENCES.
02150  M00S01462.compmac +++|*         IF *NAME* IS PRESENT, THE FWA OF THE TABLE IS SET TO *NAME*.
02151  M00S01463.compmac +++|*
02152  M00S01464.compmac +++|*         IF *ADDRESS* IS MISSING, THE TABLE IS TERMINATED WITH AN
02153  M00S01465.compmac +++|*         *ORG* TO THE END OF THE TABLE.  THIS RESULTS IN ZERO ENTRIES
02154  M00S01466.compmac +++|*         FOR UNDEFINED ENTRIES IN THE TABLE.
02155  M00S01467.compmac +++|*
02156  M00S01468.compmac +++|*         OTHERWISE, A TABLE ENTRY IS MADE AT *INDEX* + *TYPE* OF
02157  M00S01469.compmac +++|*         *ADDRESS*.
02158  M00S01470.compmac +++|*
02159  M00S01471.compmac +++|*         EXAMPLE - TO GENERATE A TABLE FOR PROCESSING FILE TYPES.
02160  M00S01472.compmac +++|*
02161  M00S01473.compmac +++|*TFTP     INDEX              BEGIN TABLE
02162  M00S01474.compmac +++|*
02163  M00S01475.compmac +++|*         INDEX  PRFT,PRP    PROCESS PRINT FILE AT *PRP*
02164  M00S01476.compmac +++|*         INDEX  LOFT,LOP    PROCESS LOCAL FILE AT *LOP*
02165  M00S01477.compmac +++|*
02166  M00S01478.compmac +++|*         INDEX  MXFT        TERMINATE TABLE AT *TFTP*+*MXFT*
02167  M00S01479.compmac +++|*
02168  M00S01480.compmac +++|*         THE CODE PROCESSING THIS TABLE NOTES THAT -
02169  M00S01481.compmac +++|*         A FILE TYPE \ *MXFT* CANNOT BE PROCESSED,
02170  M00S01482.compmac +++|*         A TABLE ENTRY = 0, CANNOT BE PROCESSED.
02171  M00S01483.compmac +++|*
02172  M00S01484.compmac +++|*         USES   SYMBOL NAME *INDEX*.
02173  M00S01485.compmac +++|*         CALLS  NONE.
02174  M00S01486.compmac +++|
02175  M00S01487.compmac +++|
02176  M00S01488.compmac +++|          PURGMAC  INDEX
02177  M00S01489.compmac +++|
02178  M00S01490.compmac +++|          MACRO  INDEX,A,B,C
02179  M00S01491.compmac +++|  IFC NE,$A$$
02180  M00S01492.compmac +++|A BSS 0
02181  M00S01493.compmac +++|.2 SET A
02182  M00S01494.compmac +++|  ELSE 5
02183  M00S01495.compmac +++|  ORG .2+B
02184  M00S01496.compmac +++|  IFC NE,$C$$,2
02185  M00S01497.compmac +++|  LOC B
02186  M00S01498.compmac +++|  CON C
02187  M00S01499.compmac +++|  BSS 0
02188  M00S01500.compmac +++|  ENDM
02189  M00S01501.compmac +++|          ENDX
cdc/nos2.source/opl.opl871/common/compmac.txt ยท Last modified: by 127.0.0.1