-------------------------------------------------------------------
Notes on files included in this release                    Rev. 1.2

     Copyright Keith Cowgill 1/14/00
     Comments, suggestions, corrections to:  kcowgill@infinet.com
     Latest revised version available at:    www.infinet.com/~kcowgill
-------------------------------------------------------------------

SUMMARY:

FS1PERF.INS and FS1RPART.INS are instrument files for all
versions of Cakewalk. They contain names for all of the
Performances (or Presets) and Parts (or Voices) that are stored
in the unit's ROM.

(YAM-FS1R.INS is not essential in the following process.  See
Addendum 2 for more information on this file.)

FS1R.WRK, FS1R.MID, and FS1R.MP3 have been included to offer you a
quick way to demo the process detailed in this file.  Once you
have followed the procedure below, load FS1R.WRK into Cakewalk (or 
FS1R.MID into any other sequencer) and you can quickly see if your
attempt was successful. A low-res audio version of the tune has
been included in MP3 format so you can tell for certain.


INSTALLATION:

 1. Remember where you put FS1PERF.INS and FS1PART.INS when you
    unzipped this file.

 2. In Cakewalk Pro Audio, select:

    Options->Instruments->Define->Import

    (Other, or earlier, versions of Cakewalk may have a slightly
    different routine, but they all have an import instruments
    capability.)

 3. Find FS1PERF.INS and FS1PART.INS and import each file.

    (If you have previously imported an FS1R file, Cakewalk may
    ask you if you want to replace the current settings. [Yes,
    you do.]  Personally, I don't know how effective that method
    is--so I deleted the previous FS1R sections in my MASTER.INS
    by hand before installing these files.  Don't try that unless
    you know exactly what you are doing [and have created a
    backup first].

    Depending on your version of Cakewalk, you may also be
    informed that one file is using the same Controller names as
    the other, and do you want to overwrite the existing
    settings. Just say "yes.")

 4. Select Options->Instruments

    (Again, it may be "Settings->Instruments" in other versions,
    but you will find "Instruments" somewhere.)

 5. Scroll the left window until you find the Port where your
    FS1R is located.  All sixteen channels for that Port are
    listed.  Select channel 1, and then click on "Yamaha FS1R
    Performances" in the right window.

 6. Select channels 2 through 5 of the same port, and ensure
    that channel 1 is now un-selected.  Click on "Yamaha FS1R
    Voices" in the right window.

If you use the above installation method and the suggestions
below, you will now be able to easily use both FS1R Performances
and Parts in your MIDI sequences.
              
    
PERFORMANCES AND PARTS--MULTI-TIMBRAL ACCESS:

Whew!  Yamaha is legendary for its inscrutable documentation, but
the manual for the FS1R is in a league of its own--an
astoundingly useless document.  It took a lot of fiddling around
and the help of the folks on the FS1R mailing list for me to
answer the simplest of questions:  How do you access the
Performances and Parts from a sequencer like Cakewalk?

Here's what I've learned, with the hope that it will save you
some time.

  - The main building block of the FS1R's sounds are Parts, also
    referred to as "voices." Although the manual almost dismisses
    their usefulness as standalone synth voices, the unit
    contains over 1,500 of these Parts, many of them highly
    interesting and useful FM and FS sounds.

    The more complex Performance sounds are the default operating
    mode of the FS1R.  Performances are created by layering up to
    four Parts.

  - The FS1R's Performances are NOT multi-timbral.  You can only
    have one at a time.  They are quite literally designed for
    performance.

  - The FS1R's Parts (or Voices) are multi-timbral, but you
    cannot access them directly.  If you want to use Parts in a
    MIDI sequence, you must do so through a Performance.  I know
    that may sound confusing, but I'll show you how below.  I'll
    also show you how to create a Performance that specifically
    allows you to use Parts in a multi-timbral sequence.

  - Since a Performance is built by layering up to four (4)
    Parts, then the maximum number of multi-timbral Part voices
    you can sequence AT ANY ONE TIME is four.  Forget MIDI
    Channels 6-16 with the FS1R.  You'll never use them, since
    the maximum number of MIDI channels it can access with unique
    voices is five, and even then not all five at the same time.

Here's how you access four multi-timbral Part voices.

 1. In UTIL/SYSTEM/MIDI/PgmMode, set the parameter to
    "Multi."  (Leave it there as long as you are using the
    FS1R for sequencing instead of playing out.)

 2. Press EXIT until you get back to the Performance screen.

 3. Cursor through that screen until you get to the Perf Ch
    setting.  Set that to 1.  From now on, you can only play
    Performances on your FS1R on MIDI channel 1.

    (Is it bad to limit Performances to one channel?  Maybe.  If
    you spread a single Performance on multiple MIDI channels,
    you can use different Volume, Pan, and--with more
    sophisticated sequencers--effects and plugins for subtle
    variations while sequencing that Performance.

    However, while that is theoretically true, it has never been
    practically true for me.  So far, one voice per channel has
    always been plenty enough for my work.  Especially
    considering the benefit described below.

    Remember, that isn't the same as limiting the FS1R to one
    TRACK.  You can have as many tracks on FS1R MIDI Channel 1 as
    you need in Cakewalk and other sequencers.

    So, just set Perf Ch to Midi Channel 1 for now.)

    (If you have another MIDI synth sharing the FS1R port and 
    Channel 1 is taken by that synth, see Addendum 1 in this 
    document.)

 4. Now, we need to create a shell Performance that will let us
    access Parts directly with our sequencer.  We'll edit
    Internal Performance preset #1.  You want to edit each part
    in that preset so that they respond only on the four
    subsequent MIDI channels.  

    You may get best results if you press UTIL->INITIAL->PERFORM 
    to reset Internal Preset #1 to basic, default Performance 
    settings.  The FS1R comes with the Performance "Teck Hook"
    in that slot, which has some pretty wack settings.  

    Be sure to press EDIT/PERFORM->STORE after you're done.

    These are the important settings.

                                      PERF CH
        Performance Internal 1           01
        ---------------------------------------------------
                                       RCV CH     RCV MAX
             Part A                      02         02
             Part B                      03         03
             Part C                      04
             Part D                      05

    Make sure that each part is point to some patch, instead of 
    NONE.  It doesn't matter which. Perhaps at some point you'll
    decide you have some favorites, and you can re-edit Internal
    Performance #1 to point at those.

    (You may want to tweak other settings in the Performance to
    your own personal liking, but you MUST do the above.  If 
    you're uncomfortable with programming, just start with a basic
    initialized Performance preset, make this MIDI channel settings,
    and you're ready.  When you're ready to tweak further, you
    might want to start by raising the REV level on each part
    somewhere between 20 and 35.  After that, you're on your own.
    Have fun!  [And get a software librarian like SoundDiver!])

 5. Now call this Performance something like "Seq. Parts" and
    save it.

 6. When you sequence PERFORMANCES with the FS1R, use Midi Channel 1.

    When you sequence PARTS, simply set MIDI Channel 1 to
    Internal Performance Preset #1 (the one you created), and lay
    your MIDI tracks down on MIDI Channels 2 through 5.  Parts
    can be multi-timbral.  You can use your sequencer to select
    any Part on Channels 2 through 5 that you need.

 7. The Performance preset you created is simply a shell.  You'll
    never play any notes on MIDI Channel 1 when that Internal
    Performance Preset #1 is called up.  However, MIDI Channels 2
    through 5 will respond to all MIDI commands, including patch
    and bank changes, so you have full run of all the 1,500+ Part
    voices inside the unit.

 8. What if you want to use Parts in some places during a
    particular sequence and a Performance (or Performances) in
    others?  You can do it.  Just use a Patch/Bank Change command
    on MIDI Channel 1 to call up whichever Performance you want.

    Below is a crude visual representation of a MIDI sequence
    that shows this technique. Assume that the asterisks are
    notes, or MIDI data.  On Channel 1, the sequence contains
    notes that are triggering a performance.  Then the sequence
    changes to Internal Performance #1, the "shell" Performance
    that allows us to access the four parts.

    At this point, the composer can now sequence MIDI data on
    MIDI Channels 2-5. Finally, the sequence points to another
    Performance, which requires MIDI information on MIDI Channel
    1 again.


    (Use a fixed space font like Courier to see the following
    spaced correctly.)
    
   Ch 1  |**[Any Perf]***|    [Perf #1]       |**[Any Perf***|
   Ch 2  |               |****[Voice A]*******|              |
   Ch 3  |               |****[Voice B]*******|              |
   Ch 4  |               |****[Voice C]*******|              |
   Ch 5  |               |****[Voice D]*******|              |


   IMPORTANT:  When you *first* change to your "shell"
   Performance, MIDI Channels 2-5 will be set to the four default
   Parts pointed to by the shell performance.

   Therefore, you MUST embed patch change information in the
   sequence to change to the Part you want.  Simply selecting the
   patch change in Cakewalk's main window won't work.

   (Some reviewer actually said that the FS1R's implementation
   here was "elegant."  Actually, I think it's a little clumsy.
   Even with a venerable old TX-81Z, you don't have to go through
   all of this foolishness to play a Part.  At least the FS1R is
   not so clumsy as to make you not want to use Parts--once you
   get used to this, it's easy.)

   I routinely give the shell Performance a Volume of 127 and
   then specfically enter Volumes for all four Parts whenever I
   switch to my performance shell.  That way, I never get a bad
   surprise on instrument volume after the switch.


Addendum 1
----------

  I mentioned above that you MUST set the FS1R Perf Ch to 1, and
  that you will only access Performances on MIDI Channel 1 from
  now until the day you die.  Well, that's not really true.  I
  don't think there's anything preventing you from setting the
  Perf Ch to something else, and the Parts MIDI Channels to
  channels other than the ones I recommend, using a shell
  Performance whose Parts point to those channels.  I just
  haven't tested any other way.


Addendum 2
----------

  For the sake of completeness, I have also included a file named
  YAM-FS1R.INS. This file contains all patch names in one
  instrument file.  Simply import this file, select every MIDI
  channel that points to your FS1R, and click on "Yamaha FS1R."

  Now you set your FS1R to an Performance channel and Parts
  channels that you like, and you can reassign your Performance
  and Parts channels on the FS1R any time you like, without
  having to reassign instruments in Cakewalk.

  For such minimal convenience, however there are downsides.  You
  are also now responsible for making sure that you are selecting
  "legal" banks for Parts or Performances when performing patch
  changes.

  I really don't recommend using this file because--while it is
  more flexible--it can introduce unneeded variation in your
  routine.  And make you waste your time while you try to
  remember what MIDI channels you set your FS1R for in a
  particular sequence.  I prefer to use consistent settings.

  Keep the following in mind when changing patches when this file
  is used.

  -  In the .INS file, the Part BANK names are denoted as
     follows:

     [Yamaha FS1R Voice Int]
     [Yamaha FS1R Voice B]
     ..
     [Yamaha FS1R Voice J]
     [Yamaha FS1R Voice K]

  -  And the Performance BANK names are denoted as follows:

     [Yamaha FS1R Perform Int]
     [Yamaha FS1R Perform A]
     [Yamaha FS1R Perform B]
     [Yamaha FS1R Perform C]

  These are the names that will appear in the "Bank" column on
  your Cakewalk screen.  All banks will apparently be available
  to you, but if you select a Performance bank on a MIDI channel
  that actually contains a Part (or vice versa) results will be
  unpredictable.


Addendum 3
----------
  Sorry for the dismal sequence I've included for you to demo
  your Internal Performance #1, especially since I've done it 
  to one of my favorite tunes.  It will get you started, though.


Addendum 4
----------

  Much thanks to the members of TekLab's FS1R mailing list:

  http://teklab.com/services/mailinglists/fss-list.html

  and also to Javier Valdivia, whose original Cakewalk .INS
  Performances file was used as a basis for the files here.