Lioncash
dd1ee39426
maxwell_dma: Make FlushAndInvalidate's size parameter a u64
This prevents truncation warnings at the lambda's usage sites.
7 years ago
Lioncash
08e574eec4
maxwell_dma: Remove unused variables in HandleCopy()
These pointer variables are never used, so we can get rid of them.
7 years ago
bunnei
7e665c2721
GPU: Improved implementation of maxwell DMA (Subv).
7 years ago
bunnei
a5d853a9f8
GPU: Invalidate destination address of kepler_memory writes.
7 years ago
bunnei
6b333d862b
fermi_2d: Add support for more accurate surface copies.
7 years ago
ReinUsesLisp
41fb25349a
gl_shader_decompiler: Implement PBK and BRK
7 years ago
FernandoS27
fd9e2d0073
Implement 3D Textures
7 years ago
ReinUsesLisp
936c36a514
shader_bytecode: Add Control Code enum 0xf
Control Code 0xf means to unconditionally execute the instruction. This
value is passed to most BRA, EXIT and SYNC instructions (among others)
but this may not always be the case.
7 years ago
ReinUsesLisp
6312eec5ef
gl_shader_decompiler: Implement HSET2_R
7 years ago
ReinUsesLisp
4fc8ad67bf
gl_shader_decompiler: Implement HSETP2_R
7 years ago
ReinUsesLisp
3d65aa4caf
gl_shader_decompiler: Implement HFMA2 instructions
7 years ago
ReinUsesLisp
d93cdc2750
gl_shader_decompiler: Implement HADD2_IMM and HMUL2_IMM
7 years ago
ReinUsesLisp
d46e2a6e7a
gl_shader_decompiler: Implement non-immediate HADD2 and HMUL2 instructions
7 years ago
ReinUsesLisp
08d751d882
gl_shader_decompiler: Setup base for half float unpacking and setting
7 years ago
FernandoS27
e0ca938b22
Propagate depth and depth_block on modules using decoders
7 years ago
ReinUsesLisp
17290a4416
gl_shader_decompiler: Implement VMAD
7 years ago
FernandoS27
5f4ee6f0c8
Add memory Layout to Render Targets and Depth Buffers
7 years ago
FernandoS27
af653906d0
Fixed block height settings for RenderTargets and Depth Buffers, and added block width and block depth
7 years ago
FernandoS27
30ff42b8cc
Assert Scissor tests
7 years ago
ReinUsesLisp
ee4d538850
gl_shader_decompiler: Implement geometry shaders
7 years ago
bunnei
9aec85d39c
fermi_2d: Implement simple copies with AccelerateSurfaceCopy.
7 years ago
ReinUsesLisp
3e2380327a
gl_rasterizer: Implement quads topology
7 years ago
ReinUsesLisp
e3e51d3ddb
video_core: Implement point_size and add point state sync
7 years ago
ReinUsesLisp
b8f1506aa5
gl_state: Pack sampler bindings into a single ARB_multi_bind
7 years ago
ReinUsesLisp
ab65fde9f4
video_core: Add asserts for CS, TFB and alpha testing
Add asserts for compute shader dispatching, transform feedback being
enabled and alpha testing. These have in common that they'll probably break
rendering without logging.
7 years ago
Lioncash
a8f5fd787f
shader_bytecode: Lay out the Ipa-related enums better
This is more consistent with the surrounding enums.
7 years ago
Lioncash
272517cf7e
shader_bytecode: Make operator== and operator!= of IpaMode const qualified
These don't affect the state of the struct and can be const member
functions.
7 years ago
FernandoS27
e4bb759c4b
Implemented I2I.CC on the NEU control code, used by SMO
7 years ago
FernandoS27
e2ac8fb36d
Implemented CSETP
7 years ago
FernandoS27
aac77bbd18
Implemented Control Codes
7 years ago
FernandoS27
55a4756766
Added texture misc modes to texture instructions
7 years ago
Subv
c878a819d7
Shaders: Implemented multiple-word loads and stores to and from attribute memory.
This seems to be an optimization performed by nouveau.
7 years ago
fearlessTobi
63c2e32e20
Port #4182 from Citra: "Prefix all size_t with std::"
7 years ago
Subv
bb5eb4f20a
GPU: Basic implementation of the Kepler Inline Memory engine (p2mf).
This engine writes data from a FIFO register into the configured address.
7 years ago
FernandoS27
a99d9db32f
Implemented Texture Processing Modes
7 years ago
FernandoS27
3f0922715a
Implemented encodings for LEA and PSET
7 years ago
FernandoS27
2b48cfd44b
Replace old FragmentHeader for the new Header
7 years ago
FernandoS27
e926757c8f
Implemented (Partialy) Shader Header
7 years ago
Markus Wick
c560043581
rasterizer: Drop unused handler.
This virtual function is called in a very hot spot, and it does nothing.
If this kind of feature is required, please be more specific and add callbacks
in the switch statement within Maxwell3D::WriteReg. There is no point in having
another switch statement within the rasterizer.
7 years ago
bunnei
49b15af054
gl_rasterizer: Implement multiple color attachments.
7 years ago
FernandoS27
00131e752d
Implemented TMML
7 years ago
FernandoS27
073a21ac0b
Implemented TXQ dimension query type, used by SMO.
7 years ago
FernandoS27
82a313a14c
Change name of TEXQ to TXQ, in order to match NVIDIA's naming
7 years ago
Subv
fdb199290b
GPU/DMA: Partially implemented the 'enable_2d' bit in the DMA engine.
When not set, this tells the GPU to only use the X size when performing a DMA copy.
This is only implemented for linear->linear and tiled->tiled copies. Conversion copies still retain the assert.
This bit is unset by some games for various purposes, and by nouveau when copying the vertex buffers.
7 years ago
bunnei
fdd5c97a14
maxwell_3d: Remove assert that no longer applies.
7 years ago
FernandoS27
e63b229f4a
Implemented IPA Properly
7 years ago
Markus Wick
d3ad9469a1
gl_rasterizer: Implement a VAO cache.
This patch caches VAO objects instead of re-emiting all pointers per draw call.
Configuring this pointers is known as a fast task, but it yields too many GL
calls. So for better performance, just bind the VAO instead of 16 pointers.
7 years ago
David Marcec
60754b4728
Removed saturate assert
Unneeded as we already implement it
7 years ago
David Marcec
2edab4e840
Removed saturate assert
Saturate already implemented
7 years ago
David Marcec
6f8ed9508d
Added FMUL asserts
7 years ago