Add fast paths for BGR555 and BGR565 normal blits

This commit is contained in:
Cameron Cawley 2026-05-13 18:37:07 +01:00
parent 8677198b1e
commit 477ed722be

View file

@ -2998,6 +2998,14 @@ static const struct blit_table normal_blit_2[] = {
0, Blit_RGB565_RGBA8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
{ 0x0000F800, 0x000007E0, 0x0000001F, 4, 0x0000FF00, 0x00FF0000, 0xFF000000,
0, Blit_RGB565_BGRA8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
{ 0x0000001F, 0x000007E0, 0x0000F800, 4, 0x000000FF, 0x0000FF00, 0x00FF0000,
0, Blit_RGB565_ARGB8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
{ 0x0000001F, 0x000007E0, 0x0000F800, 4, 0x00FF0000, 0x0000FF00, 0x000000FF,
0, Blit_RGB565_ABGR8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
{ 0x0000001F, 0x000007E0, 0x0000F800, 4, 0x0000FF00, 0x00FF0000, 0xFF000000,
0, Blit_RGB565_RGBA8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
{ 0x0000001F, 0x000007E0, 0x0000F800, 4, 0xFF000000, 0x00FF0000, 0x0000FF00,
0, Blit_RGB565_BGRA8888, NO_ALPHA | COPY_ALPHA | SET_ALPHA },
#endif
// Default for 16-bit RGB source, used if no other blitter matches
{ 0, 0, 0, 0, 0, 0, 0, 0, BlitNtoN, 0 }
@ -3077,8 +3085,12 @@ static const struct blit_table normal_blit_4[] = {
// RGB 888 and RGB 565
{ 0x00FF0000, 0x0000FF00, 0x000000FF, 2, 0x0000F800, 0x000007E0, 0x0000001F,
0, Blit_XRGB8888_RGB565, NO_ALPHA },
{ 0x000000FF, 0x0000FF00, 0x00FF0000, 2, 0x0000001F, 0x000007E0, 0x0000F800,
0, Blit_XRGB8888_RGB565, NO_ALPHA },
{ 0x00FF0000, 0x0000FF00, 0x000000FF, 2, 0x00007C00, 0x000003E0, 0x0000001F,
0, Blit_XRGB8888_RGB555, NO_ALPHA },
{ 0x000000FF, 0x0000FF00, 0x00FF0000, 2, 0x0000001F, 0x000003E0, 0x00007C00,
0, Blit_XRGB8888_RGB555, NO_ALPHA },
// Default for 32-bit RGB source, used if no other blitter matches
{ 0, 0, 0, 0, 0, 0, 0, 0, BlitNtoN, 0 }
};