-------------------------------------------------------------------------------
Background SoundTracker ModulePlayer                    v1.04 30-Aug-1990 17:23
-------------------------------------------------------------------------------
                                                     Coding & design by ALT_Man

This little module will play the specified Amiga-soundtracker module until
told to stop. It allocates space from the RMA to fit the module in so it's
best to be at the supervisor '*' prompt when you load tunes. Use *PM to load
the PlayerModule.

Start a tune going using:                 *PlayMod <modulename>
where <modulename> is the name of an Amiga soundtracker module. From version
1.00, automatic selection of 15 or 31 instrument format is performed.

Note: Using a *PlayMod while one tune is playing will cause the first tune
      to be stopped and the second one loaded & started.

Stop a tune playing with:                 *PlayStop                  

Show information about a tune with:       *PlayStatus
This shows song name (not filename!), 15/31 instrument format, tune length, and
module length.

Set channel separation with:              *PlayStereo <0|1>
Where 0 is Archimedes channels (slight bias left/right so tunes can be heard
out of single-speaker archies) and 1 is Amiga channels (full left/right).

Sample rate is currently fixed at 29Khz per channel. Takes appx 25%-ish CPU time.
                                        
This is now supplied in a RISC OS-type application: the directory includes this
file, the 'PM' module, the programs 'playmoda' (plays 15 instrument modules,
commented source), and 'playmoda2' (plays 31 instrument modules).

Contact points:

      Voice: (0749)  72234 (ask for Hugo)
             (0831) 444192 (VodaFone)
      Data : (0749) 679794 (300-2400    - 1 line )
             (0749) 670030 (300-HST/V32 - 2 lines)
      Email: Prestel - 045847608, CIX - altman
      Snail: Hugo Fiennes, Burcott Manor, Wells, Somerset, BA5 1NH
                                                                  
Please note that the code contained in this player and in 'playmoda' and
'playmoda2' is copyright (c)1988/1989/1990 Hugo Fiennes and may not be used in
any commercial programs without prior permission from me. Use in public domain
demos, your own programs is permitted, as is copying of the ENTIRE !STracker
directory (not parts of it so as everyone gets all the files!). Please send me
a copy of any demos you do using this routine (or any other routine!) so I can
update the demo-library on my BBS!

Have fun, y'all!

ALT_Man        
                 
Version 0.06 (first release version)
------------
                                    
Version 0.07
------------

- My address/contant numbers updated as we have moved!

Version 1.00
------------

- Now autoselects 15/31 instrument files. 32 instrument player source included.

Version 1.01
------------

- 32 instrument play now fixed!
                                     
Version 1.02
------------

- BIG problem with me not clearing top bit of picth incase it was used in 31
  instrument tunes!

Version 1.03
------------

- Fixed now so it never (fingers crossed) loses notes, I was storing a word instead
  of a byte in the 'newdata' bit (blush). PlayModA and PlayModA2 also updated with
  this fix! The problem ONLY occurred if the buffer filling was interrupted by the
  'intr' routine (ie new note data), ie this was is you were running the player
  off interrupts. If you ran off VSYNC's (eg in main demo loop or whatever) then
  it is fine. Still, it's fixed now!

- If you have problems with modules giving address exceptions: it is probably that
  the player can't work out what format the file is in: if the player finds a
  &78 (decimal 120, ascii 'x') at position &1D7 in the file it loads, it assumes it
  is a 15 instrument file. If you have 15 instrument files without this byte,
  load an editor (eg !Edit) and find byte &1D7 (decimal 471) using f5, and key
  [copy] (to delete that character), and then [x] (must be lowercase, this is the
  hex &78). Then the module will play just fine.

Version 1.04
------------

- Just got filetype allocation from Acorn. Official filetype for
  soundtracker modules is now &cb6.

- Fixed problems with pitchbend on some tunes being a bit over-zealous and
  pitchbending off the top of the pitch range!

- 31 instrument tunes now can access the top 16 instruments (at last!). I
  was checking the wrong bit last time... oops! PlayModA2 fixed to
  incorporate this change too.

- PlayStereo command added which allows you to set the stereo separation.
       
- A few bits fixed hopefully to stop spurious crashes (clear more variables
  before restarting...)
