From eb90bbf252eb58aeac01d5ba76a679ff2db13f77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Strohh=C3=A4cker?= Date: Wed, 2 May 2007 16:32:34 +0000 Subject: [PATCH] always check for pushf/popf exception in the dynamic core (prevents discrepancy if instruction is executed in realmode and v86) Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2850 --- src/cpu/core_dyn_x86/decoder.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cpu/core_dyn_x86/decoder.h b/src/cpu/core_dyn_x86/decoder.h index a18f3a17..61f04308 100644 --- a/src/cpu/core_dyn_x86/decoder.h +++ b/src/cpu/core_dyn_x86/decoder.h @@ -2187,14 +2187,14 @@ restart_prefix: gen_releasereg(DREG(ESP)); dyn_flags_gen_to_host(); gen_call_function((void *)&CPU_PUSHF,"%Rd%Id",DREG(TMPB),decode.big_op); - if (cpu.pmode) dyn_check_bool_exception(DREG(TMPB)); + dyn_check_bool_exception(DREG(TMPB)); gen_releasereg(DREG(TMPB)); break; case 0x9d: //POPF gen_releasereg(DREG(ESP)); gen_releasereg(DREG(FLAGS)); gen_call_function((void *)&CPU_POPF,"%Rd%Id",DREG(TMPB),decode.big_op); - if (cpu.pmode) dyn_check_bool_exception(DREG(TMPB)); + dyn_check_bool_exception(DREG(TMPB)); dyn_flags_host_to_gen(); gen_releasereg(DREG(TMPB)); break;