forked from Mirror/Ryujinx
Address PR feedback
Add TODO comment for GL_EXT_polygon_offset_clamp
This commit is contained in:
parent
383452f5cf
commit
18814d44b2
16 changed files with 104 additions and 101 deletions
|
@ -38,6 +38,7 @@ namespace Ryujinx.Common
|
|||
using (var mem = new MemoryStream())
|
||||
{
|
||||
stream.CopyTo(mem);
|
||||
|
||||
return mem.ToArray();
|
||||
}
|
||||
}
|
||||
|
@ -53,6 +54,7 @@ namespace Ryujinx.Common
|
|||
using (var mem = new MemoryStream())
|
||||
{
|
||||
await stream.CopyToAsync(mem);
|
||||
|
||||
return mem.ToArray();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@ namespace Ryujinx.Graphics.GAL
|
|||
{
|
||||
public struct VertexAttribDescriptor
|
||||
{
|
||||
public int BufferIndex { get; }
|
||||
public int Offset { get; }
|
||||
public int BufferIndex { get; }
|
||||
public int Offset { get; }
|
||||
|
||||
public Format Format { get; }
|
||||
|
||||
|
|
|
@ -30,8 +30,8 @@ namespace Ryujinx.Graphics.Gpu.Shader
|
|||
/// <param name="code">Maxwell binary shader code</param>
|
||||
public CachedShader(ShaderProgram program, int[] code)
|
||||
{
|
||||
Program = program;
|
||||
Code = code;
|
||||
Program = program;
|
||||
Code = code;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -35,22 +35,22 @@ namespace Ryujinx.Graphics.Gpu.State
|
|||
{
|
||||
return type switch
|
||||
{
|
||||
PrimitiveType.Points => PrimitiveTopology.Points,
|
||||
PrimitiveType.Lines => PrimitiveTopology.Lines,
|
||||
PrimitiveType.LineLoop => PrimitiveTopology.LineLoop,
|
||||
PrimitiveType.LineStrip => PrimitiveTopology.LineStrip,
|
||||
PrimitiveType.Triangles => PrimitiveTopology.Triangles,
|
||||
PrimitiveType.TriangleStrip => PrimitiveTopology.TriangleStrip,
|
||||
PrimitiveType.TriangleFan => PrimitiveTopology.TriangleFan,
|
||||
PrimitiveType.Quads => PrimitiveTopology.Quads,
|
||||
PrimitiveType.QuadStrip => PrimitiveTopology.QuadStrip,
|
||||
PrimitiveType.Polygon => PrimitiveTopology.Polygon,
|
||||
PrimitiveType.LinesAdjacency => PrimitiveTopology.LinesAdjacency,
|
||||
PrimitiveType.LineStripAdjacency => PrimitiveTopology.LineStripAdjacency,
|
||||
PrimitiveType.TrianglesAdjacency => PrimitiveTopology.TrianglesAdjacency,
|
||||
PrimitiveType.Points => PrimitiveTopology.Points,
|
||||
PrimitiveType.Lines => PrimitiveTopology.Lines,
|
||||
PrimitiveType.LineLoop => PrimitiveTopology.LineLoop,
|
||||
PrimitiveType.LineStrip => PrimitiveTopology.LineStrip,
|
||||
PrimitiveType.Triangles => PrimitiveTopology.Triangles,
|
||||
PrimitiveType.TriangleStrip => PrimitiveTopology.TriangleStrip,
|
||||
PrimitiveType.TriangleFan => PrimitiveTopology.TriangleFan,
|
||||
PrimitiveType.Quads => PrimitiveTopology.Quads,
|
||||
PrimitiveType.QuadStrip => PrimitiveTopology.QuadStrip,
|
||||
PrimitiveType.Polygon => PrimitiveTopology.Polygon,
|
||||
PrimitiveType.LinesAdjacency => PrimitiveTopology.LinesAdjacency,
|
||||
PrimitiveType.LineStripAdjacency => PrimitiveTopology.LineStripAdjacency,
|
||||
PrimitiveType.TrianglesAdjacency => PrimitiveTopology.TrianglesAdjacency,
|
||||
PrimitiveType.TriangleStripAdjacency => PrimitiveTopology.TriangleStripAdjacency,
|
||||
PrimitiveType.Patches => PrimitiveTopology.Patches,
|
||||
_ => PrimitiveTopology.Triangles
|
||||
PrimitiveType.Patches => PrimitiveTopology.Patches,
|
||||
_ => PrimitiveTopology.Triangles
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -81,67 +81,67 @@ namespace Ryujinx.Graphics.Gpu.State
|
|||
{
|
||||
return format switch
|
||||
{
|
||||
RtFormat.D32Float => new FormatInfo(Format.D32Float, 1, 1, 4),
|
||||
RtFormat.D16Unorm => new FormatInfo(Format.D16Unorm, 1, 1, 2),
|
||||
RtFormat.D24UnormS8Uint => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.D24Unorm => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.S8UintD24Unorm => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.S8Uint => new FormatInfo(Format.S8Uint, 1, 1, 1),
|
||||
RtFormat.D32FloatS8Uint => new FormatInfo(Format.D32FloatS8Uint, 1, 1, 8),
|
||||
RtFormat.D32Float => new FormatInfo(Format.D32Float, 1, 1, 4),
|
||||
RtFormat.D16Unorm => new FormatInfo(Format.D16Unorm, 1, 1, 2),
|
||||
RtFormat.D24UnormS8Uint => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.D24Unorm => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.S8UintD24Unorm => new FormatInfo(Format.D24UnormS8Uint, 1, 1, 4),
|
||||
RtFormat.S8Uint => new FormatInfo(Format.S8Uint, 1, 1, 1),
|
||||
RtFormat.D32FloatS8Uint => new FormatInfo(Format.D32FloatS8Uint, 1, 1, 8),
|
||||
RtFormat.R32G32B32A32Float => new FormatInfo(Format.R32G32B32A32Float, 1, 1, 16),
|
||||
RtFormat.R32G32B32A32Sint => new FormatInfo(Format.R32G32B32A32Sint, 1, 1, 16),
|
||||
RtFormat.R32G32B32A32Uint => new FormatInfo(Format.R32G32B32A32Uint, 1, 1, 16),
|
||||
RtFormat.R32G32B32A32Sint => new FormatInfo(Format.R32G32B32A32Sint, 1, 1, 16),
|
||||
RtFormat.R32G32B32A32Uint => new FormatInfo(Format.R32G32B32A32Uint, 1, 1, 16),
|
||||
RtFormat.R32G32B32X32Float => new FormatInfo(Format.R32G32B32A32Float, 1, 1, 16),
|
||||
RtFormat.R32G32B32X32Sint => new FormatInfo(Format.R32G32B32A32Sint, 1, 1, 16),
|
||||
RtFormat.R32G32B32X32Uint => new FormatInfo(Format.R32G32B32A32Uint, 1, 1, 16),
|
||||
RtFormat.R32G32B32X32Sint => new FormatInfo(Format.R32G32B32A32Sint, 1, 1, 16),
|
||||
RtFormat.R32G32B32X32Uint => new FormatInfo(Format.R32G32B32A32Uint, 1, 1, 16),
|
||||
RtFormat.R16G16B16X16Unorm => new FormatInfo(Format.R16G16B16A16Unorm, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Snorm => new FormatInfo(Format.R16G16B16A16Snorm, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Sint => new FormatInfo(Format.R16G16B16A16Sint, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Uint => new FormatInfo(Format.R16G16B16A16Uint, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Sint => new FormatInfo(Format.R16G16B16A16Sint, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Uint => new FormatInfo(Format.R16G16B16A16Uint, 1, 1, 8),
|
||||
RtFormat.R16G16B16A16Float => new FormatInfo(Format.R16G16B16A16Float, 1, 1, 8),
|
||||
RtFormat.R32G32Float => new FormatInfo(Format.R32G32Float, 1, 1, 8),
|
||||
RtFormat.R32G32Sint => new FormatInfo(Format.R32G32Sint, 1, 1, 8),
|
||||
RtFormat.R32G32Uint => new FormatInfo(Format.R32G32Uint, 1, 1, 8),
|
||||
RtFormat.R32G32Float => new FormatInfo(Format.R32G32Float, 1, 1, 8),
|
||||
RtFormat.R32G32Sint => new FormatInfo(Format.R32G32Sint, 1, 1, 8),
|
||||
RtFormat.R32G32Uint => new FormatInfo(Format.R32G32Uint, 1, 1, 8),
|
||||
RtFormat.R16G16B16X16Float => new FormatInfo(Format.R16G16B16A16Float, 1, 1, 8),
|
||||
RtFormat.B8G8R8A8Unorm => new FormatInfo(Format.B8G8R8A8Unorm, 1, 1, 4),
|
||||
RtFormat.B8G8R8A8Srgb => new FormatInfo(Format.B8G8R8A8Srgb, 1, 1, 4),
|
||||
RtFormat.R10G10B10A2Unorm => new FormatInfo(Format.R10G10B10A2Unorm, 1, 1, 4),
|
||||
RtFormat.R10G10B10A2Uint => new FormatInfo(Format.R10G10B10A2Uint, 1, 1, 4),
|
||||
RtFormat.R8G8B8A8Unorm => new FormatInfo(Format.R8G8B8A8Unorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8A8Srgb => new FormatInfo(Format.R8G8B8A8Srgb, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Snorm => new FormatInfo(Format.R8G8B8A8Snorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Sint => new FormatInfo(Format.R8G8B8A8Sint, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Uint => new FormatInfo(Format.R8G8B8A8Uint, 1, 1, 4),
|
||||
RtFormat.R16G16Unorm => new FormatInfo(Format.R16G16Unorm, 1, 1, 4),
|
||||
RtFormat.R16G16Snorm => new FormatInfo(Format.R16G16Snorm, 1, 1, 4),
|
||||
RtFormat.R16G16Sint => new FormatInfo(Format.R16G16Sint, 1, 1, 4),
|
||||
RtFormat.R16G16Uint => new FormatInfo(Format.R16G16Uint, 1, 1, 4),
|
||||
RtFormat.R16G16Float => new FormatInfo(Format.R16G16Float, 1, 1, 4),
|
||||
RtFormat.R11G11B10Float => new FormatInfo(Format.R11G11B10Float, 1, 1, 4),
|
||||
RtFormat.R32Sint => new FormatInfo(Format.R32Sint, 1, 1, 4),
|
||||
RtFormat.R32Uint => new FormatInfo(Format.R32Uint, 1, 1, 4),
|
||||
RtFormat.R32Float => new FormatInfo(Format.R32Float, 1, 1, 4),
|
||||
RtFormat.B8G8R8X8Unorm => new FormatInfo(Format.B8G8R8A8Unorm, 1, 1, 4),
|
||||
RtFormat.B8G8R8X8Srgb => new FormatInfo(Format.B8G8R8A8Srgb, 1, 1, 4),
|
||||
RtFormat.B5G6R5Unorm => new FormatInfo(Format.B5G6R5Unorm, 1, 1, 2),
|
||||
RtFormat.B5G5R5A1Unorm => new FormatInfo(Format.B5G5R5A1Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8Unorm => new FormatInfo(Format.R8G8Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8Snorm => new FormatInfo(Format.R8G8Snorm, 1, 1, 2),
|
||||
RtFormat.R8G8Sint => new FormatInfo(Format.R8G8Sint, 1, 1, 2),
|
||||
RtFormat.R8G8Uint => new FormatInfo(Format.R8G8Uint, 1, 1, 2),
|
||||
RtFormat.R16Unorm => new FormatInfo(Format.R16Unorm, 1, 1, 2),
|
||||
RtFormat.R16Snorm => new FormatInfo(Format.R16Snorm, 1, 1, 2),
|
||||
RtFormat.R16Sint => new FormatInfo(Format.R16Sint, 1, 1, 2),
|
||||
RtFormat.R16Uint => new FormatInfo(Format.R16Uint, 1, 1, 2),
|
||||
RtFormat.R16Float => new FormatInfo(Format.R16Float, 1, 1, 2),
|
||||
RtFormat.R8Unorm => new FormatInfo(Format.R8Unorm, 1, 1, 1),
|
||||
RtFormat.R8Snorm => new FormatInfo(Format.R8Snorm, 1, 1, 1),
|
||||
RtFormat.R8Sint => new FormatInfo(Format.R8Sint, 1, 1, 1),
|
||||
RtFormat.R8Uint => new FormatInfo(Format.R8Uint, 1, 1, 1),
|
||||
RtFormat.B5G5R5X1Unorm => new FormatInfo(Format.B5G5R5X1Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8B8X8Unorm => new FormatInfo(Format.R8G8B8A8Unorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Srgb => new FormatInfo(Format.R8G8B8A8Srgb, 1, 1, 4),
|
||||
_ => FormatInfo.Default
|
||||
RtFormat.B8G8R8A8Unorm => new FormatInfo(Format.B8G8R8A8Unorm, 1, 1, 4),
|
||||
RtFormat.B8G8R8A8Srgb => new FormatInfo(Format.B8G8R8A8Srgb, 1, 1, 4),
|
||||
RtFormat.R10G10B10A2Unorm => new FormatInfo(Format.R10G10B10A2Unorm, 1, 1, 4),
|
||||
RtFormat.R10G10B10A2Uint => new FormatInfo(Format.R10G10B10A2Uint, 1, 1, 4),
|
||||
RtFormat.R8G8B8A8Unorm => new FormatInfo(Format.R8G8B8A8Unorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8A8Srgb => new FormatInfo(Format.R8G8B8A8Srgb, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Snorm => new FormatInfo(Format.R8G8B8A8Snorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Sint => new FormatInfo(Format.R8G8B8A8Sint, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Uint => new FormatInfo(Format.R8G8B8A8Uint, 1, 1, 4),
|
||||
RtFormat.R16G16Unorm => new FormatInfo(Format.R16G16Unorm, 1, 1, 4),
|
||||
RtFormat.R16G16Snorm => new FormatInfo(Format.R16G16Snorm, 1, 1, 4),
|
||||
RtFormat.R16G16Sint => new FormatInfo(Format.R16G16Sint, 1, 1, 4),
|
||||
RtFormat.R16G16Uint => new FormatInfo(Format.R16G16Uint, 1, 1, 4),
|
||||
RtFormat.R16G16Float => new FormatInfo(Format.R16G16Float, 1, 1, 4),
|
||||
RtFormat.R11G11B10Float => new FormatInfo(Format.R11G11B10Float, 1, 1, 4),
|
||||
RtFormat.R32Sint => new FormatInfo(Format.R32Sint, 1, 1, 4),
|
||||
RtFormat.R32Uint => new FormatInfo(Format.R32Uint, 1, 1, 4),
|
||||
RtFormat.R32Float => new FormatInfo(Format.R32Float, 1, 1, 4),
|
||||
RtFormat.B8G8R8X8Unorm => new FormatInfo(Format.B8G8R8A8Unorm, 1, 1, 4),
|
||||
RtFormat.B8G8R8X8Srgb => new FormatInfo(Format.B8G8R8A8Srgb, 1, 1, 4),
|
||||
RtFormat.B5G6R5Unorm => new FormatInfo(Format.B5G6R5Unorm, 1, 1, 2),
|
||||
RtFormat.B5G5R5A1Unorm => new FormatInfo(Format.B5G5R5A1Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8Unorm => new FormatInfo(Format.R8G8Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8Snorm => new FormatInfo(Format.R8G8Snorm, 1, 1, 2),
|
||||
RtFormat.R8G8Sint => new FormatInfo(Format.R8G8Sint, 1, 1, 2),
|
||||
RtFormat.R8G8Uint => new FormatInfo(Format.R8G8Uint, 1, 1, 2),
|
||||
RtFormat.R16Unorm => new FormatInfo(Format.R16Unorm, 1, 1, 2),
|
||||
RtFormat.R16Snorm => new FormatInfo(Format.R16Snorm, 1, 1, 2),
|
||||
RtFormat.R16Sint => new FormatInfo(Format.R16Sint, 1, 1, 2),
|
||||
RtFormat.R16Uint => new FormatInfo(Format.R16Uint, 1, 1, 2),
|
||||
RtFormat.R16Float => new FormatInfo(Format.R16Float, 1, 1, 2),
|
||||
RtFormat.R8Unorm => new FormatInfo(Format.R8Unorm, 1, 1, 1),
|
||||
RtFormat.R8Snorm => new FormatInfo(Format.R8Snorm, 1, 1, 1),
|
||||
RtFormat.R8Sint => new FormatInfo(Format.R8Sint, 1, 1, 1),
|
||||
RtFormat.R8Uint => new FormatInfo(Format.R8Uint, 1, 1, 1),
|
||||
RtFormat.B5G5R5X1Unorm => new FormatInfo(Format.B5G5R5X1Unorm, 1, 1, 2),
|
||||
RtFormat.R8G8B8X8Unorm => new FormatInfo(Format.R8G8B8A8Unorm, 1, 1, 4),
|
||||
RtFormat.R8G8B8X8Srgb => new FormatInfo(Format.R8G8B8A8Srgb, 1, 1, 4),
|
||||
_ => FormatInfo.Default
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,14 +35,14 @@ namespace Ryujinx.Graphics.VDec
|
|||
|
||||
switch (method)
|
||||
{
|
||||
case VideoDecoderMeth.SetVideoCodec: SetVideoCodec(arguments); break;
|
||||
case VideoDecoderMeth.Execute: Execute(gpu); break;
|
||||
case VideoDecoderMeth.SetDecoderCtxAddr: SetDecoderCtxAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetFrameDataAddr: SetFrameDataAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxCurrLumaAddr: SetVpxCurrLumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef0LumaAddr: SetVpxRef0LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef1LumaAddr: SetVpxRef1LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef2LumaAddr: SetVpxRef2LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVideoCodec: SetVideoCodec(arguments); break;
|
||||
case VideoDecoderMeth.Execute: Execute(gpu); break;
|
||||
case VideoDecoderMeth.SetDecoderCtxAddr: SetDecoderCtxAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetFrameDataAddr: SetFrameDataAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxCurrLumaAddr: SetVpxCurrLumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef0LumaAddr: SetVpxRef0LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef1LumaAddr: SetVpxRef1LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef2LumaAddr: SetVpxRef2LumaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxCurrChromaAddr: SetVpxCurrChromaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef0ChromaAddr: SetVpxRef0ChromaAddr(arguments); break;
|
||||
case VideoDecoderMeth.SetVpxRef1ChromaAddr: SetVpxRef1ChromaAddr(arguments); break;
|
||||
|
|
|
@ -23,9 +23,9 @@ namespace Ryujinx.Graphics.Vic
|
|||
|
||||
switch (method)
|
||||
{
|
||||
case VideoImageComposerMeth.Execute: Execute(gpu); break;
|
||||
case VideoImageComposerMeth.SetConfigStructOffset: SetConfigStructOffset(arguments); break;
|
||||
case VideoImageComposerMeth.SetOutputSurfaceLumaOffset: SetOutputSurfaceLumaOffset(arguments); break;
|
||||
case VideoImageComposerMeth.Execute: Execute(gpu); break;
|
||||
case VideoImageComposerMeth.SetConfigStructOffset: SetConfigStructOffset(arguments); break;
|
||||
case VideoImageComposerMeth.SetOutputSurfaceLumaOffset: SetOutputSurfaceLumaOffset(arguments); break;
|
||||
case VideoImageComposerMeth.SetOutputSurfaceChromaUOffset: SetOutputSurfaceChromaUOffset(arguments); break;
|
||||
case VideoImageComposerMeth.SetOutputSurfaceChromaVOffset: SetOutputSurfaceChromaVOffset(arguments); break;
|
||||
}
|
||||
|
|
|
@ -15,8 +15,8 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
public static bool SupportsAstcCompression => _supportsAstcCompression.Value;
|
||||
public static bool SupportsNonConstantTextureOffset => _isNvidiaDriver.Value;
|
||||
|
||||
public static int MaximumComputeSharedMemorySize => _maximumComputeSharedMemorySize.Value;
|
||||
public static int StorageBufferOffsetAlignment => _storageBufferOffsetAlignment.Value;
|
||||
public static int MaximumComputeSharedMemorySize => _maximumComputeSharedMemorySize.Value;
|
||||
public static int StorageBufferOffsetAlignment => _storageBufferOffsetAlignment.Value;
|
||||
|
||||
private static bool HasExtension(string name)
|
||||
{
|
||||
|
|
|
@ -471,6 +471,7 @@ namespace Ryujinx.Graphics.OpenGL
|
|||
}
|
||||
|
||||
GL.PolygonOffset(factor, units);
|
||||
// TODO: Enable when GL_EXT_polygon_offset_clamp is supported.
|
||||
// GL.PolygonOffsetClamp(factor, units, clamp);
|
||||
}
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ namespace Ryujinx.Graphics.Shader.Decoders
|
|||
|
||||
public OpCodeBranchIndir BrIndir { get; set; }
|
||||
|
||||
public List<OpCode> OpCodes { get; }
|
||||
public List<OpCode> OpCodes { get; }
|
||||
public List<OpCodePush> PushOpCodes { get; }
|
||||
|
||||
public Block(ulong address)
|
||||
|
|
|
@ -60,7 +60,7 @@ namespace Ryujinx.Graphics.Shader.Instructions
|
|||
|
||||
if (intType == IntegerType.U64)
|
||||
{
|
||||
// TODO: Warning. This instruction supports 64-bits integers, but it is not implemented.
|
||||
context.Config.PrintLog("Unimplemented 64-bits F2I.");
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -172,7 +172,7 @@ namespace Ryujinx.Graphics.Shader.Instructions
|
|||
|
||||
if (srcType == IntegerType.U64 || dstType == IntegerType.U64)
|
||||
{
|
||||
// TODO: Warning. This instruction doesn't support 64-bits integers.
|
||||
context.Config.PrintLog("Invalid I2I encoding.");
|
||||
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -53,10 +53,10 @@ namespace Ryujinx.Graphics.Shader.Instructions
|
|||
}
|
||||
else if (floatType == FPType.FP64)
|
||||
{
|
||||
// TODO.
|
||||
// TODO: Double floating-point type support.
|
||||
}
|
||||
|
||||
// TODO: Warn about invalid floating point type.
|
||||
context.Config.PrintLog($"Invalid floating point type: {floatType}.");
|
||||
|
||||
return ConstF(0);
|
||||
}
|
||||
|
|
|
@ -198,7 +198,7 @@ namespace Ryujinx.Graphics.Shader.Instructions
|
|||
|
||||
if (!(emit || cut))
|
||||
{
|
||||
// TODO: Warning.
|
||||
context.Config.PrintLog("Invalid OUT encoding.");
|
||||
}
|
||||
|
||||
if (emit)
|
||||
|
|
|
@ -9,7 +9,7 @@ namespace Ryujinx.Graphics.Shader.Translation
|
|||
public const int StorageDescSize = 4; // In words.
|
||||
public const int StorageMaxCount = 16;
|
||||
|
||||
public const int StorageDescsSize = StorageDescSize * StorageMaxCount;
|
||||
public const int StorageDescsSize = StorageDescSize * StorageMaxCount;
|
||||
|
||||
public static bool UsesGlobalMemory(Instruction inst)
|
||||
{
|
||||
|
|
|
@ -22,8 +22,6 @@ namespace Ryujinx.Graphics.Shader.Translation
|
|||
|
||||
if (cfg == null)
|
||||
{
|
||||
// TODO: Error.
|
||||
|
||||
return code;
|
||||
}
|
||||
|
||||
|
|
|
@ -12,11 +12,13 @@ namespace Ryujinx.HLE.HOS.Services.Nv.NvDrvServices.NvHostChannel
|
|||
{
|
||||
class NvHostChannelDeviceFile : NvDeviceFile
|
||||
{
|
||||
private uint _timeout;
|
||||
private uint _submitTimeout;
|
||||
private uint _timeslice;
|
||||
private GpuContext _gpu;
|
||||
private ARMeilleure.Memory.MemoryManager _memory;
|
||||
private uint _timeout;
|
||||
private uint _submitTimeout;
|
||||
private uint _timeslice;
|
||||
|
||||
private GpuContext _gpu;
|
||||
|
||||
private ARMeilleure.Memory.MemoryManager _memory;
|
||||
|
||||
public NvHostChannelDeviceFile(ServiceCtx context) : base(context)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue