1

XV6 MIT のオープン ソース OS を使用しています。

BACKSPACE = 0x100 ができる地球上で把握しようとしていますか? 右矢印や左矢印などの機能を追加してコンソールを制御したいのですが、それらをキャプチャするための正しい数字が見つかりません。元:

#define BACKSPACE 0x100 // given code
#define RIGHTARROW 0x99 //my addon 0x99 is not the right hex just an example   
if(c == RIGHTARROW){
     ....
    }

それで、私の Q はどのテーブルにあり、 BACKSPACE = 0x100 ですか? ASCII ではありません ... スキャンコードで見つかりませんでした。Ubuntuでshowkeysコマンドを試しましたが、うまくいきませんでした。

もう少し経験のある人、またはたまたまオペレーティングシステムのMITコースを受講した人:)

どうもありがとう !

4

1 に答える 1

1

カスタムキャラテーブルです。0x100 は control + H で、'H' の定義と制御シーケンスを使用します: console_intr() のconsole.cを確認してください。テーブル定義はkbd.hにあります。あなたが見つけたように、左は0xE4(そして右は0xE5)です。

于 2013-11-04T22:18:38.693 に答える