For those getting Right Analog Stick Problem, please come in

tckab123

Club Supporter
It seems some players do not have their right analog stick not working properly (right/left becomes up/down etc). Actually windows allows directinput gamecontroller to be assigned accordingly, by using the Axis Selection Overrides technique.

Background Info:

First, you need to identify your gamepad "VID-PID code". If you do not know what it is, first look up your gamepad name in the control panel (oh, have you changed it to Logitech DualAction USB?:) ). Then open the registry and use the find feature to find the gamepad name. When you find one entry, just look at the folder and you should notice your gamepad "VID-PID code". For example, mine is VID_0E8F&PID_0003.

Then you need to know how many axes your gamepad has. If you have two analog stick, you have 4 (like me). If you have a slider, you have 5. Each axis is assigned a number.

Left analog (x-y)
x = 0
y = 1

Right analog (Rz)
z axis = 2
z rotate = 5

So I have 0, 1, 2, 5. Actually, you can check your axis number by looking at:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\DirectInput\ VID-PID code \Calibration\

Do you also have 0 1 2 5? Ok. Let's move on to how to exchange 2 and 5.

First, you should close the registry, unplug the gamepad and restart windows.

Now go to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\ VID-PID code

Right click on the folder and creat a key called "Axes". Then right click on the "Axes" folder and creat a key called "2". Inside the "2" folder, create a binary value named "Attributes" and set it to: 00 00 00 00 XX 00 YY 00. XX is a two-digit hexadecimal number specifying the HID usage page of the axis that you want to override. YY is a two-digit hexadecimal number specifying the HID usage of the axis.

To make thing simple,

Right analog (Rz)
z axis = 2
usage page = 01
usage = 32

z rotate = 5
usage page = 01
usage = 35

So it should be 00 00 00 00 01 00 35 00 for folder "2" since you want to assign it as z rotate.

Now create another key "5" and this time the "Attributes" should be 00 00 00 00 01 00 32 00

Now close the registry, plug back the gamepad and goto control panel/calibration to confirm the change. Actually, you can go the game and enjoy immediately.

Notes:
1. "2" should come before "5", otherwise a "hole" during mapping may occur.

2. You may notice ControlSet001 and ControlSet003. You do not need to change it any change in CurrentControlSet will be directed to them.
 

Bahnzo

Club Supporter
Excellent. This works 100% now with my NYKO Air-flo....my right stick now works exactly like it should.

Thanks! Great post and very detailed.

Mods should sticky this.....
 

tckab123

Club Supporter
Should anybody still have right analog stick problem please feel free to post here and let's work together to find out the answer. But i should say that it is not the fault of your gamepad, it is the problem of FIFA 2004 itself.
 

F_Redondo

Club Supporter
I have 4 Axes and they 0=x,1=y,3=Rx,5=Rz.Here are the regedit info:

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_045F&PID_01FF\Axes]

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_045F&PID_01FF\Axes\0]
@="X"
"Attributes"=hex:01,01,00,00,01,00,30,00
"FFAttributes"=hex:0a,00,00,00,00,01,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_045F&PID_01FF\Axes\1]
@="Y"
"Attributes"=hex:01,01,00,00,01,00,31,00
"FFAttributes"=hex:0a,00,00,00,00,01,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_045F&PID_01FF\Axes\3]
@="Rx"
"Attributes"=hex:01,01,00,00,01,00,36,00
"FFAttributes"=hex:0a,00,00,00,00,01,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_045F&PID_01FF\Axes\5]
"Attributes"=hex:01,01,00,00,01,00,32,00
@="Rz"
"FFAttributes"=hex:0a,00,00,00,00,01,00,00

I have trid to exchange the "2" and "5".But the up and down of Right Analog Stick doesn't work.
How could I do.
Sorry for my poor English again:).
 

F_Redondo

Club Supporter
I changed it to the key as the post,but it doesn't work.The key I write here are my original info.

Plese tele me how to change it.Thank you very much:)
 

tckab123

Club Supporter
To F_Redondo:

Since you have axis number "3" and its original usage is 36, it is a slider definition. Your axis number "5" control your z-axis (usage 32) in left/right direction. There is no Rz definition in up/down direction (usage 35).

i think you can try two options. Provided that you restore to the above registry. First, change the "attributes" in axes "3" to 35 instead of 36. Do not create key "2", just use your folder "3" since you have "3" instead of "2". Also since you have your attributes starting as "01 01......", leave them the same as they denote that your gameport is something other than USB.

Please tell me if it works.

One more thing, i think you should do this in CurrentControlSet rather than ControlSet001 or ControlSet003.
 

ZhaoYun

Club Supporter
Hi Guys,

I have a Rockfire PSX/USB Bridge Converter. I tried both Chris and Beckham way, also can't get it working.

Below is my registry value after merging Beckham .reg file:-

Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:27 AM
Value 0
Name: OEMName
Type: REG_SZ
Data: Logitech DualAction USB

Value 1
Name: OEMData
Type: REG_BINARY
Data:
00000000 03 00 08 10 0c 00 00 00 - ........

Value 2
Name: OEMCallout
Type: REG_SZ
Data: joyhid.vxd

Value 3
Name: ConfigCLSID
Type: REG_SZ
Data: {60150963-C4AE-11D1-B59B-00A0C9971EFC}


Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050\Axes
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:27 AM

Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050\Axes\0
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:27 AM
Value 0
Name: <NO NAME>
Type: REG_SZ
Data: X axis

Value 1
Name: FFAttributes
Type: REG_BINARY
Data:
00000000 0a 00 00 00 00 01 00 00 - ........

Value 2
Name: Attributes
Type: REG_BINARY
Data:
00000000 01 81 00 00 01 00 30 00 - ......0.


Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050\Axes\1
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:27 AM
Value 0
Name: <NO NAME>
Type: REG_SZ
Data: Y axis

Value 1
Name: FFAttributes
Type: REG_BINARY
Data:
00000000 0a 00 00 00 00 01 00 00 - ........

Value 2
Name: Attributes
Type: REG_BINARY
Data:
00000000 01 81 00 00 01 00 31 00 - ......1.


Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050\Axes\2
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:49 AM
Value 0
Name: <NO NAME>
Type: REG_SZ
Data: Throttle

Value 1
Name: Attributes
Type: REG_BINARY
Data:
00000000 00 81 00 00 02 00 bb 00 - ......».


Key Name: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\MediaProperties\PrivateProperties\Joystick\OEM\VID_0583&PID_2050\Axes\5
Class Name: <NO CLASS>
Last Write Time: 11/12/2003 - 2:49 AM
Value 0
Name: <NO NAME>
Type: REG_SZ
Data: Rudder

Value 1
Name: Attributes
Type: REG_BINARY
Data:
00000000 00 81 00 00 02 00 ba 00 - ......º.


Also, I tried Chris's way, it does not work either.

I can see the Logitech DualAction controller in my Control Panel.

Any other solution ?

Thank you.
 

F_Redondo

Club Supporter
Chris Tse
Originally posted by tckab123

One more thing, i think you should do this in CurrentControlSet rather than ControlSet001 or ControlSet003.

There is no "Axes" in CurrentControlSet,should I create one there with the 0,1,3,5??
 

F_Redondo

Club Supporter
I have change it and also add Axes in CurrentControlSet.but it can't work either.

and should I change my "xxxxxx" into Logitech DualAction USB??
 

ZhaoYun

Club Supporter
Originally posted by F_Redondo
I have change it and also add Axes in CurrentControlSet.but it can't work either.

and should I change my "xxxxxx" into Logitech DualAction USB??

Yes, I am Redondo. But staying somewhere very far from Mainland.

Ok, if you merge Beckham's .reg file, the CONFIGSLID will tell your PC that you are using Logitech DualAction USB. If you are using Chris Tse way, then yes, you have to change your xxxx gamepad to Logitech DualAction USB.

Hope this help...I can't get mine working, hopefully you can get yours working.
 

footballs

Club Supporter
ive already got an Axis folder where yo usay you have to create on and it has keys 0 and 1 in them. i tried adding 2 and 5 but it doesnt work (i.e. i have 0 1 2 and 5 in the axis folder)

what am i doing wrong?
 

tckab123

Club Supporter
Hello, everyone. Have anyone still got right stick problems?
First, let me know if the stick is totally not functioning, or just functioning not the expected way (e.g. cannot move up/down, up/down swapping with left/right etc.).

Also you should have a clear picture of how many axes folder your gamepad have by looking at calibration:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro
l\MediaProperties\PrivateProperties\DirectInput\VID-PID code\Calibration\

And which axes control which direction by testing it in the control panel.

After that, you should know which folders to be inter-changed or edited.

Also post your reg data here so that i may help a bit.

To F_Redondo Zhao_Yun:

Does your reg data still look the same as posted?

Please tell me how your right stick is working at the moment.
 

tckab123

Club Supporter
To footballs:

You do not need to guess which folder you should have, just check at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro
l\MediaProperties\PrivateProperties\DirectInput\your VI
D-PID code\Calibration\

someone may have 0 1 2 5, some may have 0 1 3 5, still some may have 0 1 5 6. So please check carefully.

Also please tell me how the stick is working at the moment.
 


Top