From a8ae95cc10ce05329ca9d4c48fcfb06f615de58b Mon Sep 17 00:00:00 2001 From: Willem Jan Palenstijn Date: Sat, 24 Jan 2009 01:29:52 +0000 Subject: fixing #2531282: don't fall back to a real audio CD when playing enhanced midi tracks svn-id: r36030 --- sound/audiocd.cpp | 5 +++-- sound/audiocd.h | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'sound') diff --git a/sound/audiocd.cpp b/sound/audiocd.cpp index b2c91234a4..b1bd474a4c 100644 --- a/sound/audiocd.cpp +++ b/sound/audiocd.cpp @@ -47,7 +47,7 @@ AudioCDManager::AudioCDManager() { assert(_mixer); } -void AudioCDManager::play(int track, int numLoops, int startFrame, int duration) { +void AudioCDManager::play(int track, int numLoops, int startFrame, int duration, bool only_emulate) { if (numLoops != 0 || startFrame != 0) { _cd.track = track; _cd.numLoops = numLoops; @@ -80,7 +80,8 @@ void AudioCDManager::play(int track, int numLoops, int startFrame, int duration) _mixer->playInputStream(Audio::Mixer::kMusicSoundType, &_handle, stream); } else { _emulating = false; - g_system->playCD(track, numLoops, startFrame, duration); + if (!only_emulate) + g_system->playCD(track, numLoops, startFrame, duration); } } } diff --git a/sound/audiocd.h b/sound/audiocd.h index ced5410a1f..4c4ff26147 100644 --- a/sound/audiocd.h +++ b/sound/audiocd.h @@ -53,8 +53,9 @@ public: * @param num_loops how often playback should be repeated (-1 = infinitely often). * @param start_frame the frame at which playback should start (75 frames = 1 second). * @param duration the number of frames to play (0: play until end) + * @param only_emulate if true, don't try to play from a real CD */ - void play(int track, int numLoops, int startFrame, int duration); + void play(int track, int numLoops, int startFrame, int duration, bool only_emulate = false); void stop(); bool isPlaying() const; -- cgit v1.2.3