Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
homecomputer:ac1:forth [2025/07/11 12:13] – [Kurzanleitung] volkerphomecomputer:ac1:forth [2025/07/11 12:47] (aktuell) – [unsinnstext.z80] volkerp
Zeile 38: Zeile 38:
  
 In Forth werden die bereits in der RAM-Disk stehenden I/O-Routinen compiliert mit ''1 6 THRU''. Ab jetzt stehen die Worte ''.FILES, GET, PUT'' zur Verfügung (s. [[forth:fgforth:kassette|I/O]]). Mit ''.FILES'' wird das aktuelle Verzeichnis gelistet. Mit ''1 GET filename'' lädt man eine Datei in die interne RAM-Disk. Nach dem Laden wird die Zahl der geladenen Screens angezeigt (#scr n). Mit ''1 n THRU'' erfolgt üblicherweise das Compilieren des geladenen Programms, es gibt aber auch Ausnahmen!  In Forth werden die bereits in der RAM-Disk stehenden I/O-Routinen compiliert mit ''1 6 THRU''. Ab jetzt stehen die Worte ''.FILES, GET, PUT'' zur Verfügung (s. [[forth:fgforth:kassette|I/O]]). Mit ''.FILES'' wird das aktuelle Verzeichnis gelistet. Mit ''1 GET filename'' lädt man eine Datei in die interne RAM-Disk. Nach dem Laden wird die Zahl der geladenen Screens angezeigt (#scr n). Mit ''1 n THRU'' erfolgt üblicherweise das Compilieren des geladenen Programms, es gibt aber auch Ausnahmen! 
 +
 +Gespeichert wird mit ''1 n PUT filename''. Dieses Kommando speichert Screen 1 bis n auf SD-Karte unter dem Namen "filename" im Z80-Format. Als Typ wird "F" (für Forth-Datei) eingetragen. Ein Dateityp wird nicht automatisch an den Filenamen angehängt!
 +
 +===== Systemzusammenstellung =====
 +
 +<code>
 +as_z80 forth83.asm
 +erzeugt forth83.z80, Adresse 2000-46FF
 +
 +starten mit "f" (oder J 2000), Restart mit "r"
 +
 +Fullscreen-Editor
 + Sedit_AC1.Z80
 + extern laden (nach 8000), Forth starten
 + 1 LOAD
 + Anwenden: n EDIT (editiert Screen n, n = 1..xx)
 +
 +SEE - Dekompiler
 + SEE           vp.z80
 + extern laden (nach 8000), Forth starten
 + 1 10 THRU
 + Anwenden: SEE xxx
 +
 +Datei-Arbeit
 + getput_ac1pico.Z80
 + extern laden (nach 8000), Forth starten
 + 1 6 THRU
 + Anwenden: .FILES (DIR) 
 + n GET fname (Lädt File ab Screen n)
 +
 +
 +MARK EMPTY  HERE FENCE !
 +SAVE-SYSTEM FORTH83A3
 + speichert das gesamte Forth incl. Pakete
 +</code>
 +
 +
 +===== Beispiele =====
 +
 +Die Beispiele können auch am originalen AC1 getestet werden. Dazu verlässt man Forth, lädt die Datei im Monitor-Modus nach 8000h, und geht dann zu Forth zurück (mit "f").
 +
 +Am picoAC1 werden die Dateien direkt unter Forth geladen, z.B. "1 GET LINED.Z80". Groß-/Kleinschreibung des Dateinamens ist egal.
 +
 +==== lined.z80 ====
 +[[forth:fgforth:lined|]]
 + 1 6 THRU
 + 1 EDIT \ Screen 1 bearbeiten 
 + ...
 + DONE
 +
 +==== turmvonhanoi.z80 ====
 +demonstriert, wie der "Turm von Hanoi" optimal gelöst wird. ''n HANOI'' startet das Programm für n (≤ 5) Scheiben.
 + 1 5 THRU
 + 3 HANOI \für 3 Scheiben
 +{{:homecomputer:ac1:turmvonhanoi.png|}}
 +
 +==== unsinnstext.z80 ====
 +nach L. Brodie, erzeugt witzige Texte
 + 1 5 THRU \ Screen 6..10 enthalten Textbausteine
 + TEXT \ nach jedem Absatz ENTER drücken
 + NOCHMAL \ gibt letzten erzeugten Text nochmal aus
 +{{:homecomputer:ac1:unsinnstext.png|}}
 +
 +
 +==== demorechner.z80 ====
 +Großanzeige von Ziffern und Rechenzeichen. Enthält in Screen 1 und 2 Eaker-Case, nutzt AT vom Paket SEDIT (Screen-Editor).
 + 1 8 THRU
 + DEMO \ erwartet korrekte Fortheingabe, z.B. 15 6 *
 +{{:homecomputer:ac1:demorechner.png|}}
 +
 +Zusammen mit formi2.f83 kann die Aufgabe auch in infix-Notation eingeben werden: ''{ 12 * 4 + 3 * 2 }''
 +
  • homecomputer/ac1/forth.1752236010.txt.gz
  • Zuletzt geändert: 2025/07/11 12:13
  • von volkerp