JESVS

X0X

v0.10.3-beta beta M-VaveFirmware
Screenshot of X0X running on the M-VAVE FM-1
Screenshot from the project's source.
AuthorCharles Vestal
Version0.10.3-beta (data as of 2026-10-09)
LicenseGPL-3.0
Repositoryhttps://github.com/charlesvestal/fm1-x0x
Web / installerhttps://charlesvestal.github.io/fm1-x0x/
Based onFelucca
Emulates / engines
  • ReBirth (the table's format: 909 + 808 + 2×303 + breaks at once)
  • TR-909 (11 voices: modeled kick/snare/toms/rim/clap, sampled hats and cymbals)
  • TR-808 (11 tracks: tom/conga, rim/claves, clap/maracas switches)
  • 2× TB-303 (Robin Schmidt's Open303, Devilfish-style extended ranges)
  • TB-3PO (acid line generator on each 303)

X0X is Charles Vestal (Berlin; firmware engineer at Memfault, author of the Schwung module family for the Ableton Move) doing what he’s good at: a ReBirth-style groovebox with a TR-909, a TR-808, two TB-303s and a breakbeat player, all at once, in stereo. It’s a platform-only fork of Felucca: Vestal keeps the scaffolding and replaces the entire instrument — the same pattern he repeats in FoMni. Everything gets tested in a host simulator and a browser build first; in fact, Felucca’s WASM emulator was modeled on X0X’s browser build.

Workflow

Acid, big beat and techno live: patterns, chaining, a song mode of up to 192 bars recorded live, and knob-motion recording. Each part has its own length (≤32 steps) and rate, so the parts drift out of phase with one another — free polymeter. And TB-3PO: an acid line generator on each 303 (DENS/ACCENT/SLIDE/OCTS, 6 scales, auto-mutate) that saves you from programming lines by hand.

Engines & what it emulates

909: 11 voices — modeled kick, snare, toms, rim and clap; sampled hats and cymbals (schwung-9W9 / ER-99). 808: 11 tracks with tom/conga, rim/claves and clap/maracas switches (schwung-8W8). 303 A+B: Robin Schmidt’s Open303 (MIT) with Devilfish-style extended ranges. And the breakbeat player: the loop cut into 8 slices that you reorder live (from mestela’s schwung-breakbeat). Roland’s trademarks, the README clarifies, are descriptive only.

What sets it apart

  • Shared stereo reverb and delay; a clean 12-bit DIGI delay or a wobbly TAPE one, with wear and ping-pong; 909 drive and a glue compressor.
  • ~9 user breaks in 3 sample slots (tools/upload_breaks.py).
  • Safe mode after crashes; 13 releases in four days.

Status & caveats

Explicitly beta and very active. Dense patterns push the CPU: the firmware trades away sound quality before it lets itself fall over — under pressure it trims the sound, but there is never a dropout.

← back to FM-1 Firmwares
↑