Skip to content
ToughkidCST edited this page Sep 16, 2026 · 4 revisions

MUCOMSX Wiki

MUCOM88 for MSX — composing guide

The repository manuals tell you how to drive the tools: which key compiles, what an error code means, how a session works. This wiki is about writing the music — MML technique, and how to bring FM voices and PCM banks made on a PC over to the MSX.

🇰🇷 한국어 · 🇯🇵 日本語


The one thing to understand first

MUCOMSX plays music. It does not create sound assets.

There is no FM voice editor and no PCM sample converter on the MSX side — and there was never meant to be. A YM2608 voice is 25 bytes of operator parameters that you want to hear while you tweak them, and an ADPCM bank starts life as a 16-bit WAV file. Neither job fits comfortably in 24 KiB of MSX text buffer.

So the work splits in two:

Where What you do there
PC (Windows) Design FM voices, build the PCM bank, audition ideas quickly
MSX Write and edit MML, compile, play on real YM2608 hardware, export .MUB / .VGM

The assets cross once, as plain files. After that the MSX side is self-sufficient.

flowchart LR
  subgraph PC["PC / Windows"]
    T["FmToneEditor"]
    W["WAV samples"]
  end
  subgraph MSX["MSX"]
    S["SONG.MUC"]
    O["SONG.MUB"]
    S -- "compile — MUCPLAY / MUC2MUB" --> O
  end
  T -- "VOICE.DAT" --> S
  W -- "MUCOMPCM.BIN" --> S
Loading

See Workflow for the whole path, step by step.


Pages

Available now

Page What it covers
Workflow The full PC → MSX path, file naming, what to copy and when
Tools and Links MUCOM88 Windows, converters, upstream documentation

Being written

Not published yet — the titles below are the plan, so they are deliberately not links.

Page What it will cover
MML Basics File structure, header tags, channels A–K, notes, lengths, octaves, tempo
MML Reference Expression commands, repeats, macros, portamento, the advanced table
FM Voices Designing voices on a PC, the @ formats, libraries vs. inline definitions
PCM and ADPCM Building a bank from WAV files, the K channel, how PCM ends up inside a .MUB
Rhythm The G channel, its seven-value volume form, writing patterns
Limits and Specs Every size limit in one table, and which one you actually hit
Troubleshooting Symptom → cause, for silent channels, wrong voices, missing PCM

Until those land, the MUCEdit manual documents the MML syntax and every compile error code, and the upstream onitama/mucom88 wiki is the canonical MUCOM88 reference.


Before you start

You need a working MSX side first. The repository README covers the requirements — MSX2 or later, MSX-DOS2 or Nextor, 512 KB mapper recommended, and a MAKOTO (YM2608) cartridge for playback.

On the PC side you want MUCOM88 Windows from ONION software. It runs standalone and is where the voice editor and the PCM bank builder live.

A note on syntax. MUCOMSX targets the MUCOM88 v1.7 family and outputs the MUB8 format. Most MML you find written for MUCOM88 will compile, but MUCOMSX is not a bit-for-bit clone of every MUCOM88 derivative. Where this wiki states a limit or a behaviour, it describes MUCOMSX. For the upstream project's own reference, see onitama/mucom88 wiki.


Contributing

Corrections and additions are welcome. If something here is wrong, or a technique is missing, open an issue on the issue tracker — Korean, Japanese and English are all fine.

MUCOMSX Wiki

🇺🇸 English

🇰🇷 한국어

🇯🇵 日本語


More pages are being written — see Home for the list.

Repository · Issues

Clone this wiki locally