gnupic: Re: [gnupic] Warning [220] : Address exceeds maximum range for this processor
Subject:
Re: [gnupic] Warning [220] : Address exceeds maximum range for this processor
From:
Holger Oehm ####@####.####
Date:
12 Jan 2008 12:49:00 -0000
Message-Id: <200801121348.10446.holger.oehm@holger-oehm.de>
On Friday 11 January 2008, David wrote:
> On Fri, 11 Jan 2008 01:17:24 +0100
> Holger Oehm ####@####.#### wrote:
>
> > Hi,
> >
> > I can confirm also that the warning about the adress range of DE
> > instructions in absolute mode is gone now.
> > But I am afraid I get something similar in relocatable mode:
> >
> > gplink: lst.c:171: write_src: Assertion `data & 0x80000000' failed.
> > ...
> > eedata UDATA
> > ee_address DE 0x01
> > ...
> > Is this realy related or do I make a mistake here?
> I strongly doubt that it's related because the original problem has to
> do with data hard-coded into gpasm specifically for absolute mode and
> your problem is triggered in gplink.
I see. It was just that I had the same warning (when i used the ORG
directive) and the warning went away when I installed the latest
version from svn.
> But aren't you trying to initialize uninitialized data (UDATA)? It's
> been a while since I've worked on PIC's, but I would think you'd want
> either "ee_address res 1" or maybe to put it in an IDATA section...?
Ah. Didnt think about that, I just replaced the ORG with UDATA. But
I think it should certainly be initialized data then (I want the
default value to be present in the eeprom after burning the pic).
I changed my code to
...
DEEPROM IDATA
ee_address DE 0x01
...
but id didnt do what i wanted. The address was assinged correctly but
not the value (it was still unitialized).
But my next try:
...
DEEPROM CODE
ee_address DE 0x01
...
works just fine. (I didnt understand the documentation of IDATA anyway,
shoud it burn the value or not?) Sorry for the confusion on my side
and thank you for your quick answer!
Best Regards,
Holger.
[Content type application/pgp-signature not shown. Download]