Small fixes.

Added menu for master panorama.
dev
Holger Wirtz 5 years ago
parent 4a0fcfbef8
commit 40052328da
  1. 82
      UI.hpp
  2. 6
      config.h

@ -28,7 +28,7 @@
const uint8_t MAX_VARIABLES = 5; ///< @note Default: 5 const uint8_t MAX_VARIABLES = 5; ///< @note Default: 5
/// Configures the number of available functions per line. /// Configures the number of available functions per line.
const uint8_t MAX_FUNCTIONS = 41; ///< @note Default: 8 const uint8_t MAX_FUNCTIONS = 42; ///< @note Default: 8
/// Configures the number of available lines per screen. /// Configures the number of available lines per screen.
const uint8_t MAX_LINES = 20; ///< @note Default: 12 const uint8_t MAX_LINES = 20; ///< @note Default: 12
@ -37,7 +37,7 @@
const uint8_t MAX_SCREENS = 2; ///< @note Default: 14 const uint8_t MAX_SCREENS = 2; ///< @note Default: 14
/// Configures the number of available menus per menus system. /// Configures the number of available menus per menus system.
const uint8_t MAX_MENUS = 44; ///< @note Default: 8 const uint8_t MAX_MENUS = 45; ///< @note Default: 8
*/ */
@ -103,10 +103,11 @@ elapsedMillis back_to_main;
#define MIDI_SOFT_THRU 38 #define MIDI_SOFT_THRU 38
#define MAX_POLY 39 #define MAX_POLY 39
#define MONO 40 #define MONO 40
#define PANORAMA 41
/*************************************/ /*************************************/
#define STORE_QUESTION 41 #define STORE_QUESTION 42
/*************************************/ /*************************************/
#define MASTER_VOLUME 42 #define MASTER_VOLUME 43
/*************************************/ /*************************************/
int8_t menu_position[NUM_MENUS]; int8_t menu_position[NUM_MENUS];
@ -708,17 +709,19 @@ LiquidMenu save_sound_menu(lcd);
/****************************************** /******************************************
SYSTEM MENU SYSTEM MENU
******************************************/ ******************************************/
#define NUM_SYSTEM_MENUS 5 #define NUM_SYSTEM_MENUS 6
const char system_text1[] PROGMEM = "Loudness"; const char system_text1[] PROGMEM = "Loudness";
const char system_text2[] PROGMEM = "MIDI Channel"; const char system_text2[] PROGMEM = "MIDI Channel";
const char system_text3[] PROGMEM = "MIDI Soft-Thru"; const char system_text3[] PROGMEM = "MIDI Soft-Thru";
const char system_text4[] PROGMEM = "Max. Polyphony"; const char system_text4[] PROGMEM = "Max. Polyphony";
const char system_text5[] PROGMEM = "Mono/Stereo"; const char system_text5[] PROGMEM = "Mono/Stereo";
const char system_text6[] PROGMEM = "Panorama";
LiquidLine system_line1(1, 0, system_text1); LiquidLine system_line1(1, 0, system_text1);
LiquidLine system_line2(1, 1, system_text2); LiquidLine system_line2(1, 1, system_text2);
LiquidLine system_line3(1, 1, system_text3); LiquidLine system_line3(1, 1, system_text3);
LiquidLine system_line4(1, 1, system_text4); LiquidLine system_line4(1, 1, system_text4);
LiquidLine system_line5(1, 1, system_text5); LiquidLine system_line5(1, 1, system_text5);
LiquidLine system_line6(1, 1, system_text6);
LiquidScreen system_screen; LiquidScreen system_screen;
LiquidMenu system_menu(lcd); LiquidMenu system_menu(lcd);
@ -772,6 +775,16 @@ LiquidLine mono_line2(1, 1, get_mono_value_text);
LiquidScreen mono_screen; LiquidScreen mono_screen;
LiquidMenu mono_menu(lcd); LiquidMenu mono_menu(lcd);
/******************************************
PANORAMA MENU
******************************************/
#define NUM_PANORAMA_MENUS 1
const char panorama_text1[] PROGMEM = "Panorama";
LiquidLine panorama_line1(1, 0, panorama_text1);
LiquidLine panorama_line2(1, 1, configuration.pan);
LiquidScreen panorama_screen;
LiquidMenu panorama_menu(lcd);
/****************************************** /******************************************
INFO MENU INFO MENU
******************************************/ ******************************************/
@ -1335,6 +1348,18 @@ void callback_mono_function(void)
menu_system.update(); menu_system.update();
} }
void callback_panorama_function(void)
{
#ifdef SHOW_DEBUG
Serial.println(F("callback_panorama_function"));
#endif
menu_system.change_menu(panorama_menu);
menu_position[SYSTEM] = encoder_value[RIGHT_ENCODER];
encoder_value[RIGHT_ENCODER] = configuration.mono;
enc[RIGHT_ENCODER].write(configuration.mono, ENC_MASTER_PAN_MIN, ENC_MASTER_PAN_MAX);
menu_system.update();
}
/****************************************** /******************************************
INFO MENU CALLBACKS INFO MENU CALLBACKS
******************************************/ ******************************************/
@ -1717,12 +1742,13 @@ void init_menus(void)
store_question_screen.set_displayLineCount(2); store_question_screen.set_displayLineCount(2);
store_question_menu.add_screen(store_question_screen); store_question_menu.add_screen(store_question_screen);
// setup effects menu // setup system menu
system_screen.add_line(system_line1); system_screen.add_line(system_line1);
system_screen.add_line(system_line2); system_screen.add_line(system_line2);
system_screen.add_line(system_line3); system_screen.add_line(system_line3);
system_screen.add_line(system_line4); system_screen.add_line(system_line4);
system_screen.add_line(system_line5); system_screen.add_line(system_line5);
system_screen.add_line(system_line6);
system_screen.set_displayLineCount(2); system_screen.set_displayLineCount(2);
system_menu.add_screen(system_screen); system_menu.add_screen(system_screen);
@ -1731,6 +1757,7 @@ void init_menus(void)
system_line3.attach_function(MIDI_SOFT_THRU, callback_midi_soft_thru_function); system_line3.attach_function(MIDI_SOFT_THRU, callback_midi_soft_thru_function);
system_line4.attach_function(MAX_POLY, callback_max_poly_function); system_line4.attach_function(MAX_POLY, callback_max_poly_function);
system_line5.attach_function(MONO, callback_mono_function); system_line5.attach_function(MONO, callback_mono_function);
system_line6.attach_function(PANORAMA, callback_panorama_function);
// setup loudness // setup loudness
loudness_screen.add_line(loudness_line1); loudness_screen.add_line(loudness_line1);
@ -1762,6 +1789,12 @@ void init_menus(void)
mono_screen.set_displayLineCount(2); mono_screen.set_displayLineCount(2);
mono_menu.add_screen(mono_screen); mono_menu.add_screen(mono_screen);
// setup panorama
panorama_screen.add_line(panorama_line1);
panorama_screen.add_line(panorama_line2);
panorama_screen.set_displayLineCount(2);
panorama_menu.add_screen(panorama_screen);
// setup info menu // setup info menu
info_screen.add_line(info_line1); info_screen.add_line(info_line1);
info_screen.add_line(info_line2); info_screen.add_line(info_line2);
@ -1817,6 +1850,7 @@ void init_menus(void)
menu_system.add_menu(midi_soft_thru_menu); menu_system.add_menu(midi_soft_thru_menu);
menu_system.add_menu(max_poly_menu); menu_system.add_menu(max_poly_menu);
menu_system.add_menu(mono_menu); menu_system.add_menu(mono_menu);
menu_system.add_menu(panorama_menu);
menu_system.add_menu(info_menu); menu_system.add_menu(info_menu);
menu_system.add_menu(master_volume_menu); menu_system.add_menu(master_volume_menu);
@ -1977,7 +2011,7 @@ void set_velocity_sense(uint8_t value)
configuration.velocity_sense = value; configuration.velocity_sense = value;
} }
void set_pan_trem_frequency(uint8_t value) void set_pan_trem_frequency(int8_t value)
{ {
if (value > ENC_PAN_TREM_FREQUENCY_MAX) if (value > ENC_PAN_TREM_FREQUENCY_MAX)
value = ENC_PAN_TREM_FREQUENCY_MAX; value = ENC_PAN_TREM_FREQUENCY_MAX;
@ -2292,8 +2326,8 @@ void set_midi_soft_thru(uint8_t value)
void set_max_poly(uint8_t value) void set_max_poly(uint8_t value)
{ {
if (value > ENC_MAX_POLY_DEFAULT) if (value > ENC_MAX_POLY_MAX)
value = ENC_MAX_POLY_DEFAULT; value = ENC_MAX_POLY_MAX;
#ifdef SHOW_DEBUG #ifdef SHOW_DEBUG
Serial.print(F("Set MAX_POLY ")); Serial.print(F("Set MAX_POLY "));
Serial.println(value); Serial.println(value);
@ -2325,6 +2359,19 @@ void set_mono(uint8_t mode)
} }
} }
void set_panorama(uint8_t value)
{
if (value < ENC_MASTER_PAN_MIN)
value = ENC_MASTER_PAN_MIN;
if (value > ENC_MASTER_PAN_MAX)
#ifdef SHOW_DEBUG
Serial.print(F("Set MASTER_PANORAMA "));
Serial.println(value);
#endif
configuration.pan = value;
set_master_volume(master_volume);
}
void set_complete_configuration(void) void set_complete_configuration(void)
{ {
set_decay(configuration.decay); set_decay(configuration.decay);
@ -2360,6 +2407,7 @@ void set_complete_configuration(void)
set_midi_soft_thru(configuration.midi_soft_thru); set_midi_soft_thru(configuration.midi_soft_thru);
set_max_poly(configuration.max_poly); set_max_poly(configuration.max_poly);
set_mono(configuration.mono); set_mono(configuration.mono);
set_panorama(configuration.pan);
} }
//********************************************************************************************+ //********************************************************************************************+
@ -2721,6 +2769,15 @@ void handle_ui(void)
menu_system.update(); menu_system.update();
} }
} }
else if (menu_system.get_currentScreen() == &panorama_screen)
{
if (encoder_tmp != encoder_value[RIGHT_ENCODER])
{
// value up/down
set_panorama(encoder_tmp);
menu_system.update();
}
}
else else
{ {
// Move menu focus // Move menu focus
@ -3148,6 +3205,13 @@ void handle_ui(void)
#endif #endif
goto_system_menu(MONO); goto_system_menu(MONO);
} }
else if (menu_system.get_currentScreen() == &panorama_screen) // panorama menu
{
#ifdef SHOW_DEBUG
Serial.println(F("from panorama to system"));
#endif
goto_system_menu(PANORAMA);
}
else if (menu_system.get_currentScreen() == &info_screen) // info menu else if (menu_system.get_currentScreen() == &info_screen) // info menu
{ {
#ifdef SHOW_DEBUG #ifdef SHOW_DEBUG

@ -63,7 +63,7 @@
#define USE_XFADE_DATA 1 #define USE_XFADE_DATA 1
// CHORUS parameters // CHORUS parameters
#define MOD_DELAY_SAMPLE_BUFFER int32_t(TIME_MS2SAMPLES(20.0)) // 10.0 ms delay buffer. #define MOD_DELAY_SAMPLE_BUFFER int32_t(TIME_MS2SAMPLES(20.0)) // 20.0 ms delay buffer.
#define MOD_WAVEFORM WAVEFORM_TRIANGLE // WAVEFORM_SINE WAVEFORM_TRIANGLE WAVEFORM_SAWTOOTH WAVEFORM_SAWTOOTH_REVERSE #define MOD_WAVEFORM WAVEFORM_TRIANGLE // WAVEFORM_SINE WAVEFORM_TRIANGLE WAVEFORM_SAWTOOTH WAVEFORM_SAWTOOTH_REVERSE
#define MOD_FILTER_OUTPUT MOD_LINKWITZ_RILEY_FILTER_OUTPUT // MOD_LINKWITZ_RILEY_FILTER_OUTPUT MOD_BUTTERWORTH_FILTER_OUTPUT MOD_NO_FILTER_OUTPUT #define MOD_FILTER_OUTPUT MOD_LINKWITZ_RILEY_FILTER_OUTPUT // MOD_LINKWITZ_RILEY_FILTER_OUTPUT MOD_BUTTERWORTH_FILTER_OUTPUT MOD_NO_FILTER_OUTPUT
#define MOD_FILTER_CUTOFF_HZ 3000 #define MOD_FILTER_CUTOFF_HZ 3000
@ -106,7 +106,7 @@
30: 1.22 Volts p-p 30: 1.22 Volts p-p
31: 1.16 Volts p-p 31: 1.16 Volts p-p
*/ */
#define SGTL5000_LINEOUT_LEVEL 21 #define SGTL5000_LINEOUT_LEVEL 17
//#define SDCARD_CS_PIN 10 //#define SDCARD_CS_PIN 10
//#define SDCARD_MOSI_PIN 7 //#define SDCARD_MOSI_PIN 7
//#define SDCARD_SCK_PIN 14 //#define SDCARD_SCK_PIN 14
@ -179,7 +179,7 @@
//* DO NO CHANGE ANYTHING BEYOND IF YOU DON'T KNOW WHAT YOU ARE DOING !!! //* DO NO CHANGE ANYTHING BEYOND IF YOU DON'T KNOW WHAT YOU ARE DOING !!!
//************************************************************************************************* //*************************************************************************************************
#define MICRO_MDAEPIANO_VERSION "0.9.9" #define MICRO_MDAEPIANO_VERSION "1.0.0 alpha"
/* HELPER MACROS */ /* HELPER MACROS */
#define TIME_MS2SAMPLES(x) floor(uint32_t(x) * AUDIO_SAMPLE_RATE / 1000) #define TIME_MS2SAMPLES(x) floor(uint32_t(x) * AUDIO_SAMPLE_RATE / 1000)

Loading…
Cancel
Save