1fc17fe17SAxel Dörfler#ifndef KEYBOARD_H
2fc17fe17SAxel Dörfler#define KEYBOARD_H
3fc17fe17SAxel Dörfler
4fc17fe17SAxel Dörfler
5fc17fe17SAxel Dörfler#include <SupportDefs.h>
6fc17fe17SAxel Dörfler
7fc17fe17SAxel Dörfler
8fc17fe17SAxel Dörflerunion key {
9fc17fe17SAxel Dörfler	uint16 ax;
10fc17fe17SAxel Dörfler	struct {
11fc17fe17SAxel Dörfler		uint8 ascii;
12fc17fe17SAxel Dörfler		uint8 bios;
13fc17fe17SAxel Dörfler	} code;
14fc17fe17SAxel Dörfler};
15fc17fe17SAxel Dörfler
16fc17fe17SAxel Dörfler#define BIOS_KEY_UP 		0x48
17fc17fe17SAxel Dörfler#define BIOS_KEY_DOWN		0x50
18fc17fe17SAxel Dörfler#define BIOS_KEY_LEFT		0x4b
19fc17fe17SAxel Dörfler#define BIOS_KEY_RIGHT		0x4d
20fc17fe17SAxel Dörfler#define BIOS_KEY_HOME		0x47
21fc17fe17SAxel Dörfler#define BIOS_KEY_END		0x4f
22fc17fe17SAxel Dörfler#define BIOS_KEY_PAGE_UP	0x49
23fc17fe17SAxel Dörfler#define BIOS_KEY_PAGE_DOWN	0x51
24fc17fe17SAxel Dörfler
25fc17fe17SAxel Dörfler#ifdef __cplusplus
26fc17fe17SAxel Dörflerextern "C" {
27fc17fe17SAxel Dörfler#endif
28fc17fe17SAxel Dörfler
29356f4957SAxel Dörflerextern void clear_key_buffer(void);
30fc17fe17SAxel Dörflerextern union key wait_for_key(void);
31fc17fe17SAxel Dörflerextern uint32 check_for_boot_keys(void);
32fc17fe17SAxel Dörfler
33fc17fe17SAxel Dörfler#ifdef __cplusplus
34fc17fe17SAxel Dörfler}
35fc17fe17SAxel Dörfler#endif
36fc17fe17SAxel Dörfler
37fc17fe17SAxel Dörfler#endif	/* KEYBOARD_H */
38