SDL: Rename SDL_PIXELFORMAT_RGB888 and SDL_PIXELFORMAT_BGR888 to SDL_PIXELFORMAT_XRGB8888 and SDL_PIXELFORMAT_XBGR8888 for clarity

From e264bb517827a2c9cf16570fd89385c0f1f7f344 Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Sat, 1 Jul 2023 14:01:14 -0700
Subject: [PATCH] Rename SDL_PIXELFORMAT_RGB888 and SDL_PIXELFORMAT_BGR888 to
 SDL_PIXELFORMAT_XRGB8888 and SDL_PIXELFORMAT_XBGR8888 for clarity

Fixes https://github.com/libsdl-org/SDL/issues/7903
---
 build-scripts/SDL_migration.cocci             |  16 +-
 docs/README-ios.md                            |   2 +-
 include/SDL3/SDL_oldnames.h                   |   4 +
 include/SDL3/SDL_pixels.h                     |   2 -
 src/render/SDL_render.c                       |   4 +-
 src/render/direct3d/SDL_render_d3d.c          |   4 +-
 src/render/direct3d11/SDL_render_d3d11.c      |   6 +-
 src/render/direct3d12/SDL_render_d3d12.c      |   6 +-
 src/render/opengl/SDL_render_gl.c             |   8 +-
 src/render/opengles2/SDL_render_gles2.c       |  36 +-
 src/render/software/SDL_blendfillrect.c       |  16 +-
 src/render/software/SDL_blendline.c           |  44 +-
 src/render/software/SDL_blendpoint.c          |  16 +-
 src/render/software/SDL_draw.h                |  48 +--
 src/render/software/SDL_drawline.c            |   2 +-
 src/render/vitagxm/SDL_render_vita_gxm.c      |   4 +-
 src/test/SDL_test_common.c                    |   8 +-
 src/video/SDL_blit.h                          |   4 +-
 src/video/SDL_blit_N.c                        |  34 +-
 src/video/SDL_blit_auto.c                     | 392 +++++++++---------
 src/video/SDL_pixels.c                        |  10 +-
 src/video/SDL_yuv.c                           |  28 +-
 src/video/arm/pixman-arm-simd-asm.S           |   4 +-
 src/video/dummy/SDL_nullframebuffer.c         |   2 +-
 src/video/dummy/SDL_nullvideo.c               |   2 +-
 .../emscripten/SDL_emscriptenframebuffer.c    |   2 +-
 src/video/emscripten/SDL_emscriptenvideo.c    |   2 +-
 src/video/haiku/SDL_bmodes.cc                 |   2 +-
 .../offscreen/SDL_offscreenframebuffer.c      |   2 +-
 src/video/offscreen/SDL_offscreenvideo.c      |   2 +-
 src/video/qnx/SDL_qnxgl.c                     |   2 +-
 src/video/qnx/SDL_qnxvideo.c                  |   2 +-
 src/video/riscos/SDL_riscosframebuffer.c      |   2 +-
 src/video/sdlgenblit.pl                       |  48 +--
 src/video/wayland/SDL_waylandvideo.c          |   4 +-
 src/video/windows/SDL_windowsframebuffer.c    |   2 +-
 src/video/windows/SDL_windowsmodes.c          |   6 +-
 test/testautomation_pixels.c                  |   8 +-
 test/testautomation_surface.c                 |   4 +-
 39 files changed, 400 insertions(+), 390 deletions(-)

diff --git a/build-scripts/SDL_migration.cocci b/build-scripts/SDL_migration.cocci
index d26bdc5d5887..6c2c699139b6 100644
--- a/build-scripts/SDL_migration.cocci
+++ b/build-scripts/SDL_migration.cocci
@@ -599,12 +599,12 @@ expression e1, e2, e3, e4, e5, e6, e7, e8, e9;
 |
 
 - SDL_CreateRGBSurface(e1, e2, e3, 32, 0x00FF0000, 0x0000FF00, 0x000000FF, 0x00000000)
-+ SDL_CreateSurface(e2, e3, SDL_PIXELFORMAT_RGB888)
++ SDL_CreateSurface(e2, e3, SDL_PIXELFORMAT_XRGB8888)
 
 |
 
 - SDL_CreateRGBSurfaceFrom(e1, e2, e3, 32, e4, 0x00FF0000, 0x0000FF00, 0x000000FF, 0x00000000)
-+ SDL_CreateSurfaceFrom(e1, e2, e3, e4, SDL_PIXELFORMAT_RGB888)
++ SDL_CreateSurfaceFrom(e1, e2, e3, e4, SDL_PIXELFORMAT_XRGB8888)
 
 |
 
@@ -619,12 +619,12 @@ expression e1, e2, e3, e4, e5, e6, e7, e8, e9;
 |
 
 - SDL_CreateRGBSurface(e1, e2, e3, 32, 0x000000FF, 0x0000FF00, 0x00FF0000, 0x00000000)
-+ SDL_CreateSurface(e2, e3, SDL_PIXELFORMAT_BGR888)
++ SDL_CreateSurface(e2, e3, SDL_PIXELFORMAT_XBGR8888)
 
 |
 
 - SDL_CreateRGBSurfaceFrom(e1, e2, e3, 32, e4, 0x000000FF, 0x0000FF00, 0x00FF0000, 0x00000000)
-+ SDL_CreateSurfaceFrom(e1, e2, e3, e4, SDL_PIXELFORMAT_BGR888)
++ SDL_CreateSurfaceFrom(e1, e2, e3, e4, SDL_PIXELFORMAT_XBGR8888)
 
 |
 
@@ -2677,3 +2677,11 @@ typedef SDL_cond, SDL_Condition;
 @@
 - SDL_WINDOW_SKIP_TASKBAR
 + SDL_WINDOW_UTILITY
+@@
+@@
+- SDL_PIXELFORMAT_RGB888
++ SDL_PIXELFORMAT_XRGB8888
+@@
+@@
+- SDL_PIXELFORMAT_BGR888
++ SDL_PIXELFORMAT_XBGR8888
diff --git a/docs/README-ios.md b/docs/README-ios.md
index 0dc1e5e7b271..643b342ea672 100644
--- a/docs/README-ios.md
+++ b/docs/README-ios.md
@@ -215,7 +215,7 @@ Windows:
 	Full-size, single window applications only.  You cannot create multi-window SDL applications for iPhone OS.  The application window will fill the display, though you have the option of turning on or off the menu-bar (pass SDL_CreateWindow() the flag SDL_WINDOW_BORDERLESS).
 
 Textures:
-	The optimal texture formats on iOS are SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_BGR888, and SDL_PIXELFORMAT_RGB24 pixel formats.
+	The optimal texture formats on iOS are SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_ABGR8888, SDL_PIXELFORMAT_XBGR8888, and SDL_PIXELFORMAT_RGB24 pixel formats.
 
 Loading Shared Objects:
 	This is disabled by default since it seems to break the terms of the iOS SDK agreement for iOS versions prior to iOS 8. It can be re-enabled in SDL_config_ios.h.
diff --git a/include/SDL3/SDL_oldnames.h b/include/SDL3/SDL_oldnames.h
index 9ea45877a5eb..36700846bca6 100644
--- a/include/SDL3/SDL_oldnames.h
+++ b/include/SDL3/SDL_oldnames.h
@@ -352,6 +352,8 @@
 #define SDL_FreeFormat SDL_DestroyPixelFormat
 #define SDL_FreePalette SDL_DestroyPalette
 #define SDL_MasksToPixelFormatEnum SDL_GetPixelFormatEnumForMasks
+#define SDL_PIXELFORMAT_BGR888 SDL_PIXELFORMAT_XBGR8888
+#define SDL_PIXELFORMAT_RGB888 SDL_PIXELFORMAT_XRGB8888
 #define SDL_PixelFormatEnumToMasks SDL_GetMasksForPixelFormatEnum
 
 /* ##SDL_platform.h */
@@ -790,6 +792,8 @@
 #define SDL_FreeFormat SDL_FreeFormat_renamed_SDL_DestroyPixelFormat
 #define SDL_FreePalette SDL_FreePalette_renamed_SDL_DestroyPalette
 #define SDL_MasksToPixelFormatEnum SDL_MasksToPixelFormatEnum_renamed_SDL_GetPixelFormatEnumForMasks
+#define SDL_PIXELFORMAT_BGR888 SDL_PIXELFORMAT_BGR888_renamed_SDL_PIXELFORMAT_XBGR8888
+#define SDL_PIXELFORMAT_RGB888 SDL_PIXELFORMAT_RGB888_renamed_SDL_PIXELFORMAT_XRGB8888
 #define SDL_PixelFormatEnumToMasks SDL_PixelFormatEnumToMasks_renamed_SDL_GetMasksForPixelFormatEnum
 
 /* ##SDL_platform.h */
diff --git a/include/SDL3/SDL_pixels.h b/include/SDL3/SDL_pixels.h
index b5d01c5e2e85..75f8234c5943 100644
--- a/include/SDL3/SDL_pixels.h
+++ b/include/SDL3/SDL_pixels.h
@@ -232,14 +232,12 @@ typedef enum
     SDL_PIXELFORMAT_XRGB8888 =
         SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XRGB,
                                SDL_PACKEDLAYOUT_8888, 24, 4),
-    SDL_PIXELFORMAT_RGB888 = SDL_PIXELFORMAT_XRGB8888,
     SDL_PIXELFORMAT_RGBX8888 =
         SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_RGBX,
                                SDL_PACKEDLAYOUT_8888, 24, 4),
     SDL_PIXELFORMAT_XBGR8888 =
         SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_XBGR,
                                SDL_PACKEDLAYOUT_8888, 24, 4),
-    SDL_PIXELFORMAT_BGR888 = SDL_PIXELFORMAT_XBGR8888,
     SDL_PIXELFORMAT_BGRX8888 =
         SDL_DEFINE_PIXELFORMAT(SDL_PIXELTYPE_PACKED32, SDL_PACKEDORDER_BGRX,
                                SDL_PACKEDLAYOUT_8888, 24, 4),
diff --git a/src/render/SDL_render.c b/src/render/SDL_render.c
index 504cae5f92a9..c234724a5083 100644
--- a/src/render/SDL_render.c
+++ b/src/render/SDL_render.c
@@ -1258,14 +1258,14 @@ SDL_Texture *SDL_CreateTextureFromSurface(SDL_Renderer *renderer, SDL_Surface *s
     /* Try to have the best pixel format for the texture */
     /* No alpha, but a colorkey => promote to alpha */
     if (!fmt->Amask && SDL_SurfaceHasColorKey(surface)) {
-        if (fmt->format == SDL_PIXELFORMAT_RGB888) {
+        if (fmt->format == SDL_PIXELFORMAT_XRGB8888) {
             for (i = 0; i < (int)renderer->info.num_texture_formats; ++i) {
                 if (renderer->info.texture_formats[i] == SDL_PIXELFORMAT_ARGB8888) {
                     format = SDL_PIXELFORMAT_ARGB8888;
                     break;
                 }
             }
-        } else if (fmt->format == SDL_PIXELFORMAT_BGR888) {
+        } else if (fmt->format == SDL_PIXELFORMAT_XBGR8888) {
             for (i = 0; i < (int)renderer->info.num_texture_formats; ++i) {
                 if (renderer->info.texture_formats[i] == SDL_PIXELFORMAT_ABGR8888) {
                     format = SDL_PIXELFORMAT_ABGR8888;
diff --git a/src/render/direct3d/SDL_render_d3d.c b/src/render/direct3d/SDL_render_d3d.c
index 198bf0d7c8ca..e04ae3753298 100644
--- a/src/render/direct3d/SDL_render_d3d.c
+++ b/src/render/direct3d/SDL_render_d3d.c
@@ -193,7 +193,7 @@ static D3DFORMAT PixelFormatToD3DFMT(Uint32 format)
     switch (format) {
     case SDL_PIXELFORMAT_RGB565:
         return D3DFMT_R5G6B5;
-    case SDL_PIXELFORMAT_RGB888:
+    case SDL_PIXELFORMAT_XRGB8888:
         return D3DFMT_X8R8G8B8;
     case SDL_PIXELFORMAT_ARGB8888:
         return D3DFMT_A8R8G8B8;
@@ -213,7 +213,7 @@ static Uint32 D3DFMTToPixelFormat(D3DFORMAT format)
     case D3DFMT_R5G6B5:
         return SDL_PIXELFORMAT_RGB565;
     case D3DFMT_X8R8G8B8:
-        return SDL_PIXELFORMAT_RGB888;
+        return SDL_PIXELFORMAT_XRGB8888;
     case D3DFMT_A8R8G8B8:
         return SDL_PIXELFORMAT_ARGB8888;
     default:
diff --git a/src/render/direct3d11/SDL_render_d3d11.c b/src/render/direct3d11/SDL_render_d3d11.c
index f2b1cc1cc9bd..b1d7f37736f3 100644
--- a/src/render/direct3d11/SDL_render_d3d11.c
+++ b/src/render/direct3d11/SDL_render_d3d11.c
@@ -202,7 +202,7 @@ Uint32 D3D11_DXGIFormatToSDLPixelFormat(DXGI_FORMAT dxgiFormat)
     case DXGI_FORMAT_B8G8R8A8_UNORM:
         return SDL_PIXELFORMAT_ARGB8888;
     case DXGI_FORMAT_B8G8R8X8_UNORM:
-        return SDL_PIXELFORMAT_RGB888;
+        return SDL_PIXELFORMAT_XRGB8888;
     default:
         return SDL_PIXELFORMAT_UNKNOWN;
     }
@@ -213,7 +213,7 @@ static DXGI_FORMAT SDLPixelFormatToDXGIFormat(Uint32 sdlFormat)
     switch (sdlFormat) {
     case SDL_PIXELFORMAT_ARGB8888:
         return DXGI_FORMAT_B8G8R8A8_UNORM;
-    case SDL_PIXELFORMAT_RGB888:
+    case SDL_PIXELFORMAT_XRGB8888:
         return DXGI_FORMAT_B8G8R8X8_UNORM;
     case SDL_PIXELFORMAT_YV12:
     case SDL_PIXELFORMAT_IYUV:
@@ -2386,7 +2386,7 @@ SDL_RenderDriver D3D11_RenderDriver = {
         6,                           /* num_texture_formats */
         {                            /* texture_formats */
           SDL_PIXELFORMAT_ARGB8888,
-          SDL_PIXELFORMAT_RGB888,
+          SDL_PIXELFORMAT_XRGB8888,
           SDL_PIXELFORMAT_YV12,
           SDL_PIXELFORMAT_IYUV,
           SDL_PIXELFORMAT_NV12,
diff --git a/src/render/direct3d12/SDL_render_d3d12.c b/src/render/direct3d12/SDL_render_d3d12.c
index 40866004e487..86eaeea12bac 100644
--- a/src/render/direct3d12/SDL_render_d3d12.c
+++ b/src/render/direct3d12/SDL_render_d3d12.c
@@ -278,7 +278,7 @@ Uint32 D3D12_DXGIFormatToSDLPixelFormat(DXGI_FORMAT dxgiFormat)
     case DXGI_FORMAT_B8G8R8A8_UNORM:
         return SDL_PIXELFORMAT_ARGB8888;
     case DXGI_FORMAT_B8G8R8X8_UNORM:
-        return SDL_PIXELFORMAT_RGB888;
+        return SDL_PIXELFORMAT_XRGB8888;
     default:
         return SDL_PIXELFORMAT_UNKNOWN;
     }
@@ -289,7 +289,7 @@ static DXGI_FORMAT SDLPixelFormatToDXGIFormat(Uint32 sdlFormat)
     switch (sdlFormat) {
     case SDL_PIXELFORMAT_ARGB8888:
         return DXGI_FORMAT_B8G8R8A8_UNORM;
-    case SDL_PIXELFORMAT_RGB888:
+    case SDL_PIXELFORMAT_XRGB8888:
         return DXGI_FORMAT_B8G8R8X8_UNORM;
     case SDL_PIXELFORMAT_YV12:
     case SDL_PIXELFORMAT_IYUV:
@@ -3021,7 +3021,7 @@ SDL_RenderDriver D3D12_RenderDriver = {
         6,                           /* num_texture_formats */
         {                            /* texture_formats */
           SDL_PIXELFORMAT_ARGB8888,
-          SDL_PIXELFORMAT_RGB888,
+          SDL_PIXELFORMAT_XRGB8888,
           SDL_PIXELFORMAT_YV12,
           SDL_PIXELFORMAT_IYUV,
           SDL_PIXELFORMAT_NV12,
diff --git a/src/render/opengl/SDL_render_gl.c b/src/render/opengl/SDL_render_gl.c
index 369d86e31ce3..2d7da74667b9 100644
--- a/src/render/opengl/SDL_render_gl.c
+++ b/src/render/opengl/SDL_render_gl.c
@@ -402,13 +402,13 @@ static SDL_bool convert_format(GL_RenderData *renderdata, Uint32 pixel_format,
 {
     switch (pixel_format) {
     case SDL_PIXELFORMAT_ARGB8888:
-    case SDL_PIXELFORMAT_RGB888:
+    case SDL_PIXELFORMAT_XRGB8888:
         *internalFormat = GL_RGBA8;
         *format = GL_BGRA;
         *type = GL_UNSIGNED_INT_8_8_8_8_REV;
         break;
     case SDL_PIXELFORMAT_ABGR8888:
-    case SDL_PIXELFORMAT_BGR888:
+    case SDL_PIXELFORMAT_XBGR8888:
         *internalFormat = GL_RGBA8;
         *format = GL_RGBA;
         *type = GL_UNSIGNED_INT_8_8_8_8_REV;
@@ -1971,8 +1971,8 @@ SDL_RenderDriver GL_RenderDriver = {
       4,
       { SDL_PIXELFORMAT_ARGB8888,
         SDL_PIXELFORMAT_ABGR8888,
-        SDL_PIXELFORMAT_RGB888,
-        SDL_PIXELFORMAT_BGR888 },
+        SDL_PIXELFORMAT_XRGB8888,
+        SDL_PIXELFORMAT_XBGR8888 },
       0,
       0 }
 };
diff --git a/src/render/opengles2/SDL_render_gles2.c b/src/render/opengles2/SDL_render_gles2.c
index 4750735c7fe3..7216a6140f53 100644
--- a/src/render/opengles2/SDL_render_gles2.c
+++ b/src/render/opengles2/SDL_render_gles2.c
@@ -727,7 +727,7 @@ static int GLES2_QueueSetViewport(SDL_Renderer *renderer, SDL_RenderCommand *cmd
 
 static int GLES2_QueueDrawPoints(SDL_Renderer *renderer, SDL_RenderCommand *cmd, const SDL_FPoint *points, int count)
 {
-    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_RGB888));
+    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_XRGB8888));
     SDL_VertexSolid *verts = (SDL_VertexSolid *)SDL_AllocateRenderVertices(renderer, count * sizeof(*verts), 0, &cmd->data.draw.first);
     int i;
     SDL_Color color;
@@ -759,7 +759,7 @@ static int GLES2_QueueDrawPoints(SDL_Renderer *renderer, SDL_RenderCommand *cmd,
 
 static int GLES2_QueueDrawLines(SDL_Renderer *renderer, SDL_RenderCommand *cmd, const SDL_FPoint *points, int count)
 {
-    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_RGB888));
+    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_XRGB8888));
     int i;
     GLfloat prevx, prevy;
     SDL_VertexSolid *verts = (SDL_VertexSolid *)SDL_AllocateRenderVertices(renderer, count * sizeof(*verts), 0, &cmd->data.draw.first);
@@ -819,7 +819,7 @@ static int GLES2_QueueGeometry(SDL_Renderer *renderer, SDL_RenderCommand *cmd, S
                                float scale_x, float scale_y)
 {
     int i;
-    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_RGB888));
+    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_XRGB8888));
     int count = indices ? num_indices : num_vertices;
 
     cmd->data.draw.count = count;
@@ -1020,10 +1020,10 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
             case SDL_PIXELFORMAT_ARGB8888:
                 switch (renderer->target->format) {
                 case SDL_PIXELFORMAT_ABGR8888:
-                case SDL_PIXELFORMAT_BGR888:
+                case SDL_PIXELFORMAT_XBGR8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ARGB;
                     break;
-                case SDL_PIXELFORMAT_RGB888:
+                case SDL_PIXELFORMAT_XRGB8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ABGR;
                     break;
                 }
@@ -1031,15 +1031,15 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
             case SDL_PIXELFORMAT_ABGR8888:
                 switch (renderer->target->format) {
                 case SDL_PIXELFORMAT_ARGB8888:
-                case SDL_PIXELFORMAT_RGB888:
+                case SDL_PIXELFORMAT_XRGB8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ARGB;
                     break;
-                case SDL_PIXELFORMAT_BGR888:
+                case SDL_PIXELFORMAT_XBGR8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ABGR;
                     break;
                 }
                 break;
-            case SDL_PIXELFORMAT_RGB888:
+            case SDL_PIXELFORMAT_XRGB8888:
                 switch (renderer->target->format) {
                 case SDL_PIXELFORMAT_ABGR8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ARGB;
@@ -1047,12 +1047,12 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
                 case SDL_PIXELFORMAT_ARGB8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_BGR;
                     break;
-                case SDL_PIXELFORMAT_BGR888:
+                case SDL_PIXELFORMAT_XBGR8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ARGB;
                     break;
                 }
                 break;
-            case SDL_PIXELFORMAT_BGR888:
+            case SDL_PIXELFORMAT_XBGR8888:
                 switch (renderer->target->format) {
                 case SDL_PIXELFORMAT_ABGR8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_BGR;
@@ -1060,7 +1060,7 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
                 case SDL_PIXELFORMAT_ARGB8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_RGB;
                     break;
-                case SDL_PIXELFORMAT_RGB888:
+                case SDL_PIXELFORMAT_XRGB8888:
                     sourceType = GLES2_IMAGESOURCE_TEXTURE_ARGB;
                     break;
                 }
@@ -1094,10 +1094,10 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
         case SDL_PIXELFORMAT_ABGR8888:
             sourceType = GLES2_IMAGESOURCE_TEXTURE_ABGR;
             break;
-        case SDL_PIXELFORMAT_RGB888:
+        case SDL_PIXELFORMAT_XRGB8888:
             sourceType = GLES2_IMAGESOURCE_TEXTURE_RGB;
             break;
-        case SDL_PIXELFORMAT_BGR888:
+        case SDL_PIXELFORMAT_XBGR8888:
             sourceType = GLES2_IMAGESOURCE_TEXTURE_BGR;
             break;
 #if SDL_HAVE_YUV
@@ -1150,7 +1150,7 @@ static int SetCopyState(SDL_Renderer *renderer, const SDL_RenderCommand *cmd, vo
 static int GLES2_RunCommandQueue(SDL_Renderer *renderer, SDL_RenderCommand *cmd, void *vertices, size_t vertsize)
 {
     GLES2_RenderData *data = (GLES2_RenderData *)renderer->driverdata;
-    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_RGB888));
+    const SDL_bool colorswap = (renderer->target && (renderer->target->format == SDL_PIXELFORMAT_ARGB8888 || renderer->target->format == SDL_PIXELFORMAT_XRGB8888));
 
 #if USE_VERTEX_BUFFER_OBJECTS
     const int vboidx = data->current_vertex_buffer;
@@ -1412,8 +1412,8 @@ static int GLES2_CreateTexture(SDL_Renderer *renderer, SDL_Texture *texture)
     switch (texture->format) {
     case SDL_PIXELFORMAT_ARGB8888:
     case SDL_PIXELFORMAT_ABGR8888:
-    case SDL_PIXELFORMAT_RGB888:
-    case SDL_PIXELFORMAT_BGR888:
+    case SDL_PIXELFORMAT_XRGB8888:
+    case SDL_PIXELFORMAT_XBGR8888:
         format = GL_RGBA;
         type = GL_UNSIGNED_BYTE;
         break;
@@ -2266,8 +2266,8 @@ SDL_RenderDriver GLES2_RenderDriver = {
       4,
       { SDL_PIXELFORMAT_ARGB8888,
         SDL_PIXELFORMAT_ABGR8888,
-        SDL_PIXELFORMAT_RGB888,
-        SDL_PIXELFORMAT_BGR888 },
+        SDL_PIXELFORMAT_XRGB8888,
+        SDL_PIXELFORMAT_XBGR8888 },
       0,
       0 }
 };
diff --git a/src/render/software/SDL_blendfillrect.c b/src/render/software/SDL_blendfillrect.c
index 02ad63ed8a43..72a01d7a6326 100644
--- a/src/render/software/SDL_blendfillrect.c
+++ b/src/render/software/SDL_blendfillrect.c
@@ -75,26 +75,26 @@ static int SDL_BlendFillRect_RGB565(SDL_Surface *dst, const SDL_Rect *rect,
     return 0;
 }
 
-static int SDL_BlendFillRect_RGB888(SDL_Surface *dst, const SDL_Rect *rect,
+static int SDL_BlendFillRect_XRGB8888(SDL_Surface *dst, const SDL_Rect *rect,
                                     SDL_BlendMode blendMode, Uint8 r, Uint8 g, Uint8 b, Uint8 a)
 {
     unsigned inva = 0xff - a;
 
     switch (blendMode) {
     case SDL_BLENDMODE_BLEND:
-        FILLRECT(Uint32, DRAW_SETPIXEL_BLEND_RGB888);
+        FILLRECT(Uint32, DRAW_SETPIXEL_BLEND_XRGB8888);
         break;
     case SDL_BLENDMODE_ADD:
-        FILLRECT(Uint32, DRAW_SETPIXEL_ADD_RGB888);
+        FILLRECT(Uint32, DRAW_SETPIXEL_ADD_XRGB8888);
         break;
     case SDL_BLENDMODE_MOD:
-        FILLRECT(Uint32, DRAW_SETPIXEL_MOD_RGB888);
+        FILLRECT(Uint32, DRAW_SETPIXEL_MOD_XRGB8888);
         break;
     case SDL_BLENDMODE_MUL:
-        FILLRECT(Uint32, DRAW_SETPIXEL_MUL_RGB888);
+        FILLRECT(Uint32, DRAW_SETPIXEL_MUL_XRGB8888);
         break;
     default:
-        FILLRECT(Uint32, DRAW_SETPIXEL_RGB888);
+        FILLRECT(Uint32, DRAW_SETPIXEL_XRGB8888);
         break;
     }
     return 0;
@@ -254,7 +254,7 @@ int SDL_BlendFillRect(SDL_Surface *dst, const SDL_Rect *rect,
         switch (dst->format->Rmask) {
         case 0x00FF0000:
             if (!dst->format->Amask) {
-                return SDL_BlendFillRect_RGB888(dst, rect, blendMode, r, g, b, a);
+                return SDL_BlendFillRect_XRGB8888(dst, rect, blendMode, r, g, b, a);
             } else {
                 return SDL_BlendFillRect_ARGB8888(dst, rect, blendMode, r, g, b, a);
             }
@@ -314,7 +314,7 @@ int SDL_BlendFillRects(SDL_Surface *dst, const SDL_Rect *rects, int count,
         switch (dst->format->Rmask) {
         case 0x00FF0000:
             if (!dst->format->Amask) {
-                func = SDL_BlendFillRect_RGB888;
+                func = SDL_BlendFillRect_XRGB8888;
             } else {
                 func = SDL_BlendFillRect_ARGB8888;
             }
diff --git a/src/render/software/SDL_blendline.c b/src/render/software/SDL_blendline.c
index 432286283141..1bacf9457f77 100644
--- a/src/render/software/SDL_blendline.c
+++ b/src/render/software/SDL_blendline.c
@@ -549,7 +549,7 @@ static void SDL_BlendLine_RGBA4(SDL_Surface *dst, int x1, int y1, int x2, int y2
     }
 }
 
-static void SDL_BlendLine_RGB888(SDL_Surface *dst, int x1, int y1, int x2, int y2,
+static void SDL_BlendLine_XRGB8888(SDL_Surface *dst, int x1, int y1, int x2, int y2,
                                  SDL_BlendMode blendMode, Uint8 _r, Uint8 _g, Uint8 _b, Uint8 _a,
                                  SDL_bool draw_end)
 {
@@ -571,82 +571,82 @@ static void SDL_BlendLine_RGB888(SDL_Surface *dst, int x1, int y1, int x2, int y
     if (y1 == y2) {
         switch (blendMode) {
         case SDL_BLENDMODE_BLEND:
-            HLINE(Uint32, DRAW_SETPIXEL_BLEND_RGB888, draw_end);
+            HLINE(Uint32, DRAW_SETPIXEL_BLEND_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_ADD:
-            HLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
+            HLINE(Uint32, DRAW_SETPIXEL_ADD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MOD:
-            HLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
+            HLINE(Uint32, DRAW_SETPIXEL_MOD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MUL:
-            HLINE(Uint32, DRAW_SETPIXEL_MUL_RGB888, draw_end);
+            HLINE(Uint32, DRAW_SETPIXEL_MUL_XRGB8888, draw_end);
             break;
         default:
-            HLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
+            HLINE(Uint32, DRAW_SETPIXEL_XRGB8888, draw_end);
             break;
         }
     } else if (x1 == x2) {
         switch (blendMode) {
         case SDL_BLENDMODE_BLEND:
-            VLINE(Uint32, DRAW_SETPIXEL_BLEND_RGB888, draw_end);
+            VLINE(Uint32, DRAW_SETPIXEL_BLEND_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_ADD:
-            VLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
+            VLINE(Uint32, DRAW_SETPIXEL_ADD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MOD:
-            VLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
+            VLINE(Uint32, DRAW_SETPIXEL_MOD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MUL:
-            VLINE(Uint32, DRAW_SETPIXEL_MUL_RGB888, draw_end);
+            VLINE(Uint32, DRAW_SETPIXEL_MUL_XRGB8888, draw_end);
             break;
         default:
-            VLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
+            VLINE(Uint32, DRAW_SETPIXEL_XRGB8888, draw_end);
             break;
         }
     } else if (ABS(x1 - x2) == ABS(y1 - y2)) {
         switch (blendMode) {
         case SDL_BLENDMODE_BLEND:
-            DLINE(Uint32, DRAW_SETPIXEL_BLEND_RGB888, draw_end);
+            DLINE(Uint32, DRAW_SETPIXEL_BLEND_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_ADD:
-            DLINE(Uint32, DRAW_SETPIXEL_ADD_RGB888, draw_end);
+            DLINE(Uint32, DRAW_SETPIXEL_ADD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MOD:
-            DLINE(Uint32, DRAW_SETPIXEL_MOD_RGB888, draw_end);
+            DLINE(Uint32, DRAW_SETPIXEL_MOD_XRGB8888, draw_end);
             break;
         case SDL_BLENDMODE_MUL:
-            DLINE(Uint32, DRAW_SETPIXEL_MUL_RGB888, draw_end);
+            DLINE(Uint32, DRAW_SETPIXEL_MUL_XRGB8888, draw_end);
             break;
         default:
-            DLINE(Uint32, DRAW_SETPIXEL_RGB888, draw_end);
+            DLINE(Uint32, DRAW_SETPIXEL_XRGB8888, draw_end);
             break;
         }
     } else {
         switch (blendMode) {
         case SDL_BLENDMODE_BLEND:
             AALINE(x1, y1, x2, y2,
-                   DRAW_SETPIXELXY_BLEND_RGB888, DRAW_SETPIXELXY_BLEND_RGB888,
+                   DRAW_SETPIXELXY_BLEND_XRGB8888, DRAW_SETPIXELXY_BLEND_XRGB8888,
                    draw_end);
             break;
         case SDL_BLENDMODE_ADD:
             AALINE(x1, y1, x2, y2,
-                   DRAW_SETPIXELXY_ADD_RGB888, DRAW_SETPIXELXY_ADD_RGB888,
+                   DRAW_SETPIXELXY_ADD_XRGB8888, DRAW_SETPIXELXY_ADD_XRGB8888,
                    draw_end);
             break;
         case SDL_BLENDMODE_MOD:
             AALINE(x1, y1, x2, y2,
-                   DRAW_SETPIXELXY_MOD_RGB888, DRAW_SETPIXELXY_MOD_RGB888,
+                   DRAW_SETPIXELXY_MOD_XRGB8888, DRAW_SETPIXELXY_MOD_XRGB8888,
                    draw_end);
             break;
         case SDL_BLENDMODE_MUL:
             AALINE(x1, y1, x2, y2,
-                   DRAW_SETPIXELXY_MUL_RGB888, DRAW_SETPIXELXY_MUL_RGB888,
+                   DRAW_SETPIXELXY_MUL_XRGB8888, DRAW_SETPIXELXY_MUL_XRGB8888,
                    draw_end);
             break;
         default:
             AALINE(x1, y1, x2, y2,
-                   DRAW_SETPIXELXY_RGB888, DRAW_SETPIXELXY_BLEND_RGB888,
+                   DRAW_SETPIXELXY_XRGB8888, DRAW_SETPIXELXY_BLEND_XRGB8888,
                    draw_end);
             break;
         }
@@ -780,7 +780,7 @@ static BlendLineFunc SDL_CalculateBlendLineFunc(const SDL_PixelFormat *fmt)
             if (fmt->Amask) {
                 return SDL_BlendLine_ARGB8888;
             } else {
-                return SDL_BlendLine_RGB888;
+                return SDL_BlendLine_XRGB8888;
             }
         } else {
             if (fmt->Amask) {
diff --git a/src/render/software/SDL_blendpoint.c b/src/render/software/SDL_blendpoint.c
index b9993c595562..34ed59994ab3 100644
--- a/src/render/software/SDL_blendpoint.c
+++ b/src/render/software/SDL_blendpoint.c
@@ -75,26 +75,26 @@ static int SDL_BlendPoint_RGB565(SDL_Surface *dst, int x, int y, SDL_BlendMode b
     return 0;
 }
 
-static int SDL_BlendPoint_RGB888(SDL_Surface *dst, int x, int y, SDL_BlendMode blendMode, Uint8 r,
+static int SDL_BlendPoint_XRGB8888(SDL_Surface *dst, int x, int y, SDL_BlendMode blendMode, Uint8 r,
                                  Uint8 g, Uint8 b, Uint8 a)
 {
     unsigned inva = 0xff - a;
 
     switch (blendMode) {
     case SDL_BLENDMODE_BLEND:
-        DRAW_SETPIXELXY_BLEND_RGB888(x, y);
+        DRAW_SETPIXELXY_BLEND_XRGB8888(x, y);
         break;
     case SDL_BLENDMODE_ADD:
-        DRAW_SETPIXELXY_ADD_RGB888(x, y);
+        DRAW_SETPIXELXY_ADD_XRGB8888(x, y);
         break;
     case SDL_BLENDMODE_MOD:
-        DRAW_SETPIXELXY_MOD_RGB888(x, y);
+        DRAW_SETPIXELXY_MOD_XRGB8888(x, y);
         break;
     case SDL_BLENDMODE_MUL:
-        DRAW_SETPIXELXY_MUL_RGB888(x, y);
+        DRAW_SETPIXELXY_MUL_XRGB8888(x, y);
         break;
     default:
-        DRAW_SETPIXELXY_RGB888(x, y);
+        DRAW_SETPIXELXY_XRGB8888(x, y);
         break;
     }
     return 0;
@@ -248,7 +248,7 @@ int SDL_BlendPoint(SDL_Surface *dst, int x, int y, SDL_BlendMode blendMode, Uint
         switch (dst->format->Rmask) {
         case 0x00FF0000:
             if (!dst->format->Amask) {
-                return SDL_BlendPoint_RGB888(dst, x, y, blendMode, r, g, b, a);
+                return SDL_BlendPoint_XRGB8888(dst, x, y, blendMode, r, g, b, a);
             } else {
                 return SDL_BlendPoint_ARGB8888(dst, x, y, blendMode, r, g, b, a);
             }
@@ -312,7 +312,7 @@ int SDL_BlendPoints(SDL_Surface *dst, const SDL_Point *points, int count,
         switch (dst->format->Rmask) {
         case 0x00FF0000:
             if (!dst->format->Amask) {
-                func = SDL_BlendPoint_RGB888;
+                func = SDL_BlendPoint_XRGB8888;
             } else {
                 func = SDL_BlendPoint_ARGB8888;
             }
diff --git a/src/render/software/SDL_draw.h b/src/render/software/SDL_draw.h
index 4dcb64a873b9..63c588e0fe6f 100644
--- a/src/render/software/SDL_draw.h
+++ b/src/render/software/SDL_draw.h
@@ -191,39 +191,39 @@
  * Define draw operators for RGB888
  */
 
-#define DRAW_SETPIXEL_RGB888 \
-    DRAW_SETPIXEL(RGB888_FROM_RGB(*pixel, sr, sg, sb))
+#define DRAW_SETPIXEL_XRGB8888 \
+    DRAW_SETPIXEL(XRGB8888_FROM_RGB(*pixel, sr, sg, sb))
 
-#define DRAW_SETPIXEL_BLEND_RGB888                           \
-    DRAW_SETPIXEL_BLEND(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
-                        RGB888_FROM_RGB(*pixel, sr, sg, sb))
+#define DRAW_SETPIXEL_BLEND_XRGB8888                           \
+    DRAW_SETPIXEL_BLEND(RGB_FROM_XRGB8888(*pixel, sr, sg, sb), \
+                        XRGB8888_FROM_RGB(*pixel, sr, sg, sb))
 
-#define DRAW_SETPIXEL_ADD_RGB888                           \
-    DRAW_SETPIXEL_ADD(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
-                      RGB888_FROM_RGB(*pixel, sr, sg, sb))
+#define DRAW_SETPIXEL_ADD_XRGB8888                           \
+    DRAW_SETPIXEL_ADD(RGB_FROM_XRGB8888(*pixel, sr, sg, sb), \
+                      XRGB8888_FROM_RGB(*pixel, sr, sg, sb))
 
-#define DRAW_SETPIXEL_MOD_RGB888                           \
-    DRAW_SETPIXEL_MOD(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
-                      RGB888_FROM_RGB(*pixel, sr, sg, sb))
+#define DRAW_SETPIXEL_MOD_XRGB8888                           \
+    DRAW_SETPIXEL_MOD(RGB_FROM_XRGB8888(*pixel, sr, sg, sb), \
+                      XRGB8888_FROM_RGB(*pixel, sr, sg, sb))
 
-#define DRAW_SETPIXEL_MUL_RGB888                           \
-    DRAW_SETPIXEL_MUL(RGB_FROM_RGB888(*pixel, sr, sg, sb), \
-                      RGB888_FROM_RGB(*pixel, sr, sg, sb))
+#define DRA

(Patch may be truncated, please check the link at the top of this post.)