SUBROUTINE PARSAV C C SUBROUTINE TO SAVE VALUES OF INPUT COLOR SCOPE ROUTINES C OPEN(unit=4,file='parsav.dat',err=950,type='new') ISTAT = 0 1 CALL PSCAN(ISTAT,A,B,ISKP,ILIM,C,D) ! GET PARAM NAME + VALUE IF( ISTAT .EQ. 0) GO TO 900 ! Last param found IF(ILIM .EQ. 0) GO TO 10 ! No limits to write WRITE(4,1000) ISTAT,A,B,ILIM,C,D ! Write param with limits GO TO 1 10 WRITE(4,1001) ISTAT,A,B ! Write param only GO TO 1 1000 FORMAT(O8,2X,A4,2X,1P,G15.7,0P,O4,1P,2G15.7) 1001 FORMAT(O8,2X,A4,2X,1P,G15.7) 900 CLOSE(unit=4) 950 CONTINUE END SUBROUTINE PARGET C C SUBROUTINE TO RESTORE INPUT PARAM DUMPED BY PARSAV C OPEN(unit=4,file='parsav.dat',err=950,type='old') 1 READ(4,1000,END=900,ERR=900) ISTAT,A,B,ILIM,C,D ! READ THE STATUS,NAME,VALUE IF(IAND(ISTAT,"10000) .EQ. 0) GO TO 10 ! NOT INPUT PARAM CALL PLIM(A,8,B,IERR) ! PUT THE VALUE IF(IERR .NE. 0) WRITE(5,1001) A,B ! Value not accepted 10 IF(ILIM .EQ. 0) GO TO 1 ! No limits to restore CALL PLIM(A,ILIM,C,D) ! Restore the limits GO TO 1 1000 FORMAT(O8,2X,A4,2X,G15.7,O4,2G15.7) 1001 FORMAT(' PARAM NOT RESTORED 'A4,' = '1P,G15.7) 900 CLOSE(unit=4) 950 CONTINUE END