FM-1 SID
It plays C64 music (.sid files) and GoatTracker 2 songs (.sng) through an emulated SID chip, and it lets you write your own GoatTracker songs on the FM-1 itself and save them.
- Custom firmware
- Beta
- 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
FM-1 SID: a Commodore 64 SID chip on the M-VAVE FM-1, as its own firmware on fm1-dock: a C64 tune player (reSID 0.16 and a 6510 running each tune's own code, PSID and RSID), a GoatTracker 2 editor, and a SID synth with 12 instruments, a step sequencer and stereo chorus, delay and reverb.
Install (over USB; asks before it writes):
pip3 install mido python-rtmidi
python3 tools/fm1_install.py fm1-sid-0.3.fwsc # fm1-dock's (or Felucca's) installer
fm1-dock keeps USB, the installers and the rescue while FM-1 SID plays, so going back to any other firmware is an ordinary install. OCT− held at power-on is the USB rescue. Installing firmware is at your own risk.
In this version:
- Any .sid onto your FM-1 without an install: "Play on my FM-1" on the page (Chrome or Edge), or fm1-dock's
tools/dock.py send tune.sid. The tune goes into FM-1 SID's C64 memory over USB and plays at once; nothing is written to flash. - The FM-1's keys go out as MIDI notes, so they play the FM-1 on the page, or a DAW.
- Starts with GoatTracker 2's example songs: Dojo, Unleash, Sanction, Consultant and Transylvanian by Cadaver, Hyperspace by Jammer, Everlasting by Richard Bayliss, GhostTrackers by Hein, Sixpack by No-XS, Cabrini Green by Randall.
- Verified on a real FM-1.
Your own tunes in the package: dock/build_solo.sh with your .sid / .sng files.
Files:
fm1-sid-0.3.fwsc: the package (610 110 B, identity FM-1_900; no HVSC tunes)fm1-sid-0.3.syms: its symbols, for fm1-dock's console
Built from c2e231f with RELEASE=0.3 dock/build_solo.sh on fm1-dock e177e83. GPL-3.0; Felucca's hardware layer by Leo Kuroshita / Hügelton Instruments, Dinghy by zvenson, the songs by their GoatTracker 2 composers.
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
- 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 FM-1 SID v0.3 work on your M-VAVE FM-1?
No reports yet for v0.3.
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 ("Install it on an FM-1: as an fm1-dock module"):
In Chrome or Edge, with the FM-1 plugged in by USB, on fm1-dock's page:
- Install fm1-dock on my FM-1 (skip it if fm1-dock 0.6 or later is on it already).
- Add FM-1 SID to my fm1-dock: the module goes into fm1-dock's flash next to its other synths, with GoatTracker 2's example songs. Nothing else on the FM-1 changes.
- On the FM-1, hold HOME for 1.5 s and pick FM-1 SID. fm1-dock starts it at power-on from then on.
To hear the classics right away, the same page has ▶ Arkanoid, ▶ Wizball and ▶ Commando, and on the FM-1 SID page Play on my FM-1 sends any of HVSC's tunes to it (into its memory: nothing is written to flash).
By hand, in fm1-dock's tree: uv run --with python-rtmidi tools/dock.py deploy fm1sid.dock, or drop the file on the console. fm1sid.dock is on the page, or built with your own tunes (below).
Risk and recovery
- Brick risk
- Medium
- Reversible
- Yes
- Requires opening the device
- No
From the project's README ("FM-1 SID as its own firmware"):
FM-1 SID can also be the whole firmware: fm1-dock with FM-1 SID as its only synth (and the sine), starting in it.
- Install FM-1 SID on my FM-1 on the FM-1 SID page or the install page; or fm1-sid-X.Y.fwsc from the latest release with fm1-dock's tools/fm1install.py; or build one with your own tunes (below).
- To install something else later, run its installer, or the Firmware Hub: fm1-dock answers them. If one does not reach it, switch the FM-1 on with OCT− held: fm1-dock's USB rescue, only the updater running (fm1-dock's keys).
- If nothing else works, the FM-1 has its own recovery, outside any firmware: hold OCT− and OCT+ while switching it on, with the USB cable plugged in, and use M-flasher, the Firmware Hub or MvaveFM1Unbricker with the official firmware (issues #22 and #23). FM-1 SID never writes the flash this needs.
The package from the page starts as the SID synth: it is silent until you play a key. Press HOME for the tune player.
Releases
| Version | Name | Released |
|---|---|---|
| v0.3 | FM-1 SID 0.3Latest | 25 October 2026 |
Credits, license and support
- License
- GPL-3.0