Bc2000 (for the BCF2000 & BCR2000) group photo

Yahoo Groups archive

Bc2000 (for the BCF2000 & BCR2000)

Index last updated: 2026-04-28 23:16 UTC

Thread

New here - props and a question

New here - props and a question

2008-04-04 by toorglick

Greetings all! 

I'd like to that the forum creator, the members here and especially 
the folks who put together the BC script guides and the fellow who 
wrote BC Manager - the latter being incredibly useful and, I may say, 
generous!

Reason?  I love the BCR.  I've had mind for a week and I think 
without all of you I'd be banging my head against the wall.  Instead, 
I have those giggly "AHA!" moments that are what we all dream to have 
when we buy a new piece of gear (as opposed to the aforementioned 
head-banged-against-wall moments).

Anyway, the situation is thus:  I'm nearly finished with my preset 
for a Roland MKS-50.  In fact the preset is fundamentally finished 
and soon I will make an overlay (all of which I will zip up and 
upload to the file section when completed).  However, I'm trying to 
refine it so all but patch-level parameters are in the same group. 

In other words, I want to have all tone-level programming parameters 
available with group one, and then have group two contain the 
extras.  There are only THREE (3) parameters from the tone-level that 
I have to put in group 3 and if I could figure out how to make 
buttons increment I could move those out of group 3 and into group 1.

The only way to do this is via EASYPAR.  However, I haven't yet found 
a breakdown of EASYPAR that at least makes sense - the syntax, 
variables, etc.

I believe the syntax is EASYPAR {mode} {MIDI ch} {para #} {range low} 
{range high} {variable} - yes?

I can't get this to work as outlined in the Secrets PDF when using it 
on the MKS.  There are no MIDI-relative parameter numbers for tone-
editing.  Like, for example, to cycle through the wave shapes.

Did I miss a memo on EASYPAR, or am I pushing the BCR a little to far 
trying to make buttons increment in a sysex-only device?

Thanks!
Rich

Re: New here - props and a question

2008-04-05 by Mark van den Berg

--- In bc2000@yahoogroups.com, "toorglick" <toorglick@...> wrote:
toorglick wrote:
> I want to have all tone-level programming parameters 
> available with group one, and then have group two contain the 
> extras.  There are only THREE (3) parameters from the tone-level that 
> I have to put in group 3 and if I could figure out how to make 
> buttons increment I could move those out of group 3 and into group 1.
> 
> The only way to do this is via EASYPAR.  However, I haven't yet found 
> a breakdown of EASYPAR that at least makes sense - the syntax, 
> variables, etc.
> 
> I believe the syntax is EASYPAR {mode} {MIDI ch} {para #} {range low} 
> {range high} {variable} - yes?

Have you looked at the syntactic descriptions for .easypar in "BC MIDI
Implementation.pdf"? There's also a lot on various "increment" modes
(e.g. for ".easypar CC"), which might work if your device recognizes
Control Change messages.

> I can't get this to work as outlined in the Secrets PDF when using it 
> on the MKS.  There are no MIDI-relative parameter numbers for tone-
> editing.  Like, for example, to cycle through the wave shapes.
> 
> Did I miss a memo on EASYPAR, or am I pushing the BCR a little to far 
> trying to make buttons increment in a sysex-only device?

If your device only listens to SysEx messages (as opposed to channel
messages like CC), you can't use ".easypar"; instead you should use
".tx" ("custom output" in BC Manager).
But I can't quite fathom yet what you're exactly trying to do. Could
you specify what MIDI messages you exactly want to send to your MKS?
My guess is that the BCR can indeed do what you want.

Mark.

Re: New here - props and a question

2008-04-06 by rpcfender

Hi
You should check out Mark's fantastic pdf. It should answer all your
questions.

There is mention of how to use easypar with the increment to drive a
sysex message using tx in my article in the Wiki. (It does take a
while to get to the Wiki, at least here is Australia, so you will need
to be patient)

This is the only way I have been able to use increment with sysex.
It does mean that there is an extra message sent out, but you can use
a CC  message in the easypar that doesn't affect anything.

$button 1
  .showvalue on
  .easypar CC 01 100 4 0 increment 1
  .tx $F0 your sysex message   val chk-1 05 $F7

'val' is the value 0 to 4 in this case
'chk-1' is the checksum that Roland uses
'05' is the byte position in the sysex message to start the checksum
addition


  .easypar CC 01 100 4 0 increment 1
'CC' continious controller (Midi message type)
'01' channel
'100' the controller number
'4' max value
'0' min value  - note these are swapped when using increment
'1' the increment step size  - negative number and in goes backwards

Look forward to seeing the new preset.

All the best

Royce

Re: New here - props and a question

2008-04-08 by Mark van den Berg

--- In bc2000@yahoogroups.com, "rpcfender" <rpcfender@...> wrote:
> This is the only way I have been able to use increment with sysex.
> It does mean that there is an extra message sent out, but you can use
> a CC  message in the easypar that doesn't affect anything.
> 
> $button 1
>   .showvalue on
>   .easypar CC 01 100 4 0 increment 1
>   .tx $F0 your sysex message   val chk-1 05 $F7
> 
> 'val' is the value 0 to 4 in this case
> 'chk-1' is the checksum that Roland uses
> '05' is the byte position in the sysex message to start the checksum
> addition

Well, '05' should ONLY be used as the byte position to start the
checksum addition if the Roland "Model" specification is exactly 1
byte long: for a 2-byte model (e.g. my GS-10 has "00 63") this should
be '06'. I guess the very latest Roland model IDs are 3 bytes long
("00 00 xx") - for those it should of course be '07'.

Mark.

Re: New here - props and a question

2008-04-12 by toorglick

Thanks for the responses, I'll just sum up my response to the three I 
say here:

> Have you looked at the syntactic descriptions for .easypar in "BC MIDI
> Implementation.pdf"? There's also a lot on various "increment" modes
> (e.g. for ".easypar CC"), which might work if your device recognizes
> Control Change messages.

Yes, I'm not on that computer at the moment, however I downloaded all 
of the available PDFs I could.  Perhaps I couldn't wrap my head around 
what I was reading at the time.  A CC message will not work in this 
instance, read on...



> If your device only listens to SysEx messages (as opposed to channel
> messages like CC), you can't use ".easypar"; instead you should use
> ".tx" ("custom output" in BC Manager).
> But I can't quite fathom yet what you're exactly trying to do. Could
> you specify what MIDI messages you exactly want to send to your MKS?
> My guess is that the BCR can indeed do what you want.
> 


Yes, for whatever reason, and it's most likely my fault, I couldn't get 
the TX editor to spit out sysex that I could upload to the BCR.  The 
other issue was that the functions I am looking at will not respond to 
CC messages, hence the reason I was stuck trying to parse the .easypar 
syntax.

I want the buttons to cycle through the available waveform choices 
since you can only choose one at a time, and there aren't many 
choices.  So, to be more explicit, I want to create SAW WAVE, PULSE 
WAVE, and SUB OSC WAVE buttons to select the waveform for each type.

I'll take a look at the material again to see what I may have missed.  
In the meantime the solution I have works, I just think it could be a 
little more efficient.  I'm actually going to upload the sysex and 
overlay here shortly and when I get a chance see if I can refine it 
further.

Regards,
Rich

Re: New here - props and a question

2008-04-13 by rpcfender

Hi Rich,

> A CC message will not work in this instance, read on...

My original solution was to use the .tx sysex with an easypar incrementing button as I thought that this was the only possible solution, but Mark and I found a new word incval.

Mark cleverly worked out that it is used with the .mode statement.
One step closer to understand this machine. Thanks Mark.


Mark can tell how to do it in his editor, but the script to assign it to button 33 (top left button)

$button 33
.showvalue on ; ; ;shows the value in the display
.minmax 0 4
.mode incval 1
.tx $F0 wave select sysex message $F7 ; here is the stuff for the Roland

Your sysex message would be
Roland header
Device number etc
Parameter number
The BC specifice word val
Most Roland gear needs a checksum in the sysex. To do that you put
chk-1
and the starting byte for the checksum in my case byte 6

For my Fantom X
$button 33
.showvalue on ; ; ;shows the value in the display
.minmax 0 4 ; ; start at 0 count to 4 and loop back to 0 again
.mode incval 1 ; ; ; increment by 1 (you can use negative numbers to count backwards)
.tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val cks-1 6 $F7

; val7.13 is the high byte in a 14 bit number that the Fantom uses. val is the lower byte


I hope that helps.
If you are still having problems type out a couple of the sysex messages you want the BC to send and I'll write the code for you

All the best
Royce

Re: New here - props and a question

2008-04-13 by toorglick

Thanks Royce.  That looks like it may be the ticket. I'll give it a 
go at some point in the near future.  I just uploaded the PG300 
emulation I made - it works fine for now, but could stand the tweaks 
I laid out earlier.

But for now I'm having too much fun with my knobs!  



--- In bc2000@yahoogroups.com, "rpcfender" <rpcfender@...> wrote:
>
> Hi Rich,
> 
> > A CC message will not work in this  instance, read on...
> 
> My original solution was to use the .tx sysex  with an easypar
> incrementing button as I thought that this was the only possible
> solution, but Mark and I found a new word incval.
> 
> Mark cleverly worked out that it is used with the .mode statement.
> One step closer to understand this machine. Thanks Mark.
> 
> 
> Mark can tell how to do it in his editor, but the script to assign 
it to
> button 33 (top left button)
> 
> $button 33
> .showvalue on                                              ;shows 
the
> value in the display
> .minmax 0 4
> .mode incval 1
> .tx $F0 wave select sysex message $F7 ; here is the stuff for the 
Roland
> 
> Your sysex message would be
> Roland header
> Device number etc
> Parameter number
> The BC specifice word val
> Most Roland gear needs a checksum in the sysex. To do that you put
> chk-1
> and the starting byte for the checksum in my case byte 6
> 
> For my Fantom X
> $button 33
> .showvalue on                                              ;shows 
the
> value in the display
> .minmax 0 4
> ; start at 0 count to 4 and loop back to 0 again
> .mode incval 1                                              ; 
increment
> by 1 (you can use negative numbers to count backwards)
> .tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val  cks-1 
6 $F7
> 
> ; val7.13 is the high byte in a 14 bit number that the Fantom uses. 
val
> is the lower byte
> 
> 
> I hope that helps.
> If you are still having problems type out a couple of the sysex 
messages
Show quoted textHide quoted text
> you want the BC to send and I'll write the code for you
> 
> All the best
> Royce
>

Re: New here - props and a question

2008-04-13 by rpcfender

Hi Rich,
I'm glad you and your knobs are working fine.

I have just noticed that the BC doesn't send back the .mode incval
command and instead it sends back .mode down.
So save the patch from the editor and do not depend on getting the
return patch from the BC. This is like the checksum statements in .tx

Royce
Show quoted textHide quoted text
>
> Thanks Royce.  That looks like it may be the ticket. I'll give it a 
> go at some point in the near future.  I just uploaded the PG300 
> emulation I made - it works fine for now, but could stand the tweaks 
> I laid out earlier.
> 
> But for now I'm having too much fun with my knobs!  
> 
> 
> 
> --- In bc2000@yahoogroups.com, "rpcfender" <rpcfender@> wrote:
> >
> > Hi Rich,
> > 
> > > A CC message will not work in this  instance, read on...
> > 
> > My original solution was to use the .tx sysex  with an easypar
> > incrementing button as I thought that this was the only possible
> > solution, but Mark and I found a new word incval.
> > 
> > Mark cleverly worked out that it is used with the .mode statement.
> > One step closer to understand this machine. Thanks Mark.
> > 
> > 
> > Mark can tell how to do it in his editor, but the script to assign 
> it to
> > button 33 (top left button)
> > 
> > $button 33
> > .showvalue on                                              ;shows 
> the
> > value in the display
> > .minmax 0 4
> > .mode incval 1
> > .tx $F0 wave select sysex message $F7 ; here is the stuff for the 
> Roland
> > 
> > Your sysex message would be
> > Roland header
> > Device number etc
> > Parameter number
> > The BC specifice word val
> > Most Roland gear needs a checksum in the sysex. To do that you put
> > chk-1
> > and the starting byte for the checksum in my case byte 6
> > 
> > For my Fantom X
> > $button 33
> > .showvalue on                                              ;shows 
> the
> > value in the display
> > .minmax 0 4
> > ; start at 0 count to 4 and loop back to 0 again
> > .mode incval 1                                              ; 
> increment
> > by 1 (you can use negative numbers to count backwards)
> > .tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val  cks-1 
> 6 $F7
> > 
> > ; val7.13 is the high byte in a 14 bit number that the Fantom uses. 
> val
> > is the lower byte
> > 
> > 
> > I hope that helps.
> > If you are still having problems type out a couple of the sysex 
> messages
> > you want the BC to send and I'll write the code for you
> > 
> > All the best
> > Royce
> >
>

Re: New here - props and a question

2008-04-13 by Mark van den Berg

--- In bc2000@yahoogroups.com, "rpcfender" <rpcfender@...> wrote:
> I have just noticed that the BC doesn't send back the .mode incval
> command and instead it sends back .mode down.

Correct! Incval is simply a red herring, a dead parrot, or whatever
you want to call it... (I think I mentioned this in an earlier email
to you, unless I forgot to send it or whatever.) Anyway, to be
completely clear on this point: we can forget about the "incval"
parameter - it doesn't work. Sorry about the confusion.

Mark.

Re: New here - props and a question

2008-04-13 by rpcfender

Hi Mark,
> > I have just noticed that the BC doesn't send back the .mode incval
> > command and instead it sends back .mode down.
>
> Correct! Incval is simply a red herring, a dead parrot, or whatever
> you want to call it... (I think I mentioned this in an earlier email
> to you, unless I forgot to send it or whatever.) Anyway, to be
> completely clear on this point: we can forget about the "incval"
> parameter - it doesn't work. Sorry about the confusion.

No, I disagree. incval is very useful.
It gets rid of the need to have the extra CC midi message when you want to increment sysex on a button.

$button 33
.showvalue on
;shows the value in the display
.easypar CC 1 102 2 0 increment 1 ; redundant Midi message
.tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val cks-1 6 $F7

gives
$B0 102 1
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1 45 6 $F7
$B0 102 2
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 2 46 6 $F7
$B0 102 0
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 0 44 6 $F7
$B0 102 1
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1 45 6 $F7


now is

$button 33
.showvalue on ;shows the value in the display
.minmax 0 4 ; start at 0 count to 4 and loop back to 0 again
.mode incval 1 ; increment by 1 (you can use negative numbers to count backwards)
.tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val cks-1 6 $F7


$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1 45 6 $F7
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 2 46 6 $F7
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 0 44 6 $F7
$F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1 45 6 $F7

which is much better
The fact that the BC won't send it back is a pain, but it is great that we can get rid of the useless extra easypar


Royce

Re: New here - props and a question

2008-04-13 by rpcfender

Sorry the minmax in the second example should be
.minmax 0 2

> $button 33
> .showvalue on                                              ;shows the
> value in the display
> .minmax 0 4                                                  ; start
at
> 0 count to 4 and loop back to 0 again
> .mode incval 1                                              ;
increment
> by 1 (you can use negative numbers to count backwards)
> .tx $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 val7.13 val  cks-1 6
$F7
>
>
> $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1  45 6 $F7
> $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 2  46 6 $F7
> $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 0  44 6 $F7
> $F0 $41 $10 $00 $6B $12 $10 $00 $27 $04 $79 0 1  45 6 $F7
>
> which is much better
> The fact that the BC won't send it back is a pain, but it is great
that
Show quoted textHide quoted text
> we can get rid of the useless extra easypar
>
>
> Royce
>

Re: New here - props and a question

2008-04-13 by Mark van den Berg

--- In bc2000@yahoogroups.com, "rpcfender" <rpcfender@...> wrote:
> No, I disagree. incval is very useful.
> The fact that the BC won't send it back is a pain, but it is great that
> we can get rid of the useless extra easypar

You're right of course. Since the BCF/BCR don't RETURN incval
correctly (fie on you, Thomas Zint!), I simply assumed it didn't WORK
either.

I can see YET another version of BC Manager, incorporating incval,
coming up in the near future...

I was already working on the new version of "BC MIDI
Implementation.pdf", so I'll just add "incval" to the list of about 40
other things I need to add to that document. I'd better make myself
another very big pot of coffee...

Mark.

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.