OK, here we go.
I note the question was to produce different CCs, but the intent is to be able to switch states, so I did that by mapping the CC to program changes which is easy in Cantabile by using a filter. so hopefully this will achieve the “what” of what you want to do, if not the “how” of what you thinking of doing to achieve it.
This is what I did for playing Echoes in Welsh Floyd. I was switching rack states of my Hammond Rack, not song states, but the principle is the same.
So I have a “Yamaha Montage.cantabilerack” which I have zipped up and provided for you. Put this in any song where you want to detect the CC and have a binding react to it.
Yamaha Montage.zip (1.5 KB)
In my song (the mighty Echoes by Pink Floyd ) I have the rack as shown below
If you expand the rack (first highlight) you can see in the bottom highlight that the rack is quite simple and has two routes. The top one simply passes the MIDI data through unfiltered. The second route has a filter applied.
The filter is quite simple and is shown below
It takes the CC and remaps it from CC92 to Program changes in the range 0 to 8 . What the Montage produces on CC92 when you press the scene buttons is as follows, along with the corresponding program change produced by the rack.
Scene 1 is CC92, Value 0, which produces program change 0
Scene 2 is CC92, Value 16, which produces program change 1
Scene 8 is CC92, Value 112, which produces program change 7
In the song bindings I then have the following bindings with the relevant ones highlighted (you can also see I send a CC change to the Montage when I select the song to set the scene number)
You can see I have bindings from the program changes produced by the Yamaha Montage Rack to select states within my Hammond and Leslie Rack (VB3II and IK Leslie). If you wish to select song states instead then you simply need to change the Target to song state.
Hope that helps.