aboutsummaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
authorJack Humbert <jack.humb@gmail.com>2016-05-09 13:17:15 -0400
committerJack Humbert <jack.humb@gmail.com>2016-05-09 13:17:15 -0400
commit3f02637f4dd765803671c2611191beb096d60b36 (patch)
treec11714b62494097226253d3951de2472e7954129 /quantum
parent684793360cdb08ac1e50a6d27e1796fadd527adb (diff)
downloadqmk_firmware-3f02637f4dd765803671c2611191beb096d60b36.tar.gz
qmk_firmware-3f02637f4dd765803671c2611191beb096d60b36.zip
Backlight Breathing for Planck and Atomic
* Updated personal layouts * tweaked personal * Nightly - Audio Cleanup Refactored the LUTs. Abstracted some of the registers out of audio to use more functional names. Split audio into audio and audio_pwm. WIP * nightly - collapsed code * Added check for note playing to LEDs * Usability tweaks * TWEAE * nightly added extra kcs to keymap common * turned on Plank audio * Added backlight breathing to atomic * reverted accidental merge * adds backlight pulse to planck
Diffstat (limited to 'quantum')
-rw-r--r--quantum/audio/audio.c4
-rw-r--r--quantum/audio/audio.h11
-rw-r--r--quantum/keymap_common.h18
-rw-r--r--quantum/keymap_midi.h10
-rw-r--r--quantum/quantum.mk6
5 files changed, 36 insertions, 13 deletions
diff --git a/quantum/audio/audio.c b/quantum/audio/audio.c
index 3a7f0f556..27b64f8c9 100644
--- a/quantum/audio/audio.c
+++ b/quantum/audio/audio.c
@@ -374,6 +374,10 @@ bool is_playing_notes(void) {
374 return playing_notes; 374 return playing_notes;
375} 375}
376 376
377bool is_audio_on(void) {
378 return (audio_config.enable != 0);
379}
380
377void audio_toggle(void) { 381void audio_toggle(void) {
378 audio_config.enable ^= 1; 382 audio_config.enable ^= 1;
379 eeconfig_update_audio(audio_config.raw); 383 eeconfig_update_audio(audio_config.raw);
diff --git a/quantum/audio/audio.h b/quantum/audio/audio.h
index 3d706587a..4ba879bbb 100644
--- a/quantum/audio/audio.h
+++ b/quantum/audio/audio.h
@@ -25,6 +25,7 @@ typedef union {
25 }; 25 };
26} audio_config_t; 26} audio_config_t;
27 27
28bool is_audio_on(void);
28void audio_toggle(void); 29void audio_toggle(void);
29void audio_on(void); 30void audio_on(void);
30void audio_off(void); 31void audio_off(void);
@@ -71,11 +72,11 @@ void stop_note(float freq);
71void stop_all_notes(void); 72void stop_all_notes(void);
72void play_notes(float (*np)[][2], uint16_t n_count, bool n_repeat, float n_rest); 73void play_notes(float (*np)[][2], uint16_t n_count, bool n_repeat, float n_rest);
73 74
74#define SCALE (int []){ 0 + (12*0), 2 + (12*0), 4 + (12*0), 5 + (12*0), 7 + (12*0), 9 + (12*0), 11 + (12*0), \ 75#define SCALE (int8_t []){ 0 + (12*0), 2 + (12*0), 4 + (12*0), 5 + (12*0), 7 + (12*0), 9 + (12*0), 11 + (12*0), \
75 0 + (12*1), 2 + (12*1), 4 + (12*1), 5 + (12*1), 7 + (12*1), 9 + (12*1), 11 + (12*1), \ 76 0 + (12*1), 2 + (12*1), 4 + (12*1), 5 + (12*1), 7 + (12*1), 9 + (12*1), 11 + (12*1), \
76 0 + (12*2), 2 + (12*2), 4 + (12*2), 5 + (12*2), 7 + (12*2), 9 + (12*2), 11 + (12*2), \ 77 0 + (12*2), 2 + (12*2), 4 + (12*2), 5 + (12*2), 7 + (12*2), 9 + (12*2), 11 + (12*2), \
77 0 + (12*3), 2 + (12*3), 4 + (12*3), 5 + (12*3), 7 + (12*3), 9 + (12*3), 11 + (12*3), \ 78 0 + (12*3), 2 + (12*3), 4 + (12*3), 5 + (12*3), 7 + (12*3), 9 + (12*3), 11 + (12*3), \
78 0 + (12*4), 2 + (12*4), 4 + (12*4), 5 + (12*4), 7 + (12*4), 9 + (12*4), 11 + (12*4), } 79 0 + (12*4), 2 + (12*4), 4 + (12*4), 5 + (12*4), 7 + (12*4), 9 + (12*4), 11 + (12*4), }
79 80
80// These macros are used to allow play_notes to play an array of indeterminate 81// These macros are used to allow play_notes to play an array of indeterminate
81// length. This works around the limitation of C's sizeof operation on pointers. 82// length. This works around the limitation of C's sizeof operation on pointers.
diff --git a/quantum/keymap_common.h b/quantum/keymap_common.h
index 8c27e9035..322fda498 100644
--- a/quantum/keymap_common.h
+++ b/quantum/keymap_common.h
@@ -87,8 +87,11 @@ extern const uint16_t fn_actions[];
87#define KC_EXCLAIM KC_EXLM 87#define KC_EXCLAIM KC_EXLM
88 88
89#define KC_AT LSFT(KC_2) // @ 89#define KC_AT LSFT(KC_2) // @
90
91
90#define KC_HASH LSFT(KC_3) // # 92#define KC_HASH LSFT(KC_3) // #
91 93
94
92#define KC_DLR LSFT(KC_4) // $ 95#define KC_DLR LSFT(KC_4) // $
93#define KC_DOLLAR KC_DLR 96#define KC_DOLLAR KC_DLR
94 97
@@ -110,11 +113,13 @@ extern const uint16_t fn_actions[];
110#define KC_RPRN LSFT(KC_0) // ) 113#define KC_RPRN LSFT(KC_0) // )
111#define KC_RIGHT_PAREN KC_RPRN 114#define KC_RIGHT_PAREN KC_RPRN
112 115
116
113#define KC_UNDS LSFT(KC_MINS) // _ 117#define KC_UNDS LSFT(KC_MINS) // _
114#define KC_UNDERSCORE KC_UNDS 118#define KC_UNDERSCORE KC_UNDS
115 119
116#define KC_PLUS LSFT(KC_EQL) // + 120#define KC_PLUS LSFT(KC_EQL) // +
117 121
122
118#define KC_LCBR LSFT(KC_LBRC) // { 123#define KC_LCBR LSFT(KC_LBRC) // {
119#define KC_LEFT_CURLY_BRACE KC_LCBR 124#define KC_LEFT_CURLY_BRACE KC_LCBR
120 125
@@ -132,6 +137,19 @@ extern const uint16_t fn_actions[];
132 137
133#define KC_PIPE LSFT(KC_BSLS) // | 138#define KC_PIPE LSFT(KC_BSLS) // |
134 139
140#define KC_LT LSFT(KC_COMM) // <
141
142
143#define KC_GT LSFT(KC_DOT) // >
144
145
146#define KC_QUES LSFT(KC_SLSH) // ?
147#define KC_QUESTION KC_QUES
148
149
150#define KC_DQT LSFT(KC_QUOT) // "
151#define KC_DOUBLE_QUOTE KC_DQT
152
135#define KC_DELT KC_DELETE // Del key (four letter code) 153#define KC_DELT KC_DELETE // Del key (four letter code)
136 154
137// Alias for function layers than expand past FN31 155// Alias for function layers than expand past FN31
diff --git a/quantum/keymap_midi.h b/quantum/keymap_midi.h
index 795f26380..3a2bf3aff 100644
--- a/quantum/keymap_midi.h
+++ b/quantum/keymap_midi.h
@@ -25,11 +25,11 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26#define CHNL(note, channel) (note + (channel << 8)) 26#define CHNL(note, channel) (note + (channel << 8))
27 27
28#define SCALE (int []){ 0 + (12*0), 2 + (12*0), 4 + (12*0), 5 + (12*0), 7 + (12*0), 9 + (12*0), 11 + (12*0), \ 28#define SCALE (int8_t []){ 0 + (12*0), 2 + (12*0), 4 + (12*0), 5 + (12*0), 7 + (12*0), 9 + (12*0), 11 + (12*0), \
29 0 + (12*1), 2 + (12*1), 4 + (12*1), 5 + (12*1), 7 + (12*1), 9 + (12*1), 11 + (12*1), \ 29 0 + (12*1), 2 + (12*1), 4 + (12*1), 5 + (12*1), 7 + (12*1), 9 + (12*1), 11 + (12*1), \
30 0 + (12*2), 2 + (12*2), 4 + (12*2), 5 + (12*2), 7 + (12*2), 9 + (12*2), 11 + (12*2), \ 30 0 + (12*2), 2 + (12*2), 4 + (12*2), 5 + (12*2), 7 + (12*2), 9 + (12*2), 11 + (12*2), \
31 0 + (12*3), 2 + (12*3), 4 + (12*3), 5 + (12*3), 7 + (12*3), 9 + (12*3), 11 + (12*3), \ 31 0 + (12*3), 2 + (12*3), 4 + (12*3), 5 + (12*3), 7 + (12*3), 9 + (12*3), 11 + (12*3), \
32 0 + (12*4), 2 + (12*4), 4 + (12*4), 5 + (12*4), 7 + (12*4), 9 + (12*4), 11 + (12*4), } 32 0 + (12*4), 2 + (12*4), 4 + (12*4), 5 + (12*4), 7 + (12*4), 9 + (12*4), 11 + (12*4), }
33 33
34#define N_CN1 (0x600C + (12 * -1) + 0 ) 34#define N_CN1 (0x600C + (12 * -1) + 0 )
35#define N_CN1S (0x600C + (12 * -1) + 1 ) 35#define N_CN1S (0x600C + (12 * -1) + 1 )
diff --git a/quantum/quantum.mk b/quantum/quantum.mk
index ff34c463a..5f4c2f045 100644
--- a/quantum/quantum.mk
+++ b/quantum/quantum.mk
@@ -28,9 +28,9 @@ ifeq ($(strip $(MIDI_ENABLE)), yes)
28endif 28endif
29 29
30ifeq ($(strip $(AUDIO_ENABLE)), yes) 30ifeq ($(strip $(AUDIO_ENABLE)), yes)
31 SRC += $(QUANTUM_DIR)/audio/audio.c 31 SRC += $(QUANTUM_DIR)/audio/audio.c
32 SRC += $(QUANTUM_DIR)/audio/voices.c 32 SRC += $(QUANTUM_DIR)/audio/voices.c
33 SRC += $(QUANTUM_DIR)/audio/luts.c 33 SRC += $(QUANTUM_DIR)/audio/luts.c
34endif 34endif
35 35
36ifeq ($(strip $(UNICODE_ENABLE)), yes) 36ifeq ($(strip $(UNICODE_ENABLE)), yes)