C't-Sim Programmierung MacOSX

Aus c't-Bot Wiki
Wechseln zu: Navigation, Suche

Da der Simulator c't-Sim in Java geschrieben ist, ist der Betrieb prinzipiell auch unter MacOS X möglich. Gleiches gilt für den simulierten Bot, der in der Programmiersprache C geschrieben ist.

Die hier aufgeführten Probleme sind inzwischen gelöst, Bot und Sim funktionieren zu 100% auch unter Mac OS X. Für weitere Informationen zur Java3D Installation siehe Installationsanleitung Java3D.


Der praktischen Umsetzung stehen zur Zeit noch einige Probleme entgegen:

java3d
Das Projekt verwendet die Bibliothek java3d in der Version 1.4. Dies ist eine Beta-Version, die momentan für den Mac noch nicht verfügbar ist. Es gibt einen Patch, der den Simulator an die Version 1.3 von java3d, die auch für den Mac verfügbar ist, anpaßt. Ein solchermaßen gepatchter c't-Sim läßt sich allerdings nicht mehr mit java3d 1.4 verwenden, was die Aufnahme der Änderungen in die offizielle Codebasis erschwert. Dazu wäre es nötig, grundsätzlich mit der Version 1.3 zu arbeiten. Dies ist im offiziellen Forum vorgeschlagen worden, eine weitere Diskussion steht jedoch noch aus.
Endian (Byte Order)
Den technischen Hintergrund findet man in der Wikipedia.
Da Java unabhängig von der verwendeten Hardware immer Big Endian verwendet, C jedoch je nach Hardware Little oder Big Endian, kann es bei der Kommunikation zwischen (simuliertem) c't-Bot und c't-Sim auch dann Probleme geben, wenn die Programme auf derselben Maschine laufen. Die momentan im CVS verfügbare Version der beiden Programme beseitigt die Probleme durch explizite Bit-Operationen. Wenn die Kommunikation zwischen c't-Bit und c't-Sim um weitere Daten ergänzt wird, so muß auch für diese die Byte Order angepaßt werden.