Portierung

Aus C64-Wiki
Wechseln zu: Navigation, Suche
Eine Animation aus der C64-Version von Bomb Jack.

Als Portierung (engl. port) wird die Übertragung von Software von einem System zu einem anderen bezeichnet. Gleichbedeutend werden auch die Begriffe Konvertierung oder Umsetzung für Software-Migrationen verwendet. Auch spricht man oft einfach von einer Version für eine bestimmte Plattform, wie beispielsweise C64-Version oder Amiga-Version.

Wenn sich beide Systeme stark unterscheiden, wie beispielsweise bei sehr verschiedenen Konstruktionen von Prozessoren, bzw. Grafik- oder Sound-Chips, dann ist eine komplette Neuprogrammierung erforderlich. Diesen Aufwand kann man mit einer Abstraktionsschicht (wie eine Engine oder SDL) umgehen oder minimalisieren.

Um beispielsweise eine möglichste exakte Portierung (im Rahmen der Hardwaremöglichkeiten hinsichtlich Grafik und Sound) zu erreichen, kann auch bei Anpassung an eine andere CPU auch schrittweise vorgegangen werden. Dabei wird im extremsten Fall manuell jede einzelne Maschinencode-Instruktion oder Gruppe von Instruktionen in ein Äquivalent der Zielarchitektur umcodiert. Bereits an den Übergängen oder dann später über das Ganze können auch noch weitere Optimierungen erfolgen. Hier bleibt die Umsetzung weitgehend 1:1 und lediglich Grafik und Sound muss heraus gelöst und unter Umständen massiv angepasst werden (z.B. Hardware-Sprites durch Bitmap-Shapes ersetzen oder umgekehrt). Als Beispiel sei hier etwa die Portierung des Arcade-Klassikers Pac Man von einer Z80-Plattform auf ein 6809-basierendes System CoCo 3 erwähnt.[1]

Es gibt auch verschiedene Programmierer-Tools zur automatischen Portierung von Programmteilen und Daten, wie beispielsweise Grafiken oder Computermusik.

Portierungen vom ZX Spectrum sind am C64 aufgrund der markanten HiRes-Grafiken meist auf den ersten Blick als solche erkennbar.


Konvertierungen für den C64[Bearbeiten]

Bekannte Spiele-Portierungen für den C64 sind zum Beispiel:


Screenshoot-Vergleich

Ein Screenshoot-Vergleich des Arcade-Spiels Dragon's Lair zeigt die Unterschiede von 4 verschiedenen Portierungen auf. Zu sehen sind (von links nach rechts) die C64-, CPC-, Spectrum- und Colecovision-Version. Das Arcade-Original spielte Trickfilmsequenzen von einer Laserdisk ab:

C64 Version. Amstrad CPC. ZX Spectrum. Konsole Colecovision Adam.


Konvertierungen von C64-Software auf andere Systeme[Bearbeiten]

Die Anwendung GEOS erschien zuerst am C64, ebenso wie die Spiele Giana Sisters, Turrican, International Karate + und Sim City zuerst auf diesem System entwickelt wurden. Die Programme wurden dann auch für verschiedene andere Systeme portiert. Bei Sim City haben die zahlreichen Konvertierungen und deren Nachfolger einen deutlich höheren Bekanntheitsgrad erreicht, als das C64-Original.


Weblinks[Bearbeiten]

WP-W11.png Wikipedia: Migration (Informationstechnik)


Quellen[Bearbeiten]

  1. Glen's Weblog: Zilog z80 to Motorola 6809 Transcode – Part 001 – General CPU transcoding info Sprache:englisch