let reverb = fun (poussoir_reverb:int ref) (reglages:int array) (valeurs_reverb:int array) ->
 poussoir_reverb := ( succ !poussoir_reverb ) mod ( succ ( Array.length valeurs_reverb / 2 ) ) ;
 match !poussoir_reverb with
 | 0 ->
  begin
   reglages.(Data.bouton_niveau_reverb - Data.succ_nombre_de_curseurs) <- 0 ;
   reglages.(Data.bouton_delai_reverb - Data.succ_nombre_de_curseurs) <- 127 ;
   aux Data.adresse_etat_clavier ( 128 + Data.bouton_niveau_reverb ) 0 ;
   aux Data.adresse_etat_clavier ( 128 + Data.bouton_delai_reverb ) 127 ;
   prerr_endline ( ( pourcent_cpu () ) ^ "arret de la reverberation" ) ;
  end
 | x when x > 0 ->
  begin
   let i = ref ( 2 * ( pred x ) ) in
    reglages.(Data.bouton_niveau_reverb - Data.succ_nombre_de_curseurs) <- valeurs_reverb.(!i) ;
    aux Data.adresse_etat_clavier ( 128 + Data.bouton_niveau_reverb ) valeurs_reverb.(!i) ;
    incr i ;
    reglages.(Data.bouton_delai_reverb - Data.succ_nombre_de_curseurs) <- valeurs_reverb.(!i) ;
    aux Data.adresse_etat_clavier ( 128 + Data.bouton_delai_reverb ) valeurs_reverb.(!i) ;
    prerr_endline ( ( pourcent_cpu () ) ^ "reverberation " ^ ( string_of_int x ) ) ;
  end
 | _ -> ()