[Scummvm-cvs-logs] SF.net SVN: scummvm:[46766] scummvm/trunk/engines/sci/sfx/soundcmd.cpp

thebluegr at users.sourceforge.net thebluegr at users.sourceforge.net
Wed Dec 30 18:59:49 CET 2009


Revision: 46766
          http://scummvm.svn.sourceforge.net/scummvm/?rev=46766&view=rev
Author:   thebluegr
Date:     2009-12-30 17:59:31 +0000 (Wed, 30 Dec 2009)

Log Message:
-----------
SCI/new sound code:
- call cmdDisposeHandle() instead of soundKill when a track is being replaced
- Added information about cmdReverb

Modified Paths:
--------------
    scummvm/trunk/engines/sci/sfx/soundcmd.cpp

Modified: scummvm/trunk/engines/sci/sfx/soundcmd.cpp
===================================================================
--- scummvm/trunk/engines/sci/sfx/soundcmd.cpp	2009-12-30 16:42:29 UTC (rev 46765)
+++ scummvm/trunk/engines/sci/sfx/soundcmd.cpp	2009-12-30 17:59:31 UTC (rev 46766)
@@ -304,7 +304,7 @@
 	// Check if a track with the same sound object is already playing
 	MusicEntry *oldSound = _music->getSlot(obj);
 	if (oldSound)
-		_music->soundKill(oldSound);
+		cmdDisposeHandle(obj, value);
 
 	_music->pushBackSlot(newSound);
 
@@ -804,7 +804,18 @@
 
 void SoundCommandParser::cmdReverb(reg_t obj, int16 value) {
 	// TODO
-	warning("STUB: cmdReverb");
+	// This function has one parameter, enabling the reverb effect
+	// in MT-32 if the parameter is non-zero. This is either the
+	// reverb level, or delay time. The reverb type is probably fixed
+	// to 1 ("room"). I'm not quite sure how and if this works for
+	// Adlib.
+	// Refer to http://www.midi.org/techspecs/midimessages.php
+	// and http://www.youngmonkey.ca/nose/audio_tech/synth/Roland-MT32.html
+	// Also, /sound/softsynth/mt32/synth.h is a good reference
+	// A good test case for this are the first two rooms in Longbow:
+	// reverb is set for the first room (the cave) and is subsequently
+	// cleared when Robin exits the cave
+	warning("STUB: cmdReverb (%d)", obj.toUint16());
 }
 
 void SoundCommandParser::cmdHoldHandle(reg_t obj, int16 value) {


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list