Ensoniq Information


Converting MIDI GM files for use with the ENSONIQ SQ2

(Some of the following also applies to the SQ1 and KS32 keyboards)

This web page describes a step by step process for translating Midi GM files to Cakewalk sequence files for the SQ2. Even if you do not want to use whole tranlation process their may be reference information that may be of value.

Contents

Introduction

The Ensoniq SQ2 provides realistic and interesting sound that can be used in the full range of sequence for commercial tunes. While the Ensoniq SQ2 is MIDI compatible it is not directly GM or GS compatible.

The process of converting MIDI files from GM or GS to be used on the Ensoniq is not straight forward and requires some musical judgement in some circumstances. However It is undoubtedly easier than producing MIDI files from scratch.

This conversion process assumes you have CakeWalk software. In my case I am still using CakeWalk Vsn 2.00 for Windows. Hopefully the CAL macros included here will be compatible with later versions.

If you want to add panning and effects to your sequence you will need to create SYSX files for the Ensoniq. I do this using MicroSoft Word 6 macros. So you will have get access to Word 6.0.

I have translated about 40 MIDI files using this process. I use them in live music in my duo. My live rig includes the Ensoniq SQ2 and a portable computer. The following description often refers to the SQ2. I understand the description is also applicable to the Ensoniq SQ1 and KS32 models.

I am writing this to provide my own documentation of the process. Other people may have similar requirements. Please use care I do not accept any liability for what you do to your system. If you muck up your Ensoniq sound settings, or your CakeWalk INI files, or your lose your favourite MIDI file or befall any other terrible fate in relation to these instructions I disclaim any obligation to help you out.

I do not maintain this is the best way of doing this and I hope to hear from anyone who has suggestions, alternatives, improvements or would like to compare methods for MIDI translation.

· Get the Tools Required
· Find a MIDI File
· Choose Sounds for All Tracks
· Convert Drum Sounds
· Add Panning and Overall Effect



Get the Tools Required

As mentioned above you will require CakeWalk to perform this translation. You will also require Word 6 if you want to add panning and an effect to the song.

The other files required for the conversion process can be downloaded from this web page and include the following. Not all files will be used in every conversion.


Cakewalk Initialization files

Patches.ini

CakeWalk uses a file called PATCHES.INI to record the translation between the MIDI instrument number and the English description of the instrument. To use the Ensoniq with CakeWalk effectively these instruments need to be added to this file. A description at the top of the file describes how this should be done. A copy of my modified PATCHES.INI file can be down-loaded from this site.

The Ensoniq patches are at the end of the file. There is one set for the ROM instruments and the other for the RAM (internal) instruments. The RAM instruments are basically the same as the factory settings except for
62=Shami (AK special) (Not used)
64=Biwa (AK Bongos)
66=Acc. Bass AK
67=Dirt Guitar AK (Not used)

The Bongos and Acc. Bass (Accoustic Bass) settings will be explained later. The other two settings are not required.

Add the Ensoniq patches to your PATCHES.INI file and update the "list of lists" at the top of the patches file.

 

Wincake.ini (Optional)

The [Dump Request Macros] section of the WINCAKE.INI contains system exclusive commands for sending and receiving data in the Sysx view. I have added a list of commands for the SQ2 to my own WINCAKE.INI. The commands I have added are:

Ensoniq SQ-2 Single Sound...
Ensoniq SQ-2 All Internal Sounds...
Ensoniq SQ-2 Single Sequence...
Ensoniq SQ-2 All Sequences...
Ensoniq SQ-2 Dump Everything...
Ensoniq SQ-2 Receive ...
Ensoniq SQ-2 Receive All...
Ensoniq SQ-2 Button Command...

For the purpose of this document we will only be using Single Sequence and this will only be required if you need to edit presets later on. I find these commands handy to dump sounds from the SQ2 rather than using the standard DOS SYSX utilites (SYXDUMP and SYXRECV).

Copy all the above commands into the appropriate place in your own WINCAKE.INI.

To fully understand how these function you will need get the document "SQ-1 Musician's Manual Appendix A - SQ-1 MIDI Specification" from
ENSONIQ Corp
MIDI Specification Desk
155 Great Valley Parkway
Malvern, PA 19355

 

Using ROM and RAM sounds in CakeWalk

I have set up CakeWalk to access both banks of sounds on the Ensoniq. This is described on P.213 of CakeWalk Professional of Windows release 2.0 manual. Port 3 which is usually not assigned to an any hardware is used for a secondary bank of sounds.

Using the CakeWalk menu entry "Settings.../Patch Names"
Select Port 1, Channel 1-16 and assign it to the patch name list labelled "Ensoniq SQ2 ROM".
Select Port 3, Channel 1-16 and assign it to the patch name list labelled "Ensoniq SQ2 RAM".
<A Screen Dump would be nice here>



System Exclusive for Bongos and Accoustic Bass

I find creating new sounds for the Ensoniq a difficult process. I have done for a couple of sounds I felt are absolutely necessary.

 AKBONGO.SYX  This sound has bongos and congas that are slapped (rather than hit with a drumstick). There is also a woodblock in this sound at the top of the range which has come in handy.
 AKBASS.SYX   I created the Accoustic Bass because I did not like the decay characteristics of the standard offering.



These two SYSX files are included so that can be loaded into your Ensoniq if required. To be consistent with the patch files above the bongos should loaded into location 64 and the Accoustic Bass into 66.

You can use the standard DOS utilites (SYXDUMP and SYXRECV) to load these SYSX sounds or you can use CakeWalk as follows:

  1. File/New to create an empty sequence
  2. View/Sysx to open the Sysx window
  3. Click on the Load Bank button and select one of the above SYX files.
  4. Click on Send
  5. If your SQ2 is connected it will the load the sound into the Compare buffer.
  6. Press Enter on the Ensoniq. You will be given the sound name (you can change it at this time if you wish).
  7. Press Enter. Select the memory location to which you want to store the sound. Use the ten Bank and Screen buttons.
  8. Press Enter a third time. The Ensoniq display should show a momentary "SAVED" message.



CakeWalk Application Language (CAL) Files

The following CAL files are required:

INITTRK First check a track for modulation, pitch bend or extra patches. Then add the necessary track initialisation information.
 INITRK2  Add the necessary track initialisation information without performing the above search for controller and patch changes.
 CHKDRUM  Used to check drums settings to see if they fall outside the range. If they fall outside the range there note number is returned. This is faster than CHKDRUM2 but does not report note name and instrument.
 CHKDRUM2  Used to check drums settings to see if they fall outside the range. If they fall outside the range there note number (eg. 39), the note name (eg. Eb3) and the instrument (eg. hand clap) is returned.
 FIXDRUM  This transposes standard drums from MIDI GM to one of the standard Ensoniq drum kits. This is to be used after one of the CHKDRUM programs has checked the track for instruments outside of the range for these drum kits.
 CONGA  This transposes a conga and bongo part written for MIDI GM drums to the Ensoniq bongos instrument created above.
 AGOGOS  This transposes an agogos part written for MIDI GM drums to the Ensoniq SQ2 agogos in the Latin Kit sound (sound 87).

The purpose of these CAL files will be explained in more detail in later sections.

 


MicroSoft Word Macros

To set panning and effect options for the Ensoniq SQ2 it necessary to send this information using a System Exclusive packet (SYSX). These parameters cannot be controlled with MIDI controllers. To create these SYSX packets I use word processor macros. This was cheap and easy for me.

The two macros are:

 SYSX  Allows you to enter a song name panning, volume and effect for the song. It also allow you to specify the effect parameters.
 SYSX2  As above but this assumes you require the default effect parameters.


Sound Conversion Tables

These tables are not necessary for the process of translating GM sequences however they may be useful.

GM to SQ2 ROM MIDI Map Tables

Drum kit tables for the SQ2



Find a MIDI File

There is a good availability of MIDI Files on the internet. I have used mostly commercial sources and a few free sources. Here are some of my favourite sources.

Commercial Sources


Free Sources


Midi File Sites

This is a very comprehensive list of a sites that offer MIDI files.


News Group

Subscribe to alt.binaries.sounds.midi. To request a MIDI file add the prefix REQ: to the subject.




Select Sound Patches

The following is the process I use to select each sound patch for the Ensoniq SQ2.

From within CakeWalk

  1. Switch Channel 1 to GM patches
    1. Select menu entry Settings/Patch Names...
    2. Select tracks 1..16 for port 1 in the "Port/Channel" list box. (Click on track one and then shift-click on track 16)
    3. Select "General MIDI" from the "Patch Name List" list box.
    4. Click on "OK"
  2. Write down the GM patch names:
    1. Select the tracks which you want to convert. Often this will be every track. Select the track by clicking in the left most column of the Track/Measure for each track.
    2. View the event list. Right mouse-click on the first measure of the measure part of the Track/View and select "Event List"
    3. For each track write down the patch (Event Kind "Patch") and the panning information (Value for controller number 10). There is other controller information here but I have always ignored it. Ignore any drum kit patch and controller settings usually on track 10.
    4. Close the Event List view and type the instrument names into the "Name" column of the Tack/Measure view.
    5. Keep the panning settings you wrote down for step 5 of this conversion process.
  3. Delete GM patch setting and controller values.
    1. Now that you have got all the information you need from the GM patch and panning values you will need to delete these settings since they have no use in an Ensoniq SQ2 sequence. Often these settings are all in the first measure and there are no note events this measure. In which case all these events can be removed by deleting the first measure from all tracks.
    2. Select all tracks by clicking on the left most column in the Track/Measure view. Select the first measure again.
    3. Open the Event List as in 2.2 above.
    4. Scroll through the list to see if there are any note events in the first measure. If not proceed to 3.4. If so you will have be more selective so that you do not delete any essential note events.
    5. Close the event list and press the delete key. The "Delete hole too" dialogue box can be answered either way depending on whether there will be sufficient time at the beginning of the song for the Ensoniq to initialise.
    6. At this stage it is a good idea to save the sequence with a new file extension .WRK. (ie. use File/Save As and select File Type "Cakewalk (*.wrk)" )
  4. Choose a sound patch for each track.
    1. To get the right sounds for a sequence it is matter of judgement. There is no easy mapping of GM sounds to Ensoniq sounds. Generally I have a few conversions I always use and supplement this with looking at the descriptions of my Ensoniq sounds, listing to recordings of the songs and listing to my Ensoniq.
    2. The following are some conversions I often use. Those marked with an asterisk (*) are RAM Sounds in the SQ2 factory set-up.

Accoustic Grand, Bright Accoustic Piano Dynamic Grand
Electric Guitar Clean and Overdriven Record Guitar
Electric Guitar Muted Chuk Guitar
Distortion Guitar Analog Power
Electric Bass (Finger or Pick) Rock Bass
Accoustic Bass I use my own (see above SYSX dump of this sound).
Other Electric Basses Have a listen to a recording of the song. I have found Rippin' Bass, Phaser Bass, Fretless 2* and Slap Bass 2* useful.
Acc. Guitar Nylon Mellow Nylon*
Acc. Guitar Steel I have used steel string, sound wound* and Tremelo Guitar* for different type of song.
Brass Trumpet (I find this good for trumpet, trombone and brass ensemble work). I sometimes use French Horn if there are a few brass tracks.
Synth Brass Brass Pad* or French Horn
Strings Concerto*
Voices Silk Voices*



Initialise All Tracks

To initialise each track we need to select a suitable patch and bank for each sound. We also need to set the pitch wheel and modulation controller values to zero in case these are still set from previous sequences. If you are in the practice of using any of the other controllers it may be necessary to zero these as well.

I have set my CakeWalk ports 1 and 3 to map to ROM sounds and RAM sounds respectively. This is explained in Get the Tools Required/dafsd

Once you have found a sound for your track
Enter patch and port into the track parameters of the Track/Measure view. The channel for the sound will 1 for ROM sounds and 3 for RAM sounds if you have used the set-up explained above.
Click on the first measure of the track and run the CAL program INITTRK (Edit/Run CAL Program...).
You will be notified about any other patch events, controller events or pitch wheel events in the sequence. It is useful to know about these because they can cause odd effects when translated from another synthesiser. I generally leave the pitch wheel and controller events in and have a good listen later to make sure it sounds as expected. If you get sick of click on OK to ignore these events you can use INITTRK2 instead of INITRK. INITTRK2 does not search for these events.
At the end of INITRK or INITRK2 you are prompted first for a channel number (track number) and then a port number (1 for ROM or 3 for RAM).
You then need to adjust one of the patch events in the event list view so that it reflects the sound you chose. Right-click on the first measure of the sequence and select Event List. You will then see two patch events that are the same. Change the second of these by double-clicking in "Values" column for that event and selecting the same sound that selected in the Track/Measure view.

Repeat this process for each sound except the drum kits (usually track 10 of a GM sequence).


Convert Drums

The GM Drum table uses about 60 sounds in the one drum kit. This is difficult to translated to the Ensoniq SQ2 because it can only manage 17 "voices" per instrument. However most drummers only hit a few objects and we can fix most drum beats if we cover the basic drum sounds of
Kick
Snare
High Hat (Closed, Open, Pedal)
Ride Cymbal
Crash Cymbal (2)
Low Tom
Hi Tom

The rest of the 60 instruments are only used occasionally and special arrangements can be made for them.

My approach is therefore to use a CakeWalk CAL program to translate the common GM drum instruments to Ensoniq equivalents. Bongos and Congas are dealt with using a separate CAL program. Other percussion instruments are handled by copying them to their own track and choosing an instrument for them.

 

Another approach to drum mapping you might like to consider is by setting up drum kits which cover the whole GM range. Theoretically this would take 4 SQ2 drum kits (since if we have 3 lots of 17 SQ2 sounds we get 51 of the 60 sounds) but wally<address info> provides a bank of three drum kits which may prove useful. It then would be possible to write a CAL program which does the lot without having to spend time on individual sounds. This may lead to using more tracks than necessary.


Add Panning and Overall Effect

The Ensoniq SQ2 does not accept MIDI panning signals. The only way to set panning is use as preset SYSX packet at the start of a sequence. There are a number of other settings that can be included in the preset SYSX. I also set the overall effect for the sequence and the name of the sequence on the SQ2 display. Occasionally I will set an instrument in the SYSX but usually I rely on CakeWalk to set up the instruments.

 



The Finished Product

Congratulations! You have reached the end of the conversion process. You can now play this sequence from CakeWalk into your Ensoniq SQ2.

You now should play the sequence and adjust the volume and velocity of the tracks. You will perhaps want to experiment with different sound patches. The sequence may not sound perfect due to difficulties with the translation or simply because of a poor quality GM sequence. The only way to get a good sequence is to listen to a recording of the song and adjust accordingly.