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 SCI_DETECTION_H
23#define SCI_DETECTION_H
24
25namespace Sci {
26
27// GUI-options, primarily used by detection_tables.h
28#define GAMEOPTION_PREFER_DIGITAL_SFX GUIO_GAMEOPTIONS1
29#define GAMEOPTION_ORIGINAL_SAVELOAD GUIO_GAMEOPTIONS2
30#define GAMEOPTION_MIDI_MODE GUIO_GAMEOPTIONS3
31#define GAMEOPTION_JONES_CDAUDIO GUIO_GAMEOPTIONS4
32#define GAMEOPTION_WINDOWS_CURSORS GUIO_GAMEOPTIONS5
33#define GAMEOPTION_SQ4_SILVER_CURSORS GUIO_GAMEOPTIONS6
34#define GAMEOPTION_EGA_UNDITHER GUIO_GAMEOPTIONS7
35// HIGH_RESOLUTION_GRAPHICS availability is checked for in SciEngine::run()
36#define GAMEOPTION_HIGH_RESOLUTION_GRAPHICS GUIO_GAMEOPTIONS8
37#define GAMEOPTION_ENABLE_BLACK_LINED_VIDEO GUIO_GAMEOPTIONS9
38#define GAMEOPTION_HQ_VIDEO GUIO_GAMEOPTIONS10
39#define GAMEOPTION_ENABLE_CENSORING GUIO_GAMEOPTIONS11
40#define GAMEOPTION_LARRYSCALE GUIO_GAMEOPTIONS12
41#define GAMEOPTION_UPSCALE_VIDEOS GUIO_GAMEOPTIONS13
42#define GAMEOPTION_RGB_RENDERING GUIO_GAMEOPTIONS14
43#define GAMEOPTION_PALETTE_MODS GUIO_GAMEOPTIONS15
44#define GAMEOPTION_SQ1_BEARDED_MUSICIANS GUIO_GAMEOPTIONS16
45#define GAMEOPTION_TTS GUIO_GAMEOPTIONS17
46#define GAMEOPTION_ENABLE_GMM_SAVE GUIO_GAMEOPTIONS18
47#define GAMEOPTION_GK1_ENABLE_AUDIO_POPFIX GUIO_GAMEOPTIONS19
48
49enum SciGameId {
50 GID_ALL,
51 GID_ASTROCHICKEN,
52 GID_CAMELOT,
53 GID_CASTLEBRAIN,
54 GID_CHEST,
55 GID_CHRISTMAS1988,
56 GID_CHRISTMAS1990,
57 GID_CHRISTMAS1992,
58 GID_CNICK_KQ,
59 GID_CNICK_LAURABOW,
60 GID_CNICK_LONGBOW,
61 GID_CNICK_LSL,
62 GID_CNICK_SQ,
63 GID_ECOQUEST,
64 GID_ECOQUEST2,
65 GID_FAIRYTALES,
66 GID_FREDDYPHARKAS,
67 GID_FUNSEEKER,
68 GID_GK1DEMO, // We have a separate ID for GK1 demo, because it's actually a completely different game (SCI1.1 vs SCI2/SCI2.1)
69 GID_GK1,
70 GID_GK2,
71 GID_HOYLE1,
72 GID_HOYLE2,
73 GID_HOYLE3,
74 GID_HOYLE4,
75 GID_HOYLE5,
76 GID_ICEMAN,
77 GID_INNDEMO,
78 GID_ISLANDBRAIN,
79 GID_JONES,
80 GID_KQ1,
81 GID_KQ4,
82 GID_KQ5,
83 GID_KQ6,
84 GID_KQ7,
85 GID_KQUESTIONS,
86 GID_LAURABOW,
87 GID_LAURABOW2,
88 GID_LIGHTHOUSE,
89 GID_LONGBOW,
90 GID_LSL1,
91 GID_LSL2,
92 GID_LSL3,
93 GID_LSL5,
94 GID_LSL6,
95 GID_LSL6HIRES, // We have a separate ID for LSL6 SCI32, because it's actually a completely different game
96 GID_LSL7,
97 GID_MOTHERGOOSE, // this one is the SCI0 version
98 GID_MOTHERGOOSE256, // this one handles SCI1 and SCI1.1 variants, at least those 2 share a bit in common
99 GID_MOTHERGOOSEHIRES, // this one is the SCI2.1 hires version, completely different from the other ones
100 GID_MSASTROCHICKEN,
101 GID_PEPPER,
102 GID_PHANTASMAGORIA,
103 GID_PHANTASMAGORIA2,
104 GID_PQ1,
105 GID_PQ2,
106 GID_PQ3,
107 GID_PQ4,
108 GID_PQ4DEMO, // We have a separate ID for PQ4 demo, because it's actually a completely different game (SCI1.1 vs SCI2/SCI2.1)
109 GID_PQSWAT,
110 GID_QFG1,
111 GID_QFG1VGA,
112 GID_QFG2,
113 GID_QFG3,
114 GID_QFG4,
115 GID_QFG4DEMO, // We have a separate ID for QFG4 demo, because it's actually a completely different game (SCI1.1 vs SCI2/SCI2.1)
116 GID_RAMA,
117 GID_REALM,
118 GID_SHIELD,
119 GID_SHIVERS,
120 //GID_SHIVERS2, // Not SCI
121 GID_SLATER,
122 GID_SQ1,
123 GID_SQ3,
124 GID_SQ4,
125 GID_SQ5,
126 GID_SQ6,
127 GID_TORIN,
128 GID_FANMADE
129};
130
137 SCI_VERSION_NONE,
138 SCI_VERSION_0_EARLY, // KQ4 early, LSL2 early, XMAS card 1988
139 SCI_VERSION_0_LATE, // KQ4, LSL2, LSL3, SQ3 etc
140 SCI_VERSION_01, // KQ1 and multilingual games (S.old.*)
141 SCI_VERSION_1_EGA_ONLY, // SCI 1 EGA with parser (i.e. QFG2 only)
142 SCI_VERSION_1_EARLY, // KQ5 floppy, SQ4 floppy, XMAS card 1990, Fairy tales, Jones floppy
143 SCI_VERSION_1_MIDDLE, // LSL1, Jones CD, LSL3 & SQ3 multilingual Amiga
144 SCI_VERSION_1_LATE, // Dr. Brain 1, EcoQuest 1, Longbow, PQ3, SQ1, LSL5, KQ5 CD
145 SCI_VERSION_1_1, // Dr. Brain 2, EcoQuest 1 CD, EcoQuest 2, KQ6, QFG3, SQ4CD, XMAS 1992 and many more
146 SCI_VERSION_2, // GK1, PQ4 floppy, QFG4 floppy
147 SCI_VERSION_2_1_EARLY, // GK2 demo, KQ7 1.4/1.51, LSL6 hires, PQ4CD, QFG4CD, SQ6 early demos
148 SCI_VERSION_2_1_MIDDLE, // GK2, Hoyle 5, KQ7 2.00b, MUMG Deluxe, Phantasmagoria 1, PQ:SWAT, Shivers 1, SQ6, Torin
149 SCI_VERSION_2_1_LATE, // Demos and Mac versions of LSL7, Lighthouse, RAMA
150 SCI_VERSION_3 // LSL7, Lighthouse, RAMA, Phantasmagoria 2, interactive Lighthouse demos
151};
152
155 kMidiModeStandard,
156 kMidiModeFB01,
157 kMidiModeD110,
158 kMidiModeMT540,
159 kMidiModeCT460
160};
161
162} // End of namespace Sci
163
164#endif // SCI_DETECTION_H
Definition: console.h:28
SciVersion
Definition: detection.h:136
kMidiMode
Definition: detection.h:154