--- a/src/sh4/sh4.c Sat Jan 03 03:30:26 2009 +0000 +++ b/src/sh4/sh4.c Sat Jan 03 08:55:15 2009 +0000 @@ -202,7 +202,11 @@ if( sh4_running ) { #ifdef SH4_TRANSLATOR if( sh4_use_translator ) { - sh4_translate_exit_recover(); + if( exit_code == CORE_EXIT_EXCEPTION ) { + sh4_translate_exception_exit_recover(); + } else { + sh4_translate_exit_recover(); + } } #endif // longjmp back into sh4_run_slice