changeset 7:e5c49367b899

Updated to 0.8
author Matti Hamalainen <ccr@tnsp.org>
date Tue, 03 Jun 2003 11:25:05 +0000
parents ff6b3a556a15
children 74dcddaf1e83
files AUTHORS BUGS ChangeLog INSTALL Makefile.am NEWS README README.bugreport TODO acsidplay.m4 autogen.sh src/Makefile.am xmms-sid.glade
diffstat 13 files changed, 1710 insertions(+), 560 deletions(-) [+]
line wrap: on
line diff
--- a/AUTHORS	Tue Jun 03 11:19:04 2003 +0000
+++ b/AUTHORS	Tue Jun 03 11:25:05 2003 +0000
@@ -1,10 +1,10 @@
-xmms-sid - SIDPlay input plugin for X MultiMedia System (XMMS)
+XMMS-SID - SIDPlay input plugin for X MultiMedia System (XMMS)
 ==============================================================
-
-Original xmms-sid author: Willem Monsuwe
+Matti "ccr/TNSP" Hamalainen - Author and maintainer since v0.5.
+Willem Monsuwe - Original XMMS-SID creator and author.
 
-This branch (post v0.4) authored and maintained by
-Matti "ccr/TNSP" Hamalainen
+Implementation of MD5 (RFC 1321) by L. Peter Deutsch
+(C) Copyright 1999 Aladdin Enterprises, all rights reserved.
+(NOTICE: The included code for MD5 is (?) licensed compatibly
+with GNU GPL, but you may NOT change the license to GPL!)
 
-Special thanks to Michael Schwendt for making libsidplay.
-
--- a/BUGS	Tue Jun 03 11:19:04 2003 +0000
+++ b/BUGS	Tue Jun 03 11:25:05 2003 +0000
@@ -1,13 +1,13 @@
-Known bugs
-==========
+XMMS-SID - Known bugs
+=====================
 
-* Not really xmms-sid bug, but since it affects us:
+* There _may_ be some endianess problems that I'm not aware of.
+  PLEASE bugger me, if you notice any! :)
+
 
-  The default xmms-config script created by XMMS package is faulty.
-  It does not properly accept the --prefix parameter (it does not affect
-  the paths outputted by it) and therefore, due to how the rpm building
-  works (changes the --prefix to the build directory) it is impossible
-  (currently) to make a working RPM .spec-file without spurious kludging. 
+* See FAQ for information on few "known features".
+
 
-  I am not interested to make these kludges and so this is why the .spec
-  for xmms-sid does not produce a RPM package file.
+* Also visit XMMS-SID's homepage (http://www.tnsp.org/xmms-sid.php) for
+  most current information and latest news.
+
--- a/ChangeLog	Tue Jun 03 11:19:04 2003 +0000
+++ b/ChangeLog	Tue Jun 03 11:25:05 2003 +0000
@@ -1,43 +1,152 @@
-2002-09-02  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+2002-10-30  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+
+	* Updated GNU autoconf to 2.54, automake to 1.7.1
+	and libtool to latest CVS-version.	
+
+	* Improvements in configure.ac
 
-	* version 0.7.4
+	* Re-arranged docs some.
+
+2002-10-20  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+
+	* Incredible amount of remodelling done.
+	Now uses glade-generated C-files directly.
+
+	* Bugfixes included from 0.7-series.
 
-	* Patch from Euan MacGregor to fix bug with
-	"Determine filetype by contents" option enabled
-	crashing XMMS-SID when trying to play a file
-	that does not exist. Thanks!
+	* New documentation, updated FAQ.
+
+2002-05-05  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+
+	* xs_config.c: we must not free() data got from
+	textfield-widgets. Changed to xs_calloc() them.
+	(Fixed segfault when constantly re-opening the
+	configuration-dialog.)
+
+
+2002-05-04  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+
+	* Improved documentation lot.
+
+	* Some nasty bugs in core code, debugging ...
+	
+2002-05-01  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
 
-	* Fixed a bug in About-dialog, patch from OpenBSD
-	project's PortsPlus tree. Thanks BSD-guys! :)
+	* Lots of work on cleaning up the mess left
+	from the major rewrites ...
+
+	* Disabled parts of code to ease testing.
+
+	* Started integration of experimental support
+	for libsidplay2.
+	
+2002-03-21  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+
+	* Implemented routines for reading HVSC Songlength
+	database. (Still need to think of memory management
+	issues.)
+
+	* Added xs_close() for cleanups. TODO: check all
+	memory leaks and other things to be "shut down"
+	in the plugin.
 
-	* Fixed free() of internal Gtk-data in config-dialog,
-	which caused crash if opening+closing config-dialog
-	multiple times.
+	
+2002-03-20  Matti Hämäläinen (ccr/TNSP)  <ccr@tnsp.org>
+	
+	Loads of work, cleanups, etc.
+
+	- The configuration dialog starts to be finished ..
+	Few arrangements were done to make it more reasonably
+	and new config items were added for the new options.
 
-	* Added in LE->NE 16-bit audioformat patch from
-	OpenBSD-project. I'm not entirely sure what's the
-	difference, but it did not break at least Linux/x86. :)
+	- Integrated the new config-dialog code.
+
+	* version 0.8alpha0
+	
+2001-11-25  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Lots of cleanups.
+
+	* xs_title.c: General fixes, trying to get
+	generic title support to work...
 
-	* Added in updated songpos-patch for XMMS 1.2.7
+	* Worked on the configuration dialog.	
 	
-2002-02-26  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+2001-11-22  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
 
-	* version 0.7.3
-
-	* Fixed to work with latest libsidplay, needed
-	to add linking to libstdc++.
+	* Lots of cleanups, now compiles again.
+	(Yes, I've been somewhat lazy for a while)	
 	
-2001-11-18  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+2001-11-17  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Changed to libtool 1.4
+
+2001-09-12  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* xs_md5.*: Changed to use glib guint8/guint32.
+	Cleaned up the sources slightly.
+
+2001-08-29  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Added xs_md5.c, xs_md5.h, xs_length.c to start
+	implementing the song-length support.
+
+	* Source now in local CVS due to some hassle.
 
-	* version 0.7.2
+	A long programming session followed by sleepy
+	let's-remove-the-~-files.
+
+	Guess what? The tilde key did not work for that
+	time. Result: "rm -f *" instead of "rm -f *~".
+	What a STUPID STUPID mistake.
 
-	* Updated libtool to v1.4
+	Fortunately, the ext2fs undeletion HOW-TO with
+	some debugfs-magic worked and I didn't have to
+	start again with week-old backups :)
+
+	*whew* (First time for me that something like
+	this happened. Hopefully also the last time.)
+
+2001-08-20  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Fixed some indentations.
 
-	* Again fixed the song-pos patch. Sorry.	
+	* Makefile.am: Removed duplicate xmms-sid.spec
+
+2001-08-19  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Updated all documents to new e-mail address
+	<ccr@tnsp.org> and new TNSP e-mail address
+	<tnsp@tnsp.org>.
+
+	* Added in the RPM .spec-file.
+
+	* Lots of source cleanups.
+
+	* Added xs_support.c and xs_title.c.
+
+	* xs_title.c: Worked on global title support.
+
+2001-08-15  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
 
-	* Minor fixes backported from 0.8-betas
+	* configure.in: Improved general structure, show
+	information about options when finished succesfully,
+	detect XMMS >= 1.2.5 and enable extra features,
+	option --enable-subsongsel
+
+	* Worked on new configuration dialog.
+
+	* Started work on changing the internals of STIL-system.
 
-2001-07-20  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+	* Started work on adding the song-length support.
+
+	* Removed an erratic kludge from songpos-patch v1.2.5.
+
+2001-07-19  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
+
+	* Improved README, added "usage"-section.
+
+2001-07-16  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
 
 	* Uh oh. The v0.7 release version's song-position
 	patch (v1.2.4 one) was flawed. It was against CVS
@@ -49,20 +158,11 @@
 	(aka comments out) an unused(??) function that
 	caused trouble when compiling XMMS 1.2.5 under RH7.1.
 
-	* Fixed a bug in STIL COMMENT-parsing. There must be
-	a whitespace between after line end.
-
-2001-07-19  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
-
-	* Improved README, added "usage"-section.
-
-2001-07-16  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
-
 	* Improved README.songpos documentation.
 
 2001-06-24  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
 
-	* Started working on new version, 0.8beta0 ...
+	* Started working on new version, 0.8 ...
 
 	* Designed additions to configuration dialog.
 
@@ -273,7 +373,7 @@
 	configuration system now works and it should be
 	easier to modify the variables, etc.
 
-2000-09-27  Matti (ccr/TNSP) Hamalainen  <mhamalai at ratol.fi>
+2000-09-27  Matti (ccr/TNSP) Hamalainen  <ccr@tnsp.org>
 
 	* Configuration dialog: Added STIL settings.
 	Stil bugs somewhat, the cancel-button does not
--- a/INSTALL	Tue Jun 03 11:19:04 2003 +0000
+++ b/INSTALL	Tue Jun 03 11:25:05 2003 +0000
@@ -1,8 +1,23 @@
 Requirements
 ============
 - XMMS version 1.2.0 or later (http://www.xmms.org/)
-- libsidplay 1.36.xx or later (preferably latest version)
-- Gtk+ and Glib 1.2.2 or later (http://www.gtk.org/)
+
+- Gtk+ and Glib 1.2.8 or later (http://www.gtk.org/)
+
+- C and C++-compiler. Preferably gcc and g++, I have
+  no idea whether this compiles with any other
+  compilers ... sorry.
+
+- You need either or both of the following:
+   * libsidplay1 v1.36.xx (or later version)
+   * libsidplay2 v2.0.7 (NO LATER OR EARLIER VERSIONS!)
+
+  NOTICE! You need at least v1 or v2, OR BOTH.
+
+
+Earlier versions may or may not work; you may try,
+but you'll need to edit configure.in for smaller
+version numbers and then run autogen.sh.
 
 
 Where to get XMMS?
@@ -15,11 +30,8 @@
 on it's usage and installation (etc).
 
 
-Where to get libsidplay?
+Where to get libSIDPlay?
 ========================
-XMMS-SID requires the libsidplay to play the SID tunes
-(as XMMS-SID is just an "libsidplay interface for XMMS").
-
 The library is available at SIDPlay's homepage:
 
 http://www.geocities.com/SiliconValley/Lakes/5147/sidplay/
@@ -27,29 +39,35 @@
 You only need libsidplay, the sidplay-base is not necessary
 if you are sure that you don't need the commandline player.
 
-(NOTICE!!! XMMS-SID cannot use sidplay2 as it is completely
-different from sidplay v1!! Support may be added in future,
-however.)
+Where to get libSIDPlay2?
+=========================
+The library is available at SourceForge:
+
+http://sidplay2.sourceforge.net/
+
+NOTICE! Compiling sidplay2 may or may not be cumbersome,
+since it is still heavily under development. Take care.
 
 
-Installing xmms-sid
+Installing XMMS-SID
 ===================
+When you have the requirements installed and working
+succesfully, you can try compiling XMMS-SID.
+
+Invoke configure-script (use parameter --help for help)
+
+$ ./configure
 
-Simply run the following commands:
+
+If configure went without errors, try compilation:
 
-./configure
-make
-make install
+$ make
+
+If that went OK too, then you may try installation:
+
+# make install
 
 (Run "make install" as superuser/root if you are
 installing for the whole system.)
 
 
-Notes
-=====
-* If "configure" script is not present, run ./autogen.sh
-
-* The configure script uses xmms-config to guess the correct location
-  to install the plugin files (.so and .la). If you want to install them
-  to another place, run configure with --libdir=<path> option.
-
--- a/Makefile.am	Tue Jun 03 11:19:04 2003 +0000
+++ b/Makefile.am	Tue Jun 03 11:25:05 2003 +0000
@@ -1,5 +1,5 @@
-# Require automake 1.4
-AUTOMAKE_OPTIONS = 1.4
+# Require latest automake
+AUTOMAKE_OPTIONS = 1.7
 
 # Directories to be BUILT and INSTALLED
 SUBDIRS = src
@@ -9,12 +9,14 @@
 
 # All the rest of the distributed files
 EXTRA_DIST =			\
-	xmms-songpos.patch-1.2.2	\
-	xmms-songpos.patch-1.2.5	\
-	xmms-songpos.patch-1.2.7	\
 	acsidplay.m4		\
-	xmms-sid.glade		\
-	README.songpos		\
+	FAQ			\
 	README.bugreport	\
 	BUGS			\
-	autogen.sh
+	THANKS			\
+	autogen.sh		\
+	xmms-songpos.patch	\
+	xmms-sid.glade		\
+	xmms-sid.spec.in	\
+	xmms-sid.spec		\
+	pixmaps
--- a/NEWS	Tue Jun 03 11:19:04 2003 +0000
+++ b/NEWS	Tue Jun 03 11:25:05 2003 +0000
@@ -1,8 +1,74 @@
-xmms-sid - SIDPlay input plugin for X MultiMedia System (XMMS)
+XMMS-SID - SIDPlay input plugin for X MultiMedia System (XMMS)
 ==============================================================
 List of user-visible changes in XMMS-SID (See ChangeLog for
 more complete listing of changes)
 
+Version 0.8
+===========
+* Theme-song (SID-tune!) from Brite-Lite/Dekadence!
+  Thanks for great work! Listen to his other tunes
+  in HVSC, VARIOUS/A-F/Brite-Lite/ and visit the
+  Dekadence web-experience: http://www.dekadence64.org/
+
+* Support for libSIDPlay 2.x! If you have 1.x too,
+  you can select which one to use in the configuration
+  dialog.
+
+* Song-length support! Several methods supported:
+
+  - Maximum playtime setting. If set ON, song will be
+    played for given time. This can be used as a
+    fall-back method if a detection is selected, but
+    it fails.
+
+  1) No song-length detection. XMMS-SID plays the song
+     forever, OR if max-playtime is set, for that time.
+
+  2) Pseudo-heuristic silence detector.
+     Allows the user to define a "silent time limit"
+     with amplitude percentage. When the average output
+     volume has stayed on specified percentage for
+     specified time, next song is started.
+
+  3) HVSC song-length database support. XMMS-SID now
+     supports the XSIDPLAY's song-length database for
+     tunes contained in HVSC collection. This is
+     probably the best option, but requires downloading
+     of a small package (few hundred kB's), that contains
+     the database. Read "README" for more info.
+
+
+* Improved file information dialog:
+
+  - Coloring in "comment"-field, if multiple entries
+    are present there.
+
+  - Sub-song "name" or "title" is shown (if any) in the
+    sub-song selector. If "name" is found for the song,
+    it is shown, if not, then "title" is checked for
+    and shown if found.
+
+
+* XMMS v1.2.5 introduced the "generic title format" that
+  can be used to have same format titles for those
+  plugins that support it. XMMS-SID is now one of them.
+  There is also an overriding option, that enables you
+  to have SID-specific titles. See the configuration
+  dialog for more information.
+
+
+* New SIDAmp-style sub-song selector window. Does not
+  require patching of XMMS, so this is easier to use.
+  The patch is not used by XMMS-SID, but included for
+  those who want the additional functionality it provides
+  for other plugins.
+
+
+* Throw in a handful of bugfixes (and possibly new bugs),
+  stir powerfully. Finally, sprinkle some minor improvements
+  on the top and voéla!
+
+
 Version 0.7
 ===========
 * Much improved file information dialog. Now shows all relevant
@@ -25,15 +91,15 @@
 ===========
 Improved configuration:
 
- - Filters are now configurable, you can adjust all three
-   parameters of libsidplay: FS, FM and FT. See "Filter"
-   panel of configuration dialog.
+* Filters are now configurable, you can adjust all three
+  parameters of libsidplay: FS, FM and FT. See "Filter"
+  panel of configuration dialog.
 
- - STIL database path can be set and STIL usage can be enabled
-   and disabled from configuration dialog's "STIL" panel.
+* STIL database path can be set and STIL usage can be enabled
+  and disabled from configuration dialog's "STIL" panel.
 
- - Songname / info is now configurable like in the mpg123 plugin,
-   with %1..%n, see the "STIL" panel of configuration dialog.
+* Songname / info is now configurable like in the mpg123 plugin,
+  with %1..%n, see the "STIL" panel of configuration dialog.
 
 
 Version 0.5
--- a/README	Tue Jun 03 11:19:04 2003 +0000
+++ b/README	Tue Jun 03 11:25:05 2003 +0000
@@ -1,121 +1,52 @@
-xmms-sid - SIDPlay input plugin for X MultiMedia System (XMMS)
+XMMS-SID - SIDPlay input plugin for X MultiMedia System (XMMS)
 ==============================================================
-
-XMMS-SID is originally by Willem Monsuwe.
-Additional fixes, features added were added by
-Matti "ccr" Hamalainen of Tecnic Software productions (TNSP),
-who also nowadays maintains this package.
+(C) Copyright 2002-2003 Matti 'ccr/TNSP' Hämäläinen
+    (versions from v0.5 up to current)
 
-!! NOTICE: Please do not contact Willem about this version,
-since the bugs and quirks are probably made by me (ccr) now. !!
-
-General Introduction
-====================
-XMMS-SID is a plugin for XMMS (X MultiMedia System) which provides
-support for playing the so-called "SID tunes". For the actual playing,
-XMMS-SID uses the excellent libsidplay SID-chip/6502 emulator engine.
-(See "INSTALL" where to get libsidplay)
-
-If you are not familiar with the term "SID tune" or "SID" concept at
-all, a short (yes it is! ;-) explanation follows:
+(C) Copyright 1999 Willem Monsuwe
+    (versions up to v0.4)
 
-SID is the sound chip that was used in many of the old 8-bit home
-computers manufactured by Commodore Inc. in 1980's. Best known of
-those was the Commodore 64 home computer (aka C64 or CBM64, also
-known as VIC-64 in some countries).
-
+"XMMS-SID Theme"-song (SIDtune)
+    by Peter 'Brite-Lite' Halin of Dekadence
+    (C) Copyright 2002 Dekadence
+    <http://www.dekadence64.org/>
 
-The Sound Interface Device (SID) was one of the most advanced sound
-chips at the time. It's capabilities surpassed all of the other chips
-on the 8-bit home computer market and even most of the ones used in
-arcade game systems. Thousands of games were produced for C=64 in
-1980's and beginning of 1990's, many of them having excellent musical
-score. Best of those tunes are still regarded at least legendary,
-such as songs by Martin Galway (for games Arkanoid, Green Beret,
-Yie Ar Kung Fu 1 & 2, Parallax...), Rob Hubbard (Commando, Auf
-Wiedersehen Monty, Monty on the Run, Warhawk, Sanxion, Delta...),
-Ben Daglish (Jack the Nipper 1&2, Way of the Tiger, Cobra, Avenger...)
-and numerous other legendary composers. Some of them quit their
-composing quickly after the 8-bit period, but some are still working
-in the computer music business. (Like Maniacs of Noise, Chris
-Huelsbeck, Richard Joseph and ex. MON member Charles Deenen who
-worked with Fallout 1's musical score)
+MD5 Algorithm code for song-length database handling
+    by L. Peter Deutsch <ghost@aladdin.com>
+    (C) Copyright 1999 Aladdin Enterprises. All rights reserved.
 
 
-Today, years after the decline of 8-bit computers, many composers
-(mainly from C64 demoscene) continue to compose tunes for SID and
-get most amazing things out of it -- things that the designers of
-the SID would have never believed.
-
-For example: SID has only three sound channels, but there are tunes
-that use special techniques to "multiplex" them to sound like four
-or even six channels. Also these three channels are "limited" to
-synthesized sounds, kind like the FM sounds produced by old Sound Blaster
-cards on PC. But again, using a certain 'bug' in SID chip, composers
-were able to push the limits farther ... Martin Galway's very famous
-piece on Arkanoid game was the "first" (later it has been proven that
-Chris Huelsbeck's Bad Cat was the first but was released later) to
-feature DIGITIZED SAMPLES like speech, etc.
-
-...
-
-So this is the story in short. The "SID tunes" are usually understood
-to be the files that contain the C64 machine code and data that plays
-the music. SID players (or emulators) are programs that emulate the
-SID chip capabilities and other parts of C64 hardware to produce
-almost authentic re-creation of the original music. SID-files (aka
-SID tunes) can be created by ripping the music routines and data from
-some game or just composing the music with some editor.
+Short Introduction
+==================
+XMMS-SID is a plugin for XMMS (X MultiMedia System) which provides
+support for playing the so-called "SID tunes", which are music
+from old Commodore computer programs like games, demos, etc.
 
-XMMS-SID is interface for one of those emulators, probably the best
-one: (lib)SIDPlay by Michael Schwendt.
-
-...
-
-Hopefully I didn't make you bored with my chit-chat :)
-
--ccr/TNSP
-
+For the actual playing, XMMS-SID uses the excellent libsidplay (1|2)
+SID-chip/6502 emulator engine that emulates 6510 CPU and 6581/8580
+Sound Interface Device (SID) chip.
 
-Where to get SID tunes?
-=======================
-There are many collections of SID tunes on the Internet, but
-probably the best one and best known one is the High Voltage
-SID Collection aka HVSC.
-
-It is available at: http://hvsc.c64.org/
-
-HVSC contains the tunes ripped from all legendary C64 games,
-loaders, etc. And more. There are over 15,000 tunes in the
-HVSC version 4.0 and more are coming. HVSC also contains the
-STIL database (SID Tune Information List) that contains lots
-of information about many of the tunes included in HVSC.
-XMMS-SID supports the STIL database and info about the playing
-tune can be viewed with the "XMMS fileinfo" window (CTRL+3).
-STIL information can contain comments from composers, information
-about if the tune is a cover and historically interesting facts
-about games, etc...
+If you are not familiar with the term "SID tune" or "SID" concept
+at all, please read the longer introduction in the FAQ!
 
 
 Usage
 =====
-Using the plugin is quite simple, if you are familiar with XMMS,
-then you already know how to use XMMS-SID. The configuration of
-the plugin should be quite self-explanatory and the default settings
-are usually satisfactory. The only thing that you probably
-need to touch in the config dialog is the "STIL-database path"-setting,
-if you have the HVSC-collection and want to use STIL-database.
+Using the plugin is quite simple: if you are familiar with XMMS and
+SIDPlay, then you already know how to use XMMS-SID. Configuration
+should be self-explanatory, here are few tips:
+
+* SIDPlay2-emulation is harder, but more accurate. So you need to have
+  more CPU-power for it.
 
-Simply point the STIL-db path to "STIL.txt"-file that resides
-under "DOCUMENTS"-subdirectory of HVSC-rootdir. For example,
-I use the following path: "/usr/src/C64Music/DOCUMENTS/STIL.txt".
-(My HVSC resides under "/usr/src/C64Music")
+* Oversampling is available with SIDPlay2-emulation, it can further
+  enchange the audio quality, but requires even more power.
 
+* Filter-settings can be usually left as they are, unless you know
+  what you're doing.
 
-Notes
-=====
-* If the plugin doesn't recognize your sidtunes, try checking the
-  'Determine filetype by contents' option in the xmms-sid config window.
+* If the plugin doesn't recognize your SID-tunes, try checking the
+  'Determine filetype by contents' option in the XMMS-SID config window.
   This is horrendously slow if you're reading a 10000-tune playlist,
   though.
 
@@ -124,33 +55,24 @@
   libsidplay. So if you think that the tune does not sound as it sounds
   on the real C64 (or other SID using machine), use the Mono setting.
 
-* xmms-sid's configuration panel has been enchanged (from v0.6)
-  to have the libsidplay's SID filter configuration parameters. You
-  can tune them if you know what you're doing and maybe want to make
-  xmms-sid sound more like your own C64's SID (as some of you may
-  remember, the original SID 6580 had the infamous filter bug that
-  made every chip sound somewhat different!). If you don't know what
-  to do with these settings, just press the Reset Values button to
-  get the working defaults of libsidplay.
-
 * The "kb/s rate" box is actually the play rate in Hz, so you can
   see if it's an NTSC or PAL song (if you haven't set the Force Speed
   option).
 
-* Read file "README.songpos" for additional fun.
+Also see FAQ for more tips, notes and such.
+
 
 
 Contacting and where to get new versions
 ========================================
-New releases of this plugin should be available at TNSP's WWW
-homepages, see below for address. Bug reports, suggestions,
+New releases of this plugin should be available at TNSP's WWW-
+homepages, see below for address. Bug-reports, suggestions,
 patches, etc. should be sent to ccr.
 
-ccr's e-mail: mhamalai@ratol.fi
+ccr's e-mail: ccr@tnsp.org
 
-	OR  : ccr@iobox.com (if the one above does not work)
+XMMS-SID's homepage: http://www.tnsp.org/xmms-sid.php
 
 TNSP's WWW  : http://www.tnsp.org/
+TNSP e-mail : tnsp@tnsp.org
 
-TNSP e-mail : tnsp@iobox.com
-
--- a/README.bugreport	Tue Jun 03 11:19:04 2003 +0000
+++ b/README.bugreport	Tue Jun 03 11:25:05 2003 +0000
@@ -2,8 +2,8 @@
 =============================
 Consider the following things before writing a bug-report.
 
-1. Type of the bug:
-
+1. Type of the bug
+------------------
 - Sound-distortion?
 
   This may not be directly XMMS-SID bug, but more like SIDPlay bug.
@@ -29,22 +29,22 @@
 - Segfault?
 
   Again, check the tune on commandline SIDPlay. If it also segfaults,
-  report the bug to SIDPlay author, Michael Schwendt.
+  report the bug to SIDPlay author.
 
   If it does NOT segfault with commandline SIDPlay, report it to me (ccr).
   See README for contacting information.
 
+
 - New feature?
 
-  Well, check on the commandl... ehh. :-)
-
-  Send the suggestions, shit, hatemail, patches and your valuables to
-  ccr/TNSP, contacting information available on README.
+  Send the suggestions, shit, hatemail, patches, your valuables and
+  credit card numbers to ccr/TNSP, contacting information available
+  on README. ;-)
 
 
 
 2. Example-layout for bug-reports
-
+---------------------------------
 Here is an example layout for your bug-report. Feel free to
 use your own, or put in additional information.
 (Send it via e-mail, using subject: "XMMS-SID BUG")
@@ -61,7 +61,7 @@
 
 XMMS version       :		(xmms --version)
 
-Are you using songpos-patch?	(if you applied the patch, answer yes)
+Are you using songpos-patch?
 
 
 Description of the bug?
@@ -75,5 +75,5 @@
 Other information
 -----------------
 
-[If the bug is/causes a segfault, include a backtrace if possible.]
+[If the bug is/causes a segfault, include a gdb backtrace if possible.]
 
--- a/TODO	Tue Jun 03 11:19:04 2003 +0000
+++ b/TODO	Tue Jun 03 11:25:05 2003 +0000
@@ -1,45 +1,32 @@
-xmms-sid - SIDPlay input plugin for X MultiMedia System (XMMS)
+XMMS-SID - SIDPlay input plugin for X MultiMedia System (XMMS)
 ==============================================================
 
-- [for v0.8 ?]
-  Some way to determine if a tune has stopped playing (yeah, right..)
-  Implementation suggestions:
-  * Use HVSC length database (from SIDPlay's homepage)
-  * For looping tunes, use configurable "max playing time"
-  * User should be able to turn length-detection off/on
-  * Maybe also somekind "silence treshold" detection scheme?
-  * Combination of all those methods above?
+
+- UPDATE LIBTOOL! done.
+
+- Support libSIDPlay v2.x if detected
 
-  Any of the above methods don't provide an 'exact' result due to
-  various reasons:
+  also make libsidplay1 optional, not required.
+  detect with configure.
 
-  a) It is fundamentally impossible to get the _RIGHT_ length
-     automatically, since you can't just wait for the "silent" part.
-     (Only 'real' way is to listen all the songs and determine the
-     time manually aka HVSC length db)
+  if (sidplay1 || 2) ok; else fail;
 
-  b) Some tunes are 'looping' in nature, so there is no "real
-     length".
+--- 
 
-- Add alternative sub-song selection method, UADE-style pop-up.
-
-- Coloring to fileinfo window (to separate multiple
-  "artist"/"comment"/"name"/"title" fields)
+-----------------
+For XMMS-SID v0.9/1.0
 
-- [for v1.0 ?]
-
-  * SIDPlay 2 support (when it gets mature enough)
+ * Possibly: Song "pre-rendering" support+position selector
+   work like it "should". Option for those who have the
+   CPU power (or patience) and enough RAM to spare for
+   the whole song.
 
-  * Possibly: Song "pre-rendering" support+position selector
-    work like it "should". Option for those who have the
-    CPU power (or patience) and enough RAM to spare for
-    the whole song. NOTE: This depends on the song-length
-    detection support!
+ * Make it more modular (for future enchangements)
 
 INTERNAL:
 
-- Rewrite the callbacks/etc to work in "the Right Way of Glade"
-  so that editing the GUI would be easier. (probably not)
+- Clean up the sources somewhat (char->gchar, etc)
 
 - Add STIL-database indexing for faster searches?
   (may not be real issue)
+
--- a/acsidplay.m4	Tue Jun 03 11:19:04 2003 +0000
+++ b/acsidplay.m4	Tue Jun 03 11:25:05 2003 +0000
@@ -1,4 +1,10 @@
-# sidplay.m4  sidplay checks
+# sidplay.m4 - libSIDPlay 1.xx.xx checks
+# Originally by Michael Schwendt
+# Modified by Matti 'ccr' Hamalainen
+
+dnl -------------------------------------------------------------------------
+dnl Try to find a file (or one of more files in a list of dirs).
+dnl -------------------------------------------------------------------------
 
 AC_DEFUN(AC_FIND_FILE,
     [
@@ -16,6 +22,10 @@
     ]
 )
 
+
+dnl -------------------------------------------------------------------------
+dnl Try to find SIDPLAY includes and library.
+dnl -------------------------------------------------------------------------
 AC_DEFUN(AC_PATH_LIBSIDPLAY,
 [
 AC_MSG_CHECKING([for SIDPLAY includes and library])
@@ -46,7 +56,8 @@
   ])
 
 if test "$ac_sidplay_cflags" = NO || test "$ac_sidplay_library" = NO; then
-#search common locations
+
+# Search common locations
 
 AC_CACHE_VAL(ac_cv_have_sidplay,
 [
@@ -99,8 +110,10 @@
   all_includes="$SIDPLAY_CFLAGS $all_includes"
 fi
 
-dnl Test compilation.
 
+dnl ***
+dnl *** Test compilation
+dnl ***
 AC_MSG_CHECKING([whether -lsidplay works])
 ac_cxxflags_safe=$CXXFLAGS
 ac_ldflags_safe=$LDFLAGS
@@ -129,7 +142,10 @@
   have_sidplay=no
 fi
 
-dnl
+
+dnl ***
+dnl *** Substitute variables
+dnl ***
 
 AC_SUBST(SIDPLAY_CFLAGS)
 AC_SUBST(SIDPLAY_LIBS)
--- a/autogen.sh	Tue Jun 03 11:19:04 2003 +0000
+++ b/autogen.sh	Tue Jun 03 11:25:05 2003 +0000
@@ -1,4 +1,4 @@
-#!/bin/sh
+#! /bin/sh
 
 echo "**************************************************"
 echo "** Generating build information                 **"
@@ -9,7 +9,7 @@
 
 # Touch the timestamps on all the files since CVS messes them up
 directory=`dirname $0`
-touch $directory/configure.in
+touch $directory/configure.ac
 
 # Regenerate configuration files
 echo "* aclocal"
--- a/src/Makefile.am	Tue Jun 03 11:19:04 2003 +0000
+++ b/src/Makefile.am	Tue Jun 03 11:25:05 2003 +0000
@@ -10,9 +10,9 @@
 
 # Plugin sources
 libxmmssid_la_SOURCES =	\
-	xmms-sid.cc	xmms-sid.h	\
+	xmms-sid.cpp	xmms-sid.h	\
 	xs_init.c	\
-	xs_title.cc	\
+	xs_title.cpp	\
 	xs_support.c	xs_support.h	\
 	xs_config.c	xs_config.h	\
 	xs_md5.c	xs_md5.h	\
--- a/xmms-sid.glade	Tue Jun 03 11:19:04 2003 +0000
+++ b/xmms-sid.glade	Tue Jun 03 11:25:05 2003 +0000
@@ -2,20 +2,28 @@
 <GTK-Interface>
 
 <project>
-  <name>paske</name>
-  <program_name>paske</program_name>
+  <name>xmms-sid</name>
+  <program_name>xmms-sid</program_name>
   <directory></directory>
   <source_directory>src</source_directory>
   <pixmaps_directory>pixmaps</pixmaps_directory>
   <language>C</language>
   <gnome_support>False</gnome_support>
   <gettext_support>False</gettext_support>
+  <use_widget_names>True</use_widget_names>
+  <output_build_files>False</output_build_files>
+  <main_source_file>xs_interface.c</main_source_file>
+  <main_header_file>xs_interface.h</main_header_file>
+  <handler_source_file>xs_genui.c</handler_source_file>
+  <handler_header_file>xs_genui.h</handler_header_file>
+  <support_source_file>xs_glade.c</support_source_file>
+  <support_header_file>xs_glade.h</support_header_file>
 </project>
 
 <widget>
   <class>GtkWindow</class>
-  <name>sid_configwin</name>
-  <title>xmms-sid configuration</title>
+  <name>xs_configwin</name>
+  <title>XMMS-SID configuration</title>
   <type>GTK_WINDOW_DIALOG</type>
   <position>GTK_WIN_POS_NONE</position>
   <modal>False</modal>
@@ -35,7 +43,7 @@
       <name>cfg_notebook</name>
       <can_focus>True</can_focus>
       <show_tabs>True</show_tabs>
-      <show_border>True</show_border>
+      <show_border>False</show_border>
       <tab_pos>GTK_POS_TOP</tab_pos>
       <scrollable>False</scrollable>
       <tab_hborder>2</tab_hborder>
@@ -80,19 +88,21 @@
 	    <widget>
 	      <class>GtkVBox</class>
 	      <name>vbox9</name>
+	      <border_width>2</border_width>
 	      <homogeneous>False</homogeneous>
 	      <spacing>0</spacing>
 
 	      <widget>
 		<class>GtkRadioButton</class>
 		<name>cfg_res_8bit</name>
+		<border_width>2</border_width>
 		<can_focus>True</can_focus>
 		<label>8-bit</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>resolution</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -101,13 +111,14 @@
 	      <widget>
 		<class>GtkRadioButton</class>
 		<name>cfg_res_16bit</name>
+		<border_width>2</border_width>
 		<can_focus>True</can_focus>
 		<label>16-bit</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>resolution</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -131,19 +142,21 @@
 	    <widget>
 	      <class>GtkVBox</class>
 	      <name>vbox10</name>
+	      <border_width>2</border_width>
 	      <homogeneous>False</homogeneous>
 	      <spacing>0</spacing>
 
 	      <widget>
 		<class>GtkRadioButton</class>
 		<name>cfg_chn_mono</name>
+		<border_width>2</border_width>
 		<can_focus>True</can_focus>
 		<label>Mono</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>channels</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -152,13 +165,14 @@
 	      <widget>
 		<class>GtkRadioButton</class>
 		<name>cfg_chn_stereo</name>
+		<border_width>2</border_width>
 		<can_focus>True</can_focus>
 		<label>Stereo</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>channels</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -167,13 +181,14 @@
 	      <widget>
 		<class>GtkRadioButton</class>
 		<name>cfg_chn_autopan</name>
+		<border_width>2</border_width>
 		<can_focus>True</can_focus>
 		<label>Autopanning</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>channels</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -206,6 +221,7 @@
 	    <widget>
 	      <class>GtkHBox</class>
 	      <name>hbox4</name>
+	      <border_width>4</border_width>
 	      <homogeneous>False</homogeneous>
 	      <spacing>0</spacing>
 
@@ -213,11 +229,6 @@
 		<class>GtkSpinButton</class>
 		<name>cfg_samplerate</name>
 		<can_focus>True</can_focus>
-		<signal>
-		  <name>changed</name>
-		  <handler>on_cfg_samplerate_changed</handler>
-		  <last_modification_time>Mon, 18 Sep 2000 17:52:20 GMT</last_modification_time>
-		</signal>
 		<climb_rate>1</climb_rate>
 		<digits>0</digits>
 		<numeric>False</numeric>
@@ -258,22 +269,110 @@
 	</widget>
 
 	<widget>
-	  <class>GtkCheckButton</class>
-	  <name>cfg_checkfilecontent</name>
-	  <can_focus>True</can_focus>
-	  <signal>
-	    <name>toggled</name>
-	    <handler>on_cfg_checkfilecontent_toggled</handler>
-	    <last_modification_time>Mon, 18 Sep 2000 17:51:55 GMT</last_modification_time>
-	  </signal>
-	  <label>Determine filetype by contents (slower)</label>
-	  <active>False</active>
-	  <draw_indicator>True</draw_indicator>
+	  <class>GtkFrame</class>
+	  <name>frame27</name>
+	  <border_width>4</border_width>
+	  <label>Oversampling:</label>
+	  <label_xalign>0</label_xalign>
+	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 	  <child>
 	    <padding>0</padding>
-	    <expand>False</expand>
-	    <fill>False</fill>
+	    <expand>True</expand>
+	    <fill>True</fill>
 	  </child>
+
+	  <widget>
+	    <class>GtkVBox</class>
+	    <name>vbox27</name>
+	    <homogeneous>False</homogeneous>
+	    <spacing>0</spacing>
+
+	    <widget>
+	      <class>GtkCheckButton</class>
+	      <name>cfg_oversample</name>
+	      <border_width>4</border_width>
+	      <can_focus>True</can_focus>
+	      <label>Use oversampling</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkHBox</class>
+	      <name>hbox16</name>
+	      <border_width>4</border_width>
+	      <homogeneous>False</homogeneous>
+	      <spacing>4</spacing>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label42</name>
+		<label>Oversampling factor:</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0.5</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkSpinButton</class>
+		<name>cfg_oversample_factor</name>
+		<can_focus>True</can_focus>
+		<climb_rate>1</climb_rate>
+		<digits>0</digits>
+		<numeric>False</numeric>
+		<update_policy>GTK_UPDATE_ALWAYS</update_policy>
+		<snap>False</snap>
+		<wrap>False</wrap>
+		<value>1</value>
+		<lower>2</lower>
+		<upper>8</upper>
+		<step>1</step>
+		<page>1</page>
+		<page_size>1</page_size>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>True</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label43</name>
+		<label>Larger values require
+more CPU-power.</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0.5</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+	    </widget>
+	  </widget>
 	</widget>
       </widget>
 
@@ -297,6 +396,74 @@
 	<spacing>0</spacing>
 
 	<widget>
+	  <class>GtkFrame</class>
+	  <name>frame26</name>
+	  <border_width>4</border_width>
+	  <label>Emulation library selection: </label>
+	  <label_xalign>0</label_xalign>
+	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	  <child>
+	    <padding>0</padding>
+	    <expand>True</expand>
+	    <fill>True</fill>
+	  </child>
+
+	  <widget>
+	    <class>GtkVBox</class>
+	    <name>vbox26</name>
+	    <border_width>2</border_width>
+	    <homogeneous>False</homogeneous>
+	    <spacing>0</spacing>
+
+	    <widget>
+	      <class>GtkRadioButton</class>
+	      <name>cfg_emu_sidplay1</name>
+	      <tooltip>Use libSIDPlay 1.x emulation, faster but not so accurate. Good in most cases, though.</tooltip>
+	      <can_focus>True</can_focus>
+	      <label>SIDPlay 1 (frame-based)</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <group>emulator</group>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkRadioButton</class>
+	      <name>cfg_emu_sidplay2</name>
+	      <tooltip>Use libSIDPlay 2.x emulation, which requires powerful CPU due to more exact emulation.</tooltip>
+	      <can_focus>True</can_focus>
+	      <label>SIDPlay 2 (cycle-based)</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <group>emulator</group>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkCheckButton</class>
+	      <name>cfg_emu_sidplay2_opt</name>
+	      <can_focus>True</can_focus>
+	      <label>Use SIDPlay2 optimization mode (faster, not accurate)</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+	  </widget>
+	</widget>
+
+	<widget>
 	  <class>GtkHBox</class>
 	  <name>hbox1</name>
 	  <homogeneous>False</homogeneous>
@@ -323,19 +490,20 @@
 	    <widget>
 	      <class>GtkVBox</class>
 	      <name>vbox4</name>
+	      <border_width>2</border_width>
 	      <homogeneous>False</homogeneous>
 	      <spacing>0</spacing>
 
 	      <widget>
 		<class>GtkRadioButton</class>
-		<name>cfg_clock_pal</name>
+		<name>cfg_emu_clock_pal</name>
 		<can_focus>True</can_focus>
-		<label>PAL</label>
+		<label>PAL (50 Hz)</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>speed</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -343,14 +511,14 @@
 
 	      <widget>
 		<class>GtkRadioButton</class>
-		<name>cfg_clock_ntsc</name>
+		<name>cfg_emu_clock_ntsc</name>
 		<can_focus>True</can_focus>
-		<label>NTSC</label>
+		<label>NTSC (60 Hz)</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>speed</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -358,18 +526,13 @@
 
 	      <widget>
 		<class>GtkCheckButton</class>
-		<name>cfg_clock_force</name>
+		<name>cfg_emu_clock_force</name>
 		<can_focus>True</can_focus>
-		<signal>
-		  <name>toggled</name>
-		  <handler>on_cfg_clock_force_toggled</handler>
-		  <last_modification_time>Mon, 18 Sep 2000 17:51:45 GMT</last_modification_time>
-		</signal>
 		<label>Force speed</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -381,7 +544,7 @@
 	    <class>GtkFrame</class>
 	    <name>frame3</name>
 	    <border_width>4</border_width>
-	    <label>Waveforms:</label>
+	    <label>SID Type: </label>
 	    <label_xalign>0</label_xalign>
 	    <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 	    <child>
@@ -393,19 +556,20 @@
 	    <widget>
 	      <class>GtkVBox</class>
 	      <name>vbox3</name>
+	      <border_width>2</border_width>
 	      <homogeneous>False</homogeneous>
 	      <spacing>0</spacing>
 
 	      <widget>
 		<class>GtkRadioButton</class>
-		<name>cfg_wav_mos6581</name>
+		<name>cfg_emu_mos6581</name>
 		<can_focus>True</can_focus>
 		<label>MOS 6581</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>waveforms</group>
 		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -413,33 +577,14 @@
 
 	      <widget>
 		<class>GtkRadioButton</class>
-		<name>cfg_wav_mos8580</name>
+		<name>cfg_emu_mos8580</name>
 		<can_focus>True</can_focus>
 		<label>MOS 8580</label>
 		<active>False</active>
 		<draw_indicator>True</draw_indicator>
 		<group>waveforms</group>
 		<child>
-		  <padding>0</padding>
-		  <expand>False</expand>
-		  <fill>False</fill>
-		</child>
-	      </widget>
-
-	      <widget>
-		<class>GtkCheckButton</class>
-		<name>cfg_emufilters</name>
-		<can_focus>True</can_focus>
-		<signal>
-		  <name>toggled</name>
-		  <handler>on_cfg_emufilters_toggled</handler>
-		  <last_modification_time>Mon, 18 Sep 2000 17:51:41 GMT</last_modification_time>
-		</signal>
-		<label>Emulate filters</label>
-		<active>False</active>
-		<draw_indicator>True</draw_indicator>
-		<child>
-		  <padding>0</padding>
+		  <padding>2</padding>
 		  <expand>False</expand>
 		  <fill>False</fill>
 		</child>
@@ -464,19 +609,20 @@
 	  <widget>
 	    <class>GtkVBox</class>
 	    <name>vbox5</name>
+	    <border_width>2</border_width>
 	    <homogeneous>False</homogeneous>
 	    <spacing>0</spacing>
 
 	    <widget>
 	      <class>GtkRadioButton</class>
-	      <name>cfg_mem_banksw</name>
+	      <name>cfg_emu_mem_banksw</name>
 	      <can_focus>True</can_focus>
 	      <label>Bank switching</label>
 	      <active>False</active>
 	      <draw_indicator>True</draw_indicator>
 	      <group>memorymode</group>
 	      <child>
-		<padding>0</padding>
+		<padding>2</padding>
 		<expand>False</expand>
 		<fill>False</fill>
 	      </child>
@@ -484,14 +630,14 @@
 
 	    <widget>
 	      <class>GtkRadioButton</class>
-	      <name>cfg_mem_transrom</name>
+	      <name>cfg_emu_mem_transrom</name>
 	      <can_focus>True</can_focus>
 	      <label>Transparent ROM</label>
 	      <active>False</active>
 	      <draw_indicator>True</draw_indicator>
 	      <group>memorymode</group>
 	      <child>
-		<padding>0</padding>
+		<padding>2</padding>
 		<expand>False</expand>
 		<fill>False</fill>
 	      </child>
@@ -499,14 +645,14 @@
 
 	    <widget>
 	      <class>GtkRadioButton</class>
-	      <name>cfg_mem_playsid</name>
+	      <name>cfg_emu_mem_playsid</name>
 	      <can_focus>True</can_focus>
 	      <label>PlaySID environment</label>
 	      <active>False</active>
 	      <draw_indicator>True</draw_indicator>
 	      <group>memorymode</group>
 	      <child>
-		<padding>0</padding>
+		<padding>2</padding>
 		<expand>False</expand>
 		<fill>False</fill>
 	      </child>
@@ -529,16 +675,327 @@
       </widget>
 
       <widget>
+	<class>GtkFrame</class>
+	<name>frame17</name>
+	<border_width>4</border_width>
+	<label>SID Emulation Filter Settings: </label>
+	<label_xalign>0</label_xalign>
+	<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+
+	<widget>
+	  <class>GtkVBox</class>
+	  <name>vbox25</name>
+	  <homogeneous>False</homogeneous>
+	  <spacing>0</spacing>
+
+	  <widget>
+	    <class>GtkCheckButton</class>
+	    <name>cfg_emu_filters</name>
+	    <border_width>4</border_width>
+	    <can_focus>True</can_focus>
+	    <label>Emulate filters</label>
+	    <active>False</active>
+	    <draw_indicator>True</draw_indicator>
+	    <child>
+	      <padding>0</padding>
+	      <expand>False</expand>
+	      <fill>False</fill>
+	    </child>
+	  </widget>
+
+	  <widget>
+	    <class>GtkHBox</class>
+	    <name>hbox8</name>
+	    <border_width>4</border_width>
+	    <homogeneous>False</homogeneous>
+	    <spacing>0</spacing>
+	    <child>
+	      <padding>0</padding>
+	      <expand>True</expand>
+	      <fill>True</fill>
+	    </child>
+
+	    <widget>
+	      <class>GtkFrame</class>
+	      <name>cfg_frm1</name>
+	      <border_width>2</border_width>
+	      <width>56</width>
+	      <height>152</height>
+	      <label>FS</label>
+	      <label_xalign>0</label_xalign>
+	      <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	      <child>
+		<padding>0</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkVScale</class>
+		<name>cfg_emu_filt_fs</name>
+		<can_focus>True</can_focus>
+		<draw_value>True</draw_value>
+		<value_pos>GTK_POS_TOP</value_pos>
+		<digits>1</digits>
+		<policy>GTK_UPDATE_CONTINUOUS</policy>
+		<value>0</value>
+		<lower>0</lower>
+		<upper>1000</upper>
+		<step>1</step>
+		<page>100</page>
+		<page_size>0</page_size>
+	      </widget>
+	    </widget>
+
+	    <widget>
+	      <class>GtkFrame</class>
+	      <name>cfg_frm2</name>
+	      <border_width>2</border_width>
+	      <width>48</width>
+	      <height>152</height>
+	      <label>FM</label>
+	      <label_xalign>0</label_xalign>
+	      <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	      <child>
+		<padding>0</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkVScale</class>
+		<name>cfg_emu_filt_fm</name>
+		<can_focus>True</can_focus>
+		<draw_value>True</draw_value>
+		<value_pos>GTK_POS_TOP</value_pos>
+		<digits>1</digits>
+		<policy>GTK_UPDATE_CONTINUOUS</policy>
+		<value>0</value>
+		<lower>0</lower>
+		<upper>100</upper>
+		<step>1</step>
+		<page>10</page>
+		<page_size>0</page_size>
+	      </widget>
+	    </widget>
+
+	    <widget>
+	      <class>GtkFrame</class>
+	      <name>frame12</name>
+	      <border_width>2</border_width>
+	      <width>48</width>
+	      <height>152</height>
+	      <label>FT</label>
+	      <label_xalign>0</label_xalign>
+	      <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	      <child>
+		<padding>0</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkVScale</class>
+		<name>cfg_emu_filt_ft</name>
+		<can_focus>True</can_focus>
+		<draw_value>True</draw_value>
+		<value_pos>GTK_POS_TOP</value_pos>
+		<digits>2</digits>
+		<policy>GTK_UPDATE_CONTINUOUS</policy>
+		<value>0</value>
+		<lower>0</lower>
+		<upper>1</upper>
+		<step>0.01</step>
+		<page>0.1</page>
+		<page_size>0</page_size>
+	      </widget>
+	    </widget>
+
+	    <widget>
+	      <class>GtkVBox</class>
+	      <name>vbox17</name>
+	      <border_width>4</border_width>
+	      <homogeneous>False</homogeneous>
+	      <spacing>0</spacing>
+	      <child>
+		<padding>0</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkButton</class>
+		<name>cfg_filt_reset</name>
+		<width>120</width>
+		<height>32</height>
+		<can_focus>True</can_focus>
+		<signal>
+		  <name>clicked</name>
+		  <handler>cfg_filt_reset_clicked</handler>
+		  <last_modification_time>Mon, 18 Sep 2000 20:21:27 GMT</last_modification_time>
+		</signal>
+		<label>Reset values</label>
+		<relief>GTK_RELIEF_NORMAL</relief>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label9</name>
+		<width>136</width>
+		<height>104</height>
+		<label>These sliders affect the emulated SID's filter values. (Defaults are what the libsidplay sets them on init.)</label>
+		<justify>GTK_JUSTIFY_LEFT</justify>
+		<wrap>True</wrap>
+		<xalign>0.5</xalign>
+		<yalign>7.45058e-09</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+	    </widget>
+	  </widget>
+	</widget>
+      </widget>
+
+      <widget>
+	<class>GtkLabel</class>
+	<child_name>Notebook:tab</child_name>
+	<name>label24</name>
+	<label>Filters</label>
+	<justify>GTK_JUSTIFY_CENTER</justify>
+	<wrap>False</wrap>
+	<xalign>0.5</xalign>
+	<yalign>0.5</yalign>
+	<xpad>0</xpad>
+	<ypad>0</ypad>
+      </widget>
+
+      <widget>
 	<class>GtkVBox</class>
-	<name>vbox7</name>
+	<name>vbox20</name>
 	<homogeneous>False</homogeneous>
 	<spacing>0</spacing>
 
 	<widget>
 	  <class>GtkFrame</class>
-	  <name>frame7</name>
+	  <name>frame21</name>
 	  <border_width>4</border_width>
-	  <label>STIL Configuration:</label>
+	  <label>Maximum playtime check: </label>
+	  <label_xalign>0</label_xalign>
+	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	  <child>
+	    <padding>0</padding>
+	    <expand>True</expand>
+	    <fill>True</fill>
+	  </child>
+
+	  <widget>
+	    <class>GtkVBox</class>
+	    <name>vbox21</name>
+	    <border_width>2</border_width>
+	    <homogeneous>False</homogeneous>
+	    <spacing>0</spacing>
+
+	    <widget>
+	      <class>GtkCheckButton</class>
+	      <name>cfg_sld_usemaxtime</name>
+	      <can_focus>True</can_focus>
+	      <label>Play for specified time (max). Can be combined with
+automatic song-length detection mechanisms below.</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <child>
+		<padding>2</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkHBox</class>
+	      <name>hbox14</name>
+	      <homogeneous>False</homogeneous>
+	      <spacing>0</spacing>
+	      <child>
+		<padding>2</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label37</name>
+		<label>Playtime: </label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkSpinButton</class>
+		<name>cfg_sld_maxtime</name>
+		<can_focus>True</can_focus>
+		<climb_rate>1</climb_rate>
+		<digits>0</digits>
+		<numeric>False</numeric>
+		<update_policy>GTK_UPDATE_ALWAYS</update_policy>
+		<snap>False</snap>
+		<wrap>False</wrap>
+		<value>60</value>
+		<lower>1</lower>
+		<upper>32767</upper>
+		<step>1</step>
+		<page>60</page>
+		<page_size>60</page_size>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>True</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label36</name>
+		<label>seconds</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+	    </widget>
+	  </widget>
+	</widget>
+
+	<widget>
+	  <class>GtkFrame</class>
+	  <name>frame18</name>
+	  <border_width>4</border_width>
+	  <label>Song-length detection: </label>
 	  <label_xalign>0</label_xalign>
 	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 	  <child>
@@ -549,19 +1006,385 @@
 
 	  <widget>
 	    <class>GtkVBox</class>
+	    <name>vbox18</name>
+	    <border_width>2</border_width>
+	    <homogeneous>False</homogeneous>
+	    <spacing>0</spacing>
+
+	    <widget>
+	      <class>GtkRadioButton</class>
+	      <name>cfg_sld_none</name>
+	      <border_width>2</border_width>
+	      <tooltip>No automatic song-length detection. (See also Maximum playtime check)</tooltip>
+	      <can_focus>True</can_focus>
+	      <label>No song-length detection</label>
+	      <active>True</active>
+	      <draw_indicator>True</draw_indicator>
+	      <group>songlength</group>
+	      <child>
+		<padding>2</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkHSeparator</class>
+	      <name>hseparator1</name>
+	      <child>
+		<padding>2</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkRadioButton</class>
+	      <name>cfg_sld_maxsilence</name>
+	      <border_width>2</border_width>
+	      <tooltip>Detect possible end of song with silence timing.</tooltip>
+	      <can_focus>True</can_focus>
+	      <label>Maximum silence time</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <group>songlength</group>
+	      <child>
+		<padding>2</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkTable</class>
+	      <name>table3</name>
+	      <border_width>2</border_width>
+	      <rows>2</rows>
+	      <columns>3</columns>
+	      <homogeneous>False</homogeneous>
+	      <row_spacing>4</row_spacing>
+	      <column_spacing>4</column_spacing>
+	      <child>
+		<padding>2</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label29</name>
+		<label>Silence:</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <left_attach>0</left_attach>
+		  <right_attach>1</right_attach>
+		  <top_attach>0</top_attach>
+		  <bottom_attach>1</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label30</name>
+		<label>Amplitude: </label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<focus_target>cfg_sld_percentage</focus_target>
+		<child>
+		  <left_attach>0</left_attach>
+		  <right_attach>1</right_attach>
+		  <top_attach>1</top_attach>
+		  <bottom_attach>2</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label31</name>
+		<label>seconds</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <left_attach>2</left_attach>
+		  <right_attach>3</right_attach>
+		  <top_attach>0</top_attach>
+		  <bottom_attach>1</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label32</name>
+		<label>%</label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<focus_target>cfg_sld_percentage</focus_target>
+		<child>
+		  <left_attach>2</left_attach>
+		  <right_attach>3</right_attach>
+		  <top_attach>1</top_attach>
+		  <bottom_attach>2</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkSpinButton</class>
+		<name>cfg_sld_silencetime</name>
+		<can_focus>True</can_focus>
+		<climb_rate>1</climb_rate>
+		<digits>0</digits>
+		<numeric>False</numeric>
+		<update_policy>GTK_UPDATE_ALWAYS</update_policy>
+		<snap>False</snap>
+		<wrap>False</wrap>
+		<value>30</value>
+		<lower>0</lower>
+		<upper>180</upper>
+		<step>1</step>
+		<page>15</page>
+		<page_size>15</page_size>
+		<child>
+		  <left_attach>1</left_attach>
+		  <right_attach>2</right_attach>
+		  <top_attach>0</top_attach>
+		  <bottom_attach>1</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkSpinButton</class>
+		<name>cfg_sld_percentage</name>
+		<can_focus>True</can_focus>
+		<climb_rate>1</climb_rate>
+		<digits>0</digits>
+		<numeric>False</numeric>
+		<update_policy>GTK_UPDATE_ALWAYS</update_policy>
+		<snap>False</snap>
+		<wrap>False</wrap>
+		<value>1</value>
+		<lower>0</lower>
+		<upper>100</upper>
+		<step>1</step>
+		<page>10</page>
+		<page_size>10</page_size>
+		<child>
+		  <left_attach>1</left_attach>
+		  <right_attach>2</right_attach>
+		  <top_attach>1</top_attach>
+		  <bottom_attach>2</bottom_attach>
+		  <xpad>0</xpad>
+		  <ypad>0</ypad>
+		  <xexpand>False</xexpand>
+		  <yexpand>False</yexpand>
+		  <xshrink>False</xshrink>
+		  <yshrink>False</yshrink>
+		  <xfill>True</xfill>
+		  <yfill>False</yfill>
+		</child>
+	      </widget>
+	    </widget>
+
+	    <widget>
+	      <class>GtkHSeparator</class>
+	      <name>hseparator3</name>
+	      <child>
+		<padding>2</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkRadioButton</class>
+	      <name>cfg_sld_database</name>
+	      <border_width>2</border_width>
+	      <tooltip>This option enables using of XSIDPLAY compatible HVSC Song-length database. (See documentation for more information)</tooltip>
+	      <can_focus>True</can_focus>
+	      <label>Song-length database (XSIDPLAY-compatible)</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
+	      <group>songlength</group>
+	      <child>
+		<padding>2</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkHBox</class>
+	      <name>hbox13</name>
+	      <border_width>2</border_width>
+	      <homogeneous>False</homogeneous>
+	      <spacing>4</spacing>
+	      <child>
+		<padding>0</padding>
+		<expand>True</expand>
+		<fill>True</fill>
+	      </child>
+
+	      <widget>
+		<class>GtkLabel</class>
+		<name>label33</name>
+		<label>DB-filename: </label>
+		<justify>GTK_JUSTIFY_CENTER</justify>
+		<wrap>False</wrap>
+		<xalign>0.5</xalign>
+		<yalign>0.5</yalign>
+		<xpad>0</xpad>
+		<ypad>0</ypad>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>True</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkEntry</class>
+		<name>cfg_sld_dbpath</name>
+		<tooltip>Database path and filename</tooltip>
+		<can_focus>True</can_focus>
+		<editable>True</editable>
+		<text_visible>True</text_visible>
+		<text_max_length>0</text_max_length>
+		<text></text>
+		<child>
+		  <padding>0</padding>
+		  <expand>True</expand>
+		  <fill>True</fill>
+		</child>
+	      </widget>
+
+	      <widget>
+		<class>GtkButton</class>
+		<name>cfg_sld_dbbrowse</name>
+		<tooltip>Browse for database-file</tooltip>
+		<can_focus>True</can_focus>
+		<signal>
+		  <name>clicked</name>
+		  <handler>cfg_sld_dbbrowse_clicked</handler>
+		  <last_modification_time>Sat, 18 Aug 2001 23:38:10 GMT</last_modification_time>
+		</signal>
+		<label>Browse</label>
+		<relief>GTK_RELIEF_NORMAL</relief>
+		<child>
+		  <padding>0</padding>
+		  <expand>False</expand>
+		  <fill>False</fill>
+		</child>
+	      </widget>
+	    </widget>
+	  </widget>
+	</widget>
+      </widget>
+
+      <widget>
+	<class>GtkLabel</class>
+	<child_name>Notebook:tab</child_name>
+	<name>label26</name>
+	<label>Songlength</label>
+	<justify>GTK_JUSTIFY_CENTER</justify>
+	<wrap>False</wrap>
+	<xalign>0.5</xalign>
+	<yalign>0.5</yalign>
+	<xpad>0</xpad>
+	<ypad>0</ypad>
+      </widget>
+
+      <widget>
+	<class>GtkVBox</class>
+	<name>vbox19</name>
+	<homogeneous>False</homogeneous>
+	<spacing>0</spacing>
+
+	<widget>
+	  <class>GtkFrame</class>
+	  <name>frame7</name>
+	  <border_width>4</border_width>
+	  <label>STIL-database configuration: </label>
+	  <label_xalign>0</label_xalign>
+	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	  <child>
+	    <padding>0</padding>
+	    <expand>False</expand>
+	    <fill>True</fill>
+	  </child>
+
+	  <widget>
+	    <class>GtkVBox</class>
 	    <name>vbox8</name>
-	    <homogeneous>False</homogeneous>
+	    <border_width>4</border_width>
+	    <homogeneous>True</homogeneous>
 	    <spacing>0</spacing>
 
 	    <widget>
 	      <class>GtkCheckButton</class>
 	      <name>cfg_stil_use</name>
+	      <border_width>2</border_width>
 	      <can_focus>True</can_focus>
 	      <label>Use STIL information database</label>
 	      <active>False</active>
 	      <draw_indicator>True</draw_indicator>
 	      <child>
-		<padding>0</padding>
+		<padding>2</padding>
 		<expand>True</expand>
 		<fill>False</fill>
 	      </child>
@@ -615,7 +1438,7 @@
 		  <editable>True</editable>
 		  <text_visible>True</text_visible>
 		  <text_max_length>0</text_max_length>
-		  <text>homoa</text>
+		  <text>/home/C64Music/DOCUMENTS/STIL.txt</text>
 		</widget>
 	      </widget>
 
@@ -640,7 +1463,7 @@
 		  <can_focus>True</can_focus>
 		  <signal>
 		    <name>clicked</name>
-		    <handler>on_cfg_stil_browse_clicked</handler>
+		    <handler>cfg_stil_browse_clicked</handler>
 		    <last_modification_time>Mon, 18 Sep 2000 17:51:32 GMT</last_modification_time>
 		  </signal>
 		  <label>Browse</label>
@@ -653,63 +1476,50 @@
 
 	<widget>
 	  <class>GtkFrame</class>
-	  <name>frame9</name>
+	  <name>frame22</name>
 	  <border_width>4</border_width>
-	  <label>Songname (Fileinfo) format:</label>
+	  <label>Miscellaneous options: </label>
 	  <label_xalign>0</label_xalign>
 	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 	  <child>
 	    <padding>0</padding>
-	    <expand>True</expand>
+	    <expand>False</expand>
 	    <fill>True</fill>
 	  </child>
 
 	  <widget>
 	    <class>GtkVBox</class>
-	    <name>vbox11</name>
+	    <name>vbox22</name>
 	    <homogeneous>False</homogeneous>
 	    <spacing>0</spacing>
 
 	    <widget>
-	      <class>GtkAlignment</class>
-	      <name>alignment3</name>
-	      <xalign>0.5</xalign>
-	      <yalign>0.5</yalign>
-	      <xscale>0.96</xscale>
-	      <yscale>1</yscale>
+	      <class>GtkCheckButton</class>
+	      <name>cfg_finfo_usecolor</name>
+	      <border_width>2</border_width>
+	      <can_focus>True</can_focus>
+	      <label>Use text coloring in fileinformation dialog</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
 	      <child>
 		<padding>0</padding>
 		<expand>False</expand>
 		<fill>False</fill>
 	      </child>
-
-	      <widget>
-		<class>GtkEntry</class>
-		<name>cfg_songnameformat</name>
-		<can_focus>True</can_focus>
-		<editable>True</editable>
-		<text_visible>True</text_visible>
-		<text_max_length>0</text_max_length>
-		<text></text>
-	      </widget>
 	    </widget>
 
 	    <widget>
-	      <class>GtkLabel</class>
-	      <name>label7</name>
-	      <label>%1 - Composer
-%2 - Song name (title)
-%3 - Copyright</label>
-	      <justify>GTK_JUSTIFY_LEFT</justify>
-	      <wrap>False</wrap>
-	      <xalign>0.04</xalign>
-	      <yalign>0.5</yalign>
-	      <xpad>0</xpad>
-	      <ypad>0</ypad>
+	      <class>GtkCheckButton</class>
+	      <name>cfg_detectmagic</name>
+	      <border_width>2</border_width>
+	      <can_focus>True</can_focus>
+	      <label>Determine filetype by contents (slower)</label>
+	      <active>False</active>
+	      <draw_indicator>True</draw_indicator>
 	      <child>
 		<padding>0</padding>
-		<expand>True</expand>
-		<fill>True</fill>
+		<expand>False</expand>
+		<fill>False</fill>
 	      </child>
 	    </widget>
 	  </widget>
@@ -720,7 +1530,7 @@
 	<class>GtkLabel</class>
 	<child_name>Notebook:tab</child_name>
 	<name>label3</name>
-	<label>STIL</label>
+	<label>Misc</label>
 	<justify>GTK_JUSTIFY_CENTER</justify>
 	<wrap>False</wrap>
 	<xalign>0.5</xalign>
@@ -730,125 +1540,118 @@
       </widget>
 
       <widget>
-	<class>GtkFixed</class>
-	<name>fixed1</name>
-	<tooltip>Reset filter to default values</tooltip>
-
-	<widget>
-	  <class>GtkButton</class>
-	  <name>cfg_filt_reset</name>
-	  <x>224</x>
-	  <y>16</y>
-	  <width>120</width>
-	  <height>32</height>
-	  <can_focus>True</can_focus>
-	  <signal>
-	    <name>clicked</name>
-	    <handler>on_cfg_filt_reset_clicked</handler>
-	    <last_modification_time>Mon, 18 Sep 2000 20:21:27 GMT</last_modification_time>
-	  </signal>
-	  <label>Reset values</label>
-	  <relief>GTK_RELIEF_NORMAL</relief>
-	</widget>
+	<class>GtkFrame</class>
+	<name>frame16</name>
+	<border_width>4</border_width>
+	<label>Song name/title format: </label>
+	<label_xalign>0</label_xalign>
+	<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 
 	<widget>
-	  <class>GtkLabel</class>
-	  <name>label9</name>
-	  <x>224</x>
-	  <y>56</y>
-	  <width>136</width>
-	  <height>104</height>
-	  <label>These sliders affect the emulated SID's filter values.
-Defaults are what the libsidplay sets them on init.</label>
-	  <justify>GTK_JUSTIFY_LEFT</justify>
-	  <wrap>True</wrap>
-	  <xalign>0.5</xalign>
-	  <yalign>7.45058e-09</yalign>
-	  <xpad>0</xpad>
-	  <ypad>0</ypad>
-	</widget>
+	  <class>GtkVBox</class>
+	  <name>vbox16</name>
+	  <border_width>4</border_width>
+	  <homogeneous>False</homogeneous>
+	  <spacing>0</spacing>
 
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>frame12</name>
-	  <x>160</x>
-	  <y>16</y>
-	  <width>48</width>
-	  <height>152</height>
-	  <label>FT</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
+	  <widget>
+	    <class>GtkCheckButton</class>
+	    <name>cfg_ftitle_override</name>
+	    <can_focus>True</can_focus>
+	    <label>Override generic XMMS titles</label>
+	    <active>False</active>
+	    <draw_indicator>True</draw_indicator>
+	    <child>
+	      <padding>2</padding>
+	      <expand>False</expand>
+	      <fill>False</fill>
+	    </child>
+	  </widget>
+
+	  <widget>
+	    <class>GtkEntry</class>
+	    <name>cfg_ftitle_format</name>
+	    <can_focus>True</can_focus>
+	    <editable>True</editable>
+	    <text_visible>True</text_visible>
+	    <text_max_length>0</text_max_length>
+	    <text>%1 : %2 (C) %3 [%5 %6 by %8] -- %9</text>
+	    <child>
+	      <padding>2</padding>
+	      <expand>False</expand>
+	      <fill>False</fill>
+	    </child>
+	  </widget>
 
 	  <widget>
-	    <class>GtkVScale</class>
-	    <name>cfg_filt_ft</name>
-	    <can_focus>True</can_focus>
-	    <draw_value>True</draw_value>
-	    <value_pos>GTK_POS_TOP</value_pos>
-	    <digits>2</digits>
-	    <policy>GTK_UPDATE_CONTINUOUS</policy>
-	    <value>0</value>
-	    <lower>0</lower>
-	    <upper>1</upper>
-	    <step>0.01</step>
-	    <page>0.1</page>
-	    <page_size>0</page_size>
+	    <class>GtkHBox</class>
+	    <name>hbox9</name>
+	    <homogeneous>True</homogeneous>
+	    <spacing>0</spacing>
+	    <child>
+	      <padding>2</padding>
+	      <expand>False</expand>
+	      <fill>False</fill>
+	    </child>
+
+	    <widget>
+	      <class>GtkLabel</class>
+	      <name>label7</name>
+	      <label>%1 - Composer
+%2 - Song name (title)
+%3 - Copyright
+%4 - SID File Type
+%5 - Subtune number</label>
+	      <justify>GTK_JUSTIFY_LEFT</justify>
+	      <wrap>False</wrap>
+	      <xalign>0.04</xalign>
+	      <yalign>0.5</yalign>
+	      <xpad>0</xpad>
+	      <ypad>0</ypad>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
+
+	    <widget>
+	      <class>GtkLabel</class>
+	      <name>label25</name>
+	      <label>%6 - STIL Title
+%7 - STIL Name
+%8 - STIL Artist
+%9 - STIL Comment</label>
+	      <justify>GTK_JUSTIFY_LEFT</justify>
+	      <wrap>False</wrap>
+	      <xalign>0.04</xalign>
+	      <yalign>0.5</yalign>
+	      <xpad>0</xpad>
+	      <ypad>0</ypad>
+	      <child>
+		<padding>0</padding>
+		<expand>False</expand>
+		<fill>False</fill>
+	      </child>
+	    </widget>
 	  </widget>
-	</widget>
-
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>cfg_frm2</name>
-	  <x>88</x>
-	  <y>16</y>
-	  <width>48</width>
-	  <height>152</height>
-	  <label>FM</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
 
 	  <widget>
-	    <class>GtkVScale</class>
-	    <name>cfg_filt_fm</name>
-	    <can_focus>True</can_focus>
-	    <draw_value>True</draw_value>
-	    <value_pos>GTK_POS_TOP</value_pos>
-	    <digits>1</digits>
-	    <policy>GTK_UPDATE_CONTINUOUS</policy>
-	    <value>0</value>
-	    <lower>0</lower>
-	    <upper>100</upper>
-	    <step>1</step>
-	    <page>10</page>
-	    <page_size>0</page_size>
-	  </widget>
-	</widget>
-
-	<widget>
-	  <class>GtkFrame</class>
-	  <name>cfg_frm1</name>
-	  <x>16</x>
-	  <y>16</y>
-	  <width>56</width>
-	  <height>152</height>
-	  <label>FS</label>
-	  <label_xalign>0</label_xalign>
-	  <shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-
-	  <widget>
-	    <class>GtkVScale</class>
-	    <name>cfg_filt_fs</name>
-	    <can_focus>True</can_focus>
-	    <draw_value>True</draw_value>
-	    <value_pos>GTK_POS_TOP</value_pos>
-	    <digits>1</digits>
-	    <policy>GTK_UPDATE_CONTINUOUS</policy>
-	    <value>0</value>
-	    <lower>0</lower>
-	    <upper>1000</upper>
-	    <step>1</step>
-	    <page>100</page>
-	    <page_size>0</page_size>
+	    <class>GtkLabel</class>
+	    <name>label34</name>
+	    <label>(STIL-entries are only available if
+database support is turned on)</label>
+	    <justify>GTK_JUSTIFY_FILL</justify>
+	    <wrap>False</wrap>
+	    <xalign>0.5</xalign>
+	    <yalign>0.5</yalign>
+	    <xpad>0</xpad>
+	    <ypad>0</ypad>
+	    <child>
+	      <padding>0</padding>
+	      <expand>False</expand>
+	      <fill>False</fill>
+	    </child>
 	  </widget>
 	</widget>
       </widget>
@@ -856,8 +1659,8 @@
       <widget>
 	<class>GtkLabel</class>
 	<child_name>Notebook:tab</child_name>
-	<name>label6</name>
-	<label>Filters</label>
+	<name>label23</name>
+	<label>Title</label>
 	<justify>GTK_JUSTIFY_CENTER</justify>
 	<wrap>False</wrap>
 	<xalign>0.5</xalign>
@@ -891,7 +1694,7 @@
 	<can_focus>True</can_focus>
 	<signal>
 	  <name>clicked</name>
-	  <handler>on_cfg_ok_clicked</handler>
+	  <handler>cfg_ok_clicked</handler>
 	  <last_modification_time>Mon, 18 Sep 2000 17:49:51 GMT</last_modification_time>
 	</signal>
 	<label>OK</label>
@@ -906,7 +1709,7 @@
 	<can_focus>True</can_focus>
 	<signal>
 	  <name>clicked</name>
-	  <handler>on_cfg_cancel_clicked</handler>
+	  <handler>cfg_cancel_clicked</handler>
 	  <last_modification_time>Mon, 18 Sep 2000 17:49:57 GMT</last_modification_time>
 	</signal>
 	<label>Cancel</label>
@@ -918,26 +1721,54 @@
 
 <widget>
   <class>GtkWindow</class>
-  <name>sid_aboutwin</name>
-  <title>About xmms-sid</title>
+  <name>xs_aboutwin</name>
+  <title>About XMMS-SID</title>
   <type>GTK_WINDOW_DIALOG</type>
   <position>GTK_WIN_POS_NONE</position>
-  <modal>False</modal>
+  <modal>True</modal>
+  <default_width>300</default_width>
   <allow_shrink>False</allow_shrink>
-  <allow_grow>False</allow_grow>
+  <allow_grow>True</allow_grow>
   <auto_shrink>False</auto_shrink>
 
   <widget>
     <class>GtkVBox</class>
-    <name>vbox12</name>
+    <name>about_vbox1</name>
     <homogeneous>False</homogeneous>
     <spacing>0</spacing>
 
     <widget>
-      <class>GtkHBox</class>
-      <name>hbox5</name>
-      <homogeneous>False</homogeneous>
-      <spacing>0</spacing>
+      <class>GtkFrame</class>
+      <name>about_frame</name>
+      <border_width>4</border_width>
+      <label_xalign>0</label_xalign>
+      <shadow_type>GTK_SHADOW_OUT</shadow_type>
+      <child>
+	<padding>0</padding>
+	<expand>False</expand>
+	<fill>False</fill>
+      </child>
+
+      <widget>
+	<class>GtkPixmap</class>
+	<name>about_pixmap</name>
+	<filename>xmms-sid-logo.xpm</filename>
+	<xalign>0.5</xalign>
+	<yalign>0.5</yalign>
+	<xpad>0</xpad>
+	<ypad>6</ypad>
+	<build_insensitive>True</build_insensitive>
+      </widget>
+    </widget>
+
+    <widget>
+      <class>GtkScrolledWindow</class>
+      <name>about_scrwin</name>
+      <border_width>8</border_width>
+      <hscrollbar_policy>GTK_POLICY_NEVER</hscrollbar_policy>
+      <vscrollbar_policy>GTK_POLICY_ALWAYS</vscrollbar_policy>
+      <hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
+      <vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
       <child>
 	<padding>0</padding>
 	<expand>True</expand>
@@ -945,76 +1776,67 @@
       </child>
 
       <widget>
-	<class>GtkFrame</class>
-	<name>frame13</name>
-	<border_width>4</border_width>
-	<label_xalign>0</label_xalign>
-	<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
-	<child>
-	  <padding>0</padding>
-	  <expand>True</expand>
-	  <fill>True</fill>
-	</child>
+	<class>GtkText</class>
+	<name>about_text</name>
+	<height>100</height>
+	<can_focus>True</can_focus>
+	<editable>True</editable>
+	<text>Programming and design
+	Matti 'ccr/TNSP' Hämäläinen
+
+libSIDPlay created by
+	Michael Schwendt
+
+Original programming and design
+	Willem Monsuwe
 
-	<widget>
-	  <class>GtkPixmap</class>
-	  <name>pixmap1</name>
-	  <filename>xmms-sid-logo.xpm</filename>
-	  <xalign>0.5</xalign>
-	  <yalign>0.5</yalign>
-	  <xpad>4</xpad>
-	  <ypad>4</ypad>
-	  <build_insensitive>True</build_insensitive>
-	</widget>
-      </widget>
+&quot;XMMS-SID Theme&quot;-song (SIDtune)
+	Peter 'Brite-Lite' Halin of Dekadence
+	(C) Copyright 2002 Dekadence
+	http://www.dekadence64.org/
+
+Thanks and greetings ...
+	JaMZ, MdX, fgcl, Sindrom,
+	Ssadistik, Delfine, Viznut, at,
+	Feenix, juhas, Loop, Nrg, ytti ...
 
-      <widget>
-	<class>GtkLabel</class>
-	<name>label10</name>
-	<label>XMMS-SID SIDPlay plugin
-for X MultiMedia System
-by Willem Monsuwe and
-Matti &quot;ccr&quot; Hämäläinen.</label>
-	<justify>GTK_JUSTIFY_CENTER</justify>
-	<wrap>False</wrap>
-	<xalign>0.5</xalign>
-	<yalign>0.5</yalign>
-	<xpad>8</xpad>
-	<ypad>0</ypad>
-	<child>
-	  <padding>0</padding>
-	  <expand>False</expand>
-	  <fill>False</fill>
-	</child>
+	PwP, iSO, Byterapers, Fairlight,
+	mfx, Unique, Static, Dekadence,
+	Mass, PHn, tAAt ...
+
+Special thanks
+	- All the betatesters.
+	- All the users! Hey it's you!
+	- And others ...
+</text>
       </widget>
     </widget>
 
     <widget>
-      <class>GtkHButtonBox</class>
-      <name>hbuttonbox2</name>
-      <layout_style>GTK_BUTTONBOX_DEFAULT_STYLE</layout_style>
-      <spacing>30</spacing>
-      <child_min_width>85</child_min_width>
-      <child_min_height>27</child_min_height>
-      <child_ipad_x>7</child_ipad_x>
-      <child_ipad_y>0</child_ipad_y>
+      <class>GtkAlignment</class>
+      <name>alignment6</name>
+      <border_width>8</border_width>
+      <xalign>0.5</xalign>
+      <yalign>0.5</yalign>
+      <xscale>0.18</xscale>
+      <yscale>1</yscale>
       <child>
 	<padding>0</padding>
-	<expand>True</expand>
+	<expand>False</expand>
 	<fill>True</fill>
       </child>
 
       <widget>
 	<class>GtkButton</class>
-	<name>about_ok</name>
+	<name>about_close</name>
 	<can_default>True</can_default>
 	<can_focus>True</can_focus>
 	<signal>
 	  <name>clicked</name>
-	  <handler>on_about_ok_clicked</handler>
+	  <handler>about_ok_clicked</handler>
 	  <last_modification_time>Tue, 19 Sep 2000 19:57:12 GMT</last_modification_time>
 	</signal>
-	<label>OK</label>
+	<label>Close</label>
 	<relief>GTK_RELIEF_NORMAL</relief>
       </widget>
     </widget>
@@ -1023,10 +1845,10 @@
 
 <widget>
   <class>GtkWindow</class>
-  <name>sid_fileinfowin</name>
+  <name>xs_fileinfowin</name>
   <width>400</width>
   <height>350</height>
-  <title>xmms-sid fileinfo</title>
+  <title>XMMS-SID fileinfo</title>
   <type>GTK_WINDOW_DIALOG</type>
   <position>GTK_WIN_POS_MOUSE</position>
   <modal>False</modal>
@@ -1319,7 +2141,7 @@
 	    <can_focus>True</can_focus>
 	    <signal>
 	      <name>clicked</name>
-	      <handler>on_fileinfo_sub_tune_clicked</handler>
+	      <handler>fileinfo_sub_tune_clicked</handler>
 	      <last_modification_time>Mon, 06 Nov 2000 23:36:32 GMT</last_modification_time>
 	    </signal>
 	    <items>Main tune
@@ -1341,11 +2163,11 @@
 	  <class>GtkTable</class>
 	  <name>table2</name>
 	  <border_width>4</border_width>
-	  <rows>2</rows>
+	  <rows>3</rows>
 	  <columns>2</columns>
 	  <homogeneous>False</homogeneous>
-	  <row_spacing>0</row_spacing>
-	  <column_spacing>0</column_spacing>
+	  <row_spacing>2</row_spacing>
+	  <column_spacing>4</column_spacing>
 	  <child>
 	    <padding>0</padding>
 	    <expand>False</expand>
@@ -1451,6 +2273,56 @@
 	      <yfill>False</yfill>
 	    </child>
 	  </widget>
+
+	  <widget>
+	    <class>GtkLabel</class>
+	    <name>label41</name>
+	    <label>Length:</label>
+	    <justify>GTK_JUSTIFY_CENTER</justify>
+	    <wrap>False</wrap>
+	    <xalign>0.5</xalign>
+	    <yalign>0.5</yalign>
+	    <xpad>0</xpad>
+	    <ypad>0</ypad>
+	    <child>
+	      <left_attach>0</left_attach>
+	      <right_attach>1</right_attach>
+	      <top_attach>2</top_attach>
+	      <bottom_attach>3</bottom_attach>
+	      <xpad>0</xpad>
+	      <ypad>0</ypad>
+	      <xexpand>False</xexpand>
+	      <yexpand>False</yexpand>
+	      <xshrink>False</xshrink>
+	      <yshrink>False</yshrink>
+	      <xfill>True</xfill>
+	      <yfill>False</yfill>
+	    </child>
+	  </widget>
+
+	  <widget>
+	    <class>GtkEntry</class>
+	    <name>fileinfo_sub_length</name>
+	    <can_focus>True</can_focus>
+	    <editable>False</editable>
+	    <text_visible>True</text_visible>
+	    <text_max_length>0</text_max_length>
+	    <text></text>
+	    <child>
+	      <left_attach>1</left_attach>
+	      <right_attach>2</right_attach>
+	      <top_attach>2</top_attach>
+	      <bottom_attach>3</bottom_attach>
+	      <xpad>0</xpad>
+	      <ypad>0</ypad>
+	      <xexpand>True</xexpand>
+	      <yexpand>False</yexpand>
+	      <xshrink>False</xshrink>
+	      <yshrink>False</yshrink>
+	      <xfill>True</xfill>
+	      <yfill>False</yfill>
+	    </child>
+	  </widget>
 	</widget>
 
 	<widget>
@@ -1497,9 +2369,10 @@
 	<can_default>True</can_default>
 	<has_default>True</has_default>
 	<can_focus>True</can_focus>
+	<has_focus>True</has_focus>
 	<signal>
 	  <name>clicked</name>
-	  <handler>on_fileinfo_ok_clicked</handler>
+	  <handler>fileinfo_ok_clicked</handler>
 	  <last_modification_time>Mon, 06 Nov 2000 23:04:15 GMT</last_modification_time>
 	</signal>
 	<label>Close</label>
@@ -1510,10 +2383,166 @@
 </widget>
 
 <widget>
+  <class>GtkWindow</class>
+  <name>xs_songcontrolwin</name>
+  <title>XMMS-SID</title>
+  <type>GTK_WINDOW_TOPLEVEL</type>
+  <position>GTK_WIN_POS_NONE</position>
+  <modal>False</modal>
+  <allow_shrink>False</allow_shrink>
+  <allow_grow>False</allow_grow>
+  <auto_shrink>False</auto_shrink>
+
+  <widget>
+    <class>GtkFrame</class>
+    <name>frame25</name>
+    <border_width>2</border_width>
+    <label_xalign>0</label_xalign>
+    <shadow_type>GTK_SHADOW_OUT</shadow_type>
+
+    <widget>
+      <class>GtkVBox</class>
+      <name>vbox24</name>
+      <border_width>4</border_width>
+      <homogeneous>True</homogeneous>
+      <spacing>0</spacing>
+
+      <widget>
+	<class>GtkHBox</class>
+	<name>hbox15</name>
+	<homogeneous>False</homogeneous>
+	<spacing>4</spacing>
+	<child>
+	  <padding>0</padding>
+	  <expand>True</expand>
+	  <fill>True</fill>
+	</child>
+
+	<widget>
+	  <class>GtkButton</class>
+	  <name>ctrl_song_prev</name>
+	  <can_focus>True</can_focus>
+	  <signal>
+	    <name>clicked</name>
+	    <handler>ctrl_song_prev</handler>
+	    <last_modification_time>Tue, 23 Apr 2002 21:25:08 GMT</last_modification_time>
+	  </signal>
+	  <label> &lt; </label>
+	  <relief>GTK_RELIEF_NORMAL</relief>
+	  <child>
+	    <padding>0</padding>
+	    <expand>False</expand>
+	    <fill>False</fill>
+	  </child>
+	</widget>
+
+	<widget>
+	  <class>GtkHScale</class>
+	  <name>ctrl_song_current</name>
+	  <can_focus>True</can_focus>
+	  <draw_value>True</draw_value>
+	  <value_pos>GTK_POS_TOP</value_pos>
+	  <digits>0</digits>
+	  <policy>GTK_UPDATE_CONTINUOUS</policy>
+	  <value>1</value>
+	  <lower>1</lower>
+	  <upper>6</upper>
+	  <step>0</step>
+	  <page>0</page>
+	  <page_size>0</page_size>
+	  <child>
+	    <padding>0</padding>
+	    <expand>True</expand>
+	    <fill>True</fill>
+	  </child>
+	</widget>
+
+	<widget>
+	  <class>GtkButton</class>
+	  <name>ctrl_song_next</name>
+	  <can_focus>True</can_focus>
+	  <signal>
+	    <name>clicked</name>
+	    <handler>ctrl_song_next</handler>
+	    <last_modification_time>Tue, 23 Apr 2002 21:25:28 GMT</last_modification_time>
+	  </signal>
+	  <label> &gt; </label>
+	  <relief>GTK_RELIEF_NORMAL</relief>
+	  <child>
+	    <padding>0</padding>
+	    <expand>False</expand>
+	    <fill>False</fill>
+	  </child>
+	</widget>
+      </widget>
+
+      <widget>
+	<class>GtkEntry</class>
+	<name>ctrl_song_name</name>
+	<can_focus>True</can_focus>
+	<editable>False</editable>
+	<text_visible>True</text_visible>
+	<text_max_length>0</text_max_length>
+	<text>paski</text>
+	<child>
+	  <padding>0</padding>
+	  <expand>True</expand>
+	  <fill>True</fill>
+	</child>
+      </widget>
+    </widget>
+  </widget>
+</widget>
+
+<widget>
   <class>GtkFileSelection</class>
-  <name>fileselection1</name>
+  <name>xs_dbfileselector</name>
   <border_width>10</border_width>
-  <title>Select STIL DataBase File</title>
+  <title>Select HVSC song-length database</title>
+  <type>GTK_WINDOW_TOPLEVEL</type>
+  <position>GTK_WIN_POS_NONE</position>
+  <modal>True</modal>
+  <allow_shrink>False</allow_shrink>
+  <allow_grow>True</allow_grow>
+  <auto_shrink>False</auto_shrink>
+  <show_file_op_buttons>True</show_file_op_buttons>
+
+  <widget>
+    <class>GtkButton</class>
+    <child_name>FileSel:ok_button</child_name>
+    <name>ok_button2</name>
+    <can_default>True</can_default>
+    <can_focus>True</can_focus>
+    <signal>
+      <name>clicked</name>
+      <handler>songlensel_ok_button_clicked</handler>
+      <last_modification_time>Sat, 19 Oct 2002 22:50:48 GMT</last_modification_time>
+    </signal>
+    <label>OK</label>
+    <relief>GTK_RELIEF_NORMAL</relief>
+  </widget>
+
+  <widget>
+    <class>GtkButton</class>
+    <child_name>FileSel:cancel_button</child_name>
+    <name>cancel_button2</name>
+    <can_default>True</can_default>
+    <can_focus>True</can_focus>
+    <signal>
+      <name>clicked</name>
+      <handler>songlensel_cancel_button_clicked</handler>
+      <last_modification_time>Sat, 19 Oct 2002 22:50:54 GMT</last_modification_time>
+    </signal>
+    <label>Cancel</label>
+    <relief>GTK_RELIEF_NORMAL</relief>
+  </widget>
+</widget>
+
+<widget>
+  <class>GtkFileSelection</class>
+  <name>xs_stilfileselector</name>
+  <border_width>10</border_width>
+  <title>Select STIL-database </title>
   <type>GTK_WINDOW_TOPLEVEL</type>
   <position>GTK_WIN_POS_NONE</position>
   <modal>False</modal>
@@ -1525,20 +2554,30 @@
   <widget>
     <class>GtkButton</class>
     <child_name>FileSel:ok_button</child_name>
-    <name>ok_button1</name>
+    <name>ok_button3</name>
     <can_default>True</can_default>
     <can_focus>True</can_focus>
-    <stock_button>GNOME_STOCK_BUTTON_OK</stock_button>
+    <signal>
+      <name>clicked</name>
+      <handler>stilsel_ok_button_clicked</handler>
+      <last_modification_time>Sat, 19 Oct 2002 22:50:38 GMT</last_modification_time>
+    </signal>
+    <label>OK</label>
     <relief>GTK_RELIEF_NORMAL</relief>
   </widget>
 
   <widget>
     <class>GtkButton</class>
     <child_name>FileSel:cancel_button</child_name>
-    <name>cancel_button1</name>
+    <name>cancel_button3</name>
     <can_default>True</can_default>
     <can_focus>True</can_focus>
-    <stock_button>GNOME_STOCK_BUTTON_CANCEL</stock_button>
+    <signal>
+      <name>clicked</name>
+      <handler>stilsel_cancel_button_clicked</handler>
+      <last_modification_time>Sat, 19 Oct 2002 22:51:00 GMT</last_modification_time>
+    </signal>
+    <label>Cancel</label>
     <relief>GTK_RELIEF_NORMAL</relief>
   </widget>
 </widget>