2024-02-18 17:50:47 +01:00
|
|
|
#include <kbd.h>
|
|
|
|
|
|
|
|
static inline u8
|
|
|
|
inb(u16 port)
|
|
|
|
{
|
|
|
|
u8 ret;
|
|
|
|
__asm__ volatile ( "inb %w1, %b0"
|
|
|
|
: "=a"(ret)
|
|
|
|
: "Nd"(port)
|
|
|
|
: "memory");
|
|
|
|
return ret;
|
|
|
|
}
|
|
|
|
|
2024-02-18 17:59:03 +01:00
|
|
|
u8
|
2024-02-18 17:50:47 +01:00
|
|
|
waitkey(void)
|
|
|
|
{
|
2024-02-18 17:59:03 +01:00
|
|
|
u8 k;
|
2024-02-18 17:50:47 +01:00
|
|
|
while ((k=inb(0x60))<128);
|
|
|
|
while (inb(0x60)>128);
|
|
|
|
|
|
|
|
return k;
|
|
|
|
}
|