fix: incorrect settings of msi registers.
[lunaix-os.git] / lunaix-os / kernel / service / pconsole.c
1 #include <lunaix/keyboard.h>
2 #include <lunaix/lxconsole.h>
3 #include <lunaix/proc.h>
4
5 void
6 _pconsole_main()
7 {
8     struct kdb_keyinfo_pkt keyevent;
9     while (1) {
10         if (!kbd_recv_key(&keyevent)) {
11             yield();
12             continue;
13         }
14         if ((keyevent.state & KBD_KEY_FPRESSED)) {
15             if ((keyevent.keycode & 0xff00) <= KEYPAD) {
16                 console_write_char((char)(keyevent.keycode & 0x00ff));
17             } else if (keyevent.keycode == KEY_UP) {
18                 console_view_up();
19             } else if (keyevent.keycode == KEY_DOWN) {
20                 console_view_down();
21             }
22         }
23     }
24 }