User Tools

Site Tools


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

Common COMCMTM

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.comcmtm +++|          CTEXT  COMCMTM - MANAGED TABLE MACROS.
Line S00002 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00002  M01S00002.281l803 ---|*         COMMENT COPYRIGHT CONTROL DATA CORP. 1970.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00003  M01S00001.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00004  M00S00003.comcmtm +++|          SPACE  4
00005  M00S00004.comcmtm +++|***       COMCMTM - MANAGED TABLE MACROS.
00006  M00S00005.comcmtm +++|*         G. R. MANSFIELD.  70/12/14.
00007  M00S00006.comcmtm +++|          SPACE  4
00008  M00S00007.comcmtm +++|***              COMCMTM CONTAINS MACROS FOR GENERATION, ALLOCATION
00009  M00S00008.comcmtm +++|*         AND PROCESSING OF MANAGED TABLES.  COMCMTM IS INTENDED FOR
00010  M00S00009.comcmtm +++|*         USE WITH COMCMTP.
00011  M00S00010.comcmtm +++| MACREF   SPACE  4,10
00012  M00S00011.comcmtm +++|**        MACREF - GENERATE MACRO SYMBOLIC REFERENCE TABLE LISTING.
00013  M00S00012.comcmtm +++|*
00014  M00S00013.comcmtm +++|*         CAUSES THE MACRO NAME TO BE LISTED IN THE SYMBOLIC
00015  M00S00014.comcmtm +++|*         REFERENCE TABLE UNDER THE QUALIFIER *MACRO$*.
00016  M00S00015.comcmtm +++|*
00017  M00S00016.comcmtm +++|*         MACREF MNAME
00018  M00S00017.comcmtm +++|*                MNAME    MACRO NAME FOR REFERENCE TABLE.
00019  M00S00018.comcmtm +++|
00020  M00S00019.comcmtm +++|
00021  M00S00020.comcmtm +++|          PURGMAC MACREF
00022  M00S00021.comcmtm +++|
00023  M00S00022.comcmtm +++| MACREF   MACRO  N
00024  M00S00023.comcmtm +++|  QUAL MACRO$
00025  M00S00024.comcmtm +++|N SET *
00026  M00S00025.comcmtm +++|  QUAL *
00027  M00S00026.comcmtm +++|  ENDM
00028  M00S00027.comcmtm +++| ADDWRD   SPACE  4
00029  M00S00028.comcmtm +++|***       ADDWRD - ADD WORD TO MANAGED TABLE.
00030  M00S00029.comcmtm +++|*
00031  M00S00030.comcmtm +++|*
00032  M00S00031.comcmtm +++|*         ADDWRD TABLE,REG
00033  M00S00032.comcmtm +++|*         ENTRY  *TABLE* = TABLE NUMBER.
00034  M00S00033.comcmtm +++|*                *REG* = REGISTER NAME OR EXPRESSION FOR WORD TO ADD.
00035  M00S00034.comcmtm +++|*         USES   A0, X1.
00036  M00S00035.comcmtm +++|*         CALLS  ADW.
00037  M00S00036.comcmtm +++|
00038  M00S00037.comcmtm +++|
00039  M00S00038.comcmtm +++| ADDWRD   MACRO  A,B
00040  M00S00039.comcmtm +++|  MACREF ADDWRD
00041  M00S00040.comcmtm +++|          IFC    NE,$X1$B$,1
00042  M00S00041.comcmtm +++|          BX1    B
00043  M00S00042.comcmtm +++|          R=     A0,A
00044  M00S00043.comcmtm +++|          RJ     ADW
00045  M00S00044.comcmtm +++|          ENDM
00046  M00S00045.comcmtm +++| ALLOC    SPACE  4
00047  M00S00046.comcmtm +++|***       ALLOC - ALLOCATE TABLE SPACE.
00048  M00S00047.comcmtm +++|*
00049  M00S00048.comcmtm +++|*
00050  M00S00049.comcmtm +++|*         ALLOC  TABLE,WORDS
00051  M00S00050.comcmtm +++|*         ENTRY  *TABLE* = TABLE NUMBER.
00052  M00S00051.comcmtm +++|*                *WORDS* = WORD COUNT OF TABLE.
00053  M00S00052.comcmtm +++|
00054  M00S00053.comcmtm +++|
00055  M00S00054.comcmtm +++| ALLOC    MACRO  A,B
00056  M00S00055.comcmtm +++|  MACREF ALLOC
00057  M00S00056.comcmtm +++|          R=     X1,B
00058  M00S00057.comcmtm +++|          R=     A0,A
00059  M00S00058.comcmtm +++|          RJ     ATS
00060  M00S00059.comcmtm +++|          ENDM
00061  M00S00060.comcmtm +++| SEARCH   SPACE  4
00062  M00S00061.comcmtm +++|***       SEARCH - SEARCH MANAGED TABLE.
00063  M00S00062.comcmtm +++|*
00064  M00S00063.comcmtm +++|*
00065  M00S00064.comcmtm +++|*         SEARCH TNAM,ENTRY,MASK
00066  M00S00065.comcmtm +++|*         ENTRY  *TNAM* = TABLE NAME.
00067  M00S00066.comcmtm +++|*                *ENTRY* = ENTRY TO SEARCH FOR.
00068  M00S00067.comcmtm +++|*                *MASK* = SEARCH MASK IN (X0).
00069  M00S00068.comcmtm +++|*                IF *MASK* IS NOT PRESENT, MASK IS ALL BITS.
00070  M00S00069.comcmtm +++|*
00071  M00S00070.comcmtm +++|*         CALLS  EQS OR MES.
00072  M00S00071.comcmtm +++|
00073  M00S00072.comcmtm +++|
00074  M00S00073.comcmtm +++| SEARCH   MACRO  TNAM,ENTRY,MASK
00075  M00S00074.comcmtm +++|  MACREF SEARCH
00076  M00S00075.comcmtm +++|          R=     A0,TNAM
00077  M00S00076.comcmtm +++|          R=     B7,C.TNAM
00078  M00S00077.comcmtm +++|          IFC    NE,$X6$ENTRY$,1
00079  M00S00078.comcmtm +++|          BX6    ENTRY
00080  M00S00079.comcmtm +++|          IFC    EQ,$MASK$$
00081  M00S00080.comcmtm +++|          RJ     EQS
00082  M00S00081.comcmtm +++|          ELSE   1
00083  M00S00082.comcmtm +++|          RJ     MES
00084  M00S00083.comcmtm +++|          ENDM
00085  M00S00084.comcmtm +++| TABLE    SPACE  4
00086  M00S00085.comcmtm +++|***       TABLE - GENERATE MANAGED TABLE.
00087  M00S00086.comcmtm +++|*
00088  M00S00087.comcmtm +++|*
00089  M00S00088.comcmtm +++|*         TABLE  TNAME,COUNT,EQUIV
00090  M00S00089.comcmtm +++|*         ENTRY  *TNAME* = TABLE NAME.
00091  M00S00090.comcmtm +++|*                *COUNT* = WORD COUNT/ENTRY (1 IF NOT SPECIFIED)
00092  M00S00091.comcmtm +++|*                *EQUIV* = EQUIVALENT TABLE NAME.  THIS ALLOWS CERTAIN
00093  M00S00092.comcmtm +++|*                            TABLES TO BE USED BY DIFFERENT PROCESSORS.
00094  M00S00093.comcmtm +++|*         EXIT   *F.TNAM* IS NAME OF WORD CONTAINING THE TABLE FWA.
00095  M00S00094.comcmtm +++|*                *L.TNAM* IS NAME OF WORD CONTAINING THE TABLE LENGTH.
00096  M00S00095.comcmtm +++|*                *C.TNAM* IS WORD COUNT PER ENTRY.
00097  M00S00096.comcmtm +++|
00098  M00S00097.comcmtm +++|
00099  M00S00098.comcmtm +++| NTAB     SET    0
00100  M00S00099.comcmtm +++|
00101  M00S00100.comcmtm +++|          MACRO  TABLE,TNAM,COUNT,EQUIV
00102  M00S00101.comcmtm +++|  MACREF TABLE
00103  M00S00102.comcmtm +++|          VFD    6/TNAM,18/C.TNAM,18/L.TNAM,18/F.TNAM
00104  M00S00103.comcmtm +++|          ORG    *-1
00105  M00S00104.comcmtm +++| C.TNAM   EQU    COUNT 1
00106  M00S00105.comcmtm +++|          IFC    EQ,$EQUIV$$
00107  M00S00106.comcmtm +++| TNAM     EQU    NTAB
00108  M00S00107.comcmtm +++| NTAB     SET    NTAB+1
00109  M00S00108.comcmtm +++| TABLES   RMT
00110  M00S00109.comcmtm +++|          ORG    FTAB+TNAM
00111  M00S00110.comcmtm +++| F.TNAM   CON    MEML+TNAM
00112  M00S00111.comcmtm +++|          ORG    LTAB+TNAM
00113  M00S00112.comcmtm +++| L.TNAM   CON    0
00114  M00S00113.comcmtm +++|          ORG    LTAB+NTAB
00115  M00S00114.comcmtm +++| TABLES   RMT
00116  M00S00115.comcmtm +++|
00117  M00S00116.comcmtm +++|          ELSE
00118  M00S00117.comcmtm +++| TNAM     EQU    EQUIV
00119  M00S00118.comcmtm +++| TABLES   RMT
00120  M00S00119.comcmtm +++| F.TNAM   EQU    F.EQUIV
00121  M00S00120.comcmtm +++| L.TNAM   EQU    L.EQUIV
00122  M00S00121.comcmtm +++| TABLES   RMT
00123  M00S00122.comcmtm +++|
00124  M00S00123.comcmtm +++|          ENDIF
00125  M00S00124.comcmtm +++|          ENDM
00126  M00S00125.comcmtm +++| TABLES   SPACE  4
00127  M00S00126.comcmtm +++|*         REMAINDER OF TABLE MANAGER STORAGE.
00128  M00S00127.comcmtm +++|
00129  M00S00128.comcmtm +++|
00130  M00S00129.comcmtm +++| TABLES   RMT
00131  M00S00130.comcmtm +++| MU       CON    0           MEMORY USED
00132  M00S00131.comcmtm +++| LM       CON    MEML        LOW MEMORY ADDRESS
00133  M00S00132.comcmtm +++| TN       CON    NTAB+1      NUMBER OF MANAGED TABLES
00134  M00S00133.comcmtm +++| TO       CON    TOV         ADDRESS OF TABLE OVERFLOW PROCESSOR
00135  M00S00134.comcmtm +++| FTAB     BSS    0           TABLE ADDRESSES
00136  M00S00135.comcmtm +++|
00137  M00S00136.comcmtm +++| TEND     EQU    NTAB        DUMMY TABLE
00138  M00S00137.comcmtm +++| NTAB     SET    NTAB+1
00139  M00S00138.comcmtm +++|          ORG    FTAB+TEND
00140  M00S00139.comcmtm +++| F.TEND   CON    MEML+TEND   DUMMY TABLE
00141  M00S00140.comcmtm +++| LTAB     BSS    0           TABLE LENGTHS
00142  M00S00141.comcmtm +++|          ORG    LTAB+TEND
00143  M00S00142.comcmtm +++| L.TEND   CON    0
00144  M00S00143.comcmtm +++| TABLES   RMT
00145  M00S00144.comcmtm +++|          SPACE  4
00146  M00S00145.comcmtm +++|          ENDX
cdc/nos2.source/opl.opl871/common/comcmtm.txt ยท Last modified: (external edit)