<?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>Initialie ROM CRC byte</title><link>https://community.arm.com/developer/tools-software/tools/f/keil-forum/15986/initialie-rom-crc-byte</link><description> I can set a variable in the ROM area as following: 
#define END_CODE_SIZE 0x3FFF 
char code CRCbyte _at_ END_CODE_SIZE 
How do I set its value to says 0xAA? I can do this: 
char code CRCbyte = 0xAA; 
Then The variable is not allocated to the END_OF_CODE</description><dc:language>en-US</dc:language><generator>Telligent Community 10</generator><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/110428?ContentTypeID=1</link><pubDate>Mon, 28 Jul 2003 03:17:59 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:84d70925-1267-482b-997e-6d490544fdcd</guid><dc:creator>John Donaldson</dc:creator><description>&lt;p&gt;Don&amp;#39;t worry, Keil are well aware that a lot of people want this facility. They don&amp;#39;t seem keen to implement it though. This subject has come up time and again on this forum.&lt;br /&gt;
&lt;br /&gt;
Stefan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/95641?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2003 18:04:51 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:5640e00c-e1fc-407f-8c51-da430bf1d523</guid><dc:creator>Henry Nguyen</dc:creator><description>&lt;p&gt;That&amp;#39;s a good idea. It&amp;#39;s not that the keil software guys can not do it or it is too hard. It&amp;#39;s just that they may never think about it and how convenient for us to use it in whatever way we want to. I hope the Keil technical supports monitor these mails let their software gurus know.&lt;br /&gt;
&lt;br /&gt;
HN&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/71671?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2003 10:34:24 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:da0773de-7a7a-4d3b-a2e1-1924bcaa04b1</guid><dc:creator>John Donaldson</dc:creator><description>&lt;p&gt;&amp;quot;One problem with doing this all within your C program is that your program does not know the correct CRC/checksum value.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Yes, but many of us want to store compile time constants at specific addresses for a variety of reasons. We don&amp;#39;t want to run separate utilities after the build, muck about with linker directives or resort to assembler.&lt;br /&gt;
&lt;br /&gt;
We just want to write:&lt;br /&gt;
&lt;br /&gt;
unsigned char code somebyte=0xaa _at_ 0x3fff;&lt;br /&gt;
&lt;br /&gt;
Please?&lt;br /&gt;
&lt;br /&gt;
Stefan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/71670?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2003 08:03:38 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:46a78b7c-b9b3-4bb6-befd-f225c7cc481f</guid><dc:creator>Henry Nguyen</dc:creator><description>&lt;p&gt;I also found another way. I create an assembly file with code as:&lt;br /&gt;
PUBLIC       CrCValue&lt;br /&gt;
             CSEG    at   LOCATION&lt;br /&gt;
CrcValue:    DB      VALUE&lt;br /&gt;
             END&lt;br /&gt;
&lt;br /&gt;
Then in C code, I can use:&lt;br /&gt;
extern char CrCValue.&lt;br /&gt;
It works. Too bad I can not use #ifdef, ... to have different CRC values for different targets.&lt;br /&gt;
&lt;br /&gt;
Thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/40606?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2003 07:40:16 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:bfdda171-d42a-4313-a239-bd8e0202747c</guid><dc:creator>Jon Ward</dc:creator><description>&lt;p&gt;The following knowledgebase article describes how to do this for a ROM checksum.  It will work for a ROM CRC as well.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.keil.com/support/docs/494.htm"&gt;http://www.keil.com/support/docs/494.htm&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
One problem with doing this all within your C program is that your program does not know the correct CRC/checksum value.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Jon&lt;/b&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Initialie ROM CRC byte</title><link>https://community.arm.com/thread/40604?ContentTypeID=1</link><pubDate>Fri, 25 Jul 2003 03:14:20 GMT</pubDate><guid isPermaLink="false">dd9e70c8-6d3c-4c71-b136-2456382a7b5c:82c7b0ea-3e6b-488a-8e46-26d5a9cb5b86</guid><dc:creator>John Donaldson</dc:creator><description>&lt;p&gt;I think the easiest way to do this is to place the &amp;#39;variable&amp;#39; in a source file on its own, then direct the linker to place the resulting segment at the correct address.&lt;br /&gt;
&lt;br /&gt;
Isn&amp;#39;t it a shame that Keil doesn&amp;#39;t allow initialisers with the _at_ keyword?&lt;br /&gt;
&lt;br /&gt;
Stefan&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>