*DECK     CGENSY
          IDENT  CGENSY 
          SST 
          TITLE  CGENSY -  TABLE OF GLOBAL *SETSY* DESCRIPTIONS 
          COMMENT  TABLE OF GLOBAL *SETSY* DESCRIPTIONS 
          SPACE  4
**        CGENSY -  TABLE OF GLOBAL *SETSY* DESCRIPTIONS
* 
*      DOES:  
*         DEFINES A TABLE USED BY THE *SETSYOF* FUNCTION. 
* 
*         COMMON  CGENSY; 
*             BEGIN 
*             ARRAY [0:MAXINDEX]; 
*                 ITEM  CGENSY$WORD  U(0, 0,60);
*             END 
 MAXINDEX EQU    85 
          SPACE  4
          IFGT   128+MAXINDEX,377B,1
          ERR    MAXIMUM SIZE OF MAXINDEX IS O"377"-(128+MAXINDEX)
  
  
          PURGMAC  GLOBSY          (DEFINITION IN CGENP1-2) 
 GLOBSY   MACRO  P1,VAL 
          .GLOBSY  P1,VAL 
 GLOBSY   ENDM
  
 .GLOBSY  MACRO  MOD,REG,VAL
 INDEX    SET    INDEX+1
1         IFLE   INDEX,MAXINDEX 
          IFC    NE, VAL  ,4
          IFC    LE, VAL Z ,3 
          IFGE   VAL,FIXEDOFF,2 
 M2       MICRO  1,, 1/1,18/VAL-FIXEDOFF
          SKIP   1
 M2       MICRO  1,, 1/0,18/VAL 
          IFGE   REG,FIXEDOFF,2 
 M1       MICRO  1,, 12/MOD,18/REG-FIXEDOFF 
          SKIP   1
 M1       MICRO  1,, 12/MOD,18/REG
          VFD    "M1",11/0,"M2" 
1         ELSE
          ERR    ARRAY IS TOO SMALL              "SEQUENCE" 
1         ENDIF 
 .GLOBSY  ENDM
  
 INDEX    SET    0           INDEX TO NEXT AVAILABLE WORD 
          SPACE  4
          USE    /CGENSY/ 
*CALL     GLOBSYS 
          SPACE  4
          END 
