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.

210 lines
6.6 KiB

[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
[Keymap] adding keymaps (#3583) * add key map * QWERTY with 40% layers * updated line 21 updated line 21 from "#include "xd75.h" to "#include QMK_KEYBOARD_H" as requested * upload contra folders * Update .directory * Update config.h * Update config.h * Update keymap.c * Update config.h * Update rules.mk * Update keyboards/contra/keymaps/martin_bac/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/xd75/keymaps/martin_cennum/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete .directory * upload * Delete rules.mk * Update keyboards/contra/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/katana60/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Delete nano.save * Delete rules.mk * Update keymap.c * Update keymap.c * Update config.h * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keyboards/lets_split_eh/keymaps/msiu/keymap.c Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update keyboards/planck/keymaps/msiu/config.h Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Apply suggestions from code review Co-Authored-By: martinmksiu <martinmksiu@gmail.com> * Update keymap.c * Update readme.md * Update keymap.c
5 years ago
  1. #include QMK_KEYBOARD_H
  2. #include "muse.h"
  3. extern keymap_config_t keymap_config;
  4. enum planck_layers {
  5. _QWERTY,
  6. _DVORAK,
  7. _LOWER,
  8. _RAISE,
  9. _NUMB,
  10. _FUNC,
  11. _ADJUST
  12. };
  13. enum planck_keycodes {
  14. QWERTY = SAFE_RANGE,
  15. DVORAK,
  16. BACKLIT,
  17. EXT_PLV
  18. };
  19. #define LOWER MO(_LOWER)
  20. #define RAISE MO(_RAISE)
  21. const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
  22. [_QWERTY] = LAYOUT_planck_grid(
  23. LT(_NUMB, KC_TAB), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC,
  24. LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
  25. KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT,
  26. KC_LCTL, KC_HYPR, KC_LALT, KC_LGUI, LOWER, MO(_FUNC), KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
  27. ),
  28. [_DVORAK] = LAYOUT_planck_grid(
  29. _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______,
  30. _______, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH,
  31. _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______,
  32. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
  33. ),
  34. [_LOWER] = LAYOUT_planck_grid(
  35. KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL,
  36. _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE,
  37. _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
  38. _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
  39. ),
  40. [_RAISE] = LAYOUT_planck_grid(
  41. KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC,
  42. _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
  43. _______, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_PGDN, KC_PGUP, KC_HOME, KC_END , KC_MUTE,
  44. _______, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT
  45. ),
  46. [_ADJUST] = LAYOUT_planck_grid(
  47. _______, _______, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
  48. _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, DVORAK, _______, _______, _______,
  49. _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF,_______, _______, _______,
  50. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET
  51. ),
  52. [_FUNC] = LAYOUT_planck_grid(
  53. _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_PSCR, _______,
  54. _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______,
  55. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
  56. _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
  57. ),
  58. [_NUMB] = LAYOUT_planck_grid(
  59. _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, KC_BSPC,
  60. _______, _______, _______, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______,
  61. _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______,
  62. _______, _______, _______, _______, _______, _______, _______, KC_0, KC_0, _______, _______, _______
  63. )
  64. };
  65. #ifdef AUDIO_ENABLE
  66. float plover_song[][2] = SONG(PLOVER_SOUND);
  67. float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND);
  68. #endif
  69. layer_state_t layer_state_set_user(layer_state_t state) {
  70. return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);
  71. }
  72. bool process_record_user(uint16_t keycode, keyrecord_t *record) {
  73. switch (keycode) {
  74. case QWERTY:
  75. if (record->event.pressed) {
  76. print("mode just switched to qwerty and this is a huge string\n");
  77. set_single_persistent_default_layer(_QWERTY);
  78. }
  79. return false;
  80. break;
  81. case DVORAK:
  82. if (record->event.pressed) {
  83. set_single_persistent_default_layer(_DVORAK);
  84. }
  85. return false;
  86. break;
  87. case BACKLIT:
  88. if (record->event.pressed) {
  89. register_code(KC_RSFT);
  90. #ifdef BACKLIGHT_ENABLE
  91. backlight_step();
  92. #endif
  93. #ifdef KEYBOARD_planck_rev5
  94. PORTE &= ~(1<<6);
  95. #endif
  96. } else {
  97. unregister_code(KC_RSFT);
  98. #ifdef KEYBOARD_planck_rev5
  99. PORTE |= (1<<6);
  100. #endif
  101. }
  102. return false;
  103. break;
  104. }
  105. return true;
  106. }
  107. bool muse_mode = false;
  108. uint8_t last_muse_note = 0;
  109. uint16_t muse_counter = 0;
  110. uint8_t muse_offset = 70;
  111. uint16_t muse_tempo = 50;
  112. bool encoder_update_user(uint8_t index, bool clockwise) {
  113. if (muse_mode) {
  114. if (IS_LAYER_ON(_RAISE)) {
  115. if (clockwise) {
  116. muse_offset++;
  117. } else {
  118. muse_offset--;
  119. }
  120. } else {
  121. if (clockwise) {
  122. muse_tempo+=1;
  123. } else {
  124. muse_tempo-=1;
  125. }
  126. }
  127. } else {
  128. if (clockwise) {
  129. register_code(KC_PGDN);
  130. unregister_code(KC_PGDN);
  131. } else {
  132. register_code(KC_PGUP);
  133. unregister_code(KC_PGUP);
  134. }
  135. }
  136. return true;
  137. }
  138. bool dip_switch_update_user(uint8_t index, bool active) {
  139. switch (index) {
  140. case 0:
  141. if (active) {
  142. #ifdef AUDIO_ENABLE
  143. PLAY_SONG(plover_song);
  144. #endif
  145. layer_on(_ADJUST);
  146. } else {
  147. #ifdef AUDIO_ENABLE
  148. PLAY_SONG(plover_gb_song);
  149. #endif
  150. layer_off(_ADJUST);
  151. }
  152. break;
  153. case 1:
  154. if (active) {
  155. muse_mode = true;
  156. } else {
  157. muse_mode = false;
  158. #ifdef AUDIO_ENABLE
  159. stop_all_notes();
  160. #endif
  161. }
  162. }
  163. return true;
  164. }
  165. void matrix_scan_user(void) {
  166. #ifdef AUDIO_ENABLE
  167. if (muse_mode) {
  168. if (muse_counter == 0) {
  169. uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()];
  170. if (muse_note != last_muse_note) {
  171. stop_note(compute_freq_for_midi_note(last_muse_note));
  172. play_note(compute_freq_for_midi_note(muse_note), 0xF);
  173. last_muse_note = muse_note;
  174. }
  175. }
  176. muse_counter = (muse_counter + 1) % muse_tempo;
  177. }
  178. #endif
  179. }
  180. bool music_mask_user(uint16_t keycode) {
  181. switch (keycode) {
  182. case RAISE:
  183. case LOWER:
  184. return false;
  185. default:
  186. return true;
  187. }
  188. }