📄 imwheel3.patch
字号:
! read( fd, rep+1, 1 );! read( fd, rep+2, 1 );! if (rep[0] || (rep[1] != 0x33) || (rep[2] != 0x55)) {! if (k==1)! { fprintf( stderr, "netmouse: Invalid reply magic (got %d,%d,%d)\n", rep[0], rep[1], rep[2] );! return NULL;! }! else! { k--; }! }! else! { return type; } } }! return NULL; } #define GPM_B_BOTH (GPM_B_LEFT|GPM_B_RIGHT)****************** 810,816 **** } - /* ncr pen support (Marc Meis) */ #define NCR_LEFT_X 40--- 930,935 ----****************** 1634,1639 ****--- 1753,1759 ---- write (fd, s2, sizeof (s2)); usleep (30000); tcflush (fd, TCIFLUSH);+ opt_wheel=type->wheel; return type; } ****************** 1772,1777 ****--- 1892,1898 ---- struct Gpm_Type *type, int argc, char **argv) { struct termios tty;+ char *c; /* Set speed to 9600bps (copied from I_summa, above :) */ tcgetattr(fd, &tty);****************** 1945,2051 **** Gpm_Type mice[]={ {"mman", "The \"MouseMan\" and similar devices (3/4 bytes per packet).", "Mouseman", M_mman, I_serial, CS7 | STD_FLG, /* first */! {0x40, 0x40, 0x40, 0x00}, 3, 1, 1, 0, 0}, {"ms", "The original ms protocol, with a middle-button extension.", "", M_ms, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0}, {"ms+", "Like 'ms', but allows dragging with the middle button.", "", M_ms_plus, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0}, {"ms+lr", "'ms+', but you can reset m by pressing lr (see man page).", "", M_ms_plus_lr, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0}, {"bare", "Unadorned ms protocol. Needed with some 2-buttons mice.", "Microsoft", M_bare, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0}, {"msc", "Mouse-Systems-Compatible (5bytes). Most 3-button mice.", "MouseSystems", M_msc, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 5, 1, 0, 0, R_msc}, {"sun", "'msc' protocol, but only 3 bytes per packet.", "", M_sun, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 3, 1, 0, 0, 0}, {"mm", "MM series. Probably an old protocol...", "MMSeries", M_mm, I_serial, CS8 | PARENB|PARODD | STD_FLG,! {0xe0, 0x80, 0x80, 0x00}, 3, 1, 0, 0, 0}, {"logi", "Used in some Logitech devices (only serial).", "Logitech", M_logi, I_logi, CS8 | CSTOPB | STD_FLG,! {0xe0, 0x80, 0x80, 0x00}, 3, 3, 0, 0, 0}, {"bm", "Micro$oft busmice and compatible devices.", "BusMouse", M_bm, I_empty, STD_FLG, /* bm is sun */! {0xf8, 0x80, 0x00, 0x00}, 3, 3, 0, 0, 0}, {"ps2", "Busmice of the ps/2 series. Most busmice, actually.", "PS/2", M_ps2, I_empty, STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 3, 1, 0, 0, 0}, {"ncr", "Ncr3125pen, found on some laptops", "", M_ncr, NULL, STD_FLG,! {0x08, 0x08, 0x00, 0x00}, 7, 7, 0, 1, 0}, {"wacom","Wacom Protocol IV Tablets: Pen+Mouse, relative+absolute mode", "", M_wacom, I_wacom, STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 7, 1, 0, 0, 0}, {"genitizer", "\"Genitizer\" tablet, in relative mode.", "", M_geni, I_serial, CS8|PARENB|PARODD,! {0x80, 0x80, 0x00, 0x00}, 3, 1, 0, 0, 0}, {"logim", "Turn logitech into Mouse-Systems-Compatible.", "", M_logimsc, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 5, 1, 0, 0, 0}, {"pnp", "Plug and pray. New mice may not run with '-t ms'.", "", M_bare, I_pnp, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0}, {"imps2", "Microsoft Intellimouse (ps2) - 3 buttons, wheel unused", "", M_ps2, I_imps2, STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 4, 1, 0, 0, 0}, {"ms3", "Microsoft Intellimouse (serial) - 3 buttons, wheel unused", "", M_ms3, I_pnp, CS7 | STD_FLG,! {0xc0, 0x40, 0xc0, 0x00}, 4, 1, 0, 0, 0}, {"netmouse", "Genius NetMouse - 2 buttons and 2 buttons 'up'/'down'.", "", M_netmouse, I_netmouse, CS7 | STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 4, 1, 0, 0, 0}, {"cal", "Calcomp UltraSlate", "", M_calus, I_calus, CS8 | CSTOPB | STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 6, 6, 0, 1, 0}, {"calr", "Calcomp UltraSlate - relative mode", "", M_calus_rel, I_calus, CS8 | CSTOPB | STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 6, 6, 0, 0, 0}, {"twid", "Twidddler keyboard", "", M_twid, I_twid, CS8 | STD_FLG,! {0x80, 0x00, 0x80, 0x80}, 5, 1, 0, 0, 0}, {"syn", "The \"Synaptics\" serial TouchPad.", "synaptics", M_synaptics_serial, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 6, 6, 1, 0, 0}, {"synps2", "The \"Synaptics\" PS/2 TouchPad", "synaptics_ps2", M_synaptics_ps2, I_synps2, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 6, 1, 1, 0, 0}, {"brw", "Fellowes Browser - 4 buttons (and a wheel) (dual protocol?)", "", M_brw, I_pnp, CS7 | STD_FLG,! {0xc0, 0x40, 0xc0, 0x00}, 4, 1, 0, 0, 0}, #ifdef HAVE_LINUX_JOYSTICK_H {"js", "Joystick mouse emulation", "Joystick", M_js, NULL, 0,! {0xFC, 0x00, 0x00, 0x00}, 12, 12, 0, 0, 0}, #endif {"summa", "Summagraphics or Genius tablet absolute mode(MM-Series)", "", M_summa, I_summa, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 5, 1, 0, 1, R_summa}, {"mtouch", "MicroTouch touch-screens (only button-1 events, by now)", "", M_mtouch, I_mtouch, STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 5, 1, 0, 1, NULL}, {"gunze", "Gunze touch-screens (only button-1 events, by now)", "", M_gunze, I_gunze, STD_FLG,! {0xF9, 0x50, 0xF0, 0x30}, 11, 1, 0, 1, NULL}, ! {"acecad", "Acecad tablet absolute mode(Sumagrapics MM-Series mode)", "", M_summa, I_summa, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 7, 1, 0, 1, 0}, ! {"wp", "Genius WizardPad tablet", "wizardpad", M_wp, I_wp, STD_FLG,! {0xFA, 0x42, 0x00, 0x00}, 10, 1, 0, 1, 0},! {"", "", "", NULL, NULL, 0,! {0x00, 0x00, 0x00, 0x00}, 0, 0, 0, 0, 0} }; /*------------------------------------------------------------------------*/--- 2066,2172 ---- Gpm_Type mice[]={ {"mman", "The \"MouseMan\" and similar devices (3/4 bytes per packet).", "Mouseman", M_mman, I_serial, CS7 | STD_FLG, /* first */! {0x40, 0x40, 0x40, 0x00}, 3, 1, 1, 0, 0, NULL}, {"ms", "The original ms protocol, with a middle-button extension.", "", M_ms, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0, NULL}, {"ms+", "Like 'ms', but allows dragging with the middle button.", "", M_ms_plus, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0, NULL}, {"ms+lr", "'ms+', but you can reset m by pressing lr (see man page).", "", M_ms_plus_lr, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0, NULL}, {"bare", "Unadorned ms protocol. Needed with some 2-buttons mice.", "Microsoft", M_bare, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0, NULL}, {"msc", "Mouse-Systems-Compatible (5bytes). Most 3-button mice.", "MouseSystems", M_msc, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 5, 1, 0, 0, 0, R_msc}, {"sun", "'msc' protocol, but only 3 bytes per packet.", "", M_sun, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 3, 1, 0, 0, 0, NULL}, {"mm", "MM series. Probably an old protocol...", "MMSeries", M_mm, I_serial, CS8 | PARENB|PARODD | STD_FLG,! {0xe0, 0x80, 0x80, 0x00}, 3, 1, 0, 0, 0, NULL}, {"logi", "Used in some Logitech devices (only serial).", "Logitech", M_logi, I_logi, CS8 | CSTOPB | STD_FLG,! {0xe0, 0x80, 0x80, 0x00}, 3, 3, 0, 0, 0, NULL}, {"bm", "Micro$oft busmice and compatible devices.", "BusMouse", M_bm, I_empty, STD_FLG, /* bm is sun */! {0xf8, 0x80, 0x00, 0x00}, 3, 3, 0, 0, 0, NULL}, {"ps2", "Busmice of the ps/2 series. Most busmice, actually.", "PS/2", M_ps2, I_empty, STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 3, 1, 0, 0, 0, NULL}, {"ncr", "Ncr3125pen, found on some laptops", "", M_ncr, NULL, STD_FLG,! {0x08, 0x08, 0x00, 0x00}, 7, 7, 0, 1, 0, NULL}, {"wacom","Wacom Protocol IV Tablets: Pen+Mouse, relative+absolute mode", "", M_wacom, I_wacom, STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 7, 1, 0, 0, 0, NULL}, {"genitizer", "\"Genitizer\" tablet, in relative mode.", "", M_geni, I_serial, CS8|PARENB|PARODD,! {0x80, 0x80, 0x00, 0x00}, 3, 1, 0, 0, 0, NULL}, {"logim", "Turn logitech into Mouse-Systems-Compatible.", "", M_logimsc, I_serial, CS8 | CSTOPB | STD_FLG,! {0xf8, 0x80, 0x00, 0x00}, 5, 1, 0, 0, 0, NULL}, {"pnp", "Plug and pray. New mice may not run with '-t ms'.", "", M_bare, I_pnp, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 3, 1, 0, 0, 0, NULL}, {"imps2", "Microsoft Intellimouse (ps2) - 3 buttons, wheel unused", "", M_ps2, I_imps2, STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 4, 1, 0, 0, 1, NULL}, {"ms3", "Microsoft Intellimouse (serial) - 3 buttons, wheel unused", "", M_ms3, I_pnp, CS7 | STD_FLG,! {0xc0, 0x40, 0xc0, 0x00}, 4, 1, 0, 0, 1, NULL}, {"netmouse", "Genius NetMouse - 2 buttons and 2 buttons 'up'/'down'.", "", M_netmouse, I_netmouse, CS7 | STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 4, 1, 0, 0, 0, NULL},! {"netmousepro", "Genius NetMouse Pro - 3 buttons and 2 buttons up/down like wheel.",! "", M_netmousepro, I_netmousepro, CS7 | STD_FLG,! {0xc0, 0x00, 0x00, 0x00}, 4, 1, 0, 0, 1, NULL}, {"cal", "Calcomp UltraSlate", "", M_calus, I_calus, CS8 | CSTOPB | STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 6, 6, 0, 1, 0, NULL}, {"calr", "Calcomp UltraSlate - relative mode", "", M_calus_rel, I_calus, CS8 | CSTOPB | STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 6, 6, 0, 0, 0, NULL}, {"twid", "Twidddler keyboard", "", M_twid, I_twid, CS8 | STD_FLG,! {0x80, 0x00, 0x80, 0x80}, 5, 1, 0, 0, 0, NULL}, {"syn", "The \"Synaptics\" serial TouchPad.", "synaptics", M_synaptics_serial, I_serial, CS7 | STD_FLG,! {0x40, 0x40, 0x40, 0x00}, 6, 6, 1, 0, 0, NULL}, {"synps2", "The \"Synaptics\" PS/2 TouchPad", "synaptics_ps2", M_synaptics_ps2, I_synps2, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 6, 1, 1, 0, 0, NULL}, {"brw", "Fellowes Browser - 4 buttons (and a wheel) (dual protocol?)", "", M_brw, I_pnp, CS7 | STD_FLG,! {0xc0, 0x40, 0xc0, 0x00}, 4, 1, 0, 0, 0, NULL}, #ifdef HAVE_LINUX_JOYSTICK_H {"js", "Joystick mouse emulation", "Joystick", M_js, NULL, 0,! {0xFC, 0x00, 0x00, 0x00}, 12, 12, 0, 0, 0, NULL}, #endif {"summa", "Summagraphics or Genius tablet absolute mode(MM-Series)", "", M_summa, I_summa, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 5, 1, 0, 1, 0, R_summa}, {"mtouch", "MicroTouch touch-screens (only button-1 events, by now)", "", M_mtouch, I_mtouch, STD_FLG,! {0x80, 0x80, 0x80, 0x00}, 5, 1, 0, 1, 0, NULL}, {"gunze", "Gunze touch-screens (only button-1 events, by now)", "", M_gunze, I_gunze, STD_FLG,! {0xF9, 0x50, 0xF0, 0x30}, 11, 1, 0, 1, 0, NULL}, {"acecad", "Acecad tablet absolute mode(Sumagrapics MM-Series mode)", "", M_summa, I_summa, STD_FLG,! {0x80, 0x80, 0x00, 0x00}, 7, 1, 0, 1, 0, NULL}, {"wp", "Genius WizardPad tablet", "wizardpad", M_wp, I_wp, STD_FLG,! {0xFA, 0x42, 0x00, 0x00}, 10, 1, 0, 1, 0, NULL}, {"", "", "", NULL, NULL, 0,! {0x00, 0x00, 0x00, 0x00}, 0, 0, 0, 0, 0, NULL} }; /*------------------------------------------------------------------------*/diff -c gpm-cvstree.orig/mouse-test.c gpm-cvstree/mouse-test.c*** gpm-cvstree.orig/mouse-test.c Tue Jan 18 06:10:30 2000--- gpm-cvstree/mouse-test.c Mon Feb 14 18:40:36 2000****************** 10,15 ****--- 10,18 ---- * where watchdog is used. Reported by Jim Studt <jim@federated.com> * [Debian bug report #22602] *+ * Modified on 9/8/1998 by Jonathan Atkins for use with wheel mice+ * <jcatki@most.fw.hac.com>+ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or****************** 42,47 ****--- 45,51 ---- #include <signal.h> #include <termios.h> + #define NO_DEBUG #include "gpmInt.h" /* to get mouse types */ #ifndef min****************** 56,62 **** DEF_BAUD, DEF_SAMPLE, DEF_DELTA, DEF_ACCEL, DEF_SCALE, DEF_SCALE /*scaley*/, DEF_TIME, DEF_CLUSTER, DEF_THREE, DEF_GLIDEPOINT_TAP, (char *)NULL /* extra */,! (Gpm_Type *)NULL }; /* and this is a workaroud */--- 60,66 ---- DEF_BAUD, DEF_SAMPLE, DEF_DELTA, DEF_ACCEL, DEF_SCALE, DEF_SCALE /*scaley*/, DEF_TIME, DEF_CLUSTER, DEF_THREE, DEF_GLIDEPOINT_TAP, (char *)NULL /* extra */,! (int)(Gpm_Type *)NULL }; /* and this is a workaroud */Common subdirectories: gpm-cvstree.orig/sample and gpm-cvstree/sampleCommon subdirectories: gpm-cvstree.orig/tools and gpm-cvstree/tools
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -