aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS
diff options
context:
space:
mode:
authorThog <me@thog.eu>2020-01-09 19:12:47 +0100
committerAc_K <Acoustik666@gmail.com>2020-01-09 19:12:47 +0100
commitab29521faaed0e1585f287abfebbeabe885b56a7 (patch)
tree4f3f7d70f81722fa7f14fb82c154a2eb31c300a2 /Ryujinx.HLE/HOS
parent80707f9311db8a402730d48f69953bbbdbcf8855 (diff)
Fix R5G6B5 in SurfaceFlinger (#863)
Also fix B5G6R5Unorm wrong definition in Ryujinx.Graphics.OpenGL.
Diffstat (limited to 'Ryujinx.HLE/HOS')
-rw-r--r--Ryujinx.HLE/HOS/Services/SurfaceFlinger/NvFlinger.cs4
1 files changed, 2 insertions, 2 deletions
diff --git a/Ryujinx.HLE/HOS/Services/SurfaceFlinger/NvFlinger.cs b/Ryujinx.HLE/HOS/Services/SurfaceFlinger/NvFlinger.cs
index fa798177..e70666ed 100644
--- a/Ryujinx.HLE/HOS/Services/SurfaceFlinger/NvFlinger.cs
+++ b/Ryujinx.HLE/HOS/Services/SurfaceFlinger/NvFlinger.cs
@@ -264,7 +264,7 @@ namespace Ryujinx.HLE.HOS.Services.SurfaceFlinger
case ColorFormat.X8B8G8R8:
return Format.R8G8B8A8Unorm;
case ColorFormat.R5G6B5:
- return Format.R5G6B5Unorm;
+ return Format.B5G6R5Unorm;
case ColorFormat.A8R8G8B8:
return Format.B8G8R8A8Unorm;
case ColorFormat.A4B4G4R4:
@@ -298,7 +298,7 @@ namespace Ryujinx.HLE.HOS.Services.SurfaceFlinger
Format format = ConvertColorFormat(_bufferQueue[slot].Data.Buffer.Surfaces[0].ColorFormat);
int bytesPerPixel =
- format == Format.R5G6B5Unorm ||
+ format == Format.B5G6R5Unorm ||
format == Format.R4G4B4A4Unorm ? 2 : 4;
int gobBlocksInY = 1 << _bufferQueue[slot].Data.Buffer.Surfaces[0].BlockHeightLog2;