Possible to combine multiple bytes in one single SysEx function?

Just wondering if it would be possible to combine multiple bytes in one single SysEx function.
Thing is, in a D-50 preset the following sequence of 5 bytes is repeated in about 250 different SysEx controls.

  "41",
  {
    "type": "function",
    "name": "getChannelByte"
  },
  "14",
  "12",
  "00",

Wouldn’t we be able to save memory, if we could combine all 5 bytes together in one single function? That way we could use the freed up memory to enrich the preset with other capabilities. If that is already possible , can someone show me?

Not near my E1 for a few days, but the way I would research it is to have each control call a central “send sysex to the D-50” function and pass it only the data that matters for each control. That central “send to D-50” function would wrap the info passed in with the standard 5 bytes and send it.

Things to research -

  • can this be only done with virtual functions for everything?
  • how to pass an array of bytes to another function?
  • if each control can send a different number of bytes, you’ll need to pass a length or something as well
  • is the added overhead of calling a function and passing data around still taking up a lot of room?

Just some quick thoughts

1 Like

makes sense… will try a POC later