\section{Forth für Windows CE}

Von: Patrick Mauritz <\href{mailto:oxygene@studentenbude.ath.cx}{\tt
  oxygene@studentenbude.ath.cx}> \\
Datum: 2005--11--07 13:36

  Hallo,

nachdem jetzt schon die zweite Frage zu PocketPC Forth in der VD stand,
und ich demnächst ein funktionierendes ARM system haben werde, wollte
ich doch mal darauf antworten.

Windows CE ist seit ca. 2002 auf ARM CPUs normiert, volksForth wird
daher vermutlich keine große Hilfe sein, da es für z80 und ähnliche
(zB 8088/8086) entwickelt wurde. Auch wenn es portabel ist, ARM ist
strikt 32bit, vF ist eher für 8bit cpus.

Ich werde voraussichtlich Ende des Monats einen GP2X (\url{www.gp2x.com})
erhalten, der ebenfalls ARM basiert ist (sogar 2 cores), und habe vor,
dort Forth ans Laufen zu bekommen.

Mir ist kein reines ARM Forth bekannt, abgesehen von einem, dass auf
Chuck Moores machine forth basiert. Der Source scheint allerdings
verlorengegangen zu sein, und das beste, was ich noch habe finden
können ist das Paper, in dem der Autor die Unterschiede zu und die
Probleme mit MF beschreibt.

(
\href{http://dec.bournemouth.ac.uk/forth/euro/ef99/thomas99a.pdf}{\tt http://dec.bournemouth.ac.uk/forth/euro/ef99/}
\href{http://dec.bournemouth.ac.uk/forth/euro/ef99/thomas99a.pdf}{\tt thomas99a.pdf})

Daher werde ich als Basis wohl BeginAgain hernehmen, das Forthsystem,
welches ich urspruenglich für OpenBIOS entworfen habe mit dem Ziel, auf
allen 32bit+ Systemen einsetzbar zu sein. Auf ARM wird BA allerdings
nativ eher langsam laufen, da die Fähigkeiten und Schwächen der CPU
von kaum einem C compiler beruecksichtigt werden, und auch das VM design
da wenig Spielraum lässt für "`gute"' compiler. Vermutlich wird jedes
andere portable Forth ähnliche Schwächen aufweisen. (gforth, pforth
und MPE VFX haben auch "`arm support"')

Das Hauptproblem bei WinCE wird sein, die Anbindung an die
Systemlibraries hinzubekommen.. Linuxbasierte (wie der gp2x) oder
Systeme ohne Betriebssystem haben es da definitiv leichter. Ansonsten
bleibt da nur noch zu testen, inwiefern ein portables Forth schnell
genug ist oder nicht, und was man dagegen machen kann/will..


Gruß

\hfill \emph{Patrick Mauritz}
