1
0
Fork 0
mirror of https://github.com/Ryujinx/Ryujinx.git synced 2024-11-11 18:36:40 +00:00
Ryujinx/Ryujinx.HLE/HOS/Services
gdkchan 0c87bf9ea4
Refactor CPU interface to allow the implementation of other CPU emulators (#3362)
* Refactor CPU interface

* Use IExecutionContext interface on SVC handler, change how CPU interrupts invokes the handlers

* Make CpuEngine take a ITickSource rather than returning one

The previous implementation had the scenario where the CPU engine had to implement the tick source in mind, like for example, when we have a hypervisor and the game can read CNTPCT on the host directly. However given that we need to do conversion due to different frequencies anyway, it's not worth it. It's better to just let the user pass the tick source and redirect any reads to CNTPCT to the user tick source

* XML docs for the public interfaces

* PPTC invalidation due to NativeInterface function name changes

* Fix build of the CPU tests

* PR feedback
2022-05-31 16:29:35 -03:00
..
Account Implement -p or --profile command line argument (#2947) 2022-03-02 09:51:37 +01:00
Am hid: Various fixes and cleanup (#3326) 2022-05-08 00:28:54 +02:00
Apm Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
Arp hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
Audio Fix audio renderer error message result code base (#3348) 2022-05-19 00:59:27 +02:00
Bcat Update to LibHac v0.14.3 (#2925) 2021-12-23 13:55:50 -03:00
Bgtc
Bluetooth Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
BluetoothManager Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
Caps caps: Stubs GetAlbumFileList0AafeAruidDeprecated and GetAlbumFileList3AaeAruid (#2403) 2021-06-25 00:37:48 +02:00
Cec
Ectx am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled and add service placeholder (#2136) 2021-03-25 23:25:49 +01:00
Erpt
Es
Eupld
Fatal
Friend misc: Make PID unsigned long instead of long (#3043) 2022-02-09 17:18:07 -03:00
Fs hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
Grc
Hid hid: Various fixes and cleanup (#3326) 2022-05-08 00:28:54 +02:00
Ins
Lbl Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
Ldn Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
Lm HLE: Fix integer sign inconcistency accross the codebase (#2222) 2021-04-24 12:16:01 +02:00
Loader Add various error codes to Loader (#1208) 2020-05-04 13:22:28 +02:00
Mig
Mii Refactor CPU interface to allow the implementation of other CPU emulators (#3362) 2022-05-31 16:29:35 -03:00
Mm mm: Cleaned up the service a bit (#2233) 2021-04-22 23:35:01 +02:00
Mnpp Implement/Stub mnpp:app service and some hid calls (#3131) 2022-02-18 02:00:06 +01:00
Ncm hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
News
Nfc Refactor CPU interface to allow the implementation of other CPU emulators (#3362) 2022-05-31 16:29:35 -03:00
Ngct HLE: Fix integer sign inconcistency accross the codebase (#2222) 2021-04-24 12:16:01 +02:00
Nifm Caching local network info and using an event handler to invalidate as needed (improves menu slow down issue in FE3H) (#2761) 2022-03-15 03:49:35 +01:00
Nim hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
Notification
Npns
Ns misc: Make PID unsigned long instead of long (#3043) 2022-02-09 17:18:07 -03:00
Nv De-tile GOB when DMA copying from block linear to pitch kind memory regions (#3207) 2022-03-20 13:55:07 -03:00
Olsc oslc: Fix condition in GetSaveDataBackupSetting (#3208) 2022-03-20 13:25:29 -03:00
Ovln
Pcie
Pctl Update LibHac to v0.16.0 (#3159) 2022-02-27 00:52:25 +01:00
Pcv clkrst: Stub/Implement IClkrstManager and IClkrstSession calls (#2692) 2021-09-29 01:03:35 +02:00
Pm Implement PM GetProcessInfo atmosphere extension (partially) (#2966) 2022-05-03 23:28:32 +02:00
Prepo prepo: Implement SaveSystemReport and SaveSystemReportWithUser (#2379) 2021-06-23 22:41:44 +02:00
Psc
Ptm Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
Ro Enable JIT service LLE (#2959) 2022-05-05 15:23:30 -03:00
Sdb hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
Settings Enable JIT service LLE (#2959) 2022-05-05 15:23:30 -03:00
Sm Enable JIT service LLE (#2959) 2022-05-05 15:23:30 -03:00
Sockets misc: Make PID unsigned long instead of long (#3043) 2022-02-09 17:18:07 -03:00
Spl hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
Srepo
Ssl hle: Some cleanup (#3210) 2022-03-22 20:46:16 +01:00
SurfaceFlinger Refactor CPU interface to allow the implementation of other CPU emulators (#3362) 2022-05-31 16:29:35 -03:00
Time Refactor CPU interface to allow the implementation of other CPU emulators (#3362) 2022-05-31 16:29:35 -03:00
Usb
Vi Limit number of events that can be retrieved from GetDisplayVSyncEvent (#3188) 2022-03-12 17:56:19 +01:00
Wlan
CommandHIpcAttribute.cs Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
CommandTIpcAttribute.cs Initial support for the new 12.x IPC system (#2182) 2021-04-14 00:01:24 +02:00
DisposableIpcService.cs Add dedicated ServerBase for FileSystem services (#3142) 2022-02-19 15:29:11 +01:00
DummyService.cs
IpcService.cs Added trace log level (#3096) 2022-02-17 21:08:07 -03:00
ServerBase.cs Enable JIT service LLE (#2959) 2022-05-05 15:23:30 -03:00
ServiceAttributes.cs IPC refactor part 1: Use explicit separate threads to process requests (#1447) 2020-09-22 14:50:40 +10:00