README from GitHub, MIT

FM-1
Le M-VAVE FM-1 dans le navigateur. Un même panneau fait tourner la réimplémentation FM-1+VA ou l'un des 114 firmwares open source du FM-1, que l'on choisit dans un sélecteur.
Ouvrir : ninjathune-human.github.io/Fm1
Chrome, Edge, Firefox et Safari récents, sur ordinateur, iPad et iPhone : souris, tactile et stylet.
Utilisation
- Allumer démarre le son et le firmware choisi.
- Le contrôle Firmware, sous le panneau, ouvre la liste. La recherche accepte les fautes de frappe et les mots dans n'importe quel ordre ; Entrée démarre le premier résultat.
- Toucher une ligne démarre le firmware. Chaque firmware garde ses presets et ses patterns dans le navigateur, séparément des autres.
- Ouvrir un .fwsc… démarre un paquet de votre ordinateur. Il n'est envoyé nulle part.
- L'interrupteur marche / arrêt, sous le panneau, allume le FM-1. L'éteindre efface les sauvegardes du seul firmware actif.
Sous le FM-1, trois menus d'aide : le manuel d'utilisation, les raccourcis clavier (dessinés) et les fonctions du firmware chargé. Les fiches existent pour les firmwares optimisés et FM-1+VA ; les autres affichent « Pas de fiche pour ce firmware pour l'instant ».
Marqueurs de la liste : « bêta » (version de test de son auteur), « en ligne » (paquet chargé depuis le FM-1 Firmware Hub), « non évalué » (pas encore essayé dans l'émulateur).
Comment ça marche
- FM-1+VA est une réimplémentation écrite d'après le manuel publié par Baud Girl : moteurs FM, Virtual Analog et 8-Bit, écrans, séquenceur et MIDI (par Web MIDI : clavier, contrôleurs, horloge, patches DX7 en SysEx). Ce n'est pas son firmware : FM-1+VA de Baud Girl n'est pas redistribué ici, et la réimplémentation ne reprend aucun code de son firmware.
- Duo (
index.html?duo) : deux FM-1 dans la même page, FM1-A et FM1-B, chacun avec son firmware et sa mémoire ; en portrait l'un au-dessus de l'autre, en paysage l'un ou l'autre (ou côte à côte sur un grand écran), avec un tempo lié au choix entre deux FM-1+VA. - Les autres firmwares tournent tels quels sur fm1-emu, l'émulateur de la puce JieLi AC791N du FM-1 écrit par Joakim Eriksson. À chaque mise à jour du dépôt, une action GitHub le compile en WebAssembly au commit figé
93cb7ee, puis publie le site. - 59 firmwares tournent en natif : compilés depuis leurs sources pour le navigateur, sans processeur émulé (voir performances). Leur paquet émulé n'est plus dans le dépôt ; si leur compilation manquait, la page les émulerait depuis le paquet en ligne du FM-1 Firmware Hub.
- Les paquets
.fwscsont ceux publiés par leurs auteurs, vérifiés par leur empreinte SHA-256 (catalogue). Chacun a été démarré dans l'émulateur : voir le rapport de vérification.
Firmwares
« État » : vérifié (démarré ici, image et son mesurés), fonctionne (déclaré fonctionnel par fm1-emu), non évalué ; « natif » : compilé depuis ses sources, sans émulation.
Officiel (1)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| M-VAVE officiel V15 | M-VAVE | Apache-2.0 | 4c7496d | fonctionne |
Groovebox (41)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| Chipbox | Pasquale Barilla | GPL-3.0 | 4851031 | fonctionne, natif |
| DUB-1 | sbegueria | GPL-3.0 | e6fe7b8 | fonctionne, natif |
| ESTAMPIE | Drew Robinson | GPL-3.0 | b6be8f7 | vérifié, bêta, natif |
| Felucca | Leo Kuroshita (Hügelton Instruments) | GPL-3.0 | a53ecf4 | fonctionne, natif |
| Felucca 8 Patterns | echoe | GPL-3.0 | 21fc592 | fonctionne, natif |
| Felucca [Salt] | Chance Roth (ChanceTheMaker) | GPL-3.0 | 9490527 | fonctionne, bêta |
| FIZZ | Quixotic7 | MPL-2.0 | 664d981 | vérifié, bêta |
| FM1-GM | jartificer | GPL-3.0 | fcc7655 | fonctionne |
| GHOULBOX | Jason Persinger | GPL-3.0 | 9f2b9a2 | fonctionne, natif |
| Golana DZ Edition | dzwerg | GPL-3.0 | 858e3f2 | fonctionne, bêta, natif |
| GR!MM | GRiMMBIENT | GPL-3.0 | 815ca6b | fonctionne, natif |
| HERA | Ben Badio | GPL-3.0 | 2c99af2 | fonctionne, natif |
| HYP-1 | RedtailWorks | GPL-3.0 | 57c456d | fonctionne, natif |
| Jangada | zednaked | GPL-3.0 | 46e6c2c | fonctionne |
| JIANT FM | juanjiant-bit | GPL-3.0 | c6e7aa1 | fonctionne, bêta, natif |
| Loom FM-1 | Co-oscillator | GPL-3.0 | ed6f036 | vérifié, bêta, natif |
| LOOM-8 | Charles Vestal | MPL-2.0 | 92b4bf2 | fonctionne, bêta |
| Makohai | delirioux | GPL-3.0 | 800edc8 | vérifié, natif |
| MAKU | okumurari | GPL-3.0 | 5671198 | fonctionne, natif |
| MC-1 | dspaudio | GPL-3.0 | 10a2240 | fonctionne |
| Melodee | keremimo | GPL-3.0 | f40dd70 | fonctionne, bêta |
| Mini-Tone | Stéphane Schmitz | GPL-3.0 | 6803c6c | fonctionne, natif |
| MNM-1 | Veff | GPL-3.0 | 2c7aee4 | vérifié |
| MONO2K | Iñigo Hernandez | GPL-3.0 | b52d677 | vérifié, natif |
| Mutable Dreams | Kid Bunka | GPL-3.0 | 04cf468 | fonctionne |
| MYCELIUM | Mandalars | GPL-3.0 | 750eb12 | fonctionne, bêta |
| ORBIT | dspaudio | GPL-3.0 | 3cbd250 | fonctionne, bêta |
| PERF-1 | deamonSLINKY | GPL-3.0 | d2ed6aa | vérifié, bêta, natif |
| Pocket GammaWave | ShadowTune (GammaWave Audio) | GPL-3.0 | 8bf1a12 | fonctionne, natif |
| Polly | Charles Vestal | GPL-3.0 | 62cd07e | fonctionne, bêta, natif |
| Ravel | De-Pattern | GPL-3.0 | 6a7696d | vérifié, bêta, natif |
| Skiff | illuminus5 | GPL-3.0 | c01fa1e | fonctionne, natif |
| SLOOP | isod89 | GPL-3.0 | d893642 | fonctionne |
| SLOOP DX7 Banks | majnikool | GPL-3.0 | c741193 | fonctionne, bêta |
| sloopDX | zvenson | GPL-3.0 | 9870b84 | fonctionne |
| Tessera | Theo Dainis (Rastapopolix) | GPL-3.0 | 094f535 | fonctionne, natif |
| TRIBE | apiel | GPL-3.0 | 29664b2 | fonctionne, bêta, natif |
| WaveLoop FM-1 | ELI7VH | GPL-3.0 | 7bce760 | fonctionne, natif |
| winampFM Synth | Hericdk | GPL-3.0 | 54575a4 | fonctionne, bêta |
| X0X | Charles Vestal | GPL-3.0 | 27f6fac | fonctionne, natif |
| X0X-RMX | Mr-Roboto (Oliver) | GPL-3.0 | a4e78f3 | fonctionne, natif |
Synthé (40)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| AMB-1 | Charles Vestal | MPL-2.0 | 188b0a4 | fonctionne |
| Arctic Scream | p0larpatch | GPL-3.0 | 7b5b8b2 | vérifié, natif |
| Bunker Evolved | Kid Bunka | GPL-3.0 | c9bb0b1 | fonctionne, natif |
| Bytemania | lloyd (llozd) | GPL-3.0 | e670b35 | fonctionne |
| Caravel | BonszaiMusic | GPL-3.0 | b50bad5 | vérifié, bêta, natif |
| Carnac OS | OrbVorgis | GPL-3.0 | be8cc10 | fonctionne, bêta, natif |
| Clipper | isod89 | GPL-3.0 | e690672 | fonctionne, bêta |
| CS-1 | twochannels | GPL-3.0 | 5dce8fa | fonctionne, natif |
| DRIFT | FBNFRTG | GPL-3.0 | 09b5b98 | fonctionne, bêta, natif |
| DUELL | OSCILL/R | GPL-3.0 | 33e2e2e | fonctionne, natif |
| ETCH | SikkenWorks | GPL-3.0 | 57676c0 | fonctionne |
| Evander's Music Box | Michail Tsakiroglou | GPL-3.0-or-later | 53c3234 | fonctionne |
| FiMba-1 | jadamsowers | GPL-3.0 | 0485ed0 | fonctionne, bêta, natif |
| FM-1 SID | joakimeriksson | GPL-3.0 | 2260253 | fonctionne |
| FM-106 | PatttF | GPL-3.0 | 3833499 | fonctionne, bêta, natif |
| FMEL-1 | Antonio Altea | GPL-3.0 | 2d69b38 | fonctionne, natif |
| FMini-1 | Ruppert | GPL-3.0 | ab0f5c8 | fonctionne, natif |
| FRASIL | Styves Goupil | MPL-2.0 | 422cac6 | fonctionne |
| Frodhes | Leonardo Mirabal | GPL-3.0 | 33c9730 | fonctionne, bêta, natif |
| GATOR | ivanvoid | GPL-3.0 | 92f923e | vérifié, bêta |
| Golana | Gadlele | GPL-3.0 | 472914d | fonctionne, natif |
| J6 | JackieAlacrity2373 | MPL-2.0 | 1f3fbdb | vérifié |
| Matryoshka | glvno | GPL-3.0 | e3145af | vérifié |
| MODELAR | Hirakos | MPL-2.0 | 89475ca | fonctionne, bêta |
| MONK-1 | Charles Vestal | GPL-3.0 | b21a361 | fonctionne, bêta, natif |
| Monohull | Mark White | GPL-3.0 | 8590e27 | vérifié, bêta |
| MOPE-1 | slothpallas | GPL-3.0-only | 59be1e7 | vérifié, bêta, natif |
| Niagara Drift | evanyerburgh | GPL-3.0 | 802daa8 | fonctionne, bêta, natif |
| NOIZ DEMONS | SPIKE the Percussionist | GPL-3.0 | 4fe0f1a | fonctionne, natif |
| OberVave | zvenson | GPL-3.0 | dc4e5d3 | fonctionne, natif |
| OPN-1 | putchdev | GPL-3.0 | 960c103 | fonctionne |
| S1Vave | Andrew GG | GPL-3.0 | 9730337 | non évalué, natif |
| Shine On | zvenson | GPL-3.0 | 2f37738 | fonctionne, natif |
| SID-1 | putchdev | GPL-3.0 | 1d0555b | fonctionne |
| SLOOP Floyd FM | René Bohne | GPL-3.0 | f8f9f9d | fonctionne |
| TastyWaves | marksweiss | GPL-3.0 | 15fd698 | vérifié |
| Tonitor | Nuno Zimas | GPL-3.0 | 0dccfca | fonctionne |
| Unholy Union | actuallysparky | GPL-3.0 | 3c0dfd9 | fonctionne, bêta, natif |
| Vector37 | genkigenki | GPL-3.0 | 08742a4 | fonctionne, bêta, en ligne |
| ZEN-1 | aceyprime | GPL-3.0 | ec92952 | fonctionne, natif |
Accords (6)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| ChoralRoot | Quixotic7 | GPL-3.0 | 070bd30 | fonctionne, bêta, natif |
| CoralFlower | FicusFicusov | GPL-3.0 | b5ceb99 | fonctionne, bêta, natif |
| fm1-chord | math0ne | GPL-3.0 | 377235d | fonctionne, bêta |
| FoMni | Charles Vestal | GPL-3.0 | 6ecd227 | fonctionne, bêta, natif |
| FuMi-1 | cartesive | GPL-3.0 | 6a20fa3 | fonctionne, natif |
| GuitChordi | Stoogs | GPL-3.0 | 09a4f17 | vérifié, bêta |
Boîte à rythmes (6)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| Cut-A-Dor | Kid Bunka | GPL-3.0 | d9799ab | fonctionne |
| Del Rio | Jess Del Rio | MPL-2.0 | c604e56 | fonctionne, bêta |
| FOMAJAM | konsumer | GPL-3.0 | a80681b | fonctionne, bêta |
| Hortator | DEADACTIVE | GPL-3.0 | 4e40f27 | fonctionne, bêta |
| PIGEON | The Shrimp Blimp | GPL-3.0 | 48f028f | fonctionne, bêta, natif |
| zp12 | zvenson | GPL-3.0 | 7b8b975 | fonctionne |
Tracker (4)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| BEETLE | Joppe Sikken (SikkenWorks) | GPL-3.0 | c8b286a | fonctionne |
| KAWA | Omnipotard (Guizmoh) | GPL-3.0 | a101686 | fonctionne, bêta, en ligne |
| Ketch | risseraka | GPL-3.0 | 58146f3 | fonctionne, bêta |
| SIDOU | Denis Sablić | GPL-3.0 | f508588 | fonctionne, bêta |
Autre (16)
| Firmware | Auteur | Licence | Source | État |
|---|---|---|---|---|
| 386DX | seajaysec | GPL-3.0 | 2caa8fb | fonctionne |
| Berlinan | Jiří Píša | GPL-2.0-or-later | afe2d93 | vérifié, bêta |
| CTL-1 | Charles Vestal | MPL-2.0 | c3c2a7e | fonctionne |
| Dinghy | zvenson | GPL-3.0 | 7c31bb2 | fonctionne, bêta |
| Fart Machine One | adamcharleswilsonmusic-code | GPL-3.0 | 5e49a21 | fonctionne, natif |
| Flyfish | delirioux | GPL-3.0 | 4e5efb8 | fonctionne, natif |
| FM-1 Doom | zvenson | GPL-3.0 | 640bc2d | fonctionne |
| FM1 Quest | Hericdk | GPL-3.0 | 0996503 | fonctionne |
| fm1-dock | joakimeriksson | GPL-3.0 | 3ead086 | fonctionne |
| MIDIMON | ignis32 | MPL-2.0 | e00e863 | vérifié, bêta |
| MIN-1 | Reytian | GPL-3.0 | 8d6dd77 | fonctionne, bêta, natif |
| MORPHEUS | Ben Badio | GPL-3.0 | 945c40c | fonctionne, en ligne |
| No Man Sky FM | Hericdk | GPL-3.0 | 32e7f4c | fonctionne, bêta |
| PurpleMonkey | Quixotic7 | GPL-3.0 | 7590d4a | fonctionne, bêta, natif |
| Rainbow Mode | joshbartlettband-web | GPL-3.0 | 0baf362 | fonctionne, natif |
| Tuna | delirioux | GPL-3.0 | f06047d | fonctionne, natif |
Licences et crédits
- Ce dépôt : licence MIT (
LICENSE), © 2026 Ninjathune-Human, sauf les fichiers ci-dessous, qui reprennent du code sous GPL-3.0 et restent donc sous GPL-3.0 (LICENSES/GPL-3.0.txt) :index.html, dont le panneau (dessin et gestes) est adapté de l'émulateur DUB-1. Le moteur FM-1+VA qu'elle contient, écrit ici d'après le manuel, est sous MIT, comme sa copieengine.js;- les adaptateurs de
tools/worklets/écrits d'après le code de leur firmware :chipbox.js,frodhes.js,hera.js,hortator.js,hortator_sim.c,ravel.js(marquésSPDX-License-Identifier: GPL-3.0-only).
- Polices : M PLUS Rounded 1c et Barlow Semi Condensed, incluses dans
index.html, sont sous SIL Open Font License 1.1 (LICENSES/OFL-1.1.txt). - fm1-emu : licence MIT, © 2026 Joakim Eriksson. Ses fichiers d'exécution sont publiés avec leur licence (
runtime/LICENSE-fm1-emu.txt). - Firmwares : chacun reste sous la licence de son auteur (GPL-3.0 pour la plupart, MPL-2.0 pour neuf d'entre eux, Apache-2.0 pour le firmware officiel V15). Les textes sont dans
firmwares/licences/, et la colonne « Source » renvoie au code source exact de chaque paquet. - Catalogue : établi d'après le FM-1 Firmware Hub de zvenson.
- FM-1+VA est une création de Baud Girl (baudgirl.com) ; son firmware n'est pas redistribué ici.
- M-VAVE et FM-1 sont des marques de leurs propriétaires. Projet indépendant, sans lien avec M-VAVE.