Added an endian detection and byte swapping test program

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40851
This commit is contained in:
Sam Lantinga 2004-02-23 08:03:14 +00:00
parent 17216decbc
commit eb69a6e95a
3 changed files with 27 additions and 4 deletions

View file

@ -1,7 +1,8 @@
AUTOMAKE_OPTIONS = no-dependencies
noinst_PROGRAMS = \
testver testtypes testcpuinfo testhread testlock testerror testsem testtimer \
testver testtypes testendian testcpuinfo \
testhread testlock testerror testsem testtimer \
loopwave testcdrom testkeys testvidinfo checkkeys testwin graywin \
testsprite testbitmap testalpha testgamma testpalette testwm \
threadwin testoverlay testoverlay2 testgl testdyngl testjoystick

25
test/testendian.c Normal file
View file

@ -0,0 +1,25 @@
/* Test program to check SDL's CPU endian detection and byte swapping routines */
#include <stdio.h>
#include "SDL.h"
#include "SDL_endian.h"
int main(int argc, char *argv[])
{
Uint16 value16 = 0xCDAB;
Uint32 value32 = 0xEFBEADDE;
#if defined(__GNUC__) && defined(SDL_HAS_64BIT_TYPE)
Uint64 value64 = 0xEFBEADDECDAB3412LL;
#endif
printf("This is a %s endian machine.\n",
(SDL_BYTEORDER == SDL_LIL_ENDIAN) ? "little" : "big");
printf("Value 16 = 0x%X, swapped = 0x%X\n", value16, SDL_Swap16(value16));
printf("Value 32 = 0x%X, swapped = 0x%X\n", value32, SDL_Swap32(value32));
#if defined(__GNUC__) && defined(SDL_HAS_64BIT_TYPE)
printf("Value 64 = 0x%llX, swapped = 0x%llX\n", value64, SDL_Swap64(value64));
#endif
return(0);
}

View file

@ -6,7 +6,6 @@
#include <stdio.h>
#include "SDL.h"
#include "SDL_byteorder.h"
int main(int argc, char *argv[])
{
@ -32,8 +31,6 @@ int main(int argc, char *argv[])
SDL_Linked_Version()->major,
SDL_Linked_Version()->minor,
SDL_Linked_Version()->patch);
printf("This is a %s endian machine.\n",
(SDL_BYTEORDER == SDL_LIL_ENDIAN) ? "little" : "big");
SDL_Quit();
return(0);
}