added support for special media buttons on Amazon Fire TV remote control
[rocksndiamonds.git] / src / config.c
1 // ============================================================================
2 // Rocks'n'Diamonds - McDuffin Strikes Back!
3 // ----------------------------------------------------------------------------
4 // (c) 1995-2014 by Artsoft Entertainment
5 //                  Holger Schemel
6 //                  info@artsoft.org
7 //                  http://www.artsoft.org/
8 // ----------------------------------------------------------------------------
9 // config.c
10 // ============================================================================
11
12 #include "libgame/libgame.h"
13
14 #include "config.h"
15 #include "conftime.h"
16
17
18 char *getSourceDateString()
19 {
20   return SOURCE_DATE_STRING;
21 }
22
23 char *getProgramTitleString()
24 {
25   return program.program_title;
26 }
27
28 char *getProgramVersionString()
29 {
30   static char program_version_string[32];
31
32   sprintf(program_version_string, "%d.%d.%d.%d%s",
33           PROGRAM_VERSION_MAJOR, PROGRAM_VERSION_MINOR, PROGRAM_VERSION_PATCH,
34           PROGRAM_VERSION_BUILD, PROGRAM_VERSION_EXTRA);
35
36   return program_version_string;
37 }
38
39 char *getProgramInitString()
40 {
41   static char *program_init_string = NULL;
42
43   if (program_init_string == NULL)
44   {
45     program_init_string = checked_malloc(strlen(getProgramTitleString()) + 1 +
46                                          strlen(getProgramVersionString()) + 1);
47
48     sprintf(program_init_string, "%s %s",
49             getProgramTitleString(), getProgramVersionString());
50   }
51
52   return program_init_string;
53 }
54
55 char *getWindowTitleString()
56 {
57   static char *window_title_string = NULL;
58
59   checked_free(window_title_string);
60
61 #if defined(TARGET_SDL2)
62
63 #ifdef DEBUG
64   window_title_string = checked_malloc(strlen(getProgramInitString()) + 20 +
65                                        strlen(getSourceDateString()) + 2 + 1);
66
67   sprintf(window_title_string, "%s (%d %%) [%s]",
68           getProgramInitString(), video.window_scaling_percent,
69           getSourceDateString());
70 #else
71   window_title_string = checked_malloc(strlen(getProgramInitString()) + 20);
72
73   sprintf(window_title_string, "%s (%d %%)",
74           getProgramInitString(), video.window_scaling_percent);
75 #endif
76
77 #else
78
79 #ifdef DEBUG
80   window_title_string = checked_malloc(strlen(getProgramInitString()) + 1 +
81                                        strlen(getSourceDateString()) + 2 + 1);
82
83   sprintf(window_title_string, "%s [%s]",
84           getProgramInitString(), getSourceDateString());
85 #else
86   window_title_string = checked_malloc(strlen(getProgramInitString()) + 1);
87
88   sprintf(window_title_string, "%s",
89           getProgramInitString());
90 #endif
91
92 #endif
93
94   return window_title_string;
95 }