author | Sam Lantinga <slouken@libsdl.org> |
Fri, 18 Jan 2002 18:14:03 +0000 | |
changeset 266 | c6abdda2f666 |
parent 0 | 74212992fb08 |
child 479 | c0a1744bc2cf |
permissions | -rw-r--r-- |
0 | 1 |
|
2 |
/* Simple program -- figure out what kind of video display we have */ |
|
3 |
||
4 |
#include <stdio.h> |
|
5 |
#include <stdlib.h> |
|
6 |
||
7 |
#include "SDL.h" |
|
8 |
||
9 |
int main(int argc, char *argv[]) |
|
10 |
{ |
|
11 |
const SDL_VideoInfo *info; |
|
12 |
int i; |
|
13 |
SDL_Rect **modes; |
|
14 |
||
15 |
if ( SDL_Init(SDL_INIT_VIDEO) < 0 ) { |
|
16 |
fprintf(stderr, |
|
17 |
"Couldn't initialize SDL: %s\n", SDL_GetError()); |
|
18 |
exit(1); |
|
19 |
} |
|
20 |
info = SDL_GetVideoInfo(); |
|
21 |
printf( |
|
22 |
"Current display: %d bits-per-pixel\n",info->vfmt->BitsPerPixel); |
|
23 |
if ( info->vfmt->palette == NULL ) { |
|
24 |
printf(" Red Mask = 0x%.8x\n", info->vfmt->Rmask); |
|
25 |
printf(" Green Mask = 0x%.8x\n", info->vfmt->Gmask); |
|
26 |
printf(" Blue Mask = 0x%.8x\n", info->vfmt->Bmask); |
|
27 |
} |
|
28 |
/* Print available fullscreen video modes */ |
|
29 |
modes = SDL_ListModes(NULL, SDL_FULLSCREEN); |
|
30 |
if ( modes == (SDL_Rect **)0 ) { |
|
31 |
printf("No available fullscreen video modes\n"); |
|
32 |
} else |
|
33 |
if ( modes == (SDL_Rect **)-1 ) { |
|
34 |
printf("No special fullscreen video modes\n"); |
|
35 |
} else { |
|
36 |
printf("Fullscreen video modes:\n"); |
|
37 |
for ( i=0; modes[i]; ++i ) { |
|
266
c6abdda2f666
Added QNX cleanups by Mike Gorchak (thanks!)
Sam Lantinga <slouken@libsdl.org>
parents:
0
diff
changeset
|
38 |
printf("\t%dx%dx%d\n", modes[i]->w, modes[i]->h, info->vfmt->BitsPerPixel); |
0 | 39 |
} |
40 |
} |
|
41 |
if ( info->wm_available ) { |
|
42 |
printf("A window manager is available\n"); |
|
43 |
} |
|
44 |
if ( info->hw_available ) { |
|
45 |
printf("Hardware surfaces are available (%dK video memory)\n", |
|
46 |
info->video_mem); |
|
47 |
} |
|
48 |
if ( info->blit_hw ) { |
|
49 |
printf( |
|
50 |
"Copy blits between hardware surfaces are accelerated\n"); |
|
51 |
} |
|
52 |
if ( info->blit_hw_CC ) { |
|
53 |
printf( |
|
54 |
"Colorkey blits between hardware surfaces are accelerated\n"); |
|
55 |
} |
|
56 |
if ( info->blit_hw_A ) { |
|
57 |
printf( |
|
58 |
"Alpha blits between hardware surfaces are accelerated\n"); |
|
59 |
} |
|
60 |
if ( info->blit_sw ) { |
|
61 |
printf( |
|
62 |
"Copy blits from software surfaces to hardware surfaces are accelerated\n"); |
|
63 |
} |
|
64 |
if ( info->blit_sw_CC ) { |
|
65 |
printf( |
|
66 |
"Colorkey blits from software surfaces to hardware surfaces are accelerated\n"); |
|
67 |
} |
|
68 |
if ( info->blit_sw_A ) { |
|
69 |
printf( |
|
70 |
"Alpha blits from software surfaces to hardware surfaces are accelerated\n"); |
|
71 |
} |
|
72 |
if ( info->blit_fill ) { |
|
73 |
printf( |
|
74 |
"Color fills on hardware surfaces are accelerated\n"); |
|
75 |
} |
|
76 |
SDL_Quit(); |
|
77 |
return(0); |
|
78 |
} |