Hello. If your High fuse is set to 0xDC that is probably your problem. From what I see that gives you a 1k boot section and Amforth is probably trying to blast past that. I have some strange fails when I first flashed my 1284p chips. Checking with a fuse calculator it looks like that chip should be D9 for a 4k boot section.
Here is a link to the calculator I used. http://eleccelerator.com/fusecalc/fusecalc.php?chip=atmega2560&LOW=E0&HIGH=D9&EXTENDED=FC&LOCKBIT=FF Hope that is a bit helpful, Mark On Mon, May 24, 2021 at 11:47 AM tristan <h...@tjnw.co.uk> wrote: > Hi Michael, > > AmForth uses a dictionary to store the words it knows about. When > AmForth recognises it has received a word over the serial line it tries > to lookup that word in its dictionary. If it finds the word, it executes > that word. If it does not, then it reports an error. > > In the file marker.frt is the definition for the word marker. This word > will create a word that will manipulate the dictionary. See this link > below > > http://amforth.sourceforge.net/TG/recipes/Forget.html > > Your AmForth system is indeed corrupted (and will need to be > re-flashed). Why it has become corrupted needs some more investigation. > Perhaps there is a word that marker relies on that is missing from your > hex build, perhaps you made a typo when typing in the definition, > perhaps you have found a bug[a]. I would > > 1. Re-flash the board > 2. Connect over serial, check that word lists the dictionary, define a > trivial word e.g. : xx 1 + ; and check that it works and can be listed > in the dictionary. > 3. Use amforth-shell.py to load avr8/lib/forth2012/core-ext/marker.frt > 4. Repeat 2. > 5. Do the example in > http://amforth.sourceforge.net/TG/recipes/Forget.html > > Best wishes, > Tristan > > [a] I use marker very frequently on atmega328p but not on the atmega2560 > > > > On 2021-05-24 00:02, Michael Picco wrote: > > Thank you for that. > > Reading up on them yields: > > not found ... the position in the input line indicates the system > > choked on the word 'words'. > > > > words is part of the flashed system. > > > > This indicates (to me) that something got corrupted. I can only > > wonder if memory got overwritten somehow. Is there a setting required > > prior to flashing that I'm failing to set properly? > > > > Thanks in advance! > > > > On 5/22/2021 9:51 PM, George Herzog wrote: > >> There are AmForth error codes. Read up on them. > >> > >> On Sun, May 23, 2021, 12:42 Michael Picco <mpi...@placerville.me> > >> wrote: > >> > >>> Hello! > >>> > >>> I seem to have stumbled across an issue. > >>> > >>> First code I wrote was to blink the LED onboard. This worked just > >>> fine. > >>> Then I went to add 'marker'. Entered it line-by-line ... got the > >>> 'Ok' > >>> after each line. After adding the last line (semicolon), the board > >>> froze up. Did a warm boot and then executed 'words' to see what was > >>> there. It came back with ?? -13 5. > >>> > >>> What came to mind is perhaps not enough memory is allocated prior to > >>> flashing and I'm overwriting something I shouldn't. > >>> > >>> Any ideas? > >>> > >>> Kind regards, > >>> > >>> Michael > >>> > >>> On 5/21/2021 1:28 AM, tristan wrote: > >>>> Hi Michael, > >>>> > >>>> Apologies. My memory is failing me. > >>>> > >>>> The LED is on D13 for both UNO and MEGA, but D13 is mapped to PB5 > >>>> (PORTB bit 5) on the UNO and PB7 (PORTB bit 7) on the MEGA. > >>>> > >>>> Best wishes, > >>>> Tristan > >>>> > >>>> > >>>> On 2021-05-21 08:54, tristan wrote: > >>>>> Hi Michael, > >>>>> > >>>>>> I do not see the word 'marker' defined. Should it have been part > >>>>>> of > >>>>>> the basic system, or do I need to pull it from somewhere? > >>>>> It is not part of the basic system, it is defined in this file. > >>>>> > >>>>> avr8/lib/forth2012/core-ext/marker.frt > >>>>> > >>>>> Using marker is efficient/good practice/etc. but it is not a > >>>>> necessary > >>>>> requirement to do below. > >>>>> > >>>>>> Then I'd like to see about doing something real simple, like > >>>>>> turning > >>>>>> an LED on/off. It's sort of a hardware person's approach to > >>>>>> 'Hello > >>>>>> World!' :) > >>>>> http://amforth.sourceforge.net/TG/recipes/Arduino-HelloWorld.html > >>>>> > >>>>> IIRC the MEGA and UNO have the built-in led on the same pin (port > >>>>> bit). > >>>>> > >>>>> The definitions for the chip can be found in this file > >>>>> > >>>>> avr8/devices/atmega2560/atmega2560.frt > >>>>> > >>>>> These, or extracts from, will need to be loaded into the basic > >>>>> system. > >>>>> So longer term, being able to load forth definition > >>>>> non-interactively > >>>>> from a file is very useful. There are programs in the tools > >>>>> directory > >>>>> - amforth-shell.py being the one I use. > >>>>> > >>>>> > >>>>> Best wishes, > >>>>> Tristan > >>>>> > >>>>> > >>>>> > >>>>> On 2021-05-21 05:25, Michael Picco wrote: > >>>>>> Hello, > >>>>>> > >>>>>> As mentioned earlier, it's now working. > >>>>>> I do not see the word 'marker' defined. Should it have been part > >>>>>> of > >>>>>> the basic system, or do I need to pull it from somewhere? > >>>>>> Then I'd like to see about doing something real simple, like > >>>>>> turning > >>>>>> an LED on/off. It's sort of a hardware person's approach to > >>>>>> 'Hello > >>>>>> World!' :) > >>>>>> > >>>>>> Kind regards, > >>>>>> > >>>>>> Michael > >>>>>> K6MLE > >>>>>> > >>>>>> > >>>>>> On 5/20/2021 12:41 PM, Michael Picco wrote: > >>>>>>> I should add the following changes to Craig Lindley's write-up: > >>>>>>> > >>>>>>> Step 3: > >>>>>>> Under Win10, the correct file location for avrasm2.exe will be: > >>>>>>> c:\Program > >>>>>>> Files(86)\Atmel\Studio\7.0\toolchain\avr8\avrassembler\avrasm2.exe > >>>>>>> > >>>>>>> Also needed in the work directory isatmega256.asm and > >>>>>>> m2560def.inc > >>>>>>> > >>>>>>> The image of the directory structure didn't post to the list, so > >>>>>>> I'm showing it below (my work directory is called > >>>>>>> "amforth-ATmega2560-6.9": > >>>>>>> > >>>>>>> -- appl > >>>>>>> -- arm > >>>>>>> -- avr8 > >>>>>>> -- common > >>>>>>> -- doc > >>>>>>> -- examples > >>>>>>> -- msp430 > >>>>>>> -- risc-v > >>>>>>> -- shared > >>>>>>> -- tests > >>>>>>> -- tools > >>>>>>> -- words > >>>>>>> atmega256.asm > >>>>>>> avrasm2.exe > >>>>>>> device.asm (for the 2560) > >>>>>>> device.inc (for the 2560) > >>>>>>> dict_appl.inc > >>>>>>> dict_appl_core.inc > >>>>>>> LICENSE.txt > >>>>>>> m2560def.inc > >>>>>>> make.bat > >>>>>>> readme.txt > >>>>>>> uno.asm > >>>>>>> > >>>>>>> Hope this helps! > >>>>>>> > >>>>>>> Kind regards, > >>>>>>> > >>>>>>> Michael > >>>>>>> K6MLE > >>>>>>> > >>>>>>> > >>>>>>> On 5/20/2021 11:56 AM, Michael Picco wrote: > >>>>>>>> Hello All! > >>>>>>>> > >>>>>>>> I have finally had success! > >>>>>>>> It turns out that the .eep and .hex files I was flashing into > >>>>>>>> the > >>>>>>>> 2560 were corrupted! > >>>>>>>> I followed Craig Lindley's write-up with modifications for the > >>>>>>>> 2560. > >>>>>>>> Changed the make.bat file to read: avrasm2.exe -fI -o > >>>>>>>> atmega2560.hex -e atmega2560.eep -l atmega2560.lst -I > >>>>>>>> g:\amforth-atmega2560\common -I g:\amforth-atmega2560\avr8 -I > >>>>>>>> g:\amforth-atmega2560\avr8\drivers -I include -v0 atmega256.asm > >>>>>>>> > >>>>>>>> This is the resulting file structure prior to executing > >>>>>>>> make.bat: > >>>>>>>> > >>>>>>>> The fuse setting in Studio 7 were set as follows: > >>>>>>>> E: 0xFF, H: 0xDC, L:0xFF > >>>>>>>> > >>>>>>>> Programmed the fuses; set the new files up in Studio 7 for flash > >>>>>>>> and EEPROM; programmed the .hex and .eep files. > >>>>>>>> > >>>>>>>> Have a nice prompt for "amforth 6.9 ATmega2560 Forthduino" !!! > >>>>>>>> > >>>>>>>> I'm hoping this exercise might help others. > >>>>>>>> > >>>>>>>> Kind regards, > >>>>>>>> > >>>>>>>> Michael > >>>>>>>> K6MLE > >>>>>>>> > >>>>>>>> On 5/18/2021 8:51 AM, tristan wrote: > >>>>>>>>> Hello Michael, > >>>>>>>>> > >>>>>>>>> Getting AmForth up and running from archive hex files on a > >>>>>>>>> mega2560 is reasonably straightforward, however, I don't use > >>>>>>>>> Microchip Studio version 7 or win10 so I can't help with this > >>>>>>>>> tool set. I hope you able to translate the macos/linux to your > >>>>>>>>> tools - and if so a write-up would be very welcome! > >>>>>>>>> > >>>>>>>>> As pointed out you need a programmer (such as usbtiny, usbasp, > >>>>>>>>> avrisp2 etc.) and a program to talk to the programmer (such as > >>>>>>>>> avrdude). > >>>>>>>>> > >>>>>>>>> Both atmega2560.hex and atmega2560.eep.hex need to be written > >>>>>>>>> to > >>>>>>>>> the mega2560's flash/eeprom. Below are the command lines I use > >>>>>>>>> with avrdude > >>>>>>>>> > >>>>>>>>> avrdude -p m2560 -c usbtiny -U flash:w:atmega2560.hex:i > >>>>>>>>> avrdude -p m2560 -c usbtiny -U eeprom:w:atmega2560.eep.hex:i > >>>>>>>>> > >>>>>>>>> Flashing these file will overwrite any existing bootloader. It > >>>>>>>>> is > >>>>>>>>> worth considering whether you are able to reverse this should > >>>>>>>>> you > >>>>>>>>> wish to, before flashing the above files. > >>>>>>>>> > >>>>>>>>> If your mega2560 is an Arduino style board, and the default > >>>>>>>>> fuses > >>>>>>>>> unchanged, then IIRC there is no need to reprogram the fuses. > >>>>>>>>> > >>>>>>>>> Once the files have been flashed, you should be able to connect > >>>>>>>>> to the mega2560 over serial using 38400 8N1. I use minicom and > >>>>>>>>> amforth-shell.py You will need to identify the name of the > >>>>>>>>> serial > >>>>>>>>> device created by the USB to SERIAL chip on your board/setup to > >>>>>>>>> use any serial program. > >>>>>>>>> > >>>>>>>>> Once connected you have the AmForth interpreter prompt and can > >>>>>>>>> interact, compile new words, and generally use the system. > >>>>>>>>> However, AmForth is modular and not all functionality is > >>>>>>>>> contained in the flashed hex files. For I2C and SPI new words > >>>>>>>>> need to be defined. These definitions are already available > >>>>>>>>> within the archive, but need to be loaded onto a "new" AmForth > >>>>>>>>> system. I find amforth-shell.py very helpful for automating > >>>>>>>>> this > >>>>>>>>> process. > >>>>>>>>> > >>>>>>>>> The cookbook is a great place to see examples of how things can > >>>>>>>>> be done > >>>>>>>>> > >>>>>>>>> http://amforth.sourceforge.net/TG/Cookbook.html > >>>>>>>>> > >>>>>>>>> And for I2C, below is very helpful > >>>>>>>>> > >>>>>>>>> http://amforth.sourceforge.net/TG/recipes/I2C-Generic.html > >>>>>>>>> > >>>>>>>>> Let us know how you get on. > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> Best wishes, > >>>>>>>>> Tristan > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> > >>>>>>>>> On 2021-05-18 14:31, BK Navarette wrote: > >>>>>>>>>> Be careful, the fuse settings particularly the boot size is > >>>>>>>>>> different > >>>>>>>>>> for flash forth vs amforth. > >>>>>>>>>> > >>>>>>>>>> Brian > >>>>>>>>>> > >>>>>>>>>> On 5/18/21 5:30 AM, PETREMANN Marc wrote: > >>>>>>>>>>> Hello, > >>>>>>>>>>> I have not used Amforth > >>>>>>>>>>> But the installation mechanisms are the same as for > >>>>>>>>>>> FlashForth: > >>>>>>>>>>> > >>> > https://arduino-forth.com/article/FORTH_FlashForth_installation_installerFlashForth > >>>>>>>>>>> once FORTH is installed, you must write the programs in FORTH > >>>>>>>>>>> language and > >>>>>>>>>>> have them compile by FORTH on the ARDUINO card. > >>>>>>>>>>> FORTH is an interpreter and a compiler. We communicate with > >>>>>>>>>>> FORTH via > >>>>>>>>>>> terminal software: > >>>>>>>>>>> > >>> > https://arduino-forth.com/article/FORTH_FlashForth_installation_teraTerm > >>>>>>>>>>> Unless I'm mistaken, you need an MKII programmer, because you > >>>>>>>>>>> can only > >>>>>>>>>>> inject a .HEX file through this device. This operation > >>>>>>>>>>> overwrites the > >>>>>>>>>>> original bootloader. > >>>>>>>>>>> BR > >>>>>>>>>>> > >>>>>>>>>>> Le mar. 18 mai 2021 à 06:08, Michael Picco > >>>>>>>>>>> <mpi...@placerville.me> a écrit : > >>>>>>>>>>> > >>>>>>>>>>>> Hello, > >>>>>>>>>>>> > >>>>>>>>>>>> I am attempting to use the mega2560 as a nicely featured > >>>>>>>>>>>> development > >>>>>>>>>>>> platform for AmForth-6.9. The machine I'm using is a Win10 > >>>>>>>>>>>> box, with > >>>>>>>>>>>> Microchip Studio version 7 installed. > >>>>>>>>>>>> > >>>>>>>>>>>> In the zip file, under appl/atmega2561, I notice > >>>>>>>>>>>> atmega256.eep.hex and > >>>>>>>>>>>> atmega256.hex. The eep.hex file doesn't seem to get > >>>>>>>>>>>> recognized by > >>>>>>>>>>>> Studio 7. Do I need to rename it to just a ".eep" file? > >>>>>>>>>>>> > >>>>>>>>>>>> Can I start building the platform by flashing these files > >>>>>>>>>>>> into > >>>>>>>>>>>> the > >>>>>>>>>>>> board? If so, what is the process to add functionality > >>>>>>>>>>>> (I2C, > >>>>>>>>>>>> SPI, > >>>>>>>>>>>> etc.)? As a total newbie! > >>>>>>>>>>>> > >>>>>>>>>>>> If it's necessary to recompile and create new hex files, the > >>>>>>>>>>>> process is > >>>>>>>>>>>> unclear. Is it spelled out somewhere such that a beginner > >>>>>>>>>>>> can > >>>>>>>>>>>> follow > >>>>>>>>>>>> some basic steps to make the proper file(s)? > >>>>>>>>>>>> > >>>>>>>>>>>> It is my understanding that both flash and EEPROM need to be > >>>>>>>>>>>> written, > >>>>>>>>>>>> along with the fuses, [E:0xFF, H: 0xDC, L:0xFF]. Do I have > >>>>>>>>>>>> these correct? > >>>>>>>>>>>> > >>>>>>>>>>>> Once I get this figured out, I'd like to submit a write-up > >>>>>>>>>>>> for > >>>>>>>>>>>> newbies > >>>>>>>>>>>> and perhaps draw more users into AmForth. How might I get > >>>>>>>>>>>> this posted, > >>>>>>>>>>>> when completed? > >>>>>>>>>>>> > >>>>>>>>>>>> Thank you in advance! > >>>>>>>>>>>> > >>>>>>>>>>>> Kind regards, > >>>>>>>>>>>> > >>>>>>>>>>>> Michael > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> > >>>>>>>>>>>> _______________________________________________ > >>>>>>>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>>>>>>>> > >>>>>>>>>>> _______________________________________________ > >>>>>>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>>>>>> > >>>>>>>>>> _______________________________________________ > >>>>>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>>>>> > >>>>>>>>> _______________________________________________ > >>>>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>>>> > >>>>>>>> > >>>>>>>> _______________________________________________ > >>>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>>> > >>>>>>> > >>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>>> Amforth-devel@lists.sourceforge.net > >>>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>>> > >>>>>> > >>>>>> > >>>>>> _______________________________________________ > >>>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>>> Amforth-devel@lists.sourceforge.net > >>>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>>> > >>>>> _______________________________________________ > >>>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>>> Amforth-devel@lists.sourceforge.net > >>>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>>> > >>>> _______________________________________________ > >>>> Amforth-devel mailing list for http://amforth.sf.net/ > >>>> Amforth-devel@lists.sourceforge.net > >>>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >>> > >>> > >>> _______________________________________________ > >>> Amforth-devel mailing list for http://amforth.sf.net/ > >>> Amforth-devel@lists.sourceforge.net > >>> https://lists.sourceforge.net/lists/listinfo/amforth-devel > >>> > >> _______________________________________________ > >> Amforth-devel mailing list for http://amforth.sf.net/ > >> Amforth-devel@lists.sourceforge.net > >> https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > > > > > > > > _______________________________________________ > > Amforth-devel mailing list for http://amforth.sf.net/ > > Amforth-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/amforth-devel > > > _______________________________________________ > Amforth-devel mailing list for http://amforth.sf.net/ > Amforth-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/amforth-devel > _______________________________________________ Amforth-devel mailing list for http://amforth.sf.net/ Amforth-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/amforth-devel