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

RE: [jewell@mit.edu: port-hpcmips/9207: pbsdboot with option -d doesn't understand keystrokes]



PR port-hpcmips/9207 の件ですが、

-----Original Message-----
From: Takao Shinohara <shin@sm.sony.co.jp>
To: TAKEMURA, Shin <takemura@netbsd.org>
Cc: port-hpcmips-ja@jp.netbsd.org <port-hpcmips-ja@jp.netbsd.org>
Date: Tuesday, January 18, 2000 10:32 AM
Subject: Re: [jewell@mit.edu: port-hpcmips/9207: pbsdboot with option -d
doesn't understand keystrokes]


>wsconsoleというか、KIUのドライバの問題のようです。
>
>pollingモードで複数のキーが同時に押されたときの挙動が悪いようなのですが、
>KIUドライバの動作の詳細を理解していないので、それ以上は追いかけていませ
>ん。


arch/hpcmips/vr/vrkiu.c の vrkiu_cngetc() で、
キーに変化がないときに WSCONS_EVENT_ALL_KEYS_UP を返していたので、
shift キーなどが無効化されていました。
キーに変化があるまで busy wait するのが正しいようです。
これを修正したところ、ESC+ALT+CTRL 同時押し後ほぼ同時に
release するとイベントを取りこぼし、CTRL などが押しっぱなし
の状態になる現象が発生しました。
これは detect_key() で polling 時のキュー(キューとは言えない)
の長さが 1 に限定されているためでした。

これらを修正して commit しました。
gnats の database も closed に変更しました。

Takemura