User Tools

Site Tools


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

Common COMPREL

2 Modifications

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M01S00001.comprel +++|          CTEXT  COMPREL - LOCATION FREE OVERLAY MACROS.
Line S00002 Modification History
M01 (Added by) comprel
M02 (Updated by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00002  M02S00002.281l803 ---|*         COMMENT COPYRIGHT CONTROL DATA CORP. 1970.
00003  M01S00001.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00004  M01S00003.comprel +++| MACROS   SPACE  4
00005  M01S00004.comprel +++|***       COMPREL - LOCATION FREE OVERLAY MACROS.
00006  M01S00005.comprel +++|*         G. R. MANSFIELD.  70/10/04.
00007  M01S00006.comprel +++|*         R. J. THIELEN.     75/11/20. MODIFIED.
00008  M01S00007.comprel +++| MACROS   SPACE  4
00009  M01S00008.comprel +++|***              APPROPRIATE INSTRUCTIONS ARE RE-DEFINED SUCH THAT
00010  M01S00009.comprel +++|*         PROPER CODE IS ASSEMBLED FOR LOCATION FREE OVERLAYS.
00011  M01S00010.comprel +++|*         THE ORIGINAL DEFINITION OF THE INSTRUCTION MAY BE USED
00012  M01S00011.comprel +++|*         WHERE APPROPRIATE, BY APPENDING A *.* TO THE OPCODE.
00013  M01S00001.ns21000 +++|*
00014  M01S00012.comprel +++|*         IF REL$ = 1 IS DEFINED, THEN THE USE OF A SYSTEXT SYMBOL
00015  M01S00013.comprel +++|*         (NON-RELOCATED VALUE) AS THE FIRST SYMBOL IN THE -M- FIELD
00016  M01S00014.comprel +++|*         OF AN INSTRUCTION WILL PERMIT USE OF THE -D- FIELD.
00017  M01S00015.comprel +++|*         IF *REL$* IS NOT DEFINED IN THE PROGRAM OR IS SET " 1,
00018  M01S00016.comprel +++|*         THERE IS NO CHANGE IN THE RELOCATION SCHEME.
00019  M01S00002.ns21000 +++|*
00020  M01S00017.comprel +++|*         IF *RIREL$* IS UNDEFINED, THE INSTRUCTIONS WILL BE REDEFINED
00021  M01S00018.comprel +++|*         AT THE TIME *COMPREL* IS ASSEMBLED AND THE MACRO *RIREL* WILL
00022  M01S00019.comprel +++|*         NOT BE CREATED.  IF *RIREL$* IS DEFINED, HOWEVER, THE MACRO
00023  M01S00020.comprel +++|*         *RIREL* WILL BE CREATED AND INSTRUCTION REDEFINITION WILL
00024  M01S00021.comprel +++|*         NOT TAKE PLACE UNTIL *RIREL* IS CALLED.  THE MACROS *RIREL*
00025  M01S00022.comprel +++|*         AND *RSTR* CAN BE USED TO ENABLE OR DISABLE INSTRUCTION
00026  M01S00023.comprel +++|*         REDEFINITION.
00027  M01S00024.comprel +++|*
00028  M01S00003.ns21000 +++|*         THE SYMBOL *REL=* WILL BE SET TO 1 WHEN RELOCATABLE ASSEMBLY
00029  M01S00004.ns21000 +++|*         IS IN EFFECT.  IT WILL BE UNDEFINED OR 0 IF RELOCATABLE
00030  M01S00005.ns21000 +++|*         ASSEMBLY IS NOT IN EFFECT.
00031  M01S00006.ns21000 +++|*
00032  M01S00025.comprel +++|*         THE FOLLOWING INSTRUCTIONS USE *LA* FOR RELOCATION.
00033  M01S00026.comprel +++|*         IF REL$ = 1 IS DEFINED, USE OF A SYSTEXT SYMBOL AS THE FIRST
00034  M01S00027.comprel +++|*         SYMBOL IN THE -M- FIELD OF THE INSTRUCTION WILL PREVENT
00035  M01S00028.comprel +++|*         RELOCATION BY *LA* AND WILL PERMIT USE OF THE -D- FIELD.
00036  M01S00007.ns21000 +++|*
00037  M01S00029.comprel +++|*                LJM
00038  M01S00030.comprel +++|*                RJM
00039  M01S00031.comprel +++|*                LDM
00040  M01S00032.comprel +++|*                ADM
00041  M01S00033.comprel +++|*                SBM
00042  M01S00034.comprel +++|*                LMM
00043  M01S00035.comprel +++|*                STM
00044  M01S00036.comprel +++|*                RAM
00045  M01S00037.comprel +++|*                AOM
00046  M01S00038.comprel +++|*                SOM
00047  M01S00039.comprel +++|*
00048  M01S00040.comprel +++|*         THE FOLLOWING INSTRUCTIONS ARE ILLEGAL UNLESS THE FIRST
00049  M01S00041.comprel +++|*         SYMBOL OF THE -M- FIELD IS A SYSTEXT SYMBOL (NON-RELOCATED
00050  M01S00042.comprel +++|*         VALUE) WHEN REL$ = 1 IS DEFINED.
00051  M01S00008.ns21000 +++|*
00052  M01S00043.comprel +++|*                CRM
00053  M01S00044.comprel +++|*                CWM
00054  M01S00045.comprel +++|*                AJM
00055  M01S00046.comprel +++|*                IJM
00056  M01S00047.comprel +++|*                FJM
00057  M01S00048.comprel +++|*                EJM
00058  M01S00049.comprel +++|*                IAM
00059  M01S00050.comprel +++|*                OAM
00060  M01S00051.comprel +++|*
00061  M01S00052.comprel +++|*         IF THE SYMBOL *RINST$* IS DEFINED, INSTRUCTIONS WILL BE
00062  M01S00053.comprel +++|*         RESTORED ON EXIT FROM THIS DECK.
00063  M01S00054.comprel +++| RELM     SPACE  4
00064  M01S00055.comprel +++|**        RELM - DEFINE M-TYPE INSTRUCTIONS TO USE *LA* AS D-PART OF
00065  M01S00056.comprel +++|*         INSTRUCTION.
00066  M01S00057.comprel +++|*
00067  M01S00058.comprel +++|*
00068  M01S00059.comprel +++|*         RELM   OPC,CODE
00069  M01S00060.comprel +++|*         ENTRY  *OPC* = INSTRUCTION MNEMONIC.
00070  M01S00061.comprel +++|*                *CODE* = OPERATION CODE.
00071  M01S00062.comprel +++|
00072  M01S00063.comprel +++|
00073  M01S00064.comprel +++|          PURGMAC RELM
00074  M01S00065.comprel +++| RELM     MACRO  OPC,CODE
00075  M01S00066.comprel +++|          PURGMAC OPC
00076  M01S00067.comprel +++| OPC.     PPOP   5,CODE
00077  M01S00068.comprel +++| OPC      MACRO  M,D
00078  M01S00069.comprel +++|          LOCAL  CP,SEP,SMB
00079  M01S00070.comprel +++| .A       IF     DEF,REL$
00080  M01S00071.comprel +++| .A       IFEQ   REL$,1
00081  M01S00072.comprel +++| .A       IF     DEF,//M
00082  M01S00073.comprel +++| CP       SET    1
00083  M01S00074.comprel +++|          DUP    9
00084  M01S00075.comprel +++| SEP      MICRO  CP,1,$_M$
00085  M01S00076.comprel +++| .B       IFC    NE,$"SEP"$$
00086  M01S00077.comprel +++| .B       IFC    LE,$"SEP"$9$
00087  M01S00078.comprel +++| CP       SET    CP+1
00088  M01S00079.comprel +++| .B       ELSE
00089  M01S00080.comprel +++|          STOPDUP
00090  M01S00081.comprel +++| .B       ENDIF
00091  M01S00082.comprel +++|          ENDD
00092  M01S00083.comprel +++| CP       SET    CP-1
00093  M01S00084.comprel +++| .A       IFNE   CP,0
00094  M01S00085.comprel +++| SMB      MICRO  1,CP,$_M$
00095  M01S00086.comprel +++| .A       IF     SST,//"SMB"
00096  M01S00087.comprel +++|          OPC.   M,D
00097  M01S00088.comprel +++| .A       ELSE
00098  M01S00089.comprel +++| .B       IFNE   D,0
00099  M01S00090.comprel +++|          ERR                D-FIELD NOT ALLOWED.
00100  M01S00091.comprel +++| .B       ELSE
00101  M01S00092.comprel +++|          OPC.   M,LA
00102  M01S00093.comprel +++| .B       ENDIF
00103  M01S00094.comprel +++| .A       ENDIF
00104  M01S00095.comprel +++| OPC      ENDM
00105  M01S00096.comprel +++| RELM     ENDM
00106  M01S00097.comprel +++| ILLM     SPACE  4
00107  M01S00098.comprel +++|**        ILLM - DEFINE CERTAIN M-TYPE INSTRUCTIONS TO BE ILLEGAL.
00108  M01S00099.comprel +++|*
00109  M01S00100.comprel +++|*
00110  M01S00101.comprel +++|*         ILLM   OPC
00111  M01S00102.comprel +++|*         ENTRY  *OPC* = INSTRUCTION MNEMONIC.
00112  M01S00103.comprel +++|*                *CODE* = OPERATION CODE.
00113  M01S00104.comprel +++|
00114  M01S00105.comprel +++|
00115  M01S00106.comprel +++|          PURGMAC ILLM
00116  M01S00107.comprel +++| ILLM     MACRO  OPC,CODE
00117  M01S00108.comprel +++|          PURGMAC OPC
00118  M01S00109.comprel +++| OPC.     PPOP   7,CODE
00119  M01S00110.comprel +++| OPC      MACRO  M,D
00120  M01S00111.comprel +++|          LOCAL  CP,SEP,SMB
00121  M01S00112.comprel +++| .A       IF     DEF,REL$
00122  M01S00113.comprel +++| .A       IFEQ   REL$,1
00123  M01S00114.comprel +++| .A       IF     DEF,//M
00124  M01S00115.comprel +++| CP       SET    1
00125  M01S00116.comprel +++|          DUP    9
00126  M01S00117.comprel +++| SEP      MICRO  CP,1,$_M$
00127  M01S00118.comprel +++| .B       IFC    NE,$"SEP"$$
00128  M01S00119.comprel +++| .B       IFC    LE,$"SEP"$9$
00129  M01S00120.comprel +++| CP       SET    CP+1
00130  M01S00121.comprel +++| .B       ELSE
00131  M01S00122.comprel +++|          STOPDUP
00132  M01S00123.comprel +++| .B       ENDIF
00133  M01S00124.comprel +++|          ENDD
00134  M01S00125.comprel +++| CP       SET    CP-1
00135  M01S00126.comprel +++| .A       IFNE   CP,0
00136  M01S00127.comprel +++| SMB      MICRO  1,CP,$_M$
00137  M01S00128.comprel +++| .A       IF     SST,//"SMB"
00138  M01S00129.comprel +++|          OPC.   M,D
00139  M01S00130.comprel +++| .A       ELSE
00140  M01S00131.comprel +++|          ERR                OPERATION NOT ALLOWED.
00141  M01S00132.comprel +++| .A       ENDIF
00142  M01S00133.comprel +++| OPC      ENDM
00143  M01S00134.comprel +++| ILLM     ENDM
00144  M01S00135.comprel +++| RIREL    SPACE  4
00145  M01S00136.comprel +++|***       RIREL - REDEFINE INSTRUCTIONS.
00146  M01S00137.comprel +++|*
00147  M01S00138.comprel +++|*         RIREL
00148  M01S00139.comprel +++|*         EACH TIME *RIREL* IS CALLED, INSTRUCTION REDEFINITION OCCURS.
00149  M01S00140.comprel +++|*         *RIREL* IS CREATED ONLY IF *RIREL$* IS DEFINED.
00150  M01S00141.comprel +++|
00151  M01S00142.comprel +++|
00152  M01S00143.comprel +++|          IF     DEF,RIREL$,2
00153  M01S00144.comprel +++|          PURGMAC RIREL
00154  M01S00145.comprel +++| RIREL    MACRO
00155  M01S00146.comprel +++|
00156  M01S00009.ns21000 +++| REL=     SET    1           INDICATE RELOCATABLE CODE
00157  M01S00010.ns21000 +++|
00158  M01S00147.comprel +++|          RELM   LJM,0100
00159  M01S00148.comprel +++|          RELM   RJM,0200
00160  M01S00149.comprel +++|          RELM   LDM,5000
00161  M01S00150.comprel +++|          RELM   ADM,5100
00162  M01S00151.comprel +++|          RELM   SBM,5200
00163  M01S00152.comprel +++|          RELM   LMM,5300
00164  M01S00153.comprel +++|          RELM   STM,5400
00165  M01S00154.comprel +++|          RELM   RAM,5500
00166  M01S00155.comprel +++|          RELM   AOM,5600
00167  M01S00156.comprel +++|          RELM   SOM,5700
00168  M01S00157.comprel +++|
00169  M01S00158.comprel +++|          ILLM   CRM,6100
00170  M01S00159.comprel +++|          ILLM   CWM,6300
00171  M01S00160.comprel +++|          ILLM   AJM,6400
00172  M01S00161.comprel +++|          ILLM   IJM,6500
00173  M01S00162.comprel +++|          ILLM   FJM,6600
00174  M01S00163.comprel +++|          ILLM   EJM,6700
00175  M01S00164.comprel +++|          ILLM   IAM,7100
00176  M01S00165.comprel +++|          ILLM   OAM,7300
00177  M01S00166.comprel +++|
00178  M01S00167.comprel +++|          ENDM
00179  M01S00168.comprel +++| RSTR     SPACE  4
00180  M01S00169.comprel +++|***       RSTR - RESTORE ALL REDEFINED INSTRUCTIONS.
00181  M01S00170.comprel +++|*
00182  M01S00171.comprel +++|*
00183  M01S00172.comprel +++|*         RSTR
00184  M01S00173.comprel +++|*         ENTRY  NONE.
00185  M01S00174.comprel +++|
00186  M01S00175.comprel +++|
00187  M01S00176.comprel +++|          PURGMAC RSTR
00188  M01S00177.comprel +++| RSTR     MACRO
00189  M01S00178.comprel +++|          PURGMAC LJM
00190  M01S00179.comprel +++|          PURGMAC RJM
00191  M01S00180.comprel +++|          PURGMAC LDM
00192  M01S00181.comprel +++|          PURGMAC ADM
00193  M01S00182.comprel +++|          PURGMAC SBM
00194  M01S00183.comprel +++|          PURGMAC LMM
00195  M01S00184.comprel +++|          PURGMAC STM
00196  M01S00185.comprel +++|          PURGMAC AOM
00197  M01S00186.comprel +++|          PURGMAC RAM
00198  M01S00187.comprel +++|          PURGMAC SOM
00199  M01S00188.comprel +++|          PURGMAC CRM
00200  M01S00189.comprel +++|          PURGMAC CWM
00201  M01S00190.comprel +++|          PURGMAC AJM
00202  M01S00191.comprel +++|          PURGMAC IJM
00203  M01S00192.comprel +++|          PURGMAC FJM
00204  M01S00193.comprel +++|          PURGMAC EJM
00205  M01S00194.comprel +++|          PURGMAC IAM
00206  M01S00195.comprel +++|          PURGMAC OAM
00207  M01S00196.comprel +++| LJM      OPSYN  LJM.
00208  M01S00197.comprel +++| RJM      OPSYN  RJM.
00209  M01S00198.comprel +++| LDM      OPSYN  LDM.
00210  M01S00199.comprel +++| ADM      OPSYN  ADM.
00211  M01S00200.comprel +++| SBM      OPSYN  SBM.
00212  M01S00201.comprel +++| LMM      OPSYN  LMM.
00213  M01S00202.comprel +++| STM      OPSYN  STM.
00214  M01S00203.comprel +++| AOM      OPSYN  AOM.
00215  M01S00204.comprel +++| RAM      OPSYN  RAM.
00216  M01S00205.comprel +++| SOM      OPSYN  SOM.
00217  M01S00206.comprel +++| CRM      OPSYN  CRM.
00218  M01S00207.comprel +++| CWM      OPSYN  CWM.
00219  M01S00208.comprel +++| AJM      OPSYN  AJM.
00220  M01S00209.comprel +++| IJM      OPSYN  IJM.
00221  M01S00210.comprel +++| FJM      OPSYN  FJM.
00222  M01S00211.comprel +++| EJM      OPSYN  EJM.
00223  M01S00212.comprel +++| IAM      OPSYN  IAM.
00224  M01S00213.comprel +++| OAM      OPSYN  OAM.
00225  M01S00011.ns21000 +++|
00226  M01S00012.ns21000 +++| REL=     SET    0           CLEAR RELOCATABLE CODE FLAG
00227  M01S00013.ns21000 +++|
00228  M01S00214.comprel +++|          ENDM
00229  M01S00215.comprel +++|
00230  M01S00216.comprel +++|
00231  M01S00217.comprel +++|          IF     DEF,RINST$
00232  M01S00218.comprel +++|          RSTR               RESTORE INSTRUCTIONS
00233  M01S00219.comprel +++|          ENDIF
00234  M01S00220.comprel +++|          SPACE  4,10
00235  M01S00221.comprel +++|          ENDX
cdc/nos2.source/opl.opl871/common/comprel.txt · Last modified: by 127.0.0.1