LeoSpdlMotor.htm 2.48 KB
<HTML>
<HEAD>
<TITLE>HTML 文書</TITLE>

<META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.03j">
</HEAD>
<BODY>
<P>
<B><FONT FACE="Arial">LeoSpdlMotor (3P) <BR>
</FONT></B>
<P>
<B>関数名<BR>
</B>
<P>
LeoSpdlMotor 
<P>
→ 64DDのモーターおよびヘッドの制御<BR>

<P>
<B>構文</B>
<PRE>
<FONT SIZE=4>#include &lt;PR/leo.h&gt;

s32 LeoSpdlMotor(LEOCmd *<U>cmdBloc</U>k, LEOSpdlMode <U>mode</U>, OSMesgQueue *<U>mq</U>);

typedef u8 LEOSpdlMode;
</FONT>
</PRE>
<P>
<B>説明<BR>
</B>
<P>
<B>注意:</B>64DD関係の命令はすべて、rom DMA(ドライブ内ROM対象のDMAを含む)が行
われていない、また行われないという仮定で設計されています。そのための注意点に関
しては、64DDプログラミングマニュアル「第12章 禁止事項、注意事項のまとめ」を
参照してください。<BR>
<P>
<b>LeoSpdlMotor</b>はドライブのモーター、ヘッド位置の制御をします。
<P>
ユーザーは<U>mode</U>として下記の3つの状態を指定できます。
<P>
LEO_MOTOR_ACTIVE<BR>
<blockquote>モーターを起動し、ドライブの状態をアクティブにします。</blockquote>
<P>
LEO_MOTOR_STANDBY<BR>
<blockquote>ドライブをスタンバイモード(モーターは回っているが、ヘッドは退避して
いる状態)にします。</blockquote>
LEO_MOTOR_SLEEP<BR>
<blockquote>ドライブをスリープモード(モーターは停止して、ヘッドも退避している状
態)にします。</blockquote>
<P>
引数で与えるコマンドブロック <U>cmdBlock</U> には何も設定する必要はありません。
この関数は処理を終了すると待ち行列<U>mq</U>にエラーコードを返します。エラーが起
こる可能性があるので、プログラマは必ずこのエラーコードをチェックしなければいけません。
<BR>
<P>
返ってくる可能性のあるエラーとその原因、対処法は64DDプログラミングマニュアル
「第10章 エラー処理シーケンス」を参照して下さい。<BR>
<P>
返り値は、leo マネージャがまだ作成されていないとき -1、作成されていれば
0 となります。通常はチェックする必要はありません。<BR>
<P>
<B></B>
<P>
<PRE>
<FONT FACE="Courier">LEOCmd cmdBlock;</FONT>
<FONT FACE="Courier">u32 error;</FONT>
<FONT FACE="Courier">.....</FONT>
<FONT FACE="Courier">LeoSpdlMotor(&amp;cmdBlock, LEO_MOTOR_ACTIVE, &amp;diskQ);</FONT>
<FONT FACE="Courier">osRecvMesg(&amp;diskQ, (OSMesg *)&amp;error, OS_MESG_BLOCK);<BR>
</FONT>
</PRE>
<B>参照<BR>
</B>
<P>
<A HREF="LeoCreateLeoManager.htm">Leo*CreateLeoManager</A>(3P),
<A HREF="LeoModeSelectAsync.htm">LeoModeSelectAsync</A>(3P)
<BR>
<HR>
<P>
<A HREF="64dd_INDEX.htm">64DDのマニュアルページのメニューへ</A>
<P>
<A HREF="../n64man.htm">N64のマニュアルページのトップメニューへ</A>
<P>
 
</BODY>
</HTML>