David Madore's programs

[ENS] [ENS students] [David Madore]
[Mathematics] [Computer science] [Programs] [Linux] [Literature]

Note: This page is obsolete. You should probably be reading this one instead.

Programs that might turn out to be useful


I can't say I wrote this one. It's just a Linux port of the OpenBSD ftp server. Here is the tarball. There is also a (possibly broken) source rpm and i386 binary rpm.


Together with Péter Horvai (peter.horvai@ens.fr) (to whom I owe the original idea) I wrote a program called xlaby (X Labyrinth - the aMAZEment). It is an X Windows labyrinth game played directly with the mouse cursor (that is, the walls of the labyrinth will block the mouse cursor). It has been tested under Linux, SunOS and Solaris but it should work under any reasonable Unix with X11. It is included with Debian GNU/Linux version 2.0.


A kind of companion to xlaby, xletters is a sort of hybrid between space invaders and a typewriter. The goal is to type falling words before they reach the bottom.


The current project on which I am working (or at least will start working when I get several other things off my hands and have a minute's free time) is the Legendes project, an adventure meta-game under Linux (and possibly other platforms too).


SIMPLE is a macro preprocessor not unsimilar to m4 but having some features that m4 lacks; like m4, it is also a reduced programming language. I use it to preprocess TeX files and I intend to make this much more systematic in creating ``STeX'', a file format that looks like HTML and that the SIMPLE preprocessor turns to TeX, or LaTeX, or any similar format.

Programs that could turn out to be useful (note the subtle difference)

Things relative to sound/music


mid2ps.c is one of the first C programs I wrote - before I started using Linux. It will read a MIDI file and produce a sort of piano-roll for it, in PostScript format. I can't tell you any more about how it works because it's been so long (that is, almost two years :-) since I wrote it.


mid2dsp.c takes a MIDI file and produces a raw wave output (16-bit, 11025Hz sampling rate - that can be changed of course, but at compile time only because I'm just so damn lazy). It's extraordinarily CPU-hungry and the instruments are worse than bad, they're god awful. So what's the point? None. Except perhaps to save a few megabytes timidity patches... at the cost of half destroying your ears. Anyway, you can use it to play (massacre is more like it) a MIDI file by running mid2dsp myfile.mid | playback -s 11025 - where playback is given below.

A Fourier transformation

fft.c takes a 16-bit raw data stream on entry, Fourier transforms it by blocks, rotates (i.e. cyclically shifts) the Fourier transform and un-Fourier-transforms it. So if you run fft <myfile.raw | playback - (where playback is given below) you will hear the result. It actually produces the most curious effects: for example, a cheery little tune becomes music from your worst nightmares. By the way, if you intend to use this program in real time, be sure to optimize with -O3 (and also, remember that it works on raw sound data).

While I'm at it, I have here (ppmfft.c) a program that will perform some kind of Fourier transformation on a 512x512 raw-ppm image file, but I can't remember what.

playback and record

These two completely trivial programs (playback.c and record.c) that are Linux-specific will just (as their name indicates) play back and record raw sound files, by default in 16-bit format, 22050Hz sampling rate (but there are command-line switches to change that).

Just junk

A very simple program.

Another one.

Some sorting algorithms.

And killing a person out of 7.

[ENS] [ENS students] [David Madore]
[Mathematics] [Computer science] [Programs] [Linux] [Literature]

David Madore
Last modified: $Date: 1999/04/10 22:53:05 $