Reply by Markus Zingg August 4, 20112011-08-04
I'm playing around here with a project from work (which I'm alowed to
play with) and there I had a Memory Segment like this:





We used this in the past to patch the mac address into the executeables.
Ok, I no longer really need this, as what I'm building here is for hobby
purposes and a one off, but I still wonder why CrossWorks 2.1 outputs
the error message during linking in the subject?

Any ideas?

Markus

An Engineer's Guide to the LPC2100 Series

Reply by Markus Zingg August 4, 20112011-08-04
Awesome Paul, your support rocks! Thank you.

Markus

Am 8/4/2011 12:01 PM, schrieb Paul Curtis:
>
> ...
>
> > The code uses among other stuff the following two lines of code
>
> > asm volatile (" mrs %0, cpsr" : "=r" (retval) : /* no inputs */ );
> > asm volatile (" msr cpsr, %0" : /* no outputs */ : "r" (val) );
>
> > They now produce an error "asm undeclared".
>
> http://rowley.zendesk.com/entries/46164-asm-keyword-causes-compilation-error
> s-in-crossworks-v2
>
> http://rowley.zendesk.com/entries/46193-undefined-reference-to-asm-error-mes
> sage
>
> > Sounds to me like either support for this has changed or I now need to
> include a special header file?
>
> --
> Paul Curtis, Rowley Associates Ltd http://www.rowley.co.uk
> SolderCore running Defender... http://www.vimeo.com/25709426
Reply by Paul Curtis August 4, 20112011-08-04
...

> The code uses among other stuff the following two lines of code

> asm volatile (" mrs %0, cpsr" : "=r" (retval) : /* no inputs */ );
> asm volatile (" msr cpsr, %0" : /* no outputs */ : "r" (val) );

> They now produce an error "asm undeclared".

http://rowley.zendesk.com/entries/46164-asm-keyword-causes-compilation-error
s-in-crossworks-v2

http://rowley.zendesk.com/entries/46193-undefined-reference-to-asm-error-mes
sage

> Sounds to me like either support for this has changed or I now need to
include a special header file?

--
Paul Curtis, Rowley Associates Ltd http://www.rowley.co.uk
SolderCore running Defender... http://www.vimeo.com/25709426

Reply by Markus Zingg August 4, 20112011-08-04
Dear Group,

I'm trying to port a little projcet from a previous crossworks version
to version 2.1

In there I have a routine to Enable and Disable Interrups which
compiles fine in the old version, but not so in the new one.

The code uses among other stuff the following two lines of code
*
asm volatile (" mrs %0, cpsr" : "=r" (retval) : /* no inputs */ );

asm volatile (" msr cpsr, %0" : /* no outputs */ : "r" (val) );
*
They now produce an error "asm undeclared".

Sounds to me like either support for this has changed or I now need to
include a special header file?

I found asm samples in the help, but haven't found the information yet
on what to include or where the problem is.

Any help is apreciated.

Best Regards

Markus