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