summary refs log tree commit diff
path: root/quantum
diff options
context:
space:
mode:
authorcoderkun <olli@coderkun.de>2016-01-30 12:08:27 +0100
committercoderkun <olli@coderkun.de>2016-01-30 12:08:27 +0100
commit57bd21d8a684ffe42908e24fc515a64348125a98 (patch)
tree64d2f629aa47144127eafeee28e1fafbdcd95370 /quantum
parent7f4eb72b9d13d5f6b116542941ef7aad2505170a (diff)
parent3985f97d873f5437f6581e3cc731d5e6bbd42b77 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'quantum')
-rw-r--r--quantum/keymap_common.c17
-rw-r--r--quantum/template/keymaps/default.c30
2 files changed, 47 insertions, 0 deletions
diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c
index 6cc7adf51f..057c0c60e5 100644
--- a/quantum/keymap_common.c
+++ b/quantum/keymap_common.c
@@ -26,6 +26,20 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "backlight.h"
 #include "keymap_midi.h"
 
+#include <stdio.h>
+#include <inttypes.h>
+#ifdef AUDIO_ENABLE
+    #include "audio.h"
+
+    float goodbye[][2] = {
+        {440.0*pow(2.0,(67)/12.0), 400},
+        {0, 50},
+        {440.0*pow(2.0,(60)/12.0), 400},
+        {0, 50},
+        {440.0*pow(2.0,(55)/12.0), 600},
+    };
+#endif
+
 static action_t keycode_to_action(uint16_t keycode);
 
 /* converts key to action */
@@ -73,6 +87,9 @@ action_t action_for_key(uint8_t layer, keypos_t key)
 #endif
     } else if (keycode == RESET) { // RESET is 0x5000, which is why this is here
         clear_keyboard();
+        #ifdef AUDIO_ENABLE
+            play_notes(&goodbye, 5, false);
+        #endif
         _delay_ms(250);
         bootloader_jump();
         return;
diff --git a/quantum/template/keymaps/default.c b/quantum/template/keymaps/default.c
new file mode 100644
index 0000000000..4121fd860c
--- /dev/null
+++ b/quantum/template/keymaps/default.c
@@ -0,0 +1,30 @@
+// This is the canonical layout file for the Quantum project. If you want to add another keyboard,
+// this is the style you want to emulate.
+
+#include "%KEYBOARD%.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[0] = KEYMAP( /* Base */
+  KC_A,  KC_1,  KC_H, \
+    KC_TAB,  KC_SPC   \
+),
+};
+
+const uint16_t PROGMEM fn_actions[] = {
+
+};
+
+const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
+{
+  // MACRODOWN only works in this function
+      switch(id) {
+        case 0:
+          if (record->event.pressed) {
+            register_code(KC_RSFT);
+          } else {
+            unregister_code(KC_RSFT);
+          }
+        break;
+      }
+    return MACRO_NONE;
+};