Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 在部件中打开键盘LED_Assembly_Io_X86_Keyboard_Qemu - Fatal编程技术网

Assembly 在部件中打开键盘LED

Assembly 在部件中打开键盘LED,assembly,io,x86,keyboard,qemu,Assembly,Io,X86,Keyboard,Qemu,我想通过向0x60端口发送0xED命令并在同一端口之后发送包含:00000111b的参数字节,来打开所有键盘指示灯 位3-7:必须为零 位2:Capslock LED(1=打开,0=关闭) 位1:Numlock LED(1=打开,0=关闭) 位0:滚动锁定LED(1=打开,0=关闭) 代码: 但它不起作用您如何测试它?如果它在DOSBox或其他什么东西里面,你就无法访问真正的硬件,只有连接到DOSBox的虚拟PS/2键盘。如果是在真正的硬件上,您是否使用USB键盘和PS/2键盘的BIOS模拟?我

我想通过向0x60端口发送0xED命令并在同一端口之后发送包含:00000111b的参数字节,来打开所有键盘指示灯

位3-7:必须为零

位2:Capslock LED(1=打开,0=关闭)

位1:Numlock LED(1=打开,0=关闭)

位0:滚动锁定LED(1=打开,0=关闭)

代码:


但它不起作用

您如何测试它?如果它在DOSBox或其他什么东西里面,你就无法访问真正的硬件,只有连接到DOSBox的虚拟PS/2键盘。如果是在真正的硬件上,您是否使用USB键盘和PS/2键盘的BIOS模拟?我使用USB键盘并在QEMU下测试代码,我可以读取键盘输入,但您的QEMU是否有权限写入硬件键盘指示灯?可能不会。也许你的操作系统会让qemu从键盘上读,但不会写。您运行qemu的操作系统是什么?你看过QEMU的键盘模拟文档了吗?我在Windows10中,还没有看过QEMU的文档
mov al,0xED
out 0x60,al

mov al,00000111b
out 0x60,al