From e613cbf395935c3ada0dafc93136a4f8f0823294 Mon Sep 17 00:00:00 2001 From: "Admiral H. Curtiss" Date: Thu, 6 Jan 2022 01:33:46 +0100 Subject: [PATCH] Config: Port FastDiscSpeed setting to new config system. --- Source/Core/Core/BootManager.cpp | 8 +------- Source/Core/Core/ConfigLoaders/IsSettingSaveable.cpp | 1 + Source/Core/Core/ConfigManager.cpp | 2 -- Source/Core/Core/ConfigManager.h | 1 - Source/Core/Core/HW/DVD/DVDInterface.cpp | 3 +-- 5 files changed, 3 insertions(+), 12 deletions(-) diff --git a/Source/Core/Core/BootManager.cpp b/Source/Core/Core/BootManager.cpp index 4faf55f87d..a5b73a86a0 100644 --- a/Source/Core/Core/BootManager.cpp +++ b/Source/Core/Core/BootManager.cpp @@ -78,7 +78,6 @@ private: int iSyncGpuMaxDistance = 0; int iSyncGpuMinDistance = 0; float fSyncGpuOverclock = 0; - bool bFastDiscSpeed = false; std::array iWiimoteSource{}; std::array Pads{}; std::array m_EXIDevice{}; @@ -95,7 +94,6 @@ void ConfigCache::SaveConfig(const SConfig& config) iSyncGpuMaxDistance = config.iSyncGpuMaxDistance; iSyncGpuMinDistance = config.iSyncGpuMinDistance; fSyncGpuOverclock = config.fSyncGpuOverclock; - bFastDiscSpeed = config.bFastDiscSpeed; for (int i = 0; i != MAX_BBMOTES; ++i) iWiimoteSource[i] = WiimoteCommon::GetSource(i); @@ -123,7 +121,6 @@ void ConfigCache::RestoreConfig(SConfig* config) config->iSyncGpuMaxDistance = iSyncGpuMaxDistance; config->iSyncGpuMinDistance = iSyncGpuMinDistance; config->fSyncGpuOverclock = fSyncGpuOverclock; - config->bFastDiscSpeed = bFastDiscSpeed; // Only change these back if they were actually set by game ini, since they can be changed while a // game is running. @@ -178,7 +175,6 @@ bool BootCore(std::unique_ptr boot, const WindowSystemInfo& wsi) StartUp.bSyncGPUOnSkipIdleHack); core_section->Get("MMU", &StartUp.bMMU, StartUp.bMMU); core_section->Get("SyncGPU", &StartUp.bSyncGPU, StartUp.bSyncGPU); - core_section->Get("FastDiscSpeed", &StartUp.bFastDiscSpeed, StartUp.bFastDiscSpeed); for (unsigned int i = 0; i < SerialInterface::MAX_SI_CHANNELS; ++i) { @@ -223,7 +219,6 @@ bool BootCore(std::unique_ptr boot, const WindowSystemInfo& wsi) { // TODO: remove this once ConfigManager starts using OnionConfig. StartUp.bCPUThread = Config::Get(Config::MAIN_CPU_THREAD); - StartUp.bFastDiscSpeed = Config::Get(Config::MAIN_FAST_DISC_SPEED); StartUp.bSyncGPU = Config::Get(Config::MAIN_SYNC_GPU); for (int i = 0; i < 2; ++i) { @@ -258,7 +253,6 @@ bool BootCore(std::unique_ptr boot, const WindowSystemInfo& wsi) StartUp.iSyncGpuMaxDistance = netplay_settings.m_SyncGpuMaxDistance; StartUp.iSyncGpuMinDistance = netplay_settings.m_SyncGpuMinDistance; StartUp.fSyncGpuOverclock = netplay_settings.m_SyncGpuOverclock; - StartUp.bFastDiscSpeed = netplay_settings.m_FastDiscSpeed; StartUp.bMMU = netplay_settings.m_MMU; StartUp.bFastmem = netplay_settings.m_Fastmem; } @@ -312,7 +306,7 @@ bool BootCore(std::unique_ptr boot, const WindowSystemInfo& wsi) // Disable loading time emulation for Riivolution-patched games until we have proper emulation. if (!boot->riivolution_patches.empty()) - StartUp.bFastDiscSpeed = true; + Config::SetCurrent(Config::MAIN_FAST_DISC_SPEED, true); Core::UpdateWantDeterminism(/*initial*/ true); diff --git a/Source/Core/Core/ConfigLoaders/IsSettingSaveable.cpp b/Source/Core/Core/ConfigLoaders/IsSettingSaveable.cpp index 42bc8d8208..75b43c62a8 100644 --- a/Source/Core/Core/ConfigLoaders/IsSettingSaveable.cpp +++ b/Source/Core/Core/ConfigLoaders/IsSettingSaveable.cpp @@ -101,6 +101,7 @@ bool IsSettingSaveable(const Config::Location& config_location) &Config::MAIN_PERF_MAP_DIR.GetLocation(), &Config::MAIN_GPU_DETERMINISM_MODE.GetLocation(), &Config::MAIN_DISABLE_ICACHE.GetLocation(), + &Config::MAIN_FAST_DISC_SPEED.GetLocation(), // UI.General diff --git a/Source/Core/Core/ConfigManager.cpp b/Source/Core/Core/ConfigManager.cpp index b90cf59e59..faaedd4d64 100644 --- a/Source/Core/Core/ConfigManager.cpp +++ b/Source/Core/Core/ConfigManager.cpp @@ -160,7 +160,6 @@ void SConfig::LoadCoreSettings(IniFile& ini) core->Get("SyncGpuMaxDistance", &iSyncGpuMaxDistance, 200000); core->Get("SyncGpuMinDistance", &iSyncGpuMinDistance, -200000); core->Get("SyncGpuOverclock", &fSyncGpuOverclock, 1.0f); - core->Get("FastDiscSpeed", &bFastDiscSpeed, false); } void SConfig::ResetRunningGameMetadata() @@ -283,7 +282,6 @@ void SConfig::LoadDefaults() bMMU = false; iBBDumpPort = -1; bSyncGPU = false; - bFastDiscSpeed = false; bWii = false; ResetRunningGameMetadata(); diff --git a/Source/Core/Core/ConfigManager.h b/Source/Core/Core/ConfigManager.h index f639c33ec4..c426a9790f 100644 --- a/Source/Core/Core/ConfigManager.h +++ b/Source/Core/Core/ConfigManager.h @@ -72,7 +72,6 @@ struct SConfig bool bMMU = false; int iBBDumpPort = 0; - bool bFastDiscSpeed = false; bool bSyncGPU = false; int iSyncGpuMaxDistance; diff --git a/Source/Core/Core/HW/DVD/DVDInterface.cpp b/Source/Core/Core/HW/DVD/DVDInterface.cpp index 0cbc27e205..338a3b009c 100644 --- a/Source/Core/Core/HW/DVD/DVDInterface.cpp +++ b/Source/Core/Core/HW/DVD/DVDInterface.cpp @@ -19,7 +19,6 @@ #include "Common/Logging/Log.h" #include "Core/Config/MainSettings.h" -#include "Core/ConfigManager.h" #include "Core/CoreTiming.h" #include "Core/DolphinAnalytics.h" #include "Core/HW/AudioInterface.h" @@ -1382,7 +1381,7 @@ static void ScheduleReads(u64 offset, u32 length, const DiscIO::Partition& parti dvd_offset = Common::AlignDown(dvd_offset, DVD_ECC_BLOCK_SIZE); const u64 first_block = dvd_offset; - if (SConfig::GetInstance().bFastDiscSpeed) + if (Config::Get(Config::MAIN_FAST_DISC_SPEED)) { // The SUDTR setting makes us act as if all reads are buffered buffer_start = std::numeric_limits::min();