xawdecode(1) - Linux man page
Name
Xawdecode [xdTV] (a X11 program based on xawtv) is a software that allows you to watch TV. It interacts with AleVT for Teletext and Nxtvepg for NextView, and uses the video4linux API. It can be used with deinterlacing filters and record video files with one of these codecs: ffmpeg(Mpeg4,Mpeg1video,Huffyuv), xvid(0.9 & 1.0), and divx4/5. It has also some plugin capabilities.Synopsis
xawdecode [xdTV] [ options ]Description
xawdecode [xdTV] reads the config file $HOME/.xawdecode/xawdecoderc at startup. This file holds the available TV stations and a few settings like TV norm. On the first start xawdecode [xdTV] will create a default minimal config file. You will then have to edit the file yourself to suit your needs, see below for details.
Options
- -b depth
- force xawdecode [xdTV] into depth bits color depth. Might be needed for 24/32 bits. However the best performances in grabdisplay mode are achieved with a 16 bits color depth.
- -f
- startup in fullscreen mode (oldswitch method).
- -m
- startup with mouse pointer turned off.
- -n
- don't read the config file ($HOME/.xawdecode/xawdecoderc).
- -o filename
- set output filename for ppm grabbing (default is snap000.ppm)
- -j filename
- set output filename for jpeg grabbing (default is snap000.jpeg)
- -v level
- Be verbose, level may be 0 (default), 1 or 2. It exists just for debugging. If no level is provided, a level of 1 is assumed.
- -x
- disable the usage of XFree extensions (DGA, VidMode).
- -d
- disable the usage of XFree DGA extension.
- -directvideo
- enables direct video mode for grabdisplay (needs DGA and root privileges, not useful except for very slow machines, anyway this mode is not fully usable)
- -D adr
- set framebuffer address to adr. Needed for overlay and directvideo mode if DGA is not available (needs root privileges, use with caution !).
- -Dw width
- set the width of framebuffer. Must be used for overlay and directvideo if DGA is not available and if this width is different of the width of screen (for alignment reasons).
- -c video_device
- video4linux video device. For devfs enabled systems, default is /dev/v4l/video or /dev/v4l/video0, in that order. For non devfs systems, default is /dev/video or /dev/video/video0 or /dev/video0, in that order. Note that on /proc enabled systems, video device detection is automagic.
- -C vbi_device
- video4linux vbi device. For devfs enabled systems, default is /dev/v4l/vbi or /dev/v4l/vbi0, in that order. For non devfs systems, default is /dev/vbi or /dev/video/vbi or /dev/vbi0, in that order. Note that on /proc enabled systems, vbi device detection is automagic.
- -noxv | -no-xv
- disables the Xvideo support if it was compiled in.
- -xvport number
- set Xvideo Image port (defaults to the first usable if Xvideo is available). A usuable one is one which does support YUY2 format.
- -hwscan
- print a list of available devices.
- -noplugin
- disable any plugin installed.
- -plugin pathfile
- enable a specific plugin.
- -probe_memcpy
- force benchmarking of different possibilities for a fast memcpy function.
- -rec_fps fps
- set recording framerate (default=25.0)
- -rec_display on|off
- set display mode during recording (default=1)
- -rec_width width
- set width of the recording video (default=384), if width is 0 then set to 4/3*height
- -rec_height height
- set height of the recording video (default=288), if height is 0 then set to 3/4*width
- -rec_videobr br
- set recording video bitrate to br kbit/s (default=800)
- -rec_stereo on|off
- activate stero mode (default=off)
- -rec_audiobuf size
- set the size of the audio buffer (default=1764)
- -rec_fragments number
- set the number of audio fragments (default=48)
- -rec_fragmentsize size
- set the size of the audio fragment (default=2048)
- -rec_mp3 on|off
- activates MP3 compression (default=on)
- -rec_mp3cbr br
- activate MP3 CBR and set bitrate to br kbit/s (default=activated, 128kbit/s)
- -rec_mp3vbr quality
- activate MP3 VBR and set compressing quality (0=best, 9=worst) (default=deactivated, quality=8)
- -rec_vcodec xvid|ffmpeg_mpeg4|ffmpeg_mpeg1|ffmpeg_huffyuv|divx4linux|uncompressed
- set recording video codec
- -rec_maxgap gap
- set recording max gap between audio and video in seconds (default = 0.08 second)
- -rec_delay value
- set recording delay between audio and video in seconds (default = 0.00 second). value can negative or positive. The delay will always be between value-gap and value+gap. Use this option if you notice that there is always the same A/V delay in your movies, but normally 0.00 is always fine.
- -rec_sub on|off
- indicates if subtitles are recorded (the subtitles are recorded in MPlayer's MPsub format).
- -rec_chg on|off
- allows channel changes during recording.
- -rec_filename filename
- set the avi filename (default=divx_path/movie-channel-date.avi)
- -rec_stream on|off
- enables http export of the recording (xawdecode [xdTV] will act as a http stream server)
- -rec_http_port
- set the port of the http stream (default=63427)
- -e """cmd_1; cmd_2; cmd_3;...cmd_n"""
- execute the commands at the beginning of execution see xawdecode_cmd(1) for the list of commands
- -nowd
- option to disable window decoration at startup
- -stayontop
- Startup with stay on top activated.
- -h
- prints a brief usage message and exits.
- -v4l2
- forces the v4l2 driver. By default if your driver is not v4l2 then v4l1 mode is automaticly selected, with this option if you have not v4l2, xawdecode [xdTV] will die.
- -v4l1
- forces the old v4l1 driver. It is not recommended because drivers which provide v4l2 are more unstable in v4l1 mode.
- -xvtv
- communicates with the TV-card through the X-server (needs Xvideo, and your TV-card must be recognized by X. Don't work with grabdisplay).
- -xvtv_overlay on|off
- uses XVideo for overlay if available, all the other operations use the normal driver. It actually works only with v4l2 drivers because the device must allow multiple opens. (default=on with v4l2 and if the XvVideo port is named video4linux)
- -xvtvport
- set Xvideo Video port (defaults to the first usable).
- -novbi
- does not open the teletext device.
- -capture overlay|grabdisplay|off
- to use a specific capture mode for all channels at startup.
- -nbufs nbufs
- sets the number of kernel-buffered frames (default=3).
- -capt_width width
- set maximum width of the grabbed frames (default=maximum=768)
- -capt_height height
- similar to -capt_width option. (default=maximum=576)
- -force_capt_width width
- forces width of the grabbed frames (default=0 which means not forcing)
- -force_capt_height height
- similar to -capt_width option. (default=0=not forcing)
- -force_visual StaticGray|PseudoColor|TrueColor
- forces to use an X11 visual. Useful on 8-bits display to choose between gray and color.
- -force_depth 8|15|16|24|32
- forces to use the specified X11 depth.
- -avi filename.avi
- reads frames from filename.avi. (only used for testing)
- -avibench
- (requires the -avi option) Does not delay between two frames, stops when the end of the avi is reached and diplays some statistics on CPU usage.
- -avi_audiofragments number
- set the number of audio fragments for avi reading (default=2, 16 for sunaudio)
- -avi_audiofragmentsize size
- set the size of audio fragments for avi reading (default=2048)
- -avinoaudioout
- does not output audio during avi reading.
- -sub on|off
- activates/deactivates subtitles (default=off)
- -subpageno number|all
- sets pageno of subtitles. (typically 888, 777 or 150, default=888). If you use "all" pageno all the teletext pages which look like subtitles are displayed with their number, so use this if you want to guess the pageno of the subtitles.
- -xosd
- use xosd library to display osd. (still in developpement)
- -noalsa
- does not use alsa native functions to manage sound
- -restoresnd on|off
- indicates if xawdecode [xdTV] restores the initial sound settings on exit. (default=off, works only with alsa)
- -bktr_swap
- swap bytes for yuv format (for BSD)
- -bktr_mode nr
- chooses a capture format by its number (see supported formats in xawdecode [xdTV] output) (for BSD)
- -bktr_yuvbug
- convert rgb to yuv by processor (only with XVideo, slow, use it only if your driver is buggy) (for BSD)
- -bktr_read
- uses read instead of mmap (slow, use it only if your driver is buggy) (only for BSD)
- -doublekey on/off
- enables double keys (default=on if there are more than 10 stations)
- -doublekey_firstisone on/off
- indicates if the first station has number 1, and not 0, needed for doublekey (default=off except if lirc-key-1 is mapped to keypad 0 or the hotkey of the first channel is 1, KP_1 or KP_End)
- -noxawpopup
- To disable xaw popup
- -oldswitch
- Old XFree resolution switching method used in fullscreen mode
- -ybar nr
- set height of the black borders for a total height of 1000: nr=125 for 16:9, nr=200 for 20:9 (default=0)
- -alevt_arg
You must write the AleVT arguments between two quotation marks --help or -h --version or -v --debug or -debug -copyright or -© -editor or -ed -display or -d <dpy> $DISPLAY -geometry or -g <geo> 41x25 -finetune or -f <-4..4|auto> 0 -child or -c ppp[.ss] [-parent] or -p ppp[.ss] 900 -[no]erc or -[n]e enabled -[no]bell or -[n]b enabled -charset or -latin latin-1/2/koi8-r/koi/iso8859-7/el latin-1 Order is important! Each page number opens a new window with the previously given geometry, device, and display. ppp[.ss] stands for a page number and an optional subpage number (ie 123.4). If the subpage number is omitted the first transmitted subpage is shown. The -child option requires a parent window. So, it must be preceeded bya parent or another child window To Know more about AleVT options, goto its own man page.
- Xawdecode [xdTV] is an X application. So you can use all parameters proposed by XFree86(1):
-iconic : launch Xawdecode [xdTV] initially not be visible. -xrm resourcestring : This option specifies a resource name and value to override any defaults. It is also very useful for setting resources that don't have explicit command line arguments. for example: xawdecode -xrm "xawdecode.onscreen*foreground:red (get the OSD red) xawdecode -xrm 'xawdecode.vtx.label.font: -*-*-bold-r-normal-*-16-*-*-*-m-*-iso8859-1' all ressources which are into xawdecode.ad could be temporarily modify with this method.
Getting Started
Just start up xawdecode [xdTV], this will work without a config file too. Then check out the options (right mouse button) and adjust the settings (TV norm, Video source, freqency table). With the cursor keys you can control the tuner and look for TV Stations.If you've found one, start up your favorite text editor and stick it into the $HOME/.xawdecode/xawdecoderc config file. Or you can check out the new channel editor. Hotkey 'E' will start it. Warning: Writing the config file with the channel editor will kill all the comments you might have added to your config file.
Mouse functions
The left mouse button will popup a menu with all TV stations found in the config file. The middle button switches to the next station. The right button brings up a window with alot of options and control functions.Keyboard Shortcuts
A Audio on/off
Shift+A Audio on/off, pass by TV-card. (useful when the sound has
been lost because of too bad reception)
Ctrl+A Start/Stop builtin AleVT Videotext/Teletext decoder/browser
Alt+A Popup AleVT parameter Window
B Toggles window decoration
Ctrl+B Set Blackborder decrease
Alt+B Set Blackborder increase
C Popup Channels Window
Ctrl+D Use it to select a deinterlacing filter
E Popup Channels Editor
F Fullscreen on/off
G Grab picture (full size, ppm)
Ctrl+G Grab picture (window size, ppm)
H Displays current time either on window title bar or OSD
when in fullscreen mode
Ctrl+H Call a popup help (only into Tv & Main option Windows)
J Grab picture (full size, jpeg)
Ctrl+J Grab picture (window size, jpeg)
M Mouse pointer on/off
O Popup Options Window
P Toggles Subtitles: Activate or unactivate subtitles
Alt+P Go back on a subtitle page. Work with Ctrl+P and P commands
Ctrl+P Display Subtitles: Choose your Subtitles page number
Shift+P Popup Subtitles page number: enter a specific page number
R Record Movie (toggle start/stop)
Alt+R Popup Video Recorder options
Ctrl+R Popup Audio Recorder options
Shift+R Popup Streaming options
Shift+S To save configuration parameters
T "Always on Top" function which works with any Gnome compliant
Window Manager or with any NET_WM compliant Window Manager
V Video (Capture) toggle: overlay/grabdisplay/off
Shift+X Popup Xosd options Window
X Popup XFree options Window
Ctrl+X Activate / unactivate Xosd
Z Channel Hopper (zapping, tune in every station a
few seconds)
Ctrl+Z Fast Channel Hopping (grab the images for the Channel
Window)
0 Set audio mode to auto
1 Set audio mode to mono
2 Set audio mode to stereo
up/down tune up/down one channel
left/right fine tuning
pgup/pgdown station up/down
Ctrl+up scan for next station
ESC Quit
F1 Call the nxtvepg title again
F5 Set bright ressource down to -512
F6 Set bright ressource up to +512
F7 Set hue ressource down to -512
F8 Set hue ressource up to -512
F9 Set contrast ressource down to -512
F10 Set contrast ressource up to +512
F11 Set color ressource down to -512
F12 Set color ressource up to +512
+/- Volume up/down
Enter mute
The branches hold some string (TV station ID), the lines below are the
settings for that channel. Usually the channel line is enougth.
There are a few other options. They are allowed both for a station
(and will be used for that station) and before the first station (will
be used as default for all stations). The later is useful for common
settings like the TV norm. See also the example below.
Here is the detailed description of the options:
fine = nfinetuning (what left+right keys do), default: 0norm = pal | ntsc
| secamwhich TV norm, default is palkey = keysymHotkey for the channel. All
X11 keysyms allowed here. You can prefixa keysym with Modifier+, i.e. ^F is
"Ctrl+F".capture = off | overlay | grabdisplaycapture mode: off, overlay (default,
TV card => video, 0% cpu) orgrabdisplay (TV card => main memory => X-Server
=> video, frame ratedepends on load and picture size).source = Television
| Composite1 | Composite3 | SVHSinput sourcecolor = nbright = nhue = ncontrast
= nValid range is 0-65535, default is 32768deinterlace = none | bob | weave
| greedy | onefielddeinterlace function applied to the imageThe following
global options are allowed before the first station only. They may be superseeded
by individual channel options:norm = pal | ntsc | secamwhich TV norm, default
is SECAMcapture = off | overlay | grabdisplaycapture mode: off, overlay (TV
card => video, 0% cpu) orgrabdisplay (default TV card => main memory => X-Server
=> video, frame ratedepends on load and picture size).source = Television
| Composite1 | Composite1 | SVHSinput sourcecolorkey = valueIf Xvideo is enabled,
assigns value to colorkey.fullscreen = width x heightspecify which video
mode should be used for full-screen. Works withXFree only, and of cource
you need a valid modeline for this mode inyour XF86Config file.fullscreen_mode
= on|offChoose the method you want when fullscreen is launched.windowsize
= width x heightspecify the startup size of the TV window. Overrides what
has beenspecified in the Xawdecode.ad resource file.wm-off-by = [+-]x[+-]ySome
WM's handle static gravity not correct (I know mwm andkwm). This is somewhat
boring with fullscreen mode. With thisoptions you can correct this with
a displacement for movingwindows. For example, wm-off-by = -4-24 does the trick
for kwm (theKDE window manager).freqtab =select a channel-to-freqency mapping.
Options window->Frequency tablebrings up a menu with all valid entries (and
allows table-switching atruntime).pixsize = width x heightsize of the channel
pixmaps (within Channels window). 0x0 disables thisfeature.mixer = deviceThis
allows to control volume using the sound card mixer. device is*not* /dev/mixer,
but the name of the sound source (line1 for me, justtake one of the mixer
programs floating around and try which is the tvcard...).Volume-control works
with the keypad: + is up, - is down, Enter ismute.restoresnd = on|offsee option
-restoresndsubtitles = on|offSubtitles activation at startup.subpageno = val
(default = 888)Allow save an default subtitle page that will be used atevery
"show subtitles" use.capture_size = val (default = 768 x 576)Sets the width
and height of the grabbed frames;blackborder = nr (default = 0)set height
of the black borders (as -ybar option)xawpopup = val (default = on)To disable/enable
xawpopupmessage_timer = val (default = 5000)Choose how long a title is
displayed on screen.decoration = on|offDecoration activation at startup.stayontop
= on|offStay on Top activation at startup.xvport = numberXvideo Image port
(similar to -xvport option).grab_filepath = val (default = $HOME)Choose the
path where grab images are saved.jpeg_compression = val (default = 75)Choose
the compression percentage for a jpeg grab image.xosd = on|offXosd activation
at startup.xosd_main_color = val (default = lawngreen)Choose the xosd main
text color.xosd_outline_color = val (default = black)Choose the xosd outline
text color.xosd_main_font = val (default = -*-bitstream vera sans mono-*-*-*-*-*-240-*-*-*-*-*-*)Choose
the xosd main text font.xosd_vtx_font = val (default = -*-bitstream vera sans
mono-*-*-*-*-*-180-*-*-*-*-*-*)Choose the xosd teletext font.codec = DivX | FFMPEG - Mpeg4
| FFMPEG - Mpeg1Video | FFMPEG - Huffyuv | XviD (default = XviD)Choose the video
codec you want to use for recording.width = val (default = 384) 32 to 768
(modulo 32)Video width that will be recorded.height = val (default = 288)
16 to 576 (modulo 16)Video height that will be recorded.bitrate = val (default
= 800) in Kbit/s 1 to 10000 (modulo 1)Video bitrate in kbits/s.quality =for
DivX: Fastest | Fast | Medium | Slow | Slowestfor FFMPEG codecs: none | log
| phods | EPZS | full | X1for XviD: H623, No ME | MPEG, Low | H623, Low | H623,
Medium |H623, High | Very High | Ultra High Video quality level.stereo_mode
= off | on (default=off)Choose the audio recording mode: mono or stereo.compress_audio
= on | off (default = on)Activate / desactivate the Sound compression mode
during recording.mp3_bitrate = val (default = 128) 16 to 512 (modulo 16)If
you select CBR, this parameter help you to choose the constantMP3 Audio
bitrate (kbits/s)mp3_quality = val (default = 5) 1 to 9 (modulo 1)MP3 quality
level.mp3_vbr_mode = on | off (default =off)Activate / desactivate the "Variable
BitRate" for MP3 Audio recording.mp3_vbr_quality = val (default = 8) 1 to
8 (modulo 1)If the MP3 VBR mode is selected, you can choose its quality
level.fps = fps (default = 25) 1 to 30 (modulo 1)Frame per second. This parameter
could be modify to synchronize soundand audio if there is such problems
on your AVI file.max_gap = val (default = 80) 1 to 500 ms (modulo 1)Max.gap
possible between sound and audio in an AVI file.This parameter could be
modify to synchronize sound and audioif there is such problems on your
AVI file.min_quantizer = val (default = 2) 1 to 64 modulo 1Quantizer minimum:
Smaller the quantizer is, higher the quality will be.These parameters help
us to modify quality during the recording.If we want a stable quality we
have to fix MIN equal to MAX.max_quantizer = val (default = 8) 1 to 64 modulo
1Quantizer maximum: The higher the quantizer is, the smaller thequality
will be. These parameters help us to modify qualityduring the recording.
If we want a stable quality we have tofix MIN equal to MAX.audio_buffer_size
= val (default = 1764) 441 to 65535 modulo 441Sound buffer size used during
the recording.divx_path = path (default = $HOME or "the folder" where xawdecode
[xdTV] is launched)Choose a folder where you want to record the avi file.display_frame
= on | off (default = on)Display frames on screen during the recording.record_sub
= on | off (default = off)Allow ot not recording a subtitle file during
an AVI recordingrecord_chg = on | off (default = off)Allow or not changing
TV channel during an AVI recordingrecord_delay = val (default = 0,000000)set
recording delay between audio and video in secondsstreaming_mode = on |
off (default = off)enables http export of the recording(xawdecode [xdTV]
will act as a http stream server)streaming_http_port = val (default = 63427)set
the port of the http streampreview_player = val (default = mplayer -nofs
-quiet -nosound)If you have launched a record, it's possible to preview it.Choose
the player you want to use to do that. You can also usexawdecode -avinoaudioout
-avialevt_defaultpage = val (default = 100)Choose the default teletext page.
If you write 100 200 300that will launch 3 differents alevt window with
100, 200 and 300as default pages.alevt_finetune_mode = none | auto | manualChoose
the best method to capture teletext signal.alevt_finetune = val (default
= 1)If alevt_finetune_mode = manual, this value is used to fine tunethe
teletext signal.alevt_error_reduction = yes|no (default = yes)If there is
some noise on teletext signal, this activate an algorithm to reduce errors.alevt_error_bell
= yes|no (default = yes)Choose your charset between latin, russian and greek.If
you want to learn more about eventmap support, read README.lirc.config file
exampleMy config file looks like this:
#
# Global options
#
norm = SECAM
capture = grab
source = Television
freqtab = secam-france
mixer = line
restoresnd = off
xawpopup = on
message_timer = 5000
decoration = off
stayontop = on
#
# Fullscreen options
#
fullscreen = 800 x 600
fullscreen_mode = new
pixsize = 128 x 96
windowsize = 256 x 192
colorkey = 123456
capture_size = 768 x 576
#
# Subtitles options
#
subtitles = on
subpageno = 888
#
# Grab options
#
grab_filepath = /home/user
jpeg_compression = 75
#
# XOSD options
#
xosd = on
xosd_main_color = lawngreen
xosd_outline_color = black
xosd_main_font = -*-bitstream vera sans mono-*-*-*-*-*-240-*-*-*-*-*-*
xosd_vtx_font = -*-bitstream vera sans mono-*-*-*-*-*-180-*-*-*-*-*-*
#
# record options
#
codec = XviD
width = 512
height = 384
bitrate = 800
quality = H623, High
stereo_mode = off
compress_audio = on
mp3_bitrate = 128
mp3_quality = 5
mp3_vbr_mode = off
mp3_vbr_quality = 8
fps = 25
max_gap = 80,000000
audio_fragments = 48
audio_sizefragment = 2048
min_quantizer = 2
max_quantizer = 8
audio_buffer_size = 1764
divx_path = /home/user
display_frame = on
record_sub = on
record_chg = off
record_delay = 0,000000
streaming_mode = off
streaming_http_port = 63427
preview_player = mplayer -nofs -quiet -nosound
#
# eventmap
#
lirc-key-0 = keypad 0
repeat = 1
lirc-key-1 = keypad 1
repeat = 1
lirc-key-2 = keypad 2
repeat = 1
lirc-key-3 = keypad 3
repeat = 1
lirc-key-4 = keypad 4
repeat = 1
lirc-key-5 = keypad 5
repeat = 1
lirc-key-6 = keypad 6
repeat = 1
lirc-key-7 = keypad 7
repeat = 1
lirc-key-8 = keypad 8
repeat = 1
lirc-key-9 = keypad 9
repeat = 1
lirc-key-ch+ = setstation next
repeat = 0
lirc-key-ch- = setstation prev
repeat = 0
lirc-key-vol+ = volume inc
repeat = 0
lirc-key-vol- = volume dec
repeat = 0
lirc-key-Mute = volume mute
repeat = 1
lirc-key-full_screen = fullscreen toggle
repeat = 1
lirc-key-source = setinput next
repeat = 0
#
# alevt options
#
alevt_defaultpage = 100
alevt_finetune_mode = none
alevt_finetune = 1
alevt_error_reduction = yes
alevt_error_bell = yes
alevt_charset = latin-1
#
# Channel options
#
[TF1]
channel = 25
key = KP_End
bright = 35920
hue = 27689
deinterlace = Linear Blend
[France2]
channel = 22
key = KP_Down
deinterlace = Linear Blend
[France3]
channel = 28
key = KP_Next
deinterlace = Linear Blend
[Canal+]
channel = K06
key = KP_Left
deinterlace = Linear Blend
[Arte / La Cinquième]
channel = 30
key = KP_Begin
deinterlace = Linear Blend
[M6]
channel = 33
key = KP_Right
color = 18371
norm = PAL
deinterlace = Linear Blend
[external]
key = KP_Home
source = Composite1
deinterlace = Linear Blend
Bugs
What's this?See Also
http://bytesex.org/xawtv/ (xawtv homepage)
http://bytesex.org/bttv/ (bttv driver homepage)
http://lecker.essen.de/~froese/ (AleVT videotext decoder)
Author
Original xawtv by Gerd Knorr <kraxel@bytesex.org>- Please do
- NOT contact him if you have questions regarding xawdecode [xdTV]. This will pollute his mailbox with mail he absolutely doesn't care about. Ask rather your question on the relevant forums...
Original AleVT videotext decode by Edgar Toerning <froese@gmx.de>
Please do NOT contact him if you have questions regarding the builtin AleVT decoder provided by xawdecode [xdTV]. This will pollute his mailbox with mail he absolutely doesn't care about. Ask rather your question on the relevant forums...
Copyright
Copyright (C) 1997,1998 Gerd Knorr <kraxel@bytesex.org>Copyright (C) 1998,1999,2000 Edgar Toerning <froese@gmx.de>
Copyright (C) 2000,2003 Keuleu
Copyright (C) 2003-2004 Alain, Bart, Calimero, Cooly, CycyX, CuC, Mat, Maupatz, Pingus
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
