From: <m97...@us...> - 2007-01-23 21:07:53
|
Revision: 6009 http://svn.sourceforge.net/openmsx/?rev=6009&view=rev Author: m9710797 Date: 2007-01-23 13:07:43 -0800 (Tue, 23 Jan 2007) Log Message: ----------- disabled 'volAdjustedWave' optimization, seems to fix sound in Quarth, but i don't userstand why yet Modified Paths: -------------- openmsx/trunk/src/sound/SCC.cc Modified: openmsx/trunk/src/sound/SCC.cc =================================================================== --- openmsx/trunk/src/sound/SCC.cc 2007-01-22 06:06:17 UTC (rev 6008) +++ openmsx/trunk/src/sound/SCC.cc 2007-01-23 21:07:43 UTC (rev 6009) @@ -156,10 +156,11 @@ } for (unsigned i = 0; i < 5; ++i) { - for (unsigned j = 0; j < 32; ++j) { - // don't clear wave forms - volAdjustedWave[i][j] = 0; - } + //for (unsigned j = 0; j < 32; ++j) { + // // don't clear wave forms + // volAdjustedWave[i][j] = 0; + //} + // don't clear wave forms count[i] = 0; pos[i] = (unsigned)-1; freq[i] = 0; @@ -354,11 +355,11 @@ if (!readOnly[channel]) { byte pos = address & 0x1F; wave[channel][pos] = value; - volAdjustedWave[channel][pos] = adjust(value, volume[channel]); + //volAdjustedWave[channel][pos] = adjust(value, volume[channel]); if ((currentChipMode != SCC_plusmode) && (channel == 3)) { // copy waveform 4 -> waveform 5 wave[4][pos] = wave[3][pos]; - volAdjustedWave[4][pos] = volAdjustedWave[3][pos]; + //volAdjustedWave[4][pos] = volAdjustedWave[3][pos]; } } } @@ -395,10 +396,10 @@ // change volume byte channel = address - 0x0A; volume[channel] = value & 0xF; - for (int i = 0; i < 32; ++i) { - volAdjustedWave[channel][i] = - adjust(wave[channel][i], volume[channel]); - } + //for (int i = 0; i < 32; ++i) { + // volAdjustedWave[channel][i] = + // adjust(wave[channel][i], volume[channel]); + //} checkMute(); } else { // change enable-bits @@ -493,7 +494,8 @@ unsigned newPos = count[i] >> 23; if (newPos != pos[i]) { pos[i] = newPos; - out[i] = volAdjustedWave[i][newPos]; + //out[i] = volAdjustedWave[i][newPos]; + out[i] = adjust(wave[i][newPos], volume[i]); } if (enable & 1) { mixed += out[i]; @@ -516,7 +518,8 @@ unsigned newPos = count[i] >> 23; if (newPos != pos[i]) { pos[i] = newPos; - out[i] = volAdjustedWave[i][newPos]; + //out[i] = volAdjustedWave[i][newPos]; + out[i] = adjust(wave[i][newPos], volume[i]); } if (enable & 1) { mixed += out[i]; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |