Controlling .NOLIST in Avrasm2 projects

Go To Last Post
3 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

In AS4 you simply .INCLUDE the relevant xxxDEF.INC header file for your target AVR

You have full control of .NOLIST and .LIST when producing the .LST file for your project.

A typical project might be:

 

tiny_1634.asm:

    .NOLIST
    .INCLUDE "tn1634def.inc"
    .LIST
    
#include "generic_project.asm"

tiny_85.asm:

    .NOLIST
    .INCLUDE "tn85def.inc"
    .LIST
    
#include "generic_project.asm"

 

The AS4 project has a single "business" source file.    You just select the appropriate "entry file" for the target you are building.

.OBJ, .HEX, .MAP, .LST files are generated.    The world is a happy place.

 

With AS7 they had the bright idea of including the part file as default.

In fact this makes the AS7 project easier.    You just have a single "generic_project.asm" file and the part is selected in project Properties.

 

You can edit the Toolchain/AvrAssembler/General pane.   e.g. to remove the default include

However if you keep the include there seems no way to stop the include being listed.

 

Yes,  this particular project can be built with GCC.    AVRASM2 is nice and simple to use and gives a more intuitive source code and listing.

 

One further quibble.    When I build with AS4,   the "tn1634def.inc" file was 

;***** THIS IS A MACHINE GENERATED FILE - DO NOT EDIT ********************
;***** Created: 2011-08-25 21:00 ******* Source: ATtiny1634.xml **********

but with AS7,  the "tn1634def.inc" file as

;***** THIS IS A MACHINE GENERATED FILE - DO NOT EDIT ********************
;***** Created: 2011-05-12 14:38 ******* Source: ATtiny1634.xml **********
;*************************************************************************
;* A P P L I C A T I O N   N O T E   F O R   T H E   A V R   F A M I L Y
;* 
;* Number            : AVR000
;* File Name         : "tn1634def.inc"
;* Title             : Register/Bit Definitions for the ATtiny1634
;* Date              : 2011-05-12
;* Version           : 2.35
;* Support E-mail    : avr@atmel.com
;* Target MCU        : ATtiny1634

Note that I get the same AS7 part file with C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATtiny_DFP\1.2.118\avrasm\inc\tn1634def.inc

and with Pack 1.0.71, 1.0.79, 1.1.102, 1.2.118

 

The old AS4 part file has correct entries for SPMCSR register.   None of the AS7 part files have the bitfield entries for SPMCSR.

 

David.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

david.prentice wrote:
The old AS4 part file has correct entries for SPMCSR register. None of the AS7 part files have the bitfield entries for SPMCSR.

Hmmm--before CodeVision had bit definitions as part of the chip-include files, I used to use the .XML and create a .h.  IIRC there is a def.inc option as well...

 

I thought it was XMLCONVERT.EXE but SuperFinder is having a hard time with that right now... ;)

 

If I/you find it then you can try building your own .INC.

 

david.prentice wrote:
With AS7 they had the bright idea of including the part file as default.
As you go on to discuss, that has its drawbacks as well.

 

Found it!  Not installed after Studio4 apparently.

 

If you can't find it, I can post or email.  384KB .EXE

You can put lipstick on a pig, but it is still a pig.

I've never met a pig I didn't like, as long as you have some salt and pepper.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for the reply.    I was hoping for a magic checkbox in AS7 Properties.   e.g. to start with a .NOLIST before it does its automatic .INCLUDE

A commandline switch would be just as good.

 

Regarding the "out of date" .INC file for the Tiny1634.

I am a little surprised that the .XML Build did not notice that the May2011 .INC had been superseded by an Aug2011 .INC

In fact I would have expected every .INC file to be regenerated with each Release.    Modern processing power does not need to be conserved.

 

Yes,   I know what is missing.   And I know that I could generate my own .INC if I wanted to.

But you normally expect an "Official Release" to have done all this for you.

 

David.