Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								61434651d8 
								
							 
						 
						
							
							
								
								Semaphores: Addressed some style issues  
							
							 
							
							
							
						 
						
							2014-12-13 13:40:13 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								abff4a7ee2 
								
							 
						 
						
							
							
								
								Semaphore: Implemented the initial_count parameter.  
							
							 
							
							
							
						 
						
							2014-12-13 13:40:12 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								49b31badba 
								
							 
						 
						
							
							
								
								SVC: Implemented ReleaseSemaphore.  
							
							 
							
							... 
							
							
							
							This behavior was tested on hardware, however i'm still not sure what use the "initial_count" parameter has 
							
						 
						
							2014-12-13 13:40:10 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								82c84883a5 
								
							 
						 
						
							
							
								
								SVC: Implemented svcCreateSemaphore  
							
							 
							
							... 
							
							
							
							ToDo: Implement svcReleaseSemaphore
* Some testing against hardware needed 
							
						 
						
							2014-12-13 13:40:09 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								cfc0ee9c60 
								
							 
						 
						
							
							
								
								kernel: Remove unused log arguments  
							
							 
							
							
							
						 
						
							2014-12-13 10:15:58 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Yuri Kunde Schlesner 
								
							 
						 
						
							
							
							
							
								
							
							
								0600e2d8b5 
								
							 
						 
						
							
							
								
								Convert old logging calls to new logging macros  
							
							 
							
							
							
						 
						
							2014-12-13 02:08:02 -02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								3a75c8069e 
								
							 
						 
						
							
							
								
								Merge pull request  #256  from Subv/mutex  
							
							 
							
							... 
							
							
							
							Kernel/Mutex: Properly lock the mutex when a thread enters it 
							
						 
						
							2014-12-10 22:52:55 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								dd203f7068 
								
							 
						 
						
							
							
								
								Thread: Fixed to wait on address when in arbitration.  
							
							 
							
							
							
						 
						
							2014-12-08 19:44:10 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								20d2ed0950 
								
							 
						 
						
							
							
								
								Make OpenDirectory fail if the directory doesn't exist  
							
							 
							
							... 
							
							
							
							This is in line with what the hardware itself does.
It does this by splitting the initial directory opening into Directory.Open(), which will return false if a stat fails.
Then, Archive::OpenDirectory will return nullptr, and archive.cpp will return an error code . 
							
						 
						
							2014-12-07 14:47:14 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								bc318c464b 
								
							 
						 
						
							
							
								
								Mutex: Remove some forward declarations  
							
							 
							
							... 
							
							
							
							Moved Mutex::WaitSynchronization to the end of the file. 
							
						 
						
							2014-12-07 15:57:28 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								64128aa61a 
								
							 
						 
						
							
							
								
								Mutex: Release all held mutexes when a thread exits.  
							
							 
							
							
							
						 
						
							2014-12-07 15:44:21 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								e3c8e4901c 
								
							 
						 
						
							
							
								
								Mutex: Properly lock the mutex when a thread enters it  
							
							 
							
							... 
							
							
							
							Also resume only the next immediate thread waiting for the mutex when it is released, instead of resuming them all. 
							
						 
						
							2014-12-05 23:40:43 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								17fae11fc7 
								
							 
						 
						
							
							
								
								Merge pull request  #250  from Subv/cbranch_2  
							
							 
							
							... 
							
							
							
							SVC: Implemented GetThreadId. 
							
						 
						
							2014-12-04 22:15:03 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								5056329a80 
								
							 
						 
						
							
							
								
								Merge pull request  #222  from archshift/renamexyz  
							
							 
							
							... 
							
							
							
							Implemented RenameFile and RenameDirectory in FS:USER 
							
						 
						
							2014-12-04 22:07:47 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								6fac2bf0ab 
								
							 
						 
						
							
							
								
								Threads: Remove a redundant function.  
							
							 
							
							... 
							
							
							
							Use the next_thread_id variable directly. 
							
						 
						
							2014-12-04 14:59:56 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								ef1d5cda06 
								
							 
						 
						
							
							
								
								Threads: Implemented a sequential thread id  
							
							 
							
							
							
						 
						
							2014-12-04 08:13:53 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								139a4d91d9 
								
							 
						 
						
							
							
								
								Updated archive.cpp functions for proper error handling  
							
							 
							
							
							
						 
						
							2014-12-03 22:50:44 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								029ff9f1fd 
								
							 
						 
						
							
							
								
								SVC: Implemented GetThreadId.  
							
							 
							
							... 
							
							
							
							For now threads are using their Handle value as their Id, it should not really cause any problems because Handle values are unique in Citra, but it should be changed. I left a ToDo there because this is not correct behavior as per hardware. 
							
						 
						
							2014-12-04 00:25:35 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								208598dbe2 
								
							 
						 
						
							
							
								
								kernel: Shorten GetCount  
							
							 
							
							
							
						 
						
							2014-12-03 22:52:02 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								9b68d5e074 
								
							 
						 
						
							
							
								
								kernel: Make some functions const  
							
							 
							
							
							
						 
						
							2014-12-03 19:48:34 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								e3d1ffff4b 
								
							 
						 
						
							
							
								
								Merge pull request  #225  from bunnei/fix-release-mutex  
							
							 
							
							... 
							
							
							
							Mutex: Changed behavior to always release mutex for all threads. 
							
						 
						
							2014-11-30 08:47:49 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								de851ba1a1 
								
							 
						 
						
							
							
								
								Thread: Check that thread is actually in "wait state" when verifying wait.  
							
							 
							
							
							
						 
						
							2014-11-26 15:04:08 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a449e0e11a 
								
							 
						 
						
							
							
								
								Mutex: Changed behavior to always release mutex for all threads.  
							
							 
							
							
							
						 
						
							2014-11-26 14:38:42 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								e5ff01c2cd 
								
							 
						 
						
							
							
								
								Implemented RenameDirectory in FS:USER  
							
							 
							
							
							
						 
						
							2014-11-24 15:09:12 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								45afc15aa6 
								
							 
						 
						
							
							
								
								Implemented RenameFile in FS:USER  
							
							 
							
							
							
						 
						
							2014-11-24 15:09:11 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Yuri Kunde Schlesner 
								
							 
						 
						
							
							
							
							
								
							
							
								8189593255 
								
							 
						 
						
							
							
								
								Use pointers instead of passing handles around in some functions.  
							
							 
							
							
							
						 
						
							2014-11-24 17:08:37 -02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Yuri Kunde Schlesner 
								
							 
						 
						
							
							
							
							
								
							
							
								22c86824a4 
								
							 
						 
						
							
							
								
								Remove duplicated docs/update them for changed parameters.  
							
							 
							
							
							
						 
						
							2014-11-24 17:08:36 -02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Yuri Kunde Schlesner 
								
							 
						 
						
							
							
							
							
								
							
							
								c2588403c0 
								
							 
						 
						
							
							
								
								HLE: Revamp error handling throrough the HLE code  
							
							 
							
							... 
							
							
							
							All service calls in the CTR OS return result codes indicating the
success or failure of the call. Previous to this commit, Citra's HLE
emulation of services and the kernel universally either ignored errors
or returned dummy -1 error codes.
This commit makes an initial effort to provide an infrastructure for
error reporting and propagation which can be use going forward to make
HLE calls accurately return errors as the original system. A few parts
of the code have been updated to use the new system where applicable.
One part of this effort is the definition of the `ResultCode` type,
which provides facilities for constructing and parsing error codes in
the structured format used by the CTR.
The `ResultVal` type builds on `ResultCode` by providing a container for
values returned by function that can report errors. It enforces that
correct error checking will be done on function returns by preventing
the use of the return value if the function returned an error code.
Currently this change is mostly internal since errors are still
suppressed on the ARM<->HLE border, as a temporary compatibility hack.
As functionality is implemented and tested this hack can be eventually
removed. 
							
						 
						
							2014-11-24 17:08:36 -02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								ef1b16a7eb 
								
							 
						 
						
							
							
								
								Merge pull request  #191  from archshift/deletexyz  
							
							 
							
							... 
							
							
							
							Added DeleteFile and DeleteDirectory functions to FS:USER and the archives. 
							
						 
						
							2014-11-23 20:02:23 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								8aeadbd95a 
								
							 
						 
						
							
							
								
								Added DeleteFile and DeleteDirectory functions to FS:USER and the archives.  
							
							 
							
							
							
						 
						
							2014-11-23 00:33:43 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c0cd0fa78e 
								
							 
						 
						
							
							
								
								Merge pull request  #211  from linkmauve/master  
							
							 
							
							... 
							
							
							
							Remove trailing spaces from the entire project 
							
						 
						
							2014-11-19 15:24:46 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								112768f436 
								
							 
						 
						
							
							
								
								Merge pull request  #208  from lioncash/statics  
							
							 
							
							... 
							
							
							
							Add static to some variables 
							
						 
						
							2014-11-19 09:39:20 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								f5d38649c7 
								
							 
						 
						
							
							
								
								Remove trailing spaces in every file but the ones imported from SkyEye, AOSP or generated  
							
							 
							
							
							
						 
						
							2014-11-19 09:03:07 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								7cbecde2ca 
								
							 
						 
						
							
							
								
								Add static to some variables  
							
							 
							
							
							
						 
						
							2014-11-18 20:04:00 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								1a8f466217 
								
							 
						 
						
							
							
								
								Remove extraneous semicolons  
							
							 
							
							
							
						 
						
							2014-11-18 08:27:16 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								11641b5e79 
								
							 
						 
						
							
							
								
								Archive: Fixed to not destroy archive handle on close.  
							
							 
							
							
							
						 
						
							2014-11-17 22:19:14 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								bcb0dbf7e1 
								
							 
						 
						
							
							
								
								Archive: Fixed close archive before freeing.  
							
							 
							
							
							
						 
						
							2014-11-17 22:19:14 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								3e09c07378 
								
							 
						 
						
							
							
								
								FS_User: Support FileSye::Path in a more generic way.  
							
							 
							
							... 
							
							
							
							added a todo to kernel archive 
							
						 
						
							2014-11-17 22:18:58 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								a3107a6b57 
								
							 
						 
						
							
							
								
								FileSys: Updated backend code to use FileSys::Path instead of string for paths.  
							
							 
							
							
							
						 
						
							2014-11-17 21:49:24 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								ac58b76e71 
								
							 
						 
						
							
							
								
								Fix two format strings.  
							
							 
							
							
							
						 
						
							2014-11-14 12:08:26 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								04c90c395d 
								
							 
						 
						
							
							
								
								Added CreateDirectory function to service/fs.cpp, and in Archive.  
							
							 
							
							
							
						 
						
							2014-11-02 10:48:28 -08:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Sean 
								
							 
						 
						
							
							
							
							
								
							
							
								9a012ff007 
								
							 
						 
						
							
							
								
								Fix some warnings  
							
							 
							
							
							
						 
						
							2014-10-29 20:26:15 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Yuri Kunde Schlesner 
								
							 
						 
						
							
							
							
							
								
							
							
								d72708c1f5 
								
							 
						 
						
							
							
								
								Add override keyword through the code.  
							
							 
							
							... 
							
							
							
							This was automated using `clang-modernize`. 
							
						 
						
							2014-10-26 16:18:05 -02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								0be5c03176 
								
							 
						 
						
							
							
								
								FileSys: split the constructor into an Open method, in order to notify the opener something went wrong.  
							
							 
							
							... 
							
							
							
							Kernel: Return an invalid handle to OpenFile when it failed to open. 
							
						 
						
							2014-10-06 19:58:42 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								23c2fbfc7a 
								
							 
						 
						
							
							
								
								FileSys/Kernel: Implement SetSize service call for File objects.  
							
							 
							
							
							
						 
						
							2014-10-06 19:58:37 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									archshift 
								
							 
						 
						
							
							
							
							
								
							
							
								1966f7b0ad 
								
							 
						 
						
							
							
								
								Use the citra user path for the sdmc directory  
							
							 
							
							
							
						 
						
							2014-09-21 09:34:33 -07:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								3a570a9fee 
								
							 
						 
						
							
							
								
								Kernel: Implement the Close command for Archive, File and Directory.  
							
							 
							
							
							
						 
						
							2014-09-17 14:35:46 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								c197ce2180 
								
							 
						 
						
							
							
								
								Kernel: Add a Directory object and a getter for it from an Archive object.  
							
							 
							
							
							
						 
						
							2014-09-17 14:35:46 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Emmanuel Gil Peyrot 
								
							 
						 
						
							
							
							
							
								
							
							
								19d04f3abe 
								
							 
						 
						
							
							
								
								Kernel: Add a File object and a getter for it from an Archive object.  
							
							 
							
							
							
						 
						
							2014-09-17 14:35:46 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								741321ac24 
								
							 
						 
						
							
							
								
								Core: Get rid of unnecessary switch statement in Kernel  
							
							 
							
							
							
						 
						
							2014-09-14 21:31:09 -04:00