aboutsummaryrefslogtreecommitdiff
path: root/backends
diff options
context:
space:
mode:
authorChris Apers2003-06-09 09:48:53 +0000
committerChris Apers2003-06-09 09:48:53 +0000
commit5ab796c4de25da84b564bd9a486cfeb5f8c5cbb3 (patch)
treee68f95d3bec68bbb8fbad5578e81a4b9cc0ee641 /backends
parent0eac9a00cf84656981c6f1fc247d3fbeba0a16b5 (diff)
downloadscummvm-rg350-5ab796c4de25da84b564bd9a486cfeb5f8c5cbb3.tar.gz
scummvm-rg350-5ab796c4de25da84b564bd9a486cfeb5f8c5cbb3.tar.bz2
scummvm-rg350-5ab796c4de25da84b564bd9a486cfeb5f8c5cbb3.zip
clear_sound_proc
svn-id: r8414
Diffstat (limited to 'backends')
-rw-r--r--backends/PalmOS/Src/palm.cpp5
-rw-r--r--backends/PalmOS/Src/palm.h18
2 files changed, 22 insertions, 1 deletions
diff --git a/backends/PalmOS/Src/palm.cpp b/backends/PalmOS/Src/palm.cpp
index d6a4b5e4fb..7fb2164ef0 100644
--- a/backends/PalmOS/Src/palm.cpp
+++ b/backends/PalmOS/Src/palm.cpp
@@ -1131,6 +1131,7 @@ void OSystem_PALMOS::play_cdrom(int track, int num_loops, int start_frame, int e
if (start_frame == 0 && end_frame == 0) {
MsaPlay(_msaRefNum, _msaTrack, 0, _msaPBRate);
} else {
+ // MsaTimeToSu doesn't work ...
_msaTrackStart = (UInt32) ((float)_msaStartFrame / ((float)fullLength / (float)SU));
MsaPlay(_msaRefNum, _msaTrack, _msaTrackStart, _msaPBRate);
}
@@ -1320,6 +1321,10 @@ bool OSystem_PALMOS::set_sound_proc(SoundProc *proc, void *param, SoundFormat fo
return _sound.active;
}
+void OSystem_PALMOS::clear_sound_proc() {
+ _sound.active = false;
+}
+
void OSystem_PALMOS::check_sound() {
// currently not supported
// but i need to use this function to prevent out of memory
diff --git a/backends/PalmOS/Src/palm.h b/backends/PalmOS/Src/palm.h
index 7cdc637686..8c6e8b442d 100644
--- a/backends/PalmOS/Src/palm.h
+++ b/backends/PalmOS/Src/palm.h
@@ -85,8 +85,24 @@ public:
void SimulateArrowKeys(Event *event, Int8 iHoriz, Int8 iVert, Boolean repeat);
- // Set function that generates samples
+ /** @name Sound */
+ //@{
+ /**
+ * Set the audio callback which is invoked whenever samples need to be generated.
+ * Currently, only the 16-bit signed mode is ever used for Simon & Scumm
+ * @param proc pointer to the callback.
+ * @param param an arbitrary parameter which is stored and passed to proc.
+ * @param format the sample type format.
+ */
bool set_sound_proc(SoundProc *proc, void *param, SoundFormat format);
+
+ /**
+ * Remove any audio callback previously set via set_sound_proc, thus effectively
+ * stopping all audio output immediately.
+ * @see set_sound_proc
+ */
+ void clear_sound_proc();
+ //@}
// Poll cdrom status
// Returns true if cd audio is playing