[Scummvm-cvs-logs] SF.net SVN: scummvm: [26219] scummvm/trunk/engines/sky/music

lavosspawn at users.sourceforge.net lavosspawn at users.sourceforge.net
Sun Mar 18 18:58:26 CET 2007


Revision: 26219
          http://scummvm.svn.sourceforge.net/scummvm/?rev=26219&view=rev
Author:   lavosspawn
Date:     2007-03-18 10:58:26 -0700 (Sun, 18 Mar 2007)

Log Message:
-----------
Fixed bug #1678349: BASS: music is off, but drum track plays

Modified Paths:
--------------
    scummvm/trunk/engines/sky/music/gmchannel.cpp
    scummvm/trunk/engines/sky/music/gmchannel.h

Modified: scummvm/trunk/engines/sky/music/gmchannel.cpp
===================================================================
--- scummvm/trunk/engines/sky/music/gmchannel.cpp	2007-03-18 17:55:11 UTC (rev 26218)
+++ scummvm/trunk/engines/sky/music/gmchannel.cpp	2007-03-18 17:58:26 UTC (rev 26219)
@@ -39,7 +39,7 @@
 	_veloTab = veloTab;
 
 	_musicVolume = 0x7F;
-	_lastVolume = 0xFF;
+	_currentChannelVolume = 0x7F;
 }
 
 GmChannel::~GmChannel(void) {
@@ -55,10 +55,9 @@
 	_musicVolume = pVolume;
 	if (_musicVolume > 0)
 		_musicVolume = (_musicVolume * 2) / 3 + 43;
-	if (_lastVolume < 0xFF) {
-		uint8 newVol = (_lastVolume * _musicVolume) >> 7;
-		_midiDrv->send((0xB0 | _channelData.midiChannelNumber) | 0x700 | (newVol << 16));
-	}
+
+	uint8 newVol = (_currentChannelVolume * _musicVolume) >> 7;
+	_midiDrv->send((0xB0 | _channelData.midiChannelNumber) | 0x700 | (newVol << 16));
 }
 
 void GmChannel::stopNote(void) {
@@ -175,8 +174,8 @@
 
 void GmChannel::com90_getChannelVolume(void) {
 
-	_lastVolume = _musicData[_channelData.eventDataPtr];
-	uint8 newVol = (uint8)((_musicData[_channelData.eventDataPtr++] * _musicVolume) >> 7);
+	_currentChannelVolume = _musicData[_channelData.eventDataPtr++];
+	uint8 newVol = (uint8)((_currentChannelVolume * _musicVolume) >> 7);
 	_midiDrv->send((0xB0 | _channelData.midiChannelNumber) | 0x700 | (newVol << 16));
 }
 

Modified: scummvm/trunk/engines/sky/music/gmchannel.h
===================================================================
--- scummvm/trunk/engines/sky/music/gmchannel.h	2007-03-18 17:55:11 UTC (rev 26218)
+++ scummvm/trunk/engines/sky/music/gmchannel.h	2007-03-18 17:58:26 UTC (rev 26219)
@@ -53,7 +53,7 @@
 	uint8 *_musicData;
 	uint16 _musicVolume;
 	MidiChannelType _channelData;
-	uint8 _lastVolume;
+	uint8 _currentChannelVolume;
 	//-                          normal subs
 	void setRegister(uint8 regNum, uint8 value);
 	int32 getNextEventTime(void);


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