From c3532cbb326f9b79a1f7ffad582f234662a1ce74 Mon Sep 17 00:00:00 2001 From: Holger Wirtz Date: Sun, 29 Sep 2019 11:16:21 +0200 Subject: [PATCH] Started to implement sysex voice upload. --- MicroDexed.ino | 25 +++++++ doc/one_sysex_data.txt | 165 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 190 insertions(+) create mode 100644 doc/one_sysex_data.txt diff --git a/MicroDexed.ino b/MicroDexed.ino index 319be03..59c0d01 100644 --- a/MicroDexed.ino +++ b/MicroDexed.ino @@ -654,6 +654,31 @@ void handleSystemExclusive(byte * sysex, uint len) Serial.print(F(", data_index = ")); Serial.println(data_index, DEC); #endif + } + else if (len == 163) + { + // 1 Voice bulk upload +#ifdef DEBUG + Serial.println(F("1 Voice bulk upload")); +#endif + + if ((sysex[3] & 0x7f) != 0) + { +#ifdef DEBUG + Serial.println(F("E: Not a SysEx voice bulk upload.")); +#endif + return; + } + + if (((sysex[4] << 7) | sysex[5]) != 0x9b) + { +#ifdef DEBUG + Serial.println(F("E: Wrong length for SysEx voice bulk upload (not 155).")); +#endif + return; + } + + } #ifdef DEBUG else diff --git a/doc/one_sysex_data.txt b/doc/one_sysex_data.txt new file mode 100644 index 0000000..2357215 --- /dev/null +++ b/doc/one_sysex_data.txt @@ -0,0 +1,165 @@ +SYSEX-Data[163] + +240 +67 +0 +0 +1 +27 +73 +75 +5 +0 +99 +99 +92 +0 +49 +0 +0 +0 +0 +7 +0 +0 +84 +0 +2 +0 +12 +77 +54 +0 +47 +98 +98 +36 +0 +49 +0 +0 +0 +0 +2 +0 +5 +99 +0 +2 +0 +3 +99 +74 +10 +0 +98 +98 +36 +0 +98 +0 +0 +0 +0 +5 +0 +1 +84 +0 +2 +0 +10 +83 +15 +10 +47 +99 +92 +0 +0 +49 +0 +0 +0 +0 +0 +0 +0 +99 +0 +2 +0 +10 +64 +38 +6 +0 +99 +92 +99 +0 +49 +0 +0 +0 +0 +7 +0 +1 +87 +0 +2 +1 +6 +0 +33 +0 +47 +0 +99 +85 +0 +98 +0 +0 +0 +0 +0 +0 +0 +50 +0 +17 +37 +7 +84 +95 +95 +60 +50 +50 +50 +50 +4 +6 +0 +30 +0 +11 +0 +0 +0 +2 +12 +83 +89 +78 +84 +72 +32 +69 +78 +83 +50 +107 +247