RetroPie: Die EmulationStation einrichten
Dieser Text wurde archiviert! Eine Liste aller archivierten Texte findet ihr unter ‚RetroPie: Einrichtung für ältere Images‚.
Eine Übersicht der aktuellen Beiträge gibt es unter ‚RetroPie: Raspberry Pi als Emulator‚.
Den Download für das Image 1.10 scheint es mittlerweile nicht mehr auf der offiziellen Seite zu geben, ihr müsst es bei Bedarf also anderweitig suchen!
Diese Beschreibung beinhaltet nur die Einrichtung des RetroPie-Images bis Version 1.10! Dies war die letzte Version mit der EmulationStation 1. Falls ihr einen Pi mit weniger als 512MB Speicher habt, solltet ihr unbedingt das Image 1.10 einsetzen, sonst kann es Probleme geben.
Ab Version 2.0 gab es umfassende Änderungen, sodass dafür neue Beschreibungen notwendig werden (siehe ‚RetroPie: Image Updates‚).
Die Beschreibungen für 2.0 und neuer findet ihr ab ‚RetroPie (2.3): EmulationStation 2 einrichten‚.
Wir haben nun also den Raspberry Pi samt Zubehör und wollen jetzt endlich die sog. EmulationStation einrichten. Wie eben unter ‚RetroPie: Raspberry Pi als Emulator‚ angekündigt verwenden wir dazu am besten das fertige Image…
Nach dem Download des RetroPie-Images (ca. 1,2 GB) sollte ihr dieses erstmal entpacken, danach sind es über 3GB. Um das RAW-Image auf die SD-Karte zu kopieren, verwende ich den Win32 Disk Imager. Hiermit könnt ihr übrigens ganz zum Schluß auch ein komplettes Backup eurer SD-Karte erstellen, sobald alles einmal läuft.
Bevor ihr jetzt eine evtl. bereits benutzte SD-Karte überschreibt, vergewissert euch bitte, dass sich darauf nicht noch die Bilder vom letzten Urlaub oder eurer Hochzeit befinden!
Also Win32 Disk Imager starten, das RetroPie-Image auswählen (hier die Datei ‚RetroPieImage_ver1.9.1.img‘) und mit einem Klick auf den Button ‚Write‘ startet, nach einer letzten Sicherheitsabfrage, das Kopieren.
Sobald der Vorgang beendet ist, kann die SD-Karte auch schon in den Raspberry eingesetzt werden. Verbindet jetzt den Pi mit eurem Fernseher, schließt eine Tastatur und das Netzwerkkabel an. Ganz zum Schluß folgt die Stromversorgung. Beachtet, dass der Pi keinen Ein-/Ausschalter besitzt und sofort startet, sobald er am Strom hängt.
Falls ihr mal in die Verlegenheit kommt und User(Benutzer)name und Passwort benötigt, auch RetroPie verwendet den gleichen Standard, wie Raspbian: Username = pi; Passwort = raspberry.
Basis für meine Erklärungen ist das RetroPie-Image Version 1.10!
Beim Image 1.8.1 gab es übrigens Probleme:
Der Start einiger Emulatoren (z. B. ScummVM, uea4all, Duke Nukem und andere) verursacht einen Fehler ‚libvorbisfile.so.3: invalid ELF header‚! Dadurch lassen sich diese Emulatoren nicht, ohne weiters Eingreifen (s. u.), mit 1.8.1 verwenden!!
Nach einer kurzen Bootzeit erscheint der folgende Ladebildschirm:
Wenige Sekunden später werdet ihr beim ersten Start aufgefordert Tasten für das Menü festzulegen. Da ich noch keinen Joystick eingerichtet habe, benutzte ich erstmal die Tastatur, später kann aber auch ein Joystick verwendet werden.
Danach erscheint endlich die Oberfläche, die eingangs bereits erwähnte EmulationStation. Diese verlassen wir aber direkt wieder. Drückt dazu entweder die Taste F4 (damit wird die Emulationstation sofort verlassen) oder eure Menü-Taste (bei mir [ESC]) und wählt dann EXIT aus dem Menü.
Beachtet, dass aktuell das englische Tastaturlayout verwendet wird und dass es sich um ein Linux-System handelt, Groß- & Kleinschreibung sind hier sehr wichtig!!!
Nun sollten mit sudo raspi-config (beim engl. Tastaturlayout erreicht ihr das – über ß) einige Einstellungen vorgenommen werden.
Beginnen wir mit dem Umstellen der Tastatur auf das deutsche Layout. Folgt dazu einfach den neun Schritten aus den Bildern (zum Vergrößern anklicken):
Nach der Tastatur-Umstellung wählt 8 Advanced Options an und ändert dann über A3 Memory Split die Speicheraufteilung (128MB für Model A, 256MB bei Model B).
Falls eure SD größer als 4GB ist, sollte ihr noch über 1 Expand Filesystem für mehr Platz auf der SD-Karte sorgen. Das RetroPie-Image stammt nämlich von einer 4GB-Karte und sonst stehen euch auch nur diese 4GB zur Verfügung!
Verlasst das Programm über <Finish> und bestätigt die Frage nach dem Reboot mit <Yes>.
Alternativ könnt ihr auch auf der Eingabeaufforderung mit sudo reboot den RaspberryPi neustarten. Jetzt fährt der Pi erneut hoch, verlasst die EmulationStation-Oberfläche aber direkt wieder wie eben, sobald sie verfügbar ist.
Anschließend holen wir mit den Anweisungen sudo apt-get update && sudo apt-get upgrade -y erstmal ein paar Updates.
Dies wird, abhängig vom ‚Alter‘ eurer Installation, einige Zeit (plant mind. 15 Min. ein) dauern…
XBox-Controller
Der folgende Abschnitt ist nur dann interessant, wenn ihr den XBox-360-Controller verwenden möchtet.
Seit Version 1.10.1 vom 31.05.2014 wird der XBox-Controller automatisch erkannt!
Vor Version 1.10.1
Die folgende (umständliche) Einrichtung ist übrigens mittlerweile nicht mehr nötig! Der XBox-360-Controller kann seit Anfang Dezember 2013 auch über das RetroPie-Script installiert und eingerichtet werden.
Vor Version 1.9.1 oder ohne das Update vom Dezember 2013
Erstmal den benötigten Treiber herunterladen: sudo apt-get install xboxdrv. Dann muss die Datei ‚rc.local‘ geändert werden. Öffnet die Datei mit sudo nano /etc/rc.local zur Bearbeitung. Geht mit den Cursortasten bis vor die Zeile exit 0 und tippt nun diese Zeile ein: xboxdrv –trigger-as-button –wid 0 –led 2 –deadzone 4000 –silent & Verwendet ihr den kabelgebundenen Controller, dann ersetzt –wid einfach mit –id. Seid ihr mit der Eingabe fertig, drückt <STRG>+X um den Editor zu verlassen. Es kommt die Abfrage, ob ihr die Änderungen speichern möchtet, nach Yes kommt noch der Dateiname, diesen einfach bestätigen.
Jetzt den Controller einschalten und mit sudo reboot booten. Die EmulationStation wieder verlassen. Nun das Verzeichnis wechseln cd ~/RetroPie/emulators/RetroArch/tools (Achtung: Bei (ab??) 1.9.1 müsst ihr ins Verzeichnis cd ~/RetroPie/emulators/RetroArch/installdir/bin, das eben genannte Verzeichnis tools gibt es dort nicht!) und den Controller über ./retroarch-joyconfig -o ~/RetroPie/configs/all/retroarch.cfg -p 1 -j 0 einrichten. Einfach den Anweisungen folgen.
Futter für die Emulatoren
Wer schon mal durch das Menü der EmulationStation geblättert hat, dem ist bestimmt aufgefallen, dass dort überhaupt kein C64 zu sehen ist. Das kommt daher, dass nur die Emulatoren angeboten werden, für die auch Dateien existieren.
Ich hoffe der Pi hängt noch in eurem Netzwerk. Öffnet nun euren Windows-Explorer und gebt \\raspberrypi in der Laufwerkszeile ein.
Hier seht ihr, was alles an Emulatoren zur Verfügung steht. Kopiert nun einfach die gewünschten Programme in die jeweiligen Ordner (z. B. Nebulus.d64 ins c64-Verzeichnis). Ihr könnt übrigens auch Unterordner anlegen, sonst wird es bei vielen Programmen in der EmulationStation später sehr unübersichtlich.
Wurde alles kopiert, dann booten wir zur Sicherheit mit sudo reboot ein letztes Mal. Damit endlich auch die Änderungen und Updates greifen, falls ihr eben nicht den XBox-Controller eingerichtet habt.
Wenn die EmulationStation wieder verfügbar ist blättert etwas nach rechts und ihr werdet den C64 entdecken.
Wählt euer Spiel aus und schon kann es losgehen…
Möchtet ihr den Joystick für das Menü verwenden oder einfach nur eure Tastaturbelegung ändern, dann verlasst die EmulationStation, gebt rm ~/.emulationstation/es_input.cfg ein und startet die Oberfläche mit emulationstation wieder. Schon könnt ihr die Tasten neu belegen. Ich habe so den XBox-Controller und die Tastatur eingebunden.
Den Joystick / Controller für RetroArch einrichten
Zur Sicherheit führt ihr jetzt noch die Input Configuration aus, um den (XBox 360)-Controller bzw. Joystick für RetroArch zu konfigurieren. Sonst kann es euch passieren, dass der Controller von den einzelnen Emulatoren nicht erkannt wird.
Geht also in der EmulationStation einfach zum entsprechenden Bildschirm.
Wählt dann Start aus und geht die Grundeinstellungen durch.
Das Aussehen und der Funktionsumfang der Input Configuration hat sich ab Version 1.10.1 geändert! Wählt ab dieser Version Start ES-Config für die folgenden Schritte aus.
Anschließend kommt die Abfrage, für welche Emulatoren die Einstellungen vorgenommen werden sollen. Um einem Fehler beim Speichern vorzubeugen, markiert dort nur RetroArch und geht mit NEXT weiter.
Anschließend könnt ihr die Buttons nach euren Wünschen zuweisen…
…und speichern. Bekommt ihr dabei einen Script error!, dann habt ihr eben wahrscheinlich auch einen der anderen Emulatoren markiert. Da diese nicht Teil des RetroPie-Images sind, versucht das Script auf nicht vorhandene Verzeichnisse zuzugreifen.
Wenn jetzt erstmal alles läuft, wäre es evtl. keine dumme Idee, das oben erwähnte Backup mit dem Win32 Disk Imager vorzunehmen.
Falls ihr euch fragt: „Warum?“
Fahrt den Pi bitte immer korrekt herunter, bevor ihr die Stromverbindung kappt! Sonst besteht die Gefahr, dass die Installation auf der SD-Karte, beschädigt und somit unbrauchbar wird. Dies könnt ihr entweder übers Menü der EmulationStation (Shutdown) machen oder ihr gebt den Befehl sudo shutdown -h now ein, falls ihr die Oberfläche beendet habt.
Wie bei jedem Emulator kann es natürlich zu Problemen kommen. So zeigt mein 55-Zöller z. B. ein perfektes Bild beim SNES-Emulator (hier mit F-Zero) an.
Bei meinem kleinen 22-Zoll-Acer-Bildschirm kommt es zu Anzeigefehlern.
Ich denke die Auflösung bzw. das Timing passt ihm nicht. Da ich den Pi aber am großen Bildschirm betreibe und dort keinerlei Probleme habe, untersuche ich das Problem erstmal nicht weiter.
Aber auch Spiele, die gar nicht erst starten oder abstürzen sind natürlich möglich.
Jetzt wollen wir noch das oben erwähnte Problem bei Version 1.8.1 beheben.
Solltet ihr den Fehler ‚libvorbisfile.so.3: invalid ELF header‚ erhalten, dann versucht die folgenden Schritte:
- Beendet zunächst die EmulationStation, falls diese noch läuft.
- Wechselt dann das Verzeichnis cd /usr/lib/arm-linux-gnueabihf
- löscht als nächstes die fehlerverursachende Datei ‚libvorbisfile.so.3‘ mit sudo rm libvorbisfile.so.3
- abschließend müssen wir die Datei neuerstellen, verwendet dazu den Link-Befehl ln -s libvorbisfile.so.3.3.4 libvorbisfile.so.3
Nach einem Start sollte die Fehlermeldung verschwunden sein und der gewünschte Emulator starten.
Mit diesen Infos sollte jeder den Einstieg schaffen. Selbstverständlich gibt es noch viel mehr zu erfahren, z. B. wie man RetroPie aktualisiert, was das Setup bietet oder wie weitere Emulatoren installiert werden (das Installationsscript bietet nämlich noch mehr Systeme u. a. den Atari 800 und Atari ST oder das N64).
Außerdem reicht es leider nicht immer die ROMs einfach im jeweiligen Ordner abzulegen. Kopiert ihr z. B. ADF-Dateien ins Amiga-Verzeichnis, bietet euch die EmulationStation den Amiga trotzdem nicht an. Aber dass alles geht weit über eine kurze Einführung hinaus.
Wer mehr Infos zu RetroPie sucht, findet diese unter: http://blog.petrockblock.com/retropie/.
Hallo,
bin eben auf diese Website gstoßen und habe 2 Fragen 🙂
– gehen auch MultiPlayer-Games mit 2 XBOX 360 Wireless-Controllern?!
– spielt es eine Rolle, ob es der originale Wireless Reciever/Dongle ist,
oder geht auch noname?!
LG,
Erik
zwei XBox 360 Wireless-Controller sind kein problem. Der Receiver kann ja bis zu vier Controller verwalten und die melden sich getrennt im System an.
Ich habe nur Erfahrungen mit dem original Receiver von MS, ob auch noname Geräte funktionieren kann ich nicht sagen.
Gruß,
Jörn
Brauch man bei dem RPI B+ noch ein usb hub oder reichen die 4 ports am b+
Das hängt davon ab, was und wieviel du anschließen willst.
Mir haben bisher auch die zwei Ports des ‘normalen’ B gereicht.
Ein aktiver Hub könnte aber notwendig werden, sobald sehr viel Strom über USB benötigt wird (z. B. bei externen Festplatten).
Supie für die fixe Antwort
ist es möglich die mouse vom Xbox 360 Controller zum laufen zu kriegen
Die Maus vom XBox 360 Controller???
Ich habe leider keine Ahnung, was du meinst.
Hei habe ein Problem mit dem Xbox Controller und dem NES emulator die funktionieren nicht mit einander.
Kann man das ändern?
Ich habe das eben noch mal getestet und es läuft bei mir problemlos. Super Mario Bros. 2 auf dem NES-Emulator lässt sich mit dem XBox-Controller spielen.
Hast du den Controller über die Input Configuration eingerichtet?
Hei
Erstmal super Anleitung.
Nun ich will eigentlich nur NES Spiele spielen aber der Xbox conroller funktioniert anscheinen in diesem Emulator nicht, kann das sein?
Danke fürs Lob. Eigentlich funktioniert der XBox-Controller mit dem NES-Emulator (s. zweiter Post)
Hallo, tolle Anleitung. Ich habe aber noch eine wahrscheinlich ganz banale Frage. Da ich aber absolut blutiger Anfänger bin, was den Raspberry Pi angeht: Ich schaffe es nicht, den Pi sauber runterzufahren, wenn keine Tastatur angeschlossen ist. Ich will eigentlich nur ein Gamepad anschließen und bis zur Spieleauswahl klappt auch alles. Wenn ich dann aber eine runde spiele und wieder ausschalten möchte, bleibt mir nur, den Stecker zu ziehen. Wie kann ich denn den Controller so belegen, dass sich mit einem Knopfdruck das Menu zum shutdown öffnet?
Falls es wichtig ist: Ich benutze ein USB Gamepad im Playstation 1 Design (also Steuerkreuz und insg. 10 Buttons).
Danke für Tipps!
Hallo,
schön dass dir der Text gefällt, hier schon mal eine kurze Info, sobald ich heute Feierabend habe, gibt es mehr Details.
Um einen Emulator mit dem Pad zu beenden, musst du diese zwei Zeilen zur Datei ‘retroarch.cfg’ hinzufügen:
input_enable_hotkey_btn = 7
input_exit_emulator_btn = 6
Das Beispiel gilt für meinen wireless XBox-Controller, dann kann der Emulator durch gleichzeitiges Drücken von [Select] und [Start] beendet werden und man landet wieder in der Emulationstation. Dort kannst du ja bestimmt schon das Menü über das Joypad öffnen und dann ‘Shutdown’ zum Herunterfahren auswählen.
Für den Playstation-Controller musst du dir natürlich noch die Nummern der gewünschten Knöpfe raussuchen, die Nr. müsstest du eigentlich bei Input Config sehen.
So, ich habe das eben noch mal durchgespielt. Eigentlich ist schon alles gesagt, aber noch mal der Reihe nach:
nano ~/RetroPie/configs/all/retroarch.cfg
input_enable_hotkey_btn = "7"
undinput_exit_emulator_btn = "6"
hinzufügen (natürlich mit deinen Nr.!)Ab jetzt kannst du die Emulatoren durch Drücken der von dir ausgewählten Tasten verlassen.
Ich werde demnächst einen weiteren Beitrag zu RetroPie veröffentlichen, in dem ich solche Kleinigkeiten nochmal ausführlich beschreibe.
Hi,
ich habe leider ein weiteres Problem, bei dem ich hoffe, dass du mir vielleicht weiterhelfen kannst.
Ich habe es jetzt hinbekommen, dass der XBOX Controller im Menü funktioniert und auch in den Sega Master System Spielen. In den Emulatoren für NES, SNES, N64 und GBC aber funktioniet nur die Tastatur aber nicht der XBOX Controller.
Kannst du mir sagen, wie ich das jetzt hinbekomme?
Besten Dank
Gruß
Philipp
Hallo,
ich habe den Text eben ergänzt, versuche mal die ‘neuen’ Schritte.
Hallöchen,
ich verzweifle so langsam. Ich versuche seit heute morgen den XBOX wireless Controller zu verbinden. Jedes Mal, wenn ich xboxdrv installiert habe, stürzt der Raspberry allerdings ab, sobald er den Receiver geladen hat.
Ich habe den Receiver für den Controller an einem USB Hub mit eigenem Stromkabel hängen. Ich habe schon folgendes versucht:
– Installation gemäß dieser Anleitung von Jörn (mehrfach bereits -.-)
– xboxdrv auf einer “frischen” Raspian wheezy Installtion
Es führt immer wieder dazu, dass das System eingefroren wird, sobald der Receiver geladen wird, unabhängig davon, ob der Controller eingeschalten ist oder nicht.
Es kommt zu folgender
[67.397535] —- [ cut here ] —-
[67.408416] kernel BUG at drivers/usb/host/dwc_otg/dwc_otg_hcd.c:344!
[67.417975] Internal error: Oops – Bug: 0 [#1] PREEMT ARM
Kann mir jemand helfen?
Hallo Philipp,
bei deinen Angaben vermisse ich den Hinweis, ob es auch Probleme gibt, wenn der Receiver direkt am Pi angeschlossen ist.
Am besten mal nur mit Tastatur und Receiver, also komplett ohne Hub, booten.
Oh man, ich danke dir. Da wäre ich nicht drauf gekommen, dass es daran liegt.
Jetzt funktioniert der Controller schon mal in der Oberfläche, jetzt muss ich ihn nur noch in den Spielen zum laufen bekommen 🙂
Das ist doch schon mal ein Anfang.
Aktive USB-Hubs machen am Pi teilweise Probleme, es gibt dafür sogar eine eigene Kompatibilitäts-Seite.
Hallo,
gerade das Amiga Thema liegt mir echt am Herzen, ich finde aber leider keine adäquate Erklärung im Netz wie man uae4all zum laufen bekommt. Hat da jemand irgendwelche Quellen? Quäle mich jetzt schon 2 Wochen damit rum. Danke für Antworten jeglicher Art.
Hi,
ein weiterführender Beitrag ist in Arbeit, dort geht es auch um den Amiga.
Wenn ich es schaffe geht der dieses Wochende, sonst am darauffolgenden, online.
Ein weiterer Beitrag ‘RPi: Setupscript & ES-scraper‘ ist nun online, aber um das ‘Amiga-Problem’ kümmere ich mich in einem separaten Beitrag. Da sind einfach zu viele Punkte zu beachten.
02.02.2014
Der Amiga-Beitrag ‘RPi: Amiga & ROMs übers Netzwerk‘ ist nun endgültig online.