Home | History | Annotate | Line # | Download | only in dec
      1  1.9  christos /*	$NetBSD: lk201.h,v 1.9 2005/12/11 12:21:20 christos Exp $	*/
      2  1.2     perry 
      3  1.1  jonathan 
      4  1.1  jonathan /*
      5  1.1  jonathan  * Ascii values of command keys.
      6  1.1  jonathan  */
      7  1.1  jonathan #define KBD_TAB		'\t'
      8  1.1  jonathan #define KBD_DEL		127
      9  1.1  jonathan #define KBD_RET		'\r'
     10  1.1  jonathan 
     11  1.1  jonathan /*
     12  1.1  jonathan  *  Define "hardware-independent" codes for the control, shift, meta and
     13  1.1  jonathan  *  function keys.  Codes start after the last 7-bit ASCII code (127)
     14  1.1  jonathan  *  and are assigned in an arbitrary order.
     15  1.1  jonathan  */
     16  1.1  jonathan #define KBD_NOKEY	128
     17  1.1  jonathan 
     18  1.1  jonathan #define KBD_F1		201
     19  1.1  jonathan #define KBD_F2		202
     20  1.1  jonathan #define KBD_F3		203
     21  1.1  jonathan #define KBD_F4		204
     22  1.1  jonathan #define KBD_F5		205
     23  1.1  jonathan #define KBD_F6		206
     24  1.1  jonathan #define KBD_F7		207
     25  1.1  jonathan #define KBD_F8		208
     26  1.1  jonathan #define KBD_F9		209
     27  1.1  jonathan #define KBD_F10		210
     28  1.1  jonathan #define KBD_F11		211
     29  1.1  jonathan #define KBD_F12		212
     30  1.1  jonathan #define KBD_F13		213
     31  1.1  jonathan #define KBD_F14		214
     32  1.1  jonathan #define KBD_HELP	215
     33  1.1  jonathan #define KBD_DO		216
     34  1.1  jonathan #define KBD_F17		217
     35  1.1  jonathan #define KBD_F18		218
     36  1.1  jonathan #define KBD_F19		219
     37  1.1  jonathan #define KBD_F20		220
     38  1.1  jonathan 
     39  1.1  jonathan #define KBD_FIND	221
     40  1.1  jonathan #define KBD_INSERT	222
     41  1.1  jonathan #define KBD_REMOVE	223
     42  1.1  jonathan #define KBD_SELECT	224
     43  1.1  jonathan #define KBD_PREVIOUS	225
     44  1.1  jonathan #define KBD_NEXT	226
     45  1.1  jonathan 
     46  1.1  jonathan #define KBD_KP_ENTER	227
     47  1.1  jonathan #define KBD_KP_F1	228
     48  1.1  jonathan #define KBD_KP_F2	229
     49  1.1  jonathan #define KBD_KP_F3	230
     50  1.1  jonathan #define KBD_KP_F4	231
     51  1.1  jonathan #define KBD_LEFT	232
     52  1.1  jonathan #define KBD_RIGHT	233
     53  1.1  jonathan #define KBD_DOWN	234
     54  1.1  jonathan #define KBD_UP		235
     55  1.1  jonathan 
     56  1.1  jonathan #define KBD_CONTROL	236
     57  1.1  jonathan #define KBD_SHIFT	237
     58  1.1  jonathan #define KBD_CAPSLOCK	238
     59  1.1  jonathan #define KBD_ALTERNATE	239
     60  1.1  jonathan 
     61  1.1  jonathan 
     62  1.1  jonathan 
     63  1.1  jonathan /*
     64  1.1  jonathan  * Definitions for the Keyboard and mouse.
     65  1.1  jonathan  */
     66  1.1  jonathan /*
     67  1.1  jonathan  * Special key values.
     68  1.1  jonathan  */
     69  1.1  jonathan #define	KEY_R_SHIFT	0xab
     70  1.1  jonathan #define KEY_SHIFT	0xae
     71  1.1  jonathan #define KEY_CONTROL	0xaf
     72  1.7        ad #define KEY_CAPSLOCK	0xb0
     73  1.1  jonathan #define	KEY_R_ALT	0xb2
     74  1.1  jonathan #define KEY_UP		0xb3
     75  1.1  jonathan #define KEY_REPEAT	0xb4
     76  1.1  jonathan #define KEY_F1		0x56
     77  1.1  jonathan #define KEY_COMMAND	KEY_F1
     78  1.1  jonathan 
     79  1.1  jonathan /*
     80  1.1  jonathan  * Lk201/301 keyboard
     81  1.1  jonathan  */
     82  1.1  jonathan #define LK_UPDOWN	0x86		/* bits for setting lk201 modes */
     83  1.1  jonathan #define LK_AUTODOWN	0x82
     84  1.1  jonathan #define LK_DOWN		0x80
     85  1.1  jonathan #define LK_DEFAULTS	0xd3		/* reset mode settings          */
     86  1.1  jonathan #define LK_AR_ENABLE	0xe3		/* global auto repeat enable	*/
     87  1.1  jonathan #define LK_CL_ENABLE	0x1b		/* keyclick enable		*/
     88  1.1  jonathan #define LK_KBD_ENABLE	0x8b		/* keyboard enable		*/
     89  1.5  drochner #define LK_BELL_ENABLE	0x23		/* the bell			*/
     90  1.1  jonathan #define LK_LED_ENABLE	0x13		/* light led			*/
     91  1.1  jonathan #define LK_LED_DISABLE	0x11		/* turn off led			*/
     92  1.1  jonathan #define LK_RING_BELL	0xa7		/* ring keyboard bell		*/
     93  1.1  jonathan #define LED_1		0x81		/* led bits			*/
     94  1.1  jonathan #define LED_2		0x82
     95  1.1  jonathan #define LED_3		0x84
     96  1.1  jonathan #define LED_4		0x88
     97  1.1  jonathan #define LED_ALL		0x8f
     98  1.1  jonathan #define LK_HELP		0x7c		/* help key			*/
     99  1.1  jonathan #define LK_DO		0x7d		/* do key			*/
    100  1.1  jonathan #define LK_KDOWN_ERROR	0x3d		/* key down on powerup error	*/
    101  1.1  jonathan #define LK_POWER_ERROR	0x3e		/* keyboard failure on pwrup tst*/
    102  1.1  jonathan #define LK_OUTPUT_ERROR 0xb5		/* keystrokes lost during inhbt */
    103  1.1  jonathan #define LK_INPUT_ERROR	0xb6		/* garbage command to keyboard	*/
    104  1.1  jonathan #define LK_LOWEST	0x56		/* lowest significant keycode	*/
    105  1.1  jonathan 
    106  1.1  jonathan /* max volume is 0, lowest is 0x7 */
    107  1.1  jonathan #define	LK_PARAM_VOLUME(v)		(0x80|((v)&0x7))
    108  1.1  jonathan 
    109  1.1  jonathan /* mode command details */
    110  1.1  jonathan #define	LK_CMD_MODE(m,div)		((m)|((div)<<3))
    111  1.1  jonathan 
    112  1.1  jonathan 
    113  1.1  jonathan /*
    114  1.1  jonathan  * Command characters for the mouse.
    115  1.1  jonathan  */
    116  1.1  jonathan #define MOUSE_SELF_TEST		'T'
    117  1.1  jonathan #define MOUSE_INCREMENTAL	'R'
    118  1.1  jonathan 
    119  1.1  jonathan /*
    120  1.1  jonathan  * Mouse output bits.
    121  1.1  jonathan  *
    122  1.1  jonathan  *     	MOUSE_START_FRAME	Start of report frame bit.
    123  1.1  jonathan  *	MOUSE_X_SIGN		Sign bit for X.
    124  1.1  jonathan  *	MOUSE_Y_SIGN		Sign bit for Y.
    125  1.1  jonathan  *	MOUSE_X_OFFSET		X offset to start cursor at.
    126  1.1  jonathan  *	MOUSE_Y_OFFSET		Y offset to start cursor at.
    127  1.1  jonathan  */
    128  1.1  jonathan #define MOUSE_START_FRAME	0x80
    129  1.1  jonathan #define MOUSE_X_SIGN		0x10
    130  1.1  jonathan #define MOUSE_Y_SIGN		0x08
    131  1.1  jonathan 
    132  1.1  jonathan /*
    133  1.1  jonathan  * Definitions for mouse buttons
    134  1.1  jonathan  */
    135  1.1  jonathan #define EVENT_LEFT_BUTTON	0x01
    136  1.1  jonathan #define EVENT_MIDDLE_BUTTON	0x02
    137  1.1  jonathan #define EVENT_RIGHT_BUTTON	0x03
    138  1.1  jonathan #define RIGHT_BUTTON		0x01
    139  1.1  jonathan #define MIDDLE_BUTTON		0x02
    140  1.1  jonathan #define LEFT_BUTTON		0x04
    141  1.1  jonathan 
    142  1.1  jonathan #ifdef _KERNEL
    143  1.8     perry extern int LKgetc(dev_t dev);
    144  1.8     perry extern void lkdivert(int (*getc_fn)(dev_t dev), dev_t dev);
    145  1.1  jonathan #endif
    146