How to create a patch map for RealBand or PowerTracks Pro Audio

This tutorial covers the following topics. Note that while this tutorial refers to PowerTracks, the same information also applies to RealBand.

Last updated:  Wednesday, 04 September 2024

How to select patches on your synth

There are three things that control what sound you hear on your synth.

  1. Program # (often abbreviated PC for Program Change)
  2. Bank MSB, or Controller 0 (often abbreviated CC0)
  3. Bank LSB, or Contoller 32 (often abbreviated CC32)

Each of these can be any number from 0 to 127. These three numbers allow you to play any instrument sound (patch) available on your MIDI synth. Your MIDI synthesizer could be the built-in MIDI synth on your sound card, soundfonts, a software synth/sampler, or an external synth/sound module that you have connected to your computer via a MIDI interface.

Find an instrument list in the documentation for your synth. It should give you a list of all patches available on your synth, and tell you which Program Change and Bank select messages you need to use to access each of them. Unfortunately the specific format and terminology used in the instrument list varies between manufacturers, however all of the necessary information will be there.

When the MIDI standard was first developed, it was only possible to select from up to 128 patches. You did this by sending a Program Change message. To increase the number of patches available on any one synth, the Bank Select command was introduced. There are two controller messages in the Bank Select command: Controller 0 (MSB) and Controller 32 (LSB). To choose a patch, you send a Bank Select message to your synth, followed by a Program Change. Some synths require both controller 0 and controller 32 together, and some synths only require one or the other. You will need to check the documentation for your synth to find out which controllers it requires.

The General MIDI (GM) standard specifies 128 patches. These are usually defined to be the 128 patches on Bank 0, while other patches are on 'higher banks'. Since both Bank MSB and LSB can be any number from 0-127, these two messages theoretically allow you to access up to 128 x 128 (16,384) banks of 128 patches each.

In PowerTracks, you can choose any patch by simply referring to the instrument list for your synth and selecting the appropriate Program, MSB, and LSB numbers. In PowerTracks Pro Audio 8 or earlier, or in the Classic Tracks window in PowerTracks Pro Audio 9 and higher, you insert these numbers in the PRG, BANK, and LSB columns respectively. In PowerTracks 9 and higher (in the regular Tracks window), you right click on the Track Info field and choose the Program, MSB, and LSB numbers from the pop-up menu. Note that the menu lists the Program names for the General MIDI bank. If you are choosing a patch on a higher bank, or your synth is not General MIDI compatible, you can ignore the names of the General MIDI patches - you just need to select the correct Program #.

If you would rather choose higher bank patches by name, or if your synth is not General MIDI compatible, you may want to use the 'Select Patch' dialog. PowerTracks uses the patches.ini file to define what appears in the Select Patch dialog. This file is located in the main PowerTracks folder, usually C:\pt. A default patches.ini (patch map) is included with PowerTracks Pro Audio. It has some common patch lists, such as Roland GS and Yamaha XG. There are other patch maps available for download from our website, here. If you do not find your synth listed there, you will need to make a patch map yourself, or convert a Band-in-a-Box® patch map (.pat file) or Cakewalk Instrument Definition file (.ins file) to a PowerTracks Pro Audio patch map.

You can either expand on the patches.ini file or create a patch map from scratch. You edit the patches.ini file using a simple text editor such as Notepad or Wordpad. Before you start, you should make a backup of the default patches.ini file so that you don't need to reinstall PowerTracks if you mess it up.

Converting a Cakewalk or Band-in-a-Box® patch map to a RealBand or PowerTracks patch map file

If you have found an existing Band-in-a-Box® patch map (.pat file) or Cakewalk Instrument Definition file (.ins) for your synth, you can convert this to a PowerTracks patch map (patches.ini file). This can be done easily with PowerTracks Pro Audio 10 or higher, which have a dedicated feature to do the conversion.

In PowerTracks, go to the Action menu and select Convert patch list from Band-in-a-Box® or Cakewalk, select the .ins or .pat file from the File-Open dialog, then choose a name for the new .ini file in the following File-Save dialog. PowerTracks will ask if you would like to add the new patch list to the existing patches.ini file. If you answer Yes, you will immediately be able to choose your new patch list by going to Options | Patch Names. If you answer No, you will have a separate .ini file with the name that you chose. In this case, to use the new patch map, rename the existing patches.ini file in your pt folder to patches_default.ini (so you have a backup of it), then rename your new .ini file to patches.ini and make sure it is located in the C:\pt folder. The next time you open PowerTracks you will be able to use your new patch map.

How to edit the patches.ini file and create a patch map

Open the patches.ini file with notepad or wordpad. To do this, you can right-click on the file and select Open With, (on Windows 98/ME, select the file then Shift-right-click on it). Take a look through the file to see how it is layed out. This should give you a good idea of what you need to do. The patches.ini file contains the following components.

Comments

If you want to add any comments in the patch map file, the beginning of the line must start with a semicolon. PowerTracks will ignore these lines when processing the patch map. Here is an example:

; This is how you would add a comment line. You can have
; multiple lines if you wish. It is important not to make
; any errors in syntax, or else PowerTracks will not
; process the patches.ini file properly.

It is a good idea to include some general comments about what synth(s) the patch map applies to, and what the best way of using it with PowerTracks is.

One or Zero Based Patch Numbering

Some modules and synths start their instrument numbering at '0' and some start the numbering at '1'. The best way to find out whether you are writing a One-Based patch list or Zero-Based patch list is to look at the first patch in your instrument list.

You can enter a patch list as Zero-Based and force it to become One-Based within PowerTracks Pro Audio. Here is an example:

FORCEONEBASED
[Yamaha XG]
0=GM Acoustic Grand Piano
1=GM Bright Acoustic Piano
2=GM Electric Grand Piano

Note: Roland's standard is One Based.

Patch List Name

This begins the main part of your patch map. The name of your patch list is enclosed in square brackets. In the example above, the patch list name is "[Yamaha XG]". Your patch map file can contain more than one patch list.

Default Bank

The patch list name is followed by patches in the "Default Bank", in the format <program number> = <patch name> . Each of your patch lists must contain patches in the default bank. These are patches with both an MSB and LSB value of zero, usually the General MIDI patches. The default patch list must start with 0 or 1, and it must be in ascending order. For example:

0=GM Acoustic Grand Piano
1=GM Bright Acoustic Piano
2=GM Electric Grand Piano

Normally, you should have 128 patches in the default bank, but this is not a requirement.

Patches on higher banks

After the default bank, patches with different (non-zero) MSB values can be added to your patch list by typing "(Bank #)", where # is a value from 0-127. Patches with different LSB values can be added by typing "(BankLSB #)". Again, # is a value from 0-127. The bank number is followed by a list of patches in that bank, in the same format as the default bank. For example:

(BankLSB 1)
0=Grand Piano Stereo
1=Brite Piano Stereo
2=Electric Grand Stereo

Note that you could use "(Bank 0)" or "(BankLSB 0)" to define patches on Bank 0, but it is not necessary to include this line.

An alternative method for defining the location of patches on higher banks is to use the following format:

<program number>,<MSB>,<LSB>=<patch name>

For example:

1,30,40=Orch Hit

This means that the Orch Hit sound is Program 1, with a Bank MSB value of 30, and a Bank LSB value of 40.

A Sample Patch Map

; This is a sample patch map. It illustrates
; both methods you can use to define patches
; on higher banks.

[My Patchlist]

1=Piano
2=Guitar
3=Flute
4=Trombone
11=Trumpet
16=Electric Guitar

(Bank 1)
1=Organ
2=Bass
11=Trumpet 2

(Bank 10)
16=Electric Guitar 2

(BankLSB 1)
1=Space Sound
2=Massive Distortion

1,20,21=Toy Piano
2,20,21=Chimes

In this example, notice the following:

--It is One-Based.

--The default bank only has four patches. It should normally have 128. These four patches automatically get assigned MSB and LSB values of 0.

--Three patches have a Bank MSB value of 1 and a Bank LSB value 0 (Organ, Bass, and Trumpet).

--There is one patch with a Bank MSB value of 10 and LSB value of 0 (Electric Guitar).

--There are two patches in Bank MSB 10 with an LSB value of 1 (Space Sounds and Massive Distortion).

--With the last two patches (Toy Piano and Chimes), the LSB and MSB settings were defined by adding the two extra numbers with commas. When the MSB and LSB Settings are defined this way, it will override the current "(Bank #)" and "(BankLSB #)" settings. Toy Piano and chimes both have a Bank MSB value of 20, and a Bank LSB value of 21.

How to use the patch map in RealBand or PowerTracks

When you have completed creating your file, go into the PowerTracks folder (C:\pt) or RealBand folder (C:\RealBand) and rename the existing patches.ini file to patches_default.ini (so you have a backup of it). To do this, right click on the file and select 'Rename'. Then, save the patch map file you have created as patches.ini and place it in the PowerTracks folder. You should also save a backup of your new patch map somewhere else on your hard drive.

The next time you launch PowerTracks Pro Audio, you should see a message telling you that the patches.ini file has successfully been converted to patches.bin. Go to the Options menu and select Patch Names. You should see your patch list name(s) there. If you do not, close PowerTracks and delete the patches.bin file from the PT folder.

In PowerTracks Pro Audio 8 and earlier, open the 'Select Patch' dialog by double-clicking in the Prg column of the Tracks window. In PowerTracks Pro Audio 9 or higher, right-click on the track's MIDI icon and choose 'Patch Select Dialog'. Choose the desired patch list from the Patch List pull-down menu. If you want a patch list specified globally (so that you do not have to choose it for each track independently), you can select the patch list by going to Options | Patch Names.

If the "Always Show Bank 0 Names" checkbox is checked, the main list box in the Select Patch dialog will be filled with the patches of the default bank (those patches with both the bank MSB and LSB being 0), and the highlighted variation is the actual patch that is selected. If the "Always Show Bank 0 Names" checkbox is unchecked, then the patches in the list box will change to those of the bank number of the current variation. Normally, the "variation" patches will be variations of the same type of sound, but this isn't necessarily the case with all synths.

If you would like to make your patch map available for other PowerTracks Pro Audio users, please email the file to support@pgmusic.com and we will post it on our website at: https://www.pgmusic.com/support_miscellaneous.htm.

Troubleshooting

  • If you get a syntax error when you launch the program, this means that there is an error in your file. This is most likely a typo - for example, if you had typed "1-Grand Piano", instead of "1=Grand Piano" (you replaced an = sign with a minus sign) anywhere in your file, you would get a syntax error. The error message gives you the line number where the error occurs in your file.

  • Another reason you could get a syntax error is if any one patch list in your file exceeds about 2000 patches. You will get a syntax error referring to the first line that exceeds the maximum number of patches. In this case, you may need to omit some patches, or split your patch list into two or more patch lists to cover all of the patches available. Note that you can have multiple patch lists in a single patch map file.

  • One more reason you could get a syntax error is if you forgot to include the default bank in one of your patch lists.

  • If you only get a single box to enter a numeric value when you open the Select Patch dialog, go to Options | Patch Names and make sure it is not set to 'numeric' there.

  • If you copied a new patches.ini file into your pt folder but PowerTracks doesn't seem to recognize it at all, you may not have named the file correctly. One common mistake that people make is to name the file "patches.ini.ini", rather than "patches.ini". This error is likely to occur if Windows is "hiding known file extensions". Go to the Tools menu in any folder, and select 'Folder Options' (on Windows 98/ME, View menu | Folder Options), then click on the View tab. In the Advanced Settings window, uncheck the option that says "Hide file extensions for known file types". Press Apply, then OK. Now if you look at your patches.ini file, you should be able to see what the problem is.

  • If the file is named correctly but still isn't recognized, close PowerTracks, delete the file 'patches.bin' from the pt folder, and re-open the program.

Chat online Online now

Need Help?

Customer Sales & Support

Phones (Pacific Time)
1-800-268-6272 1-250-475-2874
Live Chat
OPEN Online Ordering
24/7
OPEN Forums, email, web support
Message from PGMusic.com sales and support team
Hi, have any questions? We're available to text chat.
Message from PGMusic.com sales and support team
Hi, have any questions? We're available to text chat.