aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2018-04-10 16:50:32 -0300
committergdkchan <gab.dark.100@gmail.com>2018-04-10 16:50:32 -0300
commitfeb2680a6ce1512c08980ee55c1c8215b8b5c3e4 (patch)
treeb41d2c8558ece834b2c1c5c9afba0afe226e0553 /Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs
parente9cfdef0982824b673c60b362524408a263946df (diff)
[GPU] Add more shader instructions, add support for rgb565 textures
Diffstat (limited to 'Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs')
-rw-r--r--Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs14
1 files changed, 14 insertions, 0 deletions
diff --git a/Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs b/Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs
index 48c3b2ee..a234f7f7 100644
--- a/Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs
+++ b/Ryujinx.Graphics/Gal/Shader/ShaderOpCodeTable.cs
@@ -14,6 +14,12 @@ namespace Ryujinx.Graphics.Gal.Shader
#region Instructions
Set("111000110000xx", ShaderDecode.Exit);
+ Set("0100110010101x", ShaderDecode.F2f_C);
+ Set("0011100x10101x", ShaderDecode.F2f_I);
+ Set("0101110010101x", ShaderDecode.F2f_R);
+ Set("0100110010110x", ShaderDecode.F2i_C);
+ Set("0011100x10110x", ShaderDecode.F2i_I);
+ Set("0101110010110x", ShaderDecode.F2i_R);
Set("0100110001011x", ShaderDecode.Fadd_C);
Set("0011100x01011x", ShaderDecode.Fadd_I);
Set("0101110001011x", ShaderDecode.Fadd_R);
@@ -31,16 +37,24 @@ namespace Ryujinx.Graphics.Gal.Shader
Set("0011100x10111x", ShaderDecode.I2f_I);
Set("0101110010111x", ShaderDecode.I2f_R);
Set("11100000xxxxxx", ShaderDecode.Ipa);
+ Set("010010110110xx", ShaderDecode.Isetp_C);
+ Set("0011011x0110xx", ShaderDecode.Isetp_I);
+ Set("010110110110xx", ShaderDecode.Isetp_R);
Set("111000110011xx", ShaderDecode.Kil);
Set("1110111111011x", ShaderDecode.Ld_A);
Set("000001xxxxxxxx", ShaderDecode.Lop32i);
+ Set("0100110010011x", ShaderDecode.Mov_C);
+ Set("0011100x10011x", ShaderDecode.Mov_I);
+ Set("0101110010011x", ShaderDecode.Mov_R);
Set("000000010000xx", ShaderDecode.Mov32i);
Set("0101000010000x", ShaderDecode.Mufu);
Set("0100110000101x", ShaderDecode.Shr_C);
Set("0011100x00101x", ShaderDecode.Shr_I);
Set("0101110000101x", ShaderDecode.Shr_R);
Set("1110111111110x", ShaderDecode.St_A);
+ Set("1101111101001x", ShaderDecode.Texq);
Set("1101100xxxxxxx", ShaderDecode.Texs);
+ Set("1101101xxxxxxx", ShaderDecode.Tlds);
#endregion
}