*DECK RGCTEXT 
USETEXT CCTTEXT 
PROC  RGCTEXT;
          BEGIN 
          ITEM   ATOM,
               DELIM=1, 
                 WORD;
  
          $BEGIN
          ITEM   CTEMP        C(10);
          XREF   PROC         CT$TRACE; 
          XREF   FUNC         DEC C(10);
          $END
  
  
  
  
*CALL RGCOMM1 
*CALL CTEXT 
*CALL CTXTVALS
*CALL GETSET
*CALL INT1
*CALL TABLNAMES 
          CONTROL EJECT;
ENTRY PROC GENEOC;
  
          ATOM = O"0005000000" + LINENUM; 
  
          $BEGIN
          CTEMP = "DELIMITER";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENDNREF;
  
          ATOM = O"0001000000" + DNATPTR; 
  
          $BEGIN
          CTEMP = "DNREF";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPNREF;
  
          ATOM = O"0004200000" + PNATPTR; 
  
          $BEGIN
          CTEMP = "PNREF";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPNDEF;
  
          ATOM = O"4004000000" + PNATPTR; 
  
          $BEGIN
          CTEMP = "PNDEF";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENSUBINDX;
  
          ATOM = PSICTEXTATOM;
  
  
          $BEGIN
          CTEMP = DEC ( B<38, 6>ATOM ); 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENLIT;
  
          ATOM = O"0004600000" + PLTPNTR; 
  
          $BEGIN
          CTEMP = "LITERAL";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENRPRTCTEXT;
  
          ATOM = O"4003600546"; 
  
          $BEGIN
          CTEMP = "RPTCTEXT"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENIF; 
  
          ATOM = O"4003600010"; 
  
          $BEGIN
          CTEMP = "IF"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENDISPLAY;
  
          ATOM = O"4003600256"; 
  
          $BEGIN
          CTEMP = "DISPLAY";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENENTER;
  
          ATOM = O"4003600153"; 
  
          $BEGIN
          CTEMP = "ENTER";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENUSING;
  
          ATOM = O"0003600203"; 
  
          $BEGIN
          CTEMP = "USING";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPERFORM;
  
          ATOM = O"4003600276"; 
  
          $BEGIN
          CTEMP = "PERFORM";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENTHRU; 
  
          ATOM = O"0003600127"; 
  
          $BEGIN
          CTEMP = "THRU"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENMOVE; 
  
          ATOM = O"4003600105"; 
  
          $BEGIN
          CTEMP = "MOVE"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENTO; 
  
          ATOM = O"0003600031"; 
  
          $BEGIN
          CTEMP = "TO"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENON; 
  
          ATOM = O"0003600016"; 
  
          $BEGIN
          CTEMP = "ON"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENNOT;
  
          ATOM = O"0003600050"; 
  
          $BEGIN
          CTEMP = "NOT";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENGO; 
  
          ATOM = O"4003600024"; 
  
          $BEGIN
          CTEMP = "GO"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENADD;
  
          ATOM = O"4003600033"; 
  
          $BEGIN
          CTEMP = "ADD";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENGIVING; 
  
          ATOM = O"0003600227"; 
  
          $BEGIN
          CTEMP = "GIVING"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENSUBTRACT; 
  
          ATOM = O"4003600347"; 
  
          $BEGIN
          CTEMP = "SUBTRACT"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENFROM; 
  
          ATOM = O"0003600072"; 
  
          $BEGIN
          CTEMP = "FROM"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENEXIT; 
  
          ATOM = O"4003600070"; 
  
          $BEGIN
          CTEMP = "EXIT"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENWRITE;
  
          ATOM = O"4003600206"; 
  
          $BEGIN
          CTEMP = "WRITE";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENELSE; 
  
          ATOM = O"4003600067"; 
  
          $BEGIN
          CTEMP = "ELSE"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENNEXT; 
  
          ATOM = O"4003600106"; 
  
          $BEGIN
          CTEMP = "NEXT"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENSENTENCE; 
  
          ATOM = O"0003600344"; 
  
          $BEGIN
          CTEMP = "SENTENCE"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENALL;
  
          ATOM = O"0003600034"; 
  
          $BEGIN
          CTEMP = "ALL";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENRWVERB; 
  
          ATOM = O"4003600516"; 
  
          $BEGIN
          CTEMP = "RWVERB"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENEQUAL;
  
          ATOM = O"0001200000"; 
  
          $BEGIN
          CTEMP = "=";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPERIOD; 
  
          ATOM = O"4002600000"; 
  
          $BEGIN
          CTEMP = ".";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPLUS; 
  
          ATOM = O"0003000000"; 
  
          $BEGIN
          CTEMP = "+";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENMINUS;
  
          ATOM = O"0002400000"; 
  
          $BEGIN
          CTEMP = "-";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENLESSTHAN; 
  
          ATOM = O"0002200000"; 
  
          $BEGIN
          CTEMP = "<";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENGREATTHAN;
  
          ATOM = O"0001600000"; 
  
          $BEGIN
          CTEMP = ">";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENAFTER;
  
          ATOM = O"0003600141"; 
  
          $BEGIN
          CTEMP = "AFTER";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENADVANCING;
  
          ATOM = O"0003600356"; 
  
          $BEGIN
          CTEMP = "ADVANCING";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENPAGE; 
  
          ATOM = O"0003600110"; 
  
          $BEGIN
          CTEMP = "PAGE"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENDEPENDING;
  
          ATOM = O"0003600366"; 
  
          $BEGIN
          CTEMP = "DEPENDING";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENLINES;
  
          ATOM = O"0003600166"; 
  
          $BEGIN
          CTEMP = "LINES";
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENUPON; 
  
          ATOM = O"0003600133"; 
  
          $BEGIN
          CTEMP = "UPON"; 
          $END
  
          GOTO GENCTEXT;
  
  
ENTRY PROC GENSPACES; 
  
          ATOM = O"0000000000"; 
  
          $BEGIN
          CTEMP = "SPACES"; 
          $END
  
          GOTO GENCTEXT;
          CONTROL EJECT;
GENCTEXT: 
          CCTCTEXTLEN = CCTCTEXTLEN + 1 ; 
          WORD = CCTCTEXTLEN / 2; 
          IF CCTCTEXTLEN - WORD * 2 EQ 1
          THEN
              #FIRST HALFWORD#
              SETFIELD ( CTEXTATOM1, CTEXT$, WORD + 1, ATOM );
          ELSE
              #SECOND HALFWORD# 
              SETFIELD ( CTEXTATOM2, CTEXT$, WORD, ATOM );
  
  
          $BEGIN
  
          CT$TRACE ( CCTCTEXTLEN, B<44,16>ATOM, CTEMP );
  
          # GEN A LINE NUMBER IF ATOM WAS A PERIOD. # 
          # THUS ERRORS FROM PPARSER WILL POINT AT  # 
          # CTEXT INSTEAD OF THE REPORT.            # 
  
          IF ATOM EQ O"4002600000"
          THEN
              BEGIN 
              IF CCTCTEXTLEN GR O"177777" THEN
                BEGIN 
                ATOM = O"0005000000" + DELIM; 
                DELIM = DELIM + 1;
                END 
              ELSE
                ATOM = O"0005000000" + CCTCTEXTLEN; 
              CCTCTEXTLEN = CCTCTEXTLEN + 1 ; 
              WORD = CCTCTEXTLEN / 2; 
              IF CCTCTEXTLEN - WORD * 2 EQ 1
              THEN
                  #FIRST HALFWORD#
                  SETFIELD ( CTEXTATOM1, CTEXT$, WORD + 1, ATOM );
              ELSE
                  #SECOND HALFWORD# 
                  SETFIELD ( CTEXTATOM2, CTEXT$, WORD, ATOM );
              END 
          $END
  
  
  
          RETURN; 
          END   #RGCTEXT# 
          TERM
