PLAY Documentation
==================

Sonix Score Player 1.0 - December 1, 1987
(C) Copyright 1987 Mark Riley,
All Rights Reserved.

Sonix is a trademark of Aegis Development, Inc.
Amiga and Workbench are trademarks of Commodore-Amiga, Inc.


Some Information About PLAY
===========================

PLAY is that program you've been patiently waiting for that'll let you
listen to Sonix tunes without Sonix itself.  Not only can you play scores,
but you can also create PLAY scripts that play multiple scores, one right
after the next.  This allows for continuous music which is desirable for
slide shows and the like.  This is possible since PLAY can start a score
playing, while preloading the next score.  In addition, PLAY may be used
from either the Workbench or the CLI.

This program is ShareWare; it isn't free.  If you like PLAY and want to
continue to use it, please send $10 to the address below.  This will make
you a legal user of PLAY.

  Mark Riley - Play
  P.O. Box 234
  Simi Valley, CA 93062

Thank you!  Paying for PLAY will help to reimburse me for the time I spent
on it, as well as to provide improved versions with time...  If you have
any questions or comments regarding PLAY, I can be reached at the above
address or the following services:

BIX: mriley - PLINK: SONIX

PLAY is a quality program, well worth the money you'll spend for it.  With
PLAY you don't need to buy an expensive music composing program if all you
want to do is listen.  So, let PLAY and your Amiga rock you...

Enjoy!  -Mark-

Important Note
==============

You (as an individual) may freely redistribute PLAY in its original unaltered
(and PAKed) state provided that you do not charge money for the program.
PLAY is intended for private use only.  It is copyrighted software.  It may
not be used (in full or in part) for commercial applications, nor may it be
used for demonstration purposes associated with commercial applications.
If it is your desire to do so, I may be reached at the above address or at
(805) 583-8173 to discuss licensing arrangements for including PLAY or its
object code routines into your application.


What You've Got Here
====================


Play           The Sonix score player itself
Play.doc       The file you are now reading
LED            Swaps in/out audio filter on A500/A2000


Playing Scores from the Workbench
=================================

Open the Scores drawer by double click on its icon.
Now, just double click on a score icon and it should load and play.  You
may also use extended selection to play multiple scores in the order they
were selected.  If PLAY encounters a problem and can't load the score it
will "beep" the display and try to load the next score (if any.)  If you
wish to stop playing a score, double click on the PLAY icon.  Also, if
you try to play a score while another is playing, the new score will
override the previous one.


Playing Scores from the CLI
===========================

Usage: PLAY [*] [I=instrdir] score[.SMUS]

If you plan on using PLAY from the CLI then copy "Play" to your commands
"c:" directory.  Just specify the pathname for the instruments directory
and the pathname for the score, and PLAY will load and play that score.
You don't need to type the ".smus" part of the score name as PLAY will
do that for you if necessary.  Use quotes if a pathname has spaces in it.
If you want PLAY to run asynchronously, add the asterisk as the first
parameter.  This works better than "run" because it allows you to perform
an "endcli" properly.  This is useful for playing songs from a startup
sequence.  To stop a score while playing, just issue a Ctrl-C to abort
(if PLAY is running asynchronously then use "play *" or start another score
playing to abort the original score.)

Example:

1> dir
     Scores (dir)
     Instruments (dir)
1> dir scores
  Jingle Bells.smus           Cameo.smus
  YTV.smus
1> play i=instruments "scores/jingle bells"
1> cd scores
1> play i=/instruments ytv cameo.smus
1> cd /instruments
1> play * /scores/cameo
1> 


Creating & Using PLAY Scripts
=============================

PLAY scripts basicly allow you to sequence through many songs back-to-back.
This feature is especially useful for slide shows or demonstrations that
require backround music.  You might even want to setup a sequence of songs
you want your Amiga to play in the backround while you are busy with other
tasks.  One important feature of PLAY scripts is that they enable you
to play one score while loading the next.  This way you get continuous
music since no time is spent loading a score between songs.

To create a PLAY script, you need a text editor of some type.  PLAY scripts
consist of a series of options seperated by spaces, commas, or carriage
returns.  Most options consist of a letter, an equals sign "=", and an
argument.  If an argument (such as a pathname) has spaces in it then
enclose that argument in quotes.  When you save your PLAY script, you might
want to use the extension ".play" so that you can distinguish PLAY scripts
from other types of files.  PLAY script options are discussed in the next
section.

You may start a PLAY script from either the Workbench or the CLI.  You must
put a copy of the "Script.info" icon file in the same directory with your
PLAY script (appropriately renamed.)  Just double-click on the icon to
start your script playing.  To invoke a PLAY script from the CLI you
use the following:

Usage: PLAY [*] P=script

In addition to aborting a PLAY script with a Ctrl-C, you may stop the
current song and skip to the next with a Ctrl-E.  When invoked from
a CLI, PLAY can report any errors it encounters within a script file.

Example:

1> dir
     Scores (dir)
     Instruments (dir)
  Demo.play
1> dir scores
  Cool.smus                   Cameo.smus
  Rollover.smus               YTV.smus
1> type demo.play
;This is a demo PLAY script:

d=scores        ;Set current directory
i=/instruments  ;Specify instruments directory

r=2                 ;Repeat the following twice
  v=128 c=3 a=cool  ;1/2 volume & repeated 3 times
  v=-1 a=cameo      ;Use score's original volume
.                   ;End of repeat loop

r=0           ;Repeat the following forever
  a=rollover  ;A bunch of asyncronous scores
  a=ytv
  c=2 a=cool  ;Repeated twice again
  a=cameo
.             ;End of repeat loop
1> play p=demo.play
1> 


PLAY Script Options
===================

These options may be used in either a PLAY script or in the command line
itself.  For simplicity's sake, the usage desciptors do not indicate all
of these options.

score       A filename by itself indicates a score to be loaded and played.
            PLAY will append ".smus" to the filename as necessary.

A=score     This option tells PLAY to play the specified score and proceed
            immediately with loading the next score.  This allows for
            continuously playing music.  One drawback is that you need
            enough memory to hold two scores and their instruments into
            memory at one time.

I=instrdir  This specifies to PLAY where to look for a score's instruments.
            This applies to all subsequent scores until it is changed again
            with another "I=".  Relative pathnames are ok here.

D=newdir    PLAY scripts inherit their current directory from the Workbench
            or CLI.  You can specify a new current directory with this
            option.  Relative pathnames are also legal here.

C=count     Specifies how many times to repeat a score.  A value of zero
            indicates that this score is to be repeated forever (or until
            aborted...)  The count value applies only to the next score to
            be played.

V=volume    Specifies the volume at which the following scores will be
            played.  The valid range is from 0 to 255.  A value of -1
            uses the score's default volume.

R=repeat    This option allows you to repeat a block of options (and
.           scores) a number of times.  The repeat block is bounded by
            the repeat option and a period "." (or another repeat option.)
            A value of zero indicates that the block is to be repeated
            forever.  Repeat blocks only work from within PLAY scripts.

;comment    A semi-colon ";" indicates that the rest of a line is a
            comment.

P=script    You may link to another PLAY script from within a PLAY script.


The LED Program
===============

This program toggles the brightness of the front panel LED.  Also, on the
Amiga 500 & 2000 it will swap in/out the audio filter.  It can be
started from either the Workbench or the CLI.  Type "LED ?" to see the
parameters for CLI invocation.  While running a program that uses Amiga
sound output, try double clicking on the icon and you'll notice a
substantial difference when the filter gets swapped out.  It's like 
someone took the cotton out of your ears!  You may hear a squealling sound;
this is the aliasing that the filter was designed to eliminate in the first
place.  Double clicking again will turn the filter back on.

Example:  (for using with the CLI)

1> play * ytv   ;Play a score asynchronously
1> led ?        ;Lets you see usage
LED 1.1 - Mark Riley - 11/11/87
Usage: LED [DIM|BRIGHT|TOGGLE]
1> led          ;Toggles status of audio filter
1> led bright   ;Turns filter on
1> led dim      ;Turns filter off
1> led toggle   ;Same as "led" by itself
1>

