Date: Fri, 30 Dec 2005 01:28:53 -0800 From: Nate Lawson <nate@root.org> To: Alexander Leidinger <netchild@FreeBSD.org> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/usb ums.c Message-ID: <43B4FDD5.1060000@root.org> In-Reply-To: <20051229222645.05311b1f@Magellan.Leidinger.net> References: <20051229183552.205C316A432@hub.freebsd.org> <43B4385D.9030206@root.org> <20051229222645.05311b1f@Magellan.Leidinger.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Alexander Leidinger wrote:
> On Thu, 29 Dec 2005 11:26:21 -0800
> Nate Lawson <nate@root.org> wrote:
>
>
>>>Index: src/sys/dev/usb/ums.c
>>>diff -u src/sys/dev/usb/ums.c:1.79 src/sys/dev/usb/ums.c:1.80
>>>--- src/sys/dev/usb/ums.c:1.79 Thu Dec 29 17:44:40 2005
>>>+++ src/sys/dev/usb/ums.c Thu Dec 29 18:35:28 2005
>>>@@ -425,7 +425,7 @@
>>> struct ums_softc *sc = addr;
>>> u_char *ibuf;
>>> int dx, dy, dz, dt;
>>>- u_char buttons = 0;
>>>+ int buttons = 0;
>>> int i;
>>>
>>> #define UMS_BUT(i) ((i) < 3 ? (((i) + 2) % 3) : (i))
>>
>>I think the UMS_BUT macro operates on only 2 bits. Are you sure that's
>>still right?
>
>
> The UMS_BUT macro in NetBSD is different, but I don't know if this is
> because of the uhidevs changes (which we don't have) or not. The change
> in NetBSD only changed the MAX_BUTTONS define, not the UMS_BUT macro.
>
> I also don't see where it only operates on 2 bits (BTW.: MAX_BUTTONS was
> changed from decimal 7 to decimal 31)... if I rewrite it as a function
> it looks like:
> int ums_but(int i) {
> if (i < 3) {
> return (i + 2) % 3;
> } else {
> return i;
> }
> }
> Or did I miscounted the parenthesis?
I meant that this maps 0:2, 1:0, 2:1, 3:3, 4:4, ... Or in other words,
it only operates on 2-bit values (0-3). I don't know if that's an issue
or not, I just was wondering if that also needed to be expanded.
--
Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43B4FDD5.1060000>
