protected void doTremoloEffekt(ChannelMemory aktMemo)
	{
		int volumeAdd;
		switch (aktMemo.tremoloType & 0x03)
		{
			case 1: volumeAdd = (Helpers.ModRampDownTable[aktMemo.tremoloTablePos]);	// Sawtooth
					break;
			case 2: volumeAdd = (Helpers.ModSquareTable  [aktMemo.tremoloTablePos]);	// Squarewave
					break;
			case 3:	volumeAdd = (Helpers.ModRandomTable  [aktMemo.tremoloTablePos]);	// Random.
					break;
			default:volumeAdd = (Helpers.ModSinusTable   [aktMemo.tremoloTablePos]);	// Sinus
					break;
		}

		volumeAdd = (volumeAdd * aktMemo.tremoloAmplitude) >> 7;
		aktMemo.currentVolume = aktMemo.currentSetVolume + volumeAdd;
		aktMemo.tremoloTablePos = (aktMemo.tremoloTablePos + aktMemo.tremoloStep) & 0x3F;
	}
protected void doTremoloEffekt ( ChannelMemory aktMemo ) { int volumeAdd ; switch ( aktMemo . tremoloType & 0x03 ) { case 1 : volumeAdd = ( Helpers . ModRampDownTable [ aktMemo . tremoloTablePos ] ) ; break ; case 2 : volumeAdd = ( Helpers . ModSquareTable [ aktMemo . tremoloTablePos ] ) ; break ; case 3 : volumeAdd = ( Helpers . ModRandomTable [ aktMemo . tremoloTablePos ] ) ; break ; default : volumeAdd = ( Helpers . ModSinusTable [ aktMemo . tremoloTablePos ] ) ; break ; } volumeAdd = ( volumeAdd * aktMemo . tremoloAmplitude ) > > 7 ; aktMemo . currentVolume = aktMemo . currentSetVolume + volumeAdd ; aktMemo . tremoloTablePos = ( aktMemo . tremoloTablePos + aktMemo . tremoloStep ) & 0x3F ; }
Convenient Method for the tremolo effekt
@param aktMemo