rnd-20020609-1-src
[rocksndiamonds.git] / src / libgame / sdl.h
index 9c48d515b8ce2ec9cd3b1707c82db6d0197f4b9e..962754afdbeccbf731bcbc88b65d7dbf3729e70e 100644 (file)
@@ -1,7 +1,7 @@
 /***********************************************************
 * Artsoft Retro-Game Library                               *
 *----------------------------------------------------------*
-* (c) 1994-2000 Artsoft Entertainment                      *
+* (c) 1994-2001 Artsoft Entertainment                      *
 *               Holger Schemel                             *
 *               Detmolder Strasse 189                      *
 *               33604 Bielefeld                            *
 
 /* SDL type definitions */
 
-typedef struct SDLSurfaceInfo  *Bitmap;
-typedef struct SDLSurfaceInfo  *DrawBuffer;
-typedef struct SDLSurfaceInfo  *DrawWindow;
+typedef struct SDLSurfaceInfo  Bitmap;
+typedef struct SDLSurfaceInfo  DrawBuffer;
+typedef struct SDLSurfaceInfo  DrawWindow;
+typedef Uint32                 Pixel;
 
 typedef SDLKey                 Key;
 
@@ -59,12 +60,20 @@ typedef int                 Colormap;
 
 struct SDLSurfaceInfo
 {
+  char *source_filename;
+
+  int width, height;
   SDL_Surface *surface;
   SDL_Surface *surface_masked;
   GC gc;
   GC stored_clip_gc;
 };
 
+struct XY
+{
+  short x, y;
+};
+
 
 /* SDL symbol definitions */
 
@@ -305,17 +314,31 @@ struct SDLSurfaceInfo
 #define KSYM_F23               KSYM_UNDEFINED
 #define KSYM_F24               KSYM_UNDEFINED
 
+#define KSYM_FKEY_FIRST                KSYM_F1
+#define KSYM_FKEY_LAST         KSYM_F15
+#define KSYM_NUM_FKEYS         (KSYM_FKEY_LAST - KSYM_FKEY_FIRST + 1)
+
 
 /* SDL function definitions */
 
 inline void SDLInitVideoDisplay(void);
-inline void SDLInitVideoBuffer(DrawBuffer *, DrawWindow *, boolean);
-inline boolean SDLSetVideoMode(DrawBuffer *, boolean);
-inline void SDLCopyArea(Bitmap, Bitmap, int, int, int, int, int, int, int);
-inline void SDLFillRectangle(Bitmap, int, int, int, int, unsigned int);
-inline void SDLDrawSimpleLine(SDL_Surface *, int, int, int, int, unsigned int);
+inline void SDLInitVideoBuffer(DrawBuffer **, DrawWindow **, boolean);
+inline boolean SDLSetVideoMode(DrawBuffer **, boolean);
+inline void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int);
+inline void SDLFillRectangle(Bitmap *, int, int, int, int, unsigned int);
+inline void SDLDrawSimpleLine(Bitmap *, int, int, int, int, unsigned int);
+inline void SDLDrawLine(Bitmap *, int, int, int, int, Uint32);
+inline Pixel SDLGetPixel(Bitmap *, int, int);
+
+Bitmap *SDLLoadImage(char *);
 
-inline boolean SDLOpenAudio(void);
+inline void SDLOpenAudio(void);
 inline void SDLCloseAudio(void);
 
+inline void SDLNextEvent(Event *);
+
+void HandleJoystickEvent(Event *);
+void SDLInitJoysticks(void);
+boolean SDLReadJoystick(int, int *, int *, boolean *, boolean *);
+
 #endif /* SDL_H */