aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines
AgeCommit message (Collapse)Author
2018-04-27general: Convert assertion macros over to be fmt-compatibleLioncash
2018-04-26gl_shader_decompiler: Boilerplate for handling integer instructions.bunnei
2018-04-25Merge pull request #396 from Subv/shader_opsbunnei
Shaders: Implemented the FSET instruction.
2018-04-25GPU: Partially implemented the Fermi2D surface copy operation.Subv
The hardware allows for some rather complicated operations to be performed on the data during the copy, this is not implemented. Only same-format same-size raw copies are implemented for now.
2018-04-25Shaders: Added bit decodings for the I2I instruction.Subv
2018-04-25GPU: Added surface copy registers to Fermi2DSubv
2018-04-25GPU: Added boilerplate code for the Fermi2D engineSubv
2018-04-25GPU: Reduce the number of registers of Maxwell3D to 0xE00.Subv
The rest are just macro shim registers.
2018-04-25GPU: Move the Maxwell3D macro uploading code to the inside of the Maxwell3D ↵Subv
processor. It doesn't belong in the PFIFO handler.
2018-04-25video-core: Move logging macros over to new fmt-capable onesLioncash
2018-04-24Shaders: Added decodings for the FSET instructions.Subv
2018-04-24memory_manager: Make GpuToCpuAddress return an optional.bunnei
2018-04-24memory_manager: Use GPUVAdddr, not PAddr, for GPU addresses.bunnei
2018-04-24Merge pull request #386 from Subv/gpu_querybunnei
GPU: Added asserts to our code for handling the QUERY_GET GPU command.
2018-04-23GPU: Added asserts to our code for handling the QUERY_GET GPU command.Subv
This is based on research from nouveau. Many things are currently unknown and will require hwtests in the future. This commit also stubs QueryMode::Write2 to do the same as Write. Nouveau code treats them interchangeably, it is currently unknown what the difference is.
2018-04-23GPU: Support multiple enabled vertex arrays.Subv
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-20shader_bytecode: Add several more instruction decodings.bunnei
2018-04-20shader_bytecode: Decode instructions based on bit strings.bunnei
2018-04-20ShaderGen: Implemented predicated instruction execution.Subv
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-20ShaderGen: Implemented the fsetp instruction.Subv
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-20ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).Subv
2018-04-19ShaderGen: Implemented the fmul32i shader instruction.Subv
2018-04-18gl_shader_gen: Support vertical/horizontal viewport flipping. (#347)bunnei
* gl_shader_gen: Support vertical/horizontal viewport flipping. * fixup! gl_shader_gen: Support vertical/horizontal viewport flipping.
2018-04-18GPU: Pitch textures are now supported, don't assert when encountering them.Subv
2018-04-17Merge pull request #346 from bunnei/misc-gpu-improvementsbunnei
Misc gpu improvements
2018-04-17Merge pull request #344 from bunnei/shader-decompiler-p2bunnei
Shader decompiler changes part 2
2018-04-17maxwell3d: Allow Texture2DNoMipmap as Texture2D.bunnei
2018-04-17shader_bytecode: Make ctor's constexpr and explicit.bunnei
2018-04-17renderer_opengl: Implement BlendEquation and BlendFunc.bunnei
2018-04-17gl_shader_decompiler: Implement FMUL/FADD/FFMA immediate instructions.bunnei
2018-04-17gl_shader_decompiler: Add support for TEXS instruction.bunnei
2018-04-16gl_rasterizer: Implement indexed vertex mode.bunnei
2018-04-14GPU: Added a function to determine whether a shader stage is enabled or not.Subv
2018-04-14shaders: Add NumTextureSamplers const, remove unused #pragma.bunnei
2018-04-14shaders: Address PR review feedback.bunnei
2018-04-14shaders: Fix GCC and clang build issues.bunnei
2018-04-14gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.bunnei
2018-04-14shader_bytecode: Add FSETP and KIL to GetInfo.bunnei
2018-04-14shader_bytecode: Add SubOp decoding.bunnei
2018-04-13maxwell_3d: Make memory_manager public.bunnei
2018-04-13maxwell_3d: Fix shader_config decodings.bunnei
2018-04-13shader_bytecode: Add initial module for shader decoding.bunnei
2018-04-06GPU: Assert when finding a texture with a format type other than UNORM.Subv
2018-04-01GPU: Use the MacroInterpreter class to execute the GPU macros instead of ↵Subv
HLEing them.
2018-04-01GPU: Implemented a gpu macro interpreter.Subv
The Ryujinx macro interpreter and envydis were used as reference. Macros are programs that are uploaded by the games during boot and can later be called by writing to their method id in a GPU command buffer.
2018-03-26gl_rasterizer: Add a SyncViewport method.bunnei
2018-03-26gl_rasterizer: Normalize vertex array data as appropriate.bunnei
2018-03-26maxwell_3d: Use names that match envytools for VertexType.bunnei
2018-03-26maxwell_3d: Add VertexAttribute struct and cleanup.bunnei
2018-03-26Maxwell3D: Call AccelerateDrawBatch on DrawArrays.bunnei