<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=US-ASCII">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12">
<TITLE>RE: Bizarre happening in my plugin</TITLE>
</HEAD>
<BODY>
<P><FONT SIZE=2>John M. McIntosh wrote:</FONT>
</P>
<P><FONT SIZE=2>> It's the</FONT>
<BR><FONT SIZE=2>> </FONT>
<BR><FONT SIZE=2>> self cCode: 'return value'</FONT>
</P>
<P><FONT SIZE=2>Getting there, but clearly I don't completely understand yet.</FONT>
</P>
<P><FONT SIZE=2>Here's the code in calling order. I get 'Primitive Mode Change failed' from this. The dll is called ok from the run/stop so it has to be parameters still.</FONT></P>
<P><FONT SIZE=2>primModeChng: mode</FONT>
<BR><FONT SIZE=2> <primitive: 'modeChng' module:'SDRPhasingDSPPlugin'></FONT>
<BR> <FONT SIZE=2>Transcript show: 'Primitive Mode Change failed'.</FONT>
<BR><FONT SIZE=2> ^ false</FONT>
</P>
<P><FONT SIZE=2>modeChng: mode</FONT>
<BR> <FONT SIZE=2>self export: true.</FONT>
</P>
<P> <FONT SIZE=2>self primitive: 'Sideband'</FONT>
<BR> <FONT SIZE=2>parameters: #(SmallInteger).</FONT>
</P>
<P> <FONT SIZE=2>(self</FONT>
<BR> <FONT SIZE=2>cCode: 'SetSideband(mode)'</FONT>
<BR> <FONT SIZE=2>inSmalltalk: [false])</FONT>
<BR> <FONT SIZE=2>ifFalse: [^ interpreterProxy primitiveFail].</FONT>
</P>
<P><FONT SIZE=2># the generated function and the function it calls</FONT>
<BR><FONT SIZE=2>EXPORT(int) Sideband(void) {</FONT>
<BR> <FONT SIZE=2>int mode;</FONT>
</P>
<P> <FONT SIZE=2>mode = interpreterProxy->stackIntegerValue(0);</FONT>
<BR> <FONT SIZE=2>if (interpreterProxy->failed()) {</FONT>
<BR> <FONT SIZE=2>return null;</FONT>
<BR> <FONT SIZE=2>}</FONT>
<BR> <FONT SIZE=2>if (!(SetSideband(mode))) {</FONT>
<BR> <FONT SIZE=2>interpreterProxy->primitiveFail();</FONT>
<BR> <FONT SIZE=2>return null;</FONT>
<BR> <FONT SIZE=2>}</FONT>
<BR> <FONT SIZE=2>if (interpreterProxy->failed()) {</FONT>
<BR> <FONT SIZE=2>return null;</FONT>
<BR> <FONT SIZE=2>}</FONT>
<BR> <FONT SIZE=2>interpreterProxy->pop(1);</FONT>
<BR> <FONT SIZE=2>return null;</FONT>
<BR><FONT SIZE=2>}</FONT>
</P>
<P><FONT SIZE=2>int SetSideband( int sideband )</FONT>
<BR><FONT SIZE=2>{</FONT>
<BR><FONT SIZE=2> m_sideband = sideband;</FONT>
<BR><FONT SIZE=2> return true;</FONT>
<BR><FONT SIZE=2>}</FONT>
</P>
<P><FONT SIZE=2>Bob--</FONT>
</P>
<P><STRONG>*** Confidentiality Notice ***</STRONG>
Proprietary/Confidential<BR>Information belonging to CGI Group Inc. and its
affiliates<BR>may be contained in this message. If you are not a
recipient<BR>indicated or intended in this message (or responsible
for<BR>delivery of this message to such person), or you think for<BR>any reason
that this message may have been addressed to you<BR>in error, you may not use or
copy or deliver this message<BR>to anyone else. In such case, you should
destroy this<BR>message and are asked to notify the sender by reply
email.</P>
</BODY>
</HTML>