Re: Bank dump format
Posted: Wed Mar 15, 2023 11:59 am
Hi all, thanks for this, but I can't seem to use it to decode a Voyager sysex bank. A sysex sysex bank is a single sysex message of 18732 bytes (exluding F0 and F7). It you substract the first 4 bites for ID, and command (04 01 deice 01) you get 18728 bytes for patch info. If you divide this number by 128 (the number of available patches in a bank) you get 146.3 bytes.. already strange that's not a round number of bytes.RL wrote: ↑Sun Apr 10, 2016 4:48 am Hi music.maker,
there is an additional byte (the preset number) in the single preset dump. The System Exclusive format sends 7 bits instead 8 bits cause bit 7 always must be zero. And that means bit seven of the preset number is on position bit 0 of the second sysex byte (the first preset data byte).
Have fun,
Rudi
Each patch, without header or patch number info, it's supposed to be 143 bytes long according to the sysex spec (http://www.moogmusic.de/SysEx.pdf), so the total patch info in a bank should be 18304 bytes long, short 428 bytes of the actual bank data.
If you add 1 byte per patch for patch number (you don't need 8 bits as patch numbers only go up to 128, so 1 "sysex" byte of 7 bits should suffice), a bank should use 18,432 bytes, still short of the total number by 296 byes. Even adding 1 byte + 1 bit, or 2 bytes for patch numbers, the total is still short (280 and 40 bytes short).
I've tried too many combinations, decoding different subgroups of the the bank data according to www.moogmusic.de/SysEx.pdf, with strange results, but no success.
Does anyone know how to split the 18728 bytes of a Voyager sysex bank into 128 sysex patches which follow the sysex decoding map from here www.moogmusic.de/SysEx.pdf? Or if we should use a different mapping to decode a sysex bank?
Thanks again