FTN 
      SUBROUTINE PRTLN(STRNG,LEN,V,HDFLG),92069-16061 REV.2013 791119 
      INTEGER STRNG(37),LEN,V(8)
      LOGICAL HDFLG 
C 
C 
C*****************************************************************
C (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1979. ALL RIGHTS RESERVED 
C NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, REPRODUCED, OR
C TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH OUT THE PRIOR 
C WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. 
C****************************************************************** 
C 
C 
C     SOURCE:    92069-18107
C     RELOC:     92069-16060
C 
C 
C****************************************************************:
C 
C 
C 
C 
C  CALLING SEQUENCE:
C 
C       CALL PRTLN(STRNG,LEN,V,HDFLG) 
C 
C          WHERE: 
C 
C             STRNG 
C             IS THE ASCII STRING TO BE PRINTED 
C 
C             LEN 
C             IS THE POSITIVE LENGTH OF THE STRING IN BYTES 
C 
C             V 
C             IS AN ARRAY CONTAINING THE PRINT OPTIONS ACCORDING
C             TO THE SUBROUTINE SPLIT.
C 
C             HDFLG 
C                TRUE = THIS IS A HEADER PRINT STATEMENT
C                FALSE = THIS IS A SIMPLE LINE
C 
C             HDFLG IS USED TO KEEP THIS SUBROUTINE FROM BECOMING 
C             RECURSIVE.
C 
C 
C 
C 
C$$$$$$$$$$$$$$$$$$$ NOVEMBER 3,1978   $$$$$$$$$$$$$$$$$$$$$
      INTEGER INLU,ITTY,ILP,IDCB,JDCB,XEQ 
      INTEGER DBNAM,DBLEV,DSNAM,DINAM,SELECT,SNAM 
      INTEGER DSNUM,DINUM,PARM,LPARM,ECHO,QSERR 
      INTEGER IMA,IB,IBSZ,SECNO,IEND,ISCAN
      LOGICAL BREAK 
      INTEGER IPFLAG,IOFLAG,RMOTE 
      LOGICAL BATCH,XQBCH 
      INTEGER PAGCNT,LNCNT
      INTEGER PAGLEN,COLLIM 
      REAL    RRCNT 
      REAL    SELT,RSEC 
      INTEGER IPTR
      REAL    RCOUNT
      INTEGER S,R3,TRKNM,IDILU
      INTEGER R6
      REAL    ATOTAL
      INTEGER LIST,L,T,U
      INTEGER LEVSTR,LEVLEN 
      INTEGER IBUFF 
      INTEGER SS(7,100) 
C 
      COMMON INLU(145),ITTY(145),ILP(145),IDCB(145),JDCB(144),XEQ(145)
      COMMON DBNAM(10),DBLEV(3),DSNAM(3),DINAM(3),SELECT(6),SNAM(3) 
      COMMON DSNUM,DINUM,PARM(40),LPARM,ECHO,QSERR
      COMMON IMA(37),IB(896),IBSZ,SECNO,IEND,ISCAN
      COMMON BREAK
      COMMON IPFLAG,IOFLAG,RMOTE
      COMMON BATCH,XQBCH
      COMMON PAGCNT,LNCNT 
      COMMON PAGLEN,COLLIM
      COMMON RRCNT
      COMMON SELT(64),RSEC
      COMMON IPTR 
      COMMON RCOUNT 
      COMMON S(15,50),R3,TRKNM,IDILU
      COMMON R6 
      COMMON ATOTAL(6,5)
      COMMON LIST(101,6),L(7),T(5),U(7,5) 
      COMMON LEVSTR(66,5),LEVLEN(5) 
      COMMON IBUFF(2048)
C 
      EQUIVALENCE (S,SS)
C$$$$$$$$$$$$$$$$$$$ NOVEMBER 3,1978   $$$$$$$$$$$$$$$$$$$$$
C 
C 
C 
C 
C 
C 
C 
C 
C BEGIN 
C 
C 
C 
C SET THE BREAK FLAG TO FALSE 
C 
      BREAK = .FALSE. 
C 
C SKIP THE CORRECT NUMBER OF PAGES AND LINES
C 
      CALL SKIP(V(3),V(1),HDFLG)
C 
C SCAN OFF THE BLANKS 
C 
      DO 10 I = LEN,2,-1
      CALL SGET(STRNG,I,ICHAR)
      IF(ICHAR .NE. 40B) GOTO 20
10    CONTINUE
C 
C THIS IS A TOTALLY EMPTY LINE
C 
C PRINT A BLANK 
C 
C 
C PRINT THE LINE
C 
20    CONTINUE
      CALL QRIO(2,ILP,STRNG,-I) 
      LNCNT = LNCNT + 1 
C 
C CHECK THE BREAK FLAG
C 
30    CONTINUE
      IF(IFBRK (IDUM) .NE. 0) GOTO 50 
C 
C SKIP THE APPROPRIATE LINES AFTER THE LINE 
C 
      CALL SKIP(V(4),V(2),HDFLG)
C 
C BLANK THE STRING
C 
      CALL SFILL(STRNG,1,COLLIM,40B)
      GOTO 60 
C 
C 
C SET BREAK TO TRUE 
C 
50    CONTINUE
      BREAK = .TRUE.
60    RETURN
      END 
                                                                                                                                                                                                                                                            