tunozemichanの日記 / tunozemichan's diary

SORD社のコンピューターM68やM68MXの解析についての備忘録です。This blog is a memorandum about the analysis of SORD's computers M68 and M68MX.

SORD M68 Keyboardの解析(その5)

おおよその回路構成と信号のやりとりの想像がついたところで、ロジックアナライザで波形を直接観察しました。

信号の全景

最上段が、キーボードからM68に送信される信号で、その下が、M68からキーボードに送られてくる信号です。下は、74166と74164に入力されているCLK信号(1MHz)です。

信号がとびとびに観測されています。一つの塊を拡大してみます。

 

 

1つの塊に見えた信号は、二つの周波数から構成される信号でした。一番先頭の波形を拡大します。

 

 

入力信号は、立ち上がりから立下りまで4uSec、出力信号は、2uSec遅れて、立下りから立ち上がりまで2uSecの波形でした。

キーボードのキーを全く押さない時は、この波形がずっと続きます。

おそらく、この入力信号の4uSecがキーボードにおけるある列のスキャン命令で、2uSec遅れて、キーボードがその列の押下情報を送っていると思われます。

実際に"P"のキーを押した信号を見てみます。

”P"キーを押下した時の波形

推測通り、出力波形に変化が見られます。2か所に出現するのは、M68が連続で計2回スキャンしているからだと思われます。これはBOOT ROMのキー入力待ちのコードでも2回スキャンしているので、そこからの推測です。

この変化した波形を拡大します。

波形の詳細

上の波形が実測値。下がビットに当てはめたものです。8ビットのはずですが、10ビットになる上に、CLKが1MHzで200nSecは分解能以下なのでは?と思いますが、まあ、その辺は置いておくと、08hとなり、これはM23のキーボードでは、スキャンラインがあっているとすれば、まさに"P"のキーに当たります。

それが間違っていたとしても、もう波形がわかったので、PS/2キーボードを解釈し、この波形をエミュレートする回路を作れば、M68キーボードとなるでしょう。