We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi, i'm using a C167CS-LM, and i want to locate code to specific adresses in my external FLASH (AMD 29F400). I get the following linker Error, which i can't get fixed: *** ERROR L112: SECTION DOES NOT FIT WITHIN GROUP RANGE SECTION: ?PR?MAIN CLASS: NCODE In my linker command file i use the SECTIONS directive which includes the name FLALGO. I used it to rename the class NCODE in one file. Here my linker command file: F1.obj, F2.obj, F3.obj TO Name.abs CLASSES (& ICODE (0X0200-0X3FFF),& NDATA (0X8000-0X9FEF),& SDATA (0XC000-0XD7FF, 0XE000-0XE7FF),& IDATAX (0XF200-0XFDDF),& BDATAX (0XFDE0-0XFDFD),& NCODE (0X10000-0X2FFFF))& SECTIONS (?PR?FLASHOS%FLALGO (0XF300)[0X25000]) It works if i don't use the SECTIONS directive. It also works if i change the start adress of NCODE to 0x0, but i want to locate all my code at 0x10000 or higher... Thanks for any comments and hints. Mario Arn
Thx very much for your quick answer mike...but it didn't work. If i put the pragma directive #pragma LARGE in my file, i get the following fatal ERROR: C166 FATAL-ERROR - ACTION: PARSING INVOKE-/#PRAGMA-LINE LINE: #pragma LARGE ERROR: RESPECIFIED OR CONFLICTING CONTROL Maybe there is another solution to solve this "little" problem? Thx in advance, Mario
It looks like the compiler was invoked with a command line that specifies small memory model which conflicts with #pragma LARGE. Basically the idea behind my advice was to compile that one file in large memory model and the rest of the program - in small memory model. So try changing small to large for that file. - mike