2021年6月15日火曜日

アップスキャンコンバータの製作

 FM-7用にRGBI対応のアップスキャンコンバータを製作してみました

と言っても、先人の労作をそのまま後追いしてコピーしてみただけなので、何の工夫も改良もないというものですが、そのまま作ってちゃんと動作したという例としてみていただければ...

オリジナルは、Oh!石さんのNibbles lab. HomePageの「研究成果」の中にある「RGBI対応アップスキャンコンバータ」ですが、使われている基板(DesignWave magazine 2007年7月号付録のFPGA基板で、Xilinx社のXC3S250E搭載)を持っていることもあり、数年前にこの報告を見て以来いつかは作ってみたいと思っていたのですが、使われているFUJISOKUの1回路12接点のロータリースイッチがいかにも高価でしかも入手できそうもないということで諦めていました。ところがつい最近全く同じものがヤフオクに安価で出品されており、さらにXilinxのコンフィグROMもヤフオクで入手できたので、これで実際に作れる見込みが立ちました。(実際には、3.3V表面実装の32MHzクロック発振器が最も入手難で注文してから入手まで20日ほどかかりましたが。)

結局、新たに購入したものは、ロータリースイッチ、そのつまみ、クロック発振器、コンフィグROMのみで、他は特殊なものはないので手持ち部品で間に合い、回路も上記の報告を見ていただければ分かりますが、それ程複雑ではないので2日ほどで製作できました。


製作したアップスキャンコンバータ


下の基板は手ハンダです


問題はFPGA(正確にはコンフィグROM)への書き込みで、以前、68Katy-aeという基板を製作した際にダウンロードケーブルは入手してありましたし、ソフトも無料のWeb版のライセンスを取得してありましたが、2年半も前の事でもあり、すっかり手順を忘れていましたし、コンフィグROMに書き込むのは初めてのことでしたが、何とか書き込むことができました。


書き込み中の様子

FM-7との接続ですが、とりあえず手持ちの8ピンDINコネクタにフラットケーブルを接続したものを用いて、まずCENTURYのLCD-10000Vで表示させてみました。

FM-7ではI(輝度)信号はありませんので、RGBIではなくてRGBですが正常にカラーモードで表示できました。


40桁表示


80桁表示も全く問題ありません

80桁表示


ところが、EIZOのL365では下のように、右寄りに表示されてしまいました。

EIZO L365での表示

このL365は普段FM77AV40SXの400ラインモードで使用しているもので、24KHz表示が可能なのですが、15.7KHzでSignal Errorと表示されます。

Oh!石さんはSharp系で使用されているので、富士通系で使用するには何か調整が必要なのかもしれませんが、もうコンフィグROMに書き込んでしまったので、これはこのままLCD-10000Vで使用するつもりです。

さらに作ってみたいアップスキャンコンバータがありまして、それはSasajiさんの「FPGAで8ビットパソコンを拡張する」の中の「アップスキャンコンバータを作る」です。これに使われている基板(AlteraのMAX10使用のMAX10-FB/JB基板)も所有しているので、ぜひ製作してみたいのですが、この報告ではCPLDのプログラムが公開されていないため、自分でプログラムしなければなりませんのでかなり苦労すると思います。でも、XilinxのFPGAよりもAlteraのCPLDの方が使い慣れているので、中日電工さんのCPLDの記事を参考にしながら作ってみたいと思っています。(中日電工さんのCPLDトレーニングボードやCPLD使用のVGAボードも既に入手してありますが、知識がついてこない...)

しかし、これもHITACHIのS1やL3用のもので、どうもFM系でアップスキャンコンバータを製作したという報告はあまり見当たらないようですね...


2021年6月10日木曜日

FM-7/77用のI/O拡張基板を改良しました

FM77用の拡張I/Oボードを改良してFM-7でも使えるようにしました

 

2019年6月19日のブログ「FM77用の拡張IOボード、ROM/RAMディスクボード」で紹介した拡張I/Oボードですが、2019年8月26日「FM77用の拡張I/Oボード、ROM/RAMディスクボードのプリント基板化が完了」で紹介しましたように、プリント基板化してFM77AV40SXに接続して使用していました。

その後、使用していなかったFM-7を再び使用する機会が増え、FM-7でもROM/RAMディスクを使いたくなりましたが、残念ながらFM-7背面の50P拡張コネクタには2.45MHzのクロックが出ておりませんので、最初は32Pスロットを使用して変換基板を経由して使用していました。しかし32Pスロットは2個しかないので、やはり50P拡張コネクタを使うということにして、間に挟んでいる変換基板(FM77とFM-7の拡張コネクタはピン配置が異なるので変換が必要)上にクロック生成回路を追加して使用していました。

今回、回路を見直して、ほとんど使用していなかったFT-232モジュール部を取り外せば拡張I/Oボード上にクロック発生回路を追加できると考えて、基板を製作することにしました。


製作したI/O拡張ボード


回路図

実は、基板を製作した際に肝心の2.45MHzのクリスタルを入れ忘れており、裏面につけようかとか思いましたが、幸いにして並んでいるR2,R3の端子に直接接続すれば良いことが分かって、それ程見苦しくならずに済みました。(画像でも不自然さは感じないと思います...)




構成図



そもそも拡張I/Oボードの50P入力のピン配置をFM-7に合わせてしまえば変換基板も不要となるのですが、そうしなかったのは、この変換基板上に32Pスロットを増設してそこにFDCボードを装着して、全体を拡張BOXという形でケースに収めればすっきりすると考えたからです。ということで、以前製作した増設32Pスロット基板を34Pフラットケーブルを介して接続してみました。



左:変換基板、右:増設32Pスロット基板

左の変換基板の中央のコネクタにFM-7からの50Pケーブルを接続し、左のピンヘッダに拡張I/Oボードを接続します。右の34Pコネクタには増設32Pスロット基板を接続し、その上にFDC基板を装着します。

しかし、実際にFDCボードを装着して起動してみると、時々ですが起動に失敗します。恐らく接続に使用しているフラットケーブルが長すぎる(2本の50Pが計84㎝、34Pが30㎝程度と長い...)のだと思いますが、FDCボードまで装着するにはもう少し工夫が必要なようです。

とりあえず、当面は拡張I/Oボードとその上に重ねるROM/RAMボードのみで使用することになりそうです。

ということで、別途製作したROM/RAMボードと二段重ねにして使用している様子です。


ROM/RAMボードを上に重ねました


ROM/RAMは一組だけ実装


FM77AV40SXではFLEX9とOS-9を切り替えて使用できるようにROM/RAMを2組セットして使用していますが、FM-7ではFLEX9とF-BASICがメインになりそうで、しかもF-BASICはシステムドライブやワークドライブの指定はできないためROM/RAMはあまり利用価値がなく、Windows上の仮想ドライブの方を使うことになるということで、とりあえずROM/RAMはFLEX9用として一組だけ実装してあります。

以上、FM-7用の拡張I/Oボードの改良とROM/RAMボードの紹介でした。ドライブソフトはFLEX9用、F-BASIC用のどちらも以前紹介したものをほぼそのまま使用しています。