Re: converting packed data formatted sysex data

I’m struggling with this too – if anyone has any pointers that’d be massively appreciated.

i’ve built a very basic patch editor for the synth – attached (which hopefully will be useful to some other people too, because frankly it was pretty boring to build!) To make it really useful I’d like to be able to load the edit buffer into it so I can see what my starting point is and to do that I need to turn the packed sysex into something more useful.

Here’s how the manual puts it
“Data is packed in 8 byte packets, with the MS bit stripped from 7 parameter bytes and packed into an eighth byte which is sent at the start of the 8 byte packet”

input data:

1 A7 A6 A5 A4 A3 A2 A1 A0
2 B7 B6 B5 B4 B3 B2 B1 B0
3 C7 C6 C5 C4 C3 C2 C1 C0
4 D7 D6 D5 D4 D3 D2 D1 D0
5 E7 E6 E5 E4 E3 E2 E1 E0
6 F7 F6 F5 F4 F3 F2 F1 F0
7 G7 G6 G5 G4 G3 G2 G1 G0

PACKED MIDI DATA:

1 00 G7 F7 E7 D7 C7 B7 A7
2 00 A6 A5 A4 A3 A2 A1 A0
3 00 B6 B5 B4 B3 B2 B1 B0
4 00 C6 C5 C4 C3 C2 C1 C0
5 00 D6 D5 D4 D3 D2 D1 D0
6 00 E6 E5 E4 E3 E2 E1 E0
7 00 F6 F5 F4 F3 F2 F1 F0
8 00 G6 G5 G4 G3 G2 G1 G0

So it’s a bit like a matrix transformation I guess. Anyone have any ideas on how I can stick the relevant byte from the first row into the first column of each of the subsequent rows?

Hex and sysex are pretty new to me. I’ve managed to pick up quite a bit from this thread
http://cycling74.com/forums/topic.php?id=14954
and Peter Elsea’s great guide here -
ftp://arts.ucsc.edu/pub/ems/maxtutors/advancedMax/Max&Sysex.pdf
Hopefully they’ll be helpful to others too

Apr 6, 2011 at 11:20pm #92123