Date: Wed, 29 May 2002 22:33:12 -0700 (PDT) From: Simon Walton <simonw@lucent.com> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/38730: Memorex scrollpro mouse is not fully functional Message-ID: <200205300533.g4U5XCmN069191@www.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 38730 >Category: kern >Synopsis: Memorex scrollpro mouse is not fully functional >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed May 29 22:40:01 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Simon Walton >Release: 4.2 >Organization: >Environment: FreeBSD stepney 4.2-RELEASE FreeBSD 4.2-RELEASE #15: Wed May 29 22:13:30 PDT 2002 simonw@stepney:/usr/src/sys/compile/STEPNEY i386 >Description: The Memorex scroll pro RF mouse has five buttons (including the wheel). It is IntelliMouse compatible, but if it attaches as an IntelliMouse the two extra buttons are disabled. It can be recognized using the same control sequence as the 4D mouse, and if attached in this way the extra buttons will be recognized. The patch below achieves this. >How-To-Repeat: Plug in the mouse. Boot up with X-windows. Try using the side buttons. >Fix: This patch to the psm driver enables the buttons: *** isa/psm.c.orig Mon May 27 00:10:06 2002 --- isa/psm.c Wed May 29 22:21:36 2002 *************** *** 253,258 **** --- 253,259 ---- static probefunc_t enable_gmouse; static probefunc_t enable_aglide; static probefunc_t enable_kmouse; + static probefunc_t enable_scrollpro; static probefunc_t enable_msexplorer; static probefunc_t enable_msintelli; static probefunc_t enable_4dmouse; *************** *** 283,288 **** --- 284,291 ---- 0x08, MOUSE_4D_PACKETSIZE, enable_4dmouse, }, { MOUSE_MODEL_4DPLUS, /* A4 Tech 4D+ Mouse */ 0xc8, MOUSE_4DPLUS_PACKETSIZE, enable_4dplus, }, + { MOUSE_MODEL_INTELLI, /* Memorex ScrollPro */ + 0x08, MOUSE_PS2INTELLI_PACKETSIZE, enable_scrollpro, }, { MOUSE_MODEL_INTELLI, /* Microsoft IntelliMouse */ 0x08, MOUSE_PS2INTELLI_PACKETSIZE, enable_msintelli, }, { MOUSE_MODEL_GLIDEPOINT, /* ALPS GlidePoint */ *************** *** 2551,2556 **** --- 2554,2587 ---- sc->hw.hwid = id; sc->hw.buttons = 3; + + return TRUE; + } + + static int + enable_scrollpro(struct psm_softc *sc) + { + /* + * Intellimouse compatible, but with five buttons + */ + + int id; + KBDC kbdc = sc->kbdc; + /* + * enable_4dmouse() has already sent the id sequence... + */ + id = get_aux_id(kbdc); + /* + * Memorex Scroll Pro: 5 + * WinEasy 4D: 6 + * Cable-Free 4D: 8 (4DPLUS) + * 4 Way ScrollMouse 4D+: 8 (4DPLUS) + */ + if (id != 5) + return FALSE; + + sc->hw.hwid = PSM_INTELLI_ID; + sc->hw.buttons = 5; return TRUE; } >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205300533.g4U5XCmN069191>