FTN SUBROUTINE HDLN(STRNG,LEN,V,HDFLG),92069-16061 REV.1912 790129 INTEGER STRNG(37),LEN,V(8) INTEGER BLANK 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-18108 C RELOC: 92069-16060 C C C****************************************************************: C 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 DATA BLANK/2H / 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 IF(V(1) .EQ. 0) GOTO 6 DO 5 I = 1,V(1) CALL QRIO(2,ILP,BLANK,1) LNCNT = LNCNT + 1 5 CONTINUE V(1) = 0 C C SCAN OFF THE BLANKS C 6 CONTINUE DO 10 I = LEN,1,-1 CALL SGET(STRNG,I,ICHAR) IF(ICHAR .NE. 40B) GOTO 20 10 CONTINUE C C THIS IS A TOTALLY EMPTY LINE C I = 1 C C PRINT THE LINE C 20 CONTINUE CALL QRIO(2,ILP,STRNG,-I) LNCNT = LNCNT + 1 C C CHECK THE BREAK FLAG C IF(IFBRK (IDUM) .NE. 0) GOTO 50 C C SKIP THE APPROPRIATE LINES AFTER THE LINE C IF(V(2) .EQ. 0) GOTO 45 DO 40 I = 1,V(2) CALL QRIO(2,ILP,BLANK,1) LNCNT = LNCNT + 1 40 CONTINUE V(2) = 0 C C BLANK THE STRING C 45 CONTINUE CALL SFILL(STRNG,1,COLLIM,40B) IF(LNCNT .LT. PAGLEN) GOTO 60 CALL TOPAG(NODE,ILP,IERR) LNCNT = 0 GOTO 60 C C C SET BREAK TO TRUE C 50 CONTINUE BREAK = .TRUE. 60 RETURN END