This is a part of the Kinetiszer project.

Dependents:   SoundEngine

Committer:
Clemo
Date:
Tue Oct 28 12:19:22 2014 +0000
Revision:
0:5a419ba2726d
Error & warning free (I believe as I don't know how to clean).

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Clemo 0:5a419ba2726d 1 /*
Clemo 0:5a419ba2726d 2 Copyright 2013 Paul Soulsby www.soulsbysynths.com
Clemo 0:5a419ba2726d 3 This file is part of Atmegatron.
Clemo 0:5a419ba2726d 4
Clemo 0:5a419ba2726d 5 Atmegatron is free software: you can redistribute it and/or modify
Clemo 0:5a419ba2726d 6 it under the terms of the GNU General Public License as published by
Clemo 0:5a419ba2726d 7 the Free Software Foundation, either version 3 of the License, or
Clemo 0:5a419ba2726d 8 (at your option) any later version.
Clemo 0:5a419ba2726d 9
Clemo 0:5a419ba2726d 10 Atmegatron is distributed in the hope that it will be useful,
Clemo 0:5a419ba2726d 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
Clemo 0:5a419ba2726d 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
Clemo 0:5a419ba2726d 13 GNU General Public License for more details.
Clemo 0:5a419ba2726d 14
Clemo 0:5a419ba2726d 15 You should have received a copy of the GNU General Public License
Clemo 0:5a419ba2726d 16 along with Atmegatron. If not, see <http://www.gnu.org/licenses/>.
Clemo 0:5a419ba2726d 17 */
Clemo 0:5a419ba2726d 18
Clemo 0:5a419ba2726d 19 #ifndef __WAVEFORMS_H__
Clemo 0:5a419ba2726d 20 #define __WAVEFORMS_H__
Clemo 0:5a419ba2726d 21
Clemo 0:5a419ba2726d 22
Clemo 0:5a419ba2726d 23 extern const sample_t wave_store[2][16][WAVE_LEN];
Clemo 0:5a419ba2726d 24 // CPV - Made extern to speed up processing
Clemo 0:5a419ba2726d 25 extern sample_t wave_process[WAVE_LEN]; //temp wavetable used to process wavetable
Clemo 0:5a419ba2726d 26 extern sample_t wave_process_ch2[WAVE_LEN]; //temp wavetable used for channel two
Clemo 0:5a419ba2726d 27
Clemo 0:5a419ba2726d 28 void Wave_Let_Table(byte newtable);
Clemo 0:5a419ba2726d 29 byte Wave_Get_Table(void);
Clemo 0:5a419ba2726d 30 void Wave_Let_Bank(byte newbank);
Clemo 0:5a419ba2726d 31 byte Wave_Get_Bank(void);
Clemo 0:5a419ba2726d 32 // CPV - inlined to speed up processing
Clemo 0:5a419ba2726d 33 inline void Wave_Let_Process(byte index, sample_t newval);
Clemo 0:5a419ba2726d 34 // CPV - inlined to speed up processing
Clemo 0:5a419ba2726d 35 inline sample_t Wave_Get_Process(byte index);
Clemo 0:5a419ba2726d 36 void Wave_Let_UserMode(boolean newval);
Clemo 0:5a419ba2726d 37 boolean Wave_Get_UserMode(void);
Clemo 0:5a419ba2726d 38 void Wave_Let_UserWave(byte index, sample_t newval);
Clemo 0:5a419ba2726d 39 sample_t Wave_Get_UserWave(byte index);
Clemo 0:5a419ba2726d 40 void Init_Waves(void);
Clemo 0:5a419ba2726d 41 void Wave_Process(void);
Clemo 0:5a419ba2726d 42 void Wave_Clear(void);
Clemo 0:5a419ba2726d 43
Clemo 0:5a419ba2726d 44
Clemo 0:5a419ba2726d 45 #endif // __WAVEFORMS_H__