Skip to content


Subversion checkout URL

You can clone with
Download ZIP
library for playback of 8bit music written in a Forth-like synthax
Python Shell
Latest commit 07233f5 @steveway steveway committed with Fixed the Cursor on Python 3
Failed to load latest commit information.
tests + a battery of test glitches
tracks + A sci-fi remix of The 42 Melody, an early bytebeat discovery, creat…
.gitignore + .gitignore
FORMAT-draft-erlehmann * fix date typo in spec
README.markdown + F4 to switch between waveform and stack visualisation
fontset.png A few simple changes to get it to run in Python3
glitched.png + glitched application icon Fixed the Cursor on Python 3
glitched.xcf + glitched application icon + parsing for glitch file format + a battery of test glitches


libglitch makes 8-bit sounds in the spirit of viznut's “algorithmic symphonies”, using a small language not entirely unlike Forth. Included is a small programm reading formulas from the command line. GNU/Linux users may try “./ glitch_machine!a10k4h1f!aAk5h2ff!aCk3hg!ad3e!p!9fm!a4kl13f!aCk7Fhn | aplay -f u8” for playback.

Using sox, sound can easily be exported into wave files: “./ cat tracks/sidekick.glitch | head -c128000 | sox -c 1 -r 8000 -t u8 - sidekick.wav”.

For editing and visual effects, try “./ [filename]”. Controls are the arrow keys (to move the cursor around), page up / page down (to change the opcode), space (to for no opcode), t (for the counter) and all hexadecimal digit keys (for insertion of the corresponding characters). Symbol keys (plus, minus etc.) may also work.

In glitched, press F4 to switch between waveform and stack visualisation. F5, F6, F7, F8 provide finer control over visualisation options. Press all of them in order to see a stack visualisation. F9 shows the current value of the counter (“t”).

libglitch is inspired by a comment from madgarden, who kindly provided the opcodes he uses in his iOS application “Glitch Machine” and some source code. There is also a Scala implementation.


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 3 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Something went wrong with that request. Please try again.