PC-8801 mkII 用 USB キーボード・アダプタ

pic1

はじめに

PC-8801 mkII に USB キーボードを接続するためのアダプタです。 手に入りやすく安価なキーボードで 88 mkII が使えます。

本プロジェクトはオープンプロジェクトです。ファームウェアのソースコードを公開しています。

動作確認したキーボード

ELECOMTK-U12FYALG
BUFFALOBSKBU02

接続方法

pic2pic3

図の様に DIN コネクタを差し込んでください。ピンが曲がりやすいので、注意して差し込んでください。
図の用に USB キーボードを接続してください。プラグ&プレイは出来ません。
電源 ON 前に接続して下さい。

キー割り当て

割り当てが同じキー割り当てが異なるキー
{0-9} {A-Z} * / + - =
, . @ [ \ ] ^ _ : ;
→ ← ↑ ↓ {F1-F5}
Shift Ctrl Space Esc Tab
PC-8801mkIIWindows
RETEnter
HOME CLRHome
INS DELBack Space
CAPSCaps Lock
STOPPause Break
カナカタカナ ひらがな ローマ字
GRAPHAlt
COPYPrint Screen
HELPScroll Lock
ROLL UPPage Up
ROLL DOWNPage Down

注意事項

USBインタラプト通信中は、88 mkII からのキースキャンに反応できません。ゲームによっては動きがぎこちなくなる場合があります。
88 mkII からのキースキャンへの反応を少しでも良くするため、USBインタラプト通信は (本来 10ミリ秒に一度のところを) 30ミリ秒に一度にしてあります。
同時押しは3つまで認識します。

ファームウェア

本製品をよりご活用頂くため、マイコンのファームェアのソースコードを公開します。 ライセンスは GNU GPL3 としますのでご活用下さい。

こちらからダウンロード出来ます。

免責事項

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

雑談

簡易 USB ホストの実験には、以前に成功しており、APPLE II 用のジョイスティック・アダプタを実現していました。また、以前に作った88 mkII 用キーボード・エミュレータは、現代の PC と USB で繋ぎ PC のキーボードを使う物でしたが、やはり直接 USB キーボードを繋げた方が良いと言う意見がございました。
今回、一つのマイコンで 88 mkII のキーボードのスキャンに反応しつつ USB 通信処理を行うのは、なかなか大変でしたが、なんとか満足できる物が出来ました。結構トリッキーなファームウェアになってしまいましたので、ソースはあまり参考にならないかもしれません。
コネクタを丈夫な市販のものにしました。