rnd-20090623-1-src
[rocksndiamonds.git] / src / game_sp / vb_types.h
diff --git a/src/game_sp/vb_types.h b/src/game_sp/vb_types.h
new file mode 100644 (file)
index 0000000..02758fe
--- /dev/null
@@ -0,0 +1,281 @@
+// ----------------------------------------------------------------------------
+// vb_types.h
+// ----------------------------------------------------------------------------
+
+#ifndef VB_TYPES_H
+#define VB_TYPES_H
+
+#include "../libgame/types.h"
+
+
+#if 0
+typedef unsigned char boolean;
+#endif
+
+typedef double currency;
+
+#if 0
+#if !defined(PLATFORM_WIN32)
+typedef unsigned char byte;
+#endif
+#endif
+
+typedef int Variant;
+
+typedef struct
+{
+  int hWnd;
+} Object;
+
+#ifndef HAS_RECT
+typedef struct
+{
+  int left;
+  int top;
+  int right;
+  int bottom;
+} RECT;
+#define HAS_RECT
+#endif
+
+typedef struct
+{
+  char *Path;
+} vb_App;
+
+typedef struct
+{
+  void (*Assert)(boolean);
+  void (*Print)(char *);
+} vb_Debug;
+
+typedef struct
+{
+  int Number;
+  void (*Raise)(int, char *, char *);
+} vb_Err;
+
+typedef struct
+{
+  int Width;
+  int Height;
+
+  int ScaleWidth;
+  int ScaleHeight;
+  int ScaleMode;
+
+  int Orientation;
+
+  int TwipsPerPixelX;
+  int TwipsPerPixelY;
+
+  int hWnd;
+
+  int (*ScaleX)(int, int, int);
+  int (*ScaleY)(int, int, int);
+} vb_Generic_Device;
+
+typedef vb_Generic_Device vb_Screen;
+
+typedef vb_Generic_Device Form;
+typedef vb_Generic_Device Picture;
+typedef vb_Generic_Device IPicture;
+typedef vb_Generic_Device Printer;
+
+typedef struct
+{
+  int lCaps;
+} vb_Caps;
+
+typedef struct
+{
+  int LWidth;
+  int LHeight;
+  int lFlags;
+  vb_Caps ddsCaps;
+} DDSURFACEDESC2;
+
+typedef struct
+{
+  void (*SetHWnd)(long);
+} DirectDrawClipper;
+
+typedef struct
+{
+  boolean (*isLost)(void);
+  void (*GetSurfaceDesc)(DDSURFACEDESC2);
+  void (*SetClipper)(DirectDrawClipper);
+  // long (*Blt)(RECT, DirectDrawSurface7, RECT, int);
+  void (*BltColorFill)(RECT, int);
+} DirectDrawSurface7;
+
+typedef struct
+{
+  DirectDrawSurface7 (*CreateSurface)(DDSURFACEDESC2);
+  DirectDrawSurface7 (*CreateSurfaceFromFile)(char *, DDSURFACEDESC2);
+  void (*SetCooperativeLevel)(int, int);
+  DirectDrawClipper (*CreateClipper)(int);
+  void (*RestoreAllSurfaces)(void);
+} DirectDraw7;
+
+typedef struct
+{
+  int lFlags;
+} DSBUFFERDESC;
+
+typedef struct
+{
+  int nFormatTag;
+  int nChannels;
+  int lSamplesPerSec;
+  int nBitsPerSample;
+  int nBlockAlign;
+  int lAvgBytesPerSec;
+} WAVEFORMATEX;
+
+typedef struct
+{
+  int (*GetStatus)(void);
+  void (*Play)(int);
+} DirectSoundBuffer;
+
+typedef struct
+{
+  void (*SetCooperativeLevel)(long, int);
+  DirectSoundBuffer (*CreateSoundBufferFromFile)(char *, DSBUFFERDESC, WAVEFORMATEX);
+} DirectSound;
+
+typedef struct
+{
+  DirectDraw7 (*DirectDrawCreate)(char *);
+  DirectSound (*DirectSoundCreate)(char *);
+  void (*GetWindowRect)(long, RECT);
+} DirectX7;
+
+typedef struct
+{
+  int Left;
+  int Top;
+  void (*RefreshMarker)(void);
+} MarkerObject;
+
+typedef struct
+{
+  void (*DelayMS)(long, boolean);
+  double (*TickDiffUS)(double);
+  double TickNow;
+} TickCountObject;
+
+typedef struct
+{
+  int Caption;
+  void (*Refresh)(void);
+} MainForm_lblCount;
+
+typedef struct
+{
+  boolean Checked;
+  boolean Enabled;
+} MainForm_men;
+
+typedef struct
+{
+  int Width;
+  int Height;
+  void (*Line)(int, int, int, int, int, int);
+} MainForm_picPane;
+
+typedef struct
+{
+  MainForm_lblCount lblInfoCount;
+  MainForm_lblCount lblRedDiskCount;
+  void (*DisplayLevel)(void);
+  void (*DrawField)(int, int);
+  MainForm_men menGravOn;
+  MainForm_men menZonkOn;
+  MainForm_men menEnOn;
+  MainForm_men menGravOff;
+  MainForm_men menZonkOff;
+  MainForm_men menEnOff;
+  MainForm_men menRemSP;
+  MainForm_men menSP;
+  char *Caption;
+  boolean PanelVisible;
+  void (*ShowKey)(int);
+  void (*SaveSnapshot)(int);
+  void (*menStop_Click)(void);
+  MainForm_picPane picPane;
+  char *lblFrameCount;
+  void (*SetDisplayRegion)(void);
+} MainFormObject;
+
+typedef struct
+{
+  int DestXOff;
+  int DestYOff;
+
+  void (*Blt)();
+  void (*ScrollTo)(int, int);
+  void (*ScrollTowards)(int, int, double);
+  void (*SoftScrollTo)(int, int, long, int);
+
+} DDScrollBuffer;
+
+typedef struct
+{
+  void (*BltEx)(int, int, int);
+} DDSpriteBuffer;
+
+typedef struct
+{
+  void (*CreateAtSize)(long, long, long);
+  void (*Let_Palette)(long, long);
+  void (*Let_ColorIndex)(long, long, long);
+} BitMapObject;
+
+struct DemoBufferObject
+{
+  int Size;
+  byte CheckSumByte;
+  void (*SetSubBuffer)(struct DemoBufferObject *);
+  void (*AddDemoKey)(int);
+  boolean (*Serialize)(FILE *);
+};
+typedef struct DemoBufferObject DemoBufferObject;
+
+typedef struct
+{
+  int (*Read)(char *ValName, int Default);
+  void (*Save)(char *ValName, int Val);
+} SettingsObject;
+
+typedef struct
+{
+  int left;
+  int top;
+  int ListIndex;
+  char (*List)(int);
+} cmbFileObject;
+
+typedef struct
+{
+  int Width;
+  int Height;
+  boolean Visible;
+  void (*Move)(int, int, int);
+} shpProgressObject;
+
+typedef struct
+{
+  int left;
+  int Top;
+  int Width;
+  int Height;
+} lblFrameCountObject;
+
+typedef struct
+{
+  boolean Checked;
+} menBorderObject;
+
+#endif /* VB_TYPES_H */