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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Ectx am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled and add service placeholder (#2136) 2021-03-25 23:25:49 +01:00
Erpt Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Es Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Eupld Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Fatal Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Hid hid: Various fixes and cleanup (#3326) 2022-05-08 00:28:54 +02:00
Ins Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Npns Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Pcie Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
Vi Limit number of events that can be retrieved from GetDisplayVSyncEvent (#3188) 2022-03-12 17:56:19 +01:00
Wlan Refactoring HOS folder structure (#771) 2019-09-19 10:45:11 +10:00
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 Refactoring commands handling (#728) 2019-07-11 22:13:43 -03:00
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