Hallo allerseits,
die Aufräumarbeiten schreiten voran! Ich habe einiges an Code rausgeworfen und werde das auch weiterhin noch tun. Dabei habe ich eher zufällig ein paar Bugs entdeckt, die offensichtliche Verschreiber sind und anders gemeint waren, als sie da standen. Ich weiß nicht, wie sie sich dann auf das Verhalten auswirken, aber ich gehe davon aus, dass es sich dabei doch um welche handelt, die irgendein von euch beobachtbares Fehlverhalten erzeugen.
Ich habe mich auch gewagt, mal den Simulator und den Editor als 64bit Programme zu bauen. Bis dato war beides ja noch 32 bit, was gewisse Nachteile mit sich bringt. Dazu war allerdings erheblich mehr Aufwand nötig, als bloß den Compiler (das ist das Programm, das aus dem C++-Code das ausführbare Programm erzeugt) auf 64bit zu stellen. In 64bit haben nämlich verschiedene Datentypen eine andere Größe und wenn man nicht sauber auf die Typen achtet und im Code implizite Annahmen über die Größen von Datentypen macht, führt das zu Problemen.
Leider hat mein Vorhaben 64bit ein jähes Ende gefunden: der Loksim nutzt ja bekanntlich DirextX 7 für die 3D-Darstellung. Das ist eine Schnittstelle, die im Jahr 1999(!) veröffentlicht wurde. Die ist somit älter als einige, die sich hier im Forum bewegen. Während Microsoft für 32bit-Anwendungen DirectX 7 noch mitschleppt, tun sie das für 64bit nicht mehr. Somit gibts in meinem derzeitigen Arbeitsstand, der sich zu 64bit Programmen bauen lässt keine Möglichkeit für die 3D-Darstellung.
War die Arbeit mit 64bit somit umsonst? Ich finde nicht. Folgende Erkenntnisse nehme ich mit:
1. Ich habe eine Menge fauler Stellen im Code entdeckt und hab sie zumindest behelfsmäßig repariert und werde das ganze noch nachhaltiger tun.
2. Der Loksim hängt von einer Schnittstelle ab, bei der mittelfristig damit zu rechnen ist, dass sie endgültig ein Messer in den Rücken bekommt. Ein Ersatz für diese veraltete Anbindung ist aber schon von Lukas begonnen worden!
3. Es zeigt sich mehr und mehr, wie notwendig diese Arbeiten sind. Auch wenn sich in Sachen neuer Funktionalitäten relativ wenig tut gerade.
Viele Grüße
Martin