Cubase Program Change Answers

An area for people to discuss Scope related problems, issues, etc.

Moderators: valis, garyb

Post Reply
Neil B

Post by Neil B »

Instead of replying to all of you who have had this problem I include below and answer to Cubase VST 5/32 being able to change programs on synths released under Pulsar 3.0.

Creamware have replied to my email regarding the problem of program changes.
You need to send a bank select message first.
I have experimented with this today and it works. I may be able to improve on this, to make it even easier, but this is what I have found at the moment.

1. Create a part in Cubase with the same midi channel as your Pulsar synth. I suggest that you set them to channel 1 for this test.
2. Open the inspector with the part highlighted.
3. In the pull down list box for the program change select either 0-127 or 1-128 - I need some more research time yet on this bit.
4. Type in your program number.
5. In the pull down list box for the bank select, tick only "Send MSB First".
6. Type in your Bank Number.
7. Now create another part and repeat 2-6 above using another program number and another bank select if you wish.

Note: I am unsure about the selection in point 5, but it works!
I am also going to try to insert a bank select command using List Edit (easier than the Inspector). I have tried it without success yet, using MSB (control change zero) and LSB (control change 32) and I'm still researching this.

I hope this is helpful to you and if any of you can improve on this message or know of better ways, please let me know.

Neil B
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Post by at0m »

Most Midi Devices use CC# OO and CC# 32 for bank and program changes, whereas:
CC#00=BankSelect, also called MSB or Most Significant Byte.
CC#32=¨ProgramSelect, also called LSB or Least Significant Byte.

Midi Values have a 128 range. Depending on the manufacturer, this can be expressed on the machine as 0-127 or 1-128. Cubase uses 0-127, which, on the controlled machine, will be automatically recognised according to it's 0-127 or 1-128 setting.
Pulsar uses even larger values, I think (ie. Bluesynth 'Factory1.0' Bank contains even programs 0-154, I think the extra programs (presets) will be only selectable via the Pulsar OS.
Some manufacturers, like Korg, have only 16programs per machine bank. However, preset1 of the second bank is, via midi, CC32#, value 17 instead of CC#00, value 01 & CC32#, value 1. The Korg MS2000 and Triton have 'virtual banks', but it uses 128 midi programs and no midi bank selection.

Anyone still following?

Ok, to answer your question :grin:, Pulsar can remote control presets 0-127, so not presets 128 and up. You can start with CC#00, 0 and CC#32, 0.
more has been done with less
https://soundcloud.com/at0m-studio
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Post by at0m »

MSB, LSB is also used as a combination of 2 CC# to create midi values larger than 127/128.
ie. MSBx and LSBy = 128*x + y
this enlarges MIDI value range to 128*128=16384

Happy Pulsyear :wink:

<font size=-1>[ This Message was edited by: atomic on 2001-12-28 10:10 ]</font>
subhuman
Posts: 2573
Joined: Thu Mar 29, 2001 4:00 pm
Location: Galaxy Inside

Post by subhuman »

Hey excellent post. Maybe this should be in the Tips & Tricks section! :smile:
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Post by at0m »

more has been done with less
https://soundcloud.com/at0m-studio
Neil B

Post by Neil B »

Thanks for the tips - this helps a lot.
Would you advise in the inspector in Cubase therefore using the Bank Select:
1) Send MSB first?
2) Send only 1 Byte?
3) Send as program change?

And what would be the best way to do this in list editor, because I can't seem to make the Bank Select work in a part instead of in the inspector?

Happy New Year to you all out there
Neil B
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Post by at0m »

Send BankChange=CC#00=MSB to select preset bank.
Send ProgramChange=CC#32=LSB to select a preset.
Always send most significant byte first.
Like in PulsarOS GUI you would always select a bank or a pool before you select the preset.

You can send CC#00 and CC#32. On the midi monitor this would be displayed in sysex format (all midi is basically build up of sysex, HEX messages).
ie. channel 3 CC#00 value10 would be
B2 00 0A
center pan on channel 10 could be BA 0A 40

Luckily most devices and sequencers know these messages as controllers, which simplifies the job :grin:

Larger sysex strings, which imply more data will be F0-...-F7. The F0 F7 are start end end of string markers. As such, large amounts of data can be send, ie. Bulk dumps

:oops: got carried away

Here's what you'll have to set in Cubase Inspector:
Program change- select '0-127',
Bank select- Send MSB first.

I don't use Cubase Graphical Edit for that, I assign presets to parts.
User avatar
at0m
Posts: 4743
Joined: Sat Jun 30, 2001 4:00 pm
Location: Bubble Metropolis
Contact:

Post by at0m »

MidiMonitorII could help to see what you get in Pulsar.
more has been done with less
https://soundcloud.com/at0m-studio
Post Reply