The other possibility is that it is not a valid address that the processor can access which could cause an exception
On Mon, Jan 5, 2026 at 12:18 PM John Sarabacha <[email protected]> wrote: > So when you execute X @ you are trying to indirectly read from the > address 0xAABBCCDD > which could cause an exception > > On Mon, Jan 5, 2026 at 12:08 PM Martin Kobetic <[email protected]> wrote: > >> 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 >> > _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ [email protected] https://lists.sourceforge.net/lists/listinfo/amforth-devel
