summaryrefslogtreecommitdiff
path: root/quantum/audio/voices.h
diff options
context:
space:
mode:
authorRoman Zolotarev <hi@romanzolotarev.com>2016-04-26 16:23:10 +0800
committerRoman Zolotarev <hi@romanzolotarev.com>2016-04-26 16:23:10 +0800
commit28f0b64e31b8c30a842dfd356421356cf0513177 (patch)
treee5a76f4a2fb747c3599de1e297f46e4dc6fd4f0e /quantum/audio/voices.h
parentfa2eedb7bd906634b8c500ba0d91638e63eaafed (diff)
parentbf56838fe99aafd37559d560e47b707a83c87588 (diff)
Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware
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