Firmware for HexBoard MIDI controller
Diffstat (limited to 'src/HexBoard.ino')
-rw-r--r--src/HexBoard.ino140
1 files changed, 62 insertions, 78 deletions
diff --git a/src/HexBoard.ino b/src/HexBoard.ino
index a4881b5..51b76a4 100644
--- a/src/HexBoard.ino
+++ b/src/HexBoard.ino
@@ -308,11 +308,11 @@
Values are precalculated by compiler, and MIDI 2.0 or later might benefit from it
*/
tuningDef tuningOptions[] = {
- { "12 EDO", 12, 100.000,
+ { "12 EDO (Normal)", 12, 100.000,
{{"C" ,-9},{"C#",-8},{"D" ,-7},{"Eb",-6},{"E" ,-5},{"F",-4}
,{"F#",-3},{"G" ,-2},{"G#",-1},{"A" , 0},{"Bb", 1},{"B", 2}
}},
- { "12 EDO Zeta peak", 12, 99.8071515654111465,
+ { "12 EDO Zeta Peak", 12, 99.8071515654111465,
{{"C" ,-9},{"C#",-8},{"D" ,-7},{"Eb",-6},{"E" ,-5},{"F",-4}
,{"F#",-3},{"G" ,-2},{"G#",-1},{"A" , 0},{"Bb", 1},{"B", 2}
}},
@@ -347,7 +347,7 @@
,{"A", 0},{"A+", 1},{"A#", 2},{"Bb", 3},{"Bd", 4}
,{"B", 5},{"B+", 6} ,{"Cd", 7}
}},
- { "31 EDO Zeta peak", 31, 1200.0/30.9783818789525220,
+ { "31 EDO Zeta Peak", 31, 1200.0/30.9783818789525220,
{{"C",-23},{"C+",-22},{"C#",-21},{"Db",-20},{"Dd",-19}
,{"D",-18},{"D+",-17},{"D#",-16},{"Eb",-15},{"Ed",-14}
,{"E",-13},{"E+",-12} ,{"Fd",-11}
@@ -406,7 +406,7 @@
,{" A", 0},{"A+1", 1},{"A+2", 2},{"A+3", 3},{"A+4", 4},{"A+5", 5},{"A+6", 6},{"A+7", 7},{"A+8", 7},{"A+9", 7}
,{" B", 10},{"B+1", 11},{"B+2", 12}
}},
- { "58 EDO Zeta peak", 58, 1200.0/58.066718758225889,
+ { "58 EDO Zeta Peak", 58, 1200.0/58.066718758225889,
{{" C",-44},{"C+1",-43},{"C+2",-42},{"C+3",-41},{"C+4",-40},{"C+5",-39},{"C+6",-38},{"C+7",-37},{"C+8",-36},{"C+8",-35}
,{" D",-34},{"D+1",-33},{"D+2",-32},{"D+3",-31},{"D+4",-30},{"D+5",-29},{"D+6",-28},{"D+7",-27},{"D+8",-26},{"D+8",-25}
,{" E",-24},{"E+1",-23},{"E+2",-22},{"E+3",-21}
@@ -429,7 +429,7 @@
,{" Bb", 6},{"^Bb", 7},{">Bb", 8},{" Bd", 9},{"<B" , 10},{"vB" , 11}
,{" B", 12},{"^B", 13},{">B", 14},{" Cd", 15},{"<C" , 16},{"vC" , 17}
}},
- { "72 EDO Zeta peak", 72, 1200.0/71.9506066608606432,
+ { "72 EDO Zeta Peak", 72, 1200.0/71.9506066608606432,
{{" C", -54},{"^C", -53},{">C", -52},{" C+",-51},{"<C#",-50},{"vC#",-49}
,{" C#",-48},{"^C#",-47},{">C#",-46},{" Dd",-45},{"<D" ,-44},{"vD" ,-43}
,{" D", -42},{"^D", -41},{">D", -40},{" D+",-39},{"<Eb",-38},{"vEb",-37}
@@ -639,7 +639,7 @@
{ "Janko", 0, 64, 3, -10, TUNING_58EDO }, // Maybe call it "Quartertone Janko"?
{ "Bosanquet-Wilson", 0, 64, 3, 7, TUNING_58EDO }, // Maybe call it "Quartertone Bosanquet"?
{ "Hemififths", 0, 64, 4, -7, TUNING_58EDO },
- { "Hemififths mirror.",0, 64, -4, -3, TUNING_58EDO },
+ { "Hemififths Mirror.",0, 64, -4, -3, TUNING_58EDO },
{ "Chromatic", 0, 64, -7, -5, TUNING_58EDO },
{ "Harmonic Table", 0, 75, -34, 15, TUNING_58EDO },
{ "Septimal H.T.", 0, 75, -34, 13, TUNING_58EDO },
@@ -655,7 +655,7 @@
{ "Janko", 0, 64, 3, -10, TUNING_58EDO_ZETA }, // Maybe call it "Quartertone Janko"?
{ "Bosanquet-Wilson", 0, 64, 3, 7, TUNING_58EDO_ZETA }, // Maybe call it "1/4 tone Bosanquet"?
{ "Hemififths", 0, 64, 4, -7, TUNING_58EDO_ZETA },
- { "Hemififths mirror.",0, 64, -4, -3, TUNING_58EDO_ZETA },
+ { "Hemififths Mirror.",0, 64, -4, -3, TUNING_58EDO_ZETA },
{ "Chromatic", 0, 64, -7, -5, TUNING_58EDO_ZETA },
{ "Harmonic Table", 0, 75, -34, 15, TUNING_58EDO_ZETA },
{ "Septimal H.T.", 0, 75, -34, 13, TUNING_58EDO_ZETA },
@@ -670,14 +670,14 @@
{ "Harmonic Table", 0, 75, -42, 19, TUNING_72EDO },
{ "-30X 19Y", 0, 75, -30, 19, TUNING_72EDO }, // unnamed layout. Like harmonic table but with fourths instead of fifths
- { "Miracle mapping", 0, 65, -7, -2, TUNING_72EDO },
+ { "Miracle Mapping", 0, 65, -7, -2, TUNING_72EDO },
{ "Sept.H.T.(36EDO)", 0, 75, -42, 16, TUNING_72EDO }, // 36 EDO subset
{ "Expanded Janko", 0, 65, -1, -6, TUNING_72EDO },
{ "Full Gamut", 1, 65, 1, -9, TUNING_72EDO },
{ "Harmonic Table", 0, 75, -42, 19, TUNING_72EDO_ZETA },
{ "-30X 19Y", 0, 75, -30, 19, TUNING_72EDO_ZETA }, // unnamed layout. Like harmonic table but with fourths instead of fifths
- { "Miracle mapping", 0, 65, -7, -2, TUNING_72EDO_ZETA },
+ { "Miracle Mapping", 0, 65, -7, -2, TUNING_72EDO_ZETA },
{ "Sept.H.T.(36EDO)", 0, 75, -42, 16, TUNING_72EDO_ZETA }, // 36 EDO subset
{ "Expanded Janko", 0, 65, -1, -6, TUNING_72EDO_ZETA },
{ "Full Gamut", 1, 65, 1, -9, TUNING_72EDO_ZETA },
@@ -691,9 +691,9 @@
{ "Janko (good 3/2)", 0, 65, 5, -14, TUNING_87EDO },
{ "Bos.W.(good 3/2)", 0, 65, -5, -9, TUNING_87EDO },
{ "Wic.Hayd.nooctave", 1, 64, 14, -51, TUNING_87EDO }, // perfect thirds at the cost of losing an octave
- { "Wic.Hayd. pyth.", 1, 64, 15, -51, TUNING_87EDO }, // pythagorean thirds, octave is preserved, note variety decreased
- { "Janko (good 4/3)", 0, 65, 6, -14, TUNING_87EDO }, // Less efficient but allows perfect chord inversions
- { "Bos.W.(good 4/3)", 0, 65, -6, -8, TUNING_87EDO },
+ { "Wic.Hayd. Pyth.", 1, 64, 15, -51, TUNING_87EDO }, // pythagorean thirds, octave is preserved, note variety decreased
+ { "Janko (Good 4/3)", 0, 65, 6, -14, TUNING_87EDO }, // Less efficient but allows perfect chord inversions
+ { "Bos.W.(Good 4/3)", 0, 65, -6, -8, TUNING_87EDO },
{ "Bos.W.(26EDO)", 0, 65, -9, -6, TUNING_87EDO },
{ "Janko (26EDO)", 0, 65, 9, -15, TUNING_87EDO },
{ "Full Gamut", 1, 75, 1, -9, TUNING_87EDO },
@@ -740,11 +740,11 @@
{ "None", ALL_TUNINGS, { 0 } },
// 12 EDO
{ "Major", TUNING_12EDO, { 2,2,1,2,2,2,1 } },
- { "Minor, natural", TUNING_12EDO, { 2,1,2,2,1,2,2 } },
- { "Minor, melodic", TUNING_12EDO, { 2,1,2,2,2,2,1 } },
- { "Minor, harmonic", TUNING_12EDO, { 2,1,2,2,1,3,1 } },
- { "Pentatonic, major", TUNING_12EDO, { 2,2,3,2,3 } },
- { "Pentatonic, minor", TUNING_12EDO, { 3,2,2,3,2 } },
+ { "Minor, Natural", TUNING_12EDO, { 2,1,2,2,1,2,2 } },
+ { "Minor, Melodic", TUNING_12EDO, { 2,1,2,2,2,2,1 } },
+ { "Minor, Harmonic", TUNING_12EDO, { 2,1,2,2,1,3,1 } },
+ { "Pentatonic, Major", TUNING_12EDO, { 2,2,3,2,3 } },
+ { "Pentatonic, Minor", TUNING_12EDO, { 3,2,2,3,2 } },
{ "Blues", TUNING_12EDO, { 3,1,1,1,1,3,2 } },
{ "Double Harmonic", TUNING_12EDO, { 1,3,1,2,1,3,1 } },
{ "Phrygian", TUNING_12EDO, { 1,2,2,2,1,2,2 } },
@@ -754,13 +754,13 @@
{ "Lydian Dominant", TUNING_12EDO, { 2,2,2,1,2,1,2 } },
{ "Mixolydian", TUNING_12EDO, { 2,2,1,2,2,1,2 } },
{ "Locrian", TUNING_12EDO, { 1,2,2,1,2,2,2 } },
- { "Whole tone", TUNING_12EDO, { 2,2,2,2,2,2 } },
+ { "Whole Tone", TUNING_12EDO, { 2,2,2,2,2,2 } },
{ "Octatonic", TUNING_12EDO, { 2,1,2,1,2,1,2,1 } },
// 17 EDO; for more: https://en.xen.wiki/w/17edo#Scales
{ "Diatonic", TUNING_17EDO, { 3,3,1,3,3,3,1 } },
{ "Pentatonic", TUNING_17EDO, { 3,3,4,3,4 } },
{ "Harmonic", TUNING_17EDO, { 3,2,3,2,2,2,3 } },
- { "Husayni maqam", TUNING_17EDO, { 2,2,3,3,2,1,1,3 } },
+ { "Husayni Maqam", TUNING_17EDO, { 2,2,3,3,2,1,1,3 } },
{ "Blues", TUNING_17EDO, { 4,3,1,1,1,4,3 } },
{ "Hydra", TUNING_17EDO, { 3,3,1,1,2,3,2,1,1 } },
// 19 EDO; for more: https://en.xen.wiki/w/19edo#Scales
@@ -771,7 +771,7 @@
{ "Sensi", TUNING_19EDO, { 2,2,1,2,2,2,1,2,2,2,1 } },
{ "Kleismic", TUNING_19EDO, { 1,3,1,1,3,1,1,3,1,3,1 } },
{ "Magic", TUNING_19EDO, { 3,1,1,1,3,1,1,1,3,1,1,1,1 } },
- { "Kind of blues", TUNING_19EDO, { 4,4,1,2,4,4 } },
+ { "Kind-of Blues", TUNING_19EDO, { 4,4,1,2,4,4 } },
// 22 EDO; for more: https://en.xen.wiki/w/22edo_modes
{ "Diatonic", TUNING_22EDO, { 4,4,1,4,4,4,1 } },
{ "Pentatonic", TUNING_22EDO, { 4,4,5,4,5 } },
@@ -785,9 +785,9 @@
{ "Pentatonic (12)", TUNING_24EDO, { 4,4,6,4,6 } },
{ "Pentatonic (Haba)", TUNING_24EDO, { 5,5,5,5,4 } },
{ "Invert Pentatonic", TUNING_24EDO, { 6,3,6,6,3 } },
- { "Rast maqam", TUNING_24EDO, { 4,3,3,4,4,2,1,3 } },
- { "Bayati maqam", TUNING_24EDO, { 3,3,4,4,2,1,3,4 } },
- { "Hijaz maqam", TUNING_24EDO, { 2,6,2,4,2,1,3,4 } },
+ { "Rast Maqam", TUNING_24EDO, { 4,3,3,4,4,2,1,3 } },
+ { "Bayati Maqam", TUNING_24EDO, { 3,3,4,4,2,1,3,4 } },
+ { "Hijaz Maqam", TUNING_24EDO, { 2,6,2,4,2,1,3,4 } },
{ "8-EDO", TUNING_24EDO, { 3,3,3,3,3,3,3,3 } },
{ "Wyschnegradsky", TUNING_24EDO, { 2,2,2,2,2,1,2,2,2,2,2,2,1 } },
// 31 EDO; for more: https://en.xen.wiki/w/31edo#Scales
@@ -811,9 +811,9 @@
// 41 EDO; for more: https://en.xen.wiki/w/41edo#Scales_and_modes
{ "Diatonic", TUNING_41EDO, { 7,7,3,7,7,7,3 } },
{ "Pentatonic", TUNING_41EDO, { 7,7,10,7,10 } },
- { "Pure major", TUNING_41EDO, { 7,6,4,7,6,7,4 } },
- { "5-limit chromatic", TUNING_41EDO, { 4,3,4,2,4,3,4,4,2,4,3,4 } },
- { "7-limit chromatic", TUNING_41EDO, { 3,4,2,4,4,3,4,2,4,3,3,4 } },
+ { "Pure Major", TUNING_41EDO, { 7,6,4,7,6,7,4 } },
+ { "5-limit Chromatic", TUNING_41EDO, { 4,3,4,2,4,3,4,4,2,4,3,4 } },
+ { "7-limit Chromatic", TUNING_41EDO, { 3,4,2,4,4,3,4,2,4,3,3,4 } },
{ "Harmonic", TUNING_41EDO, { 5,4,4,4,4,3,3,3,3,3,2,3 } },
{ "Middle East-ish", TUNING_41EDO, { 7,5,7,5,5,7,5 } },
{ "Thai", TUNING_41EDO, { 6,6,6,6,6,6,5 } },
@@ -822,9 +822,9 @@
// 53 EDO
{ "Diatonic", TUNING_53EDO, { 9,9,4,9,9,9,4 } },
{ "Pentatonic", TUNING_53EDO, { 9,9,13,9,13 } },
- { "Rast makam", TUNING_53EDO, { 9,8,5,9,9,4,4,5 } },
- { "Usshak makam", TUNING_53EDO, { 7,6,9,9,4,4,5,9 } },
- { "Hicaz makam", TUNING_53EDO, { 5,12,5,9,4,9,9 } },
+ { "Rast Makam", TUNING_53EDO, { 9,8,5,9,9,4,4,5 } },
+ { "Usshak Makam", TUNING_53EDO, { 7,6,9,9,4,4,5,9 } },
+ { "Hicaz Makam", TUNING_53EDO, { 5,12,5,9,4,9,9 } },
{ "Orwell", TUNING_53EDO, { 7,5,7,5,7,5,7,5,5 } },
{ "Sephiroth", TUNING_53EDO, { 6,5,5,6,5,5,6,5,5,5 } },
{ "Smitonic", TUNING_53EDO, { 11,11,3,11,3,11,3 } },
@@ -3408,7 +3408,7 @@ void animateStaticBeams() {
);
bool screenSaverOn = 0;
uint64_t screenTime = 0; // GFX timer to count if screensaver should go on
- const uint64_t screenSaverTimeout = (1u << 23); // 2^23 microseconds ~ 8 seconds
+ const uint64_t screenSaverTimeout = (1u << 24); // 2^24 microseconds ~ 16 seconds
/*
Create menu page object of class GEMPage.
Menu page holds menu items (GEMItem) and represents menu level.
@@ -3421,30 +3421,22 @@ void animateStaticBeams() {
The second parameter is the destination page when that item is selected.
*/
GEMPage menuPageMain("HexBoard MIDI Controller");
- GEMPage menuPageTuning("Tuning");
+ GEMPage menuPageTuning("Tuning", menuPageMain);
GEMItem menuGotoTuning("Tuning", menuPageTuning);
- GEMItem menuTuningBack("<< Back", menuPageMain);
- GEMPage menuPageLayout("Layout");
+ GEMPage menuPageLayout("Layout", menuPageMain);
GEMItem menuGotoLayout("Layout", menuPageLayout);
- GEMItem menuLayoutBack("<< Back", menuPageMain);
- GEMPage menuPageScales("Scales");
+ GEMPage menuPageScales("Scales", menuPageMain);
GEMItem menuGotoScales("Scales", menuPageScales);
- GEMItem menuScalesBack("<< Back", menuPageMain);
- GEMPage menuPageColors("Color options");
- GEMItem menuGotoColors("Color options", menuPageColors);
- GEMItem menuColorsBack("<< Back", menuPageMain);
- GEMPage menuPageSynth("Synth options");
- GEMItem menuGotoSynth("Synth options", menuPageSynth);
- GEMItem menuSynthBack("<< Back", menuPageMain);
- GEMPage menuPageMIDI("MIDI options");
- GEMItem menuGotoMIDI("MIDI options", menuPageMIDI);
- GEMItem menuMIDIBack("<< Back", menuPageMain);
- GEMPage menuPageControl("Control wheel");
- GEMItem menuGotoControl("Control wheel", menuPageControl);
- GEMItem menuControlBack("<< Back", menuPageMain);
- GEMPage menuPageAdvanced("Advanced");
+ GEMPage menuPageColors("Color Options", menuPageMain);
+ GEMItem menuGotoColors("Color Options", menuPageColors);
+ GEMPage menuPageSynth("Synth Options", menuPageMain);
+ GEMItem menuGotoSynth("Synth Options", menuPageSynth);
+ GEMPage menuPageMIDI("MIDI Options", menuPageMain);
+ GEMItem menuGotoMIDI("MIDI Options", menuPageMIDI);
+ GEMPage menuPageControl("Control Wheel", menuPageMain);
+ GEMItem menuGotoControl("Control Wheel", menuPageControl);
+ GEMPage menuPageAdvanced("Advanced", menuPageMain);
GEMItem menuGotoAdvanced("Advanced", menuPageAdvanced);
- GEMItem menuAdvancedBack("<< Back", menuPageMain);
GEMPage menuPageReboot("Ready to flash firmware!");
/*
We haven't written the code for some procedures,
@@ -3462,7 +3454,7 @@ void animateStaticBeams() {
To be honest I don't know how to get just a plain text line to show here other than this!
*/
void fakeButton() {}
- GEMItem menuItemVersion("1.1 beta", fakeButton);
+ GEMItem menuItemVersion("1.1 Beta 3", fakeButton);
SelectOptionByte optionByteHardware[] = {
{ "V1.1", HARDWARE_UNKNOWN }, { "V1.1" , HARDWARE_V1_1 },
{ "V1.2", HARDWARE_V1_2 }
@@ -3523,22 +3515,22 @@ void animateStaticBeams() {
SelectOptionByte optionByteYesOrNo[] = { { "No", 0 }, { "Yes" , 1 } };
GEMSelect selectYesOrNo( sizeof(optionByteYesOrNo) / sizeof(SelectOptionByte), optionByteYesOrNo);
- GEMItem menuItemScaleLock( "Scale lock?", scaleLock);
- GEMItem menuItemPercep( "Fix color:", perceptual, setLEDcolorCodes);
+ GEMItem menuItemScaleLock( "Scale Lock", scaleLock);
+ GEMItem menuItemPercep( "Fix Color:", perceptual, setLEDcolorCodes);
GEMItem menuItemShiftColor( "ColorByKey", paletteBeginsAtKeyCenter, setLEDcolorCodes);
- GEMItem menuItemWheelAlt( "Alt wheel?", wheelMode, selectYesOrNo);
+ GEMItem menuItemWheelAlt( "Alt Wheel?", wheelMode, selectYesOrNo);
bool rotaryInvert = false;
GEMItem menuItemRotary( "Invert Encoder:", rotaryInvert);
SelectOptionByte optionByteWheelType[] = { { "Springy", 0 }, { "Sticky", 1} };
GEMSelect selectWheelType( sizeof(optionByteWheelType) / sizeof(SelectOptionByte), optionByteWheelType);
- GEMItem menuItemPBBehave( "Pitch bend", pbSticky, selectWheelType);
- GEMItem menuItemModBehave( "Mod wheel", modSticky, selectWheelType);
+ GEMItem menuItemPBBehave( "Pitch Bend", pbSticky, selectWheelType);
+ GEMItem menuItemModBehave( "Mod Wheel", modSticky, selectWheelType);
SelectOptionByte optionBytePlayback[] = { { "Off", SYNTH_OFF }, { "Mono", SYNTH_MONO }, { "Arp'gio", SYNTH_ARPEGGIO }, { "Poly", SYNTH_POLY } };
GEMSelect selectPlayback(sizeof(optionBytePlayback) / sizeof(SelectOptionByte), optionBytePlayback);
- GEMItem menuItemPlayback( "Synth mode:", playbackMode, selectPlayback, resetSynthFreqs);
+ GEMItem menuItemPlayback( "Synth Mode:", playbackMode, selectPlayback, resetSynthFreqs);
// Hardware V1.2-only
SelectOptionByte optionByteAudioD[] = {
@@ -4218,23 +4210,23 @@ void animateStaticBeams() {
GEMItem menuItemToggleForceMPEChannels ("Force MPE", forceEnableMPE, resetTuningMIDI);
// Layout rotation selection
- SelectOptionByte optionByteLayoutRotation[] = {{"0 deg",0},{"60 deg",1},{"120 deg",2},{"180 deg",3},{"240 deg",4},{"300 deg",5},{"360 deg",6}};
+ SelectOptionByte optionByteLayoutRotation[] = {{"0 Deg",0},{"60 Deg",1},{"120 Deg",2},{"180 Deg",3},{"240 Deg",4},{"300 Deg",5},{"360 Deg",6}};
GEMSelect selectLayoutRotation(7,optionByteLayoutRotation);
GEMItem menuItemSelectLayoutRotation( "Rotate: ", layoutRotation, selectLayoutRotation, updateLayoutAndRotate);
// Layout mirroring toggles
- GEMItem mirrorLeftRightGEMItem("Mirror vert.", mirrorLeftRight, updateLayoutAndRotate);
- GEMItem mirrorUpDownGEMItem ("Mirror hor." , mirrorUpDown, updateLayoutAndRotate);
+ GEMItem mirrorLeftRightGEMItem("Mirror Vert.", mirrorLeftRight, updateLayoutAndRotate);
+ GEMItem mirrorUpDownGEMItem ("Mirror Hor." , mirrorUpDown, updateLayoutAndRotate);
// Dynamic just intonation toggles and parameters
- GEMItem menuItemToggleJI_BPM ("JI align BPM", useJustIntonationBPM,resetTuningMIDI);
- GEMItem menuItemSetJI_BPM ("Beating BPM",justIntonationBPM,selectFrequencyOfJI);
- GEMItem menuItemSetJI_BPM_Multiplier ("BPM mult.",justIntonationBPM_Multiplier,selectBPM_MultiplierOfJI);
+ GEMItem menuItemToggleJI_BPM ("JI BPM Sync", useJustIntonationBPM,resetTuningMIDI);
+ GEMItem menuItemSetJI_BPM ("Beat BPM",justIntonationBPM,selectFrequencyOfJI);
+ GEMItem menuItemSetJI_BPM_Multiplier ("BPM Mult.",justIntonationBPM_Multiplier,selectBPM_MultiplierOfJI);
GEMItem menuItemToggleDynamicJI ("Dynamic JI", useDynamicJustIntonation, resetTuningMIDI);
//////////////////////////////////////////////////////////////////////////////////////////////////////
- SelectOptionByte optionByteColor[] = { { "Rainbow", RAINBOW_MODE }, { "Tiered" , TIERED_COLOR_MODE }, { "Alt", ALTERNATE_COLOR_MODE }, { "Fifths", RAINBOW_OF_FIFTHS_MODE }, { "Alt piano", PIANO_ALT_COLOR_MODE }, { "Piano", PIANO_COLOR_MODE }, { "Filament", PIANO_INCANDESCENT_COLOR_MODE } };
+ SelectOptionByte optionByteColor[] = { { "Rainbow", RAINBOW_MODE }, { "Tiered" , TIERED_COLOR_MODE }, { "Alt", ALTERNATE_COLOR_MODE }, { "Fifths", RAINBOW_OF_FIFTHS_MODE }, { "Piano", PIANO_COLOR_MODE }, { "Alt Piano", PIANO_ALT_COLOR_MODE }, { "Filament", PIANO_INCANDESCENT_COLOR_MODE } };
GEMSelect selectColor( sizeof(optionByteColor) / sizeof(SelectOptionByte), optionByteColor);
GEMItem menuItemColor( "Color mode:", colorMode, selectColor, setLEDcolorCodes);
@@ -4243,7 +4235,7 @@ void animateStaticBeams() {
GEMSelect selectAnimate( sizeof(optionByteAnimate) / sizeof(SelectOptionByte), optionByteAnimate);
GEMItem menuItemAnimate( "Animation:", animationType, selectAnimate);
- SelectOptionByte optionByteBright[] = { { "Off", BRIGHT_OFF}, {"the end", BRIGHT_FAINTER}, {"Blackout", BRIGHT_FAINT}, {"Darker", BRIGHT_DARKER}, {"Dark", BRIGHT_DARK}, {"Dimmer", BRIGHT_DIMMER}, {"Dim", BRIGHT_DIM}, {"Low", BRIGHT_LOW}, {"Normal", BRIGHT_MID}, {"High", BRIGHT_HIGH}, {"THE SUN", BRIGHT_MAX } };
+ SelectOptionByte optionByteBright[] = { { "Off", BRIGHT_OFF}, {"Dimmer", BRIGHT_DIMMER}, {"Dim", BRIGHT_DIM}, {"Low", BRIGHT_LOW}, {"Normal", BRIGHT_MID}, {"High", BRIGHT_HIGH}, {"THE SUN", BRIGHT_MAX } };
GEMSelect selectBright( sizeof(optionByteBright) / sizeof(SelectOptionByte), optionByteBright);
GEMItem menuItemBright( "Brightness", globalBrightness, selectBright, setLEDcolorCodes);
@@ -4255,13 +4247,13 @@ void animateStaticBeams() {
SelectOptionInt optionIntModWheel[] = { { "too slo", 1 }, { "Turtle", 2 }, { "Slow", 4 },
{ "Medium", 8 }, { "Fast", 16 }, { "Cheetah", 32 }, { "Instant", 127 } };
GEMSelect selectModSpeed(sizeof(optionIntModWheel) / sizeof(SelectOptionInt), optionIntModWheel);
- GEMItem menuItemModSpeed( "Mod wheel:", modWheelSpeed, selectModSpeed);
- GEMItem menuItemVelSpeed( "Vel wheel:", velWheelSpeed, selectModSpeed);
+ GEMItem menuItemModSpeed( "Mod Wheel:", modWheelSpeed, selectModSpeed);
+ GEMItem menuItemVelSpeed( "Vel Wheel:", velWheelSpeed, selectModSpeed);
SelectOptionInt optionIntPBWheel[] = { { "too slo", 128 }, { "Turtle", 256 }, { "Slow", 512 },
{ "Medium", 1024 }, { "Fast", 2048 }, { "Cheetah", 4096 }, { "Instant", 16384 } };
GEMSelect selectPBSpeed(sizeof(optionIntPBWheel) / sizeof(SelectOptionInt), optionIntPBWheel);
- GEMItem menuItemPBSpeed( "PB wheel:", pbWheelSpeed, selectPBSpeed);
+ GEMItem menuItemPBSpeed( "PB Wheel:", pbWheelSpeed, selectPBSpeed);
// Call this procedure to return to the main menu
void menuHome() {
@@ -4461,40 +4453,33 @@ void animateStaticBeams() {
menuPageTuning.addMenuItem(menuItemSetJI_BPM);
menuPageTuning.addMenuItem(menuItemSetJI_BPM_Multiplier);
menuPageTuning.addMenuItem(menuItemToggleDynamicJI);
- menuPageTuning.addMenuItem(menuTuningBack);
menuPageMain.addMenuItem(menuGotoLayout);
createLayoutMenuItems();
menuPageLayout.addMenuItem(mirrorLeftRightGEMItem);
menuPageLayout.addMenuItem(mirrorUpDownGEMItem);
menuPageLayout.addMenuItem(menuItemSelectLayoutRotation);
- menuPageLayout.addMenuItem(menuLayoutBack);
menuPageMain.addMenuItem(menuGotoScales);
createKeyMenuItems();
menuPageScales.addMenuItem(menuItemScaleLock);
createScaleMenuItems();
- menuPageScales.addMenuItem(menuScalesBack);
menuPageMain.addMenuItem(menuGotoControl);
menuPageControl.addMenuItem(menuItemPBSpeed);
menuPageControl.addMenuItem(menuItemModSpeed);
menuPageControl.addMenuItem(menuItemVelSpeed);
- menuPageControl.addMenuItem(menuControlBack);
menuPageMain.addMenuItem(menuGotoColors);
menuPageColors.addMenuItem(menuItemColor);
menuPageColors.addMenuItem(menuItemBright);
menuPageColors.addMenuItem(menuItemAnimate);
- menuPageColors.addMenuItem(menuColorsBack);
menuPageMain.addMenuItem(menuGotoSynth);
menuPageSynth.addMenuItem(menuItemPlayback);
menuPageSynth.addMenuItem(menuItemWaveform);
// menuItemAudioD added here for hardware V1.2
- menuPageSynth.addMenuItem(menuItemRolandMT32);
- menuPageSynth.addMenuItem(menuItemGeneralMidi);
- menuPageSynth.addMenuItem(menuSynthBack);
menuPageMain.addMenuItem(menuGotoMIDI);
menuPageMIDI.addMenuItem(menuItemSelectMIDIChannel);
menuPageMIDI.addMenuItem(menuItemMPEpitchBend);
+ menuPageMIDI.addMenuItem(menuItemRolandMT32);
+ menuPageMIDI.addMenuItem(menuItemGeneralMidi);
menuPageMIDI.addMenuItem(menuItemToggleForceMPEChannels);
- menuPageMIDI.addMenuItem(menuMIDIBack);
menuPageMain.addMenuItem(menuItemTransposeSteps);
menuPageMain.addMenuItem(menuGotoAdvanced);
menuPageAdvanced.addMenuItem(menuItemVersion);
@@ -4506,7 +4491,6 @@ void animateStaticBeams() {
menuPageAdvanced.addMenuItem(menuItemPBBehave);
menuPageAdvanced.addMenuItem(menuItemModBehave);
menuPageAdvanced.addMenuItem(menuItemUSBBootloader);
- menuPageAdvanced.addMenuItem(menuAdvancedBack);
menuHome();
}
void setupGFX() {