[Scummvm-cvs-logs] SF.net SVN: scummvm:[52655] scummvm/trunk/engines/sci/sound/drivers

waltervn at users.sourceforge.net waltervn at users.sourceforge.net
Thu Sep 9 14:46:46 CEST 2010


Revision: 52655
          http://scummvm.svn.sourceforge.net/scummvm/?rev=52655&view=rev
Author:   waltervn
Date:     2010-09-09 12:46:46 +0000 (Thu, 09 Sep 2010)

Log Message:
-----------
SCI: Add getLastChannel() function to MidiPlayer class

Modified Paths:
--------------
    scummvm/trunk/engines/sci/sound/drivers/midi.cpp
    scummvm/trunk/engines/sci/sound/drivers/mididriver.h

Modified: scummvm/trunk/engines/sci/sound/drivers/midi.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/drivers/midi.cpp	2010-09-09 12:44:34 UTC (rev 52654)
+++ scummvm/trunk/engines/sci/sound/drivers/midi.cpp	2010-09-09 12:46:46 UTC (rev 52655)
@@ -56,6 +56,7 @@
 	byte getPlayId();
 	int getPolyphony() const { return kVoices; }
 	int getFirstChannel();
+	int getLastChannel();
 	void setVolume(byte volume);
 	int getVolume();
 	void setReverb(byte reverb);
@@ -328,12 +329,19 @@
 }
 
 // We return 1 for mt32, because if we remap channels to 0 for mt32, those won't get played at all
+// NOTE: SSCI uses channels 1 through 8 for General MIDI as well, in the drivers I checked
 int MidiPlayer_Midi::getFirstChannel() {
 	if (_isMt32)
 		return 1;
 	return 0;
 }
 
+int MidiPlayer_Midi::getLastChannel() {
+	if (_isMt32)
+		return 8;
+	return 15;
+}
+
 void MidiPlayer_Midi::setVolume(byte volume) {
 	_masterVolume = volume;
 

Modified: scummvm/trunk/engines/sci/sound/drivers/mididriver.h
===================================================================
--- scummvm/trunk/engines/sci/sound/drivers/mididriver.h	2010-09-09 12:44:34 UTC (rev 52654)
+++ scummvm/trunk/engines/sci/sound/drivers/mididriver.h	2010-09-09 12:46:46 UTC (rev 52655)
@@ -87,6 +87,7 @@
 	virtual byte getPlayId() = 0;
 	virtual int getPolyphony() const = 0;
 	virtual int getFirstChannel() { return 0; }
+	virtual int getLastChannel() { return 15; }
 
 	virtual void setVolume(byte volume) {
 		if(_driver)


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