[Scummvm-cvs-logs] scummvm master -> e41e412c9ee6c277233ef9f7a5304f8cc40fa370
bluegr
md5 at scummvm.org
Sun Apr 29 19:46:57 CEST 2012
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
ad248c9b0b SCI: Add the French floppy version of SQ4 (bug #3515247)
24e57808aa SCI: Add a hack to fix the cursor colors in Longbow (bug #3489101)
e41e412c9e SCI: Fix for bug #3522046 "Detection of SQ4CD as Windows breaks Music"
Commit: ad248c9b0b28a50208930c3b49fa4b51420f1f56
https://github.com/scummvm/scummvm/commit/ad248c9b0b28a50208930c3b49fa4b51420f1f56
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2012-04-29T10:45:13-07:00
Commit Message:
SCI: Add the French floppy version of SQ4 (bug #3515247)
Changed paths:
engines/sci/detection_tables.h
diff --git a/engines/sci/detection_tables.h b/engines/sci/detection_tables.h
index d741bb8..ff78d4f 100644
--- a/engines/sci/detection_tables.h
+++ b/engines/sci/detection_tables.h
@@ -3445,6 +3445,19 @@ static const struct ADGameDescription SciGameDescriptions[] = {
AD_LISTEND},
Common::EN_ANY, Common::kPlatformPC, 0, GUIO4(GUIO_NOSPEECH, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_ORIGINAL_SAVELOAD, GAMEOPTION_FB01_MIDI) },
+ // Space Quest 4 1.000 - French DOS Floppy (supplied by misterhands in bug report #3515247)
+ {"sq4", "", {
+
+ {"resource.map", 0, "1fd6f356f6a59ad2057686ce6573caeb", 6159},
+ {"resource.000", 0, "8000a55aebc50a68b7cce07a8c33758c", 205287},
+ {"resource.001", 0, "99a6df6d366b3f061271ff3450ac0d32", 1269850},
+ {"resource.002", 0, "a6a8d7a24dbb7a266a26b084e7275e89", 1242668},
+ {"resource.003", 0, "482a99c8103b4bcb5706e5969d1c1193", 1323083},
+ {"resource.004", 0, "b2cca3afcf2e013b8ce86b64155af766", 1254353},
+ {"resource.005", 0, "9e520577e035547c4b5149a6d12ef85b", 1098814},
+ AD_LISTEND},
+ Common::FR_FRA, Common::kPlatformPC, 0, GUIO4(GUIO_NOSPEECH, GAMEOPTION_PREFER_DIGITAL_SFX, GAMEOPTION_ORIGINAL_SAVELOAD, GAMEOPTION_FB01_MIDI) },
+
// Space Quest 4 1.000 - English DOS Floppy (from abevi, bug report #2612718)
{"sq4", "", {
{"resource.map", 0, "8f08b97ca093f370c56d99715b015554", 6153},
Commit: 24e57808aa946ad38379b43ca205af6ef151c66a
https://github.com/scummvm/scummvm/commit/24e57808aa946ad38379b43ca205af6ef151c66a
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2012-04-29T10:45:14-07:00
Commit Message:
SCI: Add a hack to fix the cursor colors in Longbow (bug #3489101)
Changed paths:
engines/sci/graphics/cursor.cpp
diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp
index 71f4598..14ffa69 100644
--- a/engines/sci/graphics/cursor.cpp
+++ b/engines/sci/graphics/cursor.cpp
@@ -148,11 +148,13 @@ void GfxCursor::kernelSetShape(GuiResourceId resourceId) {
colorMapping[1] = _screen->getColorWhite(); // White is also hardcoded
colorMapping[2] = SCI_CURSOR_SCI0_TRANSPARENCYCOLOR;
colorMapping[3] = _palette->matchColor(170, 170, 170); // Grey
- // Special case for the magnifier cursor in LB1 (bug #3487092).
- // No other SCI0 game has a cursor resource of 1, so this is handled
- // specifically for LB1.
+ // TODO: Figure out if the grey color is hardcoded
+ // HACK for the magnifier cursor in LB1, fixes its color (bug #3487092)
if (g_sci->getGameId() == GID_LAURABOW && resourceId == 1)
colorMapping[3] = _screen->getColorWhite();
+ // HACK for Longbow cursors, fixes the shade of grey they're using (bug #3489101)
+ if (g_sci->getGameId() == GID_LONGBOW)
+ colorMapping[3] = _palette->matchColor(223, 223, 223); // Light Grey
// Seek to actual data
resourceData += 4;
Commit: e41e412c9ee6c277233ef9f7a5304f8cc40fa370
https://github.com/scummvm/scummvm/commit/e41e412c9ee6c277233ef9f7a5304f8cc40fa370
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2012-04-29T10:45:16-07:00
Commit Message:
SCI: Fix for bug #3522046 "Detection of SQ4CD as Windows breaks Music"
Fall back to the DOS soundtracks in Windows CD versions if the user picks
a non-General MIDI music device, as the Windows tracks only contain MIDI
music
Changed paths:
engines/sci/engine/features.cpp
engines/sci/engine/features.h
engines/sci/sound/music.cpp
diff --git a/engines/sci/engine/features.cpp b/engines/sci/engine/features.cpp
index cad95b1..8a93223 100644
--- a/engines/sci/engine/features.cpp
+++ b/engines/sci/engine/features.cpp
@@ -45,6 +45,7 @@ GameFeatures::GameFeatures(SegManager *segMan, Kernel *kernel) : _segMan(segMan)
_usesCdTrack = Common::File::exists("cdaudio.map");
if (!ConfMan.getBool("use_cdaudio"))
_usesCdTrack = false;
+ _forceDOSTracks = false;
}
reg_t GameFeatures::getDetectionAddr(const Common::String &objName, Selector slc, int methodNum) {
@@ -642,7 +643,7 @@ MoveCountType GameFeatures::detectMoveCountType() {
}
bool GameFeatures::useAltWinGMSound() {
- if (g_sci && g_sci->getPlatform() == Common::kPlatformWindows && g_sci->isCD()) {
+ if (g_sci && g_sci->getPlatform() == Common::kPlatformWindows && g_sci->isCD() && !_forceDOSTracks) {
SciGameId id = g_sci->getGameId();
return (id == GID_ECOQUEST ||
id == GID_JONES ||
diff --git a/engines/sci/engine/features.h b/engines/sci/engine/features.h
index 4592c5b..f6bb0b5 100644
--- a/engines/sci/engine/features.h
+++ b/engines/sci/engine/features.h
@@ -117,6 +117,12 @@ public:
*/
bool useAltWinGMSound();
+ /**
+ * Forces DOS soundtracks in Windows CD versions when the user hasn't
+ * selected a MIDI output device
+ */
+ void forceDOSTracks() { _forceDOSTracks = true; }
+
private:
reg_t getDetectionAddr(const Common::String &objName, Selector slc, int methodNum = -1);
@@ -137,6 +143,7 @@ private:
MoveCountType _moveCountType;
bool _usesCdTrack;
+ bool _forceDOSTracks;
SegManager *_segMan;
Kernel *_kernel;
diff --git a/engines/sci/sound/music.cpp b/engines/sci/sound/music.cpp
index 09cab75..918b045 100644
--- a/engines/sci/sound/music.cpp
+++ b/engines/sci/sound/music.cpp
@@ -88,6 +88,12 @@ void SciMusic::init() {
uint32 dev = MidiDriver::detectDevice(deviceFlags);
_musicType = MidiDriver::getMusicType(dev);
+ if (g_sci->_features->useAltWinGMSound() && _musicType != MT_GM) {
+ warning("A Windows CD version with an alternate MIDI soundtrack has been chosen, "
+ "but no MIDI music device has been selected. Reverting to the DOS soundtrack");
+ g_sci->_features->forceDOSTracks();
+ }
+
switch (_musicType) {
case MT_ADLIB:
// FIXME: There's no Amiga sound option, so we hook it up to AdLib
More information about the Scummvm-git-logs
mailing list