[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-H
From: |
Brad Campbell |
Subject: |
Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server) |
Date: |
Mon, 10 Apr 2006 03:14:20 +0400 |
User-agent: |
Thunderbird 1.6a1 (X11/20060214) |
Anthony Liguori wrote:
Final one of the night. This patch disables relative mouse reporting
and disables grab automatically the first time SDL detects that the
absolute mouse was enabled. Needs a lot of cleanup but I'm very happy
with the user experience on this one.
Wish I'd just gone to bed now..
Heres a patch against your last one to implement wheel support.
Brad
--
"Human beings, who are almost unique in having the ability
to learn from the experience of others, are also remarkable
for their apparent disinclination to do so." -- Douglas Adams
diff -ur qemu-clean/hw/usb-hid.c qemu/hw/usb-hid.c
--- qemu-clean/hw/usb-hid.c 2006-04-10 02:57:46.000000000 +0400
+++ qemu/hw/usb-hid.c 2006-04-10 03:11:58.000000000 +0400
@@ -101,7 +101,7 @@
0x00, /* u8 country_code */
0x01, /* u8 num_descriptors */
0x22, /* u8 type; Report */
- 53, 0, /* u16 len */
+ 65, 0, /* u16 len */
/* one endpoint (status change endpoint) */
0x07, /* u8 ep_bLength; */
@@ -145,14 +145,15 @@
0x09, 0x31, /* Usage Y */
0x15, 0x00, /* Logical Minimum 0 */
0x27, 0xFF, 0xFF, 0x00, 0x00, /* Logical Maximum 0xffff */
- 0x75, 0x10, /* Report Size 32 */
+ 0x75, 0x10, /* Report Size 16 */
0x95, 0x02, /* Report Count 2 */
0x81, 0x02, /* Input (Data, Var, Abs) */
-// 0x09, 0x32, /* Usage Z */
-// 0x15, 0x81, /* Logical Minimum -127 */
-// 0x25, 0x7F, /* Logical Maximum 127 */
-// 0x75, 0x08, /* Report Size 8 */
-// 0x95, 0x01, /* Report Count 1 */
+ 0x09, 0x38, /* Usage Wheel */
+ 0x15, 0x81, /* Logical Minimum -127 */
+ 0x25, 0x7F, /* Logical Maximum 127 */
+ 0x75, 0x08, /* Report Size 8 */
+ 0x95, 0x01, /* Report Count 1 */
+ 0x81, 0x02, /* Input (Data, Var, Rel) */
0xC0, /* End Collection */
0xC0, /* End Collection */
};
@@ -224,14 +225,18 @@
qemu_add_mouse_event_handler(NULL, NULL);
absolute_mouse = 1;
}
-
+/*
dx = int_clamp(s->dx, -128, 127);
dy = int_clamp(s->dy, -128, 127);
- dz = int_clamp(s->dz, -128, 127);
s->dx -= dx;
s->dy -= dy;
+*/
+
+ dz = int_clamp(s->dz, -128, 127);
s->dz -= dz;
+/* Appears we have to invert the wheel direction */
+ dz = 0 - dz;
b = 0;
if (s->buttons_state & MOUSE_EVENT_LBUTTON)
b |= 0x01;
@@ -245,7 +250,8 @@
buf[2] = s->X >> 8;
buf[3] = s->Y & 0xff;
buf[4] = s->Y >> 8;
- l = 5;
+ buf[5] = dz;
+ l = 6;
return l;
}
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), (continued)
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Anthony Liguori, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Johannes Schindelin, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Anthony Liguori, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Anthony Liguori, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server), Brad Campbell, 2006/04/09
- Re: [Qemu-devel] Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server),
Brad Campbell <=
- Re: [Qemu-devel] USB Tablet Emulation (was: Gentlemen we have absolute movement! was:Absolute USB-HID device musings (was Re: VNC Terminal Server)), Anthony Liguori, 2006/04/09
- Re: [Qemu-devel] USB Tablet Emulation, Brad Campbell, 2006/04/10
- Re: [Qemu-devel] USB Tablet Emulation, Johannes Schindelin, 2006/04/10
- Re: [Qemu-devel] USB Tablet Emulation, Brad Campbell, 2006/04/10
- Re: [Qemu-devel] USB Tablet Emulation, Johannes Schindelin, 2006/04/10
- [Qemu-devel] USB Tablet Emulation + VNC patch.., Troy Benjegerdes, 2006/04/19
- Re: [Qemu-devel] USB Tablet Emulation + VNC patch.., Brad Campbell, 2006/04/21
- Re: [Qemu-devel] USB Tablet Emulation + VNC patch.., Troy Benjegerdes, 2006/04/25
- Re: [Qemu-devel] USB Tablet Emulation + VNC patch.., Brad Campbell, 2006/04/26
- Re: [Qemu-devel] USB Tablet Emulation, Leonardo E. Reiter, 2006/04/10