aboutsummaryrefslogtreecommitdiff
path: root/key.c
diff options
context:
space:
mode:
Diffstat (limited to 'key.c')
-rw-r--r--key.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/key.c b/key.c
new file mode 100644
index 0000000..6fe76a2
--- /dev/null
+++ b/key.c
@@ -0,0 +1,19 @@
+#include "audio.h"
+#include "key.h"
+
+static unsigned int key_press_count = 0;
+
+void handle_keypress(bool dead_key)
+{
+ int num_sample = 0;
+
+ if (dead_key) {
+ num_sample = (key_press_count % NUM_MOD_SAMPLES) + FIRST_MOD_SAMPLE;
+ } else {
+ num_sample = (key_press_count % NUM_KEY_SAMPLES) + FIRST_KEY_SAMPLE;
+ }
+
+ audio_play_sample(num_sample);
+
+ key_press_count++;
+}