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  GID_BYZANTINE = 53,
87 
88  GID_GENERIC = 99,
89 };
90 
91 // Boot IDs - These can be shared across different variants if the file list and other properties are identical.
92 // Cross-reference with the game table in mTropolis engine's boot.cpp
93 enum MTropolisGameBootID {
94  MTBOOT_INVALID = 0,
95 
96  MTBOOT_USE_BOOT_SCRIPT,
97 
98  MTBOOT_OBSIDIAN_RETAIL_MAC_EN,
99  MTBOOT_OBSIDIAN_RETAIL_MAC_JP,
100  MTBOOT_OBSIDIAN_RETAIL_WIN_EN,
101  MTBOOT_OBSIDIAN_RETAIL_WIN_DE_INSTALLED,
102  MTBOOT_OBSIDIAN_RETAIL_WIN_DE_DISC,
103  MTBOOT_OBSIDIAN_RETAIL_WIN_IT,
104  MTBOOT_OBSIDIAN_DEMO_MAC_EN,
105  MTBOOT_OBSIDIAN_DEMO_WIN_EN_1,
106  MTBOOT_OBSIDIAN_DEMO_WIN_EN_2,
107  MTBOOT_OBSIDIAN_DEMO_WIN_EN_3,
108  MTBOOT_OBSIDIAN_DEMO_WIN_EN_4,
109  MTBOOT_OBSIDIAN_DEMO_WIN_EN_5,
110  MTBOOT_OBSIDIAN_DEMO_WIN_EN_6,
111  MTBOOT_OBSIDIAN_DEMO_WIN_EN_7,
112 
113  MTBOOT_MTI_RETAIL_MAC,
114  MTBOOT_MTI_RETAIL_WIN,
115  MTBOOT_MTI_RETAIL_WIN_RU_INSTALLED,
116  MTBOOT_MTI_RETAIL_WIN_RU_DISC,
117  MTBOOT_MTI_DEMO_WIN,
118 
119  MTBOOT_ALBERT1_WIN_DE,
120  MTBOOT_ALBERT2_WIN_DE,
121  MTBOOT_ALBERT3_WIN_DE,
122  MTBOOT_ALBERT1_WIN_EN,
123  MTBOOT_ALBERT2_WIN_EN,
124  MTBOOT_ALBERT3_WIN_EN,
125  MTBOOT_ALBERT1_WIN_FR,
126  MTBOOT_ALBERT2_WIN_FR,
127  MTBOOT_ALBERT3_WIN_FR,
128  MTBOOT_ALBERT1_WIN_NL,
129  MTBOOT_ALBERT2_WIN_NL,
130  MTBOOT_ALBERT3_WIN_NL,
131  MTBOOT_ALBERT3_WIN_CA,
132 
133  MTBOOT_SPQR_RETAIL_WIN,
134  MTBOOT_SPQR_RETAIL_MAC,
135 
136  MTBOOT_STTGS_RETAIL_WIN,
137  MTBOOT_STTGS_DEMO_WIN,
138 
139  MTBOOT_UNIT_REBOOTED_WIN,
140 
141  MTBOOT_MINDGYM_WIN_EN,
142  MTBOOT_MINDGYM_WIN_DE,
143 
144  MTBOOT_ARCHITECTURE_EN,
145  MTBOOT_BEATRIX_EN,
146  MTBOOT_BEATRIX_DEMO_EN,
147  MTBOOT_WT_IMPACT_EN,
148  MTBOOT_WORLDBROKE_EN,
149 
150  MTBOOT_IDINO_RETAIL_EN,
151  MTBOOT_IDOCTOR_RETAIL_EN,
152 
153  MTBOOT_DILBERT_WIN_EN,
154  MTBOOT_FREEWILLY_WIN_EN,
155  MTBOOT_HERCULES_WIN_EN,
156  MTBOOT_DRAWMARVELWAY_WIN_EN,
157  MTBOOT_FTTS_WIN_EN,
158  MTBOOT_PURPLEMOON_WIN_EN,
159  MTBOOT_CHOMP_RETAIL_WIN_EN,
160  MTBOOT_CHOMP_DEMO_WIN_EN,
161 
162  MTBOOT_CYBER24_WIN_EN,
163  MTBOOT_IVOCLAR_WIN_EN,
164  MTBOOT_REALWILD_WIN_EN,
165  MTBOOT_TELEMED_WIN_EN,
166 
167  MTBOOT_ANGELICA_WIN_EN,
168  MTBOOT_BABE_WIN_EN,
169  MTBOOT_BIOCELLEVO_WIN_IT,
170  MTBOOT_EASYBAKE_WIN_EN,
171  MTBOOT_FORGOTTEN_WIN_EN,
172  MTBOOT_GREVEHOLM2_WIN_SE,
173  MTBOOT_ITACANTE_WIN_FR,
174  MTBOOT_KINGOFDRAGONPASS_WIN_EN,
175  MTBOOT_KS1ENG_WIN_EN,
176  MTBOOT_MAISY_WIN_EN,
177  MTBOOT_MSB_ANIMAL_WIN_EN,
178  MTBOOT_MSB_BUGS_WIN_EN,
179  MTBOOT_MSB_CONCERT_WIN_EN,
180  MTBOOT_MSB_FLIGHT_WIN_EN,
181  MTBOOT_MSB_MARS_WIN_EN,
182  MTBOOT_MSB_VOLCANO_WIN_EN,
183  MTBOOT_MSB_WHALES_WIN_EN,
184  MTBOOT_MYKROPOLIS_WIN_DE,
185  MTBOOT_NOTEBOOK_WIN_EN,
186  MTBOOT_PFERDPONY_WIN_DE,
187  MTBOOT_MIRODC10_WIN_DE,
188  MTBOOT_MIRODC10_WIN_EN,
189  MTBOOT_POSER3_SAMPLER_ZYGOTE_WIN_EN,
190  MTBOOT_POSER3_ZYGOTE_WIN_EN,
191  MTBOOT_WT_EXTREME_WIN_EN,
192  MTBOOT_C9SAMPLER_WIN_EN,
193  MTBOOT_ADOBE24_WIN_EN,
194  MTBOOT_BYZANTINE_DEMO_WIN_EN,
195 };
196 
197 enum MTGameFlag {
198  MTGF_WANT_MPEG_VIDEO = (1 << 0),
199  MTGF_WANT_MPEG_AUDIO = (1 << 1),
200 };
201 
203  AD_GAME_DESCRIPTION_HELPERS(desc);
204 
205  ADGameDescription desc;
206 
207  int gameID;
208  int gameType;
209  MTropolisGameBootID bootID;
210 };
211 
212 #define GAMEOPTION_WIDESCREEN_MOD GUIO_GAMEOPTIONS1
213 #define GAMEOPTION_DYNAMIC_MIDI GUIO_GAMEOPTIONS2
214 #define GAMEOPTION_LAUNCH_DEBUG GUIO_GAMEOPTIONS3
215 #define GAMEOPTION_SOUND_EFFECT_SUBTITLES GUIO_GAMEOPTIONS4
216 #define GAMEOPTION_AUTO_SAVE_AT_CHECKPOINTS GUIO_GAMEOPTIONS5
217 #define GAMEOPTION_ENABLE_SHORT_TRANSITIONS GUIO_GAMEOPTIONS6
218 
219 } // End of namespace MTropolis
220 
221 #endif // MTROPOLIS_DETECTION_H
Definition: advancedDetector.h:163
Definition: detection.h:202
Definition: actions.h:25