diff --git a/pcsx2/windows/WinMain.c b/pcsx2/windows/WinMain.c index 26aaf8de56..6c67325ea8 100644 --- a/pcsx2/windows/WinMain.c +++ b/pcsx2/windows/WinMain.c @@ -731,6 +731,9 @@ BOOL APIENTRY GameFixes(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) Config.GameFixes = 0; Config.GameFixes |= IsDlgButtonChecked(hDlg, IDC_ROUNDMODE) ? 0x1 : 0; + if (Config.GameFixes & 0x1) g_sseMXCSR |= 0x6000; + SetCPUState(g_sseMXCSR, g_sseVUMXCSR); + SaveConfig(); EndDialog(hDlg, TRUE); diff --git a/pcsx2/x86/ix86-32/iR5900-32.c b/pcsx2/x86/ix86-32/iR5900-32.c index 86e7d6742d..7658c783a4 100644 --- a/pcsx2/x86/ix86-32/iR5900-32.c +++ b/pcsx2/x86/ix86-32/iR5900-32.c @@ -1461,8 +1461,6 @@ void SetCPUState(u32 sseMXCSR, u32 sseVUMXCSR) sseVUMXCSR &= 0xffff; if( cpucaps.hasStreamingSIMDExtensions ) { - if(Config.GameFixes & 0x1) g_sseMXCSR = 0xffc0; - else g_sseMXCSR = sseMXCSR; g_sseVUMXCSR = sseVUMXCSR; // do NOT set Denormals-Are-Zero flag (charlie and chocfac messes up)