2022年10月29日土曜日

FM77AV40SX用GOTEKのドライブ番号切り替えケーブルの製作

 FM77AV40SXのGOTEKのドライブ番号を0または2に切り替えられるようにしました

今までは、ドライブ0がGOTEK、1がFDDという形で使用してきました。ほとんどの場合はこれで問題はないのですが、時にはFDから起動したい場合もあります。しかし、ドライブ0がGOTEKだと、ドライブ1にFDを入れてもFDからは起動してくれないのです。

しかたなくドライブ0をFDに戻してみたのですが、GOTEKが使えないと結構不便です。ということで、GOTEKを再度追加することにしたのですが、以前、FM-7用のGOTEKを設置した際にはGOTEKとFDDのドライブ番号を互いに入れ替えることができるようにしたので(ドライブナンバー切替用ケーブルの製作(2021.02.02))、SXについてもドライブ番号を切り替えられるようにケーブルを作成することにしました。

最も簡単な形は、ドライブ1はそのままで、ドライブ0のFDDとGOTEKの番号を0と2に切り替える形式でしたので、そのような機能を持つケーブルを製作しました。

下の画像が製作したケーブルと追加したGOTEKです。GOTEKは98用のFDD用のケースを流用しており、パネルについていた2HD/2DD切り替え用のスイッチをそのままFDDとGOTEKの切り替えスイッチとして使用しています。


製作したケーブルとGOTEK


製作したケーブルの接続図を示します。FM-7用の場合とほとんど同じです。


ケーブル結線図



装着した状態を示します。SXからのケーブルのドライブ0用のコネクタに作成したケーブルを接続し、中間のコネクタをFDDに装着して、端のオスコネクタにGOTEKからのケーブルを接続しています。
ちなみに右上の基板はFT245使用の高速通信カードで、左の基板は最近製作した512KBのRAMカードです。



装着の様子


動作中の様子です。押しボタンが戻っている状態でFDDが、押し込んだ状態でGOTEKがドライブ0になります。0でない方のドライブは2になって、合計3台構成となります。



動作中


以上で、通常はGOTEKから起動して運用し、必要な場合は切り替えてFDから起動することができるようになりました。また、FD同士のコピーも楽になりました。



2022年10月21日金曜日

FM77AV40用512KB増設RAMカードの製作

FM77AV20/40用の512KB増設RAMカードを製作しました

【2022年10月23日 訂正】FM77AV20/EXには40Pコネクタしかないというご指摘を受けましたので、対応機種をAV40/EX/SX用に訂正させていただきます。タイトルも変更しました。ご指摘ありがとうございました。

入手困難であった富士通の48ピンコネクタが入手できましたので、以前から作ってみたかったFM7720/40用の512KB増設RAMカードを製作してみました。

製作したSRAMカードを示します。


製作した512KB SRAMカード


回路図を示します。


回路図

実は、あまり良くない個所が一個所あります。SRAMのWE端子にRW信号を接続していますが、74HC00のWE出力信号を接続するつもりでしたが、うっかり間違えました。でも、OE信号にE信号を入れているので、動作に不具合はないのではと思ってそのままにしてあります。

512KBのSRAMの他にはTTL-ICがわずか2個で済みましたので、90x60mmというコンパクトなものになりました。


純正RAMカードと比べてみた


詳細な動作チェックはこれからですが、とりあえずOS-9 Level2のmfreeコマンドで確認してみました。

確かに512KB容量が確保されています。


製作したRAMカードの場合


純正のRAMカードの場合は容量が256KBです。


純正RAMカードの場合


まだ詳細なメモリテストを済ませていませんが、一応、動作しているように見えますので、
512KBのSRAMと48ピンのコネクタが入手できれば、割と簡単にメモリの増設ができるという紹介でした。

2022年10月20日木曜日

FM-7にPTMを増設してASSIST09のトレースコマンドを実現

 FM-7にPTM(68B40)を増設してASSIST09のトレースコマンドを実現しました

【2022年12月7日】回路図を再修正しました

FM-7でASSIST09を使う方法については、2022年9月15日に「自作クロスアセンブラの修正とASSIST09のFM-7への移植」で紹介しましたが、FM-7にはPTM(Programmable Timer Module)がないので、そのままではトレースコマンドが使えませんでした。

機械語プログラムのデバッグには必須の強力なコマンドですので、何とか使えるようにしたいという事で、FM-7にPTM(68B40)を増設することにしました。

ASSIST09ではPTMの出力によってNMIを発行していますが、残念ながら32PスロットにはNMI端子が出ていません。背面の50PのI/O拡張ポートには出ていますが、普段は拡張基板を接続していますので、使いたくありません。という事で、40PのZ80用スロットに目を付けました。このスロットはZ80カード、63C09カード、Arduino2560カードで使用していますが、機械語のデバッグ時にはこれらのカードを外せば良いと考えたわけです。

早速、KiCadで回路図を作成して基板を発注しました。出来上がった基板がこれです。


PTM-PIAカード

上右の28ピンICがPTM(63B40)で、その左の40ピンICがPIA(68B21)です。以前、拡張用にPIAカードを作ったのですが、それにPTMを追加するような形で製作しました。

回路図を示します。

(下に動作しなかった原因を述べてありますが、この回路図はその修正等を加えてあります。【2022年12月7日再修正しました】)


PTM-PIAカード(再修正済)


ASSIST09の方の変更は、「自作クロスアセンブラの修正とASSIST09のFM-7への移植」中の拡張ROMのプログラム中のPTMのアドレスをこの基板に合わせて$FDF0に書き換えるだけです。

早速、実行してみましたが動作しません。(いつものことですが。。。)

最初に使用していた68B40が不調だったりしましたが、交換しても変わりがありません。回路にも間違いはないようですし、プリント基板のパターンも全て確認しましたが、回路図と違いはありませんでした。


動作しない原因が判明

色々調べた挙句、ようやく原因が分かりました。何と、Z80用スロットのNMI、IRQやFIRQ端子はメインCPUへの入力端子ではなく、逆向きのZ80カードへの出力端子だったのです。(他にEやQも通常とは逆向きのようです。)事前調査不足でした。。。

結局、FM-7にPTMを増設するには、背面の50P拡張ポートを使用するしかないという事になりましたので、基板の作り直しが必要になってしまったわけですが、とりあえず、製作した基板を使用するために、下画像のような変換アダプタを製作しました。


変換アダプタ

40Pメスコネクタは、以前FM-7をばらした際に基板から外して保存してあったものです。これを接続して、画像のような形で使用します。


使用形態


これで、無事に動作しました。

トレースコマンド実行画面


いつものようにミスをしながらも、何とか動作させることができましたので、FM-7での機械語プログラムのデバッグが楽になると期待しています。

そもそもスロットの端子名だけで使えると誤解した私の知識不足が原因であるわけですが、少しでもどなたかの参考になればと思い、あえて紹介することにしました。