<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.arm.com/utility/feedstylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Splitting code between eprom and flash/eeprom.</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/14212/splitting-code-between-eprom-and-flash-eeprom</link><description> I need to have an internal bootloader in my Dallas 520 that can 
reprogram my external flash, and contain functions the external 
program can use, as these functions need to use ports P0 and 
P2 (precluding there execution from external code space. </description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: Splitting code between eprom and flash/eeprom.</title><link>https://community.arm.com/thread/94770?ContentTypeID=1</link><pubDate>Thu, 03 May 2001 13:52:23 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:a132f57b-303e-403c-a25d-bced433829c2</guid><dc:creator>Andrew Neil</dc:creator><description>&lt;p&gt;A &amp;quot;jump table&amp;quot; is - surprise - a table of jumps!&lt;br /&gt;
&lt;br /&gt;
The interrupt vector table is an example of a jump table: the interrupt number indexes into the table, and the result is the address of the handler for that interrupt.&lt;br /&gt;
&lt;br /&gt;
In &amp;#39;C&amp;#39;, another example is an array of function pointers - but special precautions are needed for function pointers in Keil C51 (see the manual &amp;amp; knowledge base).&lt;br /&gt;
&lt;br /&gt;
&amp;#39;C&amp;#39; compilers often implement switch statements as jump tables.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Splitting code between eprom and flash/eeprom.</title><link>https://community.arm.com/thread/53651?ContentTypeID=1</link><pubDate>Thu, 03 May 2001 12:58:23 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:d143ac00-c9e2-4902-9439-87e35b55531e</guid><dc:creator>Lawrence Koepke</dc:creator><description>&lt;p&gt;I have searched the knowledge base quite a bit. While there&lt;br /&gt;
are already two articles entitled &amp;quot;Splitting code between &lt;br /&gt;
eprom and flash/eeprom&amp;quot; (one for 51, one for 251), they&lt;br /&gt;
do not adequately cover the issue for me. They both refer&lt;br /&gt;
to &amp;quot;jump tables&amp;quot;, yet there is no explanation of what, where&lt;br /&gt;
etc. these jump tables are (search for &amp;quot;jump table&amp;quot; fails), &lt;br /&gt;
and they reference an example&lt;br /&gt;
project for dScope, which will not load in uVision2.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Splitting code between eprom and flash/eeprom.</title><link>https://community.arm.com/thread/37465?ContentTypeID=1</link><pubDate>Thu, 03 May 2001 06:27:33 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:3a7d241a-bbdb-41bf-916f-a67992051273</guid><dc:creator>Andrew Neil</dc:creator><description>&lt;p&gt;Have you searched the Knowledge Base?&lt;br /&gt;
&lt;br /&gt;
NB: That&amp;#39;s the &amp;#39;Search&amp;#39; link along the top of the page; the one on the left just searches Forum messages.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>