EX-80の表示がうまくいったので、キーボードを考えてみました。
元々のキーボードは16進用でASCIIの入力ができません。PS2のキーボードをつなぐのもインターフェースが必要になり面倒です。データダウンロード用のシリアル使いまわしてキーボード代わりにしてみました。
EX-80側のアセンブラです。文字コードのテーブルが特殊なので、簡易の変換をしています。本来は8251の初期化が必要ですが、プログラムをロードする時にモニターがしてくれているので、入ってません。
;
TVCLR EQU 036CH
TVDSP EQU 02DEH
; 8251 ports
CMTDAT EQU 0DCH
CMTSTS EQU 0DDH
ORG 8200H
CALL TVCLR
LOOP
IN CMTSTS
MVI B, 02H
ANA B
JZ LOOP
CALL DATIN
JMP LOOP
DATIN
IN CMTDAT
CALL PUTC
RET
PUTC MVI B,60H
CMP b
JNC PUT1
MVI B,40H
CMP B
JNC PUT2
CALL TVDSP
RET
PUT1
SUI 60H
CALL TVDSP
RET
PUT2
SUI 40H
CALL TVDSP
RET
MacでFTDIなモジュールのbitbangでキーを送ります。
exkeyを実行して入力したものが表示できました。