MC68000 Maniacs!
OLD GAME(MD,DC,etc)と OLD PC(SE/30,X68K,etc)関連の情報を中心に発信しています。
MC68000 Maniacs! FunnyPlace Channel Vintage Computer LLC
 



エミュレータソフトウェア「PC6001V for Win32」に面白い機能が実装されています。

なんと PSGチャネルの演奏を FM音源ないしは SCC音源に変換出力できるとのこと。つまり「PC-6001の PSGが SCC(FM)音源の音色に変換され演奏される」ということらしいです。こりゃまた 特殊な機能を実装したものですね。(≧∇≦)

SCC音源といえば,Konami製 MSX用ゲームソフト向けに開発された ウェーブ音源チップであります。SCC音源のみで 5音の同時発音が可能なうえ MSX本体の PSGと併用も可能であったことから,当時,音楽的なパフォーマンスおいては かなりのインパクトを感じさせてくれた音源なのです。

それを PC-6001エミュで鳴らそうという所が なかなか無茶で面白い(笑)。

ただし現状では「PC6001V for Win32」のお手軽な機能としてリリースされているわけではありません。その恩恵を受けるためには,最低でも N6x-BASIC上から 拡張I/Oポートを操るプログラムをマスターする必要があります。具体的には「OUT命令」を使い,所定のポートアドレスに 16進数にて必要な値を設定する事で SCCの機能を使用する事になります。PC-6001mkIISR の FM音源を使った事がある方であれば 馴染み深いテクニックですが,N6x-BASICの心得がない方には かなり面倒な作業かもしれませんね。

具体的な例として・・・

 OUT&HAD,&H27

を実行すると,PSGの チャネル1~3までを SCCに変換出力するようになります。

音色設定には &H78,&H79ポートを使用し,以下のようなプログラムを実行する必要があります。(「Burnout」にて公開されているプログラムを参考にしました。)

 10 P=0
 20 RESTORE 130:GOSUB 60 : rem ch1
 30 RESTORE 150:GOSUB 60 : rem ch2
 40 RESTORE 170:GOSUB 60 : rem ch3
 50 END
 60 FOR I=0 TO 31
 70 OUT&H78,P
 80 P=P+1
 90 READA$:A=VAL("&H"+RIGHT$(A$,2))
 100 OUT&H79,A
 110 NEXT I
 120 RETURN
 130 DATA ~
 150 DATA ~
 170 DATA ~

音色データは 130行以降の DATA文に 16進数にて定義する必要があります。
詳しい使用方法は「Burnout」にて参照して下さい。(サンプル音色なども公開されています。)

音色さえ設定してしまえば,あとは通常の MMLを書くだけで SCC音源の音色を堪能できます。ちなみに,音色設定後に ゲームソフト等をロードして実行すれば,BGM出力が SCC化されるあたりが嬉しいところです。サンプル音色を使用して「スペースハリアー」を実行してみましたが,かなり印象がかわりますよ。

是非,お試しください。(≧∇≦)


コメント ( 0 ) | Trackback ( 0 )