Repository navigation
Releases: madscient/Y8960SeqConverter
Releases · madscient/Y8960SeqConverter
Release list
y8conv v0.2.0
Y8960 カートリッジの構成の変更と、Y8SQ 形式の変更に合わせた版。FM-BIOS(OPLLDRV)と MuSICA のドライバのプログラムを読み、写し方を元のドライバの動作に合わせた。
前の版と互換性の無い変更
- 書き出すシーケンスデータの形式が変わった。v0.1.0 で変換したファイルは、新しい読み手では正しく鳴らない。変換し直す
- SCC のトラックはデバイス 3 に書く
- FM の音色は 12 バイトのレジスタイメージの形で書く
- 音量は 1 が 0.75 dB の目盛り(
Vn が 4n + 67)で書く - YM2413 の内蔵音色は
82の 1-15 で選ぶ
変更
- すべてのトラックの頭で、定位を中央にする。元の音源はモノラルなので中央で鳴らす。Y8960 の定位は曲をまたいで残るため、前に鳴らした曲が寄せた定位を毎回戻す
- リズムの音量を、楽器ごとの通常音量(
D8)にそのまま写す。v0.1.0 は 2 段階の音量に振り分けていた - MuSICA の SCC の音量は、Y8960 の表を通さずに書く(
B3 0)。元のドライバと同じく、値をそのまま音量レジスタに書く - MuSICA のソフトウェアエンベロープは、元のバイトをそのまま書く。Y8960 に無い値(上位か下位が 0)だけを近い速さに寄せて警告する
- OPLLDRV の写し方を元のドライバに合わせた
- 拡張音色(
82h)に、Y8960 のプリセットが持つ移調を掛けない 82hと83hはユーザー音色の中身を設定するだけで、選ばない(70hで選ぶ)- サステインは
80hで設定、81hで解除(仕様書の記述とは逆) - レガートの音符のあとの休符はキーに触れず、次の音符へつながる
- Q は下位 3 ビットを使う
- 音量と音色の初期値は、FM-BIOS が起動時に設定する値
- 拡張音色(
- 楽器を指定しないリズムの音量は何もしない(元のドライバと同じ)。MuSICA のリズムの
C1hは待つだけにする - OPLLDRV の拡張音色の番号が 64 以上なら警告する
何が何に写るか、元と鳴り方が違うところは doc/conversion.md にある。
鳴らすには
Y8960Sequencer v0.2.0 以降で鳴る。v0.1.x では正しく鳴らない。
ファイル
| ファイル | 対象 |
|---|---|
y8conv-v0.2.0-windows-x64.zip |
Windows 10 以降(x64) |
y8conv-v0.2.0-linux-x64.tar.gz |
Linux(x64、glibc 2.14 以降) |
展開した y8conv をそのまま使う。ランタイムなどを別に入れる必要はない。macOS では README の手順でソースからビルドする。
Windows で日本語などを含むパスを扱うには、Windows 10 バージョン 1903 以降が要る。
中身
y8conv/y8conv.exe— 変換器本体README.md— 使い方doc/conversion.md— 何が何に写るか、写らないものMANIFEST.txt— ビルドしたコミットと、各ファイルの SHA-256
y8conv v0.1.0
最初の版。FM-BIOS の演奏ドライバ(OPLLDRV)と MuSICA の演奏データを、Y8960 BASIC Extension の CALL MSAVE が書き出すのと同じシーケンスデータ(Y8SQ)に変換する。
できること
- MuSICA の
.BGMと、OPLLDRV の演奏データを読む。BSAVE の見出しの有無は問わない - 時間は丸めずに写す(1/60 秒を 1 tick とし、テンポは 75 になる)。音の高さは元と同じ周波数で鳴るように写す
- MuSICA の PSG と SCC の音色は、トーンとノイズの切り替え、波形、ソフトウェアエンベロープ(
@E)に写す - OPLLDRV の拡張音色は、
--rom-voicesに ROM から吸い出した音色表を渡すと、その音色で鳴る
変換しないもの(MuSICA のビブラート・ポルタメント・デチューンなど)と、何が何に写るかは doc/conversion.md にある。
鳴らすには
MuSICA の曲はソフトウェアエンベロープとオクターブ 0 を使うことがあり、鳴らすにはそれらに対応した版の Y8960 BASIC Extension が要る。Y8960Sequencer v0.1.3 はまだ対応していない。
ファイル
| ファイル | 対象 |
|---|---|
y8conv-v0.1.0-windows-x64.zip |
Windows 10 以降(x64) |
y8conv-v0.1.0-linux-x64.tar.gz |
Linux(x64、glibc 2.14 以降) |
展開した y8conv をそのまま使う。ランタイムなどを別に入れる必要はない。macOS では README の手順でソースからビルドする。
Windows で日本語などを含むパスを扱うには、Windows 10 バージョン 1903 以降が要る。
中身
y8conv/y8conv.exe— 変換器本体README.md— 使い方doc/conversion.md— 何が何に写るか、写らないものMANIFEST.txt— ビルドしたコミットと、各ファイルの SHA-256