LeoReadRTC.htm 2.56 KB
<HTML>
<HEAD>
<TITLE>HTML 文書</TITLE>

<META NAME="GENERATOR" CONTENT="Internet Assistant for Microsoft Word 2.03j">
</HEAD>
<BODY>
<P>
<B><FONT FACE="Arial">LeoReadRTC(3P) LeoSetRTC(3P)<BR>
</FONT></B>
<P>
<B>関数名<BR>
</B>
<P>
LeoReadRTC<BR>
→ 内蔵RTCの時刻の読み出し
<P>
LeoSetRTC<BR>
→ 内蔵RTCの時刻のセット<BR>

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

s32 LeoReadRTC(LEOCmd *<u>cmdBlock</u>, OSMesgQueue *<u>mq</u>);
s32 LeoSetRTC(LEOCmd *<u>cmdBlock</u>, LEODiskTime *<u>RTCdata</u>, OSMesgQueue *<u>mq</u>);

typedef struct
{
   u8 pad;
   u8 yearhi;
   u8 yearlo;
   u8 month; 
   u8 day; 
   u8 hour;
   u8 minute;
   u8 second;
} LEODiskTime;
</PRE></FONT>
<B>説明<BR>
</B>
<P>
<B>注意:</B>64DD関係の命令はすべて、rom DMA(ドライブ内ROM対象のDMAを含む)が
行われていない、また行われないという仮定で設計されています。そのための注意点
に関しては、64DDプログラミングマニュアル「第12章 禁止事項、注意事項のまと
め」を参照してください。 <P>

<b>LeoReadRTC</b>( ), <b>LeoSetRTC</b>( )は64DD内部のRTC(内蔵リアルタイムク
ロック)に対する関数です。<b>LeoReadRTC</b>は時刻をRTCから読み出し、<u>cmdBlock
</u>.data.time(LEODiskTime構造体)に格納します。<b>LeoSetRTC</b><u>RTCdata</u>
で指定した時刻を、RTCにセットします。
<BR>
<P>
LEODiskTime構造体のメンバはすべてBCDであらわされます。
<P>
「年」は西暦です。上2桁はセットもリードもできないので注意してください。
<P>
「時」は24時間表示です。<BR>
<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">LeoReadRTC(&amp;cmdBlock, &amp;diskQ);</FONT>
<FONT FACE="Courier">osRecvMesg(&amp;diskQ, (OSMesg *)&amp;error, OS_MESG_BLOCK);<BR>
</FONT>
</PRE>
<P>
<B>参照<BR>
</B>
<P>
<A HREF="LeoCreateLeoManager.htm">Leo*CreateLeoManager</A>(3P)
<BR>
<HR>
<A HREF="64dd_INDEX.htm" >64DDのマニュアルページのメニューへ</A>
<P>
<A HREF="../n64man.htm" >N64のマニュアルページのトップメニューへ</A>
<P>
 
</BODY>
</HTML>