1<HTML
2><HEAD
3><TITLE
4></TITLE
5><META
6NAME="GENERATOR"
7CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
8"><LINK
9REL="NEXT"
10TITLE="SDL Guide"
11HREF="guide.html"></HEAD
12><BODY
13CLASS="BOOK"
14BGCOLOR="#FFF8DC"
15TEXT="#000000"
16LINK="#0000ee"
17VLINK="#551a8b"
18ALINK="#ff0000"
19><DIV
20CLASS="BOOK"
21><A
22NAME="AEN1"
23></A
24><DIV
25CLASS="TOC"
26><DL
27><DT
28><B
29>Table of Contents</B
30></DT
31><DT
32>I. <A
33HREF="guide.html"
34>SDL Guide</A
35></DT
36><DD
37><DL
38><DT
39><A
40HREF="guidepreface.html"
41>Preface</A
42></DT
43><DD
44><DL
45><DT
46><A
47HREF="guidepreface.html#GUIDEABOUTSDL"
48>About SDL</A
49></DT
50><DT
51><A
52HREF="guideaboutsdldoc.html"
53>About SDLdoc</A
54></DT
55><DT
56><A
57HREF="guidecredits.html"
58>Credits</A
59></DT
60></DL
61></DD
62><DT
63>1. <A
64HREF="guidethebasics.html"
65>The Basics</A
66></DT
67><DD
68><DL
69><DT
70><A
71HREF="guidethebasics.html#GUIDEINTRODUCTION"
72>Introduction</A
73></DT
74><DT
75><A
76HREF="guidebasicsinit.html"
77>Initializing SDL</A
78></DT
79></DL
80></DD
81><DT
82>2. <A
83HREF="guidevideo.html"
84>Graphics and Video</A
85></DT
86><DD
87><DL
88><DT
89><A
90HREF="guidevideo.html#GUIDEVIDEOINTRO"
91>Introduction to SDL Video</A
92></DT
93><DT
94><A
95HREF="guidevideoopengl.html"
96>Using OpenGL With SDL</A
97></DT
98></DL
99></DD
100><DT
101>3. <A
102HREF="guideinput.html"
103>Input handling</A
104></DT
105><DD
106><DL
107><DT
108><A
109HREF="guideinput.html#GUIDEINPUTJOYSTICK"
110>Handling Joysticks</A
111></DT
112><DT
113><A
114HREF="guideinputkeyboard.html"
115>Handling the Keyboard</A
116></DT
117></DL
118></DD
119><DT
120>4. <A
121HREF="guideexamples.html"
122>Examples</A
123></DT
124><DD
125><DL
126><DT
127><A
128HREF="guideexamples.html#AEN369"
129>Introduction</A
130></DT
131><DT
132><A
133HREF="guideeventexamples.html"
134>Event Examples</A
135></DT
136><DT
137><A
138HREF="guideaudioexamples.html"
139>Audio Examples</A
140></DT
141><DT
142><A
143HREF="guidecdromexamples.html"
144>CDROM Examples</A
145></DT
146><DT
147><A
148HREF="guidetimeexamples.html"
149>Time Examples</A
150></DT
151></DL
152></DD
153></DL
154></DD
155><DT
156>II. <A
157HREF="reference.html"
158>SDL Reference</A
159></DT
160><DD
161><DL
162><DT
163>5. <A
164HREF="general.html"
165>General</A
166></DT
167><DD
168><DL
169><DT
170><A
171HREF="sdlinit.html"
172>SDL_Init</A
173>&nbsp;--&nbsp;Initializes SDL</DT
174><DT
175><A
176HREF="sdlinitsubsystem.html"
177>SDL_InitSubSystem</A
178>&nbsp;--&nbsp;Initialize subsystems</DT
179><DT
180><A
181HREF="sdlquitsubsystem.html"
182>SDL_QuitSubSystem</A
183>&nbsp;--&nbsp;Shut down a subsystem</DT
184><DT
185><A
186HREF="sdlquit.html"
187>SDL_Quit</A
188>&nbsp;--&nbsp;Shut down SDL</DT
189><DT
190><A
191HREF="sdlwasinit.html"
192>SDL_WasInit</A
193>&nbsp;--&nbsp;Check which subsystems are initialized</DT
194><DT
195><A
196HREF="sdlgeterror.html"
197>SDL_GetError</A
198>&nbsp;--&nbsp;Get SDL error string</DT
199><DT
200><A
201HREF="sdlenvvars.html"
202>SDL_envvars</A
203>&nbsp;--&nbsp;SDL environment variables</DT
204></DL
205></DD
206><DT
207>6. <A
208HREF="video.html"
209>Video</A
210></DT
211><DD
212><DL
213><DT
214><A
215HREF="sdlgetvideosurface.html"
216>SDL_GetVideoSurface</A
217>&nbsp;--&nbsp;returns a pointer to the current display surface</DT
218><DT
219><A
220HREF="sdlgetvideoinfo.html"
221>SDL_GetVideoInfo</A
222>&nbsp;--&nbsp;returns a pointer to information about the video hardware</DT
223><DT
224><A
225HREF="sdlvideodrivername.html"
226>SDL_VideoDriverName</A
227>&nbsp;--&nbsp;Obtain the name of the video driver</DT
228><DT
229><A
230HREF="sdllistmodes.html"
231>SDL_ListModes</A
232>&nbsp;--&nbsp;Returns a pointer to an array of available screen dimensions for 
233the given format and video flags</DT
234><DT
235><A
236HREF="sdlvideomodeok.html"
237>SDL_VideoModeOK</A
238>&nbsp;--&nbsp;Check to see if a particular video mode is supported.</DT
239><DT
240><A
241HREF="sdlsetvideomode.html"
242>SDL_SetVideoMode</A
243>&nbsp;--&nbsp;Set up a video mode with the specified width, height and bits-per-pixel.</DT
244><DT
245><A
246HREF="sdlupdaterect.html"
247>SDL_UpdateRect</A
248>&nbsp;--&nbsp;Makes sure the given area is updated on the given screen.</DT
249><DT
250><A
251HREF="sdlupdaterects.html"
252>SDL_UpdateRects</A
253>&nbsp;--&nbsp;Makes sure the given list of rectangles is updated on the given screen.</DT
254><DT
255><A
256HREF="sdlflip.html"
257>SDL_Flip</A
258>&nbsp;--&nbsp;Swaps screen buffers</DT
259><DT
260><A
261HREF="sdlsetcolors.html"
262>SDL_SetColors</A
263>&nbsp;--&nbsp;Sets a portion of the colormap for the given 8-bit surface.</DT
264><DT
265><A
266HREF="sdlsetpalette.html"
267>SDL_SetPalette</A
268>&nbsp;--&nbsp;Sets the colors in the palette of an 8-bit surface.</DT
269><DT
270><A
271HREF="sdlsetgamma.html"
272>SDL_SetGamma</A
273>&nbsp;--&nbsp;Sets the color gamma function for the display</DT
274><DT
275><A
276HREF="sdlgetgammaramp.html"
277>SDL_GetGammaRamp</A
278>&nbsp;--&nbsp;Gets the color gamma lookup tables for the display</DT
279><DT
280><A
281HREF="sdlsetgammaramp.html"
282>SDL_SetGammaRamp</A
283>&nbsp;--&nbsp;Sets the color gamma lookup tables for the display</DT
284><DT
285><A
286HREF="sdlmaprgb.html"
287>SDL_MapRGB</A
288>&nbsp;--&nbsp;Map a RGB color value to a pixel format.</DT
289><DT
290><A
291HREF="sdlmaprgba.html"
292>SDL_MapRGBA</A
293>&nbsp;--&nbsp;Map a RGBA color value to a pixel format.</DT
294><DT
295><A
296HREF="sdlgetrgb.html"
297>SDL_GetRGB</A
298>&nbsp;--&nbsp;Get RGB values from a pixel in the specified pixel format.</DT
299><DT
300><A
301HREF="sdlgetrgba.html"
302>SDL_GetRGBA</A
303>&nbsp;--&nbsp;Get RGBA values from a pixel in the specified pixel format.</DT
304><DT
305><A
306HREF="sdlcreatergbsurface.html"
307>SDL_CreateRGBSurface</A
308>&nbsp;--&nbsp;Create an empty SDL_Surface</DT
309><DT
310><A
311HREF="sdlcreatergbsurfacefrom.html"
312>SDL_CreateRGBSurfaceFrom</A
313>&nbsp;--&nbsp;Create an SDL_Surface from pixel data</DT
314><DT
315><A
316HREF="sdlfreesurface.html"
317>SDL_FreeSurface</A
318>&nbsp;--&nbsp;Frees (deletes) a SDL_Surface</DT
319><DT
320><A
321HREF="sdllocksurface.html"
322>SDL_LockSurface</A
323>&nbsp;--&nbsp;Lock a surface for directly access.</DT
324><DT
325><A
326HREF="sdlunlocksurface.html"
327>SDL_UnlockSurface</A
328>&nbsp;--&nbsp;Unlocks a previously locked surface.</DT
329><DT
330><A
331HREF="sdlloadbmp.html"
332>SDL_LoadBMP</A
333>&nbsp;--&nbsp;Load a Windows BMP file into an SDL_Surface.</DT
334><DT
335><A
336HREF="sdlsavebmp.html"
337>SDL_SaveBMP</A
338>&nbsp;--&nbsp;Save an SDL_Surface as a Windows BMP file.</DT
339><DT
340><A
341HREF="sdlsetcolorkey.html"
342>SDL_SetColorKey</A
343>&nbsp;--&nbsp;Sets the color key (transparent pixel) in a blittable surface and
344RLE acceleration.</DT
345><DT
346><A
347HREF="sdlsetalpha.html"
348>SDL_SetAlpha</A
349>&nbsp;--&nbsp;Adjust the alpha properties of a surface</DT
350><DT
351><A
352HREF="sdlsetcliprect.html"
353>SDL_SetClipRect</A
354>&nbsp;--&nbsp;Sets the clipping rectangle for a surface.</DT
355><DT
356><A
357HREF="sdlgetcliprect.html"
358>SDL_GetClipRect</A
359>&nbsp;--&nbsp;Gets the clipping rectangle for a surface.</DT
360><DT
361><A
362HREF="sdlconvertsurface.html"
363>SDL_ConvertSurface</A
364>&nbsp;--&nbsp;Converts a surface to the same format as another surface.</DT
365><DT
366><A
367HREF="sdlblitsurface.html"
368>SDL_BlitSurface</A
369>&nbsp;--&nbsp;This performs a fast blit from the source surface to the destination surface.</DT
370><DT
371><A
372HREF="sdlfillrect.html"
373>SDL_FillRect</A
374>&nbsp;--&nbsp;This function performs a fast fill of the given rectangle with some color</DT
375><DT
376><A
377HREF="sdldisplayformat.html"
378>SDL_DisplayFormat</A
379>&nbsp;--&nbsp;Convert a surface to the display format</DT
380><DT
381><A
382HREF="sdldisplayformatalpha.html"
383>SDL_DisplayFormatAlpha</A
384>&nbsp;--&nbsp;Convert a surface to the display format</DT
385><DT
386><A
387HREF="sdlwarpmouse.html"
388>SDL_WarpMouse</A
389>&nbsp;--&nbsp;Set the position of the mouse cursor.</DT
390><DT
391><A
392HREF="sdlcreatecursor.html"
393>SDL_CreateCursor</A
394>&nbsp;--&nbsp;Creates a new mouse cursor.</DT
395><DT
396><A
397HREF="sdlfreecursor.html"
398>SDL_FreeCursor</A
399>&nbsp;--&nbsp;Frees a cursor created with SDL_CreateCursor.</DT
400><DT
401><A
402HREF="sdlsetcursor.html"
403>SDL_SetCursor</A
404>&nbsp;--&nbsp;Set the currently active mouse cursor.</DT
405><DT
406><A
407HREF="sdlgetcursor.html"
408>SDL_GetCursor</A
409>&nbsp;--&nbsp;Get the currently active mouse cursor.</DT
410><DT
411><A
412HREF="sdlshowcursor.html"
413>SDL_ShowCursor</A
414>&nbsp;--&nbsp;Toggle whether or not the cursor is shown on the screen.</DT
415><DT
416><A
417HREF="sdlglloadlibrary.html"
418>SDL_GL_LoadLibrary</A
419>&nbsp;--&nbsp;Specify an OpenGL library</DT
420><DT
421><A
422HREF="sdlglgetprocaddress.html"
423>SDL_GL_GetProcAddress</A
424>&nbsp;--&nbsp;Get the address of a GL function</DT
425><DT
426><A
427HREF="sdlglgetattribute.html"
428>SDL_GL_GetAttribute</A
429>&nbsp;--&nbsp;Get the value of a special SDL/OpenGL attribute</DT
430><DT
431><A
432HREF="sdlglsetattribute.html"
433>SDL_GL_SetAttribute</A
434>&nbsp;--&nbsp;Set a special SDL/OpenGL attribute</DT
435><DT
436><A
437HREF="sdlglswapbuffers.html"
438>SDL_GL_SwapBuffers</A
439>&nbsp;--&nbsp;Swap OpenGL framebuffers/Update Display</DT
440><DT
441><A
442HREF="sdlcreateyuvoverlay.html"
443>SDL_CreateYUVOverlay</A
444>&nbsp;--&nbsp;Create a YUV video overlay</DT
445><DT
446><A
447HREF="sdllockyuvoverlay.html"
448>SDL_LockYUVOverlay</A
449>&nbsp;--&nbsp;Lock an overlay</DT
450><DT
451><A
452HREF="sdlunlockyuvoverlay.html"
453>SDL_UnlockYUVOverlay</A
454>&nbsp;--&nbsp;Unlock an overlay</DT
455><DT
456><A
457HREF="sdldisplayyuvoverlay.html"
458>SDL_DisplayYUVOverlay</A
459>&nbsp;--&nbsp;Blit the overlay to the display</DT
460><DT
461><A
462HREF="sdlfreeyuvoverlay.html"
463>SDL_FreeYUVOverlay</A
464>&nbsp;--&nbsp;Free a YUV video overlay</DT
465><DT
466><A
467HREF="sdlglattr.html"
468>SDL_GLattr</A
469>&nbsp;--&nbsp;SDL GL Attributes</DT
470><DT
471><A
472HREF="sdlrect.html"
473>SDL_Rect</A
474>&nbsp;--&nbsp;Defines a rectangular area</DT
475><DT
476><A
477HREF="sdlcolor.html"
478>SDL_Color</A
479>&nbsp;--&nbsp;Format independent color description</DT
480><DT
481><A
482HREF="sdlpalette.html"
483>SDL_Palette</A
484>&nbsp;--&nbsp;Color palette for 8-bit pixel formats</DT
485><DT
486><A
487HREF="sdlpixelformat.html"
488>SDL_PixelFormat</A
489>&nbsp;--&nbsp;Stores surface format information</DT
490><DT
491><A
492HREF="sdlsurface.html"
493>SDL_Surface</A
494>&nbsp;--&nbsp;Graphical Surface Structure</DT
495><DT
496><A
497HREF="sdlvideoinfo.html"
498>SDL_VideoInfo</A
499>&nbsp;--&nbsp;Video Target information</DT
500><DT
501><A
502HREF="sdloverlay.html"
503>SDL_Overlay</A
504>&nbsp;--&nbsp;YUV video overlay</DT
505></DL
506></DD
507><DT
508>7. <A
509HREF="wm.html"
510>Window Management</A
511></DT
512><DD
513><DL
514><DT
515><A
516HREF="sdlwmsetcaption.html"
517>SDL_WM_SetCaption</A
518>&nbsp;--&nbsp;Sets the window tile and icon name.</DT
519><DT
520><A
521HREF="sdlwmgetcaption.html"
522>SDL_WM_GetCaption</A
523>&nbsp;--&nbsp;Gets the window title and icon name.</DT
524><DT
525><A
526HREF="sdlwmseticon.html"
527>SDL_WM_SetIcon</A
528>&nbsp;--&nbsp;Sets the icon for the display window.</DT
529><DT
530><A
531HREF="sdlwmiconifywindow.html"
532>SDL_WM_IconifyWindow</A
533>&nbsp;--&nbsp;Iconify/Minimise the window</DT
534><DT
535><A
536HREF="sdlwmtogglefullscreen.html"
537>SDL_WM_ToggleFullScreen</A
538>&nbsp;--&nbsp;Toggles fullscreen mode</DT
539><DT
540><A
541HREF="sdlwmgrabinput.html"
542>SDL_WM_GrabInput</A
543>&nbsp;--&nbsp;Grabs mouse and keyboard input.</DT
544></DL
545></DD
546><DT
547>8. <A
548HREF="event.html"
549>Events</A
550></DT
551><DD
552><DL
553><DT
554><A
555HREF="event.html#AEN3691"
556>Introduction</A
557></DT
558><DT
559><A
560HREF="eventstructures.html"
561>SDL Event Structures.</A
562></DT
563><DT
564><A
565HREF="eventfunctions.html"
566>Event Functions.</A
567></DT
568></DL
569></DD
570><DT
571>9. <A
572HREF="joystick.html"
573>Joystick</A
574></DT
575><DD
576><DL
577><DT
578><A
579HREF="sdlnumjoysticks.html"
580>SDL_NumJoysticks</A
581>&nbsp;--&nbsp;Count available joysticks.</DT
582><DT
583><A
584HREF="sdljoystickname.html"
585>SDL_JoystickName</A
586>&nbsp;--&nbsp;Get joystick name.</DT
587><DT
588><A
589HREF="sdljoystickopen.html"
590>SDL_JoystickOpen</A
591>&nbsp;--&nbsp;Opens a joystick for use.</DT
592><DT
593><A
594HREF="sdljoystickopened.html"
595>SDL_JoystickOpened</A
596>&nbsp;--&nbsp;Determine if a joystick has been opened</DT
597><DT
598><A
599HREF="sdljoystickindex.html"
600>SDL_JoystickIndex</A
601>&nbsp;--&nbsp;Get the index of an SDL_Joystick.</DT
602><DT
603><A
604HREF="sdljoysticknumaxes.html"
605>SDL_JoystickNumAxes</A
606>&nbsp;--&nbsp;Get the number of joystick axes</DT
607><DT
608><A
609HREF="sdljoysticknumballs.html"
610>SDL_JoystickNumBalls</A
611>&nbsp;--&nbsp;Get the number of joystick trackballs</DT
612><DT
613><A
614HREF="sdljoysticknumhats.html"
615>SDL_JoystickNumHats</A
616>&nbsp;--&nbsp;Get the number of joystick hats</DT
617><DT
618><A
619HREF="sdljoysticknumbuttons.html"
620>SDL_JoystickNumButtons</A
621>&nbsp;--&nbsp;Get the number of joysitck buttons</DT
622><DT
623><A
624HREF="sdljoystickupdate.html"
625>SDL_JoystickUpdate</A
626>&nbsp;--&nbsp;Updates the state of all joysticks</DT
627><DT
628><A
629HREF="sdljoystickgetaxis.html"
630>SDL_JoystickGetAxis</A
631>&nbsp;--&nbsp;Get the current state of an axis</DT
632><DT
633><A
634HREF="sdljoystickgethat.html"
635>SDL_JoystickGetHat</A
636>&nbsp;--&nbsp;Get the current state of a joystick hat</DT
637><DT
638><A
639HREF="sdljoystickgetbutton.html"
640>SDL_JoystickGetButton</A
641>&nbsp;--&nbsp;Get the current state of a given button on a given joystick</DT
642><DT
643><A
644HREF="sdljoystickgetball.html"
645>SDL_JoystickGetBall</A
646>&nbsp;--&nbsp;Get relative trackball motion</DT
647><DT
648><A
649HREF="sdljoystickclose.html"
650>SDL_JoystickClose</A
651>&nbsp;--&nbsp;Closes a previously opened joystick</DT
652></DL
653></DD
654><DT
655>10. <A
656HREF="audio.html"
657>Audio</A
658></DT
659><DD
660><DL
661><DT
662><A
663HREF="sdlaudiospec.html"
664>SDL_AudioSpec</A
665>&nbsp;--&nbsp;Audio Specification Structure</DT
666><DT
667><A
668HREF="sdlopenaudio.html"
669>SDL_OpenAudio</A
670>&nbsp;--&nbsp;Opens the audio device with the desired parameters.</DT
671><DT
672><A
673HREF="sdlpauseaudio.html"
674>SDL_PauseAudio</A
675>&nbsp;--&nbsp;Pauses and unpauses the audio callback processing</DT
676><DT
677><A
678HREF="sdlgetaudiostatus.html"
679>SDL_GetAudioStatus</A
680>&nbsp;--&nbsp;Get the current audio state</DT
681><DT
682><A
683HREF="sdlloadwav.html"
684>SDL_LoadWAV</A
685>&nbsp;--&nbsp;Load a WAVE file</DT
686><DT
687><A
688HREF="sdlfreewav.html"
689>SDL_FreeWAV</A
690>&nbsp;--&nbsp;Frees previously opened WAV data</DT
691><DT
692><A
693HREF="sdlaudiocvt.html"
694>SDL_AudioCVT</A
695>&nbsp;--&nbsp;Audio Conversion Structure</DT
696><DT
697><A
698HREF="sdlbuildaudiocvt.html"
699>SDL_BuildAudioCVT</A
700>&nbsp;--&nbsp;Initializes a SDL_AudioCVT structure for conversion</DT
701><DT
702><A
703HREF="sdlconvertaudio.html"
704>SDL_ConvertAudio</A
705>&nbsp;--&nbsp;Convert audio data to a desired audio format.</DT
706><DT
707><A
708HREF="sdlmixaudio.html"
709>SDL_MixAudio</A
710>&nbsp;--&nbsp;Mix audio data</DT
711><DT
712><A
713HREF="sdllockaudio.html"
714>SDL_LockAudio</A
715>&nbsp;--&nbsp;Lock out the callback function</DT
716><DT
717><A
718HREF="sdlunlockaudio.html"
719>SDL_UnlockAudio</A
720>&nbsp;--&nbsp;Unlock the callback function</DT
721><DT
722><A
723HREF="sdlcloseaudio.html"
724>SDL_CloseAudio</A
725>&nbsp;--&nbsp;Shuts down audio processing and closes the audio device.</DT
726></DL
727></DD
728><DT
729>11. <A
730HREF="cdrom.html"
731>CD-ROM</A
732></DT
733><DD
734><DL
735><DT
736><A
737HREF="sdlcdnumdrives.html"
738>SDL_CDNumDrives</A
739>&nbsp;--&nbsp;Returns the number of CD-ROM drives on the system.</DT
740><DT
741><A
742HREF="sdlcdname.html"
743>SDL_CDName</A
744>&nbsp;--&nbsp;Returns a human-readable, system-dependent identifier for the CD-ROM.</DT
745><DT
746><A
747HREF="sdlcdopen.html"
748>SDL_CDOpen</A
749>&nbsp;--&nbsp;Opens a CD-ROM drive for access.</DT
750><DT
751><A
752HREF="sdlcdstatus.html"
753>SDL_CDStatus</A
754>&nbsp;--&nbsp;Returns the current status of the given drive.</DT
755><DT
756><A
757HREF="sdlcdplay.html"
758>SDL_CDPlay</A
759>&nbsp;--&nbsp;Play a CD</DT
760><DT
761><A
762HREF="sdlcdplaytracks.html"
763>SDL_CDPlayTracks</A
764>&nbsp;--&nbsp;Play the given CD track(s)</DT
765><DT
766><A
767HREF="sdlcdpause.html"
768>SDL_CDPause</A
769>&nbsp;--&nbsp;Pauses a CDROM</DT
770><DT
771><A
772HREF="sdlcdresume.html"
773>SDL_CDResume</A
774>&nbsp;--&nbsp;Resumes a CDROM</DT
775><DT
776><A
777HREF="sdlcdstop.html"
778>SDL_CDStop</A
779>&nbsp;--&nbsp;Stops a CDROM</DT
780><DT
781><A
782HREF="sdlcdeject.html"
783>SDL_CDEject</A
784>&nbsp;--&nbsp;Ejects a CDROM</DT
785><DT
786><A
787HREF="sdlcdclose.html"
788>SDL_CDClose</A
789>&nbsp;--&nbsp;Closes a SDL_CD handle</DT
790><DT
791><A
792HREF="sdlcd.html"
793>SDL_CD</A
794>&nbsp;--&nbsp;CDROM Drive Information</DT
795><DT
796><A
797HREF="sdlcdtrack.html"
798>SDL_CDtrack</A
799>&nbsp;--&nbsp;CD Track Information Structure</DT
800></DL
801></DD
802><DT
803>12. <A
804HREF="thread.html"
805>Multi-threaded Programming</A
806></DT
807><DD
808><DL
809><DT
810><A
811HREF="sdlcreatethread.html"
812>SDL_CreateThread</A
813>&nbsp;--&nbsp;Creates a new thread of execution that shares its parent's properties.</DT
814><DT
815><A
816HREF="sdlthreadid.html"
817>SDL_ThreadID</A
818>&nbsp;--&nbsp;Get the 32-bit thread identifier for the current thread.</DT
819><DT
820><A
821HREF="sdlgetthreadid.html"
822>SDL_GetThreadID</A
823>&nbsp;--&nbsp;Get the SDL thread ID of a SDL_Thread</DT
824><DT
825><A
826HREF="sdlwaitthread.html"
827>SDL_WaitThread</A
828>&nbsp;--&nbsp;Wait for a thread to finish.</DT
829><DT
830><A
831HREF="sdlkillthread.html"
832>SDL_KillThread</A
833>&nbsp;--&nbsp;Gracelessly terminates the thread.</DT
834><DT
835><A
836HREF="sdlcreatemutex.html"
837>SDL_CreateMutex</A
838>&nbsp;--&nbsp;Create a mutex</DT
839><DT
840><A
841HREF="sdldestroymutex.html"
842>SDL_DestroyMutex</A
843>&nbsp;--&nbsp;Destroy a mutex</DT
844><DT
845><A
846HREF="sdlmutexp.html"
847>SDL_mutexP</A
848>&nbsp;--&nbsp;Lock a mutex</DT
849><DT
850><A
851HREF="sdlmutexv.html"
852>SDL_mutexV</A
853>&nbsp;--&nbsp;Unlock a mutex</DT
854><DT
855><A
856HREF="sdlcreatesemaphore.html"
857>SDL_CreateSemaphore</A
858>&nbsp;--&nbsp;Creates a new semaphore and assigns an initial value to it.</DT
859><DT
860><A
861HREF="sdldestroysemaphore.html"
862>SDL_DestroySemaphore</A
863>&nbsp;--&nbsp;Destroys a semaphore that was created by <A
864HREF="sdlcreatesemaphore.html"
865>SDL_CreateSemaphore</A
866>.</DT
867><DT
868><A
869HREF="sdlsemwait.html"
870>SDL_SemWait</A
871>&nbsp;--&nbsp;Lock a semaphore and suspend the thread if the semaphore value is zero.</DT
872><DT
873><A
874HREF="sdlsemtrywait.html"
875>SDL_SemTryWait</A
876>&nbsp;--&nbsp;Attempt to lock a semaphore but don't suspend the thread.</DT
877><DT
878><A
879HREF="sdlsemwaittimeout.html"
880>SDL_SemWaitTimeout</A
881>&nbsp;--&nbsp;Lock a semaphore, but only wait up to a specified maximum time.</DT
882><DT
883><A
884HREF="sdlsempost.html"
885>SDL_SemPost</A
886>&nbsp;--&nbsp;Unlock a semaphore.</DT
887><DT
888><A
889HREF="sdlsemvalue.html"
890>SDL_SemValue</A
891>&nbsp;--&nbsp;Return the current value of a semaphore.</DT
892><DT
893><A
894HREF="sdlcreatecond.html"
895>SDL_CreateCond</A
896>&nbsp;--&nbsp;Create a condition variable</DT
897><DT
898><A
899HREF="sdldestroycond.html"
900>SDL_DestroyCond</A
901>&nbsp;--&nbsp;Destroy a condition variable</DT
902><DT
903><A
904HREF="sdlcondsignal.html"
905>SDL_CondSignal</A
906>&nbsp;--&nbsp;Restart a thread wait on a condition variable</DT
907><DT
908><A
909HREF="sdlcondbroadcast.html"
910>SDL_CondBroadcast</A
911>&nbsp;--&nbsp;Restart all threads waiting on a condition variable</DT
912><DT
913><A
914HREF="sdlcondwait.html"
915>SDL_CondWait</A
916>&nbsp;--&nbsp;Wait on a condition variable</DT
917><DT
918><A
919HREF="sdlcondwaittimeout.html"
920>SDL_CondWaitTimeout</A
921>&nbsp;--&nbsp;Wait on a condition variable, with timeout</DT
922></DL
923></DD
924><DT
925>13. <A
926HREF="time.html"
927>Time</A
928></DT
929><DD
930><DL
931><DT
932><A
933HREF="sdlgetticks.html"
934>SDL_GetTicks</A
935>&nbsp;--&nbsp;Get the number of milliseconds since the SDL library initialization.</DT
936><DT
937><A
938HREF="sdldelay.html"
939>SDL_Delay</A
940>&nbsp;--&nbsp;Wait a specified number of milliseconds before returning.</DT
941><DT
942><A
943HREF="sdladdtimer.html"
944>SDL_AddTimer</A
945>&nbsp;--&nbsp;Add a timer which will call a callback after the specified number of milliseconds has
946elapsed.</DT
947><DT
948><A
949HREF="sdlremovetimer.html"
950>SDL_RemoveTimer</A
951>&nbsp;--&nbsp;Remove a timer which was added with
952<A
953HREF="sdladdtimer.html"
954>SDL_AddTimer</A
955>.</DT
956><DT
957><A
958HREF="sdlsettimer.html"
959>SDL_SetTimer</A
960>&nbsp;--&nbsp;Set a callback to run after the specified number of milliseconds has
961elapsed.</DT
962></DL
963></DD
964></DL
965></DD
966></DL
967></DIV
968><DIV
969CLASS="LOT"
970><DL
971CLASS="LOT"
972><DT
973><B
974>List of Tables</B
975></DT
976><DT
977>8-1. <A
978HREF="sdlkey.html#AEN4720"
979>SDL Keysym definitions</A
980></DT
981><DT
982>8-2. <A
983HREF="sdlkey.html#SDLMOD"
984>SDL modifier definitions</A
985></DT
986></DL
987></DIV
988><DIV
989CLASS="LOT"
990><DL
991CLASS="LOT"
992><DT
993><B
994>List of Examples</B
995></DT
996><DT
997>1-1. <A
998HREF="guidebasicsinit.html#AEN60"
999>Initializing SDL</A
1000></DT
1001><DT
1002>2-1. <A
1003HREF="guidevideo.html#AEN71"
1004>Initializing the Video Display</A
1005></DT
1006><DT
1007>2-2. <A
1008HREF="guidevideo.html#AEN77"
1009>Initializing the Best Video Mode</A
1010></DT
1011><DT
1012>2-3. <A
1013HREF="guidevideo.html#AEN83"
1014>Loading and Displaying a BMP File</A
1015></DT
1016><DT
1017>2-4. <A
1018HREF="guidevideo.html#AEN90"
1019>getpixel()</A
1020></DT
1021><DT
1022>2-5. <A
1023HREF="guidevideo.html#AEN93"
1024>putpixel()</A
1025></DT
1026><DT
1027>2-6. <A
1028HREF="guidevideo.html#AEN97"
1029>Using putpixel()</A
1030></DT
1031><DT
1032>2-7. <A
1033HREF="guidevideoopengl.html#AEN114"
1034>Initializing SDL with OpenGL</A
1035></DT
1036><DT
1037>2-8. <A
1038HREF="guidevideoopengl.html#AEN128"
1039>SDL and OpenGL</A
1040></DT
1041><DT
1042>3-1. <A
1043HREF="guideinput.html#AEN141"
1044>Initializing SDL with Joystick Support</A
1045></DT
1046><DT
1047>3-2. <A
1048HREF="guideinput.html#AEN154"
1049>Querying the Number of Available Joysticks</A
1050></DT
1051><DT
1052>3-3. <A
1053HREF="guideinput.html#AEN183"
1054>Opening a Joystick</A
1055></DT
1056><DT
1057>3-4. <A
1058HREF="guideinput.html#AEN191"
1059>Joystick Axis Events</A
1060></DT
1061><DT
1062>3-5. <A
1063HREF="guideinput.html#AEN195"
1064>More Joystick Axis Events</A
1065></DT
1066><DT
1067>3-6. <A
1068HREF="guideinput.html#AEN203"
1069>Joystick Button Events</A
1070></DT
1071><DT
1072>3-7. <A
1073HREF="guideinput.html#AEN217"
1074>Joystick Ball Events</A
1075></DT
1076><DT
1077>3-8. <A
1078HREF="guideinput.html#AEN244"
1079>Joystick Hat Events</A
1080></DT
1081><DT
1082>3-9. <A
1083HREF="guideinput.html#AEN265"
1084>Querying Joystick Characteristics</A
1085></DT
1086><DT
1087>3-10. <A
1088HREF="guideinputkeyboard.html#AEN334"
1089>Reading Keyboard Events</A
1090></DT
1091><DT
1092>3-11. <A
1093HREF="guideinputkeyboard.html#AEN351"
1094>Interpreting Key Event Information</A
1095></DT
1096><DT
1097>3-12. <A
1098HREF="guideinputkeyboard.html#AEN363"
1099>Proper Game Movement</A
1100></DT
1101></DL
1102></DIV
1103></DIV
1104><DIV
1105CLASS="NAVFOOTER"
1106><HR
1107ALIGN="LEFT"
1108WIDTH="100%"><TABLE
1109SUMMARY="Footer navigation table"
1110WIDTH="100%"
1111BORDER="0"
1112CELLPADDING="0"
1113CELLSPACING="0"
1114><TR
1115><TD
1116WIDTH="33%"
1117ALIGN="left"
1118VALIGN="top"
1119>&nbsp;</TD
1120><TD
1121WIDTH="34%"
1122ALIGN="center"
1123VALIGN="top"
1124>&nbsp;</TD
1125><TD
1126WIDTH="33%"
1127ALIGN="right"
1128VALIGN="top"
1129><A
1130HREF="guide.html"
1131ACCESSKEY="N"
1132>Next</A
1133></TD
1134></TR
1135><TR
1136><TD
1137WIDTH="33%"
1138ALIGN="left"
1139VALIGN="top"
1140>&nbsp;</TD
1141><TD
1142WIDTH="34%"
1143ALIGN="center"
1144VALIGN="top"
1145>&nbsp;</TD
1146><TD
1147WIDTH="33%"
1148ALIGN="right"
1149VALIGN="top"
1150>SDL Guide</TD
1151></TR
1152></TABLE
1153></DIV
1154></BODY
1155></HTML
1156>