PC-6001 / PC-6601 / SR 用 FDD エミュレータ - SD6031WIF -

pic1pic3

はじめに

本機を PC-6001 初代機に接続すると、SD カード上のディスク・イメージをフロッピーディスクとして扱うことが出来ます。

本機を PC-6601/SR に接続すると、SD カード上のディスク・イメージを外部フロッピーディスクとして扱うことが出来ます(えすび氏担当部分)。

8255、SRAM を搭載していますので、拡張ユニット、ROM RAMカートリッジは必要ありません。

PC-6001 初代機で使用するには、拡張 BASIC の ROM イメージをフラッシュメモリに焼く必要があります。ROM イメージをフラッシュメモリに焼くには、フラッシュメモリ EN29F002T ライタが必要ですが、本機をお買い上げのお客様には、初回に限り書き込みサービスを致しますので、ROM イメージをメールでご送付下さい。
拡張 BASIC の ROM イメージは、PC-6001 mkII の ROM イメージで代用することができます。その場合、ディスクのオートスタートが可能になります。

マニュアル

ROM イメージの準備

拡張 BASIC の ROM イメージは、8KB のイメージのあとに 00 を追加して全体を 16KB として下さい。

PC-6001 の外部 ROM は 8KB x 2 の 16KB であり、フラッシュメモリ EN29F002T は 256KB であるため、16 個の ROM イメージを載せることが出来ます。

フラッシュメモリ EN29F002T ライタで、ひとつだけイメージを書き込む場合、データのあとにダミーデータを追加し、きっちり 256K バイト (262144 バイト) としてください。

PC-6001 mkII の ROM イメージを使用する場合のパッチの当て方

BASICROM.62 の以下を変更。

4000:2A 29 FF E5 → 41 42 D1 61
402C:3E C3 32 → C3 EC 61
4030:FF 21 38 → C3 DE FF
40B2:FE 6C → FE 4C
5534:CD 8A FE → 7E 00 00
6095:CD ED 10 → CD DE 10
609C:DA 90 26 → D8 00 00
61CD:C3 → C9

61D0~を以下に変更。

61D0:76 31 00 E7 01 84 00 C5
61D8:21 FF BF 3E D9 46 77 BE
61E0:70 3E 02 20 01 3C 32 4E
61E8:FF C3 18 60 3E C3 32 CC
61F0:FF 21 38 40 22 CD FF C9

0x4000~0x61F7 を切り出す。

以下に 00 を追加して、全体を 16KB とする。

PC-6001 / PC-6601 切り替えスイッチの機能

PC-6001 初代機で使う場合は PC-6001 に、PC-6601/SR で使う場合は PC-6601 にしてください。

SELECTスイッチの機能

SELECT スイッチの 1-4 で、16 個の ROM イメージのうち、どれを選択するかを指定します。1 が LSB、4 が MSB であり、4 桁の 2 進数で表された番号の ROM イメージが選択されます。

SELECT スイッチの 5 は、ROM の ON/OFF を指定します。初代機で、本機を 16KB の拡張 RAM のみとして使いたい場合や、本機を PC-6601/SR で外部フロッピードライブとして使用する場合は OFF にして下さい

SELECT スイッチの 6 は、16KB の SRAM の ON/OFF を指定します。

接続方法

pic2

緑と赤のLED は、それぞれリード時、ライト時に点灯します。

ディスク・イメージ

本機は、FAT16 ( Windows では FAT、標準のアロケーションサイズでフォーマット) でフォーマットされた SD カードのルート・ディレクトリに掘られた D1、D2、D3、D4 ディレクトリに入っている各 P31 ファイルを、フロッピーディスクとしてマウントします。 D1 - D4 はそれぞれ、ドライブ 1 - 4 を表します。

PC-6601/SR で使用する場合、ドライブ 1 - 2 のみ認識されます。

複数の P31 ファイルがある場合は、タイムスタンプの一番遅い P31 ファイルがマウントされます。ファイル更新日時変更のツールをイメージ・セレクタとして使えます。P31 ファイルをファイル更新日時変更ツールのアイコンにドラッグすると、そのファイルのタイムスタンプが最新になり、そのファイルがマウントされるようになります。

PC-6001 のエミュレータで使用される D88 ファイルと P31 ファイルの相互変換は、D88_P31、P31_D88 という Windows 上のプログラムで行います。

D88_P31D88 (1D, 1DD) → P31 : 1D, 1DD の D88 ファイルを D88_P31.exe アイコンにドロップ
P31_D88P31 (1D) → D88 : 1D の P31 ファイルを P31_D88.exe アイコンにドロップ
P31_D88_1DDP31 (1DD) → D88 : 1DD の P31 ファイルを P31_D88_1DD.exe アイコンにドロップ

なお、上書きの確認は行っていないので、オリジナルのイメージに上書きしないように十分ご注意下さい。

ダウンロード

D88_P31 と P31_D88 のバイナリとソースはこちらからダウンロードして下さい。
ゆみたろさんの PC6001V の D88 を扱う部分を参考にさせて頂きました。ありがとうございます。

ファームウェアはこちらからダウンロードして下さい。

技術情報

仕様
回路図

HDD モード

SD6031/WIF を HDD として使うことができる仕掛け (HDDモード) を、えすび氏がファームウェアに実装して下さいました。BASICからは使えないので、それなりのプログラムを書く必要があるらしいです。HDD モードの詳細は、彼のブログ記事をご覧下さい。

注意事項

PC-6001 mkII では使用できません。SD6031 を使用して下さい。
書き込みが出来ない場合は、SDカードがロックされていないか、P31イメージが読み出し専用になっていないかどうかを確認して下さい。
SDカードがマウントされない場合は、何度か抜き差ししてみて下さい。
2G バイトまでの SD カードを想定していますが、相性の問題がある可能性があります。できるだけ付属の SD カードと同じものをご使用下さい。

免責事項

私個人による手作りです。 ハードウェアの不良等の場合は誠実に対応させて頂きますが、 万が一、ご使用で損害が生じた場合、西田ラヂオでは製品以外について保証はできません。 どうか、ご理解のほどお願い致します。

謝辞

mkII 用の SD6031 に、8255 とフラッシュメモリを載せて初代機で使えるようにしようと、軽い気持ちで開発を始めましたが、結構なハードル&展開がありました。最初の PCB の設計ではミスが入ったし、そもそも私の初代機が壊れていて買いなおす必要があったし、えすびさんが大幅にファームウェアを改良するというフェーズも加わり、予想を遥かに超える展開になりました。最後の方はえすびさんに任せっぱなしで、僕は音楽活動をやってこちらはサボってたけど^^、彼のおかげで素晴らしいものになりました。

とても楽しい経験をさせて頂きました。ありがとうございました。

えすびさんは SD6031 用イメージ・セレクタも作られています。