Fernando Sahmkow
16adc735a5
Correct XMAD mode, psl and high_b on different encodings.
7 years ago
Lioncash
f9ee0dc7ee
video_core/engines: Remove unnecessary includes
Removes a few unnecessary dependencies on core-related machinery, such
as the core.h and memory.h, which reduces the amount of rebuilding
necessary if those files change.
This also uncovered some indirect dependencies within other source
files. This also fixes those.
7 years ago
ReinUsesLisp
5ca63d0675
shader/decode: Remove extras from MetaTexture
7 years ago
ReinUsesLisp
48e6f77c03
shader/decode: Split memory and texture instructions decoding
7 years ago
Fernando Sahmkow
10682ad7e0
shader_decompiler: Improve Accuracy of Attribute Interpolation.
7 years ago
Fernando Sahmkow
f5ec165e8c
Corrected F2I None mode to RoundEven.
7 years ago
Mat M
a568cd805b
Update src/video_core/engines/shader_bytecode.h
Co-Authored-By: FernandoS27 <fsahmkow27@gmail.com>
7 years ago
Fernando Sahmkow
0306c50339
Fix TXQ not using the component mask.
7 years ago
ReinUsesLisp
9feb68085d
shader_bytecode: Rename BytesN enums to BitsN
7 years ago
ReinUsesLisp
477d616f7d
shader_ir: Unify constant buffer offset values
Constant buffer values on the shader IR were using different offsets if
the access direct or indirect. cbuf34 has a non-multiplied offset while
cbuf36 does. On shader decoding this commit multiplies it by four on
cbuf34 queries.
7 years ago
ReinUsesLisp
3b84e04af1
shader_decode: Implement LDG and basic cbuf tracking
7 years ago
ReinUsesLisp
a1b845b651
shader_decode: Implement VMAD and VSETP
7 years ago
ReinUsesLisp
dd91650aaf
shader_decode: Implement HFMA2
7 years ago
ReinUsesLisp
4316eaf75c
shader_decode: Fixup clang-format
7 years ago
ReinUsesLisp
15a0e1481d
shader_ir: Initial implementation
7 years ago
ReinUsesLisp
294df41b86
shader_bytecode: Fixup encoding
7 years ago
ReinUsesLisp
aaa0e6c346
shader_bytecode: Fixup TEXS.F16 encoding
7 years ago
David Marcec
fdd649e2ef
Fixed uninitialized memory due to missing returns in canary
Functions which are suppose to crash on non canary builds usually don't return anything which lead to uninitialized memory being used.
7 years ago
ReinUsesLisp
ef061481c5
shader_bytecode: Fixup half float's operator B encoding
7 years ago
heapo
72599cc667
Implement postfactor multiplication/division for fmul instructions
7 years ago
ReinUsesLisp
59a8df1b14
gl_shader_decompiler: Implement TEXS.F16
7 years ago
Hexagon12
3135dbc29c
Added predicate comparison LessEqualWithNan ( #1736 )
* Added predicate comparison LessEqualWithNan
* oops
* Clang fix
7 years ago
ReinUsesLisp
b3853403b7
gl_shader_decompiler: Implement clip distances
7 years ago
ReinUsesLisp
8a5e6fce07
gl_shader_decompiler: Rename control codes to condition codes
7 years ago
ReinUsesLisp
642dfeda2a
gl_shader_decompiler: Implement BFI_IMM_R
7 years ago
ReinUsesLisp
d92afc7493
gl_shader_decompiler: Implement R2P_IMM
7 years ago
FernandoS27
5bb80ab009
Assert Control Codes Generation
7 years ago
Frederic L
7a5eda5914
global: Use std::optional instead of boost::optional ( #1578 )
* get rid of boost::optional
* Remove optional references
* Use std::reference_wrapper for optional references
* Fix clang format
* Fix clang format part 2
* Adressed feedback
* Fix clang format and MacOS build
7 years ago
FernandoS27
3aa8b644a9
Assert Control Flow Instructions using Control Codes
7 years ago
FernandoS27
ca142f35c0
Implemented LD_L and ST_L
7 years ago
FernandoS27
ed8ca608a0
Implement PointSize
7 years ago
ReinUsesLisp
7d6dca0d0a
gl_shader_decompiler: Implement VSETP
7 years ago
ReinUsesLisp
5dfb43531c
gl_shader_decompiler: Abstract VMAD into a video subset
7 years ago
FernandoS27
259da93567
Added Saturation to FMUL32I
7 years ago
FernandoS27
5c5b4e8e7d
Fixed FSETP and FSET
7 years ago
ReinUsesLisp
41fb25349a
gl_shader_decompiler: Implement PBK and BRK
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
ReinUsesLisp
17290a4416
gl_shader_decompiler: Implement VMAD
7 years ago
ReinUsesLisp
ee4d538850
gl_shader_decompiler: Implement geometry shaders
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