AHX replayer for xmms

AHX core (c) by Abyss (Pink, Dexter, Bartman)
xmms glue (c) by David Le Corfec, <dlecorfec@users.sourceforge.net>

Read the other readme's for more info about AHX.
This plugin is under GPL. For a long time I couldn't
distribute the core AHX source, but now the authors
agreed to open the source, with the following license:
> do whatever you like with the source codes, BUT:
> - DON'T sell them
> - DON'T claim they're yours.
> - DON'T use commercially.
> - bla..bla..

----------------------------------------------------------
Install:

Take the xmms-ahx sources.
./configure with your prefered paths/options. (try --help)

make
make install

----------------------------------------------------------
URLs:

xmms-ahx :
http://xmms-ahx.sourceforge.net/

new Abyss homepage:
http://www.abyss-online.de/

Now time for a free advert (or two):
Try modplug-xmms, it's the best mods plugin for xmms ! 
Try uade-xmms, to replay all those Amiga chiptunes !

----------------------------------------------------------
xmms plugin files :

ahx/xmms.h :
 misc declarations / includes

xmms_ahx.cpp :
 contains wrapper for xmms InputPlugin API. 
 get_iplugin_info() is exported as a C symbol.
 ip_play_file is the most important function, calling methods of
 AHXPlayer and AHXOutput.
 Also contains the class MyAHXConfig, to load/save/store AHX
 config for xmms.

xmms_output.cpp :
 class AHXXmmsOut. For xmms, redirection of output commands to
 iplugin.output functions. So no low level audio handling here !
 Init() calls open_audio(), Free() calls close_audio(), StartBackgroundPlay()
 spawns the player thread, StopBackgroundPlay() stops the thread,
 OutputBuffer() within the player thread calls write_audio().

xmms_fileinfo.cpp :
 file info dialog.
 Displays module informations (samples names or author's blurb)

There's also the About and Configure windows.

About window: (xmms_about.cpp)
Just informative.

Configure window: (xmms_config.cpp)
The first folder allows to set bit resolution, frequency and
channels.
The second folder:
Oversampling : allows better sound quality vs. CPU time (but who cares)
Loop on current subsong : by default, AHX songs within a module
are played automatically. By enabling this option, you force the
player to play the same subsong again and again.
Boost : volume boost. Play with it :) Though high boosts are not
recommended.

----------------------------------------------------------
History:
v0.6 (01-Nov-2003) :
 Fixed an FP exception when attempting to play files not loadable
 Fixed compilation with gcc 3.x

v0.5 (07-Nov-2000) :
 Basically bumped revision number.
 Integrated free AHX.cpp (thanks to bartO/Abyss and Laurent Clevy)
 Found a new web hosting (at Sourceforge).
 Tested against xmms-1.2.3
 Put 2 lines in dummy ip_get_song_info() to avoid segfault !?

v0.4 (24-Apr-2000) : 
 Forgot to use g_basename in reco function, for the prefix match.
 Thanks to You-know-who-you-are (sorry :)

v0.3 :
 Extended reco function from *.thx to (*.thx|*.ahx|thx.*|ahx.*)

v0.2 :
 Some fixes for xmms >= 0.9.5

v0.1 :
 First release, for xmms 0.9.1

----------------------------------------------------------
Future:
Improve the player and/or cleanup the code. Big patches welcome.
