rnd-19990213-1
[rocksndiamonds.git] / src / main.h
index 900c5ed43100d5f8e7f7862deb1b3f0fc13aae72..7fd5813671c838c6ef56564ab03e8e94c79f767e 100644 (file)
@@ -124,6 +124,8 @@ typedef unsigned char byte;
 #define EP_BIT_HAS_CONTENT     (1 << 26)
 #define EP_BIT_EATABLE         (1 << 27)
 #define EP_BIT_SP_ELEMENT      (1 << 28)
+#define EP_BIT_QUICK_GATE      (1 << 29)
+#define EP_BIT_OVER_PLAYER     (1 << 30)
 
 #define IS_AMOEBALIVE(e)       (Elementeigenschaften[e] & EP_BIT_AMOEBALIVE)
 #define IS_AMOEBOID(e)         (Elementeigenschaften[e] & EP_BIT_AMOEBOID)
@@ -154,6 +156,8 @@ typedef unsigned char byte;
 #define HAS_CONTENT(e)         (Elementeigenschaften[e] & EP_BIT_HAS_CONTENT)
 #define IS_EATABLE(e)          (Elementeigenschaften[e] & EP_BIT_EATABLE)
 #define IS_SP_ELEMENT(e)       (Elementeigenschaften[e] & EP_BIT_SP_ELEMENT)
+#define IS_QUICK_GATE(e)       (Elementeigenschaften[e] & EP_BIT_QUICK_GATE)
+#define IS_OVER_PLAYER(e)      (Elementeigenschaften[e] & EP_BIT_OVER_PLAYER)
 
 #define IS_PLAYER(x,y)         (ELEM_IS_PLAYER(StorePlayer[x][y]))
 
@@ -298,6 +302,14 @@ struct PlayerInfo
   byte effective_action;       /* action aknowledged from network server
                                   or summarized over all configured input
                                   devices when in single player mode */
+  byte programmed_action;      /* action forced by game itself (like moving
+                                  through doors); overrides other actions */
+
+
+#if 0
+  byte programmed_speed;       /* speed (for only one move) forced by game */
+#endif
+
 
   int joystick_fd;             /* file descriptor of player's joystick */
 
@@ -309,6 +321,7 @@ struct PlayerInfo
   boolean gone, LevelSolved, GameOver;
   boolean snapped;
 
+  int move_speed;
   unsigned long move_delay;
   int last_move_dir;
 
@@ -442,7 +455,6 @@ extern int          ScreenMovDir, ScreenMovPos, ScreenGfxPos;
 extern int             BorderElement;
 extern int             GameFrameDelay;
 extern int             FfwdFrameDelay;
-extern int             MoveSpeed;
 extern int             BX1,BY1, BX2,BY2;
 extern int             SBX_Left, SBX_Right;
 extern int             SBY_Upper, SBY_Lower;
@@ -531,12 +543,12 @@ extern char               *element_info[];
 #define MICRO_GFX_PER_LINE     128
 #define HEROES_PER_LINE                16
 #define MINI_MORE_STARTX       0
-#define MINI_MORE_STARTY       224
+#define MINI_MORE_STARTY       352
 #define MICRO_MORE_STARTX      0
-#define MICRO_MORE_STARTY      336
+#define MICRO_MORE_STARTY      448
 #define MORE_PER_LINE          16
 #define MINI_MORE_PER_LINE     16
-#define MICRO_MORE_PER_LINE    16
+#define MICRO_MORE_PER_LINE    64
 #define FONT_CHARS_PER_LINE    16
 #define FONT_LINES_PER_FONT    4
 
@@ -664,7 +676,7 @@ extern char         *element_info[];
 
 #define EL_AUSGANG_AUF         107
 
-#define EL_UNUSED_108          108
+#define EL_BLACK_ORB           108
 
 #define EL_AMOEBA2DIAM         109
 #define EL_MAULWURF            110
@@ -683,11 +695,14 @@ extern char               *element_info[];
 #define EL_CHAR_ASCII0         (EL_CHAR_START-32)
 #define EL_CHAR_AUSRUF         (EL_CHAR_ASCII0+33)
 #define EL_CHAR_ZOLL           (EL_CHAR_ASCII0+34)
+#define EL_CHAR_RAUTE          (EL_CHAR_ASCII0+35)
 #define EL_CHAR_DOLLAR         (EL_CHAR_ASCII0+36)
 #define EL_CHAR_PROZ           (EL_CHAR_ASCII0+37)
+#define EL_CHAR_AMPERSAND      (EL_CHAR_ASCII0+38)
 #define EL_CHAR_APOSTR         (EL_CHAR_ASCII0+39)
 #define EL_CHAR_KLAMM1         (EL_CHAR_ASCII0+40)
 #define EL_CHAR_KLAMM2         (EL_CHAR_ASCII0+41)
+#define EL_CHAR_MULT           (EL_CHAR_ASCII0+42)
 #define EL_CHAR_PLUS           (EL_CHAR_ASCII0+43)
 #define EL_CHAR_KOMMA          (EL_CHAR_ASCII0+44)
 #define EL_CHAR_MINUS          (EL_CHAR_ASCII0+45)
@@ -710,16 +725,20 @@ extern char               *element_info[];
 #define EL_CHAR_COPY           (EL_CHAR_ASCII0+94)
 #define EL_CHAR_END            (EL_CHAR_START+79)
 
-#define EL_CHAR(x)             (EL_CHAR_A + x - 'A')
+#define EL_CHAR(x)             ((x) == 'Ä' ? EL_CHAR_AE : \
+                                (x) == 'Ö' ? EL_CHAR_OE : \
+                                (x) == 'Ü' ? EL_CHAR_UE : \
+                                EL_CHAR_A + (x) - 'A')
 
 #define EL_MAUER_X             200
 #define EL_MAUER_Y             201
 #define EL_MAUER_XY            202
 
-#define EL_UNUSED_203          203
-#define EL_UNUSED_204          204
-#define EL_UNUSED_205          205
-#define EL_UNUSED_206          206
+#define EL_EM_GATE_1           203
+#define EL_EM_GATE_2           204
+#define EL_EM_GATE_3           205
+#define EL_EM_GATE_4           206
+
 #define EL_UNUSED_207          207
 #define EL_UNUSED_208          208
 #define EL_UNUSED_209          209
@@ -767,10 +786,11 @@ extern char               *element_info[];
 #define EL_SP_CHIP_LOWER       (EL_SP_START + 39)
 #define EL_SP_END              (EL_SP_START + 39)
 
-#define EL_UNUSED_250          250
-#define EL_UNUSED_251          251
-#define EL_UNUSED_252          252
-#define EL_UNUSED_253          253
+#define EL_EM_GATE_1X          250
+#define EL_EM_GATE_2X          251
+#define EL_EM_GATE_3X          252
+#define EL_EM_GATE_4X          253
+
 #define EL_UNUSED_254          254
 #define EL_UNUSED_255          255
 
@@ -935,6 +955,7 @@ extern char         *element_info[];
 #define GFX_EDELSTEIN_ROT      152
 #define GFX_EDELSTEIN_LILA     154
 #define GFX_DYNABOMB_XL                156
+#define GFX_BLACK_ORB          157
 #define GFX_SPEED_PILL         158
 #define GFX_SONDE              159
 /* Zeile 10 (160) */
@@ -1047,62 +1068,89 @@ extern char             *element_info[];
 #define GFX_FLAMMEN_DOWN       (GFX_START_ROCKSHEROES +15*HEROES_PER_LINE + 8)
 
 /* graphics from "RocksMore" */
-#define GFX_SP_EMPTY           (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 0)
-#define GFX_SP_ZONK            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 1)
-#define GFX_SP_BASE            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 2)
-#define GFX_SP_MURPHY          (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 3)
-#define GFX_SP_INFOTRON                (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 4)
-#define GFX_SP_CHIP_SINGLE     (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 5)
-#define GFX_SP_HARD_GRAY       (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 6)
-#define GFX_SP_EXIT            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 7)
-#define GFX_SP_DISK_ORANGE     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 0)
-#define GFX_SP_PORT1_RIGHT     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 1)
-#define GFX_SP_PORT1_DOWN      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 2)
-#define GFX_SP_PORT1_LEFT      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 3)
-#define GFX_SP_PORT1_UP                (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 4)
-#define GFX_SP_PORT2_RIGHT     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 5)
-#define GFX_SP_PORT2_DOWN      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 6)
-#define GFX_SP_PORT2_LEFT      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 7)
-#define GFX_SP_PORT2_UP                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 0)
-#define GFX_SP_SNIKSNAK                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 1)
-#define GFX_SP_DISK_YELLOW     (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 2)
-#define GFX_SP_TERMINAL                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 3)
-#define GFX_SP_DISK_RED                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 4)
-#define GFX_SP_PORT_Y          (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 5)
-#define GFX_SP_PORT_X          (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 6)
-#define GFX_SP_PORT_XY         (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 7)
-#define GFX_SP_ELECTRON                (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 0)
-#define GFX_SP_BUG             (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 1)
-#define GFX_SP_CHIP_LEFT       (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 2)
-#define GFX_SP_CHIP_RIGHT      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 3)
-#define GFX_SP_HARD_BASE1      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 4)
-#define GFX_SP_HARD_GREEN      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 5)
-#define GFX_SP_HARD_BLUE       (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 6)
-#define GFX_SP_HARD_RED                (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 7)
-#define GFX_SP_HARD_YELLOW     (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 0)
-#define GFX_SP_HARD_BASE2      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 1)
-#define GFX_SP_HARD_BASE3      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 2)
-#define GFX_SP_HARD_BASE4      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 3)
-#define GFX_SP_HARD_BASE5      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 4)
-#define GFX_SP_HARD_BASE6      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 5)
-#define GFX_SP_CHIP_UPPER      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 6)
-#define GFX_SP_CHIP_LOWER      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 7)
-
-#define GFX_INVISIBLE_STEEL    (GFX_START_ROCKSMORE +  5 * MORE_PER_LINE + 3)
-#define GFX_UNSICHTBAR         (GFX_START_ROCKSMORE +  5 * MORE_PER_LINE + 7)
-
-#define GFX_SP_BUG_WARNING     (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +15)
-#define GFX_SP_EXPLODE_EMPTY   (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE + 8)
-#define GFX_SP_EXPLODE_INFOTRON        (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE + 8)
-#define GFX_SP_BUG_ACTIVE      (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE + 8)
-#define GFX_SP_SNIKSNAK_LEFT   (GFX_START_ROCKSMORE +  8 * MORE_PER_LINE + 8)
-#define GFX_SP_SNIKSNAK_RIGHT  (GFX_START_ROCKSMORE +  8 * MORE_PER_LINE +12)
-#define GFX_SP_SNIKSNAK_UP     (GFX_START_ROCKSMORE +  9 * MORE_PER_LINE + 8)
-#define GFX_SP_SNIKSNAK_DOWN   (GFX_START_ROCKSMORE +  9 * MORE_PER_LINE +12)
-
-#define GFX2_SP_ELECTRON       (GFX_START_ROCKSMORE + 10 * MORE_PER_LINE + 8)
-#define GFX2_SP_TERMINAL       (GFX_START_ROCKSMORE + 11 * MORE_PER_LINE + 8)
-#define GFX2_SP_TERMINAL_ACTIVE        (GFX_START_ROCKSMORE + 12 * MORE_PER_LINE + 8)
+#define GFX_SP_EMPTY           (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  0)
+/*
+#define GFX_SP_ZONK            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  1)
+*/
+#define GFX_SP_BASE            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  2)
+#define GFX_SP_MURPHY          (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  3)
+#define GFX_SP_INFOTRON                (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  4)
+#define GFX_SP_CHIP_SINGLE     (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  5)
+#define GFX_SP_HARD_GRAY       (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  6)
+#define GFX_SP_EXIT            (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  7)
+#define GFX_SP_DISK_ORANGE     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  0)
+#define GFX_SP_PORT1_RIGHT     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  1)
+#define GFX_SP_PORT1_DOWN      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  2)
+#define GFX_SP_PORT1_LEFT      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  3)
+#define GFX_SP_PORT1_UP                (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  4)
+#define GFX_SP_PORT2_RIGHT     (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  5)
+#define GFX_SP_PORT2_DOWN      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  6)
+#define GFX_SP_PORT2_LEFT      (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  7)
+#define GFX_SP_PORT2_UP                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  0)
+#define GFX_SP_SNIKSNAK                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  1)
+#define GFX_SP_DISK_YELLOW     (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  2)
+#define GFX_SP_TERMINAL                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  3)
+#define GFX_SP_DISK_RED                (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  4)
+#define GFX_SP_PORT_Y          (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  5)
+#define GFX_SP_PORT_X          (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  6)
+#define GFX_SP_PORT_XY         (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE +  7)
+#define GFX_SP_ELECTRON                (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  0)
+#define GFX_SP_BUG             (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  1)
+#define GFX_SP_CHIP_LEFT       (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  2)
+#define GFX_SP_CHIP_RIGHT      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  3)
+#define GFX_SP_HARD_BASE1      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  4)
+#define GFX_SP_HARD_GREEN      (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  5)
+#define GFX_SP_HARD_BLUE       (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  6)
+#define GFX_SP_HARD_RED                (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  7)
+#define GFX_SP_HARD_YELLOW     (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  0)
+#define GFX_SP_HARD_BASE2      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  1)
+#define GFX_SP_HARD_BASE3      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  2)
+#define GFX_SP_HARD_BASE4      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  3)
+#define GFX_SP_HARD_BASE5      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  4)
+#define GFX_SP_HARD_BASE6      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  5)
+#define GFX_SP_CHIP_UPPER      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  6)
+#define GFX_SP_CHIP_LOWER      (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  7)
+
+#define GFX_INVISIBLE_STEEL    (GFX_START_ROCKSMORE +  5 * MORE_PER_LINE +  3)
+#define GFX_UNSICHTBAR         (GFX_START_ROCKSMORE +  5 * MORE_PER_LINE +  7)
+#define GFX_SP_ZONK            (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  0)
+
+#define GFX_EM_KEY_1           (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  4)
+#define GFX_EM_KEY_2           (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  5)
+#define GFX_EM_KEY_3           (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  6)
+#define GFX_EM_KEY_4           (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  7)
+#define GFX_EM_GATE_1          (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  0)
+#define GFX_EM_GATE_2          (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  1)
+#define GFX_EM_GATE_3          (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  2)
+#define GFX_EM_GATE_4          (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  3)
+#define GFX_EM_GATE_1X         (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  4)
+#define GFX_EM_GATE_2X         (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  5)
+#define GFX_EM_GATE_3X         (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  6)
+#define GFX_EM_GATE_4X         (GFX_START_ROCKSMORE +  7 * MORE_PER_LINE +  7)
+
+#define GFX_MURPHY_GO_LEFT     (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  8)
+#define GFX_MURPHY_ANY_LEFT    (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE +  9)
+#define GFX_MURPHY_GO_RIGHT    (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 11)
+#define GFX_MURPHY_ANY_RIGHT   (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 12)
+#define GFX_MURPHY_SNAP_UP     (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 14)
+#define GFX_MURPHY_SNAP_DOWN   (GFX_START_ROCKSMORE +  0 * MORE_PER_LINE + 15)
+#define GFX_MURPHY_SNAP_RIGHT  (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  8)
+#define GFX_MURPHY_SNAP_LEFT   (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE +  9)
+#define GFX_MURPHY_PUSH_RIGHT  (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 10)
+#define GFX_MURPHY_PUSH_LEFT   (GFX_START_ROCKSMORE +  1 * MORE_PER_LINE + 11)
+
+#define GFX_SP_BUG_WARNING     (GFX_START_ROCKSMORE +  2 * MORE_PER_LINE + 15)
+#define GFX_SP_EXPLODE_EMPTY   (GFX_START_ROCKSMORE +  3 * MORE_PER_LINE +  8)
+#define GFX_SP_EXPLODE_INFOTRON        (GFX_START_ROCKSMORE +  4 * MORE_PER_LINE +  8)
+#define GFX_SP_BUG_ACTIVE      (GFX_START_ROCKSMORE +  6 * MORE_PER_LINE +  8)
+#define GFX_SP_SNIKSNAK_LEFT   (GFX_START_ROCKSMORE +  8 * MORE_PER_LINE +  8)
+#define GFX_SP_SNIKSNAK_RIGHT  (GFX_START_ROCKSMORE +  8 * MORE_PER_LINE + 12)
+#define GFX_SP_SNIKSNAK_UP     (GFX_START_ROCKSMORE +  9 * MORE_PER_LINE +  8)
+#define GFX_SP_SNIKSNAK_DOWN   (GFX_START_ROCKSMORE +  9 * MORE_PER_LINE + 12)
+
+#define GFX2_SP_ELECTRON       (GFX_START_ROCKSMORE + 10 * MORE_PER_LINE +  8)
+#define GFX2_SP_TERMINAL       (GFX_START_ROCKSMORE + 11 * MORE_PER_LINE +  8)
+#define GFX2_SP_TERMINAL_ACTIVE        (GFX_START_ROCKSMORE + 12 * MORE_PER_LINE +  8)
 
 /* graphics from "RocksFont" */
 #define GFX_CHAR_START         (GFX_START_ROCKSFONT)
@@ -1255,7 +1303,7 @@ extern char               *element_info[];
 #define TAPES_DIRECTORY                "tapes"
 #define SCORES_DIRECTORY       "scores"
 
-#define PROGRAM_VERSION_STRING "1.2.1"
+#define PROGRAM_VERSION_STRING "1.3.0"
 #define PROGRAM_TITLE_STRING   "Rocks'n'Diamonds"
 #define PROGRAM_AUTHOR_STRING  "Holger Schemel"
 #define WINDOW_TITLE_STRING    PROGRAM_TITLE_STRING " " PROGRAM_VERSION_STRING