SUBROUTINE RGRPS (IROW, ICOL, IAR, TEXT, MTEX) C***************************************************************************** C C Description : Routine to position the page lay-out workfile and to C write a string in the file C This routine is reserved for RGR-subroutines only C C Arguments : IROW = INTEGER abs./rel. row of the page C ICOL = INTEGER abs./rel. column of the page C IAR = INTEGER indicating absolute/relative: C 0 - absolute row and column C 1 - relative row , absolute column C 2 - absolute row , relative column C 3 - relative row and column C TEXT = STRING to be printed in the file C MTEX = INTEGER maximum number of characters to be copied C from TEXT into the workfile C C Author : F.A.Minkema C AKZO PHARMA, Oss Holland C dept. SDA C C Version : V2.0 Date : 10-jun-1983 C C Module name : RGRPS.FTN C C Package : TRAMP C C Compilation/Linking : FOR/F4P/TR:NONE RGRPS C C Updates : name version C C description : C C***************************************************************************** C BYTE DEVNAM,OFNTAB,SETPAG,SETSCR,DAT,TIM, 1 TEXREC,DATREC,RREC,SBUF,WPGREC COMMON/RGRCOM/NUNITR,NUNITS,NOS,MNOS,NUCTAB(4,4), 1 MAXBUF,NFRXR,LENREC,NPAG,NWPGR,NWPGC,NFXHL, 2 NRNXRE,NRFFTR,NRLFTR,NRFRTR,NRLRTR,NRFRDR,NRLRDR, 3 IPHLEN,LOGLEN,LOGWID,NRFLDW,NRLLDW,NRDATE,NCDATE, 4 NRTIME,NCTIME,NRPAGE,NCPAGE,NRRELS,NCRELS, 5 DEVNAM(14),SETPAG(6),SETSCR(6),DAT(10),TIM(10), 6 OFNTAB(32,4),TEXREC(40),DATREC(40),RREC(40), 7 SBUF(120),WPGREC(133) C BYTE TEXT(1),PROG(6) DATA PROG /'R','G','R','P','S',0/ C C C check page row C 10 IR=IROW IF ((IAR.AND.1).EQ.1) 12,20,20 C THEN 12 IR=NWPGR+IROW IF (NWPGR.LE.0 .OR. IR.LT.NRFLDW) IR=NRFLDW IF (IR.LE.NRLLDW) GOTO 20 CALL RGRPRT ! auto page GOTO 10 C ENDIF 20 CALL RGRWR(IR) ! get new line C C check page columns C 30 IC=ICOL IF ((IAR.AND.2).EQ.2) 32,40,40 C THEN 32 IC=NWPGC+ICOL IF (NWPGC.LE.0 .OR. IC.LE.0) IC=1 IF (IC.GT.LOGWID) IC=LOGWID C ENDIF C 40 MTXT=MTEX IF (MTEX.LE.0) MTXT=LEN(TEXT) IF (MTXT.EQ.0) MTXT=1 NWPGC=IC+MTXT-1 IF (NWPGC.GT.LOGWID) NWPGC=LOGWID CALL RGRCS(IC,TEXT,MTXT) ! put string in file C C go back to calling program C RETURN C C errors C 9000 CALL FATAL(PROG,'READ-error page lay-out workfile') 9010 CALL FATAL(PROG,'WRITE-error page lay-out workfile') END