[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: eliminate_phantom_keys



----- Original Message -----
From: "Koji Suzuki" <suz@hpc.bs1.fc.nec.co.jp>
To: <port-hpcmips-ja@jp.netbsd.org>
Cc: <suz@hpc.bs1.fc.nec.co.jp>
Sent: Tuesday, August 29, 2000 5:04 AM
Subject: eliminate_phantom_keys


> vrkiu に入った eliminate_phantom_keys() なんですが、
> どうも調子が悪いようなので、直してみました。
>
> # 歯切れが悪いのは、あんまり自信がないから...
>
> 気がついたのは、echo $TERM と入力したときで、
>
> 1) SHIFT と R M が同時に入らないのは良いとして..
>   R を離しても M が入らない。
>
> 2) さらに時々 M ではなく DEL が入る。
>
> という不具合がありました。
>
> 1) の原因は、たぶん chip->kc_scandata を変更してしまっていることの
> ような気がします。
>
>   =>  chip->kc_scandata を変更しないように修正。
>
> 2) の原因は、たぶん スキャン中に入力すると、4 つのキーじゃなくて
> 3 つのキーが入るせいだと思います。
> (2 bit 立っているラインが先に 見付かるとは限らない)
>
>   => ループの構造を変更することによって対処。

これを参考に修正してみましたが、SHIFT, r, m の順で押したときは OK
でも SHIFT, m, r の順で押した場合は同じ症状が出ました。
そこで、さらにチェックを厳しく修正してみました。

http://cvsweb.netbsd.org/cgi-bin/cvsweb.cgi/syssrc/sys/arch/hpcmips/vr/vrkiu
.c?rev=1.25&content-type=text/x-cvsweb-markup

今度は大丈夫ではないでしょうか。

P.S. TX 系のマシンでも同じ問題が発生するようなので、チェックルーチンは
VR, TX 共通の場所に移してどちらでも同じ処理をするようにしましょう。
(そのうち...)

Takemura