A discussion group for the PICMicro microcontroller. Also called the Microchip PIC, this list is dedicated to the use and abuse of this fine, simple, microcontroller. Close to topic posts are welcome, ie. general electronics.
|
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 |