I finally managed to get my FlightGear behaving itself last week - there are a few issues I want to investigate before I bring them up here, but one affected me almost immediately - the input code as it stands right now means Mac joysticks tend not to be recognised.

There are two issues: firstly, when support was added in the XML joystick definitions for platform specific axis / button identifiers, a case was added for 'mac' as well as 'unix' and 'windows' - but most (none?) of the joystick files actually use this tag. Now, one option is to go around adding 'mac' tags, but at least for my SideWinder, the OS-X axis / button assignments match the Unix ones. I would be prepared to bet a small sum of money that most of the time, the assignments are going to match ... but of course I can't be sure until Mac users with some of the existing joysticks test this. (Knowing what happens with the logitech and thrustmaster sticks would be interesting)

Anyway, I have a trivial patch to 'input.cxx' which adds in a fallback to 'unix' on OS-X; it works for me.

The second issue is probably my fault, since I did the original code to add joystick support to PLIB on OS-X (but various people have fixed bugs since then). The code that reports the device name is only using the Product ID, and not the manufacturer ID as well. Hence, on OS-X, the name returned for my joystick is 'SideWinder Precision 2 Joystick', whereas on Linux it would be 'Microsoft SideWinder Precision 2 Joystick'. Obviously this is breaking the config lookup logic.

I guess I should submit a patch to PLIB for this issue - in the short term I have just extended my joystick definition.

That which does not kill me has poor aim
Flightgear-devel mailing list

Reply via email to