<?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>S12 / MagniV MicrocontrollersのトピックWhat is startup data structure for S12ZVM and How it gets intialised ?</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/What-is-startup-data-structure-for-S12ZVM-and-How-it-gets/m-p/480956#M12014</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;While going to the start up code I come across the &lt;EM&gt;startupData&lt;/EM&gt; structure. &lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;*********************************************************************************************&lt;/P&gt;&lt;P&gt;STARTUP SECTION&lt;/P&gt;&lt;P&gt;---------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Entry point: 0xFE004F (_EntryPoint)&lt;/P&gt;&lt;P&gt;_startupData is allocated at 0xFE00A2 and uses 20 Bytes&lt;/P&gt;&lt;P&gt;extern struct _tagStartup {&lt;/P&gt;&lt;P&gt;&amp;nbsp; unsigned nofZeroOut&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Range&amp;nbsp;&amp;nbsp; pZeroOut&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1200&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 62&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Copy&amp;nbsp;&amp;nbsp;&amp;nbsp; *toCopyDownBeg 0xFE052A&lt;/P&gt;&lt;P&gt;&amp;nbsp; int&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nofInitBodies&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Cpp&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *initBodies&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFE00BD&lt;/P&gt;&lt;P&gt;&amp;nbsp; int&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nofFiniBodies&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Cpp&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *finiBodies&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFE00BD&lt;/P&gt;&lt;P&gt;} _startupData;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I understood the code, but I would like to know that, how it gets initialized?&lt;/P&gt;&lt;P&gt;Who is responsible for the same?&lt;/P&gt;&lt;P&gt;And is it always located at address 0xFE00A2 ?&lt;/P&gt;&lt;P&gt;Also Is &lt;EM&gt;EntryPoint&lt;/EM&gt; address (0xFE004F is always same?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Amey&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 02 Feb 2016 08:12:36 GMT</pubDate>
    <dc:creator>ameykhatavkar</dc:creator>
    <dc:date>2016-02-02T08:12:36Z</dc:date>
    <item>
      <title>What is startup data structure for S12ZVM and How it gets intialised ?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/What-is-startup-data-structure-for-S12ZVM-and-How-it-gets/m-p/480956#M12014</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;While going to the start up code I come across the &lt;EM&gt;startupData&lt;/EM&gt; structure. &lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;*********************************************************************************************&lt;/P&gt;&lt;P&gt;STARTUP SECTION&lt;/P&gt;&lt;P&gt;---------------------------------------------------------------------------------------------&lt;/P&gt;&lt;P&gt;Entry point: 0xFE004F (_EntryPoint)&lt;/P&gt;&lt;P&gt;_startupData is allocated at 0xFE00A2 and uses 20 Bytes&lt;/P&gt;&lt;P&gt;extern struct _tagStartup {&lt;/P&gt;&lt;P&gt;&amp;nbsp; unsigned nofZeroOut&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Range&amp;nbsp;&amp;nbsp; pZeroOut&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x1200&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 62&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Copy&amp;nbsp;&amp;nbsp;&amp;nbsp; *toCopyDownBeg 0xFE052A&lt;/P&gt;&lt;P&gt;&amp;nbsp; int&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nofInitBodies&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Cpp&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *initBodies&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFE00BD&lt;/P&gt;&lt;P&gt;&amp;nbsp; int&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; nofFiniBodies&amp;nbsp; 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; _Cpp&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *finiBodies&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFE00BD&lt;/P&gt;&lt;P&gt;} _startupData;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I understood the code, but I would like to know that, how it gets initialized?&lt;/P&gt;&lt;P&gt;Who is responsible for the same?&lt;/P&gt;&lt;P&gt;And is it always located at address 0xFE00A2 ?&lt;/P&gt;&lt;P&gt;Also Is &lt;EM&gt;EntryPoint&lt;/EM&gt; address (0xFE004F is always same?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Amey&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Feb 2016 08:12:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/What-is-startup-data-structure-for-S12ZVM-and-How-it-gets/m-p/480956#M12014</guid>
      <dc:creator>ameykhatavkar</dc:creator>
      <dc:date>2016-02-02T08:12:36Z</dc:date>
    </item>
    <item>
      <title>Re: What is startup data structure for S12ZVM and How it gets intialised ?</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/What-is-startup-data-structure-for-S12ZVM-and-How-it-gets/m-p/480957#M12015</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Amey,&lt;/P&gt;&lt;P&gt;Please check start12z.c and start12z.h file in your project/Project Settings/Startup_Code.&lt;/P&gt;&lt;P&gt;This structure is used for initialize RAM prior start main() routine. The default bare metal project execute _Startup() function after reset. This _Startup() function will erase and initialize RAM.&lt;/P&gt;&lt;P&gt;Note: If you use ProcessorExpert, the reset vector points to _EntryPoint() instead of _Startup() .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Startup code is placed by linker, therefore location of this code could vary according linker settings and your project size.&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note: prm linker file is in your project/Project Settings/Linker_Files.&lt;/P&gt;&lt;P&gt;You could try for example specifying some part of RAM and filling them by some pattern. For example:&lt;/P&gt;&lt;P&gt;RAM3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp; 0x003000 TO 0x003FFF FILL 0x33;&lt;/P&gt;&lt;P&gt;In that case startup code will initialize this part of RAM prior enter into main() function.&lt;/P&gt;&lt;P&gt;The similar way you could also copy some code from flash into RAM (RELOCATE_TO).&lt;/P&gt;&lt;P&gt;See "c:\Freescale\CW MCU v10.6\MCU\Help\PDF\MCU_Build_Tools_Utilities.pdf" document for more details.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I hope it helps you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;RadekS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Feb 2016 14:39:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/What-is-startup-data-structure-for-S12ZVM-and-How-it-gets/m-p/480957#M12015</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2016-02-03T14:39:32Z</dc:date>
    </item>
  </channel>
</rss>

