*DECK IPCT$RT 
USETEXT DNTEXT
USETEXT RPTEXT
PROC IPCT$RT; 
          BEGIN 
  
          #IF-PAGE-CLAUSE-ROUTINE#
  
          ITEM   CHARTEMP     C(20);
  
          ITEM   $TEMP$,
                $DUMMY$;
  
          XREF   PROC         INTERCEPT;
          XREF   FUNC         PLTCNVRT I; 
          XREF   PROC         RWSET    ;
          XREF   PROC         RWSET1   ;
          XREF   PROC         GETNEXT  ;
          XREF   FUNC         RP$AUXPTR;
          XREF   FUNC         RWGET    ;
          XREF   FUNC         RWGET1   ;
  
          DEF    GET          #GETFIELD#; 
          DEF    SET          #SETFIELD#; 
          DEF    GETQ         #GETQUICK#; 
  
  
*CALL RPCOMM
  
*CALL DNATVALS
*CALL GETSET
*CALL PLT1
*CALL PLTVALS 
*CALL PNAT1 
*CALL TABLNAMES 
  
  
  
  
  
  
          CONTROL EJECT;
  
PROC GENPNATENTRY;
          BEGIN 
          LASTPNATINDX = LASTPNATINDX + 1;
          #LEAVE BOTH   P-PERFORM-FIRST  AND# 
          #P-PERFORM-LAST#
          #SET = 0 SINCE# 
          #NONE OF THESE PROCEDURE NAMES WILL BE# 
          #REFERENCED IN A PERFORM.#
          #NOT A SOURCE STATEMENT ITEM# 
          SET(PN$PREVSECTN,PNAT$,LASTPNATINDX,RPDUMSECTION);
          END #GENPNATENTRY#
          CONTROL EJECT;
          #*# 
          #* START OF ANOTHER INTERNAL PROCEDURE ---# 
  
PROC FILLNEWDNAT; 
          BEGIN 
          LASTDNATINDX = LASTDNATINDX + 1;
          SET(DN$PICTURE,DNAT$,LASTDNATINDX,1); 
          SET(DN$LEVEL,DNAT$,LASTDNATINDX,77);
          SET(DN$MAJMSEC,DNAT$,LASTDNATINDX,RDMSEC);
          RDLBYTOFFSET = ((RDLBYTOFFSET + 9 ) / 10 ) * 10;
          SET(DN$LONGOFF,DNAT$,LASTDNATINDX,RDLBYTOFFSET);
          SET(DN$ITMLEN,DNAT$,LASTDNATINDX,10); 
          RDLBYTOFFSET = RDLBYTOFFSET + 10; 
          SET(DN$TYPE,DNAT$,LASTDNATINDX,COMP1);
          SET(DN$POINT,DNAT$,LASTDNATINDX,0); 
          #PIC 999999#
          SET(DN$NUMLEN,DNAT$,LASTDNATINDX,6);
          END #FILLNEWDNAT# 
          CONTROL EJECT;
          #IF-PAGE-CLAUSE-TABLE#
          BASECURRIPCT  =  NEXTIPCTPTR; 
  
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *#
  # * #   EPTRACE("IPCT$RT")                                       # * #
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *#
  
          #NOTE - IF THIS RT IS CALLED THEN THERE IS A USABLE PAGE# 
          #CLAUSE, AND THE ENTIRE TABLE WILL BE BUILT#
  
          GETNEXT(IPCTLINK);
  
          #BUILD  TWO NEW DNAT ENTRIES -# 
  
          FILLNEWDNAT;
          RWSET1(SNGIDNAT  #CURRIPCTPTR#,LASTDNATINDX); 
          FILLNEWDNAT;
          RWSET1(TRIALSUMDNAT  #CURRIPCTPTR#,LASTDNATINDX); 
          #BUILD TWO NEW PLT ENTRIES -# 
  
          SET(PL$LENGTH,PLT$,RPPLTOFFSET,1);
          SET(PL$TYPE,PLT$,RPPLTOFFSET,PLTUNSGNILIT); 
          SET(PL$LINE,PLT$,RPPLTOFFSET,0);
          SET(PL$COLUMN,PLT$,RPPLTOFFSET,0);
          CHARTEMP = "2"; 
          SETPLST(RPPLTOFFSET,LOC(CHARTEMP)); 
          RWSET1(RW2ERROR$PLT  #CURRIPCTPTR#,RPPLTOFFSET);
          RPPLTOFFSET = RPPLTOFFSET + 1;
          SET(PL$LENGTH,PLT$,RPPLTOFFSET,1);
          SET(PL$TYPE,PLT$,RPPLTOFFSET,PLTUNSGNILIT); 
          SET(PL$LINE,PLT$,RPPLTOFFSET,0);
          SET(PL$COLUMN,PLT$,RPPLTOFFSET,0);
          CHARTEMP = "3"; 
          SETPLST(RPPLTOFFSET,LOC(CHARTEMP)); 
          RWSET1(RW3ERROR$PLT  #CURRIPCTPTR#,RPPLTOFFSET);
          RPPLTOFFSET = RPPLTOFFSET + 1;
  
          #BUILD 6 NEW PNAT ENTRIES  FOR PARAGRAPH NAMES FOR# 
          #BODY-PAGING  ROUTINE#
  
          GENPNATENTRY; 
          IRTXBODYPAG = LASTPNATINDX; 
          GENPNATENTRY; 
          RWSET1(BABSOLUTPNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(BP$A1$PNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(BP$A2$PNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(BRELATIVPNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(C$P$PNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(B$NP$ABSPNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          IRTBPEXIT = LASTPNATINDX; 
          SET(PN$PERFLAST,PNAT$,LASTPNATINDX,1);
  
          #BUILD 4 NEW PNAT ENTRIES   FOR PARAGRAPH NAMES FOR#
          #BODY-NEXT-GROUP  ROUTINE -#
  
          GENPNATENTRY; 
          IRTBODYNXTGP = LASTPNATINDX;
          GENPNATENTRY; 
          RWSET1(ABSOLUT$PNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(RELATIV$PNAT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(SPACETO$FOOT  #CURRIPCTPTR#,LASTPNATINDX); 
          GENPNATENTRY; 
          RWSET1(NP$ABS$PNAT  #CURRIPCTPTR#,LASTPNATINDX);
          GENPNATENTRY; 
          IRTBNGEXIT = LASTPNATINDX;
          SET(PN$PERFLAST,PNAT$,LASTPNATINDX,1);
  
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *#
  # * #   EXTRACE("IPCT$RT")                                       # * #
  # * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *#
  
          END #IPCT$RT# 
          TERM
