PS/2キーボードコンバータ for X68000

出来るだけ簡単な回路でPS/2キーボードをX68000に繋ぎます。

 

部品表

PIC12F1822 or PIC12F1840 1個
抵抗 330Ω 2本
セラミックコンデンサ 0.1μF 1個
ミニDIN 6ピンコネクタ 1個
ミニDIN 6ピンケーブル
基板とか配線材とかハンダとか 適当
   (以下はオプションです。実装しなくても動きます)
抵抗 100Ω 3本
ポリスイッチ 200mA 1個

X68000側のキーボードコネクタはミニDIN7ピンですが、オスコネクタが付いたケーブルは入手性がよくありません。また、コネクタだけを購入して使用する場合コネクタによってはカバーが68本体に干渉してうまく刺さらないことがあります。

ミニDIN7ピンソケットにはミニDIN8ピンコネクタがそのまま挿入出来ますので、ミニDIN8ピンコネクタの付いたケーブルが入手可能であれば代用出来ます(PC-98キーボード延長ケーブル、Macシリアルケーブル等)。私はミニDIN6ピンオスコネクタの付いたケーブルを購入して、コネクタ内部にある誤挿入防止ピンを折り取って使用しました(カモン社製PS/2キーボードケーブル、PSK-18)。幸い、足りない1ピンは今回使用していないので問題ありません。

minidin6p

入手の難しいパーツは無いと思います。秋葉原へアクセス可能であれば全て店舗で揃います。PICは秋月電子、ポリスイッチはマルツか千石電商で購入可能です。

ポリスイッチは万一5VとGNDがショートした場合にヒューズの役目を果たします。ショートが無くなれば自己復旧します。200mAで足りると思いますが、使用するPS/2キーボードにあわせて下さい。

 

回路図

回路図

回路図です。optionとなっている部品はなくても構いません。X68000と本アダプタを繋ぐケーブルはあまり長くしないで下さい。

 

キー配置

PS2X68

キー手前に記載されているのが元のPS/2キーボードのキーで、キートップの記載がX68000側の対応キーです(例:PS/2キーボードの “変換” キーは X68キーボードの “XF3” にマッピングされます)キーの刻印を生かす方向で設定しています。よって “A” キーの左隣は “CTRL” ではなくPS/2キーボードの刻印どおりの “Caps Lock” となります。

事実上、日本語109キーボード専用です。106キーボードでも動きますが、WinキーとAppキーに割り当てられたキー (OPT.1とかOPT.2など) が押せなくなります1 。また、X68000のキーボードのキーが113個に対してAT109キーボードはその名のとおり109個しかキーが無く、どうしてもキーが足りません。解決には色々なアイデアがあると思いますが、本アダプタでは使用頻度が低いと思われるキーのマッピングを諦めるという後ろ向きな対応としています。よって、次のX68000キーボードキーは対応キーの設定がありません

  • コード入力 (※)
  • 記号入力 (※)
  • 登録 (※)
  • テンキーのカンマ
  • テンキーのイコール

なお※印の上3つはACPI関係のキーにアサインしています (ACPI Power/Sleep/WakeUp)2 。よってこれらキーが存在しないキーボードでは「コード入力 / 記号登録 / 登録」 キーは押せません

その他、X68000キーボードの特徴である「キーボードからのTVコントロール」にも対応していません。

 

Firmware 1.3でキーリピート開始までの時間の設定とリピート間隔の設定に対応しました。Human68kのシステムディスクに添付のSWITCH.Xで設定して下さい。

first_ky

next_key

SWITCH.Xで設定された設定値を少し加工してPS/2キーボードに渡しているだけなので、X68000純正キーボードを繋いだ場合と異なる動作になります。
例えばSWITCH.XでNEXT_KEY (リピート間隔) を 6 に設定した場合、純正キーボードならリピート間隔は210ms周期になりますが本アタプタ+PS/2キーボードの場合は100ms周期になります。3

 

キー配置の変更方法

別ページを作成しました。こちらを参照して下さい

(English page is here)

 

作例

ブレッドボードで作成

ブレッドボードを使っての試作。セラミックコンデンサすら省略しています

ユニバーサル基板で作成(表)

ユニバーサル基板で作成(裏)

ユニバーサル基板を使って作ったプロトタイプ。オプションの100Ω抵抗とポリスイッチは使っていません。この時使用したケーブルは皮膜が熱に弱くて見た目がエライことになっています。

プリント基板で作成

プリント基板を設計、製造して作ってみました。各抵抗とポリスイッチは表面実装品を裏に実装しています。

 

Fiwmware

1.3
20160603
ps2kbd_x68 firmware

キーマップ変更機能追加

1.2 アダプタから68へのキーデータ送信処理の見直し
1.1 テンキー+が機能していなかった不具合の修正
1.0 初版

 

それにしてもプリント基板製造も安くなりましたね。この程度の小さい基板なら10枚製造しても1000円以下です(送料を入れても1500円程度)。パターンの設計はフリーのCADソフトを使っています。この程度の規模の回路ならユニバーサル基板で組みますが、使いたいICが表面実装品しかないとか、2~3個作りたいと言ったケースだとついプリント基板を製造してしまいます。良い時代になったものです。

  1. 最近は右Winキーの無いキーボードが増えてきましたのでOPT.1を多用する方はキーボード選びには注意してください []
  2. ACPI関係のキーはキーボードによってはキーリピートが利かないものがあるようです。もっともあまり押しっぱなしにすることも無いようなキーをアサインしていますが []
  3. さらに、本当に100ms周期でリピートがかかるかどうかはPS/2キーボード次第となります []

PS/2キーボードコンバータ for X68000」への8件のフィードバック

  1. F·H

    こ提供してくれてありがとうございます。でも組立してから問題があります:

    expertコールド起動後キーボードコンバータは反映されていません。それを抜いて、また差し込むと正常に使えます。

    原因は分かりませんが、できれば教えてください。

    返信
    1. fes 投稿作成者

      すみません、ちょっと調査のための時間をください
      調査のためいくつか質問させて下さい。X68000には背面スイッチと前面スイッチの2つがありますが、コールド起動はどちらのスイッチ操作を指していますでしょうか?
      また、「一度抜いて差し込むと正常に使えるようになる」との事ですが、正常に使える状態で「前面スイッチOFF→ONでOS起動」時は正常に動きますでしょうか?

      差し支えなければキーボードの型番と、そのキーボードはPS/2 & USBコンパチモデルか教えて下さい。コンパチモデルの場合「通常はPS/2で、アダプタを使うとUSB接続になる」のか「通常はUSBで、アダプタを使うとPS/2接続になる」のかもあわせてお願いします

      返信
      1. F·H

        こんにちは,こ返信ありがとうございます。

        私が入手したEXPERTは電源部改造済ありました。私の観察によれば、一旦背面のスイッチを入れたら、キーボードが通電します。

        そのため、前のスイッチがONされています, コンバータは動作しません。キーボードのLEDは一回点滅しますが、入力は反映されていません。この時、「一度抜き抜いて差込むと正常に使えるよになる。」^^;;

        PS/2 & USBコンパチモデルではないと確認できます。
        このキーボードはSOTEC社のOEM品は、品質は普通です。
        便利さのために、コンバータをキーボードの内部に設置しました。また、100 Rの抵抗は省略されています。
        完成の時間は、もう翌朝です。今は仕事のため、説明します。

        同じように作ったマウスでもよく使えますが、キーボードはもう一度挿抜しないと使えません。

        今晩は他のPS/2キーボードを試してみます。SOTECは私が見つけられる唯一の109キーボードです。

        再,こ返信ありがとうございます。

        返信
    2. fes 投稿作成者

      追加で質問させて下さい
      「それを抜いて、また差し込むと正常に使えます。」との事ですが、これは「アダプタ自体を一度EXPERTから抜いて、再度刺しなおした」ということでよいでしょうか?「アダプタはEXPERTに指したまま、アダプタに繋がったキーボードを一度アダプタから抜いて刺しなおした」でしょうか?

      返信
      1. F·H

        こんばんは、F·Hです。
        今日はこのSOTECキーボードを破棄, x68キーボードコンバータ内蔵再挑戦しました。
        キーボードの個体差は、この問題の原因となる可能性があります。
        キーボードに対して、品質が悪いものは使えません。
        USBとPS/2の対応ではないですが, しかし别のキーボードを変えたらこの問題を回避しました。
        SOTECのP/Nは: KB-821 Model番号は: KB112PA-03

        返信
        1. fes 投稿作成者

          ありがとうございます
          もしまだSOTECのKB112PA-03がまだ手元にあり、ファームの書き換えが可能でしたらよければこのテスト版ファームを試して頂けませんでしょうか

          https://drive.google.com/file/d/1BUchlKdXQAuMpIfdQDt-DSVnKh_M66pN/view?usp=sharing

          Google Driveからのダウンロードです
          これでもし症状が改善するならアダプタ側の問題で、かつ対応出来る可能性がありそうです
          (なおTEST-verなのでキーボードのLEDは光りません)

          返信
          1. F·H

            こんにちは、助けてくれてありがとうございます。

            提供した修正版のF/Wについては、今夜テストします。

            こ返信ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です