Mercurial > sdl-ios-xcode
annotate docs/html/guidecdromexamples.html @ 3864:ea2a327b92d7 SDL-1.2
Only saved non preserved registers
author | Patrice Mandin <patmandin@gmail.com> |
---|---|
date | Sat, 16 Sep 2006 09:15:11 +0000 |
parents | 355632dca928 |
children |
rev | line source |
---|---|
0 | 1 <HTML |
2 ><HEAD | |
3 ><TITLE | |
4 >CDROM Examples</TITLE | |
5 ><META | |
6 NAME="GENERATOR" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
7 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
0 | 8 "><LINK |
9 REL="HOME" | |
10 TITLE="SDL Library Documentation" | |
11 HREF="index.html"><LINK | |
12 REL="UP" | |
13 TITLE="Examples" | |
14 HREF="guideexamples.html"><LINK | |
15 REL="PREVIOUS" | |
16 TITLE="Audio Examples" | |
17 HREF="guideaudioexamples.html"><LINK | |
18 REL="NEXT" | |
19 TITLE="Time Examples" | |
20 HREF="guidetimeexamples.html"></HEAD | |
21 ><BODY | |
22 CLASS="SECT1" | |
23 BGCOLOR="#FFF8DC" | |
24 TEXT="#000000" | |
25 LINK="#0000ee" | |
26 VLINK="#551a8b" | |
27 ALINK="#ff0000" | |
28 ><DIV | |
29 CLASS="NAVHEADER" | |
30 ><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
31 SUMMARY="Header navigation table" |
0 | 32 WIDTH="100%" |
33 BORDER="0" | |
34 CELLPADDING="0" | |
35 CELLSPACING="0" | |
36 ><TR | |
37 ><TH | |
38 COLSPAN="3" | |
39 ALIGN="center" | |
40 >SDL Library Documentation</TH | |
41 ></TR | |
42 ><TR | |
43 ><TD | |
44 WIDTH="10%" | |
45 ALIGN="left" | |
46 VALIGN="bottom" | |
47 ><A | |
48 HREF="guideaudioexamples.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
49 ACCESSKEY="P" |
0 | 50 >Prev</A |
51 ></TD | |
52 ><TD | |
53 WIDTH="80%" | |
54 ALIGN="center" | |
55 VALIGN="bottom" | |
56 >Chapter 4. Examples</TD | |
57 ><TD | |
58 WIDTH="10%" | |
59 ALIGN="right" | |
60 VALIGN="bottom" | |
61 ><A | |
62 HREF="guidetimeexamples.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
63 ACCESSKEY="N" |
0 | 64 >Next</A |
65 ></TD | |
66 ></TR | |
67 ></TABLE | |
68 ><HR | |
69 ALIGN="LEFT" | |
70 WIDTH="100%"></DIV | |
71 ><DIV | |
72 CLASS="SECT1" | |
73 ><H1 | |
74 CLASS="SECT1" | |
75 ><A | |
76 NAME="GUIDECDROMEXAMPLES" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
77 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
78 >CDROM Examples</H1 |
0 | 79 ><P |
80 ></P | |
81 ><DIV | |
82 CLASS="SECT2" | |
83 ><H2 | |
84 CLASS="SECT2" | |
85 ><A | |
55
55f1f1b3e27d
Added new docs for SDL 1.2.1
Sam Lantinga <slouken@lokigames.com>
parents:
0
diff
changeset
|
86 NAME="AEN393" |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
87 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
88 >Listing CD-ROM drives</H2 |
0 | 89 ><P |
90 ><PRE | |
91 CLASS="PROGRAMLISTING" | |
92 > #include "SDL.h" | |
93 | |
94 /* Initialize SDL first */ | |
95 if ( SDL_Init(SDL_INIT_CDROM) < 0 ) { | |
96 fprintf(stderr, "Couldn't initialize SDL: %s\n",SDL_GetError()); | |
97 exit(1); | |
98 } | |
99 atexit(SDL_Quit); | |
100 | |
101 /* Find out how many CD-ROM drives are connected to the system */ | |
102 printf("Drives available: %d\n", SDL_CDNumDrives()); | |
103 for ( i=0; i<SDL_CDNumDrives(); ++i ) { | |
104 printf("Drive %d: \"%s\"\n", i, SDL_CDName(i)); | |
105 }</PRE | |
106 ></P | |
107 ></DIV | |
108 ><DIV | |
109 CLASS="SECT2" | |
110 ><H2 | |
111 CLASS="SECT2" | |
112 ><A | |
55
55f1f1b3e27d
Added new docs for SDL 1.2.1
Sam Lantinga <slouken@lokigames.com>
parents:
0
diff
changeset
|
113 NAME="AEN397" |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
114 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
115 >Opening the default drive</H2 |
0 | 116 ><P |
117 ><PRE | |
118 CLASS="PROGRAMLISTING" | |
119 > SDL_CD *cdrom; | |
120 CDstatus status; | |
121 char *status_str; | |
122 | |
123 cdrom = SDL_CDOpen(0); | |
124 if ( cdrom == NULL ) { | |
125 fprintf(stderr, "Couldn't open default CD-ROM drive: %s\n", | |
126 SDL_GetError()); | |
127 exit(2); | |
128 } | |
129 | |
130 status = SDL_CDStatus(cdrom); | |
131 switch (status) { | |
132 case CD_TRAYEMPTY: | |
133 status_str = "tray empty"; | |
134 break; | |
135 case CD_STOPPED: | |
136 status_str = "stopped"; | |
137 break; | |
138 case CD_PLAYING: | |
139 status_str = "playing"; | |
140 break; | |
141 case CD_PAUSED: | |
142 status_str = "paused"; | |
143 break; | |
144 case CD_ERROR: | |
145 status_str = "error state"; | |
146 break; | |
147 } | |
148 printf("Drive status: %s\n", status_str); | |
149 if ( status >= CD_PLAYING ) { | |
150 int m, s, f; | |
151 FRAMES_TO_MSF(cdrom->cur_frame, &m, &s, &f); | |
152 printf("Currently playing track %d, %d:%2.2d\n", | |
153 cdrom->track[cdrom->cur_track].id, m, s); | |
154 }</PRE | |
155 ></P | |
156 ></DIV | |
157 ><DIV | |
158 CLASS="SECT2" | |
159 ><H2 | |
160 CLASS="SECT2" | |
161 ><A | |
55
55f1f1b3e27d
Added new docs for SDL 1.2.1
Sam Lantinga <slouken@lokigames.com>
parents:
0
diff
changeset
|
162 NAME="AEN401" |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
163 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
164 >Listing the tracks on a CD</H2 |
0 | 165 ><P |
166 ><PRE | |
167 CLASS="PROGRAMLISTING" | |
168 > SDL_CD *cdrom; /* Assuming this has already been set.. */ | |
169 int i; | |
170 int m, s, f; | |
171 | |
172 SDL_CDStatus(cdrom); | |
173 printf("Drive tracks: %d\n", cdrom->numtracks); | |
174 for ( i=0; i<cdrom->numtracks; ++i ) { | |
175 FRAMES_TO_MSF(cdrom->track[i].length, &m, &s, &f); | |
176 if ( f > 0 ) | |
177 ++s; | |
178 printf("\tTrack (index %d) %d: %d:%2.2d\n", i, | |
179 cdrom->track[i].id, m, s); | |
180 }</PRE | |
181 ></P | |
182 ></DIV | |
183 ><DIV | |
184 CLASS="SECT2" | |
185 ><H2 | |
186 CLASS="SECT2" | |
187 ><A | |
55
55f1f1b3e27d
Added new docs for SDL 1.2.1
Sam Lantinga <slouken@lokigames.com>
parents:
0
diff
changeset
|
188 NAME="AEN405" |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
189 ></A |
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
190 >Play an entire CD</H2 |
0 | 191 ><P |
192 ><PRE | |
193 CLASS="PROGRAMLISTING" | |
194 > SDL_CD *cdrom; /* Assuming this has already been set.. */ | |
195 | |
196 // Play entire CD: | |
197 if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) | |
198 SDL_CDPlayTracks(cdrom, 0, 0, 0, 0); | |
199 | |
200 // Play last track: | |
201 if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) { | |
202 SDL_CDPlayTracks(cdrom, cdrom->numtracks-1, 0, 0, 0); | |
203 } | |
204 | |
205 // Play first and second track and 10 seconds of third track: | |
206 if ( CD_INDRIVE(SDL_CDStatus(cdrom)) ) | |
181
e5bc29de3f0a
Updated from the SDL Documentation Project
Sam Lantinga <slouken@libsdl.org>
parents:
55
diff
changeset
|
207 SDL_CDPlayTracks(cdrom, 0, 0, 2, CD_FPS * 10);</PRE |
0 | 208 ></P |
209 ></DIV | |
210 ></DIV | |
211 ><DIV | |
212 CLASS="NAVFOOTER" | |
213 ><HR | |
214 ALIGN="LEFT" | |
215 WIDTH="100%"><TABLE | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
216 SUMMARY="Footer navigation table" |
0 | 217 WIDTH="100%" |
218 BORDER="0" | |
219 CELLPADDING="0" | |
220 CELLSPACING="0" | |
221 ><TR | |
222 ><TD | |
223 WIDTH="33%" | |
224 ALIGN="left" | |
225 VALIGN="top" | |
226 ><A | |
227 HREF="guideaudioexamples.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
228 ACCESSKEY="P" |
0 | 229 >Prev</A |
230 ></TD | |
231 ><TD | |
232 WIDTH="34%" | |
233 ALIGN="center" | |
234 VALIGN="top" | |
235 ><A | |
236 HREF="index.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
237 ACCESSKEY="H" |
0 | 238 >Home</A |
239 ></TD | |
240 ><TD | |
241 WIDTH="33%" | |
242 ALIGN="right" | |
243 VALIGN="top" | |
244 ><A | |
245 HREF="guidetimeexamples.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
246 ACCESSKEY="N" |
0 | 247 >Next</A |
248 ></TD | |
249 ></TR | |
250 ><TR | |
251 ><TD | |
252 WIDTH="33%" | |
253 ALIGN="left" | |
254 VALIGN="top" | |
255 >Audio Examples</TD | |
256 ><TD | |
257 WIDTH="34%" | |
258 ALIGN="center" | |
259 VALIGN="top" | |
260 ><A | |
261 HREF="guideexamples.html" | |
803
355632dca928
Updated SDL HTML documentation
Sam Lantinga <slouken@libsdl.org>
parents:
181
diff
changeset
|
262 ACCESSKEY="U" |
0 | 263 >Up</A |
264 ></TD | |
265 ><TD | |
266 WIDTH="33%" | |
267 ALIGN="right" | |
268 VALIGN="top" | |
269 >Time Examples</TD | |
270 ></TR | |
271 ></TABLE | |
272 ></DIV | |
273 ></BODY | |
274 ></HTML | |
275 > |