FTN4 SUBROUTINE IPRNT(PA,LI,PB,NB,PG,BA,TA,HI,LOW,IN,RCNT,MISS,BC,TI,L) &,92082-1X006 REV.2001 791119 C C C C DATE: 11-19-79 C NAME: IPRNT C SOURCE: 92082-18006 C RELOC: PART OF 92082-12001 C PGMR: C.M.M. C C *************************************************************** C * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1980. ALL RIGHTS * C * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * C * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT* C * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * C *************************************************************** C C C C C C C WHY CAN'T FORTRAN SPLIT THE SUBROUTINE C DECLARATION LINE ACROSS MORE THAN C ONE LINE ? C C THE NEXT POOR SLOB TO READ THIS WILL C PROBABLY GET VERY CONFUSED. C C WELL THEY FINALLY FIXED IT. 11/23/79 C.M.M. C C C C C PA = PARM TITLE TO PRINT AT BOTTOM OF PAGE C LI = LINENO LINE # C PB = PBUF BUFFER OF *'S TO PRINT C NB = NBIN NUMBER OF BINS C PG = PAGE PAGE # TO PRINT C BA = BASE BASE ADDRESS FOR THE RELATIVE ADDRESSES C TA = TA ARRAY OF %'S PRINTED AT TOP OF PAGE C HI = HIGH HIGH ADDRESS OF INTEREST C LOW = LOW LOW ADDRESS OF INTEREST C IN = INCR # OF INSTRUCTIONS PER LINE IE PRECISION C RCNT = RCNT TOTAL # OF VALID POINTS IN FILE C MISS = MISS TOTAL # OF INVAID POINTS IN FILE C BC = BCNT TOTAL # OF POINTS READ WITHIN SPECIFIED RANGE C TI = TITLE USER SPECIFIED TITLE FOR GRAPH C C C C C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC C COMMON DECLARATIONS C C C INTEGER LI,PB(25),TAPE,L,OP,NB INTEGER LOW,HI,IN,TI(40),PG,BA REAL BC,RCNT,MISS,TA(6) C C C END OF COMMON DECLARATIONS C CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC INTEGER I,J,K1,PA(40) REAL T1 INTEGER TB(6) C C IF (LI) 300,100,200 C C COME HERE ON LI=0 (INITIALIZE PAGE) C C 100 WRITE(L,970) (TI(I),I=1,40) WRITE(L,971) LOW,HI,IN WRITE(L,972) RCNT,BC,MISS 970 FORMAT(" ","DESCRIPTION : ",40A2) 971 FORMAT(" ","RANGE : ",@6,"B-",@6,"B",21X,"INSTRUCTIONS PER LINE: " &,@6) 972 FORMAT(" ","SAMPLE: ",F10.0,5X,"IN-RANGE :",F10.0, &11X,"REJECTS: ",F10.0) IF (TA(6) .LT. 1.) GO TO 120 C DO 116 I=1,6 116 TB(I)=IFIX(TA(I)) WRITE (L,975) (TB(I),I=1,6) 975 FORMAT(" ",7X,6(I4,"%",5X)) GO TO 125 C 120 WRITE (L,977) (TA(I),I=1,6) 977 FORMAT (" ",6X,6(G8.3,"% ")) C 125 WRITE(L,980) 980 FORMAT (" ",8X,5("+---------")) RETURN C C COME HERE FOR GRAPH LINES (LI=1 THRU NB) C 200 K1=LOW+((NB-LI)*IN) K2=K1-BA IF (K2 .LT. 0) K2=0 IF (MOD(NB-LI,5) .NE. 0 .OR. 1 LI .EQ. NB) GO TO 210 DO 205 I=1,21,5 J=PB(I) IF (J .EQ. 2H ) J=2H+ IF (J .EQ. 2H .) J=2H+* 205 PB(I)=J WRITE(L,985) PB,K1,K2 985 FORMAT(" ",8X,25A2,"+ ",K5," (",K5,")") GO TO 220 210 WRITE(L,990) PB,K1,K2 990 FORMAT(" ",8X,25A2,"I "K5," (",K5,")") 220 LI=LI+1 RETURN C C COME HERE FOR CLEANUP C 300 WRITE(L,995) 995 FORMAT(" ",8X,5("+---------")) WRITE (L,997) PA,PG 997 FORMAT (" ",18X,20A2,/," ",18X,20A2,10X,"PAGE",I4) PG=PG+1 WRITE(L,999) 999 FORMAT("1") RETURN END END$