USB ports no longer determine player number retroarch 1.7.1
-
@hansolo77 Comments in C/C++ are done with
//
at the beginning of the line or enclosing the code between/*
and*/
. The#
character does something else. -
@hansolo77 said in USB ports no longer determine player number retroarch 1.7.1:
I've tried doing the
#
comment out method to remove theqsort
function from the file specified, but have been unsuccessful. The only way I'm able to even edit that file is while theRetropie-Setup
script it running the update from source. Any other time, the file doesn't exist (it downloads it as part of the update). So while the build is in progress, I've quickly opened up the file innano
via an ssh terminal. Added the#
to the line, saved, and waited. I've got it done before the build reaches that file in it's process. It looks like it takes it and continues, but eventually the whole build crashes and says it was unable to complete.I thought about forking the build to my own github, edit the file from there, and just rebuild by pointing the script to MY hub, but that will only work until I need another update in the future.
Is it possible to maybe update the setup scripts to include a .diff file that removes that update should a user require it?
All you have to do is just use the two files as given in my post above.
-
I shouldn't have to do anything though.. This problem will pop right back up when another update is released.
-
@zerojay said in USB ports no longer determine player number retroarch 1.7.1:
So I decided to take a look at this problem and I was able to fix it.
Download this patch and place it into /home/pi/RetroPie-Setup/scriptmodules/emulators/retroarch/.
Download this retroarch.sh and place it into /home/pi/RetroPie-Setup/scriptmodules/emulators/, overwriting the one currently there.
So the patch just dummies out the qsort line which is the cause of all this. The updated build script for Retroarch just tells Retropie to add the patch before building... aaaaaaand...
...it works! Using the tool, I'm able to set my Bluetooth controllers to take priority just as I wanted once I've rebuilt RetroArch from source with this patch. Everything's working as it should. Hope this helps!
Tried doing this method just now.. all I get is a failed attempt, saying this:
Cloning into '/home/pi/RetroPie-Setup/tmp/build/retroarch'... patching file input/input_driver.c Hunk #1 succeeded at 406 with fuzz 2 (offset 287 lines). Hunk #2 FAILED at 916. 1 out of 2 hunks FAILED -- saving rejects to file input/input_driver.c.rej patching file menu/widgets/menu_entry.c Hunk #1 succeeded at 474 (offset -69 lines). patching file input/drivers_joypad/udev_joypad.c Hunk #1 succeeded at 588 (offset -3 lines).
EDIT
I think I fixed it.. Had to do a couple of things first (not sure which did the trick):- Edit the diff to remove the Time Stamps indicated in the file. I thought it wasn't working because the times/dates were different from mine.
- Edit the diff to find the correct line number to inject the change. Originally it was 591, I changed it to 589 because the one located in the github starts that line there.
- Update the
retroarch
script to remove the trailingv1.7.1
. @meleu discussed with me this was necessary to get the latest version that includes the cheevo fixes for FBA. - Update the Retropie-Setup script to the latest version (this was probably the only thing I needed to do but hadn't thought of it till the very end).
EDIT
Nope, still doesn't work. After rebooting the system, it still detects based on port. -
You're deciding to ignore what I'm telling you to do and then complaining it doesn't work so there's nothing more that I help you with here.
Works 100% here with the instructions given and the files as presented.
-
I get it, you don't have to be so rude about it. :( I was just trying to get FBA cheevos to work. That's what my original plan was all along. I have no doubt the files you made would work to a user needing 1.7.1. But I need 1.7.2 at the least. Thank you though!
EDIT
I fixed it. Re-copied over your original diff and script, then all I had to do was change the line that it injects the changes to. Works perfectly now. Thanks again. :) -
this has been raised over at retroarch: https://github.com/libretro/RetroArch/issues/6707
keep an eye on that issue - hopefully some kind of option can be developed to control this behaviour
-
@hansolo77 You can always install 1.7.2 by editing the retroarch sh file in the retropie-setup folder.
-
@dankcushions said in USB ports no longer determine player number retroarch 1.7.1:
this has been raised over at retroarch: https://github.com/libretro/RetroArch/issues/6707
keep an eye on that issue - hopefully some kind of option can be developed to control this behaviour
I tweeted to them about wanting this as well. Hope to see this happen.
-
I guess im the only one that didnt have this issue. All controllers are still in the same order based on usb port.
-
@edmaul69 Are they always connected or you plug them after starting the system ?
-
@edmaul69 Well, I upgraded to Retropie 4.4 with RetroArch 1.7.1 last weekend, and my two DragonRise zero delay encoders that are connected to a powered usb hub always have the same order in Retroarch.
My two wireless Qumox Wii U Pro gamepads for players 3 and 4 are always arranged in the order of connection, but that hasn't changed since Retropie 4.3 if I recall correctly.
-
@mitu i always keep them plugged in. I should pull out my ps3 controller so i can test plugging it in in a lower numbered port after powering on.
-
@mitu so if i plug in my ps3 controller after boot in port 0 it shows up as controller 7 in emulationstation as well as retroarch so im not so sure its just a retroarch issue. I cant test with bluetooth because the bluetooth on 4.4 never finds my legit ps3 controller.
-
@edmaul69 I found for 4.4 to use a ps3 controller, you have to install the old ps3 controller driver first to connect and then uninstall it.
-
So yeah i think if you plug in stuff after the fact its an issue with retroarch. Keeping everything plugged in seems to work as it should.
-
@lostless so i installed the driver. If i keep it installed it shows up but asks for a 4 digit pin. If i unistall the ps3 driver, it still finds it but gives me an error when i try to connect it. I get an “org.bluez.Error.ConnectionAttemtFailed: Page Timeout”
-
@edmaul69 you have to sync from the driver itself.
-
https://github.com/RetroPie/RetroPie-Setup/pull/2400 - I created a PR with the v1.7.3 including disabling the sort.
-
@buzz how would I install the PR version of retroarch? I would love to test?
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.