Hello Richard,
disclaimer: I do not use Windows myself ...
> I create a batch file, make.bat, containing the following line:
> avrasm2.exe -fI -o myproj.hex -e myproj.eep -l myproj.lst -I .\ -I
> amforth\common -I amforth\avr8 -I include -v0 myproj.asm
>
> My project structure now looks like
> Directory of E:\amforth
>
> 21/07/2017 01:40 PM <DIR> .
> 21/07/2017 01:40 PM <DIR> ..
> 01/05/2017 02:09 AM <DIR> appl
> 21/07/2017 12:41 PM <DIR> Appnotes2
> 01/05/2017 02:13 AM <DIR> avr8
> 18/06/2012 09:47 PM 410,112 avrasm2.exe
> 01/05/2017 02:09 AM <DIR> common
> 26/07/2012 02:50 AM 2,233 device.asm
> 26/07/2012 02:50 AM 15,724 device.inc
> 06/12/2014 02:56 AM 197 dict_appl.inc
> 19/05/2014 11:47 PM 60 dict_appl_core.inc
> 01/05/2017 02:12 AM <DIR> doc
> 01/05/2017 02:09 AM <DIR> examples
> 29/10/2014 04:17 AM 35,147 LICENSE.txt
> 21/07/2017 01:39 PM 124 make.bat
> 21/07/2017 01:15 PM 577 Myproj.asm
> 21/07/2017 01:40 PM 1,200 myproj.lst
> 27/06/2016 02:46 AM 1,944 readme.txt
> 01/05/2017 02:09 AM <DIR> tests
> 01/05/2017 02:12 AM <DIR> tools
> 19/05/2014 02:29 AM 361 uno.asm
> 21/07/2017 01:33 PM <DIR> words
>
> When I run make.bat from the command prompt I get:
> E:\amforth>make
>
> E:\amforth>avrasm2.exe -fI -o myproj.hex -e myproj.eep -l myproj.lst -I .\
> -I amforth\common -I amforth\avr8 -I include -v0 myproj.asm
> avr8\preamble.inc(2): error: Cannot find include file: macros.asm
> myproj.asm(16): error: Cannot find include file: words\usart_0.asm
> avr8\amforth.asm(9): error: jmp_: Unknown instruction or macro
> avr8\amforth.asm(9): error: PFA_COLD: Unknown instruction or macro
> avr8\amforth.asm(12): error: Cannot find include file:
> drivers/generic-isr.asm
> avr8\amforth.asm(14): error: Cannot find include file: dict/rww.inc
> dict_appl.inc(4): error: Cannot find include file: dict/compiler2.inc
> avr8\amforth.asm(23): error: Cannot find include file:
> amforth-interpreter.asm
> avr8\amforth.asm(24): error: Cannot find include file: dict/nrww.inc
> avr8\amforth.asm(36): error: Cannot find include file: amforth-eeprom.inc
>
avrasm2.exe does not find macros.asm.
macros.asm lives in ".../avr8/".
According to your structure that should be
"e:/amforth/avr8/macros.asm"
However, the -I (include) directives in your batch file do not
reflect this location. Since make.bat is located in "e:/amforth"
the include paths should probably read
> avrasm2.exe -fI -o myproj.hex -e myproj.eep -l myproj.lst -I .\ -I> .\common
> -I .\avr8 -I .\include -v0 myproj.asm
That being said, I do not see any advantage in rearranging the
tree. If you checkout amforth (or extract it from a tar ball)
the you should have this tree
+-- e:/amforth
+-- LICENSE.txt
+-- appl/
| +-- arduino/
| +-- ...
| +-- template/
| +-- my_project <-- copy of arduino
+-- avr8/
+-- common/
+-- doc/
+-- examples/
+-- msp430/
+-- readme.txt
+-- tests/
+-- tools/
I would highly recommend to create a copy of "arduino" or
"template" called my_project_1 (or whichever name seems
appropriate) and then change things in this new directory. The
-I directives should then read similar to
> avrasm2.exe ... -I ../../avr8/ -I ../../common/
because your project directory is two levels below "e:/amforth"
Hope this helps.
Cheers,
and welcome to AmForth!
Erich
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Amforth-devel mailing list for http://amforth.sf.net/
[email protected]
https://lists.sourceforge.net/lists/listinfo/amforth-devel