<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>MSVC8 Bitmaps</title>
		<link>http://www.allegro.cc/forums/view/590532</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Wed, 14 Mar 2007 02:21:37 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, I&#39;m currently moving from Dev-c++ to MS Visual C++ 2005 express edition. I&#39;ve got it set up, with the microsoft platform SDK, and then followed this to install allegro:<br /><a href="http://wiki.allegro.cc/VisualCExpress2005">http://wiki.allegro.cc/VisualCExpress2005</a><br />Anyway, I&#39;ve got allegro sorted ok but when I declare a bitmap pointer using:
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>a <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">"a.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span>
</pre></div></div><p>
This gives the error &quot;This application has requested the runtime to terminate it in an unusual way.&quot;<br />Please help...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (xinco1)</author>
		<pubDate>Wed, 14 Mar 2007 01:21:05 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>You need to check your return values:
</p><div class="source-code snippet"><div class="inner"><pre><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a> <span class="k3">*</span>a <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">"a.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span>
<span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>a<span class="k2">)</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_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>
    <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">"Bitmap failed to load!"</span><span class="k2">)</span><span class="k2">;</span>
    <a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">(</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="k2">}</span>
</pre></div></div><p>

Once you do that, put a.bmp into the Debug or Release folder of your project directory.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Wed, 14 Mar 2007 01:24:03 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Ok, this is weird but it says <br />&quot;syntax error : &#39;if&#39;<br />syntax error : missing &#39;;&#39; before &#39;{&#39;<br />&#39;{&#39; : missing function header (old-style formal list?)&quot;<br />Thats only shown on the code you just posted.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (xinco1)</author>
		<pubDate>Wed, 14 Mar 2007 01:37:20 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Oh, of course. You can&#39;t load a bitmap on the global scope, you have to do it inside of a function. The reason is because allegro_init hasn&#39;t been called yet on the global scope, nor has set_color_depth or set_gfx_mode. So:
</p><div class="source-code"><div class="toolbar"></div><div class="inner"><table width="100%"><tbody><tr><td class="number">1</td><td><a href="http://www.allegro.cc/manual/BITMAP" target="_blank"><span class="a">BITMAP</span></a><span class="k3">*</span> a <span class="k3">=</span> NULL<span class="k2">;</span></td></tr><tr><td class="number">2</td><td>&#160;</td></tr><tr><td class="number">3</td><td><span class="k1">int</span> main<span class="k2">(</span><span class="k1">int</span> argc, <span class="k1">char</span><span class="k3">*</span> argv<span class="k2">[</span><span class="k2">]</span><span class="k2">)</span></td></tr><tr><td class="number">4</td><td><span class="k2">{</span></td></tr><tr><td class="number">5</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">6</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">32</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/set_gfx_mode" target="_blank"><span class="a">set_gfx_mode</span></a><span class="k2">(</span>GFX_AUTODETECT_WINDOWED, <span class="n">640</span>, <span class="n">480</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">8</td><td>&#160;</td></tr><tr><td class="number">9</td><td>    a <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">"a.bmp"</span>, NULL<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">10</td><td>    <span class="k1">if</span><span class="k2">(</span><span class="k3">!</span>a<span class="k2">)</span></td></tr><tr><td class="number">11</td><td>    <span class="k2">{</span></td></tr><tr><td class="number">12</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">13</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">"Bitmap failed to load!"</span><span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">14</td><td>        <span class="k1">return</span> <span class="n">1</span><span class="k2">;</span></td></tr><tr><td class="number">15</td><td>    <span class="k2">}</span></td></tr><tr><td class="number">16</td><td>    </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>a<span class="k2">)</span><span class="k2">;</span></td></tr><tr><td class="number">18</td><td>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span></td></tr><tr><td class="number">19</td><td><span class="k2">}</span></td></tr></tbody></table></div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Wed, 14 Mar 2007 01:43:29 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Ok, I&#39;m currently moving from Dev-c++ to MS Visual C++ 2005 express edition.
</p></div></div><p>

Why?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Paul whoknows)</author>
		<pubDate>Wed, 14 Mar 2007 01:52:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Because Dev-C++ is a bad IDE, MSVS has a great debugger, and it&#39;s free?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (CGamesPlay)</author>
		<pubDate>Wed, 14 Mar 2007 01:53:58 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Oh, of course. You can&#39;t load a bitmap on the global scope, you have to do it inside of a function. The reason is because allegro_init hasn&#39;t been called yet on the global scope, nor has set_color_depth or set_gfx_mode. So:<br />BITMAP* a = NULL;</p><p>int main(int argc, char* argv[])<br />{<br />    allegro_init();<br />    set_color_depth(32);<br />    set_gfx_mode(GFX_AUTODETECT_WINDOWED, 640, 480, 0, 0);</p><p>    a = load_bitmap( &quot;a.bmp&quot;, NULL);<br />    if(!a)<br />    {<br />        set_gfx_mode(GFX_TEXT, 0, 0, 0, 0);<br />        allegro_message(&quot;Bitmap failed to load!&quot;);<br />        return 1;<br />    }<br />    <br />    destroy_bitmap(a);<br />    return 0;<br />}
</p></div></div><p>
I can&#39;t belive I missed that. Thanks! BTW: MSVS IS free but requires registration. It&#39;s more stable, easier to use(for example on really long peices of code, voids can be minimized) and the debugger really is supreme.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (xinco1)</author>
		<pubDate>Wed, 14 Mar 2007 02:05:33 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>It requires registration? I never had to register for my copies...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (BAF)</author>
		<pubDate>Wed, 14 Mar 2007 02:21:37 +0000</pubDate>
	</item>
</rss>
