You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

58 lines
2.2 KiB

  1. /*
  2. Copyright 2020 Dan White <opensource@bluetufa.com>
  3. This program is free software: you can redistribute it and/or modify
  4. it under the terms of the GNU General Public License as published by
  5. the Free Software Foundation, either version 2 of the License, or
  6. (at your option) any later version.
  7. This program is distributed in the hope that it will be useful,
  8. but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  10. GNU General Public License for more details.
  11. You should have received a copy of the GNU General Public License
  12. along with this program. If not, see <http://www.gnu.org/licenses/>.
  13. */
  14. #pragma once
  15. #include "badger.h"
  16. enum OrthoLayers {
  17. _QWERTY_MAC_ORTHO,
  18. _MOVE_MAC_ORTHO,
  19. _QWERTY_LINUX_ORTHO,
  20. _MOVE_LINUX_ORTHO,
  21. _RAISE,
  22. _LOWER,
  23. _ADJUST_ORTHO
  24. };
  25. enum OrthoKeys {
  26. KC_MAC1 = CS_DOWN + 1,
  27. KC_MAC2,
  28. KC_LYRC,
  29. KC_FIRST
  30. };
  31. #define P_ADJ LT(_ADJUST_ORTHO, KC_BSPC)
  32. #define RAISE MO(_RAISE)
  33. #define LOWER MO(_LOWER)
  34. #define MOMAC LT(_MOVE_MAC_ORTHO, KC_ESC)
  35. #define MOLNX LT(_MOVE_LINUX_ORTHO, KC_ESC)
  36. void playSongForLayer(int currentLayer);
  37. #ifdef AUDIO_ENABLE
  38. #define QWERTY_LAYER_SONG H__NOTE(_G6), H__NOTE(_D6), Q__NOTE(_A5), Q__NOTE(_E5),
  39. #define MAC_LAYER_SONG H__NOTE(_E5), H__NOTE(_A5), Q__NOTE(_D6), Q__NOTE(_G6), \
  40. ED_NOTE(_E7), E__NOTE(_CS7), E__NOTE(_E6), E__NOTE(_A6), M__NOTE(_CS7, 20),
  41. #define LONG_AG_SWAP Q__NOTE(_G5), Q__NOTE(_D6), Q__NOTE(_A6), Q__NOTE(_E7), \
  42. SD_NOTE(_B5), SD_NOTE(_A5), SD_NOTE(_B5), SD_NOTE(_A5),
  43. #define LONG_AG_NORM Q__NOTE(_DS4), Q__NOTE(_DS4), B__NOTE(_C5),
  44. #define MOVE_LAYER_SONG E__NOTE(_GS6), E__NOTE(_A6), S__NOTE(_REST), ED_NOTE(_E7), \
  45. S__NOTE(_REST), ED_NOTE(_GS7),
  46. #define RAISE_LAYER_SONG W__NOTE(_BF5), Q__NOTE(_A5), W__NOTE(_BF5), Q__NOTE(_A5), W__NOTE(_E6), Q__NOTE(_B5),
  47. #define LOWER_LAYER_SONG Q__NOTE(_DS4), E__NOTE(_DS4), E__NOTE(_DS6), Q__NOTE(_DS5), \
  48. E__NOTE(_DS5), E__NOTE(_DS6), Q__NOTE(_E5), E__NOTE(_E5), E__NOTE(_DS6), Q__NOTE(_DS5),
  49. #define CAPS_ON W__NOTE(_E5), Q__NOTE(_BF5), W__NOTE(_E5), Q__NOTE(_BF5), W__NOTE(_E5), Q__NOTE(_BF5),
  50. #define CAPS_OFF W__NOTE(_E5), Q__NOTE(_BF5),
  51. #endif