C C$$$ SUBPROGRAM DOCUMENTATION BLOCK C . . . . C SUBPROGRAM: DECVAR DECODES VARIALES C PRGMMR: S. J. LORD ORG: W/NMC22 DATE: 91-06-06 C C ABSTRACT: DECODES VARIABLES FROM THE TROPICAL CYCLONE VITAL C STATISTICS FILE. FILE SHOULD BE CHARACTER BASED. C C PROGRAM HISTORY LOG: C 91-06-06 S. J. LORD C YY-MM-DD MODIFIER1 DESCRIPTION OF CHANGE C YY-MM-DD MODIFIER2 DESCRIPTION OF CHANGE C C USAGE: CALL PGM-NAME(INARG1, INARG2, WRKARG, OUTARG1, ... ) C INPUT ARGUMENT LIST: C INARG1 - GENERIC DESCRIPTION, INCLUDING CONTENT, UNITS, C INARG2 - TYPE. EXPLAIN FUNCTION IF CONTROL VARIABLE. C C OUTPUT ARGUMENT LIST: (INCLUDING WORK ARRAYS) C WRKARG - GENERIC DESCRIPTION, ETC., AS ABOVE. C OUTARG1 - EXPLAIN COMPLETELY IF ERROR RETURN C ERRFLAG - EVEN IF MANY LINES ARE NEEDED C C INPUT FILES: (DELETE IF NO INPUT FILES IN SUBPROGRAM) C DDNAME1 - GENERIC NAME & CONTENT C C OUTPUT FILES: (DELETE IF NO OUTPUT FILES IN SUBPROGRAM) C DDNAME2 - GENERIC NAME & CONTENT AS ABOVE C FT06F001 - INCLUDE IF ANY PRINTOUT C C REMARKS: LIST CAVEATS, OTHER HELPFUL HINTS OR INFORMATION C C ATTRIBUTES: C LANGUAGE: INDICATE EXTENSIONS, COMPILER OPTIONS C MACHINE: NAS, CYBER, WHATEVER C C$$$ SUBROUTINE DECVAR(ISTART,IEND,IVALUE,IERDEC,FMT,BUFF) C PARAMETER (NCHLIN=130) C CHARACTER FMT*(*),BUFF*(*),OUTLIN*1 C SAVE C DIMENSION OUTLIN(NCHLIN) C C IF(IERDEC .EQ. -1) write(52,1) FMT,ISTART,IEND,BUFF C 1 FORMAT('0...FMT,ISTART,IEND=',A10,2I5,/,' ...BUFF=',A,'...') C READ(BUFF(ISTART:IEND),FMT,ERR=10) IVALUE IERDEC=0 RETURN C 10 CONTINUE C DO 20 ICH=1,NCHLIN OUTLIN(ICH)=' ' 20 CONTINUE C IERDEC=10 DO 30 ICH=ISTART,IEND OUTLIN(ICH)='*' 30 CONTINUE C write(52,31) (OUTLIN(ICH1),ICH1=1,NCHLIN) write(52,32) BUFF 31 FORMAT('0 ******ERROR DECODING, BUFF=',/,130A1) 32 FORMAT(' ',A130) C RETURN END