Homebrew

Software von Benutzern für Hardware, die diesen üblicherweise nicht ausführt
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 26. November 2008 um 16:51 Uhr durch Xeph (Diskussion | Beiträge) (Änderung 53454344 von Greatfreak wurde rückgängig gemacht. Ehm, bitte als gerader Satz). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Der Begriff Homebrew (engl. für selbst gebrautes Bier) bezeichnet meist unautorisierte, selbst erstellte Programme für Konsolen sowie Handheld-Systeme.

Homebrew auf einer PlayStation Portable: Ein Hello-World-Programm.

„Unautorisiert“ bezieht sich hier darauf, dass üblicherweise nur vom Hersteller der Konsolen lizenzierte Programmierer die Erlaubnis haben, auf diesen Systemen tätig zu werden – immerhin handelt es sich um einen rein kommerziellen Markt.

Hersteller sind deshalb mittlerweile darauf bedacht, die Software und Firmware der Geräte darauf zu optimieren, dass Homebrew-Anwendungen auf der Konsole nicht ausgeführt werden können. Diese Sicherheitslücken können auch benutzt werden, um illegal kopierte Spiele zu starten.

Problematik

Konsolen und Handhelds sind üblicherweise geschlossene und auf Kommerz ausgerichtete Systeme. Häufig wird dabei die Hardware subventioniert verkauft, der eigentliche Gewinn entsteht durch Softwarelizenzen. Homebrew kann somit potentiell Umsatz- und Ertragsmindernd sein, denn damit kann eine Klientel bedient werden, die weniger oder gar keine offiziellen Produkte kauft.

Es gibt verschiedene Ansichten darüber, ob der Systemlieferant lediglich der Anbieter der Hardware ist, samt der vom Kunden freiwillig bei ihm gekauften Software, oder ob der Hersteller berechtigt sei, seine Kunden dieses Gerätes auf die gesamte künftige Nutzungsdauer nur auf die von ihm und seinen Lizenzpartnern erstellte Software zu verweisen, die Kunden damit auf den Systemanbieter als Alleinlieferant jeglicher Software festzulegen. Dieses könnte einen enteignungsgleichen Eingriff in die Rechte des Endkunden darstellen bzw. den Kunden in seiner Entscheidungsfreiheit unzulässig einschränken. Das Recht des Endkunden auf freie Nutzung (im Rahmen der Gesetze) steht dem Gewinninteresse des Systemanbieters aus dem weitergehenden Verkauf von Software gegenüber.

Die Frage ist, ob es ein erlaubtes Mittel des Herstellers ist, die Benutzung derartig einzuschränken zu versuchen, und den potentiellen Nutzwert des Geräts, das ja eigentlich einen vollwertigen Computer darstellen würde, wenn er nicht um eine Vielzahl seiner Nutzungsmöglichkeiten, vor allem die freie Programmierbarkeit, kastriert worden wäre.

Nicht jeder besitzt das notwendige Hintergrundwissen, um unautorisierte Software auf seiner Konsole oder auf seinem Handheld benutzen zu können, dennoch ist dieses Wissen meist schnell erworben. Flash-Karten und Mod-Chips sind häufig leicht über das Internet erwerbbar. Neben dem Aspekt der Gratis-Software spielt auch die Piraterie von Konsolenspielen eine wichtige Rolle. Ist es erst geschafft, seinen eigenen Code zum Laufen zu bringen, ist man technisch nicht mehr weit davon entfernt, illegal kopierte Spiele benutzen zu können.

Homebrew selbst versteht sich als legal und Anti-Piraterie-treu. Die Rechtslage in Deutschland verbietet allerdings die Umgehung technischer Schutzmaßnahmen (Firmware-Patch) und das Verändern (patchen) geschützter Software, so dass sich die Homebrew-Szene häufig in einer rechtlichen Grauzone bewegt. Das Patchen von Firmware ist somit nur gestattet, wenn die Patchversion von der lizenzierten Firma herausgegeben wurde. Patches sind z. B. auf Webseiten von Software-Unternehmen zu finden.

Im Einzelfall ist es zu prüfen, ob die Gesetzeslage mit den Grundgesetzlich verbrieften Freiheits- und Eigentumsrechten der Nutzer vereinbar sind, es käme auch eine Verletzung der Freiheitsrechte von Kunst sowie von Wissenschaft in Betracht. Das Thema ist in Bewegung und nicht abschließend geklärt.

Homebrew auf verschiedenen Systemen

Spielekonsolen

Xbox

Die Xbox ermöglicht das Ausführen von eigener Software nach Einbau eines MOD-Chips, welcher mit einem alternativen BIOS geflasht wird. Alternativ zu einem MOD-Chip, gibt es auch Softwaremodifikationen. Für die XBox erschienen Emulatoren, Media-Player und weitere Programme. Neben dem Xbox Development Kit erschien später mit OpenXDK ein quelloffenes Entwicklungskit. Da das OpenXDK erst nach Erscheinen der Xbox 360 einen angemessenen Funktionsgrad erreichte, wurden nur wenige Projekte mit diesem programmiert. Da die Homebrew-Entwickler keine Lizenz zum Nutzen des Microsoft XDK besaßen, bedeutete dies, dass die entstandenen Binärdateien illegal waren. Dennoch erschienen unzählige Programme für die Xbox.

Sega Dreamcast

Der Sega Dreamcast erlaubt das Abspielen von CD-Rs auch ohne MOD-Chip oder sonstigen Umbauten dank der Kompatibilität der Hardware zum MIL-CD Format. Aufgrund dieser Eigenheit (und der leistungsfähigen 128-bit-Hardware) hat sich eine vitale Szene von Enthusiasten zusammengefunden, die bislang knapp an die eintausend Programme entwickelt und kostenlos ins Netz gestellt hat.

Diese Programme werden meist als einfache Dateien („Plain Files“, werden beispielsweise mittels des Windows-basierten BootDreams auf CD-R gebrannt) oder als vollständige CDs im Disk Juggler CDI Format angeboten. Ein weiteres gebräuchliches Format sind sogenannte SBIs (SBI für „Selfboot Inducer“), das es erlaubt mehrere Programme auf eine CD zu brennen.

Die Bandbreite veröffentlichter Software reicht von Portierungen zahlloser Emulatoren von frühen 8-bit-Computern zu 16-Bit- und 32-Bit-Konsolen, über Multimedia-Applikationen, bis hin zu aufwändigen Originalentwicklungen wie beispielsweise Alice Dreams oder Drill.

Mehr als 99% dieser Veröffentlichungen sind völlig legal mittels der freien Software-Bibliothek KallistiOS entwickelt worden. Im Gegensatz zur Xbox wurden offizielle Entwicklerkits nur in einer Handvoll der frühesten Veröffentlichungen verwendet, beispielsweise in QuakeDC aus dem Jahre 2000, das auf WinCE basiert. Die Verwendung von KallistiOS und der Austausch des benötigten Bootsektors (IP.BIN) durch eine gleichwertige und legale Ersatzdatei (geschrieben von LiENUS und veröffentlicht am 15. Januar 2002) ermöglichte auch kommerzielle Veröffentlichungen von Spielen wie Feet of Fury (2003), Inhabitants, Maquipai (beide 2005), Cool Herders (2006) oder Last Hope (2007) für Dreamcast über die unabhängigen Labels GOAT Store Publishing und redspotgames. Die Veröffentlichung von Cool Herders ermöglichte es den Entwicklern Harmless Lion Studios eine Portierung des Spiels auf Nintendo DS über Alten8 zu vertreiben. Für die kommenden Jahre sind mehr als ein Dutzend weiterer Titel verschiedener kleiner Entwicklerteams angekündigt, beispielsweise Donk: Samurai Duck von CAGames, Rush Rush Rally Racing oder Age of the Beast (von Senile Team).

Nintendo Wii

Beim Nintendo Wii werden zwar keine offiziellen Entwicklerkits für Homebrew angeboten, dafür möchte Nintendo jedoch mit der sogenannten Virtual Console (über die man sich Klassiker aus alten Tagen für fast jede Konsole relativ günstig herunterladen kann) Homebrew-Möglichkeiten "unattraktiver" machen. Außerdem setzt Nintendo auch auf den neuen WiiWare-Kanal, für den auch kleinere Entwicklerstudios entwickeln können, ohne ein gewaltiges Startkapital zu benötigen. Auch das Abspielen von MP3s oder Videos ist via Foto-Kanal auf der Wii möglich - auf neueren Konsolen mit Version 1.1 des Kanals allerdings nur noch im Format AAC. Trotz dieser Möglichkeiten möchten sowohl Homebrew-Entwickler als auch Softwarepiraten nicht auf das Entwickeln von eigenen Homebrew-Applikationen bzw. dem Abspielen von GameCube-ISOs, etc., verzichten. Vor kurzem war es nur mit Hilfe eines Modchips und einer speziellen Firmware, WiiKey genannt, möglich, Homebrew auf der Wii abzuspielen. Doch mittlerweile ist es dank eines Savegame-Hacks in Zelda: Twilight Princess das erste mal möglich, unsignierten Code auf der Wii ohne die Hilfe eines Modchips laufen zu lassen. Diese Möglichkeit wurde zwar durch das darauffolgende Firmwareupdate 3.3 erschwert, aber nicht gänzlich verhindert.

Handhelds

Gameboy

Firmen wie Bung entwickelten Hardware-Flasher mit denen es möglich war ROMS abzusichern beziehungsweise durch Flash-Karten direkt auf dem Gameboy abzuspielen.

Playstation Portable

Bei der Playstation Portable (PSP) war es auf der ursprünglichen, Japan-exklusiven Firmware (1.00) ohne Probleme möglich, eigenen Code auszuführen. In den darauffolgenden Firmwares versuchte Sony, alle Bugs und Exploits zu beseitigen, mit denen es möglich war, inoffizielle Programme zu starten. Die Homebrew-Szene reagierte darauf, indem sie immer wieder neue Möglichkeiten suchte (und fand). Schließlich wurden sogar auf der Basis der offiziellen Firmwares sogenannte Custom Firmwares entwickelt; Mit ihnen hat man alle Funktionen der aktuellsten offiziellen Firmwares, ohne auf die Verwendung von Homebrew verzichten zu müssen.

Die Homebrew-Szene der PSP ist groß; es gibt beispielsweise Emulatoren für den Sega Mega Drive (Pico Drive) oder den Game Boy Advance (gpSP), und da auch Programme wie Bochs, DOSBox und ScummVM auf die PSP portiert wurden, ist es eingeschränkt auch möglich, PC-Programme auf der PSP zu verwenden. Es wurden auch Interpreter einzelner Programmiersprachen (z.B. Lua, Python) für die PSP entwickelt, um anderen Hobbyprogrammierern das Programmieren in ihrer einfacheren Sprache zu ermöglichen. Zudem gibt es viele nützliche Programme, wie das Cheat-Programm CWCheat oder einige Textverarbeitungsprogramme.

GP32 und GP2x

Einen gänzlich anderen Weg beschritt die koreanische Firma Gamepark mit dem GP32. Dieser Handheld war erst als Konkurrenz gegen Game Boy (u.a.) gedacht, wurde dann aber relativ schnell quell-offen, womit das Abspielen von Homebrew sehr leicht möglich war. Der Nachfolger – der GP2X – ist hingegen seit seiner Veröffentlichung im November 2005 quelloffen. Seither erschienen unzählige kleinere Spiele, Emulatoren und andere Programme für das GP2X.

Nintendo DS

Homebrew für den Nintendo DS sind mittels einer herkömmlichen NDS- (Slot 1) oder GBA-Flashkarte (Slot 2) zu starten. Sie werden über diverse Bibliotheken in den Programmiersprachen C/C++ und Lua geschrieben. Zum Ausführen von eigenem Programmcode muss der interne Schutzmechanismus des DS ausgeschaltet werden. Dies geschieht über modifizierte Firmware (FlashMe) oder eine Variation des PassMe. Bei der Slot-1-Variante ist diese Funktion schon integriert.

Offizielle Homebrew-Möglichkeiten

In der Vergangenheit bündelten oft Softwarepiraten und Homebrew-Hacker ihre Kräfte, um Zugang zu den Systemen zu erhalten. In der aktuellen 7. Konsolengeneration deutet sich ein Umbruch in der Politik der Hersteller an.[1] Um die Gruppe der Angreifer zahlenmäßig zu reduzieren, bieten die Hersteller den Hackern Gelegenheit, eigene Software zum Laufen zu bringen.

Sony Playstation 3

Am weitesten geht hier Sony mit seiner Playstation 3, wo die Maschine in einem Linux Modus gestartet werden kann, bei dem allerdings die Grafikbeschleunigung abgeschaltet ist, um die Entwicklung von Homebrew Spielen als Konkurrenz zu eigenen Titeln unattraktiv zu machen.

Microsoft Xbox 360

Microsoft bietet für seine Xbox 360 spezielle Entwicklerkits (XNA Game Studio) und Lizenzen (Xbox Live Arcade) an, mit denen eigene Spiele entwickelt und online vermarktet werden können. Hier erhält der Entwickler gegen Bezahlung vollen Zugriff auf die Leistung der Maschine mittels .NET Sprachen.

Quellen

  1. Felix Domke: Console Hacking 2006 – Xbox 360, Playstation 3, Wii, 23. Chaos Communication Congress, 28. Dezember 2006. Videomitschnitt.