
                         *************************
                         *  V O I C E  -  6 8 0  *
                         *  -------------------  *
                         *************************

                                                By Mark Hanlon. 1991 ish

                         * PUBLIC DOMAIN MESSAGE *

 * This program is FREE for all. If you have a friend who wants to use it *
  * just ensure that this instruction file is included. See the end of *
      * these instructions for a list of required files/directories *

YOU WILL NEED:
--------------

  - A Midi Interface Unit.
  - A Yamaha PSS-680 Keyboard. 
  - A Pound of Lard. Yumm.

This program only supports the PSS-680 home keyboard at the moment.  It may
work  on  the  PSS-580  and/or the PSS-780 as it is, but I have not had the
opportunity  to  test  this.  If anybody could help out here, with the Midi
Data sheets for example, please do.  My address will be found later in this
document.

COOKING INSTRUCTIONS:
---------------------

        Go  on, double-click on the Voice-680 Icon.  That's it, there's the
front  Control  Panel.   Looks  a bit complicated doesn't it?  Don't worry,
it's  dead  easy.   Let's  talk  about  the bits from left to right, top to
bottom shall we?
        At  the very top is a menu bar.  Hold the right mouse button to see
it.

The MENU.
---------

        The menu is split into three sections. These are CONTROL, DISK and
MIDI. Let's have a look at each in turn.

  CONTROL
  -------
        ABOUT - Gives my name and address for ideas, donations, extensions,
                recipes etc.

        QUIT  - No warning! The program instantly closes down and dies.

  DISK
  ----
        LOAD - Lets you load a voice from disk to memory.

        SAVE - Lets you save the current voice setting to disk.

  MIDI
  ---- 
        GRAB - Enables you to grab a voice from one of the five keyboard
               banks.  You will be asked the number of the bank you wish to
               store, and then the message 'Waiting For Data' will appear.
               To transmit the data from the keyboard, simply press the
               Transmit Channel button on the keyboard twice (so that the
               LED display is flashing) and then press the Value + key
               under the display. After 5 seconds the data should be in the
               computer.

        SEND - Transmits the current voice settings to the bank shown at
               the top left of the screen.  See below for further
               instructions.


OK, now onto the main screen itself...


     * BANK:   This is the bank number that the voice will be transmitted
               to when it is sent to the keyboard.  It can be changed by
               clicking on the word itself.

     * VOICE:  Here we have the name of the current voice.  This is only
               used when saving to disk, as the keyboard doesn't store it.

     * The Asterisk. What asterisk?  When you begin the program, there will
                     not be one there. However, under certain circumstanses
                     one will appear. Let me explain.

The ASTERISK (*)
----------------

        When  developing  this  program, I found it very annoying having to
constantly  select  the  menu option to transmit the voice to the keyboard,
especially after small changes were made to the sound.  So I decided to add
an  Automatic  Transmission  feature, represented by an asterisk.  When you
either  GRAB  a voice from the keyboard or SEND one to it, an asterisk will
appear in the top right-hand corner.  This indicates that Auto Transmission
is  activated.   Now,  any  changes  made  to the sound with the mouse will
instantly  be  transmitted to the keyboard.  A fair amount of data shifting
is  going  on here, but thanks to AMOS and MIDI, it takes only about half a
second.
        When   you  load  a  sound  from  disk,  you  will  see  that  Auto
Transmission  is  off.  It will only be activated when you SEND the data to
the  keyboard.   This  is  to  protect data in the keyboard.  If the loaded
voice  has  its  BANK set to a number that already contains a good voice in
the keyboard, you won't accidentally erase it with the new data.

Next we move into the General Control section. This is all nice and 
simple..

     * The S stands for SUSTAIN. Click it on and off.
     * The V stands for vibrato. Again, click it.
     * From the V we have VDT (VIBRATO DELAY TIME) and PMS (PULSE
       MODULATION SENSITIVITY). VDT says how long the note has to be held
       down before vibrato starts. PMS sets the vibrato depth.
     * The arrow that points to its tail is FEEDBACK. This is exactly the
       same as the button on the keyboard itself.
     * AMS means AMPLITUDE MODULATION SENSITIVITY, and governs how the 
       volume of the sound will 'wobble up and down'! Try it and see, when
       one of the Amplitude Modulation lights is on (See below).
     * The final box will take you to the ADSR screen, where the volume
       envelope can be changed. See later for a full explanation.

CARRIER SECTION:
----------------

        The  carrier  is  the underlying sound, with no modulation.  Change
this to alter the general sound type.  As with the rest of the program, the
best way to understand it is to experiment.

     * The first box is the FREQUENCY box. This is just the same as on the
       keyboard itself.
     * FINE DETUNE is next, and does what it says.
     * COARSE DETUNE follows, and can be switched only on or off.
     * The wiggly sound wave is the AMPLITUDE MODULATION ENABLE. This says
       whether or not the sounds' volume will wobble. The level is set at
       the AMS gadget in the section above.
     * Next along is the LEVEL KEY SCALING graph. On page 41 of the PSS-680 
       Manual you will see a similar graph. The number controls how the
       volume of the notes change over the range of the keyboard. So, if
       you want the low end of the keyboard to be loud compared to middle
       C, set LO to 1 or 2. If you want the top end to be quiet, set HI to 
       14 or 15.
     * RKS stands for RATE KEY SCALING. Try it out and listen!
     * The round knob is the LEVEL control. Here, it sets the general
       volume of the sound.
     * Finally, the four boxes. Only one of these can be highlighted at a 
       time. This selects the wave form used by the note. You may choose
       from SINE, SQUARED SINE, SINE HALF WAVE or SQUARED SINE HALF WAVE.


MODULATOR SECTION:
------------------

        This  is  exactly the same as above, but operates on the MODULATION
of  the  sound.   The  only  difference  is  that  the LEVEL control is the
Modulation  level,  and  corresponds  to the Modulation Level button on the
keyboard.

ADSR SECTION.
-------------

        Clicking  on  the ADSR box at the top right of the screen will take
you  to another display.  Here you control just how the sound develops with
time.  For example, a piano type sound gradually fades as the note is held,
whereas  a  violin  sound  should continue for as long as the note is down.
Also,   the  sustain  length  can  be  set  here,  allowing  long,  ringing
vibraphones and bells to be created. Let me work from top to bottom. Please
see the simple diagram below for an explanation of the main controls.


     * AR  - Attack Rate. Controls how quickly the sound rises to full
             volume after a note is held down.
     * D1R - Decay 1 Rate. Controls how quickly the sound volume drops to
             the D1L level (see next).
     * D1L - Decay 1 Level. The level that the sound drops to when the note
             is held. Here, 0 means no decay from full volume, and 15 means
             a drop to no volume. This allows you to imitate the initial
             'stab' at a note. 
     * D2R - Decay 2 Rate. The rate at which the sound eventually dies to 
             zero, when the note is held. For a sound that doesn't die (eg,
             a violin) set this to zero.
     * RR  - Release Rate. Here you set the rate at which the sound dies 
             AFTER the key is released.
     * SRR - Sustain Release Rate. Finally, we set the rate at which a
             sound with the sustain light on dies. Set to a low value for
             bells. This value is represented on the graph by the dotted
             line.

        The  above  settings  appear  twice.   The  top  is  the  Carrier's
envelope;  the bottom the Modulator's.  Please try it out - you'll soon see
what controls what!
        The two buttons at the bottom are as follows.
     * MAIN     - Returns you to the front Control Screen.
     * TRANSMIT - Sends the current settings to the keyboard. However, if
                  the asterisk is on, changes will be automatically sent.
                  Please see above if you haven't heard of the asterisk.


               <--> 
              /\ D1R
             /  \     (Note held...)                    (D2R=0 here, for
            /    --------------------                     a non-decaying
           /         ^               \                             sound.)
          /          | D1L            \
         /           |                 \
        /<-AR->      v            <-RR->\



HERE'S ONE I MADE EARLIER...
----------------------------

        Having  read  the  above you're probably pretty confused.  The only
way  to  grasp what the controls do is to try them.  For this reason I have
supplied  a  few  example  sounds on disk in the Voices directory.  To load
these  voices  into memory and then to the keyboard, you'll need to use the
MENUs,  as  explained  above.   Firstly select LOAD from the DISK menu, and
double  click on a voice.  Then select SEND from the MIDI menu and the data
will  be in the keyboard, ready for you to play with.  Now, any changes you
make  by clicking in the screen will be instantly sent to the keyboard.  If
you  ruin  the  sound,  you can either load it in from disk (or another) or
grab a sound from the keyboard.
        To  grab a sound from the Voice List, simply select it (Eg The SINE
WAVE  -  Voice  99 - is a good one to start with) by pressing its number on
the keyboard, and then storing this sound in one of the Banks.  Then simply
GRAB this bank to the screen using the menu option.  Easy!


MAKE ONE FOR YOUR FRIENDS!
--------------------------

        This program is free, for anybody to use without charge. (This is
to let everybody with a PSS-680 keyboard get the most of their instrument.
OK, there are probably only a few of you, but I did read that somebody
somewhere wanted a voice editor for the PSS range, so even if only that
person is satisfied....) 
        To copy it, you MUST include the following.

        a) These Instructions. Don't be cruel to your friend!
        b) The Midi.library in the current LIBS: directory, and the
           MidiLib_README file. (see credits)
        c) The voices/ directory and the demo voices. This must be at the
           top directory of the bootdisk. IE assigned as SYS:voices

If the midi.library or sys:voices/ are not found, the program will not run!


THE ICING
---------

        What icing would you like to see? How about a CLI voice transmitter
program. Then you could load up your favourite sequencer (Eg Music-x) and
from a shell or CLI type something like 

        transmit df0:voices/phaser.680 4

and suddenly keyboard bank 4 holds the created voice.. If there's interest,
I'll do it. How about other keyboards? Does this work on the PSS-580?
Please tell me somebody!
        Any more ideas to please the PSS users out there? My address is

                        Mark Hanlon,
                        43 Dove House Road,
                        Haverhill,
                        Suffolk.
                        England
                        CB9 0BZ

During term time 1992-'93 I'll be at

                        Mark Hanlon,
                        Cripps Hall,
                        University Park.
                        Nottingham.
                        England
                        NG7 2QW


CREDITS:
--------
                                             ----
                                             ----
        This program would not exist without AMOS  (and the Compiler!)
                                             ----
                                             ----

Also, it would not exist without the midi.library written by Bill Barton of
Pregnant  Badger  Music.   I  have  included  the MidiLib ReadME file where
copyright  details  appear.   These files were obtained from Fish Disk 227.
Thanks to you all for your generosity.

OK, and thanks to you, Joanne 'Wedge' Edgeley! There you go!
