kd.h
001: #ifndef _LINUX_KD_H
002: #define _LINUX_KD_H
003: #include <linux/types.h>
004: 
005: 
006: 
007: 
008: #define GIO_FONT        0x4B60  
009: #define PIO_FONT        0x4B61  
010: 
011: #define GIO_FONTX       0x4B6B  
012: #define PIO_FONTX       0x4B6C  
013: struct consolefontdesc {
014:         unsigned short charcount;       
015:         unsigned short charheight;      
016:         char *chardata;         
017: };
018: 
019: #define PIO_FONTRESET   0x4B6D  
020: 
021: #define GIO_CMAP        0x4B70  
022: #define PIO_CMAP        0x4B71  
023: 
024: #define KIOCSOUND       0x4B2F  
025: #define KDMKTONE        0x4B30  
026: 
027: #define KDGETLED        0x4B31  
028: #define KDSETLED        0x4B32  
029: #define         LED_SCR         0x01    
030: #define         LED_NUM         0x02    
031: #define         LED_CAP         0x04    
032: 
033: #define KDGKBTYPE       0x4B33  
034: #define         KB_84           0x01
035: #define         KB_101          0x02    
036: #define         KB_OTHER        0x03
037: 
038: #define KDADDIO         0x4B34  
039: #define KDDELIO         0x4B35  
040: #define KDENABIO        0x4B36  
041: #define KDDISABIO       0x4B37  
042: 
043: #define KDSETMODE       0x4B3A  
044: #define         KD_TEXT         0x00
045: #define         KD_GRAPHICS     0x01
046: #define         KD_TEXT0        0x02    
047: #define         KD_TEXT1        0x03    
048: #define         KD_TRANSPARENT  0x04
049: #define KDGETMODE       0x4B3B  
050: 
051: #define KDMAPDISP       0x4B3C  
052: #define KDUNMAPDISP     0x4B3D  
053: 
054: typedef char scrnmap_t;
055: #define         E_TABSZ         256
056: #define GIO_SCRNMAP     0x4B40  
057: #define PIO_SCRNMAP     0x4B41  
058: #define GIO_UNISCRNMAP  0x4B69  
059: #define PIO_UNISCRNMAP  0x4B6A  
060: 
061: #define GIO_UNIMAP      0x4B66  
062: struct unipair {
063:         unsigned short unicode;
064:         unsigned short fontpos;
065: };
066: struct unimapdesc {
067:         unsigned short entry_ct;
068:         struct unipair *entries;
069: };
070: #define PIO_UNIMAP      0x4B67  
071: #define PIO_UNIMAPCLR   0x4B68  
072: struct unimapinit {
073:         unsigned short advised_hashsize;  
074:         unsigned short advised_hashstep;  
075:         unsigned short advised_hashlevel; 
076: };
077: 
078: #define UNI_DIRECT_BASE 0xF000  
079: #define UNI_DIRECT_MASK 0x01FF  
080: 
081: #define         K_RAW           0x00
082: #define         K_XLATE         0x01
083: #define         K_MEDIUMRAW     0x02
084: #define         K_UNICODE       0x03
085: #define         K_OFF           0x04
086: #define KDGKBMODE       0x4B44  
087: #define KDSKBMODE       0x4B45  
088: 
089: #define         K_METABIT       0x03
090: #define         K_ESCPREFIX     0x04
091: #define KDGKBMETA       0x4B62  
092: #define KDSKBMETA       0x4B63  
093: 
094: #define         K_SCROLLLOCK    0x01
095: #define         K_NUMLOCK       0x02
096: #define         K_CAPSLOCK      0x04
097: #define KDGKBLED        0x4B64  
098: #define KDSKBLED        0x4B65  
099: 
100: struct kbentry {
101:         unsigned char kb_table;
102:         unsigned char kb_index;
103:         unsigned short kb_value;
104: };
105: #define         K_NORMTAB       0x00
106: #define         K_SHIFTTAB      0x01
107: #define         K_ALTTAB        0x02
108: #define         K_ALTSHIFTTAB   0x03
109: 
110: #define KDGKBENT        0x4B46  
111: #define KDSKBENT        0x4B47  
112: 
113: struct kbsentry {
114:         unsigned char kb_func;
115:         unsigned char kb_string[512];
116: };
117: #define KDGKBSENT       0x4B48  
118: #define KDSKBSENT       0x4B49  
119: 
120: struct kbdiacr {
121:         unsigned char diacr, base, result;
122: };
123: struct kbdiacrs {
124:         unsigned int kb_cnt;    
125:         struct kbdiacr kbdiacr[256];    
126: };
127: #define KDGKBDIACR      0x4B4A  
128: #define KDSKBDIACR      0x4B4B  
129: 
130: struct kbdiacruc {
131:         unsigned int diacr, base, result;
132: };
133: struct kbdiacrsuc {
134:         unsigned int kb_cnt;    
135:         struct kbdiacruc kbdiacruc[256];    
136: };
137: #define KDGKBDIACRUC    0x4BFA  
138: #define KDSKBDIACRUC    0x4BFB  
139: 
140: struct kbkeycode {
141:         unsigned int scancode, keycode;
142: };
143: #define KDGETKEYCODE    0x4B4C  
144: #define KDSETKEYCODE    0x4B4D  
145: 
146: #define KDSIGACCEPT     0x4B4E  
147: 
148: struct kbd_repeat {
149:         int delay;      
150:         int period;     
151:                         
152: };
153: 
154: #define KDKBDREP        0x4B52  
155: 
156: 
157: #define KDFONTOP        0x4B72  
158: 
159: struct console_font_op {
160:         unsigned int op;        
161:         unsigned int flags;     
162:         unsigned int width, height;     
163:         unsigned int charcount;
164:         unsigned char *data;    
165: };
166: 
167: struct console_font {
168:         unsigned int width, height;     
169:         unsigned int charcount;
170:         unsigned char *data;    
171: };
172: 
173: #define KD_FONT_OP_SET          0       
174: #define KD_FONT_OP_GET          1       
175: #define KD_FONT_OP_SET_DEFAULT  2       
176: #define KD_FONT_OP_COPY         3       
177: 
178: #define KD_FONT_FLAG_DONT_RECALC        1       
179: 
180: 
181: 
182: 
183: 
184: #endif 
185: 
      
      
      
      
   
      
      
         
            
            © Andrew Scott 2006 -
            2025, 
            All Rights Reserved