1 // ============================================================================
2 // Rocks'n'Diamonds - McDuffin Strikes Back!
3 // ----------------------------------------------------------------------------
4 // (c) 1995-2024 by Artsoft Entertainment
7 // https://www.artsoft.org/
8 // ----------------------------------------------------------------------------
10 // ============================================================================
15 // ============================================================================
16 // external functions and definitions imported from main program to game_mm
17 // ============================================================================
19 #include "import_mm.h"
22 // ============================================================================
23 // functions and definitions that are exported from game_mm to main program
24 // ============================================================================
26 #include "export_mm.h"
29 // ============================================================================
30 // internal functions and definitions that are not exported to main program
31 // ============================================================================
34 // ----------------------------------------------------------------------------
35 // constant definitions
36 // ----------------------------------------------------------------------------
38 // screen sizes and positions for MM engine
40 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 MINI_TILESIZE (TILESIZE / 2)
49 #define MINI_TILEX (TILEX / 2)
50 #define MINI_TILEY (TILEY / 2)
52 extern int SCR_FIELDX, SCR_FIELDY;
54 #define MAX_BUF_XSIZE SCR_FIELDX
55 #define MAX_BUF_YSIZE SCR_FIELDY
57 // often used screen positions
61 #define SXSIZE (SCR_FIELDX * TILEX_VAR)
62 #define SYSIZE (SCR_FIELDY * TILEY_VAR)
63 #define FXSIZE (MAX_BUF_XSIZE * TILEX_VAR)
64 #define FYSIZE (MAX_BUF_YSIZE * TILEY_VAR)
66 extern int REAL_SX, REAL_SY;
68 #define FULL_SXSIZE (2 + SXSIZE + 2)
69 #define FULL_SYSIZE (2 + SYSIZE + 2)
72 // ----------------------------------------------------------------------------
73 // data structure definitions
74 // ----------------------------------------------------------------------------
76 // ----------------------------------------------------------------------------
78 // ----------------------------------------------------------------------------
80 extern struct LevelInfo_MM native_mm_level;
83 // ----------------------------------------------------------------------------
85 // ----------------------------------------------------------------------------