bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								dc5549a9b1 
								
							 
						 
						
							
							
								
								Merge pull request  #383  from Subv/gpu_mmu  
							
							... 
							
							
							
							GPU: Make the GPU virtual memory manager use 16 page bits and 10 pagetable bits. 
							
						 
						
							2018-04-23 14:00:52 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								7afc8a845b 
								
							 
						 
						
							
							
								
								Merge pull request  #382  from Subv/a2rgb10_rt  
							
							... 
							
							
							
							GPU: Implement the RGB10_A2 RenderTarget format 
							
						 
						
							2018-04-23 13:16:48 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								6be45c562f 
								
							 
						 
						
							
							
								
								GPU: Support multiple enabled vertex arrays.  
							
							... 
							
							
							
							The vertex arrays will be copied to the stream buffer one after the other, and the attributes will be set using the ARB_vertex_attrib_binding extension.
yuzu now thus requires OpenGL 4.3 or the ARB_vertex_attrib_binding extension. 
							
						 
						
							2018-04-23 11:34:50 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								329bec6dbd 
								
							 
						 
						
							
							
								
								Kernel: Implemented mutex priority inheritance.  
							
							... 
							
							
							
							Verified with a hwtest and implemented based on reverse engineering.
Thread A's priority will get bumped to the highest priority among all the threads that are waiting for a mutex that A holds.
Once A releases the mutex and ownership is transferred to B, A's priority will return to normal and B's priority will be bumped. 
							
						 
						
							2018-04-23 11:23:44 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								e56ef284bb 
								
							 
						 
						
							
							
								
								NvDrv/nvhost-as-gpu: Ensure that the object passed to MapBufferEx has already been allocated.  
							
							... 
							
							
							
							Also added a consistency check and a comment for the case when the object id is different than its handle. The real nvservices doesn't make a distinction between ids and handles, each object gets an unique handle which doubles as its id. 
							
						 
						
							2018-04-23 11:21:46 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								c4131e271f 
								
							 
						 
						
							
							
								
								Nvdrv/nvhost-as-gpu: Implemented the ioctl REMAP command.  
							
							... 
							
							
							
							It takes a previously-reserved (AllocateSpace) GPU memory address and maps it to the address of the nvmap object passed to Remap. 
							
						 
						
							2018-04-23 11:21:46 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								3c2b29e5c2 
								
							 
						 
						
							
							
								
								Nvdrv: Assert when receiving an unimplemented ioctl in the nv* handlers.  
							
							
							
						 
						
							2018-04-23 11:13:53 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								fbc480d611 
								
							 
						 
						
							
							
								
								GPU: Make the GPU virtual memory manager use 16 page bits and 10 page table bits.  
							
							... 
							
							
							
							Also removed some dead code and added memory map consistency asserts. 
							
						 
						
							2018-04-23 10:57:12 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								fa6edc4412 
								
							 
						 
						
							
							
								
								GPU: Implement the RGB10_A2 RenderTarget format, it will use the same format as the A2BGR10 texture format.  
							
							
							
						 
						
							2018-04-23 10:50:28 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Marcec 
								
							 
						 
						
							
							
							
							
								
							
							
								9591689dbc 
								
							 
						 
						
							
							
								
								GetIUserInterface->CreateUserInterface, Added todos and stub logs. Playreport->PlayReport.  
							
							
							
						 
						
							2018-04-22 19:02:18 -07:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David 
								
							 
						 
						
							
							
							
							
								
							
							
								471eafc162 
								
							 
						 
						
							
							
								
								lioncash proposed changes  
							
							
							
						 
						
							2018-04-22 00:07:55 -07:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									David Marcec 
								
							 
						 
						
							
							
							
							
								
							
							
								48334d0d6a 
								
							 
						 
						
							
							
								
								Implemented GetIUserInterface properly, Playreport and SSL::SetInterfaceVersion. Fixed ipc issues with IAudioDevice(wrong ids)  
							
							
							
						 
						
							2018-04-21 22:04:24 -07:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								82d8bd97e8 
								
							 
						 
						
							
							
								
								Merge pull request  #378  from Subv/a2bgr10  
							
							... 
							
							
							
							GPU: Implement the A2BGR10 texture format. 
							
						 
						
							2018-04-21 21:43:17 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								abd66a9a33 
								
							 
						 
						
							
							
								
								GPU: Implement the A2BGR10 texture format.  
							
							
							
						 
						
							2018-04-21 17:32:25 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								0aae96830a 
								
							 
						 
						
							
							
								
								Merge pull request  #377  from adityaruplaha/sdl2-fullscreen  
							
							... 
							
							
							
							SDL2: Implement fullscreen. (Original PR: citra-emu/citra#3607 ) 
							
						 
						
							2018-04-21 13:53:55 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									adityaruplaha 
								
							 
						 
						
							
							
							
							
								
							
							
								cd2aeb1046 
								
							 
						 
						
							
							
								
								SDL2: Implement fullscreen. (Original PR:  citra-emu/citra#3607 )  
							
							
							
						 
						
							2018-04-21 13:24:33 +05:30 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								1fe68fa427 
								
							 
						 
						
							
							
								
								Merge pull request  #376  from bunnei/shader-decoder  
							
							... 
							
							
							
							Shader opcode decoding 
							
						 
						
							2018-04-21 00:04:51 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								83ea05b814 
								
							 
						 
						
							
							
								
								Merge pull request  #375  from lioncash/header  
							
							... 
							
							
							
							opengl: Remove unnecessary header inclusions 
							
						 
						
							2018-04-20 23:08:47 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								ff1700e261 
								
							 
						 
						
							
							
								
								gl_shader_decompiler: Skip RRO instruction.  
							
							
							
						 
						
							2018-04-20 22:30:56 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								54fbbc6f26 
								
							 
						 
						
							
							
								
								gl_shader_decompiler: Cleanup error logging.  
							
							
							
						 
						
							2018-04-20 22:30:56 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								f66098bd37 
								
							 
						 
						
							
							
								
								shader_bytecode: Add several more instruction decodings.  
							
							
							
						 
						
							2018-04-20 22:30:56 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								d2302ee79f 
								
							 
						 
						
							
							
								
								shader_bytecode: Decode instructions based on bit strings.  
							
							
							
						 
						
							2018-04-20 22:30:56 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								806b2133e4 
								
							 
						 
						
							
							
								
								Merge pull request  #369  from Subv/shader_instr2  
							
							... 
							
							
							
							ShaderGen: Implemented fsetp/kil and predicated instruction execution. 
							
						 
						
							2018-04-20 22:29:39 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								b29507b551 
								
							 
						 
						
							
							
								
								Merge pull request  #374  from lioncash/noexcept  
							
							... 
							
							
							
							gl_resource_manager: Add missing noexcept specifiers to move constructors and assignment operators 
							
						 
						
							2018-04-20 22:28:47 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								b79cec4040 
								
							 
						 
						
							
							
								
								Merge pull request  #373  from lioncash/enum2  
							
							... 
							
							
							
							gl_rasterizer_cache: Make MatchFlags an enum class 
							
						 
						
							2018-04-20 22:28:09 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								79e7bb8896 
								
							 
						 
						
							
							
								
								ShaderGen: Implemented the KIL instruction, which is equivalent to 'discard'.  
							
							
							
						 
						
							2018-04-20 21:09:34 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								2fbb91a6b6 
								
							 
						 
						
							
							
								
								ShaderGen: Implemented predicated instruction execution.  
							
							... 
							
							
							
							Each predicated instruction will be wrapped in an `if (predicate) { instruction_body; }` in the GLSL, where `predicate` is one of the predicate boolean variables previously set by fsetp. 
							
						 
						
							2018-04-20 21:09:33 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								31de416fc0 
								
							 
						 
						
							
							
								
								ShaderGen: Implemented the fsetp instruction.  
							
							... 
							
							
							
							Predicate variables are now added to the generated shader code in the form of 'pX' where X is the predicate id.
These predicate variables are initialized to false on shader startup and are set via the fsetp instructions.
TODO:
* Not all the comparison types are implemented.
* Only the single-predicate version is implemented. 
							
						 
						
							2018-04-20 21:09:33 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								4be07d1090 
								
							 
						 
						
							
							
								
								Kernel: Use 0x2C as default main thread priority for homebrew and lone NRO/NSOs  
							
							
							
						 
						
							2018-04-20 21:04:35 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								106d31e8c3 
								
							 
						 
						
							
							
								
								Qt: Update the WaitTree widget to show info about the current mutex of each thread.  
							
							
							
						 
						
							2018-04-20 21:04:34 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								f5a2b1920b 
								
							 
						 
						
							
							
								
								Kernel: Remove unused ConditionVariable class.  
							
							
							
						 
						
							2018-04-20 21:04:33 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								e499b48f97 
								
							 
						 
						
							
							
								
								Kernel: Remove old and unused Mutex code.  
							
							
							
						 
						
							2018-04-20 21:04:32 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								fcd7cbe65a 
								
							 
						 
						
							
							
								
								Kernel: Properly implemented svcWaitProcessWideKey and svcSignalProcessWideKey  
							
							... 
							
							
							
							They work in tandem with guest code to provide synchronization primitives along with svcArbitrateLock/Unlock 
							
						 
						
							2018-04-20 21:04:27 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								4e47dd5b59 
								
							 
						 
						
							
							
								
								Kernel: Corrected the implementation of svcArbitrateLock and svcArbitrateUnlock.  
							
							... 
							
							
							
							Switch mutexes are no longer kernel objects, they are managed in userland and only use the kernel to handle the contention case.
Mutex addresses store a special flag value (0x40000000) to notify the guest code that there are still some threads waiting for the mutex to be released. This flag is updated when a thread calls ArbitrateUnlock.
TODO:
* Fix svcWaitProcessWideKey
* Fix svcSignalProcessWideKey
* Remove the Mutex class. 
							
						 
						
							2018-04-20 21:04:25 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								4a972207d6 
								
							 
						 
						
							
							
								
								Merge pull request  #372  from lioncash/enum  
							
							... 
							
							
							
							resource_limit: Make ResourceTypes an enum class 
							
						 
						
							2018-04-20 21:26:54 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								ed5600442d 
								
							 
						 
						
							
							
								
								Merge pull request  #371  from lioncash/global  
							
							... 
							
							
							
							core: Relocate g_service_manager to the System class 
							
						 
						
							2018-04-20 21:26:27 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								c3ade6d56d 
								
							 
						 
						
							
							
								
								opengl: Remove unnecessary header inclusions  
							
							
							
						 
						
							2018-04-20 20:19:37 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								3768508edf 
								
							 
						 
						
							
							
								
								gl_resource_manager: Add missing noexcept specifiers to move constructors and assignment operators  
							
							... 
							
							
							
							Standard library containers may use std::move_if_noexcept to perform
move operations. If a move cannot be performed under these
circumstances, then a copy is attempted. Given we only intend for these
types to be move-only this can be somewhat problematic. By defining
these to be noexcept we prevent cases where copies may be attempted. 
							
						 
						
							2018-04-20 20:04:00 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								f7eb0e8f1b 
								
							 
						 
						
							
							
								
								gl_rasterizer_cache: Make MatchFlags an enum class  
							
							... 
							
							
							
							Prevents implicit conversions and scope pollution. 
							
						 
						
							2018-04-20 19:50:05 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								4bd499d440 
								
							 
						 
						
							
							
								
								core: Relocate g_service_manager to the System class  
							
							... 
							
							
							
							Converts the service manager from a global into an instance-based
variable. 
							
						 
						
							2018-04-20 19:44:32 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								5860b9f4ce 
								
							 
						 
						
							
							
								
								resource_limit: Make ResourceTypes an enum class  
							
							... 
							
							
							
							Prevents enum identifiers from leaking into the surrounding scope. 
							
						 
						
							2018-04-20 19:41:45 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								18e541f7e2 
								
							 
						 
						
							
							
								
								Merge pull request  #340  from mailwl/vi-update  
							
							... 
							
							
							
							Service/VI: stub SetLayerVisibility, fix GetDisplayResolution output 
							
						 
						
							2018-04-20 16:23:15 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								601c5d9d93 
								
							 
						 
						
							
							
								
								ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).  
							
							
							
						 
						
							2018-04-20 14:57:40 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Subv 
								
							 
						 
						
							
							
							
							
								
							
							
								8b8f55d8be 
								
							 
						 
						
							
							
								
								ShaderGen: Ignore the 'sched' instruction when generating shaders.  
							
							... 
							
							
							
							The 'sched' instruction has a very convoluted encoding, but fortunately it seems to only appear on a fixed interval (once every 4 instructions). 
							
						 
						
							2018-04-20 14:57:40 -05:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c2adb07b55 
								
							 
						 
						
							
							
								
								Merge pull request  #367  from lioncash/clamp  
							
							... 
							
							
							
							math_util: Remove the Clamp() function 
							
						 
						
							2018-04-20 14:18:03 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c5438e898e 
								
							 
						 
						
							
							
								
								Merge pull request  #361  from lioncash/common  
							
							... 
							
							
							
							common_types: Minor changes 
							
						 
						
							2018-04-20 10:27:17 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									Lioncash 
								
							 
						 
						
							
							
							
							
								
							
							
								043546e4db 
								
							 
						 
						
							
							
								
								math_util: Remove the Clamp() function  
							
							... 
							
							
							
							C++17 adds clamp() to the standard library, so we can remove ours in
favor of it. 
							
						 
						
							2018-04-20 10:14:13 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								ba33c44e4a 
								
							 
						 
						
							
							
								
								Merge pull request  #368  from lioncash/dynarmic  
							
							... 
							
							
							
							externals: Update dynarmic to HEAD 
							
						 
						
							2018-04-20 09:48:15 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								c3236a3a37 
								
							 
						 
						
							
							
								
								Merge pull request  #360  from lioncash/namespaces  
							
							... 
							
							
							
							service: Use nested namespace specifiers where applicable 
							
						 
						
							2018-04-20 09:44:40 -04:00 
							
								 
							
						 
					 
				
					
						
							
								
								
									bunnei 
								
							 
						 
						
							
							
							
							
								
							
							
								7108f2c331 
								
							 
						 
						
							
							
								
								Merge pull request  #364  from lioncash/thread-local  
							
							... 
							
							
							
							common/thread: Remove unnecessary feature checking for thread_local 
							
						 
						
							2018-04-20 09:43:52 -04:00