Page 1 of 1

Gaming mice

Posted: Wed Apr 30, 2014 3:24 am
by hometue
Hi guys, I was wondering about how to make a driver for a gaming mouse (like my razer deathadder). So basically, it has the mouse buttons, but has two other buttons which can be used as macros. My question is, how do we tell whether those buttons are pressed? In windows I noticed that there are separate drivers other than a regular mouse driver (a keyboard one to be specific). So...do we have to make a special driver for gaming mice for the macros or is there other ways to do it.

PS: If anyone wonders, of course I am not at this stage yet, I am still coding my GDT and IDT (yeah, I knew I asked about it long ago but...got caught up with other things in my life)

Re: Gaming mice

Posted: Wed Apr 30, 2014 4:12 am
by Bender
Well, stuff like gaming mice are "very" hardware specific, and the extra features are only possible if you've USB support. Mouse without USB means using PS/2 Emulation which is slow, and USB support isn't trivial.
I don't see any such programmer's documentation for the mice, in fact the master guide tells you to download the driver for Windows or Mac (no Linux support maybe?), which means that only Razer can provide drivers for their mice. You can always do some gnireenigne-esrever. :)

Re: Gaming mice

Posted: Wed Apr 30, 2014 5:05 am
by hometue
Maybe...(After 10 years...just kidding but its definitely not in the near future)

Re: Gaming mice

Posted: Wed Apr 30, 2014 6:43 pm
by thepowersgang
Actaully, to be sold as a USB device, it must conform to the USB standard, which means it follows the USB HID protocol (at least for the main set of five buttons and movement).

Probably the only way of seeing how hard it would be to interface with it would be to plug it in and see what USB devices show up (of course, this means you'll need a USB stack in your OS to get full use of it)

Re: Gaming mice

Posted: Wed Apr 30, 2014 6:48 pm
by Owen
thepowersgang wrote:Actaully, to be sold as a USB device, it must conform to the USB standard, which means it follows the USB HID protocol (at least for the main set of five buttons and movement).

Probably the only way of seeing how hard it would be to interface with it would be to plug it in and see what USB devices show up (of course, this means you'll need a USB stack in your OS to get full use of it)
It only has to comply with the USB specification to comply; not HID.

If it was required to comply with HID... Microsoft & co wouldn't be able to sell all those "XInput" game controllers.