Forward References in the FigForth Installation Manual
Posted: Thu Oct 09, 2025 7:20 am
Hello Everyone - I registered a while ago, as I am in the process of building a small 6502 SBC and of course, it will need to run Forth. I have moved over from the Z80/8085 world, and this is my first post.
I am currently trying to understand the code in the FigForth Installation Manual - The idea of Forth being able to assemble itself appeals to me. Therefore, my intention (once my hardware is up and running) is to use a "standard" assembler version of Forth to run the assembler, and get the Forth Assembler version up and running (if that makes sense).
Working my way through the Installation Manual (This document: http://6502.org/documents/books/forth_i ... lation.pdf) I realise I need Mr. Ragsdale's assembler from Forth Dimensions, and so far everything makes reasonable sense.
However, I am stuck on what is happening on Screens #70 and #71 - obviously "Forward References" makes sense in that we are referencing things which haven't been defined yet but I am not understanding the how.
As an example:
Surely the words BYTE.IN and REPLACED.BY must be defined somewhere? I can't find them in any of the source files. What am I missing?
It's probably a pretty basic question, I wouldn't consider myself to be a Forth expert - I know just enough to cause mayhem - but it's been bugging me for hours!
I am currently trying to understand the code in the FigForth Installation Manual - The idea of Forth being able to assemble itself appeals to me. Therefore, my intention (once my hardware is up and running) is to use a "standard" assembler version of Forth to run the assembler, and get the Forth Assembler version up and running (if that makes sense).
Working my way through the Installation Manual (This document: http://6502.org/documents/books/forth_i ... lation.pdf) I realise I need Mr. Ragsdale's assembler from Forth Dimensions, and so far everything makes reasonable sense.
However, I am stuck on what is happening on Screens #70 and #71 - obviously "Forward References" makes sense in that we are referencing things which haven't been defined yet but I am not understanding the how.
As an example:
Code: Select all
00 BYTE.IN : REPLACED.BY ?EXECIt's probably a pretty basic question, I wouldn't consider myself to be a Forth expert - I know just enough to cause mayhem - but it's been bugging me for hours!