Just for note, it’s also just as weird considering when one makes a mental mnemonic of program change control CC0/CC32 -‘ala’ YAMAHA/XG, and then later considering it as 14bit. We generally thing of CC0 as being our program of 1-128 - but what to do with CC32? Do we now all go with 14bit program numbers?
Someone at Yamaha gave this a bit a thought and decided ‘no - we’ll consider CC32 to be a sort of specialization pre-select’ in our documentation. In that way, we still think of CC0 program changes as as being a 7bit value, and CC32 being a specialty or variant select such as KSP, stereo samples, and so on. This was a great solution that worked well with what Roland had started with CC0, and intelligently expanded it - Treat the values as separate, but related.
But with all that, Cubase sits on the fence, still today. If you use a midi port without a known device, it’s Bank/Program as displayed in the Inspector. If you have use a defined MIDI device, it’s another matter altogether. A defined midi device, if it has a program table is treated as a single datum, albeit labeled with a program name.
As a programmer, I do ‘get’ it. In reality, all program changes are 14 bit, despite how we mnemonically treat them. But it was a bit of a culture change, coming over from from Cakewalk back in 2018 (the great migration?). Cakewalk had also treated a program as being a tuple (two 7 bits datums), not a singleton 14 bit value.
I keep a YAMAHA MU100 and its original manuals here at home in my rig. I consider it my MIDI 1.0 ‘rosetta stone.’ It could and still does polyphonic aftertouch, back in the day!
*****And now back to our regularly scheduled thread…
Postscript, and beating that horse one more time:
When I mentioned Cakewalk treated bank/programs as a tuple, note that the bank had a name there as well. Therefore if you think about it, every program had two names, just like people a bank name and a program name. You could reference a sound by it program number or name, (1-128), but to be precise you needed to also specify it’s bank number (1-128) or name. Treating both names as one, or in the numeric case as single 14bit number, is akin to using someone’s full name, versus just their name. Which to use depends on context. In MIDI 1.0 we generally just used the the patch name as equivalent to the program name, but in the context of some bank. Cakewalk mere ‘formalized’ it (like a full name ) so both bank and program text were always displayed.





