Adding RID_TYPEHID RawInput support to user32

Nathan Schulte nmschulte at
Tue Jul 7 10:30:26 CDT 2015

On 07/07/2015 07:37 AM, Aric Stewart wrote:
> Wine's hidclass.sys can handle multiple minidrivers in one service, so we should not need independent minidrivers for every platform. Which should be handy.


On 07/07/2015 07:37 AM, Aric Stewart wrote:
> There are 3 places I can really use help.
> 1) Review patches:  I always love good reviews on my patches. Leads to stronger code.
> 2) Above hid.dll:  This is doing the development work on RawInput, Xinput, Dinput and such to become clients of the user level hid.dll functions to access joysticks and gamepads. This should mostly be learning the respective APIs and hooking them into HID.  RawInput is probably the easiest as it does not do much with the HID reports other than just pass them on.
> 3) Linux minidrivers:  I have implemented the OS/X minidriver because that is what I am most familiar with. There is work to implement the linux and linuxinput minidrivers. This is for someone familiar with or wants to become familiar with the lower level linux interfaces.

I can definitely help with #1; it'll be a good way to become familiar 
with this part of the stack too. I started in on all of this with #2, so 
I can probably help with this as well.

I just started researching #3, with trying to drive XInput by evdev; I'd 
like to contribute what I can here as well.  Starting with the evdev 
minidriver seems right, and then RawInput will probably come next.

I still wonder about my question earlier; about how RawInput manages 
shared resources in wineserver.  Does the concern there play into how 
you design hid.dll/HIDclass?


More information about the wine-devel mailing list