From 0d35d9afcff8d53b14d88f66b4c0f7630b341066 Mon Sep 17 00:00:00 2001 From: Holger Wirtz Date: Wed, 13 May 2020 14:42:10 +0200 Subject: [PATCH] Removed extra instance menus. --- UI.hpp | 350 ++++++++++--------------------------------- UI_2.h | 152 ------------------- UI_2_FX.h | 188 ----------------------- UI_1_FX.h => UI_FX.h | 1 - UI_1.h => UI_NO_FX.h | 1 - 5 files changed, 83 insertions(+), 609 deletions(-) delete mode 100644 UI_2.h delete mode 100644 UI_2_FX.h rename UI_1_FX.h => UI_FX.h (99%) rename UI_1.h => UI_NO_FX.h (99%) diff --git a/UI.hpp b/UI.hpp index 6732e67..fb223c0 100644 --- a/UI.hpp +++ b/UI.hpp @@ -263,14 +263,10 @@ void eeprom_update_var(uint16_t pos, uint8_t val, const char* val_string); LCDMenuLib2_menu LCDML_0(255, 0, 0, NULL, NULL); // normal root menu element (do not change) LCDMenuLib2 LCDML(LCDML_0, _LCDML_DISP_rows, _LCDML_DISP_cols, lcdml_menu_display, lcdml_menu_clear, lcdml_menu_control); -#if NUM_DEXED>1 && defined(USE_FX) -#include "UI_2_FX.h" -#elif NUM_DEXED==1 && defined(USE_FX) -#include "UI_1_FX.h" -#elif NUM_DEXED==2 && !defined(USE_FX) -#include "UI_2.h" +#if defined(USE_FX) +#include "UI_FX.h" #else -#include "UI_1.h" +#include "UI_NO_FX.h" #endif // create menu @@ -1015,11 +1011,6 @@ void UI_func_chorus_frequency(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_float("Chorus Frq.", configuration.fx.chorus_frequency[instance_id], 0.1, CHORUS_FREQUENCY_MIN, CHORUS_FREQUENCY_MAX, 2, 1, false, false, false, true); @@ -1077,11 +1068,6 @@ void UI_func_chorus_waveform(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Chorus Waveform")); @@ -1148,11 +1134,6 @@ void UI_func_chorus_depth(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Chorus Dpt.", configuration.fx.chorus_depth[instance_id], 1.0, CHORUS_DEPTH_MIN, CHORUS_DEPTH_MAX, 3, false, false, false, true); @@ -1210,11 +1191,6 @@ void UI_func_chorus_level(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Chorus Lvl.", configuration.fx.chorus_level[instance_id], 1.0, CHORUS_LEVEL_MIN, CHORUS_LEVEL_MAX, 3, false, false, false, true); @@ -1275,11 +1251,6 @@ void UI_func_delay_time(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Delay Time", configuration.fx.delay_time[instance_id], 10.0, DELAY_TIME_MIN, DELAY_TIME_MAX, 3, false, false, false, true); @@ -1337,11 +1308,6 @@ void UI_func_delay_feedback(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Delay Feedb.", configuration.fx.delay_feedback[instance_id], 1.0, DELAY_FEEDBACK_MIN, DELAY_FEEDBACK_MAX, 3, false, false, false, true); @@ -1399,11 +1365,6 @@ void UI_func_delay_level(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Delay Lvl.", configuration.fx.delay_level[instance_id], 1.0, DELAY_LEVEL_MIN, DELAY_LEVEL_MAX, 3, false, false, false, true); @@ -1461,11 +1422,6 @@ void UI_func_reverb_send(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Reverb Send", configuration.fx.reverb_send[instance_id], 1.0, REVERB_SEND_MIN, REVERB_SEND_MAX, 3, false, false, false, true); @@ -1524,11 +1480,6 @@ void UI_func_filter_cutoff(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Filter Cut", configuration.dexed[instance_id].filter_cutoff, 1.0, FILTER_CUTOFF_MIN, FILTER_CUTOFF_MAX, 3, false, false, false, true); @@ -1586,11 +1537,6 @@ void UI_func_filter_resonance(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Filter Res", configuration.dexed[instance_id].filter_resonance, 1.0, FILTER_RESONANCE_MIN, FILTER_RESONANCE_MAX, 3, false, false, false, true); @@ -1649,11 +1595,6 @@ void UI_func_transpose(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(METERBAR); lcd_display_meter_int("Transpose", configuration.dexed[instance_id].transpose, 1.0, -24.0, TRANSPOSE_MIN, TRANSPOSE_MAX, 3, false, false, true, true); @@ -1712,11 +1653,6 @@ void UI_func_tune(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(METERBAR); lcd_display_meter_int("Fine Tune", configuration.dexed[instance_id].tune, 1.0, -100.0, TUNE_MIN, TUNE_MAX, 3, false, false, true, true); @@ -1775,11 +1711,6 @@ void UI_func_midi_channel(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("MIDI Channel")); @@ -1850,11 +1781,6 @@ void UI_func_lowest_note(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - getNoteName(note_name, configuration.dexed[instance_id].lowest_note); lcd.setCursor(0, 0); lcd.print(F("Lowest Note")); @@ -1917,11 +1843,6 @@ void UI_func_highest_note(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - getNoteName(note_name, configuration.dexed[instance_id].highest_note); lcd.setCursor(0, 0); lcd.print(F("Highest Note")); @@ -1981,12 +1902,7 @@ void UI_func_sound_intensity(uint8_t param) if (LCDML.FUNC_setup()) // ****** SETUP ********* { - //encoderDir[ENC_R].reset(); - - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; + encoderDir[ENC_R].reset(); lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Voice Level", configuration.dexed[instance_id].sound_intensity, 1.0, SOUND_INTENSITY_MIN, SOUND_INTENSITY_MAX, 3, false, false, false, true); @@ -2046,11 +1962,6 @@ void UI_func_panorama(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - if (configuration.sys.mono > 0) { lcd.setCursor(0, 0); @@ -2061,6 +1972,14 @@ void UI_func_panorama(uint8_t param) } lcd_special_chars(METERBAR); lcd_display_meter_float("Panorama", configuration.dexed[instance_id].pan, 0.05, -20.0, PANORAMA_MIN, PANORAMA_MAX, 3, 1, false, false, true, true); + +#if NUM_DEXED > 1 + lcd_active_instance_number(instance_id); + lcd.setCursor(15, 0); + lcd.write(5); + lcd.setCursor(15, 1); + lcd.write(6); +#endif } if (LCDML.FUNC_loop()) // ****** LOOP ********* @@ -2175,12 +2094,6 @@ void UI_func_polyphony(uint8_t param) { encoderDir[ENC_R].reset(); - - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Polyphony", configuration.dexed[instance_id].polyphony, 1.0, POLYPHONY_MIN, POLYPHONY_MAX, 3, false, false, false, true); @@ -2319,11 +2232,6 @@ void UI_func_engine(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Engine")); @@ -2392,11 +2300,6 @@ void UI_func_mono_poly(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Mono/Polyphonic")); @@ -2462,11 +2365,6 @@ void UI_func_note_refresh(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Note Refresh")); @@ -2532,11 +2430,6 @@ void UI_func_pb_range(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("PB Range", configuration.dexed[instance_id].pb_range, 1.0, PB_RANGE_MIN, PB_RANGE_MAX, 2, false, false, false, true); @@ -2594,11 +2487,6 @@ void UI_func_pb_step(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("PB Step", configuration.dexed[instance_id].pb_step, 1.0, PB_STEP_MIN, PB_STEP_MAX, 2, false, false, false, true); @@ -2656,11 +2544,6 @@ void UI_func_mw_range(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("MW Range", configuration.dexed[instance_id].mw_range, 1.0, MW_RANGE_MIN, MW_RANGE_MAX, 2, false, false, false, true); @@ -2718,11 +2601,6 @@ void UI_func_mw_assign(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("MW Assign")); @@ -2806,11 +2684,6 @@ void UI_func_mw_mode(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("MW Mode")); @@ -2880,11 +2753,6 @@ void UI_func_fc_range(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("FC Range", configuration.dexed[instance_id].fc_range, 1.0, FC_RANGE_MIN, FC_RANGE_MAX, 2, false, false, false, true); @@ -2943,11 +2811,6 @@ void UI_func_fc_assign(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("FC Assign")); @@ -3031,11 +2894,6 @@ void UI_func_fc_mode(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("FC Mode")); @@ -3105,11 +2963,6 @@ void UI_func_bc_range(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("BC Range", configuration.dexed[instance_id].bc_range, 1.0, BC_RANGE_MIN, BC_RANGE_MAX, 2, false, false, false, true); @@ -3167,11 +3020,6 @@ void UI_func_bc_assign(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("BC Assign")); @@ -3255,11 +3103,6 @@ void UI_func_bc_mode(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("BC Mode")); @@ -3329,11 +3172,6 @@ void UI_func_at_range(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("AT Range", configuration.dexed[instance_id].at_range, 1.0, AT_RANGE_MIN, AT_RANGE_MAX, 2, false, false, false, true); @@ -3391,11 +3229,6 @@ void UI_func_at_assign(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("AT Assign")); @@ -3479,11 +3312,6 @@ void UI_func_at_mode(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("AT Mode")); @@ -3553,11 +3381,6 @@ void UI_func_portamento_mode(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Portamento Mode")); @@ -3629,11 +3452,6 @@ void UI_func_portamento_glissando(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd.setCursor(0, 0); lcd.print(F("Portam. Gliss.")); @@ -3699,11 +3517,6 @@ void UI_func_portamento_time(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Portam. Time", configuration.dexed[instance_id].portamento_time, 1.0, PORTAMENTO_TIME_MIN, PORTAMENTO_TIME_MAX, 2, false, false, false, true); @@ -3757,9 +3570,6 @@ void UI_func_OP1(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 0, instance_id); } @@ -3767,9 +3577,6 @@ void UI_func_OP2(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 1, instance_id); } @@ -3777,9 +3584,6 @@ void UI_func_OP3(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 2, instance_id); } @@ -3787,9 +3591,6 @@ void UI_func_OP4(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 3, instance_id); } @@ -3797,9 +3598,6 @@ void UI_func_OP5(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 4, instance_id); } @@ -3807,9 +3605,6 @@ void UI_func_OP6(uint8_t param) { uint8_t instance_id = 0; - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - UI_handle_OP(param, 5, instance_id); } @@ -3952,11 +3747,6 @@ void UI_func_velocity_level(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_special_chars(BLOCKBAR); lcd_display_bar_int("Velocity Lvl", configuration.dexed[instance_id].velocity_level, 1.0, VELOCITY_LEVEL_MIN, VELOCITY_LEVEL_MAX, 3, false, false, false, true); } @@ -4057,11 +3847,6 @@ void UI_func_voice_select(uint8_t param) { encoderDir[ENC_R].reset(); - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; - else - instance_id = 0; - lcd_active_instance_number(instance_id); char bank_name[BANK_NAME_LEN]; @@ -4984,18 +4769,21 @@ void UI_func_save_voice(uint8_t param) { static bool yesno; static uint8_t mode; - uint8_t instance_id = 0; - - if (LCDML.FUNC_getID() > MENU_ID_OF_INSTANCE_2) - instance_id = 1; + static uint8_t instance_id; if (LCDML.FUNC_setup()) // ****** SETUP ********* { encoderDir[ENC_R].reset(); yesno = false; +#if NUM_DEXED == 1 + mode = 1; +#else mode = 0; +#endif + instance_id = 0; +#if NUM_DEXED == 1 char bank_name[BANK_NAME_LEN]; if (!get_bank_name(configuration.performance.bank[instance_id], bank_name, sizeof(bank_name))) @@ -5007,6 +4795,15 @@ void UI_func_save_voice(uint8_t param) lcd.show(1, 4, 10, bank_name); lcd.show(1, 2, 2, " ["); lcd.show(1, 14, 1, "]"); +#else + lcd.setCursor(0, 0); + lcd.print(F("Save Instance")); + lcd_active_instance_number(instance_id); + lcd.setCursor(5, 1); + lcd.write(5); + lcd.setCursor(10, 1); + lcd.write(6); +#endif } if (LCDML.FUNC_loop()) // ****** LOOP ********* @@ -5018,7 +4815,17 @@ void UI_func_save_voice(uint8_t param) { switch (mode) { - case 0: // Bank selection + case 0: // Instance selection + if (LCDML.BT_checkDown() || LCDML.BT_checkUp()) + instance_id = !instance_id; + + lcd_active_instance_number(instance_id); + lcd.setCursor(5, 1); + lcd.write(5); + lcd.setCursor(10, 1); + lcd.write(6); + break; + case 1: // Bank selection if (LCDML.BT_checkDown()) configuration.performance.bank[instance_id] = constrain(configuration.performance.bank[instance_id] + ENCODER[ENC_R].speed(), 0, MAX_BANKS - 1); else if (LCDML.BT_checkUp() && configuration.performance.bank[instance_id] > 0) @@ -5030,7 +4837,7 @@ void UI_func_save_voice(uint8_t param) lcd.show(1, 0, 2, configuration.performance.bank[instance_id]); lcd.show(1, 4, 10, bank_name); break; - case 1: // Voice selection + case 2: // Voice selection if (LCDML.BT_checkDown() && configuration.performance.voice[instance_id] < MAX_VOICES - 1) configuration.performance.voice[instance_id] = constrain(configuration.performance.voice[instance_id] + ENCODER[ENC_R].speed(), 0, MAX_VOICES - 1); else if (LCDML.BT_checkUp() && configuration.performance.voice[instance_id] > 0) @@ -5044,7 +4851,7 @@ void UI_func_save_voice(uint8_t param) lcd.show(1, 0, 2, configuration.performance.voice[instance_id] + 1); lcd.show(1, 4, 10, voice_name); break; - case 2: // Yes/No selection + case 3: // Yes/No selection yesno = !yesno; if (yesno == true) { @@ -5061,47 +4868,56 @@ void UI_func_save_voice(uint8_t param) { if (encoderDir[ENC_R].ButtonShort()) mode++; - - if (mode == 1) - { - if (!get_bank_name(configuration.performance.bank[instance_id], bank_name, sizeof(bank_name))) - strncpy(bank_name, "*ERROR*", sizeof(bank_name)); - if (!get_voice_by_bank_name(configuration.performance.bank[instance_id], bank_name, configuration.performance.voice[instance_id], voice_name, sizeof(voice_name))) - strncpy(voice_name, "*ERROR*", sizeof(voice_name)); - - lcd.show(0, 0, 16, "Save to Bank"); - lcd.show(0, 13, 2, configuration.performance.bank[instance_id]); - lcd.show(1, 0, 2, configuration.performance.voice[instance_id] + 1); - lcd.show(1, 4, 10, voice_name); - } - if (mode == 2) - { - lcd.show(0, 0, 16, "Overwrite?"); - lcd.show(1, 0, 15, "[NO"); - lcd.show(1, 4, 1, "]"); - } - else if (mode > 2) + switch (mode) { - if (yesno == true) - { + case 1: + if (!get_bank_name(configuration.performance.bank[instance_id], bank_name, sizeof(bank_name))) + strncpy(bank_name, "*ERROR*", sizeof(bank_name)); + lcd.setCursor(0, 0); + lcd.print(F("Save to Bank")); + lcd.show(1, 0, 2, configuration.performance.bank[instance_id]); + lcd.show(1, 4, 10, bank_name); + lcd.show(1, 2, 2, " ["); + lcd.show(1, 14, 1, "]"); + break; + case 2: + if (!get_bank_name(configuration.performance.bank[instance_id], bank_name, sizeof(bank_name))) + strncpy(bank_name, "*ERROR*", sizeof(bank_name)); + if (!get_voice_by_bank_name(configuration.performance.bank[instance_id], bank_name, configuration.performance.voice[instance_id], voice_name, sizeof(voice_name))) + strncpy(voice_name, "*ERROR*", sizeof(voice_name)); + + lcd.show(0, 0, 16, "Save to Bank"); + lcd.show(0, 13, 2, configuration.performance.bank[instance_id]); + lcd.show(1, 0, 2, configuration.performance.voice[instance_id] + 1); + lcd.show(1, 4, 10, voice_name); + break; + case 3: + lcd.show(0, 0, 16, "Overwrite?"); + lcd.show(1, 0, 15, "[NO"); + lcd.show(1, 4, 1, "]"); + break; + default: + if (yesno == true) + { #ifdef DEBUG - bool ret = save_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id); + bool ret = save_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id); - if (ret == true) - Serial.println(F("Saving voice OK.")); - else - Serial.println(F("Error while saving voice.")); + if (ret == true) + Serial.println(F("Saving voice OK.")); + else + Serial.println(F("Error while saving voice.")); #else - save_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id); + save_sd_voice(configuration.performance.bank[instance_id], configuration.performance.voice[instance_id], instance_id); #endif - lcd.show(1, 0, 16, "Done."); - delay(MESSAGE_WAIT_TIME); + lcd.show(1, 0, 16, "Done."); + delay(MESSAGE_WAIT_TIME); - mode = 0xff; - } + mode = 0xff; + break; + } - LCDML.FUNC_goBackToMenu(); + LCDML.FUNC_goBackToMenu(); } } } diff --git a/UI_2.h b/UI_2.h deleted file mode 100644 index 0051b33..0000000 --- a/UI_2.h +++ /dev/null @@ -1,152 +0,0 @@ -/* - MicroDexed - - MicroDexed is a port of the Dexed sound engine - (https://github.com/asb2m10/dexed) for the Teensy-3.5/3.6 with audio shield. - Dexed ist heavily based on https://github.com/google/music-synthesizer-for-android - - (c)2018-2020 H. Wirtz - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef _UI_H_ -#define _UI_H_ - -LCDML_add(0, LCDML_0, 1, "Voice", NULL); -LCDML_add(1, LCDML_0_1, 1, "Instance 1", NULL); -LCDML_add(2, LCDML_0_1_1, 1, "Select", UI_func_voice_select); -LCDML_add(3, LCDML_0_1_1, 2, "Audio", NULL); -LCDML_add(4, LCDML_0_1_1_2, 1, "Voice Level", UI_func_sound_intensity); -LCDML_add(5, LCDML_0_1_1_2, 2, "Panorama", UI_func_panorama); -LCDML_add(6, LCDML_0_1_1, 3, "Controller", NULL); -LCDML_add(7, LCDML_0_1_1_3, 1, "Pitchbend", NULL); -LCDML_add(8, LCDML_0_1_1_3_1, 1, "PB Range", UI_func_pb_range); -LCDML_add(9, LCDML_0_1_1_3_1, 2, "PB Step", UI_func_pb_step); -LCDML_add(10, LCDML_0_1_1_3, 2, "Mod Wheel", NULL); -LCDML_add(11, LCDML_0_1_1_3_2, 1, "MW Range", UI_func_mw_range); -LCDML_add(12, LCDML_0_1_1_3_2, 2, "MW Assign", UI_func_mw_assign); -LCDML_add(13, LCDML_0_1_1_3_2, 3, "MW Mode", UI_func_mw_mode); -LCDML_add(14, LCDML_0_1_1_3, 3, "Aftertouch", NULL); -LCDML_add(15, LCDML_0_1_1_3_3, 1, "AT Range", UI_func_at_range); -LCDML_add(16, LCDML_0_1_1_3_3, 2, "AT Assign", UI_func_at_assign); -LCDML_add(17, LCDML_0_1_1_3_3, 3, "AT Mode", UI_func_at_mode); -LCDML_add(18, LCDML_0_1_1_3, 4, "Foot Ctrl", NULL); -LCDML_add(19, LCDML_0_1_1_3_4, 1, "FC Range", UI_func_fc_range); -LCDML_add(20, LCDML_0_1_1_3_4, 2, "FC Assign", UI_func_fc_assign); -LCDML_add(21, LCDML_0_1_1_3_4, 3, "FC Mode", UI_func_fc_mode); -LCDML_add(22, LCDML_0_1_1_3, 5, "Breath Ctrl", NULL); -LCDML_add(23, LCDML_0_1_1_3_5, 1, "BC Range", UI_func_bc_range); -LCDML_add(24, LCDML_0_1_1_3_5, 2, "BC Assign", UI_func_bc_assign); -LCDML_add(25, LCDML_0_1_1_3_5, 3, "BC Mode", UI_func_bc_mode); -LCDML_add(26, LCDML_0_1_1, 4, "MIDI", NULL); -LCDML_add(27, LCDML_0_1_1_4, 1, "MIDI Channel", UI_func_midi_channel); -LCDML_add(28, LCDML_0_1_1_4, 2, "Lowest Note", UI_func_lowest_note); -LCDML_add(29, LCDML_0_1_1_4, 3, "Highest Note", UI_func_highest_note); -LCDML_add(30, LCDML_0_1_1_4, 4, "Send Voice", UI_func_sysex_send_voice); -LCDML_add(31, LCDML_0_1_1_4, 5, "Receive Voice", UI_func_sysex_receive_voice); -LCDML_add(32, LCDML_0_1_1, 5, "Setup", NULL); -LCDML_add(33, LCDML_0_1_1_5, 1, "Portamento", NULL); -LCDML_add(34, LCDML_0_1_1_5_1, 1, "Port. Mode", UI_func_portamento_mode); -LCDML_add(35, LCDML_0_1_1_5_1, 2, "Port. Gliss", UI_func_portamento_glissando); -LCDML_add(36, LCDML_0_1_1_5_1, 3, "Port. Time", UI_func_portamento_time); -LCDML_add(37, LCDML_0_1_1_5, 2, "Polyphony", UI_func_polyphony); -LCDML_add(38, LCDML_0_1_1_5, 3, "Transpose", UI_func_transpose); -LCDML_add(39, LCDML_0_1_1_5, 4, "Fine Tune", UI_func_tune); -LCDML_add(40, LCDML_0_1_1_5, 5, "Mono/Poly", UI_func_mono_poly); -LCDML_add(41, LCDML_0_1_1, 6, "Internal", NULL); -LCDML_add(42, LCDML_0_1_1_6, 1, "Note Refresh", UI_func_note_refresh); -LCDML_add(43, LCDML_0_1_1_6, 2, "Velocity Lvl", UI_func_velocity_level); -LCDML_add(44, LCDML_0_1_1_6, 3, "Engine", UI_func_engine); -LCDML_add(45, LCDML_0_1_1, 7, "Operator", NULL); -LCDML_add(46, LCDML_0_1_1_7, 1, "OP1", UI_func_OP1); -LCDML_add(47, LCDML_0_1_1_7, 2, "OP2", UI_func_OP2); -LCDML_add(48, LCDML_0_1_1_7, 3, "OP3", UI_func_OP3); -LCDML_add(49, LCDML_0_1_1_7, 4, "OP4", UI_func_OP4); -LCDML_add(50, LCDML_0_1_1_7, 5, "OP5", UI_func_OP5); -LCDML_add(51, LCDML_0_1_1_7, 6, "OP6", UI_func_OP6); -LCDML_add(52, LCDML_0_1_1, 8, "Save Voice", UI_func_save_voice); -LCDML_add(53, LCDML_0_1, 2, "Instance 2", NULL); -LCDML_add(54, LCDML_0_1_2, 1, "Select", UI_func_voice_select); -LCDML_add(55, LCDML_0_1_2, 2, "Audio", NULL); -LCDML_add(56, LCDML_0_1_2_2, 1, "Voice Level", UI_func_sound_intensity); -LCDML_add(57, LCDML_0_1_2_2, 2, "Panorama", UI_func_panorama); -LCDML_add(58, LCDML_0_1_2, 3, "Controller", NULL); -LCDML_add(59, LCDML_0_1_2_3, 1, "Pitchbend", NULL); -LCDML_add(60, LCDML_0_1_2_3_1, 1, "PB Range", UI_func_pb_range); -LCDML_add(61, LCDML_0_1_2_3_1, 2, "PB Step", UI_func_pb_step); -LCDML_add(62, LCDML_0_1_2_3, 2, "Mod Wheel", NULL); -LCDML_add(63, LCDML_0_1_2_3_2, 1, "MW Range", UI_func_mw_range); -LCDML_add(64, LCDML_0_1_2_3_2, 2, "MW Assign", UI_func_mw_assign); -LCDML_add(65, LCDML_0_1_2_3_2, 3, "MW Mode", UI_func_mw_mode); -LCDML_add(66, LCDML_0_1_2_3, 3, "Aftertouch", NULL); -LCDML_add(67, LCDML_0_1_2_3_3, 1, "AT Range", UI_func_at_range); -LCDML_add(68, LCDML_0_1_2_3_3, 2, "AT Assign", UI_func_at_assign); -LCDML_add(69, LCDML_0_1_2_3_3, 3, "AT Mode", UI_func_at_mode); -LCDML_add(70, LCDML_0_1_2_3, 4, "Foot Ctrl", NULL); -LCDML_add(71, LCDML_0_1_2_3_4, 1, "FC Range", UI_func_fc_range); -LCDML_add(72, LCDML_0_1_2_3_4, 2, "FC Assign", UI_func_fc_assign); -LCDML_add(73, LCDML_0_1_2_3_4, 3, "FC Mode", UI_func_fc_mode); -LCDML_add(74, LCDML_0_1_2_3, 5, "Breath Ctrl", NULL); -LCDML_add(75, LCDML_0_1_2_3_5, 1, "BC Range", UI_func_bc_range); -LCDML_add(76, LCDML_0_1_2_3_5, 2, "BC Assign", UI_func_bc_assign); -LCDML_add(77, LCDML_0_1_2_3_5, 3, "BC Mode", UI_func_bc_mode); -LCDML_add(78, LCDML_0_1_2, 4, "MIDI", NULL); -LCDML_add(79, LCDML_0_1_2_4, 1, "MIDI Channel", UI_func_midi_channel); -LCDML_add(80, LCDML_0_1_2_4, 2, "Lowest Note", UI_func_lowest_note); -LCDML_add(81, LCDML_0_1_2_4, 3, "Highest Note", UI_func_highest_note); -LCDML_add(82, LCDML_0_1_2_4, 4, "Send Voice", UI_func_sysex_send_voice); -LCDML_add(83, LCDML_0_1_2_4, 5, "Receive Voice", UI_func_sysex_receive_voice); -LCDML_add(84, LCDML_0_1_2, 5, "Setup", NULL); -LCDML_add(85, LCDML_0_1_2_5, 1, "Portamento", NULL); -LCDML_add(86, LCDML_0_1_2_5_1, 1, "Port. Mode", UI_func_portamento_mode); -LCDML_add(87, LCDML_0_1_2_5_1, 2, "Port. Gliss", UI_func_portamento_glissando); -LCDML_add(88, LCDML_0_1_2_5_1, 3, "Port. Time", UI_func_portamento_time); -LCDML_add(89, LCDML_0_1_2_5, 2, "Polyphony", UI_func_polyphony); -LCDML_add(90, LCDML_0_1_2_5, 3, "Transpose", UI_func_transpose); -LCDML_add(91, LCDML_0_1_2_5, 4, "Fine Tune", UI_func_tune); -LCDML_add(92, LCDML_0_1_2_5, 5, "Mono/Poly", UI_func_mono_poly); -LCDML_add(93, LCDML_0_1_2, 6, "Internal", NULL); -LCDML_add(94, LCDML_0_1_2_6, 1, "Note Refresh", UI_func_note_refresh); -LCDML_add(95, LCDML_0_1_2_6, 2, "Velocity Lvl", UI_func_velocity_level); -LCDML_add(96, LCDML_0_1_2_6, 3, "Engine", UI_func_engine); -LCDML_add(97, LCDML_0_1_2, 7, "Operator", NULL); -LCDML_add(98, LCDML_0_1_2_7, 1, "OP1", UI_func_OP1); -LCDML_add(99, LCDML_0_1_2_7, 2, "OP2", UI_func_OP2); -LCDML_add(100, LCDML_0_1_2_7, 3, "OP3", UI_func_OP3); -LCDML_add(101, LCDML_0_1_2_7, 4, "OP4", UI_func_OP4); -LCDML_add(102, LCDML_0_1_2_7, 5, "OP5", UI_func_OP5); -LCDML_add(103, LCDML_0_1_2_7, 6, "OP6", UI_func_OP6); -LCDML_add(104, LCDML_0_1_2, 8, "Save Voice", UI_func_save_voice); -LCDML_add(105, LCDML_0, 2, "Load/Save", NULL); -LCDML_add(106, LCDML_0_2, 1, "Performance", NULL); -LCDML_add(107, LCDML_0_2_1, 1, "Load Perf.", UI_func_load_performance); -LCDML_add(108, LCDML_0_2_1, 2, "Save Perf.", UI_func_save_performance); -LCDML_add(109, LCDML_0_2, 2, "Voice Config", NULL); -LCDML_add(110, LCDML_0_2_2, 1, "Load Voice Cfg", UI_func_load_voiceconfig); -LCDML_add(111, LCDML_0_2_2, 2, "Save Voice Cfg", UI_func_save_voiceconfig); -LCDML_add(112, LCDML_0_2, 4, "MIDI", NULL); -LCDML_add(113, LCDML_0_2_4, 1, "MIDI Recv Bank", UI_func_sysex_receive_bank); -LCDML_add(114, LCDML_0_2_4, 2, "MIDI Send Bank", UI_func_sysex_send_bank); -LCDML_add(115, LCDML_0, 3, "System", NULL); -LCDML_add(116, LCDML_0_3, 1, "Volume", UI_func_volume); -LCDML_add(117, LCDML_0_3, 2, "Stereo/Mono", UI_func_stereo_mono); -LCDML_add(118, LCDML_0_3, 3, "MIDI Soft THRU", UI_func_midi_soft_thru); -LCDML_add(119, LCDML_0_3, 4, "EEPROM Reset", UI_func_eeprom_reset); -LCDML_add(120, LCDML_0, 4, "Info", UI_func_information); -#define _LCDML_DISP_cnt 120 -#define MENU_ID_OF_INSTANCE_2 52 - -#endif diff --git a/UI_2_FX.h b/UI_2_FX.h deleted file mode 100644 index 4993f12..0000000 --- a/UI_2_FX.h +++ /dev/null @@ -1,188 +0,0 @@ -/* - MicroDexed - - MicroDexed is a port of the Dexed sound engine - (https://github.com/asb2m10/dexed) for the Teensy-3.5/3.6 with audio shield. - Dexed ist heavily based on https://github.com/google/music-synthesizer-for-android - - (c)2018-2020 H. Wirtz - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA -*/ - -#ifndef _UI_H_ -#define _UI_H_ - -LCDML_add(0, LCDML_0, 1, "Voice", NULL); -LCDML_add(1, LCDML_0_1, 1, "Instance 1", NULL); -LCDML_add(2, LCDML_0_1_1, 1, "Select", UI_func_voice_select); -LCDML_add(3, LCDML_0_1_1, 2, "Audio", NULL); -LCDML_add(4, LCDML_0_1_1_2, 1, "Voice Level", UI_func_sound_intensity); -LCDML_add(5, LCDML_0_1_1_2, 2, "Panorama", UI_func_panorama); -LCDML_add(6, LCDML_0_1_1_2, 3, "Voice Effects", NULL); -LCDML_add(7, LCDML_0_1_1_2_3, 1, "Chorus", NULL); -LCDML_add(8, LCDML_0_1_1_2_3_1, 1, "Frequency", UI_func_chorus_frequency); -LCDML_add(9, LCDML_0_1_1_2_3_1, 2, "Waveform", UI_func_chorus_waveform); -LCDML_add(10, LCDML_0_1_1_2_3_1, 3, "Depth", UI_func_chorus_depth); -LCDML_add(11, LCDML_0_1_1_2_3_1, 4, "Level", UI_func_chorus_level); -LCDML_add(12, LCDML_0_1_1_2_3, 2, "Delay", NULL); -LCDML_add(13, LCDML_0_1_1_2_3_2, 1, "Time", UI_func_delay_time); -LCDML_add(14, LCDML_0_1_1_2_3_2, 2, "Feedback", UI_func_delay_feedback); -LCDML_add(15, LCDML_0_1_1_2_3_2, 3, "Level", UI_func_delay_level); -LCDML_add(16, LCDML_0_1_1_2_3, 3, "Reverb Send", UI_func_reverb_send); -LCDML_add(17, LCDML_0_1_1_2_3, 4, "Filter", NULL); -LCDML_add(18, LCDML_0_1_1_2_3_4, 1, "Cutoff", UI_func_filter_cutoff); -LCDML_add(19, LCDML_0_1_1_2_3_4, 2, "Resonance", UI_func_filter_resonance); -LCDML_add(20, LCDML_0_1_1, 3, "Controller", NULL); -LCDML_add(21, LCDML_0_1_1_3, 1, "Pitchbend", NULL); -LCDML_add(22, LCDML_0_1_1_3_1, 1, "PB Range", UI_func_pb_range); -LCDML_add(23, LCDML_0_1_1_3_1, 2, "PB Step", UI_func_pb_step); -LCDML_add(24, LCDML_0_1_1_3, 2, "Mod Wheel", NULL); -LCDML_add(25, LCDML_0_1_1_3_2, 1, "MW Range", UI_func_mw_range); -LCDML_add(26, LCDML_0_1_1_3_2, 2, "MW Assign", UI_func_mw_assign); -LCDML_add(27, LCDML_0_1_1_3_2, 3, "MW Mode", UI_func_mw_mode); -LCDML_add(28, LCDML_0_1_1_3, 3, "Aftertouch", NULL); -LCDML_add(29, LCDML_0_1_1_3_3, 1, "AT Range", UI_func_at_range); -LCDML_add(30, LCDML_0_1_1_3_3, 2, "AT Assign", UI_func_at_assign); -LCDML_add(31, LCDML_0_1_1_3_3, 3, "AT Mode", UI_func_at_mode); -LCDML_add(32, LCDML_0_1_1_3, 4, "Foot Ctrl", NULL); -LCDML_add(33, LCDML_0_1_1_3_4, 1, "FC Range", UI_func_fc_range); -LCDML_add(34, LCDML_0_1_1_3_4, 2, "FC Assign", UI_func_fc_assign); -LCDML_add(35, LCDML_0_1_1_3_4, 3, "FC Mode", UI_func_fc_mode); -LCDML_add(36, LCDML_0_1_1_3, 5, "Breath Ctrl", NULL); -LCDML_add(37, LCDML_0_1_1_3_5, 1, "BC Range", UI_func_bc_range); -LCDML_add(38, LCDML_0_1_1_3_5, 2, "BC Assign", UI_func_bc_assign); -LCDML_add(39, LCDML_0_1_1_3_5, 3, "BC Mode", UI_func_bc_mode); -LCDML_add(40, LCDML_0_1_1, 4, "MIDI", NULL); -LCDML_add(41, LCDML_0_1_1_4, 1, "MIDI Channel", UI_func_midi_channel); -LCDML_add(42, LCDML_0_1_1_4, 2, "Lowest Note", UI_func_lowest_note); -LCDML_add(43, LCDML_0_1_1_4, 3, "Highest Note", UI_func_highest_note); -LCDML_add(44, LCDML_0_1_1_4, 4, "Send Voice", UI_func_sysex_send_voice); -LCDML_add(45, LCDML_0_1_1_4, 5, "Receive Voice", UI_func_sysex_receive_voice); -LCDML_add(46, LCDML_0_1_1, 5, "Setup", NULL); -LCDML_add(47, LCDML_0_1_1_5, 1, "Portamento", NULL); -LCDML_add(48, LCDML_0_1_1_5_1, 1, "Port. Mode", UI_func_portamento_mode); -LCDML_add(49, LCDML_0_1_1_5_1, 2, "Port. Gliss", UI_func_portamento_glissando); -LCDML_add(50, LCDML_0_1_1_5_1, 3, "Port. Time", UI_func_portamento_time); -LCDML_add(51, LCDML_0_1_1_5, 2, "Polyphony", UI_func_polyphony); -LCDML_add(52, LCDML_0_1_1_5, 3, "Transpose", UI_func_transpose); -LCDML_add(53, LCDML_0_1_1_5, 4, "Fine Tune", UI_func_tune); -LCDML_add(54, LCDML_0_1_1_5, 5, "Mono/Poly", UI_func_mono_poly); -LCDML_add(55, LCDML_0_1_1, 6, "Internal", NULL); -LCDML_add(56, LCDML_0_1_1_6, 1, "Note Refresh", UI_func_note_refresh); -LCDML_add(57, LCDML_0_1_1_6, 2, "Velocity Lvl", UI_func_velocity_level); -LCDML_add(58, LCDML_0_1_1_6, 3, "Engine", UI_func_engine); -LCDML_add(59, LCDML_0_1_1, 7, "Operator", NULL); -LCDML_add(60, LCDML_0_1_1_7, 1, "OP1", UI_func_OP1); -LCDML_add(61, LCDML_0_1_1_7, 2, "OP2", UI_func_OP2); -LCDML_add(62, LCDML_0_1_1_7, 3, "OP3", UI_func_OP3); -LCDML_add(63, LCDML_0_1_1_7, 4, "OP4", UI_func_OP4); -LCDML_add(64, LCDML_0_1_1_7, 5, "OP5", UI_func_OP5); -LCDML_add(65, LCDML_0_1_1_7, 6, "OP6", UI_func_OP6); -LCDML_add(66, LCDML_0_1_1, 8, "Save Voice", UI_func_save_voice); -LCDML_add(67, LCDML_0_1, 2, "Instance 2", NULL); -LCDML_add(68, LCDML_0_1_2, 1, "Select", UI_func_voice_select); -LCDML_add(69, LCDML_0_1_2, 2, "Audio", NULL); -LCDML_add(70, LCDML_0_1_2_2, 1, "Voice Level", UI_func_sound_intensity); -LCDML_add(71, LCDML_0_1_2_2, 2, "Panorama", UI_func_panorama); -LCDML_add(72, LCDML_0_1_2_2, 3, "Voice Effects", NULL); -LCDML_add(73, LCDML_0_1_2_2_3, 1, "Chorus", NULL); -LCDML_add(74, LCDML_0_1_2_2_3_1, 1, "Frequency", UI_func_chorus_frequency); -LCDML_add(75, LCDML_0_1_2_2_3_1, 2, "Waveform", UI_func_chorus_waveform); -LCDML_add(76, LCDML_0_1_2_2_3_1, 3, "Depth", UI_func_chorus_depth); -LCDML_add(77, LCDML_0_1_2_2_3_1, 4, "Level", UI_func_chorus_level); -LCDML_add(78, LCDML_0_1_2_2_3, 2, "Delay", NULL); -LCDML_add(79, LCDML_0_1_2_2_3_2, 1, "Time", UI_func_delay_time); -LCDML_add(80, LCDML_0_1_2_2_3_2, 2, "Feedback", UI_func_delay_feedback); -LCDML_add(81, LCDML_0_1_2_2_3_2, 3, "Level", UI_func_delay_level); -LCDML_add(82, LCDML_0_1_2_2_3, 3, "Reverb Send", UI_func_reverb_send); -LCDML_add(83, LCDML_0_1_2_2_3, 4, "Filter", NULL); -LCDML_add(84, LCDML_0_1_2_2_3_4, 1, "Cutoff", UI_func_filter_cutoff); -LCDML_add(85, LCDML_0_1_2_2_3_4, 2, "Resonance", UI_func_filter_resonance); -LCDML_add(86, LCDML_0_1_2, 3, "Controller", NULL); -LCDML_add(87, LCDML_0_1_2_3, 1, "Pitchbend", NULL); -LCDML_add(88, LCDML_0_1_2_3_1, 1, "PB Range", UI_func_pb_range); -LCDML_add(89, LCDML_0_1_2_3_1, 2, "PB Step", UI_func_pb_step); -LCDML_add(90, LCDML_0_1_2_3, 2, "Mod Wheel", NULL); -LCDML_add(91, LCDML_0_1_2_3_2, 1, "MW Range", UI_func_mw_range); -LCDML_add(92, LCDML_0_1_2_3_2, 2, "MW Assign", UI_func_mw_assign); -LCDML_add(93, LCDML_0_1_2_3_2, 3, "MW Mode", UI_func_mw_mode); -LCDML_add(94, LCDML_0_1_2_3, 3, "Aftertouch", NULL); -LCDML_add(95, LCDML_0_1_2_3_3, 1, "AT Range", UI_func_at_range); -LCDML_add(96, LCDML_0_1_2_3_3, 2, "AT Assign", UI_func_at_assign); -LCDML_add(97, LCDML_0_1_2_3_3, 3, "AT Mode", UI_func_at_mode); -LCDML_add(98, LCDML_0_1_2_3, 4, "Foot Ctrl", NULL); -LCDML_add(99, LCDML_0_1_2_3_4, 1, "FC Range", UI_func_fc_range); -LCDML_add(100, LCDML_0_1_2_3_4, 2, "FC Assign", UI_func_fc_assign); -LCDML_add(101, LCDML_0_1_2_3_4, 3, "FC Mode", UI_func_fc_mode); -LCDML_add(102, LCDML_0_1_2_3, 5, "Breath Ctrl", NULL); -LCDML_add(103, LCDML_0_1_2_3_5, 1, "BC Range", UI_func_bc_range); -LCDML_add(104, LCDML_0_1_2_3_5, 2, "BC Assign", UI_func_bc_assign); -LCDML_add(105, LCDML_0_1_2_3_5, 3, "BC Mode", UI_func_bc_mode); -LCDML_add(106, LCDML_0_1_2, 4, "MIDI", NULL); -LCDML_add(107, LCDML_0_1_2_4, 1, "MIDI Channel", UI_func_midi_channel); -LCDML_add(108, LCDML_0_1_2_4, 2, "Lowest Note", UI_func_lowest_note); -LCDML_add(109, LCDML_0_1_2_4, 3, "Highest Note", UI_func_highest_note); -LCDML_add(110, LCDML_0_1_2_4, 4, "Send Voice", UI_func_sysex_send_voice); -LCDML_add(111, LCDML_0_1_2_4, 5, "Receive Voice", UI_func_sysex_receive_voice); -LCDML_add(112, LCDML_0_1_2, 5, "Setup", NULL); -LCDML_add(113, LCDML_0_1_2_5, 1, "Portamento", NULL); -LCDML_add(114, LCDML_0_1_2_5_1, 1, "Port. Mode", UI_func_portamento_mode); -LCDML_add(115, LCDML_0_1_2_5_1, 2, "Port. Gliss", UI_func_portamento_glissando); -LCDML_add(116, LCDML_0_1_2_5_1, 3, "Port. Time", UI_func_portamento_time); -LCDML_add(117, LCDML_0_1_2_5, 2, "Polyphony", UI_func_polyphony); -LCDML_add(118, LCDML_0_1_2_5, 3, "Transpose", UI_func_transpose); -LCDML_add(119, LCDML_0_1_2_5, 4, "Fine Tune", UI_func_tune); -LCDML_add(120, LCDML_0_1_2_5, 5, "Mono/Poly", UI_func_mono_poly); -LCDML_add(121, LCDML_0_1_2, 6, "Internal", NULL); -LCDML_add(122, LCDML_0_1_2_6, 1, "Note Refresh", UI_func_note_refresh); -LCDML_add(123, LCDML_0_1_2_6, 2, "Velocity Lvl", UI_func_velocity_level); -LCDML_add(124, LCDML_0_1_2_6, 3, "Engine", UI_func_engine); -LCDML_add(125, LCDML_0_1_2, 7, "Operator", NULL); -LCDML_add(126, LCDML_0_1_2_7, 1, "OP1", UI_func_OP1); -LCDML_add(127, LCDML_0_1_2_7, 2, "OP2", UI_func_OP2); -LCDML_add(128, LCDML_0_1_2_7, 3, "OP3", UI_func_OP3); -LCDML_add(129, LCDML_0_1_2_7, 4, "OP4", UI_func_OP4); -LCDML_add(130, LCDML_0_1_2_7, 5, "OP5", UI_func_OP5); -LCDML_add(131, LCDML_0_1_2_7, 6, "OP6", UI_func_OP6); -LCDML_add(132, LCDML_0_1_2, 8, "Save Voice", UI_func_save_voice); -LCDML_add(133, LCDML_0, 3, "Master Effects", NULL); -LCDML_add(134, LCDML_0_3, 1, "Reverb", NULL); -LCDML_add(135, LCDML_0_3_1, 1, "Roomsize", UI_func_reverb_roomsize); -LCDML_add(136, LCDML_0_3_1, 2, "Damping", UI_func_reverb_damping); -LCDML_add(137, LCDML_0_3_1, 3, "Level", UI_func_reverb_level); -LCDML_add(138, LCDML_0, 4, "Load/Save", NULL); -LCDML_add(139, LCDML_0_4, 1, "Performance", NULL); -LCDML_add(140, LCDML_0_4_1, 1, "Load Perf.", UI_func_load_performance); -LCDML_add(141, LCDML_0_4_1, 2, "Save Perf.", UI_func_save_performance); -LCDML_add(142, LCDML_0_4, 2, "Voice Config", NULL); -LCDML_add(143, LCDML_0_4_2, 1, "Load Voice Cfg", UI_func_load_voiceconfig); -LCDML_add(144, LCDML_0_4_2, 2, "Save Voice Cfg", UI_func_save_voiceconfig); -LCDML_add(145, LCDML_0_4, 3, "FX", NULL); -LCDML_add(146, LCDML_0_4_3, 1, "Load Effects", UI_func_load_fx); -LCDML_add(147, LCDML_0_4_3, 2, "Save Effects", UI_func_save_fx); -LCDML_add(148, LCDML_0_4, 5, "MIDI", NULL); -LCDML_add(149, LCDML_0_4_5, 1, "MIDI Recv Bank", UI_func_sysex_receive_bank); -LCDML_add(150, LCDML_0_4_5, 2, "MIDI Send Bank", UI_func_sysex_send_bank); -LCDML_add(151, LCDML_0, 5, "System", NULL); -LCDML_add(152, LCDML_0_5, 1, "Volume", UI_func_volume); -LCDML_add(153, LCDML_0_5, 2, "Stereo/Mono", UI_func_stereo_mono); -LCDML_add(154, LCDML_0_5, 3, "MIDI Soft THRU", UI_func_midi_soft_thru); -LCDML_add(155, LCDML_0_5, 4, "EEPROM Reset", UI_func_eeprom_reset); -LCDML_add(156, LCDML_0, 6, "Info", UI_func_information); -#define _LCDML_DISP_cnt 156 -#define MENU_ID_OF_INSTANCE_2 65 - -#endif diff --git a/UI_1_FX.h b/UI_FX.h similarity index 99% rename from UI_1_FX.h rename to UI_FX.h index 31da7dc..293cb86 100644 --- a/UI_1_FX.h +++ b/UI_FX.h @@ -116,5 +116,4 @@ LCDML_add(87, LCDML_0_4, 3, "MIDI Soft THRU", UI_func_midi_soft_thru); LCDML_add(88, LCDML_0_4, 4, "EEPROM Reset", UI_func_eeprom_reset); LCDML_add(89, LCDML_0, 6, "Info", UI_func_information); #define _LCDML_DISP_cnt 89 -#define MENU_ID_OF_INSTANCE_2 65 #endif diff --git a/UI_1.h b/UI_NO_FX.h similarity index 99% rename from UI_1.h rename to UI_NO_FX.h index b083f21..aa89a09 100644 --- a/UI_1.h +++ b/UI_NO_FX.h @@ -94,6 +94,5 @@ LCDML_add(65, LCDML_0_3, 3, "MIDI Soft THRU", UI_func_midi_soft_thru); LCDML_add(66, LCDML_0_3, 4, "EEPROM Reset", UI_func_eeprom_reset); LCDML_add(67, LCDML_0, 4, "Info", UI_func_information); #define _LCDML_DISP_cnt 67 -#define MENU_ID_OF_INSTANCE_2 51 #endif