*DECK C$COLSQ 
          IDENT  C$COLSQ
          TITLE  C$COLSQ - COLLATING SEQUENCES AND POINTERS 
          SST 
          COMMENT COLLATING SEQUENCES AND POINTERS
          LIST   F
 CBCOLSQ  SPACE  4
**        CBCOLSQ - CONTAINS THE DEFAULT COLLATING SEQUENCE TABLES
*                AND POINTERS TO ALL THE VARIOUS SEQUENCES. 
* 
*                COLLATING SEQUENCE POINTER FORMAT: 
*         VFD    30/SEQ NR,30/SEQ ADDR
* 
*                THE POINTERS ARE:  
*         C.PRGCS   PROGRAM COLLATING SEQ POINTER 
*                   THE FORMAT OF C.PRGCS IS
*                   BITS 0-17   ADDRESS OF COLLATING SEQUENCE TABLE 
*                        30-35  COLLATING SEQUENCE NUMBER 
*                        58     SAVED FLAG (SAVED BY C.ENTRY) 
*         C.SRTCS   SORT COLLATING SEQ POINTER
*         C.MRGCS   MERGE COLLATING SEQ POINTER 
*                   THE FORMAT OF C.SRTCS AND C.MRGCS IS
*                   BITS 0-17   ADDRESS OF COMPILER GENERATED SEQUENCE TABLE
*                        30-35  COLLATING SEQUENCE NUMBER 
* 
*                THESE POINTERS MAY BE MODIFIED IF THE USER 
*                EXECUTES A SET STATEMENT.  SET"S OBJECT TIME 
*                ROUTINE IS C.CVCS.  BOTH C.SRTCS AND C.MRGCS ARE 
*                ZERO UNTIL A SET IS DONE ON THEM.  IF NO SET IS DONE,
*                SORTS AND MERGES USE C.PRGCS.
* 
  
          ENTRY  C.PRGCS
 C.PRGCS  VFD    30/3,12/0,18/NATIVE   3 IS SEQ NR FOR NATIVE 
          ENTRY  C.SRTCS
 C.SRTCS  DATA   0           SORT COLLATING SEQUENCE (SET WITH A SET) 
          ENTRY  C.MRGCS
 C.MRGCS  DATA   0           MERGE COLLATING SEQUENCE (DITTO) 
          ENTRY  C.PCSSV
 C.PCSSV  DATA   0           SAVED LITERAL IF USER-DEFINED PROG COLL SEQ
 C.EQCHR  SPACE  4
**        C.EQCHR - EQUAL WEIGHT CHARACTERS IN CURRENT COLLATING
*                SEQUENCE FLAG. 
* 
*                THIS FLAG IS SET BY C.CVCS IF THE USER DOES A -SET-
*                TO A USER DEFINED SEQUENCE WHICH HAS TWO OR MORE 
*                CHARACTERS WITH EQUAL WEIGHTS. 
* 
          ENTRY  C.EQCHR
 C.EQCHR  DATA   0
  
  
*         THE FORMAT OF THE COLLATING SEQUENCE WEIGHT TABLE IS AS 
*         FOLLOWS:  
*                THE NUMERIC VALUE IN EACH WORD IS THE ORDER IN 
*                WHICH THAT CHARACTER FALLS IN THE SEQUENCE.  THE 
*                TABLE IS INDEXED BY THE CHARACTER, AND A COMPARE MADE
*                ON THE VALUES IN THE CORRESPONDING WORDS.
* 
 NATIVE   BSS    0
 B        IFNE   OP.COLSQ,OP.ASCII
*                DEFINE THE CDC-64 CHARACTER SET SEQ
 A        IFEQ   OP.CH63,OP.NO         64 CHARS 
          VFD    48/6531323334353637B,12/53      :   00 
 A        ELSE                         63 CHARS 
          VFD    48/0231323334353637B,12/02          00 
 A        ENDIF 
          VFD    48/4041434445464750B,12/25      A   01 
          VFD    48/5152535556576061B,12/26      B   02 
          VFD    48/6263646667707172B,12/27      C   03 
          VFD    48/7374757677172221B,12/28      D   04 
          VFD    48/2325152026002414B,12/29      E   05 
 CMU3A    IFEQ   OP.CH63,OP.NO
          VFD    48/0503540227044206B,12/30      F   06 
 CMU3A    ELSE
          VFD    48/0503546527044206B,12/30      F   06 
 CMU3A    ENDIF 
          VFD    48/0710301101121316B,12/31      G   07 
          DATA   32          H     10 
          DATA   33          I     11 
          DATA   35          J     12 
          DATA   36          K     13 
          DATA   37          L     14 
          DATA   38          M     15 
          DATA   39          N     16 
          DATA   40          O     17 
          DATA   41          P     20 
          DATA   42          Q     21 
          DATA   43          R     22 
          DATA   45          S     23 
          DATA   46          T     24 
          DATA   47          U     25 
          DATA   48          V     26 
          DATA   49          W     27 
          DATA   50          X     30 
          DATA   51          Y     31 
          DATA   52          Z     32 
          DATA   54          0     33 
          DATA   55          1     34 
          DATA   56          2     35 
          DATA   57          3     36 
          DATA   58          4     37 
          DATA   59          5     40 
          DATA   60          6     41 
          DATA   61          7     42 
          DATA   62          8     43 
          DATA   63          9     44 
          DATA   15          +     45 
          DATA   18          -     46 
          DATA   17          *     47 
          DATA   19          /     50 
          DATA   21          (     51 
          DATA   13          )     52 
          DATA   16          $     53 
          DATA   22          =     54 
          DATA   00          ( )   55 
          DATA   20          ,     56 
          DATA   12          .     57 
          DATA   05          #     60 
          DATA   03          [     61 
          DATA   44          ]     62 
 A        IFEQ   OP.CH63,OP.NO         64 CHARS 
          DATA   02          %     63 
 A        ELSE               63 CHARS 
          DATA   53          :     63 
 A        ENDIF 
          DATA   23          "     64 
          DATA   04          _     65 
          DATA   34          !     66 
          DATA   06          &     67 
          DATA   07          '     70 
          DATA   08          ?     71 
          DATA   24          <     72 
          DATA   09          >     73 
          DATA   01          @     74 
          DATA   10          \     75 
          DATA   11          ^     76 
          DATA   14          ;     77 
 B        ELSE
*                DEFINE THE ASCII-64 CHARACTER SET SEQ
*                NOTE - THE CHARACTERS IN COL 30 WILL PRINT OK ON 
*                AN ASCII PRINT TRAIN.
* 
 A        IFEQ   OP.CH63,OP.NO         64 CHARS 
          VFD    48/3241424344454647B,12/26      :   00 
 A        ELSE                         63 CHARS 
          VFD    48/0541424344454647B,12/05          00 
 A        ENDIF 
          VFD    48/5051525354555657B,12/33      A   01 
          VFD    48/6061626364656667B,12/34      B   02 
          VFD    48/7071722021222324B,12/35      C   03 
          VFD    48/2526273031131512B,12/36      D   04 
          VFD    48/1710110435001416B,12/37      E   05 
 CMU3B    IFEQ   OP.CH63,OP.NO
          VFD    48/0373750502770106B,12/38      F   06 
 CMU3B    ELSE
          VFD    48/0373753202770106B,12/38      F   06 
 CMU3B    ENDIF 
          VFD    48/0737343640747633B,12/39      G   07 
          DATA   40          H     10 
          DATA   41          I     11 
          DATA   42          J     12 
          DATA   43          K     13 
          DATA   44          L     14 
          DATA   45          M     15 
          DATA   46          N     16 
          DATA   47          O     17 
          DATA   48          P     20 
          DATA   49          Q     21 
          DATA   50          R     22 
          DATA   51          S     23 
          DATA   52          T     24 
          DATA   53          U     25 
          DATA   54          V     26 
          DATA   55          W     27 
          DATA   56          X     30 
          DATA   57          Y     31 
          DATA   58          Z     32 
          DATA   16          0     33 
          DATA   17          1     34 
          DATA   18          2     35 
          DATA   19          3     36 
          DATA   20          4     37 
          DATA   21          5     40 
          DATA   22          6     41 
          DATA   23          7     42 
          DATA   24          8     43 
          DATA   25          9     44 
          DATA   11          +     45 
          DATA   13          -     46 
          DATA   10          *     47 
          DATA   15          /     50 
          DATA   08          (     51 
          DATA   09          )     52 
          DATA   04          $     53 
          DATA   29          =     54 
          DATA   00          ( )   55 
          DATA   12          ,     56 
          DATA   14          .     57 
          DATA   03          #     60 
          DATA   59          [     61 
          DATA   61          ]     62 
 A        IFEQ   OP.CH63,OP.NO         64 CHARS 
          DATA   05          %     63 
 A        ELSE               63 CHARS 
          DATA   26          :     63 
 A        ENDIF 
          DATA   02          "     64 
          DATA   63          _     65 
          DATA   01          !     66 
          DATA   06          &     67 
          DATA   07          '     70 
          DATA   31          ?     71 
          DATA   28          <     72 
          DATA   30          >     73 
          DATA   32          @     74 
          DATA   60          \     75 
          DATA   62          ^     76 
          DATA   27          ;     77 
 B        ENDIF 
  
  
          ENTRY  C.NATCS
 C.NATCS  EQU    NATIVE      POINTER TO NATIVE WEIGHT TABLE 
 NATCMU   SPACE  4
**        C.BFILL - BLANK FILL TABLE USED BY C.BCDCM AND C.LITCM
* 
* 
  
          ENTRY  C.BFILL
 C.BFILL  DATA   10H
          VFD    6/0,54/9H
          VFD    12/0,48/8H 
          VFD    18/0,42/7H 
          VFD    24/0,36/6H 
          VFD    30/0,30/5H 
          VFD    36/0,24/4H 
          VFD    42/0,18/3H 
          VFD    48/0,12/2H 
          VFD    54/0,6/1H
          DATA   0
  
          END 
