Mercurial > sdl-ios-xcode
view docs/html/sdlcdplaytracks.html @ 1282:217f5d5a49e5
Date: Sat, 15 Jan 2005 02:01:51 +0000 (UTC)
From: jimrandomh
Subject: [SDL] Re: Modifier keys pressed during initialization stick
I wrote a simple test program which initializes SDL, prints the SDL
version number, then prints any keydown and keyup events with their
modifiers. (Source code below). Compilation was done using Visual
Studio 6, release mode.
My test sequence was:
Start a command prompt. Type the name of the test program.
shift down
enter down (program starts)
Wait for window to appear
enter up
shift up
spacebar down
spacebar up
Under Windows 98, the output was correct:
SDL 1.2.8
left shift down
shift-return down
shift-return up
left shift up
space down
space up
Under Windows 2000 and under Windows XP, the output was:
SDL 1.2.8
shift-space down
shift-space up
Since shift was not held at the time space was pressed, this is
incorrect. Similar results were observed with launching in different
ways (including double-clicking in Windows Explorer), so it does not
depend on the launching terminal.
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 29 Jan 2006 07:57:13 +0000 |
parents | 355632dca928 |
children |
line wrap: on
line source
<HTML ><HEAD ><TITLE >SDL_CDPlayTracks</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ "><LINK REL="HOME" TITLE="SDL Library Documentation" HREF="index.html"><LINK REL="UP" TITLE="CD-ROM" HREF="cdrom.html"><LINK REL="PREVIOUS" TITLE="SDL_CDPlay" HREF="sdlcdplay.html"><LINK REL="NEXT" TITLE="SDL_CDPause" HREF="sdlcdpause.html"></HEAD ><BODY CLASS="REFENTRY" BGCOLOR="#FFF8DC" TEXT="#000000" LINK="#0000ee" VLINK="#551a8b" ALINK="#ff0000" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >SDL Library Documentation</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="sdlcdplay.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="sdlcdpause.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SDLCDPLAYTRACKS" ></A >SDL_CDPlayTracks</H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN7375" ></A ><H2 >Name</H2 >SDL_CDPlayTracks -- Play the given CD track(s)</DIV ><DIV CLASS="REFSYNOPSISDIV" ><A NAME="AEN7378" ></A ><H2 >Synopsis</H2 ><DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN7379" ></A ><P ></P ><PRE CLASS="FUNCSYNOPSISINFO" >#include "SDL.h"</PRE ><P ><CODE ><CODE CLASS="FUNCDEF" >int <B CLASS="FSFUNC" >SDL_CDPlayTracks</B ></CODE >(SDL_CD *cdrom, int start_track, int start_frame, int ntracks, int nframes));</CODE ></P ><P ></P ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN7385" ></A ><H2 >Description</H2 ><P ><TT CLASS="FUNCTION" >SDL_CDPlayTracks</TT > plays the given CD starting at track <TT CLASS="PARAMETER" ><I >start_track</I ></TT >, for <TT CLASS="PARAMETER" ><I >ntracks</I ></TT > tracks. </P ><P ><TT CLASS="PARAMETER" ><I >start_frame</I ></TT > is the frame offset, from the beginning of the <TT CLASS="PARAMETER" ><I >start_track</I ></TT >, at which to start. <TT CLASS="PARAMETER" ><I >nframes</I ></TT > is the frame offset, from the beginning of the last track (<TT CLASS="PARAMETER" ><I >start_track</I ></TT >+<TT CLASS="PARAMETER" ><I >ntracks</I ></TT >), at which to end playing.</P ><P ><TT CLASS="FUNCTION" >SDL_CDPlayTracks</TT > should only be called after calling <A HREF="sdlcdstatus.html" ><TT CLASS="FUNCTION" >SDL_CDStatus</TT ></A > to get track information about the CD.</P ><DIV CLASS="NOTE" ><BLOCKQUOTE CLASS="NOTE" ><P ><B >Note: </B >Data tracks are ignored.</P ></BLOCKQUOTE ></DIV ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN7403" ></A ><H2 >Return Value</H2 ><P >Returns <SPAN CLASS="RETURNVALUE" >0</SPAN >, or <SPAN CLASS="RETURNVALUE" >-1</SPAN > if there was an error.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN7408" ></A ><H2 >Examples</H2 ><P ><PRE CLASS="PROGRAMLISTING" >/* assuming cdrom is a previously opened device */ /* Play the entire CD */ if(CD_INDRIVE(SDL_CDStatus(cdrom))) SDL_CDPlayTracks(cdrom, 0, 0, 0, 0); /* Play the first track */ if(CD_INDRIVE(SDL_CDStatus(cdrom))) SDL_CDPlayTracks(cdrom, 0, 0, 1, 0); /* Play first 15 seconds of the 2nd track */ if(CD_INDRIVE(SDL_CDStatus(cdrom))) SDL_CDPlayTracks(cdrom, 1, 0, 0, CD_FPS*15);</PRE > </P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN7412" ></A ><H2 >See Also</H2 ><P ><A HREF="sdlcdplay.html" ><TT CLASS="FUNCTION" >SDL_CDPlay</TT ></A >, <A HREF="sdlcdstatus.html" ><TT CLASS="FUNCTION" >SDL_CDStatus</TT ></A >, <A HREF="sdlcd.html" ><TT CLASS="FUNCTION" >SDL_CD</TT ></A ></P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="sdlcdplay.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="sdlcdpause.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SDL_CDPlay</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="cdrom.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SDL_CDPause</TD ></TR ></TABLE ></DIV ></BODY ></HTML >