Problem with PICC18

Started by Gustavo Vilela Vargas July 21, 2003
Hi all,

I'm using PICC18 to create code for a PIC18F452, now my code grow up
to 4058h in size, and the linker do not fit the correct psetc CODE.

At the Hi-tech site I found this:
"The command-line driver inserts a page
break at address 04000h in the CODE
linker class specification passed to the
linker. This ensures that C functions
(psects) do not cross this address allowing
GOTO instructions within a function to be
used without modification."

This means that my program are limited by 16k even with the 32k of the
PIC18F452?

How can I fix that?
At the site I see too that I can prevent this "break" by using de
option -NOERRATA with the command line compiler, but it is only
applicable for code below 4000h in size.

Someone know what can I do?

Thanks!

Regards,
Gustavo Vargas



--- In , Gustavo Vilela Vargas <gvargas@c...>
wrote:
> Hi all,
>
> I'm using PICC18 to create code for a PIC18F452, now my code grow up
> to 4058h in size, and the linker do not fit the correct psetc CODE.
>
> At the Hi-tech site I found this:
> "The command-line driver inserts a page
> break at address 04000h in the CODE
> linker class specification passed to the
> linker. This ensures that C functions
> (psects) do not cross this address allowing
> GOTO instructions within a function to be
> used without modification."
>
> This means that my program are limited by 16k even with the 32k of
the
> PIC18F452?
>
> How can I fix that?
> At the site I see too that I can prevent this "break" by using de
> option -NOERRATA with the command line compiler, but it is only
> applicable for code below 4000h in size.
>
> Someone know what can I do?
>
> Thanks!
>
> Regards,
> Gustavo Vargas
> gvargas@c...

-NOERRATA is used to disable the silicon issue of spanning across
the 0x4000 boundary by inserting nop's around the jump inst's

split your code up into multiple linkable source files