<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Форум Guardant &mdash; Отладка загружаемого кода до загрузки]]></title>
		<link>https://forum.guardant.ru/topic/480/</link>
		<atom:link href="https://forum.guardant.ru/feed/rss/topic/480" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Отладка загружаемого кода до загрузки».]]></description>
		<lastBuildDate>Thu, 20 Nov 2014 18:52:06 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Отладка загружаемого кода до загрузки]]></title>
			<link>https://forum.guardant.ru/post/2323/#p2323</link>
			<description><![CDATA[<p>Немного уточню:<br />При отладке кода микропрограммы нужно учитывать что отлаживаемый микрокод будет всегда заявлен как алгоритм с номером 9 (иначе не получится выполнить полноценную отладку).<br />И второй нюанс - вызов GccaGetRandom может (иногда) сбоить, поэтому для рандомизации при отладке можно воспользоваться следующим кодом:</p><p>DWORD get_dword_random()<br />{<br />&nbsp; &nbsp; DWORD dwRet;<br />&nbsp; &nbsp; #if defined( DEBUG_DLL )&nbsp; &nbsp; <br />&nbsp; &nbsp; &nbsp; &nbsp; srand (time(NULL));<br />&nbsp; &nbsp; &nbsp; &nbsp; dwRet = rand();<br />&nbsp; &nbsp; #else<br />&nbsp; &nbsp; &nbsp; &nbsp; BYTE * p = (BYTE*)&amp;dwRet;<br />&nbsp; &nbsp; &nbsp; &nbsp; for (int i = 0; i &lt; 4; i++)<br />&nbsp; &nbsp; &nbsp; &nbsp; {&nbsp; &nbsp; &nbsp; &nbsp; <br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; GccaGetRandom(0, p);<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; p++;<br />&nbsp; &nbsp; &nbsp; &nbsp; }<br />&nbsp; &nbsp; #endif<br />&nbsp; &nbsp; return dwRet;<br />}</p>]]></description>
			<author><![CDATA[null@example.com (Александр (Rouse_) Багель)]]></author>
			<pubDate>Thu, 20 Nov 2014 18:52:06 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/2323/#p2323</guid>
		</item>
		<item>
			<title><![CDATA[Re: Отладка загружаемого кода до загрузки]]></title>
			<link>https://forum.guardant.ru/post/2322/#p2322</link>
			<description><![CDATA[<p>Здравствуйте!<br />Вы можете использовать любую маску для отладки загружаемого кода. Главное, чтобы номер алгоритма загружаемого кода&nbsp; совпадает с номером алгоритма, использованного в ключе. <br />Если Вы используете наш пример, то Вы можете открыть папку Samples/ARM в комплекте разработчика и использовать mask2.nsd</p>]]></description>
			<author><![CDATA[null@example.com (Станислав Петрушевский)]]></author>
			<pubDate>Thu, 20 Nov 2014 15:06:08 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/2322/#p2322</guid>
		</item>
		<item>
			<title><![CDATA[Отладка загружаемого кода до загрузки]]></title>
			<link>https://forum.guardant.ru/post/2317/#p2317</link>
			<description><![CDATA[<p>В документации описан способ отладки загружаемого кода с помощью специального образа (DebugMask.nsd) на ключ и запуска самого кода на десктопе.<br />Однако, такового образа (DebugMask.nsd) в комплекте разработчика найти не удалось.<br />Возможно, его нет в последней версии SDK.</p><p>Где его искать теперь? :)</p>]]></description>
			<author><![CDATA[null@example.com (Netherspite)]]></author>
			<pubDate>Wed, 19 Nov 2014 17:26:27 +0000</pubDate>
			<guid>https://forum.guardant.ru/post/2317/#p2317</guid>
		</item>
	</channel>
</rss>
