Quote:
> I'm trying to put together a Forth cross compiler for an 8-bit dual stack
> machine
> called the Neuron Chip. The hardware architecture is so Forth-like, that
> it
> makes sense to use in-line word expansion and direct threaded code, rather
> than the traditional implementation.
> It's also necessary to separate code, volatile data, and non-volatile data
> into separate
> segments to be located in ROM, RAM and EEPROM respectively.
I've done a clumsy implementation of this in my Chromium cross-compiler.
Unfortunately, this is still a work in progress, and currently runs
under F83. (You can find it, and source for a 6809 Forth target, in
<ftp://ftp.forth.org/pub/Forth/Camel/cam09-10.zip>.)
Quote:
> All of the PD implementations that I have seen run the compiler
> on the target, generate indirect threaded code, and mix the dictionary
> headers with the compiled code and the data declarations. Even the ANSI
> standard itself seems to require the compiler itself to execute on the
> target.
This is, alas, true of the ANSI standard. The committee decided that NO
cross-compiled Forth could meet the standard, due to the requirement for
interpretive behaviors. But there are several cross-compilers which
don't run on the target, generate direct-threaded or subroutine-threaded
code, and omit the dictionary headers. One such is TCOM, included in
F-PC. It'll probably be easier to modify TCOM than to modify my
Chromium.
You might also consider a commercial product, which would do all you ask
and then some, with documentation and support to boot. Offhand, I don't
know if any of the Forth vendors support the Neuron chip.
--
Brad Rodriguez T-Recursive Technology : Computers on the Small Scale
Contributing Editor, The Computer Journal... http://www.*-*-*.com/ ~tcj
Secretary, Forth Interest Group.......... http://www.*-*-*.com/