diff --git a/pcsx2/x86/microVU_Compile.inl b/pcsx2/x86/microVU_Compile.inl index 9c2b8db67c..bc655bffa3 100644 --- a/pcsx2/x86/microVU_Compile.inl +++ b/pcsx2/x86/microVU_Compile.inl @@ -464,7 +464,8 @@ void mVUtestCycles(microVU& mVU, microFlagCycles& mFC) { iPC = mVUstartPC; - if (isVU0 && EmuConfig.Speedhacks.EECycleRate != 0) + // If the VUSyncHack is on, we want the VU to run behind, to avoid conditions where the VU is sped up. + if (isVU0 && EmuConfig.Speedhacks.EECycleRate != 0 && (!EmuConfig.Gamefixes.VUSyncHack || EmuConfig.Speedhacks.EECycleRate < 0)) { switch (std::min(static_cast(EmuConfig.Speedhacks.EECycleRate), static_cast(mVUcycles))) {