ScummVM API documentation
detection.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 #ifndef MTROPOLIS_DETECTION_H
23 #define MTROPOLIS_DETECTION_H
24 
25 #include "engines/advancedDetector.h"
26 
27 #define MTROPOLIS_WIN_BOOT_SCRIPT_NAME "mtropolis_boot_win.txt"
28 #define MTROPOLIS_MAC_BOOT_SCRIPT_NAME "mtropolis_boot_mac.txt"
29 
30 namespace MTropolis {
31 
32 enum MTropolisGameID {
33  GID_OBSIDIAN = 0,
34  GID_LEARNING_MTROPOLIS = 1,
35  GID_MTI = 2,
36  GID_ALBERT1 = 3,
37  GID_ALBERT2 = 4,
38  GID_ALBERT3 = 5,
39  GID_SPQR = 6,
40  GID_STTGS = 7,
41  GID_UNIT = 8,
42  GID_MINDGYM = 9,
43  GID_ARCHITECTURE = 10,
44  GID_BEATRIX = 11,
45  GID_WTIMPACT = 12,
46  GID_WORLDBROKE = 13,
47  GID_DILBERT = 14,
48  GID_FREEWILLY = 15,
49  GID_HERCULES = 16,
50  GID_IDINO = 17,
51  GID_IDOCTOR = 18,
52  GID_DRAWMARVELWAY = 19,
53  GID_FTTS = 20,
54  GID_PURPLEMOON = 21,
55  GID_CHOMP = 22,
56  GID_CYBER24 = 23,
57  GID_IVOCLAR = 24,
58  GID_REALWILD = 25,
59  GID_TELEMED = 26,
60  GID_ANGELICA = 27,
61  GID_BABE = 28,
62  GID_BIOCELLEVO = 29,
63  GID_EASYBAKE = 30,
64  GID_FORGOTTEN = 31,
65  GID_GREVEHOLM2 = 32,
66  GID_ITACANTE = 33,
67  GID_KINGOFDRAGONPASS = 34,
68  GID_KS1ENG = 35,
69  GID_MAISY = 36,
70  GID_MSB_ANIMAL = 37,
71  GID_MSB_BUGS = 38,
72  GID_MSB_CONCERT = 39,
73  GID_MSB_FLIGHT = 40,
74  GID_MSB_MARS = 41,
75  GID_MSB_VOLCANO = 42,
76  GID_MSB_WHALES = 43,
77  GID_MYKROPOLIS = 44,
78  GID_NOTEBOOK = 45,
79  GID_PFERDPONY = 46,
80  GID_MIRODC10 = 47,
81  GID_POSER3_SAMPLER_ZYGOTE = 48,
82  GID_POSER3_ZYGOTE = 49,
83  GID_WTEXTREME = 50,
84  GID_C9SAMPLER = 51,
85  GID_ADOBE24 = 52,
86 
87  GID_GENERIC = 99,
88 };
89 
90 // Boot IDs - These can be shared across different variants if the file list and other properties are identical.
91 // Cross-reference with the game table in mTropolis engine's boot.cpp
92 enum MTropolisGameBootID {
93  MTBOOT_INVALID = 0,
94 
95  MTBOOT_USE_BOOT_SCRIPT,
96 
97  MTBOOT_OBSIDIAN_RETAIL_MAC_EN,
98  MTBOOT_OBSIDIAN_RETAIL_MAC_JP,
99  MTBOOT_OBSIDIAN_RETAIL_WIN_EN,
100  MTBOOT_OBSIDIAN_RETAIL_WIN_DE_INSTALLED,
101  MTBOOT_OBSIDIAN_RETAIL_WIN_DE_DISC,
102  MTBOOT_OBSIDIAN_RETAIL_WIN_IT,
103  MTBOOT_OBSIDIAN_DEMO_MAC_EN,
104  MTBOOT_OBSIDIAN_DEMO_WIN_EN_1,
105  MTBOOT_OBSIDIAN_DEMO_WIN_EN_2,
106  MTBOOT_OBSIDIAN_DEMO_WIN_EN_3,
107  MTBOOT_OBSIDIAN_DEMO_WIN_EN_4,
108  MTBOOT_OBSIDIAN_DEMO_WIN_EN_5,
109  MTBOOT_OBSIDIAN_DEMO_WIN_EN_6,
110  MTBOOT_OBSIDIAN_DEMO_WIN_EN_7,
111 
112  MTBOOT_MTI_RETAIL_MAC,
113  MTBOOT_MTI_RETAIL_WIN,
114  MTBOOT_MTI_RETAIL_WIN_RU_INSTALLED,
115  MTBOOT_MTI_RETAIL_WIN_RU_DISC,
116  MTBOOT_MTI_DEMO_WIN,
117 
118  MTBOOT_ALBERT1_WIN_DE,
119  MTBOOT_ALBERT2_WIN_DE,
120  MTBOOT_ALBERT3_WIN_DE,
121  MTBOOT_ALBERT1_WIN_EN,
122  MTBOOT_ALBERT2_WIN_EN,
123  MTBOOT_ALBERT3_WIN_EN,
124  MTBOOT_ALBERT1_WIN_FR,
125  MTBOOT_ALBERT2_WIN_FR,
126  MTBOOT_ALBERT3_WIN_FR,
127  MTBOOT_ALBERT1_WIN_NL,
128  MTBOOT_ALBERT2_WIN_NL,
129  MTBOOT_ALBERT3_WIN_NL,
130  MTBOOT_ALBERT3_WIN_CA,
131 
132  MTBOOT_SPQR_RETAIL_WIN,
133  MTBOOT_SPQR_RETAIL_MAC,
134 
135  MTBOOT_STTGS_RETAIL_WIN,
136  MTBOOT_STTGS_DEMO_WIN,
137 
138  MTBOOT_UNIT_REBOOTED_WIN,
139 
140  MTBOOT_MINDGYM_WIN_EN,
141  MTBOOT_MINDGYM_WIN_DE,
142 
143  MTBOOT_ARCHITECTURE_EN,
144  MTBOOT_BEATRIX_EN,
145  MTBOOT_WT_IMPACT_EN,
146  MTBOOT_WORLDBROKE_EN,
147 
148  MTBOOT_IDINO_RETAIL_EN,
149  MTBOOT_IDOCTOR_RETAIL_EN,
150 
151  MTBOOT_DILBERT_WIN_EN,
152  MTBOOT_FREEWILLY_WIN_EN,
153  MTBOOT_HERCULES_WIN_EN,
154  MTBOOT_DRAWMARVELWAY_WIN_EN,
155  MTBOOT_FTTS_WIN_EN,
156  MTBOOT_PURPLEMOON_WIN_EN,
157  MTBOOT_CHOMP_RETAIL_WIN_EN,
158  MTBOOT_CHOMP_DEMO_WIN_EN,
159 
160  MTBOOT_CYBER24_WIN_EN,
161  MTBOOT_IVOCLAR_WIN_EN,
162  MTBOOT_REALWILD_WIN_EN,
163  MTBOOT_TELEMED_WIN_EN,
164 
165  MTBOOT_ANGELICA_WIN_EN,
166  MTBOOT_BABE_WIN_EN,
167  MTBOOT_BIOCELLEVO_WIN_IT,
168  MTBOOT_EASYBAKE_WIN_EN,
169  MTBOOT_FORGOTTEN_WIN_EN,
170  MTBOOT_GREVEHOLM2_WIN_SE,
171  MTBOOT_ITACANTE_WIN_FR,
172  MTBOOT_KINGOFDRAGONPASS_WIN_EN,
173  MTBOOT_KS1ENG_WIN_EN,
174  MTBOOT_MAISY_WIN_EN,
175  MTBOOT_MSB_ANIMAL_WIN_EN,
176  MTBOOT_MSB_BUGS_WIN_EN,
177  MTBOOT_MSB_CONCERT_WIN_EN,
178  MTBOOT_MSB_FLIGHT_WIN_EN,
179  MTBOOT_MSB_MARS_WIN_EN,
180  MTBOOT_MSB_VOLCANO_WIN_EN,
181  MTBOOT_MSB_WHALES_WIN_EN,
182  MTBOOT_MYKROPOLIS_WIN_DE,
183  MTBOOT_NOTEBOOK_WIN_EN,
184  MTBOOT_PFERDPONY_WIN_DE,
185  MTBOOT_MIRODC10_WIN_DE,
186  MTBOOT_MIRODC10_WIN_EN,
187  MTBOOT_POSER3_SAMPLER_ZYGOTE_WIN_EN,
188  MTBOOT_POSER3_ZYGOTE_WIN_EN,
189  MTBOOT_WT_EXTREME_WIN_EN,
190  MTBOOT_C9SAMPLER_WIN_EN,
191  MTBOOT_ADOBE24_WIN_EN,
192 };
193 
194 enum MTGameFlag {
195  MTGF_WANT_MPEG_VIDEO = (1 << 0),
196  MTGF_WANT_MPEG_AUDIO = (1 << 1),
197 };
198 
200  AD_GAME_DESCRIPTION_HELPERS(desc);
201 
202  ADGameDescription desc;
203 
204  int gameID;
205  int gameType;
206  MTropolisGameBootID bootID;
207 };
208 
209 #define GAMEOPTION_WIDESCREEN_MOD GUIO_GAMEOPTIONS1
210 #define GAMEOPTION_DYNAMIC_MIDI GUIO_GAMEOPTIONS2
211 #define GAMEOPTION_LAUNCH_DEBUG GUIO_GAMEOPTIONS3
212 #define GAMEOPTION_SOUND_EFFECT_SUBTITLES GUIO_GAMEOPTIONS4
213 #define GAMEOPTION_AUTO_SAVE_AT_CHECKPOINTS GUIO_GAMEOPTIONS5
214 #define GAMEOPTION_ENABLE_SHORT_TRANSITIONS GUIO_GAMEOPTIONS6
215 
216 } // End of namespace MTropolis
217 
218 #endif // MTROPOLIS_DETECTION_H
Definition: advancedDetector.h:163
Definition: detection.h:199
Definition: actions.h:25