From ecdd2c5ddf40334f45a780075c92ecefcbcc3b6e Mon Sep 17 00:00:00 2001 From: cracyc Date: Thu, 26 May 2022 14:13:56 -0500 Subject: i8087: fsave resets the fpu --- src/devices/cpu/i386/x87ops.hxx | 1 + src/devices/machine/i8087.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/devices/cpu/i386/x87ops.hxx b/src/devices/cpu/i386/x87ops.hxx index f9c00671177..6579778de87 100644 --- a/src/devices/cpu/i386/x87ops.hxx +++ b/src/devices/cpu/i386/x87ops.hxx @@ -4870,6 +4870,7 @@ void i386_device::x87_fsave(uint8_t modrm) for (int i = 0; i < 8; ++i) WRITE80(ea + i*10, ST(i)); + x87_reset(); CYCLES((m_cr[0] & 1) ? 56 : 67); } diff --git a/src/devices/machine/i8087.cpp b/src/devices/machine/i8087.cpp index 907bc50cab2..30015f0bb0c 100644 --- a/src/devices/machine/i8087.cpp +++ b/src/devices/machine/i8087.cpp @@ -4236,6 +4236,7 @@ void i8087_device::fsave(u8 modrm) for (int i = 0; i < 8; ++i) WRITE80(ea + i*10, ST(i)); + reset(); CYCLES(67); } -- cgit v1.2.3