X68000 Z キーボード解析

WiresharkでX68000 Zのキーボード信号を解析してみました。


LED制御については現在解析中。


基本的にUSB HIDキーボードそのものです。




普通のWindows USBキーボードも使えました。
もちろん、特殊キーは使えませんが。



WiresharkでUSBデスクリプタを見ると、2種類あることが分かります。
一方は標準HID USBキーボード、もう一方は拡張HIDで120ビット分のキー状態があるのでNキーロールオーバー対応だと思われます。


PS/2キーボードをX68000 Zで使ってみました。
マイコンはSTM32F103C8T6を使いました(C6T6ではフラッシュ容量が足りなかったので)。
STM32ではデスクリプタを1つしか定義できないため、標準HID、もしくは拡張HIDのどちらかを定義します。
どちらを定義しても動作するのですが、レポートの設定はデスクリプタに合わせて修正が必要になります。
LED状態を受信するには拡張HIDのレポートID=10を指定してGetReportする必要があります。



このX68000 Z キーボード、数が出ないので規模の経済が働いていないとはいえ、29,500円相当だけあって本当にすごいと思います。
キースイッチが場末のキーボードのようなゴム式ではなく機械式になっていますし、筐体も作りがまったく違います。

OSSのキーボードドライバは以下のファイルだと思いますが、エミュレータ側がどう割り当てているかが重要なのであまり参考にならないかもしれません。
X68000 Z LIMITED EDITION EARLY ACCESS KIT_OSS\linux-tina\kernel-source\drivers\hid\usbhid\usbkbd.c

2023/04/28 新規
2023/05/14 更新 : PS/2キーボードで使用

戻る