diff options
author | skullydazed <skullydazed@users.noreply.github.com> | 2018-01-13 20:38:25 -0800 |
---|---|---|
committer | Jack Humbert <jack.humb@gmail.com> | 2018-01-13 23:38:25 -0500 |
commit | 5836d1a06a7265781fa37acf13e3ba9df7224247 (patch) | |
tree | fe4161c2cb1dc28b5eab39c5d97caedc92b7efc8 | |
parent | fd359e23e8b46826f480d1bcf21261c3f777e2f4 (diff) | |
download | qmk_firmware-5836d1a06a7265781fa37acf13e3ba9df7224247.tar.gz qmk_firmware-5836d1a06a7265781fa37acf13e3ba9df7224247.zip |
Fix up the ARM audio support (#2136)
* Get audio working on clueboard/60
* add keys for music mode
* Change doubles to floats
* add keys for all the songs
* revert to the default startup sound
* Remove music mode until we can figure out why it crashes
-rw-r--r-- | common_features.mk | 6 | ||||
-rw-r--r-- | keyboards/clueboard/60/keymaps/default/keymap.c | 94 | ||||
-rw-r--r-- | keyboards/clueboard/60/led.c | 9 | ||||
-rw-r--r-- | keyboards/clueboard/60/matrix.c | 6 | ||||
-rw-r--r-- | keyboards/clueboard/60/rules.mk | 2 | ||||
-rw-r--r-- | quantum/audio/audio_arm.c | 1 | ||||
-rw-r--r-- | quantum/audio/musical_notes.h | 226 | ||||
-rw-r--r-- | quantum/audio/song_list.h | 18 |
8 files changed, 230 insertions, 132 deletions
diff --git a/common_features.mk b/common_features.mk index 319834b5e..a67cf230f 100644 --- a/common_features.mk +++ b/common_features.mk | |||
@@ -34,7 +34,11 @@ ifeq ($(strip $(AUDIO_ENABLE)), yes) | |||
34 | OPT_DEFS += -DAUDIO_ENABLE | 34 | OPT_DEFS += -DAUDIO_ENABLE |
35 | MUSIC_ENABLE := 1 | 35 | MUSIC_ENABLE := 1 |
36 | SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c | 36 | SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c |
37 | SRC += $(QUANTUM_DIR)/audio/audio.c | 37 | ifeq ($(PLATFORM),AVR) |
38 | SRC += $(QUANTUM_DIR)/audio/audio.c | ||
39 | else | ||
40 | SRC += $(QUANTUM_DIR)/audio/audio_arm.c | ||
41 | endif | ||
38 | SRC += $(QUANTUM_DIR)/audio/voices.c | 42 | SRC += $(QUANTUM_DIR)/audio/voices.c |
39 | SRC += $(QUANTUM_DIR)/audio/luts.c | 43 | SRC += $(QUANTUM_DIR)/audio/luts.c |
40 | endif | 44 | endif |
diff --git a/keyboards/clueboard/60/keymaps/default/keymap.c b/keyboards/clueboard/60/keymaps/default/keymap.c index 1b0c71264..8397c4bbf 100644 --- a/keyboards/clueboard/60/keymaps/default/keymap.c +++ b/keyboards/clueboard/60/keymaps/default/keymap.c | |||
@@ -3,11 +3,35 @@ | |||
3 | #define _______ KC_TRNS | 3 | #define _______ KC_TRNS |
4 | 4 | ||
5 | enum keyboard_layers { | 5 | enum keyboard_layers { |
6 | _BL, | 6 | _BL, |
7 | _FL, | 7 | _FL, |
8 | _CL | 8 | _CL |
9 | }; | 9 | }; |
10 | 10 | ||
11 | enum custom_keycodes { | ||
12 | S_BSKTC = SAFE_RANGE, | ||
13 | S_ODEJY, | ||
14 | S_RCKBY, | ||
15 | S_DOEDR, | ||
16 | S_SCALE, | ||
17 | S_ONEUP, | ||
18 | S_COIN, | ||
19 | S_SONIC, | ||
20 | S_ZELDA | ||
21 | }; | ||
22 | |||
23 | #ifdef AUDIO_ENABLE | ||
24 | float song_basketcase[][2] = SONG(BASKET_CASE); | ||
25 | float song_ode_to_joy[][2] = SONG(ODE_TO_JOY); | ||
26 | float song_rock_a_bye_baby[][2] = SONG(ROCK_A_BYE_BABY); | ||
27 | float song_doe_a_deer[][2] = SONG(DOE_A_DEER); | ||
28 | float song_scale[][2] = SONG(MUSIC_SCALE_SOUND); | ||
29 | float song_coin[][2] = SONG(COIN_SOUND); | ||
30 | float song_one_up[][2] = SONG(ONE_UP_SOUND); | ||
31 | float song_sonic_ring[][2] = SONG(SONIC_RING); | ||
32 | float song_zelda_puzzle[][2] = SONG(ZELDA_PUZZLE); | ||
33 | #endif | ||
34 | |||
11 | const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | 35 | const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { |
12 | /* Layer 0: Default Layer | 36 | /* Layer 0: Default Layer |
13 | * ,-----------------------------------------------------------. | 37 | * ,-----------------------------------------------------------. |
@@ -33,11 +57,71 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | |||
33 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \ | 57 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, \ |
34 | _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ | 58 | _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ |
35 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, \ | 59 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, \ |
36 | _______, _______, _______, _______, _______, _______, MO(_FL), _______), | 60 | _______,_______,_______, _______, _______, _______, MO(_FL), _______), |
37 | [_CL] = KEYMAP( | 61 | [_CL] = KEYMAP( |
38 | BL_STEP,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,\ | 62 | BL_STEP,S_BSKTC,S_ODEJY,S_RCKBY,S_DOEDR,S_SCALE,S_ONEUP,S_COIN, S_SONIC,S_ZELDA,_______,_______,_______,_______,_______,\ |
39 | _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, \ | 63 | _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, \ |
40 | _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ | 64 | _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ |
41 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ | 65 | _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, \ |
42 | _______, _______, _______, _______, _______, _______, MO(_FL), _______) | 66 | _______, _______, _______, _______, _______, _______, MO(_FL), _______) |
43 | }; | 67 | }; |
68 | |||
69 | bool process_record_user(uint16_t keycode, keyrecord_t *record) { | ||
70 | switch (keycode) { | ||
71 | case S_BSKTC: | ||
72 | if (record->event.pressed) { | ||
73 | stop_all_notes(); | ||
74 | PLAY_SONG(song_basketcase); | ||
75 | } | ||
76 | return false; | ||
77 | case S_ODEJY: | ||
78 | if (record->event.pressed) { | ||
79 | stop_all_notes(); | ||
80 | PLAY_SONG(song_ode_to_joy); | ||
81 | } | ||
82 | return false; | ||
83 | case S_RCKBY: | ||
84 | if (record->event.pressed) { | ||
85 | stop_all_notes(); | ||
86 | PLAY_SONG(song_rock_a_bye_baby); | ||
87 | } | ||
88 | return false; | ||
89 | case S_DOEDR: | ||
90 | if (record->event.pressed) { | ||
91 | stop_all_notes(); | ||
92 | PLAY_SONG(song_doe_a_deer); | ||
93 | } | ||
94 | return false; | ||
95 | case S_SCALE: | ||
96 | if (record->event.pressed) { | ||
97 | stop_all_notes(); | ||
98 | PLAY_SONG(song_scale); | ||
99 | } | ||
100 | return false; | ||
101 | case S_ONEUP: | ||
102 | if (record->event.pressed) { | ||
103 | stop_all_notes(); | ||
104 | PLAY_SONG(song_one_up); | ||
105 | } | ||
106 | return false; | ||
107 | case S_COIN: | ||
108 | if (record->event.pressed) { | ||
109 | stop_all_notes(); | ||
110 | PLAY_SONG(song_coin); | ||
111 | } | ||
112 | return false; | ||
113 | case S_SONIC: | ||
114 | if (record->event.pressed) { | ||
115 | stop_all_notes(); | ||
116 | PLAY_SONG(song_sonic_ring); | ||
117 | } | ||
118 | return false; | ||
119 | case S_ZELDA: | ||
120 | if (record->event.pressed) { | ||
121 | stop_all_notes(); | ||
122 | PLAY_SONG(song_zelda_puzzle); | ||
123 | } | ||
124 | return false; | ||
125 | } | ||
126 | return true; | ||
127 | } | ||
diff --git a/keyboards/clueboard/60/led.c b/keyboards/clueboard/60/led.c index fdf244ad5..350696736 100644 --- a/keyboards/clueboard/60/led.c +++ b/keyboards/clueboard/60/led.c | |||
@@ -23,7 +23,7 @@ | |||
23 | void backlight_init_ports(void) { | 23 | void backlight_init_ports(void) { |
24 | printf("backlight_init_ports()\n"); | 24 | printf("backlight_init_ports()\n"); |
25 | #ifdef BACKLIGHT_ENABLE | 25 | #ifdef BACKLIGHT_ENABLE |
26 | palSetPadMode(GPIOB, 8, PAL_MODE_OUTPUT_PUSHPULL); | 26 | palSetPadMode(GPIOB, 8, PAL_MODE_OUTPUT_PUSHPULL); |
27 | palSetPad(GPIOB, 8); | 27 | palSetPad(GPIOB, 8); |
28 | #endif | 28 | #endif |
29 | } | 29 | } |
@@ -41,13 +41,8 @@ void backlight_set(uint8_t level) { | |||
41 | #endif | 41 | #endif |
42 | } | 42 | } |
43 | 43 | ||
44 | void led_init_ports() { | ||
45 | printf("led_init_ports()\n"); | ||
46 | palSetPadMode(GPIOB, 7, PAL_MODE_OUTPUT_PUSHPULL); | ||
47 | } | ||
48 | |||
49 | void led_set_kb(uint8_t usb_led) { | 44 | void led_set_kb(uint8_t usb_led) { |
50 | printf("led_init_ports()\n"); | 45 | printf("led_set_kb(%d)\n", usb_led); |
51 | if (usb_led & (1<<USB_LED_CAPS_LOCK)) { | 46 | if (usb_led & (1<<USB_LED_CAPS_LOCK)) { |
52 | // Turn capslock on | 47 | // Turn capslock on |
53 | palSetPad(GPIOB, 7); | 48 | palSetPad(GPIOB, 7); |
diff --git a/keyboards/clueboard/60/matrix.c b/keyboards/clueboard/60/matrix.c index 4023bc03c..7c38a3bd4 100644 --- a/keyboards/clueboard/60/matrix.c +++ b/keyboards/clueboard/60/matrix.c | |||
@@ -71,10 +71,7 @@ void matrix_init(void) { | |||
71 | memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t)); | 71 | memset(matrix, 0, MATRIX_ROWS * sizeof(matrix_row_t)); |
72 | memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t)); | 72 | memset(matrix_debouncing, 0, MATRIX_COLS * sizeof(matrix_row_t)); |
73 | 73 | ||
74 | /* Setup capslock */ | 74 | palClearPad(GPIOB, 7); // Turn off capslock |
75 | // palSetPadMode(GPIOB, 7, PAL_MODE_OUTPUT_PUSHPULL); | ||
76 | // palClearPad(GPIOB, 7); | ||
77 | |||
78 | matrix_init_quantum(); | 75 | matrix_init_quantum(); |
79 | } | 76 | } |
80 | 77 | ||
@@ -138,6 +135,7 @@ uint8_t matrix_scan(void) { | |||
138 | debouncing_time = timer_read(); | 135 | debouncing_time = timer_read(); |
139 | } | 136 | } |
140 | } | 137 | } |
138 | |||
141 | if (debouncing && timer_elapsed(debouncing_time) > DEBOUNCE) { | 139 | if (debouncing && timer_elapsed(debouncing_time) > DEBOUNCE) { |
142 | for (int row = 0; row < MATRIX_ROWS; row++) { | 140 | for (int row = 0; row < MATRIX_ROWS; row++) { |
143 | matrix[row] = 0; | 141 | matrix[row] = 0; |
diff --git a/keyboards/clueboard/60/rules.mk b/keyboards/clueboard/60/rules.mk index 01b7dad9b..93e6019a4 100644 --- a/keyboards/clueboard/60/rules.mk +++ b/keyboards/clueboard/60/rules.mk | |||
@@ -50,5 +50,5 @@ COMMAND_ENABLE = yes # Commands for debug and configuration | |||
50 | #SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend | 50 | #SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend |
51 | NKRO_ENABLE = yes # USB Nkey Rollover | 51 | NKRO_ENABLE = yes # USB Nkey Rollover |
52 | CUSTOM_MATRIX = yes # Custom matrix file | 52 | CUSTOM_MATRIX = yes # Custom matrix file |
53 | #AUDIO_ENABLE = yes | 53 | AUDIO_ENABLE = yes |
54 | # SERIAL_LINK_ENABLE = yes | 54 | # SERIAL_LINK_ENABLE = yes |
diff --git a/quantum/audio/audio_arm.c b/quantum/audio/audio_arm.c index 5ad0c86ec..43c8d67c4 100644 --- a/quantum/audio/audio_arm.c +++ b/quantum/audio/audio_arm.c | |||
@@ -18,7 +18,6 @@ | |||
18 | #include "ch.h" | 18 | #include "ch.h" |
19 | #include "hal.h" | 19 | #include "hal.h" |
20 | 20 | ||
21 | #include <stdio.h> | ||
22 | #include <string.h> | 21 | #include <string.h> |
23 | #include "print.h" | 22 | #include "print.h" |
24 | #include "keymap.h" | 23 | #include "keymap.h" |
diff --git a/quantum/audio/musical_notes.h b/quantum/audio/musical_notes.h index 647b69564..065608ccc 100644 --- a/quantum/audio/musical_notes.h +++ b/quantum/audio/musical_notes.h | |||
@@ -53,127 +53,127 @@ | |||
53 | 53 | ||
54 | // Note Timbre | 54 | // Note Timbre |
55 | // Changes how the notes sound | 55 | // Changes how the notes sound |
56 | #define TIMBRE_12 0.125 | 56 | #define TIMBRE_12 0.125f |
57 | #define TIMBRE_25 0.250 | 57 | #define TIMBRE_25 0.250f |
58 | #define TIMBRE_50 0.500 | 58 | #define TIMBRE_50 0.500f |
59 | #define TIMBRE_75 0.750 | 59 | #define TIMBRE_75 0.750f |
60 | #define TIMBRE_DEFAULT TIMBRE_50 | 60 | #define TIMBRE_DEFAULT TIMBRE_50 |
61 | 61 | ||
62 | // Notes - # = Octave | 62 | // Notes - # = Octave |
63 | 63 | ||
64 | #define NOTE_REST 0.00 | 64 | #define NOTE_REST 0.00f |
65 | 65 | ||
66 | /* These notes are currently bugged | 66 | /* These notes are currently bugged |
67 | #define NOTE_C0 16.35 | 67 | #define NOTE_C0 16.35f |
68 | #define NOTE_CS0 17.32 | 68 | #define NOTE_CS0 17.32f |
69 | #define NOTE_D0 18.35 | 69 | #define NOTE_D0 18.35f |
70 | #define NOTE_DS0 19.45 | 70 | #define NOTE_DS0 19.45f |
71 | #define NOTE_E0 20.60 | 71 | #define NOTE_E0 20.60f |
72 | #define NOTE_F0 21.83 | 72 | #define NOTE_F0 21.83f |
73 | #define NOTE_FS0 23.12 | 73 | #define NOTE_FS0 23.12f |
74 | #define NOTE_G0 24.50 | 74 | #define NOTE_G0 24.50f |
75 | #define NOTE_GS0 25.96 | 75 | #define NOTE_GS0 25.96f |
76 | #define NOTE_A0 27.50 | 76 | #define NOTE_A0 27.50f |
77 | #define NOTE_AS0 29.14 | 77 | #define NOTE_AS0 29.14f |
78 | #define NOTE_B0 30.87 | 78 | #define NOTE_B0 30.87f |
79 | #define NOTE_C1 32.70 | 79 | #define NOTE_C1 32.70f |
80 | #define NOTE_CS1 34.65 | 80 | #define NOTE_CS1 34.65f |
81 | #define NOTE_D1 36.71 | 81 | #define NOTE_D1 36.71f |
82 | #define NOTE_DS1 38.89 | 82 | #define NOTE_DS1 38.89f |
83 | #define NOTE_E1 41.20 | 83 | #define NOTE_E1 41.20f |
84 | #define NOTE_F1 43.65 | 84 | #define NOTE_F1 43.65f |
85 | #define NOTE_FS1 46.25 | 85 | #define NOTE_FS1 46.25f |
86 | #define NOTE_G1 49.00 | 86 | #define NOTE_G1 49.00f |
87 | #define NOTE_GS1 51.91 | 87 | #define NOTE_GS1 51.91f |
88 | #define NOTE_A1 55.00 | 88 | #define NOTE_A1 55.00f |
89 | #define NOTE_AS1 58.27 | 89 | #define NOTE_AS1 58.27f |
90 | */ | 90 | */ |
91 | 91 | ||
92 | #define NOTE_B1 61.74 | 92 | #define NOTE_B1 61.74f |
93 | #define NOTE_C2 65.41 | 93 | #define NOTE_C2 65.41f |
94 | #define NOTE_CS2 69.30 | 94 | #define NOTE_CS2 69.30f |
95 | #define NOTE_D2 73.42 | 95 | #define NOTE_D2 73.42f |
96 | #define NOTE_DS2 77.78 | 96 | #define NOTE_DS2 77.78f |
97 | #define NOTE_E2 82.41 | 97 | #define NOTE_E2 82.41f |
98 | #define NOTE_F2 87.31 | 98 | #define NOTE_F2 87.31f |
99 | #define NOTE_FS2 92.50 | 99 | #define NOTE_FS2 92.50f |
100 | #define NOTE_G2 98.00 | 100 | #define NOTE_G2 98.00f |
101 | #define NOTE_GS2 103.83 | 101 | #define NOTE_GS2 103.83f |
102 | #define NOTE_A2 110.00 | 102 | #define NOTE_A2 110.00f |
103 | #define NOTE_AS2 116.54 | 103 | #define NOTE_AS2 116.54f |
104 | #define NOTE_B2 123.47 | 104 | #define NOTE_B2 123.47f |
105 | #define NOTE_C3 130.81 | 105 | #define NOTE_C3 130.81f |
106 | #define NOTE_CS3 138.59 | 106 | #define NOTE_CS3 138.59f |
107 | #define NOTE_D3 146.83 | 107 | #define NOTE_D3 146.83f |
108 | #define NOTE_DS3 155.56 | 108 | #define NOTE_DS3 155.56f |
109 | #define NOTE_E3 164.81 | 109 | #define NOTE_E3 164.81f |
110 | #define NOTE_F3 174.61 | 110 | #define NOTE_F3 174.61f |
111 | #define NOTE_FS3 185.00 | 111 | #define NOTE_FS3 185.00f |
112 | #define NOTE_G3 196.00 | 112 | #define NOTE_G3 196.00f |
113 | #define NOTE_GS3 207.65 | 113 | #define NOTE_GS3 207.65f |
114 | #define NOTE_A3 220.00 | 114 | #define NOTE_A3 220.00f |
115 | #define NOTE_AS3 233.08 | 115 | #define NOTE_AS3 233.08f |
116 | #define NOTE_B3 246.94 | 116 | #define NOTE_B3 246.94f |
117 | #define NOTE_C4 261.63 | 117 | #define NOTE_C4 261.63f |
118 | #define NOTE_CS4 277.18 | 118 | #define NOTE_CS4 277.18f |
119 | #define NOTE_D4 293.66 | 119 | #define NOTE_D4 293.66f |
120 | #define NOTE_DS4 311.13 | 120 | #define NOTE_DS4 311.13f |
121 | #define NOTE_E4 329.63 | 121 | #define NOTE_E4 329.63f |
122 | #define NOTE_F4 349.23 | 122 | #define NOTE_F4 349.23f |
123 | #define NOTE_FS4 369.99 | 123 | #define NOTE_FS4 369.99f |
124 | #define NOTE_G4 392.00 | 124 | #define NOTE_G4 392.00f |
125 | #define NOTE_GS4 415.30 | 125 | #define NOTE_GS4 415.30f |
126 | #define NOTE_A4 440.00 | 126 | #define NOTE_A4 440.00f |
127 | #define NOTE_AS4 466.16 | 127 | #define NOTE_AS4 466.16f |
128 | #define NOTE_B4 493.88 | 128 | #define NOTE_B4 493.88f |
129 | #define NOTE_C5 523.25 | 129 | #define NOTE_C5 523.25f |
130 | #define NOTE_CS5 554.37 | 130 | #define NOTE_CS5 554.37f |
131 | #define NOTE_D5 587.33 | 131 | #define NOTE_D5 587.33f |
132 | #define NOTE_DS5 622.25 | 132 | #define NOTE_DS5 622.25f |
133 | #define NOTE_E5 659.26 | 133 | #define NOTE_E5 659.26f |
134 | #define NOTE_F5 698.46 | 134 | #define NOTE_F5 698.46f |
135 | #define NOTE_FS5 739.99 | 135 | #define NOTE_FS5 739.99f |
136 | #define NOTE_G5 783.99 | 136 | #define NOTE_G5 783.99f |
137 | #define NOTE_GS5 830.61 | 137 | #define NOTE_GS5 830.61f |
138 | #define NOTE_A5 880.00 | 138 | #define NOTE_A5 880.00f |
139 | #define NOTE_AS5 932.33 | 139 | #define NOTE_AS5 932.33f |
140 | #define NOTE_B5 987.77 | 140 | #define NOTE_B5 987.77f |
141 | #define NOTE_C6 1046.50 | 141 | #define NOTE_C6 1046.50f |
142 | #define NOTE_CS6 1108.73 | 142 | #define NOTE_CS6 1108.73f |
143 | #define NOTE_D6 1174.66 | 143 | #define NOTE_D6 1174.66f |
144 | #define NOTE_DS6 1244.51 | 144 | #define NOTE_DS6 1244.51f |
145 | #define NOTE_E6 1318.51 | 145 | #define NOTE_E6 1318.51f |
146 | #define NOTE_F6 1396.91 | 146 | #define NOTE_F6 1396.91f |
147 | #define NOTE_FS6 1479.98 | 147 | #define NOTE_FS6 1479.98f |
148 | #define NOTE_G6 1567.98 | 148 | #define NOTE_G6 1567.98f |
149 | #define NOTE_GS6 1661.22 | 149 | #define NOTE_GS6 1661.22f |
150 | #define NOTE_A6 1760.00 | 150 | #define NOTE_A6 1760.00f |
151 | #define NOTE_AS6 1864.66 | 151 | #define NOTE_AS6 1864.66f |
152 | #define NOTE_B6 1975.53 | 152 | #define NOTE_B6 1975.53f |
153 | #define NOTE_C7 2093.00 | 153 | #define NOTE_C7 2093.00f |
154 | #define NOTE_CS7 2217.46 | 154 | #define NOTE_CS7 2217.46f |
155 | #define NOTE_D7 2349.32 | 155 | #define NOTE_D7 2349.32f |
156 | #define NOTE_DS7 2489.02 | 156 | #define NOTE_DS7 2489.02f |
157 | #define NOTE_E7 2637.02 | 157 | #define NOTE_E7 2637.02f |
158 | #define NOTE_F7 2793.83 | 158 | #define NOTE_F7 2793.83f |
159 | #define NOTE_FS7 2959.96 | 159 | #define NOTE_FS7 2959.96f |
160 | #define NOTE_G7 3135.96 | 160 | #define NOTE_G7 3135.96f |
161 | #define NOTE_GS7 3322.44 | 161 | #define NOTE_GS7 3322.44f |
162 | #define NOTE_A7 3520.00 | 162 | #define NOTE_A7 3520.00f |
163 | #define NOTE_AS7 3729.31 | 163 | #define NOTE_AS7 3729.31f |
164 | #define NOTE_B7 3951.07 | 164 | #define NOTE_B7 3951.07f |
165 | #define NOTE_C8 4186.01 | 165 | #define NOTE_C8 4186.01f |
166 | #define NOTE_CS8 4434.92 | 166 | #define NOTE_CS8 4434.92f |
167 | #define NOTE_D8 4698.64 | 167 | #define NOTE_D8 4698.64f |
168 | #define NOTE_DS8 4978.03 | 168 | #define NOTE_DS8 4978.03f |
169 | #define NOTE_E8 5274.04 | 169 | #define NOTE_E8 5274.04f |
170 | #define NOTE_F8 5587.65 | 170 | #define NOTE_F8 5587.65f |
171 | #define NOTE_FS8 5919.91 | 171 | #define NOTE_FS8 5919.91f |
172 | #define NOTE_G8 6271.93 | 172 | #define NOTE_G8 6271.93f |
173 | #define NOTE_GS8 6644.88 | 173 | #define NOTE_GS8 6644.88f |
174 | #define NOTE_A8 7040.00 | 174 | #define NOTE_A8 7040.00f |
175 | #define NOTE_AS8 7458.62 | 175 | #define NOTE_AS8 7458.62f |
176 | #define NOTE_B8 7902.13 | 176 | #define NOTE_B8 7902.13f |
177 | 177 | ||
178 | // Flat Aliases | 178 | // Flat Aliases |
179 | #define NOTE_DF0 NOTE_CS0 | 179 | #define NOTE_DF0 NOTE_CS0 |
diff --git a/quantum/audio/song_list.h b/quantum/audio/song_list.h index 091f59e7a..4018f817c 100644 --- a/quantum/audio/song_list.h +++ b/quantum/audio/song_list.h | |||
@@ -53,6 +53,24 @@ | |||
53 | E__NOTE(_CS4), E__NOTE(_B4), QD_NOTE(_AS4), \ | 53 | E__NOTE(_CS4), E__NOTE(_B4), QD_NOTE(_AS4), \ |
54 | E__NOTE(_AS4), E__NOTE(_AS4), QD_NOTE(_B4), | 54 | E__NOTE(_AS4), E__NOTE(_AS4), QD_NOTE(_B4), |
55 | 55 | ||
56 | #define CLUEBOARD_SOUND \ | ||
57 | HD_NOTE(_C3), HD_NOTE(_D3), HD_NOTE(_E3), HD_NOTE(_F3), HD_NOTE(_G3), HD_NOTE(_A4), HD_NOTE(_B4), HD_NOTE(_C4) | ||
58 | /* | ||
59 | HD_NOTE(_G3), HD_NOTE(_E3), HD_NOTE(_C3), \ | ||
60 | Q__NOTE(_E3), Q__NOTE(_C3), Q__NOTE(_G3), \ | ||
61 | Q__NOTE(_E3) | ||
62 | */ | ||
63 | /* | ||
64 | HD_NOTE(_C3), HD_NOTE(_G3), HD_NOTE(_E3), \ | ||
65 | Q__NOTE(_G3), Q__NOTE(_E3), Q__NOTE(_G3), \ | ||
66 | Q__NOTE(_F3) | ||
67 | */ | ||
68 | |||
69 | #define BASKET_CASE \ | ||
70 | QD_NOTE(_G3), E__NOTE(_F3), E__NOTE(_E3), Q__NOTE(_F3), M__NOTE(_G3, 8+32), Q__NOTE(_REST), \ | ||
71 | Q__NOTE(_B4), Q__NOTE(_C4), Q__NOTE(_B4), E__NOTE(_A4), Q__NOTE(_G3), M__NOTE(_G3, 8+32), Q__NOTE(_REST), \ | ||
72 | Q__NOTE(_B4), Q__NOTE(_C4), Q__NOTE(_B4), E__NOTE(_A4), Q__NOTE(_G3), Q__NOTE(_G3), Q__NOTE(_G3), Q__NOTE(_G3), E__NOTE(_A4), E__NOTE(_C4), QD_NOTE(_B4), HD_NOTE(_B4) | ||
73 | |||
56 | #define STARTUP_SOUND \ | 74 | #define STARTUP_SOUND \ |
57 | E__NOTE(_E6), \ | 75 | E__NOTE(_E6), \ |
58 | E__NOTE(_A6), \ | 76 | E__NOTE(_A6), \ |