|
Post by espiegel123 on Aug 28, 2019 21:20:17 GMT
Do the input and output rules in MDP share the global array and do they have their own IJKL arrays or are they all shared?
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Aug 28, 2019 21:27:44 GMT
Hi espiegel123 , G is shared and I-L are separate (pretty sure on this, but for 100% certainty best to check with Dan if you notice this is not the case) Regards, Nic.
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Aug 28, 2019 21:29:08 GMT
Actually I'm 100% sure come to think about it.
|
|
|
Post by espiegel123 on Aug 28, 2019 22:15:28 GMT
Actually I'm 100% sure come to think about it. To. Confirms my finding. I have a question about input rules. I want to look for an incoming sysex msg and translate It to my own internal sysex. How do I pass on my translated message so that MDP?
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Aug 29, 2019 10:28:38 GMT
Hi espiegel123 , The message (M) array is read/write, so you can just use the ASS/MAT rules to change that array: # trap sysex message IF M0 == F0 12 34 # rewrite message ASS M1 = 56 78 MAT M4 = M4 / 2 ENDHowever, if your internal sysex is longer than 16 bytes, then you would need to to use a SND for the new message and block the original using XX = XX +B: # trap sysex message IF M0 == F0 12 34 # send different long sysex message SND F0 56 78 01 02 03 04 05 06 07 08 0A 0B 0C +F SND 0D 0E 0F 10 11 12 13 14 15 F7 +F XX = XX +B ENDThat '+F' flag (force) is required to split a long message. Regards, Nic.
|
|