diff options
author | Johannes Schickel | 2010-10-13 03:57:44 +0000 |
---|---|---|
committer | Johannes Schickel | 2010-10-13 03:57:44 +0000 |
commit | 75e8452b6e6a2bf4fb2f588aa00b428a60d873b5 (patch) | |
tree | f29541d55309487a94bd1d38e8b53bb3dde9aec6 /engines/groovie | |
parent | 48ee83b88957dab86bc763e9ef21a70179fa8679 (diff) | |
parent | e9f50882ea5b6beeefa994040be9d3bab6a1f107 (diff) | |
download | scummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.tar.gz scummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.tar.bz2 scummvm-rg350-75e8452b6e6a2bf4fb2f588aa00b428a60d873b5.zip |
OPENGL: Merged from trunk, from rev 52105 to 53396.
This includes an rather hacky attempt to merge all the recent gp2x backend
changes into the branch. I suppose the gp2x backend and probably all new
backends, i.e. gph, dingux etc., might not compile anymore.
Since I have no way of testing those it would be nice if porters could look
into getting those up to speed in this branch.
svn-id: r53399
Diffstat (limited to 'engines/groovie')
-rw-r--r-- | engines/groovie/detection.cpp | 15 | ||||
-rw-r--r-- | engines/groovie/groovie.cpp | 11 | ||||
-rw-r--r-- | engines/groovie/music.cpp | 4 |
3 files changed, 22 insertions, 8 deletions
diff --git a/engines/groovie/detection.cpp b/engines/groovie/detection.cpp index b30c2361d2..a6a92eb521 100644 --- a/engines/groovie/detection.cpp +++ b/engines/groovie/detection.cpp @@ -54,7 +54,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "t7g", "", AD_ENTRY1s("script.grv", "d1b8033b40aa67c076039881eccce90d", 16659), - Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -64,7 +65,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "t7g", "", AD_ENTRY1s("T7GMac", "a139540fa2be2247005ccf888b7231e3", 1830783), - Common::EN_ANY, Common::kPlatformMacintosh, ADGF_MACRESFORK, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformMacintosh, ADGF_MACRESFORK, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -78,7 +80,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "intro.gjd", 0, NULL, 31711554}, { NULL, 0, NULL, 0} }, - Common::RU_RUS, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::RU_RUS, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieT7G, 0 }, @@ -89,7 +92,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "11h", "", AD_ENTRY1s("disk.1", "5c0428cd3659fc7bbcd0aa16485ed5da", 227), - Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, Common::GUIO_NONE + Common::EN_ANY, Common::kPlatformPC, ADGF_NO_FLAGS, + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieV2, 1 }, @@ -99,7 +103,8 @@ static const GroovieGameDescription gameDescriptions[] = { { "11h", "Demo", AD_ENTRY1s("disk.1", "aacb32ce07e0df2894bd83a3dee40c12", 70), - Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, Common::GUIO_NOLAUNCHLOAD + Common::EN_ANY, Common::kPlatformPC, ADGF_DEMO, Common::GUIO_NOLAUNCHLOAD | + Common::GUIO_MIDIADLIB | Common::GUIO_MIDIMT32 | Common::GUIO_MIDIGM }, kGroovieV2, 1 }, diff --git a/engines/groovie/groovie.cpp b/engines/groovie/groovie.cpp index 82eda1efe2..c7c3ef85f8 100644 --- a/engines/groovie/groovie.cpp +++ b/engines/groovie/groovie.cpp @@ -321,13 +321,18 @@ void GroovieEngine::errorString(const char *buf_input, char *buf_output, int buf } void GroovieEngine::syncSoundSettings() { - _musicPlayer->setUserVolume(ConfMan.getInt("music_volume")); - // VDX videos just contain one digital audio track, which can be used for + bool mute = ConfMan.getBool("mute"); + + // Set the music volume + _musicPlayer->setUserVolume(mute ? 0 : ConfMan.getInt("music_volume")); + + // Videos just contain one digital audio track, which can be used for // both SFX or Speech, but the engine doesn't know what they contain, so // we have to use just one volume setting for videos. // We use "speech" because most users will want to change the videos // volume when they can't hear the speech because of the music. - _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, ConfMan.getInt("speech_volume")); + _mixer->setVolumeForSoundType(Audio::Mixer::kPlainSoundType, + mute ? 0 : ConfMan.getInt("speech_volume")); } bool GroovieEngine::canLoadGameStateCurrently() { diff --git a/engines/groovie/music.cpp b/engines/groovie/music.cpp index 34b180a68e..2ad11ee0e6 100644 --- a/engines/groovie/music.cpp +++ b/engines/groovie/music.cpp @@ -426,10 +426,14 @@ MusicPlayerXMI::MusicPlayerXMI(GroovieEngine *vm, const Common::String >lName) setTimbreAD(9, _timbres[i]); } } else if ((MidiDriver::getMusicType(dev) == MT_MT32) || ConfMan.getBool("native_mt32")) { + _driver->sendMT32Reset(); + // MT-32 _musicType = MT_MT32; loadTimbres(gtlName + ".mt"); } else { + _driver->sendGMReset(); + // GM _musicType = 0; } |