SUBROUTINE CSM4 C INITIAL CONDITIONS AND PARAMETERS INTEGER TEST2,TEST9 LOGICAL RSAC DIMENSION MTRX1(75),PAR(75,3) COMMON REALS(395),INTS(547) EQUIVALENCE (INTS(1),MTRX1(1)) EQUIVALENCE (INTS(526),TEST2),(INTS(533),TEST9) EQUIVALENCE (REALS(81),PAR(1,1)) C GET INPUT UNIT TEST2 CALL INUNIT WRITE(4,10) 10 FORMAT(/10X,29HINITIAL CONDITIONS/PARAMETERS/) IF (TEST2.EQ.4) GO TO 40 C NON-TTY INPUT WRITE(4,30) 30 FORMAT(6H BLOCK,3X,7HIC/PAR1,8X,4HPAR2,10X,4HPAR3) GO TO 60 C TTY INPUT 40 WRITE(4,50) 50 FORMAT(27H BLOCK, IC/PAR1, PAR2, PAR3) C INPUT STATEMENTS 60 I=KINPUT(0,IERR) IF (IERR) 400,70,300 70 IF (I) 300,400,80 80 IF (I.GT.75) GO TO 300 P3=0.0 P2=0.0 P1=FINPUT(0,IERR) IF (IERR) 150,90,280 90 P2=FINPUT(0,IERR) IF (IERR) 150,100,280 100 P3=FINPUT(0,IERR) IF (IERR) 150,110,280 110 IF (FINPUT(-1,IERR).NE.0.0) GO TO 280 C LEGAL BLOCK NUMBERS AND PARAMETERS 150 ITYPE=MTRX1(I) IF (ITYPE) 240,160,180 160 WRITE(4,170) 170 FORMAT(41H NO CORRESPONDING CONFIGURATION STATEMENT) GO TO 240 C TEST PARAMETERS 180 IF (ITYPE.GT.10) GO TO 190 GO TO (280,210,280,230,280,230,220,210,240,210),ITYPE 190 IF (ITYPE.GT.20) GO TO 200 ITYPE=ITYPE-10 GO TO (220,230,210,210,220,210,210,210,220,220),ITYPE 200 ITYPE=ITYPE-20 GO TO (220,220,240,210,230,220,210,210,210),ITYPE 210 IF (P1.NE.0.) GO TO 280 220 IF (P2.NE.0.) GO TO 280 230 IF (P3.NE.0.) GO TO 280 240 PAR(I,1)=P1 PAR(I,2)=P2 PAR(I,3)=P3 IF (TEST2.EQ.4.OR.RSAC(10)) GO TO 60 C TELEPRINTER RECORD K=3 DO 250 L=1,3 IF (PAR(I,K).NE.0.0) GO TO 260 250 K=K-1 WRITE(4,270) I GO TO 60 260 WRITE(4,270) I,(PAR(I,L),L=1,K) 270 FORMAT(3X,I2,1X,3(1X,G13.6)) GO TO 60 280 WRITE(4,290) 290 FORMAT(33H IMPROPER PARAMETER SPECIFICATION) GO TO 320 300 WRITE(4,310) 310 FORMAT(21H INVALID BLOCK NUMBER) 320 TEST9=-1 GO TO 60 C END OF INITIAL CONDITION AND PARAMETER SPECIFICATION 400 TEST9=0 RETURN END