fixed crash bug with wrongly covering the screen for native BD engine
[rocksndiamonds.git] / src / libgame / sdl.h
index a5271c8152a1597d81fd585d0465c3c51e9739d6..bbbaa7675919640c264161d7f86a9a467b35669c 100644 (file)
@@ -17,7 +17,7 @@
 #include <SDL_mixer.h>
 #include <SDL_net.h>
 #include <SDL_thread.h>
-#if defined(PLATFORM_WIN32)
+#if defined(PLATFORM_WINDOWS)
 #include <SDL_syswm.h>
 #endif
 
@@ -75,6 +75,10 @@ struct SDLSurfaceInfo
   char *source_filename;
 
   int width, height;
+
+  int alpha[2][2];             // [surface|texture][opaque|masked]
+  int alpha_next_blit;
+
   SDL_Surface *surface;
   SDL_Surface *surface_masked;
   SDL_Texture *texture;
@@ -395,6 +399,8 @@ void SDLSetAlpha(SDL_Surface *, boolean, int);
 const char *SDLGetRendererName(void);
 boolean SDLSetNativeSurface(SDL_Surface **);
 SDL_Surface *SDLGetNativeSurface(SDL_Surface *);
+SDL_Surface *SDLCreateNativeSurface(int, int, int);
+Bitmap *SDLGetBitmapFromSurface(SDL_Surface *);
 void SDLCreateBitmapTextures(Bitmap *);
 void SDLFreeBitmapTextures(Bitmap *);
 
@@ -416,8 +422,8 @@ void SDLLimitScreenUpdates(boolean);
 void SDLInitVideoDisplay(void);
 void SDLInitVideoBuffer(boolean);
 boolean SDLSetVideoMode(boolean);
-void SDLCreateBitmapContent(Bitmap *, int, int, int);
 void SDLFreeBitmapPointers(Bitmap *);
+void SDLBlitSurface(SDL_Surface *, SDL_Surface *, int, int, int, int, int, int);
 void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
 void SDLBlitTexture(Bitmap *, int, int, int, int, int, int, int);
 void SDLFillRectangle(Bitmap *, int, int, int, int, Uint32);
@@ -428,9 +434,9 @@ void SDLDrawLine(Bitmap *, int, int, int, int, Uint32);
 Pixel SDLGetPixel(Bitmap *, int, int);
 void SDLPutPixel(Bitmap *, int, int, Pixel);
 
-void SDLInvertArea(Bitmap *, int, int, int, int, Uint32);
 void SDLCopyInverseMasked(Bitmap *, Bitmap *, int, int, int, int, int, int);
 
+SDL_Surface *SDLZoomSurface(SDL_Surface *, int, int);
 Bitmap *SDLZoomBitmap(Bitmap *, int, int);
 
 Bitmap *SDLLoadImage(char *);
@@ -439,6 +445,7 @@ void SDLSetMouseCursor(struct MouseCursorInfo *);
 
 void SDLOpenAudio(void);
 void SDLCloseAudio(void);
+void SDLReopenAudio(void);
 
 void SDLWaitEvent(Event *);
 void SDLCorrectRawMousePosition(int *, int *);