[Scummvm-cvs-logs] SF.net SVN: scummvm:[50772] scummvm/trunk/engines/kyra/sound_towns.cpp

athrxx at users.sourceforge.net athrxx at users.sourceforge.net
Fri Jul 9 23:36:59 CEST 2010


Revision: 50772
          http://scummvm.svn.sourceforge.net/scummvm/?rev=50772&view=rev
Author:   athrxx
Date:     2010-07-09 21:36:59 +0000 (Fri, 09 Jul 2010)

Log Message:
-----------
KYRA/PC98: fix music volume

Modified Paths:
--------------
    scummvm/trunk/engines/kyra/sound_towns.cpp

Modified: scummvm/trunk/engines/kyra/sound_towns.cpp
===================================================================
--- scummvm/trunk/engines/kyra/sound_towns.cpp	2010-07-09 21:34:28 UTC (rev 50771)
+++ scummvm/trunk/engines/kyra/sound_towns.cpp	2010-07-09 21:36:59 UTC (rev 50772)
@@ -2788,16 +2788,15 @@
 
 		int32 finOut = 0;
 		for (int ii = 0; ii < 3; ii++) {
-			if ((_channels[ii].vol >> 4) & 1)
-				finOut += _tleTable[_channels[ii].out ? _pReslt : 0];
-			else
-				finOut += _tlTable[_channels[ii].out ? (_channels[ii].vol & 0x0f) : 0];
+			int32 finOutTemp = ((_channels[ii].vol >> 4) & 1) ? _tleTable[_channels[ii].out ? _pReslt : 0] : _tlTable[_channels[ii].out ? (_channels[ii].vol & 0x0f) : 0];
 
 			if ((1 << ii) & _volMaskA)
-				finOut = (finOut * _volumeA) / Audio::Mixer::kMaxMixerVolume;
+				finOutTemp = (finOutTemp * _volumeA) / Audio::Mixer::kMaxMixerVolume;
 
 			if ((1 << ii) & _volMaskB)
-				finOut = (finOut * _volumeB) / Audio::Mixer::kMaxMixerVolume;
+				finOutTemp = (finOutTemp * _volumeB) / Audio::Mixer::kMaxMixerVolume;
+
+			finOut += finOutTemp;
 		}
 
 		finOut /= 3;		


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