4 /* ========================================================================= */
5 /* external functions and definitions imported from main program to game_sp */
6 /* ========================================================================= */
8 #include "../engines.h"
9 #include "../conf_gfx.h"
12 /* ========================================================================= */
13 /* functions and definitions that are exported from game_sp to main program */
14 /* ========================================================================= */
19 /* ========================================================================= */
20 /* internal functions and definitions that are not exported to main program */
21 /* ========================================================================= */
24 /* ------------------------------------------------------------------------- */
25 /* constant definitions */
26 /* ------------------------------------------------------------------------- */
28 /* screen sizes and positions for SP engine */
30 #define NEW_TILESIZE 1
32 #define ORIG_TILESIZE 16
35 #define ZOOM_FACTOR (2 * TILESIZE_VAR / TILESIZE)
41 extern int TILESIZE_VAR;
43 #define TILEX TILESIZE
44 #define TILEY TILESIZE
45 #define TILEX_VAR TILESIZE_VAR
46 #define TILEY_VAR TILESIZE_VAR
48 #define TILESIZE (ORIG_TILESIZE * ZOOM_FACTOR)
49 #define TILEX TILESIZE
50 #define TILEY TILESIZE
53 #define ORIG_SCR_MENUX 20
54 #define ORIG_SCR_MENUY 12
58 extern int SCR_FIELDX, SCR_FIELDY;
63 #define MAX_BUF_XSIZE (2 + SCR_FIELDX + 2)
64 #define MAX_BUF_YSIZE (2 + SCR_FIELDY + 2)
66 /* often used screen positions */
75 #define SXSIZE (SCR_FIELDX * TILEX_VAR)
76 #define SYSIZE (SCR_FIELDY * TILEY_VAR)
77 #define FXSIZE (MAX_BUF_XSIZE * TILEX_VAR)
78 #define FYSIZE (MAX_BUF_YSIZE * TILEY_VAR)
80 #define SXSIZE (SCR_FIELDX * TILEX)
81 #define SYSIZE (SCR_FIELDY * TILEY)
82 #define FXSIZE (MAX_BUF_XSIZE * TILEX)
83 #define FYSIZE (MAX_BUF_YSIZE * TILEY)
87 extern int REAL_SX, REAL_SY;
89 #define REAL_SX (SX - 2)
90 #define REAL_SY (SY - 2)
92 #define FULL_SXSIZE (2 + SXSIZE + 2)
93 #define FULL_SYSIZE (2 + SYSIZE + 2)
96 /* ------------------------------------------------------------------------- */
97 /* data structure definitions */
98 /* ------------------------------------------------------------------------- */
100 /* ------------------------------------------------------------------------- */
101 /* exported variables */
102 /* ------------------------------------------------------------------------- */
104 extern struct LevelInfo_SP native_sp_level;
106 extern Bitmap *bitmap_db_field_sp;
108 extern int GfxElementLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
109 extern int GfxGraphicLast[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
110 extern int GfxGraphic[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
111 extern int GfxFrame[SP_MAX_PLAYFIELD_WIDTH][SP_MAX_PLAYFIELD_HEIGHT];
114 /* ------------------------------------------------------------------------- */
115 /* exported functions */
116 /* ------------------------------------------------------------------------- */
118 #endif /* MAIN_SP_H */