News

Projekt fürs Wochenende: Retro-Games aufs Apple TV bringen


Werbung



Durch die Einführung des App Stores auf das Apple TV ist Apple einen wichtigen Schritt gegangen: Endlich können Apps, vornehmlich Spiele, die vorher “nur” auf iPad und iPhone gezockt werden konnten, den Weg auf den großen Bildschirm schaffen. In einem kleinen Wochenend-Projekt zeigen wir euch, wie man den beliebten Arcade-Emulator Mame auf das Apple TV bringen und dann zahlreiche Retroklassiker spielen kann.

Mit iOS 9 und Xcode 7 ermöglicht Apple es, auch ohne bezahlten Entwickler-Account Apps per Xcode auf das eigene Gerät zu installieren. Das Verfahren nennt sich “Sideload”. Bisher war dazu ein kostenpflichtiges Zertifikat nötig. Dieser Umstand macht es nun einfach, Opensource-Apps aus Quellen wie Github auf die eigenen Geräte zu bringen, ohne sie bei Apple zur Prüfung einreichen zu müssen.

Ein Vertrieb über den Apple App Store oder auch an Freunde und Bekannte ist allerdings nicht möglich. Mit dem hier beschriebenen Vorgehen kann man lediglich Geräte, auf die man physischen Zugriff hat mit Apps bestücken. Für einen offiziellen Vertrieb ist weiterhin ein kostenpflichtiger Account nötig.

Um aber in den vollen Retro-Genuss auf dem eigenen Apple TV (4. Generation) zu kommen, ist die hier beschriebene Methode völlig legitim und ausreichend.

Unser kleines Projekt benötigt zunächst ein paar Voraussetzungen:

  1. Einen kostenlosen Developer-Account bei Apple. Unter der URL http://developer.apple.com kann man sich dafür registrieren.
  2. Die aktuelle Version von Xcode. Diese kann entweder im App Store oder im Developer-Portal heruntergeladen werden. 
    ‎Verbindung zum App Store wird hergestellt
    ‎Verbindung zum App Store wird hergestellt
    Entwickler: Unbekannt
    Preis: Kostenlos
  3. Die aktuelle Version des Apple TV (32GB oder 64GB sind bei egal)
  4. Ein USB-C auf USB-A Kabel (zum Beispiel dieses hier)
  5. Den Sourcecode von iMame4tvOS von Github
  6. Legale ROMS für den Emulator (also nur ROMS, die entweder freigegeben wurden, oder von denen man im Besitz der originalen Boards oder Cartridges ist!)

Es sind keine Programmierkenntnisse für diese Schritte nötig, dennoch kann es nicht schaden, sich ein wenig mit Xcode und der App-Entwicklung zu beschäftigen. Hat man alle Voraussetzungen zusammen, kann es auch schon losgehen. Wenn alles mit diesem Tutorial klappt, sollte am Ende eine lauffähige Version von iMame4tvOS auf dem Apple TV Startbildschirm vorhanden sein.

In vier Schritten zum Ziel:

1. Projektdaten von Github in Xcode importieren

Der Weg zu einem funktionierenden Mame4tvOS führt über Github. Dort liegt ein funktionsfähiges Projekt, das nur kompiliert und auf das Apple TV überspielt werden muss. Github ist eine Plattform für Opensource-Projekte und man kann die jeweiligen Dateien bequem per Xcode herunterladen (im Fachjargon nennt sich das “auschecken”!)

Das Auschecken funktioniert in Xcode über den Menüpunkt “Source Control->Check Out” dort muss dann folgender Link eingetragen werden: https://github.com/kevsmithpublic/MameAppleTV.git

Um das Projekt im dritten Schritt dieser Anleitung überhaupt auf das Apple TV überspielen zu können, muss zwingend eine eindeutige ID vergeben werden. Jede App ID kann nur einmal existieren. Apple nimmt dafür die umgekehrte Domain-Schreibweise. Daher könnte die eindeutige ID zum Beispiel so aussehen: de.namedesusers.iMame4tvOS (“namedesusers” natürlich durch den eigenen Namen ersetzen.)

Bildschirmfoto 2015-11-09 um 17.47.52
Den vorgegebenen Bundle-Namen durch einen eigenen ersetzen.

2. Gewünschte Roms in das Projekt integrieren

Ein dynamisches Nachladen der Spiele Roms von einem eigenen Server oder aus dem Internet wird von der App nicht unterstützt. Daher müssen die gewünschten Dateien vor dem Kompilieren und Übertragen ans Apple TV in das Projekt eingebunden werden. Die dort bereits in roter Schriftfarbe angezeigten Roms müssen gelöscht werden, weil der Kompilevorgang sonst abgebrochen wird.

Bildschirmfoto 2015-11-09 um 17.47.07
Im Bundle sind bereits ROMs vorgesehen. Da diese aus rechtlichen Gründen nicht mitgeliefert werden, müssen sie durch eigene ersetzt werden.

3. Apple TV verbinden und Projekt kompilieren

Spätestens nach diesen Schritten sollte das Apple TV mit dem USB-C auf USB-A-Kabel mit dem Mac verbunden werden, außerdem benötigt es Strom. Weitere Verbindungen wie HDMI und Netzwerk sind nicht nötig. Nach einer kurzen Zeit wird es oben in der Leiste von Xcode als Ziel angezeigt. Jetzt kann das Projekt durch Klick auf den Play-Button übersetzt (kompiliert) werden. Dabei wird es auf das Gerät übertragen.

Bildschirmfoto 2015-11-10 um 17.55.34
Wenn das Apple TV oben angezeigt wird, kann es los gehen.

4. Test am TV-Gerät

Wenn der Kompilevorgang die App auf das Apple TV übertragen hat, kann dieses vom USB-Port getrennt und wieder am Fernseher angeschlossen werden. Auf dem Homescreen sollte nun ein Icon des Name-Emulators erscheinen. Wenn das der Fall ist, hat die Übertragung geklappt und man kann die Spiele, die man vorher ins Projekt geladen hat, am großen Fernseher spielen.

IMG_9650
Der Emulator bekommt sein eigenes Icon auf dem Homescreen.

Das Ergebnis unserer Bemühungen kann man in diesem Video bewundern:

Sie sehen gerade einen Platzhalterinhalt von Youtube. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.

Mehr Informationen

5. Ein bisschen Hintergrund-Information zu Mame

Wenn man von Mame spricht fällt immer wieder der Begriff “Roms”. Damit sind die auf den Spielautomaten-Platinen enthaltenen Eproms gemeint, die den – in der Regel – copyright geschützten Spiele-Code enthalten. Ist man im Besitz einer dieser Spiele-Platinen, kann man deren Roms auslesen. Modernere Automaten enthielten auch CDs oder Festplatten mit den Spiele-Daten.

Diese Platine enthält das Spiel Mr. Do! (Baujahr 1982)
Diese Platine enthält das Spiel Mr. Do! (Baujahr 1982) Oben Links und unten in der Mitte sind die begehrten Roms.

Das Projekt Mame wurde vor vielen Jahren gestartet, um alte Spielautomaten-Klassiker zu konservieren. Mit den Jahrzehnten werden die Spieleplatinen und damit die darauf enthaltenen Spiele nicht mehr funktionieren. Mame emuliert die alte Hardware und ermöglicht es so, dem Spiel weiter zu laufen. Der nützliche Nebeneffekt besteht darin, dass die meisten Spiele daher auch auf modernen Computern (und Smartphones) weitergespielt werden können. Mame ist für fast alle Betriebssysteme verfügbar.

Da das Copyright der meisten Spiele bisher nicht erloschen ist, ist eine Vervielfältigung der Rom-Dateien nicht gestattet. Insbesondere zur Verbreitung im Internet. Daher werden auch nur sehr wenige (freie) Roms auf der Webseite des Mame-Projekts angeboten. Offiziell müsste man also im Besitz einer der originalen Spiele-Platinen sein, um an eines der begehrten Roms zu kommen. Bei ebay und anderen Verkaufsplattformen kann man diesbezüglich fündig werden. Wer die alten Spiele im Browser spielen will, kann dies legal auf der Arcade-Webseite des Internet-Archivs tun.

Natürlich finden sich in den Weiten des Internets zahlreiche Webseiten, die (inoffiziell) Rom-Dateien anbieten. Wie die rechtliche Lage bei einem Download aus einer offensichtlich illegalen Quelle ist, vermag der Autor dieser Zeilen nicht zu beurteilen. In der Tat wurde – soweit unsere Recherchen es ergaben – bisher niemand für die private Nutzung der alten Spiele rechtlich belangt. Dennoch sollte man sich darüber im klaren sein, dass man das Copyright verletzt, wenn man diese Spiele aus dem Netz herunterlädt und nicht im Besitz der Originalversionen ist.

Viel Spaß bei der Umsetzung dieses kleinen Projektes fürs Wochenende.


Werbung



Tags: Apple TV 4, Xcode, Games, Developer, Retro, DIY

Ähnliche Artikel


Werbung



Einkaufstipps
Beliebte Artikel