Ich möchte die Forth-Wörter VALUE
und TO
auf einem RPC / 8 (ein emulierter Computer in einem Minecraft <) implementieren / a> mod ). Meine besten Versuche bringen mir eine Reihe von Wörtern, die gut funktionieren, solange ich sie beim Kompilieren nicht verwende. Mehr spezifisch VALUE
funktioniert, aber TO
nicht.
Ich habe alles versucht, was mir einfällt, damit es funktioniert und mein bester Versuch bringt mir das:
%Vor%Beachten Sie, dass der Prozessor kein reiner 6502 ist, sondern ein 65EL02 , eine benutzerdefinierte Variante des 65816 .
EDIT # 1: Irgendwie habe ich den Aufruf von CREATE im Wert vergessen. Es sollte die ganze Zeit dort gewesen sein.
EDIT # 2: Ich habe auch 3
und +
in TO umgeschalten ... oops. Es hätte die ganze Zeit über anders sein sollen.
Ok Nach viel Versuch und Irrtum sowie viel Suchen fand ich etwas, das funktionieren sollte, aber wegen zwei Bugs in redFORTH, nicht.
WERT
%Vor%NACH
%Vor%Demo des Fehlers in LITERAL
%Vor%Demo des Bugs in POSTPONE
%Vor%Ich mache einen Fehlerbericht ....
EDIT # 1: Nach etwas mehr Versuch und Irrtum und nicht ein wenig fluchen (ich bin nicht gut mit FORTH) Ich fand einen Weg, um es zum Laufen zu bringen.
%Vor%Ich bin mir nicht sicher, wie Ihr Forth die Übersetzung im Vergleich zur Kompilierzeit handhabt, aber die Definition von TO versucht, einen Wert an Adresse 3 zu speichern. Sieht fischig aus.