Greetings,
having got amforth running on an arduino nano, I wanted to use *marker*
(I'm using italics for amforth words).  Actually I want to use *anew*, but
that requires *marker*.

So I #included marker.frt, then did *marker* -*empty*-. got the prompt
back, but when I then typed *words*, I got " ?? -13 5".

I tried a few other words, same result, numbers however, were accepted
without complaint.

I then did the "make install", #include mymarker.frt (a sucessivly
truncated version of marker), got the same result, rinse and repeat, until
removing *does>* stopped crashing amforth.

OK, so the problem is in does>, so rather than playing with marker, I
created the most basic word that uses *does>*.

*: const create , does> @i ;*  (straight out of the cookbook).  Same
problem, it compiles ok, but when I do

*42 const ltuae  *now I'm back to the same " ?? -13 x" problem (x obviously
varies depending on the word I type).

The symptoms make me think executing does> fouls up *dp*, or *newest*, or
maybe something used by *get-current*.  But what do I know?

So I look at the source (does.asm), paper traced through XT_DODOES, makes
sense, looks like it does what the comments indicate it should.  So I
looked at DO_DODOES, and I have no idea, last time I did any assembler was
in the 1980s on a Z80.  So I'm lost.

Copy of last amshell session is here https://pastebin.com/L60vNSrY

Thanks for reading, hopefully someone can help.

Nigel




-- 
Nigel Rowe

_______________________________________________
Amforth-devel mailing list for http://amforth.sf.net/
[email protected]
https://lists.sourceforge.net/lists/listinfo/amforth-devel

Reply via email to