http://www.forth-ev.de/wiki/

Gforth EC R8C

Bernd Paysan 26. Juni 2011

http://www.forth-ev.de/wiki/ http://www.forth-ev.de/wiki/

Inhaltsverzeichnis

3/??

http://www.forth-ev.de/wiki/

4/??

http://www.forth-ev.de/wiki/

Kapitel 1

R8C-Forth

In der Dezember-Ausgabe der Elektor wurde ein Renesas-R8C-Board von Glyn verteilt. Die Software von Glyn beinhaltet einen C-Compiler, aber interessanter ist es natürlich, ein Forth auf der CPU laufen zu lassen.

Hier auf der Seite wird kurz beschrieben, wie das Gforth-ec in den R8C kommt und benutzt werden kann. Wer sich mit Unix etwas auskennt, wird sich leicht zurecht finden. Wer so rein gar nichts mit Unix zu tun hatte

in seinem Leben, wird aber auch nicht im Stich gelassen. Denn es gibt auch noch die Schritt für Schritt bebilderten Anleitungen um mit Gforth erste Versuche auf dem R8C machen zu können - für Windows XP - für Linux - (und leider bisher nur ein Error log Mac OSX).

1.1 Aufgabenverteilung

• Heinz Schnitter schreibt den Assembler <latex>\checkmark</latex>

• Bernd Paysan passt Gforth-EC an den R8C an <latex>\checkmark</latex>

1.2 Status 09jul2006

Das System ist fertig.

• Das Forth sagt OK über die UART, kann LEDs und LCD ansteuern, legt selbstdefinierte Programme per

Default im (sehr knappen) RAM ab. Umschalten zwischen RAM und ROM mit den Wörtern ram und rom .

• Das Daten-Flash kann mit flashc! und flash! programmiert werden.

• Gforth ist so anpasst, dass Code Flash-gerecht abgelegt wird (also jedes Bit genau einmal gelöscht wird). Immediate- und Compile-only-Bit sind also zunächst gesetzt (bedeutet natürlich nicht immediateünd nicht compile-only”), und werden bei Bedarf gelöscht. Ebenso ist :dovar an einer Adresse, die das Ändern auf andere Doer (mit DOES>) ermöglicht ($C0FE).

• Gforth EC R8C erlaubt das Anlegen von bis zu 4k Forth-Programmen im Datenflash. Ein savesystem speichert eine Kopie des RAMs in dieses Flash; damit sind auch Turnkey-Applikationen möglich. Das Datenflash kann öfter neu programmiert werden als das Programmflash, damit ist auch mehr Platz für Experimente. Ein empty löscht das gespeicherte System wieder.

• Der Assembler ist jetzt wirklich komplett.

• Der Rest des im ROM zur Verfügung stehenden Platzes ist mit benutzerfreundlichen Fehlermeldungen gefüllt

• Es gibt ein Terminal-Programm, das auch das Nachladen von Dateien über ein einfaches Handshake erlaubt (Xon/Xoff scheitert am Polling-Intervall des USB-Controllers, krude Abhilfe: 250ms Newline-Delay)

• Eine Adaption von tt.fs passt in die 4K ROM.

5/??