Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b18ccf9399 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							e81a2080eb 
							
						 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							bec05db746 
							
						 
					 
					
						
						
							
							resource_limit: Make ResourceTypes an enum class  
						
						... 
						
						
						
						Prevents enum identifiers from leaking into the surrounding scope. 
						
					 
					
						2018-04-20 19:41:45 -04:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							d9e316e353 
							
						 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								Hexagon12 
							
						 
					 
					
						
						
						
						
							
						
						
							e52a87b98a 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							43f0f163e1 
							
						 
					 
					
						
						
							
							vm_manager: Increase GetTotalMemoryUsage value.  
						
						... 
						
						
						
						- Gets Binding of Isaac running. 
						
					 
					
						2018-04-14 22:04:10 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							40bccd74d3 
							
						 
					 
					
						
						
							
							svc: Stub out SetThreadActivity, GetThreadContext.  
						
						
						
					 
					
						2018-04-02 23:51:01 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							99ae9dbf49 
							
						 
					 
					
						
						
							
							shared_memory: Remove incorrect 3ds-specific check.  
						
						
						
					 
					
						2018-04-02 23:50:58 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f4ba523992 
							
						 
					 
					
						
						
							
							hle_ipc, fsp_srv: Cleanup logging.  
						
						
						
					 
					
						2018-03-31 23:30:00 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							eef097bdc7 
							
						 
					 
					
						
						
							
							hle_ipc: Do not ensure write buffer size.  
						
						
						
					 
					
						2018-03-31 16:06:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b27ab46bde 
							
						 
					 
					
						
						
							
							memory: Fix stack region.  
						
						
						
					 
					
						2018-03-31 16:06:45 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f6893969b3 
							
						 
					 
					
						
						
							
							svc: Stub GetThreadCoreMask.  
						
						
						
					 
					
						2018-03-29 21:23:15 -04:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							1d8b6ad13b 
							
						 
					 
					
						
						
							
							Clang Fixes  
						
						
						
					 
					
						2018-03-19 17:53:35 +01:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							0e72d0d826 
							
						 
					 
					
						
						
							
							More Warning cleanups  
						
						
						
					 
					
						2018-03-19 17:27:04 +01:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							ef875d6a35 
							
						 
					 
					
						
						
							
							Clean Warnings (?)  
						
						
						
					 
					
						2018-03-19 17:07:08 +01:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							c86af6939c 
							
						 
					 
					
						
						
							
							hle_ipc: Add SleepClientThread to block current thread within HLE routines.  
						
						
						
					 
					
						2018-03-18 20:56:34 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							2faa83ca13 
							
						 
					 
					
						
						
							
							hle_ipc: Use shared_ptr instead of unique_ptr to allow copies.  
						
						
						
					 
					
						2018-03-18 20:56:33 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							019f1a0cf0 
							
						 
					 
					
						
						
							
							hle_ipc: Remove GetPointer(..) usage with WriteToOutgoingCommandBuffer.  
						
						
						
					 
					
						2018-03-18 20:56:33 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e353b9fb3d 
							
						 
					 
					
						
						
							
							thread: Add THREADSTATUS_WAIT_HLE_EVENT, remove THREADSTATUS_WAIT_ARB.  
						
						
						
					 
					
						2018-03-18 20:56:32 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							cc6f22e0e4 
							
						 
					 
					
						
						
							
							process: MirrorMemory should use MemoryState::Mapped.  
						
						
						
					 
					
						2018-03-16 19:24:54 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e9a857ce82 
							
						 
					 
					
						
						
							
							process: Unmap previously allocated heap.  
						
						
						
					 
					
						2018-03-16 18:32:25 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							403f8e79ea 
							
						 
					 
					
						
						
							
							arm_interface: Support unmapping previously mapped memory.  
						
						
						
					 
					
						2018-03-16 18:32:24 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							34a29ad051 
							
						 
					 
					
						
						
							
							svc: Use more correct values for GetInfo MapRegion and NewMapRegion.  
						
						
						
					 
					
						2018-03-16 18:32:23 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8581404482 
							
						 
					 
					
						
						
							
							kernel: Move stack region outside of application heap.  
						
						
						
					 
					
						2018-03-16 18:32:23 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							3923b0f589 
							
						 
					 
					
						
						
							
							process: Fix stack memory state.  
						
						
						
					 
					
						2018-03-16 18:32:21 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8be7131033 
							
						 
					 
					
						
						
							
							MemoryState: Add additional memory states and improve naming.  
						
						
						
					 
					
						2018-03-16 18:32:21 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							7d6653268f 
							
						 
					 
					
						
						
							
							core: Move process creation out of global state.  
						
						
						
					 
					
						2018-03-14 18:42:19 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							46fc7d8502 
							
						 
					 
					
						
						
							
							Merge pull request  #216  from Subv/savedata  
						
						... 
						
						
						
						Implemented the SaveData archive and MountSaveData. 
						
					 
					
						2018-03-01 22:14:31 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							827f8ca3c7 
							
						 
					 
					
						
						
							
							Kernel: Store the program id in the Process class instead of the CodeSet class.  
						
						... 
						
						
						
						There may be many CodeSets per Process, so it's wasteful and overcomplicated to store the program id in each of them. 
						
					 
					
						2018-03-01 19:03:53 -05:00 
						 
				 
			
				
					
						
							
							
								Jules Blok 
							
						 
					 
					
						
						
						
						
							
						
						
							c74af07c49 
							
						 
					 
					
						
						
							
							thread: Clear the process list on shutdown.  
						
						
						
					 
					
						2018-02-27 17:13:39 +01:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							926604fc14 
							
						 
					 
					
						
						
							
							Merge pull request  #207  from mailwl/duplicatesession  
						
						... 
						
						
						
						IPC: add domain header to response if only it exists in request 
						
					 
					
						2018-02-26 20:52:56 -08:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							f1beb69899 
							
						 
					 
					
						
						
							
							Merge pull request  #215  from N00byKing/umapsharedmmry  
						
						... 
						
						
						
						UnmapSharedMemory 
						
					 
					
						2018-02-25 21:04:24 -08:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							08c6ac02cf 
							
						 
					 
					
						
						
							
							(Hopefully) Fix MinGW Build  
						
						
						
					 
					
						2018-02-25 13:40:22 +01:00 
						 
				 
			
				
					
						
							
							
								N00byKing 
							
						 
					 
					
						
						
						
						
							
						
						
							2b41c6e573 
							
						 
					 
					
						
						
							
							Add UnmapSharedMemory  
						
						... 
						
						
						
						C++11 requires spaces on the Identifier
Add inttypes include
clang 
						
					 
					
						2018-02-25 11:38:06 +01:00 
						 
				 
			
				
					
						
							
							
								mailwl 
							
						 
					 
					
						
						
						
						
							
						
						
							e4f94ee30b 
							
						 
					 
					
						
						
							
							Stub more functions  
						
						
						
					 
					
						2018-02-22 17:28:15 +03:00 
						 
				 
			
				
					
						
							
							
								mailwl 
							
						 
					 
					
						
						
						
						
							
						
						
							1289a3c3c1 
							
						 
					 
					
						
						
							
							Add warning if Domain request has no domain message header  
						
						
						
					 
					
						2018-02-20 22:51:54 +03:00 
						 
				 
			
				
					
						
							
							
								mailwl 
							
						 
					 
					
						
						
						
						
							
						
						
							827152d1fd 
							
						 
					 
					
						
						
							
							Fix: change check for domain order and existance of domain message header  
						
						
						
					 
					
						2018-02-20 21:59:58 +03:00 
						 
				 
			
				
					
						
							
							
								mailwl 
							
						 
					 
					
						
						
						
						
							
						
						
							1572c45aa0 
							
						 
					 
					
						
						
							
							IPC: add domain header to response if only it exists in request  
						
						
						
					 
					
						2018-02-20 19:27:49 +03:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8db80d8389 
							
						 
					 
					
						
						
							
							scheduler: Cleanup based on PR feedback.  
						
						
						
					 
					
						2018-02-19 16:46:42 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							ac81c02ed9 
							
						 
					 
					
						
						
							
							kernel: Use Scheduler class for threading.  
						
						
						
					 
					
						2018-02-18 15:17:16 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							c78d495161 
							
						 
					 
					
						
						
							
							kernel: Add Scheduler, which encapsulates the scheduling loading from Thread module.  
						
						
						
					 
					
						2018-02-18 14:58:40 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							cec0d4f191 
							
						 
					 
					
						
						
							
							kernel: Remove unused address_arbiter code.  
						
						
						
					 
					
						2018-02-18 14:46:11 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							94ee8fc97b 
							
						 
					 
					
						
						
							
							Kernel/IPC: Add a small delay after each SyncRequest to prevent thread starvation.  
						
						... 
						
						
						
						Ported from citra PR #3091 
The delay specified here is from a Nintendo 3DS, and should be measured in a Nintendo Switch.
This change is enough to prevent Puyo Puyo Tetris's main thread starvation. 
						
					 
					
						2018-02-18 13:25:48 -05:00 
						 
				 
			
				
					
						
							
							
								mailwl 
							
						 
					 
					
						
						
						
						
							
						
						
							6797d4a907 
							
						 
					 
					
						
						
							
							Service/hid: stub some functions  
						
						
						
					 
					
						2018-02-16 06:15:05 +03:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							df008a159b 
							
						 
					 
					
						
						
							
							shared_memory: Remove some checks.  
						
						
						
					 
					
						2018-02-14 22:24:06 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							db873a232c 
							
						 
					 
					
						
						
							
							Merge pull request  #188  from bunnei/refactor-buffer-descriptor  
						
						... 
						
						
						
						Refactor IPC buffer descriptor interface 
						
					 
					
						2018-02-14 18:31:53 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							88bfec37ce 
							
						 
					 
					
						
						
							
							hle_ipc: Remove const from WriteBuffer size.  
						
						
						
					 
					
						2018-02-14 14:21:10 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c1146d2a5f 
							
						 
					 
					
						
						
							
							thread: Silence formatting specifier warnings  
						
						
						
					 
					
						2018-02-14 01:50:14 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1e33db8573 
							
						 
					 
					
						
						
							
							vm_manager: Silence formatting specifier warnings  
						
						
						
					 
					
						2018-02-14 01:50:14 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							6fd19f05f1 
							
						 
					 
					
						
						
							
							hle_ipc: Add GetReadBufferSize and check write buffer size.  
						
						
						
					 
					
						2018-02-14 00:14:17 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							fc1b425520 
							
						 
					 
					
						
						
							
							hle_ipc: Add helper functions for reading and writing buffers.  
						
						
						
					 
					
						2018-02-13 23:54:07 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1ce6fff064 
							
						 
					 
					
						
						
							
							hle_ipc: Add helper functions for reading and writing buffers.  
						
						
						
					 
					
						2018-02-13 23:26:03 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							903beb43a8 
							
						 
					 
					
						
						
							
							mutex: Update hasWaiters on release.  
						
						
						
					 
					
						2018-02-05 21:54:10 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							42fc437268 
							
						 
					 
					
						
						
							
							GetInfo: Implement IsCurrentProcessBeingDebugged.  
						
						
						
					 
					
						2018-02-04 12:34:45 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							0b6b147939 
							
						 
					 
					
						
						
							
							WaitProcessWideKeyAtomic: Handle case where condition variable was already created.  
						
						
						
					 
					
						2018-02-04 12:30:51 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							647364db8f 
							
						 
					 
					
						
						
							
							svc: SharedMemory size should be 64-bits and cleanup.  
						
						
						
					 
					
						2018-02-03 13:36:54 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f9c9ce2005 
							
						 
					 
					
						
						
							
							ArbitrateLock: Assert that requesting_thread is current_thread.  
						
						
						
					 
					
						2018-02-03 13:29:18 -05:00 
						 
				 
			
				
					
						
							
							
								shinyquagsire23 
							
						 
					 
					
						
						
						
						
							
						
						
							96c444d1ff 
							
						 
					 
					
						
						
							
							shared_memory: Only mark addresses as invalid if they are within the heap  
						
						
						
					 
					
						2018-01-29 23:38:56 -07:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							c1a8e4bfe4 
							
						 
					 
					
						
						
							
							Merge pull request  #148  from MerryMage/feature/special-memory  
						
						... 
						
						
						
						memory: Replace all memory hooking with Special regions 
						
					 
					
						2018-01-27 15:20:53 -05:00 
						 
				 
			
				
					
						
							
							
								MerryMage 
							
						 
					 
					
						
						
						
						
							
						
						
							738f91a57d 
							
						 
					 
					
						
						
							
							memory: Replace all memory hooking with Special regions  
						
						
						
					 
					
						2018-01-27 15:16:39 +00:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							7588b24f46 
							
						 
					 
					
						
						
							
							server_session: Fix scenario where all domain handlers are closed.  
						
						
						
					 
					
						2018-01-24 22:24:16 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1b1d399e5f 
							
						 
					 
					
						
						
							
							hle: Rename RequestBuilder to ResponseBuilder.  
						
						
						
					 
					
						2018-01-24 22:24:10 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f0035420d7 
							
						 
					 
					
						
						
							
							ipc_helpers: Make interface domain agnostic and add header validation.  
						
						
						
					 
					
						2018-01-24 22:19:01 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							27bad0598a 
							
						 
					 
					
						
						
							
							hle: Integrate Domain handling into ServerSession.  
						
						
						
					 
					
						2018-01-24 22:18:56 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							67758857e4 
							
						 
					 
					
						
						
							
							hle: Remove Domain and SyncObject kernel objects.  
						
						
						
					 
					
						2018-01-24 22:18:54 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							932fa94af7 
							
						 
					 
					
						
						
							
							handle_table: Remove ConvertSessionToDomain.  
						
						
						
					 
					
						2018-01-24 22:18:51 -05:00 
						 
				 
			
				
					
						
							
							
								James Rowe 
							
						 
					 
					
						
						
						
						
							
						
						
							096be16636 
							
						 
					 
					
						
						
							
							Format: Run the new clang format on everything  
						
						
						
					 
					
						2018-01-20 16:45:11 -07:00 
						 
				 
			
				
					
						
							
							
								David 
							
						 
					 
					
						
						
						
						
							
						
						
							0b6da0c1ab 
							
						 
					 
					
						
						
							
							Added CreateSharedMemory & UNIMPLEMENTED() for non existent services. ( #113 )  
						
						... 
						
						
						
						* Added svcCreateSharedMemory
* Services which are not implemented now throw UNIMPLEMENTED()
* clang-format
* changed perms to u32
* removed camelcase 
						
					 
					
						2018-01-19 19:35:25 -05:00 
						 
				 
			
				
					
						
							
							
								River City Ransomware 
							
						 
					 
					
						
						
						
						
							
						
						
							dd62f125c3 
							
						 
					 
					
						
						
							
							Fixes some cast warnings, partial port of citra  #3064  ( #106 )  
						
						... 
						
						
						
						* Fixes some cast warnings, partially fixes citra #3064 
* Converted casts to uint32_t to u32
* Ran clang-format 
						
					 
					
						2018-01-19 18:01:41 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e1ee8f4657 
							
						 
					 
					
						
						
							
							svc: Fix svcGetInfo MapRegionBaseAddr.  
						
						
						
					 
					
						2018-01-18 23:44:15 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							d80991977a 
							
						 
					 
					
						
						
							
							svc: Add additional fields to MemoryInfo struct.  
						
						
						
					 
					
						2018-01-18 23:37:54 -05:00 
						 
				 
			
				
					
						
							
							
								gdkchan 
							
						 
					 
					
						
						
						
						
							
						
						
							59575d5cae 
							
						 
					 
					
						
						
							
							Stub PopLaunchParameter and implement Buffer C Descriptors reading on hle_ipc ( #96 )  
						
						... 
						
						
						
						* Stub PopLaunchParameter and implement Buffer C Descriptors reading
* Address PR feedback
* Ensure we push a u64 not a size_t
* Fix formatting 
						
					 
					
						2018-01-18 14:54:34 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							4497eb4528 
							
						 
					 
					
						
						
							
							svc: Rename some entries to match their analogue on SwitchBrew  
						
						... 
						
						
						
						Makes the codebase a little more consistent with regards to available documentation. Also amends the duplicate case where there was a similar entry at 0x72 named ConnectToPort. 
						
					 
					
						2018-01-17 20:38:23 -05:00 
						 
				 
			
				
					
						
							
							
								Lioncash 
							
						 
					 
					
						
						
						
						
							
						
						
							c81ed5eb33 
							
						 
					 
					
						
						
							
							svc: Add CreateJitMemory and MapJitMemory svc strings  
						
						... 
						
						
						
						Makes the table match SwitchBrew for these entries 
						
					 
					
						2018-01-17 20:32:56 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							7fa32af1c7 
							
						 
					 
					
						
						
							
							svc: Clang-format fix.  
						
						
						
					 
					
						2018-01-17 12:19:17 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b588cbcb1d 
							
						 
					 
					
						
						
							
							hle_ipc: Clang format.  
						
						
						
					 
					
						2018-01-17 11:37:26 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							30cb98f874 
							
						 
					 
					
						
						
							
							ipc: Implement domain command CloseVirtualHandle.  
						
						
						
					 
					
						2018-01-17 01:20:10 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							bf0e20c571 
							
						 
					 
					
						
						
							
							SVC: Correct some return values in svcGetInfo and added TitleId and PrivilegedProcessId stubs.  
						
						... 
						
						
						
						# Conflicts:
#	src/core/hle/kernel/svc.cpp 
						
					 
					
						2018-01-16 18:50:23 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							3442f4b96a 
							
						 
					 
					
						
						
							
							SVC: Add  4.0.0+ comment to GetInfoType enum values.  
						
						
						
					 
					
						2018-01-16 18:44:39 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5bc14e791a 
							
						 
					 
					
						
						
							
							IPC: Push domain objects as move handles when not in a domain.  
						
						
						
					 
					
						2018-01-16 18:42:08 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
							
							
						
						
						
							
						
						
							1aa4cdc3c8 
							
						 
					 
					
						
						
							
							Merge pull request  #52  from ogniK5377/fsp  
						
						... 
						
						
						
						added more svcGetInfo pairs for 3.0.0+ support, Changed HEAP_SIZE and TLS_AREA_VADDR. changed mem usage & heap usage stub added, ISelfController, IApplication function stubs. Added SetThreadCoreMask 
						
					 
					
						2018-01-16 18:27:48 -05:00 
						 
				 
			
				
					
						
							
							
								David Marcec 
							
						 
					 
					
						
						
						
						
							
						
						
							bb7221c5d5 
							
						 
					 
					
						
						
							
							SetThreadCoreMask stub, time to implement fsp  
						
						
						
					 
					
						2018-01-16 14:23:53 -08:00 
						 
				 
			
				
					
						
							
							
								David Marcec 
							
						 
					 
					
						
						
						
						
							
						
						
							68143af636 
							
						 
					 
					
						
						
							
							Added more svcGetInfo pairs  
						
						
						
					 
					
						2018-01-16 14:06:45 -08:00 
						 
				 
			
				
					
						
							
							
								MerryMage 
							
						 
					 
					
						
						
						
						
							
						
						
							e35644c005 
							
						 
					 
					
						
						
							
							clang-format  
						
						
						
					 
					
						2018-01-16 18:05:21 +00:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							22659afcd0 
							
						 
					 
					
						
						
							
							shared_memory: Minor fixes and cleanup.  
						
						
						
					 
					
						2018-01-14 17:20:55 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							974362bc12 
							
						 
					 
					
						
						
							
							svc: Implement svcMapSharedMemory.  
						
						
						
					 
					
						2018-01-14 17:20:55 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							bd58c5470c 
							
						 
					 
					
						
						
							
							kernel: Increase default stack size to 64K.  
						
						
						
					 
					
						2018-01-14 17:20:55 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1247c53786 
							
						 
					 
					
						
						
							
							yuzu: Update license text to be consistent across project.  
						
						
						
					 
					
						2018-01-13 16:22:39 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							056f987bcd 
							
						 
					 
					
						
						
							
							core: Include <algorithm> where used.  
						
						
						
					 
					
						2018-01-11 22:36:56 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							039fc7f985 
							
						 
					 
					
						
						
							
							core: Fix recent GCC build breaks.  
						
						
						
					 
					
						2018-01-11 22:24:09 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							97ef21e166 
							
						 
					 
					
						
						
							
							svc: Implement GetSystemTick.  
						
						
						
					 
					
						2018-01-11 21:59:31 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ab86b80cac 
							
						 
					 
					
						
						
							
							IPC: Corrected some definitions for the buffer C descriptor flags.  
						
						
						
					 
					
						2018-01-10 23:28:02 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ba02f0deef 
							
						 
					 
					
						
						
							
							svc: Stub ResetSignal and CreateTransferMemory  
						
						
						
					 
					
						2018-01-10 23:27:59 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							0a1278081e 
							
						 
					 
					
						
						
							
							svc: Stub SetMemoryAttribute  
						
						
						
					 
					
						2018-01-10 23:27:56 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							7ad20154fc 
							
						 
					 
					
						
						
							
							Threads: Added enum values for the Switch's 4 cpu cores and implemented svcGetInfo(AllowedCpuIdBitmask)  
						
						
						
					 
					
						2018-01-10 01:01:55 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c2ee513d35 
							
						 
					 
					
						
						
							
							SVC: Fixed WaitSynchronization with multiple handles when none is immediately ready.  
						
						
						
					 
					
						2018-01-09 15:02:43 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							bc91ebacc1 
							
						 
					 
					
						
						
							
							SVC: Implemented CancelSynchronization.  
						
						
						
					 
					
						2018-01-09 15:02:04 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							a418f6e77b 
							
						 
					 
					
						
						
							
							ErrorCodes: Updated the InvalidHandle and Timeout kernel error codes.  
						
						
						
					 
					
						2018-01-09 12:05:10 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							8d9250fa70 
							
						 
					 
					
						
						
							
							SVC: Fixed WaitSynchronization with multiple handles when at least one of them is ready.  
						
						
						
					 
					
						2018-01-09 11:53:50 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4236799832 
							
						 
					 
					
						
						
							
							kernel: Rename Semaphore to ConditionVariable.  
						
						
						
					 
					
						2018-01-08 21:41:37 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							9fcd2bf672 
							
						 
					 
					
						
						
							
							mutex: Remove unused call to VerifyGuestState.  
						
						
						
					 
					
						2018-01-08 21:12:56 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							db3a525166 
							
						 
					 
					
						
						
							
							Kernel: Actually wake up the requested number of threads in Semaphore::Release.  
						
						... 
						
						
						
						Also properly keep track of data in guest memory, this fixes managing the semaphore from userland.
It was found that Semaphores are actually Condition Variables, with Release(1) and Release(-1) being equivalent to notify_one and notify_all. We should change the name of the class to reflect this. 
						
					 
					
						2018-01-08 21:12:54 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							1bbe9309da 
							
						 
					 
					
						
						
							
							Kernel: Properly keep track of mutex lock data in the guest memory. This fixes userland locking/unlocking.  
						
						
						
					 
					
						2018-01-08 21:12:51 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							2a3f8e8484 
							
						 
					 
					
						
						
							
							Kernel: Allow chaining WaitSynchronization calls inside a wakeup callback.  
						
						
						
					 
					
						2018-01-08 21:12:49 -05:00 
						 
				 
			
				
					
						
							
							
								B3n30 
							
						 
					 
					
						
						
						
						
							
						
						
							82151d407d 
							
						 
					 
					
						
						
							
							CoreTiming: Reworked CoreTiming (cherry-picked from Citra  #3119 )  
						
						... 
						
						
						
						* CoreTiming: New CoreTiming; Add Test for CoreTiming 
						
					 
					
						2018-01-08 19:10:25 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							32847d8b86 
							
						 
					 
					
						
						
							
							IPC: Add functions to read the input move/copy objects from an IPC request.  
						
						
						
					 
					
						2018-01-07 17:11:51 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							7e3561b1cd 
							
						 
					 
					
						
						
							
							IPC: Don't attempt to read  the command buffer if it holds a Close request.  
						
						
						
					 
					
						2018-01-07 17:11:49 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							0368324f79 
							
						 
					 
					
						
						
							
							IPC Cleanup: Remove 3DS-specific code and translate copy, move and domain objects in IPC requests.  
						
						... 
						
						
						
						Popping objects from the buffer is still not implemented. 
						
					 
					
						2018-01-07 17:11:47 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b0ceb4df70 
							
						 
					 
					
						
						
							
							IPC: Skip the entire u64 of the command id when receiving an IPC request.  
						
						... 
						
						
						
						Service code now doesn't have to deal with this. 
						
					 
					
						2018-01-07 17:11:45 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							226786f0b0 
							
						 
					 
					
						
						
							
							IPC: Use the correct size when pushing raw data to the command buffer and fixed pushing domain objects.  
						
						... 
						
						
						
						Domain object ids are always stored immediately after the raw data. 
						
					 
					
						2018-01-07 17:11:43 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							bc8ef64804 
							
						 
					 
					
						
						
							
							svc: Implement svcSignalProcessWideKey.  
						
						
						
					 
					
						2018-01-07 16:55:17 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4e33b4b42f 
							
						 
					 
					
						
						
							
							semaphore: More changes for Switch.  
						
						
						
					 
					
						2018-01-07 16:52:23 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							0f6fbdb963 
							
						 
					 
					
						
						
							
							wait_object: Refactor to allow waking up a single thread.  
						
						
						
					 
					
						2018-01-07 16:33:41 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							5017038ca7 
							
						 
					 
					
						
						
							
							svc: Implement svcWaitProcessWideKeyAtomic.  
						
						
						
					 
					
						2018-01-06 16:14:12 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							91f10a1460 
							
						 
					 
					
						
						
							
							semaphore: Updates for Switch.  
						
						
						
					 
					
						2018-01-06 15:55:40 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							0e978bdd50 
							
						 
					 
					
						
						
							
							svc: Implement WaitSynchronization for a single handle.  
						
						
						
					 
					
						2018-01-06 14:34:32 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							57f42e5887 
							
						 
					 
					
						
						
							
							svc: Refactor LockMutex code to use WaitSynchronization1.  
						
						
						
					 
					
						2018-01-06 14:19:28 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							0dbc8f3577 
							
						 
					 
					
						
						
							
							svc: Add missing string_util include.  
						
						
						
					 
					
						2018-01-04 19:45:15 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b172f0d770 
							
						 
					 
					
						
						
							
							arm: Remove SkyEye/Dyncom code that is ARMv6-only.  
						
						
						
					 
					
						2018-01-02 22:24:12 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f0eab802e8 
							
						 
					 
					
						
						
							
							vm_manager: Use a more reasonable MAX_ADDRESS size.  
						
						
						
					 
					
						2018-01-02 21:37:56 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							81a8a57ce2 
							
						 
					 
					
						
						
							
							svc: Remove unnecessary "svc" prefix to naming scheme.  
						
						
						
					 
					
						2018-01-02 20:47:26 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							480906fe1b 
							
						 
					 
					
						
						
							
							hle: Move SVC code to kernel namespace.  
						
						
						
					 
					
						2018-01-02 20:40:30 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e9710a2cf7 
							
						 
					 
					
						
						
							
							vm_manager: Stub out a bunch of interfaces used by svcGetInfo.  
						
						
						
					 
					
						2018-01-01 15:59:31 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							93480b10ef 
							
						 
					 
					
						
						
							
							core/video_core: Fix a bunch of u64 -> u32 warnings.  
						
						
						
					 
					
						2018-01-01 15:40:35 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							aa7c824ea4 
							
						 
					 
					
						
						
							
							svc: Implement svcExitProcess.  
						
						
						
					 
					
						2018-01-01 14:38:34 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b9950cd4b0 
							
						 
					 
					
						
						
							
							svc: Implement svcLockMutex.  
						
						
						
					 
					
						2018-01-01 14:02:26 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							d0046b120a 
							
						 
					 
					
						
						
							
							kernel: Add ObjectAddressTable class.  
						
						
						
					 
					
						2018-01-01 13:25:37 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1cb978eb82 
							
						 
					 
					
						
						
							
							thread: Keep track of the initially created handle.  
						
						... 
						
						
						
						This is kinda crufty, but we need it for now to update guest state variables. 
						
					 
					
						2017-12-31 17:23:36 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							c7983e970c 
							
						 
					 
					
						
						
							
							errors: Define missing kernel error codes.  
						
						
						
					 
					
						2017-12-31 15:59:00 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							3a91a62b8f 
							
						 
					 
					
						
						
							
							svc: Implement svcUnmapMemory.  
						
						
						
					 
					
						2017-12-31 15:22:49 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b6087e35b5 
							
						 
					 
					
						
						
							
							thread: Main thread should set thread handle to reg 1.  
						
						
						
					 
					
						2017-12-30 12:10:58 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							7ccd8de863 
							
						 
					 
					
						
						
							
							thread: Remove THUMB mode flag.  
						
						
						
					 
					
						2017-12-30 12:08:26 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							eed4f2e229 
							
						 
					 
					
						
						
							
							thread: Main thread should be ready by default, all others dormant.  
						
						
						
					 
					
						2017-12-30 12:05:10 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							ebd4b1422d 
							
						 
					 
					
						
						
							
							kernel: Various 64-bit fixes in memory/process/thread  
						
						
						
					 
					
						2017-12-29 13:27:58 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							dcdaac8a0b 
							
						 
					 
					
						
						
							
							kernel: Fix implementation of ConvertSessionToDomain.  
						
						
						
					 
					
						2017-12-29 00:36:22 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e17c0019c5 
							
						 
					 
					
						
						
							
							kernel: Add basic support for Domain object.  
						
						
						
					 
					
						2017-12-28 23:30:21 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							834fa5db65 
							
						 
					 
					
						
						
							
							kernel: Add SyncObject primitive, use it for ClientSession.  
						
						
						
					 
					
						2017-12-28 23:12:28 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							3421e1617e 
							
						 
					 
					
						
						
							
							process: Add method to mirror a memory region.  
						
						
						
					 
					
						2017-12-28 21:35:49 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							3597650f22 
							
						 
					 
					
						
						
							
							service: Return proper result code for IPC::CommandType::Close.  
						
						
						
					 
					
						2017-10-31 19:30:05 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							34571f4d2e 
							
						 
					 
					
						
						
							
							hle: Use Switch formatted result codes.  
						
						
						
					 
					
						2017-10-31 19:26:11 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							dcd6bb82f7 
							
						 
					 
					
						
						
							
							hle: Fix QueryMemory response for MemoryInfo.  
						
						
						
					 
					
						2017-10-19 23:00:46 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							654fae29c1 
							
						 
					 
					
						
						
							
							hle_ipc: Only copy necessary fields for outgoing command buffer.  
						
						
						
					 
					
						2017-10-18 21:39:48 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b283cf7348 
							
						 
					 
					
						
						
							
							hle_ipc: Parse out buffer X/A/B/B descriptors from incoming command buffer.  
						
						
						
					 
					
						2017-10-18 21:38:01 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4fb1b24d68 
							
						 
					 
					
						
						
							
							hle: Implement ConvertSessionToDomain, various cleanups.  
						
						
						
					 
					
						2017-10-15 01:24:22 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							960a1416de 
							
						 
					 
					
						
						
							
							hle: Initial implementation of NX service framework and IPC.  
						
						
						
					 
					
						2017-10-14 22:18:42 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b1d5db1cf6 
							
						 
					 
					
						
						
							
							Merge remote-tracking branch 'upstream/master' into nx  
						
						... 
						
						
						
						# Conflicts:
#	src/core/CMakeLists.txt
#	src/core/arm/dynarmic/arm_dynarmic.cpp
#	src/core/arm/dyncom/arm_dyncom.cpp
#	src/core/hle/kernel/process.cpp
#	src/core/hle/kernel/thread.cpp
#	src/core/hle/kernel/thread.h
#	src/core/hle/kernel/vm_manager.cpp
#	src/core/loader/3dsx.cpp
#	src/core/loader/elf.cpp
#	src/core/loader/ncch.cpp
#	src/core/memory.cpp
#	src/core/memory.h
#	src/core/memory_setup.h 
						
					 
					
						2017-10-09 23:56:20 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							23ce4f5afc 
							
						 
					 
					
						
						
							
							loader: Various improvements for NSO/NRO loaders.  
						
						
						
					 
					
						2017-10-09 21:39:32 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							15c7641bef 
							
						 
					 
					
						
						
							
							Merge pull request  #2977  from Subv/shmem_create  
						
						... 
						
						
						
						SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it 
						
					 
					
						2017-10-03 16:21:49 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b18589ecf7 
							
						 
					 
					
						
						
							
							Kernel/SharedMemory: Don't take over and unmap the source memory block when creating a shared memory, just reference it.  
						
						... 
						
						
						
						Also reference the right offset into the backing block for the requested address. 
						
					 
					
						2017-10-02 15:16:16 -05:00 
						 
				 
			
				
					
						
							
							
								Sebastian Valle 
							
						 
					 
					
						
						
						
						
							
						
						
							30fabc41c6 
							
						 
					 
					
						
						
							
							Merge pull request  #2971  from Subv/per_process_memops  
						
						... 
						
						
						
						Memory: Add overloads for ReadBlock and WriteBlock that operate on a specific process. 
						
					 
					
						2017-10-01 14:44:06 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							8217ed7acb 
							
						 
					 
					
						
						
							
							Kernel/Thread: Added a helper function to get a thread's command buffer VAddr.  
						
						
						
					 
					
						2017-10-01 14:18:35 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							8c92435ded 
							
						 
					 
					
						
						
							
							nso: Refactor and allocate .bss section.  
						
						
						
					 
					
						2017-09-30 14:33:58 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							fa1c7c7ee1 
							
						 
					 
					
						
						
							
							process: Support loading multiple codesets.  
						
						
						
					 
					
						2017-09-30 14:33:11 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							c5ce5c06e4 
							
						 
					 
					
						
						
							
							kernel: Various threading fixes to support 64-bit addressing.  
						
						
						
					 
					
						2017-09-30 14:28:54 -04:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							f01472a5ff 
							
						 
					 
					
						
						
							
							core: Various changes to support 64-bit addressing.  
						
						
						
					 
					
						2017-09-30 14:28:54 -04:00 
						 
				 
			
				
					
						
							
							
								Sebastian Valle 
							
						 
					 
					
						
						
						
						
							
						
						
							db752b52e8 
							
						 
					 
					
						
						
							
							Merge pull request  #2967  from Subv/thread_wakeup_callbacks  
						
						... 
						
						
						
						Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken 
						
					 
					
						2017-09-30 09:12:18 -05:00 
						 
				 
			
				
					
						
							
							
								Huw Pascoe 
							
						 
					 
					
						
						
						
						
							
						
						
							a13ab958cb 
							
						 
					 
					
						
						
							
							Fixed type conversion ambiguity  
						
						
						
					 
					
						2017-09-30 09:34:35 +01:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							8432749db7 
							
						 
					 
					
						
						
							
							Kernel/Threads: When putting a thread to wait, specify a function to execute when it is awoken.  
						
						... 
						
						
						
						This change makes for a clearer (less confusing) path of execution in the scheduler, now the code to execute when a thread awakes is closer to the code that puts the thread to sleep (WaitSynch1, WaitSynchN). It also allows us to implement the special wake up behavior of ReplyAndReceive without hacking up WaitObject::WakeupAllWaitingThreads.
If savestates are desired in the future, we can change this implementation to one similar to the CoreTiming event system, where we first register the callback functions at startup and assign their identifiers to the Thread callback variable instead of directly assigning a lambda to the wake up callback variable. 
						
					 
					
						2017-09-28 11:53:32 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							3165466b66 
							
						 
					 
					
						
						
							
							Kernel/Thread: Allow specifying which process a thread belongs to when creating it.  
						
						... 
						
						
						
						Don't automatically assume that Thread::Create will only be called when the parent process is currently scheduled. This assumption will be broken when applets or system modules are loaded. 
						
					 
					
						2017-09-26 17:40:49 -05:00 
						 
				 
			
				
					
						
							
							
								MerryMage 
							
						 
					 
					
						
						
						
						
							
						
						
							c02bbb7030 
							
						 
					 
					
						
						
							
							memory: Add GetCurrentPageTable/SetCurrentPageTable  
						
						... 
						
						
						
						Don't expose Memory::current_page_table as a global. 
						
					 
					
						2017-09-24 22:42:42 +01:00 
						 
				 
			
				
					
						
							
							
								B3n30 
							
						 
					 
					
						
						
						
						
							
						
						
							813837c5cf 
							
						 
					 
					
						
						
							
							Merge pull request  #2842  from Subv/switchable_page_table  
						
						... 
						
						
						
						Kernel/Memory: Give each process its own page table and allow switching the current page table upon reschedule 
						
					 
					
						2017-09-15 22:41:45 +02:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b178089251 
							
						 
					 
					
						
						
							
							Kernel/Threads: Don't clear the CPU instruction cache when performing a context switch from an idle thread into a thread in the same process.  
						
						... 
						
						
						
						We were unnecessarily clearing the cache when going from Process A -> Idle -> Process A, this caused extreme performance regressions. 
						
					 
					
						2017-09-15 14:26:15 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							214150f00c 
							
						 
					 
					
						
						
							
							Kernel/Memory: Changed GetPhysicalPointer so that it doesn't go through the current process' page table to obtain a pointer.  
						
						
						
					 
					
						2017-09-15 14:26:13 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c34ec5e77c 
							
						 
					 
					
						
						
							
							Kernel/Memory: Switch the current page table when a new process is scheduled.  
						
						
						
					 
					
						2017-09-10 15:14:31 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							6d2734a074 
							
						 
					 
					
						
						
							
							Kernel/Memory: Give each Process its own page table.  
						
						... 
						
						
						
						The loader is in charge of setting the newly created process's page table as the main one during the loading process. 
						
					 
					
						2017-09-10 15:13:41 -05:00 
						 
				 
			
				
					
						
							
							
								James Rowe 
							
						 
					 
					
						
						
						
						
							
						
						
							61442d6afb 
							
						 
					 
					
						
						
							
							Merge pull request  #2839  from Subv/global_kernel_lock  
						
						... 
						
						
						
						Kernel/HLE: Use a mutex  to synchronize access to the HLE kernel state between the cpu thread and any other possible threads that might touch the kernel (network thread, etc). 
						
					 
					
						2017-08-23 18:17:44 -06:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							2bbff9fa96 
							
						 
					 
					
						
						
							
							Merge pull request  #2893  from Subv/not_schedule_main_thread  
						
						... 
						
						
						
						Kernel/Threads: Don't immediately switch to the new main thread when loading a new process. 
						
					 
					
						2017-08-22 17:45:47 -04:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							bca8916cea 
							
						 
					 
					
						
						
							
							Kernel/HLE: Use a mutex  to synchronize access to the HLE kernel state between the cpu thread and any other possible threads that might touch the kernel (network thread, etc).  
						
						... 
						
						
						
						This mutex is acquired in SVC::CallSVC, ie, as soon as the guest application enters the HLE kernel, and should be acquired by the aforementioned threads before modifying kernel structures. 
						
					 
					
						2017-08-22 09:30:55 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fa228ca637 
							
						 
					 
					
						
						
							
							Kernel/Threads: Don't immediately switch to the new main thread when loading a new process.  
						
						... 
						
						
						
						This is necessary for loading multiple processes at the same time.
The main thread will be automatically scheduled when necessary once the scheduler runs. 
						
					 
					
						2017-08-21 20:54:29 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							65f19b51c4 
							
						 
					 
					
						
						
							
							Warnings: Add UNREACHABLE macros to switches that contemplate all possible values.  
						
						
						
					 
					
						2017-08-21 08:34:28 -05:00 
						 
				 
			
				
					
						
							
							
								Weiyi Wang 
							
						 
					 
					
						
						
						
						
							
						
						
							045d0b5bbd 
							
						 
					 
					
						
						
							
							Merge pull request  #2799  from yuriks/virtual-cached-range-flush  
						
						... 
						
						
						
						Add address conversion functions returning optional, Add function to flush virtual region from rasterizer cache 
						
					 
					
						2017-07-22 10:15:52 +03:00 
						 
				 
			
				
					
						
							
							
								Sebastian Valle 
							
						 
					 
					
						
						
						
						
							
						
						
							56d718b2a1 
							
						 
					 
					
						
						
							
							Merge pull request  #2793  from Subv/replyandreceive  
						
						... 
						
						
						
						Kernel/SVC: Partially implemented svcReplyAndReceive 
						
					 
					
						2017-06-29 17:05:22 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b53fa9514f 
							
						 
					 
					
						
						
							
							Kernel/SVC: Pass the current thread as a parameter to ClientSession::SendSyncRequest.  
						
						
						
					 
					
						2017-06-29 12:30:34 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c3c9175a1c 
							
						 
					 
					
						
						
							
							Kernel/Sessions: Clean up the list of pending request threads of a session when the client endpoint is closed.  
						
						
						
					 
					
						2017-06-25 23:38:29 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							8feeb81af2 
							
						 
					 
					
						
						
							
							Kernel/ServerSession: Keep track of which threads have issued sync requests.  
						
						
						
					 
					
						2017-06-25 14:47:25 -05:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							e192d417ec 
							
						 
					 
					
						
						
							
							Kernel: Implement AcceptSession SVC  
						
						
						
					 
					
						2017-06-23 11:26:37 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							326e7c7020 
							
						 
					 
					
						
						
							
							Memory: Make PhysicalToVirtualAddress return a boost::optional  
						
						... 
						
						
						
						And fix a few places in the code to take advantage of that. 
						
					 
					
						2017-06-21 22:55:17 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							f64d0b3f26 
							
						 
					 
					
						
						
							
							Kernel/IPC: Support translation of null handles  
						
						... 
						
						
						
						Missed this in my first implementation. Thanks to @wwylele for pointing
out that this was missing. 
						
					 
					
						2017-06-21 14:27:03 -07:00 
						 
				 
			
				
					
						
							
							
								Weiyi Wang 
							
						 
					 
					
						
						
						
						
							
						
						
							c4f0927a62 
							
						 
					 
					
						
						
							
							Merge pull request  #2789  from yuriks/misc-kernel  
						
						... 
						
						
						
						Trivial no-op additions 
						
					 
					
						2017-06-21 20:34:12 +03:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							b21dfbb295 
							
						 
					 
					
						
						
							
							Merge pull request  #2790  from yuriks/remove-movefrom  
						
						... 
						
						
						
						Remove ResultVal::MoveFrom 
						
					 
					
						2017-06-20 22:04:09 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							723dc644fa 
							
						 
					 
					
						
						
							
							ResultVal: Remove MoveFrom()  
						
						... 
						
						
						
						Replace it with std::move(result_val).Unwrap(), or Foo().Unwrap() in
case you already have an rvalue. 
						
					 
					
						2017-06-18 19:03:15 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							90b8d4dd36 
							
						 
					 
					
						
						
							
							Kernel: Add comment about the extended linear heap area  
						
						
						
					 
					
						2017-06-18 18:38:40 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							0dfafdbe59 
							
						 
					 
					
						
						
							
							Kernel/IPC: Make HLERequestContext usable from outside kernel  
						
						
						
					 
					
						2017-06-18 16:05:12 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							d8f6000f54 
							
						 
					 
					
						
						
							
							Kernel/IPC: Use boost::small_vector for HLE context objects  
						
						
						
					 
					
						2017-06-11 16:34:13 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							92ca422088 
							
						 
					 
					
						
						
							
							Kernel: Allow clearing request_objects to re-use buffer space  
						
						... 
						
						
						
						Reduces the necessary allocation to max(in_handles, out_handles) rather
than (in_handles + out_handles). 
						
					 
					
						2017-06-11 13:10:21 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							8cb65fe65a 
							
						 
					 
					
						
						
							
							Kernel: Basic support for IPC translation for HLE services  
						
						
						
					 
					
						2017-06-11 13:10:21 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							05fee70211 
							
						 
					 
					
						
						
							
							Kernel: Add methods in HLERequestContext abstracting handle creation  
						
						
						
					 
					
						2017-06-11 13:07:33 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							20e5abb308 
							
						 
					 
					
						
						
							
							ServiceFramework: Use separate copy of command buffer  
						
						... 
						
						
						
						Copy the IPC command buffer to/from the request context before/after the
handler is invoked. This is part of a move away from using global data
for handling IPC requests. 
						
					 
					
						2017-06-11 13:07:33 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							78398d0978 
							
						 
					 
					
						
						
							
							Merge pull request  #2756  from yuriks/service-framework  
						
						... 
						
						
						
						New service framework 
						
					 
					
						2017-06-08 21:03:03 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							838faf147e 
							
						 
					 
					
						
						
							
							Session: Remove/add some forward declarations  
						
						
						
					 
					
						2017-06-08 00:33:57 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							d666e01cdf 
							
						 
					 
					
						
						
							
							Kernel: Ensure objects are kept alive during ClientSession disconnection  
						
						... 
						
						
						
						Fixes  #2760  
					
						2017-06-08 00:33:24 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							84c497292a 
							
						 
					 
					
						
						
							
							Service: Add new ServiceFramework framework for writing HLE services  
						
						... 
						
						
						
						The old "Interface" class had a few problems such as using free
functions (Which didn't allow you to write the service handler as if it
were a regular class.) which weren't very extensible. (Only received one
parameter with a pointer to the Interface object.)
The new ServiceFramework aims to solve these problems by working with
member functions and passing a generic context struct as parameter. This
struct can be extended in the future without having to update all
existing service implementations. 
						
					 
					
						2017-06-08 00:11:37 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							6dc133c24a 
							
						 
					 
					
						
						
							
							Kernel: Remove some unnecessary namespace qualifications  
						
						
						
					 
					
						2017-06-06 14:51:42 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							6354d08359 
							
						 
					 
					
						
						
							
							Kernel: Add a dedicated SetHleHandler method to ServerPort/ServerSession  
						
						... 
						
						
						
						This allows attaching a HLE handle to a ServerPort at any point after it
is created, allowing port/session creation to be generic between HLE and
regular services. 
						
					 
					
						2017-06-06 02:56:32 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							e626a520ca 
							
						 
					 
					
						
						
							
							HLE: Move SessionRequestHandler from Service:: to Kernel::  
						
						... 
						
						
						
						Most of the code that works with this is or will be in the kernel, so
it's a more appropriate place for it to be. 
						
					 
					
						2017-06-05 23:40:11 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							be031989ee 
							
						 
					 
					
						
						
							
							Kernel: Move HandleTable to a separate file  
						
						
						
					 
					
						2017-05-29 17:34:39 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							64ecf81a3c 
							
						 
					 
					
						
						
							
							Kernel: Move WaitObject to a separate file  
						
						... 
						
						
						
						Now that HandleTable doesn't directly depend on WaitObject anymore, this
can be separated from the main kernel.h header. 
						
					 
					
						2017-05-29 16:16:46 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							9453223075 
							
						 
					 
					
						
						
							
							Kernel: Removed HandleTable::GetWaitObject  
						
						... 
						
						
						
						This isn't necessary anymore since plain Get works correctly for
WaitObjects. 
						
					 
					
						2017-05-29 15:10:06 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							b17754f998 
							
						 
					 
					
						
						
							
							Kernel: Extract dynamic Object pointer cast into its own function  
						
						
						
					 
					
						2017-05-29 14:42:27 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							2cdb40d709 
							
						 
					 
					
						
						
							
							Kernel: Centralize error definitions in errors.h  
						
						
						
					 
					
						2017-05-24 21:06:00 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							cc566dadd8 
							
						 
					 
					
						
						
							
							Merge pull request  #2406  from Subv/session_disconnect  
						
						... 
						
						
						
						Kernel: Properly update port counters on session disconnection. 
						
					 
					
						2017-05-21 17:18:16 -07:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							37347bfa38 
							
						 
					 
					
						
						
							
							Kernel/Sessions: Remove the ClientSession::Create function.  
						
						... 
						
						
						
						It is not meant to be used by anything other than CreateSessionPair. 
						
					 
					
						2017-05-21 18:52:42 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ce5bc477ca 
							
						 
					 
					
						
						
							
							Kernel: Remove a now unused enum and variable regarding a session's status.  
						
						
						
					 
					
						2017-05-15 11:22:16 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ddfabf3133 
							
						 
					 
					
						
						
							
							Kernel: Use a Session object to keep track of the status of a Client/Server session pair.  
						
						... 
						
						
						
						Reduce the associated port's connection count when a ServerSession is destroyed. 
						
					 
					
						2017-05-15 11:22:15 -05:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							f18d454eb6 
							
						 
					 
					
						
						
							
							Kernel: Map special regions according to ExHeader  
						
						... 
						
						
						
						This replaces the hardcoded VRAM/DSP mappings with ones made based on
the ExHeader ARM11 Kernel caps list. While this has no visible effect
for most applications (since they use a standard set of mappings) it
does improve support for system modules and n3DS exclusives. 
						
					 
					
						2017-05-09 21:44:00 -07:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							b4a93cfdde 
							
						 
					 
					
						
						
							
							DSP: Create backing memory for entire DSP RAM  
						
						... 
						
						
						
						Also move address space mapping out of video_core. 
						
					 
					
						2017-05-09 21:44:00 -07:00 
						 
				 
			
				
					
						
							
							
								wwylele 
							
						 
					 
					
						
						
						
						
							
						
						
							85ba60d5ec 
							
						 
					 
					
						
						
							
							Timer: restore missing signaled=true from  #2421  
						
						
						
					 
					
						2017-02-27 22:49:46 +02:00 
						 
				 
			
				
					
						
							
							
								B3n30 
							
						 
					 
					
						
						
						
						
							
						
						
							dcf115778a 
							
						 
					 
					
						
						
							
							Fix log entry in timer::signal ( #2600 )  
						
						
						
					 
					
						2017-02-27 11:04:03 -05:00 
						 
				 
			
				
					
						
							
							
								Mat M 
							
						 
					 
					
						
						
						
						
							
						
						
							0cb52ee74a 
							
						 
					 
					
						
						
							
							Doxygen: Amend minor issues ( #2593 )  
						
						... 
						
						
						
						Corrects a few issues with regards to Doxygen documentation, for example:
- Incorrect parameter referencing.
- Missing @param tags.
- Typos in @param tags.
and a few minor other issues. 
						
					 
					
						2017-02-26 17:58:51 -08:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							b250ce21b9 
							
						 
					 
					
						
						
							
							Merge pull request  #2587  from yuriks/status-bar  
						
						... 
						
						
						
						Replace built-in Profiler with indicators in status bar 
						
					 
					
						2017-02-26 17:51:15 -08:00 
						 
				 
			
				
					
						
							
							
								Yuri Kunde Schlesner 
							
						 
					 
					
						
						
						
						
							
						
						
							441f8b5a4b 
							
						 
					 
					
						
						
							
							Core: Remove unnecessary include in thread.h  
						
						
						
					 
					
						2017-02-26 17:22:01 -08:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							029a11030e 
							
						 
					 
					
						
						
							
							Timers: Immediately signal the timer if it was started with an initial value of 0.  
						
						
						
					 
					
						2017-02-21 20:51:54 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							1ddff14511 
							
						 
					 
					
						
						
							
							Threads: Check the process' resource limit for the max allowed priority when creating a thread and remove the priority clamping code.  
						
						
						
					 
					
						2017-01-11 16:38:05 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							f2f2572fed 
							
						 
					 
					
						
						
							
							Thread: Added priority range checking to svcSetThreadPriority and removed priority clamping code from Thread::SetPriority.  
						
						
						
					 
					
						2017-01-11 16:38:04 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							84d72fd92f 
							
						 
					 
					
						
						
							
							Merge pull request  #2397  from Subv/pulse  
						
						... 
						
						
						
						Kernel: Implemented Pulse event and timers. 
						
					 
					
						2017-01-10 10:45:00 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							b5eac78b43 
							
						 
					 
					
						
						
							
							Merge pull request  #2410  from Subv/sleepthread  
						
						... 
						
						
						
						Don't yield execution in SleepThread(0) if there are no available threads to run 
						
					 
					
						2017-01-06 22:01:33 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							59f4f1d7ff 
							
						 
					 
					
						
						
							
							Merge pull request  #2396  from Subv/sema_acquire  
						
						... 
						
						
						
						Kernel/Semaphore: Fixed a regression in semaphore waits. 
						
					 
					
						2017-01-06 22:00:12 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							1c792389e6 
							
						 
					 
					
						
						
							
							Merge pull request  #2408  from Subv/priority_boosting  
						
						... 
						
						
						
						Kernel: Removed the priority boost code for starved threads. 
						
					 
					
						2017-01-06 00:40:39 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fc2266130b 
							
						 
					 
					
						
						
							
							Kernel: Don't attempt to yield execution in SleepThread(0) if there are no available threads to run.  
						
						... 
						
						
						
						With this we avoid an useless temporary deschedule of the current thread. 
						
					 
					
						2017-01-05 19:11:34 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5e2a8ebabf 
							
						 
					 
					
						
						
							
							Kernel: Remove some unused functions.  
						
						
						
					 
					
						2017-01-05 13:17:06 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							933df2606a 
							
						 
					 
					
						
						
							
							Kernel: Removed the priority boost code for starved threads.  
						
						... 
						
						
						
						After hwtesting and reverse engineering the kernel, it was found that the CTROS scheduler performs no priority boosting for threads like this, although some other forms of scheduling priority-starved threads might take place.
For example, it was found that hardware interrupts might cause low-priority threads to run if the CPU is preempted in the middle of an SVC handler that deschedules the current (high priority) thread before scheduling it again. 
						
					 
					
						2017-01-05 13:12:39 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							e52ca85711 
							
						 
					 
					
						
						
							
							Kernel: Implemented Pulse event and timers.  
						
						... 
						
						
						
						Closes  #1904  
					
						2017-01-05 13:06:17 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							4251eb26ec 
							
						 
					 
					
						
						
							
							Kernel/Semaphore: Fixed a regression in semaphore waits.  
						
						... 
						
						
						
						The regression was caused by a missing check in #2260 .
The new behavior is consistent with the real kernel. 
						
					 
					
						2017-01-05 13:00:05 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							dda4ec93be 
							
						 
					 
					
						
						
							
							Kernel: Add some asserts to enforce the invariants in the scheduler.  
						
						
						
					 
					
						2017-01-05 09:40:18 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							7f1dca8cd2 
							
						 
					 
					
						
						
							
							Kernel: Remove a thread from all of its waiting objects' waiting_threads list when it is awoken.  
						
						... 
						
						
						
						This fixes a potential bug where threads would not get removed from said list if they awoke after waiting with WaitSynchronizationN with wait_all = false 
						
					 
					
						2017-01-05 09:40:15 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							fd95b6ee26 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							cef5f45de2 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							d3ff5b91e1 
							
						 
					 
					
						
						
							
							Kernel/Mutex: Propagate thread priority changes to other threads inheriting the priority via mutexes  
						
						
						
					 
					
						2017-01-04 15:58:48 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							b6a0355568 
							
						 
					 
					
						
						
							
							Kernel/Mutex: Update a mutex priority when a thread stops waiting on it.  
						
						
						
					 
					
						2017-01-04 15:58:47 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							7abf185390 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							e6a7723f2f 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							38a90882a4 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							8b1e269e58 
							
						 
					 
					
						
						
							
							ThreadContext: Move from "core" to "arm_interface".  
						
						
						
					 
					
						2016-12-22 00:27:49 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							e26fbfd1d7 
							
						 
					 
					
						
						
							
							core: Replace "AppCore" nomenclature with just "CPU".  
						
						
						
					 
					
						2016-12-22 00:27:46 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							4fc8b8229e 
							
						 
					 
					
						
						
							
							core: Remove HLE module, consolidate code & various cleanups.  
						
						
						
					 
					
						2016-12-21 23:48:13 -05:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							232ef55c1a 
							
						 
					 
					
						
						
							
							core: Consolidate core and system state, remove system module & cleanups.  
						
						
						
					 
					
						2016-12-21 23:29:13 -05:00 
						 
				 
			
				
					
						
							
							
								wwylele 
							
						 
					 
					
						
						
						
						
							
						
						
							5728e42634 
							
						 
					 
					
						
						
							
							Thread: remove the thread from the thread list when exiting  
						
						
						
					 
					
						2016-12-17 19:23:52 +02:00 
						 
				 
			
				
					
						
							
							
								wwylele 
							
						 
					 
					
						
						
						
						
							
						
						
							4c9b80cee3 
							
						 
					 
					
						
						
							
							Kernel: remove object's waiting thread if it is dead  
						
						
						
					 
					
						2016-12-16 12:33:18 +02:00 
						 
				 
			
				
					
						
							
							
								bunnei 
							
						 
					 
					
						
						
						
						
							
						
						
							cda7210fad 
							
						 
					 
					
						
						
							
							Merge pull request  #2260  from Subv/scheduling  
						
						... 
						
						
						
						Threading: Reworked the way our scheduler works. 
						
					 
					
						2016-12-16 00:41:22 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							016307ae65 
							
						 
					 
					
						
						
							
							Fixed the codestyle to match our clang-format rules.  
						
						
						
					 
					
						2016-12-14 12:45:36 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							5b1edc6ae7 
							
						 
					 
					
						
						
							
							Fixed the codestyle to match our clang-format rules.  
						
						
						
					 
					
						2016-12-14 12:35:01 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							406907d570 
							
						 
					 
					
						
						
							
							Properly remove a thread from its wait_objects' waitlist when it is awoken by a timeout.  
						
						
						
					 
					
						2016-12-10 13:29:31 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							ebbb55ec8f 
							
						 
					 
					
						
						
							
							Moved the HLE command buffer translation task to ServerSession instead of the HLE handler superclass.  
						
						
						
					 
					
						2016-12-09 12:52:12 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							17b29d8865 
							
						 
					 
					
						
						
							
							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 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							386112da32 
							
						 
					 
					
						
						
							
							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 
							
						 
					 
					
						
						
						
						
							
						
						
							f9bcf89510 
							
						 
					 
					
						
						
							
							Use std::move where appropriate.  
						
						
						
					 
					
						2016-12-08 11:06:19 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							7cde5b83bc 
							
						 
					 
					
						
						
							
							Use boost remove_erase_if instead of the erase-remove idiom  
						
						
						
					 
					
						2016-12-06 19:31:53 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							1f286b72a1 
							
						 
					 
					
						
						
							
							Improved the algorithm for GetHighestPriorityReadyThread.  
						
						
						
					 
					
						2016-12-06 19:15:32 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							c93c5a72bb 
							
						 
					 
					
						
						
							
							Return an error code when connecting to a saturated port.  
						
						... 
						
						
						
						The error code was taken from the 3DS kernel. 
						
					 
					
						2016-12-05 13:59:57 -05:00 
						 
				 
			
				
					
						
							
							
								Subv 
							
						 
					 
					
						
						
						
						
							
						
						
							00f0c77570 
							
						 
					 
					
						
						
							
							Split SessionRequestHandler::HandleSyncRequest into HandleSyncRequest, TranslateRequest and HandleSyncRequestImpl.  
						
						... 
						
						
						
						HandleSyncRequest now takes care of calling the command buffer translate function before actually invoking the command handler for HLE services. 
						
					 
					
						2016-12-05 12:05:00 -05:00