1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<html> 3 4<head> 5<META http-equiv="Content-Type" content="text/html; charset=windows-1252"> 6<META name="GENERATOR" content="Microsoft FrontPage 5.0"> 7<META http-equiv="Content-Style-Type" content="text/css"> 8<LINK rel="stylesheet" type="text/css" href="../../CSS/revolution.css"> 9<title>DVD Demos</title> 10</head> 11 12<body> 13 14<h1>DVD Sample Demos</h1> 15 16<h2>Location</h2> 17 18<p><font face="Courier New">$REVOLUTION_SDK_ROOT/build/demos/dvddemo</font></p> 19 20<h2>Compilation</h2> 21 22<P>Change directories to <CODE>$REVOLUTION_SDK_ROOT/build/demos/dvddemo</CODE> and enter <CODE>make</CODE>. The executable file (<CODE>.elf</CODE> file) will be generated under the path <CODE>$REVOLUTION_SDK_ROOT/build/demos/dvddemo/bin/RVL/</CODE>.</P> 23<h2>Execution</h2> 24 25<P>You must configure <FONT face="Courier New">DVDRoot</FONT> before execution. Copy the <CODE>$REVOLUTION_SDK_ROOT/dvddata</CODE> directory to the emulation hard disk and specify this directory as <CODE>DVDRoot</CODE>.</P> 26<P>Change directories to <font face="Courier New">$REVOLUTION_SDK_ROOT/build/demos/dvddemo/bin/RVL/</font> and do one of the following:</P> 27<ul> 28<li>To execute the program, run the <code>ndrun</code> script using a <code>.elf</code> file as an argument.</li> 29<li>Run <CODE>ide</CODE> with an <CODE>.elf</CODE> file as an argument (if you want to debug with CodeWarrior).</li> 30</ul> 31 32<h2>Description</h2> 33 34<table border="0" width="776"> 35 <tr> 36<td width="161"><em><strong><code>dvddemo1</code></strong></em></td> 37<td width="607">Shows how to use the <CODE><A href="../../dvd/DVDRead.html">DVDRead</A></CODE> function.</td> 38 </tr> 39 <tr> 40 <td width="161"></td> 41<td width="607">This demo reads a file from the DVD using the <CODE><A href="../../dvd/DVDRead.html">DVDRead</A></CODE> function and then prints the content to the debug output. The file content is [ abcdefg...z ] (four times).</td> 42 </tr> 43 <tr> 44<td width="161"><em><strong><code>dvddemo2</code></strong></em></td> 45<td width="607">Shows how to use the <CODE><A href="../../dvd/DVDReadAsync.html">DVDReadAsync</A></CODE> function.</td> 46 </tr> 47 <tr> 48 <td width="161"></td> 49<td width="607">This demo reads a file from a DVD using the <CODE><A href="../../dvd/DVDReadAsync.html">DVDReadAsync</A></CODE> function and then prints the content to the debug output. The file content is [ abcdefg...z ] (four times).</td> 50 </tr> 51 <tr> 52<td width="161"><em><strong><code>dvddemo3</code></strong></em></td> 53<td width="607">Shows how to use the queue feature of the <CODE><A href="../../dvd/DVDReadAsync.html">DVDReadAsync</A></CODE> function.</td> 54 </tr> 55 <tr> 56 <td width="161"></td> 57<td width="607">This demo issues two reads (without waiting for the first read to finish) on different files from a DVD using the <CODE><A href="../../dvd/DVDReadAsync.html">DVDReadAsync</A></CODE> function and prints the content to the debug output. The files contents are [ abcdefg....z ] (four times) and [ ABCDEFG...Z ] (four times).</td> 58 </tr> 59 <tr> 60<td width="161"><em><strong><code>directory</code></strong></em></td> 61<td width="607">Shows how to use the <CODE><A href="../../dvd/DVDOpenDir.html">DVDOpenDir</A></CODE>, <CODE><A href="../../dvd/DVDReadDir.html">DVDReadDir</A></CODE>, and <CODE><A href="../../dvd/DVDCloseDir.html">DVDCloseDir</A></CODE> functions.</td> 62 </tr> 63 <tr> 64 <td width="161"></td> 65<td width="607">This demo operates like <CODE>ls -lR</CODE>. The names of all the files and directories under <CODE>DVDRoot</CODE>are shown recursively. File lengths are shown as well.</td> 66 </tr> 67 <TR> 68<TD><EM><STRONG><CODE>errorhandling</CODE></STRONG></EM></TD> 69<TD>Shows how to handle errors.</TD> 70 </TR> 71 <TR> 72 <TD></TD> 73<TD>Use the Control Stick or +Control Pad to select a command to run from the command list. To see how these errors are handled in the program, eject the disc and replace it while the drive is executing a command in order to generate an error.<br>When you select the <code>DVDChangeDisk</code> function from the command list (see the <code><A href="../../dvd/DVDChangeDisk.html">DVDChangeDisk</A></code> description), you are asked to enter the disk number to change (255 corresponds to any disk number). Use NDEV to insert the disk that has the selected disk number. This action completes the disc exchange sequence.<BR><strong>* Controller input standby status will not be supported in the near term.</strong> 74 </TD> 75 </TR> 76 <TR> 77<TD><FONT face="Courier New"><EM><STRONG>dvdfatal</STRONG></EM></FONT></TD> 78<TD>Shows how to use the <code>DVDSetAutoFatalMessaging</code> function.</TD> 79 </TR> 80 <TR> 81 <TD></TD> 82<TD>This demo turns on the auto fatal message mode and afterwards continues to read a file (<code>texts/test1.txt</code>). When a fatal error is issued with NDEV, the device driver will automatically show an appropriate error message on the TV screen.</TD> 83 </TR> 84 </table> 85 86<h2>See Also</h2> 87 88<p><a href="../toc.html">Disc Drive</a></p> 89<H2>Revision History</H2> 90<P>2006/09/19 Removed the confirmation procedure for the controller input standby status.<BR>2006/09/07 Added a method for checking the controller input standby status of a drive.<BR>2006/03/01 Initial version.</P> 91<hr> 92<P>CONFIDENTIAL</p> 93</body> 94</html>