Commit graph

3592 commits

Author SHA1 Message Date
Subv 3ce2c24665 Kernel: Remove Thread::wait_objects_index and use wait_objects to hold all the objects that a thread is waiting on. 2017-01-05 09:40:14 -05:00
Subv bcad1d6f12 Kernel: Use different thread statuses when a thread calls WaitSynchronization1 and WaitSynchronizationN with wait_all = true.
This commit removes the overly general THREADSTATUS_WAIT_SYNCH and replaces it with two more granular statuses:

THREADSTATUS_WAIT_SYNCH_ANY when a thread waits on objects via WaitSynchronization1 or WaitSynchronizationN with wait_all = false.

THREADSTATUS_WAIT_SYNCH_ALL when a thread waits on objects via WaitSynchronizationN with wait_all = true.
2017-01-04 15:58:50 -05:00
Subv 8503e56689 Kernel/Mutex: Propagate thread priority changes to other threads inheriting the priority via mutexes 2017-01-04 15:58:48 -05:00
Subv d33885b60b Kernel/Mutex: Update a mutex priority when a thread stops waiting on it. 2017-01-04 15:58:47 -05:00
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
Sebastian Valle c5bf85ecce Merge pull request #2386 from bunnei/fix-bg-color
config: SDL: Move background color setting to correct section.
2016-12-30 09:51:56 -05:00
bunnei c20fcd4a21 config: SDL: Move background color setting to correct section. 2016-12-30 00:35:38 -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
bunnei 73f1ddef92 Merge pull request #2367 from JayFoxRox/lighting-lut-quickfix
Lighting LUT Quickfix
2016-12-29 13:41:51 -05:00
wwylele bf96d8c561 Core: remove unused hle.cpp 2016-12-27 10:27:48 +02:00
Jannik Vogel 1404a3c19a Minor cleanup in GLSL code 2016-12-25 21:38:10 +01:00
Jannik Vogel 98bb00a643 Offset lighting LUT samples correctly 2016-12-25 21:37:26 +01:00
wwylele 0372b0ea28 Core: reset cpu_core in Shutdown to make IsPoweredOn work properly 2016-12-24 20:55:38 +02:00
bunnei 77b58b740d Merge pull request #2369 from MerryMage/core-frontend
core: Move emu_window and key_map into core
2016-12-23 17:35:35 -05:00
Yuri Kunde Schlesner dc07e6c89a Merge pull request #2370 from wwylele/where-is-my-shared-font
file_util: fix missing sysdata path
2016-12-23 12:42:40 -08:00
wwylele 2c0bde2fb7 file_util: fix missing sysdata path 2016-12-23 22:19:14 +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 d4ad36796f Merge pull request #2366 from MerryMage/MemoryReadCode
arm_dynarmic: Provide MemoryReadCode callback
2016-12-22 14:25:15 -05: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
MerryMage 608278503c arm_dynarmic: Provide MemoryReadCode callback
Change of interface in dynarmic 36082087ded632079b16d24137fdd0c450ce82ea
2016-12-22 16:07:14 +00: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 796a0ae11b Merge pull request #2361 from lioncash/disasm
disassembler: Remove mutable specifier from breakpoints member variable
2016-12-22 00:15:06 -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
bunnei b2fcbaedf4 file_util: Remove unused paths. 2016-12-21 23:29:12 -05:00
bunnei 98bf7cc82f core: Consolidate top-level system state into a singleton. 2016-12-21 23:29:04 -05:00
bunnei fdcff791c3 loader: Remove duplicate docstrings. 2016-12-21 23:27:50 -05:00
Lioncash 0ecbd152b1 citra-qt: Move graphics debugging code into its own folder
Keeps all graphics debugging stuff from cluttering up the root debugger
folder
2016-12-21 17:19:21 -05:00
Lioncash 20112a1c26 disassembler: Remove mutable specifier from breakpoints member variable
Breakpoints has been const correct with regards to what the
DisassmblerModel needs for quite a while now.
2016-12-21 14:12:41 -05:00
bunnei 79b3a1a1e7 Merge pull request #2319 from yuriks/profile-scopes
VideoCore: Make profiling scope more representative
2016-12-21 13:33:49 -05:00
bunnei 9cef48a53f Merge pull request #2357 from lioncash/ui
citra-qt: Move bits of constructor behavior to named functions
2016-12-21 13:33:16 -05:00
Lioncash bf5974f077 citra-qt: Move bits of constructor behavior to named functions
Makes the initialization process a tad easier to grok,
since the constructor isn't just a glob of random unrelated behaviors.
2016-12-19 15:12:28 -05:00
Albin Bernhardsson 0a2259ad11 Use GL_TRUE when setting color_mask 2016-12-19 19:06:35 +01:00
bunnei a50f5b4746 Merge pull request #2318 from yuriks/trace-opt
VideoCore: Inline IsPicaTracing
2016-12-18 21:15:24 -05:00
bunnei 9a26d8ac0a Merge pull request #2351 from CaptV0rt3x/master
Fixed game_list focus issue.
2016-12-18 16:12:21 -05:00
bunnei 9538499cbd Merge pull request #2347 from citra-emu/revert-2321-flush-pages
Revert "Memory: Always flush whole pages from surface cache"
2016-12-18 16:11:26 -05:00
CaptV0rt3x 258f683672 line fixup for travis ci 2016-12-19 00:52:54 +05:30
Vamsi Krishna 5d3470c841 screen swap - Hotkey mapping 2016-12-19 00:49:57 +05:30
Vamsi Krishna c8117b76a0 Fixed GPLv2 license text in the start. 2016-12-19 00:06:27 +05:30
Vamsi Krishna 255b58025b Fixed game_list focusing issue.
added line render_window->setFocus();
2016-12-18 16:13:51 +05:30
bunnei 1224db246e Revert "Memory: Always flush whole pages from surface cache" 2016-12-17 19:13:33 -05:00
wwylele c62bc4e616 Thread: remove the thread from the thread list when exiting 2016-12-17 19:23:52 +02:00
Yuri Kunde Schlesner 5095e23921 Merge pull request #2335 from yuriks/shader-refactor
Misc. Shader refactors
2016-12-16 20:45:57 -08:00
bunnei b1806d9a8f Merge pull request #2303 from freiro/citra-qt_missing_sdl2_dll
Copy SDL2.dll when compiling citra-qt with msvc
2016-12-16 11:35:55 -05:00