aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2018-02-08 12:16:06 -0800
committerJack Humbert <jack.humb@gmail.com>2018-02-08 15:16:06 -0500
commit6835ae82095427b2b5d5b3839a8d54845244169b (patch)
treeebd3a740ea7cc58b6ecc82a18044ec44c8eebb77
parentc5d81a84a0519c78de1b5e165f5f2c1eb773bc11 (diff)
downloadfirmware-6835ae82095427b2b5d5b3839a8d54845244169b.tar.gz
firmware-6835ae82095427b2b5d5b3839a8d54845244169b.tar.bz2
firmware-6835ae82095427b2b5d5b3839a8d54845244169b.zip
Add the ability to disable Music Mode completely (#2339)
* Skip process_music in NO_MUSIC_MODE is defined * Skip matrix_scan_music if NO_MUSIC_MODE is defined * Skip music_all_notes_off if NO_MUSIC_MODE is defined * Leave matrix_scan_music in, because it reduces firmware size by 150b.... * Add docs for NO_MUSIC_MODE
-rw-r--r--docs/feature_audio.md4
-rw-r--r--keyboards/orthodox/keymaps/drashna/config.h1
-rw-r--r--quantum/quantum.c6
3 files changed, 8 insertions, 3 deletions
diff --git a/docs/feature_audio.md b/docs/feature_audio.md
index 6b991a9af..c7133b295 100644
--- a/docs/feature_audio.md
+++ b/docs/feature_audio.md
@@ -82,6 +82,10 @@ The pitch standard (`PITCH_STANDARD_A`) is 440.0f by default - to change this, a
#define PITCH_STANDARD_A 432.0f
+You can completely disable Music Mode as well. This is useful, if you're pressed for space on your controller. To disable it, add this to your `confid.h`:
+
+ #define NO_MUSIC_MODE
+
## MIDI Functionality
This is still a WIP, but check out `quantum/keymap_midi.c` to see what's happening. Enable from the Makefile.
diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h
index c83380bd0..107f16d58 100644
--- a/keyboards/orthodox/keymaps/drashna/config.h
+++ b/keyboards/orthodox/keymaps/drashna/config.h
@@ -69,6 +69,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#ifdef AUDIO_ENABLE
#define C6_AUDIO
#define STARTUP_SONG SONG(IMPERIAL_MARCH)
+#define NO_MUSIC_MODE
#endif
#undef PRODUCT
diff --git a/quantum/quantum.c b/quantum/quantum.c
index bd95d5ea8..66feca2f2 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -147,7 +147,7 @@ void reset_keyboard(void) {
#if defined(MIDI_ENABLE) && defined(MIDI_BASIC)
process_midi_all_notes_off();
#endif
-#if defined(AUDIO_ENABLE)
+#if defined(AUDIO_ENABLE) && !defined(NO_MUSIC_MODE)
music_all_notes_off();
uint16_t timer_start = timer_read();
PLAY_SONG(goodbye_song);
@@ -236,7 +236,7 @@ bool process_record_quantum(keyrecord_t *record) {
#ifdef STENO_ENABLE
process_steno(keycode, record) &&
#endif
- #if defined(AUDIO_ENABLE) || (defined(MIDI_ENABLE) && defined(MIDI_BASIC))
+ #if ( defined(AUDIO_ENABLE) || (defined(MIDI_ENABLE) && defined(MIDI_BASIC))) && !defined(NO_MUSIC_MODE)
process_music(keycode, record) &&
#endif
#ifdef TAP_DANCE_ENABLE
@@ -834,7 +834,7 @@ void matrix_init_quantum() {
}
void matrix_scan_quantum() {
- #ifdef AUDIO_ENABLE
+ #if defined(AUDIO_ENABLE)
matrix_scan_music();
#endif