Music Macro Language (MML) is a
music description language used in
sequencing
In genetics and biochemistry, sequencing means to determine the primary structure (sometimes incorrectly called the primary sequence) of an unbranched biopolymer. Sequencing results in a symbolic linear depiction known as a sequence which succi ...
music on
computer and
video game systems.
Background
Early automatic music generation functions were used in arcade games, which used many computer sounds. An example of an early popular Arcade game with music is The ''
Circus
A circus is a company of performers who put on diverse entertainment shows that may include clowns, acrobats, trained animals, trapeze acts, musicians, dancers, hoopers, tightrope walkers, jugglers, magicians, ventriloquists, and uni ...
'' from
Exidy Corporation in 1977.
The boom in Japanese video games was heralded in 1978 by the appearance in Japanese game centers (
Amusement arcade
An amusement arcade (often referred to as a video arcade, amusements or simply arcade) is a venue where people play arcade games, including arcade video games, pinball machines, electro-mechanical games, redemption games, merchandisers (such ...
s) of ''
Space Invaders
is a 1978 shoot 'em up arcade game developed by Tomohiro Nishikado. It was manufactured and sold by Taito in Japan, and licensed to the Midway division of Bally for overseas distribution. ''Space Invaders'' was the first fixed shooter and ...
'' by
Taito
is a Japanese company that specializes in video games, toys, arcade cabinets and game centers, based in Shinjuku, Tokyo. The company was founded by Michael Kogan in 1953 as the importing vodka, vending machines and jukeboxes into Japan. It ...
.
[Compiled by worked in the Pacific Industrial Co.,Ltd. All compiled alone.]
The music was all proprietary (
closed source
Proprietary software is software that is deemed within the free and open-source software to be non-free because its creator, publisher, or other rightsholder or rightsholder partner exercises a legal monopoly afforded by modern copyright and in ...
). The 1978 release of the
Programmable interval timer
In computing and in embedded systems, a programmable interval timer (PIT) is a counter that generates an output signal when it reaches a programmed count. The output signal may trigger an interrupt.
Common features
PITs may be one-shot or periodi ...
by
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, Santa Clara, California. It is the world's largest semiconductor chip manufacturer by revenue, and is one of the devel ...
was significant. The
Intel 8253 Mode 3 Square Wave generator was used for music, in the Kit computer
MZ-40K () by
SHARP Corporation
is a Japanese multinational corporation that designs and manufactures electronic products, headquartered in Sakai-ku, Sakai, Osaka Prefecture. Since 2016 it has been majority owned by the Taiwan-based Foxconn Group. Sharp employs more tha ...
, made in Japan at May 1978. Another Micro computer
BASIC MASTER MB-6880(ja) used a 5Bit D/A converter music automated reference signal. Also important was the development of a method to generate using
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
software.
[PDF file;Micro Computer BASIC MASTER MB-6880 Music method]
- The machine was assembled by
Hitachi, Ltd. and made in Japan in September 1978.
The MZ-40K featured an
open
Open or OPEN may refer to:
Music
* Open (band), Australian pop/rock band
* The Open (band), English indie rock band
* ''Open'' (Blues Image album), 1969
* ''Open'' (Gotthard album), 1999
* ''Open'' (Cowboy Junkies album), 2001
* ''Open'' (Y ...
architecture
Architecture is the art and technique of designing and building, as distinguished from the skills associated with construction. It is both the process and the product of sketching, conceiving, planning, designing, and constructing buildings ...
and
program sources, was therefore a kind of
open source software
Open-source software (OSS) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose. Op ...
.
[Remains ]Apple
An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple trees are cultivated worldwide and are the most widely grown species in the genus '' Malus''. The tree originated in Central Asia, where its wild ances ...
Open technology by Steve Wozniak
Stephen Gary Wozniak (; born August 11, 1950), also known by his nickname "Woz", is an American electronics engineer, computer programmer, philanthropist, inventor, and technology entrepreneur. In 1976, with business partner Steve Jobs, he c ...
in 1977 like Apple
An apple is an edible fruit produced by an apple tree (''Malus domestica''). Apple trees are cultivated worldwide and are the most widely grown species in the genus '' Malus''. The tree originated in Central Asia, where its wild ances ...
Red book Apple Computers
Apple Inc. is an American multinational technology company headquartered in Cupertino, California, United States. Apple is the largest technology company by revenue (totaling in 2021) and, as of June 2022, is the world's biggest company b ...
.
Versions
Classical MML
The first commands for classical MML appeared in the internal architecture of the SP-1002 MONITOR
IOCS and SP-5001
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
Operating Systems on the
MZ-80K 8-bit
In computer architecture, 8-bit integers or other data units are those that are 8 bits wide (1 octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data buses of ...
CPU
A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and ...
is Z-80 Zilog
Zilog, Inc. is an American manufacturer of microprocessors and 8-bit and 16-bit microcontrollers. It is also a supplier of application-specific embedded system-on-chip (SoC) products.
Its most famous product is the Z80 series of 8-bit microp ...
Licensed Secondary source computer. Made by
SHARP Corporation
is a Japanese multinational corporation that designs and manufactures electronic products, headquartered in Sakai-ku, Sakai, Osaka Prefecture. Since 2016 it has been majority owned by the Taiwan-based Foxconn Group. Sharp employs more tha ...
at 1978 in
Japan.
It incorporated
Intel 8253 hardware and memory mapped I/O. The sound-related
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
Statements were MUSIC, TEMPO, and BEEP.
[
-Document(validation) Upper Version SP-5030 -]
Syntax

Classical MML as used in
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
is described here. "''MML Commands''" are supplied to the MUSIC statement. Notes are specified in a three-octave range. A song is a sequence of mono single tones.
"+" (or in some old code, " ̄") indicates upper octave, "- " (or in some old code, "_") indicates the lower octave. The characters "CDEFGAB" correspond to a scale ("Doremi Faso Lassi"). A semitone is indicated by following the note with a '#' character. The note names are followed by a tone length, indicated by a number from 0–9. Similarly, R indicates a rest, and is also followed by a number from 0-9 indicating length.
Sound length Internal value × TEMPO values.Tone length Demisemiquaver is 0 (SP-1002 Internal value is 1)- Whole note is 9 (SP-1002 Internal value is 32).
Music played on Call to $0030 SP-1002
IOCS program routine.
[/]
Statements TEMPO n is 1–9, the slowest 1.TEMPO 4 is similar T=120.
Example
Below is the popular Japanese song "
tōryanse" written using MML in MZ-731 SHARP
S-BASIC 1Z-007B (SP-5001 Upper compatible).
[
Programmed and arranged by
Licensed #AAAP(Including Creative Commons CC-BY-SA and Text of GNU Free Documentation License.).]
10 TEMPO 4
20 A$="E5R1E3R0D3R0E3R0E1R0D1R0-G4R1"
30 B$="F3R0F1R0F1R0A3R0F1R0E1R0D1R0D1R0E5R0"
40 C$="C3R0C1R0C1R0E3R0C1R0-B1R0C1R0-B1R0-A1R0-A1-B5R0"
50 D$="E1R0E1R0E1R0E1R0E1R0E1R0D1R0E1R0E1R0E1R0D1R0-A1R0-A1R0B3R1"
60 E$="-A1R0-B1R0C1R0D1R0E1R0F1R0E1R0F3R1A3R1B1R0A1R0F3R0E3R0E1R0E4R0"
100 MUSIC A$+B$+B$
110 MUSIC C$+C$+B$
120 MUSIC C$+D$+E$
Modern MML
Modern MML originally appeared in
Microsoft BASIC
Microsoft BASIC is the foundation software product of the Microsoft company and evolved into a line of BASIC interpreters and compiler(s) adapted for many different microcomputers. It first appeared in 1975 as Altair BASIC, which was the first ...
and was common in the early 1970s and 1980s on
8-bit
In computer architecture, 8-bit integers or other data units are those that are 8 bits wide (1 octet). Also, 8-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on registers or data buses of ...
and
16-bit
16-bit microcomputers are microcomputers that use 16-bit microprocessors.
A 16-bit register can store 216 different values. The range of integer values that can be stored in 16 bits depends on the integer representation used. With the two mos ...
era
Japanese
personal computer
A personal computer (PC) is a multi-purpose microcomputer whose size, capabilities, and price make it feasible for individual use. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or tech ...
s. The
NEC PC-6001 included Microsoft BASIC and the
Programmable Sound Generator in 1981. The MML was especially popular on
NEC's personal computers, such as the
NEC PC-8801
The , commonly shortened to PC-88, are a brand of Zilog Z80-based 8-bit home computers released by Nippon Electric Company (NEC) in 1981 and primarily sold in Japan.
The PC-8800 series sold extremely well and became one of the three major Japa ...
.
With the 2001 release of the mck (Music Creation Kit) software for compiling MML to play music on the
Nintendo Entertainment System
The Nintendo Entertainment System (NES) is an 8-bit third-generation home video game console produced by Nintendo. It was first released in Japan in 1983 as the commonly known as the The NES, a redesigned version, was released in American ...
,
awareness and use of MML increased.
MML is presently popular among
Japanese electronic musicians
and musicians who create
chiptunes as a way to write music for the
Nintendo Entertainment System
The Nintendo Entertainment System (NES) is an 8-bit third-generation home video game console produced by Nintendo. It was first released in Japan in 1983 as the commonly known as the The NES, a redesigned version, was released in American ...
.
Syntax
Modern MML originated as a sub-language of
BASIC
BASIC (Beginners' All-purpose Symbolic Instruction Code) is a family of general-purpose, high-level programming languages designed for ease of use. The original version was created by John G. Kemeny and Thomas E. Kurtz at Dartmouth College ...
, then generally included in
ROM on micro-computers. A
PLAY
statement uses an
argument
An argument is a statement or group of statements called premises intended to determine the degree of truth or acceptability of another statement called conclusion. Arguments can be studied from three main perspectives: the logical, the dialect ...
to define a string of tones that the sound-chip played. MML code has a simple text format whereby letters and numbers are used to describe the
musical note
In music, a note is the representation of a musical sound.
Notes can represent the pitch and duration of a sound in musical notation. A note can also represent a pitch class.
Notes are the building blocks of much written music: discretizatio ...
s to be played.
In addition, various implementations of MML add system extensions allowing parameters of
audio synthesis to be altered with specialized commands or to simplify the entry of common musical figures such as
arpeggios.
Though many platforms feature custom extensions and
letter case
Letter case is the distinction between the letters that are in larger uppercase or capitals (or more formally ''majuscule'') and smaller lowercase (or more formally ''minuscule'') in the written representation of certain languages. The writing ...
requirements and other minor syntactical features vary slightly in some implementations, the fundamental syntax rules, commands and features that define MML and are present in whole or in part in all implementations are as follows:
*
cdefgab
— The letters
a
to
g
correspond to the
musical pitch
Pitch is a perceptual property of sounds that allows their ordering on a frequency-related scale,
or more commonly, pitch is the quality that makes it possible to judge sounds as "higher" and "lower" in the sense associated with musical melodie ...
es and cause the corresponding
note
Note, notes, or NOTE may refer to:
Music and entertainment
* Musical note, a pitched sound (or a symbol for a sound) in music
* Notes (album), ''Notes'' (album), a 1987 album by Paul Bley and Paul Motian
* ''Notes'', a common (yet unofficial) sho ...
to be played.
Sharp notes are produced by appending a
+
or
#
, and
flat notes by appending a
-
. The length of a note is specified by appending a number representing its length as a fraction of a
whole note
A whole note (American) or semibreve (British) in musical notation is a single note equivalent to or lasting as long as two half notes or four quarter notes. Description
The whole note or semibreve has a note head in the shape of a hollow o ...
— for example,
c8
represents a
C eighth note
180px, Figure 1. An eighth note with stem extending up, an eighth note with stem extending down, and an eighth rest.
180px, Figure 2. Four eighth notes beamed together.
An eighth note ( American) or a quaver ( British) is a musical note pl ...
, and
f+2
an
F♯ half note.
*
p
— A
pause or rest. Sometimes also
r
, although the original IBM and Microsoft BASIC used
p
, as do all clones (e.g. the Linux and BSD speaker devices). The length of the rest is specified in the same manner as the length of a note — for example,
r1
produces a
whole rest.
*
o
— Followed by a number,
o
selects the
octave
In music, an octave ( la, octavus: eighth) or perfect octave (sometimes called the diapason) is the interval between one musical pitch and another with double its frequency. The octave relationship is a natural phenomenon that has been refer ...
the instrument will play in.
*
>
,
<
— Used to step up or down one
octave
In music, an octave ( la, octavus: eighth) or perfect octave (sometimes called the diapason) is the interval between one musical pitch and another with double its frequency. The octave relationship is a natural phenomenon that has been refer ...
.
*
l
— Followed by a number, specifies the default length used by notes or rests which do not explicitly define one. For example,
l8 g a b g l16 g a b g
produces a series of four
eighth note
180px, Figure 1. An eighth note with stem extending up, an eighth note with stem extending down, and an eighth rest.
180px, Figure 2. Four eighth notes beamed together.
An eighth note ( American) or a quaver ( British) is a musical note pl ...
s followed by a series of four
sixteenth note
Figure 1. A 16th note with stem facing up, a 16th note with stem facing down, and a 16th rest.
Figure 2. Four 16th notes beamed together.
In music, a 1/16, sixteenth note ( American) or semiquaver ( British) is a note played for half the d ...
s.
*
v
— Followed by a number, sets the
volume
Volume is a measure of occupied three-dimensional space. It is often quantified numerically using SI derived units (such as the cubic metre and litre) or by various imperial or US customary units (such as the gallon, quart, cubic inch). Th ...
of the instrument. The range of values allowed is dependent upon the specific sound hardware being used. Some implementations also allow an
ADSR envelope ADSR may refer to:
*ADSR envelope (attack decay sustain release), a common type of music envelope
* Accelerator-driven sub-critical reactor, a nuclear reactor using a particle accelerator to generate a fission reaction in a sub-critical assembly of ...
to be applied to the amplitude of each note.
*
t
— Followed by a number, sets the
tempo
In musical terminology, tempo ( Italian, 'time'; plural ''tempos'', or ''tempi'' from the Italian plural) is the speed or pace of a given piece. In classical music, tempo is typically indicated with an instruction at the start of a piece (ofte ...
in
beats per minute
Beat, beats or beating may refer to:
Common uses
* Patrol, or beat, a group of personnel assigned to monitor a specific area
** Beat (police), the territory that a police officer patrols
** Gay beat, an area frequented by gay men
* Battery ( ...
. On hardware with more than one sound channel, it is often possible to set each channel to a different tempo.
In addition to these, most implementations add their own keywords and symbols for system-specific enhancements or extensions.
Example
Below is a Modern MML transcription of
Dance of the Cuckoos (with white-space for clarity, though some MML interpreters will require this to be stripped before playing).
t104
l4
>
c16f16
a>c8c8c8c8c8c8c8c8
SMX
Standard Musical eXpression (SMX) is a variant of Modern MML provided by Microsoft in QBASIC, BASICA, and GW-BASIC
GW-BASIC is a dialect of the BASIC programming language developed by Microsoft from IBM BASICA. Functionally identical to BASICA, its BASIC interpreter is a fully self-contained executable and does not need the Cassette BASIC ROM found in the ori ...
's statement. The version used by GW-BASIC is part of the modern BSDs, FreeBSD
FreeBSD is a free and open-source Unix-like operating system descended from the Berkeley Software Distribution (BSD), which was based on Research Unix. The first version of FreeBSD was released in 1993. In 2005, FreeBSD was the most popular ...
,[FreeBSD speaker(4) manual page]
/ref> NetBSD
NetBSD is a free and open-source Unix operating system based on the Berkeley Software Distribution (BSD). It was the first open-source BSD descendant officially released after 386BSD was forked. It continues to be actively developed and is a ...
, OpenBSD
OpenBSD is a security-focused operating system, security-focused, free and open-source, Unix-like operating system based on the Berkeley Software Distribution (BSD). Theo de Raadt created OpenBSD in 1995 by fork (software development), forking N ...
, and MirOS; see speaker(4) for the language.[
]
Languages, platforms and software
* Epic Games
Epic Games, Inc. is an American video game and software developer and publisher based in Cary, North Carolina. The company was founded by Tim Sweeney as Potomac Computer Systems in 1991, originally located in his parents' house in Potomac, ...
's ZZT
''ZZT'' is a 1991 action-adventure puzzle video game and game creation system developed and published by Potomac Computer Systems for MS-DOS. It was later released as freeware in 1997. It is an early game allowing user-generated content using ob ...
and Super ZZT
''ZZT'' is a 1991 action-adventure puzzle video game and game creation system developed and published by Potomac Computer Systems for MS-DOS. It was later released as freeware in 1997. It is an early game allowing user-generated content using ...
, as well as the open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
clone
Clone or Clones or Cloning or Cloned or The Clone may refer to:
Places
* Clones, County Fermanagh
* Clones, County Monaghan, a town in Ireland
Biology
* Clone (B-cell), a lymphocyte clone, the massive presence of which may indicate a pathologi ...
named MegaZeux, use a very compact variant of MML for the PLAY command, with only one channel for the PC Speaker
A PC speaker is a loudspeaker built into some IBM PC compatible computers. The first IBM Personal Computer, model 5150, employed a standard 2.25 inch magnetic driven (dynamic) speaker. More recent computers use a tiny moving-iron or pie ...
* Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
's QBASIC, BASICA, and GW-BASIC
GW-BASIC is a dialect of the BASIC programming language developed by Microsoft from IBM BASICA. Functionally identical to BASICA, its BASIC interpreter is a fully self-contained executable and does not need the Cassette BASIC ROM found in the ori ...
all feature a PLAY
statement which takes a string
String or strings may refer to:
*String (structure), a long flexible structure made from threads twisted together, which is used to tie, bind, or hang other objects
Arts, entertainment, and media Films
* ''Strings'' (1991 film), a Canadian anim ...
argument in the SMX format. The name "Music Macro Language" may originate with GW-BASIC, which provided a facility "to play music by embedding a music macro language into the string data type." The SBasic compiler from the German magazine DOS Extra, produced by DMV Widuch, offers the same PLAY command, and a few-line BASIC programme could be compiled into a small (few KiB) tool to play any MML files (often called *.PLY) given on the command line.
** Eric S. Raymond wrote a UNIX System V driver that offers /dev/speaker in a GW-BASIC
GW-BASIC is a dialect of the BASIC programming language developed by Microsoft from IBM BASICA. Functionally identical to BASICA, its BASIC interpreter is a fully self-contained executable and does not need the Cassette BASIC ROM found in the ori ...
-compatible format. It was subsequently ported to 386BSD and is present modern BSD operating systems.[speaker(4) manual page]
/ref>
* The NEC PC-8801
The , commonly shortened to PC-88, are a brand of Zilog Z80-based 8-bit home computers released by Nippon Electric Company (NEC) in 1981 and primarily sold in Japan.
The PC-8800 series sold extremely well and became one of the three major Japa ...
's BASIC dialect, N88-BASIC, used MML in its PLAY
statement, as did several other implementations of BASIC produced or sold by NEC.
** Chiptune composer Yuzo Koshiro created a heavily modified version. According to Koshiro, it "was more a BASIC-style language at first, but I modified it to be something more like Assembly
Assembly may refer to:
Organisations and meetings
* Deliberative assembly, a gathering of members who use parliamentary procedure for making decisions
* General assembly, an official meeting of the members of an organization or of their representa ...
. I called it ‘Music Love'. I used it for all the '' Bare Knuckle'' Games."[ Reprinted from ]
* Various MML utilities were written for the NEC PC-9801
The , commonly shortened to PC-98 or , is a lineup of Japanese 16-bit and 32-bit personal computers manufactured by NEC from 1982 to 2000. The platform established NEC's dominance in the Japanese personal computer market, and, by 1999, more ...
family of computers, including PMD (Professional Music Driver) by game composer Masahiro Kajihara (most commonly known as KAJA), which was used by composer Ryu Umemoto for games like ''EVE Burst Error'' and ''Grounseed'', as well as by game developer ZUN for most of his first five ''Touhou Project
The , also known simply as , is a bullet hell shoot 'em up video game series created by one-man independent Japanese ''doujin'' soft developer Team Shanghai Alice. Since 1995, the team's member, Jun'ya "ZUN" Ōta, has independently develope ...
'' games.
* The mck, pmck, and ppmck utilities for creating Nintendo Entertainment System
The Nintendo Entertainment System (NES) is an 8-bit third-generation home video game console produced by Nintendo. It was first released in Japan in 1983 as the commonly known as the The NES, a redesigned version, was released in American ...
music, and a number of other tools for creating music for other hardware, such as the Bandai WonderSwan
The (ワンダースワン) is a handheld game console released in Japan by Bandai. It was developed by Gunpei Yokoi's company Koto Laboratory and Bandai, and was the last piece of hardware Yokoi developed before his death in 1997. Releas ...
, the NEC PC Engine
The TurboGrafx-16, known as the outside North America, is a home video game console designed by Hudson Soft and sold by NEC Home Electronics. It was the first console marketed in the fourth generation, commonly known as the 16-bit era, thoug ...
, and the Sega Mega Drive.
* The xpmck utility for creating music for various systems, including the Sega Master System, Sega Game Gear, Sega Mega Drive, Nintendo Game Boy
The is an 8-bit fourth generation handheld game console developed and manufactured by Nintendo. It was first released in Japan on April 21, 1989, in North America later the same year, and in Europe in late 1990. It was designed by the same te ...
, and Commodore 64.
* Some cellular phone
A mobile phone, cellular phone, cell phone, cellphone, handphone, hand phone or pocket phone, sometimes shortened to simply mobile, cell, or just phone, is a portable telephone that can make and receive calls over a radio frequency link whi ...
s utilize MML as a ringtone
A ringtone, ring tone or ring is the sound made by a telephone to indicate an incoming call. Originally referring to and made by the electromechanical striking of bells, the term now refers to any sound on any device alerting of a new incoming ...
format. The RTTTL ringtone language exhibits many of the characteristics of MML.
* An escape sequence
In computer science, an escape sequence is a combination of characters that has a meaning other than the literal characters contained therein; it is marked by one or more preceding (and possibly terminating) characters.
Examples
* In C and ma ...
was defined to allow terminal programs play music encoded in MML. Because of this music in MML is sometimes called ANSI Music.
* On the MSX
MSX is a standardized home computer architecture, announced by Microsoft and ASCII Corporation on June 16, 1983. It was initially conceived by Microsoft as a product for the Eastern sector, and jointly marketed by Kazuhiko Nishi, then vice-p ...
computer system, the built-in MSX BASIC also uses MML with PLAY-command. Comma separated strings represent separate voice channels. Music hardware expansions such as MSX-Music, MSX-Audio and MSX-MIDI expand PLAY-command so that also FM-chips and external MIDI devices can be controlled through MML.
*Sharp Pocket computer music routine PLAYX
MyArchive
Nihongo -> :ja:ポケットコンピュータの製品一覧.
Macrotune
is a free MML editor available for Windows and OS X while also offering Shared libraries
In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and su ...
for software/game developers.
FlopPI-Music
archived old documentation page
uses an extended format with a file header with metadata (such as Author, Title, etc.), a newline, and then one line for each staff, supporting multiple instruments, with bar lines. It's designed to output to up to eight 3½″ floppy disc drives on Raspberry Pi GPIO ports. It also contains
standalone MML parser and MusicXML exporter
library and utility, tested with MuseScore, allowing easy debugging of especially mass-parallel MML files, score sheet printing (ideally after some minimal postprocessing, but the defaults are usually legible), etc. – Floppi-Music and MMLlib is Free Software written in pure Python.
* Petit Computer and SmileBASIC both offer BGMPLAY
functions, which can either take a preset MML track or one provided as a string.
* An MMO called Mabinogi
The ''Mabinogion'' () are the earliest Welsh prose stories, and belong to the Matter of Britain. The stories were compiled in Middle Welsh in the 12th–13th centuries from earlier oral traditions. There are two main source manuscripts, create ...
allows players to type MML code onto in-game music score scrolls which can then be played for everyone nearby to hear using an equipped instrument. Due to that social aspect, users often made their own MML versions of popular songs and uploaded them to fan sites. The game also teaches users the syntax via skill books, which doubled as a way to unlock a higher size limit when writing the code. ArcheAge MMO provides the same features.
* A Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
program calle
3MLE
was made by a Mabinogi user to assist in writing MML scrolls. The program functions similarly to an IDE, allowing the user to write, optimize, and test MML code for different instruments.
See also
* Chiptune
* Electronic music
Electronic music is a Music genre, genre of music that employs electronic musical instruments, digital instruments, or electronics, circuitry-based music technology in its creation. It includes both music made using electronic and electromech ...
* HTML5 audio
HTML5 Audio is a subject of the HTML5 specification, incorporating audio input, playback, and synthesis, as well as speech to text, in the browser.
<audio> element
The element represents a sound, or an audio stream. It is commonly use ...
* MIDI
MIDI (; Musical Instrument Digital Interface) is a technical standard that describes a communications protocol, digital interface, and electrical connectors that connect a wide variety of electronic musical instruments, computers, an ...
* Synthetic music mobile application format
References
{{reflist
Music notation file formats
Video game music file formats
Audio programming languages
Free audio software
Electronic music software
Video game music technology