Commit graph

1941 commits

Author SHA1 Message Date
Subv
e499b48f97 Kernel: Remove old and unused Mutex code. 2018-04-20 21:04:32 -05:00
Subv
fcd7cbe65a Kernel: Properly implemented svcWaitProcessWideKey and svcSignalProcessWideKey
They work in tandem with guest code to provide synchronization primitives along with svcArbitrateLock/Unlock
2018-04-20 21:04:27 -05:00
Subv
4e47dd5b59 Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock.
Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case.
Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock.

TODO:
* Fix svcWaitProcessWideKey
* Fix svcSignalProcessWideKey
* Remove the Mutex class.
2018-04-20 21:04:25 -05:00
bunnei
c3236a3a37 Merge pull request #360 from lioncash/namespaces
service: Use nested namespace specifiers where applicable
2018-04-20 09:44:40 -04:00
bunnei
e325ef7f09 Merge pull request #363 from lioncash/array-size
common_funcs: Remove ARRAY_SIZE macro
2018-04-20 09:43:02 -04:00
Lioncash
c9f5ae4fcc common_funcs: Remove ARRAY_SIZE macro
C++17 has non-member size() which we can just call where necessary.
2018-04-19 22:36:52 -04:00
Lioncash
6d94dd21a5 service: Use nested namespace specifiers where applicable
Tidies up namespace declarations
2018-04-19 22:20:28 -04:00
Lioncash
59a504d933 vi: Remove redundant initializers in the constructors 2018-04-19 21:34:36 -04:00
bunnei
b17664dfa9 nvflinger: Call MicroProfileFlip on NVFlinger::Compose. 2018-04-18 20:28:50 -04:00
Hexagon12
4c462c91bd Various service name fixes - part 2 (rebased) (#322)
* Updated ACC with more service names

* Updated SVC with more service names

* Updated set with more service names

* Updated sockets with more service names

* Updated SPL with more service names

* Updated time with more service names

* Updated vi with more service names
2018-04-17 11:37:43 -04:00
bunnei
03ee087c5e Merge pull request #338 from bunnei/unrequire-shared-font
pl_u: Use empty shared font if none is available.
2018-04-15 16:54:36 -04:00
bunnei
f6ba44429e pl_u: Use empty shared font if none is available.
- Makes games work in lieu of shared_font.bin.
2018-04-15 16:15:34 -04:00
bunnei
dc852fda3b fsp_srv: Implement DeleteFile.
- Used by Binding of Isaac.
2018-04-15 13:15:18 -04:00
bunnei
1a1008a642 Merge pull request #332 from bunnei/fix-total-mem-usage
vm_manager: Increase GetTotalMemoryUsage value.
2018-04-14 22:29:19 -04:00
bunnei
3260473ce8 vm_manager: Increase GetTotalMemoryUsage value.
- Gets Binding of Isaac running.
2018-04-14 22:04:10 -04:00
bunnei
28c0641382 fsp_srv: Implement IFile::Flush. 2018-04-14 19:46:09 -04:00
bunnei
e42bbdddff Merge pull request #323 from Hexagon12/stub-hid
Service/HID: Stubbed out GetPlayerLedPattern
2018-04-13 10:58:03 -04:00
Hexagon12
433ccdebe5 Fixed normal params in GetDisplayResolution 2018-04-13 17:47:01 +03:00
Hexagon12
e6bb2d65f8 Stubbed out GetPlayerLedPattern 2018-04-13 17:05:03 +03:00
bunnei
219e3f4c45 Merge pull request #319 from Hexagon12/service-name-fix
Various service name fixes - part 1
2018-04-13 00:25:32 -04:00
mailwl
b439691768 Service/SSL: update service according switchbrew 2018-04-11 19:17:18 +03:00
Hexagon12
8293ccc5ed Various fixes and clang 2018-04-11 14:48:56 +03:00
Hexagon12
6d6064d42e Decimal change 2018-04-10 21:21:00 +03:00
Hexagon12
f171ec8b29 Updated pctl:a with new service names. 2018-04-10 21:03:23 +03:00
Hexagon12
0bd95ef3be Updated nvmemp with new service names. 2018-04-10 20:28:15 +03:00
Hexagon12
2df3594b31 Updated nvdrv with more service names. 2018-04-10 20:26:49 +03:00
Hexagon12
837b8b5b80 Updated pl:u with more service names. 2018-04-10 20:23:21 +03:00
Hexagon12
e05e3c8a08 Updated hid with more service names. 2018-04-10 20:17:22 +03:00
Hexagon12
93b83a11b6 Updated friend:u with more service names. 2018-04-10 20:02:11 +03:00
Hexagon12
83479a3d19 Updated the unknown name 2018-04-10 20:01:33 +03:00
Hexagon12
251c576455 Updated friend:a with more service names. 2018-04-10 20:00:36 +03:00
Hexagon12
f8e0ce2cd0 Updated fsp-srv with more service names. 2018-04-10 19:30:27 +03:00
Hexagon12
82be79db10 Updated CodecCtl with more service names. 2018-04-10 18:58:14 +03:00
Hexagon12
a9239dbed8 Updated audren with more service names. 2018-04-10 18:56:57 +03:00
Hexagon12
95d5bf3aa1 Updated audrec with more service names. 2018-04-10 18:53:33 +03:00
Hexagon12
eff525cab3 Updated audout with more service names. 2018-04-10 18:51:50 +03:00
Hexagon12
ba73f4e0a4 Updated audin with more service names. 2018-04-10 18:47:52 +03:00
Hexagon12
3eab3da04c Updated AOC with more service names. 2018-04-10 18:42:28 +03:00
Hexagon12
22ef1d1cc5 Updated AppletOE with more service names. 2018-04-10 18:41:17 +03:00
Hexagon12
4a594aff08 Updated AppletAE with more service names. 2018-04-10 18:39:46 +03:00
Hexagon12
c823bbde93 Updated AM with more service names. 2018-04-10 18:36:00 +03:00
mailwl
a6a6ffed7a Service/ACC: convert to module, add acc:aa, acc:su, acc:u1 services 2018-04-10 10:18:52 +03:00
James Rowe
f6ae0f432b Fix spelling of Initialize 2018-04-07 07:23:21 -06:00
bunnei
e71cfbce72 svc: Stub out SetThreadActivity, GetThreadContext. 2018-04-02 23:51:01 -04:00
bunnei
372b8dae46 audren_u: Stub out GetActiveAudioDeviceName. 2018-04-02 23:51:00 -04:00
bunnei
683de06263 audout_u: Implement GetAudioOutState. 2018-04-02 23:51:00 -04:00
bunnei
659fd3e9f8 nifm: GetResult does not return a data field. 2018-04-02 23:50:59 -04:00
bunnei
c800619c1e vi: Implement GetDisplayResolution. 2018-04-02 23:50:59 -04:00
bunnei
1eeef530e5 shared_memory: Remove incorrect 3ds-specific check. 2018-04-02 23:50:58 -04:00
bunnei
3f82cee183 service: Add friend:u interface. 2018-04-02 23:50:57 -04:00