@database AccessiblePlayer.guide
@Author Jail
@INDEX INDEXNODE
@Font topaz.font 8
@Master APlayer.guide
@Node Main "Root"
@TITLE "AccessiblePlayer V2.00 Copyright © Access 1994-1995"
     Welcome to the Amigaguide®d world of AccessiblePlayer:

     Please select one of the following topics:

     @{" Featurelist      " LINK Features} @{b}   List of cool features

     @{" Disclaimer       " LINK Disclaimer}    Legal Information

     @{" Registration     " LINK shareware}    How to register

     @{" Requirements     " LINK Requirements}    What you need

     @{" Introduction     " LINK Introduction}    Introduction to APlayer

     @{" How to Install   " LINK Installation}    How to install APlayer

     @{" ToolTypes/CLI    " LINK Tooltypes}    Tooltypes and CLI arguments
     
     @{" How to use       " LINK Usage}    How to use APlayer

     @{" Keyboard control " LINK keyboard}    How to control APlayer with the keyboard

     @{" Module Types     " LINK ModTypes}    Module types supported by APlayer

     @{" ARexx            " LINK Arexxmain}    How to use ARexx with APlayer
     
     @{" Programmers      " LINK /Developer/Libraries.doc/MAIN}    Coders, read this

     @{" Thanks to        " LINK Thanks}    I want to thank my producer, and mom & dad...

     @{" History          " LINK History}    The history of APlayer

     @{" Future           " LINK Future}    The future for APlayer ..
     
     @{" Contact          " LINK contact}    How to reach the author@{ub}
@ENDNODE
-------------------------------------------------------------------------------
@NODE Features
@TITLE "The Featurelist of AccessiblePlayer"

  @{b}@{u}Special APlayer Features:@{ub}@{uu}
 
 - Supports 64 different @{"module formats" LINK modtypes}.
 
 - Supports S3M, Fasttracker I & II, Multitracker and more.

 - Uses noteplayers. Stereo, 14 bit, surround, fastmem player ...

 - Agent Interface© including, from v2.00, @{b}Graphical Scopes!@{ub}

 - @{"Online Help" LINK OnlineHelp} (Press Help  while placing your pointer on the function you
   want help for).

 - @{b}WHY@{ub} requesters. If you get an error requester from APlayer and you don't
   understand what's going on, press the WHY gadget in the requester.  This
   gives  you  a  brief description of the error, and suggestions on how to
   correct it.

 - Recognizes  and  unpacks   179  different   cruncher  types  (using  the
   @{"Unpack.library" LINK cfgunpack}).
 
 - @{"Favourite Song System©" LINK FSS}
   @{b}No one else does this!!@{ub}
 
 - @{"Play samples" LINK sampleinfo} by the keyboard while listening to the module.
   This now includes a multikeyboard function (press "DEL").
   The number of channels used depends of the module, so if you hear  a  16
   channels S3M module you can play in multi mode with 16 CHANNELS!!!!
   @{b}No one else does this!!@{ub}

 - @{"Save samples" LINK sampleinfo} can be used to rip  your favourite  samples, even  if  you
   don't own the actual music program. This also works with S3M, XM a.s.o.
   @{b}No one else does this!!@{ub}

 - Can play modules from Fast memory, saving your sparesome Chip memory.
 
 - @{"App-Icon" LINK app-icon} and App-window.
 
 - Full commodity interface. Depending on your @{"system" LINK Requirements}.
 
 - Supports @{"Lha/Lzx files" LINK cfgunpack}, including extract pattern.
 
 - Supports @{"Public Screens" LINK cfgwindowsscreens}.
 
 - Make your own favourite lists of modules with the @{"APML©" LINK ML} system.
 
 - @{"Early load" LINK cfgOptions} system which kills the waiting time between the modules.
   @{b}We were the first!!@{ub}

 - @{"ARexx interface" LINK Arexxmain}

 - And much, much more...
@ENDNODE
-------------------------------------------------------------------------------
@NODE Future
@TITLE "The Future of APlayer"

  @{b}@{u}The Future of APlayer:@{ub}@{uu}

  In this  text  we will try to give  you an idea of  what will  happen  to
  APlayer in the coming versions.

  - More Agents (any ideas? then write us NOW!)
  - More scopes (Martin Wulffeld, Hvad mener du med at du ikke gider?)
  - Automatic conversion of protracker clones
  - Automatic ripping of modules from  all kinds of files (e.g. from a demo
    executable file).
  - Even more players
  - Your ideas ;-)
  - And more, more, more ....
@ENDNODE
-------------------------------------------------------------------------------
@NODE Disclaimer
@TITLE "Copyright information and rules of distribution"

  @{b}@{u}Copyright information:@{ub}@{uu}

  AccessiblePlayer is now @{"Shareware" LINK Shareware}.  However  parts  of  the  APlayer  is
  copyright by  other people  (the external players). Whereever possible we
  have tried to make sure  that  no  parts  of  the  APlayer  violates  any
  copyrights.  If  you  think  this  is  not  the  case,  please contact us
  immediately!

  If you or your company  want to use APlayer on  a coverdisk  or something
  like that, we would like to know about it, and get a copy of the product.

  And  since  RBF  Software  wants us  to do this, we must  write that  the
  OctaMED and MED players are copyrighted by them.
  
  @{b}Although this program is SW, you  are  welcome  to  send  anything,  like
  money, ski masks,  postcards,  cars,  burgers  (preferably McChicken!?!),
  Kinder Mælkesnitte etc.@{ub}

@ENDNODE
-------------------------------------------------------------------------------
@NODE Shareware
@TITLE "Shareware Notice"

  @{b}@{u}Shareware Payment:@{ub}@{uu}

  Everything has a price .. even APlayer :) :(

  Until now APlayer has been a free-to-use program for all of you. But  due
  to  the fact that APlayer now requires a lot of work from the programmer,
  we have decided to make APlayer shareware. If you do  not  register  your
  copy  of  APlayer, there will be a few things to annoy you :) The program
  is still usable, there aren't  any F*CK*NG requesters every time  you  do
  something. Only a few useful things have been disabled:

  - No ARexx support
  - No Rewind/Fast forward
  - A limited number of modules in the list at a time.

  If you register, you will also get your name in the about window :)

  @{b}IMPORTANT:@{ub}

  If you register, you will only register the MAIN program. All the players
  and  noteplayers  are  still  public domain. We can't make money on other
  peoples work :)


  @{b}How To Register:@{ub}

  @{i}No matter how you register, you will have to fill  out  the  registration
  form and send it to us together with your registration.@{ui}

  1. Cash Registration

     You can send cash directly to the author in two different currencies:

     100 Dkr (Danish Kroner)

     25 US Dollars (Due to the exchange price)

     Send them to:

     @{b}Thomas Neumann
     Kongensgade 78
     3550 Slangerup
     Denmark@{ub}

  2. Eurocheck

     If you live in europe you can just use an eurocheck or another type of
     check which will not cost us anything to cash. The amount is:

     100 Dkr (Danish kroner)  eq. to 10 UK Pound or 25 DM

     If your bank won't write the check in  Dkr,  then  you  should  add  5
     pounds (12 DM) extra for the exchange fee.

     Send them to: See above

  3. NET registration (Idea taken from the GoldED package)

     This is the easiest way to register. You can  send  an  email  to  the
     email  address  below.  Then  you  can deposit the money direct on the
     author's account (this can be done in any bank).
     You will then recieve an E-mail with an UUencoded keyfile.

     Send the letter to:

     jail@diku.dk

     and transfer the money (100 Dkr) to this account within two weeks (you
     will not get the keyfile before we recieve the money):

     @{b}Thomas Neumann

     Account number: 5822 0003091623

     Unibank
     Frederiksborgvej 9
     3650 Ølstykke
     Denmark@{ub}

@ENDNODE
-------------------------------------------------------------------------------
@NODE Requirements
@TITLE "Hard'n'soft-ware requirements"

  @{b}@{u}Hard'n'soft-ware requirements:@{ub}@{uu}

  You need at least kickstart v2.04 to use this program.

  Four  general libraries  are  necessary  to  run  the  APlayer  with  all
  functions.  APlayer  cannot  start  without  the  Reqtools.library (v38+)
  (included)   and   any  version  of  the  Diskfont.library.  But  if  the
  commodities.library  isn't  available,  it  will  just  not  start  as  a
  commodity (this means that you can't use the hotkeys). Amigaguide.library
  is needed if you want online help for APlayer.

  If you want the APlayer to unpack your modules, you should use one of the
  following   libraries:   Powerpacker.library,  Xpkmaster.library  or  the
  Unpack.library. All of them are included in this package though.

  To make use of the ARexx part of APlayer you need  the  Rexxtools.library
  which is included in the package.

  The APlayer has been successfully tested on the following machines:

  Plain A1200, A1200+4MB fastram, A1200+68030+4MB Fastram,  A4000(680EC30)+
  16MB  Fastram,A4000(68040)+16MB  Fastram and an A4000(68060)+16MB Fastram
  including tests with Enforcer, Mungwall and IOtorture.

@ENDNODE
-------------------------------------------------------------------------------
@NODE Introduction
@TITLE "Introduction to AccessiblePlayer"

  @{b}@{u}Introduction:@{ub}@{uu}

  The AccessiblePlayer is our contribution to the  Amiga  market  of  music
  players.  We  thought  that  our favourite player (Smartplay) just wasn't
  good enough anymore, and since none  of  the  available  players  (D.A.S.
  Modplayer,  Delitracker,  HippoPlayer,  BananaPlayer, EagleTracker and so
  on) fulfilled our needs, we decided to write our own player.

  We hope we have reached our goal by making a small, fast and userfriendly
  player, the AccessiblePlayer.


  @{b}P.S. Some people think that we are the guys behind Smartplay. That is @{i}NOT@{ui}
  true. We have never been in contact with  the maker  of Smartplay and  we
  probably never will.@{ub}
@ENDNODE
-------------------------------------------------------------------------------
@NODE Installation
@TITLE "Installing the AccessiblePlayer"

  @{b}@{u}Installation:@{ub}@{uu}

  Just  use  the  installer-script  included  in this package. You can both
  install AND remove (who would?) the APlayer with that script.

  @{b}Warning:@{ub} APlayer is pretty complex to  install, so if you want to install
           it by hand, don't blame us if something goes wrong.
           In other words: @{i}"Don't try this at home"@{ui}
@ENDNODE
-------------------------------------------------------------------------------
@{ub}
@NODE Usage
@TITLE "How to use AccessiblePlayer"

  @{b}@{u}The Accessible Interface:@{ub}@{uu}
   -----------------------------------------------------------------------
   | · |  AccessiblePlayer 2.00                          @{"(1/1)" LINK tunes}          |
   |----------------------------------------------------------------------
   |@{" Cycle gadget  " LINK MainCyc}@{"                 Status bar                 " LINK Status}@{" S " LINK Sampleinfo}@{" ? " LINK About}|
   |----------------------------------------------------------------------
   |@{"_­¯" LINK Volreset}@{" Volume Slider " LINK Volume}|                                           |    |
   |--------------------|                                           |    |
   |@{" »>" LINK SReset}@{"  Speed Slider " LINK Speed}|            @{" Main Listview " LINK mainListview}               |@{" | " LINK scroll}|
   |--------------------|                                           |    |
   |@{" 1 2 3 4 " LINK 1}@{" [] " LINK Loop}@{"^v^v" LINK Shuffle}|                                           |    |
   |----------------------------------------------------------------------
   |@{" ICN" LINK Icn}@{" CFG" LINK Cfg}@{" FSS" LINK FSS}@{" ML " LINK ML}@{"  |<  " LINK Prev}@{"  <<  " LINK Rew}@{"   >  " LINK Play}@{"  >>  " LINK FF}@{"  >|  " LINK Next}@{"   ^  " LINK Eject}@{"  ||  " LINK Pause}|
   -----------------------------------------------------------------------

  @{b}App-Window@{ub}: The   main  window  of  APlayer  can  be  used  for  dropping
              module-icons.  The names of the modules will automatically be
              added  to  the  end  of the modulelist. See also @{"App-Icon" LINK App-icon}.

  @{b}The Zoom Gadget@{ub} can be used to zip the program window.  The  main  window
  will  be  zipped  to the titlebar only. Notice that the placement will be
  saved in the configuration file.
@ENDNODE
-------------------------------------------------------------------------------
@Node Maincyc
@TITLE "Main window cycle"

  @{u}@{b}Main window cycle:@{ub}@{uu}

  This cyclegadget is used to select the state of the @{"status-bar" LINK status}.

  There are five different states of this cycle, which are:

  @{b} Name   : @{ub}
    This shows the name of the module, which is found IN the module. e.g it
    is  not  necessarily  the  name  of  the  file, so the two names can be
    different; that is, if the player can't find a name inside the  module,
    the filename will be displayed in the @{"status bar" LINK Status}.

  @{b} Author : @{ub}
    The player tries to find the name of the author in the module,  and  if
    it  succeeds, it  will display it in the statusline. See in the section
    @{"Module types" LINK modtypes} for info on which players  support the  author  name.

  @{b} Played : @{ub}
    This  shows,  if supported (see @{"Module types" LINK modtypes}), the actual position and
    the  total  songlength.  It  also  calculates  how many % of the module
    that has been played, and the total listening time.

  @{b} Type   :@{ub}
    When  the  module has been tested, the @{"module type" LINK modtypes} is displayed in the
    status-line.  This  could be anything from the SID-player to the TFMX 7
    channel replayer.

  @{b} RexxMsg:@{ub}
    This displays info text made by an @{"Arexx" LINK ARMAINCYCLE} script.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Status
@TITLE "Status bar"

  @{u}@{b}Status Bar:@{ub}@{uu}

  This  line will display some info on the current module.  It will display
  the name, author, playing time, module type and rexx message.
  See @{"Main window cycle" LINK mainCyc} on how to change the state.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node SampleInfo

  @{u}@{b}Sample info window:@{ub}@{uu} (Shortkey s)

  Pressing  the @{b}S@{ub}-Button will, if samples are supported (see @{"module types" LINK modtypes})
  open a new  window called the sampleinfo  window. The samples are  always
  saved in signed IFF-8SVX format.

  From left to right it will display the number of the sample,  name,  size
  in  bytes,  type  of  the  sample  and  whether  it's  placed in chip- or
  fast-memory.

  The sample can be of these different types:

  XX - it means that it's a sample with the sample bit XX.
  AM - Synthetic voices (Amplitude Modulation)
  FM - Precalculated synthetic voices (Frequency Modulation)
  HB - Sample used as a synthetic voice (HyBrid)
  AL - AdLib sound used in S3M modules
  WS - WaveSample. Same as hybrid samples, but these  can be played in  the
       sample window. Used in Art of Noise.
  ?? - Unknown type
  -- - No sample

  If the type is typed in @{b}bold@{ub} it means that the sample is unsigned.

  The sampleinfo window is not only a display/info window, you can actually
  use it to accompany your favourite modules. You can do it in two ways:

  @{b}1@{ub}. Pause  the  module  (in  the  main  window) and use your mouse, or the
     @{"keypad" LINK Keypad},  to  select a sample. Then you can use your keyboard (like in
     Protracker) to play the sample at different notes, ranging from C-1 to
     B-3.  Like  in  protracker you can use F1 and F2 to change whether the
     z-key  should  be a C-1 (default) or a C-2 note. Note that if a sample
     has the volume set to 0, then it will be played with a value of 64.

  @{b}2@{ub}. Turn off one  of the @{"sound-channels" LINK 1} and, like before, choose a sample
     with the @{"keypad" LINK Keypad} or with the mouse. Then use the keyboard to accompany
     the module.

  @{b}Multichannel Mode:@{ub}
     Per default  APlayer will only play  the sample in one channel. But if
     you   press  "DEL"   (the  Delete  key)   in  the  sampleinfo  window,
     multichannel mode will be enabled.
     If you are in pause mode, all the channels  which are ON will be used.
     If  you are  using the  accompany  function, the  OFF  turned channels
     will be used to play the samples.
     Please note that the number of channels used is  dependant of the used
     Player.

  The last function in the sampleinfo window is the little  disk-gadget  in
  the upper right corner of the window. Selecting a sample and pressing the
  disk-gadget will open a requester which will let you save the  sample  as
  an  8SVX  soundfile with the samplerate 16574 (in pal) or 16726 (in ntsc)
  which is the C-3 note. Pressing "return" will do the same.
  If you have the @{"Multi Sample Saver Agent" LINK multi} present in  your agent list, it
  will pop up to give you much more options on how to save the sample

  Instead of using the keypad or the mouse, you can use the @{"keyboard" LINK listview}.

  If you want to stop the playing sample NOW! then  you  can  hit  the  "<"
  which is placed on the right side of the left shift key.


  @{b}NOTE: Not  all players support  the sample info window, and therefore not
        the  sample-save  and  accompany  functions. (see @{"Module types" LINK modtypes} for
        more info)@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Keypad

  @{u}@{b}Numeric Keypad:@{ub}@{uu}

  This  works  exactly  like in @{"QuadraComposer" LINK Thanks}. Sample 1-16 is chosen from
  the  upper  left corner on the numpad to the lower right corner, which is
  the Enter-key. @{b}"0"@{ub} is used to jump forward 16 samples, and @{b}"."@{ub} to go back
  to the previous 16 samples.

  Note that pressing a keypad key, will trigger the sample at the note C-3.
  And that is not changeable yet, sorry!

  Note that if a sample has the volume set to 0, then  it  will  be  played
  with a value of 64.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node About

  @{u}@{b}About Window:@{ub}@{uu} (Shortkey ?)

  This will open a window containing some info on the current module:

    @{b}Module name           :@{ub} The name of the module.
    @{b}Author                :@{ub} The author of the module.
    @{b}Active Player         :@{ub} The Player-library which is used now.
    @{b}Active NotePlayer     :@{ub} The actual NotePlayer.

    @{b}Number of tunes       :@{ub} Number of @{"tunes" LINK tunes} in the module.
    @{b}Song Length           :@{ub} How long is this module, songpositions.
    @{b}Used Patterns         :@{ub} How many different patterns are used.
    @{b}Supported/Used samples:@{ub} The  number of used or supported samples e.g. a
                            Protracker  module  will always use 31 samples,
                            while  a  QComposer  uses  a  various number of
                            samples.
    @{b}Used Channels         :@{ub} The number of channels in the actual module.
    @{b}Used Mixing rate      :@{ub} This  will, if a NotePlayer  is mixing, display
                            the actual mixing rate.
    @{b}Actual Speed          :@{ub} This  is  only  useful  for  players supporting
                            cia-speed commands (like Protracker).
    @{b}Module Size           :@{ub} The size of the unpacked module.


  @{b}NOTE: A lot of the above-mentioned parameters is not supported by all the
        players.  See  @{"module types" LINK modtypes}  for  info on which players supporting
        what, or try it out for yourself.@{ub}


  The "next"-gadget will show you the version number, the  arexx-port  name
  and the creditlist for the AccessiblePlayer.

  You can use the "cancel"-gadget or <return> to go back to the main window
  again.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node tunes

  @{u}@{b}Tunes:@{ub}@{uu}

  A module normally consists of 1 tune only, but players like SID and  TFMX
  supports  more  tunes in one module. You can choose between the different
  tunes using  the keys 1-9 and 0 for  10. Of course,  you can also use the
  numeric keyboard. If there  are more than  10 tunes, you  may use "+" and
  "-" to skip to the  next 10 tunes or to go back to the previous 10 tunes.
  The only place where you can't do it is in the sample info window.
  The "(x/y)" in the title bar shows "current tune/total number of tunes".
  If you zip the window, this will instead show the position/length.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Volreset
@TITLE "Volume Reset"

  @{u}@{b}Volume Reset:@{ub}@{uu}

  Pressing  this  gadget will reset the volume to the default volume, saved
  in your config-file (see @{"configuration" LINK cfg}). You can also use @{"keyboard" LINK keyboard}.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Volume
@TITLE "Adjust Volume"

  @{u}@{b}Volume Adjusting:@{ub}@{uu}

  This slider is used to boost or lower the volume of the player.  Remember
  that the actual volume is saved with your configuration file!
  You can also use @{"keyboard" LINK keyboard}.

  See also @{"Volume reset" LINK volreset} and @{"Configuration" LINK cfg}

  @{b}NOTE: Nearly all moduleplayers support this, but a few don't. See in the
        @{"Module types" LINK modtypes} section for more info.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node MainListview
@TITLE "Main window list"

  @{u}@{b}Main window module list:@{uu}@{ub}

  This  displays  all  the  modules  currently  in the @{"module list" LINK modlist}. If you
  choose  a  module  it will be highlighted. That is, the playing module is
  always the one which is highlighted.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Scroll
@TITLE "Modulelist Scroller"

  @{u}@{b}Modulelist Scroller:@{ub}@{uu}

  Use this scrollbar to scroll through the @{"list of modules" LINK mainlistview}.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Sreset
@TITLE "Speed Reset"

  @{u}@{b}Speed Reset:@{ub}@{uu}

  Pressing  this gadget will reset the speed to the default value, saved in
  your config-file. (See @{"configuration" LINK cfg}).

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: Changing  of  speed  is  only  available  when  the player supports
        cia-timing. (See @{"Module types" LINK modtypes})@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Speed
@TITLE "Adjust Speed"

  @{u}@{b}Adjusting Speed :@{ub}@{uu}

  This slider is used for changing the speed of the module.
  Remember that the default speed is saved with your configuration file!
  (See @{"Configuration" LINK cfg})

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: Changing  of  speed  is  only  available  when  the player supports
        cia-timing. (See @{"Module types" LINK modtypes})@{ub}
  
  See also @{"Speed reset" LINK Sreset}.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node 1
@TITLE "Sound Channels"

  @{u}@{b}Sound Channels:@{ub}@{uu}

  These 4 buttons are used to turn the amiga sound channels on or off. This
  is used when you want to accompany the module.
  (See the @{"Sampleinfo window" LINK sampleinfo}).

  Please notice that these buttons indicate the  hardware  audio  channels,
  which  means  that  if  a  noteplayer  is playing, pressing the channel 1
  button can turn of upto 8 channels.

  Ofcourse they can be used for fun too!

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: It's  not  all moduletypes which supports turning off channels e.g.
        the 7 channel TFMX-player. See the @{"Module type section" LINK modtypes}.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Loop
@TITLE "Loop Active Module"

  @{u}@{b}Module Loop:@{ub}@{uu}

  This gadget can toggle between positions:

  - No  looping,  which  will automatically skip to the next module, when a
    module is finished.
  - Looping,  which  will make the actual module start over again when it's
    finished.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: This  function  is  only  supported  by  some  moduletypes. See the
        @{"Moduletype section" LINK modtypes} for info. @{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Shuffle
@TITLE "Shuffle Modulelist"

  @{u}@{b}Modulelist Shuffler:@{ub}@{uu}

  Pressing this gadget will shuffle all the modules in the list, making the
  actual module the first. If no modules are played the first module in the
  shuffled list will be loaded and played.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  Of  course  this  function  only have a meaning when you have more than 2
  modules in the list.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Icn
@TITLE "Iconify AccessiblePlayer"

  @{u}@{b}Iconifying AccessiblePlayer:@{ub}@{uu} (Shortkey i)

  This will close all the open windows belonging to the APlayer, and pop up
  an  @{"APP-ICON" LINK App-icon}. If you want to open the Player again you just double-click
  the   app-icon.  Or  you  can  use  the  popup-hotkey  specified  in  the
  @{"configuration-window" LINK cfg}.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node App-icon
@TITLE "App-Icon"

  @{u}@{b}AccessiblePlayer App-icon:@{ub}@{uu}

  When the APlayer is iconified you can drop module-icons on  the app-icon.
  This is done by opening the drawer in which you are keeping your modules,
  select one (or more, using shift), then move the pointer over the APlayer
  app-icon  and  release the mousebutton. The modules will automatically be
  appended to your actual modulelist, and if it's empty,  the  player  will
  play the first of the dropped modules.
@ENDNODE
---------------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
---------------------------------------------------------------------------
@Node ML
@TITLE "Module list Editor"

  @{u}@{b}Module list Editor:@{uu}@{ub} (Shortkey m)

  This editor is used to create/change/load and save @{"modulelists" LINK modlist}.

  @{b}Add:@{ub}    Opens  a  filerequester from which you can choose the modules you
          want to add to the module list. The selected modules will  either
          be added in the end of the list or, if you have selected a module
          in the modulelist, just before that.

  @{b}Del:@{ub}    Deletes the selected module from the list.
          Pressing shift together with  the  del  button  will  delete  all
          double instances of a module/file in the list.

  @{b}Exg:@{ub}    Select  a  module,  press  exchange and pick a module to exchange
          with the first.
  
  @{b}Clear:@{ub}  Clears the module list completely.
  
  @{b}Sort:@{ub}   Sorts the module list alphabetically.
  
  @{b}Load:@{ub}   Opens  a  filerequester  which  lets  you open a new module list,
          deleting the current one.
  
  @{b}Append:@{ub} Exactly  the  same as above, but this will append the chosen list
          at the end of the list, or just before the selected module.
  
  @{b}Save:@{ub}   Opens  a  filerequester  which  lets  you save the current module
          list, with an ".APML"- extension.


  @{b}Arrow up/down:@{ub} These will move the marked module to  either  the position
                 above or below.
                 Pressing @{b}shift@{ub} in  conjunction  with the gadget, will move
                 the selected module to the top or the bottom of the list.

  The number of modules in the list can always be seen in the right side of
  the window titlebar.

  To move around in the list you can use the @{"keyboard" LINK listview}.

  To highlight the module being played press control+return.

  @{b}NOTE:@{ub} A  nice  feature  is  that if you doubleclick an item in the module
        list, in the module list editor, the module will  be  loaded.  This
        can give you a better view of how the list looks.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE modlist
@TITLE "Module list"

  @{u}@{b}Module list:@{uu}@{ub}

  The module list is the name for the modules displayed in the
  @{"main window module list" LINK mainlistview}.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Prev
@TITLE "Previous module"

  @{u}@{b}Previous module:@{uu}@{ub}

  Pressing this button will tell APlayer to  restart  the  current  module,
  except  if  the  current module is still playing the first pattern¹, then
  APlayer will skip to the previous module in the list.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  ¹@{b}NOTE: This function is only supported by some moduletypes.
         See the @{"Moduletype section" LINK modtypes} for info. @{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Rew
@TITLE "Rewind"

  @{u}@{b}Rewind:@{uu}@{ub}

  This will skip to the previous pattern in  the  current  module.  If  you
  press rewind when the first pattern is playing, it will just restart.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: This function is only supported by some moduletypes.
        See the @{"Moduletype section" LINK modtypes} for info. @{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Play

  @{u}@{b}Play:@{uu}@{ub}

  This opens a filerequester which lets you add one or more modules to  the
  current  list  of  modules.  This will only disable the pause mode if you
  have the @{"Jump To Loaded Module" LINK Jumtoaddedmodulepload} gadget in the configuration checked.

  You can also use @{"keyboard" LINK keyboard} to control this feature.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node FF
@TITLE "Fast Forward"

  @{u}@{b}Fast Forward:@{uu}@{ub}

  Use this to skip to the  next pattern.  If you reach the end it will load
  and play the next module.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

  @{b}NOTE: This function is only supported by some moduletypes.
        See the @{"Moduletype section" LINK modtypes} for info. @{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Next
@TITLE "Next module"

  @{u}@{b}Next Module:@{uu}@{ub}

  Pressing  this will tell APlayer to  skip to the next module in the list.
  If  you  are  in  @{"pause" LINK pause} mode  APlayer will  unpause and skip to the next
  module.

  You can also use @{"keyboard" LINK keyboard} to control this feature.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Eject
@TITLE "Eject module"

  @{u}@{b}Eject:@{uu}@{ub}

  Pressing this once will stop the current  module  and  free  the  memory.
  Pressing it again clears the module list.

  If you hold down the shift key while  pressing  the  eject  button,  will
  eject all other modules than the one currently playing.

  You can also use @{"keyboard" LINK keyboard} to control this feature.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Pause
@TITLE "Pause module"

  @{u}@{b}Pause:@{uu}@{ub}

  This will simply pause the module playing right  now.  And  play  if  you
  press it again.

  You can also use @{"keyboard" LINK keyboard} to control this feature.
@ENDNODE
-------------------------------------------------------------------------------
@NODE keyboard
@TITLE "Keyboard control keys"

  @{b}These keys can be used in all windows when they are activated:@{ub}
  --------------------------------------------------------------
  
  @{b}Space              @{ub}: Can be used to  toggle  the  state  of  the
                       audio  filter. However, if you have checked
                       the  @{"Force Filter Off" LINK cfgoptions}   gadget   in   the
                       configuration window, space will not affect
                       anything.

  @{b}TAB                @{ub}: Cycles through the APlayer windows.

  @{b}Escape             @{ub}: Use this to close the  active  window.  All
                       APlayer  windows  can be closed, except for
                       the main window. If you press escape in the
                       main window,  one of the other windows will
                       close for each keypress.

  
  @{b}These keys can only be used when the main window is activated:@{ub}
  --------------------------------------------------------------
  
  @{b}`  Back apostrophe @{ub}: Jump to random module and play it

  @{b}~  Tilt            @{ub}: Shuffle
  
  @{b}Del                @{ub}: Eject
  
  @{b}Shift Return       @{ub}: Reset volume
 
  @{b}Alt Return         @{ub}: Reset Speed
  
  @{b}Arrow up           @{ub}: Like pressing the play button
  
  @{b}Arrow down         @{ub}: Pause
  
  @{b}Arrow left         @{ub}: Rewind
  
  @{b}Arrow right        @{ub}: Forward
  
  @{b}Shift Arrow left   @{ub}: Loads next module
  
  @{b}Shift Arrow right  @{ub}: Loads previous module
  
  @{b}Alt Arrow up       @{ub}: Increase speed

  @{b}Alt Arrow down     @{ub}: Decrease speed
  
  @{b}Alt Arrow left     @{ub}: Increase volume
  
  @{b}Alt Arrow right    @{ub}: Decrease volume
  
  @{b}[ or (             @{ub}: Toggle channel 1    \
                                            |
  @{b}] or )             @{ub}: Toggle channel 2     |
                                             » Top row on numpad
  @{b}/                  @{ub}: Toggle channel 3     |
                                            |
  @{b}*                  @{ub}: Toggle channel 4    /
  
  @{b}Backspace          @{ub}: Module loop on/off
  
  @{b}<                  @{ub}: Cycle the maincycle gadget backwards
  
  @{b}>                  @{ub}: Cycle the maincycle gadget forwards

  For  control  keys  in  the special  windows,  see the  sections  on  the
  different windows.

@ENDNODE
--------------------------------------------------------------------------------
@NODE Tooltypes
@TITLE "Tooltypes and CLI arguments.."

  @{u}@{b}Tooltypes and CLI arguments:@{uu}@{ub}
  
  (Lines in @{i}italic@{ui} explains what will  happen  when APlayer is started with
  the argument/tooltype and APlayer is running already.


  @{b}CX_POPUP (POP):@{ub} Defines if you want the APlayer to  open  its  window  at
  startup, or start in hidden mode.
  Keywords are @{b}YES@{ub} (default) or @{b}NO@{ub}.

  @{b}CX_POPKEY (KEY):@{ub} The hotkey for APlayer. All valid commodity hotkeys will
  work here. Default is "ctrl alt a".

  @{b}CX_PRIORITY (PRI):@{ub} The APlayer task priority. Default is 0.
  
  @{b}MODULE:@{ub} This argument is CLI ONLY! Just type the name (with path) of  the
  module(s) and it will be placed in the modulelist. APlayer will not start
  to play the first module, unless you also use the JUMP argument!
  @{i}The modules will be added to the list.@{ui}

  @{b}MODULELIST (ML):@{ub} The name of a modulelist file you want APlayer  to  use.
  For instance S:example.APML. The modules in the modulelist will be placed
  before any modules specified on the Command line.
  @{i}The modules in the modulelist will be added to the list.@{ui}

  @{b}CONFIGFILE (CFG):@{ub} Specifies the config file you want to use.  Default  is
  ENV:APlayer/APlayer.prefs
  
  @{b}PUBSCREEN (PS):@{ub} The  public  screen  on  which  you want APlayer to open.
  Remember that  the  name is case SenSitiVe. Default is the default public
  screen, e.g. Workbench.
  @{i}APlayer  will  close all  the APlayer  windows  and  reopen  them  on the
  specified public screen.@{ui}

  @{b}LOOP:@{ub} Specifies the state of the loop gadget in the main window  (ON/OFF)
  or toggles the state (as set in your configuration) (TOGGLE).
  @{i}Same effect.@{ui}
  
  @{b}INFOOPEN (IO):@{ub} This will force the info window to open at start.
  @{i}Same effect.@{ui}

  @{b}MODULELISTOPEN (MO):@{ub} If  you  want  the  module  list  window to  open at
  startup, use this argument.
  @{i}Same effect.@{ui}

  @{b}FSSOPEN (FO):@{ub} Use this argument if you want the FSS window to  be  opened
  at startup.
  @{i}Same effect.@{ui}

  @{b}SHUFFLE (SH):@{ub} If you use this argument,  all the modules  (or the modules
  in the specified modulelist) will be shuffled. Just like if you press the
  shuffle gadget in the main window.
  @{i}This will  shuffle  all modules in the  modulelist,  including  any  just
  added modules.@{ui}

  @{b}PATH (P):@{ub} This option takes one argument, which is a path.  The path will
  be scanned  for modules, just  like the @{"Start Scan Path" LINK cfgpaths} option. This can
  be used in conjunction with the UNIQUE argument to add files  from a dir,
  which is constantly updated.
  
  @{b}UNIQUE (U):@{ub} This will avoid any modules to be represented more than  once
  in  the modulelist. This works both with modules, the "Path" argument and
  lha files.
  
  @{b}NOTE:@{ub} If you specify any modules, a modulelist, or use the PATH argument,
  your @{"scandir" LINK cfgpaths} will be ignored.

  These parameters/tooltypes  can @{b}ONLY@{ub}  be  used  when  APlayer  is already
  running:
  
  @{b}JUMP (J):@{ub} This will  automatically jump to the  first module  just added,
  independent of your @{"config setting" LINK jumptoaddedmodule}.
  @{b}NOTE@{ub} : If you add modules via the CLI,  APlayer  will  not  automatically
  play them @{b}unless@{ub} you use the JUMP argument.

  @{b}QUIT (Q):@{ub} This  will quit the  player, WITHOUT executing the  arexx macro
  defined in your @{"settings" LINK cfgarexx}.
@ENDNODE
-------------------------------------------------------------------------------
@NODE Thanks
@TITLE "The people and organizations we wish to thank"

  @{u}@{b}Thanks to:@{uu}@{ub}

  @{i}Nico François@{ui} for the fabulous Reqtools library and the powerpacker
  library. + Magnus Holmgren for continuing the development of reqtools.

  @{i}Urban Dominik Mueller@{ui} & @{i}Bryan Ford@{ui} for the even more fabulous Xpk master
  library.

  @{i}Jarno Paananen@{ui} for  the source to  his great PS3M, which  made us able to
  support S3M, Fasttracker][ :) and many other formats ...

  @{i}Hans Henrik Happe@{ui} for the cool bar scope agent!

  @{i}John Hendrikx@{ui} for the SQSH library
  
  @{i}Jorma Oksanen@{ui} for the SMPL library

  @{i}Bo Lincoln@{ui} for the real Quadracomposer player (including the cia and all
  commands)

  @{i}Deftronic@{ui} for Trash'm-One (We hate the enforcer hits!!)

  @{i}Michael Sinz@{ui} for Enforcer

  @{i}Commodore@{ui} for Mungwall and Segtracker

  @{i}Marley/Infect@{ui} for a lot of different moduletypes.
  
  @{i}Lance Norskog@{ui} for Sox

  All the @{i}authors@{ui} of the different players

  All our @{i}betatesters@{ui}

  @{i}Peter Hjelt@{ui} for the Smartplay which has been a big inspiration source for
  the Accessible Player design.

  @{i}KiLLraVeN/MYSTiC@{ui} Thanks  to  you for  the  bugreports. Keep  them coming.
  (NOT :^) And for the fabulous Arexx script concerning modulelists.

  @{i}Kaikumaa Timo@{ui} for the SoundTracker15 module.

  @{i}Amiga@{ui} for being the best computer EVER (I.... outside!)

  And to @{i}Amiga Technologies/Escom@{ui} for showing a lot of interest in keeping
  developing the Amiga (We are looking forward to the PPC :)

@ENDNODE
-------------------------------------------------------------------------------
@NODE History
@TITLE "The History of AccessiblePlayer"

  @{u}@{b}History:@{uu}@{ub}

  @{"1.00" LINK h100} Released 2-Sep-1994
  @{"1.01" LINK h101} (Not released)
  @{"1.02" LINK h102} (Not released)
  @{"1.03" LINK h103} (Not released)
  @{"1.04" LINK h104} (Not released)

  @{"1.10" LINK h110} Released 27-Dec-1994

  @{"1.20" LINK h120} Released 15-Mar-1995

  @{"1.21" LINK h121} Released 21-Mar-1995

  @{"1.30" LINK h130} Released 29-May-1995

  @{"1.40" LINK h140} Released 7-July-1995

  @{"2.00" LINK h200} Released 27-Dec-1995

@ENDNODE
-------------------------------------------------------------------------------
@NODE h100
@TITLE "The History for Version 1.00"

  1.00 (Released 2-Sep-1994)
  --------------------------
  - First public release.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h101
@TITLE "The History for Version 1.01"

  1.01 (Not released)
  -------------------
  - Ups!!! Fixed a bug in the tune  selector.  You  could  only  select  10
    tunes, even if there were more.
  - Fixed a bug in the Protracker player. It made  a  noisy  sound  if  you
    played an empty sample with the volume command.
  - A little bug fixed in the double buffering loader. If  the  loader  has
    loaded the next module into the memory and you then delete it from  the
    list  before it will start, the player will play it anyway. Now it will
    load the next module instead.
  - If you press the 's' key in the main window,  the  sample  info  window
    will always open, even if the gadget was ghosted. This is fixed now.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h102
@TITLE "The History for Version 1.02"

  1.02 (Not released)
  -------------------
  - The global APG_WaitDMA routine is  changed,  so  it  will  use  EClocks
    instead of raster lines. This mean the global data APG_Hz is obsolete.
  - When APlayer tries to open a file, and it couldn't locate it,  it  will
    now show the filename it tries to open instead of a simple "Object  not
    found" requester.
  - A little bug in the configuration loader. It didn't show an error if it
    couldn't open the file and it cleared all players instead of  only  the
    extern.
  - The module loader will now show an open error requester.
  - The "Delete from list" is changed to "Remove from list".
  - Started to make ARexx interface.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h103
@TITLE "The History for Version 1.03"

  1.03 (Not released)
  -------------------
  - Now APlayer only allocates the channels when a  module  is  in  memory.
    This means, all players are changed a bit and the two global  functions
    APG_AllocChannels and APG_FreeChannels are also changed a bit.
  - Fixed a bug in the IFF-8SVX and RIFF-WAVE player config routine.
  - Changed the SID player to use the playsid.library.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h104
@TITLE "The History for Version 1.04"

  1.04 (Not released)
  -------------------
  - Added the FTM, Whittaker and the TFMX 1.5 player.
  - Changed the loader routine, so now it will cut any fileextension if  it
    couldn't open the file first time. This improves the TFMX loader.
  - A minor bug in the SoundMonitor replayer fixed.
  - A new version of the TFMX 7-Voice player is added. Now you can play the
    Turrican III main tune without a crash after 3 minutes.
  - Also a new version of the TFMX-Professional player is inserted. It will
    not use VBlank anymore.
  - Fixed some small bugs here and there.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h110
@TITLE "The History for Version 1.10"

  1.10 (Released 27-Dec-1994) At the Party '94 in Denmark.
  --------------------------------------------------------
  - Changed all the windows to be auto adjusted.
  - The sample info & the module list windows  are  now  intelligent.  That
    means, they will auto resize to the number of items in the list.
  - Added zoom gadget in the titlebar in the main window.
  - Removed the window positions & sizes from the main preference file into
    and new preference file called APlayer.win. See the docs for more info.
  - Fixed a major bug in the free module routine.  Sometimes  it  closes  a
    library that should not be closed, such as the gadtools.library.
  - Fixed a bug in the QuadraComposer player. It crashed when  it  plays  a
    sample that doesn't exists.
  - Fixed another bug in  the QuadraComposer  player. It crashes the second
    time a module was started.
  - Now you can use the  cursor keys and the return key in the Sample Info,
    Module Editor, FSS and Players window.
  - Players config files are moved to a subdirectory.
  - You  can now  use a lots  of keys to  control the main  window  gadgets
    (hotkeys).
  - Added the Hippel, Hippel-COSO and the PumaTracker player.
  - Added the IFF-AIFF player, and I hate IEEE numbers :^(.
  - Changed the RIFF-WAVE player, so it also support 16-bits samples.
  - You  can  now delete modules from your FSS list now!!! It was like hell
    to make a delete function in a binary tree.
  - The title in the main window are now font sentitive :)
  - The  about  window  are  made  to  a separate window, just like all the
    others.  That  means  it  will  be  updated  every time a new module is
    loaded.
  - HolyNoise player changed to MajorTom player.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h120
@TITLE "The History for Version 1.20"

  1.20 (Released 15-Mar-1995)
  ---------------------------
  - Optimized  the keypad playing. Now will APlayer first start to play the
    sampling and then update the sample window.
  - You can now use the keypad to select a sample when you play a module.
  - Fixed a little bug in all the double click routines.
  - Fixed  a  bug  in the JamCracker player. If you played on the keyboard,
    the sample sounded strange.
  - Fixed a bug in the loader routine.
  - Changed  the  about  window,  so  now  you  can  switch between the two
    "windows".  It  will also  be  updated  every time a module changes CIA
    tempo.
  - Now  you  can  encrypt  your modules with xpk. APlayer will ask for the
    password. It will also unpack recursively. That means you can pack more
    than  one time. You can use this, if you want to pack your modules with
    SQSH and then encrypt them.
  - Fixed a bug in the players own  config. Didn't put  the window to front
    if it was already open.
  - Added  volume  and  channel control and removed an  enforcer hit in the
    Fred player.
  - Added channel  control and song-end to  the Music-Assembler  player and
    fixed  a bug  in the  player (not my fault!), so  now it also  works on
    an A4000.
  - The  Hippel player  is totally rewritten. Still some problems with some
    tunes.
  - Added a lot of new global functions and a few tags.
  - Added the IFF-SMUS player.
  - Added  some  new  CLI  and tooltype  arguments + changed some of them a
    little bit. Now you can start APlayer again with new arguments.
  - Fixed a little bug in the channel on/off keyboard routine.
  - Now you can press return in the about window to close it.
  - Added the Action Amics, In Stereo!, SidMon 1.0 and SidMon 2.0 players.
  - I forgot  to set  the IntuiTicks  IDCMP flag  in all the  windows where
    there was a listview gadget. This is  fixed now, so there should be a
    repeat on the arrows.
  - Added  the  Sonic  Arranger, Sound Control, SoundFX 1.3 and SoundFX 2.0
    player.
  - Fixed some small bugs here and there.
  - Added the TME, Tronic Tracker and the VectorDean player.
  - A  big bug  fixed (when APlayer tries to load the next module in hidden
    mode).
  - Some  small  bugs in  the Protracker player (Thanks to KiLLraVeN/MYSTiC
    for telling us).
  - Changed  all the  listviews. Now  I have  implemented  my own  listview
    routines, and  that means  that the look is the  same on both KS3.0 and
    KS2.0!!!
  - Now the FSS will find out if you have moved some  modules next time you
    hear them.
  - Added Up/Down arrows in the module list editor.
  - Added new Med/OctaMed players. Now supports MMD0/MMD1/MMD2 files.
  - Added multiplay in the sample info window (press "DEL")
  - New intelligent author finding system implemented.
@ENDNODE
---------------------------------------------------------------------------
@NODE h121
@TITLE "The History for Version 1.21"

  1.21 (Released 21-Mar-1995)
  ---------------------------
  - Due  to  a BIG bug  in version 1.20, which  made APlayer  unuseable  on
    machines below  OS3.0, we  have released this  version, which have been
    succesfully tested on an A600 (OS2.0).
  - The author finding system have been improved on some points.
  - The  name of  the actual module  is displayed in  the titlebar when the
    window gets zipped.
  - A few bugs have been fixed in the SID-, and the MusicAssembler-players.
  - The default  hotkeys in the config  have been modified  a bit, we found
    out  that  "control" couldn't  be  abbreviated  as "ctrl". But  all the
    hotkeys works as always.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h130
@TITLE "The History for Version 1.30"

  1.30 (Released 29-May-1995)
  ---------------------------
  - Added menu in the ARexx configuration window.
  - Changed the player config window design and added menus.
  - Small minor bugs/fixes.
  - Intern ProTracker to ProTracker/NoiseTracker/SoundTracker 15/31
  - New Player Configuration file format (NOT BACKWARDS COMPATIBLE).
  - Made the Paula noteplayer
  - Added 2 new ARexx commands: GetNotePlayer & GetChannels.
  - Renamed the Arexx command "GetType" to "GetPlayer"
  - Added the NotePlayer bit in the "GetInfo" ARexx commando.
  - Changed the Sample Info window.
  - Added the Stereo-32Voices noteplayer.
  - Added the FastTracker, TakeTracker and MultiTracker player.
  - Added  the   FastMem-4Voices,   Mono-32Voices   and   Surround-32Voices
    noteplayers.
  - Optimized the APG_CalcVolume function.
  - Added the RealSurround-32Voices and 14Bit-32Voices noteplayer.
  - Added the ScreamTracker 3.0 and FastTracker 2.0 player.
  - Now  can  you  change  the  tempo  on all players which uses the intern
    interrupt.
  - When you close the main config window, you will not automatic close the
    player and arexx window anymore.
  - Added key file system.
  - Fixed a little bug in the RIFF-WAVE player.
  - The  RexxMsg  field  in  the  main cycle gadget is removed if ARexx not
    turned on.
  - Added  to  the  module  list window titlebar the number of items in the
    module list.
  - Added the DeliCustom player.
  - Fixed  bug  that prevented  resizing of ModuleList-window  after adding
    modules from CLI.
  - Fixed  bug that  tried to load  LhA-icons dropped  on the icon  or main
    window as normal modules.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h140
@TITLE "The History for Version 1.40"

  1.40 (Released 7-July-1995) At the South Sealand Party '95
  ----------------------------------------------------------
  - Oktalyzer uses a NotePlayer now and added a lot of extra features.
  - Fixed a mixing bug in the Mono-NotePlayer.  It  mixes the channels in a
    wrong order.
  - If  you  play  a module and you have the player config window open, you
    can  see  which  player  is  active. If you then choose one of the menu
    items  that  load  a  new  config  file,  the active player will not be
    highlighted again if it is in the list. This is fixed now.
  - Fixed  a  bug  in  the  Pro/NoiseTracker player. It didn't mask out the
    finetune  value,  and  therefore  with  some  modules  if  sounds  very
    abstract.
  - QuadraComposer and JamCracker uses a NotePlayer now.
  - If you try to play some AM samples and the player uses a NotePlayer, it
    try to play it. This is fixed now.
  - FutureComposer 1.0-1.3 and FutureComposer 1.4 uses a NotePlayer now.
  - Now  you  can use the KEYPATH enviroment variable to the path where you
    have stored your key-file.
  - The playing module is now highlighted both in the main window and i the
    modulelist.
  - Added the Art Of Noise player.
  - Fixed a pausing bug in the FTM player (Thanks Hans Malte Kern :=)
  - NEW! Agent sample save interface created.
  - Fixed a serius bug i Paula-noteplayeren. Sometimes it made some strange
    sounds.
@ENDNODE
-------------------------------------------------------------------------------
@NODE h200
@TITLE "The History for Version 2.00"

  2.00 (Released 27-Dec-1995)
  ---------------------------

  - Rewritten the Fibonacci encoding for IFF-8SVX, now it works 100%
  - Added a progress bar when you convert or save samples.
  - Added  some players: Activision  Pro, Delta  Music  2.0,  SoundFactory,
    MarkII, TimFolin, Voodoo Supreme Synthesizer, Mark Cooksey, J.C.Brooke
    and Sound Monitor 2.2.
  - The IFF-8SVX, IFF-AIFF and RIFF-WAVE players now uses Noteplayers.
  - Added "Play Once" to the sample players.
  - Added IFF-AIFF, RIFF-WAVE and RAW sample converters.
  - MED now uses Noteplayers. Do not use the Fastmem  noteplayer  with  MED
    with synth sounds, they will be skipped.
  - No matter which window you have activated, you can choose which subsong
    to play (with 0-9 +/-) Previously  this was not possible  in the config
    and show windows.
  - The IFF-8SVX sample saver now also saves the author name.
  - Added the Scope Interface (Graphical scopes to everyone). This includes
    the RGB box, Spinning Squares and the Bar-Scope.
  - We will NOT guarantee anything if you use FAKE key files for APlayer.
  - The (?/?) will show the module position when you zip the main window.
  - The CX_PRI argument now works correctly.
  - If you  add modules  via the CLI, APlayer  will not  automatically play
    them unless you use the JUMP argument.
  - Pressing <shift>+Eject will delete all but the playing module.
  - Pressing <shift>+Del button  in the Modulelist  window will  delete all
    double instances of module.
  - Pressing <ctrl> + <return> in  the Modulelist  window will  select  the
    playing module.
  - Updated the Noteplayers to use Jarno paananens S3M version 3.12.
  - Added the new configuration interface.
  - Fixed a bug which could cause APlayer to crash under OS2.0
  - Added the why function in error requesters.
  - Added Online Help (Place pointer and press <HELP>)
  - Warning! If  you use  the  XFH package  on your harddisk, do not  do an
    "Avail flush" command. Due  to unknown reasons this will  cause several
    programs, including APlayer, to crash.
  - + the usual amount of bug fixes :)

@ENDNODE
-------------------------------------------------------------------------------
@NODE contact
@TITLE "Contact addresses"

  Send bugreports, new players including modules and suggestions to
  
  Coder:
  ------

  Thomas Neumann (Tax)
  Kongensgade 78
  3550 Slangerup
  Denmark

  Send technotapes and modules to
  
  Designer, Alphatester & Guide writer:
  -------------------------------------

  Jakob Langgaard (Jail)
  Krebsen 101
  3650 Ølstykke
  Denmark

  E-mail: jail@diku.dk

  Designer & Betatester:
  ----------------------
  Asger Høgsted

  bims@diku.dk (internet)
@ENDNODE
--------------------------------------------------------------------------
@NODE ArexxMain
@TITLE "ARexx"

  @{b}@{u}ARexx with the APlayer:@{ub}@{uu}

  This section will describe all  the  commands  available  for  the  ARexx
  interface  in APlayer. If you don't know anything about ARexx, you should
  either skip this part, or try to find some documentation on the subject.

  To help you to get a better overview of the commands, we have split  into
  the following sections:


  @{" Channels   " LINK ARChannel} - Manipulate Channels
  @{" Eject      " LINK AREject} - Controls the Eject Function
  @{" Loop       " LINK ARLoop} - Change Loop
  @{" Main Cycle " LINK ARMaincycle} - Manipulate the Main Cycle
  @{" Modulelist " LINK ARModulelist} - Manipulate the Module list
  @{" Pause      " LINK ARPause} - Change the Pause state
  @{" Play       " LINK ARPlay} - What to Play
  @{" Requester  " LINK ARRequester} - Make ReqTools Requsters
  @{" Sample     " LINK ARSample} - Use the Sample Functions
  @{" Speed      " LINK ARSpeed} - Change/Get the Speed State
  @{" Tech Info  " LINK ARTechnical} - Get a lot of Technical Info
  @{" Various    " LINK ARVarious} - Miscellaneous
  @{" Volume     " LINK ARVolume} - Change/Get the Volume State
  @{" Wind       " LINK ARWind} - Forward/Rewind
  @{" Window     " LINK ARWindow} - Window Commands
@ENDNODE
------------------------------------------------------------------------
@NODE ARChannel
@TITLE "Channels"

  @{b}@{u}Channels:@{ub}@{uu}
  
  @{b}Command:@{ub}
    ChannelOff @{i}channel@{ui}

  @{b}Description:@{ub}
    Turns off the channel "channel".

  @{b}Input:@{ub}
    channel - A channel number between 1 and 4.

  @{b}Result:@{ub}
    None.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    ChannelOn @{i}channel@{ui}

  @{b}Description:@{ub}
    Turns on the channel "channel".

  @{b}Input:@{ub}
    channel - A channel number between 1 and 4.

  @{b}Result:@{ub}
    None.
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    state = GetChannel @{i}channel@{ui}

  @{b}Description:@{ub}
    Get the current state of the channel "channel".

  @{b}Input:@{ub}
    channel - A channel number between 1 and 4.

  @{b}Result:@{ub}
    state - This is a boolean where FALSE means off and TRUE means on.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    state = ToggleChannel @{i}channel@{ui}

  @{b}Description:@{ub}
    Toggles the state of the channel "channel".

  @{b}Input:@{ub}
    channel - A channel number between 1 and 4.

  @{b}Result:@{ub}
    state - This is a boolean where FALSE means off and TRUE means on.
@ENDNODE
------------------------------------------------------------------------
@NODE AReject
@TITLE "Eject"

  @{b}Command:@{ub}
    ClearList

  @{b}Description:@{ub}
    This will eject the current playing module, and free the  rest  of  the
    list. Which is the same as if you've clicked the eject button 2 times.

  @{b}Input:@{ub}
    None
  
  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    Eject

  @{b}Description:@{ub}
    This will either eject the currently playing module or eject the  whole
    list.  If a module is being played it will be ejected, and if no module
    is loaded played the list will be ejected.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
------------------------------------------------------------------------
@NODE ARLOOP
@TITLE "LOOP"

  @{b}Command:@{ub}
    state = GetLoop

  @{b}Description:@{ub}
    Get the current state of the loop gadget. The result is a boolean and 1
    means on and 0 means off.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    state - This is a boolean where FALSE means off and TRUE means on.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    LoopOff

  @{b}Description:@{ub}
    Set the loop to off.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    LoopOn

  @{b}Description:@{ub}
    Turns the loop on.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    state = ToggleLoop

  @{b}Description:@{ub}
    Toggles the loop and return the new state.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    state - This is a boolean where FALSE means off and TRUE means on.
@ENDNODE
------------------------------------------------------------------------
@NODE ARMAINCYCLE
@TITLE "MainCycle"

  @{b}Command:@{ub}
    name = GetCycle

  @{b}Description:@{ub}
    Get the current position of the main cycle. It  will  return  a  string
    with the cycle name, like Author.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    name - a string with the name of the cycleposition.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    RexxMsg @{i}string@{ui}

  @{b}Description:@{ub}
    Changes the contents of the REXXMSG in the main cycle.

  @{b}Input:@{ub}
    String - a normal text string.

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = SetCycle @{i}name@{ui}

  @{b}Description:@{ub}
    Set the main cycle to the "name", like SetCycle Author. It will  return
    an error if it couldn't find the name.
  
  @{b}Input:@{ub}
    name - a string with the name of the cycleposition.

  @{b}Result:@{ub}
    error - an error code which indicates if it could find the name in  the
            cycle. 0 means ok and 1 means error. Note that the result is in
            RC and not in RESULT.
@ENDNODE
------------------------------------------------------------------------
@NODE ARMODULELIST
@TITLE "ModuleList"

  @{b}Command:@{ub}
    error = AddMod @{i}file@{ui}

  @{b}Description:@{ub}
    Adds the module with the name "file" to the module list.

  @{b}Input:@{ub}
    file - the name of the module you want to add.

  @{b}Result:@{ub}
    error - if it can't find the file. 0 means ok and 1 means  error.  Note
            that  the  result  is  in  that  the result is in RC and not in
            RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    AppendList @{i}num file@{ui}

  @{b}Description:@{ub}
    Adds a module list with the name "file" to the module  list.  "num"  is
    the number in the list you want to insert the new list at. -1 means the
    buttom of the list.

  @{b}Input:@{ub}
    num - the position where you want to insert.
    file - the modulelist to insert.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
  @{b}Command:@{ub}
    error = DelMod @{i}num@{ui}

  @{b}Description:@{ub}
    Deletes the module "num" in the module list.

  @{b}Input:@{ub}
    num - the number of the module to be deleted from  the  list,  starting
          from 1.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = ExgMods @{i}num1 num2@{ui}

  @{b}Description:@{ub}
    Exchange the two modules "num1" and "num2" in the module list.

  @{b}Input:@{ub}
    num1 and num2 - the number of the modules  to be exchanged in the list,
                    starting with 1.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    max = GetMaxNames

  @{b}Description:@{ub}
    Returns the number of modules in the module list.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    max - the number of modules in the list.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name = GetModName @{i}num@{ui}

  @{b}Description:@{ub}
    Returns the name of the module with the number "num" with full path.

  @{b}Input:@{ub}
   num - the number of the module from which you want  the  name,  starting
         with 1.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.
 
 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    num = GetModNum @{i}name@{ui}

  @{b}Description:@{ub}
    This will return the number of the module named "name". If it  couldn't
    find the name, a zero will be returned.

  @{b}Input:@{ub}
    name - the file name (without path) of the module in the list.

  @{b}Result:@{ub}
    num - the number of the module in the  list.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 
  @{b}Command:@{ub}
    LoadList @{i}file@{ui}

  @{b}Description:@{ub}
    Loads a new APML list with the filename "file".

  @{b}Input:@{ub}
    file - the name of the modulelist to be loaded.

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = SaveList @{i}file@{ui}

  @{b}Description:@{ub}
    Saves the current module list with the filename "file". If  the  module
    list is empty, an error will be returned.

  @{b}Input:@{ub}
    file - the name of the modulelist to be saved.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    Shuffle

  @{b}Description:@{ub}
    Shuffles the modulelist.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    SortList

  @{b}Description:@{ub}
    Sorts the modulelist in alphabetical order.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
------------------------------------------------------------------------
@NODE ARPAUSE
@TITLE "Pause"

  @{b}Command:@{ub}
    error = Pause

  @{b}Description:@{ub}
    Pauses the current module. If the current  player can't pause or  there
    aren't any modules in the memory, an error will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = TogglePause

  @{b}Description:@{ub}
    Toggles the pause state of the current module. If  the  current  player
    can't pause or there aren't any modules in the memory, an error will be
    returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = Unpause

  @{b}Description:@{ub}
    Starts playing again. If the current player can't pause or there aren't
    any modules in the memory, an error will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.
@ENDNODE
------------------------------------------------------------------------
@NODE ARPLAY
@TITLE "Play"

  @{b}Command:@{ub}
    Play

  @{b}Description:@{ub}
    This will do the same as if you pressed the play button.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = PlayMod @{i}num@{ui}

  @{b}Description:@{ub}
    Load and start the module with the number "num" (1 - x) in  the  module
    list. If the "num" doesn't exist, an error will be returned.

  @{b}Input:@{ub}
    num - the number of the module you want to play, starting with 1.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = PlayRNDMod

  @{b}Description:@{ub}
    Loads and starts a random module from the list.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
            that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    error = PlayTune @{i}num@{ui}

  @{b}Description:@{ub}
    Start to play the tune "num".  An error is returned if the "num" is out
    of range. Note that this is for subsongs, like in sid modules.

  @{b}Input:@{ub}
    num - the number of the tune you want to play, starting with 1.

  @{b}Result:@{ub}
    error = this is an error code where 0 means ok and 1 means error.  Note
        that the result is in RC not in RESULT.


 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    NextMod

  @{b}Description:@{ub}
    Loads and plays the next module in the list. If only one module in  the
    list,  nothing  will  happend.  If  an error occurs the player will act
    exactly the same way as if you've pressed the next module button in the
    main window.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    PrevMod

  @{b}Description:@{ub}
    Loads and plays the Previous module in the list. If only one module  in
    the  list, nothing will happend. If an error occurs the player will act
    exactly the same way as if you've pressed the Previous module button in
    the main window.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
------------------------------------------------------------------------
@NODE ARRequester
@TITLE "Requester"

  @{b}Command:@{ub}
    dir,success = GetDir @{i}title@{ui}

  @{b}Description:@{ub}
    Popups a file requester where the user can pick one directory.  If  the
    user  selects cancel, "success" will be 1, else it will be 0.

  @{b}Input:@{ub}
    title - a string which contains the name of the requester title.

  @{b}Result:@{ub}
    dir     - the path the user has selected.
    
    success - this is an error code where 0 means ok  and  1  means  error.
              Note  that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name,success = GetFile @{i}title@{ui}

  @{b}Description:@{ub}
    Popups a file requester where the user can pick one file. If  the  user
    selects cancel, "success" will be 1, else it will be 0.

  @{b}Input:@{ub}
    title - a string which contains the name of the requester title.

  @{b}Result:@{ub}
    file    - the filename with path which the user has selected.

    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    num,success = GetNumber @{i}min max title@{ui}

  @{b}Description:@{ub}
    Popups a number requester where the user can write  a  number.  If  the
    user selects cancel, "success" will be 1, else it will be 0.

  @{b}Input:@{ub}
    min   - the minimum of the range.
    max   - the maximum of the range.
    title - a string which contains the name of the requester title.

  @{b}Result:@{ub}
    num     - the number the user has written.
    
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    string,success = GetString @{i}title@{ui}

  @{b}Description:@{ub}
    Popups a string requester where the user can write  a  string.  If  the
    user  selects  cancel,  "success"  will  be  1,  else it will be 0. The
    "string" will be the entered string.

  @{b}Input:@{ub}
    title - a string which contains the name of the requester title.

  @{b}Result:@{ub}
    string  - the string which the user have typed.
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    pressed = Request @{i}gadget text@{ui}

  @{b}Description:@{ub}
    This will popup a requester where the user can select between a  couple
    of  gadgets,  like ok and cancel. The "gadget" is a string with all the
    gadgets you want in the requester seperated with a "|",  ex."ok|cancel"
    or "yes|maybe|no".

  @{b}Input:@{ub}
    gadget - a string with the gadget names.
    text   - the text which is printed in the requester window.

  @{b}Result:@{ub}
    pressed - the number of the gadget which  the  user  has  pressed.  The
              rightmost gadget is number 0, the  rest  of  the  gadgets  is
              numbered from left to right.
@ENDNODE
------------------------------------------------------------------------
@NODE ARsample
@TITLE "Sample"

  @{b}Command:@{ub}
    name,success = GetSampleName @{i}num@{ui}

  @{b}Description:@{ub}
    Get the samplename from the sample number "num". If the number  is  out
    of range then success will be 1, and name will contain crap.
    The range of numbers could vary from moduleformat to moduleformat.

  @{b}Input:@{ub}
    num - the number of the sample from which you want the name.

  @{b}Result:@{ub}
    name    - the samplename
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    success = Savesample @{i}num filename@{ui}

  @{b}Description:@{ub}
    Saves the sample "number" with the name  "filename".  This  returns  an
    error if the sample number is out of range or the size is 0.

  @{b}Input:@{ub}
    num      - the samplenumber
    filename - the name you want the sample to.

  @{b}Result:@{ub}
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    StopSample

  @{b}Description:@{ub}
    Stops the playing sample.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    success = PlaySample {i}num note@{ui}

  @{b}Description:@{ub}
    Play  the  sample  "num"  with  the note "note". The "num" value can be
    between  1  and  the  max  number of samples the player can handle. The
    "note"  value can be between 0 and 35. 0 means C-1 and 35 means B-3. If
    the current player can't play the sample, an error will be returned.

  @{b}Input:@{ub}
    num  - the samplenumber
    note - the note number

  @{b}Result:@{ub}
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.
@ENDNODE
------------------------------------------------------------------------
@NODE ARSpeed
@TITLE "Speed"

  @{b}Command:@{ub}
    speed = GetSpeed

  @{b}Description:@{ub}
    Get the current speed slider position and place the result in  "speed".
    The result is a signed integer.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    speed - the current speed

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    SetSpeed @{i}speed@{ui}

  @{b}Description:@{ub}
    Set the speed to "speed". "Speed"  can  range  from  -111  to  112.  If
    "speed" is  out of range  the  speed  will  be set to either maximum or
    minimum.

  @{b}Input:@{ub}
    speed - the speed to be set

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    speed = SpeedDown

  @{b}Description:@{ub}
    Move the CIA speed one tick down.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    speed - The new speed

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    speed = SpeedUp

  @{b}Description:@{ub}
    Move the CIA speed one tick up.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    speed - The new speed
@ENDNODE
------------------------------------------------------------------------
@NODE ARTechnical
@TITLE "Technical"

  @{b}Command:@{ub}
    author = GetAuthor

  @{b}Description:@{ub}
    Returns the author of the current playing module.  If  there  isn't  an
    author it will return unknown.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    author - The name of the author

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name = GetChannels

  @{b}Description:@{ub}
    Returns the number of  used channels.  This is virtual channels, which
    means that it can vary from 1 to 32 channels.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    type - the number of used channels.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    num = GetCMod

  @{b}Description:@{ub}
    Returns the current playing module number. 0 if no module is playing.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    num - the number of the current module

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name = GetFilename @{i}num flag@{ui}

  @{b}Description:@{ub}
    Returns the module filename. "num" is the module number in  the  module
    list. "flag" indicates if you want path. 0 means no, 1 means yes.

  @{b}Input:@{ub}
    num  - the module number
    flag - path or not (see above)

  @{b}Result:@{ub}
    name - the filename

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    info = GetInfo

  @{b}Description:@{ub}
    Will return a longword where each bit represent the  information  about
    the current player. Below is a table of the bits returned.
    
    Bit                   Bit

    0 = Rewind             10 = Length
    1 = Forward            11 = Position
    2 = Pause              12 = Max Patterns
    3 = Volume             13 = Show Samples
    4 = Fade               14 = Play Samples
    5 = Tempo              15 = Accompany
    6 = Channels           16 = Force Filter Off
    7 = Modulename         17 = FastMem
    8 = Author             18 = Own Config
    9 = SubSongs           19 = Noteplayer

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    info - a number containing the above bits

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    len = GetLength

  @{b}Description:@{ub}
    Get the length of the current  playing  module.  If  the  length  isn't
    available 0 will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    len - the song length

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    max = GetMaxPatterns

  @{b}Description:@{ub}
    Returns the number of patterns in the current playing  module.  If  the
    number of patterns isn't available 0 will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    max - number of patterns

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    max = GetMaxSamples

  @{b}Description:@{ub}
    Returns the max number of samples the current player can handle. If the
    player can't handle any samples, 0 will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    max - the max number of samples

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    max = GetMaxTunes

  @{b}Description:@{ub}
    Get the max number of tunes in the  current  playing  module.  It  will
    return 0 if there isn't a module in memory.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    max - the number of tunes

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    rate = GetMixingRate

  @{b}Description:@{ub}
    This get the actual mixing rate used by the  used  noteplayer. It  will
    return  0  if  there isn't a module in memory or if no noteplayer, with
    mixing routines, is in use.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    rate - The mixing rate

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name = GetName

  @{b}Description:@{ub}
    Returns the name of  the  current  playing  module.  This  is  not  the
    filename  but the name of the module taken from the module. If it isn't
    available it will return the filename.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    name - the module name

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    name = GetNotePlayer

  @{b}Description:@{ub}
    Returns the name of the current noteplayer.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    type - the noteplayer name

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    type = GetPlayer

  @{b}Description:@{ub}
    Returns the name of the current used player library, eg. Protracker or
    Future Composer.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    type - the player name

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    mode = GetPlayMode

  @{b}Description:@{ub}
    Get the current playing state. The result is  a  boolean  and  1  means
    VBlank and 0 means CIA.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    mode - the current playing state

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    pos = GetPosition

  @{b}Description:@{ub}
    Get the current position. If the current player can't get the position,
    -1 will be returned.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    pos - the current position

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    size = GetSize

  @{b}Description:@{ub}
    Get the filesize (unpacked) in bytes of the current playing module.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    size - the module size

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    tune = GetTune

  @{b}Description:@{ub}
    Get the current playing tune number.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    tune - the current tune number

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    success = SetAuthor @{i}author@{ui}

  @{b}Description:@{ub}
    Change the author. It will return an error if no module is in memory.

  @{b}Input:@{ub}
    author - the new author name

  @{b}Result:@{ub}
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    success = SetName @{i}name@{ui}

  @{b}Description:@{ub}
    Change  the  module  name.  It  will return an error if no module is in
    memory.

  @{b}Input:@{ub}
    name - the new module name

  @{b}Result:@{ub}
    success - this is an error code where 0 means ok  and  1  means  error.
              Note that the result is in RC not in RESULT.
@ENDNODE
------------------------------------------------------------------------
@NODE ARvarious
@TITLE "Various"

  @{b}Command:@{ub}
    Filter @{i}State@{ui}

  @{b}Description:@{ub}
    Turn on or off the filter. 1 means on and 0 means off.

  @{b}Input:@{ub}
    state - the filter state

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    Quit

  @{b}Description:@{ub}
    This will quit APlayer immediately.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
------------------------------------------------------------------------
@NODE ARVolume
@TITLE "Volume"

  @{b}Command:@{ub}
    vol = GetVolume

  @{b}Description:@{ub}
    Get  the  current  volume and place the result in "vol". If the current
    player can't change the volume, the result will be 64.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    vol - the current volume

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    SetVolume @{i}vol@{ui}

  @{b}Description:@{ub}
    Set the volume to "vol". If the number is out of range the volume would
    be set to either max or min.

  @{b}Input:@{ub}
    vol - the new volume

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    vol = VolumeDown

  @{b}Description:@{ub}
    Move the volume one tick down. It will return the new volume.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    vol - the new volume

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    vol = VolumeUp

  @{b}Description:@{ub}
    Move the volume one tick up. It will return the new volume.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    vol - the new volume
@ENDNODE
------------------------------------------------------------------------
@NODE ARWind
@TITLE "Wind"

  @{b}Command:@{ub}
    Forward

  @{b}Description:@{ub}
    Step one pattern forward. The same as pressing the forward button.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    Rewind

  @{b}Description:@{ub}
    Step one pattern backward. The same as pressing the rewind button.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
------------------------------------------------------------------------
@NODE ARWindow
@TITLE "Window"

  @{b}Command:@{ub}
    Iconify

  @{b}Description:@{ub}
    Iconify APlayer with an AppIcon.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None

 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

  @{b}Command:@{ub}
    Popup

  @{b}Description:@{ub}
    Popup the main window.

  @{b}Input:@{ub}
    None

  @{b}Result:@{ub}
    None
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node cfg
@TITLE "Configuration Window"
 _________________________________________________________________________
|  ______________________________________________________________________ |
| |o|                      @{" Configuration Cycle " LINK cfgMaincycle}                       | |
|  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ |
|                                                                         |
|                         - Here you change many -                        |
|                          - different options. -                         |
|                                                                         |
|                              - To see how -                             |
|                        - press the button above -                       |
|                                                                         |
|                                                                         |
|                                                                 @{"x/x < >" LINK cfgPages}|
|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
| @{" Players " LINK cfgPlayers}                  @{" Noteplayers " LINK cfgplayers}                     @{" Agents " LINK cfgplayers}|
|                                                                         |
| @{"  Save   " LINK cfgsaveusecancel}                  @{"     Use     " LINK cfgsaveusecancel}                     @{" Cancel " LINK cfgsaveusecancel}|
|_________________________________________________________________________|

 Click @{"here" LINK prefsmenu} to see how to use the menus in this window.
@ENDNODE
-------------------------------------------------------------------------------
@NODE cfgMaincycle
@TITLE "Main Configuration Cycle"

  @{"Options" LINK cfgOptions}  @{" 2 " LINK cfgoptions2} : Set and toggle several options.

  @{" Paths " LINK cfgPaths} : Here you can decide where from APlayer should get it's files.

  @{"Hotkeys" LINK cfgHotkeys} : Change the hotkey definitions of APlayer.

  @{" ARexx " LINK cfgARexx} : Configure the ARexx part of APlayer.

  @{"Windows/Screens" LINK cfgwindowsscreens} : Change Aplayers positions and layout.

  @{"Unpack" LINK cfgUnpack} : Which packers/archivers should APlayer recognize ?

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgOptions
@TITLE "Configurations Options"

  @{b}Options Configuration page @{i}1 @{ui}:@{ub}

  ________________________________________________________________________
 |                                                                        |
 |  @{"  " LINK Loadlibraries} @{u}L@{uu}oad Libraries     @{"\/" LINK Expungelibraries} E@{u}x@{uu}punge Libraries       @{"\/" LINK tipoftheday} T@{u}i@{uu}p of the Day |
 |                                                                        |
 |  @{"\/" LINK AllocateChannels} All@{u}o@{uu}cate Channels  @{"  " LINK Jumptoaddedmodule} @{u}J@{uu}ump To Loaded Module   @{"\/" LINK OnlineHelp} Online @{u}H@{uu}elp    |
 |                                                                        |
 |  @{"  " LINK VBlankInterrupt} @{u}V@{uu}Blank Interrupt   @{"  " LINK forcefilteroff} Force @{u}F@{uu}ilter Off                           |
 |________________________________________________________________________|
 |                                                                        |
 |  @{"  " LINK Doublebuffering} @{u}D@{uu}ouble Buffering     Early Load: @{"ooo                           " LINK earlyload} 1|
 |________________________________________________________________________|
 |                                                                        |
 |  @{"  " LINK FademoduleAtEnd} Fade @{u}M@{uu}odule At End                         @{"  " LINK FadeAtPause} Fade At Pause/Nex@{u}t@{uu} |
 |                                                                        |
 |  Fade Speed: @{"oooooooooo                                             " LINK FadeSpeed} 1|
 |________________________________________________________________________|
 |                                                                        |
 |                E@{u}r@{uu}ror Messages: @{"     All     " LINK Errormessages}                  1/2 < @{">" LINK cfgoptions2}|
 |________________________________________________________________________|

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node LoadLibraries
@TITLE "Load Libraries"

  @{u}@{b}Load Libraries:@{ub}@{uu}

  This gadget will cause APlayer  to load the selected  unpack library, all
  noteplayers,  agents  and   all  the  player  libraries, defined  in  the
  @{"player-configuration" LINK cfgplayers}, the  first  time APlayer is  started. This  will of
  course use more memory, but  it will  also  give  faster  access  to  all
  player libraries which means quicker moduleload.

  It can also come in handy for people without harddisk, because loading of
  all  player  libraries  at  start  avoids  a  lot  of diskswapping during
  module-load.

@{b}  Default is OFF.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node AllocateChannels
@TITLE "Allocate Channels"

  @{u}@{b}Allocate Channels:@{ub}@{uu}

  With this gadget ON you can prevent other music programs from interfering
  with  the  audiochannels.  If you change  the  state  of  this gadget the 
  channels will be (de)allocated when the next module is loaded.

  That is, the  channels will  always be  allocated as  long as there  is a
  module in memory.

@{b}  Default is ON.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node VBlankInterrupt
@TITLE "VBlank Interrupt"

  @{u}@{b}VBlank Interrupt:@{ub}@{uu}

  This gadget is used to help people who's  still  using  SoundTracker  and
  NoiseTracker  modules,  containing  VBlank speed commands bigger than 1F.
  These can under normal conditions sound to slow, played by  this  player.
  But  checking  this  gadget, will cause the player to interpret all speed
  commands in the module as VBlank speed commands, which will  correct  the
  speed errors.

@{b}  Default is OFF.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node ExpungeLibraries
@TITLE "Expunge Libraries"

  @{u}@{b}Expunge Libraries:@{ub}@{uu}

  With this checkmark you can decide wether  the  memory  used  by  already
  loaded libraries  should  be  released or not, when you quit the program.
  
  If you often quit and reload the APlayer, then this button will help you.
  As  it  will  prevent the player libraries, agents  and noteplayers  from
  being  loaded everytime  you restart  the player  and load a  new kind of
  module.

  Because most people want  to  have  as  much  memory  as  possible,  this
  function is by default set to ON.

@{b}  Default is ON.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Jumptoaddedmodule
@TITLE "Jump To added Module"

  @{u}@{b}Jump To Loaded Module:@{ub}@{uu}

  If there  are  modules already  in the modulelist and you press the  PLAY
  button, and select a number of files, they will automatically be added to
  the end of the list. With this function set to ON, APlayer will be forced
  to load and play the first selected module (in the filerequester).

@{b}  Default is OFF.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node ForceFilteroff
@TITLE "Force Filter Off"

  @{u}@{b}Force Filter Off:@{ub}@{uu}

  This will force APlayer to keep  the  audiofilter  turned  off.  This  is
  useful  for  old  noisetracker modules which used one command to turn the
  filter on/off instead of the new protracker which uses two  different  to
  do so.
  
@{b}  Default is OFF.@{ub}

  @{b}NOTE: This function is not supported by all moduletypes. See @{"module types" LINK modtypes}.@{ub} 
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Tipoftheday
@TITLE "Tip of The Day"

  @{u}@{b}Tip of The Day:@{uu}@{ub}

  This option, if on, will make APlayer open a window every time it  starts
  up.  The  window  will  display  a  randomly  selected hint on the use of
  APlayer, to help you use APlayer's many functions to their full extent.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE OnlineHelp
@TITLE "Online Help"

  @{u}@{b}Online Help:@{uu}@{ub}

  Online Help in APlayer is only a Help-click away with this turned on :)

  Place the  mouse pointer on the  thing (Gadget, list, whatever) and press
  the HELP-key.

  Remember that to show the online help, APlayer needs the APlayer.guide to
  be  in  "progdir:docs/APlayer.guide" That is, it has to be in a directory
  placed along with APlayer called "docs".

  If you have used the APlayer installer to install the program, everything
  should be placed correctly and you won't have to worry about it.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node DoubleBuffering
@TITLE "Double Buffering"

  @{u}@{b}Double Buffering:@{ub}@{uu}

  This function will cause the APlayer to load the next module in the list,
  while  the  current  module  still  plays. This will normally prevent the
  silence between two modules. If you don't check this one, you  will  save
  some  ram, but you will have to wait in silence for the next module to be
  loaded and started.

  See also @{"Early Load" LINK earlyload} for more info on this.

@{b}  Default is OFF.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE EarlyLoad
@TITLE "Early Load"

  @{b}Early Load:@{ub} This  slider is used in conjuction with the @{"double buffering" LINK Doublebuffering}
              function.   The  value  (1-9)  indicates  how  many  patterns
              (positions) before the module ends, the next module should be
              loaded. For harddisk users a value of 1 is enough, but if you
              use a diskdrive, you will have to set it to 3 or 4, dependent
              of the modulesizes.
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node FademoduleatEnd
@TITLE "Fade Module At End"

  @{u}@{b}Fade Module At End:@{ub}@{uu}

  This flag will cause the player to automatically fade the module at end.
  See also @{"Fade Speed" LINK fadespeed}.

@{b}  Default is OFF.@{ub}

  @{b}NOTE: This function isn't supported by all moduletypes. See @{"module types" LINK modtypes}.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node FadeatPause
@TITLE "Fade At Pause/Next"

  @{u}@{b}Fade At Pause/Next:@{ub}@{uu}

  This flag will cause the player to automatically fade the module when the
  user  hits  the  "next module"- or the "pause"-gadget in the main window.
  Note that releasing the "pause" button again  will  fade  up  the  volume
  again.

@{b}  Default is OFF.@{ub}

  @{b}NOTE: This function is not supported by all moduletypes. See @{"module types" LINK modtypes}.@{ub} 
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node FadeSpeed
@TITLE "Fade Speed"

  @{b}Fade Speed:@{ub} Use  this  slider  to  choose how fast the fading of a module
              should  be.  1 is the fastest and 4 is the slowest. Note that
              this will only affect the @{"Fade Module At End" LINK fademoduleatend}.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node ErrorMessages
@TITLE "Error Messages"

  @{u}@{b}Error Requesters:@{ub}@{uu}

  With this selector you can choose which error messages you want to see.

  @{b}All@{ub}     : Both APlayer and Dos errors.

  @{b}APlayer@{ub} : Unknown  moduletype, out of mem, decrunch  error, couldn't find
            Arexx, Channel allocation error aso.

  @{b}Dos@{ub}     : read/write error, file not found etc

  @{b}None@{ub}    : None of the above

  The Dos-errors will always delete the module from the list  (no  use  for
  crap files in the list, or..).

  If you choose not to see the APlayer errors, APlayer  will  usually  just
  skip the module, instead of deleting it from the list.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgoptions2
@TITLE "Configuration Options Page 2"

  @{b}Options Configuration page @{i}2 @{ui}:@{ub}

  ________________________________________________________________________
 |                   ___________________________________________________  |
 |    @{"Cut Prefixes" LINK cutprefixes}:|@{u}mod.|mdat.@{uu}_________________________________________| |
 |                   ___________________________________________________  |
 |  @{"Module Pattern" LINK Modulepattern}:|@{u}~(SMPL.#?|#?.nt|#?.ins)@{uu}____________________________| |
 |                   ________________________________________________     |
 |        @{"App Icon" LINK cfgAppIcon}:|________________________________________________| @{"o" LINK Disk} |
 |________________________________________________________________________|
 |                                                                        |
 | @{"  " LINK Timeout} Ne@{u}v@{uu}er Ending Module Timeout: @{" 120" LINK Timeoutvalue} seconds                         |
 |                                                                        |
 | At @{u}E@{uu}nd of Modulelist: @{"@|           Jump to start             " LINK endmodulelist} 2/2 @{"<" LINK cfgoptions} >|
 |________________________________________________________________________|

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE CutPrefixes
@TITLE "Cut Prefixes"

  @{b}Cut Prefixes:@{ub}
   As  you  have  maybe  noticed, there  isn't  much  space  left  for  the
   modulenames in the main window. This is because most moduletypes usually
   are  classified  by a file prefix,  e.g. "mod."  This string  is used to
   define  which prefixes  APlayer should cut  automatically from the list.
   The format is like this: Prefix1|Prefix2|Prefix3  etc. (notice  the  "|"
   (pipe) between the different prefixes!)
   If you don't want anything to be left out, just leave this string empty.

@ENDNODE
--------------------------------------------------------------------------------
@NODE Modulepattern
@TITLE "ModulePattern"

  @{b}@{u}Module Pattern:@{ub}@{uu}

   Here you can define the filepattern in the filerequester when  you  load
   modules.  Default is ~(SMPL.#?|#?.nt|#?.ins) which means that all files,
   except files  starting with "smpl.", ending  with ".nt" or ".ins" should
   be displayed.

@ENDNODE
---------------------------------------------------------------------------------
@NODE cfgAppIcon
@TITLE "AppIcon"

  @{u}@{b}Configure App-Icon:@{ub}@{uu}

  If you don't like the supplied @{"app-icon" LINK app-icon}(sheep power :) then you can pick
  an icon of your own to be used as APlayers App-icon.

  If the specified icon file cannot be found, APlayer will be forced to use
  @{b}sheep@{ub} power though :)

  @{b}NOTE: If  you  don't  have  the  Newicons  patch  installed  DO  NOT!,  I
        repeat,  DO NOT USE A NEWICON AS AN APPICON, IT WILL MAKE WORKBENCH
        CRASH. (At best :)@{ub}

@ENDNODE
---------------------------------------------------------------------------------
@NODE Timeout
@TITLE "Never Ending Module Timeout"

  @{b}@{u}Never Ending Module Timeout:@{uu}@{ub}

  Selecting this will cause APlayer  to  automatically  skip  to  the  next
  module  after the given number of @{"seconds" LINK timeoutvalue}, if the module doesn't support
  @{"positions" LINK modtypes}.

@ENDNODE
---------------------------------------------------------------------------------
@NODE timeoutvalue
@TITLE "Never Ending Module Timeout Value"

  @{b}@{u}Timeout Value:@{uu}@{ub}

  Here you can specify how many seconds the module should be played, before
  APlayer skips to the next module.

  Values from 1 to 9999 seconds (02hr, 46min and 39secs) is supported.

@ENDNODE
---------------------------------------------------------------------------------
@NODE EndModulelist
@TITLE "What to do at end of modulelist""

  @{b}@{u}End of Modulelist:@{uu}@{ub}

  When APlayer reaches the bottom of the module  list,  that  is  when  the
  module  is  finished,  you  can choose between three actions, what should
  happen:

  · Jump to start : Will start to play the modulelist over again. (default)

  · Loop module   : Will loop the last module in the list over and over ..

  · Eject module  : Ejects the played module from memory.

@ENDNODE
---------------------------------------------------------------------------------
@NODE cfgPaths
@TITLE "Paths Configuration"

 @{u}@{b}Paths Configuration:@{uu}@{ub}
  ________________________________________________________________________
 |                   ________________________________________________     |
 | @{"Start Scan Path" LINK startscanpath}:|________________________________________________| @{"o" LINK disk} |
 |                   ________________________________________________     |
 |     @{"Module Path" LINK modulepath}:|________________________________________________| @{"o" LINK disk} |
 |                   ________________________________________________     |
 |       @{"APML Path" LINK APMLpath}:|@{u}S:@{uu}______________________________________________| @{"o" LINK disk} |
 |                   ________________________________________________     |
 |       @{"Temp Path" LINK Temppath}:|@{u}T:@{uu}______________________________________________| @{"o" LINK disk} |
 |________________________________________________________________________|

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE startscanpath
@TITLE "Start Scan Path"

  @{b}Start Scan Path:@{ub}
   In this string you may specify a directory, which  will be  scanned  for
   modules  when  you start the APlayer. The modules will be shuffled and a
   random module will be chosen and played.  This will of course also cause
   lha  archives  to be unarchived. If you don't want this to happen, leave
   this string empty.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE modulepath
@TITLE "Module Path"

  @{b}Module Path:@{ub}
   This tells APlayer where you want it to look for your modules.  You  can
   use  the  diskgadget  to  the  right  to  choose  the  modulepath from a
   file-requester.
  
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE APMLpath
@TITLE "APML Path"

  @{b}APML Path:@{ub}
   This tells APlayer where you keep your modulelist files. You can use the
   diskgadget  to the right to choose the modulepath from a file-requester.
   Default is S:

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Temppath
@TITLE Temp Path"

  @{b}Temp Path:@{ub} 
   This is the path which APlayer will use to unpack crunched  files, store
   lha files  and so on. You can use the  diskgadget to the right to choose
   choose the modulepath from a file-requester. Default is T:

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgHotkeys
@TITLE "Hotkeys Configuration"

  ________________________________________________________________________
 |                         ______________________________________________ |
 | @{"App Popup/Hide Hotkey" LINK apppopup}:|@{u}control shift a@{uu}_______________________________||
 |                         ______________________________________________ |
 |     @{"Popup/Hide Hotkey" LINK popuphide}:|@{u}control alt a@{uu}_________________________________||
 |                         ______________________________________________ |
 | @{"Hotkey To Skip Module" LINK skiphotkey}:|@{u}control alt space@{uu}_____________________________||
 |________________________________________________________________________|
 |                                                                        |
 |         @{"Config" LINK hotkeyconfiglist}                   @{"Show" LINK hotkeyshowlist}                @{"Used Hotkeys" LINK usedhotkeyslist}   |
 ||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||
 ||                      ||                      ||                      ||
 ||                      ||                      ||                      ||
 ||                      ||                      ||                      ||
 ||______________________||______________________||______________________||
 |                            __________________________________          |
 | @{"  Update Lists  " LINK updatelists} @{"Hotkey" LINK hotkey}:|                                  | 1/1 < > |
 |                            ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯          |
  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node apppopup
@TITLE "Configuration - App Popup/Hide Hotkey"

  @{b}App Popup/Hide Hotkey:@{ub}
  
  This string contains the hotkey for the  APlayer  Program.  Pressing  the
  defined hotkey will close all open APlayer windows, and popup an app-icon
  on the workbench. See @{"app-icon" link app-icon}.

  @{b}NOTE: Any valid commodity hotkey can be used for these hotkeys.@{ub}

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE popuphide
@TITLE "Configuration - Popup/Hide Hotkey"

  @{b}Popup/Hide Hotkey:@{ub}
  
  This is  nearly exactly the same as the "App Popup/Hide" hotkey, but this
  will NOT popup an app-icon on workbench. See @{"app-icon" link app-icon}.

  @{b}NOTE: Any valid commodity hotkey can be used for these hotkeys.@{ub}

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE skiphotkey
@TITLE "Configuration - Hotkey To Skip Module"

  @{b}Hotkey To Skip Module:@{ub}

  Pressing the defined hotkey will  be  the  same  as  pressing  the  "next
  module" gadget in the main window.

  @{b}NOTE: Any valid commodity hotkey can be used for these hotkeys.@{ub}
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE hotkeyconfiglist
@TITLE "Configuration Hotkeys"

  @{b}Config:@{ub}

  This list displays all players,  noteplayers  and  agents  which  have  a
  configuration  window assigned  to them. Pressing one of the entries will
  allow you to change the @{"hotkey" LINK hotkey} for the chosen item.

  Defining a hotkey for i.e. a player config will allow you to  access  and
  change  the  configuration  for the given player at any time, so that you
  won't have to enter the  APlayer  configuration  everytime  you  want  to
  change something.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE hotkeyshowlist
@TITLE "Show Hotkeys"

  @{b}Show:@{ub}

  This list displays all players, noteplayers and agents which have a  show
  window  assigned to  them. Pressing  one of the entries will allow you to
  change the @{"hotkey" LINK hotkey} for the chosen item.

  Defining a hotkey for i.e. an Agents show window will allow you make  the
  agent appear everytime you press the defined hotkey.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE usedhotkeyslist
@TITLE "Used Hotkeys"

  @{b}Used Hotkeys@{ub}

  This is a list of all used hotkeys. Simple but that's right :)

  APlayer will automically check if you have used the  same  hotkey  twice,
  but  only  if they are spelt the same way. That is, "control a" and "ctrl
  a" will not be the same hotkey to APlayer. If you  have  two  identically
  hotkeys  then the player, noteplayer or agent which is displayed first in
  the list, will be activated.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Updatelists
@TITLE "Update Lists"

  @{b}Update Lists:@{ub}

  When you press this button all player libraries, noteplayers  and  agents
  will be scanned  to see if they have a config  or a show window, and then
  which hotkeys they eventually uses.

  All the information will then be printed in the three lists above.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Hotkey
@TITLE "Hotkey Definition"

  @{b}Hotkey:@{ub}

  This is where you describe the hotkey for the chosen  player,  noteplayer
  or agent. The hotkey can be any legal commodity hotkey.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgARexx
@TITLE "ARexx Configuration"

  ________________________________________________________________________
 | @{"  " LINK ActivateArexx} Activate ARex@{u}x@{uu}                                            @{" Clear " LINK ARexxClear} |
 |¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
 | @{"@|                                SHIFT                              " LINK ARexxcycle} |
 |      ___________________________           _________________________   |
 | @{"F1" LINK F1} |___________________________|@{"o" LINK DISK}   @{"F6" LINK F1} |_________________________|@{"o" LINK DISK}|
 |      ___________________________           _________________________   |
 | @{"F2" LINK F1} |___________________________|@{"o" LINK DISK}   @{"F7" LINK F1} |_________________________|@{"o" LINK DISK}|
 |      ___________________________           _________________________   |
 | @{"F3" LINK F1} |___________________________|@{"o" LINK DISK}   @{"F8" LINK F1} |_________________________|@{"o" LINK DISK}|
 |      ___________________________           _________________________   |
 | @{"F4" LINK F1} |___________________________|@{"o" LINK DISK}   @{"F9" LINK F1} |_________________________|@{"o" LINK DISK}|
 |      ___________________________           _________________________   |
 | @{"F5" LINK F1} |___________________________|@{"o" LINK DISK}   @{"F0" LINK F1} |_________________________|@{"o" LINK DISK}|
 |                                                                        |
 |________________________________________________________________________|

@ENDNODE
-------------------------------------------------------------------------------
@NODE ActivateARexx
@TITLE "Activate ARexx"

  @{b}Activate ARexx:@{ub} This  will  cause  APlayer to  open an  ARexx port  named
                  APLAYER, through which you can speak with APlayer.
                  To get more info on the APlayer ARexx commands see @{"here" LINK ARexxMain}.
@ENDNODE
-------------------------------------------------------------------------------
@NODE F1
@TITLE "ARexx Macros"

  @{b} F1-F10@{ub}: In these strings you can define  which Arexx macros to execute
           when the actual key is pressed.
           Remember that the qualifier  which is used in conjunction with
           the  key  is  set  using  the @{"cyclegadget" LINK ARexxCycle}. If your
           macros  aren't  in REXX: then you have to write the full path.
           This  can  be  done  easily  by pressing the diskgadget to the
           right of each stringgadget.

  @{i}Note: It  is not allowed  to have spaces in filenames or paths. This is
        due to an "error" in Arexx, not in APlayer.@{ui}

@ENDNODE
-------------------------------------------------------------------------------
@NODE ARexxCycle
@TITLE "ARexx Qualifier"

  @{b} Cycle@{ub}: With this you select 3 different states:

        @{b}Shift or Alt@{ub}: This position contains the names of the macros  to
                      be  executed   when  you  have  shift/alt  pressed
                      together with @{"F1-F10" LINK F1}.
       
        @{b}Other@{ub}: Changes the names of the strings to the following:
               @{b}ST@{ub}: (STart) The macro to be  executed when APlayer starts.
                   Note this is the last thing which is done when APlayer
                   starts.
               @{b}ED@{ub}: (EnD) This macro will be executed when you try to quit
                   APlayer. Note that the only way APlayer can exit then,
                   is by sending a "quit" commando to the Arexx port.
               @{b}PB@{ub}: (PlayButton) This macro is executed when you press the
                   playbutton. Note that it'll  prevent the filerequester
                   from  appearing, which enables  you  to make  your own
                   moduleselector via Arexx.
               @{b}PL@{ub}: (PLay) This  macro is  executed when a module has been
                   successfully recognized and loaded.

@ENDNODE
-------------------------------------------------------------------------------
@NODE ARexxClear

  @{b}Clear@{ub}: This will clear all macro settings. Note that it will ask you to
         confirm your choice first.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgwindowsscreens
@TITLE "Configuration - Windows/Screens"
  ________________________________________________________________________
 |                     @{"Screens" LINK Screens}                                           |
 ||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯| @{"  " LINK defaultscreen} Default Screen       |
 ||                                            |                          |
 ||                                            | @{"Save Window Positions" LINK savewindowpositions}   |
 ||                                            |                          |
 ||                                            |                          |
 ||                                            |                          |
 ||                                            |                          |
 ||____________________________________________|                          |
 |________________________________________________________________________|
 |                     _______________________________________            |
 |         @{"List Font" LINK listfont} |@{u}topaz.8@{uu}________________________________| @{"o" LINK DISK}        |
 |                     _______________________________________            |
 |      @{"General Font" LINK generalfont} |topaz.8                                | @{"o" LINK DISK} 1/1 < >|
 |                     ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯            |
  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Screens
@TITLE "Screen List"

  @{b}Screen List:@{ub}

  This is a list of all available public screens at the moment.  From  this
  list  you  can  choose on which screen you will like APlayer to be opened
  on. If you double click one of the screen names, APlayer  will  instantly
  jump to  that screen. The screen choice can of course still  be cancelled
  with the configuration @{"cancel" LINK cfgsaveusecancel} button.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Defaultscreen
@TITLE "Default Screen"

 @{b}Default Screen@{ub}

 Setting this flag will cause APlayer always to open on the default  public
 screen, instead of the one chosen from the @{"Screens" LINK screens} list.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Savewindowpositions
@TITLE "Save Window Positions"

  @{b}Save Window Positions:@{ub}

  To use this button do the following:

  1. Place all  the APlayer  windows exactly where  you want  them and size
     them  as you  like. You can close  a window when you  have placed  and
     sized it since the position and size will be remembered anyway.

  2. Press this button

  3. All window  positions and  sizes will now be  saved  in a  file called
     APlayer.win

  @{b}NOTE 1:@{ub} This is a kind snapshot function,  and  if  you  don't  like  the
  snapshot,  and you don't want to change the window positions, you have to
  manually delete the APlayer.win file from the ENVARC:APlayer/ directory.

  @{b}Note 2:@{ub} If you try to open a window with coordinates which  are  too  big
  for the actual screen, then the windowposition and size will be fitted to
  the screen if possible, else it will not be opened.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Listfont
@TITLE "List Font"

  @{b}List Font:@{ub}

  The font defined here will appear in all APlayer lists. The font can have
  a max size of 24.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE GeneralFont
@TITLE "General Font"

  @{b}General Font:@{ub}

  The general  font is used in all gadgets, strings, yes nearly everywhere,
  except @{"lists" LINK listfont}.

  @{b}NOTE:@{ub} Since APlayers front-end isn't font sensitive, it is not adviseable
  to choose a font bigger  than 8 points, if you still want APlayer to look
  good :)
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgunpack
@TITLE "Configuration - Unpack"
  ________________________________________________________________________
 |                                                                        |
 |              @{"Path" LINK Unpackpath}             @{"Arguments" LINK Unpackarguments}          @{"Check Pattern" LINK checkpattern}      |
 |     _______________________  _______________   _______________________ |
 | @{"  " LINK unpacklha}|LHA                    ||e "%s"         | |(#?.lha|#?.lzh)        ||
 |     ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯   ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ |
 |     _______________________  _______________   _______________________ |
 | @{"  " LINK unpacklzx}|LZX                    ||x "%s"         | |#?.lzx                 ||
 |     ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯   ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ |
 |________________________________________________________________________|
 |                        ______________________________________________  |
 |      @{"Extract Pattern" LINK extractpattern}:|@{u}#?@{uu}____________________________________________| |
 |________________________________________________________________________|
 |                       _______________________________________          |
 |      @{"Unpack Library" LINK unpacklibrary}: @|                None                 | 1/1 < > |
 |                       ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯          |
  ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Unpackpath
@TITLE "Unpack Path"

  @{b}Unpack Path:@{ub}

  Here you tell APlayer where you have your lha extractor. Per default both
  lha  and  lzx  should  be in the path, so if you for instance have lha as
  dh0:archivers/lha you should write in the lha path field.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE Unpackarguments
@TITLE "Unpack Arguments"

  @{b}Unpack Arguments:@{ub}

  This is the arguments which APlayer passes on to the archiver. Most users
  won't  have  to  alter  these  arguments,  but perhaps you have a special
  unarchiver which needs special arguments then you can write them here.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE checkpattern
@TITLE "Unpack Check Pattern"

  @{b}Check Pattern:@{ub}

  Here you can tell APlayer how it should recognize archives. Archives will
  only  be  recognized by their filename, so you can type a filepattern for
  every archiver here.

  For instance the default lha checkpattern is (#?.lha|#?.lzh) which  means
  that every file ending with either ".lha" or ".lzh" will be recognized as
  a lha archive.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE unpacklha
@TITLE "Unpack Lha"

  @{b}Unpack Lha@{ub}

  This simply tells APlayer wether to check files to see if  they  are  lha
  archives or not.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE unpacklzx
@TITLE "Unpack Lzx"

  @{b}Unpack Lzx@{ub}

  This simply tells APlayer wether to check files to see if  they  are  lzx
  archives or not.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE extractpattern
@TITLE "Extract Pattern"

  @{b}Extract Pattern:@{ub}

  Suppose you have a lot  of  lha  and  lzx  archives  with  both  modules,
  pictures  and  texts  (file_id.diz, .nfo-files and others). Since APlayer
  will not recognize anything else than music modules, why should  all  the
  other files get unarchived, wasting your sparesome cpu-time :)

  Therefore you can use the extract pattern to  tell  APlayer  which  files
  should be unarchived, and which shouldn't.

  If you want to get rid of certain files, you can for instance write  this
  as an extract pattern: ~(file_id.diz|#?.doc|#?.nfo|#?.txt|#?.gif)

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE unpacklibrary
@TITLE "Unpack Library"

  @{u}@{b}Unpack Library:@{ub}@{uu}

  This cyclegadget is used to select which library  you  want  to  use  for
  unpacking your modules. There are four possibilities:

  @{b}1. None       :@{ub} If   you  do  not  have  any  packed  modules,  use  this
                  selection.

  @{b}2. Powerpacker:@{ub} This  will  use  the  @{"powerpacker.library" LINK Thanks} to depack your
                  modules.  This  will only allow powerpacked modules to be
                  played.

  @{b}3. XPK        :@{ub} This  will  make  use of the @{"xpk-libraries" LINK Thanks} for depacking
                  your  modules. This means that it can unpack all kinds of
                  xpk-packed files including powerpacked files. Included in
                  this package is SQSH-, SMPL- and Xpkmaster-.library.
  
  @{b}4. Unpack     :@{ub} This  is  a  library  made  by the coder of this program,
                  which   can  recognize  and  decrunch  approximately  180
                  different  types  of  crunchers.  This  includes xpk, and
                  powerpacker.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
-------------------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

@NODE cfgPages
@TITLE "Sub pages"

  @{b}@{u}Sub Configuration Pages:@{uu}@{ub}

  Some of the main configuration pages uses more than  one  page.  To  look
  through the different sub-pages you can use these two arrows.

  The x/x tells the number of the actual sub-page and the total  amount  of
  sub-pages.

@ENDNODE
-------------------------------------------------------------------------------
@NODE prefsmenu
@TITLE "Preference Menu"

  @{u}@{b}Preference Menu:@{uu}@{ub}

  @{b}Project:@{ub}

   Open   : Opens a file  requester from which you  can load a new  config
            file.

   Save as: Opens  a file requester  from which you  can save  your actual
            settings.

   Quit   : This is the same as pressing cancel.

  @{b}Edit:@{ub}

   Reset To Default: This will reset the settings to the default values.

   Last Saved      : Sets your  configuration  settings to the settings of
                     the last saved configuration file.

   Restore         : The same as "Cancel", except that  it won't close the
                     window.
@ENDNODE
-------------------------------------------------------------------------------
@NODE listview
@TITLE "ListView Control"

  @{b}@{u}Listview Control:@{ub}@{uu}

  @{b}Arrow up@{ub} or @{b}down@{ub}  will move  the  highlightbar  one position up  or down.
  If no element in the list is highlighted the highlightbar will appear  at
  any cursor press.

  Using @{b}Shift@{ub} with the cursor keys, will move the list either one "page" up
  or one page down.

  Using  @{b}control@{ub} or @{b}alt@{ub} with the cursor keys  will move the highlightbar to
  either the top or the bottom.

  @{b}Return@{ub} will toggle the current (Note)player's state (enabled/disabled).

@ENDNODE
-------------------------------------------------------------------------------
@NODE DISK
@TITLE "File Requester"

 This disk button will open a @{"reqtools" LINK thanks} file requester.

@ENDNODE
-------------------------------------------------------------------------------
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE cfgplayers
@TITLE "Players/Noteplayers/Agents Configuration"

  @{b}@{u}Players/Noteplayers/Agents Configuration:@{ub}@{uu}
  ________________________________________________________________________
 | @{"*|            Players          " LINK plcyc} ||@{"3.13" LINK plcfgversion}  Surround-32Voices          @{"?" LINK plcfgquestionmark}|
 |¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
 |                                  ||                                    |
 |                                  ||   This box contains some info      |
 |                                  ||                                    |
 |                                  ||   about the chosen player.         |
 |          @{"Player List" LINK plcfgplayerlist}            ||                                    |
 |                                  ||   Like author, technical info      |
 |                                  ||                                    |
 |                                  ||   and if it supports noteplayers.  |
 |                                  ||                                    |
 |                                  ||                                    |
 |¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|
 | @{" v ^ " LINK plcfgArrowupdown} @{" Config " LINK plcfgConfig} @{" Show " LINK plcfgShow} @{" Add " LINK plcfgAdd} @{" Delete " LINK plcfgDelete} @{" Exchange " LINK plcfgExchange} @{" Clear " LINK plcfgClear} @{" Sort " LINK plcfgSort} |
 |________________________________________________________________________|
 |                                                                        |
 | @{" Save " LINK plcfgsave}                        @{" Use " LINK plcfguse}                        @{" Cancel " LINK plcfgcancel} |
 |________________________________________________________________________|

  APlayer supports a lot of different module types from the SID  format  to
  Protracker. These  modules  are  played by  using  player  libraries  and
  sometimes also a noteplayer.

  Click @{"here" LINK prefsmenu} to see how to use the menus in this window.

  To move around the list you can use the @{"keyboard" LINK listview}.

@ENDNODE
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-------------------------------------------------------------------------------
@NODE plcfgplayerlist
@TITLE "Player/Noteplayer/Agent List"

  This list shows all available players, noteplayers and agents. To add new
  items use the add button.

  To toggle an entry in the list, you can just double-click the entry. This
  will prevent the use of the specific entry.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgversion
@TITLE "Version"

  Shows the version number of the chosen player, noteplayer or agent.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgquestionmark
@TITLE "1st Priority Noteplayer"

  This opens a list, from which you can choose the NotePlayer you prefer to
  be used with the selected player.  If you don't want  any first priority,
  just delete the name manually afterwards (you may use Amiga-X).

  If, at a later time, the selected NotePlayer  can't  be  loaded,  APlayer
  will  give  you  a requester where you can choose to stop or make APlayer
  choose a Noteplayer for you.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgArrowupdown
@TITLE "Item Up/Down"

  @{b}Arrow up/down:@{ub} These will move the  marked item to  either  the  position
                 above or below.
                 Pressing @{b}shift@{ub} in  conjunction  with the gadget, will move
                 the selected item to the top or the bottom of the list.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgConfig
@TITLE "Config"

  @{b}Config:@{ub}   Opens  a window  in which  special settings  for  the  selected
            player may be changed.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgShow
@TITLE "Show"

  @{b}Show:@{ub}     Will open the show window of the given Agent/Player/Noteplayer.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgAdd
@TITLE "Add Item"

  @{b}Add:@{ub}      Opens  a  filerequester from which you can choose the libraries
            (Agents/Players/Noteplayers) you want to add to the list.
@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgDelete
@TITLE "Delete Item"
  
  @{b}Delete:@{ub}   This  will  delete  the selected library from the list, but NOT
            from the disk.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgExchange
@TITLE "Exchange Items"
  
  @{b}Exchange:@{ub} Select a library, press exchange and  select another library to
            exchange the first library with.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgClear
@TITLE "Clear List"
  
  @{b}Clear:@{ub}    This will clear all the libraries except for the internals.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgSort
@TITLE "Sort Items"
  
  @{b}Sort:@{ub}     Sorts the list alphabetically.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgSave
@TITLE "Save Player/Noteplayer/Agent Configuration"

  @{b}Save:@{ub}     Saves   the  APlayer.libs  file   in  ENVARC:APlayer/   and  in
            ENV:APlayer/ directories. After the saving it closes the window
            and  uses  the  settings.  If  the  actual player/noteplayer is
            deleted  from  the  list and you press save, the playing module
            will be ejected.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgUse
@TITLE "Use Player/Noteplayer/Agent Configuration"

  @{b}Use:@{ub}      Saves the  APlayer.libs  file  in  the  ENV:APlayer/ directory.
            After the saving it closes the window and uses the settings. If
            the  current player/noteplayer is deleted from the list and you
            press use, the playing module will be ejected.

@ENDNODE
-------------------------------------------------------------------------------
@NODE plcfgCancel
@TITLE "Cancel Player/Noteplayer/Agent Configuration"

  @{b}Cancel:@{ub}   Closes the window and restores the settings.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE plcyc
@TITLE "List Selector"

  @{b}@{u}List Selector:@{uu}@{ub}

  @{"Players" LINK Players}     A player recognizes  and plays the  module. Some  feeds  the
               hardware directly, some passes the data to a noteplayer.

               When a player is selected (and if it uses a noteplayer), you
               can  press  the  "?"  button in the top right of the window.
               This  will  open  a  window  with  a list containing all the
               NotePlayers  which can be used by the player. Hereby you can
               select  the  NotePlayer  you  prefer should be used with the
               player.  If, for some reason, the NotePlayer isn't available
               when  the  player  tries to use it, it will scan through the
               NotePlayers until it finds a usable one.

  @{"NotePlayers" LINK NotePlayers} The noteplayer  recieves the sound data from  the player and
               makes your computer play the sound. Some of the  noteplayers
               has  the ability to mix several channels into the four audio
               channels of the amiga.

  @{"Agents" LINK Agents}      Agents are programs which can be  initiated  when  the  user
               performs a certain action.

  You can cycle trough the items with the keys < and >.

  Some (Note)Players are built  into the  main program  while  the rest  of
  them are stored as files in "LIBS:APlayer" or "LIBS:APlayer/NotePlayers".
  When APlayer has loaded a file, it has to  check which type of module  it
  is. With  this  window  you can decide which (Note)Players that should be
  used, and in which order they should be used (prioritized list).

  When  a (Note)Player  is chosen, the  version number  is displayed  in  a
  little box in the top left of the right part of the window.
@ENDNODE

--------------------------------------------------------------------------------
@NODE players
@TITLE "Players"

  @{b}@{u}Players:@{ub}@{uu}

  @{b}ActionAmics:@{ub}     This player is used in the game  "DynaBlaster",  so  you
                   can play the music from this game and rip the samples if
                   you like.

---------------------------------------------------------------------------

  @{b}Activision Pro:@{ub}  This player is the same as Martin Walker player. You can
                   get some modules from old Activision games. There can be
                   some  trouble  on  faster  machines,  because the player
                   makes  CPU  loops.  The  player is inside the module, so
                   there isn't much to do about it.

---------------------------------------------------------------------------

  @{b}ArtOfNoise:@{ub}      This player can play both 4 and 8 channels  modules.  It
                   have  some  great effect. It uses noteplayer to play the
                   modules.

---------------------------------------------------------------------------

  @{b}DeliCustom:@{ub}      Yes,  that's  right.  Now  is  APlayer  able   to   play
                   Delitrackers  custom  modules.  Currently  there  is not
                   support  of  all  Delitrackers global functions or tags,
                   only  a  few. The modules I have, work just fine, but if
                   you  have  a module that doesn't work, please send it to
                   me.  You  can not pack these modules, because the player
                   has to load them as object files.

---------------------------------------------------------------------------

  @{b}Delta20:@{ub}         Player is inside the module.  It  have  some  nice sound
                   effect.

---------------------------------------------------------------------------

  @{b}DigitalMugician:@{ub} Nice player with some cool sound effects. The program is
                   not the most system friendly I have seen.

---------------------------------------------------------------------------

  @{b}DSS:@{ub}             When you buy the DSS sampler, you will get a  music  and
                   sampler  program. The music program will save modules in
                   this  format,  so  with this player you are able to play
                   these type of modules.

---------------------------------------------------------------------------

  @{b}FastTracker:@{ub}     I don't  know much  about this  player.  It's a 6 and  8
                   channels  ProTracker player. It  can do the  same as the
                   ProTracker  player, which  means  that it  has the  same
                   commands etc. This player uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}FastTracker20:@{ub}   This player can play the new format on the PC,  the *.XM
                   modules. The original music program on the PC is made by
                   Triton.  This  player  is coded by Jarno Paananen and it
                   uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}Fred:@{ub}            There is a lot of some nice fred tunes on  aminet,  some
                   of them by Jogeir. There is a player inside the modules,
                   but  I  have ripped one of them and added some features.
                   It  will  ofcourse  use  the player inside the module if
                   it's not the same as the one I know. Currently I support
                   2 different players, which only differs slightly.

---------------------------------------------------------------------------

  @{b}FTM:@{ub}             This is a 8 voices player with one of  the  best  mixing
                   routine ever heard on the Amiga.

---------------------------------------------------------------------------

  @{b}Future13:@{ub}        This  is  probably  the  most  used  type  of modules in
                   intros,  because  of  the  short  module size. It uses a
                   noteplayer.

---------------------------------------------------------------------------

  @{b}Future14:@{ub}        This is the newer version of Future Composer. It can now
                   handle different wavetables. It uses a noteplayer.

---------------------------------------------------------------------------

  @{b}Hippel:@{ub}          Argghh, this is one of the hard ones.  There is a player
                   inside each module, but they are all different.
                   If you  get a Hippel  module this player can't recognize
                   please mail it  to us if you want  APlayer to be able to
                   play it in the future..

---------------------------------------------------------------------------

  @{b}Hippel-COSO:@{ub}     This is Hippel  modules  without  a  player  inside  the
                   module.  It  will  try  to load an extra sample  file if
                   needed,  but this hasn't  been tested,  because we don't
                   have any of these modules.  If you have one, please send
                   it to us.

---------------------------------------------------------------------------

  @{b}IFF-8SVX:@{ub}        This player can  play the IFF-8SVX  sample format. It is
                   the  most used format on the Amiga. It can play any size
                   of  samples  by  loading  a little bit at the time. This
                   means  it  uses  low  memory  while running. It can also
                   handle   stereo  samples  and  IFF-crunched  (Fibonnaci)
                   samples, in both mono and stereo. It uses a noteplayer.
                   See how to @{"configure" LINK iffcfg} this player.

---------------------------------------------------------------------------

  @{b}IFF-AIFF:@{ub}        This format is used on  the  Macintosh.  This player can
                   play  both 8 and 16 bit samples in both mono and stereo.
                   16 bit samples will be converted to 8 bit realtime while
                   playing. It uses a noteplayer.
                   See how to @{"configure" LINK aiffcfg} this player.

---------------------------------------------------------------------------

  @{b}IFF-SMUS:@{ub}        This is a very old music format.  The format is designed
                   to  use with midi. This player will only play upto the 4
                   first priority voices.
                   See how to @{"configure" LINK smuscfg} this player.

---------------------------------------------------------------------------

  @{b}InStereo!:@{ub}       This player is the  successor of Synthesis.  It can make
                   some nice chip sounds.

---------------------------------------------------------------------------

  @{b}JamCracker:@{ub}      Is not the most used format,  but  there  is  some  nice
                   tunes   available   made  by  Dr.  Awesome.  It  uses  a
                   noteplayer.

---------------------------------------------------------------------------

  @{b}JCBrooke:@{ub}        Nothing to say about this player.

---------------------------------------------------------------------------

  @{b}MajorTom:@{ub}        I only got two modules in this format and has never seen
                   the music program. Anybody have it?

---------------------------------------------------------------------------

  @{b}MarkCooksey:@{ub}     Nothing to say about this player.

---------------------------------------------------------------------------

  @{b}MarkII:@{ub}          Nothing to say about  this player, except that the  main
                   replay routine is placed in each module.

---------------------------------------------------------------------------

  @{b}MED:@{ub}             This player has one of the biggest  sources I  have ever
                   seen  (about  80Kb).  This player will play 4 voices MED
                   modules and can handle MMD0, MMD1 and MMD2 module types.

                   Please note  that  if  you  want  to  play  MED  modules
                   containing   synth  samples,  do  NOT  use  the  fastmem
                   noteplayer, since it will skip  all  synth  sounds.  Use
                   instead the paula noteplayer.

                   This Player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}MON:@{ub}             Maniacs of Noise have created this player. The player is
                   inside the modules.

---------------------------------------------------------------------------

  @{b}MusicAss:@{ub}        This format has  very  short  modules  with  the  player
                   inside the modules. I have ripped the player and fixed a
                   volume  bug  so  they  will  now  work on A4000. It will
                   of course only use the player inside the module if it is
                   not the same as the ripped one.

---------------------------------------------------------------------------

  @{b}MultiTracker:@{ub}    This tracker is  a 1-32 channels  ProTracker player. The
                   file format is not the same as in normal mod files. This
                   player uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}NoisePacker20:@{ub}   This format is a packed NoiseTracker format  written  by
                   Twins of Phenomena.

---------------------------------------------------------------------------

  @{b}NoisePacker30:@{ub}   Is a newer version of the NoiseTracker packer.

---------------------------------------------------------------------------

  @{b}NoiseTracker:@{ub}    Before ProTracker this format was  the most used.  I use
                   the  same  player  as  in  the ProTracker player, but it
                   can't  change  the  CIA  tempo and it doesn't have any E
                   commands   except   for  the  filter  command.  See  the
                   ProTracker description for more information. This player
                   uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}OctaMed:@{ub}         This player is almost the same as the MED player, except
                   that it play 5-8 voices modules.
                   This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}Oktalyzer:@{ub}       A very old 8 voices format. It now uses a NotePlayer  to
                   mix the channels. This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}ProTracker:@{ub}      This format is probably  the most  known  format ever on
                   the  Amiga.  I  use  the  ProTracker version 1.1b player
                   written  by  Lars  "Zap" Hamre/Amiga Freelancers. I have
                   fixed  a lot of bugs (see the history :) and I have also
                   optimized  it  so  it  won't use so much CPU time as the
                   original player does. The  main  optimizing is that I've
                   changed all  the patterns  note periods to index numbers
                   in the  period  tables.  This removed  the routine which
                   searched  for the period in the period tables to get the
                   index  in  the finetunes period tables. This player uses
                   a NotePlayer to play the notes.

---------------------------------------------------------------------------

  @{b}PumaTracker:@{ub}     I don't know anything about this player.  I  only have a
                   few modules of this type.

---------------------------------------------------------------------------

  @{b}QuadraComposer:@{ub}  Got the player from the author, Bo Lincoln. Supports CIA
                   and all commands without crashing like in other players.
                   It also uses a noteplayer.

---------------------------------------------------------------------------

  @{b}RIFF-WAVE:@{ub}       This format is used on the PC. It can play both 8 and 16
                   bit samples in mono or stereo. If the sample is too big,
                   it will be loaded in parts.
                   This player uses a Noteplayer.
                   See how to @{"configure" LINK riffcfg} this player.

---------------------------------------------------------------------------

  @{b}RonKlaren:@{ub}       This player will play EaglePlayer  Ron  Klaren  modules.
                   This is the only type of module which cannot be crunched
                   because the files are loaded as object files.
                   There can be some problems on A4000.

---------------------------------------------------------------------------

  @{b}ScreamTracker30:@{ub} This module format is probably one of the most  used  on
                   the  PC.  This  player  will  play  that  format.  Jarno
                   Paananen has coded the original player.  I have modified
                   it a little bit,  so it won't try  to play adlib samples
                   There  will  be  silence  instead of some crap sound. It
                   also uses a noteplayer.

---------------------------------------------------------------------------

  @{b}SID:@{ub}             This play has to use the playsid.library to run.  It can
                   play all kinds of C64 songs by emulating the CPU and SID
                   in the C64.
                   See how to @{"configure" LINK sidcfg} this player.

---------------------------------------------------------------------------

  @{b}SidMon10:@{ub}        Player is inside the module. I have  ripped  the  player
                   and  added  a few features. If the player isn't the same
                   as  the player inside the module, the inside player will
                   be used instead.

---------------------------------------------------------------------------

  @{b}SidMon20:@{ub}        This is the new version of SidMon.  It hasn't the player
                   inside the module anymore.

---------------------------------------------------------------------------

  @{b}SonicArranger:@{ub}   This player will play both songs and modules with player
                   inside  the  module.  With  modules it will use the song
                   player.

---------------------------------------------------------------------------

  @{b}SoundControl:@{ub}    Nothing to say about this player.

---------------------------------------------------------------------------

  @{b}SoundFactory:@{ub}    This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}SoundFX13:@{ub}       This player looks a lot like the SoundTracker player.

---------------------------------------------------------------------------

  @{b}SoundFX20:@{ub}       A new  version  of  this  program.  It  now  supports 31
                   samples!! (whauww ;-)

---------------------------------------------------------------------------

  @{b}SoundMon20:@{ub}      You can grab a lot of these (cool) modules on aminet.
                   This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}SoundMon22:@{ub}      This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}SoundTracker15:@{ub}  In this very OLD tracker only 15  samples  were allowed.
                   I  use  the  same  player  as in the ProTracker  player,
                   but it only supports the SoundTracker commands.
                   See  the  ProTracker  description  for more information.
                   This player uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}SoundTracker31:@{ub}  This is also a very OLD tracker but  it has 31  samples.
                   As  always  I  use  the same player as in the ProTracker
                   player.  See that description for more information. This
                   player uses a NotePlayer.

---------------------------------------------------------------------------

  @{b}StarTrekker4:@{ub}    This player will play the normal  4  voices  StarTrekker
                   modules.

---------------------------------------------------------------------------

  @{b}StarTrekker4AM:@{ub}  This player will play 4 voices StarTrekker modules  with
                   AM sounds. It needs the extra .nt file to the module.

---------------------------------------------------------------------------

  @{b}Synthesis:@{ub}       See InStereo!

---------------------------------------------------------------------------

  @{b}TakeTracker:@{ub}     This  player   is  exactly   the  same   player  as  the
                   FastTracker  player,  except that there is another  test
                   routine.  This  player supports 1 to 32 channels modules
                   and uses a noteplayer.

---------------------------------------------------------------------------

  @{b}TFMX_15:@{ub}         This player can play the old TFMX formats. It's a format
                   created by Chris Hülsbeck.

---------------------------------------------------------------------------

  @{b}TFMX_7V:@{ub}         This player can play the  7  voices  TFMX  modules.  The
                   player is coded by J. Hippel and C. Hülsbeck.

---------------------------------------------------------------------------

  @{b}TFMX_Pro:@{ub}        Well, nothing more to say, except that this is the newer
                   version of TFMX modules.

---------------------------------------------------------------------------

  @{b}TimFolin:@{ub}        With this player  you can hear  the really  cool modules
                   composed by Tim Follin. This player uses a Noteplayer.

---------------------------------------------------------------------------

  @{b}TME:@{ub}             Nothing to say about this player.

---------------------------------------------------------------------------

  @{b}TronicTracker:@{ub}   Nothing to say about this player.

---------------------------------------------------------------------------

  @{b}VectorDean:@{ub}      This player is used  in  the  game  "Canon Fodder 2".  I
                   don't know if it was used in number 1 too.

---------------------------------------------------------------------------

  @{b}VSS:@{ub}             Plays the Voodoo Supreme Synthesizer modules.

---------------------------------------------------------------------------

  @{b}Whittaker:@{ub}       Player inside the module. The players are different from
                   each other, so you can get some problems.

@ENDNODE
--------------------------------------------------------------------------------
@NODE NotePlayers
@TITLE "NotePlayers"

  @{b}@{u}NotePlayers:@{uu}@{ub}

  @{b}14BitStereo-32Voices:@{ub}   Can mix upto 32 voices, into the four amiga sound
                          channels. The samples can be 8 bit and placed  in
                          both chip- and fast-mem. The mixing routine is 16
                          bit. If the mixing routine runs out of cpu  time,
                          the sample rate is lowered.

                          The main routine  is  based  on  Jarno  Paananens
                          routines, with some fixes and additions by me.

                          See the @{"32 Voices configuration" LINK 32config} for more info.

---------------------------------------------------------------------------

  @{b}14BitStereo-2Voices:@{ub}    This Noteplayer can mix  upto 2 channels in 14bit
                          stereo, and it is therefore very handy  to use to
                          play samples e.g. IFF-8SVX.

                          See  the @{"14 Bit Stereo 2Voices configuration" LINK 2config} for
                          more info.

---------------------------------------------------------------------------

  @{b}Fastmem-4Voices:@{ub}        This  play  modules  from  fastmemory. It  handles
                          both signed and unsigned samples.

                          See  the @{"Fastmem 4 Voices Configuration" LINK fastcfg} for  more
                          info.

---------------------------------------------------------------------------

  @{b}Mono-32Voices:@{ub}          Can mix upto 32 voices, into the four amiga sound
                          channels. The samples can be 8 bit and placed  in
                          both  chip-  and  fast-mem. The mixing routine is
                          only 8 bit.

                          Please note that the mixer always plays in  mono,
                          even  if  some  channels  are  turned off. If the
                          mixing routine runs out of cpu time,  the  sample
                          rate is lowered.

                          The main routine  is  based  on  Jarno  Paananens
                          routines, with some fixes and additions by me.

                          See the @{"32 Voices configuration" LINK 32config} for more info.

---------------------------------------------------------------------------

  @{b}Paula-4Voices:@{ub}          Passes on the data it gets from the player to the
                          sound chip. The samples can only be placed in the
                          chip memory.

---------------------------------------------------------------------------

  @{b}ReSurround-32Voices:@{ub}    If  you  are  the  lucky  owner  of  a  surround
                          amplifier, you can connect your Amiga to  it  and
                          use  this player to listen to the modules in REAL
                          surround :).

                          It can mix upto 32 voices, into  the  four  amiga
                          sound  channels.  The  samples  can  be 8 bit and
                          placed  in  both  chip and fast-mem.  The  mixing
                          routine is only 8 bit.
                          Please note that the mixer always plays  in  real
                          surround,  even  if some channels are turned off.
                          If the mixing routine runs out of cpu  time,  the
                          sample rate is lowered.

                          The main routine  is  based  on  Jarno  Paananens
                          routines, with some fixes and additions by me.

                          See the @{"32 Voices configuration" LINK 32config} for more info.

---------------------------------------------------------------------------

  @{b}Stereo-32Voices:@{ub}        Can mix upto 32 voices, into the four amiga sound
                          channels. The samples can be 8 bit and placed  in
                          both  chip-  and  fast-mem. The mixing routine is
                          only 8 bit. If the mixing routine runs out of cpu
                          time, the sample rate is lowered.

                          The main routine  is  based  on  Jarno  Paananens
                          routines, with some fixes and additions by me.

                          See the @{"32 Voices configuration" LINK 32config} for more info.

---------------------------------------------------------------------------

  @{b}Surround-32Voices:@{ub}      Can mix upto 32 voices, into the four amiga sound
                          channels. The samples can be 8 bit and placed  in
                          both  chip-  and  fast-mem. The mixing routine is
                          only 8 bit.

                          Please  note  that  the  mixer  always  plays  in
                          surround,  even  if some channels are turned off.
                          If the mixing routine runs out of cpu  time,  the
                          sample rate is lowered.

                          The main routine  is  based  on  Jarno  Paananens
                          routines, with some fixes and additions by me.

                          See the @{"32 Voices configuration" LINK 32config} for more info.

@ENDNODE
--------------------------------------------------------------------------------
@NODE Fastcfg
@TITLE "Fastmem 4 Voices Configuration"

  @{b}@{u}Fastmem 4 Voices Configuration:@{uu}@{ub}

  Here you can set the size of the "Chip Memory Buffer" which is the amount
  of  CHIP memory used for every channel while playing from fastmemory. The
  default is 512, which suits  most configurations,  but if  it  gives  you
  trouble, you can try to change it.

  But remember that a smaller  buffer  makes  the  processor  work  harder,
  because  it has to copy the sampledata much more often than with a bigger
  buffer. But still, a big buffer can give some troubles, so try it out for
  yourself.
@ENDNODE
---------------------------------------------------------------------------
@NODE 32config
@TITLE 32 Voices Configuration

  @{u}@{b}32 Voices Configuration:@{uu}@{ub}

  First of all you have to choose which mixing routine  you  want  to  use.
  This  can  either  be  the  68000/68010  or  68020+.  The 68020+ mixer is
  ofcourse optimized for higher processors.

  This configuration is used to set the mixing rate relative to the  number
  of channels used in a module. This means that the higher mixing rate, the
  better sound. But remember that high mixing rates demands more cpu power.
  As  soon as you press return, after you have typed a new mixing rate, the
  new mixing rate is used. This is ofcourse only if you  have  changed  the
  mixing rate for the current number of used channels.

  You can also set the volume boost for every number of  channels.  If  you
  are  listening  to  modules  that  uses  a  lot of channels, you can take
  advantage of volume boost. This is because if a lot of channels has to be
  mixed, the volume will be lowered,  and therefore it needs to be boosted.
  The boost value will only take effect when a new module is played.

  If you don't know which values to type in, you can get APlayer to  choose
  the values best suited for your system.  This can be done by pressing the
  autoadjust button. It CAN'T be done if APlayer is playing  a  module,  or
  the audio channels is allocated by another program.

  First, you are asked if you want to check all the channels. If you answer
  NO, only the 31-32  channel mode is tested, and the result is used in all
  other channels mode, else every channel mode is tested.

  Then you can decide the maximum mixing rate to be used.  This  can  be  a
  number between 4000 and 56000. The higher the mixing rate, the better the
  sound quality.

  The last two requesters will let you decide wether you want to adjust the
  found  mixing  rate a bit down (0-100 percent), which will leave more cpu
  power to the rest of the system.

  After this the test is performed. To optimize the results, do  NOT  touch
  your computer while the test is in progress. You can adjust the volume in
  the main window, if you don't want to hear the tones while  the  test  is
  running.

  @{b}Please note  that the numbers  found in the test  may not be the  optimal
  setting, but should give you a hint on how the setting should be.@{ub}

  Click @{"here" LINK prefsmenu} to see how to use the menus in this window.
@ENDNODE
--------------------------------------------------------------------------------
@NODE 2config
@TITLE "14 Bit Stereo 2Voices configuration"

  @{b}@{u}14 Bit Stereo 2Voices configuration:@{uu}@{ub}

  Here you can set the size of the "Chip Memory Buffer" which is the amount
  of  CHIP memory used for every channel while playing from fastmemory. The
  default is 512, which suits  most configurations,  but if  it  gives  you
  trouble, you can try to change it.

  The "Maximum Sample Rate" will cause every sample with a higher frequency
  than  the  specified,  to  be downsampled to that frequency. Normally the
  amiga hardware will not allow you to play samples with a higher frequency
  than 28867 Hz. Therefore you can use this noteplayer to play samples with
  frequencies above this, with the right speed.

@ENDNODE
--------------------------------------------------------------------------------
@NODE Agents
@TITLE "Agents"

  @{u}@{b}Agent Types:@{uu}@{ub}

  @{b}SampleSavers:@{ub}
  -------------

  The sample saver agent will be started when the  user  presses  the  save
  sample  gadget  in  the  sample  info  window. The agent can then perform
  certain actions on the chosen sample. If more than one samplesaver  agent
  is present in the list, the uppermost will be used.

    @{"Multi" LINK Multi} Converts and saves samples in multiple formats

  @{b}Scopes:@{ub}
  -------

  Scopes are different types of displays that illustrates the modules being
  played. They may flash, rotate and do all sorts of funky stuff.

  NB: Only when playing a module whose @{"player" LINK Players} uses a noteplayer, the scopes
  will be utilized.

    @{"RGB-box" LINK RGB-box}
    @{"SpinSquares" LINK SpinSquares}
    @{"Bar Scope" LINK Barscope}

  @{b}Favourite Song System (FSS):@{ub}
  ----------------------------

  Displays a list of the most often heard modules on your computer.

  @{" Favourite Song System (FSS) " LINK FSS}

@ENDNODE
--------------------------------------------------------------------------------
@NODE multimods
@TITLE "Multi Sample Formats"

  @{u}@{b}Sample formats:@{uu}@{ub}


  @{b}IFF-8SVX@{ub}        : The most normal format in the amiga world. It  supports
                    8  bit  quality,  mono/stereo  and  fibonacci  packing.
                    Fibonacci packing will halve the  size  of  the  sample
                    with nearly no quality loss :)

                    In the configuration you can  specify the internal name
                    of the sample and the author name, and whether you want
                    the sample packed with fibonacci or not.

                    If the sample is in stereo you have the possibility  to
                    save  it  as either a mono or a stereo sampling. If you
                    choose mono, the channels are mixed in 16  bit  quality
                    and then saved as an 8 bit mono sampling.

  @{b}IFF-AIFF@{ub}        : This format originates from the Macintosh. It is mostly
                    used  on  the Macintosh,  but it's also  used by  other
                    platforms.

                    This converter supports conversion of 8 and 16 bit AIFF
                    samples,  mono  or  stereo.  To  see  which conversions
                    between stereo and mono that are possible see above  in
                    the IFF-8SVX description.

                    16 bit samples can be saved in  8  or  16  bit.  8  bit
                    samples can only be converted in 8 bit.

                    Like in the IFF-8SVX you can also specify  an  internal
                    name and author for the sample.


  @{b}RAW :@{ub}             This  is  all  files  not covered by  the  above sample
                    formats. It can be anything from an  executeable  to  a
                    device  handler.  This is useful if you have some files
                    which you KNOW are samples but  they  haven't  got  any
                    header.  In the config you can tell APlayer exactly how
                    the sample is, and with this informations APlayer  will
                    create a header for the file.
                    The things that you have to tell APlayer is:

                    Quality   : 8 or 16 bit
                    Endian    : Big (highbyte first),Little (lowbyte first)
                                This is pretty technical, only change it if
                                nothing else works.
                    Type      : Signed or unsigned
                    Channels  : Mono or stereo
                    Frequency : The samplerate (5000 - 28000).
@ENDNODE
--------------------------------------------------------------------------------
@NODE Multi
@TITLE "SampleSaver - Multi"

  @{b}@{u}Multi SampleSaver:@{ub}@{uu}

  This agent can save and convert samples between different @{"sample formats" LINK multimods}.

  To edit some general  settings  for  the  Multi  SampleSaver,  enter  the
  @{"configuration window" LINK MultiSampleSaverConfig} belonging to it.

  @{i}How to Convert a sample:@{ui} Go to the players configuration window and go to
  the  agent  section.  Select the Multi agent and press the "show" gadget.
  Then you have the possibility to select which format of  the  sample  you
  want  to  convert.  If you select automatic, then the agent will find the
  sample type automatically. Now you have to select the format to which the
  sample is converted. To convert the sample, press "Convert".
  Choose the sample to be converted from the filerequester.
  A window will then popup with some info about the sample:

  Format   : The format of the sample (e.g. IFF-8SVX or IFF-AIFF)
  Name     : The internal sample name
  Author   : The author of the sample
  length   : The length of the sample without any headers
  Loop     : Is there a loop in this sample?
  Rate     : The samplerate in samples/second
  Channels : The number of channels used in the sampling
  Quality  : The quality of the sample (e.g. 8 or 16 bit)
  Type     : Signed, unsigned, fibonacci (delta encoded), ulaw or alaw
  Endian   : Big (highbyte first), Little (lowbyte first)

  Press "Okay" and write the filename of the sample you want  to  save.  If
  the  saver has some settings for you to change, a window will pop up now.
  To start the conversion just close the window.


  @{i}How to Save a sample:@{ui} While you are playing a module you select a  sample
  from  the  sample  info  window.  Press  the save gadget in the top right
  corner to start the multi sample saver agent. A filerequester will  popup
  asking you for the name you want to save the sample under. Write the name
  and press return.

  Then you can select which format you want to save the sample as.  If  the
  saver has some configurations for you to change, a window will popup when
  you press @{b}save@{ub}. If not, the sample will just be saved.
@ENDNODE
--------------------------------------------------------------------------------
@NODE MultiSampleSaverConfig
@TITLE "Multi SampleSaver Configuration"

  @{b}@{u}Multi SampleSaver Configuration:@{uu}@{ub}

  Load Path: This is the default directory where you keep your samples.

  Save Path: This is the directory where you want your converted samples to
             be saved to.

  Xpk packing: Selects wether you want  the converted samples  to be packed
               with xpk and with which library/packer.

  Effectiveness: This decides  how good/effective  you want the  chosen xpk
                 packer to be.

  Enable Info: Here you can tell  the  information  window  not  to  appear

               everytime it loads a sample. This is useful if you  want  to
               convert  a  lot of samples, then you won't have to press the
               OK gadget in the information window for every new sample.
               Note that this is only really useful in conjunction with the
               "Enable Config" switch described below.

  Enable Cfg: This disables the save configuration  windows for the  sample
              savers.  If  you  just  want  the  samples  saved  with   the
              information  APlayer  gets  from  the  sample  you  choose to
              convert, you can disable the configuration here.

@ENDNODE
--------------------------------------------------------------------------------
@NODE RGB-box
@TITLE "The RGB-Box Scope Agent"

  A window of configurable size consisting of a  square.  The  square  will
  flash  in  time to the first three tracks of the module being played. Any
  additional tracks will have no effect on the RGB-box.

  The colors are chosen so that the first  track  controls  the  red  color
  value,  the  second  track  the green color value, and the third the blue
  value. Each note in a given track retrigs the corresponding color  value.
  The higher the volume, the brighter the color.
@ENDNODE
--------------------------------------------------------------------------------
@NODE SpinSquares
@TITLE "The Spinning Squares Scope Agent"

  This  agent  consists  of  a  window  divided  into  four  squares,  each
  containing  its  own  vector-box.  The  box  will  expand and contract in
  correspondence to the notes being played  in  the  track  it  represents.
  Factors in deciding the changes are volume and pitch.

  Configuration  of  this  agent :

  Rotation : Controls whether the vector-boxes should rotate or not.
  
  Double Height: Doubles the height of the scopes. This is  useful  if  you
  are running APlayer on a 1x1 resolution screen.

  GfxCard Safety :  When  ON,  disables  multitasking  during  the  drawing
  routines  to  avoid  the  flickers  that  may  appear  if you are using a
  Graphics Board that uses the processor in stead of the blitter.
@ENDNODE
-------------------------------------------------------------------------------
@NODE barscope
@TITLE "The Bar Scope Agent"

  Look at it and see if you can figure out how it works :)

  A lot of greetings to  Hans Henrik Happe for coding this really wonderful
  resizeable scope.

@ENDNODE
-------------------------------------------------------------------------------
@Node Fss
@TITLE "Favourite Song System"

  @{u}@{b}Favourite Song System:@{uu}@{ub} (Shortkey f)

  The Favourite Song System (FSS) is  for  you  who  can't  remember  which
  modules you like to hear. Okay, that was a bit of a joke! If you add this
  agent to your agent list, it will automatically store the  names  of  all
  the  modules  your  have  heard  during  your last run of the APlayer.
  In addition to that it remembers how many times you have heard  the  same
  module. All the names are put into a list, from which the FSS-Agent takes
  a user specified number of played modules and put them into the "Favorite
  Song System" window. This window displays the top list placements and how
  many times each module has been played.

  To control the behaviour of the agent see the @"FSS-Agent configuration" LINK FSS-config}.

  When you choose to SHOW the FSS window  you  will  be  presented  with  a
  window containing a list and some buttons.
  The list contains the names of the modules and how a number  stating  how
  many times each module has been played.

  If you doubleclick an item in the list it will be added to the bottom  of
  the module list

  @{b}RND One:@{ub} This will randomly choose  a module from the list and  add it to
           the bottom of the module list.

  @{b}RND All:@{ub} Shuffles all the Top-10 modules and put them in the module list.

  @{b}Delete:@{ub}  Deletes the marked module from the fss list. The changes will be
           saved to your fss file the  next time you either quit the player
           or open the fss window.
  
  @{b}Reset:@{ub}   Asks  if you  wants  to clear the  FSS list from  the memory and
           delete the FSS file on your disk too.


@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE FSS-Config
@TITLE "Favourite Song System Configuration"

  @{b}Favourite Song System Configuration:@{ub}

  The following options for the FSS Agent can be controlled by you:

  Save FSS List: Here you decides when and how often the FSS list should be
                 saved  to  a  file.  None of the possibilities exclude the
                 others, so you can choose to  save  when  the  FSS  (Show)
                 window  opens (default), when  it closes  and additionally
                 you can choose to save the list every x'th minute.
                 The default is every 15th minute.

  With the cycle you decides how many, and which, modules you want the list
  to show to the user.

  It can be the top 10 (default), top 50, top 100 or top xxx where you type
  the xxx value to the right of the cycle.

  Alternatively you can show the worst 10 or worst xxx modules in the list.

  The FSS Path tells the FSS Agent where to save the FSS list file.


  @{b}Optimize Tree:@{ub}

  This  will simply optimize the FSS tree and lists. The optimizer will ask
  you  for  a  min  hear  number which will cause the optimizer to wipe all
  modules heard less than the specified number of times, from the list.

  For a more technical description of this click here .. no @{"here" LINK OptimizeFSS} :)

  @{b}Convert to APML File:@{ub}

  This converts your FSS (Favourite Song System) file to an  APML  (APlayer
  Module  List)  file.  A file requester will pop up to ask you on where to
  save the APML file.

  To save, use or  cancel  the  FSS  configuration  use  the  corresponding
  buttons at the bottom of the window.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@NODE OptimizeFSS

  @{b}Optimize FSS List:@{ub}

  As you maybe have guessed, the FSS will store all the  modules  you  have
  heard  as  a  binary tree. This is because it's the fastest way to search
  for a file to see if it already exist when you load a new module. If  you
  know  a  little  bit  about binary trees, you will properly know that the
  tree will get unbalanced after a while. The term  unbalanced  is  further
  described in the figures below:



                                     8
                                    / \
                                   3   9
                                  / \
                                 2   4
                                      \
                                       5

                           Fig1: Unbalanced Tree

                                     5
                                    / \
                                   3   8
                                  / \   \
                                 2   4   9

                           Fig2: The same tree, but balanced

  A tree can be divided into two subtrees, from the  root.  The  trees  are
  split  in  layers,  for  instance  the unbalanced tree in fig.1 has got 4
  layers, while fig.2 has got 3  layers.  If  a  tree  is  unbalanced  it's
  because  the  difference  between  the  number  of layers in the two main
  subtrees is bigger than one.

  If the tree isn't balanced, it will decrease the search time. Let's  take
  an example: if you will insert the number 7 in figure 1, you have to test
  4 other nodes (8, 3, 4 & 5) to know where to place it, but  in  figure  2
  you  only need 2 tests (5 & 8). Now you can see, the search time has been
  halfed.

  This is what this function does, it balances the binary tree (from now on
  named  AVL-trees).  It will test if the modules are still present on your
  HD and if they aren't they will be deleted from the  tree.  If  you  have
  some  modules  on  floppy disk the optimizer asks for the disk. To delete
  the module from the tree just cancel the disk requesters.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
@Node Modtypes
@Title "Module Types"
                                                                |F |
                                                                |o |
                                                                |r |
                                                                |c |
                                                    |M |S |P |  |e |
                                                    |a |h |l |  |  |
                                     |M |           |x |o |a |  |F |  |O |N |
                                     |o |   *       |  |w |y |A |i |  |w |o |
+-                                |C |d |  |S |  |P |P |  |  |c |l |  |n |t |
  +-               |F |           |h |u |  |u |  |o |a |S |S |c |t |F |  |e |
    +-          |R |o |  |V |     |a |l |A |b |L |s |t |a |a |o |e |a |C |P |
      +-  Func. |e |r |P |o |  |T |n |e |u |s |e |i |t |m |m |m |r |s |o |l |
        +-      |w |w |a |l |F |e |n |n |t |o |n |t |e |p |p |p |  |t |n |a |
          +-    |i |a |u |u |a |m |e |a |h |n |g |i |r |l |l |a |O |m |f |y |
 Players:   +-  |n |r |s |m |d |p |l |m |o |g |t |o |n |e |e |n |f |e |i |e |
              +-|d |d |e |e |e |o |s |e |r |s |h |n |s |s |s |y |f |m |g |r |
----------------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
ActionAmics     |X |X |X |X |  |X |X |  |X |X |X |X |  |X |X |X |X |  |  |  |
ActivisionPro   |  |  |X |  |  |X |  |  |  |X |  |  |  |  |  |  |X |  |  |  |
ArtOfNoise      |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
DeliCustom      |  |  |X |  |  |X |  |  |  |X |  |  |  |  |  |  |X |  |  |  |
Delta20         |  |  |X |X |  |X |  |  |  |  |  |  |  |  |  |  |X |  |  |  |
DigitalMugician |X |X |X |X |X |X |  |X |  |X |X |X |X |  |  |  |X |  |  |  |
DSS             |X |X |X |X |X |X |X |  |X |  |X |X |X |X |X |  |X |  |  |  |
FastTracker     |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
FastTracker20   |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
Fred            |  |  |X |X |  |X |X |  |  |X |  |  |  |  |  |  |X |  |  |  |
FTM             |  |  |X |X |  |  |  |X |X |  |X |X |  |  |  |  |  |X |  |  |
Future13        |X |X |X |X |  |X |X |  |  |  |X |X |  |  |  |  |X |X |  |X |
Future14        |X |X |X |X |  |X |X |  |X |  |X |X |  |X |X |X |X |X |  |X |
Hippel          |  |  |X |  |  |X |  |  |X |X |  |  |  |  |  |  |X |  |  |  |
Hippel-COSO     |  |  |X |X |  |X |  |  |X |X |X |X |  |  |  |  |X |  |  |  |
IFF-8SVX        |  |X |X |X |  |X |X |X |X |  |X |X |  |  |  |  |  |X |@{"X" link iffcfg}|X |
IFF-AIFF        |  |  |  |X |  |X |  |X |X |  |X |X |  |  |  |  |X |  |@{"X" link aiffcfg}|X |
IFF-SMUS        |  |  |X |X |  |X |X |X |X |  |  |  |  |  |  |  |X |  |@{"X" link smuscfg}|  |
InStereo!       |X |X |X |X |  |X |X |X |  |X |X |X |  |  |  |  |X |  |  |  |
JamCracker      |X |X |X |X |X |X |X |  |X |  |X |X |X |X |X |X |X |X |  |X |
JCBrooke        |  |  |X |  |  |X |  |  |X |X |  |  |  |  |  |  |X |  |  |  |
MajorTom        |X |X |X |X |X |X |  |  |  |  |X |X |X |  |  |  |X |  |  |  |
MarkCooksey     |  |  |X |  |  |X |  |  |X |X |  |  |  |  |  |  |X |  |  |  |
MarkII          |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
MED             |X |X |X |X |  |  |X |  |X |X |X |X |X |X |X |X |X |  |  |X |
MON             |  |  |X |  |  |X |  |  |  |X |  |  |  |  |  |  |X |  |  |  |
MultiTracker    |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
MusicAss        |  |  |X |X |  |X |X |  |  |X |  |  |  |  |  |  |X |  |  |  |
NoisePacker20   |X |X |X |X |X |X |  |  |  |  |X |X |X |  |  |  |X |  |  |  |
NoisePacker30   |X |X |X |X |X |X |  |  |  |  |X |X |X |  |  |  |X |  |  |  |
NoiseTracker    |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
OctaMed         |X |X |X |  |  |  |  |  |X |X |X |X |X |X |X |  |  |  |  |  |
Oktalyzer       |X |X |X |X |X |X |X |  |X |  |X |X |X |X |X |X |X |X |  |X |
ProTracker      |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
PumaTracker     |X |X |X |X |X |X |X |X |  |  |X |X |X |  |  |  |X |  |  |  |
QuadraComposer  |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
RIFF-WAVE       |  |X |X |X |  |X |X |  |  |  |X |X |  |  |  |  |X |X |@{"X" link riffcfg}|X |
RonKlaren       |  |  |X |  |  |X |  |  |  |X |  |  |  |  |  |  |X |  |  |  |
ScreamTracker30 |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
SID             |X |X |X |  |  |  |X |X |X |X |  |  |  |  |  |  |  |  |@{"X" link sidcfg}|  |
SidMon10        |X |X |X |X |  |X |  |  |  |  |X |X |  |  |  |  |X |  |  |  |
SidMon20        |X |X |X |X |X |X |X |  |  |  |X |X |  |  |  |  |X |  |  |  |
SonicArranger   |X |X |X |X |  |X |X |  |X |X |X |X |  |X |X |X |X |  |  |  |
SoundControl    |X |X |X |X |  |X |X |X |  |  |X |X |  |  |  |  |X |  |  |  |
SoundFactory    |  |  |X |X |  |X |X |  |  |X |  |  |  |  |  |  |X |X |  |X |
SoundFX13       |X |X |X |X |X |X |X |  |X |  |X |X |X |X |X |X |X |  |  |  |
SoundFX20       |X |X |X |X |X |X |X |  |X |  |X |X |X |X |X |X |X |  |  |  |
SoundMon20      |X |X |X |X |  |X |X |X |  |  |X |X |X |  |  |  |X |X |  |X |
SoundMon22      |X |X |X |X |  |X |X |X |  |  |X |X |X |  |  |  |X |X |  |X |
SoundTracker15  |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
SoundTracker31  |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
StarTrekker4    |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |  |  |  |
StarTrekker4AM  |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |  |  |  |
Synthesis       |X |X |X |X |  |X |  |X |  |X |X |X |  |  |  |  |X |  |  |  |
TakeTracker     |X |X |X |X |X |X |X |X |X |  |X |X |X |X |X |X |X |X |  |X |
TFMX_15         |X |X |X |X |  |X |  |  |X |X |X |X |  |  |  |  |X |  |  |  |
TFMX_7V         |X |X |  |X |  |  |  |  |X |X |X |X |  |  |  |  |  |  |  |  |
TFMX_Pro        |X |X |X |X |  |  |  |  |X |X |X |X |  |  |  |  |  |  |  |  |
TimFolin        |  |  |X |X |  |X |X |  |X |X |  |  |  |  |  |  |X |X |  |X |
TME             |X |X |X |X |X |X |X |X |X |X |X |X |  |X |X |X |X |  |  |  |
TronicTracker   |X |X |X |X |  |X |X |  |  |  |X |X |  |  |  |  |X |  |  |  |
VectorDean      |  |  |X |X |  |X |  |  |  |X |  |  |  |  |  |  |X |  |  |  |
VSS             |  |  |X |X |  |X |  |  |  |  |  |  |  |  |  |  |X |  |  |  |
Whittaker       |  |  |X |X |  |X |X |  |X |X |  |  |  |  |  |  |X |  |  |  |
----------------+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

* For further info, see @{"Tunes" LINK tunes}.
@ENDNODE
--------------------------------------------------------------------------------
@NODE iffcfg
@TITLE "IFF-8SVX Configuration"

  @{u}@{b}IFF-8SVX Config:@{ub}@{uu}

  The IFF-8SVX player works by loading a  sample  bit  by  bit  (buffer  by
  buffer)  and  play  it. As user you can define how big each buffer should
  be and how much memory that should be used at maximum.

  @{b}Load buffer size in Kb:@{ub} The size of each load buffer. Please note that if
  you want a buffer size of e.g. 64 Kb and you try to load a 20 Kb  sample,
  then  the  player  will  allocate  a 64 Kb buffer. That is, no matter how
  small or large your sample is, only whole buffers will be allocated. e.g.
  a 75 Kb sample will need for instance two 64 Kb buffers.

  Note1: If you play stereo samples the buffer size will be doubled.

  Note2: Fibonacci packed samples will use an extra buffer,  sized  half of
  the load buffer size, for depacking.

  @{b}Max memory to use in Kb:@{ub} The maximum amount of memory to be used for load
  buffers. This number should at least be six times the size  of  the  load
  buffer size (because of double buffering and stereo). If you haven't  got
  enough  free  memory to allocate 6 times the size of the load buffer, the
  playback of the sample can get corrupted.

  Obs: If your harddisk have problems keeping up with  loading  the  sample
  buffers, it might help to increase the buffer size.

  @{b}Play only once:@{ub} This  will  tell APlayer only to play the sample once, no
  matter how big it is.
@ENDNODE
--------------------------------------------------------------------------------
@NODE aiffcfg
@TITLE "IFF-AIFF Configuration"

  @{u}@{b}IFF-AIFF Config:@{ub}@{uu}

  The IFF-AIFF player works by loading a  sample  bit  by  bit  (buffer  by
  buffer)  and  play  it. As user you can define how big each buffer should
  be and how much memory that should be used at maximum.

  @{b}Load buffer size in Kb:@{ub} The size of each load buffer. Please note that if
  you want a buffer size of e.g. 64 Kb and you try to load a 20 Kb  sample,
  then  the  player  will  allocate  a 64 Kb buffer. That is, no matter how
  small or large your sample is, only whole buffers will be allocated. e.g.
  a 75 Kb sample will need for instance two 64 Kb buffers.

  Note1: If you play stereo samples the buffer size will be doubled.

  @{b}Max memory to use in Kb:@{ub} The maximum amount of memory to be used for load
  buffers. This number should at least be six times the size  of  the  load
  buffer size (because of double buffering and stereo). If you haven't  got
  enough  free  memory to allocate 6 times the size of the load buffer, the
  playback of the sample can get corrupted.

  Obs: If your harddisk have problems keeping up with  loading  the  sample
  buffers, it might help to increase the buffer size.

  @{b}Play only once:@{ub} This  will tell APlayer only to play the sample  once, no
  matter how big it is.

@ENDNODE
--------------------------------------------------------------------------------
@NODE riffcfg
@TITLE "RIFF-WAVE Configuration"

  @{u}@{b}RIFF-WAVE Config:@{ub}@{uu}

  The RIFF-WAVE player works by loading a  sample  bit  by  bit  (buffer by
  buffer)  and  play  it. As user you can define how big each buffer should
  be and how much memory that should be used at maximum.

  @{b}Load buffer size in Kb:@{ub} The size of each load buffer. Please note that if
  you want a buffer size of e.g. 64 Kb and you try to load a 20 Kb  sample,
  then  the  player  will  allocate  a 64 Kb buffer. That is, no matter how
  small or large your sample is, only whole buffers will be allocated. e.g.
  a 75 Kb sample will need for instance two 64 Kb buffers.

  Note1: If you play stereo samples the buffer size will be doubled.

  @{b}Max memory to use in Kb:@{ub} The maximum amount of memory to be used for load
  buffers. This number should at least be six times the size  of  the  load
  buffer size (because of double buffering and stereo). If you haven't  got
  enough  free  memory to allocate 6 times the size of the load buffer, the
  playback of the sample can get corrupted.

  Obs: If your harddisk have problems keeping up with  loading  the  sample
  buffers, it might help to increase the buffer size.

  @{b}Play only once:@{ub} This  will tell APlayer only to  play the sample once, no
  matter how big it is.

@ENDNODE
--------------------------------------------------------------------------------
@NODE sidcfg
@TITLE "SID Configuration"

  @{u}@{b}SID Config:@{ub}@{uu}

  @{b}Use Rewind Buffers:@{ub} If you  want to be able  to use  rewind when  you are
  playing SID modules, then check this ON.
  @{b}Warning: This uses  a lot of memory  (approximately 0.5 kb/sec), so don't
  use it if you can't live without the memory!@{ub}

  @{b}Rewind Speed:@{ub} This slider is used to decide how much the tune  should  be
  rewound  every time you push the  rewind button. (For advanced users: The
  amount is the number of frames that should be rewound).

  @{b}Forward Speed:@{ub} This slider is used to decide how much the tune should  be
  forwarded  every time you push  the forward  button. (For advanced users:
  The amount is the number of frames that should be forwarded).

  I love copying text frames... :-)
@ENDNODE
--------------------------------------------------------------------------------
@NODE smuscfg
@TITLE "IFF-SMUS Configuration"

  @{u}@{b}IFF-SMUS Config:@{ub}@{uu}

  @{b}Instrument Path:@{ub} The full path  or an assign name  to the place where the
  instruments for your SMUS modules are to be found. The path can be chosen
  by pressing the diskgadget to the right of the string gadget.
@ENDNODE

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
-------------------------------------------------------------------------------
»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»»
@NODE cfgsaveusecancel
@TITLE "Configuration - Save/Use/Cancel"

  @{b}Save   :@{ub} This  will  save the preferencefiles in both ENV:APlayer/ and in
           your  ENVARC:APlayer/  directory.  It will also close the config
           window.

  @{b}Use    :@{ub} Pressing  this will save the preferencefiles in ENV:APlayer/ and
           close the configuration window.

  @{b}Cancel :@{ub} This  will close the config window and  restore your preferences
           as they were before the config window was opened.

  @{b}Among@{ub} all the settings saved in the prefs file is the state of  the  main
  window  cycle,  module  loop,  sound  channels  and  the speed and volume
  settings.

@ENDNODE
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
-------------------------------------------------------------------------------
@NODE INDEXNODE "Index"

 @{b}APlayer Index:@{ub}

 @{b}<Numeric>@{ub}

 @{"14 Bit Stereo 2Voices configuration" LINK 2config}
 @{"32 Voices Configuration" LINK 32config}

 @{b}A@{ub}

 @{"About Window" LINK About}
 @{"Activate ARexx" LINK ActivateARexx}
 @{"Add Item, Players/Noteplayers/Agents" LINK plcfgAdd}
 @{"Adjust Speed" LINK Speed}
 @{"Adjust Volume" LINK Volume}
 @{"Agents" LINK Agents}
 @{"Allocate Channels" LINK AllocateChannels}
 @{"APML Path" LINK APMLpath}
 @{"App Popup/Hide Hotkey" LINK apppopup}
 @{"App-Icon" LINK App-icon}
 @{"AppIcon Configuration" LINK cfgAppIcon}
 @{"ARexx Configuration" LINK cfgARexx}
 @{"ARexx Macros" LINK F1}
 @{"ARexx Qualifier" LINK ARexxCycle}

 @{b}B@{ub}

 @{"Bar Scope Agent" LINK barscope}

 @{b}C@{ub}

 @{"Cancel Player/Noteplayer/Agent Configuration" LINK plcfgCancel}
 @{"Clear List, Players/Noteplayers/Agents" LINK plcfgClear}
 @{"CLI arguments.." LINK Tooltypes}
 @{"Config Hotkeys" LINK hotkeyconfiglist}
 @{"Config, Players/Noteplayers/Agents" LINK plcfgConfig}
 @{"Configuration - Save/Use/Cancel" LINK cfgsaveusecancel}
 @{"Configuration Menu" LINK prefsmenu}
 @{"Configuration Window" LINK cfg}
 @{"Contact addresses" LINK contact}
 @{"Copyright information and rules of distribution" LINK Disclaimer}
 @{"Cut Prefixes" LINK CutPrefixes}

 @{b}D@{ub}

 @{"Default Screen" LINK Defaultscreen}
 @{"Delete Item, Players/Noteplayers/Agents" LINK plcfgDelete}
 @{"Double Buffering" LINK DoubleBuffering}

 @{b}E@{ub}

 @{"Early Load" LINK EarlyLoad}
 @{"Eject module" LINK Eject}
 @{"End of modulelist"" LINK EndModulelist}
 @{"Error Messages" LINK ErrorMessages}
 @{"Exchange Items, Players/Noteplayers/Agents" LINK plcfgExchange}
 @{"Expunge Libraries" LINK ExpungeLibraries}
 @{"Extract Pattern" LINK extractpattern}

 @{b}F@{ub}

 @{"Fade At Pause/Next" LINK FadeatPause}
 @{"Fade Module At End" LINK FademoduleatEnd}
 @{"Fade Speed" LINK FadeSpeed}
 @{"Fast Forward" LINK FF}
 @{"Fastmem 4 Voices Configuration" LINK Fastcfg}
 @{"Favourite Song System Configuration" LINK FSS-Config}
 @{"Favourite Song System" LINK Fss}
 @{"File Requester" LINK DISK}
 @{"Force Filter Off" LINK ForceFilteroff}

 @{b}G@{ub}

 @{"General Font" LINK GeneralFont}

 @{b}H@{ub}

 @{"Hard'n'soft-ware requirements" LINK Requirements}
 @{"History of AccessiblePlayer" LINK History}
 @{"Hotkey Definition" LINK Hotkey}
 @{"Hotkey To Skip Module" LINK skiphotkey}
 @{"Hotkeys Configuration" LINK cfgHotkeys}
 @{"How to use AccessiblePlayer" LINK Usage}

 @{b}I@{ub}

 @{"Iconify AccessiblePlayer" LINK Icn}
 @{"IFF-8SVX Configuration" LINK iffcfg}
 @{"IFF-AIFF Configuration" LINK aiffcfg}
 @{"IFF-SMUS Configuration" LINK smuscfg}
 @{"Index" LINK INDEX}
 @{"Installing the AccessiblePlayer" LINK Installation}
 @{"Introduction to AccessiblePlayer" LINK Introduction}
 @{"Item Up/Down" LINK plcfgArrowupdown}

 @{b}J@{ub}

 @{"Jump To added Module" LINK Jumptoaddedmodule}

 @{b}K@{ub}

 @{"Keyboard control keys" LINK keyboard}

 @{b}L@{ub}

 @{"List Font" LINK Listfont}
 @{"List Selector" LINK plcyc}
 @{"ListView Control" LINK listview}
 @{"Load Libraries" LINK LoadLibraries}
 @{"Loop Active Module" LINK Loop}

 @{b}M@{ub}

 @{"Main window cycle" LINK Maincyc}
 @{"Main window list" LINK MainListview}
 @{"Main window list Scroller" LINK Scroll}
 @{"Module list Editor" LINK ML}
 @{"Module list" LINK modlist}
 @{"Module Path" LINK modulepath}
 @{"Module Types" LINK Modtypes}
 @{"ModulePattern" LINK Modulepattern}
 @{"Multi Sample Formats" LINK multimods}
 @{"Multi SampleSaver Configuration" LINK MultiSampleSaverConfig}

 @{b}N@{ub}

 @{"Never Ending Module Timeout Value" LINK timeoutvalue}
 @{"Never Ending Module Timeout" LINK Timeout}
 @{"Next module" LINK Next}
 @{"Noteplayer, 1st priority" LINK plcfgquestionmark}
 @{"NotePlayers" LINK NotePlayers}
 @{"Numeric Keypad" LINK Keypad}

 @{b}O@{ub}

 @{"Online Help" LINK OnlineHelp}
 @{"Optimize FSS List" LINK OptimizeFSS}
 @{"Options Configuration Page 1" LINK cfgOptions}
 @{"Options Configuration Page 2" LINK cfgoptions2}

 @{b}P@{ub}

 @{"Paths Configuration" LINK cfgPaths}
 @{"Pause module" LINK Pause}
 @{"Play" LINK Play}
 @{"Players" LINK players}
 @{"Players/Noteplayers/Agents Configuration" LINK cfgplayers}
 @{"Players/Noteplayers/Agents List" LINK plcfgplayerlist}
 @{"Popup/Hide Hotkey" LINK popuphide}
 @{"Previous Module" LINK Prev}

 @{b}R@{ub}

 @{"Rewind" LINK Rew}
 @{"RGB-Box Scope Agent" LINK RGB-box}
 @{"RIFF-WAVE Configuration" LINK riffcfg}

 @{b}S@{ub}

 @{"Sample info window" LINK SampleInfo}
 @{"SampleSaver - Multi" LINK Multi}
 @{"Save Player/Noteplayer/Agent Configuration" LINK plcfgSave}
 @{"Save Window Positions" LINK Savewindowpositions}
 @{"Screen List" LINK Screens}
 @{"Shareware Notice" LINK Shareware}
 @{"Show Hotkeys" LINK hotkeyshowlist}
 @{"Show, Players/Noteplayers/Agents" LINK plcfgShow}
 @{"Shuffle Modulelist" LINK Shuffle}
 @{"SID Configuration" LINK sidcfg}
 @{"Sort Items, Players/Noteplayers/Agents" LINK plcfgSort}
 @{"Sound Channels" LINK 1}
 @{"Speed Reset" LINK Sreset}
 @{"Spinning Squares Scope Agent" LINK SpinSquares}
 @{"Start Scan Path" LINK startscanpath}
 @{"Status bar" LINK Status}
 @{"Sub pages" LINK cfgPages}

 @{b}T@{ub}

 @{"Temp Path" LINK Temppath}
 @{"Thanks" LINK Thanks}
 @{"The Featurelist of AccessiblePlayer" LINK Features}
 @{"The Future of APlayer" LINK Future}
 @{"Tip of The Day" LINK Tipoftheday}
 @{"Tooltypes" LINK Tooltypes}
 @{"Tunes" LINK tunes}

 @{b}U@{ub}

 @{"Unpack Arguments" LINK Unpackarguments}
 @{"Unpack Check Pattern" LINK checkpattern}
 @{"Unpack Configuration" LINK cfgunpack}
 @{"Unpack Lha" LINK unpacklha}
 @{"Unpack Library" LINK unpacklibrary}
 @{"Unpack Lzx" LINK unpacklzx}
 @{"Unpack Path" LINK Unpackpath}
 @{"Update Lists" LINK Updatelists}
 @{"Use Player/Noteplayer/Agent Configuration" LINK plcfgUse}
 @{"Used Hotkeys" LINK usedhotkeyslist}

 @{b}V@{ub}

 @{"VBlank Interrupt" LINK VBlankInterrupt}
 @{"Version" LINK plcfgversion}
 @{"Volume Reset" LINK Volreset}

 @{b}W@{ub}

 @{"Why requesters" LINK why}
 @{"Windows/Screens Configuration" LINK cfgwindowsscreens}


 @{b}ARexx Links:@{ub}

 @{"ARexx" LINK ArexxMain}
 @{"Channels" LINK ARChannel}
 @{"Eject" LINK AReject}
 @{"LOOP" LINK ARLOOP}
 @{"MainCycle" LINK ARMAINCYCLE}
 @{"ModuleList" LINK ARMODULELIST}
 @{"Pause" LINK ARPAUSE}
 @{"Play" LINK ARPLAY}
 @{"Requester" LINK ARRequester}
 @{"Sample" LINK ARsample}
 @{"Speed" LINK ARSpeed}
 @{"Technical" LINK ARTechnical}
 @{"Various" LINK ARvarious}
 @{"Volume" LINK ARVolume}
 @{"Window" LINK ARWindow}

@ENDNODE

@NODE why
@TITLE "Why requesters"

  If you get an error requester  from  APlayer, and  you  don't  understand
  what's  going on, press the @{b}WHY@{ub} gadget in the requester. This gives you a
  brief description of the error, and suggestions on how to correct it.
@ENDNODE

