UADE(1)

NAME
UADE - the Unix Amiga Delitracker Emulator

SYNOPSIS

uade
    [options] file

uade
    [options] -P Playerfile -M Musicfile

DESCRIPTION
It uses code from UAE Amiga Emulator to emulate Amiga hardware. In addition the original Deliplayer and Eagleplayer APIs have been re-implemented with m68k-assembler to re-use existing player plugins by emulation. commandline options:

-P, -pl playerfile
    the filename of the eagleplayer. NOTE about Custom songs: CUST.* files are a bit special. They are basically more like players than like modules. So in order to play them you pass them with the -P switch to uade. Uade should know how to handle them, then.

-M, -mod modulefile
    the filename of the module to be played with the eagleplayer. (For custom songs use the -P switch)

-S,	-score scorefile
    if you want to use a different score file

-f,	-force
    sometimes it's neccessary to "persuade" the eagleplayers to play a certain song. To force module checks to always valid, use this switch and all modules are accepted and the eagleplayer tries to play it anyway. (Warning! You overide the sanity checks of the replays with this switch. this may crash the virtual amiga when used. Use it when you are really sure what you are doing)

-s, -sub n
    chooses subsong n

-outpipe n
    dumps the data that would be written to /dev/dsp to pipe n (for example n=1=stdout)

-pipe n pid
    yet non-documented pipe feature that allows to use uade as xmms-plugin. Uses shared memory mapping.. (mmap using tmp file) DON'T TOUCH THIS!

-config=file
    you can give uae's configuration file with this parameter

-ntsc
    forces amiga to have 60 Hz screen refresh rate (this is mostly an useless option, remember that Amiga code can change refresh rate by itself)

-voltest
    Override volume setting by the replayers (for testing purposes only)

-dmawait n
    tune the dmawait value (for testing purposes only)

-ne, -no-end
    play music ad infinitum, by ignoring songend messages. (no need to read the src anymore, asle;)

-one
    play subsong and end, instead of playing all subsongs sequentially. Useful for recording one subsong at a time.

-rp, -repeat
    repeat all files at the end of the filequeue

-p, -pan n
    panning (aka channel mixing aka stereo seperation). with n being any value between 0=full stereo and 1=full mono.

-t n
    sets the overall playtime in seconds to play a song and all its subsongs. (useful for recording "endless" songs)

-st n
    works like a "scan" feature to be found on cd players. Switch to next subsong after 'n' seconds of playing (useful for recording "endless songs)

-sit n
    sets the "silence timeout", the time uade waits during silence to decide the songs is over, to n secs.

-r, -rand
    Play songs in random order

-d  enter UAE debugger. Useful for ...er... well debugging and maybe for doing memory dumps for finding converted/unpacked music in the virtual amiga memory.

-sh enable speedhack. Emulate all instructions to be executed in one m68k cycle. Some players, such as EMS v6, take too many m68k cycles to be real-time. This option gives them enough m68k cycles. Notice that you do _not_ need to use this switch with EMS v6 or Octamed, because it is automatically enabled for that format. The replayer knows to ask for speedhack.

-no-sh
    disable speedhack (even if the replayer tries to use it)

-fi, -filter
    toggle lowpass filter

-swap-bytes
    Swaps output sample bytes (use only with 16-bit samples), ie changes the endianess of the output samples. By default UADE outputs native endian samples.

-i  interactive command line shell: e.g.:
        h + <enter>    -> help
        n + <enter>    -> next song
        1 + <enter>    -> jump to subsong 1
        5 + <enter>    -> jump to subsong 5
                etc.

SUPPORTED FORMATS
Many... among them are e.g. CUST, MOD, MED, TFMX, DW, HIPPEL, VECTORDEAN... (see uade-docs/formats.txt for a more complete list)

FILES

$UADEDIR/uade						uade console player

$UADEDIR/score						uade soundcore

$XMMSDIR/Plugins/Input/libuade.so		uade xmms plugin

$XMMSDIR/config					[UADE] Section in xmms config

$UADEDIR/pwrap.pl					uade perl frontend

$UADEDIR/players					Amiga m68k replayer binaries

$UADEDIR/players/uadeformats			Fileextension<->player configs

$UADEDIR/db-content					md5 content playtime database

$UADEDIR/db-name					md5	filename playtime db

$UADEDIR/uade-x.yz					uade docs and readmes
    UADEDIR=path where uade was installed
    XMMSDIR=path where xmms was installed

EXAMPLES

uade -P players/ArtOfNoise -M music/AON.big_deal
    plays the musicfile AON.big_deal in music/ with the the ArtOfNoise replayer binary on players/

uade -P players/ArtOfNoise -M music/AON.big_deal -force
    plays the musicfile AON.big_deal in music/ with the the ArtOfNoise replayer binary in players/, even if the player would reject the file as a valid music file for it.

uade -P CUST.MyFavouriteCustomSong
    causes uade to play the custom tune that was passed to score with the -P switch

uade -P CUST.MyFavouriteCustomSong -sub 2
    causes uade to play the 2nd subsong of the custom tune that was passed to score with the -P switch

uade -P CUST.MyFavouriteCustomSong -ntsc
    causes uade to play the music in NTSC speed (only if the player or in this case the Custom song supports it;)

>Redirecting the output:
The console tool also provides the possibility to redirect the UAE audio output to either save it to disk for further use, like converting it to a wavefile or encoding it as mp3 or ogg, or to pipe the it directly to other applications, that can read their input from stdin/stdout.
E.g. dumping audio stream to stdout and converting it to wav and ogg vorbis formats:

    uade -P players/FC1.3 -M songs/future_composer/fc13.smod7 -outpipe 1 >./music.raw sox -t raw -r 44100 -c 2 -s -w ./music.raw ./music.wav oggenc music.wav

on MorphOS you might want to do:

    uade -P players/FC1.3 -M songs/future_composer/fc13.smod7-outpipe 1 > "AUDIO:B=16 F=44100 C=2"

Another example:

    for i in `seq 1 3` ; do uade songfile -pan 1 -one -sub $i -outpipe 1 > sub.$i.raw ; sox -t raw -r 44100 -c 2 -s -w sub.$i.raw sub.$i.wav ; rm sub.$i.raw ; done

will record subsongs 1-3 into separate wav files, with panning = 1 (mono). You may want to make a shell script out of this

AUTHOR
UADE was started by Heikki Orsila <heikki.orsila@iki.fi> Later there have been other contributors such as Michael 'mld' Doering, Harry 'Piru' Sintonen (MorphOS port) and others. http://uade.ton.tut.fi / for more information.