Hello,
I've taken Neal Crooks converted Gforth version of the CamelForth 6809 cross-compiler, "chromium_ans.scr", asciified it into several plain text files and changed the LOAD/THRU screens to use INCLUDE instead.
The chromium.scr that Neal converted to Gforth compiles fine, but my asciified version gets so-far but then hits problems. I had to add INCLUDE as an alias into the ROOT vocabulary, that makes sense. After that, I get various compiler errors, depending on other debug tweaks to the code I make, such as dictionary out of space or word not found.
Partway through the compilation, the chromium code spits out the memory location of a word-list / vocabulary. The value given for the .scr is different (starts with a 7) to the one for the ascii files version (starts with a 2).
Before I start some heavy Gforth source code debugging, can anyone tell me if there are any known differences in the way LOAD and INCLUDE behave with the same (but converted) code? I had a quick look into the source code provided with Gforth and, to my untrained eye, the LOAD code looks quite different to the INCLUDE code.
I'm rusty on Forth, I haven't actually used it in anger since the late 90s, and never touched vocabularies at that time anyway. This is a cross-compiler application, so it's doing all sorts of magical word definitions to make it work, it's a few steps beyond me at this point!
Thanks for your thoughts...
Regards,
Phillip Eaton