Annotation of coherent/f/usr/include.78/sys/ms.h, revision 1.1.1.1

1.1       root        1: /* (-lgl
                      2:  *     COHERENT 386 Device Driver Kit release 2.0
                      3:  *     Copyright (c) 1982, 1992 by Mark Williams Company.
                      4:  *     All rights reserved. May not be copied without permission.
                      5:  -lgl) */
                      6: /*
                      7:  *     Header for Microsoft mouse driver
                      8:  */
                      9: 
                     10: /*
                     11:  *     ioctl function definitions
                     12:  */
                     13: #ifndef __SYS_MS_H__
                     14: #define __SYS_MS_H__
                     15: 
                     16: #define        MS_SETUP        0
                     17: #define        MS_SETCRS       1
                     18: #define        MS_READCRS      2
                     19: #define        MS_SETMICK      3
                     20: #define        MS_READMICK     4
                     21: #define        MS_READBTNS     5
                     22: #define        MS_READSTAT     6
                     23: #define        MS_WAIT         7
                     24: 
                     25: /* the third argument to ioctl is a pointer defined by */
                     26: /* one of the following structures:                    */
                     27: 
                     28: /* setup (function 0) uses a (struct msparms *)                */
                     29: struct msparms {
                     30:        int     accel_t;                /* fast motion threshold */
                     31:        int     h_cmin;                 /* min cursor value, horiz. */
                     32:        int     h_cmax;                 /* max cursor value, horiz. */
                     33:        int     v_cmin;                 /* min cursor value, vert. */
                     34:        int     v_cmax;                 /* max cursor value, vert. */
                     35:        int     h_mpr;                  /* horiz mickey/8-pixel ratio */
                     36:        int     v_mpr;                  /* vert  mickey/8-pixel ratio */
                     37: };
                     38: 
                     39: /* setcrs(function 1) & readcrs(function 2) use a (struct mspos *)     */
                     40: /* setmick(function 3) & readmick(function 4) use a (struct mspos *)   */
                     41: struct mspos {
                     42:        int     h_crsr;                 /* horiz cursor position */
                     43:        int     v_crsr;                 /* vert  cursor position */
                     44: };
                     45: 
                     46: /* offset names used for mickey structure - same as cursor structure */
                     47: #define msmick mspos
                     48: #define h_mick h_crsr
                     49: #define v_mick v_crsr
                     50: 
                     51: /* readbtns(function 5) uses a (struct msbuts *)       */
                     52: struct msbuts {
                     53:        int     bbstat;                 /* button status left=bit0 right=bit1 */
                     54:        struct {
                     55:                int             cnt;    /* button press/release count */
                     56:                struct mspos    bpos;   /* button cursor */
                     57:        } buts[4];                      /* left  pressed, released */
                     58:                                        /* right pressed, released */
                     59: };
                     60: 
                     61: /* "bbstat" inside the above structure indicates whether or not the buttons */
                     62: /* are depressed.  The bits are as follows:                                */
                     63: 
                     64: #define MS_L_DOWN      0x01
                     65: #define MS_R_DOWN      0x02
                     66: 
                     67: /* the offsets into the "buts" array within the above structure are: */
                     68: #define MS_B_L_PRESS   0
                     69: #define MS_B_L_RELEASE 1
                     70: #define MS_B_R_PRESS   2
                     71: #define MS_B_R_RELEASE 3
                     72: 
                     73: /* readstat(function 6) & wait(function 7) use an (int *)      */
                     74: /* the Status bits are defined as follows:                     */
                     75: 
                     76: #define MS_S_MOVE      0x01
                     77: #define MS_S_L_PRESS   0x02
                     78: #define MS_S_L_RELEASE 0x04
                     79: #define MS_S_R_PRESS   0x08
                     80: #define MS_S_R_RELEASE 0x10
                     81: #define MS_S_BUTTONS   0x1e
                     82: 
                     83: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.