ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
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 
25 namespace 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 
49 enum 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_SHIVERS,
119  //GID_SHIVERS2, // Not SCI
120  GID_SLATER,
121  GID_SQ1,
122  GID_SQ3,
123  GID_SQ4,
124  GID_SQ5,
125  GID_SQ6,
126  GID_TORIN,
127  GID_FANMADE
128 };
129 
136  SCI_VERSION_NONE,
137  SCI_VERSION_0_EARLY, // KQ4 early, LSL2 early, XMAS card 1988
138  SCI_VERSION_0_LATE, // KQ4, LSL2, LSL3, SQ3 etc
139  SCI_VERSION_01, // KQ1 and multilingual games (S.old.*)
140  SCI_VERSION_1_EGA_ONLY, // SCI 1 EGA with parser (i.e. QFG2 only)
141  SCI_VERSION_1_EARLY, // KQ5 floppy, SQ4 floppy, XMAS card 1990, Fairy tales, Jones floppy
142  SCI_VERSION_1_MIDDLE, // LSL1, Jones CD, LSL3 & SQ3 multilingual Amiga
143  SCI_VERSION_1_LATE, // Dr. Brain 1, EcoQuest 1, Longbow, PQ3, SQ1, LSL5, KQ5 CD
144  SCI_VERSION_1_1, // Dr. Brain 2, EcoQuest 1 CD, EcoQuest 2, KQ6, QFG3, SQ4CD, XMAS 1992 and many more
145  SCI_VERSION_2, // GK1, PQ4 floppy, QFG4 floppy
146  SCI_VERSION_2_1_EARLY, // GK2 demo, KQ7 1.4/1.51, LSL6 hires, PQ4CD, QFG4CD, SQ6 early demos
147  SCI_VERSION_2_1_MIDDLE, // GK2, Hoyle 5, KQ7 2.00b, MUMG Deluxe, Phantasmagoria 1, PQ:SWAT, Shivers 1, SQ6, Torin
148  SCI_VERSION_2_1_LATE, // Demos and Mac versions of LSL7, Lighthouse, RAMA
149  SCI_VERSION_3 // LSL7, Lighthouse, RAMA, Phantasmagoria 2, interactive Lighthouse demos
150 };
151 
153 enum kMidiMode {
154  kMidiModeStandard,
155  kMidiModeFB01,
156  kMidiModeD110,
157  kMidiModeMT540,
158  kMidiModeCT460
159 };
160 
161 } // End of namespace Sci
162 
163 #endif // SCI_DETECTION_H
kMidiMode
Definition: detection.h:153
SciVersion
Definition: detection.h:135
Definition: console.h:28