If so —- why it is there? Is it left there "just in case",
on the rule: "if ever in a need to use warm-start procedure,
you'll always find its vector at ORIG+2"?
Every fig-Forth is started with a sequence:...
It seems that location isn't used at all -- is it correct?
Every fig-Forth is started with a sequence:
ORIG: NOP
JMP CLD ; vector to COLD start
NOP
JMP WRM ; vector to WARM start
The problem is: nowhere neither in the source nor
in the LST file I can find any reference to ORIG+2
address -- when using symbolic notation -- neither
to that particular memory address (addressed directly).
No Forth word uses "2 +ORIGIN".
It seems that location isn't used at all -- is it correct?
If so —- why it is there? Is it left there "just in case",
on the rule: "if ever in a need to use warm-start procedure,
you'll always find its vector at ORIG+2"?
Traditionally -2 CELLS +ORIGIN was the warm start.
It is useful to guide signals to this address.
"Traditionally"? Correct me, if I'm wrong -- but
usually the first address of the whole Forth system
was "0 +ORIGIN" -- and everything else was "higher".
So although feasible still "-2 CELLS +ORIGIN" looks
rather, say, "unorthodox". ;)
BTW: while we at ciforth. Perhaps could you
-- as the author, who knows his "child" best --
recommend the simplest way to _not_ generate
CRs within blocks?
recommend the simplest way to _not_ generate
CRs within blocks?
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 546 |
Nodes: | 16 (2 / 14) |
Uptime: | 143:47:49 |
Calls: | 10,383 |
Calls today: | 8 |
Files: | 14,054 |
D/L today: |
2 files (1,861K bytes) |
Messages: | 6,417,671 |