Doom for the M-VAVE FM-1
The first level of Doom, running as firmware on an M-VAVE FM-1 pocket synthesizer: its own 240×240 screen, its own keys and knobs, its own speaker.
- Custom firmware
- Alpha
- Medium brick risk
- Reversible
This project hasn't been claimed by its maintainer yet, so its details come from the community. Is it yours? Claim it
Before you start
- How hard is it?
- EasyCopy a file or use a web page. No extra software.
- What you need
- A USB or MIDI cable
- Comfort with the command line
- A computer
- Can it break my device?
- Small chance of trouble, with a way to recover.
- Can I undo it?
- Yes. You can go back to the official software.
Did it work for you?
Did Doom for the M-VAVE FM-1 work on your M-VAVE FM-1?
No reports yet.
One-tap reports from owners. Bricked reports are checked before they count.
Compatibility
Devices: M-VAVE FM-1.
No compatibility information yet.
Getting started
From the project's README ("Doom for the M-VAVE FM-1"):
The first level of Doom, running as firmware on an M-VAVE FM-1 pocket synthesizer: its own 240×240 screen, its own keys and knobs, its own speaker. The chip has 1 MB of flash and 512 KB of RAM, so this is one level (E1M1) with the title screen, sound and music, on the engine of rp2040-doom and the hardware layer and update loader of Felucca.
Experimental. It has been installed and played on one FM-1. It replaces the synth firmware (which can be put back). Use it at your own risk.
Install it from the browser: (Chrome or Edge, USB).
What is here
Path What firmware/ The device firmware: doomdev.c (recovery-first start-up, USB update, screen, sound, input on Felucca's HAL), the build and packaging scripts, host tests. engine/ The game engine's source: a patch series on upstream rp2040-doom, and a script that fetches and applies it. web/ The install logic as plain JavaScript modules (cut a WAD, convert it, pack it, the update protocol), a single-file installer page, and the browser build of the game used for development. site/ The public installer site (Vite + React) and its AWS set-up (CDK). See site/README.md. tools/ Mac-side tools: cutting the game data, and boot-mode backup / restore of the FM-1's flash. NOTES.md The running log: every measurement, decision, build and device result, in order. Start here for detail. No game data is in this repository, and none may be added: no WAD, nothing cut or converted from one. …
Risk and recovery
- Brick risk
- Medium
- Reversible
- Yes
- Requires opening the device
- No
From the project's README ("Safety"):
The firmware is built to stay recoverable: it never writes the boot code, it accepts a new firmware over USB in every state (hold HOME while switching on for a screen that only waits for one), and a start that fails drops back to that screen by itself. tools/fm1boot.py and tools/fm1restore.py can read and restore the whole flash through the chip's built-in USB boot mode. A firmware that fails before any of that runs can only be recovered with extra hardware (see NOTES.md, "Recovery").
Credits, license and support
- License
- GPL-3.0