Retropie : analoge sticks van je controller gebruiken

Op een Raspberry Pi met Retropie zijn de controllers vaak een ware nachtmerrie om tot in de puntjes afgesteld te krijgen. Eén zo’n puntje is het gebruik van de analoge sticks (als je controllers die tenminst heeft). Vooral bij veel PSX (PlayStation ) games is het zeer handig.

Eigenlijk is het makkelijk in te stellen zolang je maar goed begijpt wat je aan het doen bent. Daarom zal ik alle stappen zo gedetailleerd mogelijk proberen uit te leggen.

Dit zijn de stappen die we moeten volgen :

  1. een PSX game opstarten en naar RGUI gaan
  2. een kopie nemen van alle instellingen die standaard aanwezig zijn
  3. alle nodige wijzigingen aanbrengen en deze bewaren
  4. enkel de verschillen bewaren

Een PSX game starten + RGUI

Ik ga ervan uit dat je RetroPie 3.x systeem reeds op punt staat en dat je de ROMs reeds op de juiste plaats hebt staan. Is dit nog niet het geval, dan kun je alles nog eens nalezen op Je RPi2 omtoveren tot een retro gaming console en PSX games spelen.

Zodra je spel is gestart kun je op de knoppen SELECT en X drukken om RGUI te openen. Opgelet! Met X bedoelen we de knop die op een Playstation controller gelijk staat aan het driehoekje! Want RetroArch is gebaseerd op een Nintendo controller.

snescontroller-usb

RGUI staat voor RetroArch Graphical User Interface. Velen weten zelfs niet dat het menu bestaat. Je kunt hier honderden wijzigingen aanbrengen. Het enige probleem is dat standaard steeds het bestand retroarch.cfg wordt geladen. Maar anderzijds worden de wijzigingen niet opgeslagen in dit bestand. Er wordt gewoon een nieuw aangemaakt.

rgui001

Aangezien we het allemaal netjes en correct willen houden, gaan we niet zomaar het bewuste retrorch.cfg-bestand beginnen aanpassen. Neen, we gaan eerst een kopie maken van het huidige retroarch-bestand.

Een kopie maken van de standaardinstellingen

De eerste stap is een kopie maken van het bestaande retroarch.cfg. Dit doen we in RGUI door te kiezen voor Save New Config (net onder RetroArch Config). Een gele tekst komt onderaan je scherm tonen dat er een nieuw bestand is opgeslagen. Aangezien we nog geen enkele wijziging hebben gemaakt zou dit dus een identieke kopie moeten zijn van de oorspronkelijke instellingen.

Maak via FileZilla een verbinding met je RPi2, we gaan deze bestanden eens bekijken.

Als je niet weet hoe je een verbinding moet maken tussen je hoofdcomputer en de Rpi2, dan lees je best eerst Verbinding tussen hoofdcomputer en Rpi2.

De map waar we moeten zijn voor PlayStation is :

rgui002

Als we een kijkje nemen naar de bestanden, dan zien we inderdaad het oorspronkelijke retroarch.cfg. Maar er is ook het bestand libretro.cfg. Merk ook het verschil in grootte op. Dit komt omdat libretro.cfg werkelijk álle instellingen opslaat. Terwijl retroarch.cfg enkel de PSX specifieke instellingen bevat. Retroarch.cfg haalt alle andere nodige instellingen uit een soort ‘moeder-bestand’ dat geldt voor alle libretro emulators.

Libretro is een verzameling emulators die allemaal dezelfde gemeenschappelijke instellingen kunnen gebruiken (bvb de controller settings).

rgui003

Wijzigingen aanbrengen en bewaren

Ga terug naar het RGUI menu op je RPi2 en kies voor Settings > Input. Ga naar beneden en bij User 1 Device Type zie je wellicht staan Retropad. Verander dit naar Retropad w/ Analog.

Net daaronder zie je staan Player 1 Analog to Digital Type. Hier kies je voor Left Analog.

Keer terug naar het begin, het hoofdmenu dus, door op de B-toets te drukken (of op een Playstation controller de X-toets).

Kies nu op nieuw Save New Config.

Opnieuw zal er een bestand worden opgeslagen. En opnieuw gaan we dit controleren via FileZilla :

rgui005

En inderdaad : er is een bestand toegevoegd, nl. libretro-1.cfg.

Nog even herhalen wat elk bestand precies is (want dit is belangrijk om weten).

  • retroarch.cfg is het bestand met alle settings die worden aangevuld op het ‘moederbestand’ dat alle libretro emulators gebruiken.
  • libretro.cfg is een kopie van retroarch.cfg maar dan inclusief alle settings van het ‘moederbestand’
  • Libretro-1.cfg is een bestand met álle settings, inclusief de wijzigingen die we hebben aangebracht.

Standaard kijkt onze installatie enkel naar retroarch.cfg. Eigenlijk is het dus verleidelijk om dit te verwijderen, vervolgens libretro-1.cfg te hernoemen naar retroarch.cfg en klaar is Kees.

In feite zou dit kunnen. Maar dat is niet zo netjes en niet overzichtelijk. We gaan het doen zoals het hoort. Bovendien, en dit is niet onbelangrijk, zouden de eventuele wijzigingen (bvb. de overlays) worden overschreven en zijn we die kwijt.

De verschillen opzoeken en bewaren

Ga opnieuw naar FileZilla en plaats libretro.cfg en libretro-1.cfg in een mapje op je computer.

rgui006

Nu komt het erop aan om de verschillen tussen beide op te zoeken. Manueel is dit onbegonnen werk. Gelukkig is er de site Diff Checker.

Open op je hoofdcomputer eerst het bestand libretro.cfg in kladblok (of iets gelijkaardig voor de Linux en Mac gebruikers). Druk op CTRL + A om alles te selecteren. Druk vervolgens op CTRL + C om de selectie te kopiëren. Ga naar de site Diff Checker en gebruik CTRL + V om alles in het linkergedeelte te plakken.

Doe nu identiek hetzelfde met het bestand libretro-1.cfg en plak dit in het rechtergedeelte. Druk op de knop Find Difference.

rgui007

Het resultaat is een scherm waarin we gewoon kunnen scrollen. De veranderingen zijn aangeduid met een groene en rode balk. In ons geval zijn er 2 wijzigingen.

rgui004

 

Selecteer de regels in het groen met je cursor en kopieer deze met CTRL + C. Sluit het scherm van Diff Checker nog niet! Het is de bedoeling dat we deze 2 regels toevoegen aan het bestand retroarch.cfg waarbij het allemaal begon.

Hiervoor gaan we terug naar FileZilla en rechtsklikken op retroarch.cfg in de map ../opt/retropie/configs/psx. Kies voor Bekijken/Bewerken. Het bestand zou moeten openen in kladblok. Maak bovenaan een beetje ruimte door op een paar keer op enter te drukken. Plak nu de regels die we eerder kopieerden op de site van Diff Checker helemaal bovenaan.

 

rgui011

Sluit het bestand en FileZilla zal ons een waarschuwing geven dat het bestand is gewijzigd en zal vragen als we dit opnieuw willen uploaden. Uiteaard antwoorden we hierop met Ja.

rgui010

Nu is het best om je RPi2 even te herstarten. Speel opnieuw een PSX game en je zult merken dat de analoge sticks nu wel werken.

Uiteraard kun je dit ook doen voor Player 2, 3…

En voor de luie types…

Uiteraard kun je het allemaal een stuk vlugger doen. Je opent gewoon het cfg-bestand dat bij je emulator hoort en plakt onderstaande code helemaal bovenaan. Voor Playstation moet je dus in de map ../opt/retropie/configs/psx zijn en ga je op zoek naar retroarch.cfg.

input_libretro_device_p1 = "5"
input_player1_analog_dpad_mode = "1"
input_libretro_device_p2 = "5"
input_player2_analog_dpad_mode = "1"

Hiermee heb je meteen voor speler 1 en 2 de analoge stick geactiveerd.

Maar sommige controllers…

Wellicht heb je al een paar keer al je haar uitgetrokken omdat bovenstaande in jouw geval niet wil lukken. Dan kan het zijn dat je controller wellicht een fake PlayStation controller is en daardoor niet 100% correct wordt herkend. Wanhoop niet, de oplossing is nabij.

Via FileZilla bekijk je het bestand retroarch-core-options.cfg. Dit staat in de map ../opt/retropie/configs/all.

Ga op zoek naar pcsx_rearmed_pad1type en wijzig naar :

pcsx_rearmed_pad1type = "analog"
pcsx_rearmed_pad2type = "analog"

Hopelijk heeft dit je probleem opgelost. Is het niet zo, laat gerust een commentaar achter.

Reageer :

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *