#ifndef _LINUX_KD_H #define _LINUX_KD_H #define GIO_FONT 0x4B60 #define PIO_FONT 0x4B61 #define GIO_FONTX 0x4B6B #define PIO_FONTX 0x4B6C struct consolefontdesc { unsigned short charcount; unsigned short charheight; char *chardata; }; #define PIO_FONTRESET 0x4B6D #define GIO_CMAP 0x4B70 #define PIO_CMAP 0x4B71 #define KIOCSOUND 0x4B2F #define KDMKTONE 0x4B30 #define KDGETLED 0x4B31 #define KDSETLED 0x4B32 #define LED_SCR 0x01 #define LED_NUM 0x02 #define LED_CAP 0x04 #define KDGKBTYPE 0x4B33 #define KB_84 0x01 #define KB_101 0x02 #define KB_OTHER 0x03 #define KDADDIO 0x4B34 #define KDDELIO 0x4B35 #define KDENABIO 0x4B36 #define KDDISABIO 0x4B37 #define KDSETMODE 0x4B3A #define KD_TEXT 0x00 #define KD_GRAPHICS 0x01 #define KD_TEXT0 0x02 #define KD_TEXT1 0x03 #define KDGETMODE 0x4B3B #define KDMAPDISP 0x4B3C #define KDUNMAPDISP 0x4B3D typedef char scrnmap_t; #define E_TABSZ 256 #define GIO_SCRNMAP 0x4B40 #define PIO_SCRNMAP 0x4B41 #define GIO_UNISCRNMAP 0x4B69 #define PIO_UNISCRNMAP 0x4B6A #define GIO_UNIMAP 0x4B66 struct unipair { unsigned short unicode; unsigned short fontpos; }; struct unimapdesc { unsigned short entry_ct; struct unipair *entries; }; #define PIO_UNIMAP 0x4B67 #define PIO_UNIMAPCLR 0x4B68 struct unimapinit { unsigned short advised_hashsize; unsigned short advised_hashstep; unsigned short advised_hashlevel; }; #define UNI_DIRECT_BASE 0xF000 #define UNI_DIRECT_MASK 0x01FF #define K_RAW 0x00 #define K_XLATE 0x01 #define K_MEDIUMRAW 0x02 #define K_UNICODE 0x03 #define KDGKBMODE 0x4B44 #define KDSKBMODE 0x4B45 #define K_METABIT 0x03 #define K_ESCPREFIX 0x04 #define KDGKBMETA 0x4B62 #define KDSKBMETA 0x4B63 #define K_SCROLLLOCK 0x01 #define K_NUMLOCK 0x02 #define K_CAPSLOCK 0x04 #define KDGKBLED 0x4B64 #define KDSKBLED 0x4B65 struct kbentry { unsigned char kb_table; unsigned char kb_index; unsigned short kb_value; }; #define K_NORMTAB 0x00 #define K_SHIFTTAB 0x01 #define K_ALTTAB 0x02 #define K_ALTSHIFTTAB 0x03 #define KDGKBENT 0x4B46 #define KDSKBENT 0x4B47 struct kbsentry { unsigned char kb_func; unsigned char kb_string[512]; }; #define KDGKBSENT 0x4B48 #define KDSKBSENT 0x4B49 struct kbdiacr { unsigned char diacr, base, result; }; struct kbdiacrs { unsigned int kb_cnt; struct kbdiacr kbdiacr[256]; }; #define KDGKBDIACR 0x4B4A #define KDSKBDIACR 0x4B4B struct kbkeycode { unsigned int scancode, keycode; }; #define KDGETKEYCODE 0x4B4C #define KDSETKEYCODE 0x4B4D #define KDSIGACCEPT 0x4B4E struct kbd_repeat { int delay; int rate; }; #define KDKBDREP 0x4B52 #define KDFONTOP 0x4B72 struct console_font_op { unsigned int op; unsigned int flags; unsigned int width, height; unsigned int charcount; unsigned char *data; }; #define KD_FONT_OP_SET 0 #define KD_FONT_OP_GET 1 #define KD_FONT_OP_SET_DEFAULT 2 #define KD_FONT_OP_COPY 3 #define KD_FONT_FLAG_DONT_RECALC 1 #endif