[TOP]ProgramGGGOFG245MusicFontFamicomPokeMemoUpdate
YM2203→YMF288-M変換基板 (OFGPCB001)


この基板は、YM2203Cが実装されている箇所に、YMF288を搭載させることができます。
PC-98シリーズの26音源を、86FM音源相当にパワーアップすることができます。
ただし、大体の環境では周辺回路の解析・修正や、アナログ回路の自作まで必要になるなど、 上級者向けのパーツでもあります。




■概要

□メリット
・FM音源+3音、リズム音源が追加されます。
・レジスタライト時の待ち時間が緩くなり、486以上の速いマシンでも正しく動きます。

□デメリット
・YMF288にはIO入出力が無いため、(本来は)ジョイスティックが使えなくなります。
・SSGとFM音源のバランスが変わります。(26音源よりSSGが大きい)

□一部ソフトで問題が出る可能性があります
・CanBe音源のFM(OPN)部分相当になるため、初期化不良の可能性。
・A460hなどの86音源以降にあるIOポートがないため、認識不良の可能性。




■おおまかな手順
・この変換基板に部品を実装します。
・YMF288のA1信号を、適当な箇所から引っ張ってきます。
・/CSピンをYMF288のレジスタ範囲に対応させるため、ボードの周辺回路を改造します。
・アナログ回路を改造・配線します。
・特定条件を満たす場合、ジョイスティック入力が誤検出しないよう対策します。




■実装する部品

□絶対必要なもの
・YMF288-M 1個(FM音源)
・コンデンサ 0.1uF以上 1個(パスコン用)
・クリスタルオシレータ 正方形型 7.987MHz 1個(8.000MHzでも可)
・オペアンプ NJM4558または互換 1個(GND-5V駆動、2回路、ボルテージフォロワ用)
・ICピン 2.54mmピッチ2x20ピン(細ピンヘッダも可)
・ワイヤー 3本分(A1,出力LRを引っ張る用)
・DAコンバータICとして、下記のいずれか。()内は更に必要な部品、それぞれ1個ずつ。
 ・uPD6379(コンデンサ47uF・インバータIC)
 ・uPD6379A(コンデンサ47uF)
 ・BU9480F(コンデンサ10uF)
 ・PT8211

□必須ではないが、あった方がいいもの
・200uH〜500uHぐらいのインダクタ 2本(アナログ電源整流用)
・100uF以上のコンデンサ 3個(アナログ電源整流・LR出力のDCオフセット除去用)

※ コンデンサの耐圧は、10V以上の物であれば何でも構いません。尖った特性をしてない限り大体使えますので、各自で適切なものを選定してください。
※ uPD6379使用時のインバータICとは、ワンゲートロジックのTC7S14Fや74AHC1G04W5等を指します。


□秋月電子コードリスト
YMF288-M以外は、DACとしてPT8211を使う場合、秋月電子の商品だけでまかなうことができます。
以下、選定例としての通販コードの一覧です。(2023/6/5地点で在庫グレードAAAのもの)

必須部品
・P-13582(コンデンサ 0.1uF 10個入)
・P-17022(オシレータ 8.000MHz)
・I-09125(オペアンプ NJM4558 5個入)
・C-06631(細ピンヘッダ 1x40)
・P-08996(ワイヤー 単芯 2m長10色)
・I-17061(DAC PT8211)

推奨部品
・P-03968(インダクタ 330uH 10本)
・P-02724(電解コンデンサ 100uF35V)

他DACを使うときの追加パーツ
・P-10270(電解コンデンサ 47uF16V)
・P-17897(電解コンデンサ 10uF50V)
・I-17602(インバータ 74AHC1G04W5 5個入)




■各ジャンパ・パターンの意味

(1)
「288-M」の1ピン目隣にある穴2つは、GNDと5Vが通るパスコン用です。 +と書かれている側がプラス極です。通常、0.1uF等の物をつけます。

(2)
上記パスコンの反対側、「A1」と書かれた穴は、YMF288のA1ピンです。 YM2203からアドレスバスが1本増えており、これを繋がないとFM3音止まりです。 PC-98のアドレスバスA2ラインを見つけて接続してください。

(3)
「INV」と書かれた箇所は、uPD6379使用時のみインバータICを実装します。 ワンゲートロジックのTC7S14Fや74AHC1G04W5等を使います。 uPD6379ではLRO信号をひっくり返さないと、左右間でサンプルがずれるため、 この問題を修正するために必要です。

(4)
「LRO」と書かれたジャンパは、 uPD6379以外のDACを使用時に、半田でジャンパしてください。 YMF288からのLRO信号が直接DACへと伝わります。(uPD6379使用時は繋ぎません)

(5)
「REF」と書かれた穴2つは、DACに必要なコンデンサを実装します。+と書かれている側がプラス極です。 容量は、使用するDACにより異なります。PT8211使用時は不要です。

(6)
基板左下にある4つの穴は、以下の電源ラインが通っています。
 [左上:AGND] [右上:AVCC(+5V)]
 [左下:GND]  [右下:VCC(+5V)]
上がDAC等のアナログIC用、下が音源などのデジタルIC用電源となっております。 電源を分けたい場合は、AGND,AVCCをワイヤー等で引っ張って電源供給してください。 デジタル用と一緒でもかまわない場合は、A-D間を半田で縦に2か所ジャンパしてください。 また、追加コンデンサやインダクタ等の部品を、ここに実装することもできますし、 1つの穴にインダクタとコンデンサの足2本分通ります。

(7)
基板左下の「L/R」は、サウンド出力です。左がL、右がRです。




■基板内の組み立て方(DAC以外の部分)

順番通りにやっていくと作業しやすいです。
ICの方向は、「o」と印刷されてるところが左下の1ピン目に来る方向で実装します。
IC自体も左下だけ丸く窪んでいたり、左側真ん中に円状の切込みがあったりしますので、それをよく見て実装してください。

1:
「288-M」と書かれた場所に、YMF288-Mを実装する。
足が浮いてる箇所が出ないよう、入念に実装してください。

2:
YMF288-Mの上側にあるパスコン実装穴に、パスコン(0.1uF等)を実装する。

3:
DAC・アナログIC周りを設定・実装する。(下の別項目で詳しく説明します)

4:
「7.987MHz」と書かれた場所に、クリスタルオシレータを実装する。
部品面のYMF288-Mがある側を上として、角ばった隅っこが「右上」に来る方向で実装します。 下手につけるとすぐナナメるので、足1本はんだ付け後、 その足に半田こてを当てながらクリスタルの上真ん中を押してやれば、水平になります。

5:
基板左下のGND,VCC,AGND,AVCCを設定・実装する。
この基板を実装する対象ボードによって、適切な回路が変わったりします。

6:
YM2203のところに実装する用の足を実装する。

7:
A1,L,Rのワイヤーを付ける。




■基板内の組み立て方(DAC部分)

オペアンプ(NJM4558等)を実装後、DAC周りのパーツを実装していきます。
使用するDACによって実装方法が変わります。

□uPD6379(インバータIC・コンデンサ47uF)
・uPD6379を、「6379A」と書かれたパターンに180度回転させて実装します。
・インバータIC(TC7S14Fや74AHC1G04W5等)を「INV」に実装します。
・47uFのコンデンサを、「REF」に実装します。


□uPD6379A(コンデンサ47uF)
・uPD6379Aを、「6379A」と書かれたパターンにそのままの方向で実装します。
・「LRO」と書かれたジャンパを、半田で繋ぎます。
・47uFのコンデンサを、「REF」に実装します。


□BU9480F(コンデンサ10uF)
・BU9480F を、「6379A」と書かれたパターンにそのままの方向で実装します。
・「LRO」と書かれたジャンパを、半田で繋ぎます。
・10uFのコンデンサを、「REF」に実装します。


□PT8211
・PT8211 を、「8211」と書かれたパターンにそのままの方向で実装します。
(6379Aや4558のパターンとは逆方向になっていることに注意してください)
・「LRO」と書かれたジャンパを、半田で繋ぎます。




■周辺回路の改造(A1信号追加)

YMF288では、YM2203と比べて、アドレスバスの「A1」ピンが増えています。 これを配線しないと、追加レジスタ分にアクセスできず、YM2203相当の音しか出せません。
このピンは、PC-98では「A2(アドレスバスの2bit目)」から持ってきます。 (26音源が188h,18Ah、86FMの追加分が18Ch,18Eh)
この信号は、Cバス信号のピン番号A6(信号名A2)や、BIOS-ROMのアドレスバスA1や、 CPUのアドレスバスA2等、適当なところから引っ張ってきてください。

この改造自体は全然難しくありません。問題はこの次です。




■周辺回路の改造(FM音源レジスタの拡張)

上記の通り、レジスタが増えているため、FM音源の/CS(ChipSelect)信号が18Ch,18Eh へのアクセス時にも下りていなければなりません。
ありがたいことに、ごく一部のボードや本体内蔵音源では、既に18Ch,18Ehにも反応し、 18Ch,18Ehには188h,18Ahと同じ内容が出ているものがあります。 (これを、イメージが出ている、と言う)
それ以外では、回路の改造が必要になります。

□確認方法
YM2203の/CSが18Ch,18Ehにも反応するかどうかを調べるためには、BASICで
「?INP(&H188),INP(&H18C)」と入力します。Enterキー入力後
「3 3 」といったように、255以外の同じ数字が2つ出れば、改造不要・成功です。
「3 255 」といったように、片方が255になってしまう場合は、 18Ch,18Ehには反応していないため、要改造です。

□改造概要
純正26音源のように、アドレスデコード部分がすべて汎用ロジックICで組まれている場合は、 回路を追って、パターンカットやジャンパ等を行って、簡単に改造ができます。

/CSがカスタムチップから出ている場合、FM音源の回路専用のチップであれば、 チップへのA2信号入力をカットしてLowに落とせば、改造成功するかもしれません。
逆に、他デバイスのアドレスデコードも行っていたりする場合は、 18Ch,18EhのときだけA2信号がLowに落ちるように回路を組む必要があるなど、面倒な改造になります。
リトルオーケストラ・PC-9801DA,US辺りでは、既に18Ch,18Ehにイメージが出ており、 この改造不要でA1信号さえ引っ張れば改造完了となります。
PC-9801UV11等の古い機種ではイメージは出ておらず、要改造です。

エプソン機の本体内蔵FM音源は、あきらめた方がいいです。
/CSがカスタムチップから出ているうえ、ひどい場合にはデータバス等まで カスタムチップから出ているものもあり、回路を一から作り直すぐらいの労力が必要です。




■周辺回路の改造(アナログ回路改造)

この部分は、ボードによってやり方が全然変わってきます。

一番簡単なのは、この変換基板のLR出力から100uFのコンデンサ経由でイヤホン出力させることです。 (コンデンサは、基板LR出力側が+極、イヤホン側が-極)
それだけでも十分な音量のサウンドが出力されます。

しかし、大体は「内蔵スピーカーへの出力も対応している」とか「他サウンドとミックスする」など、 回路をいじって修正した方が良い場合が多いですから、各自で回路を読んだり試行錯誤したり等、 どうにかしてください。
こちらで調べた分は、後記の「改造例」として記しております。




■周辺回路の改造(データバスの処理)

この処理は、以下をすべて満たす場合に必要になります。
・FM音源チップのデータバスがプルアップ・プルダウンされていない
・FM音源チップのデータバスがボード内のバスバッファIC(74LS245等)へ繋がっている
・レジスタ0Eh,0Fhの読み込みを、外部回路で細工がされていない

YMF288-Mでは、YM2203の汎用入出力ポート分のレジスタ(0Eh,0Fh)を読もうとした場合、 データバスがハイインピーダンス(未接続と同等の状態)になります。
入力ポートは主にジョイスティック入力に使われており、YM2203のデータバスがプルアップ抵抗無しで、 ボード内のバスバッファIC(74LS245等)へ繋がっている場合は、読み出す値が不定となり、 「ジョイスティック入力が暴れる」といった問題が出ると思います。

この場合、プルアップ抵抗として10kΩ等の抵抗を、VCC(21ピン)とFM音源の各データバス(D0から40,2〜8ピン)へ 配線すれば解決します。

しかし、実はもっと夢のある解決法が存在します・・・。
プルアップの代わりに、ジョイスティック入力を突っ込む方法です。

ジョイスティックポートからの出力も使う特別なものは使えませんが、 その辺の方向+2ボタンなものなら普通に使えます。

ジョイスティック対応のボードの場合、YM2203のIOA0〜5のピンを、 プルアップ相当の抵抗(10kΩ等)経由でFM音源チップのデータバス(D0〜D5)へ繋ぐだけで、 ジョイスティックポートが1つ使えるようになります。
0Eh,0Fhアクセス時はジョイスティックの弱い入力信号、 それ以外は音源チップの出力が読まれる仕組みです。 IOA6,7もD6,7へ繋げば、割り込み位置も伝えられます。

[接続ピン一覧]
0: 16-40
1: 15-2
2: 14-3
3: 13-4
4: 12-5
5: 11-6
6: 10-7
7: 9-8

ジョイスティックが2ポートあるボードの場合は、IOB出力(26-33)を全部VCC直結してください。 この場合、ジョイスティック2からの入力を受け付けるようになります。 どうしてもジョイスティック1から受け付けたい場合は、このうちのIOB6(31)だけGND直結にします。

ジョイスティック非対応のボードの場合、ジョイスティック端子入力をプルアップ(10kΩ等)したものを、 IOA0〜5ピンと同様に抵抗経由でデータバスに繋げば、自作増設可能です。

ピンチはチャンスになるのです…!
(この辺、この変換基板の次リビジョンを作るときに何とかしたいですねぇ…)




■改造例
・アルファデータ AD-FS2
・Creative SoundBlaster16(CT2720)
・PC-9801US




戻る


(C)2005-2023 OffGao All Rights Reserved.