OnWorks favicon

aylet - Online in the Cloud

Run aylet in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command aylet that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



aylet, xaylet - play Spectrum `.ay' music files


aylet/xaylet [-BehlmnNsS] [-A stopafter] [-F fadetime] [-t tracknum] [file1 [file2 ... ]]


aylet plays music files in the `.ay' format. These files are essentially wrappers around
bits of Z80 code which play music on the Sinclair ZX Spectrum 128's sound hardware - the
beeper, or the AY-3-8912 sound chip, or both. Files using the Amstrad CPC ports are also

`aylet' has a curses-based interface, and `xaylet' has an X-based one.


-A set stop-after time in seconds (this is the time at which tracks start fading out),
or 0 to disable fading. The default is 180 seconds (3 minutes).

-B use `ABC' stereo positions, rather than the default `ACB'. ACB effectively pushes
channels A and B to the left and right (using a stereo delay), with C remaining
central; ABC puts A and C to the left/right instead, leaving B central.

-e force 8-bit playback, even if 16-bit is available.

-F set fade-out time in seconds (the time tracks take to fade out). The default is 10

-h give terse usage help.

-l list the contents of files (track names etc.) rather than playing them.

-m use mono rather than the default stereo playback.

-n rather than the usual interface, use a simple batch-playing tty style, a bit like
mpg123. (Only works in the curses version.)

-N use `narrow' stereo separation (so the channels sound closer together) rather than
the default `wide' separation.

-s output sample data to stdout rather than playing it; implies `-n'. The sample is
44.1kHz 16-bit stereo (or mono if using `-m'). Don't be surprised if the sample
takes a little while to generate, as it still has to emulate the Z80.

-S apply a pseudo-stereo effect to the beeper output. Works well in some cases, but
can make things sound a bit shaky (or rather, more so than usual :-)).

-t play only the specified track, then exit. (Strictly speaking, it starts playing the
given track, and exits when any track fades out.) Mainly useful when playing a
single file non-interactively.

file1 etc.
the file(s) to play. Currently these can only be specified on the command-line.


The way aylet works may seem a little strange if you're not familiar with how the `.ay'
format goes about things, so here's some background on how it all works.

As mentioned above, the files basically contain chunks of machine code to run on an
emulated Z80 with certain sound hardware. Since you're just running a program, you can't
really fast-forward or rewind as such, but you can move between tracks specified in the
file. (Some files only have one, but others have several.)

The whole just-running-a-program thing leads to two other problems, too. You can't tell
where a track ends, other than to see when the sound stops; what aylet does is to exit a
track after 4 seconds of total silence. And a track may never end at all; aylet fades it
out after 3 minutes by default. (Yes, 3 minutes be may too soon to allow some tracks to
`finish', but you have to strike the balance somewhere, and it's only a default. Use `-A'
or press `s' to change it.)


Both the curses-based and X-based interfaces use these keys (some of which are based on
those used by XMMS):

q or Esc
exit the program.

z previous track.

x play.

c pause.

v stop.

b next track.

r restart track.

Backspace or Delete
previous file.

Space next file.

s increase stop-after time.

S decrease stop-after time. Setting it to zero disables fading completely.

f increase fade-out time.

F decrease fade-out time.

h enable/disable high-speed mode, playing four times as fast when enabled (in a way),
as a sort of substitute for a real fast-forward control.

In xaylet, you can also use the matching buttons for most of the above.

When using `aylet -n', the interactivity is scaled down dramatically, leaving just the one

Ctrl-C if the current track has been playing for less than half a second, exit the
program; otherwise, skip to the next track.

Note that the key used to do this is really whatever you have set up to generate a SIGINT
signal, but it's generally Ctrl-C.


To play all .ay files in the current directory:

aylet *.ay
xaylet *.ay

To convert ysfollin.ay to a mono sample in .wav format (requires `sox'):

aylet -sm ysfollin.ay |sox -r 44100 -t sw - tune.wav

Use aylet online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    LAME (Lame Aint an MP3 Encoder)
    LAME (Lame Aint an MP3 Encoder)
    LAME is an educational tool to be used
    for learning about MP3 encoding. The
    goal of the LAME project is to improve
    the psycho acoustics, quality and speed
    of MP...
    Download LAME (Lame Aint an MP3 Encoder)
  • 2
    A set of Python extension modules that
    wrap the cross-platform GUI classes from
    wxWidgets.. Audience: Developers. User
    interface: X Window System (X11), Win32 ...
    Download wxPython
  • 3
    This is the Total War pack file manager
    project, starting from version 1.7. A
    short introduction into Warscape
    modding: ...
    Download packfilemanager
  • 4
    A network traffic tool for measuring
    TCP and UDP performance with metrics
    around both throughput and latency. The
    goals include maintaining an active
    iperf cod...
    Download IPerf2
  • 5
    fre:ac - free audio converter
    fre:ac - free audio converter
    fre:ac is a free audio converter and CD
    ripper for various formats and encoders.
    It features MP3, MP4/M4A, WMA, Ogg
    Vorbis, FLAC, AAC, and Bonk format
    support, ...
    Download fre:ac - free audio converter
  • 6
    Matplotlib is a comprehensive library
    for creating static, animated, and
    interactive visualizations in Python.
    Matplotlib makes easy things easy and
    hard thing...
    Download Matplotlib
  • 7
    Write your chatbot logic once and
    connect it to one of the available
    messaging services, including Amazon
    Alexa, Facebook Messenger, Slack,
    Telegram or even yo...
    Download BotMan
  • More »

Linux commands