CASIO PB-1000/C用 SSG音源ボードの作成

YAMAHAの音源IC YMZ294を使用したPB-1000/C用のSSG音源ボードです。

注意
本SSG音源ボードは、カシオ計算機(株)が周辺機器として動作保証した
ものではありません。製作に失敗した場合、ポケコンを壊してしまう
可能性もあるため、実施は自己責任でお願いします。

1.はじめに

前回、YM2413を使ったFM音源ボードの作成について報告しましたが、このICは既に生産が終了
しており入手は非常に困難です。そこで今回は秋月電子で販売されているSSG音源IC YMZ294を
使った音源ボードを作成しました。SSG(Software-controlled Sound Generator)音源は出力波形が
矩形波になるためFM音源のような音色制御が難しく、いわゆるファミコン的なピコピコ音になって
しまいますが、今となっては逆に郷愁を誘って良いかもしれません。


2.回路構成

下図に今回製作したSSG音源ボードの回路を示します。

YMZ294もレジスタに値を書きこむことで、周波数や音量等の設定を行うので、PB-1000のデータ
バス、アドレスバス(A0のみ)、チップセレクト信号、書き込み信号を、YMZ294のそれに直結します。
RESET端子にはYM2413場合と同じくP3に接続し、φMには4MHzのオシレータをつなぎます。
4/8はマスタークロックの選択端子で今回はHi側に設定します。

なおノイズに対する耐性はYM2413より高そうなので電源フィルターはコンデンサのみとしてします。
図では容量値が1000uFになっていますが、もう少し小さくても大丈夫だと思います。
またSO端子より3ch分のメロディと1ch分のノイズがMIXされて出力されますが、YMZ294では十分
なバッファが入っているようなので、直流分をカットした後、ピンジャックに直結しています。



3.準備するもの

本製作に必要な道具および材料です。1.27mmピッチの30pコネクタへの半田付け作業が
必要なので、ジャンパ線は0.2mmφ程度のポリウレタン線をお勧めします。

番号 名称 数量 入手先
1 半田ごて(15W程度) 1
2 カッター 1
3 テスター 1
4 SSG音源IC YMZ294(4MHzオシレータ付き) 1 秋月電子通商:I-00181
5 40x2 1.27mmピッチ ヘッダピン 1 マルツパーツ:HW101-2X40PIN
6 ユニバーサル基板 1 マルツパーツ:ICB288G
7 抵抗 1kΩ 1 マルツパーツ:MF1/4CC1001F
8 3.5mmφ ステレオミニジャック 1 秋月電子通商:C-02384
9 コンデンサ 0.1uF 1 秋月電子通商:P-00090
10 コンデンサ 10uF 1 秋月電子通商:P-03095
11 コンデンサ 1000uF 1 共立エレショップ:472131
12 ジャンパ線 適当
13 半田(0.8mm以下の物) 適当


4.SSG音源ボードの作成

下図に各部品のユニバーサル基板への実装例を示します。
基板の加工や30pinコネクタの実装方法はRS232C I/Fの記事を参考にして下さい。


下の写真が製作例です。YM2413を使った音源ボードより大分シンプルになります。



5.音出し用サンプルプログラム

本SSG音源ボードにおいて、コードCを鳴らすためのサンプルプログラムです。
制御コマンドの詳細はICに添付のマニュアルを参照下さい。

        ORG     &H7000
        START   START
;
;       YMZ294の初期化
;
START:  PST     PE,&HC8         ;Port3を出力に設定
        PST     PD,$31          ;Port3=0(RESET)
        PST     PD,&HC8         ;Port3=1(SET)
;
;       I/Oアドレス設定
;
        PRE     IX,&H0C00
;
;       ボリューム設定
;
        LDW     $0,&H0F08       ;CH-A 音量MAX
        CAL     SETRG
        LDW     $0,&H0F09       ;CH-B 音量MAX
        CAL     SETRG
        LDW     $0,&H0F0A       ;CH-C 音量MAX
        CAL     SETRG
;
;       音階設定
;
        LDW     $0,&HDE00       ;CH-A :C  ft=261.626Hz  TP=&H1DE
        CAL     SETRG
        LDW     $0,&H0101
        CAL     SETRG

        LDW     $0,&H7B02       ;CH-B :E  ft=329.628Hz  TP=&H17B
        CAL     SETRG
        LDW     $0,&H0103
        CAL     SETRG

        LDW     $0,&H3F04       ;CH-C :G  ft=391.995Hz  TP=&H13F
        CAL     SETRG
        LDW     $0,&H0105
        CAL     SETRG
;
;       ミキサー設定
;
        LDW     $0,&H3807       ;トーンオン ノイズオフ
        CAL     SETRG

SETRG:  ST      $0,(IX+$31)     ;コマンドセット $0->0C00h
        ST      $1,(IX+$30)     ;データセット   $1->0C01h
        RTN

6.SSG音源対応電子キーボード

本SSG音源対応の電子キーボードプログラムです。3音の同時発音が可能で7オクターブの
音域をカバーしています。詳細はアーカイブに添付されているREADMEを参照下さい。



7.あとがき

YM2413と比べると発音数も少なく音質も劣りますが、懐かしさではYMZ294の方が上かもしれません。
回路もシンプルなので、PB-1000/FX-870P/VX-4/3をお持ちの方は是非挑戦してみて下さい。

2012-8-14@Miyura


記事は、Miyura氏よりご寄稿して頂きました。ご協力誠にありがとうございました。

戻る