diff options
| author | Søren Schmidt <sos@FreeBSD.org> | 1996-11-14 22:19:17 +0000 |
|---|---|---|
| committer | Søren Schmidt <sos@FreeBSD.org> | 1996-11-14 22:19:17 +0000 |
| commit | 6a90d9750d93e0fc7c4e3cffdb8efb33a9135ccc (patch) | |
| tree | 650a2881d1f41e3f84cc51aa2e2bbbe5d8633068 /sys/alpha | |
| parent | 83a856baa661ee7dd73ea4d4fa95cbdc19276d29 (diff) | |
Notes
Diffstat (limited to 'sys/alpha')
| -rw-r--r-- | sys/alpha/include/console.h | 16 | ||||
| -rw-r--r-- | sys/alpha/include/mouse.h | 100 |
2 files changed, 92 insertions, 24 deletions
diff --git a/sys/alpha/include/console.h b/sys/alpha/include/console.h index 3e641a75f57f..de049daad5c5 100644 --- a/sys/alpha/include/console.h +++ b/sys/alpha/include/console.h @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: console.h,v 1.24 1996/09/21 14:57:54 bde Exp $ + * $Id: console.h,v 1.25 1996/09/30 23:00:23 sos Exp $ */ #ifndef _MACHINE_CONSOLE_H_ @@ -278,20 +278,6 @@ typedef struct ssaver ssaver_t; #define KB_BUF_FULL 0x02 /* kbd has char pending */ #define KB_READY 0x02 /* kbd ready for command */ #define KB_WRITE 0x43 /* kbd write command */ -#else -#define KB_DATA 0x60 /* kbd data port */ -#define KB_STAT 0x64 /* kbd status port */ -#define KB_BUF_FULL 0x01 /* kbd has char pending */ -#define KB_READY 0x02 /* kbd ready for command */ -#define KB_MODE 0x4D /* kbd mode (trans, ints enable)*/ -#define KB_WRITE 0x60 /* kbd write command */ -#define KB_RESET_DONE 0xAA /* kbd reset command completed */ -#define KB_SETLEDS 0xED /* kbd set leds */ -#define KB_ECHO 0xEE /* kbd set leds */ -#define KB_SETRAD 0xF3 /* kbd set repeat&delay command */ -#define KB_ACK 0xFA /* kbd acknowledge answer */ -#define KB_RESEND 0xFE /* kbd resend cmd answer */ -#define KB_RESET 0xFF /* kbd reset */ #endif /* video mode definitions */ diff --git a/sys/alpha/include/mouse.h b/sys/alpha/include/mouse.h index 95a66e474c6d..a7322b737571 100644 --- a/sys/alpha/include/mouse.h +++ b/sys/alpha/include/mouse.h @@ -19,17 +19,36 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: mouse.h,v 1.1 1994/05/17 14:05:31 jkh Exp $ + * $Id: mouse.h,v 1.1 1994/09/09 11:27:31 dfr Exp $ */ -struct mouseinfo { - unsigned char status; - char xmotion, ymotion; -}; +#ifndef _MACHINE_MOUSE_H_ +#define _MACHINE_MOUSE_H_ + +#include <sys/types.h> +#include <sys/ioccom.h> + +/* NOTE: MOUSEIOC and MOUSEIOCREAD are now obsolete, but will stay + for compatibility reasons. But, remember, the MOUSEIOCREAD ioctl + command doesn't work and never worked before. Some day we shall + get rid of these... */ +#define MOUSEIOC ('M'<<8) +#define MOUSEIOCREAD (MOUSEIOC|60) + +#define MOUSE_GETSTATE _IOR('M',0,mouseinfo_t) +#define MOUSE_GETINFO _IOR('M',1,mousehw_t) +#define MOUSE_GETMODE _IOR('M',2,mousemode_t) +#define MOUSE_SETMODE _IOW('M',3,mousemode_t) + +typedef struct mouseinfo { + unsigned char status; + char xmotion; + char ymotion; +} mouseinfo_t; +/* status */ #define BUTSTATMASK 0x07 /* Any mouse button down if any bit set */ #define BUTCHNGMASK 0x38 /* Any mouse button changed if any bit set */ - #define BUT3STAT 0x01 /* Button 3 down if set */ #define BUT2STAT 0x02 /* Button 2 down if set */ #define BUT1STAT 0x04 /* Button 1 down if set */ @@ -38,7 +57,70 @@ struct mouseinfo { #define BUT1CHNG 0x20 /* Button 1 changed if set */ #define MOVEMENT 0x40 /* Mouse movement detected */ -/* Ioctl definitions */ +typedef struct mousehw { + int buttons; + int iftype; /* MOUSE_IF_XXX */ + int type; /* mouse/track ball/pad... */ + int hwid; /* I/F dependent hardware ID + for the PS/2 mouse, it will be PSM_XXX_ID */ +} mousehw_t; +/* iftype */ +#define MOUSE_IF_SERIAL 0 +#define MOUSE_IF_BUS 1 +#define MOUSE_IF_INPORT 2 +#define MOUSE_IF_PS2 3 +/* type */ +#define MOUSE_UNKNOWN (-1) /* should be treated as a mouse */ +#define MOUSE_MOUSE 0 +#define MOUSE_TRACKBALL 1 +#define MOUSE_STICK 2 +#define MOUSE_PAD 3 + +typedef struct mousemode { + int protocol; /* MOUSE_PROTO_XXX */ + int rate; /* report rate (per sec), -1 if unknown */ + int resolution; /* ppi, -1 if unknown */ + int accelfactor; /* accelation factor (must be 1 or greater) */ +} mousemode_t; +/* protocol */ +#define MOUSE_PROTO_MS 0 /* Microsoft Serial, 3 bytes */ +#define MOUSE_PROTO_MSC 1 /* Mouse Systems, 5 bytes */ +#define MOUSE_PROTO_LOGI 2 /* Logitech, 3 bytes */ +#define MOUSE_PROTO_MM 3 /* MM series, 3 bytes */ +#define MOUSE_PROTO_LOGIMOUSEMAN 4 /* Logitech MouseMan 3/4 bytes */ +#define MOUSE_PROTO_BUS 5 /* MS/Logitech bus mouse */ +#define MOUSE_PROTO_INPORT 6 /* MS/ATI inport mouse */ +#define MOUSE_PROTO_PS2 7 /* PS/2 mouse, 3 bytes */ + +/* Microsoft Serial mouse data packet */ +#define MOUSE_MSS_PACKETSIZE 3 +#define MOUSE_MSS_SYNCMASK 0x40 +#define MOUSE_MSS_SYNC 0x40 +#define MOUSE_MSS_BUTTONS 0x30 +#define MOUSE_MSS_BUTTON1DOWN 0x20 /* left */ +#define MOUSE_MSS_BUTTON2DOWN 0x00 /* no middle button */ +#define MOUSE_MSS_BUTTON3DOWN 0x10 /* right */ + +/* Mouse Systems Corp. mouse data packet */ +#define MOUSE_MSC_PACKETSIZE 5 +#define MOUSE_MSC_SYNCMASK 0xf8 +#define MOUSE_MSC_SYNC 0x80 +#define MOUSE_MSC_BUTTONS 0x07 +#define MOUSE_MSC_BUTTON1UP 0x04 /* left */ +#define MOUSE_MSC_BUTTON2UP 0x02 /* middle */ +#define MOUSE_MSC_BUTTON3UP 0x01 /* right */ + +/* PS/2 mouse data packet */ +#define MOUSE_PS2_PACKETSIZE 3 +#define MOUSE_PS2_SYNCMASK 0x08 /* 0x0c for 2 button mouse */ +#define MOUSE_PS2_SYNC 0x08 /* 0x0c for 2 button mouse */ +#define MOUSE_PS2_BUTTONS 0x07 /* 0x03 for 2 button mouse */ +#define MOUSE_PS2_BUTTON1DOWN 0x01 /* left */ +#define MOUSE_PS2_BUTTON2DOWN 0x04 /* middle */ +#define MOUSE_PS2_BUTTON3DOWN 0x02 /* right */ +#define MOUSE_PS2_XNEG 0x10 +#define MOUSE_PS2_YNEG 0x20 +#define MOUSE_PS2_XOVERFLOW 0x40 +#define MOUSE_PS2_YOVERFLOW 0x80 -#define MOUSEIOC ('M'<<8) -#define MOUSEIOCREAD (MOUSEIOC|60) +#endif /* _MACHINE_MOUSE_H_ */ |
