This is a part of the Kinetiszer project.
pitch.h
- Committer:
- Clemo
- Date:
- 2014-10-28
- Revision:
- 0:5a419ba2726d
File content as of revision 0:5a419ba2726d:
/* Copyright 2013 Paul Soulsby www.soulsbysynths.com This file is part of Atmegatron. Atmegatron is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Atmegatron is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Atmegatron. If not, see <http://www.gnu.org/licenses/>. */ #ifndef __PITCH_H__ #define __PITCH_H__ //These constants are used to define the MAXIMUM amount the env can effect the pitch. //The default max for env is: //********multiplier = 4*********** #define PITCH_ENVMAX 1.386294361119891f //ln(multiplier) #define PITCH_ENVMULT 64 //multipler used for calculating lookup table (256 / multiplier) #define PITCH_ENVBS 6UL //bitshift amount when multiplying pitch by pitch env amt. log2(PITCH_MULT) //These constants are used to define the MAXIMUM amount the lfo can effect the pitch. //The default max for lfo is: //********multiplier = 2 (1 octave)*********** #define PITCH_LFOMAX 0.693147180559945f //ln(multiplier) #define PITCH_LFOMULT 128 //multipler used for calculating lookup table (256 / multiplier) #define PITCH_LFOBS 7UL //bitshift amount when multiplying pitch by pitch lfo amt. log2(PITCH_MULT) void Pitch_Let_NextFreq(unsigned int newfreq); unsigned int Pitch_Get_NextFreq(void); void Pitch_Let_Porta(int newporta); int Pitch_Get_Porta(void); void Pitch_ResetPorta(void); void Pitch_RefreshPortaTicks(void); unsigned long Pitch_Get_FreqCalc(void); boolean Pitch_Get_PitchChanged(void); void Pitch_Let_PropPorta(boolean newprop); boolean Pitch_Get_PropPorta(void); void Pitch_Process(void); void Pitch_Let_LFOAmt(byte newamt); byte Pitch_Get_LFOAmt(void); byte Pitch_Get_LFOGain(void); void Pitch_Let_FenvAmt(byte newamt); byte Pitch_Get_FenvAmt(void); byte Pitch_Get_FenvGain(void); byte Pitch_Get_MIDIPbendGain(void); #endif // __PITCH_H__