Skip to content

Conversation

@Althar93
Copy link

@Althar93 Althar93 commented Aug 2, 2023

Proposed fix for issue #102

I acknowledge that I do not fully understand or know the history behind the original implementation and why roll + throttle device is handled differently to seperate roll & throttle devices, but :

**The changes presented here allow for multiple POVs from any same device to be used in BMS (provided the correct g_nPOV2DeviceID & g_nPOV2ID are set) with the exhaustive list of keylines output in 'BMS - Auto.key' **

for (int i = 0; i < deviceControl.joyAssign.Length; i++)
{
sw.Write(deviceControl.joyAssign[i].GetKeyLineDX(i, deviceControl.joyAssign.Length, DXnumber));
sw.Write(deviceControl.joyAssign[i].GetKeyLinePOV());
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't tested, but my worry is this will write out a block of pov-hat bindings for each HID joystick/gamepad device plugged in, in their DeviceSorting.txt order. And I have no idea if BMS keyfile parser keeps the first 2, or the last 2..

Copy link
Author

@Althar93 Althar93 Aug 3, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

BMS - Auto.key.txt
You are right, it does output entries for each HID plugged in : my throttle for instance which does not have POV hats, even though it's setup XML contains entries 'PovAssgn' block generates stub entries - see my generated 'BMS - Auto.key' file.

That being said, as far as I can tell, BMS is quite happy with this arrangement. I will try plugging in a second joystick/device with POV hats and see whether that still holds up.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants