diff options
Diffstat (limited to 'sound')
-rw-r--r-- | sound/audiocd.cpp | 5 | ||||
-rw-r--r-- | sound/audiocd.h | 3 |
2 files changed, 5 insertions, 3 deletions
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; |