diff options
Diffstat (limited to 'keyboard')
| -rw-r--r-- | keyboard/atomic/keymaps/pvc/keymap.c | 373 | ||||
| -rw-r--r-- | keyboard/preonic/keymaps/default/keymap.c | 7 | 
2 files changed, 194 insertions, 186 deletions
| diff --git a/keyboard/atomic/keymaps/pvc/keymap.c b/keyboard/atomic/keymaps/pvc/keymap.c index c2081f525..aaef6b041 100644 --- a/keyboard/atomic/keymaps/pvc/keymap.c +++ b/keyboard/atomic/keymaps/pvc/keymap.c @@ -3,7 +3,7 @@  #ifdef AUDIO_ENABLE  #include "audio.h" -#include "musical_notes.h" +#include "song_list.h"  #endif @@ -17,6 +17,13 @@  #define M_LW 1  #define M_RS 2  #define M_FN 3 +#define M_T1 4 +#define M_T2 5 +#define M_T3 6 +#define M_T4 7 +#define M_TU 8 +#define M_TD 9 +#define M_DF 10  #define _______ KC_TRNS @@ -63,7 +70,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {    { KC_NLCK, KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,  ___T___, ___T___  },    { KC_SLCK, KC_F13,  KC_F14,  KC_F15,  KC_F16,  KC_F17,  KC_F18,  KC_F19,  KC_F20,  KC_F21,  KC_F22,  KC_F23,  KC_F24,  KC_PAUS, KC_PSCR  },    { KC_CAPS, KC_BTN5, KC_BTN4, KC_BTN3, KC_BTN2, KC_ACL0, KC_ACL2, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, ___T___, ___T___, KC_WH_U  }, -  { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, ___T___, ___T___, KC_MS_U, KC_WH_D  }, +  { _______, M(M_T1), M(M_T2), M(M_T3), M(M_T4), M(M_TU), M(M_TD), M(M_DF), _______, _______, _______, ___T___, ___T___, KC_MS_U, KC_WH_D  },    { _______, _______, _______, _______, _______, KC_BTN1, KC_BTN1, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R  },   },   [_AD] = { /* ADJUST */ @@ -76,139 +83,124 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {  }; +  #ifdef AUDIO_ENABLE +float start_up[][2] = SONG(ODE_TO_JOY); +float tone_lw[][2] = { +	Q__NOTE(_C4   ) , +	Q__NOTE(_CS4  ) , +	Q__NOTE(_D4   ) , +	Q__NOTE(_DS4  ) , +	Q__NOTE(_E4   ) , +	Q__NOTE(_F4   ) , +	Q__NOTE(_FS4  ) , +	Q__NOTE(_G4   ) , +	Q__NOTE(_GS4  ) , +	Q__NOTE(_A4   ) , +	Q__NOTE(_AS4  ) , -float tone_lw[][2] = { -/* -Q_NOTE(_C1   ) , -Q_NOTE(_CS1  ) , -Q_NOTE(_D1   ) , -Q_NOTE(_DS1  ) , -Q_NOTE(_E1   ) , -Q_NOTE(_F1   ) , -Q_NOTE(_FS1  ) , -Q_NOTE(_G1   ) , -Q_NOTE(_GS1  ) , -Q_NOTE(_A1   ) , -Q_NOTE(_AS1  ) , -Q_NOTE(_B1   ) , -*/ - -Q_NOTE(_C4   ) , -Q_NOTE(_CS4  ) , -Q_NOTE(_D4   ) , -Q_NOTE(_DS4  ) , -Q_NOTE(_E4   ) , -Q_NOTE(_F4   ) , -Q_NOTE(_FS4  ) , -Q_NOTE(_G4   ) , -Q_NOTE(_GS4  ) , -Q_NOTE(_A4   ) , -Q_NOTE(_AS4  ) , -Q_NOTE(_B1   ) , - - -Q_NOTE(_C2   ) , -Q_NOTE(_CS2  ) , -Q_NOTE(_D2   ) , -Q_NOTE(_DS2  ) , -Q_NOTE(_E2   ) , -Q_NOTE(_F2   ) , -Q_NOTE(_FS2  ) , -Q_NOTE(_G2   ) , -Q_NOTE(_GS2  ) , -Q_NOTE(_A2   ) , -Q_NOTE(_AS2  ) , -Q_NOTE(_B2   ) , -Q_NOTE(_C3   ) , -Q_NOTE(_CS3  ) , -Q_NOTE(_D3   ) , -Q_NOTE(_DS3  ) , -Q_NOTE(_E3   ) , -Q_NOTE(_F3   ) , -Q_NOTE(_FS3  ) , -Q_NOTE(_G3   ) , -Q_NOTE(_GS3  ) , -Q_NOTE(_A3   ) , -Q_NOTE(_AS3  ) , -Q_NOTE(_B3   ) , -Q_NOTE(_C4   ) , -Q_NOTE(_CS4  ) , -Q_NOTE(_D4   ) , -Q_NOTE(_DS4  ) , -Q_NOTE(_E4   ) , -Q_NOTE(_F4   ) , -Q_NOTE(_FS4  ) , -Q_NOTE(_G4   ) , -Q_NOTE(_GS4  ) , -Q_NOTE(_A4   ) , -Q_NOTE(_AS4  ) , -Q_NOTE(_B4   ) , -Q_NOTE(_C5   ) , -Q_NOTE(_CS5  ) , -Q_NOTE(_D5   ) , -Q_NOTE(_DS5  ) , -Q_NOTE(_E5   ) , -Q_NOTE(_F5   ) , -Q_NOTE(_FS5  ) , -Q_NOTE(_G5   ) , -Q_NOTE(_GS5  ) , -Q_NOTE(_A5   ) , -Q_NOTE(_AS5  ) , -Q_NOTE(_B5   ) , -Q_NOTE(_C6   ) , -Q_NOTE(_CS6  ) , -Q_NOTE(_D6   ) , -Q_NOTE(_DS6  ) , -Q_NOTE(_E6   ) , -Q_NOTE(_F6   ) , -Q_NOTE(_FS6  ) , -Q_NOTE(_G6   ) , -Q_NOTE(_GS6  ) , -Q_NOTE(_A6   ) , -Q_NOTE(_AS6  ) , -Q_NOTE(_B6   ) , -Q_NOTE(_C7   ) , -Q_NOTE(_CS7  ) , -Q_NOTE(_D7   ) , -Q_NOTE(_DS7  ) , -Q_NOTE(_E7   ) , -Q_NOTE(_F7   ) , -Q_NOTE(_FS7  ) , -Q_NOTE(_G7   ) , -Q_NOTE(_GS7  ) , -Q_NOTE(_A7   ) , -Q_NOTE(_AS7  ) , -Q_NOTE(_B7   ) , -Q_NOTE(_C8   ) , -Q_NOTE(_CS8  ) , -Q_NOTE(_D8   ) , -Q_NOTE(_DS8  ) , -Q_NOTE(_E8   ) , -Q_NOTE(_F8   ) , -Q_NOTE(_FS8  ) , -Q_NOTE(_G8   ) , -Q_NOTE(_GS8  ) , -Q_NOTE(_A8   ) , -Q_NOTE(_AS8  ) , -Q_NOTE(_B8   ) , +	Q__NOTE(_B1   ) , +	Q__NOTE(_C2   ) , +	Q__NOTE(_CS2  ) , +	Q__NOTE(_D2   ) , +	Q__NOTE(_DS2  ) , +	Q__NOTE(_E2   ) , +	Q__NOTE(_F2   ) , +	Q__NOTE(_FS2  ) , +	Q__NOTE(_G2   ) , +	Q__NOTE(_GS2  ) , +	Q__NOTE(_A2   ) , +	Q__NOTE(_AS2  ) , +	Q__NOTE(_B2   ) , +	Q__NOTE(_C3   ) , +	Q__NOTE(_CS3  ) , +	Q__NOTE(_D3   ) , +	Q__NOTE(_DS3  ) , +	Q__NOTE(_E3   ) , +	Q__NOTE(_F3   ) , +	Q__NOTE(_FS3  ) , +	Q__NOTE(_G3   ) , +	Q__NOTE(_GS3  ) , +	Q__NOTE(_A3   ) , +	Q__NOTE(_AS3  ) , +	Q__NOTE(_B3   ) , +	Q__NOTE(_C4   ) , +	Q__NOTE(_CS4  ) , +	Q__NOTE(_D4   ) , +	Q__NOTE(_DS4  ) , +	Q__NOTE(_E4   ) , +	Q__NOTE(_F4   ) , +	Q__NOTE(_FS4  ) , +	Q__NOTE(_G4   ) , +	Q__NOTE(_GS4  ) , +	Q__NOTE(_A4   ) , +	Q__NOTE(_AS4  ) , +	Q__NOTE(_B4   ) , +	Q__NOTE(_C5   ) , +	Q__NOTE(_CS5  ) , +	Q__NOTE(_D5   ) , +	Q__NOTE(_DS5  ) , +	Q__NOTE(_E5   ) , +	Q__NOTE(_F5   ) , +	Q__NOTE(_FS5  ) , +	Q__NOTE(_G5   ) , +	Q__NOTE(_GS5  ) , +	Q__NOTE(_A5   ) , +	Q__NOTE(_AS5  ) , +	Q__NOTE(_B5   ) , +	Q__NOTE(_C6   ) , +	Q__NOTE(_CS6  ) , +	Q__NOTE(_D6   ) , +	Q__NOTE(_DS6  ) , +	Q__NOTE(_E6   ) , +	Q__NOTE(_F6   ) , +	Q__NOTE(_FS6  ) , +	Q__NOTE(_G6   ) , +	Q__NOTE(_GS6  ) , +	Q__NOTE(_A6   ) , +	Q__NOTE(_AS6  ) , +	Q__NOTE(_B6   ) , +	Q__NOTE(_C7   ) , +	Q__NOTE(_CS7  ) , +	Q__NOTE(_D7   ) , +	Q__NOTE(_DS7  ) , +	Q__NOTE(_E7   ) , +	Q__NOTE(_F7   ) , +	Q__NOTE(_FS7  ) , +	Q__NOTE(_G7   ) , +	Q__NOTE(_GS7  ) , +	Q__NOTE(_A7   ) , +	Q__NOTE(_AS7  ) , +	Q__NOTE(_B7   ) , +	Q__NOTE(_C8   ) , +	Q__NOTE(_CS8  ) , +	Q__NOTE(_D8   ) , +	Q__NOTE(_DS8  ) , +	Q__NOTE(_E8   ) , +	Q__NOTE(_F8   ) , +	Q__NOTE(_FS8  ) , +	Q__NOTE(_G8   ) , +	Q__NOTE(_GS8  ) , +	Q__NOTE(_A8   ) , +	Q__NOTE(_AS8  ) , +	Q__NOTE(_B8   ) ,  }; -float tone_rs[][2] = { -Q_NOTE(_A4   ) , -Q_NOTE(_A4   ) , -Q_NOTE(_A4   ) , -Q_NOTE(_A4   ) , -Q_NOTE(_AS8  ) , -Q_NOTE(_B8   ) , -}; +float tone_rs[][2] = SONG(ROCK_A_BYE_BABY); + +void matrix_init_user(void) { +	init_notes(); +	PLAY_NOTE_ARRAY(start_up, false, STACCATO); +	println("Matrix Init"); +}  #endif +  void update_quad_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3, uint8_t layer4, bool order)  {  	if (order) @@ -241,69 +233,82 @@ void update_quad_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3, uint8_t l  const uint16_t PROGMEM fn_actions[] = {  }; -//#define MUSIC_ARRAY_SIZE(x) (((int)(sizeof(x) / (sizeof(x[0][0])))) / 2)  const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)  { -  // MACRODOWN only works in this function -      switch(id) { -        case M_LW: -          if (record->event.pressed) { -            #ifdef AUDIO_ENABLE -              println("PlayNotes LW"); -              PLAY_NOTE_ARRAY(tone_lw, false, STACCATO); -            #endif -            layer_on(_LW); -            update_tri_layer(_LW, _RS, _FN); -          } else { -            layer_off(_LW); -            update_tri_layer(_LW, _RS, _FN); -          } -          break; -        case M_RS: -          if (record->event.pressed) { -            #ifdef AUDIO_ENABLE -              println("PlayNotes RS"); -              PLAY_NOTE_ARRAY(tone_rs, false, LEGATO); -            #endif -            layer_on(_RS); -            update_tri_layer(_LW, _RS, _FN); -          } else { -            layer_off(_RS); -            update_tri_layer(_LW, _RS, _FN); -          } -          break; -		default: -        	break; -      } -    return MACRO_NONE; -}; +	// MACRODOWN only works in this function +	switch(id) +	{ +		case M_LW: +			if (record->event.pressed) { +				#ifdef AUDIO_ENABLE +				PLAY_NOTE_ARRAY(tone_lw, false, STACCATO); +				#endif +				layer_on(_LW); +				update_tri_layer(_LW, _RS, _AD); +			} else { +				layer_off(_LW); +				update_tri_layer(_LW, _RS, _AD); +			} +			break; +		case M_RS: +			if (record->event.pressed) { +				#ifdef AUDIO_ENABLE +				PLAY_NOTE_ARRAY(tone_rs, false, LEGATO); +				#endif +				layer_on(_RS); +				update_tri_layer(_LW, _RS, _AD); +			} else { +				layer_off(_RS); +				update_tri_layer(_LW, _RS, _AD); +			} +			break; -#ifdef AUDIO_ENABLE -float start_up[][2] = { -Q_NOTE(_E4   ) , -Q_NOTE(_E4   ) , -Q_NOTE(_F4   ) , -Q_NOTE(_G4   ) , -Q_NOTE(_G4   ) , -Q_NOTE(_F4   ) , -Q_NOTE(_E4   ) , -Q_NOTE(_D4   ) , -Q_NOTE(_C4   ) , -Q_NOTE(_C4   ) , -Q_NOTE(_D4   ) , -Q_NOTE(_E4   ) , -H_NOTE(_E4   ) , -Q_NOTE(_D4   ) , -H_NOTE(_D4   ) , -}; -#endif +		case M_FN: +			if (record->event.pressed) { +				layer_on(_FN); +			} else { +				layer_off(_FN); +			} +			break; -void matrix_init_user(void) { -  #ifdef AUDIO_ENABLE -    init_notes(); -    PLAY_NOTE_ARRAY(start_up, false, STACCATO); -    println("Matrix Init"); -  #endif -} +		case M_T1: +			if (record->event.pressed) set_timbre(TIMBRE_12); +			break; + +		case M_T2: +			if (record->event.pressed) set_timbre(TIMBRE_25); +			break; + +		case M_T3: +			if (record->event.pressed) set_timbre(TIMBRE_50); +			break; + +		case M_T4: +			if (record->event.pressed) set_timbre(TIMBRE_75); +			break; + + +		case M_TU: +			if (record->event.pressed) increase_tempo(10); +			break; + +		case M_TD: +			if (record->event.pressed) decrease_tempo(10); +			break; + +		case M_DF: +			if (record->event.pressed) +			{ +				set_timbre(TIMBRE_DEFAULT); +				set_tempo(TEMPO_DEFAULT); +			} +			break; + +		default: +			break; + +	} +	return MACRO_NONE; +};
\ No newline at end of file diff --git a/keyboard/preonic/keymaps/default/keymap.c b/keyboard/preonic/keymaps/default/keymap.c index 48bc72dab..2591af9f0 100644 --- a/keyboard/preonic/keymaps/default/keymap.c +++ b/keyboard/preonic/keymaps/default/keymap.c @@ -224,6 +224,7 @@ float tone_music[][2] = {    {440.0*pow(2.0,(23)/12.0), 8},    {440.0*pow(2.0,(24)/12.0), 8}  }; +float ode_to_joy[][2] = SONG(ODE_TO_JOY);  #endif  void persistant_default_layer_set(uint16_t default_layer) { @@ -312,7 +313,9 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)          case 9:            if (record->event.pressed) {              #ifdef AUDIO_ENABLE -              PLAY_NOTE_ARRAY(tone_music, false, 0); +              init_notes(); +              set_tempo(150); +              PLAY_NOTE_ARRAY(ode_to_joy, false, .25);                layer_on(_MUSIC);              #endif            } @@ -339,6 +342,6 @@ void process_action_user(keyrecord_t *record) {  void matrix_init_user(void) {    #ifdef AUDIO_ENABLE      init_notes(); -    play_notes(&start_up, false, 0); +    PLAY_NOTE_ARRAY(start_up, false, 0);    #endif  } | 
