<br><br><div class="gmail_quote">On Wed, Jan 28, 2009 at 2:03 PM, John M McIntosh <span dir="ltr">&lt;<a href="mailto:johnmci@smalltalkconsulting.com">johnmci@smalltalkconsulting.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
That was the original Squeak code to deal with the interrupt key.<br>
<br>
I you pressed the interrupt key, then the VM would see that and set the interruptPending flag which later in checkForInterrrupts would grab the TheInterruptSemaphore<br>
which was a semaphore that the Smalltalk interrupt &nbsp;handler was waiting on to let the image know the interrupt key was pressed<br>
<br>
Obviously there was a problem in determining what an interrupt key was across all platforms, and what if you wanted to changed it?<br>
That led to the code being moved out of the VM into EventSensor&gt;&gt;processEvent: &nbsp; -&gt; &quot;Check if the event is a user interrupt&quot;<br>
were we look for the magic keystrokes versus doing that in the VM.<br>
<br>
However the TheInterruptSemaphore logic in the VM still exists to &nbsp;handle images from before the EventSensor work, &nbsp;and is set via InputSensor&gt;&gt;installInterruptWatcher<br>
EventSensor&gt;&gt;primInterruptSemaphore: records the semaphore so it can use it directly.<br>
<br>
<br>
In *theory* *cough* you should be able to take a current mac vm and open a squeak image from 1995, if any one cares to try, please let me know if it works.</blockquote><div><br></div><div>It certainly _won&#39;t_ work unless &nbsp;TheInterruptSemaphore is defined as the correct index in the specialObjectsArray, which is what I&#39;m asking for. &nbsp;Right now&nbsp;TheInterruptSemaphore is defined as null:</div>
<div><br></div><div><span class="Apple-style-span" style="font-family: &#39;courier new&#39;, monospace;">#define&nbsp;TheInterruptSemaphore null</span></div><div><br></div><div>so if one opens up the 1995 image and it tries to set the input semaphore it&#39;ll simply overwrite nil, which won&#39;t make the system very happy. &nbsp;So once again,</div>
<div><br></div><div>anyone know what the correct value for TheInputSemaphore should be in a circa 1995 VM/image?</div><div><br></div><div>TIA</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="Wj3C7c"><br>
<br>
<br>
On 28-Jan-09, at 1:22 PM, Eliot Miranda wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi All,<br>
<br>
 &nbsp; &nbsp;just noptied that in our current VM there&#39;s an undefined constant TheInputSemaphore. &nbsp;This is (or rather isn&#39;t) used in Interpreter&gt;&gt;primitiveInputSemaphore. &nbsp;I can find no clue in my current images as to what its correct old value. &nbsp;Anyone have the old value (in the Interpreter and/or in Smalltalk&gt;&gt;specialObjectsArray)? &nbsp;TIA<br>

<br>
Eliot<br>
<br>
</blockquote>
<br></div></div><font color="#888888">
--<br>
===========================================================================<br>
John M. McIntosh &lt;<a href="mailto:johnmci@smalltalkconsulting.com" target="_blank">johnmci@smalltalkconsulting.com</a>&gt;<br>
Corporate Smalltalk Consulting Ltd. &nbsp;<a href="http://www.smalltalkconsulting.com" target="_blank">http://www.smalltalkconsulting.com</a><br>
===========================================================================<br>
<br>
<br>
<br>
<br>
</font></blockquote></div><br>