• Das kreative Thema des Monats Oktober wird vor allem diejenigen unter Euch besonders ansprechen, denen Do-it-yourself quasi im Blut liegt. Zeigt uns Eure Improvisationskünste oder fotografiert, was andere Leute sich so im Alltag zusammengestrickt haben. --> Zum Mitmachen bitte hier klicken

Assembler-Konvertierung (X86->PPC)

  • Ersteller Ersteller GoaSkin
  • Erstellt am Erstellt am

GoaSkin

Gast
Für ein bekanntes Spiel wurde in der Windows-Version aufgrund eines Bugs ein kleiner Patch herausgegeben, wobei die Mac-Version den selben Fehler auch hat, jedoch die Portierungsfirma es nicht für nötig hielt, ebenfalls einen Patch herauszubringen.

Wie ich festgestellt habe, handelt es sich um eine binäre Funktion, die im Intel-Code für beide Plattformen identisch ist, wodurch es auch kein Problem ist, den geänderten Code für Intel-CPUs in das Hybrid-Binary zu implementieren. Doch ich nutze einen PPC-Rechner, für den der Assembler-Code für den selben Zweck ganz anders aussieht. Um dennoch eine Chance zu haben, den Fehler für die PPC-Version zu beheben würde es mich interessieren, ob jemand ein Tool kennt, das äquivalente PPC-Instruktionen zu eingegebenen X86-Instruktionen ausgeben kann.

Ebenfalls suche ich noch einen vernünftigen Assembler-Editor, der die HEX-Werte für manuell eingegebene Funktionen ausgeben kann.
 
Das wird nicht funktionieren. An welcher Stelle willst Du das PPC Binary patchen? Allenfalls das gesamte Binary könnte man übersetzen, aber alleine den Patch? Das halte ich für gewagt.

Alex
 
In dem Programm ist eine ungenutzte Funktion für ein Pie Menu vorhanden, sodaß der Datenbereich mit neuen Funktionen überschrieben werden kann.

In der Funktion, die ergänzt wird, wird eine Sprunganweisung eingefügt, dort die geänderten Assembler-Befehle abgearbeitet und danach zurückgesprungen.