<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Map file error in CodeWarrior for MCU</title>
    <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139374#M2289</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;No I had a sucess fully linked case and added a truck load of code and all the routines and declirations&amp;nbsp;that dont fit in in address space 0xc000 have this error. Even all my ram declirations have it.&amp;nbsp; here is a copy of the datapage set up (.prm file)&amp;nbsp; and the map file.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;and the decliration files.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 08 Dec 2006 09:34:22 GMT</pubDate>
    <dc:creator>NZ_Design</dc:creator>
    <dc:date>2006-12-08T09:34:22Z</dc:date>
    <item>
      <title>8-16 bit: Map file error</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139372#M2287</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;What does 0'Error in the address coloum of my map file mean.&lt;/DIV&gt;&lt;P&gt;Message Edited by CrasyCat on &lt;SPAN class="date_text"&gt;2007-04-13&lt;/SPAN&gt; &lt;SPAN class="time_text"&gt;11:29 AM&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Dec 2006 05:36:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139372#M2287</guid>
      <dc:creator>NZ_Design</dc:creator>
      <dc:date>2006-12-08T05:36:30Z</dc:date>
    </item>
    <item>
      <title>Re: Map file error</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139373#M2288</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;it means the address is not set/known.&lt;BR /&gt;This syntax is quite common for map files which were created in error cases, for example in out of target memory situations. Then all objects which did not get their memory location have this "address".&lt;BR /&gt;Do you have this in a successfully linked application? If so, please provide a reproducible case.&lt;BR /&gt;&lt;BR /&gt;Daniel&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Dec 2006 07:51:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139373#M2288</guid>
      <dc:creator>CompilerGuru</dc:creator>
      <dc:date>2006-12-08T07:51:30Z</dc:date>
    </item>
    <item>
      <title>Re: Map file error</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139374#M2289</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;No I had a sucess fully linked case and added a truck load of code and all the routines and declirations&amp;nbsp;that dont fit in in address space 0xc000 have this error. Even all my ram declirations have it.&amp;nbsp; here is a copy of the datapage set up (.prm file)&amp;nbsp; and the map file.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;and the decliration files.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Dec 2006 09:34:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139374#M2289</guid>
      <dc:creator>NZ_Design</dc:creator>
      <dc:date>2006-12-08T09:34:22Z</dc:date>
    </item>
    <item>
      <title>Re: Map file error</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139375#M2290</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;Hello&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Apparently you have a bunch of constant table in the application and these are taking too much room from the C000-FEFF memory area.&lt;/DIV&gt;&lt;DIV&gt;I would recommend you to define (declare these constant tables in a user defined constant section defined with attribute PPAGE.&lt;/DIV&gt;&lt;DIV&gt;Example:&lt;/DIV&gt;&lt;DIV&gt;#pragma CONST_SEG __PPAGE_SEG MybankedConst&lt;/DIV&gt;&lt;DIV&gt;int Fruit[636] = {....};&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;/* Other banked constants */&lt;/DIV&gt;&lt;DIV&gt;#pragma CONST_SEG DEFAULT&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Declaration should look as follows:&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;#pragma CONST_SEG __PPAGE_SEG MybankedConst&lt;/DIV&gt;&lt;DIV&gt;extern int Fruit[636];&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;/* Other banked constants */&lt;/DIV&gt;&lt;DIV&gt;#pragma CONST_SEG DEFAULT&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;Then to place the section in banked memory.&lt;/DIV&gt;&lt;DIV&gt;In the .prm file change&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_ROM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO PAGE_30,PAGE_31,PAGE_32,PAGE_33,PAGE_34,PAGE_35,PAGE_36,PAGE_37,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_38,PAGE_39,PAGE_3A,PAGE_3B,PAGE_3C,PAGE_3D;&lt;BR /&gt;into&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_ROM, MybankedConst&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO PAGE_30,PAGE_31,PAGE_32,PAGE_33,PAGE_34,PAGE_35,PAGE_36,PAGE_37,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PAGE_38,PAGE_39,PAGE_3A,PAGE_3B,PAGE_3C,PAGE_3D;&lt;BR /&gt;&lt;/DIV&gt;&lt;DIV&gt;Make sure to build your application with option -CpPPAGE=RUNTIME.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;If the banked constants are used&amp;nbsp;as parameter in library functions, you may have to re-generate&amp;nbsp;the library telling the compiler you are using banked constants.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I hope this helps.&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;CrasyCat&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 08 Dec 2006 22:31:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139375#M2290</guid>
      <dc:creator>CrasyCat</dc:creator>
      <dc:date>2006-12-08T22:31:05Z</dc:date>
    </item>
    <item>
      <title>Re: Map file error</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139376#M2291</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;So it is a map file of a failed linker invocation (the map file starts with "LINKING FAILED").&lt;BR /&gt;Once the linker fails to link a single object, it stops immediately and gives up.&lt;BR /&gt;So as the non banked ROM_C000 area is first filled in the prm file, all the other&lt;BR /&gt;objects don't get allocated at all and end up with a unallocated address (displayed as 0'Error), hence the many non allocated objects in your map file.&lt;BR /&gt;&lt;BR /&gt;I noted that you are not using the non paged area ROM_4000 at all, so I would recommend to place some of the objects into this area before using ppaged memory.&lt;BR /&gt;Something like:&lt;BR /&gt;NON_BANKED INTO ROM_C000;&lt;BR /&gt;STARTUP,&lt;BR /&gt;ROM_VAR,&lt;BR /&gt;STRINGS INTO ROM_C000, ROM_4000;&lt;BR /&gt;COPY INTO ROM_4000;&lt;BR /&gt;&lt;BR /&gt;There is a theoretically possibility of a linking failure with a fixup overflow if you&lt;BR /&gt;place NON_BANKED into more than one segment ("NON_BANKED INTO ROM_C000, ROM_4000" if you are not compiling with -OnB=b switch. So I did explicitly assign NON_BANKED to one of the segments.&lt;BR /&gt;(Even if you just use (ROM_C000, ROM_4000) it will either work or fail at link time, not at runtime, also I would not expect this failure to be in the banked memory model.)&lt;BR /&gt;&lt;BR /&gt;Using PPAGE'ed data is also possible, but I would only start to use it if I did run out of the other non banked flash, the code accessing ppaged memory is considerably larger and slower.&lt;BR /&gt;&lt;BR /&gt;Daniel&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 09 Dec 2006 02:10:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/8-16-bit-Map-file-error/m-p/139376#M2291</guid>
      <dc:creator>CompilerGuru</dc:creator>
      <dc:date>2006-12-09T02:10:44Z</dc:date>
    </item>
  </channel>
</rss>

