C$$$   SUBPROGRAM DOCUMENTATION BLOCK
C
C SUBPROGRAM:    M_MKFNAM    CONSTRUCTS FILE NAME STRING FOR I4 TIME
C   PRGMMR:  MILLER, P.     ORG: ERL/PROFS      DATE: 89-08-07
C
C ABSTRACT: THIS SUBROUTINE CONSTRUCTS THE FILE NAME 'YYJJJHHMM'
C   FOR THE TIME CORRESPONDING TO I4 TIME.
C
C PROGRAM HISTORY LOG:
C   81-07-12  MURRAY,    ORIGINAL VERSION
C   82-10-01  HOAGENSON, CHANGED NAME FROM MAKE_FNAM_GQ
C   88_10-03  MILLER,    CONVERTED TO STANDARD FORTRAN
C   98-07-10  M. BARTH   HANDLE 1980 THROUGH 2179.
C   99-09-21  M. BARTH   COPIED FROM MSAS & MODIFIED FOR MADIS.
C   08-06-13  L. BENJAMIN CHANGED "MADISCON" INCLUDE TO 
C                         "INTQC1CON1".  
C
C USAGE:   CALL M_MKFNAM(I4TIME, FILENAME, ISTATUS)
C   INPUT ARGUMENT LIST:
C    I4TIME    - THE CORRESPONDING I4TIME OF THE FILE - INTEGER
C
C   OUTPUT ARGUMENT LIST:
C    FILENAME    - THE CONVERTED FILENAME IN 'YYJJJHHMM' FROM I4TIME -
C                CHARACTER
C
C REMARKS: NONE
C
C ATTRIBUTES:
C   LANGUAGE: FORTRAN + EXTENSIONS
C   MACHINE: UNIX
C
C$$$
      SUBROUTINE M_MKFNAM (I4TIME, FILENAME, ISTATUS)
C
      INCLUDE 'IMPLICIT'
      INCLUDE 'INTQC1CON1'

      CHARACTER*9 FILENAME
      INTEGER     NDAYS(12),
     +            NYEAR,NMONTH,NDAY,NHOUR,NMIN,NSEC,ISTATUS,
     +            NJULIAN,I4TIME,I

      DATA NDAYS/0,31,59,90,120,151,181,212,243,273,304,334/
C
C CONVERT I4 TIME TO STRING YYJJJHHMM.
C
      CALL M_CNVTTM (I4TIME, NYEAR, NMONTH, NDAY, NHOUR, NMIN,
     1                     NSEC, ISTATUS)
      IF (ISTATUS.NE.SUCCESS_P) GO TO 100
C
C M_CNVTTM RETURNS NYEAR AS THE NUMBER OF YEARS SINCE 1900.  IF NEEDED,
C LOP OFF THE 100'S DIGIT.
C
      IF (NYEAR.GE.100) NYEAR = NYEAR - 100
C
      NJULIAN = NDAYS(NMONTH) + NDAY
      IF (NMONTH .GT. 2 .AND. MOD (NYEAR,4) .EQ. 0) NJULIAN=NJULIAN + 1
       WRITE(FILENAME,'(I2,I3,I2,I2)',ERR=90)NYEAR,NJULIAN,NHOUR,NMIN
        DO 10 I = 1, 9
10      IF (FILENAME(I:I) .EQ. ' ') FILENAME(I:I) = '0'
      ISTATUS = SUCCESS_P
      RETURN
C
C ERROR IN ENCODE.
C
90    ISTATUS = INV_TIME_P
      RETURN
C
C ERROR IN SUBROUTINE...
C
100   ISTATUS = INV_TIME_P
      RETURN
      END
C**---------------------------------------------------------------------
C**REQUIRED STANDARD FSL DISCLAIMER (NOVEMBER 2000)
C**---------------------------------------------------------------------
C**  OPEN SOURCE LICENSE/DISCLAIMER,  FORECAST SYSTEMS LABORATORY
C**  NOAA/OAR/FSL, 325 BROADWAY BOULDER, CO 80305
C**
C**  THIS SOFTWARE IS DISTRIBUTED UNDER THE OPEN SOURCE DEFINITION, 
C**  WHICH MAY BE FOUND AT http://www.opensource.org/osd.html.
C**
C**  IN PARTICULAR, REDISTRIBUTION AND USE IN SOURCE AND BINARY FORMS,
C**  WITH OR WITHOUT MODIFICATION, ARE PERMITTED PROVIDED THAT THE 
C**  FOLLOWING CONDITIONS ARE MET:
C**
C**  - REDISTRIBUTIONS OF SOURCE CODE MUST RETAIN THIS NOTICE, THIS LIST
C**    OF CONDITIONS AND THE FOLLOWING DISCLAIMER.
C**
C**  - REDISTRIBUTIONS IN BINARY FORM MUST PROVIDE ACCESS TO THIS 
C**    NOTICE, THIS LIST OF CONDITIONS AND THE FOLLOWING DISCLAIMER, AND
C**    THE UNDERLYING SOURCE CODE.
C**
C**  - ALL MODIFICATIONS TO THIS SOFTWARE MUST BE CLEARLY DOCUMENTED, 
C**    AND ARE SOLELY THE RESPONSIBILITY OF THE AGENT MAKING THE 
C**    MODIFICATIONS.
C**
C**  - IF SIGNIFICANT MODIFICATIONS OR ENHANCEMENTS ARE MADE TO THIS
C**    SOFTWARE, THE FSL SOFTWARE POLICY MANAGER 
C**    (softwaremgr.fsl@noaa.gov) BE NOTIFIED.
C**
C**  THIS SOFTWARE AND ITS DOCUMENTATION ARE IN THE PUBLIC DOMAIN AND 
C**  ARE FURNISHED "AS IS."  THE AUTHORS, THE UNITED STATES GOVERNMENT,
C**  ITS INSTRUMENTALITIES, OFFICERS, EMPLOYEES, AND AGENTS MAKE NO 
C**  WARRANTY, EXPRESS OR IMPLIED, AS TO THE USEFULNESS OF THE SOFTWARE
C**  AND DOCUMENTATION FOR ANY PURPOSE.  THEY ASSUME NO RESPONSIBILITY 
C**  (1) FOR THE USE OF THE SOFTWARE AND DOCUMENTATION; OR (2) TO 
C**  PROVIDE TECHNICAL SUPPORT TO USERS.
C**---------------------------------------------------------------------
