• Tyson Whitehead's avatar
    dinput: Implement DIPROP_AUTOCENTER. · 9dc1ddf8
    Tyson Whitehead authored
    Autocenter is a default effect playing on the device following power
    up or reset. It is disabled by stopping all effects. On at least
    some devices (all?) it is a spring effect playing in slot 1.
    Capturing Windows USB packets reveals it dinput acquire does (1) a
    reset (this enabled autocenter) and, if autocenter is disabled, (2)
    a stop all effects (this disabled autocenter).
    
    This logic works regardless of whether autocenter is a spring effect
    playing in slot 1 or not. It does mean autocenter can only be set
    when the device is not acquired. Testing on Windows reveals setting
    autocenter properties while acquired returns DIERR_ACQUIRED even
    if the device is exclusively acquired, so this is consistent.
    9dc1ddf8
device.c 78.5 KB