ScummVM API documentation
detection_tables.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
22static const PlainGameDescriptor asylumGames[] = {
23 { "asylum", "Sanitarium" },
24 { 0, 0 }
25};
26
27namespace Asylum {
28
29static const char *const directoryGlobs[] = {
30 "Vids",
31 0
32};
33
34static const ADGameDescription gameDescriptions[] = {
35 {
36 // English CD version (unpatched)
37 "asylum",
38 "CD Unpatched",
39 {
40 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
41 {"RES.000", 0, "4d13f1412f9e7dd3eaf0a58f0e00e662", 272057},
42 {"SCN.006", 0, "71a5f49cbda597a11e877589075e27b5", 2918330},
44 },
45 Common::EN_ANY,
46 Common::kPlatformWindows,
48 GUIO0()
49 },
50 {
51 // English CD version (patched)
52 // Level 2 Lockout Bug patch was applied
53 "asylum",
54 "CD Patched",
55 {
56 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
57 {"RES.000", 0, "4d13f1412f9e7dd3eaf0a58f0e00e662", 272057},
58 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
60 },
61 Common::EN_ANY,
62 Common::kPlatformWindows,
64 GUIO0()
65 },
66 {
67 // English GOG.com version
68 "asylum",
69 "GOG.com",
70 {
71 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
72 {"RES.000", 0, "f58f8dc3e63663f174977d359e11132c", 272057},
73 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
74 {"MOV000.SMK", 0, NULL, AD_NO_SIZE},
76 },
77 Common::EN_ANY,
78 Common::kPlatformWindows,
80 GUIO0()
81 },
82
83 {
84 // English CD version (unpatched) + Chinese Patch
85 "asylum",
86 "CD Unpatched",
87 {
88 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
89 {"RES.000", 0, "4e279f32d2a0e4099f3e174aa6dcf1e8", 208458},
90 {"SCN.006", 0, "71a5f49cbda597a11e877589075e27b5", 2918330},
92 },
93 Common::ZH_CHN,
94 Common::kPlatformWindows,
96 GUIO0()
97 },
98 {
99 // English CD version (patched) + Chinese Patch
100 // Level 2 Lockout Bug patch was applied
101 "asylum",
102 "CD Patched",
103 {
104 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
105 {"RES.000", 0, "4e279f32d2a0e4099f3e174aa6dcf1e8", 208458},
106 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
108 },
109 Common::ZH_CHN,
110 Common::kPlatformWindows,
112 GUIO0()
113 },
114
115 {
116 // French GOG.com version
117 "asylum",
118 "GOG.com",
119 {
120 {"SNTRM.DAT", 0, "e09a12543c6ede1727c8ecffb74e7fd2", 8930},
121 {"RES.000", 0, "2a4677ee3fd7bfa3161e16cd59371238", 277931},
122 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
123 {"MOV000.SMK", 0, NULL, AD_NO_SIZE},
125 },
126 Common::FR_FRA,
127 Common::kPlatformWindows,
129 GUIO0()
130 },
131 {
132 // English Steam version
133 "asylum",
134 "Steam",
135 {
136 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
137 {"RES.000", 0, "f58f8dc3e63663f174977d359e11132c", 272057},
138 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
139 {"MOV000_2_SMK.ogv", 0, NULL, AD_NO_SIZE},
141 },
142 Common::EN_ANY,
143 Common::kPlatformWindows,
145 GUIO0()
146 },
147 {
148 // German Steam version
149 "asylum",
150 "Steam",
151 {
152 {"SNTRM.DAT", 0, "f427fda37a0e29afd4acf982c4cb9fb0", 8930},
153 {"RES.000", 0, "0578f326b40d22f661ac93cf49dc2c19", 285658},
154 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
155 {"MOV000_2_SMK.ogv", 0, NULL, AD_NO_SIZE},
157 },
158 Common::DE_DEU,
159 Common::kPlatformWindows,
161 GUIO0()
162 },
163 {
164 // French Steam version
165 "asylum",
166 "Steam",
167 {
168 {"SNTRM.DAT", 0, "e09a12543c6ede1727c8ecffb74e7fd2", 8930},
169 {"RES.000", 0, "94f3c795599ea79492cbf81127944f37", 277935},
170 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
171 {"MOV000_2_SMK.ogv", 0, NULL, AD_NO_SIZE},
173 },
174 Common::FR_FRA,
175 Common::kPlatformWindows,
177 GUIO0()
178 },
179 {
180 // French CD version (fanmade?)
181 "asylum",
182 "CD",
183 {
184 {"SNTRM.DAT", 0, "e09a12543c6ede1727c8ecffb74e7fd2", 8930},
185 {"RES.000", 0, "2a4677ee3fd7bfa3161e16cd59371238", 277931},
186 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
188 },
189 Common::FR_FRA,
190 Common::kPlatformWindows,
192 GUIO0()
193 },
194 {
195 // French CD version (fanmade?) alternate
196 // TRAC #16109
197 "asylum",
198 "CD",
199 {
200 {"SNTRM.DAT", 0, "e09a12543c6ede1727c8ecffb74e7fd2", 8930},
201 {"RES.000", 0, "94f3c795599ea79492cbf81127944f37", 277935},
202 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
204 },
205 Common::FR_FRA,
206 Common::kPlatformWindows,
208 GUIO0()
209 },
210 {
211 // German CD version
212 "asylum",
213 "CD",
214 {
215 {"SNTRM.DAT", 0, "f427fda37a0e29afd4acf982c4cb9fb0", 8930},
216 {"RES.000", 0, "058ea2fca583c27a8e3d7ccc16a9a3bd", 285660},
217 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
219 },
220 Common::DE_DEU,
221 Common::kPlatformWindows,
223 GUIO0()
224 },
225 {
226 // Russian CD version
227 "asylum",
228 "CD",
229 {
230 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
231 {"RES.000", 0, "1f8a262bf8b3035bd3cfda24068c4651", 263624},
232 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
234 },
235 Common::RU_RUS,
236 Common::kPlatformWindows,
238 GUIO0()
239 },
240 {
241 // Unofficial Russian translation (Fargus Multimedia)
242 "asylum",
243 "GOG.com",
244 {
245 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
246 {"RES.000", 0, "1f7b3734a8da87464ce3765bd79be208", 247149},
247 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
248 {"MOV000.SMK", 0, NULL, AD_NO_SIZE},
250 },
251 Common::RU_RUS,
252 Common::kPlatformWindows,
254 GUIO0()
255 },
256 {
257 // Unofficial Russian translation (Fargus Multimedia)
258 "asylum",
259 "Steam",
260 {
261 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
262 {"RES.000", 0, "1f7b3734a8da87464ce3765bd79be208", 247149},
263 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
264 {"MOV000_2_SMK.ogv", 0, NULL, AD_NO_SIZE},
266 },
267 Common::RU_RUS,
268 Common::kPlatformWindows,
270 GUIO0()
271 },
272 {
273 // Polish fanmade translation
274 "asylum",
275 "Fanmade",
276 {
277 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
278 {"RES.000", 0, "38989acceb9c7942b8758945768c5f85", 279825},
279 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
281 },
282 Common::PL_POL,
283 Common::kPlatformWindows,
285 GUIO0()
286 },
287 {
288 // Spanish fanmade translation
289 "asylum",
290 "Fanmade",
291 {
292 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
293 {"RES.000", 0, "4a112c41f58ac89b472be8cbfe82ab4b", 272057},
294 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
296 },
297 Common::ES_ESP,
298 Common::kPlatformWindows,
300 GUIO0()
301 },
302 {
303 // Italian fanmade translation (CD version)
304 "asylum",
305 "Fanmade",
306 {
307 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
308 {"RES.000", 0, "354521af1d7874fb048b1dea00311fa4", 285198},
309 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
311 },
312 Common::IT_ITA,
313 Common::kPlatformWindows,
315 GUIO0()
316 },
317 {
318 // Italian fanmade translation (GOG version)
319 "asylum",
320 "Fanmade",
321 {
322 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
323 {"RES.000", 0, "fa342da449bbf87c43b7c8fc51747ee4", 285198},
324 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
326 },
327 Common::IT_ITA,
328 Common::kPlatformWindows,
330 GUIO0()
331 },
332 {
333 // Hebrew fanmade translation (GOG version)
334 "asylum",
335 "Fanmade",
336 {
337 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
338 {"RES.005", 0, "02c06cb1cb4038203c027b53a5d71c05", 18064925},
339 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
341 },
342 Common::HE_ISR,
343 Common::kPlatformWindows,
345 GUIO0()
346 },
347 {
348 // English Demo
349 "asylum",
350 "Demo",
351 AD_ENTRY2s("SNTRM.DAT", "6a8079e0b49affc99d148624fbb584a1", 326,
352 "RES.000", "57446ce089c6f9decb7f3faf41d09edf", 9022),
353 Common::EN_ANY,
354 Common::kPlatformWindows,
356 GUIO0()
357 },
358 {
359 // English Alt Demo
360 "asylum",
361 "Demo",
362 AD_ENTRY2s("ASYLUM.DAT", "6a8079e0b49affc99d148624fbb584a1", 326,
363 "RES.000", "a527449397576a019cdd4884a96403e2", 9012),
364 Common::EN_ANY,
365 Common::kPlatformWindows,
367 GUIO0()
368 },
369 {
370 // Basque fanmade translation (GOG version)
371 "asylum",
372 "Fanmade",
373 {
374 {"SNTRM.DAT", 0, "7cfcc457c1f579fbf9878ac175d29374", 8930},
375 {"RES.000", 0, "4d45db59452ff4e7354f6d01e165e27a", 272057},
376 {"SCN.006", 0, "3a5b54da08198012dc0614114782d5fb", 2918330},
378 },
379 Common::EU_ESP,
380 Common::kPlatformWindows,
382 GUIO0()
383 },
385};
386
387static const ADFileBasedFallback fileBasedFallback[] = {
388 { &gameDescriptions[0], { "SNTRM.DAT", 0 } }, // default to english version
389 { 0, { 0 } }
390};
391
392} // End of namespace Asylum
#define AD_ENTRY2s(f1, x1, s1, f2, x2, s2)
Definition: advancedDetector.h:122
#define AD_LISTEND
Definition: advancedDetector.h:104
#define AD_TABLE_END_MARKER
Definition: advancedDetector.h:328
@ ADGF_DEMO
Add "-demo" to gameid.
Definition: advancedDetector.h:157
@ ADGF_DROPPLATFORM
Do not add platform to gameid.
Definition: advancedDetector.h:154
Definition: advancedDetector.h:331
Definition: advancedDetector.h:164
Definition: game.h:49