



NDP (PSG Driver for MSX) / #MSXNDP          Programmed by naruto2413
--------------------------------------------------------------------
                                                                メモ




【不具合っぽく見えるけど仕様】

・初回の起動が重い（Defenderの検索が走るため）

・エンベロープ定義やリズムトラックのノート情報で、1文字のコマンド名と被るアルファベットがハイライトの対象になってしまう

・ビブラートやポルタメントで周波数レジスタの上位が変わる値をまたぐ時にプチノイズが鳴る（o4aでビブラートをかける時などは、ビブラートを片方にだけ振幅するタイプに変更すれば対処は可能）

・ピッチエンベロープの遷移中にリリースディレイが発動するとピッチがずれる（前フレームからの相対値となるため。@Pコマンドの第2パラメータを1にしてリリース中のピッチエンベロープを切るのが確実？）

・ハードエンベロープによる非矩形波をq8で鳴らすと、2音目以降のアタック部分で1フレーム後にプチノイズが乗る（@q1で対処する）

・#REPEAT-MODE 0以外でShift+F5キーなどの頭出し再生の位置が不正確

・トラックの行頭に空白やタブを含めている場合、再生中のトラックハイライトがトラック名ではなく左端に反映されてしまう




【既知の不具合】

・しばらく使っているとMMLコンパイル直後に落ちることがある

・ポルタメント中のトラックにリズムを割り込ませると、1フレームだけ到達音程が鳴ることがある

・データによってピアノロールの位置が徐々にずれていくことがある（#ADJUST-PIANOROLLで補正は可能）




【TODO】

※頂いた要望を列挙していますので、実装予定のないものも含みます。

・効果音や各種定義アドレス相対・絶対を任意に指定（現在は4000H以降なら常に絶対アドレスとして判定）
・効果音の発音中はリズムトラックを鳴らさないようにする
・メインウィンドウ側にもピアノロール表示が欲しい
・音長を揺らすコマンド（音長シーケンスとの差別化を考えて設計する必要がありそう）
・音色データ内で「H-」を使ったときもポルタメントを効かせたい（SE的な音を出せる）
・ドライバ側で処理するマクロ（データを使い回して省メモリになるマクロ）
・キーバインド
・127で半音になるデチューン（@\とか？）
・音量ノーマライズ（voコマンドで代用できるので要らないかも）
・viのディレイ（音色定義で代用できるので優先順位は低め）
・全トラックのタイミングを揃えるコマンド
・リリースエンベロープ
・スライス
・リズムのダッキング
・コード名機能
・エディタ上でWAVファイルなどを再生する機能（耳コピ用？）
・SCC対応（音色エディタとモーフィングもやりたい）
・OPLL対応（9音リズムも考慮したい）
・donationとかpaypal meとか←




