aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJamieson Christian2003-08-15 10:19:24 +0000
committerJamieson Christian2003-08-15 10:19:24 +0000
commite1bc6493d858f569716cf2036732e8a1ddf36573 (patch)
treeb8549f630011dcab1b4c684a22daba09b96119b2
parentf9aea7673ffcbb515e2a3ed32108b00f60598414 (diff)
downloadscummvm-rg350-e1bc6493d858f569716cf2036732e8a1ddf36573.tar.gz
scummvm-rg350-e1bc6493d858f569716cf2036732e8a1ddf36573.tar.bz2
scummvm-rg350-e1bc6493d858f569716cf2036732e8a1ddf36573.zip
Replaced ADLIB_ALWAYS and ADLIB_PREFERRED with a more flexible
list of music types supported. This was done because now PC speaker support must be treated separately, along with Adlib and native (GM/MT32) support. This fixes a problem with games that don't support PC speaker (including V5 games that don't parse SPK resources yet) being run with -epcspk or -epcjr. Those games now properly switch to -enull so that music resources still get parsed and music/script synchronization mechanisms don't break. svn-id: r9703
-rw-r--r--common/gameDetector.cpp10
-rw-r--r--common/gameDetector.h14
-rw-r--r--scumm/scummvm.cpp86
-rw-r--r--simon/simon.cpp24
-rw-r--r--sky/sky.cpp4
-rw-r--r--sword2/sword2.cpp6
6 files changed, 75 insertions, 69 deletions
diff --git a/common/gameDetector.cpp b/common/gameDetector.cpp
index 9a4fa6fc32..6a06a61c98 100644
--- a/common/gameDetector.cpp
+++ b/common/gameDetector.cpp
@@ -704,13 +704,17 @@ int GameDetector::detectMain() {
* and the game is one of those that want adlib as
* default, OR if the game is an older game that doesn't
* support anything else anyway. */
+ if (_midi_driver == MD_AUTO)
+ _midi_driver = MD_ADLIB;
bool nativeMidiDriver =
(_midi_driver != MD_NULL && _midi_driver != MD_ADLIB &&
_midi_driver != MD_PCSPK && _midi_driver != MD_PCJR);
- if ((_game.adlib & VersionSettings::ADLIB_ALWAYS) && nativeMidiDriver ||
- (_game.adlib & VersionSettings::ADLIB_PREFERRED) && _midi_driver == MD_AUTO) {
+ if (nativeMidiDriver && !(_game.midi & MDT_NATIVE))
_midi_driver = MD_ADLIB;
- }
+ if (_midi_driver == MD_ADLIB && !(_game.midi & MDT_ADLIB))
+ _midi_driver = MD_PCJR;
+ if ((_midi_driver == MD_PCSPK || _midi_driver == MD_PCJR) && !(_game.midi & MDT_PCSPK))
+ _midi_driver = MD_NULL;
if (!_gameDataPath) {
warning("No path was provided. Assuming the data files are in the current directory");
diff --git a/common/gameDetector.h b/common/gameDetector.h
index dbf5d1299b..fcf6846dae 100644
--- a/common/gameDetector.h
+++ b/common/gameDetector.h
@@ -61,16 +61,18 @@ enum {
HB_HEB = 20
};
+enum MidiDriverType {
+ MDT_NONE = 0,
+ MDT_PCSPK = 1, // MD_PCSPK and MD_PCJR
+ MDT_ADLIB = 2, // MD_ADLIB
+ MDT_NATIVE = 4 // Everything else
+};
+
struct VersionSettings {
const char *filename;
const char *gamename;
byte id, version;
- enum {
- ADLIB_DONT_CARE = 0,
- ADLIB_PREFERRED = 1,
- ADLIB_ALWAYS = 2,
- ADLIB_NEVER = 3
- } adlib;
+ int midi; // MidiDriverType values
uint32 features;
const char *detectname;
};
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp
index 9e428f5b4f..ecf9be2a0a 100644
--- a/scumm/scummvm.cpp
+++ b/scumm/scummvm.cpp
@@ -68,107 +68,107 @@ static const VersionSettings scumm_settings[] = {
/* Scumm Version 1 */
/* Scumm Version 2 */
- {"maniac", "Maniac Mansion", GID_MANIAC, 2, VersionSettings::ADLIB_ALWAYS,
+ {"maniac", "Maniac Mansion", GID_MANIAC, 2, MDT_PCSPK,
GF_SMALL_HEADER | GF_USE_KEY | GF_SMALL_NAMES | GF_16COLOR | GF_OLD_BUNDLE | GF_NO_SCALING, "00.LFL"},
- {"maniacnes", "Maniac Mansion (NES)", GID_MANIAC, 2, VersionSettings::ADLIB_ALWAYS,
+ {"maniacnes", "Maniac Mansion (NES)", GID_MANIAC, 2, MDT_NONE,
GF_SMALL_HEADER | GF_USE_KEY | GF_SMALL_NAMES | GF_16COLOR | GF_OLD_BUNDLE | GF_NO_SCALING | GF_NES, "00.LFL"},
- {"zak", "Zak McKracken and the Alien Mindbenders", GID_ZAK, 2, VersionSettings::ADLIB_ALWAYS,
+ {"zak", "Zak McKracken and the Alien Mindbenders", GID_ZAK, 2, MDT_PCSPK,
GF_SMALL_HEADER | GF_USE_KEY | GF_SMALL_NAMES | GF_16COLOR | GF_OLD_BUNDLE | GF_NO_SCALING, "00.LFL"},
/* Scumm Version 3 */
- {"indy3EGA", "Indiana Jones and the Last Crusade", GID_INDY3, 3, VersionSettings::ADLIB_ALWAYS,
+ {"indy3EGA", "Indiana Jones and the Last Crusade", GID_INDY3, 3, MDT_PCSPK | MDT_ADLIB,
GF_SMALL_HEADER | GF_SMALL_NAMES | GF_NO_SCALING | GF_USE_KEY | GF_16COLOR | GF_OLD_BUNDLE, "00.LFL"},
- {"indy3Towns", "Indiana Jones and the Last Crusade (FM Towns)", GID_INDY3, 3, VersionSettings::ADLIB_ALWAYS,
+ {"indy3Towns", "Indiana Jones and the Last Crusade (FM Towns)", GID_INDY3, 3, MDT_NONE,
GF_SMALL_HEADER | GF_SMALL_NAMES | GF_NO_SCALING | GF_OLD256 | GF_FEW_LOCALS | GF_FMTOWNS | GF_AUDIOTRACKS, "00.LFL"},
- {"indy3", "Indiana Jones and the Last Crusade (256)", GID_INDY3, 3, VersionSettings::ADLIB_ALWAYS,
+ {"indy3", "Indiana Jones and the Last Crusade (256)", GID_INDY3, 3, MDT_PCSPK | MDT_ADLIB,
GF_SMALL_HEADER | GF_SMALL_NAMES | GF_NO_SCALING | GF_OLD256 | GF_FEW_LOCALS, "00.LFL"},
- {"zak256", "Zak McKracken and the Alien Mindbenders (256)", GID_ZAK256, 3, VersionSettings::ADLIB_ALWAYS,
+ {"zak256", "Zak McKracken and the Alien Mindbenders (256)", GID_ZAK256, 3, MDT_PCSPK,
GF_SMALL_HEADER | GF_SMALL_NAMES | GF_NO_SCALING | GF_OLD256 | GF_FMTOWNS | GF_AUDIOTRACKS, "00.LFL"},
- {"loom", "Loom", GID_LOOM, 3, VersionSettings::ADLIB_PREFERRED,
+ {"loom", "Loom", GID_LOOM, 3, MDT_PCSPK | MDT_ADLIB | MDT_NATIVE,
GF_SMALL_HEADER | GF_SMALL_NAMES | GF_NO_SCALING | GF_USE_KEY | GF_16COLOR | GF_OLD_BUNDLE, "00.LFL"},
/* Scumm Version 4 */
- {"monkeyEGA", "Monkey Island 1 (EGA)", GID_MONKEY_EGA, 4, VersionSettings::ADLIB_PREFERRED,
+ {"monkeyEGA", "Monkey Island 1 (EGA)", GID_MONKEY_EGA, 4, MDT_PCSPK | MDT_ADLIB | MDT_NATIVE,
GF_SMALL_HEADER | GF_USE_KEY | GF_16COLOR, "000.LFL"},
- {"pass", "Passport to Adventure", GID_PASS, 4, VersionSettings::ADLIB_ALWAYS,
+ {"pass", "Passport to Adventure", GID_PASS, 4, MDT_PCSPK | MDT_ADLIB,
GF_SMALL_HEADER | GF_USE_KEY | GF_16COLOR, "000.LFL"},
/* Scumm version 5 */
- {"monkeyVGA", "Monkey Island 1 (256 color Floppy version)", GID_MONKEY_VGA, 4, VersionSettings::ADLIB_PREFERRED,
+ {"monkeyVGA", "Monkey Island 1 (256 color Floppy version)", GID_MONKEY_VGA, 4, MDT_PCSPK | MDT_ADLIB | MDT_NATIVE,
GF_SMALL_HEADER | GF_USE_KEY, "000.LFL"},
- {"loomcd", "Loom (256 color CD version)", GID_LOOM256, 4, VersionSettings::ADLIB_ALWAYS,
+ {"loomcd", "Loom (256 color CD version)", GID_LOOM256, 4, MDT_NONE,
GF_SMALL_HEADER | GF_USE_KEY | GF_AUDIOTRACKS, "000.LFL"},
- {"monkey", "Monkey Island 1", GID_MONKEY, 5, VersionSettings::ADLIB_PREFERRED,
+ {"monkey", "Monkey Island 1", GID_MONKEY, 5, MDT_NONE,
GF_USE_KEY | GF_AUDIOTRACKS, 0},
- {"monkey1", "Monkey Island 1 (alt)", GID_MONKEY, 5, VersionSettings::ADLIB_PREFERRED,
+ {"monkey1", "Monkey Island 1 (alt)", GID_MONKEY, 5, MDT_PCSPK | MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY | GF_AUDIOTRACKS, 0},
- {"game", "Monkey Island 1 (SegaCD version)", GID_MONKEY_SEGA, 5, VersionSettings::ADLIB_PREFERRED,
+ {"game", "Monkey Island 1 (SegaCD version)", GID_MONKEY_SEGA, 5, MDT_NONE,
GF_USE_KEY | GF_AUDIOTRACKS, 0},
- {"monkey2", "Monkey Island 2: LeChuck's revenge", GID_MONKEY2, 5, VersionSettings::ADLIB_PREFERRED,
+ {"monkey2", "Monkey Island 2: LeChuck's revenge", GID_MONKEY2, 5, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY, 0},
- {"mi2demo", "Monkey Island 2: LeChuck's revenge (Demo)", GID_MONKEY2, 5, VersionSettings::ADLIB_PREFERRED,
+ {"mi2demo", "Monkey Island 2: LeChuck's revenge (Demo)", GID_MONKEY2, 5, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY, 0},
- {"indydemo", "Indiana Jones and the Fate of Atlantis (FM Towns Demo)", GID_INDY4, 5, VersionSettings::ADLIB_PREFERRED,
+ {"indydemo", "Indiana Jones and the Fate of Atlantis (FM Towns Demo)", GID_INDY4, 5, MDT_NONE,
GF_USE_KEY, 0},
- {"atlantis", "Indiana Jones and the Fate of Atlantis", GID_INDY4, 5, VersionSettings::ADLIB_PREFERRED,
+ {"atlantis", "Indiana Jones and the Fate of Atlantis", GID_INDY4, 5, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY, 0},
- {"playfate", "Indiana Jones and the Fate of Atlantis (Demo)", GID_INDY4, 5, VersionSettings::ADLIB_PREFERRED,
+ {"playfate", "Indiana Jones and the Fate of Atlantis (Demo)", GID_INDY4, 5, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY, 0},
- {"fate", "Indiana Jones and the Fate of Atlantis (Demo)", GID_INDY4, 5, VersionSettings::ADLIB_PREFERRED,
+ {"fate", "Indiana Jones and the Fate of Atlantis (Demo)", GID_INDY4, 5, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_USE_KEY, 0},
/* Scumm Version 6 */
- {"puttputt", "Putt-Putt Joins The Parade (DOS)", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"puttputt", "Putt-Putt Joins The Parade (DOS)", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"puttdemo", "Putt-Putt Joins The Parade (DOS Demo)", GID_PUTTDEMO, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"puttdemo", "Putt-Putt Joins The Parade (DOS Demo)", GID_PUTTDEMO, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS, 0},
- {"moondemo", "Putt-Putt Goes To The Moon (DOS Demo)", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"moondemo", "Putt-Putt Goes To The Moon (DOS Demo)", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"puttmoon", "Putt-Putt Goes To The Moon (DOS)", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"puttmoon", "Putt-Putt Goes To The Moon (DOS)", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"funpack", "Putt-Putt's Fun Pack", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"funpack", "Putt-Putt's Fun Pack", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"fbpack", "Fatty Bear's Fun Pack", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"fbpack", "Fatty Bear's Fun Pack", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"fbear", "Fatty Bear's Birthday Surprise (DOS)", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"fbear", "Fatty Bear's Birthday Surprise (DOS)", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"fbdemo", "Fatty Bear's Birthday Surprise (DOS Demo)", GID_PUTTPUTT, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"fbdemo", "Fatty Bear's Birthday Surprise (DOS Demo)", GID_PUTTPUTT, 6, MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
- {"tentacle", "Day Of The Tentacle", GID_TENTACLE, 6, VersionSettings::ADLIB_PREFERRED,
+ {"tentacle", "Day Of The Tentacle", GID_TENTACLE, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY, 0},
- {"dottdemo", "Day Of The Tentacle (Demo)", GID_TENTACLE, 6, VersionSettings::ADLIB_PREFERRED,
+ {"dottdemo", "Day Of The Tentacle (Demo)", GID_TENTACLE, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY, 0},
- {"samnmax", "Sam & Max", GID_SAMNMAX, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"samnmax", "Sam & Max", GID_SAMNMAX, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_DRAWOBJ_OTHER_ORDER, 0},
- {"samdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, VersionSettings::ADLIB_PREFERRED,
+ {"samdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_DRAWOBJ_OTHER_ORDER, 0},
- {"snmdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"snmdemo", "Sam & Max (Demo)", GID_SAMNMAX, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_DRAWOBJ_OTHER_ORDER, 0},
- {"snmidemo", "Sam & Max (Interactive WIP Demo)", GID_SAMNMAX, 6, VersionSettings::ADLIB_ALWAYS,
+ {"snmidemo", "Sam & Max (Interactive WIP Demo)", GID_SAMNMAX, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE,
GF_NEW_OPCODES | GF_USE_KEY | GF_DRAWOBJ_OTHER_ORDER, 0},
- {"test", "Test demo game", GID_SAMNMAX, 6, VersionSettings::ADLIB_DONT_CARE, GF_NEW_OPCODES, 0},
+ {"test", "Test demo game", GID_SAMNMAX, 6, /*MDT_PCSPK |*/ MDT_ADLIB | MDT_NATIVE, GF_NEW_OPCODES, 0},
/* Humongous Entertainment Scumm Version 7 */
- {"farmdemo", "Let's Explore the Farm with Buzzy (Demo)", GID_SAMNMAX, 6, VersionSettings::ADLIB_DONT_CARE,
+ {"farmdemo", "Let's Explore the Farm with Buzzy (Demo)", GID_SAMNMAX, 6, MDT_NONE,
GF_NEW_OPCODES | GF_AFTER_HEV7 | GF_USE_KEY | GF_HUMONGOUS | GF_NEW_COSTUMES, 0},
/* Scumm Version 7 */
- {"ft", "Full Throttle", GID_FT, 7, VersionSettings::ADLIB_DONT_CARE,
+ {"ft", "Full Throttle", GID_FT, 7, MDT_NONE,
GF_NEW_OPCODES | GF_NEW_COSTUMES | GF_NEW_CAMERA | GF_DIGI_IMUSE, 0},
- {"ftdemo", "Full Throttle (Mac Demo)", GID_FT, 7, VersionSettings::ADLIB_DONT_CARE,
+ {"ftdemo", "Full Throttle (Mac Demo)", GID_FT, 7, MDT_NONE,
GF_NEW_OPCODES | GF_NEW_COSTUMES | GF_NEW_CAMERA | GF_DIGI_IMUSE, 0},
- {"dig", "The Dig", GID_DIG, 7, VersionSettings::ADLIB_DONT_CARE,
+ {"dig", "The Dig", GID_DIG, 7, MDT_NONE,
GF_NEW_OPCODES | GF_NEW_COSTUMES | GF_NEW_CAMERA | GF_DIGI_IMUSE, 0},
/* Scumm Version 8 */
- {"comi", "The Curse of Monkey Island", GID_CMI, 8, VersionSettings::ADLIB_DONT_CARE,
+ {"comi", "The Curse of Monkey Island", GID_CMI, 8, MDT_NONE,
GF_NEW_OPCODES | GF_NEW_COSTUMES | GF_NEW_CAMERA | GF_DIGI_IMUSE | GF_DEFAULT_TO_1X_SCALER, 0},
- {NULL, NULL, 0, 0, VersionSettings::ADLIB_DONT_CARE, 0, NULL}
+ {NULL, NULL, 0, 0, MDT_NONE, 0, NULL}
};
const VersionSettings *Engine_SCUMM_targetList() {
@@ -634,7 +634,7 @@ Scumm::Scumm (GameDetector *detector, OSystem *syst)
if (detector->_gameTempo != 0)
_imuse->property(IMuse::PROP_TEMPO_BASE, detector->_gameTempo);
_imuse->property(IMuse::PROP_OLD_ADLIB_INSTRUMENTS, (_features & GF_SMALL_HEADER) ? 1 : 0);
- _imuse->property(IMuse::PROP_MULTI_MIDI, detector->_multi_midi);
+ _imuse->property(IMuse::PROP_MULTI_MIDI, detector->_multi_midi && _midiDriver != MD_NULL);
_imuse->property(IMuse::PROP_NATIVE_MT32, detector->_native_mt32);
if (_features & GF_HUMONGOUS) {
_imuse->property(IMuse::PROP_LIMIT_PLAYERS, 1);
diff --git a/simon/simon.cpp b/simon/simon.cpp
index d34fd8a8b5..e66b5cf62d 100644
--- a/simon/simon.cpp
+++ b/simon/simon.cpp
@@ -41,18 +41,18 @@ extern bool draw_keyboard;
static const VersionSettings simon_settings[] = {
// Simon the Sorcerer 1 & 2 (not SCUMM games)
- {"simon1dos", "Simon the Sorcerer 1 (DOS)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1DOS, "GAMEPC"},
- {"simon1amiga", "Simon the Sorcerer 1 (Amiga)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1AMIGA, "gameamiga"},
- {"simon2dos", "Simon the Sorcerer 2 (DOS)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON2DOS, "GAME32"},
- {"simon1talkie", "Simon the Sorcerer 1 Talkie (DOS)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1TALKIE, "SIMON.GME"},
- {"simon2talkie", "Simon the Sorcerer 2 Talkie (DOS)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON2TALKIE, "GSPTR30"},
- {"simon1win", "Simon the Sorcerer 1 Talkie (Windows)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1WIN, "SIMON.GME"},
- {"simon1cd32", "Simon the Sorcerer 1 Talkie (Amiga CD32)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1CD32, "gameamiga"},
- {"simon2win", "Simon the Sorcerer 2 Talkie (Windows)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON2WIN, "GSPTR30"},
- {"simon2mac", "Simon the Sorcerer 2 Talkie (Amiga or Mac)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON2MAC, "GSPTR30"},
- {"simon1demo", "Simon the Sorcerer 1 (DOS Demo)", GID_SIMON_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, GAME_SIMON1DEMO, "GDEMO"},
-
- {NULL, NULL, 0, 0, VersionSettings::ADLIB_DONT_CARE, 0, NULL}
+ {"simon1dos", "Simon the Sorcerer 1 (DOS)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON1DOS, "GAMEPC"},
+ {"simon1amiga", "Simon the Sorcerer 1 (Amiga)", GID_SIMON_FIRST, 99, MDT_NONE, GAME_SIMON1AMIGA, "gameamiga"},
+ {"simon2dos", "Simon the Sorcerer 2 (DOS)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON2DOS, "GAME32"},
+ {"simon1talkie", "Simon the Sorcerer 1 Talkie (DOS)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON1TALKIE, "SIMON.GME"},
+ {"simon2talkie", "Simon the Sorcerer 2 Talkie (DOS)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON2TALKIE, "GSPTR30"},
+ {"simon1win", "Simon the Sorcerer 1 Talkie (Windows)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON1WIN, "SIMON.GME"},
+ {"simon1cd32", "Simon the Sorcerer 1 Talkie (Amiga CD32)", GID_SIMON_FIRST, 99, MDT_NONE, GAME_SIMON1CD32, "gameamiga"},
+ {"simon2win", "Simon the Sorcerer 2 Talkie (Windows)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON2WIN, "GSPTR30"},
+ {"simon2mac", "Simon the Sorcerer 2 Talkie (Amiga or Mac)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON2MAC, "GSPTR30"},
+ {"simon1demo", "Simon the Sorcerer 1 (DOS Demo)", GID_SIMON_FIRST, 99, MDT_ADLIB | MDT_NATIVE, GAME_SIMON1DEMO, "GDEMO"},
+
+ {NULL, NULL, 0, 0, MDT_NONE, 0, NULL}
};
const VersionSettings *Engine_SIMON_targetList() {
diff --git a/sky/sky.cpp b/sky/sky.cpp
index 876872670c..42358d2aef 100644
--- a/sky/sky.cpp
+++ b/sky/sky.cpp
@@ -61,8 +61,8 @@ extern bool draw_keyboard;
static const VersionSettings sky_settings[] = {
/* Beneath a Steel Sky */
- {"sky", "Beneath a Steel Sky", GID_SKY_FIRST, 99, VersionSettings::ADLIB_DONT_CARE, 0, "sky.dsk" },
- {NULL, NULL, 0, 0, VersionSettings::ADLIB_DONT_CARE, 0, NULL}
+ {"sky", "Beneath a Steel Sky", GID_SKY_FIRST, 99, MDT_ADLIB | MDT_NATIVE, 0, "sky.dsk" },
+ {NULL, NULL, 0, 0, MDT_NONE, 0, NULL}
};
const VersionSettings *Engine_SKY_targetList() {
diff --git a/sword2/sword2.cpp b/sword2/sword2.cpp
index bbc522f37a..ffe30eae01 100644
--- a/sword2/sword2.cpp
+++ b/sword2/sword2.cpp
@@ -84,9 +84,9 @@ uint8 stepOneCycle=0; // for use while game paused
static const VersionSettings sword2_settings[] = {
/* Broken Sword 2 */
- {"sword2", "Broken Sword II", GID_SWORD2, 99, VersionSettings::ADLIB_DONT_CARE, GF_DEFAULT_TO_1X_SCALER, "players.clu" },
- {"sword2demo", "Broken Sword II (Demo)", GID_SWORD2_DEMO, 99, VersionSettings::ADLIB_DONT_CARE, GF_DEFAULT_TO_1X_SCALER, "players.clu" },
- {NULL, NULL, 0, 0, VersionSettings::ADLIB_DONT_CARE, 0, NULL}
+ {"sword2", "Broken Sword II", GID_SWORD2, 99, MDT_ADLIB | MDT_NATIVE, GF_DEFAULT_TO_1X_SCALER, "players.clu" },
+ {"sword2demo", "Broken Sword II (Demo)", GID_SWORD2_DEMO, 99, MDT_ADLIB | MDT_NATIVE, GF_DEFAULT_TO_1X_SCALER, "players.clu" },
+ {NULL, NULL, 0, 0, MDT_NONE, 0, NULL}
};
Sword2State *g_sword2 = NULL;