summaryrefslogtreecommitdiffstats
path: root/src/video_core/engines (unfollow)
Commit message (Expand)AuthorFilesLines
2018-10-20maxwell_dma: Remove unused variables in HandleCopy()Lioncash1-3/+0
2018-10-19GPU: Improved implementation of maxwell DMA (Subv).bunnei2-16/+65
2018-10-19GPU: Invalidate destination address of kepler_memory writes.bunnei2-2/+16
2018-10-19fermi_2d: Add support for more accurate surface copies.bunnei1-3/+6
2018-10-18Implement 3D TexturesFernandoS271-1/+4
2018-10-15shader_bytecode: Add Control Code enum 0xfReinUsesLisp1-1/+1
2018-10-15gl_shader_decompiler: Implement HSET2_RReinUsesLisp1-0/+18
2018-10-15gl_shader_decompiler: Implement HSETP2_RReinUsesLisp1-0/+20
2018-10-15gl_shader_decompiler: Implement HFMA2 instructionsReinUsesLisp1-0/+32
2018-10-15gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMMReinUsesLisp1-0/+30
2018-10-15gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructionsReinUsesLisp1-0/+25
2018-10-15gl_shader_decompiler: Setup base for half float unpacking and settingReinUsesLisp1-0/+20
2018-10-13Propagate depth and depth_block on modules using decodersFernandoS273-10/+18
2018-10-11gl_shader_decompiler: Implement VMADReinUsesLisp1-0/+36
2018-10-10Add memory Layout to Render Targets and Depth BuffersFernandoS271-2/+14
2018-10-10Fixed block height settings for RenderTargets and Depth Buffers, and added block width and block depthFernandoS272-4/+22
2018-10-09Assert Scissor testsFernandoS271-1/+16
2018-10-07gl_shader_decompiler: Implement geometry shadersReinUsesLisp1-0/+112
2018-10-06fermi_2d: Implement simple copies with AccelerateSurfaceCopy.bunnei2-23/+35
2018-10-04gl_rasterizer: Implement quads topologyReinUsesLisp1-0/+6
2018-09-28video_core: Implement point_size and add point state syncReinUsesLisp1-1/+6
2018-09-28gl_state: Pack sampler bindings into a single ARB_multi_bindReinUsesLisp1-0/+1
2018-09-26video_core: Add asserts for CS, TFB and alpha testingReinUsesLisp3-3/+64
2018-09-21shader_bytecode: Lay out the Ipa-related enums betterLioncash1-2/+12
2018-09-21shader_bytecode: Make operator== and operator!= of IpaMode const qualifiedLioncash1-6/+7
2018-09-17Implemented I2I.CC on the NEU control code, used by SMOFernandoS271-1/+1
2018-09-17Implemented CSETPFernandoS271-0/+11
2018-09-17Implemented Control CodesFernandoS271-0/+36
2018-09-17Added texture misc modes to texture instructionsFernandoS271-1/+147
2018-09-15Shaders: Implemented multiple-word loads and stores to and from attribute memory.Subv1-1/+9
2018-09-15Port #4182 from Citra: "Prefix all size_t with std::"fearlessTobi6-32/+33
2018-09-12GPU: Basic implementation of the Kepler Inline Memory engine (p2mf).Subv2-0/+135
2018-09-12Implemented Texture Processing ModesFernandoS271-0/+10
2018-09-11Implemented encodings for LEA and PSETFernandoS271-0/+64
2018-09-11Replace old FragmentHeader for the new HeaderFernandoS271-9/+15
2018-09-11Implemented (Partialy) Shader HeaderFernandoS271-0/+97
2018-09-10rasterizer: Drop unused handler.Markus Wick1-2/+0
2018-09-10gl_rasterizer: Implement multiple color attachments.bunnei1-1/+21
2018-09-10Implemented TMMLFernandoS271-5/+19
2018-09-09Implemented TXQ dimension query type, used by SMO.FernandoS271-1/+16
2018-09-09Change name of TEXQ to TXQ, in order to match NVIDIA's namingFernandoS271-2/+2
2018-09-08GPU/DMA: Partially implemented the 'enable_2d' bit in the DMA engine.Subv1-2/+10
2018-09-08maxwell_3d: Remove assert that no longer applies.bunnei1-4/+0
2018-09-06Implemented IPA ProperlyFernandoS271-0/+12
2018-09-05gl_rasterizer: Implement a VAO cache.Markus Wick1-2/+7
2018-09-01Removed saturate assertDavid Marcec1-1/+0
2018-09-01Removed saturate assertDavid Marcec1-1/+0
2018-09-01Added FMUL assertsDavid Marcec1-0/+5
2018-09-01Added FFMA assertsDavid Marcec1-0/+4
2018-09-01Added assert for TEXS nodepDavid Marcec1-0/+1
2018-09-01Added better asserts to IPA, Renamed IPA modes to match mesaDavid Marcec1-2/+5
2018-09-01maxwell_3d: Use CoreTiming for query timestampZach Hilman1-2/+3
2018-08-31core/core: Replace includes with forward declarations where applicableLioncash1-2/+1
2018-08-31Added predicate comparison GreaterEqualWithNanHexagon121-0/+1
2018-08-31gl_shader_decompiler: Implement POPC (#1203)Laku1-0/+10
2018-08-29Shaders: Implemented IADD3tech4me1-1/+23
2018-08-29gl_shader_decompiler: Improve IPA for Pass mode with Position attribute.bunnei1-0/+6
2018-08-25maxwell3d: Move FinishedPrimitiveBatch event after AcceleratedDrawBatch()Lioncash1-4/+4
2018-08-24fix SEL_IMM bitstringLaku1-1/+1
2018-08-23Shaders: Added decodings for IADD3 instructionstech4me1-0/+6
2018-08-23maxwell_3d: Update to include additional stencil registers.bunnei1-20/+50
2018-08-22implement lop3Laku1-0/+19
2018-08-21shader_bytecode: Parenthesize conditional expression within GetTextureType()Lioncash1-1/+1
2018-08-21shader_bytecode: Replace some UNIMPLEMENTED logs.bunnei1-2/+6
2018-08-21GPU: Added registers for the logicop functionality.Subv1-1/+28
2018-08-19Shaders/TEXS: Fixed the component mask in the TEXS instruction.Subv1-6/+11
2018-08-19Shader: Added bitfields for the texture type of the various sampling instructions.Subv1-1/+65
2018-08-19Shaders: Added decodings for TLD4 and TLD4SSubv1-3/+7
2018-08-19Shaders: Added decodings for the LDG and STG instructions.Subv1-0/+4
2018-08-19Shaders: Implemented the gl_FrontFacing input attribute (attr 63).Subv1-0/+3
2018-08-18GLRasterizer: Implemented instanced vertex arrays.Subv1-1/+14
2018-08-18Shader: Implemented the predicate and mode arguments of LOP.Subv1-1/+6
2018-08-18Shaders: Corrected the 'abs' and 'neg' bit usage in the float arithmetic instructions.Subv1-0/+4
2018-08-18Added predcondition GreaterThanWithNanDavid Marcec1-0/+1
2018-08-15Rasterizer: Implemented instanced rendering.Subv2-0/+15
2018-08-13gl_shader_decompiler: Implement XMAD instruction.bunnei1-4/+25
2018-08-12GPU/Maxwell3D: Implemented an alternative set of blend factors.Subv1-0/+21
2018-08-12RasterizerGL: Ignore invalid/unset vertex attributes.Subv1-0/+5
2018-08-12gl_shader_decompiler: Improve handling of unknown input/output attributes.bunnei1-2/+1
2018-08-11GPU/Shader: Don't predicate instructions that don't have a predicate field (SSY).Subv1-0/+7
2018-08-10video_core: Use variable template variants of type_traits interfaces where applicableLioncash1-2/+1
2018-08-09maxwell_3d: Ignore macros that have not been uploaded yet.bunnei1-4/+9
2018-08-08gl_shader_decompiler: Stub input attribute Unknown_63.bunnei1-0/+2
2018-08-08maxwell_3d: Use correct const buffer size and check bounds.bunnei2-1/+3
2018-08-08gl_shader_decompiler: Let OpenGL interpret floats.bunnei1-9/+4
2018-08-06maxwell_3d: Remove outdated assert.bunnei1-2/+0
2018-08-04video_core: Eliminate the g_renderer global variableLioncash2-6/+12
2018-07-24GPU: Remove the assert that required the CODE_ADDRESS to be 0.Subv1-8/+0
2018-07-22shader_bytecode: Implement other TEXS masks.bunnei1-5/+9
2018-07-22gl_shader_decompiler: Implement SEL instruction.bunnei1-0/+11
2018-07-22maxwell_3d: Add depth buffer enable, width, and height registers.bunnei1-2/+14
2018-07-21video_core: Use nested namespaces where applicableLioncash6-28/+14
2018-07-20maxwell_3d: Remove unused variable within GetStageTextures()Lioncash1-2/+0
2018-07-17GPU: Added register definitions for the stencil parameters.Subv1-2/+25
2018-07-13gl_rasterizer: Fix check for if a shader stage is enabled.bunnei2-24/+8
2018-07-13gl_shader_decompiler: Implement PredCondition::LessThanWithNan.bunnei1-0/+1
2018-07-13gl_shader_decompiler: Use FlowCondition field in EXIT instruction.bunnei1-0/+9
2018-07-12GPU: Implement the FADD32I shader instruction.Subv1-0/+9
2018-07-12GPU: Corrected the decoding of FFMA for immediate operands.Subv1-1/+1
2018-07-05GPU: Allow using the old NV04 values for the depth test function.Subv1-9/+21
2018-07-04GPU: Implemented the IMNMX shader instruction.Subv1-3/+17
2018-07-04GPU: Stub the shader SYNC and DEPBAR instructions.Subv1-0/+5
2018-07-04GPU: Corrected the decoding for the TEX shader instruction.Subv1-1/+1
2018-07-04GPU: Implemented the PSETP shader instruction.Subv1-0/+13
2018-07-04GPU: Flip the triangle front face winding if the GPU is configured to not flip the triangles.Subv1-3/+19
2018-07-03GPU: Support clears that don't clear the color buffer.Subv1-2/+3
2018-07-03GPU: Bind and clear the render target when the CLEAR_BUFFERS register is written to.Subv1-0/+11
2018-07-03GPU: Added registers for the CLEAR_BUFFERS and CLEAR_COLOR methods.Subv1-2/+27
2018-07-03GPU: Use only the least significant 3 bits when reading the depth test func.Subv1-9/+9
2018-07-03Update clang formatJames Rowe2-3/+3
2018-07-03Rename logging macro back to LOG_*James Rowe3-3/+3
2018-07-03GPU: Implemented MUFU suboperation 8, sqrt.Subv1-0/+1
2018-07-02GPU: Added registers for depth test and cull mode.Subv1-3/+51
2018-07-02GPU: Implemented the Z24S8 depth format and load the depth framebuffer.Subv1-1/+1
2018-07-02GPU: Added register definitions for the vertex buffer base element.Subv1-1/+6
2018-07-02GPU: Directly copy the pixels when performing a same-layout DMA.Subv1-1/+5
2018-06-30GPU: Corrected the size of the MUFU subop field, and removed incorrect "min" operation.Subv1-2/+1
2018-06-30gl_shader_decompiler: Implement predicate NotEqualWithNan.bunnei1-0/+1
2018-06-27maxwell_3d: Add a struct for RenderTargetConfig.bunnei1-17/+19
2018-06-20Build: Fixed some MSVC warnings in various parts of the code.Subv2-4/+5
2018-06-19GPU: Don't mark uniform buffers and registers as used for instructions which don't have them.Subv1-2/+3
2018-06-17gl_shader_decompiler: Implement LOP instructions.bunnei1-0/+14
2018-06-17gl_shader_decompiler: Refactor LOP32I instruction a bit in support of LOP.bunnei1-3/+2
2018-06-16gl_shader_decompiler: Implement integer size conversions for I2I/I2F/F2I.bunnei1-1/+2
2018-06-12GPU: Implemented the iadd32i shader instruction.Subv1-2/+10
2018-06-12GPU: Partially implemented the Maxwell DMA engine.Subv3-0/+225
2018-06-12gl_shader_decompiler: Implement saturate for float instructions.bunnei1-2/+1
2018-06-09GPU: Implement the iset family of shader instructions.Subv1-0/+9
2018-06-09GPU: Added decodings for the ISET family of instructions.Subv1-0/+7
2018-06-09gl_shader_decompiler: Implement SHR instruction.bunnei1-0/+4
2018-06-09GPU: Stub the SSY shader instruction.Subv1-0/+2
2018-06-09gl_shader_decompiler: Implement IADD instruction.bunnei1-5/+11
2018-06-09gl_shader_decompiler: Add missing asserts for saturate_a instructions.bunnei1-1/+1
2018-06-09GPU: Added registers for normal and independent blending.Subv1-5/+26
2018-06-07gl_shader_decompiler: Implement BFE_IMM instruction.bunnei1-3/+15
2018-06-07gl_shader_decompiler: F2F: Implement rounding modes.bunnei1-3/+12
2018-06-07shader_bytecode: Add instruction decodings for BFE, IMNMX, and XMAD.bunnei1-0/+20
2018-06-07gl_shader_decompiler: Implement LD_C instruction.bunnei1-0/+16
2018-06-06gl_shader_decompiler: Refactor uniform handling to allow different decodings.bunnei1-6/+10
2018-06-06GPU: Implement sampling multiple textures in the generated glsl shaders.Subv2-0/+37
2018-06-05GPU: Corrected the branch targets for the shader bra instruction.Subv1-4/+5
2018-06-05GPU: Implemented the F2I_R shader instruction.Subv1-4/+20
2018-06-05gl_shader_decompiler: Implement SHL instruction.bunnei1-13/+17
2018-06-05GPU: Implement the ISCADD shader instructions.Subv1-0/+16
2018-06-05GPU: Added decodings for the ISCADD instructions.Subv1-0/+7
2018-06-04GPU: Use the bf bit in FSET to determine whether to write 0xFFFFFFFF or 1.0f.Subv1-1/+1
2018-06-04GPU: Calculate the correct viewport dimensions based on the scale and translate registers.Subv1-12/+28
2018-06-04GPU: Implemented the LOP32I instruction.Subv1-1/+15
2018-06-04GPU: Implemented the ISETP_R and ISETP_C shader instructions.Subv1-0/+10
2018-06-04GPU: Partially implemented the shader BRA instruction.Subv1-0/+13
2018-06-04GPU: Added decoding for the BRA instruction.Subv1-0/+2
2018-06-04GPU: Partial implementation of long GPU queries.Subv1-9/+24
2018-06-03gl_shader_decompiler: Implement TEXS component mask.bunnei1-2/+16
2018-06-03gl_shader_decompiler: Implement RRO as a register move.bunnei1-3/+7
2018-06-01gl_shader_decompiler: Implement TEX instruction.bunnei1-0/+10
2018-06-01gl_shader_decompiler: Support multi-destination for TEXS.bunnei1-0/+5
2018-05-30Shaders: Implemented reading the gl_InstanceID and gl_VertexID variables in the vertex shader.Subv1-0/+4
2018-05-30gl_shader_decompiler: Partially implement F2F_R instruction.bunnei1-3/+3
2018-05-26shader_bytecode: Implement other variants of FMNMX.bunnei1-3/+7
2018-05-21Shaders: Implemented the FMNMX shader instruction.Subv1-0/+5
2018-05-19ShadersDecompiler: Added decoding for the PSETP instruction.Subv1-0/+3
2018-04-29maxwell_3d: Reset vertex counts after drawing.bunnei1-0/+10
2018-04-29shader_bytecode: Add decoding for FMNMX instruction.bunnei1-0/+2
2018-04-29fermi_2d: Fix surface copy block height.bunnei2-2/+7
2018-04-29gl_shader_decompiler: Partially implement I2I_R, and I2F_R.bunnei1-8/+8
2018-04-29shader_bytecode: Add decodings for i2i instructions.bunnei1-3/+20
2018-04-29gl_shader_decompiler: Implement MOV32_IMM instruction.bunnei1-2/+2
2018-04-27general: Convert assertion macros over to be fmt-compatibleLioncash1-2/+2
2018-04-26gl_shader_decompiler: Boilerplate for handling integer instructions.bunnei1-1/+9
2018-04-25GPU: Partially implemented the Fermi2D surface copy operation.Subv2-0/+59
2018-04-25Shaders: Added bit decodings for the I2I instruction.Subv1-0/+6
2018-04-25GPU: Added surface copy registers to Fermi2DSubv1-1/+57
2018-04-25GPU: Added boilerplate code for the Fermi2D engineSubv2-2/+33
2018-04-25GPU: Reduce the number of registers of Maxwell3D to 0xE00.Subv2-5/+5
2018-04-25GPU: Move the Maxwell3D macro uploading code to the inside of the Maxwell3D processor.Subv2-8/+23
2018-04-25video-core: Move logging macros over to new fmt-capable onesLioncash1-2/+2
2018-04-25Shaders: Added decodings for the FSET instructions.Subv1-8/+29
2018-04-24memory_manager: Make GpuToCpuAddress return an optional.bunnei1-10/+11
2018-04-24memory_manager: Use GPUVAdddr, not PAddr, for GPU addresses.bunnei1-6/+5
2018-04-24GPU: Added asserts to our code for handling the QUERY_GET GPU command.Subv2-2/+53
2018-04-23GPU: Support multiple enabled vertex arrays.Subv1-0/+5
2018-04-21shader_bytecode: Add several more instruction decodings.bunnei1-5/+52
2018-04-21shader_bytecode: Decode instructions based on bit strings.bunnei1-185/+172
2018-04-21ShaderGen: Implemented predicated instruction execution.Subv1-1/+5
2018-04-21ShaderGen: Implemented the fsetp instruction.Subv1-3/+40
2018-04-20ShaderGen: Register id 255 is special and is hardcoded to return 0 (SR_ZERO).Subv1-0/+3
2018-04-19ShaderGen: Implemented the fmul32i shader instruction.Subv1-3/+14
2018-04-18gl_shader_gen: Support vertical/horizontal viewport flipping. (#347)bunnei1-1/+10
2018-04-18GPU: Pitch textures are now supported, don't assert when encountering them.Subv1-2/+3
2018-04-18maxwell3d: Allow Texture2DNoMipmap as Texture2D.bunnei1-1/+2
2018-04-18shader_bytecode: Make ctor's constexpr and explicit.bunnei1-7/+7
2018-04-18renderer_opengl: Implement BlendEquation and BlendFunc.bunnei2-4/+48
2018-04-17gl_shader_decompiler: Implement FMUL/FADD/FFMA immediate instructions.bunnei1-0/+14
2018-04-17gl_shader_decompiler: Add support for TEXS instruction.bunnei1-5/+14
2018-04-17gl_rasterizer: Implement indexed vertex mode.bunnei2-2/+46
2018-04-15GPU: Added a function to determine whether a shader stage is enabled or not.Subv2-0/+24
2018-04-15shaders: Add NumTextureSamplers const, remove unused #pragma.bunnei1-2/+0
2018-04-14shaders: Address PR review feedback.bunnei1-1/+1
2018-04-14shaders: Fix GCC and clang build issues.bunnei1-3/+3
2018-04-14gl_shader_decompiler: Implement negate, abs, etc. and lots of cleanup.bunnei1-20/+39
2018-04-14shader_bytecode: Add FSETP and KIL to GetInfo.bunnei1-0/+3
2018-04-14shader_bytecode: Add SubOp decoding.bunnei1-0/+10
2018-04-14maxwell_3d: Make memory_manager public.bunnei1-2/+1
2018-04-14maxwell_3d: Fix shader_config decodings.bunnei1-6/+3
2018-04-14shader_bytecode: Add initial module for shader decoding.bunnei1-0/+297
2018-04-07GPU: Assert when finding a texture with a format type other than UNORM.Subv1-0/+2
2018-04-01GPU: Use the MacroInterpreter class to execute the GPU macros instead of HLEing them.Subv2-121/+13
2018-04-01GPU: Implemented a gpu macro interpreter.Subv2-0/+8
2018-03-27gl_rasterizer: Add a SyncViewport method.bunnei1-0/+10
2018-03-27gl_rasterizer: Normalize vertex array data as appropriate.bunnei1-0/+4
2018-03-27maxwell_3d: Use names that match envytools for VertexType.bunnei1-8/+8
2018-03-27maxwell_3d: Add VertexAttribute struct and cleanup.bunnei1-121/+160
2018-03-27Maxwell3D: Call AccelerateDrawBatch on DrawArrays.bunnei1-1/+8
2018-03-27gl_rasterizer: Implement AnalyzeVertexArray.bunnei1-0/+35
2018-03-27maxwell: Add RenderTargetFormat enum.bunnei1-3/+4
2018-03-26GPU: Load the sampler info (TSC) when retrieving active textures.Subv2-21/+67
2018-03-25GPU: Make the debug_context variable a member of the frontend instead of a global.Subv1-11/+13
2018-03-24GPU: Added a function to retrieve the active textures for a shader stage.Subv2-50/+59
2018-03-24GPU: Implement the Incoming/FinishedPrimitiveBatch debug breakpoints.Subv1-0/+7
2018-03-24GPU: Implement the MaxwellCommandLoaded/Processed debug breakpoints.Subv1-0/+10
2018-03-24GPU: Added a method to unswizzle a texture without decoding it.Subv1-1/+1
2018-03-24GPU: Preliminary work for texture decoding.Subv1-0/+45
2018-03-24GPU: Added viewport registers to Maxwell3D's reg structure.Subv1-1/+18
2018-03-23maxwell_3d: Add some format decodings and string helper functions.bunnei1-3/+107
2018-03-21GPU: Added vertex attribute format registers.Subv1-1/+14
2018-03-21GPU: Added registers for the number of vertices to render.Subv1-2/+13
2018-03-19GPU: Added Z buffer registers to Maxwell3D's reg structure.Subv1-1/+17
2018-03-19GPU: Added the render target (RT) registers to Maxwell3D's reg structure.Subv1-1/+32
2018-03-19Clang FixesN00byKing1-1/+2
2018-03-19Clean Warnings (?)N00byKing1-1/+1
2018-03-19GPU: Added the TSC registers to the Maxwell3D register structure.Subv1-1/+15
2018-03-19GPU: Added the TIC registers to the Maxwell3D register structure.Subv1-1/+16
2018-03-19GPU: Implement macro 0xE1A BindTextureInfoBuffer in HLE.Subv2-1/+29
2018-03-18GPU: Implement the BindStorageBuffer macro method in HLE.Subv2-1/+36
2018-03-18GPU: Handle writes to the CB_DATA method.Subv2-0/+39
2018-03-18GPU: Store uploaded GPU macros and keep track of the number of method parameters.Subv2-11/+24
2018-03-18GPU: Macros are specific to the Maxwell3D engine, so handle them internally.Subv6-31/+55
2018-03-18GPU: Renamed ShaderType to ShaderStage as that is less confusing.Subv2-19/+19
2018-03-18GPU: Store shader constbuffer bindings in the GPU state.Subv2-5/+61
2018-03-18GPU: Corrected some register offsets and removed superfluous macro registers.Subv1-9/+3
2018-03-18GPU: Make the SetShader macro call do the same as the real macro's code.Subv2-3/+44
2018-03-17GPU: Corrected the parameter documentation for the SetShader macro call.Subv2-11/+12
2018-03-17GPU: Handle the SetShader method call (0xE24) and store the shader config.Subv2-4/+38
2018-03-17GPU: Added the vertex array registers.Subv1-2/+33
2018-03-17GPU: Process command mode 5 (IncreaseOnce) differently from other commands.Subv6-1/+56
2018-03-17GPU: Assert that we get a 0 CODE_ADDRESS register in the 3D engine.Subv1-0/+8
2018-03-17GPU: Added Maxwell registers for Shader Program control.Subv1-2/+55
2018-03-05GPU: Intercept writes to the VERTEX_END_GL register.Subv2-1/+18
2018-02-14maxwell_3d: Make constructor explicitLioncash1-1/+1
2018-02-12GPU: Partially implemented the QUERY_* registers in the Maxwell3D engine.Subv2-2/+94
2018-02-12Make a GPU class in VideoCore to contain the GPU state.Subv6-18/+24
2018-02-12GPU: Added a command processor to decode the GPU pushbuffers and forward the commands to their respective engines.Subv6-0/+99