Skip to content

Remapping joystick axes through the registry #258

@steinuil

Description

@steinuil

I'm trying to remap the axes of a Logitech Extreme 3D Pro controller for Hardwar (appid 1500540), which uses DirectInput and only supports binding the throttle to the Z axis (which is yaw on the joystick) or Slider1/2 (which are not mapped). The throttle that I'd like to use as Slider1 is mapped to Rx in joy.cpl

According to the Wine docs, you can add a SZ entry under HKCU\Software\Wine\DirectInput named after the joydev name of the device to remap the axes, in my case I added these entries (first is the joydev device name, the second is what you see through joy.cpl):

"Logitech Logitech Extreme 3D"="X,Y,Z,Slider1,POV1"
"Logitech Extreme 3D"="X,Y,Z,Slider1,POV1"

This doesn't work; when I run joy.cpl I still see the joystick throttle still bound to Rx and not Slider1.

Is this method of remapping joystick axes still supported? I went through the codebase searching for Software\\Wine\\DirectInput and found a couple hits but I couldn't figure out how it was being used or where this mapping is done.

The Wine wiki also mentions grepping the wine debug logs for joydev_enum_device, but that doesn't turn up. The joystick name only turns up in a hid_joystick_enum_device log.

I also found some references to Software\Wine\DirectInput\Joysticks and Software\Wine\DirectInput\Mapping\[username]\[device]\[guid], are these useful/documented anywhere?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions