      SUBROUTINE HSCAL2  (Q, T,ES, ILG,IS,IF, LEVS,ILEV,LEV,
     1                    PRESPA,AH,BH, RMOON, MOIST) 
  
C     * SEP 28/88 - M.LAZARE. CORRECT ADDRESS FOR Q PASSED TO HSCAL.
C     * MAY 17/88 - R.LAPRISE.
C     * DEFINE SPECIFIC HUMIDITY (Q) ON LEV=ILEV+1 PHYSICS LEVELS 
C     * FROM MODEL MOISTURE VARIABLE (ES) ON LEVS LEVELS. 
C     * TOP MISSING LAYERS FILLED WITH VALUE ZERO.
C     * MOIST  SWITCH DEFINING MOISTURE VARIABLE. 
C     * ILG    FIRST DIMENSION OF SLICES. 
C     * IS,IF  STARTING AND FINAL LONGITUDE INDICES.
C     * LEVS   NUMBER OF MODEL LEVELS OF MOISTURE.
C     * ILEV   NUMBER OF MODEL LEVELS OF TEMPERATURES.

      IMPLICIT REAL (A-H,O-Z),
     +INTEGER (I-N)

      REAL Q(ILG,LEV), T(ILG,ILEV), ES(ILG,LEVS)
  
      REAL PRESPA(ILG), AH(ILEV), BH(ILEV)
C-----------------------------------------------------------------------
      IF(LEV.NE.ILEV+1 .OR. LEVS.GT.ILEV)        CALL XIT('HSCAL2',-1)
      LON = IF-IS+1 
  
C     * CALCULATE SPECIFIC HUMIDITY IN Q FROM MODEL MOISTURE VARIABLE.
  
      CALL HSCAL (Q(1,2), ES,ILG,LON,ILEV,LEVS, 
     1            PRESPA,AH,BH,T,MOIST,.FALSE.) 
  
C     * MOON LAYER ASSIGNED VALUE ZERO. 
  
      DO 300 I=IS,IF
        Q(I,1) = 0. 
  300 CONTINUE
  
      RETURN
      END 
