schneller Mandelbrot-Explorer für Windows

OP #7587525
Lesenswert?
• ▲
▼

Hallo,

weil mir die gängigen Fraktal-Generatoren nicht gefielen, habe ich selbst ein solches Programm geschrieben ("yet another ...", in Free Pascal, für Windows). Ganz oben auf der Wunschliste standen einfache Bedienbarkeit, Schnelligkeit und Vollbild-Anzeige, etwa so, wie bei einem Bildbetrachter. Für alle, die noch nie in eine fraktale Welt hineingetaucht sind, ist dieser Mandelbrot-Explorer bestimmt ein guter Einstieg.

Im Archiv MBEx.zip stehen die ausführbaren Dateien samt Dokumentation und Quellcode. Wer selber compilieren will, sollte evtl. den FPC 3.0.4 verwenden. Andere Versionen gehen auch, ausgiebig getestet wurde MBEx aber nur als 3.0.4-Übersetzung. Den Compiler gibt's hier: https://sourceforge.net/projects/freepascal/files/Win32/3.0.4/

Einfach den 32-Bit-FPC standardmäßig installieren, dann im Home-Directory von MBEx.pas "fpc mbex" aufrufen. MBEx.pas und alle notwendigen Header-Files stehen in MBEx.zip im Ordner "src". Den 64-Bit-Crosscompiler kann man ebenso standardmäßig wie den 32-Bit-FPC installieren. Hinterher "ppcrossx64 mbex" aufrufen, um MBEx in seine 64-Bit-Variante zu übersetzen.

Beim Codieren von MBEx fiel mir ein merkwürdiges Phänomen auf: Threads, die für Windows 32 compiliert wurden, konnten auf Windows 64 nicht mehr mit "extended"-Genauigkeit rechnen; wohlgemerkt nur die Threads, nicht das Hauptprogramm. Irgendeine Instanz (Pascal-RTL oder Windows-API) initialisiert die Thread-FPUs auf "double" (über das FPU-Control-Word $027F), obwohl eigentlich "extended" notwendig wäre ($037F). Das ist vermutlich kein "Bug", ich befürchte, daß Intel plant, die x64-FPU-Genauigkeit an SSE/AVX anzugleichen. Aber egal, solange der Prozessor x87-Befehle ausführen kann, kommt MBEx32 auch mit verringerter FPU-Genauigkeit zurecht.

Viel Spaß!

Angehängte Dateien:

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.