yuzu/src/core
David Marcec 19dc36ce06 Implement Time::GetSharedMemoryNativeHandle
This PR attempts to implement the shared memory provided by GetSharedMemoryNativeHandle. There is still more work to be done however that requires a rehaul of the current time module to handle clock contexts. This PR is mainly to get the basic functionality of the SharedMemory working and allow the use of addition to it whilst things get improved on.

Things to note:
Memory Barriers are used in the SharedMemory and a better solution would need to be done to implement this. Currently in this PR I’m faking the memory barriers as everything is sync and single threaded. They work by incrementing the counter and just populate the two data slots. On data reading, it will read the last added data.

Specific values in the shared memory would need to be updated periodically. This isn't included in this PR since we don't actively do this yet. In a later PR when time is refactored this should be done.

Finally, as we don't handle clock contexts. When time is refactored, we will need to update the shared memory for specific contexts. This PR does this already however since the contexts are all identical and not separated. We're just updating the same values for each context which in this case is empty.

Tiime:SetStandardUserSystemClockAutomaticCorrectionEnabled, Time:IsStandardUserSystemClockAutomaticCorrectionEnabled are also partially implemented in this PR. The reason the implementation is partial is because once again, a lack of clock contexts. This will be improved on in a future PR.

This PR closes issue #2556
2019-06-26 00:45:53 +10:00
..
arm loader: Move NSO module tracking to AppLoader 2019-05-26 11:40:46 -04:00
crypto Merge pull request #2546 from DarkLordZach/kips 2019-06-21 14:28:18 -04:00
file_sys Merge pull request #2546 from DarkLordZach/kips 2019-06-21 14:28:18 -04:00
frontend yuzu/bootmanager: Treat the resolution factor as a u32 2019-06-03 15:34:31 -04:00
gdbstub gdbstub: Fix some bugs in IsMemoryBreak() and ServeBreak. Add workaround to let watchpoints break into GDB. (#4651) 2019-03-15 16:31:06 +01:00
hle Implement Time::GetSharedMemoryNativeHandle 2019-06-26 00:45:53 +10:00
loader Merge pull request #2546 from DarkLordZach/kips 2019-06-21 14:28:18 -04:00
CMakeLists.txt Implement Time::GetSharedMemoryNativeHandle 2019-06-26 00:45:53 +10:00
constants.cpp constants: Extract backup JPEG used by account services 2019-06-07 17:46:57 -04:00
constants.h constants: Extract backup JPEG used by account services 2019-06-07 17:46:57 -04:00
core.cpp Merge pull request #2575 from DarkLordZach/process-id-types 2019-06-21 15:25:50 -04:00
core.h Merge pull request #2482 from DarkLordZach/prepo 2019-06-21 14:05:18 -04:00
core_cpu.cpp kernel/svc: Deglobalize the supervisor call handlers 2019-04-07 20:30:05 -04:00
core_cpu.h kernel/scheduler: Pass in system instance in constructor 2019-03-04 17:01:37 -05:00
core_timing.cpp core/core_timing: Make callback parameters consistent 2019-03-24 18:12:17 -04:00
core_timing.h core/core_timing: Make callback parameters consistent 2019-03-24 18:12:17 -04:00
core_timing_util.cpp core/core_timing_util: Use std::chrono types for specifying time units 2019-06-04 20:31:24 -04:00
core_timing_util.h core/core_timing_util: Amend casing of cyclesTo* functions 2019-06-04 20:31:46 -04:00
cpu_core_manager.cpp core/cpu_core_manager: Create threads separately from initialization. 2019-04-11 22:11:40 -04:00
cpu_core_manager.h core/cpu_core_manager: Create threads separately from initialization. 2019-04-11 22:11:40 -04:00
memory.cpp core/cpu_core_manager: Create threads separately from initialization. 2019-04-11 22:11:40 -04:00
memory.h core/memory: Remove unused FlushMode enum 2019-05-07 13:55:17 -04:00
memory_setup.h core: Move PageTable struct into Common. 2019-03-16 22:05:40 -04:00
perf_stats.cpp general: Use deducation guides for std::lock_guard and std::unique_lock 2019-04-01 12:53:47 -04:00
perf_stats.h core/core: Replace includes with forward declarations where applicable 2018-08-31 16:30:14 -04:00
reporter.cpp Update reporter.cpp 2019-06-22 14:39:52 +01:00
reporter.h loader: Move NSO module tracking to AppLoader 2019-05-26 11:40:46 -04:00
settings.cpp rasterizer_opengl: Remove OpenGL core profile 2019-05-30 13:21:00 -03:00
settings.h Merge pull request #2482 from DarkLordZach/prepo 2019-06-21 14:05:18 -04:00
telemetry_session.cpp core/telemetry_session: Remove unnecessary web service nulling out in destructor 2019-05-28 22:28:18 -04:00
telemetry_session.h core/telemetry_session: Remove usages of the global system accessor 2019-05-28 22:28:15 -04:00