OK. first you need a Hex/decimal conversion table or calculator.
Sysex messages don't require more than nine inputs. In fact we only need five max.: channel (one byte, could in fact be one nibble), parameter number (2 bytes, low and high) and parameter value (2 bytes, low and high). All the other data is fixed and never changes!
If you take a look at the patch you posted, the "sxformat" box is probably the only format we'll ever need:
240 is hex F0, Sysex header, never changes.
67 and 120 are hex 43 & 78, Yamaha ID and sub ID, never changes.
then I have to understand what exactly the syntax of this box is, in particular the slashes...
I'll take a guess:
$i4 is the channel nr. since this value is never more than 16, the following 0 completes the byte
$i3 would be the the parameter nr. This value never goes over 99 dec.
the role of the 02 afterward escapes me... maybe completes the parameter nr., which should be a Word.
the following two are the parameter value Word, low-byte ($i2) and high-byte ($i1).
247 is Hex F7, Sysex footer, never changes.
Now regarding the layout I had not seen the Effects subwindow: that is great, now EVERYTHING we need layout-wise is already there!
I don't know if you spotted the "Test Window"... that could be extremely useful as it could hold a common structure for ALL the data we want to send. I suggest you extract the code to this one and post it.
You probably noticed that a number of values require some translation. In the EQ section, for example, the variable box gives a value of 0 to 60 but this has to be translated into a real-life value in Hz: this is done with an external look-up table called "Freq" in the MixdownCBX-D5 folder. Other variables are converted to real-life values by simple arithmetic operations. (look at page Add-8, the "step/table" column.)
that's all for now!
P.O.