<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>D Derelict test program macOS</title>
		<link>http://www.allegro.cc/forums/view/616943</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Fri, 16 Jun 2017 23:31:11 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I&#39;m trying to do a minimal program with graphics in the D programming language (dlang.org) using Derelicts Allegro binding on macOS. I used <span class="source-code">brew install allegro</span>.</p><p>Has any one else gotten Allegro 5 going with D on macOS?</p><div class="source-code"><div class="toolbar"><span class="button numbers"><b>#</b></span><span class="button select">Select</span><span class="button expand">Expand</span></div><div class="inner"><span class="number">  1</span>import derelict.allegro5<span class="k2">;</span>
<span class="number">  2</span>
<span class="number">  3</span>import std.stdio: writeln<span class="k2">;</span>
<span class="number">  4</span>
<span class="number">  5</span><a href="http://www.allegro.cc/manual/ALLEGRO_DISPLAY"><span class="a">ALLEGRO_DISPLAY</span></a><span class="k3">*</span> DISPLAY<span class="k2">;</span>
<span class="number">  6</span>
<span class="number">  7</span><span class="k1">int</span> main<span class="k2">(</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number">  8</span>    DerelictAllegro5.load<span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number">  9</span>
<span class="number"> 10</span>  <span class="k1">return</span> DerelictAllegro5.run<span class="k2">(</span> <span class="k2">{</span>
<span class="number"> 11</span>    <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span> <a href="http://www.allegro.cc/manual/al_init"><span class="a">al_init</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 12</span>      writeln<span class="k2">(</span><span class="s">"failed to initialize allegro!"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 13</span>      <span class="k1">return</span> <span class="k3">-</span><span class="n">1</span><span class="k2">;</span>
<span class="number"> 14</span>    <span class="k2">}</span>
<span class="number"> 15</span>
<span class="number"> 16</span>    DISPLAY <span class="k3">=</span> <a href="http://www.allegro.cc/manual/al_create_display"><span class="a">al_create_display</span></a><span class="k2">(</span> <span class="n">640</span>, <span class="n">480</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 17</span>    <a href="http://www.delorie.com/djgpp/doc/libc/libc_48.html" target="_blank">assert</a><span class="k2">(</span>DISPLAY, <span class="s">"failed to create display"</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 18</span>    scope<span class="k2">(</span><a href="http://www.delorie.com/djgpp/doc/libc/libc_298.html" target="_blank">exit</a><span class="k2">)</span> <a href="http://www.allegro.cc/manual/al_destroy_display"><span class="a">al_destroy_display</span></a><span class="k2">(</span> DISPLAY <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 19</span>
<span class="number"> 20</span>    <a href="http://www.allegro.cc/manual/al_clear_to_color"><span class="a">al_clear_to_color</span></a><span class="k2">(</span><a href="http://www.allegro.cc/manual/al_map_rgb"><span class="a">al_map_rgb</span></a><span class="k2">(</span><span class="n">255</span>,<span class="n">180</span>,<span class="n">0</span><span class="k2">)</span><span class="k2">)</span><span class="k2">;</span> <span class="c">//#error return value -11</span>
<span class="number"> 21</span>    <a href="http://www.allegro.cc/manual/al_flip_display"><span class="a">al_flip_display</span></a><span class="k2">(</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 22</span>
<span class="number"> 23</span>    <a href="http://www.allegro.cc/manual/al_rest"><span class="a">al_rest</span></a><span class="k2">(</span><span class="n">2</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 24</span>
<span class="number"> 25</span>    <span class="k1">return</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 26</span>  <span class="k2">}</span> <span class="k2">)</span><span class="k2">;</span>
<span class="number"> 27</span><span class="k2">}</span>
</div></div><p>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Joel Christensen)</author>
		<pubDate>Fri, 16 Jun 2017 06:29:31 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I run it with DAllegro in Linux. It works fine.</p><p>At a quick glance, DerelictAllegro looks like it&#39;s not maintained anywhere near that of DAllegro and may be behind in Allegro 5 versions. I&#39;m not a big fan of the naming convention either. But if it works for you, that&#39;s cool.</p><p><a href="https://github.com/SiegeLord/DAllegro5">https://github.com/SiegeLord/DAllegro5</a>
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Chris Katko)</author>
		<pubDate>Fri, 16 Jun 2017 07:18:06 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Hm, what error message are you getting?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (torhu)</author>
		<pubDate>Fri, 16 Jun 2017 07:25:59 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Program exited with code -11
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Joel Christensen)</author>
		<pubDate>Fri, 16 Jun 2017 07:48:42 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Right, tried running it in the debugger?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (torhu)</author>
		<pubDate>Fri, 16 Jun 2017 07:51:23 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>No, I haven&#39;t discovered debuggers. [snip]</p><p>I don&#39;t know how, or if I can use a debugger in D on macOS.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Joel Christensen)</author>
		<pubDate>Fri, 16 Jun 2017 08:27:39 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Looks like it&#39;s a thread-related issue. It works when DISPLAY is marked __gshared, or the declaration is moved inside the function literal. That means it&#39;s an issue with the binding and not Allegro.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mike Parker)</author>
		<pubDate>Fri, 16 Jun 2017 10:07:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry, I totally missed your error message on your code on my screen width. I thought you were just asking about people&#39;s experiences with D and Allegro.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Chris Katko)</author>
		<pubDate>Fri, 16 Jun 2017 23:31:11 +0000</pubDate>
	</item>
</rss>
