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

Analog joystick too sensitive #7

Closed
GoogleCodeExporter opened this issue Aug 2, 2015 · 1 comment
Closed

Analog joystick too sensitive #7

GoogleCodeExporter opened this issue Aug 2, 2015 · 1 comment

Comments

@GoogleCodeExporter
Copy link

N64 controller never use the full range of -128 to 127 for it's axis. It only 
used it at about 66%.

Sending full range value will confuse some games like Blast Corps.

Original issue reported on code.google.com by DarthCloud@gmail.com on 31 Mar 2011 at 12:29

@GoogleCodeExporter
Copy link
Author

This issue was closed by revision r11.

Original comment by DarthCloud@gmail.com on 2 Apr 2011 at 3:27

  • Changed state: Fixed

darthcloud added a commit that referenced this issue Feb 6, 2018
Fixes #7
GameCube joysticks range differs from the N64. N64 has a maximum of ~84 along the axes origin
and ~71 in the diagonals. GameCube main joystick has a maximum (once dead zone & sign applied)
of ~90 and ~65 for the same. C joystick maximums are a bit lower at ~82 and ~57. N64 max value
once plot will give us a square-ish equilateral hexagon while GameCube is an equiangular &
equilateral hexagon.

This may be problematic in some games where the diagonal max speed could be lower. In other games
the joystick may feel too sensitive since the main GC joystick output values are significantly
higher along the origin.

This feature uses the opposite axis as a reference to determine dynamically the scaling value
required. The scaling values are stored in a table using the fixed point format of 1.7. Once
multiplied by the joystick value (in 8.0 format) this gives us in our hardware multiplier a
value in the fixed point 9.7 format.

The D-pad LEFT submenu can disable this function (X option) as it may be beneficial in some case
to use the previous behavior. (Default enabled)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant