<lispmacs[work]>
unless I misunderstood your question
hosewiejacke has quit [Ping timeout: 276 seconds]
<siraben>
lispmacs[work]: so you can generate an image file from an fs file?
gravicappa has quit [Ping timeout: 265 seconds]
gravicappa has joined #forth
<lispmacs[work]>
siraben: correct, yes. The image file outputted has an .fi file extension
<lispmacs[work]>
you have to make some choices on what kind of image file you want, non-relocatable, fully-relocatable, etc. So you'll probably want to go through that manual chapter
<lispmacs[work]>
the short version, though, is create your code file, then run `gforthmi myfile.fs'
<lispmacs[work]>
sorry, that is not quite correct...
<lispmacs[work]>
additional caveat, you still have to have gforth installed
<lispmacs[work]>
gforthmi myfile.fi myfile.fs
<lispmacs[work]>
./myfile.fi
<lispmacs[work]>
however, if you inspect myfile.fi, you will see that the first line calls gforth, which then loads the binary data located after the first line
<siraben>
hm, it seems that I wasn't able to generate the fi
<nihilazo>
what is the difference between C and 'C'
<mark4>
in forth? C might be a word you can execute and 'C' is a character byte
<mark4>
: C do something useful loop ;
<mark4>
'C' emit
<nihilazo>
nah I mean, I've noticed that forth people seem to often talk about 'C' instead of C
<nihilazo>
like, in comments etc and in books
<nihilazo>
maybe it's just an old style guide hting
hosewiejacke has joined #forth
<lispmacs[work]>
siraben: I was able to successfully run `gforthmi meta.fs'
<lispmacs[work]>
oops, don't run that command though...
<siraben>
Maybe it's a macOS problem
<lispmacs[work]>
siraben: sorry, having trouble figuring it out, don't have time now to go deeper
<lispmacs[work]>
I thinkg `gforthmi meta.fi meta.fs' wont work
<lispmacs[work]>
i think because it calls the `main' word, so program doesn't complete
<lispmacs[work]>
i think you would need to throw in some gforth options to gforthmi to make it clear you want to compile the definitions and then run `main'
gravicappa has quit [Ping timeout: 276 seconds]
<lispmacs[work]>
but I think you would need to remove the call to `main' in the program and call that as a gforth option
<lispmacs[work]>
like the `-e' option
<lispmacs[work]>
anyway, sorry, can't spend more time on it now
f-a has joined #forth
<lispmacs[work]>
siraben: maybe it is helpful to emphasize that an image file is just a dump of the dictionary after running whatever programs you pass to gforthmi
hosewiejacke has quit [Remote host closed the connection]
<f-a>
I have written the inner interpeter, the stack and so forth in assembler
<f-a>
what a pain in the proverbial butt
Zarutian_HTC1 has joined #forth
Zarutian_HTC has quit [Write error: Connection reset by peer]
<mark4>
if asm is a PITA you need to simplify your code :)
<mark4>
asm is supposed to be trivial not complificated
<mark4>
its C thats a royal PITA
<f-a>
most likely I am approaching it in a bad way
<mark4>
thats ok because you learn :)
<mark4>
what processor are you writing it for?
<f-a>
x86-64
<mark4>
take a look at github.com/mark4th/x64
<mark4>
oh. are you ITC/DTC/STC?
<mark4>
mine is stc
<mark4>
and where you see xxx_b <-- the b specifies we are accessing the body address of an item
<f-a>
dtc
<mark4>
my macros define labels on the CFA and the body
<f-a>
no wait
<f-a>
the one where you put a link to the interpreter in the instuction section
<f-a>
what is it caleld
<mark4>
direct threaded, indirect threaded or subroutine threaded
<f-a>
the one used by jonesforth, indirect
* f-a
clones
<mark4>
i have never looked very much at jonesforth. i think he took a lot of my x4 code
<mark4>
p.s. thats not a criminal act :)
<f-a>
your code is very clean
f-a has quit [Quit: leaving]
f-a has joined #forth
dave0 has joined #forth
f-a has quit [Read error: Connection reset by peer]
f-a has joined #forth
f-a has quit [Client Quit]
f-a has joined #forth
Zarutian_HTC1 is now known as Zarutian_HTC
<kiedtl>
pardon my ignorance, but what's ITC/DTC/STC?