Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

USB: Fix DJ Hero Turntable automatic mapping & turntable multiplier #12206

Merged
merged 1 commit into from
Jan 17, 2025

Conversation

shockdude
Copy link
Contributor

Description of Changes

This change fixes 2 bugs with DJ Hero turntable binding.

  • Fixed automatic mapping of the Right Turntable's axis binds, which were originally backwards for Xbox 360 turntables.
  • Fixed the Turntable Multiplier setting's functionality and increased the maximum multiplier to 512x, enabling the use of Xbox 360 turntables that output a tiny axis range (1/256 of full range). Also update the setting's description.
    • This setting still doesn't work for the SDL handler for some reason, but I didn't want to touch SDL. The multiplier works with the XInput handler, which is enough to get Xbox 360 turntables working.

Rationale behind Changes

In order to play DJ Hero, a turntable controller needs to be bound. Due to the bugs described above, the process of binding Xbox 360 turntables was way more complicated than it ought to be
Fixing these bugs makes turntable binding much simpler.

Suggested Testing Steps

  • Connect an Xbox 360 turntable, or other DJ Hero turntable with XInput mappings.
  • In Controller settings, enable the XInput source
    image
  • In USB Port 1, Bindings section, connect a DJ Hero Turntable, and set Automatic Mapping on the XInput controller representing the turntable.
    image image
  • For Xbox 360 turntables only, switch to the Settings section, and set Turntable Multiplier to 256x.
    image
  • Boot DJ Hero and play!

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Thank you for submitting a contribution to PCSX2

As this is your first pull request, please be aware of the contributing guidelines.

Additionally, as per recent changes in GitHub Actions, your pull request will need to be approved by a maintainer before GitHub Actions can run against it. You can find more information about this change here.

Please be patient until this happens. In the meantime if you'd like to confirm the builds are passing, you have the option of opening a PR on your own fork, just make sure your fork's master branch is up to date!

@lightningterror
Copy link
Contributor

@sanjay900 Can you check this?

@sanjay900
Copy link
Contributor

sanjay900 commented Jan 17, 2025

Looks good to me
I have to assume SDL doesn't work because IIRC SDL has dead zones baked in, which would probably ignore the tiny range of the table

@F0bes F0bes merged commit fbe0c8b into PCSX2:master Jan 17, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants