## ASM (also C now..but not really) project import issue

7 posts / 0 new
Author
Message

When an AS4 ASM project is imported into a different AS6 ASM project folder only the .asm file is imported.

Other files like .inc and .h are not imported into the folder.

Example project included if anyone want to see what I mean. Manually copying the files allows the project to be assembled.

The import should copy everything but files generated by AS4 like .lst or .hex or .aws etc.

## Attachment(s):

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

Last Edited: Fri. Sep 28, 2012 - 02:46 AM

John,

The same applies to a C project.

If you want to produce 'exportability' in your AS4 projects, add the H files to the Headers node for a C project. Or the INC files to the Included Files node for an ASM project.

Personally, I find AS6 default behaviour irritating. i.e. I prefer to keep a single copy of a source file.

So I would create an AS6 project. Throw away the dummy source file. Add a link to the original source file(s).

The only advantage of the 'make a new copy of each source file' export strategy is to ensure you get everything in one folder. You can then be confident that a ZIP of this folder will be buildable on your client's machine.

David.

Quote:
add the H files to the Headers node for a C project
Which ARE. However a .h file is usable for both C and Atmel ASM projects.

A .inc file by any other name, would it still work the same?...How poetic. :lol:

Anyway the same ISSUE happens importing a C project to a DIFFERENT folder than the one where it is originally located. Anything but C files are left behind.

So the workaround for both seems to be to copy the entire AS4 folder project to an AS6 folder project and then do the import, this way files do not need to to be copied by the importer, don't want to stress the friendship now do we. :-)

And yes ALL of my files for a project are located in the same folder, this way I can simply zip the folder up and sent it off to the client (once the invoice is paid).

For stuff for my personal use I may refer to files located into a "library folders" as I know that they will always be there. My own ASF? :shock:

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

When you build an AS4 avr-gcc project, you can see all the dependent header files. Just make sure that you have all your 'user' header files in the project header node.

Then the AS6 import utility will copy these 'user' C and H files to the AS6 project directory.

There is no need to specify 'system' header files. AS6 will find them in the usual way.

Quote:
So the workaround for both seems to be to copy the entire AS4 folder project to an AS6 folder project and then do the import, this way files do not need to to be copied by the importer, don't want to stress the friendship now do we. Smile

I don't think that this is at all wise. AS6 tries very hard to create duplicate source files everywhere. Ensuring a maintenance nightmare. You should 'Link' rather than 'Copy' if you want to avoid this.

David.

Quote:
I "usually" do :oops: but this was a very old C play project and didn't :oops:

Once I fixed up the AS4 project it imported the .h files aslo. To be sure I imported another project which was corectly laid out and it worked.

So we are back to ASM only issue unless I have missed something else.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly

Oops. I just tried importing an AS4 ASM project into AA6.

You add the INC files to the Source Files node. The "Included Files" node is filled by the build process, not the user.

The AS6 Import Utility will copy all the files specified in the Source Files node to a new directory.

Or you can simply specify the AS4 project, and AS6 will create an AS6 project in the same directory as your AS4 project.

Wherever you choose to keep each individual ASM project, you can add each project to a single Solution.

It is a question of personal choice how you care to organise your ASM projects/solutions.

David.

Quote:
You add the INC files to the Source Files node.
There is USUALLY just ONE file in the source file node, the ENTRY file.

All other files are included in that file or if any other included file needs another file it's included in that file. ie

;Mega168 start up code

.nolist
.include	"m168def.inc"
.include	"c:\avr\lib\ASCII_table.asm"
.include	"c:\avr\lib\utility_macros.inc"
.list

.include	"c:\avr\projects\dis25100\dis25100_equ.asm"
.include	"c:\avr\projects\dis25100\dis25100_ram.asm"
.include	"c:\avr\lib\int_v_m168.asm"

.cseg
.
.
code
.
.
;Include files area
.include	"c:\avr\projects\dis25100\dis25100_init.asm"
.include	"c:\avr\lib\rs485com_mega88.asm"
.include	"c:\avr\lib\h2d_d2h8.asm"
.include	"c:\avr\lib\6x6_5x8_dis25100.asm"
.include	"c:\avr\projects\dis25100\dis25100_mon.asm"
.include	"c:\avr\lib\cgn5x7_1252_ex1.asm"
.include	"c:\avr\lib\sw_timers.asm"
.include	"c:\avr\projects\dis25100\int_s_dis25100.asm"
.include 	"c:\avr\lib\TWI_master_m48_m88_m168.asm"
.include 	"c:\avr\lib\DS1307_driver.asm"
.include 	"c:\avr\lib\time.asm"
.include 	"c:\avr\lib\TSL2561_driver.asm"
.include 	"c:\avr\lib\luxmeter_calcs.asm"


Occasionally I may add more that one file in the source files node but that's only so that I can switch to some files fast if I need to for debugging. It may be wrong but that's how I have always done it.

Regardless the importer should import ALL files from the source folder into the new folder first and then do it's thing.

John Samperi

Ampertronics Pty. Ltd.

www.ampertronics.com.au

* Electronic Design * Custom Products * Contract Assembly