Re: [Amforth] template.hex can't be build with MCU=atmega8

2020-08-14 Thread Malte Frank Gerdes
Reading the mailing list archive it seems that those errors happen and
most of the time it's difficult to know where they come from. I found
that it is possible to ignore those Overlaps with -O i. Now i get
different errors which at least make sense to me.


../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\macros.asm(101): error: call k: Unsupported instruction on ATmega8
../../avr8\macros.asm(94): error: jmp k: Unsupported instruction on ATmega8
../../avr8\amforth.asm(19): error: RWW Segment Overflow, please edit your 
dict_appl.inc
../../avr8\macros.asm(101): error: call k: Unsupported instruction on ATmega8
../../avr8\words/d-lesszero.asm(14): error: jmp k: Unsupported instruction on 
ATmega8
../../avr8\words/d-lesszero.asm(15): error: jmp k: Unsupported instruction on 
ATmega8


Looking at the svn history this macro was introduced in 2011, the 4.2
release at least builds for the atmega8 when the trailing zeroes are
removed from the usart definitions in template.asm. Even then the
resulting resource usage is 118% of available flash memory.

The dict_appl.inc file used is empty, so i'm not sure what to modify
there, because as i understand it this file is meant to include extra
words.

Does that mean that it is practically impossible to use amforth on an
atmega8? If not, are there some example projects using it (i haven't
found any)?


Malte


___
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel


Re: [Amforth] template.hex can't be build with MCU=atmega8

2020-08-14 Thread Malte Frank Gerdes
[Sorry for double posting the question i didn't know that it gets sent
automtically after subscribing to the list :(]

Thanks for the info, i completely ignored the warnings and didn't search
for it, because of the errors. So with your suggestion the warnings are
gone, but the Overlap errors are still the same.


Malte


___
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel


Re: [Amforth] template.hex can't be build with MCU=atmega8

2020-08-14 Thread Martin Nicholas via Amforth-devel


In template.asm, a better bet might be:
> ; define which usart to use.
> .include "drivers/usart.asm"

See also:
http://amforth.sourceforge.net/TG/recipes/Usart.html

On Fri, 14 Aug 2020 13:17:13 +0200
Malte Frank Gerdes  wrote:
> Hi,
> 
> this is the first time i'm using amforth. I followed
> http://amforth.sourceforge.net/UG/linux.html to get amforth and tried
> to build the template.hex file for an atmega8. I also tried a
> snapshot of r2450, which has the same error. The template.lst file
> contains this:
> 
> AVRASM ver. 2.1.52  template.asm Fri Aug 14 13:00:33 2020
> 
> template.asm(14): Including file '../../avr8\preamble.inc'
> ../../avr8\preamble.inc(2): Including file '../../avr8\macros.asm'
> ../../avr8\macros.asm(6): Including file '../../avr8\user.inc'
> ../../avr8\preamble.inc(6): Including file
> '../../avr8/devices/atmega8\device.asm'
> ../../avr8/devices/atmega8\device.asm(5): Including file
> '../../avr8/Atmel/Appnotes2\m8def.inc' template.asm(53): Including
> file '../../avr8\drivers/usart_0.asm'



-- 
Regards,

Martin Nicholas.

E-mail: m...@mgn.org.uk.


___
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel


[Amforth] template.hex can't be build with MCU=atmega8

2020-08-14 Thread Malte Frank Gerdes
Hi,

this is the first time i'm using amforth. I followed
http://amforth.sourceforge.net/UG/linux.html to get amforth and tried to
build the template.hex file for an atmega8. I also tried a snapshot of
r2450, which has the same error. The template.lst file contains this:

AVRASM ver. 2.1.52  template.asm Fri Aug 14 13:00:33 2020

template.asm(14): Including file '../../avr8\preamble.inc'
../../avr8\preamble.inc(2): Including file '../../avr8\macros.asm'
../../avr8\macros.asm(6): Including file '../../avr8\user.inc'
../../avr8\preamble.inc(6): Including file 
'../../avr8/devices/atmega8\device.asm'
../../avr8/devices/atmega8\device.asm(5): Including file 
'../../avr8/Atmel/Appnotes2\m8def.inc'
template.asm(53): Including file '../../avr8\drivers/usart_0.asm'
../../avr8\drivers/usart_0.asm(1): warning: Use of undefined or forward
referenced symbol 'UBRR0L' in .equ/.set
../../avr8\drivers/usart_0.asm(2): warning: Use of undefined or forward
referenced symbol 'UBRR0H' in .equ/.set
../../avr8\drivers/usart_0.asm(3): warning: Use of undefined or forward
referenced symbol 'UCSR0C' in .equ/.set
../../avr8\drivers/usart_0.asm(4): warning: Use of undefined or forward
referenced symbol 'UCSR0B' in .equ/.set
../../avr8\drivers/usart_0.asm(5): warning: Use of undefined or forward
referenced symbol 'UCSR0A' in .equ/.set
../../avr8\drivers/usart_0.asm(12): warning: Use of undefined or forward
referenced symbol 'RXC0' in .equ/.set
../../avr8\drivers/usart_0.asm(13): warning: Use of undefined or forward
referenced symbol 'UDRE0' in .equ/.set
../../avr8\drivers/usart_0.asm(14): warning: Use of undefined or forward
referenced symbol 'TXEN0' in .equ/.set
../../avr8\drivers/usart_0.asm(15): warning: Use of undefined or forward
referenced symbol 'RXEN0' in .equ/.set
../../avr8\drivers/usart_0.asm(16): warning: Use of undefined or forward
referenced symbol 'RXCIE0' in .equ/.set
../../avr8\drivers/usart_0.asm(17): warning: Use of undefined or forward
referenced symbol 'UDRIE0' in .equ/.set
../../avr8\drivers/usart_0.asm(32): Including file 
'../../avr8\drivers/usart_common.asm'
../../avr8\drivers/usart_common.asm(11): Including file 
'../../avr8\drivers/usart-rx-buffer.asm'
../../avr8\drivers/usart_common.asm(24): Including file 
'../../avr8\words/usart-tx-poll.asm'
../../avr8\drivers/usart_common.asm(29): Including file 
'../../avr8\words/ubrr.asm'
../../avr8\drivers/usart_common.asm(30): Including file 
'../../avr8\words/usart.asm'
template.asm(124): Including file '../../avr8\amforth.asm'
../../avr8\amforth.asm(12): Including file '../../avr8\drivers/generic-isr.asm'
../../avr8\amforth.asm(14): Including file '../../avr8\dict/rww.inc'
../../avr8\dict/rww.inc(1): Including file '../../avr8\words/mplus.asm'
../../avr8\dict/rww.inc(2): Including file '../../common\words/ud-star.asm'
../../avr8\dict/rww.inc(3): Including file '../../common\words/umax.asm'
../../avr8\dict/rww.inc(4): Including file '../../common\words/umin.asm'
../../avr8\dict/rww.inc(5): Including file '../../avr8\words/immediate-q.asm'
../../avr8\dict/rww.inc(6): Including file '../../avr8\words/name2flags.asm'
../../avr8\dict/rww.inc(7): Including file '../../avr8\words/1ms.asm'
../../avr8\dict/rww.inc(14): Including file '../../avr8\dict/appl_2k.inc'
../../avr8\dict/appl_2k.inc(1): Including file '../../avr8\words/d-2star.asm'
../../avr8\dict/appl_2k.inc(2): Including file '../../avr8\words/d-2slash.asm'
../../avr8\dict/appl_2k.inc(3): Including file '../../avr8\words/d-plus.asm'
../../avr8\dict/appl_2k.inc(4): Including file '../../avr8\words/d-minus.asm'
../../avr8\dict/appl_2k.inc(5): Including file '../../avr8\words/d-invert.asm'
../../avr8\dict/appl_2k.inc(6): Including file '../../common\words/u-dot.asm'
../../avr8\dict/appl_2k.inc(7): Including file '../../common\words/u-dot-r.asm'
../../avr8\dict/appl_2k.inc(9): Including file 
'../../common\words/show-wordlist.asm'
../../avr8\dict/appl_2k.inc(10): Including file '../../common\words/words.asm'
../../avr8\dict/appl_2k.inc(11): Including file '../../avr8\dict/interrupt.inc'
../../avr8\dict/interrupt.inc(5): Including file '../../avr8\words/irqcnt.asm'
../../avr8\dict/interrupt.inc(6): Including file '../../avr8\words/int-num.asm'
../../avr8\dict/interrupt.inc(9): Including file '../../avr8\words/int-on.asm'
../../avr8\dict/interrupt.inc(10): Including file '../../avr8\words/int-off.asm'
../../avr8\dict/interrupt.inc(11): Including file 
'../../avr8\words/int-store.asm'
../../avr8\dict/interrupt.inc(12): Including file 
'../../avr8\words/int-fetch.asm'
../../avr8\dict/interrupt.inc(13): Including file 
'../../avr8\words/int-trap.asm'
../../avr8\dict/interrupt.inc(15): Including file 
'../../avr8\words/isr-exec.asm'
../../avr8\dict/interrupt.inc(16): Including file '../../avr8\words/isr-end.asm'
../../avr8\dict/appl_2k.inc(13): Including file '../../common\words/pick.asm'
../../avr8\dict/appl_2k.inc(14): Including file 
'../../common\words/dot-quote.asm'
../../avr8\dict/appl_2k.inc(15): Including file