Oznog
Active Member
I took a pretty large project which took 25k of a 32k PIC18F452 and modified it for compatability with MCC18, most of it was just a lot of #define replacements, reformatting the CONFIG bits, etc.
The ROM usage I had was considerably larger with MCC18. It took 30k, an additional 20%. I did a bit of monkeying, noticed that Integer Promotion was disabled by default. PICC18 doesn't have a way to disable it so the code might not be functionally equivalent where not explicitly cast. So I tried enabling Integer Promotion and the code became too large to compile with MCC18.
A lot of that code is constant font data and const screen page data which should not compile in a different size. Thus is seems the size of the executable code is more than 20% larger.
Has anyone else tried to compile for both? Is this typical? Or is there some way of compiling that would take less space?
The ROM usage I had was considerably larger with MCC18. It took 30k, an additional 20%. I did a bit of monkeying, noticed that Integer Promotion was disabled by default. PICC18 doesn't have a way to disable it so the code might not be functionally equivalent where not explicitly cast. So I tried enabling Integer Promotion and the code became too large to compile with MCC18.
A lot of that code is constant font data and const screen page data which should not compile in a different size. Thus is seems the size of the executable code is more than 20% larger.
Has anyone else tried to compile for both? Is this typical? Or is there some way of compiling that would take less space?