当退格=0x100时,Ascii或扫描码或某种键盘输入
我正在使用麻省理工学院的XV6开源操作系统 试图弄清楚地球上什么东西可以退格=0x100? 我想添加功能,如右箭头和左箭头来控制控制台,我找不到正确的数字来捕捉它们。 例: 那么我的Q在哪张表上,BACKSPACE=0x100?它不是ASCII码。。。在扫描代码中找不到它。 在Ubuntu上尝试了showkeys命令,但没有成功 任何有更多经验的人或碰巧参加过麻省理工学院操作系统课程的人:)当退格=0x100时,Ascii或扫描码或某种键盘输入,c,unix,keyboard,operating-system,xv6,C,Unix,Keyboard,Operating System,Xv6,我正在使用麻省理工学院的XV6开源操作系统 试图弄清楚地球上什么东西可以退格=0x100? 我想添加功能,如右箭头和左箭头来控制控制台,我找不到正确的数字来捕捉它们。 例: 那么我的Q在哪张表上,BACKSPACE=0x100?它不是ASCII码。。。在扫描代码中找不到它。 在Ubuntu上尝试了showkeys命令,但没有成功 任何有更多经验的人或碰巧参加过麻省理工学院操作系统课程的人:) 非常感谢 这是一个自定义字符表。0x100是control+H,使用“H”的定义和控制顺序:在控制台中签
非常感谢 这是一个自定义字符表。0x100是control+H,使用“H”的定义和控制顺序:在控制台中签出\u intr()。可以在中找到表定义。正如您所发现的,左边是0xE4(右边是0xE5)。这是一个自定义字符表。0x100是control+H,使用“H”的定义和控制顺序:在控制台中签出\u intr()。可以在中找到表定义。正如您所发现的,左边是0xE4(右边是0xE5)。您是否尝试过捕获您感兴趣的键并输出您得到的代码?是的,我尝试过类似的方法,但我能得到的只是退格得到一个int为256的字符。。。无法匹配更多的键,因为我似乎打不到正确的键,如果每次单击都打印,XV6就不会运行(这与使用该函数的启动序列有关,我正在更改)Ok设法让它以228和229整数运行,仍然不知道原版使用的是什么表,但在我知道之前,我将使用这个int,并像这样将c转换为int:(int)c=228您使用什么函数来设置
c
?您是否尝试过捕获您感兴趣的键并输出您得到的代码?是的,我尝试过类似的方法,但我能得到的只是退格得到一个int为256的字符。。。无法匹配更多的键,因为我似乎打不到正确的键,如果每次单击都打印,XV6就不会运行(这与使用该函数的启动序列有关,我正在更改)Ok设法让它以228和229整数运行,仍然不知道原版使用的是什么表,但直到我知道之前,我将使用这个int并将c转换为int,就像这样:(int)c=228您使用什么函数来设置c
?是的,这就是我要找的。谢谢。是的,这就是我要找的。谢谢
#define BACKSPACE 0x100 // given code
#define RIGHTARROW 0x99 //my addon 0x99 is not the right hex just an example
if(c == RIGHTARROW){
....
}