Hi,

On 10/08/2013 07:00 PM, developm...@decotrain.de wrote:
> Is this not possible with a smaller solution like this here ?
> http://www.avr-asm-tutorial.net/gavrasm/index_de.html
> http://www.avr-asm-tutorial.net/gavrasm/index_en.html
> 

So I look at this.

1.
This software is written in FreePascal.

2.
./gavrasm -h
+------------------------------------------------------------+
| gavrasm gerd's AVR assembler Version 3.3 (C)2012 by DG4FAC |
+------------------------------------------------------------+
                                                              
Calls: gavrasm [-ABEJLMQSWX] source[.asm]
       gavrasm [-?DHT]                   
                      
List of options:
  -L Listfile off            -M List macros
  -Q Quiet, no screen output -S Symbol list in listfile
  -B Beginners error comment -A Toggle ANSI output on command line
  -E Longer error comments   -D List all supported directives     
  -W Enable wrapping         -T List all supported AVR types 
  -X Internal def.inc off    -J Switch jump PC+X+1 to PC+X  
  -H -? List options (shows this)                         

gavrasm lacks the -I switch to specify a search path for files.

3.
So I cooked together a directory

mkdir tmp.gavrasm
cd tmp.gavrasm
cp ~/Forth/atmega/55_avra_4.6/. .  # this is a working amforth setup from 
appl/template
cp -a ~/Forth/amforth/releases/4.6/core/. .
cp -a devices/atmega32/. .

./gavrasm main.asm

gavrasm also lacks an option to specify the target controller directly.
I'm not sure that it guessed the correct (any?) target device.

This produces lengthy output, the interesting snippets being in main.err:

gavrasm Gerd's AVR assembler version 3.3 (C)2012 by DG4FAC
----------------------------------------------------------
Source file: main.asm
Hex file:    main.hex
Eeprom file: main.eep
Compiled:    08.10.2013, 19:24:02
Pass:        1
Error ==> .overlap
[device.asm,60] 067: Unknown directive!
Error ==> .nooverlap
[device.asm,102] 067: Unknown directive!
Error ==> .org $0000
[amforth.asm,6] 046: Origin adress (0) points backwards in code segment!
Error ==> .org pc_
[amforth.asm,8] 046: Origin adress (46) points backwards in code segment!
Error ==>     .db "\",0
[words/backslash.asm,6] 088: Illegal string constant ("\")!
Error ==>     .dw 'A'
[words/to-lower.asm,14] 049: No literals allowed in DW directive! Use DB 
instead!
Error ==>     .dw 'A'
[words/to-lower.asm,14] 050: No parameters found, expected words!
Error ==>     .dw 'Z'
[words/to-lower.asm,16] 049: No literals allowed in DW directive! Use DB 
instead!
Error ==>     .dw 'Z'
[words/to-lower.asm,16] 050: No parameters found, expected words!
Error ==> .org URXCaddr
[drivers/usart-isr-rx.asm,4] 046: Origin adress (26) points backwards in code 
segment!
Error ==> .org pc_
[drivers/usart-isr-rx.asm,6] 046: Origin adress (2860) points backwards in code 
segment!
Error ==>   
[words/umslashmod.asm,16] 079: Line not starting with a label, a directive or a 
separator!
Error ==>   adiw y, 1
[words/store-i_nrww.asm,96] 017: Register value (0) out of range 
(R24/26/28/30!)!
Error ==>   sbiw x, 1
[words/store-i_nrww.asm,97] 017: Register value (0) out of range (R24/26/28/30

so, this is as far as I got in 20 Minutes ...

Cheers,
Erich



------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
_______________________________________________
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