2009-03-27 9 views
11

Ich habe ein paar wirklich alte MSDos basierte Malprogramme. Sie arbeiten mit palettenindexierten Bildpuffern. Sie haben eine Reihe von formschönen Zeichenwerkzeugen, Pinseln und Effekten, die es in keinem modernen Malprogramm gibt - vor allem nicht, wenn man innerhalb der "Grenzen" eines Indexbildes mit niedriger Farbpalette bleibt. Ich möchte viele dieser wundervollen Werkzeuge in einem modernen Programm reproduzieren, um sie vielleicht für mich und die Allgemeinheit wieder zugänglicher zu machen, ohne einen Emulator wie Dosbox booten zu müssen. Aber ich habe ein Problem.Reverse Engineering alte Malprogramme

Während viele dieser Pinsel und Werkzeuge und Dinge offensichtliche Funktionen haben, deren Umsetzung sollte ziemlich einfach sein. Aber mit anderen Werkzeugen sind ihre Prinzipien der Operation nicht so offensichtlich. Ich würde feststecken, einen korrekten oder treuen Algorithmus zu bestimmen, um diese zu implementieren.

Wenn du ich wärst, welchen Ansatz würdest du nehmen? Gibt es Decompiler/Disassembler, die mit alten Programmen wie diesem umgehen können? Oder würden Sie einen anderen Ansatz wählen, wie zum Beispiel das methodische Testen der Algorithmen an verschiedenen Eingängen, um die zugrundeliegende Funktion zu bestimmen? Eine Kombination verschiedener Techniken? Im Falle einer Zeile dieser Programme ist der ursprüngliche Autor dieser (kommerziellen) Programme bekannt und ist jetzt ein tollwütiger Open-Source-Anwalt. Soll ich nur versuchen, sie direkt zu kontaktieren und fragen? Ich bin nicht besonders erfahren im Reverse Engineering, daher weiß ich nicht genau, wo ich anfangen soll.

edit: es scheint, dass "Fragen und ye erhalten" wirklich funktioniert.

bearbeiten 2: Werfen Sie einen Blick auf http://animatorpro.org für den Quellcode für das Programm, das ich ... die Quelle für. Deluxe Paint wäre auch nett, aber Dan Silva scheint vom Angesicht der Erde verschwunden zu sein.

+0

Ich möchte nur wissen, ob GIMP nicht Ihren Bedürfnissen oder vielleicht sogar Photoshop entsprach. –

+0

@camilo: Sie scheinen es einfach nicht zu bekommen, oder? http://www.pixeljoint.com/ – Breton

+0

Diese Frage, zusammen mit den Antworten und Kommentaren, ist der beste Thread, den ich bisher auf SO gesehen habe. Ein großes Lob an Sie, dass Sie den Code erhalten haben! –

Antwort

6

IDA Pro verarbeitet fast jede Binärdatei und ist der Goldstandard für diese Art von Arbeit, obwohl die Kontaktaufnahme mit dem Autor hilfreich sein kann.

+0

IDA Pro und HexRays Plugin sollten Sie beginnen. – mmcdole

+9

hey ich habe es total nicht erwartet, aber der Autor hat mir den Quellcode gegeben. Was Dyah weiß. Danke Leute. – Breton

6

Wenn Sie den Autor überzeugen können, einige oder das gesamte Programm zu öffnen, ist das die beste Methode.

Darüber hinaus werden Disassembly und Debugging Ihre Freunde sein. In einigen Fällen können Sie möglicherweise eine Software dekompilieren, wenn Sie wissen, mit was sie ursprünglich kompiliert wurde. Aber disassemblieren Sie es und führen Sie es in einem Debugger aus, um die übergeordnete Struktur zu finden, und suchen Sie nach den offensichtlichen Funktionen, die die tatsächliche Pinselarbeit ausführen.

Es mag auf den ersten Blick entmutigend erscheinen, aber nach einiger Zeit wird es überraschend verständlich sein.

-Adam

+0

Ich glaube nicht, dass ich eine Hoffnung habe, es zu öffnen, da ich nicht glaube, dass der ursprüngliche Autor die Quelle selbst besitzt. Ich erwähnte, ihn kontaktiert zu haben, in der Hoffnung, dass er zumindest die beteiligten Algorithmen erklären könnte. – Breton

+0

Es stellte sich heraus, dass ich falsch lag. – Breton

+0

Also haben sie dir gegeben, was du brauchst? –

Verwandte Themen