So einfach kann es sein…

…komplexere Funktionen in PropForth zu realisieren:

: ls dir 0 begin .entry lscnt 0= until drop padbl cr ;

Und was machts? Klar, ein ls-Kommando, um das Verzeichnis auf SD-Card im Spaltenformat anzuzeigen. Ist ja wohl der Hammer! Am Anfang war die Funktion natürlich nicht so einfach, sondern eher unübersichtlich, verschachtelt und erstreckte sich über mehrere Zeilen. Aber nach einem zweiten Anlauf wurde es dann dieser Einzeiler.Keine Ahnung ob das jetzt vernünftiger Code ist, aber mir gefällt es enorm. Ich muss sagen, ich verliebe mich gerade wieder neu über beide Ohren in Forth… 🙂

Ach ja, vielleicht noch einige Worte zum aktuelle Stand zur Anpassung von PropForth an den Hive:

  • Über die serielle Schnittstelle und den angeschlossenen VGA/Keyboard kann nun gleichzeitig und unabhängig gearbeitet werden.
  • Der Treiber drv:int zu VGA/Keyboard beherrscht jetzt einige einfache Kommandos als ESC-Sequenz. So kann mit ESC-1/2/3 der Screen und die aktuelle COG umgeschalten werden. Hängt eine COG (zum Beispiel durch einen Programmierfehler) in einer Endlosschleife, so kann mit ESC-B ein Break ausgelöst werden, und die interaktive COG (und nur diese) bekommt vom drv:int ein Reset. ESC-R löst in Regnatix ein Reboot aus – dauert ja nur eine Sekunde… 🙂 Und noch einiges mehr.
  • Mit ls, lsl, cat und cd kann schon grundsätzlich auf die SD-Card zugegriffen werden. Ein Kommando „load dateiname“ compiliert einen Forth-Quelltext in einer freien COG.
  • Und noch einige Funktionen mehr, an die ich mich momentan nicht erinnere…

Wird wohl bald eine neue Version geben. Der nächste Meilenstein wird ein Quelltexteditor sein: damit wäre der Hive dann wirklich autark.