On 08.09.2021 08:06, Tristan Williams wrote:
Hi Helge,

I don't use studio, but from the command line you give below

avrasm2.exe -fI -o my.hex -e my.eep -S my.tmp -W+ie -I"D:/Program Files
(x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.6.364\avrasm\inc"
-I"amforth-6.9\avr8" -I"amforth-6.9\avr8\devices\atmega32"
-I"amforth-6.9\appl\arduino" -I"amforth-6.9\common" -im32def.inc -d
"Debug\myprog_m32.obj" "main.asm" -I "D:\Program Files
(x86)\Atmel\Studio\7.0\toolchain\avr8\avrassembler\Include"

it looks like it is including files from the devices\atmega32
directory and using m32def.inc which are associated with the atmega32
chip rather than the atmega328p. Somewhere the target device needs to
be set to an atmega328p.

This is a good point! With the correct include path I get a working,
self-compiled amForth. Further I removed the -im32def.inc. The file is
included in the amForth sources anyway.

Thank you.

Now I want to take the second step, build for ATmega2560. I use nearly
the same avrsam2 command line, but changed the include path from
    amforth-6.9\avr8\devices\atmega32
to
    amforth-6.9\avr8\devices\atmega2560

avrasm2.exe -fI -o my2560.hex -e my2560.eep -S my2560.tmp -W+ie
-I"amforth-6.9\avr8" -I"amforth-6.9\avr8\devices\atmega2560"
-I"amforth-6.9\appl\arduino" -I"amforth-6.9\common" -d
"Debug\my2560.obj"  "main.asm"  -I "D:\Program Files
(x86)\Atmel\Studio\7.0\toolchain\avr8\avrassembler\Include"

Now I get several errors like:
error: Overlap in .cseg: addr=0x1f000 conflicts with 0x1f000:0x1f396
error: Overlap in .cseg: addr=0x1f001 conflicts with 0x1f000:0x1f396
...
error: Overlap in .cseg: addr=0x1f03e conflicts with 0x1f000:0x1f396

Shouldn't this compile out of the box?
I am also curious about this range 0x1f000:0xf1396.

Best regards,
Helge


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

Reply via email to