Homebrew WiiSX RX - A new fork.

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
I'm interested in writing the fix mentioned a couple of pages ago (sorry no quote, just made my account), hopefully looking at a similar fix for the Gamecube controller will be enough for my limited coding knowledge because in my opinion classic controller pro is objectively best controller for emulating ps1 on wii >:////
I did some preliminary testing with my classic controller pro with a ps1 controller testing utility called padtest. Loading it up in wiisxrx 2.4 gives me this range for both analog sticks:

full up: y=116
full left: x=-112 (-116 if I reeeally push the left one)
full right: x=102
full down: y=-102 (-106 if I really push the left one)

Looking at the similar fix for the gamecube controller, it pretty much just multiplied the stick value by 4/3 and capped it if it went over +/-128. The gamecube controller's range before the fix was a little more limited than the classic controller pro range now (close to 100 all around on wiisxrx 2.3 where the fix wasn't implemented yet). My preliminary guess would be to multiply by 11/9 instead.

I would have made a pull request already but I wanna be sure its the same for regular classic controller users before I make my pull request, so I'm asking anyone with a regular classic controller (not pro) to please do the following:

1. search "ps1 padtest" and download it from psx-place (i would link it here but I just made my account just for this so I'm restricted)
2. load the padtest.bin/.cue into wiisxrx and push your sticks around ;)
3. make sure you get the values of all the way up/left/right/down
4. post them here
5. thanks
Hi @loquinator3000. Here's the app so other users can chime in their values, too.

IMPORTANT: set the PSX Controller Type to Analogue in the emulator before booting padtest.

I'll edit this post and place the values my WCC throws in 5 minutes or so.

EDIT:
Wii Classic Controller:
Left Analog
Full UP = y -118
Full LEFT = x -123 (-128 if you do a soft jiggle)
Full RIGHT = x 125
Full DOWN = y 125

Right Analog
Full UP = y -127
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 116

Wii U Pro Controller:
Left Analog
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 126

Right Analog
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 126
 

Attachments

  • PadTest 1.0.zip
    78.7 KB · Views: 230
Last edited by niuus,

loquinator3000

Member
Newcomer
Joined
Aug 30, 2020
Messages
16
Trophies
0
Age
24
XP
102
Country
United States
Hi @loquinator3000. Here's the app so other users can chime in their values, too.

I'll edit this post and place the values my WCC throws in 5 minutes or so.

EDIT:
Wii Classic Controller:
Left Analog
Full UP = y -118
Full LEFT = x -123 (-128 if you do a soft jiggle)
Full RIGHT = x 125
Full DOWN = y 125

Right Analog
Full UP = y -127
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 116

Wii U Pro Controller:
Left Analog
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 126

Right Analog
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 126
Full DOWN = y 126
So it looks like the sticks are more limited on the cc pro? It probably is because i saw someone else have this issue specifically with a classic controller pro. In that case, would it be wise to go ahead with this change at the expense of fidelity on the regular classic controller?
 
Last edited by loquinator3000,

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
So it looks like the sticks are more limited on the cc pro? Or maybe its an issue with just my controller? Hopefully someone else can chime in too
In case it helps you, coder oibaf wrote a really good test to check for analog data values, it runs on plain Homebrew Channel. Works with the two Classic Controllers, Nunchuk, and Wii U Pro Controller.
https://gbatemp.net/threads/fbzx-wii-wii-u-pro-controller-support.455944/#post-7005660

This update for said tool also writes to a textfile, and reports more complete data.
https://gbatemp.net/threads/wii-u-pro-controller-calibration-data.458351/

It probably is because i saw someone else have this issue specifically with a classic controller pro. In that case, would it be wise to go ahead with this change at the expense of fidelity on the regular classic controller?
In the meanwhile. i could compile a build specifically for WCCP users, so it does not interfere with regular WCC, should the need arise.
 
Last edited by niuus,
  • Like
Reactions: Tetsuo Shima

loquinator3000

Member
Newcomer
Joined
Aug 30, 2020
Messages
16
Trophies
0
Age
24
XP
102
Country
United States
Is there no way for the code to tell if youre using a pro or regular classic controller? Also, is the libogc used in compiling wiisxrx the latest version? I dont know much about it but it sounds like it is what's letting you read from the controller
Also, I went ahead and made the pull request
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
Is there no way for the code to tell if youre using a pro or regular classic controller? Also, is the libogc used in compiling wiisxrx the latest version? I dont know much about it but it sounds like it is what's letting you read from the controller
Also, I went ahead and made the pull request
1.- Not sure.
2.- No. 1.8.15-1, if i recall right.

Checking the Github, gonna turn on the PC so i can compile your Pull Request and test the WCC. I'll let you know in some minutes, i was playing on the Ice Caves of Final Fantasy IX. :yaywii:
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
Also, I went ahead and made the pull request
WiiSXRX_wcc: though it did not hurt the analogue function on the WCC, it does not seem to make a difference. I tested on Legacy of Kain - Soul Reaver. Only LS-Up is not reaching the full range, so the character does not run when using that. I attached it so you can test.

WiiSXRX_wcc2: seems too sensitive.

WiiSXRX_wcc3: seems to be the sweet spot.
 
Last edited by niuus,

loquinator3000

Member
Newcomer
Joined
Aug 30, 2020
Messages
16
Trophies
0
Age
24
XP
102
Country
United States
Though it did not hurt the analogue function on the WCC, it does not seem to make a difference. I tested on Legacy of Kain - Soul Reaver. Only LS-Up is not reaching the full range, so the character does not run when using that. I attached it so you can test.
So testing with the build you provided, I noticed two things:
1. The new build slightly decreases the range of both sticks in padtest:
full up: y=-115
full left: x=-111
full right: x=103
full down: y=103
2. If I push the sticks to where they are supposed to read x,y=0, padtest reports x,y=-128 (top left corner) instead.
I dont know what i did aaaaa
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
So testing with the build you provided, I noticed two things:
1. The new build slightly decreases the range of both sticks in padtest:
full up: y=-115
full left: x=-111
full right: x=103
full down: y=103
2. If I push the sticks to where they are supposed to read x,y=0, padtest reports x,y=-128 (top left corner) instead.
I dont know what i did aaaaa
LOL.

I changed my pull request to use an s8 instead of u8 type. Maybe that will work
Okey, i'll compile one.
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
@Tetsuo Shima, shot you a PM.

I wanna test something. I changed s8 back to u8 and made the ratio 2 instead of 14/11. Can you compile for me please
Done. Here.

This time it works, though it went a bit overboard, using the stick only halfway reaches full 128 on all directions and corners. Tested as always on Soul Reaver.
 
Last edited by niuus,

loquinator3000

Member
Newcomer
Joined
Aug 30, 2020
Messages
16
Trophies
0
Age
24
XP
102
Country
United States
Done. Here.

This time it works, though it went a bit overboard, using the stick only halfway reaches full 128 on all directions and corners. Tested as always on Soul Reaver.
Wow, I just tested it and the x,y=0 issue is gone! And the sticks range is actually improved this time! I'm gonna try changing it to 4/3 now, thanks!
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
Does it support GPT partitions?
Can't say, no way to test for me.

Wow, I just tested it and the x,y=0 issue is gone! And the sticks range is actually improved this time! I'm gonna try changing it to 4/3 now, thanks!
Improved or exaggerated? :lol:

@Sogun, your dream came true. You should test it with your WCCP. Report the values with this utility, using 2.4 and the post-fixed build.
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
Hopefully 4/3 will improve it even more!! I just made the commit now :D
Done. Same post.

Much more manageable, you can now use the mid and full reach of the analogue stick.

That seems to be the proper balance. I checked the Gamecube code reference and it uses the same value.

Right on time for the next WiiSX RX release.
 
Last edited by niuus,

Sogun

Member
Newcomer
Joined
Jan 11, 2011
Messages
23
Trophies
1
XP
1,301
Country
@niuus
These are the results of "WiiSXRX_wcc3":

Wii Classic Controller Pro (Black bundled with Monster Hunter tri):
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 127
Full DOWN = y 127
Untouched = x -4, y -4

Right Analog
Full UP = y -126
Full LEFT = x -128
Full RIGHT = x 127
Full DOWN = y 127
Untouched = x-9, y 9

Wii Classic Controller Pro (Gold bundled with GoldenEye,almost unnused):
Left Analog
Full UP = y -128
Full LEFT = x -128
Full RIGHT = x 127
Full DOWN = y 127
Untouched = x 0, y -9

Right Analog
Full UP = y -126
Full LEFT = x -128
Full RIGHT = x 127
Full DOWN = y 127
Untouched = x 0, y 9


Legacy of Kain: Soul Reaver controls perfect now. Thank you very much and also to @loquinator3000 !!!
 

niuus

Well-Known Member
OP
Member
Joined
Mar 4, 2016
Messages
2,023
Trophies
1
XP
4,454
Country
Venezuela
So, according to the timely testing from @Tetsuo Shima, it is confirmed that Wiiflow's plugin functionality (thanks to @Wiimpathy!) is working as it should! Tetsuo even kindly provided me with a mini wiiflow pack just for tests.

Now, on to the important disclaimer, there's a known minor bug in the original implementation: when the emulator is run using Wiiflow, the controller won't respond until you enter the emulator menu at least once. Tetsuo Shima told me about a quick workaround if you're far from your console to press reset: once the game has booted, disconnect the Wii Classic Controller, then press - & + so it enters the GUI. After that, connect your WCC and resume the game. No biggie.

BUT! Here is the fun part: only the Wii Controller Classic is affected by this. Gamecube joypad, and Wii U Pro Controller will work right away. The Wii U Gamepad probably works perfect, too.
 
Last edited by niuus,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    S @ salazarcosplay: or did you have to find a used one with the lower firm ware that was not updated