<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>keyboard translations &amp;&amp; inversion of a value</title>
		<link>http://www.allegro.cc/forums/view/586194</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 30 Jun 2006 19:10:51 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hello!!!<br />;-))<br />I have TWO questions:</p><p>-first is there a function that can give me back when reading a key its programmation name ( KEY_COMMA , KEY_SEMICOLON2, ....) ? I will experience new beautifull keyboards like turkish and arabic and I would like two know wich code in full plain text the key get back.</p><p>-second question<br />i have a discussion with physical hardware. This hardware is a physical fader wich returns a value from 100 to 0 ( lRetFaderPreset), depending of its position. I m using it like this:
</p><div class="source-code snippet"><div class="inner"><pre> BufferSaisie<span class="k2">[</span>prepman<span class="k2">]</span><span class="k3">=</span><span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k2">(</span>fValManuelAtBeg<span class="k2">[</span>prepman<span class="k2">]</span><span class="k3">+</span> <span class="k2">(</span>lRetFaderPreset <span class="k3">*</span> <span class="k2">(</span><span class="k2">(</span>fValManuelAtEnd<span class="k2">[</span>prepman<span class="k2">]</span><span class="k3">-</span>fValManuelAtBeg<span class="k2">[</span>prepman<span class="k2">]</span><span class="k2">)</span><span class="k3">/</span><span class="n">100</span><span class="k2">)</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>

So in fact, my function there is working in only one way, from 100 to 0. It means to work I need to get back my faders up to do the next move.<br />I want to use my fader up to down and down to up , reverting values.<br />I do not figure how to use is transforming 0 to 100 and 100 to 0 easely, to permit to use it in the two ways, reverting its values. <br /><b>I m sure that there must be something more elegant than translating thruth an array the value of lRetFaderPreset.</b><br />Have you got any idea <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" /></p><p>thanks for the answer!<br />christoph
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 17:01:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>1. <tt>scancode_to_name</tt><br />2. I have no idea what you are talking about.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 30 Jun 2006 17:12:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Thanks first for your answer about scancode, I will use it !!!</p><p><img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /><br />edit:
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span> 
 <span class="k2">{</span>
     <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>scancode<span class="k2">)</span><span class="k2">;</span>

 
     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key."</span>, keyname<span class="k2">)</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p> returns none as string...  <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" /></p><p>ok, I will try to be more explicit and clear ( wich is quite a thing ...)</p><p>i have a real slider connected to my soft<br />It returns values only in this way:</p><p>-100<br />-90<br />-80<br />-70<br />-60<br />-50<br />-40<br />-30<br />-20<br />-10<br />-0</p><p>I m searching how I can program, when my slider is down , an inversion of the values.<br />Actually , I m obliged to get up my faders.</p><p>To be more explicit, it affect the value of BufferSaisie[] thruth a crossfading of levels: from a Value at Begin TO the next value wich is at End.</p><p>BufferSaisie[10]=30 at Begin<br />after crossfade thruth the fader it should arrive at BufferSaisie[10]=95</p><p>I m using a physical hardware ( slider, fader, dont know the name) to do it</p><p>you can see photo of it there:<br /><a href="http://karistouf.free.fr">http://karistouf.free.fr</a></p><p><img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 17:24:50 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Why not just 100 - return value? If it were at 100 when you want 0, 100-100 = 0. If it were at 0 and you want 100, 100-0 = 100. I&#39;m not sure exactly what you are after, but this is the closest thing I can make out to what you want.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elverion)</author>
		<pubDate>Fri, 30 Jun 2006 17:35:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>hum... because in fact I have TWO faders ....</p><p>I wanted to make it more simpler in my explanation</p><p>So I m using two fader, one that is manipulating the values at begin, the other the value at end.</p><p>When BeginFader is at 0 and EndFader is at 100 my crossfade is done. Begin has a new value ( the before named End)....</p><p>I have edited the post on the scan code...<br />do not understand why it doesn t return anything</p><p>OK DEFINITEVELY SCANCODE RETURNS NONE.... must be a dummy thing....</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>   </td></tr><tr><td class="number">2</td><td>     <span class="k1">while</span> <span class="k2">(</span>index_quit<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">3</td><td>     <span class="k2">{</span></td></tr><tr><td class="number">4</td><td>       <span class="c">//clear_bitmap(buffer);</span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td>     <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer,<span class="n">0</span>,<span class="n">0</span>,<span class="n">440</span>,<span class="n">400</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">7</td><td>     <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>buffer,fond1,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k3">-</span><span class="n">5</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span> </td></tr><tr><td class="number">8</td><td>    </td></tr><tr><td class="number">9</td><td>     </td></tr><tr><td class="number">10</td><td>     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">10</span>, <span class="n">195</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Keyboard Detection:"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td> </td></tr><tr><td class="number">12</td><td>    </td></tr><tr><td class="number">13</td><td>      <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>scancode<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td>      </td></tr><tr><td class="number">16</td><td>     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key."</span>, keyname<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">17</td><td>          <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>          </td></tr><tr><td class="number">19</td><td>&#160;</td></tr><tr><td class="number">20</td><td>&#160;</td></tr><tr><td class="number">21</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">230</span>,<span class="n">50</span>,<span class="n">240</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">22</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">250</span>,<span class="n">50</span>,<span class="n">260</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">23</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">270</span>,<span class="n">50</span>,<span class="n">280</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">24</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">290</span>,<span class="n">50</span>,<span class="n">300</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">25</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">310</span>,<span class="n">50</span>,<span class="n">320</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">26</td><td>  </td></tr><tr><td class="number">27</td><td>     </td></tr><tr><td class="number">28</td><td>    <span class="c">// OK CANCEL BUTTONS</span></td></tr><tr><td class="number">29</td><td>      <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">370</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"FORGET!               DO IT !"</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">30</td><td>      <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">150</span>,<span class="n">370</span>,<span class="n">160</span>,<span class="n">380</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">31</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">320</span>,<span class="n">370</span>,<span class="n">330</span>,<span class="n">380</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>     </td></tr><tr><td class="number">33</td><td>     <span class="k1">if</span> <span class="k2">(</span>mouse_y&gt;370 <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k3">&lt;</span><span class="n">380</span><span class="k2">)</span></td></tr><tr><td class="number">34</td><td>         <span class="k2">{</span></td></tr><tr><td class="number">35</td><td>         <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a> <span class="k3">&gt;</span> <span class="n">150</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span><span class="n">160</span><span class="k2">)</span><span class="c">//escape</span></td></tr><tr><td class="number">36</td><td>         <span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer, <span class="n">151</span>,<span class="n">371</span>,<span class="n">159</span>,<span class="n">379</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">37</td><td>         <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>index_quit<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">38</td><td>         <span class="k2">}</span></td></tr><tr><td class="number">39</td><td>         <span class="k1">if</span> <span class="k2">(</span>mouse_x&gt;320 <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span><span class="n">330</span><span class="k2">)</span></td></tr><tr><td class="number">40</td><td>         <span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer, <span class="n">321</span>,<span class="n">371</span>,<span class="n">329</span>,<span class="n">379</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>          <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">42</td><td>          <span class="k2">{</span></td></tr><tr><td class="number">43</td><td>          index_quit<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">44</td><td>          <span class="k2">}</span>      </td></tr><tr><td class="number">45</td><td>         </td></tr><tr><td class="number">46</td><td>         </td></tr><tr><td class="number">47</td><td>         </td></tr><tr><td class="number">48</td><td>         <span class="k2">}</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 17:40:21 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span> 
 <span class="k2">{</span>
     <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>scancode<span class="k2">)</span><span class="k2">;</span>

 
     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key."</span>, keyname<span class="k2">)</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p>
</p></div></div><p>What is in the scancode value?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 30 Jun 2006 18:03:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>keyname string is &lt;none&gt; scancode is O</p><p>I made several try, thinking about a trouble with keypress or buffer satured because of the loop while....:&#39;(
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 18:05:54 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Is keyboard installed ? And timer ?</p><p>Show us your init routine.</p><p>It should look like this:</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 30 Jun 2006 18:09:46 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>yep...<br />I m under Dev_cpp 4.9.9.2 and with the dev pack of allegro 4.2 from dev pack repository</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td>&#160;</td></tr><tr><td class="number">2</td><td><span class="p">#include "allegro.h"     </span></td></tr><tr><td class="number">3</td><td><span class="p">#include "stdio.h"</span></td></tr><tr><td class="number">4</td><td><span class="p">#include "winalleg.h" </span></td></tr><tr><td class="number">5</td><td>&#160;</td></tr><tr><td class="number">6</td><td><span class="k1">int</span> scancode<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">7</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> buffer<span class="k2">;</span></td></tr><tr><td class="number">8</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> fond1<span class="k2">;</span></td></tr><tr><td class="number">9</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> mouse<span class="k2">;</span></td></tr><tr><td class="number">10</td><td><span class="k1">bool</span> index_quit<span class="k3">=</span><span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">11</td><td>&#160;</td></tr><tr><td class="number">12</td><td>&#160;</td></tr><tr><td class="number">13</td><td>&#160;</td></tr><tr><td class="number">14</td><td>&#160;</td></tr><tr><td class="number">15</td><td><span class="k1">int</span> quit_funct<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">16</td><td><span class="k2">{</span></td></tr><tr><td class="number">17</td><td>     <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>buffer<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>     <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>fond1<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td>     <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>mouse<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">20</td><td>     <span class="k1">return</span><span class="k2">(</span><span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">21</td><td><span class="k2">}</span></td></tr><tr><td class="number">22</td><td>&#160;</td></tr><tr><td class="number">23</td><td><span class="c">////////////////////////////////////////////////////////////////////////////////</span></td></tr><tr><td class="number">24</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span></td></tr><tr><td class="number">25</td><td><span class="k2">{</span></td></tr><tr><td class="number">26</td><td>  <a href="http://www.allegro.cc/manual/allegro_init" target="_blank"><span class="a">allegro_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">27</td><td> </td></tr><tr><td class="number">28</td><td>    </td></tr><tr><td class="number">29</td><td>    <a href="http://www.allegro.cc/manual/install_keyboard" target="_blank"><span class="a">install_keyboard</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">30</td><td>    <a href="http://www.allegro.cc/manual/install_mouse" target="_blank"><span class="a">install_mouse</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">31</td><td>    <a href="http://www.allegro.cc/manual/install_timer" target="_blank"><span class="a">install_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">32</td><td>     <a href="http://www.allegro.cc/manual/set_color_depth" target="_blank"><span class="a">set_color_depth</span></a><span class="k2">(</span><span class="n">16</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">33</td><td>     <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED,<span class="n">442</span>,<span class="n">442</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">34</td><td>     </td></tr><tr><td class="number">35</td><td>&#160;</td></tr><tr><td class="number">36</td><td>    </td></tr><tr><td class="number">37</td><td>     <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED,<span class="n">440</span>,<span class="n">400</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k3">!</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span><span class="k2">{</span></td></tr><tr><td class="number">38</td><td>     <a href="http://www.allegro.cc/manual/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_TEXT,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">39</td><td>     <a href="http://www.allegro.cc/manual/allegro_message" target="_blank"><span class="a">allegro_message</span></a><span class="k2">(</span><span class="s">"%s\nSchwartz_Peter's Video Mode:\n 440,400,0,0 and Higher\n16 or 32 bits better look\n\n"</span>, <a href="http://www.allegro.cc/manual/allegro_error" target="_blank"><span class="a">allegro_error</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">40</td><td>     quit_funct<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">41</td><td>     <span class="k2">}</span></td></tr><tr><td class="number">42</td><td>      fond1<span class="k3">=</span><a href="http://www.allegro.cc/manual/load_bitmap" target="_blank"><span class="a">load_bitmap</span></a><span class="k2">(</span><span class="s">"/schwartzpeter/img/keyboard_detect_flag.tga"</span>,NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">43</td><td>      mouse<span class="k3">=</span><a href="http://www.allegro.cc/manual/load_bitmap" target="_blank"><span class="a">load_bitmap</span></a><span class="k2">(</span><span class="s">"/schwartzpeter/img/curseur1.bmp"</span>,NULL<span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">44</td><td>     buffer<span class="k3">=</span><a href="http://www.allegro.cc/manual/create_bitmap" target="_blank"><span class="a">create_bitmap</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/SCREEN_W" target="_blank"><span class="a">SCREEN_W</span></a>,<a href="http://www.allegro.cc/manual/SCREEN_H" target="_blank"><span class="a">SCREEN_H</span></a><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">45</td><td>     </td></tr><tr><td class="number">46</td><td>     </td></tr><tr><td class="number">47</td><td>     <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">48</td><td>   </td></tr><tr><td class="number">49</td><td>&#160;</td></tr><tr><td class="number">50</td><td>     </td></tr><tr><td class="number">51</td><td>     <span class="k1">while</span> <span class="k2">(</span>index_quit<span class="k3">=</span><span class="k3">=</span><span class="n">0</span><span class="k2">)</span></td></tr><tr><td class="number">52</td><td>     <span class="k2">{</span></td></tr><tr><td class="number">53</td><td>       <span class="c">//clear_bitmap(buffer);</span></td></tr><tr><td class="number">54</td><td>&#160;</td></tr><tr><td class="number">55</td><td>     <a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer,<span class="n">0</span>,<span class="n">0</span>,<span class="n">440</span>,<span class="n">400</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">255</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">56</td><td>     <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>buffer,fond1,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><span class="k3">-</span><span class="n">5</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">;</span> </td></tr><tr><td class="number">57</td><td>    </td></tr><tr><td class="number">58</td><td>     </td></tr><tr><td class="number">59</td><td>     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">10</span>, <span class="n">195</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"Keyboard Detection:"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">60</td><td> </td></tr><tr><td class="number">61</td><td>    </td></tr><tr><td class="number">62</td><td>      <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>scancode<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">63</td><td>&#160;</td></tr><tr><td class="number">64</td><td>&#160;</td></tr><tr><td class="number">65</td><td>     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key. %d"</span>, keyname, scancode<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">66</td><td>          <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">67</td><td>          </td></tr><tr><td class="number">68</td><td>&#160;</td></tr><tr><td class="number">69</td><td>&#160;</td></tr><tr><td class="number">70</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">230</span>,<span class="n">50</span>,<span class="n">240</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">71</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">250</span>,<span class="n">50</span>,<span class="n">260</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">72</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">270</span>,<span class="n">50</span>,<span class="n">280</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">73</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">290</span>,<span class="n">50</span>,<span class="n">300</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">74</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">40</span>,<span class="n">310</span>,<span class="n">50</span>,<span class="n">320</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">75</td><td>  </td></tr><tr><td class="number">76</td><td>     </td></tr><tr><td class="number">77</td><td>    <span class="c">// OK CANCEL BUTTONS</span></td></tr><tr><td class="number">78</td><td>      <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">370</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"FORGET!               DO IT !"</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">79</td><td>      <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">150</span>,<span class="n">370</span>,<span class="n">160</span>,<span class="n">380</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">80</td><td>     <a href="http://www.allegro.cc/manual/rect" target="_blank"><span class="a">rect</span></a><span class="k2">(</span>buffer, <span class="n">320</span>,<span class="n">370</span>,<span class="n">330</span>,<span class="n">380</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">81</td><td>     </td></tr><tr><td class="number">82</td><td>     <span class="k1">if</span> <span class="k2">(</span>mouse_y&gt;370 <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k3">&lt;</span><span class="n">380</span><span class="k2">)</span></td></tr><tr><td class="number">83</td><td>         <span class="k2">{</span></td></tr><tr><td class="number">84</td><td>         <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a> <span class="k3">&gt;</span> <span class="n">150</span> <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span><span class="n">160</span><span class="k2">)</span><span class="c">//escape</span></td></tr><tr><td class="number">85</td><td>         <span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer, <span class="n">151</span>,<span class="n">371</span>,<span class="n">159</span>,<span class="n">379</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">86</td><td>         <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span><span class="k2">{</span>index_quit<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">87</td><td>         <span class="k2">}</span></td></tr><tr><td class="number">88</td><td>         <span class="k1">if</span> <span class="k2">(</span>mouse_x&gt;320 <span class="k3">&amp;</span><span class="k3">&amp;</span> <a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a><span class="k3">&lt;</span><span class="n">330</span><span class="k2">)</span></td></tr><tr><td class="number">89</td><td>         <span class="k2">{</span><a href="http://www.allegro.cc/manual/rectfill" target="_blank"><span class="a">rectfill</span></a><span class="k2">(</span>buffer, <span class="n">321</span>,<span class="n">371</span>,<span class="n">329</span>,<span class="n">379</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">90</td><td>          <span class="k1">if</span> <span class="k2">(</span><a href="http://www.allegro.cc/manual/mouse_b" target="_blank"><span class="a">mouse_b</span></a><span class="k3">&amp;</span><span class="n">1</span><span class="k2">)</span></td></tr><tr><td class="number">91</td><td>          <span class="k2">{</span></td></tr><tr><td class="number">92</td><td>          index_quit<span class="k3">=</span><span class="n">1</span><span class="k2">;</span><span class="k2">}</span></td></tr><tr><td class="number">93</td><td>          <span class="k2">}</span>      </td></tr><tr><td class="number">94</td><td>         </td></tr><tr><td class="number">95</td><td>         </td></tr><tr><td class="number">96</td><td>         </td></tr><tr><td class="number">97</td><td>         <span class="k2">}</span></td></tr><tr><td class="number">98</td><td>     </td></tr><tr><td class="number">99</td><td>        </td></tr><tr><td class="number">100</td><td>     </td></tr><tr><td class="number">101</td><td>     <a href="http://www.allegro.cc/manual/draw_sprite" target="_blank"><span class="a">draw_sprite</span></a><span class="k2">(</span>buffer,mouse,<span class="k2">(</span><span class="k1">int</span><span class="k2">)</span><a href="http://www.allegro.cc/manual/mouse_x" target="_blank"><span class="a">mouse_x</span></a>,<a href="http://www.allegro.cc/manual/mouse_y" target="_blank"><span class="a">mouse_y</span></a><span class="k2">)</span><span class="k2">;</span> </td></tr><tr><td class="number">102</td><td>     <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">103</td><td>   </td></tr><tr><td class="number">104</td><td>     <span class="k2">}</span></td></tr><tr><td class="number">105</td><td>     </td></tr><tr><td class="number">106</td><td>     <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>fond1<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">107</td><td>     <a href="http://www.allegro.cc/manual/destroy_bitmap" target="_blank"><span class="a">destroy_bitmap</span></a><span class="k2">(</span>mouse<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">108</td><td><a href="http://www.allegro.cc/manual/remove_timer" target="_blank"><span class="a">remove_timer</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> </td></tr><tr><td class="number">109</td><td><a href="http://www.allegro.cc/manual/allegro_exit" target="_blank"><span class="a">allegro_exit</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>  </td></tr><tr><td class="number">110</td><td>     </td></tr><tr><td class="number">111</td><td><span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>     </td></tr><tr><td class="number">112</td><td><span class="k2">}</span>     </td></tr><tr><td class="number">113</td><td><a href="http://www.allegro.cc/manual/END_OF_MAIN" target="_blank"><span class="a">END_OF_MAIN</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 18:11:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well of course it&#39;s none. 0 isn&#39;t a valid scancode! Try putting in an actual key value, like KEY_ENTER.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 30 Jun 2006 18:13:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>wait wait wait....</p><p>if i well understand, scancode_funct is not a listening of keyboard but just a converting function ?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 18:18:48 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Have you really look at exkeys ? If not you should.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (GullRaDriel)</author>
		<pubDate>Fri, 30 Jun 2006 18:21:56 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>no exkeys in dev pack... I will take a look. I was used to a version of allegro about 3 years ago. and characters are not at all my speciality...</p><p>when using readkey function it crashes....</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">int</span> ch<span class="k2">;</span> <span class="c">// I get out scancode int</span>

....

 <span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
    <span class="k2">{</span>
     ch<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span><span class="k2">}</span>
     <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>ch<span class="k2">)</span><span class="k2">;</span>
     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key. %d"</span>, keyname, ch<span class="k2">)</span><span class="k2">;</span>
     <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 18:26:30 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Yeah, readkey returns a value and scancode combined.<br /><span class="source-code"><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a></span>You need to read that and find how to get a scancode from readkey.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 30 Jun 2006 18:27:36 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>thanks a lot. <br />I have read exkeys wich is quite hudge.&gt;:( and full of different ways to do it.<br />so in fact not very simple to understand how you use this function clearely, simply.<br />The main thing I know, is that using ch=readkey makes a trash....<br />wich begins to be quiet ridiculous and tiring for such a little exe to know what is the name of the key ( argghhh)</p><p>Yes , I know, the following things must be ridiculous...;D</p><p>All of that just to be helpfull to other keyboard and make adaptation quickly... <br />So it would be very nice if you explain to me what is my error there, and why it crashes ?<br />I never arrived to crash with allegro before... except when missing media.</p><p>waouaouwouaou...:-[</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">if</span><span class="k2">(</span><a href="http://www.allegro.cc/manual/keypressed" target="_blank"><span class="a">keypressed</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span>
    <span class="k2">{</span>
     ch<span class="k3">=</span><a href="http://www.allegro.cc/manual/readkey" target="_blank"><span class="a">readkey</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span> <span class="c">//ch is an integer</span>
     <span class="k1">if</span> <span class="k2">(</span>ch <span class="k3">&gt;</span><span class="k3">&gt;</span> <span class="n">8</span><span class="k2">)</span> <span class="c">//if ch is not a double key press</span>
     <span class="k2">{</span>
<span class="c">//asking to convert ch with scancode in the name of the key we put inside the string keyname </span>
     <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span>keyname <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>ch<span class="k2">)</span><span class="k2">;</span> 

     <a href="http://www.allegro.cc/manual/textprintf_ex" target="_blank"><span class="a">textprintf_ex</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/font" target="_blank"><span class="a">font</span></a>, <span class="n">80</span>, <span class="n">230</span>,<a href="http://www.allegro.cc/manual/makecol" target="_blank"><span class="a">makecol</span></a><span class="k2">(</span><span class="n">100</span>,<span class="n">0</span>,<span class="n">255</span><span class="k2">)</span>,<span class="k3">-</span><span class="n">1</span>,<span class="s">"You pressed the %s key. %d"</span>, keyname, ch<span class="k2">)</span><span class="k2">;</span>
     <a href="http://www.allegro.cc/manual/blit" target="_blank"><span class="a">blit</span></a><span class="k2">(</span>buffer,<a href="http://www.allegro.cc/manual/screen" target="_blank"><span class="a">screen</span></a>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">0</span>,<span class="n">442</span>,<span class="n">442</span><span class="k2">)</span><span class="k2">;</span>        
     <span class="k2">}</span>
     
     <span class="k2">}</span>
</pre></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 18:42:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>No, it&#39;s not a double keypress. It gives you two types of information. One is the key value, stored in the first 8 bits of the returned value. The next is the scancode, suck as KEY_ENTER, etc. Both will always be in the value. Therefore, to get the scancode from the value, you take the value of <tt>readkey()</tt> and do the <tt>&gt;&gt; 8</tt>, then pass that shifted value to <tt>scancode_to_name</tt>.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Fri, 30 Jun 2006 19:05:22 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>great, Ryan.</p><p>This IS an answer. its very clear<br />so </p><p><span class="source-code"> <span class="k1">char</span> <span class="k1">const</span> <span class="k3">*</span><a href="http://www.allegro.cc/manual/key" target="_blank"><span class="a">key</span></a> <span class="k3">=</span> <a href="http://www.allegro.cc/manual/scancode_to_name" target="_blank"><span class="a">scancode_to_name</span></a><span class="k2">(</span>ch&gt;&gt;8<span class="k2">)</span><span class="k2">;</span></span> </p><p>works!</p><p>thanks about your answer, because it is far more clear to know that readkey() returns 2 type of informations.</p><p>merci<br /><img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (karistouf)</author>
		<pubDate>Fri, 30 Jun 2006 19:10:51 +0000</pubDate>
	</item>
</rss>
