XMPlay 3.4 - Copyright (c) 1998-2007 Ian Luck. All rights reserved.

Files that you should have found in the XMPlay "package"
========================================================
XMPLAY.TXT    This file
XMPLAY.EXE    The executable
XMP-CD.DLL    CD Audio plugin
XMP-WMA.DLL   WMA plugin
XMP-WADSP.DLL Winamp DSP plugin wrapper
FILE_ID.DIZ   BBS description file

You can safely remove the XMP-CD.DLL, XMP-WMA.DLL and XMP-WADSP.DLL files
if you don't need CD/WMA playback or Winamp DSP plugin support.


What's the point?
=================
XMPlay is a Win32 (Windows 95/98/NT/2k/ME/XP/etc...) audio player, supporting
several formats. Initially, when XMPlay was first released in 1998, only the
XM format was supported, hence the name "XMPlay".

Stream formats
--------------
* OGG - Ogg Vorbis
* MP3 - MPEG1/2/2.5 layer 3
* MP2 - MPEG layer 2
* MP1 - MPEG layer 1
* WMA - Windows Media Audio
* WAV - any format that has a codec installed
* CDA - CD Audio

WMA playback requires the Windows Media Format modules to be installed. They
come installed with Windows Media player, so will already be on most users'
systems, but they can also be installed separately (WMFDIST.EXE is available
at the XMPlay website). If these modules are not installed, XMPlay will still
work fine, just without WMA support.

Module (MOD) formats
--------------------
* MO3 - Modules with MP3 or OGG encoded samples
* IT  - Impulse Tracker modules
* XM  - FastTracker 2 modules
* S3M - ScreamTracker 3 modules
* MTM - MultiTracker modules
* MOD - Generic module formats
* UMX - Unreal/Tournament music package

XMPlay's got the best (most accurate to FT2) XM reproduction to be heard
from any player. All features/effects (including several FT2 quirks) are
100% supported. The IT reproduction is also practically balls-on, with full
support for all effects/NNA/DCA/filters etc... additional features like
stereo samples and DMO effects are also fully supported.

XMPlay also supports the MO3 format (modules with MP3 or OGG compressed
samples). If you wish to create MO3s, then you should download the MO3
encoder from the XMPlay website (URL below).

Plugins
-------
As well as the listed formats with built-in support, a whole load more
formats can be played with XMPlay too, via plugins. XMPlay has its own
native "input" plugin system but can also use Winamp plugins.


The main window
===============
In the main display area, the title, playback time and other basic info
about the current track are shown. The time display can be switched (by
clicking on it) between the time passed, the time remaining, or the
order/frame/page position (depending on if it's a MOD/MPEG/OGG format
being played).

Below that is the position indicator, which can also be used to change
the playback position. When streaming from the 'net, it will light-up to
indicate how much of the file has been downloaded so far (if the file
length is known). Right-clicking gives the option of bookmarking the
current position, or resuming an already bookmarked position.

NOTE: The bookmark is not retained when closing XMPlay.

The next 2 sliders control the volume and balance.

TIP: The volume can be adjusted using the mouse-wheel, when the mouse is not
     above anything else scrollable.

The row of buttons below the sliders are...

Track info & extended playlist:
    Opens/closes a window to display information on the current track, also
    a playlist and library. See "The info window" below.

NOTE: Some skins may also have separate buttons to access the playlist and
      library.

Previous track:
    Play the previous track in the playlist, skipping over any that are set
    to "skip". Right-clicking jumps to the previous sub-song in a multi-song
    track (or previous cue point when a CUE sheet is present).

Stop:
    Stops playback, and sets the position to the start. Pressing again when
    already stopped, unloads the track.

Play / Pause:
    Toggles play/pause of the track. If no track is loaded, then the currently
    selected track in the playlist is loaded (or the 1st track if none is
    selected). Right-clicking plays a random track.

Next track:
    Play the next track in the playlist, skipping over any that are set to
    "skip". Right-clicking jumps to the next sub-song in a multi-song track
    (or next cue point when a CUE sheet is present).

Open file(s):
    Opens and plays file(s). If you open an FTP directory URL, XMPlay will
    automatically scan the directory for playable files. Right-click to open
    a directory.

Looping switch:
    This can be set to never loop, always loop, or auto loop (only files
    that are intended to be looped). When looping is enabled, you can also
	choose (by right-clicking) to have the tracks looped only once.

When you drag'n'drop files into the main panel, they are opened as if the
"Open file(s)" button had been used - ie. playlist cleared and new tracks
added. As well as files, whole directory trees and shortcuts can also be
drag'n'dropped into XMPlay.

TIP: Double-click on any non-button area to toggle mini mode.

TIP: Right-click the minimize button to minimize to the tray.

TIP: Right-click the close button to have playback continue from the
     current position the next time XMPlay is loaded.

TIP: When moving the window, right-clicking will make the info window move
     too. The same is true when moving the info window.


The Output/DSP panel
====================
These options change the way things sound. The response speed to all these
options is dependant on the buffer size - the delay will be the length of
the buffer chosen in the "Output" options.

Equalizer switch & sliders:
Reverb switch & sliders:
Auto-amp reduction switch:
Amplification slider:
    See the "DSP" section below for details on these.

TIP: Right-clicking the amplification slider will reset it to the default
     level, and right-clicking the EQ bands will reset them to 0dB.

Some skins may also have MOD options present here. See the "MOD" section
below for details on these.

Disk switch
-----------
When switched on, this enables the automatic loading of settings that have
been saved for the track being loaded. Right-clicking brings up options to
load settings specific to the file, load settings for the file's path, and
load presets. See the "Saved settings" section below.


The playlist panel
==================
Double-clicking on a track will make XMPlay play the track. Right-clicking
brings up further options to play the track, to write a copy to disk while
playing the track (URLs only), queue the track, skip the track, add it to
the library, display track info, and remove the track.

TIP: A track can also be queued by clicking the middle mouse button on it.

If an internet stream is of a known length (a file on an FTP/HTTP server),
the "Write to disk" option can be selected while the track is already playing
(or has even finished playing), and XMPlay will write the portion that has
already been downloaded and continue to write the remainder that is being
downloaded. So you can preview the track before deciding if you want to keep
it, without having to start downloading it again.

Shoutcast/Icecast/Icecast2 streams that include the track titles, can be
automatically split into the separate files when writing them to disk.

Tracks that are set to be skipped are displayed in a small dimmed font. Dead
tracks are indicated by red lines through them - a single red line means
the track is unplayable, while a double line means it can't even be opened,
eg. doesn't exist. The currently opened track is signified with a light-blue
arrow. Tracks that are queued for playback have a smaller light-blue arrow,
and the queue position next to it.

Files can be added to the list by drag'n'dropping them there. Whole directory
trees and shortcuts can also be drag'n'dropped into the list. URLs can also be
dragged from web-browsers. The new tracks are inserted into the position that
they are dropped in.

TIP: You can drag tracks up/down the list by holding down the left button.
     Tracks can also be dragged from XMPlay into other programs, by clicking
     the right button while the left button is held down. Tracks can also be
     dragged from the playlist to the library (and vice versa), or back into
     the playlist to add duplicates.

Queue:
    This toggles listing the tracks that are queued for playback, instead of
    the entire playlist. The queued tracks can be rearranged and generally
    manipulated just like in the playlist.

Bottom buttons
--------------
Random play order:
    Plays the tracks in random order. Right-clicking brings up more options
    to shuffle the list, sort the list, and to reverse the order.

Save list:
    Writes the list to a PLS or M3U file.

Add to list:
    Adds files/URLs to the list. Right-clicking allows you to add all tracks
    in a directory (and sub-directories) to the list. If you add an FTP
    directory, XMPlay will scan it for playable files, and add them all to
    the list.

Remove from list:
    Removes the selected track from the list. Right-clicking gives further
    options to remove duplicates tracks, dead tracks, and all tracks. There
    are also options to refresh the dead tracks and clear the queue.

Loop list:
    If enabled, XMPlay plays the first track in the list again after the last
    track. Right-clicking gives the option whether XMPlay should go on to the
    next track when the current one ends, whether playback should stop at a
    dead track or at the end of a queue, and whether to unload the final track
    when finished.

Next to the buttons is the total list duration (clicking it will switch it to
a track count display). When multiple tracks are selected, the display will
alternate between the list total length, and the selected tracks length.

Multiple tracks can be selected using the standard ctrl/shift+click methods.

The playlist is duplicated in the info window, where it can be resized.


The 'Options and stuff' window
==============================
Clicking the spanner icon in the main panel, or right-clicking on any non-
button area gives the option to open the 'Options and stuff' window, which,
as the name suggest, contains options and stuff. A description of the page
contents follows...


Appearance
----------
The current skin name, and a link to the author's website or email address
is shown at the top of the page. If the author has included a "readme"
message, that can be viewed by clicking the "Readme" button.

Open panels:
    When switching skins, the panels will be opened, if this is enabled.

Maximum text width:
    This restricts the width of info window texts (eg. tags), and wraps any
    text that exceeds the specified width. Setting it to 0, disables it.

Auto-resize to fit contents:
    When enabled, the info window will automatically be resized to fit its
    contents.

Restrict rendering:
    Visual plugins can take a very high amount of CPU when the window is
    expanded to a large size. Using this option restricts the rendering to
    the dimensions specified, beyond which the rendered image is stretched
    to fit the window. Some visual plugins don't like high resolutions and
    crash, so this can be used to avoid that too.

TIP: The stretching is generally hardware accelerated, but might not be in
     some card/driver's case, in which case it may be more efficient to just
     render unrestricted.

Move info window with main:
    When enabled, moving the main window will also move the info window. It
    does not apply the other way - moving the info window will not also move
    the main window. The right-click while moving action is also reversed by
    this option, ie. it'll stop the info window moving.

Vertical sync vis display:
    When enabled, visual display refreshing will be done in sync with the
    monitor, to avoid any flickering.

Fading bubbles:
    When enabled, the info bubbles will be faded in and out. This option is
    only available on Win2k and above.

Fullscreen vis bubbles:
    When enabled, the info bubbles will be shown in fullscreen vis mode.

Show time in tenths:
    When enabled, the playback time position will be shown within a 10th of a
    second, otherwise only seconds will be shown.


Miscellaneous
-------------
Track looping:
    This controls looping, as with the switch in the main panel (above).

Only once:
    If enabled, tracks will only be looped once (when looping is enabled).

Fade-out:
    When playing a looped track, rather than have a sudden stop at the end,
    XMPlay can smoothly fade it out. The length of the fade (in seconds) is
    determined here. If set to "0", no fading is performed.

Auto-loop any track ending with sound:
    For formats that don't contain looping information, this option tells
    XMPlay to loop tracks that have sound at the very end, when looping is
    set to "auto". This also affects the "fade-out" option above, as tracks
    will only fade-out if a loop is detected.

Wait for end to decay:
    When enabled, XMPlay will wait for the end (eg. last notes) of the track
    to decay. This is only applicable with some formats (eg. MIDI). The
    "including DSP" option apples to all formats, and makes XMPlay also wait
    for any DSP (eg. reverb) to decay. When set to "single track", XMPlay
    will only wait when playing a single track (auto-advance is disabled or
    writing to disk), so as not to affect gapless playback.

Timeout:
    This determines how long (in seconds) XMPlay will wait for a successful
    connection when streaming from the 'net.

Buffer:
    This determines how large a buffer (in seconds) is used when streaming
    from the 'net. The larger the buffer is, the less likely it is that the
    playback will be interrupted.

Prebuf:
    This determines how much data (in seconds) of a 'net stream should be
    buffered before starting playback, and is limited to the "Buffer" length.

Proxy:
    If enabled, XMPlay will connect to the 'net via a proxy. The proxy config
    goes in the adjacent box, in the form of "user:pass@server:port". If the
    box is left empty, XMPlay will use the Windows proxy settings set in the
    Internet Options control panel. If only the "user:pass@" part is provided,
    then XMPlay will use the user/pass details with the server in the Windows
    proxy settings. If only the "server:port" part is provided, then that
    server will be used without any user/pass authentication.

Restrict rate:
    If enabled, the download rate is restricted to the rate required to
    sustain playback. Otherwise, the file will be downloaded as quickly
    as the internet connection allows.

Auto-reconnect:
    This tells XMPlay to automatically try to reconnect whenever it gets
    disconnected from a Shoutcast or Icecast server.

NOTE: None of the internet options above affect Winamp plugins, and may not
      affect native plugins that do their own streaming.

On top:
    These 2 switches determine whether XMPlay will stay on top of other windows
    when in "normal" and/or "mini" mode.

Always in tray:
    This removes XMPlay from the taskbar, and puts the icon in the tray.
    A side-effect of this is that XMPlay is removed from the "Alt-Tab"
    list. Instead, you can bring XMPlay to the foreground by clicking on
    the icon in the tray.

Allow multiple instances:
    When enabled, multiple copies of XMPlay can be running at the same time.
    When disabled, attempting to run XMPlay while it's already running will
    just result in the command-line being passed onto the already running
    instance.

Save playback position upon closing:
    When enabled, XMPlay will store the current playback position when it's
    closing, and then resume it when XMPlay is next loaded. This also has
    the effect of reversing the close button operation, ie. it won't store
    the position when right-clicked.

Store per-user config/etc:
    This allows multiple users to share a single XMPlay installation, without
    interfering with each other's settings/playlist/library/etc...

Check for updates:
    When enabled, XMPlay will periodically (daily or weekly) check if updated
    versions of XMPlay and the installed plugins are available. A notification
    will be displayed when updates become available, which can be downloaded
    from the website (they won't be downloaded automatically).

NOTE: Update notifications may not be available for all plugins.


Playlist
--------
Verify file content:
    If enabled, XMPlay will verify that files that you open are playable
    before they are put in the playlist or library (except URLs, which are
    not verified). The contents of directories are always verified before
    being added.

Don't add duplicates:
    If this option is enabled, whenever an attempt is made to add a track
    which is already in the list, the track already in the list will just
    be selected - it won't be added again. Note this option doesn't affect
    the library (there are never duplicates in there).

Scan HTML pages for URLs:
    This makes XMPlay scan webpage URLs for links to playable files, which
    it then adds to the playlist (or library). Playlists in HTML pages will
    also be opened when "including playlists" is enabled.

Ignore filetypes:
    A space-delimited list of file extensions to ignore. Non-playable files
    may occasionally be erroneously detected as playable. This option can be
    used to block those filetypes.

Archive recursion:
    When opening archives, XMPlay can look for playable files in archives
    within archives. This option determines how many levels it'll go up
    to.

Auto-advance:
    Tells XMPlay to go onto the next track when the current one ends.

Random:
    Plays the tracks in random order. XMPlay keeps record of which tracks
    have been played, so that they are not randomly played again until
    the others have also been played. Toggling clears the record of which
    tracks have been played.

Stop at dead track:
    If a "dead" track is encountered XMPlay will stop (not advance).

Stop at end of queue:
    After playing all queued tracks, XMPlay will stop (not advance).

Loop list:
    If enabled, XMPlay plays the first track in the list again after the
    last track.

Unload final track:
    When XMPlay reaches the end (stops advancing), it'll unload the last
    track that was played.

Follow current track:
    These options determine whether the playlist views should automatically
    jump to the track when opening a new track.

Automatically add to library:
    This option tells XMPlay if/when it should automatically add tracks to
    the library. When set to "on play", tracks will be added to the library
    when they're played. When set to "on list", tracks will also be added
    to the library when they're added to the playlist.

Show queue in playlist panel:
    When enabled, the playlist panel will show the tracks that are queued
    for playback, instead of the entire playlist. Note this does not apply
    to the extended playlist in the info window.

Show filenames in extended list:
    Makes XMPlay show the filenames (rather than titles) in the info window
    playlist.


Library
-------
XMPlay can monitor directories (inc. sub-directories), and automatically add
new files to the library, and remove deleted ones. The monitored directories
and the number of library entries contained in them are listed.

Rescan:
    Rechecks all files in the directory. This can be useful when installing
    new plugins, eg. if formerly unplayable files become playable.

Remove:
    Stops monitoring of the directory. The directory's library entries are
    not removed.

Add:
    Sets up monitoring of a directory.

Keep tracks with overridden tags:
    When a monitored file with overridden tags is deleted, it'll remain in
    the library if this option is enabled. If the file has been moved, the
    dead track recovery options (below) can be used to recover it without
    having to re-enter the overridden tags.

Don't preprocess playlists:
    Normally, when adding playlist files (eg. PLS/M3U/ASX) to the library,
    they will be parsed and their contents added to the library. When this
    option is enabled, playlist files will be added to the library without
    being parsed, and they will instead be parsed when played. This also
    affects directory monitoring - when enabled, playlists in monitored
    directories will be added to the library (else they will be ignored).

TIP: A 'net radio playlist URL can be added to the library to ensure that
     the correct stream URL is always used, even if it changes.

Count as played after:
    This will delay the incrementing of a track's play count (and last play
    time), until some time (in seconds) after the track was opened, or at
    the end of the track if that comes sooner. If the track is unloaded
    before then, the playback is not counted.

Expand chopped text in-line:
    Sometimes text may be too long to fit in its column. In that case, with
    this option enabled, leaving the mouse over the text for a second will
    cause the text to be expanded across subsequent columns. If this option
    is disabled (or the text doesn't fit "in-line"), it'll be shown in a
    bubble instead.

Show overridden tags in Message info:
    When enabled, and a track with overridden tags is played, the tags will
    be shown in the "Message" info window.


Dead
----
If you rearrange your music files, it could leave you with a load of "dead"
tracks in XMPlay and a lot of work to fix them, particularly the library
entries. That's where this options page comes into play.

All missing files from the playlist and library are listed. You can either
manually correct them (type the new location), or more conveniently, scan
directories (including sub-directories) for the missing files. Whenever
possible, XMPlay will not only check for filename matches, but also file
sizes, to reduce the chance of false-positives (same filename but different
contents). This depends on the original file's size being known, eg. in the
library.

Automatically check other drives for missing files:
    When XMPlay encounters a missing file, and this option is enabled, it
    will look for the file at the same path on the other drives.

Remove all dead:
    This removes all dead tracks (both non-existent and just unplayable)
    from the playlist and library.

Individual dead tracks can also be removed via right-clicking, or pressing
the Delete key.


Integration
-----------
You can set XMPlay to be the default player for the formats it supports. So
that whenever you "open" a file from within Windows Explorer, it is opened
by XMPlay. A filetype association can be removed by deselecting it.

The icon that is displayed for files associated with XMPlay is shown to the
bottom-right of the filetypes list. It can be changed by clicking on it.

Add to XMPlay-list:
    This adds an "Add to XMPlay-list" option to the shell context menu of
    files (and folders) associated with XMPlay. Using this menu option results
    in the files just being added to the playlist, without playing them or
    clearing the list.

Add to XMPlay-library:
    This adds an "Add to XMPlay-library" option to the shell context menu of
    files (and folders) associated with XMPlay. Like "Add to XMPlay-list",
    except it adds the files to the library instead of the playlist.

Folders:
    This enables the context menu options for folders/directories. With
    the "sub" option enabled, XMPlay will search sub-directories for
    playable files too - this setting also applies when drag'n'dropping
    directories into XMPlay, and when they're in the command-line.

Monitor the clipboard URLs:
    XMPlay can monitor the clipboard for URLs of playable files, which
    it will automatically play or add to the playlist. When you see a
    playable file on a webpage, simply right-click and "Copy Shortcut"
    to have XMPlay stream it.

Add tracks to list by default:
    If enabled, tracks opened from Windows Explorer or the clipboard are
    only added to the playlist, without clearing the list first. It's as
    if the "Add to XMPlay-list" option was used.

Play listed tracks:
    When enabled, XMPlay will start playing tracks that are added to the
    list via external means (not when using the "Add to list" button).

Desktop:
    Places a shortcut to XMPlay on the desktop.

Quick launch:
    Places a shortcut to XMPlay in the quick launch bar.


Titles
------
Here you can choose how XMPlay should format the title of the tracks,
based on the tags contained in them. Tags are not available from Winamp
plugins, so the formatting won't generally apply to them (they'll usually
have their own formatting options), but XMPlay will read ID3v1, ID3v2
and APEv2 tags from Winamp plugin played files if the "Apply to Winamp
plugins when possible" option is enabled.

TIP: It is possible to override a track's tags. See the "Track info"
     section below.

Some formats don't have tags, eg. MOD formats just have a title "tag".
This could make the titles messy when elements are not available, if it
wasn't for the fact that the formatting can vary depending on what tags
are available. For example, the default formatting is:

    %?2{%2 - }%?1{%1|%0}

This means if the artist tag (%2) is present, use that and place " - "
after it. Then, if the title tag (%1) is present, add that, otherwise
add the filename (%0).

When a CUE sheet is present, XMPlay will use the title and performer info
from that when it's not available from the track itself. XMPlay will also
update the title at the CUE points, if the "Update title from cues" option
is enabled.

Scroll long titles:
    When enabled, titles that are too long to fit the title display will
    be scrolled.

Tray title bubbles:
    When XMPlay is minimized to the tray, and this option is enabled, a
    bubble containing the new title will be shown next to the tray on
    track changes.

Fullscreen vis title bubbles:
    When in fullscreen vis mode, and this option is enabled, a bubble
    containing the new title will be shown on track changes.

Refresh all tags & titles:
    This option makes XMPlay rescan the tags/titles for all tracks, in the
    playlist and the library.


Shortcuts
---------
Here you can fully customize how you control XMPlay via the keyboard. This
includes setting "global" shortcuts which can be used from within other
applications (ie. without XMPlay being in focus).

Multiple keys can be assigned to perform the same action, likewise multiple
actions can be assigned to a single key. When multiple actions are assigned
to a single key, they are performed in the order that they were added.

As an example, you could assign a key to select all search matches, invert
the selection, and delete selected tracks. That would leave you with just
the search matches left in the list.

Defaults:
    Resets all shortcuts back to the defaults as when XMPlay is first run.

These are the default shortcuts...

    O               Open files/URL
    shift+O         Open directory
    P/Pause         Current track - Play / pause
    shift+P/Pause   Current track - Stop
    Home            Current track - Restart
    right           Current track - Forward
    left            Current track - Back
    shift+right     Current track - Next subsong
    shift+left      Current track - Prev subsong
    Page Up         Change track - Previous
    Page Down       Change track - Next
    End             Change track - Random
    Insert          List - Add files/URL
    shift+Insert    List - Add directory
    ctrl+Z          List - Undo
    Q               List - Show queue in list
    shift+/         List - Clear queue
    up              List nav - Up
    down            List nav - Down
    ctrl+up/down    List nav - Jump to current
    shift+up        List nav - Select extend up
    shift+down      List nav - Select extend down
    ctrl+A          List nav - Select all
    ctrl+F          List nav - Find
    F               List nav - Find next
    shift+F         List nav - Find previous
    ctrl+shift+F    List nav - Find all
    Enter           List track - Play
    Space           List track - Skip
    /               List track - Queue
    Delete          List track - Remove
    shift+Delete    List track - Remove & delete file
    + (numpad)      DSP - Volume up
    - (numpad)      DSP - Volume down
    / (numpad)      DSP - Balance left
    * (numpad)      DSP - Balance right
    M               Toggle mini mode
    N               Minimize / restore
    shift+N         Minimize to tray / restore
    alt+F4          Close
    alt+shift+F4    Close with position saved
    F9              Options and stuff
    F1              Info - General
    F2              Info - Message
    F3              Info - Samples
    F4              Info - Visuals
    F5              Info - Extended list
    F6              Info - Library
    ctrl+C          Info - Copy to clipboard
    alt+F           Info - Fullscreen visuals
    8 (numpad)      Info - Scroll up
    2 (numpad)      Info - Scroll down
    4 (numpad)      MOD pattern - Prev channel
    6 (numpad)      MOD pattern - Next channel
    5 (numpad)      MOD pattern - Mute channel
    7 (numpad)      MOD pattern - Unmute all
    9 (numpad)      MOD pattern - Invert all
    F12             Reload skin


MOD
---
These options only affect MOD file formats (MO3/XM/IT/etc).

Interpolation:
    "Linear" interpolation "draws" a straight line between the samples.
    "Sinc" interpolation "draws" a smooth curve between the samples and
    gives better quality but requires more CPU power.

Ramping:
    Ramping makes volume and panning changes smoother so that sudden large
    volume/panning changes do not cause any "clicking" in the sound. It
    also fades-in (very quickly) new samples so that there is no click from
    them. Sensitive ramping only performs the fade-in when it's necessary
    to prevent a click, so percussive sounds stay sharp.

Surround Sound:
    "Mode 2" ignores panning, so is particularly good for mono MODs.

Pan separation:
    The higher the setting, the more sounds are pushed away from center.
    Obviously can only affect things when playing in stereo.

Auto-looping:
    When looping is set to "auto", this option determines when to loop MOD
    formats.

MOD playback mode - decides how MOD files should be played:
    FT2 = FT2 plays MODs slightly differently from the convention,
      in fact most trackers play MODs differently from each other! Anyway,
      if you want to hear MOD files as FT2 plays them, then select this.
    PT1 = This plays MODs as the original ProTracker did, so now you
      can relive those early Amiga days! :)
    PT1 -filter = This is the same as "PT1", but with the Amiga filter
      disabled.

Ignore muting:
    IT and S3M files can have muted channels, which XMPlay will honour
    when loading the files, unless this option is enabled.

TIP: Channels can be (un)muted via the MOD pattern display options (see
     shortcuts above).

Trim ending silence:
    If there is any silent space at the end of a track, it will not be
    played. Instead XMPlay will jump to the next track, assuming there
    is more than one track in the list, and looping is not on.

Universal Y/Z effects:
    This enables support for the IT Yxx (panbrello) and Zxx (filter) effects
    in the XM and S3M formats. They are automatically enabled when DMO
    effects are used, as that indicates the file was created with MPT (which
    is what allows Yxx and Zxx to be used in XM/S3M files).

Show bpm/etc in time display:
    This option determines when, if at all, the number of active channels
    and bpm/speed are shown in the time display. When enabled, the active
    channel count is shown to the left, and the bpm/speed is shown to the
    right. The channel count will be inverted if any virtual channels have
    been killed within the last few seconds (due to excess CPU use).

Shrink columns when channel count is:
    When there are a lot of channels, the MOD pattern display can become
    too wide for the screen. This option will cause the instrument/volume
    column to be removed when there are a certain number of channels, so
    that more channels can be fitted on screen.


DSP
---
The response speed to all these options is dependant on the buffer size,
the delay will be the length of the buffer chosen in the "Output" options.

Amplification slider:
    This is different to the volume slider. The volume slider controls the
    level of the sound card output, the amplification slider controls the
    level of the actual decoding. The higher the amplification, the greater
    the dynamic range of the decoding output, but if it's too high clipping
    may occur resulting in distortion of the sound.

Auto-amp:
    This causes the amplification level to be automatically reduced whenever
    clipping occurs. With fade-in enabled, it will fade-in new tracks until
    they clip, then it'll behave the same as normal. Dynamic mode continues
    to increase and decrease the amplification level throughout playback.

Reset on new track:
    Resets the amp level to 0 dB (or replaygain value) when a track is loaded.

Replaygain:
    When a track has "replaygain" information, XMPlay can use it for the
    default amp level. XMPlay can read RG information from OGG files and
    APEv2 and ID3v2 tags. Native plugins may also support it, but Winamp
    plugins have no way of communicating that information. When a track
    doesn't have the preferred value but does have the other (eg. "Album"
    is chosen but only "Track" is available), it'll be used instead.

NOTE: When replaygain is active, auto-amp is automatically disabled until
      the amplification slider is moved away from the replaygain level.

The bottom part of the window is dedicated to DSP plugins, and is fairly
self-explanatory. The "up" and "down" buttons can be used to change the order
in which the DSP are applied (top first).

There are 2 built in DSP - the equalizer and reverb. Most Winamp DSP plugins
can be used via the "Winamp DSP wrapper". You can create your own plugins by
using the SDK available from the XMPlay website.

Lock:
    This prevents a DSP being removed, or its settings being overridden, when
    loading saved settings. The DSP is also not included when saving settings.
    This is only available with DSP plugins that only allow a single instance.


Saved settings
--------------
Amp/DSP/looping/MOD options can be saved, to be automatically applied when
specific tracks are loaded, or saved as presets to be quickly set whenever
wanted.

When saving settings, the settings that are actually saved is determined by
the check boxes. The "MOD" box can have a greyed tick, which means that the
MOD settings are only saved if the current track is a MOD format.

* "Amp" is the amplification settings ("DSP" options page).

* "DSP" is the config of all DSP plugins that are currently active (in the
  DSP Plugins list), except those that are locked.

* "Loop" is the track looping/ending settings ("Miscellaneous" options page).

* "MOD" is the MOD settings ("MOD" options page).

Before clicking "Add", you need to select what the settings will apply to.
There are 4 types of saved settings - "File", "Type", "Path", "Preset".

"Preset" is fairly obvious, and the saved settings can be accessed by right
clicking the settings button (disk icon) in the left panel.

When XMPlay tries to load settings for a track, it will first look for a
"File" match. If there is none, it will look for an "Type" match. And if
there's still no match, it will look for a "Path" match. In the case of
there being multiple path matches, the longest match will be used. For
example, both "c:\" and "c:\blah\" match "c:\blah\blob.mod", but the
"c:\blah\" settings will be used.

The preset name or file/type/path of a saved settings can be edited by
clicking on the entry in the list.

TIP: An empty path setting will match all files.

Right-clicking on a saved setting entry gives the option to load, update or
remove the settings. When updating settings, the saved settings are replaced
by the current settings.

Save settings:
    Writes the settings to disk. No changes are kept otherwise.

Automatically load saved settings:
    This enables the automatic loading of settings that have been saved for
    the new track being played.


Plugins
-------
The "input" plugins that are installed are listed here, with a list of
the file formats that they support. When changing a plugin's config while
it's being used to play a track, you may have to reopen the track for the
config changes to take effect.

TIP: A large selection of plugins are available at the support site.

NOTE: Only Winamp plugins that can feed the sample data to XMPlay (rather
      than use their own output) are loaded, which is most of them.


Output
------
Here you can choose which device to use, and what output format to use with
the device.

You may also choose the "WAV Writer" device, to write the output to WAV
files rather than a soundcard. External encoders ("Encoder - ?") can also
be used to write compressed audio files, eg. MP3 or OGG.

NOTE: If looping is enabled while using a writer device, the track will be
      looped only once in the written file, even if the "Only once" switch
      is not on.

When writing to disk, the amplification slider controls the volume level.
Be careful not to use a too high amplification level as this may result in
samples being clipped. You can avoid any amplification problems by using
the "WAV Writer - normalized" device.

Apply sample rate to all formats:
    Most file formats have a particular sample rate that they're intended
    to be played at, and XMPlay will usually play them at that rate, unless
    this option is enabled. In which case, XMPlay will resample all tracks
    to the chosen sample rate, using the same sinc interpolation as used in
    the MOD mixing option, giving a good blend of quality and speed.

Downmix multi-channel:
    When enabled, tracks that have more than the chosen number of channels
    will be downmixed. Otherwise they will be played with their default
    number of channels, which may mean that some channels are not heard if
    the extra speakers are not present.

NOTE: If the device doesn't support the chosen output format, different
      settings may automatically be used. See the "Output" text in the
      "General" info window for the exact format of the output.
	  
Dithering and noise-shaping are recommended when writing to disk (eg. to
burn on CD), but noise shaping is not recommended if you intend to process
the written file (use 32-bit whenever possible instead).

NOTE: When writing to disk (including external encoder), 32-bit is standard
      IEEE754 floating-point ("type 3" WAV).

Directory:
    The default directory to write files in.

Write to source directory:
    When enabled, the output file will be written to the same directory as
    the track that is being played, instead of the "Directory" setting.

Auto-filename:
    This removes the need to select a filename when writing to disk. The files
    are written as the same name with the default extension added. Because no
    user interaction is required, writing is also continuous in this mode - it
    automatically moves onto the next track when the current one ends (if the
    "auto-advance" option is enabled).

Separate MOD instruments:
    When enabled, and writing a MOD format to disk, each instrument will be
    written individually. The instrument number shall be appended to the
    filename.


Encoders
--------
Here you can add/remove/edit the encoders available to the device list.
Any command-line encoder can be used, optionally using STDIN, so that no
intermediate file writing is required.

The resolution of the sample data sent to the encoder will be as set in
the "Output" options above, unless it is overridden here.

Settings for the LAME and OGGENC encoders are provided, to use them put
the LAME.EXE or OGGENC.EXE file in the same directory as XMPlay. See the
support site for more encoders.


Output plugins
--------------
The option pages for any installed output plugins will be shown below the
"Output" options.


The info window
===============
The info window displays information on the currently loaded track. There
are 4 modes...

General:
    Displays info on the file's name, format, size, etc...

Message:
    Displays any messages or tags contained in the file, including the
    current track name when streaming from Shoutcast servers.

Samples:
    Displays instrument and sample texts.

Vis:
    Displays visualisations.

The window can be resized by dragging the edges, or you can have XMPlay
automatically resize the window to fit the contents by ticking the box at
the top (2nd from left). The mouse wheel can be used to scroll up/down.

Right-clicking gives the option to copy the window's text to the clipboard.
Any URLs that are present in the text can also be opened by right-clicking.

The 3rd button from the left toggles having the playlist panel duplicated
in the info window. Right-clicking the button opens the library (see the
"Library" section below). With "auto-resize" enabled, only the playlist
display width is resized - the number of tracks listed is left as it is.

There is an extra button in the info window version of the playlist, with
which you can find tracks containing specific substring(s) in their tags
or filename. Right-clicking allows you to choose to have only the matched
tracks played (the rest will be skipped).

The current and total number of tracks is also displayed in the top-right.

TIP: Double-clicking the visualisation toggles fullscreen mode.

NOTE: Screensavers will be disabled while fullscreen vis is active.

NOTE: Some visualisations support button-clicks. The middle mouse button
      is used to access that feature in XMPlay.


MOD Pattern Display
===================
The "MOD Pattern Display" visualisation applies to MOD formats only, and
allows you to get an idea of how the files were "tracked". For simplicity
and clarity, not all effects are shown and a universal notation is used
for all formats. The following entries are shown by XMPlay:

note
instrument (shown in green)
portamento (red)
tone up/down (red ^/v)
vibrato (red ~)
volume (blue)
volume up/down (blue +/-)

NOTE: All numbers are shown in hex, except the row number.

Shortcuts can be set to scroll the display when all the channels do not
fit in the display. Channels can also be muted via shortcuts. See the
"Shortcuts" options page.

TIP: Channels can be muted by middle-clicking on them.

TIP: The width of the channel columns can be changed depending on the
     number of channels. See the "MOD" section above.


Library
=======
The library is a sort of glorified playlist. Whereas the playlist just
contains each track's filename and title, the library contains a lot of
additional information. The full list of info contained in the library
is: filename, title, artist, album, year, track, genre, comment, file
type, file size, length, the play count, the age and the time of last
playback.

The tracks in the library can be sorted by any of these values, making
it quick and easy to locate the tracks you want to play. Click on the
column heading to sort by that value. Clicking again will reverse the
order.

You can choose which info is shown in the library by right-clicking on
the headings. You can also change the display order of the columns by
dragging them, and you can change the width of each column by dragging
the borders.

Files can be added to the library in the same way as they can with the
playlist, eg. using the add button or by drag'n'dropping them. They
can also be added automatically when played or added to the playlist.
See the "Playlist" section above.

Probably the most convenient way to add files is to monitor directories,
ie. the directories containing your music. When any files are added or
deleted, they will automatically be added or removed from the library.
Monitoring is setup in the "Library" options page.

The library uses the same GUI as the extended playlist. When used here,
all the buttons will take effect on the library, except for the random
and loop list switches, which still apply to the playlist.

Right-clicking on a track will give options to play the track, add it
to the playlist, view/edit track info, refresh the info, and remove the
track. Double-clicking will also play the track, and middle-clicking
will queue the track.

NOTE: When playing or queuing a track from the library, it'll first be
      added to the playlist if it's not already in there.


Track info
==========
The track info window is accessed via right-clicking on a track in the
playlist or library. In this window you can see some details of the track,
including the filename, tags, file size and playback length. The filename
and tags can be modified.

NOTE: Changes made here affect all copies of the track, ie. if there are
      multiple copies of the track in the playlist, they will all have the
      same modified info.

When overriding tags, the track's file is not modified - the tags are just
stored in the library. This means that any modifications will be lost upon
closing XMPlay unless the track is in the library. The "In Library" check
box indicates whether the track is currently in the library.

TIP: The tags of multiple tracks can be overridden by selecting them all
     before opening the track info.


Find track(s)
=============
Using this window, you can search for tracks containing specific string(s)
in their title or filename. When searching in titles, the track's tags will
also be searched if they're available - that is if they're in the library
or have been read during playback or for the "Track info" window.

Using the "any" or "all" options you can search for tracks that contain
any/all of multiple words (separated by spaces).

As you type the search string, or change the search options, any matches
will be listed in the box below. You can click on a match to jump to it
in the playlist and/or library. Right-clicking will bring up options to
play the track, queue the track or view track info. Double-clicking (or
pressing space) will also play the track.

TIP: The search results can be sorted by title or filename by clicking the
     column header.

Include library:
    Enables searching of the library for matches, as well as the playlist.

Skip non-matching tracks:
    XMPlay will skip over any tracks that do not match the search criteria
    when playback advances.


Dragon droppings
================
Files, whole directory trees, shortcuts, and URLs can be drag'n'dropped into
XMPlay. If they're dropped into one of the playlist panels, then the tracks
are inserted into the position they were dropped at. If they are dropped
elsewhere, then the playlist is cleared, and the dropped tracks are added
and played. Holding the shift key down as you drop the tracks reverses this
behaviour, eg. the list is cleared if the tracks are dropped in a playlist
panel. Tracks can also be dropped into the library or queue.

The files and URLs of tracks can also be dragged from XMPlay, into other
applications, by clicking the right button while keeping the left button
pressed.


Command-line
============
Files, directories and URLs can be opened with XMPlay by passing them in
the command-line. There are also a few options that can be used in the
command-line:

-list:
    Add the tracks to the list, else the list will be cleared and the new
    tracks played (depending on the Integration options). When used, this
    option should come before the files in the command-line.

-play:
    Start playback.

-tray:
    Minimize to tray.


Plugins
=======
XMPlay supports input, archive, output and DSP and visual plugins. A load
of plugins are available at the XMPlay and support websites. To install a
plugin, simply put it in the same directory as (or a sub-directory of) the
XMPLAY.EXE file.

NOTE: XMPlay must be restarted to enable newly installed plugins.


Skins
=====
Alternative skins are available at the XMPlay and support websites. As with
plugins, to install a skin, simply put it in the same directory as (or a
sub-directory of) XMPLAY.EXE. To switch skins, go to the "Appearance" options
page, or right-click on any non-button area of the main panel.

NOTE: XMPlay must be restarted to enable newly installed skins.

A skinning kit is also available at the XMPlay website, should you wish
to create your own XMPlay skins.


CUE sheets
==========
CUE files can be used to quickly jump to specific points (eg. start of a song
in an album) in large files. When opening a track, XMPlay will look for a CUE
file of the same filename (with ".CUE" extension) in the same directory (or
archive). If one is found, it'll be loaded and the CUEs will be listed in the
"Message" info window. The sub-song shortcuts can be used to jump between the
CUE points. XMPlay can also update the title based on the CUE sheet - see the
"Title format" section above.

NOTE: Some formats allow CUE sheets to be embedded, which XMPlay will also
      check for.


Latest version
==============
The latest version of XMPlay can always be found at the XMPlay website:

		www.un4seen.com


Copyright, disclaimer, and all that other jazz
==============================================
This program is free for non-commercial use, so if anyone tries to charge
you for it, kick 'em where it hurts.

This software is provided as-is. The author makes absolutely no warranties
on it. You use it at your own risk. The author shall not be held responsible
for any damage that may result from its use, including, but not limited to,
burning your toast while being too engrossed in the XMPlay "experience".

All trademarks and other registered names contained in the XMPlay "package"
are the property of their respective owners.


History
=======
These are the major (and not so major) changes at each version stage.
There are also many tweaks and bug fixes made along the way too!

3.4.2 - 28/6/2007
-----------------
* Library menu options and shortcuts to select all tracks with matching tags
* Reverb "time" parameter
* Configureable internet connection timeout and pre-buffering
* CDDB and CDTEXT info shown separately
* Option to prefer CDDB or CDTEXT for tags
* Updated version notifications

3.4.1 - 1/5/2007
----------------
* Updating of saved settings
* Amp slider range increased to +/-15dB in DSP options
* Replaygain levels shown in "General" info
* Shortcuts for auto-amp and to reset amplification
* "-list" command-line option to add files to list
* 3D spectrum speed toggling (middle-click)
* Library display options moved to header right-click menu

3.4 - 3/4/2007
--------------
* Output plugin system
* Optional resampling and downmixing
* Library directory monitoring
* Fullscreen visualisations
* Recursive/nested archive support
* EQ increased to 9 bands
* Actual filetype (not just extension) shown in playlist/library
* Per-extension saved settings replaced by per-filetype
* Ignoring of unwanted filetypes when adding new files
* DSP locking (prevent overriding by saved settings)
* Playlists in the library
* Library mass-tagging
* "Age" record added to library
* Waiting for track endings to decay
* Support for embedded CUE sheets
* Choice of CDDB info when there are duplicates
* CDDB info caching
* Info window text magnification
* Bubble text size configuration
* Sorting of search results by filename
* M3U playlist saving
* Scanning for playlists in HTML pages
* Drag'n'dropping between playlist and library
* MOD channel muting via middle-click in pattern display
* MOD auto-loop options
* Year tag extraction from MODs
* MOD signature shown in "General" info
* Auto-amp automatically disabled when replaygain is active
* Extended output buffer size range
* Balance shortcuts
* MOD interpolation/ramping/surround shortcuts
* Random played tracking always retained (option removed)
* Skinning improvements (see skinning kit)

3.3.0.6 - 30/11/2006
--------------------
* Per-extension saved settings
* CD support for restricted/limited Win2k/XP users
* Option to lock CD door while playing
* Search history
* Shortcuts to extend selection
* Version number shown in "Options and stuff" window

3.3 - 22/12/2005
----------------
* Config moved from registry to XMPLAY.INI file
* Show/manipulate queue in playlist panel
* Separate resizable search window
* Optional sorting of search results
* Position bookmarking (save current position to resume later)
* CD-TEXT support
* "Recover dead tracks" option to locate missing files
* Automatically check other drives for missing files
* "Play count" added to library
* Time of last play shown in track info window
* Integration option to select/deselect all extensions
* Quick launch bar shortcut
* Option to save playback position on closing XMPlay
* Shortcut to close XMPlay is now customizable
* Shortcut to save list
* Shortcut to toggle MOD playback mode
* Tray title bubbles are now optional
* "Move selected to top" sort option
* "Only sort selected" option removed (now always on)
* "Write to disk" continues writing after reconnection
* Download progress shown in "General" info
* Improved track dragging in list
* Follow current track can also apply in extended list
* Moving of main and info windows together
* Options and stuff window rearranged
* Differentiation between unplayable and missing tracks
* Skinning improvements (see skinning kit)

3.2 - 13/2/2005
---------------
* New "media library" (replaces "recent tracks" list)
* Native "input" plugin system
* CD Audio support
* Conditional (if..then..else..) title formatting
* Genre, comment and filename elements added to title formatting options
* Title formatting can now also apply with Winamp plugins whenever possible
* Support for APEv2 tags
* ID3 genre tag support
* Optional title updating from CUE sheets
* Undo option (shortcut) for playlist/library modifications
* Plugin-played formats added to integration options
* Play/queue/info options (right-click menu) in the "Find tracks" list
* More efficient WMA file playing with WM9 (and above) modules installed
* Replaygain support
* Improved MOD default amplification level calculations
* Option to automatically write WAV/etc files to same directory as the source file
* Tag passing to external encoders (LAME/OGGENC default command-lines updated)
* Scrolling titles
* Playlist entry scrolling replaced with more detailed help bubbles
* Option to not add duplicate tracks to the playlist
* Adjustable info window text wrapping
* OGG "vendor" info shown in "General" info
* Option to shrink columns in MOD pattern display depending on number of channels
* MOD BPM/speed display option
* Option to ignore channel muting in IT/S3M files
* DSP volume/balance now permanently on, and changes are audible instantly
* Dithering & noise-shaping automatically bypassed when not required
* Fully customizable sample rate in device options
* Option whether to allow multiple instances
* Folder shell integration option
* Proxy config option
* Shortcut to show tray title bubble
* Shortcut to clear list
* "Device options" shortcut
* Shortcut to select all dead tracks
* Windows mouse wheel scrolling settings used when scrolling playlist and info window
* Support for extended M3U playlists
* Skinning improvements (see skinning kit)

3.1 - 1/8/2004
--------------
* Gapless playback
* Support for Unicode (Russian/Chinese/etc) files
* Option to individually write each MOD instrument to disk
* CUE sheet support
* "XMPlay-able" file selector filter now includes plugins
* "Refresh dead tracks" option
* Title parameter added to external encoder options
* Length of selected tracks is displayed (alternates with total list time)
* Minimize shortcuts can now also restore
* "Toggle random play order" shortcut
* "Clean reg" option to remove registry entries
* More accurate time-based OGG seeking
* Skinning improvements (see skinning kit)

3.0 - 24/2/2004
---------------
* Support for multi-channel WAV/OGG/WMA files & Winamp plugins
* Fully customizable shortcuts...
* ...also available via DDE (details available on request)
* DSP plugin support
* MOD and archive file "streaming" (ie. download and play)
* Seeking in internet streamed OGG files while downloading
* SSE2 optimized sinc interpolation
* Enhanced saved settings options
* Enhanced search option (OR/AND multiple word searches)
* Recently played tracks list
* Fading-out of looped files
* Option to "auto loop" only MOD files
* Option to sort/shuffle only selected tracks
* Finer amplification resolution and extended range (-15 to +10 dB)
* Auto-amp improvements
* Icecast (OGG) stream ripping into separate files
* Adjustable internet buffering
* Shout/Icecast "Auto-reconnect" option
* Always "on-top" option
* Reverb now applies to mono playback too
* Customizable icon for associated filetypes
* Option to "Ignore playlists & shortcuts" when adding directories
* Support for ID3v2.4 tags
* Support for LAME "Info" header
* Deleted files moved to recycle bin (if enabled)
* Skinning improvements (see skinning kit)

2.8 - 28/7/2003
---------------
* Device/Integration/Miscellaneous/Plugins panels removed, and...
* ...replaced by a single integrated "Options and stuff" window
* Enhanced search option (matches listed as you type)
* DSP volume & balance option
* Mono tracks are played in stereo if output is set to stereo
* Support for high-pass filter and forward/reverse (S9E/F) IT/MPT effects
* "Always in tray" option
* "Restrict rendering" vis option
* "Stop at dead track" option
* "Clear queue" option
* File selector "Folder history"
* External encoder "resolution" setting
* Amplification display unit changed to "dB"
* Maximum buffer length increased to 2.5 seconds
* Faster skin loading
* Skinning changes (see skinning kit)

2.7 - 17/5/2003
---------------
* 8 point windowed sinc interpolation (3DNow! optimized)
* Non-interpolated mixing option
* Support for 32/24-bit WAV files
* Support for 32/24-bit Winamp input plugins
* More responsive auto-amp reduction
* Amp slider scale is now the same for all formats
* "Dither" and "Noise shaping" options
* MOD pattern display horizontal scrolling
* MOD channel muting
* Automatic scanning for track lengths
* Resume playback at startup from where it left off (right-click close)
* Checking for "dead" tracks at startup
* Visualisation resizing without stretching
* Logarithmic freq in spectrum displays (16khz range)
* Info window can be opened while minimized to tray...
* ..."Info window" global hotkey and tray menu option
* Open/add files from the tray menu
* Option to display filenames in info window playlist
* "Stop at end of queue" option
* Looped WAV writing (always "only once")
* Track number added to title formatting options
* Invert selection shortcut (I)
* Selection of multiple blocks of tracks (using ctrl+shift+click)
* Shortcut to rescan track titles (F9)
* Numerical sorting (eg. "2" comes before "10")
* "Sort by filename" now includes the path
* WinXP time display problem fixed
* A few more skin-related improvements (see skinning kit)

2.6 - 16/1/2003
---------------
* 32/24-bit OGG/MPEG/MOD playback
* Track queuing
* Multi-track selection (move/delete/queue/skip multiple tracks)
* Customizable track title format
* Help bubble for long track titles
* Title changes are displayed when minimized to tray
* Global hotkeys for stop/seeking/volume
* Support for "win" key in global hotkeys
* Multi-song MOD WAV writing support
* 24-bit WAV writing
* 32-bit WAV writing format changed to "type 3" standard
* Output format shown in "General" info window
* Partial unicode support in OGG tags
* Settings moved to HKEY_CURRENT_USER registry branch
* A couple more skin-related improvements (see skinning kit)

2.5 - 18/11/2002
----------------
* Multi-song MOD support
* Support for DMO effects in IT/XM/MO3 files
* Support for chained OGG streaming
* Support for extended filter range in IT files
* Support for "Invert Loop" (EFx) MOD effect
* Global hotkeys
* Open URLs from info window texts
* Centered MOD pattern scrolling mode
* Faster WAV writing
* Improved external encoder STDIN support
* Playlist moved from registry to XMPLAY.PLS file
* Per-track settings moved from registry to XMPLAY.SET file
* Icecast2 tags shown in info window
* Support for track titles in WMA streams
* ID3 tags shown in info window for plugin-played files too
* EQs bands changed (now evenly spaced 2 octaves apart)
* "Flat" EQ preset
* XMPlay Support site link in misc panel
* "Auto-advance" option (loop list switch sub-menu)
* "Play listed tracks" option (list button sub-menu)
* "Sort by extension" option (random switch sub-menu)
* "-tray" command-line option to launch in tray
* "-play" command-line option to start playback on launch
* Support for multiple files and/or directories in command-line
* Shortcut to "Add directory" (shift+Insert)
* MP3pro files are passed onto the MP3pro plugin (if installed)
* A few skin-related improvements (see skinning kit)

2.4a - 24/7/2002
----------------
* OGG support updated to 1.0
* Help bubbles for volume/amplification/EQ/reverb shortcut adjustments
* Vibrato effects shown in MOD pattern display
* Shortcut to stop
* Shortcut to "Get missing times"
* Shortcut to view skin "readme" text
* Shortcut to reload current skin

2.4 - 14/7/2002
---------------
* Skins
* Built-in WAV support (including streaming)
* Built-in WMA support (including streaming)
* OGG support built-in (OGG/VORBIS DLLs not required)
* ASX "playlist" support
* Spectrum visualisations
* Amplification & auto-amp apply to plugins now too
* Calculation of missing track lengths
* Support for Modplug/ADPCM compressed files
* "Remove & delete file" option
* "Add directory" option
* Output directory selector (for auto-filename)
* Copy info window text to the clipboard option
* MO3 sample compression ratio in "General" info window
* Basic sample details in "Samples" info window
* Filename help bubbles in info window playlist
* Slider levels shown in help bubbles
* "Restart" option in tray menu
* "Random play order" indicator
* Track count display in playlist panel
* "Stop" when already stopped unloads current track
* "Unload final track" option
* Shortcut to find track starting with x
* Winamp plugin track info shortcut changed (due to above)
* Minimize shortcut
* Option to reset amplification on new tracks
* Option to remove tracks not matching search criteria
* Extension association removal
* Command-line support
* "Add to XMPlay-list" shell option
* Info window texts retrievable via DDE (topics=info0-2)
* Visual plugin button-click support

2.3 - 28/2/2002
---------------
* MPEG & OGG pre-load/scanning removed
* Seeking in internet streamed files
* MOD pattern display visualisation
* CODEC WAV writer removed and...
* ...replaced by customizable external encoder settings
* Auto-filename option for WAV/encoder writing
* PLS/M3U playlist streaming
* Active MOD channel count
* "Random play order" option
* Minimize to tray
* Info window scroll shortcuts
* Auto-kill virtual channels if CPU load reaches 75%
* Comments in XM files supported
* Localised font support

2.2 - 13/1/2002
---------------
* Playlist searching & unmatched skipping
* OGG modules updated to RC3
* Detection of VBlank MODs
* EQ/reverb/restart shortcuts
* Current/total tracks display in playlist (info window)
* Plugin file info menu option in playlist
* Follow the current track marker in playlist panel
* Adlib S3M files are ignored (so plugins can play them)
* Error dialog explaining failed HTTP/FTP connections
* Warning dialog for unsupported Winamp plugins

2.1 - 22/12/2001
----------------
* Winamp input plugin support
* Playlist panel duplicated in the info window
* HTML webpage scanning
* URL drag'n'dropping into XMPlay
* Drag'n'dropping files/URLs from XMPlay to other apps
* Write separate tracks to disk (shoutcast streams)
* "Dynamic" auto-amp mode
* "Auto loop" mode applies to all formats now (not only MODs)
* 96khz MOD playback rate
* BPM/speed display for MOD formats
* Stereo sample support in MO3/IT/XM/S3M formats
* Current track displayed in taskbar
* Open file/URL dialogs combined
* Desktop shortcut option
* "Remove duplicate titles" option
* "Remove dead" also removes non-existent local files not marked as "dead"
* Random track shortcut

2.0 - 1/11/2001
---------------
* Too many things to remember! :)


The "thank you" section
=======================
BIG thanks to Chris "Ripguy" Corrado who designed the XMPlay 3 GUI,
Thomas Radeke who maintains the XMPlay Support Site and Nathan
"KelticDanor" Hindley who did it before him.

And thanks to the many who have given good suggestions and bug reports!

