view docs/html/time.html @ 937:1e6366bde299

Date: Tue, 27 Jul 2004 17:14:00 +0200 From: "Eckhard Stolberg" Subject: Controller names in SDL for Windows I'm working on an Atari 2600 emulator for different systems that uses the SDL. Some time ago someone created an adaptor that lets you use your old Atari controllers with your computer through the USB port. Some of the Atari controllers require special handling by the emulator, so it would be nice, if it would be possible to detect if any of the controllers connected to the computer is this adaptor. SDL would allow that with the SDL_JoystickName function, but unfortunately it doesn't work properly on Windows. On Linux and MacOSX this function returns the name of the controller, but on Windows you'll only get the name of the joystick driver. Most joysticks nowadays use the generic Microsoft driver, so they all return the same name. In an old MSDN article (http://msdn.microsoft.com/archive/default.asp?url=/archive/en-us/dnarinput/html/msdn_extdirect.asp) Microsoft describes how to read out the OEM controller names from the registry. I have implemented this for the SDL controller handler on Windows, and now reading the joystick name works properly there too.
author Sam Lantinga <slouken@libsdl.org>
date Sat, 21 Aug 2004 03:45:58 +0000
parents 355632dca928
children
line wrap: on
line source

<HTML
><HEAD
><TITLE
>Time</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="SDL Reference"
HREF="reference.html"><LINK
REL="PREVIOUS"
TITLE="SDL_CondWaitTimeout"
HREF="sdlcondwaittimeout.html"><LINK
REL="NEXT"
TITLE="SDL_GetTicks"
HREF="sdlgetticks.html"><META
NAME="KEYWORD"
CONTENT="time"><META
NAME="KEYWORD"
CONTENT="function"></HEAD
><BODY
CLASS="CHAPTER"
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="sdlcondwaittimeout.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="sdlgetticks.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="CHAPTER"
><H1
><A
NAME="TIME"
></A
>Chapter 13. Time</H1
><DIV
CLASS="TOC"
><DL
><DT
><B
>Table of Contents</B
></DT
><DT
><A
HREF="sdlgetticks.html"
>SDL_GetTicks</A
>&nbsp;--&nbsp;Get the number of milliseconds since the SDL library initialization.</DT
><DT
><A
HREF="sdldelay.html"
>SDL_Delay</A
>&nbsp;--&nbsp;Wait a specified number of milliseconds before returning.</DT
><DT
><A
HREF="sdladdtimer.html"
>SDL_AddTimer</A
>&nbsp;--&nbsp;Add a timer which will call a callback after the specified number of milliseconds has
elapsed.</DT
><DT
><A
HREF="sdlremovetimer.html"
>SDL_RemoveTimer</A
>&nbsp;--&nbsp;Remove a timer which was added with
<A
HREF="sdladdtimer.html"
>SDL_AddTimer</A
>.</DT
><DT
><A
HREF="sdlsettimer.html"
>SDL_SetTimer</A
>&nbsp;--&nbsp;Set a callback to run after the specified number of milliseconds has
elapsed.</DT
></DL
></DIV
><P
>SDL provides several cross-platform functions for dealing with time.
It provides a way to get the current time, a way to wait a little while,
and a simple timer mechanism.  These functions give you two ways of moving an
object every x milliseconds:

<P
></P
><UL
><LI
><P
>Use a timer callback function.  This may have the bad effect that it runs in a seperate thread or uses alarm signals, but it's easier to implement.</P
></LI
><LI
><P
>Or you can get the number of milliseconds passed, and move the object if, for example, 30 ms passed.</P
></LI
></UL
>&#13;</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="sdlcondwaittimeout.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="sdlgetticks.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>SDL_CondWaitTimeout</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="reference.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>SDL_GetTicks</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>