ストトン表記

ストトン表記とは、音楽を日本語で打ち込むための構文で、簡単に音楽を打ち込むことができます。
MML表記よりは機能に劣りますが、MML表記とストトン表記の混在は可能です。

すととんは、付属のnsc.exeをご使用の場合はShift-JISで記述してください。
それ以外の環境にてビルドした場合は、その環境に合わせた文字コードで記述してください。

全体のコマンド

曲や効果音の設定・記述をするためのコマンド群です。

コマンド一覧
コマンド 内容
曲名 "曲名" タイトル名を設定します。
作曲 "作曲者" 作曲者を設定します。
作者 "作者" 著作権者を設定します。
製作者 "製作者" 製作者を設定します(NSF2, NSFe)。
テキスト "テキスト" テキストを設定します(NSF2, NSFe)。
音楽順番 {順番} BGMの演奏順番を設定します(NSF2, NSFe)。
効果音順番 {順番} SE の演奏順番を設定します(NSF2, NSFe)。
コード "コード名" リンクするNSF用のROMコードを指定します。(Default: name = `nsd.bin')
読む "ファイル名" 外部ファイルを呼び込みます。
音楽数 n BGMの曲数を設定します。(Default: n = 1)
効果音数 n SE の曲数を設定します。(Default: n = 0)
エンベロープ(n){
音量推移パターン
}
n番の音量推移(エンベロープ)パターンの記述ブロックです。
音量推移(エンベロープ)パターンの記述は、音量推移(エンベロープ)パターンの記法の項を参照ください。
ビブラート(n){
音程推移パターン
}
n番の音程推移(ビブラート)パターンの記述ブロックです。
音程推移(ビブラート)パターンの記述は、音程推移(ビブラート)パターンの記法の項を参照ください。
音楽(n){
音楽データ
}
n番目のBGMのシーケンスの記述ブロックです。
シーケンスパターンの記述は、音楽・効果音の記法の項を参照ください。
番号は0からカウントします。
効果音(n){
効果音データ
}
n番目のSE のシーケンスの記述ブロックです。
シーケンスパターンの記述は、音楽・効果音の記法の項を参照ください。
番号は0からカウントします。
;コメント 1行コメントです。改行までの記述を無視します。
(各記述ブロック内でも有効です)
//コメント 1行コメントです。改行までの記述を無視します。
(各記述ブロック内でも有効です)
/*コメント*/ 範囲コメントです。 /* と */ の間の記述を無視します。
(各記述ブロック内でも有効です)

音楽・効果音の記法

シーケンスパターンの記法です。

ストトン表記 同等のMML表記内容
曲名 "曲名" #label "strings" 曲名を設定します。
作曲 "作曲者" #author "strings" 作曲者を設定します。
時間 n #time n 演奏時間をmsec単位で設定します。
フェードアウト n #fade n フェードアウト時間をmsec単位で設定します。
a音符 (A, La, ラ)
b音符 (B, Si, シ)
c音符 (C, Do, ド)
d音符 (D, Re, レ)
e音符 (E, Mi, ミ)
ファ f音符 (F, Fa, ファ)
g音符 (G, Sol, ソ)
^タイ
ン, ッ r休符
音符 l音長を省略した時に適用する音長
音色 @音色
音階 oオクターブ
↑, 上 >オクターブ+1
↓, 下 <オクターブ−1
"オクターブ−1(次の音符のみ)
`オクターブ+1(次の音符のみ)
音量 v音量
小さく(音量−1
大きく)音量+1
調{} K{}調号(自動臨時記号)
エコー EC疑似エコー
エコーオフ EC*疑似エコー・オフ
エンベロープ Ev音量推移パターンの指定
エンベロープオフEv*音量推移オフ
ゲート qゲートタイム(発音終了を早めるtick数)
ディチューン Dディチューン
テンポ tテンポ
t_-4meno mosso
t_+4piu mosso
トラック TRトラック
ビブラート Emビブラート・パターンの指定
ビブラートオフ Em*ビブラート・オフ
ポルタメント Pポルタメント
L無限ループの開始位置
【 : 】 [ : ]リピート(A)
|: ¥ :| |: \ :|リピート(B)
|小節線(コンパイルには反映されません)

音量推移(エンベロープ)パターンの記法

音量推移(エンベロープ)パターンの記法です。

Command Contens
n 音量値(n = 0 〜 15)
Dn 前回の音量値をn+1フレーム間維持します。(n = 0 〜 255)
L Rコマンド、又はパターン最後まで行った時の戻り先を指定します。
Rコマンドの後に書かれた場合は、キーオフ後のパターンにおける戻り先となります。
Rコマンド前でLコマンドを省略した場合、Rコマンドの直前のコマンドを繰り返します。
Rコマンド後でLコマンドを省略した場合、パターン定義最後のコマンドを繰り返します。
R 以後を、キーオフ後のパターンとします。
リリースのパターンを指定しない場合、キーオフ後もそのままパターンが継続されます。
(start,end,length)startからendまでlengthフレームで変化します。

例(Sample)

// 音量推移パターン
エンベロープ(0){	15 D10 14 13 12  L 11 11 10 10 9 9 10 10 R 9 8 7 6 5 L 4 4 3 3 2 2 3 3	}

音程推移(ビブラート)パターンの記法

音程推移(ビブラート)パターンの記法です。

Command Contens
n 音程値(n = -64 〜 63)(※16=100cent)
Dn 前回の音量値をn+1フレーム間維持します。(n = 0 〜 255)
L Rコマンド、又はパターン最後まで行った時の戻り先を指定します。
Rコマンドの後に書かれた場合は、キーオフ後のパターンにおける戻り先となります。
Rコマンド前でLコマンドを省略した場合、Rコマンドの直前のコマンドを繰り返します。
Rコマンド後でLコマンドを省略した場合、パターン定義最後のコマンドを繰り返します。
R 以後を、キーオフ後のパターンとします。
リリースのパターンを指定しない場合、キーオフ後もそのままパターンが継続されます。
(start,end,length)startからendまでlengthフレームで変化します。

例(Sample)

// 音程推移パターン
ビブラート(0){	0 D15 L 1 2 3 2 1 0 -1 -2 -3 -2 -1	}

数値の記法

0〜9で始まる数値は、10進数とみなします。
$で始まる数値は、16進数とみなします。
%で始まる数値は、2進数とみなします。

※数値は半角で記述して下さい。全角には対応していません。