rnd-20091208-1-src
authorHolger Schemel <info@artsoft.org>
Tue, 8 Dec 2009 21:19:48 +0000 (22:19 +0100)
committerHolger Schemel <info@artsoft.org>
Sat, 30 Aug 2014 08:58:07 +0000 (10:58 +0200)
* fixed some problems with Supaplex engine when compiling for Windows
* added special mode to convert elements of Sokoban XSB levels to CEs

20 files changed:
ChangeLog
src/conftime.h
src/game_sp/BugsTerminals.c
src/game_sp/Capture.c
src/game_sp/Capture.h
src/game_sp/DDScrollBuffer.c
src/game_sp/DDSpriteBuffer.c
src/game_sp/DirectDrawGlobals.h
src/game_sp/DirectXGlobals.c
src/game_sp/DirectXGlobals.h
src/game_sp/MainForm.c
src/game_sp/MainForm.h
src/game_sp/Sound.c
src/game_sp/TickCountObject.c
src/game_sp/TopMost.c
src/game_sp/TopMost.h
src/game_sp/vb_defs.h
src/game_sp/vb_lib.c
src/game_sp/vb_lib.h
src/game_sp/vb_types.h

index acaf49357e99bced8df2b9bcd890d9e9f4053919..1c08760ae832d05ffc14b6d83312a5af7cc96945 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-12-08
+       * fixed some problems with Supaplex engine when compiling for Windows
+
+2009-12-05
+       * added special mode to convert elements of Sokoban XSB levels to CEs
+
 2009-12-01
        * added reading native Sokoban levels and level packages (XSB files)
 
index 2506dc7057737659efd3db3093d98c528adfc24f..0dac5e2cc10a3ea66d2598901a13e995f711dde4 100644 (file)
@@ -1 +1 @@
-#define COMPILE_DATE_STRING "2009-12-05 22:18"
+#define COMPILE_DATE_STRING "2009-12-08 22:09"
index 952ccb624fbac8fddc594b2737440004c09ab6c0..f572e39d21b043d30adcace8d9bf2a17c4d03ede 100644 (file)
@@ -8,7 +8,7 @@
 
 // --- Option Explicit
 
-long GetTickCount();
+long MyGetTickCount();
 
 byte *TerminalState;
 int TerminalMaxCycles;
@@ -148,7 +148,7 @@ int subRandomize()
 
   long Tick, Tmp;
 
-  Tick = GetTickCount();
+  Tick = MyGetTickCount();
   Tmp = ((Tick ^ (long)(Tick / (1 << 16))) & 0xFFFF);
   RandomSeed = 0x7FFF & Tmp;
   if ((Tmp & 0x8000) != 0)
index 9a86f9cd8c92614df72ce0245c26e40c0372aaa7..5a71fd0eb68a137b190da77ee098230b7840101b 100644 (file)
@@ -4,6 +4,8 @@
 
 #include "Capture.h"
 
+#if 0
+
 // static char *VB_Name = "CaptureModule";
 
 // --------------------------------------------------------------------
@@ -95,7 +97,9 @@ long SelectPalette(long hDC, long hPalette, long bForceBackground);
 long RealizePalette(long hDC);
 long GetWindowDC(long hWnd);
 long GetDC(long hWnd);
+#if 0
 long GetWindowRect(long hWnd, RECT lpRect);
+#endif
 long ReleaseDC(long hWnd, long hDC);
 long GetDesktopWindow();
 
@@ -143,7 +147,9 @@ int SelectPalette(int hDC, int hPalette, int bForceBackground);
 int RealizePalette(int hDC);
 int GetWindowDC(int hWnd);
 int GetDC(int hWnd);
+#if 0
 int GetWindowRect(int hWnd, RECT lpRect);
+#endif
 int ReleaseDC(int hWnd, int hDC);
 int GetDesktopWindow();
 
@@ -427,6 +433,8 @@ Picture CaptureClient(Form frmSrc)
   return CaptureClient;
 }
 
+#if 0
+
 // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 //
 // CaptureActiveWindow
@@ -465,6 +473,8 @@ Picture CaptureActiveWindow()
   return CaptureActiveWindow;
 }
 
+#endif
+
 // ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
 //
@@ -530,3 +540,4 @@ void PrintPictureToFitPage(Printer Prn, Picture pic)
 
 // --------------------------------------------------------------------
 
+#endif
index f2b8e1b5d186c84460d965d436b601af268bda58..427a9b9c4b7e65595405484f6772255e5cac1620 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "global.h"
 
+#if 0
+
 #ifndef HAS_PALETTEENTRY
 typedef struct
 {
@@ -144,4 +146,6 @@ extern Picture CaptureWindow(int hWndSrc, boolean Client, int LeftSrc, int TopSr
 extern Picture CreateBitmapPicture(int hBmp, int hPal);
 extern void PrintPictureToFitPage(Printer Prn, Picture pic);
 
+#endif
+
 #endif /* CAPTURE_H */
index 6df6f1e20c3aa24735e3861a58b3a1a4a646a56e..24594faa19034b6e58234bb966a8289ac96a340a 100644 (file)
@@ -315,6 +315,8 @@ int DDScrollBuffer_Get_Height()
   return Height;
 }
 
+#if 0
+
 long DDScrollBuffer_CreateAtSize(long Width, long Height, long hWndViewPort)
 {
   long CreateAtSize;
@@ -358,6 +360,7 @@ void DDScrollBuffer_Cls(int BackColor)
   Buffer.BltColorFill(EmptyRect, BackColor);
 }
 
+#endif
 
 /* copy the entire screen to the window at the scroll position */
 
@@ -553,8 +556,12 @@ void BackToFront_SP(void)
 
 void DDScrollBuffer_Blt_Ext(Bitmap *target_bitmap)
 {
-  RECT DR, SR;
+  MyRECT DR, SR;
+#if 1
+  long tX, tY;
+#else
   long tX, tY, L;
+#endif
   int sX, sY;
   // RECT ERect;
   // long Restore;
@@ -670,8 +677,12 @@ void DDScrollBuffer_Blt_Ext(Bitmap *target_bitmap)
   if (IS_NOTHING(&Buffer, sizeof(Buffer)))
     return;
 
+#if 0
   if (IS_NOTHING(&PrimarySurface, sizeof(PrimarySurface)))
     return;
+#endif
+
+#if 0
 
   L = PrimarySurface.Blt(DR, &Buffer, SR, DDBLT_WAIT);
   if (L != DD_OK)
@@ -740,6 +751,7 @@ void DDScrollBuffer_Blt_Ext(Bitmap *target_bitmap)
         break;
 #endif
 
+#if 0
       case DDERR_SURFACELOST:
         DDraw.RestoreAllSurfaces();
         if (! PrimarySurface.isLost())
@@ -751,6 +763,7 @@ void DDScrollBuffer_Blt_Ext(Bitmap *target_bitmap)
         // RestorePrimarySurface
         // ClipToWindow 0
         break;
+#endif
 
 #if 0
       case DDERR_UNSUPPORTED:
@@ -768,6 +781,8 @@ void DDScrollBuffer_Blt_Ext(Bitmap *target_bitmap)
     }
   }
 
+#endif
+
 #if 0
   //  Buffer.UpdateOverlay SR, PrimarySurface, DR, DDOVER_SHOW
   if (EditFlag)
index 872ded6f1a27b736c23d074c79b8520ba0109cbe..bcaaa9841cbd750b6fb029332febf6c173e74ecd 100644 (file)
@@ -132,6 +132,8 @@ boolean DDSpriteBuffer_CreateFromFile(char *Path, long xSprites, long ySprites)
   return CreateFromFile;
 }
 
+#if 0
+
 boolean DDSpriteBuffer_CreateAtSize(long Width, long Height, long xSprites, long ySprites)
 {
   boolean CreateAtSize;
@@ -163,6 +165,10 @@ boolean DDSpriteBuffer_CreateAtSize(long Width, long Height, long xSprites, long
   return CreateAtSize;
 }
 
+#endif
+
+#if 0
+
 void DDSpriteBuffer_Cls(int BackColor)
 {
   RECT EmptyRect;
@@ -170,9 +176,11 @@ void DDSpriteBuffer_Cls(int BackColor)
   Buffer.BltColorFill(EmptyRect, BackColor);
 }
 
+#endif
+
 static void Blt(int pX, int pY, int SpriteX, int SpriteY)
 {
-  RECT DR, SR;
+  MyRECT DR, SR;
 #if 0
   long Tmp;
 #endif
index 71cc763ffde8a11bfd361a572b60ad05a583c283..9acca161510d58cbc30b19b894c6175385c924d9 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "global.h"
 
+#if 0
+
 extern void ClipToWindow(long hWnd);
 extern void InitDirectDraw(long hWndClip);
 extern void ReleaseDirectDraw();
@@ -20,4 +22,6 @@ extern DirectDraw7 DirectDraw;
 extern DirectDrawSurface7 PrimarySurface;
 extern DirectX7 DirectX;
 
+#endif
+
 #endif /* DIRECTDRAWGLOBALS_H */
index 9478bef48d71d856bf79b273b3cf66ba36540000..378903d2b7b0688f9d52f7919dca6baba7a82f26 100644 (file)
@@ -8,6 +8,8 @@
 
 // --- Option Explicit
 
+#if 0
+
 DirectX7 DirectX;
 DirectX7 DirectXS;
 DirectDraw7 DDraw;
@@ -17,6 +19,10 @@ DirectSound DSound;
 // Public DKeyboard As DirectInputDevice
 DirectDrawSurface7 PrimarySurface;
 
+#endif
+
+#if 0
+
 void InitDirectX(long hWndForm, long hWndClip)
 {
   // DirectX = New DirectX7; // (handle this later, if needed)
@@ -93,3 +99,4 @@ void ClipToWindow(long hWnd)
 //  Set Pal = PrimarySurface.GetPalette()
 // End Sub
 
+#endif
index 4615d91e59ccc0b186f44ed95d7ed3554c760eaf..d00a5a9acbb3832fe827558bff46ee222773d3ec 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "global.h"
 
+#if 0
+
 extern void ClipToWindow(long hWnd);
 extern void InitDirectX(long hWndForm, long hWndClip);
 extern void ReleaseDirectDraw();
@@ -23,4 +25,6 @@ extern DirectSound DSound;
 extern DirectX7 DirectX;
 extern DirectX7 DirectXS;
 
+#endif
+
 #endif /* DIRECTXGLOBALS_H */
index a9dc22c5789dbf8cbaa4a74693cfd4feb05e4b54..4ac25f812e2f398b756d92b5e710197d940bb8f1 100644 (file)
@@ -674,16 +674,26 @@ void DrawFieldNoAnimated(int X, int Y);
 // --- Option Explicit
 // --- Option Compare Text
 
+#if 0
+
 long SetParent(long hWndChild, long hWndNewParent);
 long SetWindowLong(long hWnd, long nIndex, long dwNewLong);
 long GetWindowLong(long hWnd, long nIndex);
+#if 0
 long GetTempPath(long nBufferLength, char *lpBuffer);
+#endif
 long GetWindowText(long hWnd, char *lpString, long cch);
 
+#endif
+
+#if 0
+
 #define GWL_STYLE                      ((-16))
 #define WS_CHILD                       (0x40000000)
 #define WS_POPUP                       (0x80000000)
 
+#endif
+
 // [UNCOMMENTED] Dim StretchWidth2&
 
 char *MpxBmp;
index 0dc8547d0120931459ca49b0b46b1177d53da083..90db2d172b776e1e64495edfa8f925bf9d532213 100644 (file)
@@ -19,7 +19,9 @@ extern void DrawField(int X, int Y);
 extern void DrawFieldAnimated(int X, int Y);
 extern void DrawFieldNoAnimated(int X, int Y);
 extern void DrawSprite(int X, int Y, int SpritePos);
+#if 0
 extern void InvalidateRect(long XMin, long YMin, long XMax, long YMax);
+#endif
 extern void Let_PanelVisible(boolean NewVal);
 extern void ReLoadStretchSprites();
 extern void SaveSnapshot(currency Number);
index 4bb5208421fe95494498a046ecaf5206f2bf2afe..b17c41936a5ce69cdec7cc7254a22f3a7c9c5a15 100644 (file)
@@ -11,6 +11,8 @@
 int MusicOnFlag;
 int FXOnFlag;
 
+#if 0
+
 DirectSoundBuffer ZonkFX[1 + 1];
 DirectSoundBuffer InfotronFX[1 + 1];
 DirectSoundBuffer BugFX[1 + 1];
@@ -19,6 +21,8 @@ DirectSoundBuffer PushFX;
 DirectSoundBuffer ExitFX;
 DirectSoundBuffer BaseFX;
 
+#endif
+
 void LoadSoundFX()
 {
 
@@ -56,6 +60,8 @@ void LoadSoundFX()
 
 void subSoundFXZonk()
 {
+#if 0
+
   int i;
 
   if (FXOnFlag == 0)
@@ -72,10 +78,14 @@ void subSoundFXZonk()
       }
     }
   }
+
+#endif
 }
 
 void subSoundFXBug()
 {
+#if 0
+
   int i;
 
   if (FXOnFlag == 0)
@@ -92,10 +102,14 @@ void subSoundFXBug()
       }
     }
   }
+
+#endif
 }
 
 void subSoundFXInfotron()
 {
+#if 0
+
   int i;
 
   if (FXOnFlag == 0)
@@ -112,10 +126,14 @@ void subSoundFXInfotron()
       }
     }
   }
+
+#endif
 }
 
 void subSoundFXExplosion()
 {
+#if 0
+
   int i;
 
   if (FXOnFlag == 0)
@@ -132,10 +150,14 @@ void subSoundFXExplosion()
       }
     }
   }
+
+#endif
 }
 
 void subSoundFXBase()
 {
+#if 0
+
   if (FXOnFlag == 0)
     return;
 
@@ -146,10 +168,14 @@ void subSoundFXBase()
   {
     BaseFX.Play DSBPLAY_DEFAULT;
   }
+
+#endif
 }
 
 void subSoundFXPush()
 {
+#if 0
+
   if (FXOnFlag == 0)
     return;
 
@@ -160,10 +186,14 @@ void subSoundFXPush()
   {
     PushFX.Play DSBPLAY_DEFAULT;
   }
+
+#endif
 }
 
 void subSoundFXExit()
 {
+#if 0
+
   if (FXOnFlag == 0)
     return;
 
@@ -174,6 +204,8 @@ void subSoundFXExit()
   {
     ExitFX.Play DSBPLAY_DEFAULT;
   }
+
+#endif
 }
 
 void subMusicInit()
index 9c8ba48adc3141b9d41ee2691d5fbde0bf900c6a..c3c4443e5d535cd0ec21bda765527e5fa06e0d75 100644 (file)
 #define LongMin                        (-(double)2147483648UL) // the "#" sign is a bug of the VB environment AutoFormat function but causes no real problems; don't  worry 'bout it!
 #define LongMax                        (2147483647UL)
 
-long GetTickCount();
+#if 0
+
+long MyGetTickCount();
 long QueryPerformanceCounter(currency lpPerformanceCount);
 long QueryPerformanceFrequency(currency lpFrequency);
 
+#endif
+
 boolean DelayLoopActive;
 
 boolean MPause, bHighPerf;
 currency PFreq; // LARGE_INTEGER
 double sFactor, msFactor, usFactor;
 
+#if 0
+
 boolean TickCountObject_Get_Active()
 {
   boolean Active;
@@ -99,7 +105,7 @@ currency TickCountObject_Get_TickNow()
   }
   else
   {
-    TickNow = GetTickCount();
+    TickNow = MyGetTickCount();
   }
 
   return TickNow;
@@ -119,7 +125,7 @@ long TickCountObject_TickDiffS(currency TickStart)
   }
   else
   {
-    NewTick = GetTickCount();
+    NewTick = MyGetTickCount();
     if (NewTick < TickStart)
     {
       // Overflow occured and needs to be handled
@@ -150,7 +156,7 @@ long TickCountObject_TickDiffMS(currency TickStart)
   }
   else
   {
-    NewTick = GetTickCount();
+    NewTick = MyGetTickCount();
     if (NewTick < TickStart)
     {
       // Overflow occured and needs to be handled
@@ -179,7 +185,7 @@ currency TickCountObject_TickDiffUS(currency TickStart)
   }
   else
   {
-    NewTick = GetTickCount();
+    NewTick = MyGetTickCount();
     if (NewTick < TickStart)
     {
       // Overflow occured and needs to be handled
@@ -194,6 +200,8 @@ currency TickCountObject_TickDiffUS(currency TickStart)
   return TickDiffUS;
 }
 
+#endif
+
 #if 0
 
 static void Class_Initialize()
index 319f0ea0cfdb9077687606027181625d39aa8047..82b7cf5054231ef6ea411eeb5282bf3ef0653084 100644 (file)
@@ -4,6 +4,8 @@
 
 #include "TopMost.h"
 
+#if 0
+
 // static char *VB_Name = "TopMost_Module";
 // --- Option Explicit
 // --- const int SWP_FRAMECHANGED = 0x20;
@@ -49,3 +51,4 @@ void HideWindow(long hWnd)
   i = SetWindowPos(hWnd, HWND_BOTTOM, 100, 100, 200, 200, SWP_HIDEWINDOW);
 }
 
+#endif
index 3543239aa8c0522730141b8269378f1c1ad3100d..4eb6f24dbe099600f9c94e35c9943564e4e0575c 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "global.h"
 
+#if 0
+
 #define HWND_BOTTOM                    (1)
 #define HWND_BROADCAST                         (0xFFFF)
 #define HWND_DESKTOP                   (0)
@@ -35,4 +37,6 @@ extern void HideWindow(long hWnd);
 extern void TopMost(Object obj);
 extern void UnTopMost(Object obj);
 
+#endif
+
 #endif /* TOPMOST_H */
index 47ea35befd470b63f540d931d391935bde8fa10e..b25d1570f16a3ef176d5e182c8e40008861b64e1 100644 (file)
@@ -71,6 +71,8 @@
 #define DDERR_UNSUPPORTED      (VALUE_START_DD_ERR + 17)
 #define DDERR_WASSTILLDRAWING  (VALUE_START_DD_ERR + 18)
 
+#if 0
+
 #define DSSCL_PRIORITY         (VALUE_START_DS + 1)
 #define DSBCAPS_CTRLFREQUENCY  (VALUE_START_DS + 2)
 #define DSBCAPS_CTRLPAN                (VALUE_START_DS + 3)
@@ -80,4 +82,6 @@
 #define DSBSTATUS_PLAYING      (VALUE_START_DS + 7)
 #define DSBPLAY_DEFAULT                (VALUE_START_DS + 8)
 
+#endif
+
 #endif /* VB_DEFS_H */
index c2a9fceea2bd0ce0c68f109ec1abc6d18b26e622..9381b6605adc3de276b3debd020e51a50793bc61 100644 (file)
@@ -197,7 +197,7 @@ int FileLen(char *a)
   }
 }
 
-long GetTickCount()
+long MyGetTickCount()
 {
   return random_linux_libc(RANDOM_SIMPLE);
 }
@@ -217,7 +217,11 @@ void SaveSetting(const char * a, const char *b, char *c, int d)
   return;
 }
 
+#if 0
+
 long GetTempPath(long a, char *b)
 {
   return 0;
 }
+
+#endif
index 97340ec81c780dde01a8e790108cbd5bc0d57988..1c2c2ba7f41939ff10248d68f04ae84c221e7cdb 100644 (file)
@@ -50,7 +50,7 @@ extern char *Hex(int);
 
 extern int FileLen(char *);
 
-extern long GetTickCount();
+extern long MyGetTickCount();
 
 extern int GetAttr(char *);
 
@@ -58,6 +58,8 @@ extern void DoEvents();
 
 extern void SaveSetting(const char *, const char *, char *, int);
 
+#if 0
 extern long GetTempPath(long, char *);
+#endif
 
 #endif /* VB_LIB_H */
index f2fb53cee26769cbd95f03f96e9e4e87d3405cbf..ceabb2743b5c5795ff29246b6f9ebf906d8fd46f 100644 (file)
@@ -34,7 +34,7 @@ typedef struct
   int top;
   int right;
   int bottom;
-} RECT;
+} MyRECT;
 #define HAS_RECT
 #endif
 
@@ -105,9 +105,9 @@ typedef struct
   boolean (*isLost)(void);
   void (*GetSurfaceDesc)(DDSURFACEDESC2);
   void (*SetClipper)(DirectDrawClipper);
-  // long (*Blt)(RECT, DirectDrawSurface7, RECT, int);
-  long (*Blt)(RECT, void *, RECT, int);
-  void (*BltColorFill)(RECT, int);
+  // long (*Blt)(MyRECT, DirectDrawSurface7, MyRECT, int);
+  long (*Blt)(MyRECT, void *, MyRECT, int);
+  void (*BltColorFill)(MyRECT, int);
 } DirectDrawSurface7;
 
 typedef struct
@@ -124,6 +124,8 @@ typedef struct
   int lFlags;
 } DSBUFFERDESC;
 
+#if 0
+
 typedef struct
 {
   int nFormatTag;
@@ -150,9 +152,11 @@ typedef struct
 {
   DirectDraw7 (*DirectDrawCreate)(char *);
   DirectSound (*DirectSoundCreate)(char *);
-  void (*GetWindowRect)(long, RECT);
+  void (*GetWindowRect)(long, MyRECT);
 } DirectX7;
 
+#endif
+
 typedef struct
 {
   int Left;