ラベル FM77 の投稿を表示しています。 すべての投稿を表示
ラベル FM77 の投稿を表示しています。 すべての投稿を表示

2024年3月25日月曜日

FM-7/77用の自作基板(RS232Cカード、FT245通信カード、1024KB拡張RAMカード)のプチ改良

 FM-7/77用の自作基板3枚を少しですが改良しました

改良版を製作したのは次の3カードです。

1.RS232Cカード

 D-Sub9ピンコネクタに加えてTTL-USB変換ケーブル用コネクタを増設

2.768KB拡張RAMカード(1024KB拡張RAMカード改め)

 512KBのSRAMを2個搭載で1024KBですが、最上位の256KBを切り離して768KBにするジャンパスイッチを増設

3.FT245高速通信カード

 制御・データアドレスとして使用しているアドレス$FDFD,FEを$FD06,07に変更


1.RS232Cカード

2019年10月26日のブログ「FM-7/77用RS-232Cカードの改良版」https://flexonsbd.blogspot.com/2019/10/fm-777rs-232c.html

などで紹介したものです。D-Sub9ピンコネクタが使用されているのですが、現在では、Windows機と接続するケーブルとしてはシリアル-USB変換ケーブルではなくTTL-USB変換ケーブルを使用する方が便利ですので、それ用の6ピンコネクタを増設しました。これに伴ってシリアル変換ICも実装不要になりました。

右上の6ピンソケットが増設したコネクタです。


RS232C_R1.2



右上が増設したコネクタ


回路的にはただ単に8251からコネクタへ信号線を引き出しただけです。


RS232C回路図


使用したケーブルは以下のようなものです。ピン配置は1番ピンから順にGND, RTS, VCC, RXD, TXD, CTSになっていますが、VCCは接続しないのでピンを抜いてあります。


使用したTTL-USB変換ケーブル



2.768KB拡張RAMカード

2023年7月16日のブログ「FM77AV40用1024KB増設RAMカードの製作」https://flexonsbd.blogspot.com/2023/07/fm77av401024kbram.html

で紹介したものです。対象のFM77AV40では増設できるメモリの最大値は768KBなので最上位の256KBは使用されません。無視されるだけで問題は無いとは思いますが、何となく気持ち的にすっきりしないので、回路的に最上位の256KBを無効にできるように切り替えスイッチを増設しました。


512KB拡張RAM

ちなみにこの48ピンコネクタは、知人が32ピンのコネクタ2個からニコイチで作成されたものをいただいて使用していますが、全く不都合はなく使用できています。


768KB拡張RAM回路図


3.FT245高速通信カード

2023年10月23日のブログ「FT245通信カードの新基板の製作」https://flexonsbd.blogspot.com/2023/10/ft245.html

などで紹介したものです。オリジナルでは制御・データアドレスとして$FDFD,FEを使用しているのですが、このアドレスを他のカードが使用している可能性があるので$FD06,07に変更したものを作成しました。このアドレスはRS232Cカードが使用しているものなので、他のカードとバッティングすることはないと考えました。また、FT245カードとRS232Cカードは使用目的が同じなので同時使用することはないだろうと判断しました。


FT245_R3

74LS04を1個増設しただけでアドレスを変更できました。


FT245_R3回路図

以上、自作のカードを少しでも使い易くするためにちょっとした改良を行ったという紹介でした。


2023年2月18日土曜日

FM-7/77用F-BASIC,OS-9,CP/M,FLEX9のディスクイメージを操作する

 Windows上でFM-7/77用F-BASIC,OS-9,CP/M,FLEX9のディスクイメージを操作するソフトの紹介

FM用のエミュレータであるXM7を使用されている方も多いと思います。私も使わせていただいています。素晴らしいソフトを作成された開発者に敬意を表します。

XM7を使用していると、しばしばD77形式のディスクイメージ中のファイルを操作したいことがあります。つまり、ディスクイメージ中にWindowsからファイルを書き込んだり、逆にディスクイメージからWindowsへファイルを読み出したりしたいということです。

今までにそのためのソフトを制作してきました。当然のことですが、各OS(?)によってディスク中への保存形式が異なりますので、ソフトも各OSで異なるものとなりました。

制作したソフトについてはその都度紹介してきましたが、扱えるファイル形式を今までのD77(D88)、DSKに加えて、FT245高速通信カードで用いられているDAT形式に対応するように拡張しましたので、ここでまとめて紹介します。

今までに制作したソフトは以下の4本です。

(1)F-BASIC用 FbasDrvWin.exe

(2)OS-9用   Os9DrvWin.exe

(3)CP/M用   CpmDrvWin.exe

(4)FLEX9用  FlexDrvWin.exe (DAT形式には対応しない)

それぞれ対応するOSが異なりますが、操作性は全て同じにしてあります。

(ただし、FLEX9用のみはディスク形式が異なるためにFT245通信カードを使用する転送ソフトは使用できませんので、DAT形式に対応する必要がありません。)

それぞれの画面イメージは次のようです。


FbasDrvWin.exe



Os9DrvWin.exe


CpmDrvWin.exe


FlexDrvWin.exe



イメージファイル処理ソフトとしての使い方


(1)処理したいイメージファイルをドライブ名ボックス(Drive 0~4)にドラッグ&ドロップすると、下のボックスにそのイメージファイル中のファイルが一覧表示される。
どのボックスに入れても構わない。また、いくつでも重ねて入れることができる。
(2)読み出し
読み出したいファイルをマウスの左ボタンで選択しておいて、右ボタンを押すと現れるメニューから「読み出し」を選択する。
(3)書き込み
書き込みたいWindows上のファイルをこのボックス中にドラッグ&ドロップする。
(4)全ファイルの一括読み出し
メインメニュー「編集」中の「全ファイル読み出し」を選択する。
(5)他の機能
右ボタンメニューには他のコマンドとして「削除」、「ファイル名変更」がある。


仮想ドライブ構築ソフトとして使用する


イメージファイル処理ソフトとしての使い方は上記のようですが、実はこれらのソフトは本来、Windows上の仮想ドライブ構築ソフトとして制作したものです。
(上の画面イメージ中のFlexDrvWin.exeで右側のボックス中にFM機がアクセスしたトラック/セクタが表示されています。)
ということで、FM機に各OSに対応するドライバをインストールすることで、FM機本体のドライブ(通常0と1)に加えて、これらのxxxxDrvWin.exeのDrive2と3が拡張ドライブとして使用できるようになります。
OS-9用以外の3つの仮想ドライブ構築ソフトについては以前紹介し、ドライバも公開しています。

RS-232C用のドライバをFT245通信カード用に書き換える


今までに、Flex用、F-BASIC用、CP/M用のドライバを紹介してきましたが、それらはいずれもFM機とWindows機との間の通信手段としてRS-232Cを使用していました。
しかし、最近はRS-232C機能を使用することはほとんどなくなり、もっぱら「思い付きハードでソフトに七転八倒」さん(ブログは下記)が製作されたFT-245高速通信カード(本ブログでも何回か紹介しています)を使用していますので、現在、各ドライバをFT-245通信カード用に書き換えているところです。完成し次第公開する予定ですが、残念ながら、私は80系は全くと言ってよいほど経験がないので、CpmDrvWin.exe用のドライバが作成できません。F-BASIC用、OS-9用の2つのみを作成中です。

「思い付きハードでソフトに七転八倒」さんのブログ
(1)FM-7用データ転送基板を使った新ユーティリティの紹介https://vehwk3yxv7hw.blog.fc2.com/blog-entry-39.html
 (2)FDDイメージをバックアップするFM-7専用ソフトの説明https://vehwk3yxv7hw.blog.fc2.com/blog-entry-31.html

以上、各OS用のイメージファイル処理ソフト(実は仮想ドライブ構築ソフト)の紹介でした。
これらの4ソフトと、共に使用することが多いD77,DSK,DATファイル間で形式を変換するソフト CvtDskD77.exeをOneDriveに上げておきます。

【注意】これらのソフトの制作にあたっては、それぞれのOSのFMS(ファイルマネージメントシステム)に相当するものの実装が必要ですが、OSの中身を知っているわけではないので、XM7上で読み書き、追加、削除などの操作をして、操作前後でイメージファイルのどの個所がどのように変化したかを確認することによってOS内の動作を推定し、それをもとにして実装しました。
従って実装が不完全、不十分なための誤動作が予想されますので、使用される場合はその点にご注意ください。特に、操作を何回も繰り返すとイメージファイルがおかしくなる可能性がありますので、何回か操作を繰り返したらXM7で別ファイルにコピーし直したり、転送ソフトを用いてフロッピーディスクにコピーしておくと安心です。(使用した感覚ですが、FlexDrvWin.exe以外は比較的安定しているようです。)

2022年11月18日金曜日

FM-7,77,AV用増設サブシステムカードの製作

Oh!FM誌の1989年8月号から1989年12月号までに連載された「増設サブシステムカード」を製作しました

知人から上記の記事を紹介され、製作してみたいと思って部品(V9938やそれ用の64ピンソケット、64Kx4bitのD-RAM、そして21.47727MHzの水晶振動子など)を既に集めていると言われたのですが、記事を読むと使用しているビデオディスプレイプロセッサ V9938は64ピンのシュリンクソケットですし、D-RAMは3段重ねの実装ですので手配線では難度が高いと判断し、プリント基板を作成することを提案しました。

6個のD-RAMを並べ、V9938の64ピンシュリンクソケットを配置しても100x80mmのサイズに収まりましたので、これで行けると判断してプリント基板を発注しました。

しかし、いつものようにドジをしてしまい、9ピンD-Subの取り付けを裏面にすべきだったのを表面に配置してしまいました。幸い左右対称ですので、無理矢理裏面に実装することにしましたが...

出来上がったのがこの基板です。


V9938基板


それ程無理をせずに配置できています。記事ではシールド線を使用しているV9938から9ピンD-Subへの配線を基板左端に集めてあり、もしこの配線ではノイズが乗ってダメな場合にはこの配線をカットしてシールド線で追加配線できるように考慮してあります。

実装した状態が下画像です。

実装済み基板


まず、知人が製作して動作テストを始めてくれましたが、全く動作しないとのことでした。プリント基板のパターンを追いかけたところ、当初、記事中の回路図にミスがあり、そのままでgerberファイルを作成したのですが、発注前にそのミスに気づいたので回路図を訂正し、gerberファイルも書き直したつもりだったのですが、うっかりと訂正前のgerberファイルで発注してしまっていました。

2箇所のパターンカットと3本の追加配線を行ってもらうことで無事に動作するようになりました。なお、このミスや裏返しになった9ピンD-Subなどを修正した基板を発注中です。

当初は製作と動作テストは知人に任せるという他力本願のつもりでしたが、記事を読み込んでいるうちに自分も製作してみたくなり、部品を集め始めました。V9938はメルカリで、64ピンシュリンクソケットと水晶振動子はaitendoで購入することができました。

製作した基板が上に示した実装済み基板です。

なお、本体基板の他に出力表示用の回路が必要で、記事ではビデオ出力回路とアナログRGB回路が紹介されています。

最初は簡単なビデオ出力回路を製作したのですが、結果はあまりきれいな表示ではありませんでしたので、続いてアナログRGB回路を製作しました。これは流石にきれいなグラフィック画面を表示してくれました。以下に示すサンプル画面はこれによる表示です。


ビデオ出力回路


アナログRGB出力回路

この増設サブシステムカードをFM-7に装着し、12月号に掲載されている拡張BASICを入力してサンプルプログラムを走らせてみました。心配していた、シールド線不使用によるノイズの混入も見られないようです。


「COL」結果


「HMMV」結果


「PAINT」結果

増設サブシステムカードの出力は専用の出力となりますので、ディスプレイが2台必要だったりしますが、工夫して何とか1台の切り替えで表示できるようにしました。

下画像の最上段がディスプレイ切り替えスイッチで1:FM77AV40SX、2:FM77AV2、3:FM-7(通常出力)、4:FM-7(増設システムカード)を切り替えます。中段のボックスの中には以前「アップスキャンコンバータの製作(2021年6月15日)」(https://flexonsbd.blogspot.com/2021/06/blog-post.html)で紹介したアップスキャンコンバータを収めていて、FM-7の出力をこれに入れて、その31KHz出力を最上段の3:に入力しています。最下段はXRGB-2plusでこの21ピンマルチ入力に今回の増設サブシステムカードの出力を入れて、その31KHz出力を最上段の4:に入れています。

中断の切替器のA,B切り替えはディスプレイのCentury LCD-10000VとEIZO L365の切替用のつもりです。


ディスプレイ切り替え回路


私の興味の範囲は言語とプログラミングで、グラフィックは難しそうで近寄らないことにしていたのですが、今回このような回路を製作してサンプルプログラムを走らせてみると、グラフィックも結構面白そうだなと感じるようになりました。

以上、大昔のOh!FM誌に掲載されていた増設サブシステムカードを知人と協力して製作してみたという紹介でした。


2022年9月26日月曜日

2DDドライブ用ステップ信号2倍化回路をFDD2台に対応させました

 2DDドライブ用ステップ信号2倍化回路を2台のFDDが接続できるように改良しました

2020年7月29日の「2DDドライブ用ステップ2倍化回路のその後」で紹介しましたステップ2倍化回路ですが、ドライブ毎にそれぞれ2倍化基板が必要となるのは煩雑なので、1枚の基板でドライブ2台を制御できるように改良しました。

最初は単純に2回路を1枚の基板に収めたものを製作して使用してみましたが、これは如何にも大きすぎて、扱いにくいものでした。


左:従来のもの 右:最初に製作した2回路版

そもそも、よく考えてみるとATtiny85が2個も必要なわけではありませんでした。ということで、回路を見直した結果、現在の基板と同じサイズに収めることができました。

その回路を示します。

FDD2台用回路


次に製作した2台用基板


右端の34PコネクタにFDCからのケーブルを、左端のコネクタとその隣の上向きのコネクタに2台のFDDへのケーブルを接続します。上下に出ている4PはFDD用の電源ケーブルです。
(FDD用のコネクタが左と上に向いているのは、当初、左向きのコネクタをメスにしてFDDに直接装着することでケーブルを省略できると考えていたからなのですが、それはそれで使いにくい面もあり、結局ケーブルで接続する形にしています。)

ドライブ番号は0~3から指定でき、それぞれStep信号2倍化回路を通すか通さないかを選択できますので、PC用の2DDのFDDのみでなくGOTEKや2Dのドライブも接続できます。
(GOTEKを使用する場合は、常に本体のドライブ番号はS0ではなくS1にセットしておきます。)

下画像はGOTEKをドライブ0に、PC用FDDをドライブ1に指定して、自作のFDCカードに接続した様子です。


使用中の様子

長いケーブルを使用したので、結構ゴチャゴチャに見えますね...

でも従来の基板と同じサイズのもので2台のFDDが制御できるようになったので、目的は達成できました。


2022年5月18日水曜日

拡張ROM/RAMディスクボードと仮想ドライブ用のF-BASICドライバ

ROM/RAMディスクボード用の接続ケーブルを製作し、ドライバも改良しました 

今まで拡張ROM/RAMディスクボードを使用する際には、32P拡張スロット基板を経由して使用していました。



通常の接続形態

しかし、いつもいつも32P拡張スロットが必要なわけでもないので、拡張ROM/RAMディスク基板を直接FM-7や77に接続して使用しようと考えました。

そのために製作したのがこれらの接続ケーブルです。


製作したFM-7用、FM77AV2用のコネクタ


左のMILコネクタがFM-7用、右のアンフェノールコネクタがFM77AV2用で、このように接続して使用します。


FM-7に装着


FM77AV2に装着


これで拡張ROM/RAMディスク基板を直接本体に接続して使用できるようになりました。

ボード上のシリアルポートからTTL-USB変換ケーブルでWindowsPCに接続すれば、このボードのみでWindowsPC上の仮想ドライブも使用することができます。(もちろん、RS232CカードやFT245カードも使用できます。)ROM/RAMディスクと仮想ドライブの切り替えは専用ソフト RRWCHG で行います。RAMディスクを使用する際には、最初にフォーマットプログラム RAMFMTFB で初期化します。


RRWCHGによる切り替え


RAMFMTFBによる初期化


使用するドライバソフトですが、下図にありますように、今までに紹介したドライバソフトを改良したものを使用しています。




FM側のソフトが3つに分かれているのは、常駐部があるので少しでもサイズを小さくするためで、それぞれ専用ソフトになっています。なお、以前にも書きましたがFM側の常駐型のソフトの制作にあたっては、轍名聡氏による「裏RAMディスク」(Oh!FM誌1984年11月号)を参考にさせていただきました。感謝いたします。

WindowsPC側はいずれの場合も同じソフト FBasDrvWin.exe で、以前紹介しましたようにiniファイルでシリアル用とFT245用を切り替えます。


ROM/RAMディスクボードがない場合でも

また、上図で分かりますように、拡張ROM/RAMディスクボードがない場合でも、FM-7/77用のRS-232CカードかFT245カードのいずれかがあれば、FM側の WINDRVU7(またはRDSKWINF) とWindowsPC側の FBasDrvWin.exe をインストールすることでWindowsPC上の仮想ドライブを使用することができます。


FBasDrvWin画面(以前紹介したものです)


これらのソフトの中には以前と同じものもありますが、まとめてOneDriveに上げておきます。なお、FM側のソフトはバイナリだけでなくソースも含めてありますし、入力用の補助プログラムも用意してあります。




2021年7月8日木曜日

FM-7/77用の改良版I/O拡張基板用のF-BASICドライバを作成

FM-7/77用のI/O拡張基板用にF-BASIC用のドライブソフトを作成しました

6月10日に報告した「FM-7/77用のI/O拡張基板を改良しました」ではF-BASIC用としては使用しないようなことを書きましたが、Flex9やOS-9では使えるのにF-BASICでは使えないというのはつまらないので、F-BASIC用のドライブソフトも作成することにしました。


F-BASIC用のソケットも実装しました

元にしたのは、2019年6月12日の「FM77用の拡張IOボード、ROM/RAMディスクボード」でのFLEX9版の拡張ROM/RAMドライブソフトと、2019年9月25日の「FM-7/77のF-BASIC用の仮想ドライブ構築ソフトが完成」での裏RAMを使用したWindows上の仮想ディスクのドライブソフトの2つで、この2つのソフトを合体させて裏RAMに置けば良いだろうと考えました。

両方とも動作実績がありますので、それ程苦労することはないだろうと思って始めたのですが、いつものようにドジをしたせいで見込み以上に時間もかかりながらも、何とか動くものができました。未だ動作に納得がいかない点があるのですが、とりあえずここまでをまとめておきます。


制作したソフト

作成したのは、FM-7/77で動作させるもので

(1)RDSKWIN : ROM/RAMディスク&Windows仮想ディスクのドライブソフト

(2)RRWCHG : ROM/RAMディスクとWindows仮想ディスクを切り替えるソフト

(3)RAMFMTFB : ドライブ3のRAMディスクを初期化するソフト

の3本です。Windows側の仮想ディスク構築ソフトは以前のものをそのまま使用しています。


使用手順

使い方は次のようです。

1.FM-7を起動して、ドライブ数に4を指定する。

2.LOADM "RDSKWIN",,R でFM-7側のドライブソフトを起動する。

3.Windows側で FbasDrvWin.exe を起動し、ドライブ2と3にF-BASICのイメージファイル(.77, .88, .DSK)をセットしておく。


手順1.2.3.ではI/Oエラーとなる

【注】この状態で、ドライブ2はROMディスク、3はRAMディスクに設定されているが、なぜか FILES "2:やFILES "3: を実行しても Device I/O Error が出るので、次の操作を行う。

4.LOADM "RRWCHG",,R を起動するとドライブ2がROM、3がRAMと表示されるが、2または3を入力すると該当のドライブがWindows DRVに切り替わるので、その後 0を入力して終了する。



Windows仮想ディスクに切り替え

5.FILES "2:またはFILES "3:を実行する。Windows仮想ディスクを使用する場合はこの状態で使用する。

Files "3: でWindows仮想ディスクが読めています

Windows仮想ディスクを読んだ


Windows側でのセクタを読んでいる様子です

Windows画面の表示

6.ROM/RAMディスクを使用する場合は、再度 LOADM "RRWCHG",,R を実行してドライブ2または3をROMやRAMに切り替えて使用する。

今度はちゃんとRAMディスクが読めています。


RAMディスクが読めている


追加:最初にRAMディスクを使用するときには、LOADM "RAMFMTFM",,R を実行して初期化をしておく。バッテリバックアップされているので、電源を切ってもデータは保持されている。

具体的な使い方ですが、ROMディスクにはF-BASICのシステム等を入れておき、必要ならRAMディスクに転送してRAMディスク上でアセンブルやコンパイルを実行するという形でROM/RAMディスクを使用し、処理結果はWindows仮想ディスクに転送してWindowsで保存するというのが便利かなと思います。


未解決の点

以上ですが、手順1,2,3のみで良いはずなのに、最初のみ手順4で一度はWindows仮想ディスクをReadする必要があるのですが、その理由はまだ分かっていません。

RDSKWIN のソースを見ていただければ分かりますが、ROM/RAM用のRead1, Write1とWindows仮想ディスク用のRead2, Write2とは全く別ルーチンとなっているのにと思いますが、ワークエリアの設定に問題があるのかもしれません。

作成した3つのソフトのソースと以前から使用しているFbasDrvWin.exe(バイナリ)をOneDriveに上げておきますので、アドバイス等ありましたらよろしくお願いします。


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用のどちらも以前紹介したものをほぼそのまま使用しています。


2021年5月26日水曜日

FM-7/77にGOTEKを接続する(その2 新基板の場合)

 またGOTEKを入手してみたのですが... 基板が新しくなっていた

今までにFM-7, FM77AV, FM77AV40SXにGOTEKを装着してきました。そのうちのFM-7用はPC用の外付けFDDのケースと電源を利用して、GOTEKと2DDのFDDを装着して使用していました。ところが、その電源が不調で5Vのはずが8Vも出力されることがあり、そのためにUSBメモリが破損してしまい、さらにGOTEKも不調になったような気配を感じたので、新たにGOTEKを2台追加購入してみました。

今まではFM77に合うようにと黒色を購入していたのですが、今回はグレーにしてみました。購入時にチェックした点は、7セグが3桁であることと背部のピンヘッダの穴が9ピンであることの2点です。今回で8台目の購入となり、最初はAmazonで購入していましたが、今は選択の幅の広いebayで購入しています。(どちらにしろ中国から送られてきますので...)


基板がかなり変更されていた!

以前よりも短い期間で送られてきたのは良いのですが、7セグをOLED液晶ディスプレイに交換し、ロータリーエンコーダを追加するためにケースを開けて基板を見てびっくりしました。何と、ロータリーエンコーダの接続ピンがないのです。さらにCPUが変更されており、パターンも細かいところで異なっています。(下図画像参照)


左:旧基板、右:新基板



左のものは既にOLED、ロータリーエンコーダや圧電ブザーが取り付けてあります。基板を比較すると結構異なっているのが分かるかと思います。CPUは従来のものがSTM32F105であるのに対して今回のものはAT32F415で、ピン数も異なっています。


ロータリーエンコーダの接続先は分かりにくかった


OLED液晶ディスプレイの接続先は旧基板とそれ程異なっていなかったので、テスターで調べながら接続することができました。また、エンコーダのプッシュボタンも同様でした。
しかし、エンコーダのCLKとDTピンは基板に該当のピンがありませんので、新旧基板を見比べながらあちこちに接続してみましたがうまく行きませんでした。困った挙句、ウエブで「GOTEK Rotary encoder」という語で検索をかけてみました。その結果、「Gotek Floppy Emulator:New 2021 Flash Floppy and Mods Procedure!」というユーチューブの動画を見つけました。
この画像によると、新しいGOTEKはCPUがAT32F415になり、それに伴って基板も変更されているそうです。おかげでCLKとDTの結線先も分かりました。


新基板の結線図


OLED液晶ディスプレイとロータリーエンコーダを装着した様子です。ハンダ付けは裏面で行っています。フロッピーのアクセス音がなくても不自由はなかったので圧電ブザーは装着していません。


新基板の完成した状態



なお、OLED液晶ディスプレイは相性があるようですが、私の場合は全て下記画像のものを使用しており、特に不具合はありません。ロータリーエンコーダはプッシュスイッチ付きであればどれでも良いようです。


使用したロータリーエンコーダとOLED液晶ディスプレイ


OLED液晶ディスプレイの画面は小さいのですが、サイズはちょうどですし文字は見やすいです。


動作チェックの様子



使用感ですが、もちろん今までのものと変わった点はありませんが、ロータリーエンコーダでディスクイメージを選べるのはとにかく便利で重宝しています。
(蛇足ですが、現在使用中のGOTEKが電源故障のために不調になったのではないかと疑っていましたが、どうも杞憂だったようで現在は普通に使えています。)

新基板の情報があまり多くないようですので、多少なりとも参考になればということでアップしました。

2021年4月17日土曜日

FT-245カード用の転送ソフトの使い方

 FT-245カード用の転送ソフトの使い方を解説し、最新版を公開します


1月22日のブログで紹介しましたFT-245カード用の転送ソフトですが、その後、開発者の「思い付きハードでソフトに七転八倒」さんがメニューソフトを用意されたり、ドライバーソフトを改良したりされましたので、改めて使い方について解説し、最新のソフトも公開します。

事前準備

まずFM-7/77にFT-245カードをセットしてWindows機とUSBケーブルで接続します。

そして、FM-7/77ではメニューソフトFM7FD-UIを起動します。起動時にドライバーFDIMGFM2も読み込まれます。(ドライバーFDIMGFM2はディスク0から読み込みますので必要ならメニューソフト中の15行 LOADM”FDIMGFM2”を書き換えてください。)

Windows機ではFDDIMG_RW77.exeを起動し、最初に「COMポート」メニューから使用するCOMポート番号を設定します。

これで準備完了です。


構成図


処理開始


FM-7/77でメニューソフトFM7FD-UIを実行すると図のようなメニューが表示されます。


処理内容は次の通りです。

1:FM7のディスクの全セクタをPCに転送してイメージファイルとして保存する。
2:PCに保存されているディスクイメージをFM7のディスクの全セクタに書き込む。
3:FM7上の指定したメモリ範囲をPCに転送してイメージファイルとして保存する。
4:PCに保存されているメモリイメージをFM7に転送してメモリに展開する。
5:FM7のディスクをトラック0にシークする。
6:FM7のディスクの指定したセクタ内容をPCに転送して保存する。
7:メニュープログラムを終了する。

処理1:FM-7のドライブ1にイメージ化するディスクをセットする。
    Windows側でメニュー「FDDデータ」->「データ受信」を選択
    FM-7側で1を実行
 トラック番号がカウントアップせず、(応答なし)と表示される場合がありますが、転送は正常に実行され、1分ほどでFDDIMG_RW77.exeがあるフォルダにDIMG_20201130.datというファイルが作成されます。
これは各セクタの先頭にセクタデータ16バイトがついた形で先頭セクタから最終セクタまで並んだ形のファイルです。(.datファイル)
これを通常の.D88(.D77)形式に変換するには、メニュー「ファイル」->「開く」でこのファイルを選択しておいて、メニュー「D88形式ファイル」->「作成開始」を実行します。
保存ファイル名を設定すればその名称の.D88ファイルが作成されます。同時に.DSKファイルも作成されますが、これは各セクタ先頭のセクタデータが削除されたセクタデータのみが並んだものです。

処理2:FM-7のドライブ1に書き込むディスクをセットする。
    Windows側でメニュー「ファイル」->「開く」で送信する.datファイルを選択する。
    FM-7側で2を実行
    Windows側でメニュー「FDDデータ」->「データ送信」を選択
 トラック番号がカウントアップせず、(応答なし)と表示される場合がありますが、転送は正常に実行され、1分ほどで選択した.datファイルがディスクに書き込まれます。

処理3:Windows側でメニュー「データ転送」->「受信」を選択
    FM-7側で3を実行し、転送するメモリの開始アドレス、終了アドレスを16進数で入力する。
Sirial_FM2PC20210103.datというファイルが作成されます。

処理4:Windows側でメニュー「データ転送」->「送信」を選択
    FM-7側で4を実行し、保存するメモリの開始アドレス、終了アドレスを16進数で入力する。終了アドレスは実際に転送する範囲より大きくても構いません。
    
処理5:FM-7のドライブ1にディスクをセットする。
    FM-7側で5を実行
 通常使用することはありませんが、何かの原因で処理が中断された場合などにドライブのヘッドをトラック0に戻します。

処理6:FM-7のドライブ1にセクタを読み出すディスクをセットする。
    Windows側でメニュー「セクタデータ」->「セクタ受信」を選択
    FM-7側で6を実行し、読み込むセクタのトラック番号、セクタ番号、サイド番号を16進数で入力する。
SIMG_20201206.datというファイルが作成されます。先頭に16バイトのセクタデータがついています。

【注意】・アドレス値などの入力した値の正当性のチェックはしていません。
・何らかの原因で処理途中で中断してしまった場合には、Windows側のDMIMG_RW77.exeを強制終了し、Windowsも一旦サインアウトしたうえで再度サインインしなければならない場合もあります。
・Windows側のコントロールソフトFDIMG_RW77.exeには、メニューを見ると分かりますように他の機能もありますが、ディスクへの書き込みなどの注意が必要な機能もありますので、メニューソフトには入っていません。
必要に応じて、FDIMG_RW77の使い方.txtを参照しながらご使用ください。

紹介したFDIMG_RW77.exe、FDIMGFM2、メニューソフトFM7FDUI2、FDIMG_RW77の使い方.txtをOneDriveに上げておきます。

【追記】
なお、FM-7/77側の機械語プログラムFDIMGFM2を手入力する手間を多少なりとも省くために、開発者の下記のブログでは53バイトのローダープログラムを入力し、それを用いてWindows上のFDIMGFM2をFM-7/77にロードする方法が紹介されています。