Small fixes.

Added menu for master panorama.
master
Holger Wirtz 5 years ago
parent 76d712bf80
commit 9b1960e898
  1. 82
      UI.hpp
  2. 6
      config.h

@ -28,7 +28,7 @@
const uint8_t MAX_VARIABLES = 5; ///< @note Default: 5
/// 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.
const uint8_t MAX_LINES = 20; ///< @note Default: 12
@ -37,7 +37,7 @@
const uint8_t MAX_SCREENS = 2; ///< @note Default: 14
/// 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 MAX_POLY 39
#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];
@ -708,17 +709,19 @@ LiquidMenu save_sound_menu(lcd);
/******************************************
SYSTEM MENU
******************************************/
#define NUM_SYSTEM_MENUS 5
#define NUM_SYSTEM_MENUS 6
const char system_text1[] PROGMEM = "Loudness";
const char system_text2[] PROGMEM = "MIDI Channel";
const char system_text3[] PROGMEM = "MIDI Soft-Thru";
const char system_text4[] PROGMEM = "Max. Polyphony";
const char system_text5[] PROGMEM = "Mono/Stereo";
const char system_text6[] PROGMEM = "Panorama";
LiquidLine system_line1(1, 0, system_text1);
LiquidLine system_line2(1, 1, system_text2);
LiquidLine system_line3(1, 1, system_text3);
LiquidLine system_line4(1, 1, system_text4);
LiquidLine system_line5(1, 1, system_text5);
LiquidLine system_line6(1, 1, system_text6);
LiquidScreen system_screen;
LiquidMenu system_menu(lcd);
@ -772,6 +775,16 @@ LiquidLine mono_line2(1, 1, get_mono_value_text);
LiquidScreen mono_screen;
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
******************************************/
@ -1335,6 +1348,18 @@ void callback_mono_function(void)
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
******************************************/
@ -1717,12 +1742,13 @@ void init_menus(void)
store_question_screen.set_displayLineCount(2);
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_line2);
system_screen.add_line(system_line3);
system_screen.add_line(system_line4);
system_screen.add_line(system_line5);
system_screen.add_line(system_line6);
system_screen.set_displayLineCount(2);
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_line4.attach_function(MAX_POLY, callback_max_poly_function);
system_line5.attach_function(MONO, callback_mono_function);
system_line6.attach_function(PANORAMA, callback_panorama_function);
// setup loudness
loudness_screen.add_line(loudness_line1);
@ -1762,6 +1789,12 @@ void init_menus(void)
mono_screen.set_displayLineCount(2);
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
info_screen.add_line(info_line1);
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(max_poly_menu);
menu_system.add_menu(mono_menu);
menu_system.add_menu(panorama_menu);
menu_system.add_menu(info_menu);
menu_system.add_menu(master_volume_menu);
@ -1977,7 +2011,7 @@ void set_velocity_sense(uint8_t 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)
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)
{
if (value > ENC_MAX_POLY_DEFAULT)
value = ENC_MAX_POLY_DEFAULT;
if (value > ENC_MAX_POLY_MAX)
value = ENC_MAX_POLY_MAX;
#ifdef SHOW_DEBUG
Serial.print(F("Set MAX_POLY "));
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)
{
set_decay(configuration.decay);
@ -2360,6 +2407,7 @@ void set_complete_configuration(void)
set_midi_soft_thru(configuration.midi_soft_thru);
set_max_poly(configuration.max_poly);
set_mono(configuration.mono);
set_panorama(configuration.pan);
}
//********************************************************************************************+
@ -2721,6 +2769,15 @@ void handle_ui(void)
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
{
// Move menu focus
@ -3148,6 +3205,13 @@ void handle_ui(void)
#endif
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
{
#ifdef SHOW_DEBUG

@ -63,7 +63,7 @@
#define USE_XFADE_DATA 1
// 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_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
@ -106,7 +106,7 @@
30: 1.22 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_MOSI_PIN 7
//#define SDCARD_SCK_PIN 14
@ -179,7 +179,7 @@
//* 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 */
#define TIME_MS2SAMPLES(x) floor(uint32_t(x) * AUDIO_SAMPLE_RATE / 1000)

Loading…
Cancel
Save