/* ========================================================================= */
#include "../engines.h"
+#include "../conf_gfx.h"
/* ========================================================================= */
/* screen sizes and positions for SP engine */
-#define ORIG_TILEX 16
-#define ORIG_TILEY 16
+#define ORIG_TILESIZE 16
#define ZOOM_FACTOR 2
-#define TILEX (ORIG_TILEX * ZOOM_FACTOR)
-#define TILEY (ORIG_TILEY * ZOOM_FACTOR)
-
+#define TILESIZE (ORIG_TILESIZE * ZOOM_FACTOR)
+#define TILEX TILESIZE
+#define TILEY TILESIZE
+
+#define ORIG_SCR_MENUX 20
+#define ORIG_SCR_MENUY 12
+#define SCR_MENUX 17
+#define SCR_MENUY 12
+#if 1
+extern int SCR_FIELDX, SCR_FIELDY;
+#else
#define SCR_FIELDX 17
#define SCR_FIELDY 17
+#endif
+#define MAX_BUF_XSIZE (2 + SCR_FIELDX + 2)
+#define MAX_BUF_YSIZE (2 + SCR_FIELDY + 2)
/* often used screen positions */
+#if 1
+extern int SX, SY;
+#else
#define SX 8
#define SY 8
+#endif
#define SXSIZE (SCR_FIELDX * TILEX)
#define SYSIZE (SCR_FIELDY * TILEY)
+#define FXSIZE (MAX_BUF_XSIZE * TILEX)
+#define FYSIZE (MAX_BUF_YSIZE * TILEY)
+
+#if 1
+extern int REAL_SX, REAL_SY;
+#else
+#define REAL_SX (SX - 2)
+#define REAL_SY (SY - 2)
+#endif
+#define FULL_SXSIZE (2 + SXSIZE + 2)
+#define FULL_SYSIZE (2 + SYSIZE + 2)
/* ------------------------------------------------------------------------- */
extern struct LevelInfo_SP native_sp_level;
-extern struct GameInfo_SP game_sp;
+extern Bitmap *bitmap_db_field_sp;
+
+extern int GfxElementLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
+extern int GfxGraphicLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
+extern int GfxGraphic[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
+extern int GfxFrame[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
/* ------------------------------------------------------------------------- */