Zo werkt Retroarch (2): Cores downloaden en updaten
In de vorige blogpost heb ik de basisfunctionaliteiten van Retroarch behandeld zoals controllerinstellingen, taal, gebruikersinterface en de almachtige menu-controllercombo. Nu gaan we datgene verkennen waar de meeste Retroarch-gidsen mee beginnen: het downloaden en updaten van cores. Hopelijk wordt gaandeweg duidelijk waarom ik eerst de controllers en dergelijke wilde instellen.
Retroarch verenigt tientallen emulators in één programma. Die emulators bestaan vaak ook als stand-alone programma’s (bijvoorbeeld Snes9x voor de Super Nintendo, Nestopia voor de NES en PPSSPP voor de Sony PSP), maar in Retroarch zijn ze te downloaden als cores. Zodra je één of meerdere cores hebt geïnstalleerd, kun je deze gebruiken om roms, homebrew games of andere bestanden af te spelen. Zonder core wordt er niet gespeeld.
Vanuit het Main Menu navigeer je naar Online Updater > Core Downloader. In het vervolgscherm zie je de optie om via internet cores te downloaden. Ze zijn alfabetisch gerangschikt op type computer en/of maker van de hardware.
Zoveel systemen, zoveel cores
Zo zijn er een heleboel Nintendo-cores, die staan allemaal op een rij met het type console erachter. Tussen haakjes staat de naam van de core. Wil je Super Nintendo-games kunnen spelen, dan kies je bijvoorbeeld voor de core Nintendo – SNES / SFC (Snes9x – current). Speel je liever Sega Megadrive-games, dan is Sega – MS/GG/MD/CD (Genesis Plus GX) een goede optie. Je moet soms even weten waar de afkortingen voor staan, hier zie je een overzicht van veelgebruikte cores en de systemen die ze emuleren.
Je zult een hoop cores zien die je wellicht niks zeggen. Er zijn gewoon een heleboel oude en/of obscure computers en programma’s om te emuleren, van MS-DOS tot SCUMM (bekend van adventuregames als Maniac Mansion) en van de Fairchild Channel F tot de Turbografx-16. Zegt dit je niks? Probeer ze dan gewoon eens uit.
Het is daarnaast mogelijk om specifieke games te spelen via Retroarch, zoals source ports van klassiekers Wolfenstein 3D, Doom en Quake, evenals arcadegames (uit de speelhal dus) en software voor homecomputers als de Sinclair ZX Spectrum, Commodore 64 en Amstrad.
Bij sommige cores staat er ‘current’ achter de titel, bij andere een jaartal. Staat er ‘current’, dan betreft het de meest actuele, standaard versie van de core, in tegenstelling tot versies met een jaartal die niet meer worden geüpdatet (of juist een ander ontwikkelpad zijn opgegaan). Dat kan handig zijn omdat sommige games het wellicht beter doen in een oudere versie. Staat er niets achter de titel van de core? Dan is het altijd de meest actuele versie.
Er zijn daarnaast cores die nieuwe dingen mogelijk maken. Zo is er van de hierboven genoemde core Genesis Plus GX een Wide-versie. Die maakt het mogelijk om oude Sega-games in breedbeeldformaat te spelen zonder het scherm uit te rekken.
Welke moet je hebben?
Bepaalde emulators zijn accurater dan andere. Dat houdt in dat ze de werking van de oorspronkelijke hardware beter benaderen. Dat kost meestal meer rekenkracht van je computer of device. Bij een emulator waarbij performance belangrijker is, gaat het spelen van games boven het getrouw nabootsen van de architectuur van de hardware. Je kunt meestal prima voor de performance-versie kiezen, maar bepaalde games vereisen een hogere mate van accuratesse.
Welke core je het beste kunt gebruiken, hangt ook af van het apparaat waar je op speelt. Op het ene device werkt een bepaalde core beter dan op het andere. Download je Retroarch op een Android-apparaat vanuit de Google Play Store, dan krijg je er bovendien maar een beperkt aantal cores bij.
Dat komt omdat Retroarch anders te groot zou worden en dat staat Google niet toe. Het is nog wel mogelijk om cores handmatig toe te voegen via bestandsbeheer aan de submap cores in je Retroarch-map. Tevens kun je Retroarch voor Android in zijn geheel handmatig downloaden en installeren via retroarch.com.
Suggesties voor cores op pc:
- Atari 2600: Stella
- Colecovision: blueMSX
- MS-DOS: DOSBox Pure
- NeoGeo: Arcade (Final Burn Neo)
- Nintendo DS: DeSmuME
- Nintendo Game Boy en Game Boy Color: Gambatte
- Nintendo Game Boy Advance: mGBA
- Nintendo Entertainment System: Nestopia UE
- Nintendo 64: Mupen64Plus-Next
- Super Nintendo: Snes9x
- Nintendo Virtual Boy: Beetle VB
- Sega Dreamcast: Flycast
- Sega Mega Drive, Master System, Game Gear en Sega CD: Genesis Plus GX
- Sega 32x: PicoDrive
- Sega Saturn: YabaSanshiro
- Sony Playstation: Beetle PSX HW of Duckstation/Swanstation
- Sony Playstation Portable: PPSSPP
- Turbografx-16 en Turbografx CD (ook bekend als PC Engine): Beetle PCE Fast
De cores die je al hebt gedownload, vind je terug via Main Menu > Load Core. Je kunt hier ook elders verkregen cores handmatig installeren of terugplaatsen. Dat laatste heb ik nog nooit nodig gehad, maar goed om te weten dat het kan.
Core toewijzen aan een game (en eindelijk ‘ns spelen)
Om een game te spelen, open je content via Main Menu > Load Content. Je kunt dan bladeren door je harde schijven of je playlists. Als je kiest voor een losse game in plaats van eentje uit een bestaande playlist, dan moet je na selectie eerst een core aan die game toewijzen. Retroarch moet immers weten voor welke emulator de content geschikt is. Mogelijk zie je al suggesties.
Je kunt ook éérst een core laden en daar vervolgens passende content bij zoeken. Hoe dan ook, na deze stap kies je Run om eindelijk eens een game te spelen.
Als het goed is, start de game nu op. Het is in principe niet mogelijk een verkeerde core toe te wijzen aan een game. Is er geen geschikte core voorhanden, dan zie je gewoon geen opties. Je kunt de associatie van een game met een bepaalde core ongedaan maken via Reset Core Association.
Playlists maak je (onder andere) via Import Content in het menu aan de linkerkant van het Retroarch-hoofdscherm. Hier scan je directories of afzonderlijke bestanden, of voer je een handmatige scan uit. Ik vind playlists een must-have als je Retroarch vaak gebruikt, in een volgend artikel leg ik daar alles over uit.
Quick menu, Core Options en notificaties
Iedere core heeft zijn eigen set opties, naast de overkoepelende opties die Retroarch biedt. Je kunt deze opties uitsluitend oproepen als je een game of programma hebt geladen in een core en dan het menu opent (hier komt die controller-combo van pas). Je komt dan weer in het Quick Menu, waar je nu de opties van de core kunt openen via Options. Welke opties er worden geboden, verschilt per core. Wat je nog meer in het Quick Menu kunt doen (o.a. de controls aanpassen, save states gebruiken en shaders activeren), komt in een later artikel aan bod.
(EDIT: ergens in de loop van ’21 of ’22 is Options hernoemd naar Core Options. Dat maakt het duidelijker dat het om instellingen gaat die specifiek bij de actieve core horen).
Goed om te weten: bij het starten van Retroarch, of voor, tijdens en na het spelen van games krijg je notificaties te zien. Je kunt deze aan-of uitzetten via het nogal diep verborgen menu Settings > On-Screen Display > On-Screen Notifications > Notification Visibility.
Ik vind het bijvoorbeeld irritant dat Retroarch bij het laden van een game standaard een soort ‘splash screen’ toont met de titel van het spel en de core waarop het spel draait. Die zet je uit door bij Notification Visibility de optie “Load Content” Startup Notification uit te zetten. Je kunt hier verder kiezen om de framerate te tonen, een melding weer te geven wanneer een game aangepaste controllerinstellingen heeft (vind ik wel handig) en meer.
Cores updaten
Er komen geregeld updates beschikbaar van cores. Wil je die hebben, dan navigeer je weer naar Main Menu > Online Updater > Core Downloader. Achter cores die je hebt gedownload, staat een hashtag (#). Selecteer je deze nogmaals, dan update je ze. In principe hoef je dit niet vaak te doen, maar een geüpdatete versie van een core kan misschien meer games emuleren, of beter werken. Zorg wel eerst dat je de laatste Core Info Files hebt (zie onder).
Met Update Installed Cores update je in één klap alle cores die je hebt gedownload. Bij de Online Updater vindt je nog meer handige opties, die ik hieronder één-voor-één behandel.
Alle andere dingen die je kunt updaten:
Playlist Thumbnails Updater: Als je afspeellijsten hebt gemaakt (behandel ik in een andere blogpost) kun je daar afbeeldingen aan toevoegen, zoals screenshots, logo’s en box art (het originele verpakkingsmateriaal). Via de Thumbnail Updater checkt Retroarch of er nieuwe afbeeldingen beschikbaar zijn.
Content Downloader: sommige cores hebben specifieke inhoud om te downloaden. Denk dan aan homebrew games (spellen die door hobbyisten zijn gemaakt) of andere gratis toegankelijke software zoals de sharewareversie van Doom en de originele versie van het spel Cave Story. De Content Downloader moet je niet verwarren met Main Menu > Load Content, waarmee je bestaande bestanden op je apparaat rechtstreeks kunt openen, mits ondersteund.
Update core info files: alle cores hebben een bijbehorend bestandje met alle informatie over de core. Deze core info files vermelden welke bestandstypen je kunt openen met de core, welk systeem het emuleert, wie de auteur is, uit welke database er info wordt geput (zie onder) en welke bios-files (firmware) er eventueel nodig zijn om de core goed te laten functioneren. Voordat je cores gaat updaten, is het goed om éérst de core info files te updaten. Dan is alle info kloppend en zijn ook nieuwe cores zichtbaar.
In Retroarch vind je de geleverde info terug onder Main Menu > Information > Core Information. Je moet dan wel eerst een core hebben geladen via Main Menu > Load Core. Je kunt de bestandjes ook inzien door via je verkenner/finder in de Retroarch-map naar de submap info te navigeren en de bestanden te openen via Kladblok of het gratis te downloaden Notepad++.
Update Assets: hier kun je lettertypes, iconen en andere grafische zaken downloaden die Retroarch en het gebruikte thema een mooi aanzien geven. Denk aan de juiste afbeeldingen van consoles, controllers en gamecassettes in een afspeellijst. Niet noodzakelijk, wel leuk.
Update Controller Profiles: handig wanneer er bijvoorbeeld een nieuw type controller wordt ondersteund.
Update Cheats: het is mogelijk om in Retroarch gebruik te maken van cheats op een vergelijkbare manier als vroeger met de Game Genie, Action Replay of vergelijkbare apparatuur. Via deze optie update je de mogelijkheden indien deze door de makers zijn uitgebreid.
Update Databases: Retroarch put uit een database om metadata weer te geven voor de software van het systeem dat je emuleert. Dit is handig als je bijvoorbeeld een automatische playlist maakt. Retroarch vergelijkt dan de namen van je bestanden met de namen in de database en geeft -bij een juiste match- de juiste titels en afbeeldingen weer.
Update overlays: over overlays ga ik het in een latere post hebben. Deze maken het mogelijk een mooie afbeelding aan de zijkanten van het scherm te plaatsen, of een oude monitor te simuleren. Via deze optie voeg je nieuwe overlays toe.
Update shaders: shaders zijn grafische filters die oude spellen en programma’s een mooier of passender uiterlijk geven. Zo kun je het uiterlijk van een oude kathodestraalbuis-tv (CRT) nabootsen, scanlines of LCD-puntjes toevoegen of pixels vloeiender maken. Ook dit ga ik later nog behandelen, maar via deze optie kun je ze updaten.
On Demand Thumbnail Downloads: dit gebruik ik zelf niet. Je kunt dit aanzetten als je graag alle thumbnails up-to-date hebt op het moment dat je je afspeellijsten doorbladert.
Af en toe updaten houdt de inhoud van Retroarch up-to-date zonder dat je een nieuwe versie hoeft te downloaden. Vooral van belang bij gebruik van de ‘stable’-versie, want de ‘nightlies’ zijn altijd al zoveel mogelijk up-to-date. Retroarch is nog volop in ontwikkeling, vooral daarom is het handig om geregeld te updaten. Het is niet essentieel, want zonder de nieuwste database entry of core info file werkt het ook wel.
In deel 3 behandel ik hoe je afspeellijsten maakt via automatische of handmatige scans. Ook laat ik zien hoe het Desktop Menu kan helpen bij het creëren van lijsten (voor de pc-versie van Retroarch). Heb je deel 1 gemist? Lees ‘m hier terug.