keymap.c 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. #include QMK_KEYBOARD_H
  2. enum custom_keycodes {
  3. SONG_SU = SAFE_RANGE,
  4. SONG_SC,
  5. SONG_GB
  6. };
  7. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  8. [0] = LAYOUT(
  9. RGB_TOG, RGB_SAI, RGB_VAI, \
  10. RGB_HUD, RGB_HUI, \
  11. RGB_MOD, RGB_SAD, RGB_VAD, \
  12. BL_STEP, \
  13. SONG_SU,SONG_SC,SONG_GB \
  14. )
  15. };
  16. #ifdef AUDIO_ENABLE
  17. float tone_startup[][2] = SONG(STARTUP_SOUND);
  18. float tone_qwerty[][2] = SONG(QWERTY_SOUND);
  19. float tone_dvorak[][2] = SONG(DVORAK_SOUND);
  20. float tone_colemak[][2] = SONG(COLEMAK_SOUND);
  21. float tone_plover[][2] = SONG(PLOVER_SOUND);
  22. float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
  23. float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
  24. float tone_goodbye[][2] = SONG(GOODBYE_SOUND);
  25. #endif
  26. void matrix_init_user(void) {
  27. }
  28. void matrix_scan_user(void) {
  29. }
  30. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  31. switch (keycode) {
  32. case SONG_SU:
  33. if (record->event.pressed) {
  34. PLAY_SONG(tone_startup);
  35. }
  36. return false;
  37. case SONG_SC:
  38. if (record->event.pressed) {
  39. PLAY_SONG(music_scale);
  40. }
  41. return false;
  42. case SONG_GB:
  43. if (record->event.pressed) {
  44. PLAY_SONG(tone_goodbye);
  45. }
  46. return false;
  47. default:
  48. return true;
  49. }
  50. }
  51. void led_set_user(uint8_t usb_led) {
  52. }