SDL_WM_SetCaption
extern DECLSPEC void SDLCALL SDL_WM_SetCaption(const char *title, const char *icon);
SDL_SetVideoMode
/* Available for SDL_CreateRGBSurface() or SDL_SetVideoMode() */
/* Available for SDL_SetVideoMode() */
 * video hardware.  If this is called before SDL_SetVideoMode(), the 'vfmt'
 * one used when setting the video mode, SDL_SetVideoMode() will succeed,
 * SDL_SetVideoMode()
 * and you must respond to the event by re-calling SDL_SetVideoMode()
extern DECLSPEC SDL_Surface * SDLCALL SDL_SetVideoMode
 * The SDL_DOUBLEBUF flag must have been passed to SDL_SetVideoMode() when
 * SDL_HWPALETTE was set in SDL_SetVideoMode() flags, SDL_SetColors()
 * Allocate and free an RGB surface (must be called after SDL_SetVideoMode)
 * SDL_HWSURFACE flag is not given when calling SDL_SetVideoMode(), you
 * This function must be called before the first call to SDL_SetVideoMode().
 * The next call to SDL_SetVideoMode() will set the mode fullscreen
SDL_GetError
extern DECLSPEC char * SDLCALL SDL_GetError(void);
SDL_InitSubSystem
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);
 * You should normally use SDL_Init() or SDL_InitSubSystem().
 * You should normally use SDL_Init() or SDL_InitSubSystem().
SDL_WasInit
extern DECLSPEC Uint32 SDLCALL SDL_WasInit(Uint32 flags);
SDL_QuitSubSystem
extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags);
SDL_Delay
extern DECLSPEC void SDLCALL SDL_Delay(Uint32 ms);
SDL_PumpEvents
extern DECLSPEC void SDLCALL SDL_PumpEvents(void);
        (SDL_PumpEvents(), SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUITMASK))
SDL_SetEventFilter
extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter);
SDL_GetMouseState
extern DECLSPEC Uint8 SDLCALL SDL_GetMouseState(int *x, int *y);
SDL_PushEvent
extern DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event);
SDL_GetKeyState
 * 	Uint8 *keystate = SDL_GetKeyState(NULL);
extern DECLSPEC Uint8 * SDLCALL SDL_GetKeyState(int *numkeys);
SDL_JoystickUpdate
extern DECLSPEC void SDLCALL SDL_JoystickUpdate(void);
 * If joystick events are disabled, you must call SDL_JoystickUpdate()
SDL_WM_GrabInput
extern DECLSPEC SDL_GrabMode SDLCALL SDL_WM_GrabInput(SDL_GrabMode mode);
SDL_JoystickNumButtons
extern DECLSPEC int SDLCALL SDL_JoystickNumButtons(SDL_Joystick *joystick);
SDL_JoystickNumHats
extern DECLSPEC int SDLCALL SDL_JoystickNumHats(SDL_Joystick *joystick);
SDL_JoystickNumBalls
extern DECLSPEC int SDLCALL SDL_JoystickNumBalls(SDL_Joystick *joystick);
SDL_JoystickNumAxes
extern DECLSPEC int SDLCALL SDL_JoystickNumAxes(SDL_Joystick *joystick);
SDL_JoystickGetButton
extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetButton(SDL_Joystick *joystick, int button);
SDL_JoystickGetHat
extern DECLSPEC Uint8 SDLCALL SDL_JoystickGetHat(SDL_Joystick *joystick, int hat);
SDL_JoystickGetAxis
extern DECLSPEC Sint16 SDLCALL SDL_JoystickGetAxis(SDL_Joystick *joystick, int axis);
SDL_JoystickClose
extern DECLSPEC void SDLCALL SDL_JoystickClose(SDL_Joystick *joystick);
SDL_JoystickName
extern DECLSPEC const char * SDLCALL SDL_JoystickName(int device_index);
SDL_JoystickOpen
extern DECLSPEC SDL_Joystick * SDLCALL SDL_JoystickOpen(int device_index);
extern DECLSPEC int SDLCALL SDL_JoystickOpened(int device_index);
 * Close a joystick previously opened with SDL_JoystickOpen()
SDL_NumJoysticks
extern DECLSPEC int SDLCALL SDL_NumJoysticks(void);
SDL_ThreadID
extern DECLSPEC Uint32 SDLCALL SDL_ThreadID(void);
   equivalent to SDL_ThreadID() if the specified thread is NULL.
SDL_CreateThread
extern DECLSPEC SDL_Thread * SDLCALL SDL_CreateThread(int (SDLCALL *fn)(void *), void *data);
SDL_mutexV
#define SDL_UnlockMutex(m)	SDL_mutexV(m)
extern DECLSPEC int SDLCALL SDL_mutexV(SDL_mutex *mutex);
SDL_mutexP
#define SDL_LockMutex(m)	SDL_mutexP(m)
extern DECLSPEC int SDLCALL SDL_mutexP(SDL_mutex *mutex);
SDL_WaitThread
extern DECLSPEC void SDLCALL SDL_WaitThread(SDL_Thread *thread, int *status);
SDL_ShowCursor
 * SDL_ShowCursor() returns 1 if the cursor was being displayed
extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle);
SDL_PeepEvents
        (SDL_PumpEvents(), SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUITMASK))
extern DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event *events, int numevents,
        (SDL_PumpEvents(), SDL_PeepEvents(NULL,0,SDL_PEEKEVENT,SDL_QUITMASK))
SDL_PollEvent
extern DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event *event);
SDL_QuitSubSystem
SDL_Quit
extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags);
extern DECLSPEC void SDLCALL SDL_Quit(void);
SDL_QuitSubSystem
extern DECLSPEC void SDLCALL SDL_QuitSubSystem(Uint32 flags);
typedef struct SDL_QuitEvent {
} SDL_QuitEvent;
	SDL_QuitEvent quit;
#define SDL_QuitRequested() \
SDL_DestroyMutex
extern DECLSPEC void SDLCALL SDL_DestroyMutex(SDL_mutex *mutex);
SDL_JoystickEventState
extern DECLSPEC int SDLCALL SDL_JoystickEventState(int state);
SDL_CreateMutex
extern DECLSPEC SDL_mutex * SDLCALL SDL_CreateMutex(void);
SDL_EnableUNICODE
     translation is enabled by the SDL_EnableUNICODE() API.  If non-zero,
extern DECLSPEC int SDLCALL SDL_EnableUNICODE(int enable);
SDL_InitSubSystem
SDL_Init
/* These are the flags which may be passed to SDL_Init() -- you should
extern DECLSPEC int SDLCALL SDL_Init(Uint32 flags);
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);
SDL_InitSubSystem
extern DECLSPEC int SDLCALL SDL_InitSubSystem(Uint32 flags);
 * You should normally use SDL_Init() or SDL_InitSubSystem().
 * You should normally use SDL_Init() or SDL_InitSubSystem().
 * You should normally use SDL_Init() or SDL_InitSubSystem().
/* In order to use these functions, SDL_Init() must have been called
   SDL_Init() has not been called with the SDL_INIT_CDROM flag.
/* In order to use these functions, SDL_Init() must have been called
extern DECLSPEC void SDLCALL SDL_InitQuickDraw(struct QDGlobals *the_qd);
  SDL_Init() installs signal handlers for SIGINT (keyboard interrupt)
 * If you use this function, you need to pass SDL_INIT_TIMER to SDL_Init().
 * You should normally use SDL_Init() or SDL_InitSubSystem().
 * SDL_Init() before opening the sound device, otherwise under Win32 DirectX,
SDL_GetTicks
extern DECLSPEC Uint32 SDLCALL SDL_GetTicks(void);
SDL_UnlockSurface
 * the SDL_LockSurface() and SDL_UnlockSurface() calls.
 * Between calls to SDL_LockSurface()/SDL_UnlockSurface(), you can write
 * use SDL_UnlockSurface() to release it.
extern DECLSPEC void SDLCALL SDL_UnlockSurface(SDL_Surface *surface);
		SDL_UnlockSurface(image);
SDL_LockSurface
 * the SDL_LockSurface() and SDL_UnlockSurface() calls.
 * Between calls to SDL_LockSurface()/SDL_UnlockSurface(), you can write
 * video memory, if possible, and you may have to call SDL_LockSurface()
 * the SDL_LockSurface() and SDL_UnlockSurface() calls.
 * SDL_LockSurface() sets up a surface for directly accessing the pixels.
 * Between calls to SDL_LockSurface()/SDL_UnlockSurface(), you can write
 * SDL_LockSurface() returns 0, or -1 if the surface couldn't be locked.
extern DECLSPEC int SDLCALL SDL_LockSurface(SDL_Surface *surface);
		while ( SDL_LockSurface(image) < 0 )
SDL_UpperBlit
#define SDL_BlitSurface SDL_UpperBlit
extern DECLSPEC int SDLCALL SDL_UpperBlit
SDL_OpenAudio
/* The calculated values in this structure are calculated by SDL_OpenAudio() */
 *     calculated by SDL_OpenAudio().
 *     and is calculated by SDL_OpenAudio().
extern DECLSPEC int SDLCALL SDL_OpenAudio(SDL_AudioSpec *desired, SDL_AudioSpec *obtained);
SDL_PauseAudio
 * be enabled for playing by calling SDL_PauseAudio(0) when you are ready
extern DECLSPEC void SDLCALL SDL_PauseAudio(int pause_on);
SDL_UnlockAudio
 *     and SDL_UnlockAudio() in your code.
extern DECLSPEC void SDLCALL SDL_UnlockAudio(void);
SDL_LockAudio
 *     protect data structures that it accesses by calling SDL_LockAudio()
extern DECLSPEC void SDLCALL SDL_LockAudio(void);
SDL_CloseAudio
extern DECLSPEC void SDLCALL SDL_CloseAudio(void);
SDL_Flip
 * SDL_Flip().  This is usually slower than the normal single-buffering
extern DECLSPEC int SDLCALL SDL_Flip(SDL_Surface *screen);
SDL_UpdateRect
 * If 'x', 'y', 'w' and 'h' are all 0, SDL_UpdateRect will update the entire
extern DECLSPEC void SDLCALL SDL_UpdateRects
extern DECLSPEC void SDLCALL SDL_UpdateRect
 * to calling SDL_UpdateRect(screen, 0, 0, 0, 0);
SDL_FreeSurface
extern DECLSPEC void SDLCALL SDL_FreeSurface(SDL_Surface *surface);
 * The new surface should be freed with SDL_FreeSurface().
SDL_WM_SetIcon
extern DECLSPEC void SDLCALL SDL_WM_SetIcon(SDL_Surface *icon, Uint8 *mask);
SDL_CreateRGBSurfaceFrom
extern DECLSPEC SDL_Surface * SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels,
SDL_GL_SetAttribute
extern DECLSPEC int SDLCALL SDL_GL_SetAttribute(SDL_GLattr attr, int value);
 * Developers should track the values they pass into SDL_GL_SetAttribute
SDL_GetVideoInfo
extern DECLSPEC const SDL_VideoInfo * SDLCALL SDL_GetVideoInfo(void);
 * by SDL_GetVideoInfo()->vfmt
SDL_SetAlpha
extern DECLSPEC int SDLCALL SDL_SetAlpha(SDL_Surface *surface, Uint32 flag, Uint8 alpha);
SDL_SetColorKey
extern DECLSPEC int SDLCALL SDL_SetColorKey
SDL_CreateRGBSurfaceFrom
SDL_CreateRGBSurface
/* Available for SDL_CreateRGBSurface() or SDL_SetVideoMode() */
SDL_CreateRGBSurfaceFrom
extern DECLSPEC SDL_Surface * SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels,
/* Available for SDL_CreateRGBSurface() or SDL_SetVideoMode() */
#define SDL_AllocSurface    SDL_CreateRGBSurface
extern DECLSPEC SDL_Surface * SDLCALL SDL_CreateRGBSurface
extern DECLSPEC SDL_Surface * SDLCALL SDL_CreateRGBSurfaceFrom(void *pixels,
 * The 'flags' parameter is passed to SDL_CreateRGBSurface() and has those 
