From 0fb4e89fe26964a5433be138d7e7b0bc8e9f4c8e Mon Sep 17 00:00:00 2001 From: ramapcsx2 Date: Sat, 11 Jul 2009 15:43:28 +0000 Subject: [PATCH] Removed the wait cycles hack, and made it effectively always on. The magic values for this setting were made for the old, sometimes failing system. It should not be needed anymore, and testing confirmed that. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1485 96395faa-99c1-11dd-bbfe-3dabce05a288 --- common/include/Pcsx2Config.h | 2 +- pcsx2/Linux/HacksDlg.cpp | 4 ++-- pcsx2/Linux/Pref.cpp | 4 ++-- pcsx2/R5900.cpp | 8 +------- pcsx2/windows/HacksDlg.cpp | 4 ++-- pcsx2/windows/ini.cpp | 2 +- pcsx2/windows/pcsx2.rc | 6 ++---- 7 files changed, 11 insertions(+), 19 deletions(-) diff --git a/common/include/Pcsx2Config.h b/common/include/Pcsx2Config.h index 7b467f8093..1fba518c86 100644 --- a/common/include/Pcsx2Config.h +++ b/common/include/Pcsx2Config.h @@ -169,7 +169,7 @@ public: struct Hacks_t { int EECycleRate; bool IOPCycleDouble; - bool WaitCycleExt; + //bool WaitCycleExt; bool INTCSTATSlow; bool IdleLoopFF; int VUCycleSteal; diff --git a/pcsx2/Linux/HacksDlg.cpp b/pcsx2/Linux/HacksDlg.cpp index c4e17fcab1..88e36ebdcd 100644 --- a/pcsx2/Linux/HacksDlg.cpp +++ b/pcsx2/Linux/HacksDlg.cpp @@ -80,7 +80,7 @@ void on_Speed_Hacks(GtkMenuItem *menuitem, gpointer user_data) GtkRange *eeScale = GTK_RANGE(lookup_widget(SpeedHacksDlg, "EECycleHackScale")); set_checked(SpeedHacksDlg, "check_iop_cycle_rate", Config.Hacks.IOPCycleDouble); - set_checked(SpeedHacksDlg, "check_wait_cycles_sync_hack", Config.Hacks.WaitCycleExt); + //set_checked(SpeedHacksDlg, "check_wait_cycles_sync_hack", Config.Hacks.WaitCycleExt); set_checked(SpeedHacksDlg, "check_intc_sync_hack", Config.Hacks.INTCSTATSlow); set_checked(SpeedHacksDlg, "check_idle_loop_fastforward", Config.Hacks.IdleLoopFF); set_checked(SpeedHacksDlg, "check_microvu_flag_hack", Config.Hacks.vuFlagHack); @@ -104,7 +104,7 @@ void on_Speed_Hack_OK(GtkButton *button, gpointer user_data) newhacks.EECycleRate = 0; newhacks.IOPCycleDouble = is_checked(SpeedHacksDlg, "check_iop_cycle_rate"); - newhacks.WaitCycleExt = is_checked(SpeedHacksDlg, "check_wait_cycles_sync_hack"); + //newhacks.WaitCycleExt = is_checked(SpeedHacksDlg, "check_wait_cycles_sync_hack"); newhacks.INTCSTATSlow = is_checked(SpeedHacksDlg, "check_intc_sync_hack"); newhacks.IdleLoopFF = is_checked(SpeedHacksDlg, "check_idle_loop_fastforward"); newhacks.vuFlagHack = is_checked(SpeedHacksDlg, "check_microvu_flag_hack"); diff --git a/pcsx2/Linux/Pref.cpp b/pcsx2/Linux/Pref.cpp index ff06af2b48..d44b1c3b53 100644 --- a/pcsx2/Linux/Pref.cpp +++ b/pcsx2/Linux/Pref.cpp @@ -105,7 +105,7 @@ int LoadConfig() if (Config.Hacks.EECycleRate > 2) Config.Hacks.EECycleRate = 2; GetValuel("IOPCycleDouble", Config.Hacks.IOPCycleDouble); - GetValuel("WaitCycleExt", Config.Hacks.WaitCycleExt); + //GetValuel("WaitCycleExt", Config.Hacks.WaitCycleExt); GetValuel("INTCSTATSlow", Config.Hacks.INTCSTATSlow); GetValuel("VUCycleSteal", Config.Hacks.VUCycleSteal); GetValuel("vuFlagHack", Config.Hacks.vuFlagHack); @@ -178,7 +178,7 @@ void SaveConfig() SetValuel("EECycleRate", Config.Hacks.EECycleRate); SetValuel("IOPCycleDouble", Config.Hacks.IOPCycleDouble); - SetValuel("WaitCycleExt", Config.Hacks.WaitCycleExt); + //SetValuel("WaitCycleExt", Config.Hacks.WaitCycleExt); SetValuel("INTCSTATSlow", Config.Hacks.INTCSTATSlow); SetValuel("VUCycleSteal", Config.Hacks.VUCycleSteal); SetValuel("IdleLoopFF", Config.Hacks.IdleLoopFF); diff --git a/pcsx2/R5900.cpp b/pcsx2/R5900.cpp index 99b6f2c082..61761493d9 100644 --- a/pcsx2/R5900.cpp +++ b/pcsx2/R5900.cpp @@ -52,7 +52,7 @@ R5900cpu *Cpu = NULL; u32 bExecBIOS = 0; // set if the BIOS has already been executed static bool cpuIsInitialized = false; -static uint eeWaitCycles = 1024; +static const uint eeWaitCycles = 3072; bool eeEventTestIsActive = false; @@ -82,12 +82,6 @@ void cpuReset() g_nextBranchCycle = cpuRegs.cycle + 4; EEsCycle = 0; EEoCycle = cpuRegs.cycle; - eeWaitCycles = Config.Hacks.WaitCycleExt ? 3072 : 768; - - // Cyclerate hacks effectively speed up the rate of event tests, so we can safely boost - // the WaitCycles value here for x2 and x3 modes: - if( Config.Hacks.EECycleRate > 1 ) - eeWaitCycles += 1024; hwReset(); vif0Reset(); diff --git a/pcsx2/windows/HacksDlg.cpp b/pcsx2/windows/HacksDlg.cpp index 8f7bfe1a24..55ad85e67a 100644 --- a/pcsx2/windows/HacksDlg.cpp +++ b/pcsx2/windows/HacksDlg.cpp @@ -44,7 +44,7 @@ BOOL APIENTRY HacksProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) CheckRadioButton( hDlg, IDC_EESYNC_DEFAULT, IDC_EESYNC3, IDC_EESYNC_DEFAULT + Config.Hacks.EECycleRate ); if(Config.Hacks.IOPCycleDouble) CheckDlgButton(hDlg, IDC_IOPSYNC, TRUE); - if(Config.Hacks.WaitCycleExt) CheckDlgButton(hDlg, IDC_WAITCYCLES, TRUE); + //if(Config.Hacks.WaitCycleExt) CheckDlgButton(hDlg, IDC_WAITCYCLES, TRUE); if(Config.Hacks.INTCSTATSlow) CheckDlgButton(hDlg, IDC_INTCSTATHACK, TRUE); if(Config.Hacks.IdleLoopFF) CheckDlgButton(hDlg, IDC_IDLELOOPFF, TRUE); if(Config.Hacks.ESCExits) CheckDlgButton(hDlg, IDC_ESCHACK, TRUE); @@ -89,7 +89,7 @@ BOOL APIENTRY HacksProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) } newhacks.IOPCycleDouble = !!IsDlgButtonChecked(hDlg, IDC_IOPSYNC); - newhacks.WaitCycleExt = !!IsDlgButtonChecked(hDlg, IDC_WAITCYCLES); + //newhacks.WaitCycleExt = !!IsDlgButtonChecked(hDlg, IDC_WAITCYCLES); newhacks.INTCSTATSlow = !!IsDlgButtonChecked(hDlg, IDC_INTCSTATHACK); newhacks.ESCExits = !!IsDlgButtonChecked(hDlg, IDC_ESCHACK); newhacks.vuFlagHack = !!IsDlgButtonChecked(hDlg, IDC_VUHACK1); diff --git a/pcsx2/windows/ini.cpp b/pcsx2/windows/ini.cpp index 2a80ad212a..db2f7465e6 100644 --- a/pcsx2/windows/ini.cpp +++ b/pcsx2/windows/ini.cpp @@ -228,7 +228,7 @@ void IniFile::DoConfig( PcsxConfig& Conf ) if (Config.Hacks.EECycleRate > 2) Config.Hacks.EECycleRate = 2; Entry("IOPCycleDouble", Config.Hacks.IOPCycleDouble); - Entry("WaitCycleExt", Config.Hacks.WaitCycleExt); + //Entry("WaitCycleExt", Config.Hacks.WaitCycleExt); Entry("INTCSTATSlow", Config.Hacks.INTCSTATSlow); Entry("VUCycleSteal", Config.Hacks.VUCycleSteal); Entry("vuFlagHack", Config.Hacks.vuFlagHack); diff --git a/pcsx2/windows/pcsx2.rc b/pcsx2/windows/pcsx2.rc index 9f6d38bfbc..ea5992ba99 100644 --- a/pcsx2/windows/pcsx2.rc +++ b/pcsx2/windows/pcsx2.rc @@ -355,7 +355,6 @@ BEGIN CONTROL "Use x1.5 Cycle Rate",IDC_EESYNC1,"Button",BS_AUTORADIOBUTTON,13,79,87,10 CONTROL "Use x2 Cycle Rate",IDC_EESYNC2,"Button",BS_AUTORADIOBUTTON,13,113,83,10 CONTROL "Enable IOP x2 Cycle Rate",IDC_IOPSYNC,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,88,98,10 - CONTROL "WaitCycles Sync Hack",IDC_WAITCYCLES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,127,90,10 CONTROL "Esc Hack - Use Esc key to fully exit PCSX2.",IDC_ESCHACK, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,197,152,10 DEFPUSHBUTTON "OK",IDOK,424,208,50,14 @@ -367,7 +366,6 @@ BEGIN LTEXT "Big speedup! Works well with many games.",IDC_STATIC,25,124,125,19 LTEXT "Most compatible option - recommended for everyone with high-end machines.",IDC_STATIC,25,55,136,19 LTEXT "Small speedup and works well with most games.",IDC_STATIC,200,100,134,22 - LTEXT "Small speedup. Works well with most games, but may cause certain games to crash or freeze up during bootup or stage changes.",IDC_STATIC,200,139,141,39 LTEXT "Moderate speedup and works well with most games.",IDC_STATIC,25,90,129,19 CONTROL "INTC Sync Hack",IDC_INTCSTATHACK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,43,127,10 LTEXT "Huge speedup in many games, and a pretty high compatibility rate (some games still work better with EE sync hacks).",IDC_STATIC,200,55,140,28 @@ -375,8 +373,8 @@ BEGIN LTEXT "This space intentionally left blank",IDC_VUCYCLEDESC,383,160,142,26 LTEXT "VU Cycle Stealing (experimental)",IDC_STATIC,408,146,105,8 CONTROL "Idle Loop Fast-Forward (experimental)",IDC_IDLELOOPFF, - "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,179,139,10 - LTEXT "Speedup for a few games, including FFX with no known side effects.",IDC_STATIC,200,193,144,23 + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,187,126,139,10 + LTEXT "Speedup for a few games, including FFX with no known side effects.",IDC_STATIC,200,140,144,23 GROUPBOX "EmotionEngine (EE) Misc Hacks",IDC_STATIC,177,26,179,192 GROUPBOX "Vector Unit (VU) Hacks",IDC_STATIC,363,26,173,173 CONTROL "Status Flag Hack (microVU only)",IDC_VUHACK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,372,42,155,12