diff --git a/matlab/dynare_solve.m b/matlab/dynare_solve.m
index 59cb325a69b0a27d1d71bbe9cb16443de64f85d7..d70c2c2fdb57ad4baedf04e8d877df63109f7027 100644
--- a/matlab/dynare_solve.m
+++ b/matlab/dynare_solve.m
@@ -93,7 +93,11 @@ if options.solve_algo == 0
     options4fsolve.MaxFunEvals = 50000;
     options4fsolve.MaxIter = maxit;
     options4fsolve.TolFun = tolf;
-    options4fsolve.Display = 'iter';
+    if options.debug==1
+        options4fsolve.Display = 'final';
+    else
+        options4fsolve.Display = 'off';
+    end
     if jacobian_flag
         options4fsolve.Jacobian = 'on';
     else
diff --git a/matlab/mode_check.m b/matlab/mode_check.m
index b7221961c9197b54449457f3d1e2a2fe8667cf6d..8d216bcbfe3ab13dd654a4ae674afc5453b7d7b6 100644
--- a/matlab/mode_check.m
+++ b/matlab/mode_check.m
@@ -145,6 +145,9 @@ for plt = 1:nbplt,
                 y(i,1) = fval;
             else
                 y(i,1) = NaN;
+                if DynareOptions.debug
+                    fprintf('mode_check:: could not solve model for parameter %s at value %4.3f, error code: %u\n',name,z(i),info(1))
+                end
             end
             if DynareOptions.mode_check.nolik==0
                 lnprior = priordens(xx,BayesInfo.pshape,BayesInfo.p6,BayesInfo.p7,BayesInfo.p3,BayesInfo.p4);