这是我所拥有的:
#include "types.h" // Содержит типы переменных
// Что-то
void printf(char*);
// Что-то
uint32_t KeyboardDriver::HandleInterrupt(uint32_t esp) {
uint8_t key = dataport.Read();
if(key < 0x80) {
switch(key) {
case 0x02: printf("1"); break;
case 0x03: printf("2"); break;
// И так далее куча символов
这段代码,以及我在这里没有包含的更多代码,负责让键盘在操作系统上工作。如果此处没有指定某个字符,但按下了它,则显示以下内容:
KEYBOARD hexnumber,例如:KEYBOARD 0x5B,这是开始。
这就是我需要的:使 CAPS LOCK 按钮工作并显示大写字母。按住 SHIFT 也是如此,这样当您单击键盘顶部面板上的数字时,它会显示大写字母和符号。不使用标准库非常重要。哦,是的,我不需要你拼写每个字符,我可以处理。我需要精髓,如何使这些按钮在这种情况下工作?
帮助
SHIFT:0x2A
大写:0x3A
提前谢谢!C++ 语言