X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.c;h=585780bf0087e42884af7ab7c3f6ae0d8cebade0;hb=5693fe58c10d1472842ebe3fa45fbc9cf3aef5e4;hp=5217460d47f80ed11a9dc3dcb4b14b7de09790cf;hpb=c4e1a476135ce36417cdd797481feeaaff4301af;p=rocksndiamonds.git diff --git a/src/libgame/system.c b/src/libgame/system.c index 5217460d..585780bf 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -179,7 +179,7 @@ inline static int GetRealDepth(int depth) inline void InitVideoDisplay(void) { -#ifdef TARGET_SDL +#if defined(TARGET_SDL) SDLInitVideoDisplay(); #else X11InitVideoDisplay(); @@ -188,7 +188,11 @@ inline void InitVideoDisplay(void) inline void CloseVideoDisplay(void) { -#if defined(TARGET_X11) + KeyboardAutoRepeatOn(); + +#if defined(TARGET_SDL) + SDL_QuitSubSystem(SDL_INIT_VIDEO); +#else if (display) XCloseDisplay(display); #endif @@ -441,6 +445,8 @@ inline Pixel GetPixelFromRGB(Bitmap *bitmap, unsigned int color_r, #if defined(TARGET_SDL) pixel = SDL_MapRGB(bitmap->surface->format, color_r, color_g, color_b); +#elif defined(TARGET_ALLEGRO) + pixel = AllegroAllocColorCell(color_r << 8, color_g << 8, color_b << 8); #elif defined(TARGET_X11_NATIVE) XColor xcolor;