diff options
author | Kelebek1 <eeeedddccc@hotmail.co.uk> | 2022-07-10 09:29:37 +0200 |
---|---|---|
committer | Kelebek1 <eeeedddccc@hotmail.co.uk> | 2022-07-10 09:29:37 +0200 |
commit | b23c6b456c3fd09a4dd04c4174f784f73b7513bc (patch) | |
tree | c431a3b1ee04fb4da60e08ab21d78a5813e9b528 /src/core | |
parent | Rework CoreTiming (diff) | |
download | yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar.gz yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar.bz2 yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar.lz yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar.xz yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.tar.zst yuzu-b23c6b456c3fd09a4dd04c4174f784f73b7513bc.zip |
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 3 | ||||
-rw-r--r-- | src/core/hle/service/hid/hid.cpp | 7 | ||||
-rw-r--r-- | src/core/hle/service/hid/hidbus.cpp | 2 | ||||
-rw-r--r-- | src/core/hle/service/nvflinger/nvflinger.cpp | 6 | ||||
-rw-r--r-- | src/core/memory/cheat_engine.cpp | 2 |
5 files changed, 9 insertions, 11 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index ee91a9b68..7307cf262 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -245,8 +245,7 @@ struct KernelCore::Impl { }); const auto time_interval = std::chrono::nanoseconds{std::chrono::milliseconds(10)}; - system.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), time_interval, - preemption_event); + system.CoreTiming().ScheduleLoopingEvent(time_interval, time_interval, preemption_event); } void InitializeShutdownThreads() { diff --git a/src/core/hle/service/hid/hid.cpp b/src/core/hle/service/hid/hid.cpp index 88fcd53ec..89bb12442 100644 --- a/src/core/hle/service/hid/hid.cpp +++ b/src/core/hle/service/hid/hid.cpp @@ -97,11 +97,10 @@ IAppletResource::IAppletResource(Core::System& system_, return std::nullopt; }); - system.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), pad_update_ns, - pad_update_event); - system.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), mouse_keyboard_update_ns, + system.CoreTiming().ScheduleLoopingEvent(pad_update_ns, pad_update_ns, pad_update_event); + system.CoreTiming().ScheduleLoopingEvent(mouse_keyboard_update_ns, mouse_keyboard_update_ns, mouse_keyboard_update_event); - system.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), motion_update_ns, + system.CoreTiming().ScheduleLoopingEvent(motion_update_ns, motion_update_ns, motion_update_event); system.HIDCore().ReloadInputDevices(); diff --git a/src/core/hle/service/hid/hidbus.cpp b/src/core/hle/service/hid/hidbus.cpp index 5e20e6830..e5e50845f 100644 --- a/src/core/hle/service/hid/hidbus.cpp +++ b/src/core/hle/service/hid/hidbus.cpp @@ -57,7 +57,7 @@ HidBus::HidBus(Core::System& system_) return std::nullopt; }); - system_.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), hidbus_update_ns, + system_.CoreTiming().ScheduleLoopingEvent(hidbus_update_ns, hidbus_update_ns, hidbus_update_event); } diff --git a/src/core/hle/service/nvflinger/nvflinger.cpp b/src/core/hle/service/nvflinger/nvflinger.cpp index 600b19b3f..5f69c8c2c 100644 --- a/src/core/hle/service/nvflinger/nvflinger.cpp +++ b/src/core/hle/service/nvflinger/nvflinger.cpp @@ -73,14 +73,14 @@ NVFlinger::NVFlinger(Core::System& system_, HosBinderDriverServer& hos_binder_dr const auto lock_guard = Lock(); Compose(); - return std::chrono::nanoseconds(GetNextTicks()) - ns_late; + return std::max(std::chrono::nanoseconds::zero(), + std::chrono::nanoseconds(GetNextTicks()) - ns_late); }); if (system.IsMulticore()) { vsync_thread = std::jthread([this](std::stop_token token) { SplitVSync(token); }); } else { - system.CoreTiming().ScheduleLoopingEvent(std::chrono::nanoseconds(0), frame_ns, - composition_event); + system.CoreTiming().ScheduleLoopingEvent(frame_ns, frame_ns, composition_event); } } diff --git a/src/core/memory/cheat_engine.cpp b/src/core/memory/cheat_engine.cpp index 09a02d2ac..ffdbacc18 100644 --- a/src/core/memory/cheat_engine.cpp +++ b/src/core/memory/cheat_engine.cpp @@ -189,7 +189,7 @@ void CheatEngine::Initialize() { FrameCallback(user_data, ns_late); return std::nullopt; }); - core_timing.ScheduleLoopingEvent(std::chrono::nanoseconds(0), CHEAT_ENGINE_NS, event); + core_timing.ScheduleLoopingEvent(CHEAT_ENGINE_NS, CHEAT_ENGINE_NS, event); metadata.process_id = system.CurrentProcess()->GetProcessID(); metadata.title_id = system.GetCurrentProcessProgramID(); |