<?xml version="1.0"?>
<rss version="2.0">
	<channel>
		<title>Allegro 4.1.17 - Mouse Acceleration</title>
		<link>http://www.allegro.cc/forums/view/452248</link>
		<description>Allegro.cc Forum Thread</description>
		<webMaster>matthew@allegro.cc (Matthew Leverton)</webMaster>
		<lastBuildDate>Sun, 23 Jan 2005 06:59:45 +0000</lastBuildDate>
	</channel>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Well, I tried the new mouse code in Allegro 4.1.17 with Sunny Ball. It&#39;s better than the old code, but I think it&#39;s still too fast.</p><p>Attached is a modified 4.1.16 version that James Lohr kindly sent me. The mouse movement is slower, but feels much smoother to me. I&#39;d rather use this, but will then of course lose the 4.1.17 advantages.</p><p>Is there any chance that new versions of Allegro will have an acceleration setting so we can set it to suit? Or even get the raw mouse mickeys to scale in our own way?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 03:42:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>What&#39;s wrong with the current set_mouse_speed() and mouse mickeys?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (gnolam)</author>
		<pubDate>Sat, 22 Jan 2005 04:25:13 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>
Is there any chance that new versions of Allegro will have an acceleration setting so we can set it to suit? 
</p></div></div><p>
How hard is it to just track the movements and accelerate them yourself? Also, isn&#39;t mouse acceleration OS provided?
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Chris Katko)</author>
		<pubDate>Sat, 22 Jan 2005 04:27:52 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
See this thread: [url <a href="http://www.allegro.cc/forums/view_thread.php?_id=419528">http://www.allegro.cc/forums/view_thread.php?_id=419528</a>]</p><p>AFAIK we could see the scaling method was also the problem. Although this has been changed in 4.1.17 I&#39;m not sure if you can get the raw data for the mouse mickeys. You may be able to now..
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 04:35:37 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Attached is a modified 4.1.16 version that James Lohr kindly sent me. The mouse movement is slower, but feels much smoother to me.</p></div></div><p>
That&#39;s strange, since his original patch made it more or less unmodified into 4.1.17 (where there are still some problems with it that have been fixed in CVS)</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>I&#39;d rather use this, but will then of course lose the 4.1.17 advantages.</p></div></div><p>
Not to mention those of all future versions. By the way, may I say that you&#39;ve picked a horrible time to upgrade to 4.1.17? <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Is there any chance that new versions of Allegro will have an acceleration setting so we can set it to suit?</p></div></div><p>
I&#39;ve never used set_mouse_speed() personally, but I suppose you could use that.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Or even get the raw mouse mickeys to scale in our own way?</p></div></div><p>
No plans. The main issue with mickeys being that reporting them reliably in a portable way is rather tricky (read: impossible).</p><p>Again, the lack of active developers using Windows doesn&#39;t help much either...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Sat, 22 Jan 2005 05:09:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>By the way, may I say that you&#39;ve picked a horrible time to upgrade to 4.1.17? <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /></p></div></div><p>

Oh noes, a 4.1.18 release?</p><p>Couldn&#39;t we set the set_mouse_speed to 0 to get the raw data though?<br />4.1.17 is definately faster and more accelerated than the patched 4.1.16 version.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 15:40:55 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>What&#39;s wrong with the current set_mouse_speed() and mouse mickeys?</p></div></div><p>

The problem is that the mickeys are accelerated and accelerated incorrectly.</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>That&#39;s strange, since his original patch made it more or less unmodified into 4.1.17 (where there are still some problems with it that have been fixed in CVS)</p></div></div><p>

Well actually I had a look at wmouse.c in 4.1.17 .  It looks like my patch has been tampered with in a way as to completely remove the improvement that I made.  Why on earth has:</p><div class="source-code snippet"><div class="inner"><pre><span class="k1">static</span> <span class="k1">int</span> last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
.
.
.
            <span class="k1">if</span> <span class="k2">(</span>last_was_x<span class="k2">)</span>
               last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
</pre></div></div><p>

been added?  It undoes exactly what my patch added.</p><p>Furthermore I seem to recall that my patch was not applied at all to 4.1.16 (but i don&#39;t have a 4.1.16 handy to check this).</p><p>At the moment I&#39;m having to rewrite some of wmouse.c every time I get a new version of the WIP &#39;cause the mouse acceleration has gone back to being absolutely awful.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (james_lohr)</author>
		<pubDate>Sat, 22 Jan 2005 16:27:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
I agree with James, his patched 4.1.16 feels much nicer than the feeling from 4.1.17
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 16:31:26 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Why on earth has:</p><p>static int last_was_x = 0;<br />.<br />.<br />.<br />            if (last_was_x)<br />               last_mickeyy = 0;</p><p>been added?</p></div></div><p>
As I recall, because messages being send to the message handler aren&#039;t guarenteed to be alternating x/y pairs. I&#039;m not sure what the differences were, but it should be functionally similar.<br />As I recall, the problem was incorrect scaling (by accelerating only on the amount of x/y values change instead of by the total distance crossed). That should have been fixed.</p><p>Also, check out current CVS for some more changes that were made. I don&#039;t recall off the top of my head what they were, but the sourceforge tracker should help there. </p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>Furthermore I seem to recall that my patch was not applied at all to 4.1.16</p></div></div><p>
Wether for 4.1.16 or 4.1.17, I did apply something equivalent to the patch you posted at some point (manually, the patch didn&#039;t apply through the patch program for some reason).</p><div class="quote_container"><div class="title">Quote:</div><div class="quote"><p>At the moment I&#039;m having to rewrite some of wmouse.c every time I get a new version of the WIP &#039;cause the mouse acceleration has gone back to being absolutely awful.</p></div></div><p>
Rather than hacking about your copy of Allegro, it&#039;d be really nice if you bring things like these up after a WIP is released - either on the forums, or through private message or e-mail. Because things that are broken don&#039;t get fixed in the next release unless we know they&#039;re broken.</p><p>EDIT:<br />The CVS revision that James&#039; patch was applied in is 1.38, the 4.1.16 release is revision 1.36. Elias made two changes to this, one in revision  1.40 (which is also the 4.1.17 release) and again in 1.41.<br />The diff from 1.37 to 1.38 (ie, the acceleration patch) is
</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><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span>
<span class="number">  2</span>RCS file: <span class="k3">/</span>cvsroot<span class="k3">/</span>alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c,v
<span class="number">  3</span>retrieving revision <span class="n">1</span>.<span class="n">37</span>
<span class="number">  4</span>retrieving revision <span class="n">1</span>.<span class="n">38</span>
<span class="number">  5</span>diff <span class="k3">-</span>u <span class="k3">-</span>r1.37 <span class="k3">-</span>r1.38
<span class="number">  6</span><span class="k3">-</span><span class="k3">-</span><span class="k3">-</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">10</span><span class="k3">/</span><span class="n">20</span> <span class="n">20</span><span class="k2">:</span><span class="n">03</span><span class="k2">:</span><span class="n">31</span>  <span class="n">1</span>.<span class="n">37</span>
<span class="number">  7</span><span class="k3">+</span><span class="k3">+</span><span class="k3">+</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">12</span><span class="k3">/</span><span class="n">01</span> <span class="n">23</span><span class="k2">:</span><span class="n">03</span><span class="k2">:</span><span class="n">57</span>  <span class="n">1</span>.<span class="n">38</span>
<span class="number">  8</span>@@ <span class="k3">-</span><span class="n">92</span>,<span class="n">8</span> <span class="k3">+</span><span class="n">92</span>,<span class="n">8</span> @@
<span class="number">  9</span> <span class="p">#define MAF_DEFAULT 1                 /* mouse acceleration parameters */</span>
<span class="number"> 10</span> <span class="k1">static</span> <span class="k1">int</span> mouse_accel_fact <span class="k3">=</span> MAF_DEFAULT<span class="k2">;</span>
<span class="number"> 11</span> <span class="k1">static</span> <span class="k1">int</span> mouse_accel_mult <span class="k3">=</span> MAF_DEFAULT<span class="k2">;</span>
<span class="number"> 12</span><span class="k3">-</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr1 <span class="k3">=</span> <span class="n">5</span><span class="k2">;</span>
<span class="number"> 13</span><span class="k3">-</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr2 <span class="k3">=</span> <span class="n">16</span><span class="k2">;</span>
<span class="number"> 14</span><span class="k3">+</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr1 <span class="k3">=</span> <span class="n">50</span><span class="k2">;</span>     <span class="c">/* 50 = 5^2 *2 */</span>
<span class="number"> 15</span><span class="k3">+</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr2 <span class="k3">=</span> <span class="n">512</span><span class="k2">;</span>    <span class="c">/* 512 = 16^2 *2 */</span>
<span class="number"> 16</span> 
<span class="number"> 17</span> <span class="k1">static</span> <span class="k1">int</span> mouse_minx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>            <span class="c">/* mouse range */</span>
<span class="number"> 18</span> <span class="k1">static</span> <span class="k1">int</span> mouse_miny <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 19</span>@@ <span class="k3">-</span><span class="n">208</span>,<span class="n">31</span> <span class="k3">+</span><span class="n">208</span>,<span class="n">39</span> @@
<span class="number"> 20</span>  <span class="k3">*</span><span class="k3">/</span>
<span class="number"> 21</span> <span class="k1">static</span> <span class="k1">void</span> mouse_dinput_handle_event<span class="k2">(</span><span class="k1">int</span> ofs, <span class="k1">int</span> data<span class="k2">)</span>
<span class="number"> 22</span> <span class="k2">{</span>
<span class="number"> 23</span><span class="k3">+</span>   <span class="k1">static</span> <span class="k1">int</span> last_mickeyx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 24</span><span class="k3">+</span>   <span class="k1">static</span> <span class="k1">int</span> last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 25</span><span class="k3">+</span>   <span class="k1">int</span> mag<span class="k2">;</span>
<span class="number"> 26</span><span class="k3">+</span>   
<span class="number"> 27</span>    <span class="k1">switch</span> <span class="k2">(</span>ofs<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 28</span> 
<span class="number"> 29</span>       <span class="k1">case</span> DIMOFS_X:
<span class="number"> 30</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 31</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 32</span><span class="k3">-</span>               <span class="k1">if</span> <span class="k2">(</span>ABS<span class="k2">(</span>data<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 33</span><span class="k3">+</span>               mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 34</span><span class="k3">+</span>               <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 35</span>                   data <span class="k3">*</span><span class="k3">=</span> <span class="k2">(</span>mouse_accel_mult<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 36</span><span class="k3">-</span>               <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>ABS<span class="k2">(</span>data<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 37</span><span class="k3">+</span>               <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 38</span>                   data <span class="k3">*</span><span class="k3">=</span> mouse_accel_mult<span class="k2">;</span>
<span class="number"> 39</span>             <span class="k2">}</span>
<span class="number"> 40</span> 
<span class="number"> 41</span>             dinput_x <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 42</span><span class="k3">+</span>            last_mickeyx <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 43</span>          <span class="k2">}</span>
<span class="number"> 44</span>          <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 45</span> 
<span class="number"> 46</span>       <span class="k1">case</span> DIMOFS_Y:
<span class="number"> 47</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 48</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 49</span><span class="k3">-</span>               <span class="k1">if</span> <span class="k2">(</span>ABS<span class="k2">(</span>data<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 50</span><span class="k3">+</span>               mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 51</span><span class="k3">+</span>               <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 52</span>                   data <span class="k3">*</span><span class="k3">=</span> <span class="k2">(</span>mouse_accel_mult<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 53</span><span class="k3">-</span>               <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>ABS<span class="k2">(</span>data<span class="k2">)</span> <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 54</span><span class="k3">+</span>               <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 55</span>                   data <span class="k3">*</span><span class="k3">=</span> mouse_accel_mult<span class="k2">;</span>
<span class="number"> 56</span>             <span class="k2">}</span>
<span class="number"> 57</span> 
<span class="number"> 58</span>             dinput_y <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 59</span><span class="k3">+</span>            last_mickeyy <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 60</span>          <span class="k2">}</span>
<span class="number"> 61</span>          <span class="k1">break</span><span class="k2">;</span>
</div></div><p>(Or check the coloured diff [url <a href="http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.37&amp;r2=1.38]here[/url">http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.37&amp;r2=1.38]here[/url</a>])<br />Elias&#039; first fix (that is in 4.1.17) is 
</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><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span>
<span class="number">  2</span>RCS file: <span class="k3">/</span>cvsroot<span class="k3">/</span>alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c,v
<span class="number">  3</span>retrieving revision <span class="n">1</span>.<span class="n">39</span>
<span class="number">  4</span>retrieving revision <span class="n">1</span>.<span class="n">40</span>
<span class="number">  5</span>diff <span class="k3">-</span>u <span class="k3">-</span>r1.39 <span class="k3">-</span>r1.40
<span class="number">  6</span><span class="k3">-</span><span class="k3">-</span><span class="k3">-</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">12</span><span class="k3">/</span><span class="n">04</span> <span class="n">13</span><span class="k2">:</span><span class="n">24</span><span class="k2">:</span><span class="n">17</span>  <span class="n">1</span>.<span class="n">39</span>
<span class="number">  7</span><span class="k3">+</span><span class="k3">+</span><span class="k3">+</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">12</span><span class="k3">/</span><span class="n">05</span> <span class="n">08</span><span class="k2">:</span><span class="n">56</span><span class="k2">:</span><span class="n">32</span>  <span class="n">1</span>.<span class="n">40</span>
<span class="number">  8</span>@@ <span class="k3">-</span><span class="n">93</span>,<span class="n">8</span> <span class="k3">+</span><span class="n">93</span>,<span class="n">8</span> @@
<span class="number">  9</span> <span class="p">#define MAF_DEFAULT 1                 /* mouse acceleration parameters */</span>
<span class="number"> 10</span> <span class="k1">static</span> <span class="k1">int</span> mouse_accel_fact <span class="k3">=</span> MAF_DEFAULT<span class="k2">;</span>
<span class="number"> 11</span> <span class="k1">static</span> <span class="k1">int</span> mouse_accel_mult <span class="k3">=</span> MAF_DEFAULT<span class="k2">;</span>
<span class="number"> 12</span><span class="k3">-</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr1 <span class="k3">=</span> <span class="n">50</span><span class="k2">;</span>     <span class="c">/* 50 = 5^2 *2 */</span>
<span class="number"> 13</span><span class="k3">-</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr2 <span class="k3">=</span> <span class="n">512</span><span class="k2">;</span>    <span class="c">/* 512 = 16^2 *2 */</span>
<span class="number"> 14</span><span class="k3">+</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr1 <span class="k3">=</span> <span class="n">5</span> <span class="k3">*</span> <span class="n">5</span><span class="k2">;</span>
<span class="number"> 15</span><span class="k3">+</span><span class="k1">static</span> <span class="k1">int</span> mouse_accel_thr2 <span class="k3">=</span> <span class="n">16</span> <span class="k3">*</span> <span class="n">16</span><span class="k2">;</span>
<span class="number"> 16</span> 
<span class="number"> 17</span> <span class="k1">static</span> <span class="k1">int</span> mouse_minx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>            <span class="c">/* mouse range */</span>
<span class="number"> 18</span> <span class="k1">static</span> <span class="k1">int</span> mouse_miny <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 19</span>@@ <span class="k3">-</span><span class="n">211</span>,<span class="n">12</span> <span class="k3">+</span><span class="n">211</span>,<span class="n">15</span> @@
<span class="number"> 20</span> <span class="k2">{</span>
<span class="number"> 21</span>    <span class="k1">static</span> <span class="k1">int</span> last_mickeyx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 22</span>    <span class="k1">static</span> <span class="k1">int</span> last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 23</span><span class="k3">+</span>   <span class="k1">static</span> <span class="k1">int</span> last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 24</span>    <span class="k1">int</span> mag<span class="k2">;</span>
<span class="number"> 25</span><span class="k3">-</span>   
<span class="number"> 26</span><span class="k3">+</span>
<span class="number"> 27</span>    <span class="k1">switch</span> <span class="k2">(</span>ofs<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 28</span> 
<span class="number"> 29</span>       <span class="k1">case</span> DIMOFS_X:
<span class="number"> 30</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 31</span><span class="k3">+</span>            <span class="k1">if</span> <span class="k2">(</span>last_was_x<span class="k2">)</span>
<span class="number"> 32</span><span class="k3">+</span>               last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 33</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 34</span>                mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 35</span>                <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 36</span>@@ <span class="k3">-</span><span class="n">227</span>,<span class="n">11</span> <span class="k3">+</span><span class="n">230</span>,<span class="n">14</span> @@
<span class="number"> 37</span> 
<span class="number"> 38</span>             dinput_x <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 39</span>             last_mickeyx <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 40</span><span class="k3">+</span>            last_was_x <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 41</span>          <span class="k2">}</span>
<span class="number"> 42</span>          <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 43</span> 
<span class="number"> 44</span>       <span class="k1">case</span> DIMOFS_Y:
<span class="number"> 45</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 46</span><span class="k3">+</span>            <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>last_was_x<span class="k2">)</span>
<span class="number"> 47</span><span class="k3">+</span>               last_mickeyx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 48</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 49</span>                mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 50</span>                <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 51</span>@@ <span class="k3">-</span><span class="n">242</span>,<span class="n">6</span> <span class="k3">+</span><span class="n">248</span>,<span class="n">7</span> @@
<span class="number"> 52</span> 
<span class="number"> 53</span>             dinput_y <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 54</span>             last_mickeyy <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 55</span><span class="k3">+</span>            last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 56</span>          <span class="k2">}</span>
<span class="number"> 57</span>          <span class="k1">break</span><span class="k2">;</span>
</div></div><p> (or [url <a href="http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.39&amp;r2=1.40]colour">http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.39&amp;r2=1.40]colour</a> diff[/url])<br />and the second (in current CVS) is </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><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span><span class="k3">=</span>
<span class="number">  2</span>RCS file: <span class="k3">/</span>cvsroot<span class="k3">/</span>alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c,v
<span class="number">  3</span>retrieving revision <span class="n">1</span>.<span class="n">40</span>
<span class="number">  4</span>retrieving revision <span class="n">1</span>.<span class="n">41</span>
<span class="number">  5</span>diff <span class="k3">-</span>u <span class="k3">-</span>r1.40 <span class="k3">-</span>r1.41
<span class="number">  6</span><span class="k3">-</span><span class="k3">-</span><span class="k3">-</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">12</span><span class="k3">/</span><span class="n">05</span> <span class="n">08</span><span class="k2">:</span><span class="n">56</span><span class="k2">:</span><span class="n">32</span>  <span class="n">1</span>.<span class="n">40</span>
<span class="number">  7</span><span class="k3">+</span><span class="k3">+</span><span class="k3">+</span> alleg<span class="k3">/</span>allegro<span class="k3">/</span>src<span class="k3">/</span>win<span class="k3">/</span>wmouse.c  <span class="n">2004</span><span class="k3">/</span><span class="n">12</span><span class="k3">/</span><span class="n">07</span> <span class="n">17</span><span class="k2">:</span><span class="n">37</span><span class="k2">:</span><span class="n">30</span>  <span class="n">1</span>.<span class="n">41</span>
<span class="number">  8</span>@@ <span class="k3">-</span><span class="n">209</span>,<span class="n">8</span> <span class="k3">+</span><span class="n">209</span>,<span class="n">8</span> @@
<span class="number">  9</span>  <span class="k3">*</span><span class="k3">/</span>
<span class="number"> 10</span> <span class="k1">static</span> <span class="k1">void</span> mouse_dinput_handle_event<span class="k2">(</span><span class="k1">int</span> ofs, <span class="k1">int</span> data<span class="k2">)</span>
<span class="number"> 11</span> <span class="k2">{</span>
<span class="number"> 12</span><span class="k3">-</span>   <span class="k1">static</span> <span class="k1">int</span> last_mickeyx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 13</span><span class="k3">-</span>   <span class="k1">static</span> <span class="k1">int</span> last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 14</span><span class="k3">+</span>   <span class="k1">static</span> <span class="k1">int</span> last_data_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 15</span><span class="k3">+</span>   <span class="k1">static</span> <span class="k1">int</span> last_data_y <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 16</span>    <span class="k1">static</span> <span class="k1">int</span> last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 17</span>    <span class="k1">int</span> mag<span class="k2">;</span>
<span class="number"> 18</span> 
<span class="number"> 19</span>@@ <span class="k3">-</span><span class="n">219</span>,<span class="n">9</span> <span class="k3">+</span><span class="n">219</span>,<span class="n">11</span> @@
<span class="number"> 20</span>       <span class="k1">case</span> DIMOFS_X:
<span class="number"> 21</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 22</span>             <span class="k1">if</span> <span class="k2">(</span>last_was_x<span class="k2">)</span>
<span class="number"> 23</span><span class="k3">-</span>               last_mickeyy <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 24</span><span class="k3">+</span>               last_data_y <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 25</span><span class="k3">+</span>            last_data_x <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 26</span><span class="k3">+</span>            last_was_x <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 27</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 28</span><span class="k3">-</span>               mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 29</span><span class="k3">+</span>               mag <span class="k3">=</span> last_data_x<span class="k3">*</span>last_data_x <span class="k3">+</span> last_data_y<span class="k3">*</span>last_data_y<span class="k2">;</span>
<span class="number"> 30</span>                <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 31</span>                   data <span class="k3">*</span><span class="k3">=</span> <span class="k2">(</span>mouse_accel_mult<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 32</span>                <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 33</span>@@ <span class="k3">-</span><span class="n">229</span>,<span class="n">17</span> <span class="k3">+</span><span class="n">231</span>,<span class="n">17</span> @@
<span class="number"> 34</span>             <span class="k2">}</span>
<span class="number"> 35</span> 
<span class="number"> 36</span>             dinput_x <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 37</span><span class="k3">-</span>            last_mickeyx <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 38</span><span class="k3">-</span>            last_was_x <span class="k3">=</span> <span class="n">1</span><span class="k2">;</span>
<span class="number"> 39</span>          <span class="k2">}</span>
<span class="number"> 40</span>          <span class="k1">break</span><span class="k2">;</span>
<span class="number"> 41</span> 
<span class="number"> 42</span>       <span class="k1">case</span> DIMOFS_Y:
<span class="number"> 43</span>          <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>gfx_driver <span class="k3">|</span><span class="k3">|</span> <span class="k3">!</span>gfx_driver-&gt;windowed<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 44</span>             <span class="k1">if</span> <span class="k2">(</span><span class="k3">!</span>last_was_x<span class="k2">)</span>
<span class="number"> 45</span><span class="k3">-</span>               last_mickeyx <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 46</span><span class="k3">+</span>               last_data_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 47</span><span class="k3">+</span>            last_data_y <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 48</span><span class="k3">+</span>            last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 49</span>             <span class="k1">if</span> <span class="k2">(</span>mouse_accel_mult<span class="k2">)</span> <span class="k2">{</span>
<span class="number"> 50</span><span class="k3">-</span>               mag <span class="k3">=</span> last_mickeyx<span class="k3">*</span>last_mickeyx <span class="k3">+</span> last_mickeyy<span class="k3">*</span>last_mickeyy<span class="k2">;</span>
<span class="number"> 51</span><span class="k3">+</span>               mag <span class="k3">=</span> last_data_x<span class="k3">*</span>last_data_x <span class="k3">+</span> last_data_y<span class="k3">*</span>last_data_y<span class="k2">;</span>
<span class="number"> 52</span>                <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr2<span class="k2">)</span>
<span class="number"> 53</span>                   data <span class="k3">*</span><span class="k3">=</span> <span class="k2">(</span>mouse_accel_mult<span class="k3">&lt;</span><span class="k3">&lt;</span><span class="n">1</span><span class="k2">)</span><span class="k2">;</span>
<span class="number"> 54</span>                <span class="k1">else</span> <span class="k1">if</span> <span class="k2">(</span>mag <span class="k3">&gt;</span><span class="k3">=</span> mouse_accel_thr1<span class="k2">)</span> 
<span class="number"> 55</span>@@ <span class="k3">-</span><span class="n">247</span>,<span class="n">8</span> <span class="k3">+</span><span class="n">249</span>,<span class="n">6</span> @@
<span class="number"> 56</span>             <span class="k2">}</span>
<span class="number"> 57</span> 
<span class="number"> 58</span>             dinput_y <span class="k3">+</span><span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 59</span><span class="k3">-</span>            last_mickeyy <span class="k3">=</span> data<span class="k2">;</span>
<span class="number"> 60</span><span class="k3">-</span>            last_was_x <span class="k3">=</span> <span class="n">0</span><span class="k2">;</span>
<span class="number"> 61</span>          <span class="k2">}</span>
<span class="number"> 62</span>          <span class="k1">break</span><span class="k2">;</span>
</div></div><p> ([url <a href="http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.40&amp;r2=1.41]colour">http://cvs.sourceforge.net/viewcvs.py/alleg/allegro/src/win/wmouse.c?r1=1.40&amp;r2=1.41]colour</a> diff[/url]).
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Sat, 22 Jan 2005 18:19:45 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
I&#39;m now confused. <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" /><br />It looks like the 1.39 patch stopped scalling the data as in the earlier and later patches.</p><p>But I don&#39;t understand why James&#39;s 1.38 patch seems to be much less acclerated.. <img src="http://www.allegro.cc/forums/smileys/huh.gif" alt="???" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 19:20:09 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Oh sorry, I just remembered what&#39;s going on <img src="http://www.allegro.cc/forums/smileys/grin.gif" alt=";D" />.</p><p>1.40, 1.41 look fine, the reason why the one I sent Richard was more smooth was because I wrote two patches - a simple one (the one implemented and improved on above) and a second one which is a bit more complicated.  The second one is the one I use myself and is the one I sent Richard. </p><p>What a mess <img src="http://www.allegro.cc/forums/smileys/cry.gif" alt=":&#39;(" />.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (james_lohr)</author>
		<pubDate>Sat, 22 Jan 2005 19:57:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Can we have the nice but complicated one then? <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" /><br />I think I&#39;ve going to package Sunny Ball up with it just for the smoothness value. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sat, 22 Jan 2005 20:05:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sure, I&#39;ll write another patch this time for the wmouse.c in 4.1.17 with &quot;added smoothness&quot;.  I&#39;ll also include the changes made during CVS to my original patch (assuming they do not have a negative affect). <img src="http://www.allegro.cc/forums/smileys/smiley.gif" alt=":)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (james_lohr)</author>
		<pubDate>Sun, 23 Jan 2005 00:38:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Best to make a diff against current CVS rather than 4.1.17 though...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Sun, 23 Jan 2005 00:40:24 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Great, thanks James! Although if 4.1.18 is going to be released in the next few days it might be best to wait.. <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sun, 23 Jan 2005 00:46:10 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>That&#39;s why I&#39;d like a patch against current CVS rather than 4.1.17: so that I can possibly squeeze it into 4.1.18. I guess it&#39;s getting a bit late for this though (the release is already overdue and I don&#39;t want to postpone it too much longer), so I guess it&#39;ll have to be the release after that...
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Sun, 23 Jan 2005 01:26:02 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
If you release 4.1.19 in a few months time I can wait.. <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" /> <img src="http://www.allegro.cc/forums/smileys/wink.gif" alt=";)" /> <img src="http://www.allegro.cc/forums/smileys/cheesy.gif" alt=":D" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sun, 23 Jan 2005 01:34:14 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Originally, the plan was to go from 4.1.17 to 4.2.0 RC1. However, there are so many new goodies that we really need to put out an extra WIP to give people time to test them all and make sure things are really stable enough.<br />If all goes as planned, the tree goes into feature-freeze after this WIP, so only bugfixes (or the odd missing feature that really should have been there already) can be applied. Obviously, this would qualify for that, but I&#39;d still like to get as much into the WIP as possible, or very soon after that.</p><p>So unless something goes wrong, 4.1.19 in a few months is something that&#39;s not really supposed to happen.</p><p>The reason to get 4.2 out soon is because while development is proceeding on 4.2, it&#39;s holding back 4.3. Also, it&#39;s about time there was a stable release that supports MacOSX.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Evert)</author>
		<pubDate>Sun, 23 Jan 2005 02:16:08 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>
Doh! <img src="http://www.allegro.cc/forums/smileys/tongue.gif" alt=":P" />
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Richard Phipps)</author>
		<pubDate>Sun, 23 Jan 2005 02:25:19 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Sorry, I didn&#39;t read all of this thread, but did someone see this: <a href="http://www.allegro.cc/forums/view_thread.php?_id=437084">http://www.allegro.cc/forums/view_thread.php?_id=437084</a></p><p>It seems to me that 4.1.18 (current CVS) already fixes the acceleration problems of 4.1.16 and 4.1.17.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elias)</author>
		<pubDate>Sun, 23 Jan 2005 02:48:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I know this is off topic but, is there any way to turn mouse acceleration off so it just acts normal?  I notice it&#39;s fine unless I run my allegro apps in windows and fullscreen.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mike Farrell)</author>
		<pubDate>Sun, 23 Jan 2005 03:34:35 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>I think, the problems in windows/fullscreen are just in 4.1.16 and 4.1.17 - mouse accel is simply broken in that case. (In windowed mode, it always just uses the windows cursor position, AFAIK). But maybe there should be a function set_mouse_accel, since there also is a set_mouse_speed..
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elias)</author>
		<pubDate>Sun, 23 Jan 2005 03:45:15 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>This app is using allegro 4.0.3
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Mike Farrell)</author>
		<pubDate>Sun, 23 Jan 2005 06:50:44 +0000</pubDate>
	</item>
	<item>
		<description><![CDATA[<div class="mockup v2"><p>Well, you could try if disabling the acceleration code brings any improvement. Open src/win/wmouse.c, and look for mouse_accel_thr1 and mouse_accel_thr2, set them both to something like 1000000. That should disable it. Then recompile. If there&#39;s really an improvement, we could provide a function or config variable to disable it.
</p></div>]]>
		</description>
		<author>no-reply@allegro.cc (Elias)</author>
		<pubDate>Sun, 23 Jan 2005 06:59:45 +0000</pubDate>
	</item>
</rss>
