Author Topic: Cubase Patch name Scripts for YAMAHA PSR A3000  (Read 2980 times)

0 Members and 1 Guest are viewing this topic.

Offline sara1975

Cubase Patch name Scripts for YAMAHA PSR A3000
« on: July 26, 2016, 09:51:39 AM »
Hi
Where can I find Cubase Patch name Scripts for YAMAHA PSR A3000?
Thanks

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #1 on: July 26, 2016, 10:36:18 AM »
sara,

I don't believe there is one. and the person (Moderator Bill G) who has created many Cubase Voice files just lost his wife of 61 years this past week, so I don't think he will be responding here (now).

There are other Voice files you could use that will have many of the Voices (like the S950 or S970), but the unique A3000 Voices will be missing.

I could post the S970 Patch here if you like.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline chikitin

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #2 on: May 14, 2017, 08:22:17 PM »
Is there any update to this?
 

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #3 on: May 15, 2017, 07:30:53 AM »
No update, sorry.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline chikitin

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #4 on: May 19, 2017, 03:15:35 PM »
No update, sorry.

Joe H

Hi Joe,

I started creating one by duplicating PSR-970. However, few of voice presets are not working. For instance, S.Art! Vibes&JazzGuitar doesn't get mapped to the PSR keyboards correctly. I have used the Data List manual published by Yamaha to do this. However, the cubase track is unable to trigger S.Art! Vibes&JazzGuitar on my PSR-A3000.

When I open the patch banks of each preset ( voice), it contains two rows one is Bank select 14 Bit and Program Change. I assume to correctly map the patch preset, I need these information. But I don't know where to find them.

Any help would be greatly appreciated.
« Last Edit: May 20, 2017, 04:20:15 AM by chikitin »
 

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #5 on: May 19, 2017, 05:03:11 PM »
Sorry, I have no experience with what you are trying to do.  I have never attempted to create or even edit a Cubase Voice Definition file.  So I can't be of any help, but maybe someone will post that has experience with what you want to do.

Regards,
Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline SeaGtGruff

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #6 on: May 19, 2017, 10:00:57 PM »
To get the 14-bit Bank Select value, you must use the separate MSB and LSB values in a formula, as follows:

Bank = 128 * MSB + LSB

For example, if the MSB were 8 and the LSB were 33, the 14-bit Bank number would be 128 * 8 + 33 = 1057.

As for the Program number, you must be careful to subtract 1 from the value listed in Yamaha's Data List, because Yamaha uses Program numbers of 1 - 128 in the Data List, but these must actually be 0 - 127 inside the MIDI messages.

You might want to check out the following thread to see how to import an instrument patch list into Cubase, because I think you should be able to use the separate MSB and LSB values, and let Cubase calculate the 14-bit Bank numbers itself when the patch list is being imported. If you look at the directory path shown in the following thread-- adjusting it as appropriate for your own Drive letter, User name, Cubase version, etc.-- then it should help you locate a number of different Yamaha patch lists on your system, one of which should be a good starting point for creating a new one for your particular model.

https://www.psrtutorial.com/forum/index.php/topic,35501
Michael Rideout
YPT-400, PSR-E433, PSR-E443
 
The following users thanked this post: Joe H, chikitin

Offline chikitin

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #7 on: May 20, 2017, 05:34:55 AM »
To get the 14-bit Bank Select value, you must use the separate MSB and LSB values in a formula, as follows:

Bank = 128 * MSB + LSB

For example, if the MSB were 8 and the LSB were 33, the 14-bit Bank number would be 128 * 8 + 33 = 1057.

As for the Program number, you must be careful to subtract 1 from the value listed in Yamaha's Data List, because Yamaha uses Program numbers of 1 - 128 in the Data List, but these must actually be 0 - 127 inside the MIDI messages.

You might want to check out the following thread to see how to import an instrument patch list into Cubase, ...

Sorry I am new to PSR keyboard. Thanks for showing me the calculations! Actually I had used regex to add 1 to PC#, I thought I had to go with Data list. Actually my sounds were all incorrect, but somehow they were working! I forgot that in world of computer everything starts at 0! Now I have to revert it back to original.

Another issue is that in the script text file inside ( inactive folder), the patch list are sorted as [pL, pc#, MSB, LSB] however, in the data list they are [MSB, LSB, PC#]. Now I have lost of changes to do.

Michael, I really don't know how to appreciate you. But I thank you so much. Do you know any good resource for studying MIDI with programming ( C/C++, Java, Python).
 

Offline SeaGtGruff

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #8 on: May 20, 2017, 11:29:46 AM »
Regarding the Program Change values, this is a gigantic can of wriggly worms-- and it even includes the Bank Select MSB and LSB values-- because different hardware, software, and documentation may use different numbering schemes. You must always be careful to observe which numbering scheme is being used by whatever hardware, software, or documentation you're looking at, and then adjust the values if necessary by adding or subtracting 1.

Inside the actual MIDI messages, the data values always follow the "0 through 127" numbering scheme.

In Ableton Live, when you're typing the Bank Select MSB, LSB, and Program Change values into their respective entry fields, you must use the "1 through 128" numbering scheme-- so you can enter the Program Change values just as Yamaha lists them, but you must add 1 to both the Bank Select MSB and LSB values! Of course, Ableton Live will then subtract 1 from these three values internally, so that the correct values are being used in the MIDI messages.

Many other DAWs use the "0 through 127" numbering scheme, in which case you would enter the Bank Select MSB and LSB values just as Yamaha lists them, but you must subtract 1 from the Program Change values that Yamaha lists.

Talk about madness! :o

As far as creating a patch name list, I haven't tried that for Cubase yet, but in general I open the Data List in Adobe Acrobat Reader, highlight and copy the voice list (one section at a time), paste it into a text file, and then use a programmer's editor to define and play back a macro which will go through the text one line at a time, inserting commas where needed. (But before doing that, it's necessary to check the copied-and-pasted text to remove any extra carriage returns, such as where a voice had a lengthy name that was printed on two lines in the Data List. And you might also need to remove any extra information before using a macro, such as the type of voice, voice category, any asterisks which indicate a footnote, etc.)

Then I rename the file to have a ".CSV" name, open it in Microsoft Excel, and do whatever formatting or editing is required so the numbers use the necessary scheme and the columns are arranged in the necessary order. To convert the Program Change values from the "1 through 128" scheme to the "0 through 127" scheme, I create an extra column and use a formula to subtract 1 from the values that came from the Data List. Then I copy the new column and paste it as values on top of the original Program Change column. (If you forget to paste the copied column as values then the result will be a mess.) It might also be helpful to add colums for additional text or characters which are used in a given DAW's patch list files.

Then I save the edited-and-rearranged spreadsheet to a new ".CSV" or ".TXT" file, depending on whether I want/need the file to be comma-separated or tab-delimited. I load the new ".CSV" or ".TXT" file back into a programmer's editor for any additional manipulation that's necessary, using macros wherever possible to alleviate the tedium of any repetitive editing procedures.

As far as programming, it would probably depend on the specific language you want to use. There are libraries of MIDI functions which have been put together by various programmers for different languages, so you should search the web to see if there are any such libraries available for whatever language you're using. I haven't done any MIDI programming yet (but I'd like to), so I can't really recommend any particular resource.
Michael Rideout
YPT-400, PSR-E433, PSR-E443
 
The following users thanked this post: chikitin

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #9 on: May 20, 2017, 11:58:16 AM »
I added Peter's Tyros 4 + Expansion Packs patch to my Cubase AI6 and it looks fine.  So I'm creating a PSR S970 + Euro Dance Pack list for myself by following Peter's example.  It's just simple text, but must be formatted just as Peter has done.

Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline chikitin

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #10 on: May 20, 2017, 01:06:49 PM »
Regarding the Program Change values,
Thank you Michael for the information. I am good at text mining and just made one and testing it now. Strangely, Cubase does not talk always with PSR keyboard. I have to switch voice and come back to the desired voice to get it right.

About Midi programming, there are as you said many languages and libraries. Additionally, we have three important OSs ( windows, mac, linux). It is not easy to decide which one. I have worked with all of them. I am interested in integrating midi/audio in web applications, desktop programs and mobile apps:)

Thanks again.
 

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #11 on: May 20, 2017, 08:51:49 PM »
Michael,

I just posted over on Peter's thread.  I created a Cubase PSR-S970 + EDP Voice List text file but it doesn't work.

https://www.psrtutorial.com/forum/index.php/topic,35501.msg295484.html#msg295484

It sounds like you have a way to look at the text file and see if there might be errors in it.   Any chance I could get you to look at it?

Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline Joe H

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #12 on: May 21, 2017, 08:41:55 AM »
Hi Michael,

Peter found my typos.  I had no idea that a text file like that would not even load if there is one single syntax error.  That's like writing computer code! 

Joe H
Music is the Universal Language!

My Article: Using Multi Pads for EDM. Download Regs, Styles & MPs:  http://psrtutorial.com/music/articles/dancemusic.html
 

Offline SeaGtGruff

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #13 on: May 21, 2017, 10:37:45 AM »
Sorry, I didn't see your post until just now. I'm glad Peter was able to find the error for you!
Michael Rideout
YPT-400, PSR-E433, PSR-E443
 

Offline XeeniX

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #14 on: May 21, 2017, 01:02:28 PM »
Hi,

I'm no programmer and certainly no expert in midi and keyboards but I AM a follower of the "better steal a good idea and enhance it than come up with a  lousy new one" principal ;) In cases like this where there are existing files I look at several of them with a text or hex editor and try to find similarities and patterns in them. I remember me modifying quite a few advanced Linux scripts in a time my only knowledge of Linux was (and it more or less still is btw ;) ) how to spell the name of the operating system correctly :D Try altering a few things and see what it does, slowly getting to the point where the script does exactly what you want. It's not different with Instrument definition files for Sonar and Cubase (didn't look at others yet. All you need is a text editor, some time on your hands and an example of a working file.

If you look closely at the lines with instruments you will notice that they are the same as the numbers on your keyboard that show up if you enable the SHOW VOICE NUMBERS option on your keyboard (Function/config2) or look at the voice numbers in the datalist of your keyboard. At frist they don' t look the same until you realise that the last two sets of numbers in a definition file are the same as the first two sets on your keyboard minus the preceding 0 in case of a number less than 100. And the following that you will notice after a clser look is that the last set of numbers is almost the same as the first set in a definition file except that it always is one lower there. Later on I foudn out why. Yamaha uses the numbers 1-128 so starting with 1 while most other (cubase for example) uses 0-127 so starts counting at 0. It's a bit like the I count 'til three than we go joke :) So Yamaha voice number <#104-008-001> becomes defintion file number [p2,0,104,8]instr name

Knowing that, creating a custom definition file becomes very easy. You can add voices, expansion pack voices and even your custom voices. You can change the instrument names or the order in which they appear in Cubase and Sonar and group them differently if you wish. As long as you keep a backup copy of the original defintion file you can experiment your heart out. It's time consuming but worth your while if you are gonna use them often enough.:)

If I'm not mistaken Michael started working on a A3000 definiton file for Cubase. He's more knowledgeable than I am. Knows most of the fancy names et cetera so I know it is in good hands :)

regards,

Peter

-----
There’s no need to be perfect to inspire others. Let people get inspired by how you deal with your imperfections.
-----
 

Offline SeaGtGruff

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #15 on: May 22, 2017, 03:25:13 AM »
It turns out I shouldn't have bothered with Yamaha's file for the PSR-A2000, because it was in a different format than what I needed. So I wasted some hours comparing spreadsheets for the PSR-A2000 and PSR-A3000, which wasn't useful after all.

I've completed an initial patch name script for the PSR-A3000, although it doesn't have the key mappings for the drum kits (and neither do the patch name scripts for the other Yamaha models, it seems). I intend to keep working on another version which will include the drum kit key mappings, using the XG patch name script as a guide, but that will take a bit longer.

In the meantime, the basic script is attached. To install it, follow the same instructions as given in the other thread. Please note that I haven't actually tried to install it yet myself, so it's untested.

Installation instructions - https://www.psrtutorial.com/forum/index.php/topic,35501

Michael Rideout
YPT-400, PSR-E433, PSR-E443
 
The following users thanked this post: chikitin

Offline chikitin

Re: Cubase Patch name Scripts for YAMAHA PSR A3000
« Reply #16 on: May 28, 2017, 07:36:05 PM »
Thank you very much Michael.  I had made this using your guidance guess at the same time. Any how, you are the most generous!   

Chekad