diff --git a/Source/Core/Core/CoreTiming.cpp b/Source/Core/Core/CoreTiming.cpp index 627f14cbcee1..e938d19eb143 100644 --- a/Source/Core/Core/CoreTiming.cpp +++ b/Source/Core/Core/CoreTiming.cpp @@ -348,7 +348,10 @@ void CoreTimingManager::Advance() m_event_queue.pop_back(); Throttle(evt.time); - evt.type->callback(m_system, evt.userdata, m_globals.global_timer - evt.time); + if (evt.type != nullptr) // slippi change + { + evt.type->callback(m_system, evt.userdata, m_globals.global_timer - evt.time); + } } m_is_global_timer_sane = false; diff --git a/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp b/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp index f422f428f826..fe5e4ed8c221 100644 --- a/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp +++ b/Source/Core/DolphinQt/Config/Graphics/HacksWidget.cpp @@ -91,8 +91,8 @@ void HacksWidget::CreateWidgets() m_store_xfb_copies = new ConfigBool(tr("Store XFB Copies to Texture Only"), Config::GFX_HACK_SKIP_XFB_COPY_TO_RAM); // slippi: don't let people touch this! - m_immediate_xfb->setEnabled(false); m_immediate_xfb = new ConfigBool(tr("Immediately Present XFB"), Config::GFX_HACK_IMMEDIATE_XFB); + m_immediate_xfb->setEnabled(false); m_skip_duplicate_xfbs = new ConfigBool(tr("Skip Presenting Duplicate Frames"), Config::GFX_HACK_SKIP_DUPLICATE_XFBS); diff --git a/Source/Core/DolphinQt/HotkeyScheduler.cpp b/Source/Core/DolphinQt/HotkeyScheduler.cpp index ddb7805f81b3..04659b66fabc 100644 --- a/Source/Core/DolphinQt/HotkeyScheduler.cpp +++ b/Source/Core/DolphinQt/HotkeyScheduler.cpp @@ -477,24 +477,27 @@ void HotkeyScheduler::Run() "Speed Limit: Unlimited" : fmt::format("Speed Limit: {}%", std::lround(emulation_speed * 100.f))); }; - if (!IsOnline()) { - auto speed = Config::Get(Config::MAIN_EMULATION_SPEED) - 0.1; - if (speed > 0) + if (IsHotkey(HK_INCREASE_EMULATION_SPEED)) { + auto speed = Config::Get(Config::MAIN_EMULATION_SPEED) + 0.1; speed = (speed >= 0.95 && speed <= 1.05) ? 1.0 : speed; Config::SetCurrent(Config::MAIN_EMULATION_SPEED, speed); + ShowEmulationSpeed(); + } + if (IsHotkey(HK_DECREASE_EMULATION_SPEED)) + { + { + auto speed = Config::Get(Config::MAIN_EMULATION_SPEED) - 0.1; + if (speed > 0) + { + speed = (speed >= 0.95 && speed <= 1.05) ? 1.0 : speed; + Config::SetCurrent(Config::MAIN_EMULATION_SPEED, speed); + } + ShowEmulationSpeed(); + } } - ShowEmulationSpeed(); - } - - if (IsHotkey(HK_INCREASE_EMULATION_SPEED)) - { - auto speed = Config::Get(Config::MAIN_EMULATION_SPEED) + 0.1; - speed = (speed >= 0.95 && speed <= 1.05) ? 1.0 : speed; - Config::SetCurrent(Config::MAIN_EMULATION_SPEED, speed); - ShowEmulationSpeed(); } // USB Device Emulation diff --git a/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp b/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp index e33ee7ae70e4..5a67a80be265 100644 --- a/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp +++ b/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp @@ -172,7 +172,8 @@ Core::DeviceRemoval PipeDevice::UpdateInput() // Read any pending characters off the pipe. If we hit a newline, // then dequeue a command off the front of m_buf and parse it. char buf[32]; - std::size_t bytes_read = readFromPipe(m_fd, buf, sizeof buf); // slippi: confirm this still works for libmelee + std::size_t bytes_read = + readFromPipe(m_fd, buf, sizeof buf); // slippi: confirm this still works for libmelee while (bytes_read > 0) { m_buf.append(buf, bytes_read);