diff --git a/pcsx2/Patch.c b/pcsx2/Patch.c index a37eda3d7a..0886d2e17e 100644 --- a/pcsx2/Patch.c +++ b/pcsx2/Patch.c @@ -631,8 +631,8 @@ void patchFunc_zerogs(char* cmd, char* param) void SetRoundMode(u32 ee, u32 vu) { - // don't set a state for interpreter only +// don't set a state for interpreter only #ifndef PCSX2_NORECBUILD - SetCPUState(0x9f80|ee, 0x9f80|vu); + SetCPUState( (g_sseMXCSR & ~6000) | ee, (g_sseVUMXCSR & ~6000) | vu); #endif } diff --git a/pcsx2/Patch.h b/pcsx2/Patch.h index 051718dff7..e8a27634dc 100644 --- a/pcsx2/Patch.h +++ b/pcsx2/Patch.h @@ -90,6 +90,9 @@ int AddPatch(int Mode, int Place, int Address, int Size, u64 data); void SetFastMemory(int); // iR5900LoadStore.c void SetVUNanMemory(int); // iVUmicro.c + +extern u32 g_sseMXCSR; +extern u32 g_sseVUMXCSR; void SetCPUState(u32 sseMXCSR, u32 sseVUMXCSR); void SetRoundMode(u32 ee, u32 vu); diff --git a/pcsx2/windows/WinMain.c b/pcsx2/windows/WinMain.c index 2839b36e34..8692b8293c 100644 --- a/pcsx2/windows/WinMain.c +++ b/pcsx2/windows/WinMain.c @@ -58,9 +58,6 @@ static int efile; char filename[256]; extern int g_SaveGSStream; -extern u32 g_sseMXCSR; -extern u32 g_sseVUMXCSR; - static int AccBreak = 0; int needReset = 1; unsigned int langsMax;