[sdiy] MIDI SYSEX message...

Neil Johnson neil.johnson71 at gmail.com
Mon Mar 30 23:52:20 CEST 2020


Jason Proctor wrote:
>
> On Mon, Mar 30, 2020 at 2:35 PM Gordonjcp <gordonjcp at gjcp.net> wrote:
> >
> > On Mon, Mar 30, 2020 at 12:50:33PM -0600, doug at synthark.com wrote:
> > > The first bit on all SysEx data bytes is always 0, so they range from 0x00
> > > to 0x7F.
> > >
> >
> > But then how would you tell what's a resumption of sysex data and what's running status?
>
> IIRC, only System Realtime messages can be interleaved inside a System
> Exclusive data stream. They are of a fixed length, so you know that
> the next data byte coming down the pipe is part of the Sys Ex payload.

Exactly.  Running status makes no sense in SysEx: once you start
sending a SysEx packet you keep sending data bytes until the end of
the packet.  As packet sizes tend to be rather larger than two bytes
it doesn't make sense to try to save the SysEx start byte by employing
running status.  Only the single-byte System Realtime messages can
appear in the midst of a SysEx message without interrupting it.  If
any status byte other than EOX (0xF7) appears then the SysEx transfer
is aborted, and it is up to the receiving device to decide what to do.

Neil



More information about the Synth-diy mailing list