GameBoy Emulator auf iOS (Stand 12/2019)

Game Boy, SNES und Co. – wie so viele technikaffine Menschen schwärme ich bis heute von Pokémon, Mario, Zelda und Co.
Leider gibt es in Apples Appstore zwar über 250.000 mobile Games, doch keinen einzigen Emulator für Game Boy (Color)-Spiele.
Also habe ich mich selbst auf die Suche gemacht und möchte euch über den aktuellen Stand zum Thema „Gameboy auf einem iPhone/iOS Gerät“ informieren.

Während es auf einem Android Gerät reicht, sich einfach einen Emulator aus dem PlayStore zu installieren, ein paar seiner eigenen/Homebrew ROMs herüber zu kopieren und loszulegen, sieht die Sitation in Apples Ökosystem anders, nämlich deutlich restriktiver aus.

Apple erlaubt es Entwicklern nicht, Emulatoren im AppStore zu veröffentlichen. Dies gilt auch für andere Umgebungen, die fremden Code ausführen könnten.
Zwar versuchten hier und dort bereits Entwickler, Emulatoren in anderen Apps versteckt in den AppStore zu schmuggeln – diese Apps wurden aber innerhalb kürzester Zeit von Apple wieder entfernt.

Es gibt aber auch Wege am AppStore vorbei. Ich zeige euch zwei sichere Möglichkeiten in diesem Blogpost, so dass niemand sich mit windigen Entwicker-Zertifikaten oder einem Jailbreak herumärgern muss. Diese beiden Möglichkeiten sind:

  • WebApps (PWA)
  • Selbstsignierte Apps

PWA (Progressive Web Apps)

Erinnern wir uns an das Jahr 2006. Damals, unter iPhoneOS 1 – bevor es überhaupt den AppStore gab – war es die „Sweet solution„: WebApps
HTML, CSS und JavaScript sollten damals die Lösung sein, um dieses junge Betriebssystem mit Funktionen zu erweitern.

Und auch heute ist es ein Weg vorbei an Apples Zugangskontrolle.
Safari hat seit damals eine Funktion eingebaut, um Webseiten als Pseudo-Apps zum Homescreen hinzuzufügen und diese im Vollbild laufen zu lassen.

GamePlayColor

Webseite: https://gameplaycolor.com/
Unterstützt: GameBoy & GameBoy Color

Vorteile

  • Open Source (GitHub)
  • Mehrere Abspiel-Geschwindigkeiten
  • Verschiedene GameBoy Skins

Nachteile

  • Hoher Stromverbrauch (bedingt durch seine Bauweise als PWA)
  • Kein Export von Savegames
  • Kein Feedback/Vibration beim drücken der Knöpfe (PWA bedingt)
  • Benötigt Google Konto (Google Drive)

Hinweis: iOS 13 hat einige Funktionen des Browsers überarbeitet, welche u.a. die Emulator nutzen. Dieses Projekt wird aktuell von ein paar Entwicklern aufgefrischt und ist noch wieder ganz einsatzbereit.
Es gibt aber eine funktionierende Version unter folgendem Link:
https://brandosha.github.io/gameplay/index.html

Eclipse

Webseite: http://eclipseemu.me/
Unterstützt: GameBoy, GameBoy Color, GameBoy Advance, NES, SNES*

Vorteile

  • Unterstützt viele Plattformen
  • Verschiedene Controller Skins
  • Mobil und am Desktop nutzbar
  • Konfigurierbare Tastaturbelegung (z.B. iCade Bluetooth Controller)
  • Eingebauter Homebrew Repos

Nachteile

  • Hoher Stromverbrauch (bedingt durch seine Bauweise als PWA): Je jünger die Plattform ist, desto mehr Rechenpower wird benötigt
  • Closed Source, kann nicht selbst gehostet werden
  • Kein Feedback/Vibration beim Knöpfe drücken (PWA bedingt)
  • (Aktuell) Savegames/Settings können am iPhone nicht exportiert werden (offener Issue)
  • (Aktuell) Start/Select Knöpfe sind an aktuellen iPhones schwer zu treffen (offener Issue)

Hinweis: In meinem Test konnte ich mobil keine SNES Spiele starten, am Desktop funktionierte es.

Selbstsignierte Apps

Seit ein paar Wochen gibt es das Open Source Projekt AltStore von Riley Testut und Caroline Moore, welches die andere offizielle Möglichkeit, am AppStore vorbei Apps zu installieren, einfach möglich macht: Selbstsignierte Apps

Von Apple gibt es kostenlose Werkzeuge, um selbst Apps zu progammieren (einen Mac vorausgesetzt). Diese Apps könnt ihr dann auf euer iOS Gerät überspielen und nutzen. Leider gibt es hier eine Einschränkung: Diese Apps sind immer nur für 7 Tage gültig und können danach nicht mehr gestartet werden.

Hier setzt sich der AltStore dazwischen. Ihr installiert ein kleines Programm auf dem Windows PC/Mac und installiert mit Hilfe dieses Tool den AltStore auf eurem mobilen Gerät.
Aus dem Store heraus könnt ihr dann Delta installieren (siehe weiter unten).
Wenn die oben erwähnten 7 Tage nun dem Ende zu gehen, könnt ihr das Programm direkt von iOS aus dem AltStore (und Delta) frisch drüberbügeln. Vorraussetzung ist, dass der PC/Mac, auf dem ihr das Helferprogramm für den AltStore installiert habt, angeschaltet/im selben WLAN wie das mobile Gerät sein muss.

Das Projekt ist noch recht jung und es gibt aktuell nur eine App kostenlos zum Download. In Zukunft soll es aber noch viele andere geben – es sei denn, Apple legt den Machern größere Steine in den Weg.
In den letzten Wochen gab es von Apple bereits zwei Mal Anpassungen, welche den AltStore behindert haben. Diese Änderungen konnten vom Entwickler jedoch wieder ausgeglichen werden.
Man darf gespannt bleiben, wie lange das Projekt bestehen bleibt.

Delta

Webseite: https://deltaemulator.com/ bzw. https://altstore.io/
Unterstützt: GameBoy, GameBoy Color, GameBoy Advance, NES, SNES, Nintendo 64 (zukünftig auch Nintendo DS)

Vorteile

  • Unterstützt sehr viele Plattformen
  • Geringer Stromverbrauch
  • Verschiedene Skins
  • iOS Controller Support
  • MultiPlayer Support
  • Haptisches Feedback beim Knöpfe drücken
  • Cloud-Savegame Sync (Dropbox oder Google Drive)
  • Open Source

Nachteile

  • Größter Aufwand bei Installation und laufendem Betrieb
  • Ungewisse Zukunft

Schlusswort / Ausblick

Auch 13 Jahre nach Vorstellung des iPhones sind Emulation auf dem Apple Smartphone (oder Tablet) ein schwieriges Feld. Immerhin sind die Geräte mittlerweile so schnell, dass eine Emulation über den Browser durchaus eine Alternative zu richtigen Apps ist.

Leider ist der Stromverbrauch der WebApps recht hoch und so empfiehlt es sich immer eine (mobile) Stromquelle in der Nähe zu haben.

Vermutlich haben Delta und der AltStore „dank“ Apples Entwicklerteam ein stetiges Katz-und-Maus-Spiel vor sich. Wenn wir Glück haben, wird es aber nicht komplett nuklear eskalieren, zumindest so lange Apple einer potientieller Wettbewerbsklage keine Munition reichen möchte.

OwnCloud 6.x <-> iOS 7.x – CardDAV Sync einrichten

Ich bin ja mittlerweile ein Freund von ownCloud geworden, wenn es um die Synchronisation von Kalendern und Kontakten zwischen all meinen Geräten geht.
Jedoch gibt es seit iOS 7.x ein seltsames Problem bei der einrichtung von CardDAV-ownCloud-Servern. Dies wurde auch schon an mehreren Stellen im Netz diskutiert und auch auf GitHub und dem offiziellen ownCloud-Forum gibt es hierzu ein paar Einträge. Leider waren all diese bei mir ohne Erfolg.

Ich saß heute Nachmittag nun ca. 90 Minuten an diesem Problem und habe es endlich geschafft, die synchronisation wieder einzurichten. Und damit ich beim nächsten Mal nicht wieder ewig herumprobieren muss und da anderen Menschen eventuell das selbe Problem haben, schreibe ich also mal mein Schritt-für-Schritt-Vorgehen hier auf.

Mein Setup:

  • ownCloud 6.0.3 (stable) – frisch installiert
  • iPhone mit iOS 7.0.4

Einrichtung:
Ich gehe mal davon aus, dass ihr bereits einen User angelegt und eure Kontakte in eure ownCloud-Installation auf eurem Server eingepflegt habt.

  1. iPhone Einstellungen.app
  2. „Mail, Kontakte, Kalender“
  3. „Account hinzufügen“
  4. „Andere“
  5. „CardDAV-Account hinzufügen“
  6. Server: meinserver.de
    Benutzername: meinbenutzer
    Kennwort: meinkennwort
    Beschreibung: ownCloud
  7. Unter Server muss bisher nur die Domain eingetragen werden, nicht der komplette Pfad von ownCloud! (Auch kein HTTP / HTTPS!)
  8. „Weiter“
  9. Es kommt eine Fehlermeldung:
    „Verbindung über SSL unmöglich“
    Hier auf „Abbrechen“ klicken!
  10. Es kommt eine weitere Fehlermeldung
    „Kontakteaccount“ …
    Diese mit OK bestätigen.
  11. „Erweiterte Einstellungen“
  12. Haken bei „SSL verwenden“ setzen (grünes Icon)
  13. Port 443 eintragen
  14. Account-URL mit folgendem Inhalt ersetzen:
    https://meinserver.de/cloud/remote.php/carddav/principals/meinbenutzer/
  15. Hierbei nun natürlich meinserver.de/cloud & meinbenutzer durch euren Pfad / Benutzer aus ownCloud ersetzen!
  16. Oben links auf „< CardDAV" klicken
  17. Nun oben rechts auf „Weiter“
  18. Es kommt erneut die Fehlermeldung „Verbindung über SSL unmöglich“. Erneut auf Abbrechen klicken.
  19. Die folgende Fehlermeldung wie vorhin auch mit „OK“ bestätigen.
  20. Oben rechts nun auf „Sichern“
  21. Den unten aufgehenden Dialog mit „Sichern“ bestätigen.
  22. Fertig!
  23. Wenn ihr nun eure Telefon.app oder Kontakte.app öffnet, dann sollten sich nach kurzer Zeit eure Kontakte in euer Telefon herunterladen.

meinserver.de, meinbenutzer, meinkennwort sowie den Pfad bei Punkt 14 müsst ihr natürlich an euer Setup anpassen.

Ich hoffe ich konnte irgendjemanden hiermit behilflich sein, welcher ebenfalls Probleme bei der Einrichtung seines CardDAV-Accounts hatte.

[Mac] Delivery Status

Delivery Status

Aus der Kategorie »sollte jeder Mac-User installiert haben« (oder auf jeden Fall jeder, der öfters Sachen™ bestellt) heute nur der kleine Hinweis auf Delivery Status 6.0 von der Firma Junecloud.

Delivery Status ist ein gerade mal 7 Megabyte großes Widget für euer OS X-Dashboard, welches euch erlaubt von verschiedenen Webseiten oder Lieferdiensten die Paketlieferung zu überwachen. Unterstützt werden hierbei u. a. direkte Bestellungen von Apple.com oder Amazon ebenso wie auch folgende Logistikfirmen:

  • DHL (Including Express deliveries in most countries, US GlobalMail, UK Domestic Express, and Germany. DHL Express Germany, UK Domestic Express, and SmartMail are not currently supported)
  • DPD (Germany and UK)
  • FedEx (Including most countries, as well as FedEx SmartPost. FedEx UK is not currently supported)
  • GLS (Including Austria, Belgium, Denmark, France, Germany, Ireland, Luxembourg, Portugal, and Spain)
  • Hermes Logistik Gruppe (HLG) Germany only
  • UPS

Ihr benötigt hierbei einfach nur die Tracking-Nummer, die euch der Versender/Online-Shop mitgeteilt habt und schon habt ihr eure Lieferungen im Blick.

Das Widget ist im übrigen komplett kostenlos und wird regelmäßig aktualisiert. Falls ihr eure Lieferungen auch über euer iPhone/iPad verfolgen wollt, so gibt es von Junecloud auch eine eigenständige iOS App, welche ihr im AppStore für 4,49€ erwerben könnt. Hierbei könnt ihr übrigens über einen kostenlosen Junecloud-Account eure überwachten Lieferungen auch zwischen Mac und iOS App synchronisieren.