SUBROUTINE SET4PT(KFILDO,P,NX,NY,DIR,ND1,NSTA,SDATA,IER)
C 
C        NOVEMBER  2019   GLAHN   MDL   MOS-2000 
c
C        PURPOSE
C            FOR EACH STATION, SETS THE FOUR GRIDPONTS AROUND IT
C            TO THE INTERPOLATED VALUE IN SDATA(K).
C
C        DATA SET USE 
C            KFILDO   - UNIT NUMBER FOR OUTPUT (PRINT) FILE.  (OUTPUT)
C 
C        VARIABLES
C              KFILDO = UNIT NUMBER FOR OUTPUT (PRINT) FILE.  (INPUT)
C            P(IX,JY) = THE GRID TO MODIFY (IX=1,NX) (JY=1,NY).  (INPUT)
C                  NX = NUMBER OF GRIDPOINTS IN THE XI (LEFT TO RIGHT)
C                       DIRECTION. (INPUT)
C                  NY = NUMBER OF GRIDPOINTS IN THE JY (BOTTOM TO TOP)
C                       DIRECTION. (INPUT)
C            DIR(K,J) = THE IX (J=1) AND JY (J=2) POSITIONS ON THE GRID
C                       FOR STATION K (K=1,NSTA).  (INPUT)
C                 ND1 = FIRST DIMENSION OF DIR( , ).  (INPUT)
C                NSTA = NUMBER OF POINTS FOR WHICH DATA ARE AVAILABLE.
C                       (INPUT)
C            SDATA(K) = HOLDS THE INTERPOLATED VALUES (K=1,NSTA). 
C                       (INPUT)
C                 IER = ERROR RETURN.
C                       0 = GOOD RETURN.
C        1         2         3         4         5         6         7 X
C        NONSYSTEM SUBROUTINES CALLED
C             NONE
C
      DIMENSION DIR(ND1,2)
      DIMENSION SDATA(NSTA)
      DIMENSION P(NX,NY)
C
      CALL TIMPR(KFILDO,KFILDO,'START SET4PT        ')
      IER=0
C
      DO 187 K=1,NSTA
C    
      IF(SDATA(K).LT.9998.)THEN
         IX=DIR(K,1)
         JY=DIR(K,2)
C        
         IF(IX.GE.1.AND.IX.LT.NX)THEN
C
            IF(JY.GE.1.AND.JY.LT.NY)THEN
               P(IX,JY)=SDATA(K)
               P(IX+1,JY)=SDATA(K)
               P(IX,JY+1)=SDATA(K)
               P(IX+1,JY+1)=SDATA(K)
            ENDIF
C
         ENDIF
C
      ENDIF
C
 187  CONTINUE
C
      CALL TIMPR(KFILDO,KFILDO,'END   SET4PT        ')
C 
      RETURN
      END