Some optical changes to the screens and the user-manual.

pull/32/head
Holger Wirtz 4 years ago
parent bc8fa30d74
commit d751a72629
  1. 44
      UI.hpp
  2. 13
      doc/manuals/MicroDexed-User_Manual/MicroDexed-User_Manual.md
  3. BIN
      doc/manuals/MicroDexed-User_Manual/MicroDexed-User_Manual.pdf
  4. 12
      doc/manuals/MicroDexed-User_Manual/build.sh
  5. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_BankSend_1.jpg
  6. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_BankUpload_1.jpg
  7. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_BankUpload_2.jpg
  8. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_VoiceSend_1.jpg
  9. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_VoiceSend_2.jpg
  10. BIN
      doc/manuals/MicroDexed-User_Manual/images/10_VoiceSend_3.jpg

@ -4555,9 +4555,9 @@ void UI_func_save_voice(uint8_t param)
lcd.setCursor(0, 0); lcd.setCursor(0, 0);
lcd.print(F("Save to Bank")); lcd.print(F("Save to Bank"));
lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]); lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
lcd.show(1, 2, 2, " ["); lcd.show(1, 2, 1, "[");
lcd.show(1, 14, 1, "]"); lcd.show(1, 13, 1, "]");
#else #else
lcd.setCursor(0, 0); lcd.setCursor(0, 0);
lcd.print(F("Save Instance")); lcd.print(F("Save Instance"));
@ -4598,7 +4598,7 @@ void UI_func_save_voice(uint8_t param)
strcpy(bank_name, "*ERROR*"); strcpy(bank_name, "*ERROR*");
lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]); lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
break; break;
case 2: // Voice selection case 2: // Voice selection
if (LCDML.BT_checkDown() && configuration.performance.voice[selected_instance_id] < MAX_VOICES - 1) if (LCDML.BT_checkDown() && configuration.performance.voice[selected_instance_id] < MAX_VOICES - 1)
@ -4612,7 +4612,7 @@ void UI_func_save_voice(uint8_t param)
strncpy(voice_name, "*ERROR*", sizeof(voice_name)); strncpy(voice_name, "*ERROR*", sizeof(voice_name));
lcd.show(1, 0, 2, configuration.performance.voice[selected_instance_id] + 1); lcd.show(1, 0, 2, configuration.performance.voice[selected_instance_id] + 1);
lcd.show(1, 4, 10, voice_name); lcd.show(1, 3, 10, voice_name);
break; break;
case 3: // Yes/No selection case 3: // Yes/No selection
yesno = !yesno; yesno = !yesno;
@ -4639,7 +4639,7 @@ void UI_func_save_voice(uint8_t param)
lcd.setCursor(0, 0); lcd.setCursor(0, 0);
lcd.print(F("Save to Bank")); lcd.print(F("Save to Bank"));
lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]); lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
lcd.show(1, 2, 2, " ["); lcd.show(1, 2, 2, " [");
lcd.show(1, 14, 1, "]"); lcd.show(1, 14, 1, "]");
break; break;
@ -4652,7 +4652,7 @@ void UI_func_save_voice(uint8_t param)
lcd.show(0, 0, 16, "Save to Bank"); lcd.show(0, 0, 16, "Save to Bank");
lcd.show(0, 13, 2, configuration.performance.bank[selected_instance_id]); lcd.show(0, 13, 2, configuration.performance.bank[selected_instance_id]);
lcd.show(1, 0, 2, configuration.performance.voice[selected_instance_id] + 1); lcd.show(1, 0, 2, configuration.performance.voice[selected_instance_id] + 1);
lcd.show(1, 4, 10, voice_name); lcd.show(1, 3, 10, voice_name);
break; break;
case 3: case 3:
lcd.show(0, 0, 16, "Overwrite?"); lcd.show(0, 0, 16, "Overwrite?");
@ -4731,14 +4731,14 @@ void UI_func_sysex_receive_bank(uint8_t param)
lcd.setCursor(0, 0); lcd.setCursor(0, 0);
lcd.print(F("MIDI Recv Bank")); lcd.print(F("MIDI Recv Bank"));
lcd.setCursor(3, 1); lcd.setCursor(2, 1);
lcd.print(F("[")); lcd.print(F("["));
lcd.setCursor(15, 1); lcd.setCursor(14, 1);
lcd.print(F("]")); lcd.print(F("]"));
if (!get_bank_name(configuration.performance.bank[selected_instance_id], receive_bank_filename, sizeof(receive_bank_filename))) if (!get_bank_name(configuration.performance.bank[selected_instance_id], receive_bank_filename, sizeof(receive_bank_filename)))
strcpy(receive_bank_filename, "*ERROR*"); strcpy(receive_bank_filename, "*ERROR*");
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 4, 10, receive_bank_filename); lcd.show(1, 3, 10, receive_bank_filename);
} }
if (LCDML.FUNC_loop()) // ****** LOOP ********* if (LCDML.FUNC_loop()) // ****** LOOP *********
@ -4754,7 +4754,7 @@ void UI_func_sysex_receive_bank(uint8_t param)
if (!get_bank_name(bank_number, receive_bank_filename, sizeof(receive_bank_filename))) if (!get_bank_name(bank_number, receive_bank_filename, sizeof(receive_bank_filename)))
strcpy(receive_bank_filename, "*ERROR*"); strcpy(receive_bank_filename, "*ERROR*");
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 5, 10, receive_bank_filename); lcd.show(1, 3, 10, receive_bank_filename);
break; break;
case 1: case 1:
yesno = !yesno; yesno = !yesno;
@ -4777,7 +4777,7 @@ void UI_func_sysex_receive_bank(uint8_t param)
if (!get_bank_name(bank_number, receive_bank_filename, sizeof(receive_bank_filename))) if (!get_bank_name(bank_number, receive_bank_filename, sizeof(receive_bank_filename)))
strcpy(receive_bank_filename, "*ERROR*"); strcpy(receive_bank_filename, "*ERROR*");
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 4, 10, receive_bank_filename); lcd.show(1, 3, 10, receive_bank_filename);
break; break;
case 1: case 1:
yesno = !yesno; yesno = !yesno;
@ -4895,10 +4895,10 @@ void UI_func_sysex_send_bank(uint8_t param)
lcd.print(F("MIDI Send Bank")); lcd.print(F("MIDI Send Bank"));
if (!get_bank_name(configuration.performance.bank[selected_instance_id], bank_name, sizeof(bank_name))) if (!get_bank_name(configuration.performance.bank[selected_instance_id], bank_name, sizeof(bank_name)))
strncpy(bank_name, "*ERROR*", sizeof(bank_name)); strncpy(bank_name, "*ERROR*", sizeof(bank_name));
lcd.show(1, 3, 1, "["); lcd.show(1, 2, 1, "[");
lcd.show(1, 15, 1, "]"); lcd.show(1, 14, 1, "]");
lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]); lcd.show(1, 0, 2, configuration.performance.bank[selected_instance_id]);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
} }
if (LCDML.FUNC_loop()) // ****** LOOP ********* if (LCDML.FUNC_loop()) // ****** LOOP *********
@ -4917,7 +4917,7 @@ void UI_func_sysex_send_bank(uint8_t param)
if (!get_bank_name(bank_number, bank_name, sizeof(bank_name))) if (!get_bank_name(bank_number, bank_name, sizeof(bank_name)))
strcpy(bank_name, "*ERROR*"); strcpy(bank_name, "*ERROR*");
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
} }
else if (LCDML.BT_checkEnter() && encoderDir[ENC_R].ButtonShort()) else if (LCDML.BT_checkEnter() && encoderDir[ENC_R].ButtonShort())
{ {
@ -5008,9 +5008,9 @@ void UI_func_sysex_send_voice(uint8_t param)
lcd.setCursor(0, 0); lcd.setCursor(0, 0);
lcd.print(F("MIDI Send Voice")); lcd.print(F("MIDI Send Voice"));
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
lcd.show(1, 2, 2, " ["); lcd.show(1, 2, 1, "[");
lcd.show(1, 14, 1, "]"); lcd.show(1, 13, 1, "]");
} }
if (LCDML.FUNC_loop()) // ****** LOOP ********* if (LCDML.FUNC_loop()) // ****** LOOP *********
@ -5032,7 +5032,7 @@ void UI_func_sysex_send_voice(uint8_t param)
strcpy(bank_name, "*ERROR*"); strcpy(bank_name, "*ERROR*");
lcd.show(1, 0, 2, bank_number); lcd.show(1, 0, 2, bank_number);
lcd.show(1, 4, 10, bank_name); lcd.show(1, 3, 10, bank_name);
break; break;
case 1: // Voice selection case 1: // Voice selection
if (LCDML.BT_checkDown() && voice_number < MAX_VOICES - 1) if (LCDML.BT_checkDown() && voice_number < MAX_VOICES - 1)
@ -5045,7 +5045,7 @@ void UI_func_sysex_send_voice(uint8_t param)
strncpy(voice_name, "*ERROR*", sizeof(voice_name)); strncpy(voice_name, "*ERROR*", sizeof(voice_name));
lcd.show(1, 0, 2, voice_number + 1); lcd.show(1, 0, 2, voice_number + 1);
lcd.show(1, 4, 10, voice_name); lcd.show(1, 3, 10, voice_name);
break; break;
} }
} }
@ -5062,7 +5062,7 @@ void UI_func_sysex_send_voice(uint8_t param)
strncpy(voice_name, "*ERROR*", sizeof(voice_name)); strncpy(voice_name, "*ERROR*", sizeof(voice_name));
lcd.show(1, 0, 2, voice_number + 1); lcd.show(1, 0, 2, voice_number + 1);
lcd.show(1, 4, 10, voice_name); lcd.show(1, 3, 10, voice_name);
break; break;
case 2: case 2:
File sysex; File sysex;

@ -755,13 +755,18 @@ The Info menu gives some information about the used version and the SD card.
The sound generation (msfa) from the free VST-plugin Dexed. So you can use Dexed as MIDI SYSEX editor or you can use sounds programmed with Dexed on MD. For the original Dexed/msfa software take a look at [Dexed on Github](https://github.com/asb2m10/dexed) and [Music Synthesizer for Android on Github](https://github.com/google/music-synthesizer-for-android). The sound generation (msfa) from the free VST-plugin Dexed. So you can use Dexed as MIDI SYSEX editor or you can use sounds programmed with Dexed on MD. For the original Dexed/msfa software take a look at [Dexed on Github](https://github.com/asb2m10/dexed) and [Music Synthesizer for Android on Github](https://github.com/google/music-synthesizer-for-android).
### Editing the voices ### Editing voice presets
As mentioned before: you can use external editor software for MIDI SYSEX editing of MD voice presets. Here is a collection of freely available editors: As mentioned before: you can use external editor software for MIDI SYSEX editing of MD voice presets. Here is a collection of freely available editors:
* (https://www.thisdx7cartdoesnotexist.com/) - not really an editor but a system which generates a bank of voice presets with a KI behind. The names of the voice presets are mostly not readable at the time of writing, but the sounds were not bad. * https://www.thisdx7cartdoesnotexist.com/
* (https://dx7.vstforx.de/) - an online editor inside the browser, tested with Google Chrome or Chromium. * not really an editor but a system which generates a bank of voice presets with a KI behind. The names of the voice presets are mostly not readable at the time of writing, but the sounds were not bad.
* (https://synthmata.com/volca-fm/) - also an online editor whic was written for Volca-FM but also works for Dexed/MD. * https://dx7.vstforx.de/
* an online editor inside the browser, tested with Google Chrome or Chromium.
* https://synthmata.com/volca-fm/
* also an online editor whic was written for Volca-FM but also works for Dexed/MD.
Another way of editing voice presets is to use an editor like Edisyn. For download and install instructions read the manual at https://github.com/eclab/edisyn .
<div style="page-break-after: always"></div> <div style="page-break-after: always"></div>

@ -34,8 +34,8 @@ ${LCDIMG} --baseimg Preset_Setting --line1 "Overwrite%question_mark%" --line2 "%
${LCDIMG} --baseimg Preset_Push --line1 "Overwrite%question_mark%" --line2 "%bracket_open%YES%bracket_close%" --target images/10_SaveVoice_6.jpg ${LCDIMG} --baseimg Preset_Push --line1 "Overwrite%question_mark%" --line2 "%bracket_open%YES%bracket_close%" --target images/10_SaveVoice_6.jpg
${LCDIMG} --baseimg Volume_Push --line1 "Overwrite%question_mark%" --line2 "Canceled" --target images/10_SaveVoice_7.jpg ${LCDIMG} --baseimg Volume_Push --line1 "Overwrite%question_mark%" --line2 "Canceled" --target images/10_SaveVoice_7.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "%bracket_open%76%bracket_close% STEPH2" --target images/10_BankUpload_1.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "76%bracket_open%STEPH2 %bracket_close%" --target images/10_BankUpload_1.jpg
${LCDIMG} --baseimg Preset_Push --line1 "MIDI Recv Bank" --line2 "%bracket_open%73%bracket_close% BELL04" --target images/10_BankUpload_2.jpg ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Recv Bank" --line2 "73%bracket_open%BELL04 %bracket_close%" --target images/10_BankUpload_2.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "Overwrite%colon% %bracket_open%NO %bracket_close%" --target images/10_BankUpload_3.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "Overwrite%colon% %bracket_open%NO %bracket_close%" --target images/10_BankUpload_3.jpg
${LCDIMG} --baseimg Preset_Push --line1 "MIDI Recv Bank" --line2 "Overwrite%colon% %bracket_open%YES%bracket_close%" --target images/10_BankUpload_4.jpg ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Recv Bank" --line2 "Overwrite%colon% %bracket_open%YES%bracket_close%" --target images/10_BankUpload_4.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "%bracket_open%%B_inv%ELL94 %bracket_close%" --target images/10_BankUpload_5.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Recv Bank" --line2 "%bracket_open%%B_inv%ELL94 %bracket_close%" --target images/10_BankUpload_5.jpg
@ -59,12 +59,12 @@ ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Recv Bank" --line2 " BELL95 %b
${LCDIMG} --line1 "MIDI Recv Bank" --line2 "Waiting..." --target images/10_BankUpload_15.jpg ${LCDIMG} --line1 "MIDI Recv Bank" --line2 "Waiting..." --target images/10_BankUpload_15.jpg
${LCDIMG} --baseimg Volume_Push --line1 "MIDI Recv Bank" --line2 "Canceled" --target images/10_BankUpload_16.jpg ${LCDIMG} --baseimg Volume_Push --line1 "MIDI Recv Bank" --line2 "Canceled" --target images/10_BankUpload_16.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Bank" --line2 "%bracket_open%54%bracket_close% BRASS3" --target images/10_BankSend_1.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Bank" --line2 "54%bracket_open%BRASS3 %bracket_close%" --target images/10_BankSend_1.jpg
${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Bank" --line2 "Sending Ch. 4" --target images/10_BankSend_2.jpg ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Bank" --line2 "Sending Ch. 4" --target images/10_BankSend_2.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Voice" --line2 "%bracket_open%65%bracket_close% CHOIR01" --target images/10_VoiceSend_1.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Voice" --line2 "65%bracket_open%CHOIR01 %bracket_close%" --target images/10_VoiceSend_1.jpg
${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Voice" --line2 "%bracket_open%65%bracket_close% CHOIR01" --target images/10_VoiceSend_2.jpg ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Voice" --line2 "65%bracket_open%CHOIR01 %bracket_close%" --target images/10_VoiceSend_2.jpg
${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Voice" --line2 "%bracket_open%06%bracket_close% CH0R 3 A" --target images/10_VoiceSend_3.jpg ${LCDIMG} --baseimg Preset_Setting --line1 "MIDI Send Voice" --line2 "06%bracket_open%CH0R 3 A%bracket_close%" --target images/10_VoiceSend_3.jpg
${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Voice" --line2 "Sending Ch. 16" --target images/10_VoiceSend_4.jpg ${LCDIMG} --baseimg Preset_Push --line1 "MIDI Send Voice" --line2 "Sending Ch. 16" --target images/10_VoiceSend_4.jpg
${LCDIMG} --line1 "1.0.0%sign-minus%3.6FX%sign-minus%16" --line2 "SD2 FAT32 29GB" --target images/10_Info_1.jpg ${LCDIMG} --line1 "1.0.0%sign-minus%3.6FX%sign-minus%16" --line2 "SD2 FAT32 29GB" --target images/10_Info_1.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Loading…
Cancel
Save