[SDL] SDL fullscreen problem
cocobear
cocobear.cn at gmail.com
Mon Sep 3 22:12:35 PDT 2007
Any one can help me?
cocobear wrote:
>
> When I run a program in X system on F7 ,the X crashed ,just like I press
> CTRL+ALT+BACKSPACE.
> It is sure that the code has no problem,I get it from linux game
> programming.
> What's the problem?
>
>
> the code is below,
>
> #include <SDL/SDL.h>
> #include <stdio.h>
> #include <stdlib.h>
> Uint16 CreateHicolorPixel(SDL_PixelFormat * fmt, Uint8 red,
> Uint8 green, Uint8 blue)
> {
> Uint16 value;
> value = ((red >> fmt->Rloss) << fmt->Rshift) +
> ((green >> fmt->Gloss) << fmt->Gshift) +
> ((blue >> fmt->Bloss) << fmt->Bshift);
> return value;
> }
> int main()
> {
> SDL_Surface *screen;
> Uint16 *raw_pixels;
> int x, y;
> if (SDL_Init(SDL_INIT_VIDEO) != 0) {
> printf("Unable to initialize SDL: %s\n", SDL_GetError());
> return 1;
> }
> atexit(SDL_Quit);
> screen = SDL_SetVideoMode(256, 256, 24, SDL_FULLSCREEN|SDL_SWSURFACE);
> if (screen == NULL) {
> printf("Unable to set video mode: %s\n", SDL_GetError());
> return 1;
> }
> SDL_LockSurface(screen);
> raw_pixels = (Uint16 *) screen->pixels;
> for (x = 0; x < 256; x++) {
> for (y = 0; y < 256; y++) {
> Uint16 pixel_color;
> int offset;
> pixel_color = CreateHicolorPixel(screen->format,
> x, 0, y);
> offset = (screen->pitch / 2 * y + x);
> raw_pixels[offset] = pixel_color;
> }
> }
> SDL_UnlockSurface(screen);
> SDL_UpdateRect(screen, 10, 10, 200, 120);
> SDL_Delay(3000);
> return 0;
> }
>
> _______________________________________________
> SDL mailing list
> SDL at lists.libsdl.org
> http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org
>
>
--
View this message in context: http://www.nabble.com/SDL-fullscreen-problem-tf4370363.html#a12471881
Sent from the SDL mailing list archive at Nabble.com.
More information about the SDL
mailing list