Dave Baumann said:
I don't know the details of it all, but FF use in Windows could be covered by a license by MS. For instance, DXTC is S3TC that Microsoft has licensed from S3 for use in DirectX and any hardware vendor gets to implement DXTC in hadrware to use under Direct3D - they have to separately license from S3 to use that same hardware for S3TC in OpenGL; similar licensing models can exist throughout the various elements of DirectX (which includes DirectInput).
Q: Can I still use Microsoft's DirectX? Are Immersion TouchSense and DirectX competing standards?
A: Microsoft's DirectX DirectInput Force Feedback features were designed expressly to work with Immersion TouchSense. Starting in early 1997, we have worked closely with Microsoft to get Immersion TouchSense fully integrated into DirectX. Therefore, any Immersion TouchSense product will work with any DirectX application.
DirectX has all the necessary functionality to access and control force feedback joysticks, gamepads, and wheels, but not mice. While you can get mouse input from an Immersion TouchSense mouse through DirectInput, DirectInput currently does not have the ability to create sensations on an Immersion TouchSense Mouse. Furthermore, as mentioned above, DirectX is powerful and extensible but also requires tedious and lengthy bookkeeping tasks. To get around these shortcomings, developers should use the Immersion Foundation Classes (IFC), which among other things is a powerful wrapper for DirectInput (in much the same way Microsoft's MFC is a wrapper for Microsoft's Win32 API). Whether you are developing an application for a gaming product (e.g., joystick, wheel, gamepad) or for a pointing product (e.g., mouse, trackball), you should use the IFC helper tools and libraries. Doing so guarantees your compatibility with both DirectX, as well as all Immersion TouchSense products from Microsoft, Logitech, InterAct, Guillemot, ThrustMaster, CH Products, Primax, LMP, ACT Labs, Mouse Systems, SC&T, Anko, Mad Catz, and others.
http://www.immersion.com/developer/community/faq/faqDeveloper.php#D_T_13
I guess that answers that.