Quick start 빠른 시작 · クイックスタート
Just listen to a song
CD SONG
MUCPLAY SONG.MUC
Press any character key or Esc to stop.
Edit, hear, repeat
MUCEDIT SONG.MUC
Inside the editor: F1 2 to compile → read the result →
F1 3 to play. Like what you hear? Ctrl+S to save.
You do not have to save before compiling — MUCEDIT compiles the buffer in memory.
Work from DOS and export
MUCPLAY /LOAD SONG.MUC ← read the source into memory
MUCPLAY /COMPILE ← compile it (nothing is written to disk yet)
MUCPLAY /PLAY ← listen
MUCPLAY /MUB SONG.MUB ← export compiled song data
MUCPLAY /VGM SONG.VGM ← export a chip-command log
MUCPLAY /RELEASE ← free the session when you are done
Edited the .MUC in another editor? Run /LOAD again —
/COMPILE alone recompiles the copy already in memory.
Convert without playing — one song, or a whole album
MUC2MUB SONG.MUC ← writes SONG.MUB
MUC2MUB SONG.MUC TEST.MUB ← or name the output yourself
For a whole album, let DOS drive it. Put this in BUILD.BAT:
@ECHO OFF
MUC2MUB SONG01.MUC
MUC2MUB SONG02.MUC
MUC2MUB SONG03.MUC
MUC2MUB returns 0 on success and 1 on failure, so a shell can check
each song. It does not stop the batch by itself when one song fails — and a
.MUB left over from an earlier run will still be sitting there, so never count files to
decide whether a batch succeeded.
MML at a glance
| Channel | Sound source |
A B C | FM 1–3 |
D E F | SSG 1–3 |
G | Rhythm |
H I J | FM 4–6 |
K | ADPCM / PCM |
FM is not a continuous run from A to F — D, E,
F are SSG, and FM continues at H.
#mucom88 1.7
#title First Steps
#composer ToughkidCST
D T120 C128 o4 l8 v10 q0 cdef gab>c4 r4
E C128 o3 l4 v8 c r g r c r g r
F C128 o2 l2 v7 c g c g
Case matters: c is a note but C sets the base clock;
t225 is a raw Timer-B value while T120 is BPM.
Two gotchas worth knowing up front
/L does not mean the same thing everywhere.
| Command | /L5 means |
MUCPLAY SONG.MUC /L5 | play 5 times |
MUCPLAY /VGM SONG.VGM /L5 | export 5 playthroughs |
MUBPLAY SONG.MUB /L5 | play 5 times |
MUBPLAY SONG.MUB /V /L5 | export 5 seconds |
Source, editor, page and total DATA limits are separate.
These are the current extended-build limits; adding RAM does not automatically raise them.
| Limit | Value | Applies to |
| Editing buffer | 60,000 bytes | MUCEDIT after newline normalization, four 16 KiB banks |
| Source file | 65,536 bytes (64 KiB) | MUC2MUB / MUCPLAY input, including tags, comments and line endings |
| One page stream | 59,546 bytes OPNA / 59,106 bytes native MSX | Separate from total DATA |
| Compiled music DATA | 122,880 bytes (120 KiB) | Notes, structures and FM voices together |
Final .MUB | May exceed 120 KiB | Header + DATA + tags + PCM; format, loader and free-memory limits still apply |
A 40 KiB source is within the editor's size limit. Macro expansion can still exceed a page or total DATA limit.
Ordinary songs retain MUB8; OPNA extensions use muPb 0100, native MSX targets use msPb0100, and SCC/SCC+ SSG extension uses msPb0101. A–K each support pages 0–9 sharing one physical YM2608.
A 512 KiB mapper does not guarantee that every large song fits with other sessions resident.