Subv
4e6369d41d
Kernel/Mutex: Implemented priority inheritance.
...
The implementation is based on reverse engineering of the 3DS's kernel.
A mutex holder's priority will be temporarily boosted to the best priority among any threads that want to acquire any of its held mutexes.
When the holder releases the mutex, it's priority will be boosted to the best priority among the threads that want to acquire any of its remaining held mutexes.
2017-01-04 15:58:46 -05:00
Subv
90570c153b
Kernel: Object ShouldWait and Acquire calls now take a thread as a parameter.
...
This will be useful when implementing mutex priority inheritance.
2017-01-04 15:58:45 -05:00
Subv
a1718862e3
Kernel/Synch: Do not attempt a reschedule on every syscall.
...
Not all syscalls should cause reschedules, this commit attempts to remedy that, however, it still does not cover all cases.
2017-01-04 15:58:44 -05:00
bunnei
7b3737d9bd
Merge pull request #2240 from wwylele/auto-region
...
Config: auto-select region and language
2016-12-29 22:09:01 -05:00
wwylele
bf96d8c561
Core: remove unused hle.cpp
2016-12-27 10:27:48 +02:00
MerryMage
4aaaea9758
core: Move emu_window and key_map into core
...
* Removes circular dependences (common should not depend on core)
2016-12-23 13:42:39 +00:00
mailwl
3a05b161bc
Service/NWM: add nwm services
2016-12-22 22:51:27 +03:00
bunnei
37e91013ec
Merge pull request #2343 from bunnei/core-cleanup
...
Core: Top-level consolidate & misc cleanup
2016-12-22 11:47:44 -05:00
bunnei
09b7c9788d
Merge pull request #2285 from mailwl/csnd-format
...
csnd:SND: Reformat source code
2016-12-22 00:47:50 -05:00
bunnei
d445aad022
ThreadContext: Move from "core" to "arm_interface".
2016-12-22 00:27:49 -05:00
bunnei
8cfd0762fd
core: Replace "AppCore" nomenclature with just "CPU".
2016-12-22 00:27:46 -05:00
bunnei
1fd7cfb69e
Address clang-format issues.
2016-12-21 23:48:14 -05:00
bunnei
5d22844f3e
core: Remove HLE module, consolidate code & various cleanups.
2016-12-21 23:48:13 -05:00
bunnei
d504f6cf08
core: Consolidate core and system state, remove system module & cleanups.
2016-12-21 23:29:13 -05:00
wwylele
c62bc4e616
Thread: remove the thread from the thread list when exiting
2016-12-17 19:23:52 +02:00
wwylele
ea4217939a
Kernel: remove object's waiting thread if it is dead
2016-12-16 12:33:18 +02:00
bunnei
034651fa7f
Merge pull request #2260 from Subv/scheduling
...
Threading: Reworked the way our scheduler works.
2016-12-16 00:41:22 -05:00
Yuri Kunde Schlesner
89a8f963ce
Merge pull request #2328 from wwylele/fix-trace
...
Fix debug build from #2249
2016-12-15 21:06:12 -08:00
Yuri Kunde Schlesner
ceed2efb4e
Merge pull request #2320 from mailwl/cecd-update
...
Service/CECD: Add cecd:ndm service
2016-12-15 21:01:51 -08:00
bunnei
7aa9f479d2
Merge pull request #2331 from lioncash/trunc
...
hid: Get rid of a double -> float truncation warning
2016-12-15 17:45:24 -05:00
wwylele
267f26d7df
FS: fix debug build from #2249
2016-12-16 00:22:36 +02:00
Sebastian Valle
9df75ff6d6
Merge pull request #2330 from lioncash/pragma
...
core: Add missing #pragma once directives where applicable
2016-12-15 16:06:43 -05:00
Lioncash
7c1a069ab6
hid: Get rid of a double -> float truncation warning
...
float literals need to have the 'f' prefix.
2016-12-15 15:52:15 -05:00
Lioncash
cb4293adf1
core: Add missing #pragma once directives where applicable
2016-12-15 15:40:51 -05:00
Lioncash
8e6bf2478f
act: Fix docstring typo
...
These aren't the AM services.
2016-12-15 14:51:45 -05:00
bunnei
338e24ae80
Merge pull request #2314 from mailwl/account
...
Service/ACT: move ACT services to folder
2016-12-15 13:51:29 -05:00
mailwl
c7a28acce4
Service/CECD: Add cecd:ndm service
2016-12-15 09:52:40 +03:00
Yuri Kunde Schlesner
c99b5e3122
Merge pull request #2249 from Subv/sessions_v3
...
Kernel/IPC: Use Ports and Sessions as the fundamental building block of Inter Process Communication.
2016-12-14 20:35:33 -08:00
Subv
3e80a1a1c1
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:45:36 -05:00
Subv
00decc1180
Fixed the codestyle to match our clang-format rules.
2016-12-14 12:35:01 -05:00
mailwl
11e9681df2
Service/ACT: move ACT services to folder
2016-12-14 09:05:46 +03:00
JamePeng
7af1081bb0
Minor amendment of GSP_GPU::ImportDisplayCaptureInfo code
2016-12-13 17:01:53 +08:00
mailwl
a88468d683
csnd:SND reformat source code
2016-12-12 21:19:36 +03:00
mailwl
e3828ed7fa
APT::GetStartupArgument: force clear startup argument
2016-12-11 22:36:12 +03:00
Lioncash
b0ebdfae34
Add all services to the Service namespace
...
Previously there was a split where some of the services were in the
Service namespace and others were not.
2016-12-11 00:07:27 +00:00
Subv
7066deff78
Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.
2016-12-10 13:29:31 -05:00
bunnei
1a981fe1ea
Merge pull request #2291 from lioncash/svc
...
service: Add the cfg:nor service
2016-12-09 14:15:20 -05:00
Subv
6df6ad46c4
Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass.
2016-12-09 12:52:12 -05:00
Subv
79f53e6daa
Kernel/IPC: Small codestyle cleanup
2016-12-09 12:39:12 -05:00
Subv
d4815e828d
WaitSynch: Removed unused variables and reduced SharedPtr copies.
...
Define a variable with the value of the sync timeout error code.
Use a boost::flat_map instead of an unordered_map to hold the equivalence of objects and wait indices in a WaitSynchN call.
2016-12-09 12:23:09 -05:00
Lioncash
fd2837ad16
service: Add cfg:nor service
2016-12-09 05:07:41 -05:00
Yuri Kunde Schlesner
0154ff2075
Merge pull request #2292 from lioncash/bool
...
ptm: Use boolean instead of integral value
2016-12-09 01:43:57 -08:00
Lioncash
508f17b87c
ptm: Use boolean instead of integral value
...
The third parameter of Write is actually a bool type, not an int.
2016-12-09 04:04:28 -05:00
Lioncash
51f6cd48ba
service: Drop '_Interface' from cfg service names
2016-12-09 01:08:35 -05:00
Subv
17d8d69c6e
Added a framework for partially handling Session disconnections.
...
Further implementation will happen in a future commit.
Fixes a regression.
2016-12-08 15:01:10 -05:00
Subv
021e732815
Use std::move where appropriate.
2016-12-08 11:06:19 -05:00
Lioncash
e7d396142a
service: Add the ptm:s service
...
3dbrew documents this as being the exact same as ptm:sysm
2016-12-08 06:14:55 -05:00
Lioncash
9becdeada9
service: Add common ptm:u commands to other ptm services
...
3dbrew indicates that all services have access to these commands
except for ptm:sets.
2016-12-08 06:13:10 -05:00
Lioncash
aa096138bd
service: Drop '_Interface' in ptm service class names
...
Inheriting from Service::Interface makes this obvious.
2016-12-08 06:13:04 -05:00
Lioncash
0e025b7b4e
service: Add ptm::gets and ptm::sets services
2016-12-08 05:43:08 -05:00