Hallo zusammen Ich bin schon seit Tagen auf der Suche nach einem Disassembler bzw Decompiler für mir vorliegendes Hex file im s19 Format. Der Code stammt von einem MPC563. Bis jetzt habe ich nur das IDA Pro 6.5 gefunden was das beherscht. Und an dieses Tool mit der Version 6.5 zu kommem ist nicht mal auf legalem wege möglich, das dieses nur an spezielle Security Unternehmem für sehr viel geld verkauft wird. Auch der Codewarrior von Freescale bietet diese möglichkeit nicht wirklich. Gibt es den garkeine Alternative ein Motorola Hexfile zu dissamblieren und zu verstehen was das Program nun genau macht? Bin für jeden Tipp mehr als dankbar Gruß Rene
Es sollte eigentlich nicht so arg schwierig sein, einen einfachen nicht-symbolischen Disassembler für PowerPC zu finden. Die GNU binutils müssten das können.
Rene Schir schrieb: > Gibt es den garkeine Alternative ein Motorola Hexfile zu dissamblieren Das Hexfile ist nur eine Transportverpackung, entscheidend ist der Prozessor, für den die Daten gedacht sind; den aber hast Du schon genannt. Such also mal nach "MPC563 disassembler" und Du hast eventuell mehr Glück. Auch wenn der gefundene Disassembler keine S19-Dateien verdauen können mag, wird es leicht möglich sein, die in ein ihm genehmes Format (bin, intel-hex, whatever) zu konvertieren -- wie gesagt, das ist nur eine Transportverpackung.
erst einmal vielen dank für die bisherigen Antworten. Nach "MPC563 disassembler" habe ich schon ausgiebig bei Tante Google gesucht, ich komme aber leider immer wieder bei IDA pro oder Codewarrier an. finde es echt erstaunlich das es so schwierig ist einen disassembler zu finden und der wäre ja nur die halbe Miete, den ich brauche ja auch noch ein tool mit dem sich der disassemblierte code mal simulieren läst. Denn ich möchte den Code ja einlesen, verstehen und verändern :(
Rene Schir schrieb: > finde es echt erstaunlich das es so schwierig ist einen disassembler zu > finden Hat vielleicht damit zu tun, daß der Controller zu den eher ausgesuchten Exoten gehört. Und damit, daß ein Disassembler auch zu den eher selten benötigten Werkzeugen gehört; so etwas wird schließlich nur beim Reverse-Engineering benötigt ... und das ist nach Ansicht mancher Leute umstritten bis anrüchig.
Oh danke das program scheint ganz brauchbar zu sein, nur wie lade ich die datei da rein und lasse sie dissasamblieren ??? Ich bekomme immer nur die Hex-rohdaten angezeigt
Rufus Τ. Firefly schrieb: > Hat vielleicht damit zu tun, daß der Controller zu den eher ausgesuchten > Exoten gehört. So exotisch nun auch wieder nicht, vom Code her. PowerPC.
Rene Schir schrieb: > Oh danke das program scheint ganz brauchbar zu sein, nur wie lade ich > die datei da rein und lasse sie dissasamblieren ??? Ich bekomme immer > nur die Hex-rohdaten angezeigt d.load example.elf
Rene Schir schrieb: > Oh danke das program scheint ganz brauchbar zu sein, nur wie lade ich > die datei da rein und lasse sie dissasamblieren ??? Ich bekomme immer > nur die Hex-rohdaten angezeigt system.reset system.cpu MPC563 system.up data.load * list.asm
A. K. schrieb: > So exotisch nun auch wieder nicht, vom Code her. PowerPC. Alle PowerPCs sind gleich? Oder sind sie sich nur ähnlich?
Rufus Τ. Firefly schrieb: > Alle PowerPCs sind gleich? Oder sind sie sich nur ähnlich? Es geht um einen Disassembler. Der dürfte circa eine Obermenge der existierenden Implementierungen erfassen. Wenn da mal ein Spezialbefehl dabei sein sollte, dann wohl nicht massenhaft verwendet. Haarig wirds, wenn Codekomprimierung dabei ist, wie IBM mal implementierte.
A. K. schrieb: > Es geht um einen Disassembler. Der dürfte circa eine Obermenge der > existierenden Implementierungen erfassen. Wenn alle PowerPC-Kernvarianten hingleichend ähnlich sind. Sind sie das? Ich frag' ja nur, und denke an die Variationsbandbreite, die es unter ARMen gibt.
Rufus Τ. Firefly schrieb: > Wenn alle PowerPC-Kernvarianten hingleichend ähnlich sind. Sind sie das? > Ich frag' ja nur, und denke an die Variationsbandbreite, die es unter > ARMen gibt. PowerPC ist schon in den 90ern in 64 Bits mit 32-Bit Subset umfangreich definiert wurden, skalare Fliesskommarechnung inklusive. IBMs leicht abweichender Vorgänger ist heute irrelevant. Dazu kamen später wie andernorts auch Erweiterung für SIMD&Co. Von einer kompakten Alternativ-Codierung wie etwa Thumb habe ich nichts vernommen, statt dessen brachte IBM eine tabellengestützte Umcodierung auf Basis einer Häufigkeitsanalyse der Hälften der Codeworte des real erzeugten Programms. Ich will aber nicht den Anspruch erheben, da den kompletten Überblick zu haben. Das ist bloss das, was ich über die Jahrzehnte mitkriegte. Die iSeries braucht man hier wohl nicht mit einzubeziehen.
:
Bearbeitet durch User
A. K. schrieb: > Rufus Τ. Firefly schrieb: < ... > Von einer kompakten Alternativ-Codierung wie etwa Thumb habe ich nichts > vernommen, statt dessen brachte IBM eine tabellengestützte Umcodierung > auf Basis einer Häufigkeitsanalyse der Hälften der Codeworte des real > erzeugten Programms. Zum Thema Thumb, es gibt bei den e200 PowerPC seit 2004 das sog. VLE welches 16bit und 32bit Instruktionen mischt. Dieser Core Typ ist auf Echtzeit Embeddedsysteme konzipiert, z.B. für Motorsteuergeräte.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.