Thank you Tristan, That would explain alot. When I saw that itype was undefined on gforth & ESP32Forth for initial quick testing, I commented it out without thinking (me bad - I should have known better by now). I should have defined it properly for 32 bit.
Thanks again John S PS: I couldn't believe the price on CH32V307 dev boards so I ordered a few https://www.aliexpress.com/item/1005009417544259.html?spm=a2g0o.order_list.order_list_main.4.448c18021QAp1G On Sun, Jan 4, 2026 at 4:12 PM <[email protected]> wrote: > Hi John, > > > Do the testing words t{...}t work properly on your amForth on CH32V307 > > ? > > Yes. If I #include common/lib/forth2012/tester/tester-amforth.frt and > give > it some simple tests. > > |S| 3|t{ 0 0 = -> true }t > |S| 4|t{ 1 1 = -> true }t > |S| 5|t{ -1 -1 = -> true }t > |S| 6|t{ 1 0 = -> false }t > |S| 7|t{ -1 0 = -> false }t > |S| 8|t{ 0 1 = -> false }t > |S| 9|t{ 0 -1 = -> false }t > |C| 10|\ and now one that is a deliberate error > |S| 11|t{ $a 0 = -> true }t > |O| 11|INCORRECT RESULT: t{ $a 0 = -> true }t > > The responses are correct. Will it properly pass all the tests as > given below? No. > > [1] https://github.com/gerryjackson/forth2012-test-suite > > Some it will never pass because of the memory organisation, some because > the words are not applicable and some because they are (currently) just > missing. > > > In my testing I have found that these words don't work properly in > > a 32 bit Forth be it RISCV (ESP32Forth) or even I386 (gForth - Linux ). > > These words weren't giving an error even if the test was obvious to > > give an error message (false positive). > > I don't have any of these 32 bit Forths to hand but IIRC > tester-amforth.frt > is a modified version of tester.fr (see [1]), so that it could run on > AmForth. From tester-amforth.frt, the word below > > : ERROR \ ( C-ADDR U -- ) DISPLAY AN ERROR MESSAGE FOLLOWED BY > \ THE LINE THAT HAD THE ERROR. > itype source type cr \ DISPLAY LINE CORRESPONDING TO ERROR > EMPTY-STACK \ THROW AWAY EVERY THING ELSE > ; > > uses itype which is an AmForth word, one I would not expect to be in > ESP32Forth. I would be surprised if it would work correctly on an > ESP32Forth. I also would not expect tester-amforth.frt to work at all on > the unmodified AmForth RISC-V svn repo source because of its > experimental > status[2]. It will, however, work perfectly on AmForth avr8. As an > aside, > AmForth's avr8 heritage, born of the capabilities of ATmega mcus, > ripples through the codebase. Something that has caught me out a few > times in my AmForth RISC-V endeavours. > > > Best wishes, > Tristan > > [2] https://sourceforge.net/p/amforth/mailman/message/36511255/ > > > On 2026-01-04 17:40, John Sarabacha wrote: > > Hi Tristan, > > Do the testing words t{...}t work properly on your amForth on CH32V307 > > ? > > These were found in tester-amforth.frt used for Avr8. In my testing I > > have > > found that these words don't work properly in a 32 bit Forth be it > > RISCV > > (ESP32Forth) or even I386 (gForth - Linux ). These words weren't giving > > an > > error even if the test was obvious to give an error message (false > > positive). > > > > Thanks, > > John S > > > > _______________________________________________ > > 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 > _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ [email protected] https://lists.sourceforge.net/lists/listinfo/amforth-devel
