summaryrefslogtreecommitdiffstats
path: root/quantum/audio/voices.h
diff options
context:
space:
mode:
Diffstat (limited to 'quantum/audio/voices.h')
-rw-r--r--quantum/audio/voices.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/quantum/audio/voices.h b/quantum/audio/voices.h
new file mode 100644
index 0000000000..74c873f42f
--- /dev/null
+++ b/quantum/audio/voices.h
@@ -0,0 +1,32 @@
+#include <stdint.h>
+#include <stdbool.h>
+#include <avr/io.h>
+#include <util/delay.h>
+#include "musical_notes.h"
+#include "song_list.h"
+
+#ifndef VOICES_H
+#define VOICES_H
+
+float voice_envelope(float frequency);
+
+typedef enum {
+ default_voice,
+ butts_fader,
+ octave_crunch,
+ duty_osc,
+ duty_octave_down,
+ delayed_vibrato,
+ // delayed_vibrato_octave,
+ // duty_fifth_down,
+ // duty_fourth_down,
+ // duty_third_down,
+ // duty_fifth_third_down,
+ number_of_voices // important that this is last
+} voice_type;
+
+void set_voice(voice_type v);
+void voice_iterate(void);
+void voice_deiterate(void);
+
+#endif \ No newline at end of file