On Mon, Jan 5, 2026 at 11:51 AM John Sarabacha <[email protected]> wrote:
> Still learning forth , programmed in many other languages (alot of > assembler) > variable X > $AABBCCDD X ! > X @ > > However tell me if I am wrong, you are creating a variable definition for X > you are setting this variable X to the address $AABBCCDD and then trying to > read a value from this > address on to the tos. Almost. The second line is storing value 0xAABBCCDD at the address represented by variable X. It is the word `variable` in previous line that allocates memory for the variable and associates the corresponding address with a new word `X` that simply pushes that address onto the stack when executed. In the test run I quoted above --- > X ok > .s 5 200002B8 200002C4 200002A8 20000288 8 ok --- The address represented by the variable was 0x200002B8, so it was 8-byte aligned, so should be ok alignment-wise. But your hypothesis with alignment issues seems definitely worth checking out as well. Your warning about the fault interrupts is certainly worth heeding, I don't think we do much there on the ARM side. Another thing to follow up on. _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ [email protected] https://lists.sourceforge.net/lists/listinfo/amforth-devel
