ストトン表記とは、音楽を日本語で打ち込むための構文で、簡単に音楽を打ち込むことができます。
MML表記よりは機能に劣りますが、MML表記とストトン表記の混在は可能です。
すととんは、付属のnsc.exeをご使用の場合はShift-JISで記述してください。
それ以外の環境にてビルドした場合は、その環境に合わせた文字コードで記述してください。
曲や効果音の設定・記述をするためのコマンド群です。
| コマンド | 内容 |
|---|---|
| 曲名 "曲名" | タイトル名を設定します。 |
| 作曲 "作曲者" | 作曲者を設定します。 |
| 作者 "作者" | 著作権者を設定します。 |
| コード "コード名" | リンクする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表記 | 内容 |
|---|---|---|
| ラ | 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_-4 | meno mosso |
| → | t_+4 | piu 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フレームで変化します。 |
// 音量推移パターン
エンベロープ(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フレームで変化します。 |
// 音程推移パターン
ビブラート(0){ 0 D15 L 1 2 3 2 1 0 -1 -2 -3 -2 -1 }