Hello,
I’m about to purchase a new MODX+, but before I want to make sure that I do understand some details when playing back MIDI songs, which is probably my main use case with the device.
I currently own an old PSR-740, and I’m rather experienced with MIDI XG programming. But with this background some concepts of the MODX+ are new to me and I try to adapt the way I use my PSR to the possibilities of the MODX+.
So, basically what I would like to do is the following: I have programmed loads of MIDI (XG) songs that I want to load into the MODX+ and playback together with added live play. The added play I want to automate as much as possible, as follows:
- switch between different (multiple) PARTs in different sections of the song
- automated events like CC, Pitch Bend that affect the live played parts
From what I learned so far from several tutorials etc. this breaks down to the following questions:
1. As far as I can see I can switch between the different (potentially multiple) PARTs to be played live via the SCENE functionality of the MODX+: Just link the MIDI song with the performance to be used, define different SCENEs with the respective KBD CTRL switched on/off. And via proper MIDI command I can automate the switching between SCENEs (address 30 4C 00).
The question is now: Imagine for example, during measures 1-4 of the song I switched to a SCENE where PART 1 and 2 have KBD CTRL set to on (i.e. these PARTs will be played live). But as the loaded MIDI file is „complete“, it also contains Note values in measures 1-4 (the ones that should be replaced by the live play). How can I achieve that these Note events will not be send to the sound generator? Of course I could delete them in the MIDI file, or set their velocity to 0, but maybe there are „smoother“ ways like special MIDI commands? (PS: What I would need is something complementary to the „Local Control“ command.)
2. The described method should work for PART 1-8, where KBD CTRL is available (which is used in SCENEs and SCENEs are switched via MIDI commands). But can I also select (single) PARTs from 9-16 to play live? I understand that this is in principle possible for a PERFORMANCE if I „select a PART“ (as mentioned in the manuals), but I’m not sure what this means exactly and how this can be translated into a MIDI command. Is this related to MIDI command „Part Switch“ at address 31 0p 16?
3. This question is maybe even more trivial, and only due to my lack of understanding the PERFORMANCE and PART concept of the MODX+: Let’s use the same example as above for illustration (during measures 1-4 PART 1 and 2 have KBD CTRL set to on). Additionally, the MIDI file contains some CC events on Channel 1 and 2 for measures 1-4, i.e. to apply a filter sweep. Now, I only want to play the Note events via the Keyboard, but the CC events shall be added via the MIDI file played back („automated control“). Is this simply the standard behaviour of the MODX+ MIDI song playback function? Because I have learned that PART x is by default linked to Channel x.
Thank you very much, first of all for reading this long-ish message, and also for helping me with this.
MODX+ is not an XG device - so MIDI playback will be approximate depending on how much you lean into XG specifics.
Anything you don't want MODX+ to "play" from the MIDI file should be deleted offline before loading. You're going to want to edit your MIDI files to represent exactly what you do want sent to the tone generator. I would just remove the notes and/or control messages altogether rather than setting velocities to 0 or similar. There's not a reason to have the MIDI traffic of "null" messages.
I'm not aware of a MIDI command to select a Part.
If you have the keyboard in multi-channel MIDI mode then your MIDI file will have all messages directed to the Part which matches the MIDI channel number. There are a few "global" messages that would apply to all Parts.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
Thanks for your answer, I think it is clearer to me now.
Nevertheless, there are some more questions related to MIDI programming for the MODX+:
1. What does the "Part Switch" MIDI command (address 31 0p 16) do to the PART p? Does it "select" the PART, so that it can be played via the keyboard? (There is a similar command "Element Switch" (address 41 ep 00) which I guess does switch ELEMENT e for PART p, in the sense of muting it. But for a PART there is also a command "Mute Switch", so "Part Switch" must do something different than muting the PART.)
2. How does the Bank Select work for a single PART (MSB 63)? I have read this article:
https://www.yamahasynth.com/learn/montage/zone-master-faq-mastering-montage
by Bad Mister, in particular the answer to FAQ "On what MIDI Channel is the MONTAGE when MIDI I/O Mode = Multi?" is very helpful, but one detail still remains open to me:
"When you want to recall an individual Part within the current Performance the MSB/LSB will begin with 063 (channel-by-channel)"
So I send a Bank Select + PC message on Channel p, then the voice for PART p in the current PERFORMANCE will be changed, but with which voice? Of course with one of the PERFORMANCE with the given MSB/LSB/PC number, but from this PERFORMANCE always the voice from PART p? So this MIDI event replaces PART p from the current PERFORMANCE with an other PERFORMANCE's PART p? This means it is not possible to load PART q from PERFORMANCE x to PART p (of the current PERFORMANCE)?
Thanks again in advance!
Thanks for the explanation. Makes sense, even it is a bit limiting. (BTW, description on p. 190 is not clear in this respect.)
Any opinion on question #1?
1. What does the "Part Switch" MIDI command (address 31 0p 16) do to the PART p?
This doesn't select the Part. It's "switch" as in "on off" (like a light switch). Same for elements.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
Yeah, that’s why I’m also wondering what it does. It should have any correspondent in the user interface of the synth?
Maybe somebody can try this out?
When you turn a Part off it removes the Part from the HOME screen and replaces it with a [+] indicating the slot is free to reuse. You can re-enable (switch back on) the Part after disabling and all of the other settings before the disable will still be valid. Turning off a Part doesn't "erase" the previous settings.
You cannot turn Part 1 off since it is the "Anchor" and plays by different rules. There must always be at least one Part (Part 1) in every Performance.
I'm not sure which document's page 190 you're referring to. I looked at the MODX+ reference manual and MODX+ data list but didn't see anything that would match up with what's discussed.
There's a table on Page 187 of the MODX+ Data List
https://usa.yamaha.com/files/download/other_assets/5/1583935/modx_plus_en_dl_a0.pdf
That said - the documentation is light here. "Single Part" means Part 1 of the given Performance and the replaced Part in the current Performance that gets this Part replaced is indicated with the PC (PC=00 Part 1 ... PC=0F Part 16). "Multi Part" means the entire Performance is replaced. I always use PC=00 for Multi-Part.
Since you have your MIDI file playing possibly multiple Parts - I would probably place those on Parts 9-16. Use this area for the MIDI playback rather than for live playing. This would free up Parts 1-8 for live playing. You can still use the common assignable knobs to control say cutoff (or/and any other assignable parameter) for Parts 9-16 (several Parts at a time with one knob or one at a time).
Wanting to select single Parts (9-16) with MIDI paints you into a corner.
EDIT: corrected typo.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
You're right - I see it now. I'm so accustomed to the other chart my eyes deceived me.
Current Yamaha Synthesizers: Montage Classic 7, Motif XF6, S90XS, MO6, EX5R
Thanks to all your explanations, helped me a lot!
Have a merry Christmas everyone!