rnd-20030403-2-src
[rocksndiamonds.git] / src / libgame / system.h
index bba4a30523e0358341819b04a5f250fe2247c8f7..c5afeada6b675749eae68fe2e82a09e4f0100259 100644 (file)
 #include "platform.h"
 #include "types.h"
 
-#if defined(PLATFORM_MSDOS)
+
+#if defined(PLATFORM_MACOSX)
+#include "macosx.h"
+#elif defined(PLATFORM_WIN32)
+#include "windows.h"
+#elif defined(PLATFORM_MSDOS)
 #include "msdos.h"
 #endif
 
 #include "x11.h"
 #endif
 
-#if defined(PLATFORM_MACOSX)
-/* some symbols are already defined on Mac OS X */
-#define Delay Delay_internal
-#define DrawLine DrawLine_internal
-#define DrawText DrawText_internal
-#define GetPixel GetPixel_internal
-#endif
-
 
 /* the additional 'b' is needed for Win32 to open files in binary mode */
 #define MODE_READ              "rb"
@@ -331,6 +328,8 @@ struct GfxInfo
   int draw_deactivation_mask;
   int draw_background_mask;
 
+  Bitmap *field_save_buffer;
+
   Bitmap *background_bitmap;
   int background_bitmap_mask;
 
@@ -632,15 +631,14 @@ extern int                        FrameCounter;
 
 /* function definitions */
 
-void InitCommandName(char *);
+void InitProgramInfo(char *, char *, char *, char *, char *, char *, char *,
+                    char *, char *, char *, int);
+
 void InitExitFunction(void (*exit_function)(int));
 void InitPlatformDependantStuff(void);
 void ClosePlatformDependantStuff(void);
 
-void InitProgramInfo(char *, char *, char *, char *, char *, char *, char *,
-                    char *, char *, int);
-
-void InitGfxFieldInfo(int, int, int, int, int, int, int, int);
+void InitGfxFieldInfo(int, int, int, int, int, int, int, int, Bitmap *);
 void InitGfxDoor1Info(int, int, int, int);
 void InitGfxDoor2Info(int, int, int, int);
 void InitGfxScrollbufferInfo(int, int);
@@ -656,6 +654,7 @@ inline Bitmap *CreateBitmapStruct(void);
 inline Bitmap *CreateBitmap(int, int, int);
 inline void FreeBitmap(Bitmap *);
 inline void BlitBitmap(Bitmap *, Bitmap *, int, int, int, int, int, int);
+inline void DrawRectangle(Bitmap *, int, int, int, int, Pixel);
 inline void ClearRectangle(Bitmap *, int, int, int, int);
 inline void ClearRectangleOnBackground(Bitmap *, int, int, int, int);
 inline void SetClipMask(Bitmap *, GC, Pixmap);