citra/src/core
Subv e90daa6a4f Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.
In a real 3DS, threads that call svcSyncRequest are put to sleep until the server responds via svcReplyAndReceive. Our HLE services don't implement this mechanism and are effectively immediate from the 3DS's point of view. This commit makes it so that we at least simulate the IPC delay.

Specific HLE handlers might need to put their callers to sleep for a longer period of time to simulate IO timings. This is their responsibility but doing so is currently not implemented.

See https://gist.github.com/ds84182/4a7690c5376e045cab9129ca4185bbeb for a test that was not passing before this commit.
2017-12-07 22:40:15 -05:00
..
arm dyncom: Remove unnecessary includes 2017-12-07 00:02:55 -05:00
file_sys Merge pull request #3120 from shinyquagsire23/ncch-container-offsets 2017-11-28 11:48:46 -05:00
frontend Merge pull request #2899 from wwylele/touch-refactor 2017-08-29 11:29:10 -04:00
gdbstub core: clear format warnings 2017-11-01 12:35:32 +02:00
hle Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation. 2017-12-07 22:40:15 -05:00
hw CoreTiming: Reworked CoreTiming (#3119) 2017-11-25 14:56:57 +01:00
loader loader/ncch: Use AM to get update title path 2017-10-18 21:19:40 -06:00
tracer Core: Fix some out-of-style includes 2017-05-27 16:31:42 -07:00
3ds.h Move screen size constants from video_core to core 2017-05-27 18:41:24 -07:00
CMakeLists.txt Filesys: Added some missing headers to the CMakeLists.txt after the recent stream of PRs. 2017-11-07 22:04:51 -05:00
core.cpp core/arm: Improve timing accuracy before service calls in JIT 2017-12-03 16:06:46 +00:00
core.h core/arm: Improve timing accuracy before service calls in JIT 2017-12-03 16:06:46 +00:00
core_timing.cpp CoreTiming: Reworked CoreTiming (#3119) 2017-11-25 14:56:57 +01:00
core_timing.h CoreTiming: Reworked CoreTiming (#3119) 2017-11-25 14:56:57 +01:00
memory.cpp Correcting word order of a comment in memory.cpp 2017-10-28 13:23:58 -04:00
memory.h Memory: Make WriteBlock take a Process parameter on which to operate 2017-10-01 14:18:36 -05:00
memory_setup.h Kernel/Memory: Give each Process its own page table. 2017-09-10 15:13:41 -05:00
mmio.h Remove empty newlines in #include blocks. 2016-09-21 11:15:47 +09:00
perf_stats.cpp PerfStats: Re-order and document members better 2017-02-26 17:22:04 -08:00
perf_stats.h PerfStats: Re-order and document members better 2017-02-26 17:22:04 -08:00
settings.cpp SidebySide Layout (#2859) 2017-08-25 17:53:07 -04:00
settings.h WebService: Verify username and token (#2930) 2017-09-18 21:18:26 -04:00
telemetry_session.cpp WebService: Verify username and token (#2930) 2017-09-18 21:18:26 -04:00
telemetry_session.h WebService: Verify username and token (#2930) 2017-09-18 21:18:26 -04:00