2.6 Details of MML
Here, it explains details of MML described in the DATA initialization statement that the PLAY/EFFECT instruction and the SETSONG instruction decipher. Here, please note the following respect.
. MML is specified by the character string that encloses it with double quotation ("), and you may not exist, except when there is colon (:) when describing it in the DATA initialization statement.
. Capital letter/small letter of the alphabet is distinguished.
. Please divide by the delimitation eyes of the command when describing it dividing into two or more lines. Moreover, please do not separate the character string to the timer, Ren, and the harmony specification. It is not possible to perform correctly then because it is judged that specification ended when separating.
Example 1
PLAY "127" PLAY that becomes "@44 CDE" error of PLAY "@44 CDE@V" →
PLAY "@V127"
Example 2
Specified mistake PLAY "@44 CDE&E" Thailand "EDC EC ..".. DE … of PLAY "@44 CDE&" →PLAY" PLAY" CDE"
. Please arrange "Time" length of each track when you describe two or more tracks. For instance, the third bar of the track "1" becomes Yas, and time length is adjusted between the following separators when describing in the track "0" for three bars, and describing it in the track "1" only by two bars (It is set to the longest track). Timing never shifts even if it specifies it for the first time at the stage used without purposely specifying Yas when there is a track not used by the performance part by using this.
When the entire performance time is less than Yas of 128 minutes (direct length 15) when describing it with MML, it becomes "Sound:MML String too short" error.

It doesn't become "C128" error of PLAY.
PLAY "C115"
It becomes "C114" error of PLAY.
It doesn't become "C114 Cl1" error of PLAY.

It becomes an error when DATA#0 and ending "T150O5" here (There is no actual performance time).
DATA -
It doesn't make an error of the performance time of DATA#0 and actual "C128" if there is for 128 minutes more than the note.
DATA ENDSONG

MML command
Command that can be described only in base track
The base track indicates the youngest track number when two or more tracks are described. In this MML, the symbol manipulation of the tempo change and the loop control related to the entire track is based and everything is based on the base track. When the command to which "BASE" has adhered next to the command name is described besides the base track, it becomes an error. T tempo is specified. ( Tempo )
The dc da capo is specified. (infinite loop specification)
$Sanyo is specified. (beginning position specification of repetition)
Ds Dalsanyo is specified. (terminal position specification of repetition)
* It slips out the repetition performance part, and it skips to the following MML of Dalsanyo with the corresponding label. (The coda sign and the toCoda sign are held concurrently. )
:The starting position of | repetition is specified.
|: The terminal title value of the repetition is specified.
:Position ..|: Position terminal "..:.. | of repetition".. "of the following repetition | :"is specified at the same time.
The position performed to times |11 is specified.
:The position performed |2 secondarily is specified.

Common command to each track
\ macro is registered, and developed.
The location of the DSP effect (bread jar) is specified for the mixer of the DSP output channel that specifies ep.
The level of the DSP effect is specified for the mixer of the DSP output channel that specifies el.
The effector is switched or is specified at the single ec effector mode. (Fix "0" at the multi effector mode. )

Command of each track that can be specified
It <音色番号>changes to musical instruments or the effect sounds in which @ tone is specified.
S prepares and specifies. ( Signature )
The sound name that describes K is shifted in each semitone (Key transpose). The octave sign is held concurrently.
The volume is specified according to V track. ( Volume )
The volume according to the @V track is specified in detail. ( Volume )
The volume ..[.. is relatively raised.
] The volume is relatively lowered.
The location of the sound of each P track (bread jar) is specified. ( Pan )
O octave is specified. ( Octave )
The length of L sound is specified. ( Length )
The default value of the speed of v the key on (strength) is specified. ( Velocity )
ppp/ pp/ p/ mp/ mf/ f/ ff/ fff  The default value of the velocity is set.
When the key turning it on to the length of q note, the ratio between is set (Quantity and the staccato function are included). The calculation value of molecule/denominator becomes it compared with Gate/Delta.
It controls concerning the specification of the sound name to pronounce A~G and on.
(…) In the same track, harmony is specified.
Specify.
The interval is specified by N note number. ( Note )
R Yas is specified. ( Rest )
One < octave is lowered.
One > octave is raised.
& Thailand is specified. ( tie )
_ slur is specified. ( Slur )
% damper is controlled.
Function..read..value..trigger..signal..hit..control command..bury.
The sound with a different two or more tones and pitches is performed to/one note on command repeatedly (software layer). When the option is not specified, on/off of the software layer function is switched with the toggle.
It is a separator of | bar.
The part that enclosed it with this ^ sign is not performed.

MML command details list
Each command of MML is described by the following formats. The command name is shown on this bar.
The kind of the command is shown on this bar.
Function
Function of each command
Format
Format of each command
Parameter
Value specified for each command and the explanation
Operation is detailed.
More detailed explanation of each command
Attention
Notes when each command is used
Example
Sample of usage that uses command actually written