Etwas Reverse Engineering

Die letzten zwei Tage habe ich damit verbracht, die Daten aus den Dateien eines Programmes herauszukitzeln. Die eigentlichen Daten werden zunächst komprimiert und dann verschlüsselt.

Während es relativ einfach war, den Entschlüsselungsvorgang nachzuvollziehen, hatte mir die Komprimierung zunächst Probleme bereitet.

Letztendlich konnte ich allerdings zwei kleine Javaschnipsel fertigstellen. Das Erste entschlüsselt die Daten, das Zweite macht daraus ein lzh-File. Entpackbar mit jedem handelsüblichen Entpacker, der allerdings Dateien auch entpacken muss, wenn die CRC-16 Summe nicht mit der Originaldatei übereinstimmt.

Read More

(Listen von (Listen von (Listen von …)))

Die Überschrift dieses Beitrags ist an die Lisp-Syntax angelehnt. Dies ist mein kleiner Tribut zu dieser tollen Programmiersprache. Denn Listen sind – wie wir alle wissen – eine der advancedesten (wie schreibt man das? Matze?) Datenstrukturen die es gibt.

Dann macht man noch ein bissl Präfixnotation dazu und schon ist klar: OOP considered harmful.

Aber ganz von vorne.

Read More

Say Say Say!

Mal wieder ein Post der Kategogie “Misc – und doch hauptsächlich Informatik”.

Man kann ja nie genung Projekte aus heiterem Himmel auf Eis legen und gleichzietig Neue anfangen. So trug es sich vor einigen Tagen zu, dass ich den guten alten Roger fragte, was man mal bauen könnte. “Mach einen Chip-8 Emulator!”

Zunächst stand ich der Idee ja noch etwas skeptisch gegenüber – zu einfach 😉 zu wenig, war schonmal da. Aus schierer Langeweile, die schon in Verzweiflung umzzukippen drohte, hatte ich damit dann aber doch angefangen. Mit Python. Und mit Pygame.

Der eigentliche Code ist hässlich, schlecht kommentiert (ganze 17 Minikommentare auf ~300 Zeilen), arg zusammengehackt, unvollständig und bei großen Pixelgrößen sehr langsam.

Die besten Vorraussetzungen also um das Ding auf die Welt loszulassen.

Programme findet man im Netz (z.b. hier). Falls mal was nicht funktionieren sollte, dann liegt was wohl daran dass wie gesagt noch nicht alle Opcodes implementiert sind. Der Emulator bricht dann ab und schreibt den fehlenden Code auf stdout. Wer also noch was machen möchte guggt bei Wikipedia und/oder hier.

Desweiteren

Nuja… außerdem habe ich meine exklusiven Tipps zu den WSI Pools in das Wiki übertragen. (Bisher waren die nur intern für ein paar Auserwählte einsehbar.)

Ich war mit dem Matze auf WG-Beschauung. Die entsprechenden Logs davon gibts auf seinem Blog. Heute waren wir in zwei Verbindunghäusern – was uns dort widerfahren ist wird sicherlich auch in Kürze bei Herrn Hirt zu lesen sein.

Dass Data Visualization und Infografiken auch Kunst sein können zeigen Videos wie diese.

Da gibts auch ein cooles Blog.

Processing with processing

Schon vor längerer Zeit hatte ich das Projekt Processing mal gefunden, was dann aber irgendwie wieder in Vergessenheit geriet.

Vor zwei Tagen fiel mein Augenmerk wieder auf dieses Java-Animation-Framework, diesmal durch das lustige “World of Sand” Java Applet bzw. genauer durch das Derivat Hell of Sand.

Laut Wikipedia eignet sich Processing für Programmiereinsteiger und Designer, zum Programmieren von visuellen Animationen und Prototyping.

Der forgtgeschrittene Hobbyentwickler merkt sofort dass es sich um nichts weiter als Java handelt. Um den sogenannten PDE-Code müssen nur ein paar Imports und ähnliches gepackt werden um ein vollständiges Javaprogramm zu erhalten.

Ich hab mich vorhin mal hingesetzt um was Simples zu basteln und mein kleines Werk kann hier als Java-Applet betrachtet werden. (Hinweis: Einfach mal mit der Maus reinklicken.)

Tolles Ding dieses Processing – und dazu noch OpenSource (LGPL).

Coole Animationen und kurzweilige Spielerein finden sich zu Hauf im Netz. Einfach mal googeln.

MMIX treibt Apache

Im Zuge der Info II Vorlesung habe ich das Experiment gemacht, MMIX über CGI mit Apache zum Laufen zu bekommen.

Read More

Spaß mit Wellen

Nachdem ich nun die Chemieprüfung mehr oder weniger erfolgreich hinter mich gebracht habe, kann ich mich wieder meinen privaten Forschungen widmen 😉 . Dass ich noch nicht wieder ganz von der physikalischen Chemie frei bin (is ja auch sehr interessant) sieht man an meinem letzten Experiment.

Ich wollte mal mit der Darstellung von periodischen Funktionen arbeiten. Das Bild wird Pixel für Pixel von einem kleinen Javacode gemalt. Die konzentrischen Kreise sind überlagerte Sinusfunktionen mit verschiedenen Frequenzen und jeweils auf der X-Achse verschoben. Am meisten Probleme hat mir allerdings gemacht, dass der Arcus Sinus nur auf [-pi/2;+pi/2] abbildet. Kann man ja nicht wissen ^^. Deshalb saß ich an den Farben auch etwas länger :-) .

Wie auch immer… ich werde mich wohl jetzt wieder den Fluids zuwenden – diesmal nach der Dissertation “Rigid, Melting, and Flowing Fluid” von Mark Carlson. Im Gegensatz zum Standardpaper “Realistic Animation of Liquids” von Foster et al werden hier vor allem die numerischen Rand- und Stabilitätsbedingungen recht ausführlich beschrieben. Beim letzten Mal musste ich da überwiegend raten. Hoffentlich wird das was :-) .

Realtek 8180 for fli4l

After one week of testing I finally finished OPT_R8180, an optional fli4l package. Me not having done much but compiling the driver and writing some minimal scripts needed by fli4l, all the credits go to Andrea Merello for providing the source code.

go to the package

Newer →

Contact

Alexander Gitter
contact at agitter net