FTN,L,C PROGRAM RECOV(3,90) C C C************************************************************* C (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1976. ALL RIGHTS * C RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * C PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * C OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * C************************************************************* C C C C C************************************************************ C C C RELOC. 92063-16013 C SOURCE 92063-18013 C C C*********************************************************************** C RECOV ALLOWS THE USER TO RECOVER A DATA BASES VOLATILE DATA C WHICH IS STORED IN SYSTEM AVAILABLE MEMORY. RECOV SHOULD C BE USED IN THE EVENT OF A MEMORY PROTECT, OR ANY OTHER C ABNORMAL TERMINATION OF THE DATA BASE PROGRAM WHERE THE C DATA BASE DID NOT GET CLOSED PROPERLY. C C C CALLING SEQUENCE C :RU,RECOV,P1 C C WHERE: P1 IS CONSOLE INTEGER P(5),FNAME(3),ISTAT(4),YES DATA IBLNK/2H / DATA YES/2HYE/ CALL RMPAR(P(1)) ITTY=P(1) IF (ITTY.EQ.0) ITTY=1 C PRINT STATUS 5 CALL DBSTA(ITTY) C WANT TO RECOVER ANY? WRITE(ITTY,40) 40 FORMAT("DO YOU WANT TO CLOSE A DATA BASE?") READ(ITTY,60)FNAME 60 FORMAT(3A2) IF (FNAME(1).NE.YES) STOP C GET DATA BASE NAME WRITE(ITTY,10) 10 FORMAT(" DATA BASE NAME? _") FNAME(1)=IBLNK FNAME(2)=IBLNK FNAME(3)=IBLNK READ(ITTY,20)FNAME 20 FORMAT(3A2) C GET SECURITY CODE C WRITE(ITTY,50) 50 FORMAT("DATA BASE SECURITY CODE? _") READ(ITTY,*)ISC C CHECK FOR OPEN ACTIVE TABLE AND POST VOLATILE DATA IF NECESSARY CALL CKACT(FNAME,ISC,ISTAT) IF (ISTAT.EQ.1) GOTO 130 IF (ISTAT.EQ.2) GOTO 140 IF (ISTAT.NE.0) GOTO 110 WRITE(ITTY,165) 165 FORMAT("DATA BASE RECOVERED!!") GOTO 5 110 WRITE(ITTY,120)ISTAT(1) 120 FORMAT(" ERROR ",I6) 150 WRITE(ITTY,125) 125 FORMAT(" DATA BASE NOT PROPERLY RECOVERED!!") GOTO 5 130 WRITE(ITTY,135)FNAME 135 FORMAT(3A2," NOT FOUND") GOTO 150 140 WRITE(ITTY,145) 145 FORMAT(" RESOURCE NUMBER IS IN USE") GOTO 150 END END$