SUBROUTINE CSM8A C PRINT SPECIFICATIONS INTEGER PRINT(4),TEST8,OU COMMON REALS(395),INTS(547) EQUIVALENCE (INTS(384),KEY5),(INTS(385),KEY6) EQUIVALENCE (INTS(386),KEY7),(INTS(388),KEY9) EQUIVALENCE (INTS(532),TEST8),(INTS(535),PRINT(1)),(INTS(539),NK) EQUIVALENCE (REALS(78),DT),(REALS(391),TSAMP) EQUIVALENCE (REALS(392),VDEL),(REALS(394),VMIN) C IF (TEST8.EQ.2.AND.KEY5.EQ.2.AND.KEY6.EQ.2) GO TO 270 WRITE(4,10) 10 FORMAT(/10X,14HOUTPUT CONTROL/) IF (TEST8.EQ.2.AND.KEY5.EQ.2) GO TO 60 C PRINT INTERVAL SPECIFICATION 20 WRITE(4,30) 30 FORMAT(16H PRINT INTERVAL=) TSAMP=FINPUT(0,IERR) IF (IERR.NE.0) GO TO 20 IF (FINPUT(-1,IERR).NE.0.0) GO TO 20 IF (TSAMP.GE.DT) GO TO 60 WRITE(4,50) 50 FORMAT(56H PRINT INTERVAL CANNOT BE LESS THAN INTEGRATION INTERVAL 1) GO TO 20 C 60 IF (TEST8.EQ.2.AND.KEY6.EQ.2) GO TO 270 C PRINT VARIABLES SPECIFICATION IF (KEY7.EQ.1) GO TO 160 C PRINT AND PLOT NK=1 70 WRITE(4,80) 80 FORMAT(14H Y-AXIS BLOCK=) PRINT(1)=KINPUT(0,IERR) IF (IERR.NE.0) GO TO 70 IF (FINPUT(-1,IERR).NE.0.0) GO TO 70 IF (PRINT(1).GT.0.AND.PRINT(1).LT.76) GO TO 110 WRITE(4,100) 100 FORMAT(18H NOT A LEGAL BLOCK) GO TO 70 110 WRITE(4,120) 120 FORMAT(25H MINIMUM, MAXIMUM VALUES=) VMIN=FINPUT(0,IERR) IF (IERR.NE.0) GO TO 110 VMAX=FINPUT(0,IERR) IF (IERR.NE.0) GO TO 110 IF (FINPUT(-1,IERR).NE.0.0) GO TO 110 VDEL=VMAX-VMIN IF (VDEL.GT.0.0) GO TO 280 WRITE(4,150) 150 FORMAT(36H MAXIMUM CANNOT BE LESS THAN MINIMUM) GO TO 110 C PRINT ONLY 160 WRITE(4,170) 170 FORMAT(36H BLOCK A, BLOCK B, BLOCK C, BLOCK D=) NK=0 DO 190 I=1,4 PRINT(I)=KINPUT(0,IERR) IF (IERR) 200,180,160 180 IF (PRINT(I).LT.1.OR.PRINT(I).GT.75) GO TO 220 NK=NK+1 190 CONTINUE IF (FINPUT(-1,IERR).NE.0.0) GO TO 160 200 IF (NK) 160,160,250 220 WRITE(4,100) GO TO 160 C PRINT ONLY HEADING 250 OU=4 IF (KEY9.EQ.1) OU=8 WRITE(OU,260) (PRINT(I),I=1,NK) 260 FORMAT(1H1/5X,5HTIME ,4(5X,5HBLOCK,I3)) GO TO 320 C 270 IF (KEY7.EQ.1) GO TO 250 C PRINT AND PLOT HEADING 280 IF (KEY9.EQ.1) GO TO 300 WRITE(4,290) PRINT(1),VMIN,VMAX 290 FORMAT(1H1,1X,4HTIME,5X,5HBLOCK,I3,2X,G13.6,26X,G13.6) GO TO 320 300 WRITE(8,310) PRINT(1),VMIN,VMAX C FOLLOWING FORMAT STATEMENT IS NOT VERY GOOD - SEE FORMAT 290 310 FORMAT(1H1/3X,12HTIME BLOCK,I3,1X,G11.4,81X,G11.4) C TEST8=1 UNTIL FIRST TIME THROUGH CSM8A C TEST8=2 AFTER FIRST TIME THROUGH CSM8A 320 TEST8=2 RETURN END