diff --git a/src/ARCH_SRC/surfex/dummy_topd.F90 b/src/ARCH_SRC/surfex/dummy_topd.F90
index 7d4ada880488b807fd99bd8188a169010afcddb0..2cc918df64fd871d2d73073367cae022624c60f7 100644
--- a/src/ARCH_SRC/surfex/dummy_topd.F90
+++ b/src/ARCH_SRC/surfex/dummy_topd.F90
@@ -19,6 +19,9 @@ MODULE MODD_TOPD_PAR
 REAL,    PARAMETER :: XSTEPK = 0.05 
 INTEGER, PARAMETER :: NDIM = 20 
 INTEGER, PARAMETER :: JPCAT = 10    
+INTEGER :: NUNIT = 19
+REAL, DIMENSION(JPCAT) :: XF_PARAM_BV
+REAL, DIMENSION(JPCAT) :: XC_DEPTH_RATIO_BV
 END MODULE MODD_TOPD_PAR
 
 !     ######################
@@ -104,7 +107,15 @@ END MODULE MODD_TOPODYN
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE INIT_SURF_TOPD(HPROGRAM,KI)
+SUBROUTINE INIT_SURF_TOPD(DGEI, I, UG, U,HPROGRAM,KI)
+USE MODD_DIAG_EVAP_ISBA_n, ONLY : DIAG_EVAP_ISBA_t
+USE MODD_ISBA_n, ONLY : ISBA_t
+USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
+USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
+TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DGEI
+TYPE(ISBA_t), INTENT(INOUT) :: I
+TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
+TYPE(SURF_ATM_t), INTENT(INOUT) :: U
 CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM      !
 INTEGER,           INTENT(IN)     :: KI            ! grid dimension
 END SUBROUTINE INIT_SURF_TOPD
@@ -116,15 +127,37 @@ END SUBROUTINE ISBA_TO_TOPD
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE COUPLING_SURF_TOPD (HPROGRAM,KI)
- CHARACTER(LEN=6), INTENT(IN)         :: HPROGRAM ! program calling surf. schemes
+SUBROUTINE COUPLING_SURF_TOPD (DGEI, DGMI, IG, I, UG, U,HPROGRAM,KI)
+USE MODD_DIAG_EVAP_ISBA_n, ONLY : DIAG_EVAP_ISBA_t
+USE MODD_DIAG_MISC_ISBA_n, ONLY : DIAG_MISC_ISBA_t
+USE MODD_ISBA_GRID_n, ONLY : ISBA_GRID_t
+USE MODD_ISBA_n, ONLY : ISBA_t
+USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
+USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
+TYPE(DIAG_EVAP_ISBA_t), INTENT(INOUT) :: DGEI
+TYPE(DIAG_MISC_ISBA_t), INTENT(INOUT) :: DGMI
+TYPE(ISBA_GRID_t), INTENT(INOUT) :: IG
+TYPE(ISBA_t), INTENT(INOUT) :: I
+TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
+TYPE(SURF_ATM_t), INTENT(INOUT) :: U
+CHARACTER(LEN=6), INTENT(IN)         :: HPROGRAM ! program calling surf. schemes
 INTEGER,          INTENT(IN)         :: KI       ! Surfex grid dimension
 END SUBROUTINE COUPLING_SURF_TOPD
 !     ######################
 !     ######################
 !     ######################
-SUBROUTINE PGD_TOPD(HPROGRAM)
- CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM    
+SUBROUTINE PGD_TOPD(I, UG, U, USS,HPROGRAM)
+
+USE MODD_ISBA_n, ONLY : ISBA_t
+USE MODD_SURF_ATM_GRID_n, ONLY : SURF_ATM_GRID_t
+USE MODD_SURF_ATM_n, ONLY : SURF_ATM_t
+USE MODD_SURF_ATM_SSO_n, ONLY : SURF_ATM_SSO_t
+
+TYPE(ISBA_t), INTENT(INOUT) :: I
+TYPE(SURF_ATM_GRID_t), INTENT(INOUT) :: UG
+TYPE(SURF_ATM_t), INTENT(INOUT) :: U
+TYPE(SURF_ATM_SSO_t), INTENT(INOUT) :: USS
+CHARACTER(LEN=*),  INTENT(IN)     :: HPROGRAM    
 END SUBROUTINE PGD_TOPD
 !     ######################
 !     ######################