1
0
Fork 0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-12-23 10:09:43 +01:00

Axe SDL_BYTEORDER checks

The game usually runs on little-endian anyways, but even if it did run
on big-endian, it doesn't check endianness everywhere so these checks
are useless. Furthermore, the code should be written so that endianness
doesn't matter in the first place.
This commit is contained in:
Misa 2020-08-22 11:19:12 -07:00 committed by Ethan Lee
parent 68a54d2594
commit 8af9007b5f

View file

@ -22,17 +22,10 @@ SDL_Surface* GetSubSurface( SDL_Surface* metaSurface, int x, int y, int width, i
// Set the RGBA mask values. // Set the RGBA mask values.
Uint32 r, g, b, a; Uint32 r, g, b, a;
#if SDL_BYTEORDER == SDL_BIG_ENDIAN
r = 0xff000000;
g = 0x00ff0000;
b = 0x0000ff00;
a = 0x000000ff;
#else
r = 0x000000ff; r = 0x000000ff;
g = 0x0000ff00; g = 0x0000ff00;
b = 0x00ff0000; b = 0x00ff0000;
a = 0xff000000; a = 0xff000000;
#endif
//Convert to the correct display format after nabbing the new _surface or we will slow things down. //Convert to the correct display format after nabbing the new _surface or we will slow things down.
SDL_Surface* preSurface = SDL_CreateRGBSurface(SDL_SWSURFACE, width, height, 32, r, g, b, a); SDL_Surface* preSurface = SDL_CreateRGBSurface(SDL_SWSURFACE, width, height, 32, r, g, b, a);
@ -64,18 +57,9 @@ void DrawPixel( SDL_Surface *_surface, int x, int y, Uint32 pixel )
break; break;
case 3: case 3:
if(SDL_BYTEORDER != SDL_BIG_ENDIAN) p[0] = (pixel >> 16) & 0xff;
{ p[1] = (pixel >> 8) & 0xff;
p[0] = (pixel >> 16) & 0xff; p[2] = pixel & 0xff;
p[1] = (pixel >> 8) & 0xff;
p[2] = pixel & 0xff;
}
else
{
p[0] = pixel & 0xff;
p[1] = (pixel >> 8) & 0xff;
p[2] = (pixel >> 16) & 0xff;
}
break; break;
case 4: case 4:
@ -101,11 +85,7 @@ Uint32 ReadPixel( SDL_Surface *_surface, int x, int y )
break; break;
case 3: case 3:
if(SDL_BYTEORDER == SDL_BIG_ENDIAN) return p[0] | p[1] << 8 | p[2] << 16;
return p[0] << 16 | p[1] << 8 | p[2];
else
return p[0] | p[1] << 8 | p[2] << 16;
break;
case 4: case 4:
return *(Uint32 *)p; return *(Uint32 *)p;