Correct handling of the nunchuk and classic analogue controllers

(conflict with the dpad). The dpad is now mapped to the last axis + 1/2
(might be a problem for GC?). Update changelog
This commit is contained in:
simon.kagstrom 2009-05-24 17:07:24 +00:00
parent 4b43bf3592
commit 43c01039d9
4 changed files with 16 additions and 3 deletions

View File

@ -1,4 +1,10 @@
version 2:
* Fix bug where the nunchuk analogue controller and
the DPAD would not work at the same time
* Lots of menu improvements (pressing 1 will now go
back to the last menu for example)
* Enable use of harddisks
* Fix save/restore state

View File

@ -385,7 +385,7 @@ static void setup_joystick(int joy, const char *key, int sdl_key)
/* For some reason, the user uaerc removes these. The following
* lines should be removed when this is properly figured out */
for (i = 0; i < 6; i++)
for (i = 0; i < 8; i++)
{
const char *what = "JOY2_HORIZ"; /* Assume port 1 */

View File

@ -58,8 +58,8 @@ static void read_joy (unsigned int nr)
if (v & SDL_HAT_RIGHT)
x = 1;
setjoystickstate (nr, 0, x, 1);
setjoystickstate (nr, 1, y, 1);
setjoystickstate (nr, axes + i * 2, x, 1);
setjoystickstate (nr, axes + i * 2 + 1, y, 1);
}
num = SDL_JoystickNumButtons (joy);

View File

@ -70,6 +70,10 @@ input.1.joystick.0.axis.2=JOY2_HORIZ
input.1.joystick.0.axis.3=JOY2_VERT
input.1.joystick.0.axis.4=JOY2_HORIZ
input.1.joystick.0.axis.5=JOY2_VERT
# The "hat" on the wiimote (dpad)
input.1.joystick.0.axis.6=JOY2_HORIZ
input.1.joystick.0.axis.7=JOY2_VERT
# 2 on wiimote, Z on nunchuck and a/b on the classic controller
input.1.joystick.0.button.3=JOY2_FIRE_BUTTON
input.1.joystick.0.button.7=JOY2_FIRE_BUTTON
@ -85,6 +89,9 @@ input.1.joystick.1.axis.2=JOY1_HORIZ
input.1.joystick.1.axis.3=JOY1_VERT
input.1.joystick.1.axis.4=JOY1_HORIZ
input.1.joystick.1.axis.5=JOY1_VERT
input.1.joystick.1.axis.6=JOY1_HORIZ
input.1.joystick.1.axis.7=JOY1_VERT
input.1.joystick.1.button.3=JOY1_FIRE_BUTTON
input.1.joystick.1.button.7=JOY1_FIRE_BUTTON
input.1.joystick.1.button.9=JOY1_FIRE_BUTTON