tunozemichanの日記 / tunozemichan's diary

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

SORD M23のキーボード

SORD M23のキーボードの仕組みについて調べました。

 

M23のキーボードはI/Oポートe0~efに割り当てられています。何かキーを押すと、このポートのどれかに04h、08h、10h、20h、40hが入ります。

 

I/Oポートe0~efとこの値はキーの物理的に位置によって決まります。もちろん特殊キーは下の画像の関係には従いません。

 

I/Oポートとその値の関係(例外あり)

 

M23用のワードプロセッサのキー入力周辺のコードではかなり複雑な計算をして、画面に表示する文字を決めています。これは、QWERTY配列があったりAZERTY配列があったりと国ごとにキー配列が異なるのでそれに対応するため、また、一対一対応でコードを書くとメモリを食いすぎるためだと思われます。

 

今回は、とにかく動くか確かめたかったので、計算のコードを解析するのは後回しにして、このキーはこの文字という一対一対応のコードを書いて、前回の画面に文字を出すコードと組み合わせることで、「キーを押すとその文字が画面に出る」プログラムを書きました。リターンキー(現代のPCではENTERキー)の処理もしてあります。