From: Enoch <ix...@ho...> - 2012-09-30 20:10:29
|
Hi, Using Debian I am trying the latest amforth svn code with Olimex AVR-CAN board which is AT90CAN128 based. I passed the avra hurdle using git code with a small device.c patch. Now loading the board I see it emitting gibberish ... Is there a way to debug under Linux? Thanks, Enoch. |
From: Matthias T. <mt...@we...> - 2012-10-01 17:33:12
|
Enoch, > I passed the avra hurdle using git code with a small device.c patch. Now > loading the board I see it emitting gibberish ... Did you check the serial line settings? amforth uses 9600 or 38400 8N1 > Is there a way to debug under Linux? debugging serial lines? or let amforth run under debugger control? Both is at least very difficult to impossible (IMHO). avarice is a command line tool to connect an JTAG enabled atmega to gdb. Never used it myself... Matthias |
From: Enoch <ix...@ho...> - 2012-10-01 20:17:43
|
Thanks, Matthias. I made some progress by switching over to AVR Studio 4 (as I have yet a JTAG MkI). Conclusion, avra is buggy (at least my git patched at90can128 code) while avrasm2.exe seems to work. Working under Windows is not something most Linux guys (like me) desire. We would have preferred the asm code to be avr-gcc compatible for our avr-gdb and other tools pleasure. Anyway, my idea is to prepare Amforth as a boot section permanent code in a product. Would enable the customer to easily run post production tests, etc. Will report progress if there is any :-) Thanks, Enoch. P/S Could you affiliate the project with an official git repository? That would make it easier to contribute code. github, for example, is free to open source projects. On 10/01/2012 01:33 PM, Matthias Trute wrote: > Enoch, > >> I passed the avra hurdle using git code with a small device.c patch. Now >> loading the board I see it emitting gibberish ... > > Did you check the serial line settings? amforth uses 9600 or 38400 8N1 > > >> Is there a way to debug under Linux? > > debugging serial lines? or let amforth run under > debugger control? Both is at least very difficult > to impossible (IMHO). avarice is a command line > tool to connect an JTAG enabled atmega to gdb. Never > used it myself... > > Matthias |
From: Ian J. <ij...@sa...> - 2012-10-01 22:35:35
|
Hi Enoch, I'm out of my league here but you might look at the recent Avra-user threads on the subject of avra with amforth if you have not already. Erich Waelde <ew....@na...> and Marcin Cieslak <sa...@sa...> are discussing this frequently and recently. Some time ago I had good luck with Avra and amforth but since both amforth and Avra are under active development… Ian On 2012-10-01, at 4:19 PM, Enoch wrote: > Working under Windows is not something most Linux guys (like me) desire. > We would have preferred the asm code to be avr-gcc compatible for our > avr-gdb and other tools pleasure. |
From: Matthias T. <mt...@we...> - 2012-10-02 18:43:00
|
Hi, > Working under Windows is not something most Linux guys (like me) desire. > We would have preferred the asm code to be avr-gcc compatible for our > avr-gdb and other tools pleasure. Tastes differ. > P/S Could you affiliate the project with an official git repository? Not currently. Subversion does what I want it to do. > That would make it easier to contribute code. I use git for my internal developments (including amforth), feel free to send me your ideas/patches/... > github, for example, is free to open source projects. So is Sourceforge. Matthias |
From: Enoch <ix...@ho...> - 2012-10-02 20:50:09
|
Thanks for your work, Matthias. Enoch. FYI, using the same code base: Amforth with avrasm2.exe builds a functional code: "AT90CAN128" memory use summary [bytes]: Segment Begin End Code Data Used Size Use% --------------------------------------------------------------- [.cseg] 0x000000 0x01e7ca 1930 8558 10488 131072 8.0% [.dseg] 0x000100 0x0001f3 0 243 243 4096 5.9% [.eseg] 0x000000 0x000052 0 82 82 4096 2.0% Assembly complete, 0 errors. 0 warnings but not when using the Linux avra version: avra -fI -I ../../Atmel/Appnotes2 -I ../../core -o iob4.hex -d iob4.obj -e iob4.eep.hex -l iob4.lst -m iob4.map iob4.asm AVRA: advanced AVR macro assembler Version 1.3.0 Build 2 (25 Sept 2012) Copyright (C) 1998-2010. Check out README file for more info Pass 2... ../../core/words/brackettick.asm(6) : Warning : A .DB segment with an odd number of bytes is detected. A zero byte is added. ../../core/words/tick.asm(6) : Warning : A .DB segment with an odd number of bytes is detected. A zero byte is added. done Assembly complete with no errors (2 warnings). Segment usage: Code : 4247 words (8494 bytes) Data : 243 bytes EEPROM : 82 bytes On 10/02/2012 02:42 PM, Matthias Trute wrote: > Hi, > >> Working under Windows is not something most Linux guys (like me) desire. >> We would have preferred the asm code to be avr-gcc compatible for our >> avr-gdb and other tools pleasure. > > Tastes differ. > >> P/S Could you affiliate the project with an official git repository? > > Not currently. Subversion does what I want it to do. > >> That would make it easier to contribute code. > > I use git for my internal developments (including amforth), feel free to > send me your ideas/patches/... > >> github, for example, is free to open source projects. > > So is Sourceforge. > > Matthias > > > ------------------------------------------------------------------------------ > Don't let slow site performance ruin your business. Deploy New Relic APM > Deploy New Relic app performance management and know exactly > what is happening inside your Ruby, Python, PHP, Java, and .NET app > Try New Relic at no cost today and get our sweet Data Nerd shirt too! > http://p.sf.net/sfu/newrelic-dev2dev |
From: Erich W. <ew....@na...> - 2012-10-03 08:27:21
|
Hi Enoch, as Ian has mentioned, there is discussion on the avr...@li... list, too. avra is currently missing correct handling of "forward references". -> change "jmp_" to "jmp" in amforth.asm to work around that. avra is also not using the parameter "ram_start", which is given in the device information. See the workaround given in http://sourceforge.net/mailarchive/forum.php?thread_name=50684CCD.9070001%40nassur.net&forum_name=avra-user With these in place I was able to produce working .hex files for atmega644p controllers (amforth-4.9). Help to improve avra is certainly welcome. Cheers, Erich On 10/02/2012 10:51 PM, Enoch wrote: > Thanks for your work, Matthias. Enoch. > > FYI, using the same code base: > > Amforth with avrasm2.exe builds a functional code: > > "AT90CAN128" memory use summary [bytes]: > Segment Begin End Code Data Used Size Use% > --------------------------------------------------------------- > [.cseg] 0x000000 0x01e7ca 1930 8558 10488 131072 8.0% > [.dseg] 0x000100 0x0001f3 0 243 243 4096 5.9% > [.eseg] 0x000000 0x000052 0 82 82 4096 2.0% > > Assembly complete, 0 errors. 0 warnings > > but not when using the Linux avra version: > > avra -fI -I ../../Atmel/Appnotes2 -I ../../core -o iob4.hex -d iob4.obj > -e iob4.eep.hex -l iob4.lst -m iob4.map iob4.asm > AVRA: advanced AVR macro assembler Version 1.3.0 Build 2 (25 Sept 2012) > Copyright (C) 1998-2010. Check out README file for more info > > > Pass 2... > ../../core/words/brackettick.asm(6) : Warning : A .DB segment with an > odd number of bytes is detected. A zero byte is added. > ../../core/words/tick.asm(6) : Warning : A .DB segment with an odd > number of bytes is detected. A zero byte is added. > done > > > Assembly complete with no errors (2 warnings). > Segment usage: > Code : 4247 words (8494 bytes) > Data : 243 bytes > EEPROM : 82 bytes > > > > On 10/02/2012 02:42 PM, Matthias Trute wrote: >> Hi, >> >>> Working under Windows is not something most Linux guys (like me) desire. >>> We would have preferred the asm code to be avr-gcc compatible for our >>> avr-gdb and other tools pleasure. >> >> Tastes differ. >> >>> P/S Could you affiliate the project with an official git repository? >> >> Not currently. Subversion does what I want it to do. >> >>> That would make it easier to contribute code. >> >> I use git for my internal developments (including amforth), feel free to >> send me your ideas/patches/... >> >>> github, for example, is free to open source projects. >> >> So is Sourceforge. >> >> Matthias >> >> >> ------------------------------------------------------------------------------ >> Don't let slow site performance ruin your business. Deploy New Relic APM >> Deploy New Relic app performance management and know exactly >> what is happening inside your Ruby, Python, PHP, Java, and .NET app >> Try New Relic at no cost today and get our sweet Data Nerd shirt too! >> http://p.sf.net/sfu/newrelic-dev2dev > > > > ------------------------------------------------------------------------------ > Don't let slow site performance ruin your business. Deploy New Relic APM > Deploy New Relic app performance management and know exactly > what is happening inside your Ruby, Python, PHP, Java, and .NET app > Try New Relic at no cost today and get our sweet Data Nerd shirt too! > http://p.sf.net/sfu/newrelic-dev2dev > _______________________________________________ > Amforth-devel mailing list for http://amforth.sf.net/ > Amf...@li... > https://lists.sourceforge.net/lists/listinfo/amforth-devel |
From: Matthias T. <mt...@we...> - 2012-10-03 13:54:22
|
Enoch, > Pass 2... > ../../core/words/brackettick.asm(6) : Warning : A .DB segment with an > odd number of bytes is detected. A zero byte is added. > ../../core/words/tick.asm(6) : Warning : A .DB segment with an odd > number of bytes is detected. A zero byte is added. > done Strange. The zero padding bytes are definitly there. .dw $ff01 .db "'",0 and .dw $0003 .db "[']",0 Maybe the mixture of " and ' confuses avra. Could you check whether the generated code is ok? (lst file) Matthias |