Mercurial > sdl-ios-xcode
annotate test/testendian.c @ 1076:8d3b95ece376
[PATCH] SDL_GetVideoMode() do not find the best video mode
The current GetVideoMode() function stops at the first mode which has any
dimensions smaller than the one asked, and gives the previous in the list.
If I ask 336x224 with this list:
768x480 768x240 640x400 640x200 384x480 384x240 320x400 320x200
SDL will give me 640x400, because 640x200 as height smaller than what I
asked.
However the best mode is the smaller which has both dimensions bigger
than the one asked (384x240 in my example).
This patch fixes this, plus it does not rely on a sorted video mode list.
author | Patrice Mandin <patmandin@gmail.com> |
---|---|
date | Sun, 12 Jun 2005 16:12:55 +0000 |
parents | c203b4a42701 |
children | 983df4f9c1c6 |
rev | line source |
---|---|
850
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
1 |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
2 /* Test program to check SDL's CPU endian detection and byte swapping routines */ |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
3 |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
4 #include <stdio.h> |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
5 |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
6 #include "SDL.h" |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
7 #include "SDL_endian.h" |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
8 |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
9 int main(int argc, char *argv[]) |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
10 { |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
11 Uint16 value16 = 0xCDAB; |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
12 Uint32 value32 = 0xEFBEADDE; |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
13 #if defined(__GNUC__) && defined(SDL_HAS_64BIT_TYPE) |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
14 Uint64 value64 = 0xEFBEADDECDAB3412LL; |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
15 #endif |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
16 |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
17 printf("This is a %s endian machine.\n", |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
18 (SDL_BYTEORDER == SDL_LIL_ENDIAN) ? "little" : "big"); |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
19 printf("Value 16 = 0x%X, swapped = 0x%X\n", value16, SDL_Swap16(value16)); |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
20 printf("Value 32 = 0x%X, swapped = 0x%X\n", value32, SDL_Swap32(value32)); |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
21 #if defined(__GNUC__) && defined(SDL_HAS_64BIT_TYPE) |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
22 printf("Value 64 = 0x%llX, swapped = 0x%llX\n", value64, SDL_Swap64(value64)); |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
23 #endif |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
24 return(0); |
c203b4a42701
Added an endian detection and byte swapping test program
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
25 } |