WinRT: merged with latest, official, SDL 2.x sources (at rev. bea100d73d13)
authorDavid Ludwig
Sun, 14 Apr 2013 11:42:55 -0400
changeset 8460f483e8bdae3c
parent 8459 1178e27580c7
parent 7063 bea100d73d13
child 8461 ca8dad9be3d4
WinRT: merged with latest, official, SDL 2.x sources (at rev. bea100d73d13)
Makefile.ds
README.ds
VisualC/SDL/SDL_VS2012.vcxproj
android-project/res/drawable-hdpi/icon.png
android-project/res/drawable-ldpi/icon.png
android-project/res/drawable-mdpi/icon.png
include/SDL_config.h
include/SDL_config_nintendods.h
include/SDL_config_windowsrt.h
include/SDL_platform.h
include/SDL_stdinc.h
include/begin_code.h
src/SDL_log.c
src/atomic/SDL_spinlock.c
src/audio/nds/SDL_ndsaudio.c
src/audio/nds/SDL_ndsaudio.h
src/audio/xaudio2/SDL_xaudio2.c
src/core/windows/SDL_windows.c
src/core/windows/SDL_windows.h
src/events/nds/SDL_ndsgesture.c
src/file/SDL_rwops.c
src/haptic/nds/SDL_syshaptic.c
src/joystick/android/SDL_sysjoystick.c
src/joystick/nds/SDL_sysjoystick.c
src/power/nds/SDL_syspower.c
src/render/SDL_render.c
src/render/SDL_sysrender.h
src/render/nds/SDL_libgl2D.c
src/render/nds/SDL_libgl2D.h
src/render/nds/SDL_ndsrender.c
src/thread/SDL_thread_c.h
src/thread/nds/SDL_syscond.c
src/thread/nds/SDL_syscond_c.h
src/thread/nds/SDL_sysmutex.c
src/thread/nds/SDL_sysmutex_c.h
src/thread/nds/SDL_syssem.c
src/thread/nds/SDL_syssem_c.h
src/thread/nds/SDL_systhread.c
src/thread/nds/SDL_systhread_c.h
src/timer/nds/SDL_systimer.c
src/video/SDL_sysvideo.h
src/video/SDL_video.c
src/video/nds/SDL_ndsevents.c
src/video/nds/SDL_ndsevents_c.h
src/video/nds/SDL_ndsvideo.c
src/video/nds/SDL_ndsvideo.h
src/video/nds/SDL_ndswindow.c
src/video/nds/SDL_ndswindow.h
src/video/uikit/SDL_uikitopengles.m
src/video/uikit/SDL_uikitview.m
src/video/uikit/SDL_uikitwindow.m
src/video/windowsrt/SDL_WinRTApp.cpp
test/nds-test-progs/Makefile
test/nds-test-progs/general/Makefile
test/nds-test-progs/general/source/main.c
test/nds-test-progs/testscale/Makefile
test/nds-test-progs/testsprite2/Makefile
test/nds-test-progs/testspriteminimal/Makefile
     1.1 --- a/.hgignore	Sat Apr 13 23:03:46 2013 -0400
     1.2 +++ b/.hgignore	Sun Apr 14 11:42:55 2013 -0400
     1.3 @@ -53,9 +53,11 @@
     1.4  test/loopwave
     1.5  test/testatomic
     1.6  test/testaudioinfo
     1.7 +test/testautomation
     1.8  test/testdraw2
     1.9  test/testerror
    1.10  test/testfile
    1.11 +test/testgamecontroller
    1.12  test/testgesture
    1.13  test/testgl2
    1.14  test/testgles
     2.1 --- a/CREDITS	Sat Apr 13 23:03:46 2013 -0400
     2.2 +++ b/CREDITS	Sun Apr 14 11:42:55 2013 -0400
     2.3 @@ -19,9 +19,6 @@
     2.4  * Holmes Futrell for port of SDL to the iPhone and iPod Touch during the
     2.5    Google Summer of Code 2008
     2.6  
     2.7 -* Darren Alton for port of SDL to the Nintendo DS during the Google Summer
     2.8 -  of Code 2008
     2.9 -
    2.10  * Szymon "Wilku" Wilczek for adding support for multiple mice and tablets
    2.11    during the Google Summer of Code 2008
    2.12  
     3.1 --- a/Makefile.ds	Sat Apr 13 23:03:46 2013 -0400
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,231 +0,0 @@
     3.4 -#---------------------------------------------------------------------------------
     3.5 -.SUFFIXES:
     3.6 -#---------------------------------------------------------------------------------
     3.7 -
     3.8 -ifeq ($(strip $(DEVKITARM)),)
     3.9 -$(error "Please set DEVKITARM in your environment. export DEVKITARM=<path to>devkitARM")
    3.10 -endif
    3.11 -
    3.12 -include $(DEVKITARM)/ds_rules
    3.13 -
    3.14 -#---------------------------------------------------------------------------------
    3.15 -# TARGET is the name of the output
    3.16 -# BUILD is the directory where object files & intermediate files will be placed
    3.17 -# SOURCES is a list of directories containing source code
    3.18 -# DATA is a list of directories containing data files
    3.19 -# INCLUDES is a list of directories containing header files
    3.20 -#---------------------------------------------------------------------------------
    3.21 -TARGET		:=	$(shell basename $(CURDIR))
    3.22 -BUILD		:=	src
    3.23 -SOURCES		:=	src
    3.24 -DATA		:=	data
    3.25 -INCLUDES	:=	include
    3.26 -
    3.27 -#---------------------------------------------------------------------------------
    3.28 -# options for code generation
    3.29 -#---------------------------------------------------------------------------------
    3.30 -ARCH	:=	-mthumb -mthumb-interwork \
    3.31 -		-D__NDS__ -DENABLE_NDS -DNO_SIGNAL_H -DDISABLE_THREADS -DPACKAGE=\"SDL\" \
    3.32 -		 -DVERSION=\"2.0\" -DHAVE_ALLOCA_H=1 -DHAVE_ALLOCA=1  
    3.33 -
    3.34 -CFLAGS	:=	-g -Wall -Os\
    3.35 -		-march=armv5te -mtune=arm946e-s \
    3.36 -		-fomit-frame-pointer -ffast-math \
    3.37 -		$(ARCH)
    3.38 -
    3.39 -CFLAGS	+=	$(INCLUDE) -DARM9
    3.40 -CXXFLAGS	:= $(CFLAGS) -fno-rtti -fno-exceptions
    3.41 -
    3.42 -ASFLAGS	:=	-g $(ARCH) -march=armv5te -mtune=arm946e-s
    3.43 -LDFLAGS	=	-specs=ds_arm9.specs -g $(ARCH) -Wl,-Map,$(notdir $*.map)
    3.44 -
    3.45 -# Set to 0 to use a framer buffer, or 1 to use the GL like hardware
    3.46 -# renderer. Alas, both cannot be used at the same time for lack of
    3.47 -# display/texture memory.
    3.48 -USE_HW_RENDERER := 1
    3.49 -
    3.50 -ifeq ($(USE_HW_RENDERER),1)
    3.51 -CFLAGS += -DUSE_HW_RENDERER
    3.52 -else
    3.53 -endif
    3.54 -
    3.55 -#---------------------------------------------------------------------------------
    3.56 -# list of directories containing libraries, this must be the top level containing
    3.57 -# include and lib
    3.58 -#---------------------------------------------------------------------------------
    3.59 -LIBDIRS	:=	$(LIBNDS) $(PORTLIBS)
    3.60 -
    3.61 -#---------------------------------------------------------------------------------
    3.62 -# no real need to edit anything past this point unless you need to add additional
    3.63 -# rules for different file extensions
    3.64 -#---------------------------------------------------------------------------------
    3.65 -ifneq ($(BUILD),$(notdir $(CURDIR)))
    3.66 -#---------------------------------------------------------------------------------
    3.67 -
    3.68 -export OUTPUT	:=	$(CURDIR)/lib/lib$(TARGET).a
    3.69 -
    3.70 -export VPATH	:=	$(foreach dir,$(SOURCES),$(CURDIR)/$(dir)) \
    3.71 -			$(foreach dir,$(DATA),$(CURDIR)/$(dir))
    3.72 -
    3.73 -export DEPSDIR	:=	$(CURDIR)/$(BUILD)
    3.74 -
    3.75 -CFILES		:=	\
    3.76 -			SDL.c \
    3.77 -			SDL_assert.c \
    3.78 -			SDL_error.c \
    3.79 -			SDL_fatal.c \
    3.80 -			SDL_hints.c \
    3.81 -			SDL_log.c \
    3.82 -			atomic/SDL_atomic.c \
    3.83 -			atomic/SDL_spinlock.arm.c \
    3.84 -			audio/SDL_audio.c \
    3.85 -			audio/SDL_audiocvt.c \
    3.86 -			audio/SDL_audiodev.c \
    3.87 -			audio/SDL_audiotypecvt.c \
    3.88 -			audio/SDL_mixer.c \
    3.89 -			audio/SDL_wave.c \
    3.90 -			audio/nds/SDL_ndsaudio.c \
    3.91 -			cpuinfo/SDL_cpuinfo.c \
    3.92 -			events/SDL_events.c \
    3.93 -			events/SDL_keyboard.c \
    3.94 -			events/SDL_mouse.c \
    3.95 -			events/SDL_quit.c \
    3.96 -			events/SDL_touch.c \
    3.97 -			events/SDL_windowevents.c \
    3.98 -			events/nds/SDL_ndsgesture.c \
    3.99 -			file/SDL_rwops.c \
   3.100 -			haptic/SDL_haptic.c \
   3.101 -			haptic/nds/SDL_syshaptic.c \
   3.102 -			joystick/SDL_joystick.c \
   3.103 -			joystick/nds/SDL_sysjoystick.c \
   3.104 -			power/SDL_power.c \
   3.105 -			power/nds/SDL_syspower.c \
   3.106 -			render/SDL_render.c \
   3.107 -			render/SDL_yuv_sw.c \
   3.108 -			render/nds/SDL_ndsrender.c \
   3.109 -			render/nds/SDL_libgl2D.c \
   3.110 -			render/software/SDL_blendfillrect.c \
   3.111 -			render/software/SDL_blendline.c \
   3.112 -			render/software/SDL_blendpoint.c \
   3.113 -			render/software/SDL_drawline.c \
   3.114 -			render/software/SDL_drawpoint.c \
   3.115 -			render/software/SDL_render_sw.c \
   3.116 -			stdlib/SDL_getenv.c \
   3.117 -			stdlib/SDL_iconv.c \
   3.118 -			stdlib/SDL_malloc.c \
   3.119 -			stdlib/SDL_qsort.c \
   3.120 -			stdlib/SDL_stdlib.c \
   3.121 -			stdlib/SDL_string.c \
   3.122 -			thread/SDL_thread.c \
   3.123 -			thread/nds/SDL_syscond.c \
   3.124 -			thread/nds/SDL_sysmutex.c \
   3.125 -			thread/nds/SDL_syssem.c \
   3.126 -			thread/nds/SDL_systhread.c \
   3.127 -			timer/SDL_timer.c \
   3.128 -			timer/nds/SDL_systimer.c \
   3.129 -			video/SDL_RLEaccel.c \
   3.130 -			video/SDL_blit.c \
   3.131 -			video/SDL_blit_0.c \
   3.132 -			video/SDL_blit_1.c \
   3.133 -			video/SDL_blit_A.c \
   3.134 -			video/SDL_blit_N.c \
   3.135 -			video/SDL_blit_auto.c \
   3.136 -			video/SDL_blit_copy.c \
   3.137 -			video/SDL_blit_slow.c \
   3.138 -			video/SDL_bmp.c \
   3.139 -			video/SDL_clipboard.c \
   3.140 -			video/SDL_fillrect.c \
   3.141 -			video/SDL_pixels.c \
   3.142 -			video/SDL_rect.c \
   3.143 -			video/SDL_stretch.c \
   3.144 -			video/SDL_surface.c \
   3.145 -			video/SDL_video.c \
   3.146 -			video/nds/SDL_ndsevents.c \
   3.147 -			video/nds/SDL_ndsvideo.c \
   3.148 -			video/nds/SDL_ndswindow.c
   3.149 -
   3.150 -
   3.151 -#CPPFILES	:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.cpp)))
   3.152 -#SFILES		:=	$(foreach dir,$(SOURCES),$(notdir $(wildcard $(dir)/*.s)))
   3.153 -#BINFILES	:=	$(foreach dir,$(DATA),$(notdir $(wildcard $(dir)/*.*)))
   3.154 -
   3.155 -#---------------------------------------------------------------------------------
   3.156 -# use CXX for linking C++ projects, CC for standard C
   3.157 -#---------------------------------------------------------------------------------
   3.158 -ifeq ($(strip $(CPPFILES)),)
   3.159 -#---------------------------------------------------------------------------------
   3.160 -	export LD	:=	$(CC)
   3.161 -#---------------------------------------------------------------------------------
   3.162 -else
   3.163 -#---------------------------------------------------------------------------------
   3.164 -	export LD	:=	$(CXX)
   3.165 -#---------------------------------------------------------------------------------
   3.166 -endif
   3.167 -#---------------------------------------------------------------------------------
   3.168 -
   3.169 -export OFILES	:=	$(addsuffix .o,$(BINFILES)) \
   3.170 -			$(CPPFILES:.cpp=.o) $(CFILES:.c=.o) $(SFILES:.s=.o)
   3.171 -
   3.172 -export INCLUDE	:=	$(foreach dir,$(INCLUDES),-I$(CURDIR)/$(dir)) \
   3.173 -			$(foreach dir,$(LIBDIRS),-I$(dir)/include) \
   3.174 -			-I$(CURDIR)/$(BUILD) \
   3.175 -			-I$(PORTLIBS)/include/SDL
   3.176 -
   3.177 -.PHONY: $(BUILD) clean all
   3.178 -
   3.179 -#---------------------------------------------------------------------------------
   3.180 -all: arm_only $(BUILD) install nds_test
   3.181 -
   3.182 -lib:
   3.183 -	@[ -d $@ ] || mkdir -p $@
   3.184 -
   3.185 -$(BUILD): lib
   3.186 -	@[ -d $@ ] || mkdir -p $@
   3.187 -	@$(MAKE) --no-print-directory -C $(BUILD) -f $(CURDIR)/Makefile.ds -s
   3.188 -
   3.189 -install: $(BUILD)
   3.190 -	@mkdir -p $(PORTLIBS)/include/SDL/
   3.191 -	@rsync -a $(OUTPUT) $(PORTLIBS)/lib/
   3.192 -	@rsync -a include/*.h $(PORTLIBS)/include/SDL/
   3.193 -
   3.194 -nds_test:
   3.195 -	$(MAKE) -C test/nds-test-progs -s
   3.196 -
   3.197 -tags:
   3.198 -	cd $(SOURCES); etags $(CFILES)
   3.199 -
   3.200 -# This file must be compiled with the ARM instruction set, not
   3.201 -# thumb. Use devkitpro way of doing things.
   3.202 -arm_only: src/atomic/SDL_spinlock.arm.c
   3.203 -src/atomic/SDL_spinlock.arm.c: src/atomic/SDL_spinlock.c
   3.204 -	@cp $< $@
   3.205 -
   3.206 -#---------------------------------------------------------------------------------
   3.207 -clean:
   3.208 -	@echo clean ...
   3.209 -	@cd src; rm -fr $(OFILES) $(OFILES:.o=.d) lib
   3.210 -	@rm -f $(OUTPUT)
   3.211 -	@make -C test/nds-test-progs -s clean
   3.212 -
   3.213 -#---------------------------------------------------------------------------------
   3.214 -else
   3.215 -
   3.216 -DEPENDS	:=	$(OFILES:.o=.d)
   3.217 -
   3.218 -#---------------------------------------------------------------------------------
   3.219 -# main targets
   3.220 -#---------------------------------------------------------------------------------
   3.221 -$(OUTPUT)	:	$(OFILES)
   3.222 -
   3.223 -#---------------------------------------------------------------------------------
   3.224 -%.bin.o	:	%.bin
   3.225 -#---------------------------------------------------------------------------------
   3.226 -	@echo $(notdir $<)
   3.227 -	@$(bin2o)
   3.228 -
   3.229 -
   3.230 --include $(DEPENDS)
   3.231 -
   3.232 -#---------------------------------------------------------------------------------------
   3.233 -endif
   3.234 -#---------------------------------------------------------------------------------------
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/Makefile.psp	Sun Apr 14 11:42:55 2013 -0400
     4.3 @@ -0,0 +1,92 @@
     4.4 +TARGET_LIB = libSDL2.a
     4.5 +OBJS= src/SDL.o \
     4.6 +      src/SDL_assert.o \
     4.7 +      src/SDL_error.o \
     4.8 +      src/SDL_fatal.o \
     4.9 +      src/SDL_hints.o \
    4.10 +      src/SDL_log.o \
    4.11 +      src/atomic/SDL_atomic.o \
    4.12 +      src/atomic/SDL_spinlock.o \
    4.13 +      src/audio/SDL_audio.o \
    4.14 +      src/audio/SDL_audiocvt.o \
    4.15 +      src/audio/SDL_audiodev.o \
    4.16 +      src/audio/SDL_audiotypecvt.o \
    4.17 +      src/audio/SDL_mixer.o \
    4.18 +      src/audio/SDL_wave.o \
    4.19 +      src/audio/psp/SDL_pspaudio.o \
    4.20 +      src/cpuinfo/SDL_cpuinfo.o \
    4.21 +      src/events/SDL_clipboardevents.o \
    4.22 +      src/events/SDL_dropevents.o \
    4.23 +      src/events/SDL_events.o \
    4.24 +      src/events/SDL_gesture.o \
    4.25 +      src/events/SDL_keyboard.o \
    4.26 +      src/events/SDL_mouse.o \
    4.27 +      src/events/SDL_quit.o \
    4.28 +      src/events/SDL_touch.o \
    4.29 +      src/events/SDL_windowevents.o \
    4.30 +      src/file/SDL_rwops.o \
    4.31 +      src/haptic/SDL_haptic.o \
    4.32 +      src/haptic/dummy/SDL_syshaptic.o \
    4.33 +      src/joystick/SDL_joystick.o \
    4.34 +      src/joystick/SDL_gamecontroller.o \
    4.35 +      src/joystick/psp/SDL_sysjoystick.o \
    4.36 +      src/power/SDL_power.o \
    4.37 +      src/power/psp/SDL_syspower.o \
    4.38 +      src/render/SDL_render.o \
    4.39 +      src/render/SDL_yuv_sw.o \
    4.40 +      src/render/psp/SDL_render_psp.o \
    4.41 +      src/render/software/SDL_blendfillrect.o \
    4.42 +      src/render/software/SDL_blendline.o \
    4.43 +      src/render/software/SDL_blendpoint.o \
    4.44 +      src/render/software/SDL_drawline.o \
    4.45 +      src/render/software/SDL_drawpoint.o \
    4.46 +      src/render/software/SDL_render_sw.o \
    4.47 +      src/render/software/SDL_rotate.o \
    4.48 +      src/stdlib/SDL_getenv.o \
    4.49 +      src/stdlib/SDL_iconv.o \
    4.50 +      src/stdlib/SDL_malloc.o \
    4.51 +      src/stdlib/SDL_qsort.o \
    4.52 +      src/stdlib/SDL_stdlib.o \
    4.53 +      src/stdlib/SDL_string.o \
    4.54 +      src/thread/SDL_thread.o \
    4.55 +      src/thread/psp/SDL_syssem.o \
    4.56 +      src/thread/psp/SDL_systhread.o \
    4.57 +      src/thread/psp/SDL_sysmutex.o \
    4.58 +      src/thread/psp/SDL_syscond.o \
    4.59 +      src/timer/SDL_timer.o \
    4.60 +      src/timer/psp/SDL_systimer.o \
    4.61 +      src/video/SDL_RLEaccel.o \
    4.62 +      src/video/SDL_blit.o \
    4.63 +      src/video/SDL_blit_0.o \
    4.64 +      src/video/SDL_blit_1.o \
    4.65 +      src/video/SDL_blit_A.o \
    4.66 +      src/video/SDL_blit_N.o \
    4.67 +      src/video/SDL_blit_auto.o \
    4.68 +      src/video/SDL_blit_copy.o \
    4.69 +      src/video/SDL_blit_slow.o \
    4.70 +      src/video/SDL_bmp.o \
    4.71 +      src/video/SDL_clipboard.o \
    4.72 +      src/video/SDL_fillrect.o \
    4.73 +      src/video/SDL_pixels.o \
    4.74 +      src/video/SDL_rect.o \
    4.75 +      src/video/SDL_stretch.o \
    4.76 +      src/video/SDL_surface.o \
    4.77 +      src/video/SDL_video.o \
    4.78 +      src/video/psp/SDL_pspevents.o \
    4.79 +      src/video/psp/SDL_pspvideo.o \
    4.80 +      src/video/psp/SDL_pspgl.o \
    4.81 +      src/video/psp/SDL_pspmouse.o \
    4.82 +
    4.83 +INCDIR = ./include
    4.84 +CFLAGS = -g -O2 -G0 -Wall -D__PSP__ -DHAVE_OPENGL
    4.85 +CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
    4.86 +ASFLAGS = $(CFLAGS)
    4.87 +
    4.88 +LIBDIR  =
    4.89 +LIBS = -lGL -lGLU -lglut -lz \
    4.90 +         -lpspvfpu -lpsphprm -lpspsdk -lpspctrl -lpspumd -lpsprtc -lpsppower -lpspgum -lpspgu -lpspaudiolib -lpspaudio -lpsphttp -lpspssl -lpspwlan \
    4.91 +         -lpspnet_adhocmatching -lpspnet_adhoc -lpspnet_adhocctl -lm -lpspvram
    4.92 +
    4.93 +PSPSDK=$(shell psp-config --pspsdk-path)
    4.94 +include $(PSPSDK)/lib/build.mak
    4.95 +
     5.1 --- a/README	Sat Apr 13 23:03:46 2013 -0400
     5.2 +++ b/README	Sun Apr 14 11:42:55 2013 -0400
     5.3 @@ -12,7 +12,7 @@
     5.4  level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL,
     5.5  and 2D framebuffer across multiple platforms.
     5.6  
     5.7 -The current version supports Windows, Windows CE, Mac OS X, Linux, FreeBSD,
     5.8 +The current version supports Windows, Mac OS X, Linux, FreeBSD,
     5.9  NetBSD, OpenBSD, BSD/OS, Solaris, iOS, and Android. The code contains
    5.10  support for other operating systems but those are not officially supported.
    5.11  
     6.1 --- a/README-SDL.txt	Sat Apr 13 23:03:46 2013 -0400
     6.2 +++ b/README-SDL.txt	Sun Apr 14 11:42:55 2013 -0400
     6.3 @@ -1,7 +1,7 @@
     6.4  
     6.5  Please distribute this file with the SDL runtime environment:
     6.6  
     6.7 -The Simple DirectMedia Layer (SDL for short) is a cross-platfrom library
     6.8 +The Simple DirectMedia Layer (SDL for short) is a cross-platform library
     6.9  designed to make it easy to write multi-media software, such as games and
    6.10  emulators.
    6.11  
     7.1 --- a/README.DirectFB	Sat Apr 13 23:03:46 2013 -0400
     7.2 +++ b/README.DirectFB	Sun Apr 14 11:42:55 2013 -0400
     7.3 @@ -53,7 +53,7 @@
     7.4  =====================
     7.5  
     7.6  The driver has support for a very, very basic window manager you may
     7.7 -want to use when runnning with "wm=default". Use
     7.8 +want to use when running with "wm=default". Use
     7.9  
    7.10  export SDL_DIRECTFB_WM=1
    7.11  
    7.12 @@ -62,10 +62,10 @@
    7.13  
    7.14  /usr/share/fonts/truetype/freefont/FreeSans.ttf
    7.15  
    7.16 -OPENGL Support
    7.17 +OpenGL Support
    7.18  ==============
    7.19  
    7.20 -The following instructions will give you *software* opengl. However this
    7.21 +The following instructions will give you *software* OpenGL. However this
    7.22  works at least on all directfb supported platforms.
    7.23  
    7.24  As of this writing 20100802 you need to pull Mesa from git and do the following:
     8.1 --- a/README.MacOSX	Sat Apr 13 23:03:46 2013 -0400
     8.2 +++ b/README.MacOSX	Sun Apr 14 11:42:55 2013 -0400
     8.3 @@ -56,7 +56,7 @@
     8.4  name as specified in your configure.in file.
     8.5  
     8.6  If your project builds more than one application, you will have to do a bit
     8.7 -more.  For each of your target applications, you need a seperate rule.
     8.8 +more. For each of your target applications, you need a separate rule.
     8.9  
    8.10  If you want the created bundles to be installed, you may want to add this
    8.11  rule to your Makefile.am:
    8.12 @@ -75,13 +75,13 @@
    8.13  
    8.14  But beware! That is only part of the story! With the above, you end up with
    8.15  a bare bone .app bundle, which is double clickable from the Finder. But
    8.16 -there are some  more things you should do before shipping yor product...
    8.17 +there are some more things you should do before shipping your product...
    8.18  
    8.19  1) The bundle right now probably is dynamically linked against SDL. That 
    8.20     means that when you copy it to another computer, *it will not run*,
    8.21     unless you also install SDL on that other computer. A good solution
    8.22     for this dilemma is to static link against SDL. On OS X, you can
    8.23 -   achieve that by linkinag against the libraries listed by
    8.24 +   achieve that by linking against the libraries listed by
    8.25       sdl-config --static-libs
    8.26     instead of those listed by
    8.27       sdl-config --libs
    8.28 @@ -120,7 +120,7 @@
    8.29  - Building the Framework
    8.30  
    8.31  The SDL Library is packaged as a framework bundle, an organized
    8.32 -relocatable folder heirarchy of executible code, interface headers, 
    8.33 +relocatable folder hierarchy of executable code, interface headers,
    8.34  and additional resources. For practical purposes, you can think of a 
    8.35  framework as a more user and system-friendly shared library, whose library
    8.36  file behaves more or less like a standard UNIX shared library.
    8.37 @@ -162,11 +162,11 @@
    8.38  
    8.39  - Building from command line
    8.40      Use pbxbuild in the same directory as your .pbproj file
    8.41 -         
    8.42 +
    8.43  - Running your app
    8.44      You can send command line args to your app by either invoking it from
    8.45      the command line (in *.app/Contents/MacOS) or by entering them in the
    8.46 -    "Executibles" panel of the target settings.
    8.47 +    "Executables" panel of the target settings.
    8.48      
    8.49  - Implementation Notes
    8.50      Some things that may be of interest about how it all works...
    8.51 @@ -181,6 +181,6 @@
    8.52          You are free to modify your Cocoa app with generally no consequence 
    8.53          to SDL. You cannot, however, easily change the SDL window itself.
    8.54          Functionality may be added in the future to help this.
    8.55 -	
    8.56 +
    8.57  
    8.58  Known bugs are listed in the file "BUGS"
     9.1 --- a/README.Platforms	Sat Apr 13 23:03:46 2013 -0400
     9.2 +++ b/README.Platforms	Sun Apr 14 11:42:55 2013 -0400
     9.3 @@ -11,7 +11,7 @@
     9.4  Mac OS X 10.4+
     9.5  Linux 2.6+
     9.6  iOS 3.1.3+
     9.7 -Android 2.1+
     9.8 +Android 2.3.3+
     9.9  
    9.10  Unofficially supported platforms
    9.11  ================================
    9.12 @@ -24,9 +24,9 @@
    9.13  
    9.14  Platforms supported by volunteers
    9.15  =================================
    9.16 +Haiku - maintained by Axel Dörfler <axeld@pinc-software.de>
    9.17 +PSP - maintained by 527721088@qq.com
    9.18  Pandora - maintained by Scott Smith <pickle136@sbcglobal.net>
    9.19  
    9.20  Platforms that need maintainers
    9.21  ===============================
    9.22 -Nintendo DS
    9.23 -Haiku
    10.1 --- a/README.Porting	Sat Apr 13 23:03:46 2013 -0400
    10.2 +++ b/README.Porting	Sun Apr 14 11:42:55 2013 -0400
    10.3 @@ -26,12 +26,15 @@
    10.4     Add the top level include directory to the header search path, and then add
    10.5     the following sources to the project:
    10.6  	src/*.c
    10.7 +	src/atomic/*.c
    10.8  	src/audio/*.c
    10.9 -	src/cdrom/*.c
   10.10  	src/cpuinfo/*.c
   10.11  	src/events/*.c
   10.12  	src/file/*.c
   10.13 +	src/haptic/*.c
   10.14  	src/joystick/*.c
   10.15 +	src/power/*.c
   10.16 +	src/render/*.c
   10.17  	src/stdlib/*.c
   10.18  	src/thread/*.c
   10.19  	src/timer/*.c
   10.20 @@ -39,8 +42,9 @@
   10.21  	src/audio/disk/*.c
   10.22  	src/audio/dummy/*.c
   10.23  	src/video/dummy/*.c
   10.24 +	src/haptic/dummy/*.c
   10.25  	src/joystick/dummy/*.c
   10.26 -	src/cdrom/dummy/*.c
   10.27 +	src/main/dummy/*.c
   10.28  	src/thread/generic/*.c
   10.29  	src/timer/dummy/*.c
   10.30  	src/loadso/dummy/*.c
    11.1 --- a/README.android	Sat Apr 13 23:03:46 2013 -0400
    11.2 +++ b/README.android	Sun Apr 14 11:42:55 2013 -0400
    11.3 @@ -4,12 +4,13 @@
    11.4  
    11.5  Requirements:
    11.6  
    11.7 -Android SDK
    11.8 +Android SDK (version 10 or later)
    11.9  http://developer.android.com/sdk/index.html
   11.10  
   11.11 -Android NDK r4 or later
   11.12 +Android NDK r7 or later
   11.13  http://developer.android.com/sdk/ndk/index.html
   11.14  
   11.15 +Minimum API level supported by SDL: 10 (Android 2.3.3)
   11.16  
   11.17  ================================================================================
   11.18   How the port works
   11.19 @@ -18,7 +19,7 @@
   11.20  - Android applications are Java-based, optionally with parts written in C
   11.21  - As SDL apps are C-based, we use a small Java shim that uses JNI to talk to 
   11.22  the SDL library
   11.23 -- This means that your application C code must be placed inside an android 
   11.24 +- This means that your application C code must be placed inside an Android 
   11.25  Java project, along with some C support code that communicates with Java
   11.26  - This eventually produces a standard Android .apk package
   11.27  
   11.28 @@ -46,7 +47,8 @@
   11.29  
   11.30  If you want to use the Eclipse IDE, skip to the Eclipse section below.
   11.31  
   11.32 -5. Edit <project>/local.properties to point to the Android SDK directory
   11.33 +5. Create <project>/local.properties and use that to point to the Android SDK directory, by writing a line with the following form:
   11.34 +sdk.dir=PATH_TO_ANDROID_SDK
   11.35  6. Run 'ant debug' in android/project. This compiles the .java and eventually 
   11.36     creates a .apk with the native code embedded
   11.37  7. 'ant debug install' will push the apk to the device or emulator (if connected)
   11.38 @@ -59,8 +61,8 @@
   11.39  	build.properties	- empty
   11.40  	build.xml		- build description file, used by ant. The actual application name
   11.41  				  is specified here.
   11.42 -	default.properties	- holds the target ABI for the application, can range between
   11.43 -				  android-5 and android-16
   11.44 +	default.properties	- holds the target ABI for the application, android-10 and up
   11.45 +	project.properties	- holds the target ABI for the application, android-10 and up
   11.46  	local.properties	- holds the SDK path, you should change this to the path to your SDK
   11.47  	jni/			- directory holding native code
   11.48  	jni/Android.mk		- Android makefile that can call recursively the Android.mk files
   11.49 @@ -171,10 +173,10 @@
   11.50  under iOS, if the OS can not restore your GL context it will just kill your app)
   11.51  
   11.52  ================================================================================
   11.53 - Threads and the JAVA VM
   11.54 + Threads and the Java VM
   11.55  ================================================================================
   11.56  
   11.57 -For a quick tour on how Linux native threads interoperate with the JAVA VM, take
   11.58 +For a quick tour on how Linux native threads interoperate with the Java VM, take
   11.59  a look here: http://developer.android.com/guide/practices/jni.html
   11.60  If you want to use threads in your SDL app, it's strongly recommended that you
   11.61  do so by creating them using SDL functions. This way, the required attach/detach
   11.62 @@ -342,6 +344,38 @@
   11.63  When you're done instrumenting with valgrind, you can disable the wrapper:
   11.64  	adb shell setprop wrap.org.libsdl.app ""
   11.65  
   11.66 +================================================================================
   11.67 + Why is API level 10 the minimum required?
   11.68 +================================================================================
   11.69 +
   11.70 +API level 10 is required because SDL requires some functionality for running not
   11.71 +available on older devices and some for building which is not in older NDK/SDKs.
   11.72 +
   11.73 +Support for native OpenGL ES and ES2 applications was introduced in the NDK for
   11.74 +API level 4 and 8. EGL was made a stable API in the NDK for API level 9, which
   11.75 +has since then been obsoleted, with the recommendation to developers to bump the
   11.76 +required API level to 10.
   11.77 +As of this writing, according to http://developer.android.com/about/dashboards/index.html
   11.78 +about 90% of the Android devices accessing Google Play support API level 10 or
   11.79 +higher (March 2013).
   11.80 +
   11.81 +================================================================================
   11.82 + A note regarding the use of the "dirty rectangles" rendering technique
   11.83 +================================================================================
   11.84 +
   11.85 +If your app uses a variation of the "dirty rectangles" rendering technique,
   11.86 +where you only update a portion of the screen on each frame, you may notice a
   11.87 +variety of visual glitches on Android, that are not present on other platforms.
   11.88 +This is caused by SDL's use of EGL as the support system to handle OpenGL ES/ES2
   11.89 +contexts, in particular the use of the eglSwapBuffers function. As stated in the
   11.90 +documentation for the function "The contents of ancillary buffers are always 
   11.91 +undefined after calling eglSwapBuffers".
   11.92 +Setting the EGL_SWAP_BEHAVIOR attribute of the surface to EGL_BUFFER_PRESERVED
   11.93 +is not possible for SDL as it requires EGL 1.4, available only on the API level
   11.94 +17+, so the only workaround available on this platform is to redraw the entire
   11.95 +screen each frame.
   11.96 +
   11.97 +Reference: http://www.khronos.org/registry/egl/specs/EGLTechNote0001.html
   11.98  
   11.99  ================================================================================
  11.100   Known issues
    12.1 --- a/README.ds	Sat Apr 13 23:03:46 2013 -0400
    12.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.3 @@ -1,64 +0,0 @@
    12.4 -================================================================================
    12.5 -Simple DirectMedia Layer for Nintendo DS
    12.6 -================================================================================
    12.7 -
    12.8 --Requirements-
    12.9 -* The devkitpro SDK available at http://devkitpro.org.
   12.10 -  Read the information at http://devkitpro.org/wiki/Getting_Started/devkitARM
   12.11 -  The necessary packages are devkitARM, libnds, libfat and default arm7.
   12.12 -* Optionally, use a DS emulator, such as desmume (http://desmume.org/)
   12.13 -  to program and debug.
   12.14 -
   12.15 --Building SDL-
   12.16 -
   12.17 -After setting the devkitpro environment, cd into your SDL directory and type:
   12.18 -  make -f Makefile.ds
   12.19 -
   12.20 -This will compile and install the library and headers into the
   12.21 -devkitpro's portlibs directory (../portlibs/arm/lib/ and
   12.22 -../portlibs/arm/include/). Additionally it will compile several tests
   12.23 -that you can run either on the DS or with desmume. For instance:
   12.24 -  desmume --cflash-path=test/ test/nds-test-progs/testsprite2/testsprite2.nds
   12.25 -  desmume --cflash-path=test/ test/nds-test-progs/testspriteminimal/testspriteminimal.nds
   12.26 -  desmume --cflash-path=test/ test/nds-test-progs/testscale/testscale.nds 
   12.27 -  desmume test/nds-test-progs/general/general.nds
   12.28 -
   12.29 --Notes-
   12.30 -* The renderer code is based on the gl like engine. It's not using the sprite engine.
   12.31 -* The hardware renderer is using the parts of the libgl2d abstraction library that can be found at:
   12.32 -    http://rel.phatcode.net/junk.php?id=117
   12.33 -  Used with the author's permission.
   12.34 -* The port is very basic and incomplete:
   12.35 -  - SDL currently has to be compiled for either framebuffer mode or renderer mode.
   12.36 -     See USE_HW_RENDERER in Makefile.ds.
   12.37 -  - some optional renderer functions are not implemented.
   12.38 -  - no sound
   12.39 -
   12.40 --Limitations-
   12.41 -* in hardware renderer mode, don't load too many textures. The internal format is
   12.42 -  2 bytes per pixel. And there is only 256KB reserved for the textures. For instance,
   12.43 -  testscale won't display sample.bmp, unless it's resized to a smaller picture.
   12.44 -* the screen size is 256 x 384. Anything else won't work.
   12.45 -* there is no 8 bits/pixel mode because SDL 2.0 doesn't support palettes.
   12.46 -
   12.47 --Joystick mapping-
   12.48 -The Joystick presented to SDL has 2 axes and 8 buttons
   12.49 -
   12.50 - KEY      | Code
   12.51 -  A       |   0
   12.52 -  B       |   1
   12.53 -  X       |   2
   12.54 -  Y       |   3
   12.55 -  L       |   4
   12.56 -  R       |   5
   12.57 -  select  |   6
   12.58 -  start   |   7
   12.59 -
   12.60 - Left-right is axe 0.
   12.61 - Up-down is axe 1.
   12.62 -
   12.63 --Mouse mapping-
   12.64 -todo
   12.65 -
   12.66 --Examples-
   12.67 -Due to memory limitations, to be able to successfully run the testscale example, sample.bmp must be resized to 256x105.
    13.1 --- a/README.gesture	Sat Apr 13 23:03:46 2013 -0400
    13.2 +++ b/README.gesture	Sun Apr 14 11:42:55 2013 -0400
    13.3 @@ -16,7 +16,7 @@
    13.4  A SDL_DOLLARRECORD event is a dgesture with the following fields:
    13.5  
    13.6  event.dgesture.touchId   - the Id of the touch used to record the gesture.
    13.7 -event.dgesture.gestureId - the unique id of the recoreded gesture.
    13.8 +event.dgesture.gestureId - the unique id of the recorded gesture.
    13.9  
   13.10  
   13.11  Performing:
   13.12 @@ -28,7 +28,7 @@
   13.13  event.dgesture.error      - the difference between the gesture template and the actual performed gesture. Lower error is a better match.
   13.14  event.dgesture.numFingers - the number of fingers used to draw the stroke.
   13.15  
   13.16 -Most programs will want to define an appropriate error threshold and check to be sure taht the error of a gesture is not abnormally high (an indicator that no gesture was performed). 
   13.17 +Most programs will want to define an appropriate error threshold and check to be sure that the error of a gesture is not abnormally high (an indicator that no gesture was performed).
   13.18  
   13.19  
   13.20  
   13.21 @@ -38,14 +38,14 @@
   13.22  
   13.23  To save all currently loaded templates, call SDL_SaveAllDollarTemplates(src) where source is an SDL_RWops pointer to the file where the gesture will be stored.
   13.24  
   13.25 -Both functions return the number of gestures sucessfully saved.
   13.26 +Both functions return the number of gestures successfully saved.
   13.27  
   13.28  
   13.29  Loading:
   13.30  --------
   13.31  To load templates from a file, call SDL_LoadDollarTemplates(touchId,src) where touchId is the id of the touch to load to (or -1 to load to all touch devices), and src is an SDL_RWops pointer to a gesture save file. 
   13.32  
   13.33 -SDL_LoadDollarTemplates returns the number of templates sucessfully loaded. 
   13.34 +SDL_LoadDollarTemplates returns the number of templates successfully loaded.
   13.35  
   13.36  
   13.37  
   13.38 @@ -56,8 +56,8 @@
   13.39  Every time a finger is moved an SDL_MULTIGESTURE event is sent with the following fields:
   13.40  
   13.41  event.mgesture.touchId - the Id of the touch on which the gesture was performed.
   13.42 -event.mgesture.x       - the normalized x cooridinate of the gesture. (0..1)
   13.43 -event.mgesture.y       - the normalized y cooridinate of the gesture. (0..1)
   13.44 +event.mgesture.x       - the normalized x coordinate of the gesture. (0..1)
   13.45 +event.mgesture.y       - the normalized y coordinate of the gesture. (0..1)
   13.46  event.mgesture.dTheta  - the amount that the fingers rotated during this motion.
   13.47  event.mgesture.dDist   - the amount that the fingers pinched during this motion.
   13.48  event.mgesture.numFingers - the number of fingers used in the gesture.
    14.1 --- a/README.pandora	Sat Apr 13 23:03:46 2013 -0400
    14.2 +++ b/README.pandora	Sun Apr 14 11:42:55 2013 -0400
    14.3 @@ -1,7 +1,7 @@
    14.4  SDL 2.0 with open pandora console support ( http://openpandora.org/ )
    14.5  =====================================================================
    14.6  
    14.7 -- A pandora specific video driver was writed to allow SDL 2.0 with OpenGL ES
    14.8 +- A pandora specific video driver was written to allow SDL 2.0 with OpenGL ES
    14.9  support to work on the pandora under the framebuffer. This driver do not have
   14.10  input support for now, so if you use it you will have to add your own control code.
   14.11  The video driver name is "pandora" so if you have problem running it from
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/README.psp	Sun Apr 14 11:42:55 2013 -0400
    15.3 @@ -0,0 +1,17 @@
    15.4 +SDL port for the Sony PSP contributed by 
    15.5 +   Captian Lex 
    15.6 +
    15.7 +Credit to
    15.8 +   Marcus R.Brown,Jim Paris,Matthew H for the original SDL 1.2 for PSP
    15.9 +   Geecko for his PSP GU lib "Glib2d"
   15.10 +
   15.11 +Building
   15.12 +--------
   15.13 +To build for the PSP, make sure psp-config is in the path and run:
   15.14 +   make -f Makefile.psp
   15.15 +
   15.16 +
   15.17 +
   15.18 +To Do
   15.19 +------
   15.20 +PSP Screen Keyboard
   15.21 \ No newline at end of file
    16.1 --- a/README.touch	Sat Apr 13 23:03:46 2013 -0400
    16.2 +++ b/README.touch	Sun Apr 14 11:42:55 2013 -0400
    16.3 @@ -5,7 +5,7 @@
    16.4  The linux touch system is currently based off event streams, and proc/bus/devices. The active user must be given permissions to read /dev/input/TOUCHDEVICE, where TOUCHDEVICE is the event stream for your device. Currently only Wacom tablets are supported. If you have an unsupported tablet contact me at jim.tla+sdl_touch@gmail.com and I will help you get support for it.
    16.5  
    16.6  Mac: 
    16.7 -The Mac and Iphone API's are pretty. If your touch device supports them then you'll be fine. If it doesn't, then there isn't much we can do.
    16.8 +The Mac and iPhone APIs are pretty. If your touch device supports them then you'll be fine. If it doesn't, then there isn't much we can do.
    16.9  
   16.10  iPhone: 
   16.11  Works out of box.
   16.12 @@ -21,18 +21,18 @@
   16.13  Fields:
   16.14  event.tfinger.touchId  - the Id of the touch device.
   16.15  event.tfinger.fingerId - the Id of the finger which just went down.
   16.16 -event.tfinger.x        - the x coordinate of the touch (0..touch.xres)
   16.17 -event.tfinger.y        - the y coordinate of the touch (0..touch.yres)
   16.18 -event.tfinger.pressure - the pressure of the touch (0..touch.pressureres)
   16.19 +event.tfinger.x        - the x coordinate of the touch (0..1)
   16.20 +event.tfinger.y        - the y coordinate of the touch (0..1)
   16.21 +event.tfinger.pressure - the pressure of the touch (0..1)
   16.22  
   16.23  SDL_FINGERMOTION:
   16.24  Sent when a finger (or stylus) is moved on the touch device.
   16.25  Fields:
   16.26  Same as FINGERDOWN but with additional:
   16.27 -event.tfginer.dx       - change in x coordinate during this motion event.
   16.28 -event.tfginer.dy       - change in y coordinate during this motion event.
   16.29 +event.tfinger.dx       - change in x coordinate during this motion event.
   16.30 +event.tfinger.dy       - change in y coordinate during this motion event.
   16.31  
   16.32 -SDL_FINGERMOTION:
   16.33 +SDL_FINGERUP:
   16.34  Sent when a finger (or stylus) is lifted from the touch device.
   16.35  Fields:
   16.36  Same as FINGERDOWN.
   16.37 @@ -41,56 +41,38 @@
   16.38  ===========================================================================
   16.39  Functions
   16.40  ===========================================================================
   16.41 -SDL provides the ability to access the underlying Touch and Finger structures.
   16.42 +SDL provides the ability to access the underlying Finger structures.
   16.43  These structures should _never_ be modified.
   16.44  
   16.45 -The following functions are included from SDL_Touch.h
   16.46 -
   16.47 -To get a SDL_Touch device call SDL_GetTouch(touchId). 
   16.48 -This returns an SDL_Touch*. 
   16.49 -IMPORTANT: If the touch has been removed, or there is no touch with the given ID, SDL_GetTouch will return null. Be sure to check for this!
   16.50 +The following functions are included from SDL_touch.h
   16.51  
   16.52 -An SDL_Touch has the following fields:
   16.53 ->xres,yres,pressures:
   16.54 -	The resolution at which x,y, and pressure values are reported. Currently these will always be equal to 2^15, but this may not always be the case. 
   16.55 +To get a SDL_TouchID call SDL_GetTouchDevice(index).
   16.56 +This returns a SDL_TouchID.
   16.57 +IMPORTANT: If the touch has been removed, or there is no touch with the given ID, SDL_GetTouchID will return 0. Be sure to check for this!
   16.58  
   16.59 ->pressure_max, pressure_min, x_max, x_min, y_max, y_min
   16.60 -	Which give, respectively, the maximum and minumum values that the touch digitizer can return for pressure, x coordiniate, and y coordinate AS REPORTED BY THE OPERATING SYSTEM.
   16.61 -On Mac/iPhone systems _max will always be 0, and _min will always be 1. 
   16.62 +The number of touch devices can be queried with SDL_GetNumTouchDevices().
   16.63  
   16.64 ->native_xres,native_yres,native_pressureres:
   16.65 -	The native resolution of the touch device AS REPORTED BY THE OPERATING SYSTEM.
   16.66 -On Mac/iPhone systems these will always be 1.
   16.67 +A SDL_Touch may be used to get pointers to SDL_Finger.
   16.68  
   16.69 ->num_fingers:
   16.70 -	The number of fingers currently down on the device.
   16.71 +SDL_GetNumTouchFingers(touchID) may be used to get the number of fingers currently down on the device.
   16.72  
   16.73 ->fingers:
   16.74 -	An array of pointers to the fingers which are on the device.
   16.75 -
   16.76 -
   16.77 -The most common reason to access a touch device is to normalize inputs. This would be accomplished by code like the following:
   16.78 +The most common reason to access SDL_Finger is to query the fingers outside the event. In most cases accessing the fingers is using the event. This would be accomplished by code like the following:
   16.79  
   16.80 -      SDL_Touch* inTouch = SDL_GetTouch(event.tfinger.touchId);
   16.81 -      if(inTouch == NULL) continue; //The touch has been removed
   16.82 -
   16.83 -      float x = ((float)event.tfinger.x)/inTouch->xres;
   16.84 -      float y = ((float)event.tfinger.y)/inTouch->yres;
   16.85 +      float x = event.tfinger.x;
   16.86 +      float y = event.tfinger.y;
   16.87  
   16.88  
   16.89  
   16.90 -To get an SDL_Finger, call SDL_GetFinger(touch,fingerId), where touch is a pointer to an SDL_Touch device, and fingerId is the id of the requested finger.
   16.91 -This returns an SDL_Finger*, or null if the finger does not exist, or has been removed.
   16.92 -An SDL_Finger is guaranteed to be persistent for the duration of a touch, but it will be de-allocated as soon as the finger is removed. This occurs when the SDL_FINGERUP event is _added_ to the event queue, and thus _before_ the FINGERUP event is polled. 
   16.93 -As a result, be very careful to check for null return values.
   16.94 +To get a SDL_Finger, call SDL_GetTouchFinger(touchID,index), where touchID is a SDL_TouchID, and index is the requested finger.
   16.95 +This returns a SDL_Finger*, or NULL if the finger does not exist, or has been removed.
   16.96 +A SDL_Finger is guaranteed to be persistent for the duration of a touch, but it will be de-allocated as soon as the finger is removed. This occurs when the SDL_FINGERUP event is _added_ to the event queue, and thus _before_ the FINGERUP event is polled.
   16.97 +As a result, be very careful to check for NULL return values.
   16.98  
   16.99 -An SDL_Finger has the following fields:
  16.100 +A SDL_Finger has the following fields:
  16.101  >x,y,pressure:
  16.102  	The current coordinates of the touch.
  16.103 ->xdelta,ydelta: 
  16.104 -	The change in position resulting from the last finger motion.
  16.105 ->last_x, last_y, last_pressure:
  16.106 -	 The previous coordinates of the touch.
  16.107 +>pressure:
  16.108 +	The pressure of the touch.
  16.109  
  16.110  ===========================================================================
  16.111  Notes
  16.112 @@ -99,3 +81,4 @@
  16.113  
  16.114  Please direct questions/comments to:
  16.115     jim.tla+sdl_touch@gmail.com
  16.116 +   (original author, API was changed since)
    17.1 --- a/VisualC/SDL/SDL_VS2008.vcproj	Sat Apr 13 23:03:46 2013 -0400
    17.2 +++ b/VisualC/SDL/SDL_VS2008.vcproj	Sun Apr 14 11:42:55 2013 -0400
    17.3 @@ -1,2644 +1,1332 @@
    17.4  <?xml version="1.0" encoding="Windows-1252"?>
    17.5 -
    17.6  <VisualStudioProject
    17.7 -
    17.8  	ProjectType="Visual C++"
    17.9 -
   17.10  	Version="9.00"
   17.11 -
   17.12  	Name="SDL2"
   17.13 -
   17.14  	ProjectGUID="{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}"
   17.15 -
   17.16  	RootNamespace="SDL"
   17.17 -
   17.18  	TargetFrameworkVersion="131072"
   17.19 -
   17.20  	>
   17.21 -
   17.22  	<Platforms>
   17.23 -
   17.24  		<Platform
   17.25 -
   17.26  			Name="Win32"
   17.27 -
   17.28  		/>
   17.29 -
   17.30  		<Platform
   17.31 -
   17.32  			Name="x64"
   17.33 -
   17.34  		/>
   17.35 -
   17.36  	</Platforms>
   17.37 -
   17.38  	<ToolFiles>
   17.39 -
   17.40  	</ToolFiles>
   17.41 -
   17.42  	<Configurations>
   17.43 -
   17.44  		<Configuration
   17.45 -
   17.46  			Name="Debug|Win32"
   17.47 -
   17.48  			OutputDirectory=".\Debug"
   17.49 -
   17.50  			IntermediateDirectory=".\Debug"
   17.51 -
   17.52  			ConfigurationType="2"
   17.53 -
   17.54  			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
   17.55 -
   17.56  			UseOfMFC="0"
   17.57 -
   17.58  			ATLMinimizesCRunTimeLibraryUsage="false"
   17.59 -
   17.60  			>
   17.61 -
   17.62  			<Tool
   17.63 -
   17.64  				Name="VCPreBuildEventTool"
   17.65 -
   17.66  				CommandLine=""
   17.67 -
   17.68  			/>
   17.69 -
   17.70  			<Tool
   17.71 -
   17.72  				Name="VCCustomBuildTool"
   17.73 -
   17.74  			/>
   17.75 -
   17.76  			<Tool
   17.77 -
   17.78  				Name="VCXMLDataGeneratorTool"
   17.79 -
   17.80  			/>
   17.81 -
   17.82  			<Tool
   17.83 -
   17.84  				Name="VCWebServiceProxyGeneratorTool"
   17.85 -
   17.86  			/>
   17.87 -
   17.88  			<Tool
   17.89 -
   17.90  				Name="VCMIDLTool"
   17.91 -
   17.92  				PreprocessorDefinitions="_DEBUG"
   17.93 -
   17.94  				MkTypLibCompatible="true"
   17.95 -
   17.96 -				SuppressStartupBanner="true"
   17.97 -
   17.98 -				TargetEnvironment="1"
   17.99 -
  17.100 -				TypeLibraryName=".\Debug/SDL.tlb"
  17.101 -
  17.102 -			/>
  17.103 -
  17.104 -			<Tool
  17.105 -
  17.106 -				Name="VCCLCompilerTool"
  17.107 -
  17.108 -				Optimization="0"
  17.109 -
  17.110 -				AdditionalIncludeDirectories="..\..\include"
  17.111 -
  17.112 -				PreprocessorDefinitions="_DEBUG;_WINDOWS"
  17.113 -
  17.114 -				RuntimeLibrary="3"
  17.115 -
  17.116 -				BufferSecurityCheck="false"
  17.117 -
  17.118 -				WarningLevel="3"
  17.119 -
  17.120  				SuppressStartupBanner="true"
  17.121 -
  17.122 -				Detect64BitPortabilityProblems="false"
  17.123 -
  17.124 -				DebugInformationFormat="4"
  17.125 -
  17.126 -				CompileAs="0"
  17.127 -
  17.128 -			/>
  17.129 -
  17.130 -			<Tool
  17.131 -
  17.132 -				Name="VCManagedResourceCompilerTool"
  17.133 -
  17.134 +				TargetEnvironment="1"
  17.135 +				TypeLibraryName=".\Debug/SDL.tlb"
  17.136  			/>
  17.137 -
  17.138 -			<Tool
  17.139 -
  17.140 -				Name="VCResourceCompilerTool"
  17.141 -
  17.142 -				PreprocessorDefinitions="_DEBUG"
  17.143 -
  17.144 -				Culture="1033"
  17.145 -
  17.146 -			/>
  17.147 -
  17.148 -			<Tool
  17.149 -
  17.150 -				Name="VCPreLinkEventTool"
  17.151 -
  17.152 -			/>
  17.153 -
  17.154 -			<Tool
  17.155 -
  17.156 -				Name="VCLinkerTool"
  17.157 -
  17.158 -				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.159 -
  17.160 -				IgnoreAllDefaultLibraries="true"
  17.161 -
  17.162 -				GenerateDebugInformation="true"
  17.163 -
  17.164 -				SubSystem="2"
  17.165 -
  17.166 -			/>
  17.167 -
  17.168  			<Tool
  17.169 -
  17.170 -				Name="VCALinkTool"
  17.171 -
  17.172 +				Name="VCCLCompilerTool"
  17.173 +				Optimization="0"
  17.174 +				AdditionalIncludeDirectories="..\..\include"
  17.175 +				PreprocessorDefinitions="_DEBUG;_WINDOWS"
  17.176 +				ExceptionHandling="2"
  17.177 +				RuntimeLibrary="3"
  17.178 +				BufferSecurityCheck="false"
  17.179 +				WarningLevel="3"
  17.180 +				SuppressStartupBanner="true"
  17.181 +				Detect64BitPortabilityProblems="false"
  17.182 +				DebugInformationFormat="4"
  17.183 +				CompileAs="0"
  17.184  			/>
  17.185 -
  17.186 -			<Tool
  17.187 -
  17.188 -				Name="VCManifestTool"
  17.189 -
  17.190 -			/>
  17.191 -
  17.192 -			<Tool
  17.193 -
  17.194 -				Name="VCXDCMakeTool"
  17.195 -
  17.196 -			/>
  17.197 -
  17.198  			<Tool
  17.199 -
  17.200 -				Name="VCBscMakeTool"
  17.201 -
  17.202 -			/>
  17.203 -
  17.204 -			<Tool
  17.205 -
  17.206 -				Name="VCFxCopTool"
  17.207 -
  17.208 -			/>
  17.209 -
  17.210 -			<Tool
  17.211 -
  17.212 -				Name="VCAppVerifierTool"
  17.213 -
  17.214 -			/>
  17.215 -
  17.216 -			<Tool
  17.217 -
  17.218 -				Name="VCPostBuildEventTool"
  17.219 -
  17.220 +				Name="VCManagedResourceCompilerTool"
  17.221  			/>
  17.222 -
  17.223 -		</Configuration>
  17.224 -
  17.225 -		<Configuration
  17.226 -
  17.227 -			Name="Debug|x64"
  17.228 -
  17.229 -			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
  17.230 -
  17.231 -			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
  17.232 -
  17.233 -			ConfigurationType="2"
  17.234 -
  17.235 -			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
  17.236 -
  17.237 -			UseOfMFC="0"
  17.238 -
  17.239 -			ATLMinimizesCRunTimeLibraryUsage="false"
  17.240 -
  17.241 -			>
  17.242 -
  17.243 +			<Tool
  17.244 +				Name="VCResourceCompilerTool"
  17.245 +				PreprocessorDefinitions="_DEBUG"
  17.246 +				Culture="1033"
  17.247 +			/>
  17.248 +			<Tool
  17.249 +				Name="VCPreLinkEventTool"
  17.250 +			/>
  17.251  			<Tool
  17.252 -
  17.253 -				Name="VCPreBuildEventTool"
  17.254 -
  17.255 +				Name="VCLinkerTool"
  17.256 +				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.257 +				IgnoreAllDefaultLibraries="true"
  17.258 +				GenerateDebugInformation="true"
  17.259 +				SubSystem="2"
  17.260  			/>
  17.261 -
  17.262  			<Tool
  17.263 -
  17.264 -				Name="VCCustomBuildTool"
  17.265 -
  17.266 +				Name="VCALinkTool"
  17.267  			/>
  17.268 -
  17.269 -			<Tool
  17.270 -
  17.271 -				Name="VCXMLDataGeneratorTool"
  17.272 -
  17.273 -			/>
  17.274 -
  17.275  			<Tool
  17.276 -
  17.277 -				Name="VCWebServiceProxyGeneratorTool"
  17.278 -
  17.279 +				Name="VCManifestTool"
  17.280  			/>
  17.281 -
  17.282 +			<Tool
  17.283 +				Name="VCXDCMakeTool"
  17.284 +			/>
  17.285  			<Tool
  17.286 -
  17.287 -				Name="VCMIDLTool"
  17.288 -
  17.289 -				PreprocessorDefinitions="_DEBUG"
  17.290 -
  17.291 -				MkTypLibCompatible="true"
  17.292 -
  17.293 -				SuppressStartupBanner="true"
  17.294 -
  17.295 -				TargetEnvironment="3"
  17.296 -
  17.297 -				TypeLibraryName=".\Debug/SDL.tlb"
  17.298 -
  17.299 +				Name="VCBscMakeTool"
  17.300  			/>
  17.301 -
  17.302 +			<Tool
  17.303 +				Name="VCFxCopTool"
  17.304 +			/>
  17.305 +			<Tool
  17.306 +				Name="VCAppVerifierTool"
  17.307 +			/>
  17.308  			<Tool
  17.309 -
  17.310 -				Name="VCCLCompilerTool"
  17.311 -
  17.312 -				Optimization="0"
  17.313 -
  17.314 -				AdditionalIncludeDirectories="..\..\include"
  17.315 -
  17.316 -				PreprocessorDefinitions="_DEBUG;_WINDOWS"
  17.317 -
  17.318 -				RuntimeLibrary="2"
  17.319 -
  17.320 -				BufferSecurityCheck="false"
  17.321 -
  17.322 -				WarningLevel="3"
  17.323 -
  17.324 -				SuppressStartupBanner="true"
  17.325 -
  17.326 -				Detect64BitPortabilityProblems="false"
  17.327 -
  17.328 -				DebugInformationFormat="3"
  17.329 -
  17.330 -				CompileAs="0"
  17.331 -
  17.332 +				Name="VCPostBuildEventTool"
  17.333  			/>
  17.334 -
  17.335 -			<Tool
  17.336 -
  17.337 -				Name="VCManagedResourceCompilerTool"
  17.338 -
  17.339 -			/>
  17.340 -
  17.341 +		</Configuration>
  17.342 +		<Configuration
  17.343 +			Name="Debug|x64"
  17.344 +			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
  17.345 +			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
  17.346 +			ConfigurationType="2"
  17.347 +			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
  17.348 +			UseOfMFC="0"
  17.349 +			ATLMinimizesCRunTimeLibraryUsage="false"
  17.350 +			>
  17.351  			<Tool
  17.352 -
  17.353 -				Name="VCResourceCompilerTool"
  17.354 -
  17.355 -				PreprocessorDefinitions="_DEBUG"
  17.356 -
  17.357 -				Culture="1033"
  17.358 -
  17.359 +				Name="VCPreBuildEventTool"
  17.360  			/>
  17.361 -
  17.362 -			<Tool
  17.363 -
  17.364 -				Name="VCPreLinkEventTool"
  17.365 -
  17.366 -			/>
  17.367 -
  17.368  			<Tool
  17.369 -
  17.370 -				Name="VCLinkerTool"
  17.371 -
  17.372 -				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.373 -
  17.374 -				IgnoreAllDefaultLibraries="true"
  17.375 -
  17.376 -				GenerateDebugInformation="true"
  17.377 -
  17.378 -				SubSystem="2"
  17.379 -
  17.380 -				TargetMachine="17"
  17.381 -
  17.382 +				Name="VCCustomBuildTool"
  17.383  			/>
  17.384 -
  17.385 +			<Tool
  17.386 +				Name="VCXMLDataGeneratorTool"
  17.387 +			/>
  17.388  			<Tool
  17.389 -
  17.390 -				Name="VCALinkTool"
  17.391 -
  17.392 -			/>
  17.393 -
  17.394 -			<Tool
  17.395 -
  17.396 -				Name="VCManifestTool"
  17.397 -
  17.398 -			/>
  17.399 -
  17.400 -			<Tool
  17.401 -
  17.402 -				Name="VCXDCMakeTool"
  17.403 -
  17.404 -			/>
  17.405 -
  17.406 -			<Tool
  17.407 -
  17.408 -				Name="VCBscMakeTool"
  17.409 -
  17.410 -			/>
  17.411 -
  17.412 -			<Tool
  17.413 -
  17.414 -				Name="VCFxCopTool"
  17.415 -
  17.416 -			/>
  17.417 -
  17.418 -			<Tool
  17.419 -
  17.420 -				Name="VCAppVerifierTool"
  17.421 -
  17.422 -			/>
  17.423 -
  17.424 -			<Tool
  17.425 -
  17.426 -				Name="VCPostBuildEventTool"
  17.427 -
  17.428 +				Name="VCWebServiceProxyGeneratorTool"
  17.429  			/>
  17.430 -
  17.431 -		</Configuration>
  17.432 -
  17.433 -		<Configuration
  17.434 -
  17.435 -			Name="Release|Win32"
  17.436 -
  17.437 -			OutputDirectory=".\Release"
  17.438 -
  17.439 -			IntermediateDirectory=".\Release"
  17.440 -
  17.441 -			ConfigurationType="2"
  17.442 -
  17.443 -			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
  17.444 -
  17.445 -			UseOfMFC="0"
  17.446 -
  17.447 -			ATLMinimizesCRunTimeLibraryUsage="false"
  17.448 -
  17.449 -			>
  17.450 -
  17.451  			<Tool
  17.452 -
  17.453 -				Name="VCPreBuildEventTool"
  17.454 -
  17.455 -				CommandLine=""
  17.456 -
  17.457 +				Name="VCMIDLTool"
  17.458 +				PreprocessorDefinitions="_DEBUG"
  17.459 +				MkTypLibCompatible="true"
  17.460 +				SuppressStartupBanner="true"
  17.461 +				TargetEnvironment="3"
  17.462 +				TypeLibraryName=".\Debug/SDL.tlb"
  17.463  			/>
  17.464 -
  17.465 -			<Tool
  17.466 -
  17.467 -				Name="VCCustomBuildTool"
  17.468 -
  17.469 -			/>
  17.470 -
  17.471 -			<Tool
  17.472 -
  17.473 -				Name="VCXMLDataGeneratorTool"
  17.474 -
  17.475 -			/>
  17.476 -
  17.477  			<Tool
  17.478 -
  17.479 -				Name="VCWebServiceProxyGeneratorTool"
  17.480 -
  17.481 -			/>
  17.482 -
  17.483 -			<Tool
  17.484 -
  17.485 -				Name="VCMIDLTool"
  17.486 -
  17.487 -				PreprocessorDefinitions="NDEBUG"
  17.488 -
  17.489 -				MkTypLibCompatible="true"
  17.490 -
  17.491 -				SuppressStartupBanner="true"
  17.492 -
  17.493 -				TargetEnvironment="1"
  17.494 -
  17.495 -				TypeLibraryName=".\Release/SDL.tlb"
  17.496 -
  17.497 -			/>
  17.498 -
  17.499 -			<Tool
  17.500 -
  17.501  				Name="VCCLCompilerTool"
  17.502 -
  17.503 -				InlineFunctionExpansion="1"
  17.504 -
  17.505 -				EnableIntrinsicFunctions="false"
  17.506 -
  17.507 +				Optimization="0"
  17.508  				AdditionalIncludeDirectories="..\..\include"
  17.509 -
  17.510 -				PreprocessorDefinitions="NDEBUG;_WINDOWS"
  17.511 -
  17.512 -				StringPooling="true"
  17.513 -
  17.514 +				PreprocessorDefinitions="_DEBUG;_WINDOWS"
  17.515 +				ExceptionHandling="2"
  17.516  				RuntimeLibrary="2"
  17.517 -
  17.518  				BufferSecurityCheck="false"
  17.519 -
  17.520 -				EnableFunctionLevelLinking="true"
  17.521 -
  17.522  				WarningLevel="3"
  17.523 -
  17.524  				SuppressStartupBanner="true"
  17.525 -
  17.526  				Detect64BitPortabilityProblems="false"
  17.527 -
  17.528 +				DebugInformationFormat="3"
  17.529  				CompileAs="0"
  17.530 -
  17.531  			/>
  17.532 -
  17.533  			<Tool
  17.534 -
  17.535  				Name="VCManagedResourceCompilerTool"
  17.536 -
  17.537  			/>
  17.538 -
  17.539  			<Tool
  17.540 -
  17.541  				Name="VCResourceCompilerTool"
  17.542 -
  17.543 -				PreprocessorDefinitions="NDEBUG"
  17.544 -
  17.545 +				PreprocessorDefinitions="_DEBUG"
  17.546  				Culture="1033"
  17.547 -
  17.548  			/>
  17.549 -
  17.550  			<Tool
  17.551 -
  17.552  				Name="VCPreLinkEventTool"
  17.553 -
  17.554  			/>
  17.555 -
  17.556  			<Tool
  17.557 -
  17.558  				Name="VCLinkerTool"
  17.559 -
  17.560  				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.561 -
  17.562  				IgnoreAllDefaultLibraries="true"
  17.563 -
  17.564 +				GenerateDebugInformation="true"
  17.565  				SubSystem="2"
  17.566 -
  17.567 +				TargetMachine="17"
  17.568  			/>
  17.569 -
  17.570 -			<Tool
  17.571 -
  17.572 -				Name="VCALinkTool"
  17.573 -
  17.574 -			/>
  17.575 -
  17.576  			<Tool
  17.577 -
  17.578 -				Name="VCManifestTool"
  17.579 -
  17.580 +				Name="VCALinkTool"
  17.581  			/>
  17.582 -
  17.583  			<Tool
  17.584 -
  17.585 -				Name="VCXDCMakeTool"
  17.586 -
  17.587 +				Name="VCManifestTool"
  17.588  			/>
  17.589 -
  17.590  			<Tool
  17.591 -
  17.592 +				Name="VCXDCMakeTool"
  17.593 +			/>
  17.594 +			<Tool
  17.595  				Name="VCBscMakeTool"
  17.596 -
  17.597  			/>
  17.598 -
  17.599  			<Tool
  17.600 -
  17.601  				Name="VCFxCopTool"
  17.602 -
  17.603  			/>
  17.604 -
  17.605  			<Tool
  17.606 -
  17.607  				Name="VCAppVerifierTool"
  17.608 -
  17.609  			/>
  17.610 -
  17.611  			<Tool
  17.612 -
  17.613  				Name="VCPostBuildEventTool"
  17.614 -
  17.615  			/>
  17.616 -
  17.617  		</Configuration>
  17.618 -
  17.619  		<Configuration
  17.620 -
  17.621 -			Name="Release|x64"
  17.622 -
  17.623 -			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
  17.624 -
  17.625 -			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
  17.626 -
  17.627 +			Name="Release|Win32"
  17.628 +			OutputDirectory=".\Release"
  17.629 +			IntermediateDirectory=".\Release"
  17.630  			ConfigurationType="2"
  17.631 -
  17.632  			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
  17.633 -
  17.634  			UseOfMFC="0"
  17.635 -
  17.636  			ATLMinimizesCRunTimeLibraryUsage="false"
  17.637 -
  17.638  			>
  17.639 -
  17.640  			<Tool
  17.641 -
  17.642  				Name="VCPreBuildEventTool"
  17.643 -
  17.644 +				CommandLine=""
  17.645  			/>
  17.646 -
  17.647  			<Tool
  17.648 -
  17.649  				Name="VCCustomBuildTool"
  17.650 -
  17.651  			/>
  17.652 -
  17.653  			<Tool
  17.654 -
  17.655  				Name="VCXMLDataGeneratorTool"
  17.656 -
  17.657  			/>
  17.658 -
  17.659  			<Tool
  17.660 -
  17.661  				Name="VCWebServiceProxyGeneratorTool"
  17.662 -
  17.663  			/>
  17.664 -
  17.665  			<Tool
  17.666 -
  17.667  				Name="VCMIDLTool"
  17.668 -
  17.669  				PreprocessorDefinitions="NDEBUG"
  17.670 -
  17.671  				MkTypLibCompatible="true"
  17.672 -
  17.673  				SuppressStartupBanner="true"
  17.674 -
  17.675 -				TargetEnvironment="3"
  17.676 -
  17.677 +				TargetEnvironment="1"
  17.678  				TypeLibraryName=".\Release/SDL.tlb"
  17.679 -
  17.680  			/>
  17.681 -
  17.682  			<Tool
  17.683 -
  17.684  				Name="VCCLCompilerTool"
  17.685 -
  17.686  				InlineFunctionExpansion="1"
  17.687 -
  17.688  				EnableIntrinsicFunctions="false"
  17.689 -
  17.690  				AdditionalIncludeDirectories="..\..\include"
  17.691 -
  17.692  				PreprocessorDefinitions="NDEBUG;_WINDOWS"
  17.693 -
  17.694  				StringPooling="true"
  17.695 -
  17.696 +				ExceptionHandling="2"
  17.697  				RuntimeLibrary="2"
  17.698 -
  17.699  				BufferSecurityCheck="false"
  17.700 -
  17.701  				EnableFunctionLevelLinking="true"
  17.702 -
  17.703  				WarningLevel="3"
  17.704 -
  17.705  				SuppressStartupBanner="true"
  17.706 -
  17.707  				Detect64BitPortabilityProblems="false"
  17.708 -
  17.709  				CompileAs="0"
  17.710 -
  17.711  			/>
  17.712 -
  17.713  			<Tool
  17.714 -
  17.715  				Name="VCManagedResourceCompilerTool"
  17.716 -
  17.717  			/>
  17.718 -
  17.719  			<Tool
  17.720 -
  17.721  				Name="VCResourceCompilerTool"
  17.722 -
  17.723  				PreprocessorDefinitions="NDEBUG"
  17.724 -
  17.725  				Culture="1033"
  17.726 -
  17.727  			/>
  17.728 -
  17.729  			<Tool
  17.730 -
  17.731  				Name="VCPreLinkEventTool"
  17.732 -
  17.733  			/>
  17.734 -
  17.735  			<Tool
  17.736 -
  17.737  				Name="VCLinkerTool"
  17.738 -
  17.739  				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.740 -
  17.741  				IgnoreAllDefaultLibraries="true"
  17.742 -
  17.743 +				GenerateDebugInformation="true"
  17.744  				SubSystem="2"
  17.745 -
  17.746 -				TargetMachine="17"
  17.747 -
  17.748 -			/>
  17.749 -
  17.750 -			<Tool
  17.751 -
  17.752 -				Name="VCALinkTool"
  17.753 -
  17.754 +				OptimizeReferences="2"
  17.755 +				EnableCOMDATFolding="2"
  17.756  			/>
  17.757 -
  17.758  			<Tool
  17.759 -
  17.760 +				Name="VCALinkTool"
  17.761 +			/>
  17.762 +			<Tool
  17.763  				Name="VCManifestTool"
  17.764 -
  17.765  			/>
  17.766 -
  17.767  			<Tool
  17.768 -
  17.769  				Name="VCXDCMakeTool"
  17.770 -
  17.771  			/>
  17.772 -
  17.773 +			<Tool
  17.774 +				Name="VCBscMakeTool"
  17.775 +			/>
  17.776  			<Tool
  17.777 -
  17.778 -				Name="VCBscMakeTool"
  17.779 -
  17.780 +				Name="VCFxCopTool"
  17.781  			/>
  17.782 -
  17.783 +			<Tool
  17.784 +				Name="VCAppVerifierTool"
  17.785 +			/>
  17.786  			<Tool
  17.787 -
  17.788 -				Name="VCFxCopTool"
  17.789 -
  17.790 +				Name="VCPostBuildEventTool"
  17.791 +			/>
  17.792 +		</Configuration>
  17.793 +		<Configuration
  17.794 +			Name="Release|x64"
  17.795 +			OutputDirectory="$(PlatformName)\$(ConfigurationName)"
  17.796 +			IntermediateDirectory="$(PlatformName)\$(ConfigurationName)"
  17.797 +			ConfigurationType="2"
  17.798 +			InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
  17.799 +			UseOfMFC="0"
  17.800 +			ATLMinimizesCRunTimeLibraryUsage="false"
  17.801 +			>
  17.802 +			<Tool
  17.803 +				Name="VCPreBuildEventTool"
  17.804  			/>
  17.805 -
  17.806 +			<Tool
  17.807 +				Name="VCCustomBuildTool"
  17.808 +			/>
  17.809 +			<Tool
  17.810 +				Name="VCXMLDataGeneratorTool"
  17.811 +			/>
  17.812  			<Tool
  17.813 -
  17.814 -				Name="VCAppVerifierTool"
  17.815 -
  17.816 +				Name="VCWebServiceProxyGeneratorTool"
  17.817 +			/>
  17.818 +			<Tool
  17.819 +				Name="VCMIDLTool"
  17.820 +				PreprocessorDefinitions="NDEBUG"
  17.821 +				MkTypLibCompatible="true"
  17.822 +				SuppressStartupBanner="true"
  17.823 +				TargetEnvironment="3"
  17.824 +				TypeLibraryName=".\Release/SDL.tlb"
  17.825  			/>
  17.826 -
  17.827 +			<Tool
  17.828 +				Name="VCCLCompilerTool"
  17.829 +				InlineFunctionExpansion="1"
  17.830 +				EnableIntrinsicFunctions="false"
  17.831 +				AdditionalIncludeDirectories="..\..\include"
  17.832 +				PreprocessorDefinitions="NDEBUG;_WINDOWS"
  17.833 +				StringPooling="true"
  17.834 +				ExceptionHandling="2"
  17.835 +				RuntimeLibrary="2"
  17.836 +				BufferSecurityCheck="false"
  17.837 +				EnableFunctionLevelLinking="true"
  17.838 +				WarningLevel="3"
  17.839 +				SuppressStartupBanner="true"
  17.840 +				Detect64BitPortabilityProblems="false"
  17.841 +				CompileAs="0"
  17.842 +			/>
  17.843 +			<Tool
  17.844 +				Name="VCManagedResourceCompilerTool"
  17.845 +			/>
  17.846 +			<Tool
  17.847 +				Name="VCResourceCompilerTool"
  17.848 +				PreprocessorDefinitions="NDEBUG"
  17.849 +				Culture="1033"
  17.850 +			/>
  17.851 +			<Tool
  17.852 +				Name="VCPreLinkEventTool"
  17.853 +			/>
  17.854  			<Tool
  17.855 -
  17.856 +				Name="VCLinkerTool"
  17.857 +				AdditionalDependencies="winmm.lib imm32.lib version.lib"
  17.858 +				IgnoreAllDefaultLibraries="true"
  17.859 +				GenerateDebugInformation="true"
  17.860 +				SubSystem="2"
  17.861 +				OptimizeReferences="2"
  17.862 +				EnableCOMDATFolding="2"
  17.863 +				TargetMachine="17"
  17.864 +			/>
  17.865 +			<Tool
  17.866 +				Name="VCALinkTool"
  17.867 +			/>
  17.868 +			<Tool
  17.869 +				Name="VCManifestTool"
  17.870 +			/>
  17.871 +			<Tool
  17.872 +				Name="VCXDCMakeTool"
  17.873 +			/>
  17.874 +			<Tool
  17.875 +				Name="VCBscMakeTool"
  17.876 +			/>
  17.877 +			<Tool
  17.878 +				Name="VCFxCopTool"
  17.879 +			/>
  17.880 +			<Tool
  17.881 +				Name="VCAppVerifierTool"
  17.882 +			/>
  17.883 +			<Tool
  17.884  				Name="VCPostBuildEventTool"
  17.885 -
  17.886  			/>
  17.887 -
  17.888  		</Configuration>
  17.889 -
  17.890  	</Configurations>
  17.891 -
  17.892  	<References>
  17.893 -
  17.894  	</References>
  17.895 -
  17.896  	<Files>
  17.897 -
  17.898  		<Filter
  17.899 -
  17.900  			Name="API Headers"
  17.901 -
  17.902  			>
  17.903 -
  17.904 -			<File
  17.905 -
  17.906 -				RelativePath="..\..\include\SDL.h"
  17.907 -
  17.908 -				>
  17.909 -
  17.910 -			</File>
  17.911 -
  17.912 -			<File
  17.913 -
  17.914 -				RelativePath="..\..\include\SDL_assert.h"
  17.915 -
  17.916 -				>
  17.917 -
  17.918 -			</File>
  17.919 -
  17.920  			<File
  17.921 -
  17.922 -				RelativePath="..\..\include\SDL_atomic.h"
  17.923 -
  17.924 -				>
  17.925 -
  17.926 -			</File>
  17.927 -
  17.928 -			<File
  17.929 -
  17.930 -				RelativePath="..\..\include\SDL_audio.h"
  17.931 -
  17.932 -				>
  17.933 -
  17.934 -			</File>
  17.935 -
  17.936 -			<File
  17.937 -
  17.938 -				RelativePath="..\..\include\SDL_bits.h"
  17.939 -
  17.940 +				RelativePath="..\..\include\SDL.h"
  17.941  				>
  17.942 -
  17.943  			</File>
  17.944 -
  17.945 -			<File
  17.946 -
  17.947 -				RelativePath="..\..\include\SDL_blendmode.h"
  17.948 -
  17.949 -				>
  17.950 -
  17.951 -			</File>
  17.952 -
  17.953 -			<File
  17.954 -
  17.955 -				RelativePath="..\..\include\SDL_clipboard.h"
  17.956 -
  17.957 -				>
  17.958 -
  17.959 -			</File>
  17.960 -
  17.961  			<File
  17.962 -
  17.963 -				RelativePath="..\..\include\SDL_config.h"
  17.964 -
  17.965 -				>
  17.966 -
  17.967 -			</File>
  17.968 -
  17.969 -			<File
  17.970 -
  17.971 -				RelativePath="..\..\include\SDL_config_windows.h"
  17.972 -
  17.973 -				>
  17.974 -
  17.975 -			</File>
  17.976 -
  17.977 -			<File
  17.978 -
  17.979 -				RelativePath="..\..\include\SDL_copying.h"
  17.980 -
  17.981 -				>
  17.982 -
  17.983 -			</File>
  17.984 -
  17.985 -			<File
  17.986 -
  17.987 -				RelativePath="..\..\include\SDL_cpuinfo.h"
  17.988 -
  17.989 -				>
  17.990 -
  17.991 -			</File>
  17.992 -
  17.993 -			<File
  17.994 -
  17.995 -				RelativePath="..\..\include\SDL_endian.h"
  17.996 -
  17.997 -				>
  17.998 -
  17.999 -			</File>
 17.1000 -
 17.1001 -			<File
 17.1002 -
 17.1003 -				RelativePath="..\..\include\SDL_error.h"
 17.1004 -
 17.1005 +				RelativePath="..\..\include\SDL_assert.h"
 17.1006  				>
 17.1007 -
 17.1008  			</File>
 17.1009 -
 17.1010  			<File
 17.1011 -
 17.1012 -				RelativePath="..\..\include\SDL_events.h"
 17.1013 -
 17.1014 +				RelativePath="..\..\include\SDL_atomic.h"
 17.1015  				>
 17.1016 -
 17.1017  			</File>
 17.1018 -
 17.1019  			<File
 17.1020 -
 17.1021 -				RelativePath="..\..\include\SDL_gamecontroller.h"
 17.1022 -
 17.1023 +				RelativePath="..\..\include\SDL_audio.h"
 17.1024  				>
 17.1025 -
 17.1026  			</File>
 17.1027 -
 17.1028 +			<File
 17.1029 +				RelativePath="..\..\include\SDL_bits.h"
 17.1030 +				>
 17.1031 +			</File>
 17.1032  			<File
 17.1033 -
 17.1034 -				RelativePath="..\..\include\SDL_gesture.h"
 17.1035 -
 17.1036 +				RelativePath="..\..\include\SDL_blendmode.h"
 17.1037  				>
 17.1038 -
 17.1039  			</File>
 17.1040 -
 17.1041  			<File
 17.1042 -
 17.1043 -				RelativePath="..\..\include\SDL_haptic.h"
 17.1044 -
 17.1045 +				RelativePath="..\..\include\SDL_clipboard.h"
 17.1046  				>
 17.1047 -
 17.1048  			</File>
 17.1049 -
 17.1050  			<File
 17.1051 -
 17.1052 -				RelativePath="..\..\include\SDL_hints.h"
 17.1053 -
 17.1054 +				RelativePath="..\..\include\SDL_config.h"
 17.1055 +				>
 17.1056 +			</File>
 17.1057 +			<File
 17.1058 +				RelativePath="..\..\include\SDL_config_windows.h"
 17.1059  				>
 17.1060 -
 17.1061  			</File>
 17.1062 -
 17.1063  			<File
 17.1064 -
 17.1065 -				RelativePath="..\..\include\SDL_joystick.h"
 17.1066 -
 17.1067 +				RelativePath="..\..\include\SDL_copying.h"
 17.1068  				>
 17.1069 -
 17.1070  			</File>
 17.1071 -
 17.1072  			<File
 17.1073 -
 17.1074 -				RelativePath="..\..\include\SDL_keyboard.h"
 17.1075 -
 17.1076 +				RelativePath="..\..\include\SDL_cpuinfo.h"
 17.1077  				>
 17.1078 -
 17.1079  			</File>
 17.1080 -
 17.1081 +			<File
 17.1082 +				RelativePath="..\..\include\SDL_endian.h"
 17.1083 +				>
 17.1084 +			</File>
 17.1085  			<File
 17.1086 -
 17.1087 -				RelativePath="..\..\include\SDL_keycode.h"
 17.1088 -
 17.1089 +				RelativePath="..\..\include\SDL_error.h"
 17.1090  				>
 17.1091 -
 17.1092  			</File>
 17.1093 -
 17.1094 +			<File
 17.1095 +				RelativePath="..\..\include\SDL_events.h"
 17.1096 +				>
 17.1097 +			</File>
 17.1098  			<File
 17.1099 -
 17.1100 -				RelativePath="..\..\include\SDL_loadso.h"
 17.1101 -
 17.1102 +				RelativePath="..\..\include\SDL_gamecontroller.h"
 17.1103  				>
 17.1104 -
 17.1105  			</File>
 17.1106 -
 17.1107  			<File
 17.1108 -
 17.1109 -				RelativePath="..\..\include\SDL_log.h"
 17.1110 -
 17.1111 +				RelativePath="..\..\include\SDL_gesture.h"
 17.1112  				>
 17.1113 -
 17.1114 +			</File>
 17.1115 +			<File
 17.1116 +				RelativePath="..\..\include\SDL_haptic.h"
 17.1117 +				>
 17.1118  			</File>
 17.1119 -
 17.1120  			<File
 17.1121 -
 17.1122 -				RelativePath="..\..\include\SDL_main.h"
 17.1123 -
 17.1124 +				RelativePath="..\..\include\SDL_hints.h"
 17.1125  				>
 17.1126 -
 17.1127  			</File>
 17.1128 -
 17.1129  			<File
 17.1130 -
 17.1131 -				RelativePath="..\..\include\SDL_messagebox.h"
 17.1132 -
 17.1133 +				RelativePath="..\..\include\SDL_joystick.h"
 17.1134  				>
 17.1135 -
 17.1136  			</File>
 17.1137 -
 17.1138 +			<File
 17.1139 +				RelativePath="..\..\include\SDL_keyboard.h"
 17.1140 +				>
 17.1141 +			</File>
 17.1142  			<File
 17.1143 -
 17.1144 -				RelativePath="..\..\include\SDL_mouse.h"
 17.1145 -
 17.1146 +				RelativePath="..\..\include\SDL_keycode.h"
 17.1147  				>
 17.1148 -
 17.1149  			</File>
 17.1150 -
 17.1151  			<File
 17.1152 -
 17.1153 -				RelativePath="..\..\include\SDL_mutex.h"
 17.1154 -
 17.1155 +				RelativePath="..\..\include\SDL_loadso.h"
 17.1156 +				>
 17.1157 +			</File>
 17.1158 +			<File
 17.1159 +				RelativePath="..\..\include\SDL_log.h"
 17.1160  				>
 17.1161 -
 17.1162  			</File>
 17.1163 -
 17.1164  			<File
 17.1165 -
 17.1166 -				RelativePath="..\..\include\SDL_name.h"
 17.1167 -
 17.1168 +				RelativePath="..\..\include\SDL_main.h"
 17.1169  				>
 17.1170 -
 17.1171  			</File>
 17.1172 -
 17.1173 +			<File
 17.1174 +				RelativePath="..\..\include\SDL_messagebox.h"
 17.1175 +				>
 17.1176 +			</File>
 17.1177  			<File
 17.1178 -
 17.1179 -				RelativePath="..\..\include\SDL_opengl.h"
 17.1180 -
 17.1181 +				RelativePath="..\..\include\SDL_mouse.h"
 17.1182  				>
 17.1183 -
 17.1184  			</File>
 17.1185 -
 17.1186  			<File
 17.1187 -
 17.1188 -				RelativePath="..\..\include\SDL_opengles.h"
 17.1189 -
 17.1190 +				RelativePath="..\..\include\SDL_mutex.h"
 17.1191  				>
 17.1192 -
 17.1193  			</File>
 17.1194 -
 17.1195  			<File
 17.1196 -
 17.1197 -				RelativePath="..\..\include\SDL_pixels.h"
 17.1198 -
 17.1199 +				RelativePath="..\..\include\SDL_name.h"
 17.1200 +				>
 17.1201 +			</File>
 17.1202 +			<File
 17.1203 +				RelativePath="..\..\include\SDL_opengl.h"
 17.1204  				>
 17.1205 -
 17.1206  			</File>
 17.1207 -
 17.1208  			<File
 17.1209 -
 17.1210 -				RelativePath="..\..\include\SDL_platform.h"
 17.1211 -
 17.1212 +				RelativePath="..\..\include\SDL_opengles.h"
 17.1213  				>
 17.1214 -
 17.1215 +			</File>
 17.1216 +			<File
 17.1217 +				RelativePath="..\..\include\SDL_pixels.h"
 17.1218 +				>
 17.1219  			</File>
 17.1220 -
 17.1221  			<File
 17.1222 -
 17.1223 -				RelativePath="..\..\include\SDL_power.h"
 17.1224 -
 17.1225 +				RelativePath="..\..\include\SDL_platform.h"
 17.1226  				>
 17.1227 -
 17.1228  			</File>
 17.1229 -
 17.1230  			<File
 17.1231 -
 17.1232 +				RelativePath="..\..\include\SDL_power.h"
 17.1233 +				>
 17.1234 +			</File>
 17.1235 +			<File
 17.1236  				RelativePath="..\..\include\SDL_quit.h"
 17.1237 -
 17.1238  				>
 17.1239 -
 17.1240  			</File>
 17.1241 -
 17.1242  			<File
 17.1243 -
 17.1244  				RelativePath="..\..\include\SDL_rect.h"
 17.1245 -
 17.1246  				>
 17.1247 -
 17.1248  			</File>
 17.1249 -
 17.1250  			<File
 17.1251 -
 17.1252  				RelativePath="..\..\include\SDL_render.h"
 17.1253 -
 17.1254  				>
 17.1255 -
 17.1256  			</File>
 17.1257 -
 17.1258  			<File
 17.1259 -
 17.1260  				RelativePath="..\..\include\SDL_revision.h"
 17.1261 -
 17.1262  				>
 17.1263 -
 17.1264  			</File>
 17.1265 -
 17.1266  			<File
 17.1267 -
 17.1268  				RelativePath="..\..\include\SDL_rwops.h"
 17.1269 -
 17.1270  				>
 17.1271 -
 17.1272  			</File>
 17.1273 -
 17.1274  			<File
 17.1275 -
 17.1276  				RelativePath="..\..\include\SDL_scancode.h"
 17.1277 -
 17.1278 -				>
 17.1279 -
 17.1280 -			</File>
 17.1281 -
 17.1282 -			<File
 17.1283 -
 17.1284 -				RelativePath="..\..\include\SDL_shape.h"
 17.1285 -
 17.1286  				>
 17.1287 -
 17.1288  			</File>
 17.1289 -
 17.1290  			<File
 17.1291 -
 17.1292 -				RelativePath="..\..\include\SDL_stdinc.h"
 17.1293 -
 17.1294 +				RelativePath="..\..\include\SDL_shape.h"
 17.1295  				>
 17.1296 -
 17.1297  			</File>
 17.1298 -
 17.1299  			<File
 17.1300 -
 17.1301 -				RelativePath="..\..\include\SDL_surface.h"
 17.1302 -
 17.1303 +				RelativePath="..\..\include\SDL_stdinc.h"
 17.1304  				>
 17.1305 -
 17.1306  			</File>
 17.1307 -
 17.1308  			<File
 17.1309 -
 17.1310 -				RelativePath="..\..\include\SDL_system.h"
 17.1311 -
 17.1312 +				RelativePath="..\..\include\SDL_surface.h"
 17.1313  				>
 17.1314 -
 17.1315  			</File>
 17.1316 -
 17.1317  			<File
 17.1318 -
 17.1319 -				RelativePath="..\..\include\SDL_syswm.h"
 17.1320 -
 17.1321 +				RelativePath="..\..\include\SDL_system.h"
 17.1322  				>
 17.1323 -
 17.1324  			</File>
 17.1325 -
 17.1326  			<File
 17.1327 -
 17.1328 -				RelativePath="..\..\include\SDL_thread.h"
 17.1329 -
 17.1330 +				RelativePath="..\..\include\SDL_syswm.h"
 17.1331  				>
 17.1332 -
 17.1333  			</File>
 17.1334 -
 17.1335  			<File
 17.1336 -
 17.1337 -				RelativePath="..\..\include\SDL_timer.h"
 17.1338 -
 17.1339 +				RelativePath="..\..\include\SDL_thread.h"
 17.1340  				>
 17.1341 -
 17.1342  			</File>
 17.1343 -
 17.1344  			<File
 17.1345 -
 17.1346 -				RelativePath="..\..\include\SDL_touch.h"
 17.1347 -
 17.1348 +				RelativePath="..\..\include\SDL_timer.h"
 17.1349  				>
 17.1350 -
 17.1351  			</File>
 17.1352 -
 17.1353  			<File
 17.1354 -
 17.1355 +				RelativePath="..\..\include\SDL_touch.h"
 17.1356 +				>
 17.1357 +			</File>
 17.1358 +			<File
 17.1359  				RelativePath="..\..\include\SDL_types.h"
 17.1360 -
 17.1361  				>
 17.1362 -
 17.1363 -			</File>
 17.1364 -
 17.1365 -			<File
 17.1366 -
 17.1367 -				RelativePath="..\..\include\SDL_version.h"
 17.1368 -
 17.1369 -				>
 17.1370 -
 17.1371  			</File>
 17.1372 -
 17.1373  			<File
 17.1374 -
 17.1375 +				RelativePath="..\..\include\SDL_version.h"
 17.1376 +				>
 17.1377 +			</File>
 17.1378 +			<File
 17.1379  				RelativePath="..\..\include\SDL_video.h"
 17.1380 -
 17.1381  				>
 17.1382 -
 17.1383  			</File>
 17.1384 -
 17.1385  		</Filter>
 17.1386 -
 17.1387 -		<File
 17.1388 -
 17.1389 -			RelativePath="..\..\src\events\blank_cursor.h"
 17.1390 -
 17.1391 -			>
 17.1392 -
 17.1393 -		</File>
 17.1394 -
 17.1395  		<File
 17.1396 -
 17.1397 -			RelativePath="..\..\src\events\default_cursor.h"
 17.1398 -
 17.1399 +			RelativePath="..\..\src\events\blank_cursor.h"
 17.1400  			>
 17.1401 -
 17.1402  		</File>
 17.1403 -
 17.1404  		<File
 17.1405 -
 17.1406 +			RelativePath="..\..\src\events\default_cursor.h"
 17.1407 +			>
 17.1408 +		</File>
 17.1409 +		<File
 17.1410  			RelativePath="..\..\src\audio\directsound\directx.h"
 17.1411 -
 17.1412  			>
 17.1413 -
 17.1414 -		</File>
 17.1415 -
 17.1416 -		<File
 17.1417 -
 17.1418 -			RelativePath="..\..\src\libm\e_atan2.c"
 17.1419 -
 17.1420 -			>
 17.1421 -
 17.1422  		</File>
 17.1423 -
 17.1424  		<File
 17.1425 -
 17.1426 -			RelativePath="..\..\src\libm\e_log.c"
 17.1427 -
 17.1428 +			RelativePath="..\..\src\libm\e_atan2.c"
 17.1429  			>
 17.1430 -
 17.1431  		</File>
 17.1432 -
 17.1433  		<File
 17.1434 -
 17.1435 -			RelativePath="..\..\src\libm\e_pow.c"
 17.1436 -
 17.1437 +			RelativePath="..\..\src\libm\e_log.c"
 17.1438  			>
 17.1439 -
 17.1440  		</File>
 17.1441 -
 17.1442  		<File
 17.1443 -
 17.1444 +			RelativePath="..\..\src\libm\e_pow.c"
 17.1445 +			>
 17.1446 +		</File>
 17.1447 +		<File
 17.1448  			RelativePath="..\..\src\libm\e_rem_pio2.c"
 17.1449 -
 17.1450  			>
 17.1451 -
 17.1452 -		</File>
 17.1453 -
 17.1454 -		<File
 17.1455 -
 17.1456 -			RelativePath="..\..\src\libm\e_sqrt.c"
 17.1457 -
 17.1458 -			>
 17.1459 -
 17.1460 -		</File>
 17.1461 -
 17.1462 -		<File
 17.1463 -
 17.1464 -			RelativePath="..\..\src\libm\k_cos.c"
 17.1465 -
 17.1466 -			>
 17.1467 -
 17.1468  		</File>
 17.1469 -
 17.1470  		<File
 17.1471 -
 17.1472 -			RelativePath="..\..\src\libm\k_rem_pio2.c"
 17.1473 -
 17.1474 +			RelativePath="..\..\src\libm\e_sqrt.c"
 17.1475  			>
 17.1476 -
 17.1477  		</File>
 17.1478 -
 17.1479 +		<File
 17.1480 +			RelativePath="..\..\src\libm\k_cos.c"
 17.1481 +			>
 17.1482 +		</File>
 17.1483  		<File
 17.1484 -
 17.1485 -			RelativePath="..\..\src\libm\k_sin.c"
 17.1486 -
 17.1487 +			RelativePath="..\..\src\libm\k_rem_pio2.c"
 17.1488  			>
 17.1489 -
 17.1490  		</File>
 17.1491 -
 17.1492  		<File
 17.1493 -
 17.1494 +			RelativePath="..\..\src\libm\k_sin.c"
 17.1495 +			>
 17.1496 +		</File>
 17.1497 +		<File
 17.1498  			RelativePath="..\..\src\libm\math.h"
 17.1499 -
 17.1500  			>
 17.1501 -
 17.1502  		</File>
 17.1503 -
 17.1504 -		<File
 17.1505 -
 17.1506 -			RelativePath="..\..\src\libm\math_private.h"
 17.1507 -
 17.1508 -			>
 17.1509 -
 17.1510 -		</File>
 17.1511 -
 17.1512 -		<File
 17.1513 -
 17.1514 -			RelativePath="..\..\src\render\mmx.h"
 17.1515 -
 17.1516 -			>
 17.1517 -
 17.1518 -		</File>
 17.1519 -
 17.1520  		<File
 17.1521 -
 17.1522 -			RelativePath=".\resource.h"
 17.1523 -
 17.1524 +			RelativePath="..\..\src\libm\math_private.h"
 17.1525 +			>
 17.1526 +		</File>
 17.1527 +		<File
 17.1528 +			RelativePath="..\..\src\render\mmx.h"
 17.1529  			>
 17.1530 -
 17.1531  		</File>
 17.1532 -
 17.1533  		<File
 17.1534 -
 17.1535 +			RelativePath=".\resource.h"
 17.1536 +			>
 17.1537 +		</File>
 17.1538 +		<File
 17.1539  			RelativePath="..\..\src\libm\s_atan.c"
 17.1540 -
 17.1541 -			>
 17.1542 -
 17.1543 -		</File>
 17.1544 -
 17.1545 -		<File
 17.1546 -
 17.1547 -			RelativePath="..\..\src\libm\s_copysign.c"
 17.1548 -
 17.1549  			>
 17.1550 -
 17.1551  		</File>
 17.1552 -
 17.1553  		<File
 17.1554 -
 17.1555 -			RelativePath="..\..\src\libm\s_cos.c"
 17.1556 -
 17.1557 +			RelativePath="..\..\src\libm\s_copysign.c"
 17.1558  			>
 17.1559 -
 17.1560  		</File>
 17.1561 -
 17.1562  		<File
 17.1563 -
 17.1564 -			RelativePath="..\..\src\libm\s_fabs.c"
 17.1565 -
 17.1566 +			RelativePath="..\..\src\libm\s_cos.c"
 17.1567  			>
 17.1568 -
 17.1569  		</File>
 17.1570 -
 17.1571  		<File
 17.1572 -
 17.1573 +			RelativePath="..\..\src\libm\s_fabs.c"
 17.1574 +			>
 17.1575 +		</File>
 17.1576 +		<File
 17.1577  			RelativePath="..\..\src\libm\s_floor.c"
 17.1578 -
 17.1579 -			>
 17.1580 -
 17.1581 -		</File>
 17.1582 -
 17.1583 -		<File
 17.1584 -
 17.1585 -			RelativePath="..\..\src\libm\s_scalbn.c"
 17.1586 -
 17.1587  			>
 17.1588 -
 17.1589  		</File>
 17.1590 -
 17.1591  		<File
 17.1592 -
 17.1593 -			RelativePath="..\..\src\libm\s_sin.c"
 17.1594 -
 17.1595 +			RelativePath="..\..\src\libm\s_scalbn.c"
 17.1596  			>
 17.1597 -
 17.1598  		</File>
 17.1599 -
 17.1600 -		<File
 17.1601 -
 17.1602 -			RelativePath="..\..\src\SDL.c"
 17.1603 -
 17.1604 -			>
 17.1605 -
 17.1606 -		</File>
 17.1607 -
 17.1608  		<File
 17.1609 -
 17.1610 -			RelativePath="..\..\src\SDL_assert.c"
 17.1611 -
 17.1612 +			RelativePath="..\..\src\libm\s_sin.c"
 17.1613  			>
 17.1614 -
 17.1615  		</File>
 17.1616 -
 17.1617  		<File
 17.1618 -
 17.1619 -			RelativePath="..\..\src\atomic\SDL_atomic.c"
 17.1620 -
 17.1621 +			RelativePath="..\..\src\SDL.c"
 17.1622  			>
 17.1623 -
 17.1624  		</File>
 17.1625 -
 17.1626  		<File
 17.1627 -
 17.1628 -			RelativePath="..\..\src\audio\SDL_audio.c"
 17.1629 -
 17.1630 +			RelativePath="..\..\src\SDL_assert.c"
 17.1631  			>
 17.1632 -
 17.1633  		</File>
 17.1634 -
 17.1635  		<File
 17.1636 -
 17.1637 -			RelativePath="..\..\src\audio\SDL_audio_c.h"
 17.1638 -
 17.1639 +			RelativePath="..\..\src\atomic\SDL_atomic.c"
 17.1640  			>
 17.1641 -
 17.1642  		</File>
 17.1643 -
 17.1644  		<File
 17.1645 -
 17.1646 -			RelativePath="..\..\src\audio\SDL_audiocvt.c"
 17.1647 -
 17.1648 +			RelativePath="..\..\src\audio\SDL_audio.c"
 17.1649  			>
 17.1650 -
 17.1651  		</File>
 17.1652 -
 17.1653  		<File
 17.1654 -
 17.1655 -			RelativePath="..\..\src\audio\SDL_audiodev.c"
 17.1656 -
 17.1657 +			RelativePath="..\..\src\audio\SDL_audio_c.h"
 17.1658  			>
 17.1659 -
 17.1660  		</File>
 17.1661 -
 17.1662  		<File
 17.1663 -
 17.1664 -			RelativePath="..\..\src\audio\SDL_audiodev_c.h"
 17.1665 -
 17.1666 +			RelativePath="..\..\src\audio\SDL_audiocvt.c"
 17.1667  			>
 17.1668 -
 17.1669  		</File>
 17.1670 -
 17.1671  		<File
 17.1672 -
 17.1673 -			RelativePath="..\..\src\audio\SDL_audiomem.h"
 17.1674 -
 17.1675 +			RelativePath="..\..\src\audio\SDL_audiodev.c"
 17.1676  			>
 17.1677 -
 17.1678  		</File>
 17.1679 -
 17.1680  		<File
 17.1681 -
 17.1682 -			RelativePath="..\..\src\audio\SDL_audiotypecvt.c"
 17.1683 -
 17.1684 +			RelativePath="..\..\src\audio\SDL_audiodev_c.h"
 17.1685  			>
 17.1686 -
 17.1687  		</File>
 17.1688 -
 17.1689  		<File
 17.1690 -
 17.1691 -			RelativePath="..\..\src\render\software\SDL_blendfillrect.c"
 17.1692 -
 17.1693 +			RelativePath="..\..\src\audio\SDL_audiomem.h"
 17.1694  			>
 17.1695 -
 17.1696  		</File>
 17.1697 -
 17.1698  		<File
 17.1699 -
 17.1700 -			RelativePath="..\..\src\render\software\SDL_blendfillrect.h"
 17.1701 -
 17.1702 +			RelativePath="..\..\src\audio\SDL_audiotypecvt.c"
 17.1703  			>
 17.1704 -
 17.1705  		</File>
 17.1706 -
 17.1707  		<File
 17.1708 -
 17.1709 -			RelativePath="..\..\src\render\software\SDL_blendline.c"
 17.1710 -
 17.1711 +			RelativePath="..\..\src\render\software\SDL_blendfillrect.c"
 17.1712  			>
 17.1713 -
 17.1714  		</File>
 17.1715 -
 17.1716  		<File
 17.1717 -
 17.1718 -			RelativePath="..\..\src\render\software\SDL_blendline.h"
 17.1719 -
 17.1720 +			RelativePath="..\..\src\render\software\SDL_blendfillrect.h"
 17.1721  			>
 17.1722 -
 17.1723  		</File>
 17.1724 -
 17.1725 +		<File
 17.1726 +			RelativePath="..\..\src\render\software\SDL_blendline.c"
 17.1727 +			>
 17.1728 +		</File>
 17.1729  		<File
 17.1730 -
 17.1731 -			RelativePath="..\..\src\render\software\SDL_blendpoint.c"
 17.1732 -
 17.1733 +			RelativePath="..\..\src\render\software\SDL_blendline.h"
 17.1734  			>
 17.1735 -
 17.1736  		</File>
 17.1737 -
 17.1738  		<File
 17.1739 -
 17.1740 +			RelativePath="..\..\src\render\software\SDL_blendpoint.c"
 17.1741 +			>
 17.1742 +		</File>
 17.1743 +		<File
 17.1744  			RelativePath="..\..\src\render\software\SDL_blendpoint.h"
 17.1745 -
 17.1746  			>
 17.1747 -
 17.1748 -		</File>
 17.1749 -
 17.1750 -		<File
 17.1751 -
 17.1752 -			RelativePath="..\..\src\video\SDL_blit.c"
 17.1753 -
 17.1754 -			>
 17.1755 -
 17.1756 -		</File>
 17.1757 -
 17.1758 -		<File
 17.1759 -
 17.1760 -			RelativePath="..\..\src\video\SDL_blit.h"
 17.1761 -
 17.1762 -			>
 17.1763 -
 17.1764  		</File>
 17.1765 -
 17.1766  		<File
 17.1767 -
 17.1768 -			RelativePath="..\..\src\video\SDL_blit_0.c"
 17.1769 -
 17.1770 +			RelativePath="..\..\src\video\SDL_blit.c"
 17.1771  			>
 17.1772 -
 17.1773  		</File>
 17.1774 -
 17.1775 +		<File
 17.1776 +			RelativePath="..\..\src\video\SDL_blit.h"
 17.1777 +			>
 17.1778 +		</File>
 17.1779  		<File
 17.1780 -
 17.1781 -			RelativePath="..\..\src\video\SDL_blit_1.c"
 17.1782 -
 17.1783 +			RelativePath="..\..\src\video\SDL_blit_0.c"
 17.1784  			>
 17.1785 -
 17.1786  		</File>
 17.1787 -
 17.1788  		<File
 17.1789 -
 17.1790 +			RelativePath="..\..\src\video\SDL_blit_1.c"
 17.1791 +			>
 17.1792 +		</File>
 17.1793 +		<File
 17.1794  			RelativePath="..\..\src\video\SDL_blit_A.c"
 17.1795 -
 17.1796  			>
 17.1797 -
 17.1798  		</File>
 17.1799 -
 17.1800 -		<File
 17.1801 -
 17.1802 -			RelativePath="..\..\src\video\SDL_blit_auto.c"
 17.1803 -
 17.1804 -			>
 17.1805 -
 17.1806 -		</File>
 17.1807 -
 17.1808 -		<File
 17.1809 -
 17.1810 -			RelativePath="..\..\src\video\SDL_blit_auto.h"
 17.1811 -
 17.1812 -			>
 17.1813 -
 17.1814 -		</File>
 17.1815 -
 17.1816  		<File
 17.1817 -
 17.1818 -			RelativePath="..\..\src\video\SDL_blit_copy.c"
 17.1819 -
 17.1820 +			RelativePath="..\..\src\video\SDL_blit_auto.c"
 17.1821  			>
 17.1822 -
 17.1823  		</File>
 17.1824 -
 17.1825  		<File
 17.1826 -
 17.1827 -			RelativePath="..\..\src\video\SDL_blit_copy.h"
 17.1828 -
 17.1829 +			RelativePath="..\..\src\video\SDL_blit_auto.h"
 17.1830  			>
 17.1831 -
 17.1832  		</File>
 17.1833 -
 17.1834  		<File
 17.1835 -
 17.1836 -			RelativePath="..\..\src\video\SDL_blit_N.c"
 17.1837 -
 17.1838 +			RelativePath="..\..\src\video\SDL_blit_copy.c"
 17.1839  			>
 17.1840 -
 17.1841  		</File>
 17.1842 -
 17.1843  		<File
 17.1844 -
 17.1845 -			RelativePath="..\..\src\video\SDL_blit_slow.c"
 17.1846 -
 17.1847 +			RelativePath="..\..\src\video\SDL_blit_copy.h"
 17.1848  			>
 17.1849 -
 17.1850  		</File>
 17.1851 -
 17.1852  		<File
 17.1853 -
 17.1854 -			RelativePath="..\..\src\video\SDL_blit_slow.h"
 17.1855 -
 17.1856 +			RelativePath="..\..\src\video\SDL_blit_N.c"
 17.1857  			>
 17.1858 -
 17.1859  		</File>
 17.1860 -
 17.1861 +		<File
 17.1862 +			RelativePath="..\..\src\video\SDL_blit_slow.c"
 17.1863 +			>
 17.1864 +		</File>
 17.1865  		<File
 17.1866 -
 17.1867 -			RelativePath="..\..\src\video\SDL_bmp.c"
 17.1868 -
 17.1869 +			RelativePath="..\..\src\video\SDL_blit_slow.h"
 17.1870  			>
 17.1871 -
 17.1872  		</File>
 17.1873 -
 17.1874  		<File
 17.1875 -
 17.1876 +			RelativePath="..\..\src\video\SDL_bmp.c"
 17.1877 +			>
 17.1878 +		</File>
 17.1879 +		<File
 17.1880  			RelativePath="..\..\src\video\SDL_clipboard.c"
 17.1881 -
 17.1882 -			>
 17.1883 -
 17.1884 -		</File>
 17.1885 -
 17.1886 -		<File
 17.1887 -
 17.1888 -			RelativePath="..\..\src\events\SDL_clipboardevents.c"
 17.1889 -
 17.1890  			>
 17.1891 -
 17.1892  		</File>
 17.1893 -
 17.1894  		<File
 17.1895 -
 17.1896 -			RelativePath="..\..\src\events\SDL_clipboardevents_c.h"
 17.1897 -
 17.1898 +			RelativePath="..\..\src\events\SDL_clipboardevents.c"
 17.1899  			>
 17.1900 -
 17.1901  		</File>
 17.1902 -
 17.1903  		<File
 17.1904 -
 17.1905 -			RelativePath="..\..\src\cpuinfo\SDL_cpuinfo.c"
 17.1906 -
 17.1907 +			RelativePath="..\..\src\events\SDL_clipboardevents_c.h"
 17.1908  			>
 17.1909 -
 17.1910  		</File>
 17.1911 -
 17.1912  		<File
 17.1913 -
 17.1914 +			RelativePath="..\..\src\cpuinfo\SDL_cpuinfo.c"
 17.1915 +			>
 17.1916 +		</File>
 17.1917 +		<File
 17.1918  			RelativePath="..\..\src\audio\directsound\SDL_directsound.c"
 17.1919 -
 17.1920 -			>
 17.1921 -
 17.1922 -		</File>
 17.1923 -
 17.1924 -		<File
 17.1925 -
 17.1926 -			RelativePath="..\..\src\audio\directsound\SDL_directsound.h"
 17.1927 -
 17.1928  			>
 17.1929 -
 17.1930  		</File>
 17.1931 -
 17.1932  		<File
 17.1933 -
 17.1934 -			RelativePath="..\..\src\audio\disk\SDL_diskaudio.c"
 17.1935 -
 17.1936 +			RelativePath="..\..\src\audio\directsound\SDL_directsound.h"
 17.1937  			>
 17.1938 -
 17.1939  		</File>
 17.1940 -
 17.1941  		<File
 17.1942 -
 17.1943 -			RelativePath="..\..\src\audio\disk\SDL_diskaudio.h"
 17.1944 -
 17.1945 +			RelativePath="..\..\src\audio\disk\SDL_diskaudio.c"
 17.1946  			>
 17.1947 -
 17.1948  		</File>
 17.1949 -
 17.1950  		<File
 17.1951 -
 17.1952 -			RelativePath="..\..\src\render\software\SDL_draw.h"
 17.1953 -
 17.1954 +			RelativePath="..\..\src\audio\disk\SDL_diskaudio.h"
 17.1955  			>
 17.1956 -
 17.1957  		</File>
 17.1958 -
 17.1959  		<File
 17.1960 -
 17.1961 -			RelativePath="..\..\src\render\software\SDL_drawline.c"
 17.1962 -
 17.1963 +			RelativePath="..\..\src\render\software\SDL_draw.h"
 17.1964  			>
 17.1965 -
 17.1966  		</File>
 17.1967 -
 17.1968  		<File
 17.1969 -
 17.1970 -			RelativePath="..\..\src\render\software\SDL_drawline.h"
 17.1971 -
 17.1972 +			RelativePath="..\..\src\render\software\SDL_drawline.c"
 17.1973  			>
 17.1974 -
 17.1975  		</File>
 17.1976 -
 17.1977  		<File
 17.1978 -
 17.1979 -			RelativePath="..\..\src\render\software\SDL_drawpoint.c"
 17.1980 -
 17.1981 +			RelativePath="..\..\src\render\software\SDL_drawline.h"
 17.1982  			>
 17.1983 -
 17.1984  		</File>
 17.1985 -
 17.1986  		<File
 17.1987 -
 17.1988 -			RelativePath="..\..\src\render\software\SDL_drawpoint.h"
 17.1989 -
 17.1990 +			RelativePath="..\..\src\render\software\SDL_drawpoint.c"
 17.1991  			>
 17.1992 -
 17.1993  		</File>
 17.1994 -
 17.1995  		<File
 17.1996 -
 17.1997 +			RelativePath="..\..\src\render\software\SDL_drawpoint.h"
 17.1998 +			>
 17.1999 +		</File>
 17.2000 +		<File
 17.2001  			RelativePath="..\..\src\events\SDL_dropevents.c"
 17.2002 -
 17.2003  			>
 17.2004 -
 17.2005 -		</File>
 17.2006 -
 17.2007 -		<File
 17.2008 -
 17.2009 -			RelativePath="..\..\src\events\SDL_dropevents_c.h"
 17.2010 -
 17.2011 -			>
 17.2012 -
 17.2013  		</File>
 17.2014 -
 17.2015  		<File
 17.2016 -
 17.2017 -			RelativePath="..\..\src\audio\dummy\SDL_dummyaudio.c"
 17.2018 -
 17.2019 +			RelativePath="..\..\src\events\SDL_dropevents_c.h"
 17.2020  			>
 17.2021 -
 17.2022  		</File>
 17.2023 -
 17.2024  		<File
 17.2025 -
 17.2026 -			RelativePath="..\..\src\audio\dummy\SDL_dummyaudio.h"
 17.2027 -
 17.2028 +			RelativePath="..\..\src\audio\dummy\SDL_dummyaudio.c"
 17.2029  			>
 17.2030 -
 17.2031  		</File>
 17.2032 -
 17.2033  		<File
 17.2034 -
 17.2035 +			RelativePath="..\..\src\audio\dummy\SDL_dummyaudio.h"
 17.2036 +			>
 17.2037 +		</File>
 17.2038 +		<File
 17.2039  			RelativePath="..\..\src\joystick\windows\SDL_dxjoystick.c"
 17.2040 -
 17.2041 -			>
 17.2042 -
 17.2043 -		</File>
 17.2044 -
 17.2045 -		<File
 17.2046 -
 17.2047 -			RelativePath="..\..\src\SDL_error.c"
 17.2048 -
 17.2049  			>
 17.2050 -
 17.2051  		</File>
 17.2052 -
 17.2053  		<File
 17.2054 -
 17.2055 -			RelativePath="..\..\src\SDL_error_c.h"
 17.2056 -
 17.2057 +			RelativePath="..\..\src\SDL_error.c"
 17.2058  			>
 17.2059 -
 17.2060  		</File>
 17.2061 -
 17.2062  		<File
 17.2063 -
 17.2064 -			RelativePath="..\..\src\events\SDL_events.c"
 17.2065 -
 17.2066 +			RelativePath="..\..\src\SDL_error_c.h"
 17.2067  			>
 17.2068 -
 17.2069  		</File>
 17.2070 -
 17.2071  		<File
 17.2072 -
 17.2073 -			RelativePath="..\..\src\events\SDL_events_c.h"
 17.2074 -
 17.2075 +			RelativePath="..\..\src\events\SDL_events.c"
 17.2076  			>
 17.2077 -
 17.2078  		</File>
 17.2079 -
 17.2080  		<File
 17.2081 -
 17.2082 +			RelativePath="..\..\src\events\SDL_events_c.h"
 17.2083 +			>
 17.2084 +		</File>
 17.2085 +		<File
 17.2086  			RelativePath="..\..\src\SDL_fatal.c"
 17.2087 -
 17.2088 -			>
 17.2089 -
 17.2090 -		</File>
 17.2091 -
 17.2092 -		<File
 17.2093 -
 17.2094 -			RelativePath="..\..\src\SDL_fatal.h"
 17.2095 -
 17.2096  			>
 17.2097 -
 17.2098  		</File>
 17.2099 -
 17.2100  		<File
 17.2101 -
 17.2102 -			RelativePath="..\..\src\video\SDL_fillrect.c"
 17.2103 -
 17.2104 +			RelativePath="..\..\src\SDL_fatal.h"
 17.2105  			>
 17.2106 -
 17.2107  		</File>
 17.2108 -
 17.2109  		<File
 17.2110 -
 17.2111 -			RelativePath="..\..\src\joystick\SDL_gamecontroller.c"
 17.2112 -
 17.2113 +			RelativePath="..\..\src\video\SDL_fillrect.c"
 17.2114  			>
 17.2115 -
 17.2116  		</File>
 17.2117 -
 17.2118  		<File
 17.2119 -
 17.2120 +			RelativePath="..\..\src\joystick\SDL_gamecontroller.c"
 17.2121 +			>
 17.2122 +		</File>
 17.2123 +		<File
 17.2124  			RelativePath="..\..\src\events\SDL_gesture.c"
 17.2125 -
 17.2126 -			>
 17.2127 -
 17.2128 -		</File>
 17.2129 -
 17.2130 -		<File
 17.2131 -
 17.2132 -			RelativePath="..\..\src\events\SDL_gesture_c.h"
 17.2133 -
 17.2134  			>
 17.2135 -
 17.2136  		</File>
 17.2137 -
 17.2138  		<File
 17.2139 -
 17.2140 -			RelativePath="..\..\src\stdlib\SDL_getenv.c"
 17.2141 -
 17.2142 +			RelativePath="..\..\src\events\SDL_gesture_c.h"
 17.2143  			>
 17.2144 -
 17.2145  		</File>
 17.2146 -
 17.2147  		<File
 17.2148 -
 17.2149 -			RelativePath="..\..\src\video\SDL_glesfuncs.h"
 17.2150 -
 17.2151 +			RelativePath="..\..\src\stdlib\SDL_getenv.c"
 17.2152  			>
 17.2153 -
 17.2154  		</File>
 17.2155 -
 17.2156  		<File
 17.2157 -
 17.2158 +			RelativePath="..\..\src\video\SDL_glesfuncs.h"
 17.2159 +			>
 17.2160 +		</File>
 17.2161 +		<File
 17.2162  			RelativePath="..\..\src\video\SDL_glfuncs.h"
 17.2163 -
 17.2164 -			>
 17.2165 -
 17.2166 -		</File>
 17.2167 -
 17.2168 -		<File
 17.2169 -
 17.2170 -			RelativePath="..\..\src\haptic\SDL_haptic.c"
 17.2171 -
 17.2172  			>
 17.2173 -
 17.2174  		</File>
 17.2175 -
 17.2176  		<File
 17.2177 -
 17.2178 -			RelativePath="..\..\src\SDL_hints.c"
 17.2179 -
 17.2180 +			RelativePath="..\..\src\haptic\SDL_haptic.c"
 17.2181  			>
 17.2182 -
 17.2183  		</File>
 17.2184 -
 17.2185  		<File
 17.2186 -
 17.2187 -			RelativePath="..\..\src\SDL_hints_c.h"
 17.2188 -
 17.2189 +			RelativePath="..\..\src\SDL_hints.c"
 17.2190  			>
 17.2191 -
 17.2192  		</File>
 17.2193 -
 17.2194  		<File
 17.2195 -
 17.2196 -			RelativePath="..\..\src\stdlib\SDL_iconv.c"
 17.2197 -
 17.2198 +			RelativePath="..\..\src\SDL_hints_c.h"
 17.2199  			>
 17.2200 -
 17.2201  		</File>
 17.2202 -
 17.2203  		<File
 17.2204 -
 17.2205 -			RelativePath="..\..\src\joystick\SDL_joystick.c"
 17.2206 -
 17.2207 +			RelativePath="..\..\src\stdlib\SDL_iconv.c"
 17.2208  			>
 17.2209 -
 17.2210  		</File>
 17.2211 -
 17.2212  		<File
 17.2213 -
 17.2214 -			RelativePath="..\..\src\joystick\SDL_joystick_c.h"
 17.2215 -
 17.2216 +			RelativePath="..\..\src\joystick\SDL_joystick.c"
 17.2217  			>
 17.2218 -
 17.2219  		</File>
 17.2220 -
 17.2221  		<File
 17.2222 -
 17.2223 -			RelativePath="..\..\src\events\SDL_keyboard.c"
 17.2224 -
 17.2225 +			RelativePath="..\..\src\joystick\SDL_joystick_c.h"
 17.2226  			>
 17.2227 -
 17.2228  		</File>
 17.2229 -
 17.2230  		<File
 17.2231 -
 17.2232 -			RelativePath="..\..\src\events\SDL_keyboard_c.h"
 17.2233 -
 17.2234 +			RelativePath="..\..\src\events\SDL_keyboard.c"
 17.2235  			>
 17.2236 -
 17.2237  		</File>
 17.2238 -
 17.2239  		<File
 17.2240 -
 17.2241 +			RelativePath="..\..\src\events\SDL_keyboard_c.h"
 17.2242 +			>
 17.2243 +		</File>
 17.2244 +		<File
 17.2245  			RelativePath="..\..\src\SDL_log.c"
 17.2246 -
 17.2247 -			>
 17.2248 -
 17.2249 -		</File>
 17.2250 -
 17.2251 -		<File
 17.2252 -
 17.2253 -			RelativePath="..\..\src\stdlib\SDL_malloc.c"
 17.2254 -
 17.2255  			>
 17.2256 -
 17.2257  		</File>
 17.2258 -
 17.2259  		<File
 17.2260 -
 17.2261 -			RelativePath="..\..\src\audio\SDL_mixer.c"
 17.2262 -
 17.2263 +			RelativePath="..\..\src\stdlib\SDL_malloc.c"
 17.2264  			>
 17.2265 -
 17.2266  		</File>
 17.2267 -
 17.2268  		<File
 17.2269 -
 17.2270 -			RelativePath="..\..\src\joystick\windows\SDL_mmjoystick.c"
 17.2271 -
 17.2272 +			RelativePath="..\..\src\audio\SDL_mixer.c"
 17.2273  			>
 17.2274 -
 17.2275  		</File>
 17.2276 -
 17.2277  		<File
 17.2278 -
 17.2279 -			RelativePath="..\..\src\events\SDL_mouse.c"
 17.2280 -
 17.2281 +			RelativePath="..\..\src\joystick\windows\SDL_mmjoystick.c"
 17.2282  			>
 17.2283 -
 17.2284  		</File>
 17.2285 -
 17.2286  		<File
 17.2287 -
 17.2288 +			RelativePath="..\..\src\events\SDL_mouse.c"
 17.2289 +			>
 17.2290 +		</File>
 17.2291 +		<File
 17.2292  			RelativePath="..\..\src\events\SDL_mouse_c.h"
 17.2293 -
 17.2294  			>
 17.2295 -
 17.2296 -		</File>
 17.2297 -
 17.2298 -		<File
 17.2299 -
 17.2300 -			RelativePath="..\..\src\video\dummy\SDL_nullevents.c"
 17.2301 -
 17.2302 -			>
 17.2303 -
 17.2304  		</File>
 17.2305 -
 17.2306  		<File
 17.2307 -
 17.2308 -			RelativePath="..\..\src\video\dummy\SDL_nullevents_c.h"
 17.2309 -
 17.2310 +			RelativePath="..\..\src\video\dummy\SDL_nullevents.c"
 17.2311  			>
 17.2312 -
 17.2313  		</File>
 17.2314 -
 17.2315  		<File
 17.2316 -
 17.2317 -			RelativePath="..\..\src\video\dummy\SDL_nullframebuffer.c"
 17.2318 -
 17.2319 +			RelativePath="..\..\src\video\dummy\SDL_nullevents_c.h"
 17.2320  			>
 17.2321 -
 17.2322  		</File>
 17.2323 -
 17.2324  		<File
 17.2325 -
 17.2326 +			RelativePath="..\..\src\video\dummy\SDL_nullframebuffer.c"
 17.2327 +			>
 17.2328 +		</File>
 17.2329 +		<File
 17.2330  			RelativePath="..\..\src\video\dummy\SDL_nullframebuffer_c.h"
 17.2331 -
 17.2332 -			>
 17.2333 -
 17.2334 -		</File>
 17.2335 -
 17.2336 -		<File
 17.2337 -
 17.2338 -			RelativePath="..\..\src\video\dummy\SDL_nullvideo.c"
 17.2339 -
 17.2340  			>
 17.2341 -
 17.2342  		</File>
 17.2343 -
 17.2344  		<File
 17.2345 -
 17.2346 -			RelativePath="..\..\src\video\dummy\SDL_nullvideo.h"
 17.2347 -
 17.2348 +			RelativePath="..\..\src\video\dummy\SDL_nullvideo.c"
 17.2349  			>
 17.2350 -
 17.2351  		</File>
 17.2352 -
 17.2353  		<File
 17.2354 -
 17.2355 -			RelativePath="..\..\src\video\SDL_pixels.c"
 17.2356 -
 17.2357 +			RelativePath="..\..\src\video\dummy\SDL_nullvideo.h"
 17.2358  			>
 17.2359 -
 17.2360  		</File>
 17.2361 -
 17.2362  		<File
 17.2363 -
 17.2364 +			RelativePath="..\..\src\video\SDL_pixels.c"
 17.2365 +			>
 17.2366 +		</File>
 17.2367 +		<File
 17.2368  			RelativePath="..\..\src\video\SDL_pixels_c.h"
 17.2369 -
 17.2370 -			>
 17.2371 -
 17.2372 -		</File>
 17.2373 -
 17.2374 -		<File
 17.2375 -
 17.2376 -			RelativePath="..\..\src\power\SDL_power.c"
 17.2377 -
 17.2378  			>
 17.2379 -
 17.2380  		</File>
 17.2381 -
 17.2382  		<File
 17.2383 -
 17.2384 -			RelativePath="..\..\src\stdlib\SDL_qsort.c"
 17.2385 -
 17.2386 +			RelativePath="..\..\src\power\SDL_power.c"
 17.2387  			>
 17.2388 -
 17.2389  		</File>
 17.2390 -
 17.2391  		<File
 17.2392 -
 17.2393 -			RelativePath="..\..\src\events\SDL_quit.c"
 17.2394 -
 17.2395 +			RelativePath="..\..\src\stdlib\SDL_qsort.c"
 17.2396  			>
 17.2397 -
 17.2398  		</File>
 17.2399 -
 17.2400  		<File
 17.2401 -
 17.2402 +			RelativePath="..\..\src\events\SDL_quit.c"
 17.2403 +			>
 17.2404 +		</File>
 17.2405 +		<File
 17.2406  			RelativePath="..\..\src\video\SDL_rect.c"
 17.2407 -
 17.2408  			>
 17.2409 -
 17.2410  		</File>
 17.2411 -
 17.2412  		<File
 17.2413 -
 17.2414  			RelativePath="..\..\src\video\SDL_rect_c.h"
 17.2415 -
 17.2416  			>
 17.2417 -
 17.2418  		</File>
 17.2419 -
 17.2420  		<File
 17.2421 -
 17.2422  			RelativePath="..\..\src\render\SDL_render.c"
 17.2423 -
 17.2424  			>
 17.2425 -
 17.2426  		</File>
 17.2427 -
 17.2428  		<File
 17.2429 -
 17.2430  			RelativePath="..\..\src\render\direct3d\SDL_render_d3d.c"
 17.2431 -
 17.2432  			>
 17.2433 -
 17.2434  		</File>
 17.2435 -
 17.2436  		<File
 17.2437 -
 17.2438  			RelativePath="..\..\src\render\opengl\SDL_render_gl.c"
 17.2439 -
 17.2440  			>
 17.2441 -
 17.2442  		</File>
 17.2443 -
 17.2444  		<File
 17.2445 -
 17.2446  			RelativePath="..\..\src\render\software\SDL_render_sw.c"
 17.2447 -
 17.2448  			>
 17.2449 -
 17.2450  		</File>
 17.2451 -
 17.2452  		<File
 17.2453 -
 17.2454  			RelativePath="..\..\src\render\software\SDL_render_sw_c.h"
 17.2455 -
 17.2456  			>
 17.2457 -
 17.2458  		</File>
 17.2459 -
 17.2460  		<File
 17.2461 -
 17.2462  			RelativePath="..\..\src\video\SDL_RLEaccel.c"
 17.2463 -
 17.2464  			>
 17.2465 -
 17.2466  		</File>
 17.2467 -
 17.2468  		<File
 17.2469 -
 17.2470  			RelativePath="..\..\src\video\SDL_RLEaccel_c.h"
 17.2471 -
 17.2472  			>
 17.2473 -
 17.2474  		</File>
 17.2475 -
 17.2476  		<File
 17.2477 -
 17.2478  			RelativePath="..\..\src\render\software\SDL_rotate.c"
 17.2479 -
 17.2480  			>
 17.2481 -
 17.2482  		</File>
 17.2483 -
 17.2484  		<File
 17.2485 -
 17.2486  			RelativePath="..\..\src\render\software\SDL_rotate.h"
 17.2487 -
 17.2488  			>
 17.2489 -
 17.2490  		</File>
 17.2491 -
 17.2492  		<File
 17.2493 -
 17.2494  			RelativePath="..\..\src\file\SDL_rwops.c"
 17.2495 -
 17.2496  			>
 17.2497 -
 17.2498  		</File>
 17.2499 -
 17.2500  		<File
 17.2501 -
 17.2502  			RelativePath="..\..\src\render\opengl\SDL_shaders_gl.c"
 17.2503 -
 17.2504  			>
 17.2505 -
 17.2506  		</File>
 17.2507 -
 17.2508  		<File
 17.2509 -
 17.2510  			RelativePath="..\..\src\render\opengl\SDL_shaders_gl.h"
 17.2511 -
 17.2512  			>
 17.2513 -
 17.2514  		</File>
 17.2515 -
 17.2516  		<File
 17.2517 -
 17.2518  			RelativePath="..\..\src\video\SDL_shape.c"
 17.2519 -
 17.2520  			>
 17.2521 -
 17.2522  		</File>
 17.2523 -
 17.2524  		<File
 17.2525 -
 17.2526  			RelativePath="..\..\src\video\SDL_shape_internals.h"
 17.2527 -
 17.2528  			>
 17.2529 -
 17.2530  		</File>
 17.2531 -
 17.2532  		<File
 17.2533 -
 17.2534  			RelativePath="..\..\src\atomic\SDL_spinlock.c"
 17.2535 -
 17.2536  			>
 17.2537 -
 17.2538  		</File>
 17.2539 -
 17.2540  		<File
 17.2541 -
 17.2542  			RelativePath="..\..\src\stdlib\SDL_stdlib.c"
 17.2543 -
 17.2544  			>
 17.2545 -
 17.2546  		</File>
 17.2547 -
 17.2548  		<File
 17.2549 -
 17.2550  			RelativePath="..\..\src\video\SDL_stretch.c"
 17.2551 -
 17.2552  			>
 17.2553 -
 17.2554  		</File>
 17.2555 -
 17.2556  		<File
 17.2557 -
 17.2558  			RelativePath="..\..\src\stdlib\SDL_string.c"
 17.2559 -
 17.2560  			>
 17.2561 -
 17.2562  		</File>
 17.2563 -
 17.2564  		<File
 17.2565 -
 17.2566  			RelativePath="..\..\src\video\SDL_surface.c"
 17.2567 -
 17.2568  			>
 17.2569 -
 17.2570  		</File>
 17.2571 -
 17.2572  		<File
 17.2573 -
 17.2574  			RelativePath="..\..\src\audio\SDL_sysaudio.h"
 17.2575 -
 17.2576  			>
 17.2577 -
 17.2578  		</File>
 17.2579 -
 17.2580  		<File
 17.2581 -
 17.2582  			RelativePath="..\..\src\thread\generic\SDL_syscond.c"
 17.2583 -
 17.2584  			>
 17.2585 -
 17.2586  		</File>
 17.2587 -
 17.2588  		<File
 17.2589 -
 17.2590  			RelativePath="..\..\src\events\SDL_sysevents.h"
 17.2591 -
 17.2592  			>
 17.2593 -
 17.2594  		</File>
 17.2595 -
 17.2596  		<File
 17.2597 -
 17.2598  			RelativePath="..\..\src\haptic\windows\SDL_syshaptic.c"
 17.2599 -
 17.2600  			>
 17.2601 -
 17.2602  		</File>
 17.2603 -
 17.2604  		<File
 17.2605 -
 17.2606  			RelativePath="..\..\src\haptic\SDL_syshaptic.h"
 17.2607 -
 17.2608  			>
 17.2609 -
 17.2610  		</File>
 17.2611 -
 17.2612  		<File
 17.2613 -
 17.2614  			RelativePath="..\..\src\joystick\SDL_sysjoystick.h"
 17.2615 -
 17.2616  			>
 17.2617 -
 17.2618  		</File>
 17.2619 -
 17.2620  		<File
 17.2621 -
 17.2622  			RelativePath="..\..\src\loadso\windows\SDL_sysloadso.c"
 17.2623 -
 17.2624  			>
 17.2625 -
 17.2626  		</File>
 17.2627 -
 17.2628  		<File
 17.2629 -
 17.2630  			RelativePath="..\..\src\thread\windows\SDL_sysmutex.c"
 17.2631 -
 17.2632  			>
 17.2633 -
 17.2634  		</File>
 17.2635 -
 17.2636  		<File
 17.2637 -
 17.2638  			RelativePath="..\..\src\power\windows\SDL_syspower.c"
 17.2639 -
 17.2640  			>
 17.2641 -
 17.2642  		</File>
 17.2643 -
 17.2644  		<File
 17.2645 -
 17.2646  			RelativePath="..\..\src\render\SDL_sysrender.h"
 17.2647 -
 17.2648  			>
 17.2649 -
 17.2650  		</File>
 17.2651 -
 17.2652  		<File
 17.2653 -
 17.2654  			RelativePath="..\..\src\thread\windows\SDL_syssem.c"
 17.2655 -
 17.2656  			>
 17.2657 -
 17.2658  		</File>
 17.2659 -
 17.2660  		<File
 17.2661 -
 17.2662  			RelativePath="..\..\src\thread\windows\SDL_systhread.c"
 17.2663 -
 17.2664  			>
 17.2665 -
 17.2666  		</File>
 17.2667 -
 17.2668  		<File
 17.2669 -
 17.2670  			RelativePath="..\..\src\thread\SDL_systhread.h"
 17.2671 -
 17.2672  			>
 17.2673 -
 17.2674  		</File>
 17.2675 -
 17.2676  		<File
 17.2677 -
 17.2678  			RelativePath="..\..\src\thread\windows\SDL_systhread_c.h"
 17.2679 -
 17.2680  			>
 17.2681 -
 17.2682  		</File>
 17.2683 -
 17.2684  		<File
 17.2685 -
 17.2686  			RelativePath="..\..\src\timer\windows\SDL_systimer.c"
 17.2687 -
 17.2688  			>
 17.2689 -
 17.2690  		</File>
 17.2691 -
 17.2692  		<File
 17.2693 -
 17.2694  			RelativePath="..\..\src\timer\SDL_systimer.h"
 17.2695 -
 17.2696  			>
 17.2697 -
 17.2698  		</File>
 17.2699 -
 17.2700  		<File
 17.2701 -
 17.2702  			RelativePath="..\..\src\video\SDL_sysvideo.h"
 17.2703 -
 17.2704  			>
 17.2705 -
 17.2706  		</File>
 17.2707 -
 17.2708  		<File
 17.2709 -
 17.2710  			RelativePath="..\..\src\thread\SDL_thread.c"
 17.2711 -
 17.2712  			>
 17.2713 -
 17.2714  		</File>
 17.2715 -
 17.2716  		<File
 17.2717 -
 17.2718  			RelativePath="..\..\src\thread\SDL_thread_c.h"
 17.2719 -
 17.2720  			>
 17.2721 -
 17.2722  		</File>
 17.2723 -
 17.2724  		<File
 17.2725 -
 17.2726  			RelativePath="..\..\src\timer\SDL_timer.c"
 17.2727 -
 17.2728  			>
 17.2729 -
 17.2730  		</File>
 17.2731 -
 17.2732  		<File
 17.2733 -
 17.2734  			RelativePath="..\..\src\timer\SDL_timer_c.h"
 17.2735 -
 17.2736  			>
 17.2737 -
 17.2738  		</File>
 17.2739 -
 17.2740  		<File
 17.2741 -
 17.2742  			RelativePath="..\..\src\events\SDL_touch.c"
 17.2743 -
 17.2744  			>
 17.2745 -
 17.2746  		</File>
 17.2747 -
 17.2748  		<File
 17.2749 -
 17.2750  			RelativePath="..\..\src\events\SDL_touch_c.h"
 17.2751 -
 17.2752  			>
 17.2753 -
 17.2754  		</File>
 17.2755 -
 17.2756  		<File
 17.2757 -
 17.2758  			RelativePath="..\..\src\video\SDL_video.c"
 17.2759 -
 17.2760  			>
 17.2761 -
 17.2762  		</File>
 17.2763 -
 17.2764  		<File
 17.2765 -
 17.2766  			RelativePath="..\..\src\video\windows\SDL_vkeys.h"
 17.2767 -
 17.2768  			>
 17.2769 -
 17.2770  		</File>
 17.2771 -
 17.2772  		<File
 17.2773 -
 17.2774  			RelativePath="..\..\src\audio\SDL_wave.c"
 17.2775 -
 17.2776  			>
 17.2777 -
 17.2778  		</File>
 17.2779 -
 17.2780  		<File
 17.2781 -
 17.2782  			RelativePath="..\..\src\audio\SDL_wave.h"
 17.2783 -
 17.2784  			>
 17.2785 -
 17.2786  		</File>
 17.2787 -
 17.2788  		<File
 17.2789 -
 17.2790  			RelativePath="..\..\src\events\SDL_windowevents.c"
 17.2791 -
 17.2792  			>
 17.2793 -
 17.2794  		</File>
 17.2795 -
 17.2796  		<File
 17.2797 -
 17.2798  			RelativePath="..\..\src\events\SDL_windowevents_c.h"
 17.2799 -
 17.2800  			>
 17.2801 -
 17.2802  		</File>
 17.2803 -
 17.2804  		<File
 17.2805 -
 17.2806  			RelativePath="..\..\src\core\windows\SDL_windows.c"
 17.2807 -
 17.2808  			>
 17.2809 -
 17.2810  		</File>
 17.2811 -
 17.2812  		<File
 17.2813 -
 17.2814  			RelativePath="..\..\src\core\windows\SDL_windows.h"
 17.2815 -
 17.2816  			>
 17.2817 -
 17.2818  		</File>
 17.2819 -
 17.2820  		<File
 17.2821 -
 17.2822  			RelativePath="..\..\src\video\windows\SDL_windowsclipboard.c"
 17.2823 -
 17.2824  			>
 17.2825 -
 17.2826  		</File>
 17.2827 -
 17.2828  		<File
 17.2829 -
 17.2830  			RelativePath="..\..\src\video\windows\SDL_windowsclipboard.h"
 17.2831 -
 17.2832  			>
 17.2833 -
 17.2834  		</File>
 17.2835 -
 17.2836  		<File
 17.2837 -
 17.2838  			RelativePath="..\..\src\video\windows\SDL_windowsevents.c"
 17.2839 -
 17.2840  			>
 17.2841 -
 17.2842  		</File>
 17.2843 -
 17.2844  		<File
 17.2845 -
 17.2846  			RelativePath="..\..\src\video\windows\SDL_windowsevents.h"
 17.2847 -
 17.2848  			>
 17.2849 -
 17.2850  		</File>
 17.2851 -
 17.2852  		<File
 17.2853 -
 17.2854  			RelativePath="..\..\src\video\windows\SDL_windowsframebuffer.c"
 17.2855 -
 17.2856  			>
 17.2857 -
 17.2858  		</File>
 17.2859 -
 17.2860  		<File
 17.2861 -
 17.2862  			RelativePath="..\..\src\video\windows\SDL_windowsframebuffer.h"
 17.2863 -
 17.2864  			>
 17.2865 -
 17.2866  		</File>
 17.2867 -
 17.2868  		<File
 17.2869 -
 17.2870  			RelativePath="..\..\src\video\windows\SDL_windowskeyboard.c"
 17.2871 -
 17.2872  			>
 17.2873 -
 17.2874  		</File>
 17.2875 -
 17.2876  		<File
 17.2877 -
 17.2878  			RelativePath="..\..\src\video\windows\SDL_windowskeyboard.h"
 17.2879 -
 17.2880  			>
 17.2881 -
 17.2882  		</File>
 17.2883 -
 17.2884  		<File
 17.2885 -
 17.2886  			RelativePath="..\..\src\video\windows\SDL_windowsmessagebox.c"
 17.2887 -
 17.2888  			>
 17.2889 -
 17.2890  		</File>
 17.2891 -
 17.2892  		<File
 17.2893 -
 17.2894  			RelativePath="..\..\src\video\windows\SDL_windowsmessagebox.h"
 17.2895 -
 17.2896  			>
 17.2897 -
 17.2898  		</File>
 17.2899 -
 17.2900  		<File
 17.2901 -
 17.2902  			RelativePath="..\..\src\video\windows\SDL_windowsmodes.c"
 17.2903 -
 17.2904  			>
 17.2905 -
 17.2906  		</File>
 17.2907 -
 17.2908  		<File
 17.2909 -
 17.2910  			RelativePath="..\..\src\video\windows\SDL_windowsmodes.h"
 17.2911 -
 17.2912  			>
 17.2913 -
 17.2914  		</File>
 17.2915 -
 17.2916  		<File
 17.2917 -
 17.2918  			RelativePath="..\..\src\video\windows\SDL_windowsmouse.c"
 17.2919 -
 17.2920  			>
 17.2921 -
 17.2922  		</File>
 17.2923 -
 17.2924  		<File
 17.2925 -
 17.2926  			RelativePath="..\..\src\video\windows\SDL_windowsmouse.h"
 17.2927 -
 17.2928  			>
 17.2929 -
 17.2930  		</File>
 17.2931 -
 17.2932  		<File
 17.2933 -
 17.2934  			RelativePath="..\..\src\video\windows\SDL_windowsopengl.c"
 17.2935 -
 17.2936  			>
 17.2937 -
 17.2938  		</File>
 17.2939 -
 17.2940  		<File
 17.2941 -
 17.2942  			RelativePath="..\..\src\video\windows\SDL_windowsopengl.h"
 17.2943 -
 17.2944  			>
 17.2945 -
 17.2946  		</File>
 17.2947 -
 17.2948  		<File
 17.2949 -
 17.2950  			RelativePath="..\..\src\video\windows\SDL_windowsshape.c"
 17.2951 -
 17.2952  			>
 17.2953 -
 17.2954  		</File>
 17.2955 -
 17.2956  		<File
 17.2957 -
 17.2958  			RelativePath="..\..\src\video\windows\SDL_windowsshape.h"
 17.2959 -
 17.2960  			>
 17.2961 -
 17.2962  		</File>
 17.2963 -
 17.2964  		<File
 17.2965 -
 17.2966  			RelativePath="..\..\src\video\windows\SDL_windowsvideo.c"
 17.2967 -
 17.2968  			>
 17.2969 -
 17.2970  		</File>
 17.2971 -
 17.2972  		<File
 17.2973 -
 17.2974  			RelativePath="..\..\src\video\windows\SDL_windowsvideo.h"
 17.2975 -
 17.2976  			>
 17.2977 -
 17.2978  		</File>
 17.2979 -
 17.2980  		<File
 17.2981 -
 17.2982  			RelativePath="..\..\src\video\windows\SDL_windowswindow.c"
 17.2983 -
 17.2984  			>
 17.2985 -
 17.2986  		</File>
 17.2987 -
 17.2988  		<File
 17.2989 -
 17.2990  			RelativePath="..\..\src\video\windows\SDL_windowswindow.h"
 17.2991 -
 17.2992  			>
 17.2993 -
 17.2994  		</File>
 17.2995 -
 17.2996  		<File
 17.2997 -
 17.2998  			RelativePath="..\..\src\audio\winmm\SDL_winmm.c"
 17.2999 -
 17.3000  			>
 17.3001 -
 17.3002  		</File>
 17.3003 -
 17.3004  		<File
 17.3005 -
 17.3006  			RelativePath="..\..\src\audio\winmm\SDL_winmm.h"
 17.3007 -
 17.3008  			>
 17.3009 -
 17.3010  		</File>
 17.3011 -
 17.3012  		<File
 17.3013 -
 17.3014  			RelativePath="..\..\src\audio\xaudio2\SDL_xaudio2.c"
 17.3015 -
 17.3016  			>
 17.3017 -
 17.3018  		</File>
 17.3019 -
 17.3020  		<File
 17.3021 -
 17.3022  			RelativePath="..\..\src\render\SDL_yuv_mmx.c"
 17.3023 -
 17.3024  			>
 17.3025 -
 17.3026  		</File>
 17.3027 -
 17.3028  		<File
 17.3029 -
 17.3030  			RelativePath="..\..\src\render\SDL_yuv_sw.c"
 17.3031 -
 17.3032  			>
 17.3033 -
 17.3034  		</File>
 17.3035 -
 17.3036  		<File
 17.3037 -
 17.3038  			RelativePath="..\..\src\render\SDL_yuv_sw_c.h"
 17.3039 -
 17.3040  			>
 17.3041 -
 17.3042  		</File>
 17.3043 -
 17.3044  		<File
 17.3045 -
 17.3046  			RelativePath="..\..\src\main\windows\version.rc"
 17.3047 -
 17.3048  			>
 17.3049 -
 17.3050  		</File>
 17.3051 -
 17.3052  		<File
 17.3053 -
 17.3054  			RelativePath="..\..\src\video\windows\wmmsg.h"
 17.3055 -
 17.3056  			>
 17.3057 -
 17.3058  		</File>
 17.3059 -
 17.3060  	</Files>
 17.3061 -
 17.3062  	<Globals>
 17.3063 -
 17.3064  	</Globals>
 17.3065 -
 17.3066  </VisualStudioProject>
 17.3067 -
    18.1 --- a/VisualC/SDL/SDL_VS2010.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    18.2 +++ b/VisualC/SDL/SDL_VS2010.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    18.3 @@ -92,6 +92,7 @@
    18.4        <SuppressStartupBanner>true</SuppressStartupBanner>
    18.5        <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
    18.6        <CompileAs>Default</CompileAs>
    18.7 +      <ExceptionHandling>false</ExceptionHandling>
    18.8      </ClCompile>
    18.9      <ResourceCompile>
   18.10        <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   18.11 @@ -123,6 +124,7 @@
   18.12        </PrecompiledHeader>
   18.13        <WarningLevel>Level3</WarningLevel>
   18.14        <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
   18.15 +      <ExceptionHandling>false</ExceptionHandling>
   18.16      </ClCompile>
   18.17      <ResourceCompile>
   18.18        <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   18.19 @@ -159,6 +161,7 @@
   18.20        <WarningLevel>Level3</WarningLevel>
   18.21        <SuppressStartupBanner>true</SuppressStartupBanner>
   18.22        <CompileAs>Default</CompileAs>
   18.23 +      <ExceptionHandling>false</ExceptionHandling>
   18.24      </ClCompile>
   18.25      <ResourceCompile>
   18.26        <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   18.27 @@ -170,6 +173,8 @@
   18.28        <SubSystem>Windows</SubSystem>
   18.29        <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
   18.30        <GenerateDebugInformation>true</GenerateDebugInformation>
   18.31 +      <EnableCOMDATFolding>true</EnableCOMDATFolding>
   18.32 +      <OptimizeReferences>true</OptimizeReferences>
   18.33      </Link>
   18.34    </ItemDefinitionGroup>
   18.35    <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
   18.36 @@ -191,6 +196,7 @@
   18.37        <PrecompiledHeader>
   18.38        </PrecompiledHeader>
   18.39        <WarningLevel>Level3</WarningLevel>
   18.40 +      <ExceptionHandling>false</ExceptionHandling>
   18.41      </ClCompile>
   18.42      <ResourceCompile>
   18.43        <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   18.44 @@ -201,6 +207,9 @@
   18.45        <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
   18.46        <SubSystem>Windows</SubSystem>
   18.47        <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
   18.48 +      <GenerateDebugInformation>true</GenerateDebugInformation>
   18.49 +      <EnableCOMDATFolding>true</EnableCOMDATFolding>
   18.50 +      <OptimizeReferences>true</OptimizeReferences>
   18.51      </Link>
   18.52    </ItemDefinitionGroup>
   18.53    <ItemGroup>
   18.54 @@ -451,4 +460,4 @@
   18.55    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   18.56    <ImportGroup Label="ExtensionTargets">
   18.57    </ImportGroup>
   18.58 -</Project>
   18.59 +</Project>
   18.60 \ No newline at end of file
    19.1 --- a/VisualC/SDL/SDL_VS2012.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    19.2 +++ b/VisualC/SDL/SDL_VS2012.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    19.3 @@ -1,457 +1,467 @@
    19.4 -<?xml version="1.0" encoding="utf-8"?>
    19.5 -<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    19.6 -  <ItemGroup Label="ProjectConfigurations">
    19.7 -    <ProjectConfiguration Include="Debug|Win32">
    19.8 -      <Configuration>Debug</Configuration>
    19.9 -      <Platform>Win32</Platform>
   19.10 -    </ProjectConfiguration>
   19.11 -    <ProjectConfiguration Include="Debug|x64">
   19.12 -      <Configuration>Debug</Configuration>
   19.13 -      <Platform>x64</Platform>
   19.14 -    </ProjectConfiguration>
   19.15 -    <ProjectConfiguration Include="Release|Win32">
   19.16 -      <Configuration>Release</Configuration>
   19.17 -      <Platform>Win32</Platform>
   19.18 -    </ProjectConfiguration>
   19.19 -    <ProjectConfiguration Include="Release|x64">
   19.20 -      <Configuration>Release</Configuration>
   19.21 -      <Platform>x64</Platform>
   19.22 -    </ProjectConfiguration>
   19.23 -  </ItemGroup>
   19.24 -  <PropertyGroup Label="Globals">
   19.25 -    <ProjectName>SDL</ProjectName>
   19.26 -    <ProjectGuid>{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}</ProjectGuid>
   19.27 -    <RootNamespace>SDL</RootNamespace>
   19.28 -  </PropertyGroup>
   19.29 -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
   19.30 -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
   19.31 -    <ConfigurationType>DynamicLibrary</ConfigurationType>
   19.32 -    <UseOfMfc>false</UseOfMfc>
   19.33 -    <PlatformToolset>v110</PlatformToolset>
   19.34 -  </PropertyGroup>
   19.35 -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
   19.36 -    <ConfigurationType>DynamicLibrary</ConfigurationType>
   19.37 -    <UseOfMfc>false</UseOfMfc>
   19.38 -    <PlatformToolset>v110</PlatformToolset>
   19.39 -  </PropertyGroup>
   19.40 -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
   19.41 -    <ConfigurationType>DynamicLibrary</ConfigurationType>
   19.42 -    <UseOfMfc>false</UseOfMfc>
   19.43 -    <PlatformToolset>v110</PlatformToolset>
   19.44 -  </PropertyGroup>
   19.45 -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
   19.46 -    <ConfigurationType>DynamicLibrary</ConfigurationType>
   19.47 -    <UseOfMfc>false</UseOfMfc>
   19.48 -    <CharacterSet>MultiByte</CharacterSet>
   19.49 -    <PlatformToolset>v110</PlatformToolset>
   19.50 -  </PropertyGroup>
   19.51 -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
   19.52 -  <ImportGroup Label="ExtensionSettings">
   19.53 -  </ImportGroup>
   19.54 -  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
   19.55 -    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
   19.56 -    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
   19.57 -  </ImportGroup>
   19.58 -  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
   19.59 -    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
   19.60 -    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
   19.61 -  </ImportGroup>
   19.62 -  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
   19.63 -    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
   19.64 -    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
   19.65 -  </ImportGroup>
   19.66 -  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
   19.67 -    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
   19.68 -    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
   19.69 -  </ImportGroup>
   19.70 -  <PropertyGroup Label="UserMacros" />
   19.71 -  <PropertyGroup>
   19.72 -    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
   19.73 -    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
   19.74 -    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
   19.75 -    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
   19.76 -    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
   19.77 -    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
   19.78 -    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
   19.79 -    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
   19.80 -    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
   19.81 -  </PropertyGroup>
   19.82 -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
   19.83 -    <PreBuildEvent />
   19.84 -    <Midl>
   19.85 -      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   19.86 -      <MkTypLibCompatible>true</MkTypLibCompatible>
   19.87 -      <SuppressStartupBanner>true</SuppressStartupBanner>
   19.88 -      <TargetEnvironment>Win32</TargetEnvironment>
   19.89 -    </Midl>
   19.90 -    <ClCompile>
   19.91 -      <Optimization>Disabled</Optimization>
   19.92 -      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
   19.93 -      <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
   19.94 -      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
   19.95 -      <BufferSecurityCheck>false</BufferSecurityCheck>
   19.96 -      <PrecompiledHeader>
   19.97 -      </PrecompiledHeader>
   19.98 -      <WarningLevel>Level3</WarningLevel>
   19.99 -      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.100 -      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
  19.101 -      <CompileAs>Default</CompileAs>
  19.102 -    </ClCompile>
  19.103 -    <ResourceCompile>
  19.104 -      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.105 -      <Culture>0x0409</Culture>
  19.106 -    </ResourceCompile>
  19.107 -    <Link>
  19.108 -      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.109 -      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.110 -      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.111 -      <SubSystem>Windows</SubSystem>
  19.112 -      <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
  19.113 -      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
  19.114 -    </Link>
  19.115 -  </ItemDefinitionGroup>
  19.116 -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  19.117 -    <Midl>
  19.118 -      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.119 -      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.120 -      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.121 -      <TargetEnvironment>X64</TargetEnvironment>
  19.122 -    </Midl>
  19.123 -    <ClCompile>
  19.124 -      <Optimization>Disabled</Optimization>
  19.125 -      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.126 -      <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.127 -      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
  19.128 -      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.129 -      <PrecompiledHeader>
  19.130 -      </PrecompiledHeader>
  19.131 -      <WarningLevel>Level3</WarningLevel>
  19.132 -      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
  19.133 -    </ClCompile>
  19.134 -    <ResourceCompile>
  19.135 -      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.136 -      <Culture>0x0409</Culture>
  19.137 -    </ResourceCompile>
  19.138 -    <Link>
  19.139 -      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.140 -      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.141 -      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.142 -      <SubSystem>Windows</SubSystem>
  19.143 -      <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
  19.144 -      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
  19.145 -    </Link>
  19.146 -  </ItemDefinitionGroup>
  19.147 -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  19.148 -    <PreBuildEvent />
  19.149 -    <Midl>
  19.150 -      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.151 -      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.152 -      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.153 -      <TargetEnvironment>Win32</TargetEnvironment>
  19.154 -    </Midl>
  19.155 -    <ClCompile>
  19.156 -      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
  19.157 -      <IntrinsicFunctions>false</IntrinsicFunctions>
  19.158 -      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.159 -      <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.160 -      <StringPooling>true</StringPooling>
  19.161 -      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
  19.162 -      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.163 -      <FunctionLevelLinking>true</FunctionLevelLinking>
  19.164 -      <PrecompiledHeader>
  19.165 -      </PrecompiledHeader>
  19.166 -      <WarningLevel>Level3</WarningLevel>
  19.167 -      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.168 -      <CompileAs>Default</CompileAs>
  19.169 -    </ClCompile>
  19.170 -    <ResourceCompile>
  19.171 -      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.172 -      <Culture>0x0409</Culture>
  19.173 -    </ResourceCompile>
  19.174 -    <Link>
  19.175 -      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.176 -      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.177 -      <SubSystem>Windows</SubSystem>
  19.178 -      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
  19.179 -    </Link>
  19.180 -  </ItemDefinitionGroup>
  19.181 -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  19.182 -    <Midl>
  19.183 -      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.184 -      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.185 -      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.186 -      <TargetEnvironment>X64</TargetEnvironment>
  19.187 -    </Midl>
  19.188 -    <ClCompile>
  19.189 -      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
  19.190 -      <IntrinsicFunctions>false</IntrinsicFunctions>
  19.191 -      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.192 -      <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.193 -      <StringPooling>true</StringPooling>
  19.194 -      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
  19.195 -      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.196 -      <FunctionLevelLinking>true</FunctionLevelLinking>
  19.197 -      <PrecompiledHeader>
  19.198 -      </PrecompiledHeader>
  19.199 -      <WarningLevel>Level3</WarningLevel>
  19.200 -    </ClCompile>
  19.201 -    <ResourceCompile>
  19.202 -      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.203 -      <Culture>0x0409</Culture>
  19.204 -    </ResourceCompile>
  19.205 -    <Link>
  19.206 -      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.207 -      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.208 -      <SubSystem>Windows</SubSystem>
  19.209 -      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
  19.210 -    </Link>
  19.211 -  </ItemDefinitionGroup>
  19.212 -  <ItemGroup>
  19.213 -    <ClInclude Include="..\..\include\SDL.h" />
  19.214 -    <ClInclude Include="..\..\include\SDL_assert.h" />
  19.215 -    <ClInclude Include="..\..\include\SDL_atomic.h" />
  19.216 -    <ClInclude Include="..\..\include\SDL_audio.h" />
  19.217 -    <ClInclude Include="..\..\include\SDL_bits.h" />
  19.218 -    <ClInclude Include="..\..\include\SDL_blendmode.h" />
  19.219 -    <ClInclude Include="..\..\include\SDL_clipboard.h" />
  19.220 -    <ClInclude Include="..\..\include\SDL_config.h" />
  19.221 -    <ClInclude Include="..\..\include\SDL_config_windows.h" />
  19.222 -    <ClInclude Include="..\..\include\SDL_copying.h" />
  19.223 -    <ClInclude Include="..\..\include\SDL_cpuinfo.h" />
  19.224 -    <ClInclude Include="..\..\include\SDL_endian.h" />
  19.225 -    <ClInclude Include="..\..\include\SDL_error.h" />
  19.226 -    <ClInclude Include="..\..\include\SDL_events.h" />
  19.227 -    <ClInclude Include="..\..\include\SDL_gesture.h" />
  19.228 -    <ClInclude Include="..\..\include\SDL_haptic.h" />
  19.229 -    <ClInclude Include="..\..\include\SDL_hints.h" />
  19.230 -    <ClInclude Include="..\..\include\SDL_joystick.h" />
  19.231 -    <ClInclude Include="..\..\include\SDL_keyboard.h" />
  19.232 -    <ClInclude Include="..\..\include\SDL_keycode.h" />
  19.233 -    <ClInclude Include="..\..\include\SDL_loadso.h" />
  19.234 -    <ClInclude Include="..\..\include\SDL_log.h" />
  19.235 -    <ClInclude Include="..\..\include\SDL_main.h" />
  19.236 -    <ClInclude Include="..\..\include\SDL_mouse.h" />
  19.237 -    <ClInclude Include="..\..\include\SDL_mutex.h" />
  19.238 -    <ClInclude Include="..\..\include\SDL_name.h" />
  19.239 -    <ClInclude Include="..\..\include\SDL_opengl.h" />
  19.240 -    <ClInclude Include="..\..\include\SDL_opengles.h" />
  19.241 -    <ClInclude Include="..\..\include\SDL_pixels.h" />
  19.242 -    <ClInclude Include="..\..\include\SDL_platform.h" />
  19.243 -    <ClInclude Include="..\..\include\SDL_power.h" />
  19.244 -    <ClInclude Include="..\..\include\SDL_quit.h" />
  19.245 -    <ClInclude Include="..\..\include\SDL_rect.h" />
  19.246 -    <ClInclude Include="..\..\include\SDL_render.h" />
  19.247 -    <ClInclude Include="..\..\include\SDL_revision.h" />
  19.248 -    <ClInclude Include="..\..\include\SDL_rwops.h" />
  19.249 -    <ClInclude Include="..\..\include\SDL_scancode.h" />
  19.250 -    <ClInclude Include="..\..\include\SDL_shape.h" />
  19.251 -    <ClInclude Include="..\..\include\SDL_stdinc.h" />
  19.252 -    <ClInclude Include="..\..\include\SDL_surface.h" />
  19.253 -    <ClInclude Include="..\..\include\SDL_system.h" />
  19.254 -    <ClInclude Include="..\..\include\SDL_syswm.h" />
  19.255 -    <ClInclude Include="..\..\include\SDL_thread.h" />
  19.256 -    <ClInclude Include="..\..\include\SDL_timer.h" />
  19.257 -    <ClInclude Include="..\..\include\SDL_touch.h" />
  19.258 -    <ClInclude Include="..\..\include\SDL_types.h" />
  19.259 -    <ClInclude Include="..\..\include\SDL_version.h" />
  19.260 -    <ClInclude Include="..\..\include\SDL_video.h" />
  19.261 -    <ClInclude Include="..\..\include\SDL_gamecontroller.h" />
  19.262 -    <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
  19.263 -    <ClInclude Include="..\..\src\events\blank_cursor.h" />
  19.264 -    <ClInclude Include="..\..\src\events\default_cursor.h" />
  19.265 -    <ClInclude Include="..\..\src\audio\directsound\directx.h" />
  19.266 -    <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
  19.267 -    <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
  19.268 -    <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
  19.269 -    <ClInclude Include="..\..\src\libm\math.h" />
  19.270 -    <ClInclude Include="..\..\src\libm\math_private.h" />
  19.271 -    <ClInclude Include="..\..\src\render\mmx.h" />
  19.272 -    <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
  19.273 -    <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
  19.274 -    <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
  19.275 -    <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
  19.276 -    <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" />
  19.277 -    <ClInclude Include="..\..\src\audio\SDL_audiomem.h" />
  19.278 -    <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
  19.279 -    <ClInclude Include="..\..\src\render\software\SDL_blendline.h" />
  19.280 -    <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" />
  19.281 -    <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
  19.282 -    <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
  19.283 -    <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
  19.284 -    <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
  19.285 -    <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
  19.286 -    <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
  19.287 -    <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
  19.288 -    <ClInclude Include="..\..\src\video\SDL_blit.h" />
  19.289 -    <ClInclude Include="..\..\src\video\SDL_blit_auto.h" />
  19.290 -    <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
  19.291 -    <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
  19.292 -    <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
  19.293 -    <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
  19.294 -    <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
  19.295 -    <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
  19.296 -    <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
  19.297 -    <ClInclude Include="..\..\src\SDL_error_c.h" />
  19.298 -    <ClInclude Include="..\..\src\SDL_hints_c.h" />
  19.299 -    <ClInclude Include="..\..\src\events\SDL_events_c.h" />
  19.300 -    <ClInclude Include="..\..\src\SDL_fatal.h" />
  19.301 -    <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" />
  19.302 -    <ClInclude Include="..\..\src\video\SDL_glfuncs.h" />
  19.303 -    <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
  19.304 -    <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
  19.305 -    <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
  19.306 -    <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
  19.307 -    <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
  19.308 -    <ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
  19.309 -    <ClInclude Include="..\..\src\video\SDL_rect_c.h" />
  19.310 -    <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
  19.311 -    <ClInclude Include="..\..\src\video\SDL_stretch_c.h" />
  19.312 -    <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
  19.313 -    <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
  19.314 -    <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
  19.315 -    <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
  19.316 -    <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
  19.317 -    <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
  19.318 -    <ClInclude Include="..\..\src\timer\SDL_systimer.h" />
  19.319 -    <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
  19.320 -    <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
  19.321 -    <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
  19.322 -    <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" />
  19.323 -    <ClInclude Include="..\..\src\audio\SDL_wave.h" />
  19.324 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" />
  19.325 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" />
  19.326 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" />
  19.327 -    <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" />
  19.328 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" />
  19.329 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" />
  19.330 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsmouse.h" />
  19.331 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
  19.332 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
  19.333 -    <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
  19.334 -    <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
  19.335 -    <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
  19.336 -    <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
  19.337 -    <ClInclude Include="resource.h" />
  19.338 -  </ItemGroup>
  19.339 -  <ItemGroup>
  19.340 -    <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
  19.341 -    <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" />
  19.342 -    <ClCompile Include="..\..\src\events\SDL_gesture.c" />
  19.343 -    <ClCompile Include="..\..\src\events\SDL_touch.c" />
  19.344 -    <ClCompile Include="..\..\src\libm\e_atan2.c" />
  19.345 -    <ClCompile Include="..\..\src\libm\e_log.c" />
  19.346 -    <ClCompile Include="..\..\src\libm\e_pow.c" />
  19.347 -    <ClCompile Include="..\..\src\libm\e_rem_pio2.c" />
  19.348 -    <ClCompile Include="..\..\src\libm\e_sqrt.c" />
  19.349 -    <ClCompile Include="..\..\src\libm\k_cos.c" />
  19.350 -    <ClCompile Include="..\..\src\libm\k_rem_pio2.c" />
  19.351 -    <ClCompile Include="..\..\src\libm\k_sin.c" />
  19.352 -    <ClCompile Include="..\..\src\libm\s_atan.c" />
  19.353 -    <ClCompile Include="..\..\src\libm\s_copysign.c" />
  19.354 -    <ClCompile Include="..\..\src\libm\s_cos.c" />
  19.355 -    <ClCompile Include="..\..\src\libm\s_fabs.c" />
  19.356 -    <ClCompile Include="..\..\src\libm\s_floor.c" />
  19.357 -    <ClCompile Include="..\..\src\libm\s_scalbn.c" />
  19.358 -    <ClCompile Include="..\..\src\libm\s_sin.c" />
  19.359 -    <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" />
  19.360 -    <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" />
  19.361 -    <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
  19.362 -    <ClCompile Include="..\..\src\render\SDL_render.c" />
  19.363 -    <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
  19.364 -    <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
  19.365 -    <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
  19.366 -    <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
  19.367 -    <ClCompile Include="..\..\src\render\software\SDL_blendpoint.c" />
  19.368 -    <ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
  19.369 -    <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
  19.370 -    <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
  19.371 -    <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
  19.372 -    <ClCompile Include="..\..\src\SDL.c" />
  19.373 -    <ClCompile Include="..\..\src\SDL_assert.c" />
  19.374 -    <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
  19.375 -    <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" />
  19.376 -    <ClCompile Include="..\..\src\audio\SDL_audio.c" />
  19.377 -    <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" />
  19.378 -    <ClCompile Include="..\..\src\audio\SDL_audiodev.c" />
  19.379 -    <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
  19.380 -    <ClCompile Include="..\..\src\SDL_hints.c" />
  19.381 -    <ClCompile Include="..\..\src\SDL_log.c" />
  19.382 -    <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" />
  19.383 -    <ClCompile Include="..\..\src\video\SDL_blit.c" />
  19.384 -    <ClCompile Include="..\..\src\video\SDL_blit_0.c" />
  19.385 -    <ClCompile Include="..\..\src\video\SDL_blit_1.c" />
  19.386 -    <ClCompile Include="..\..\src\video\SDL_blit_A.c" />
  19.387 -    <ClCompile Include="..\..\src\video\SDL_blit_auto.c" />
  19.388 -    <ClCompile Include="..\..\src\video\SDL_blit_copy.c" />
  19.389 -    <ClCompile Include="..\..\src\video\SDL_blit_N.c" />
  19.390 -    <ClCompile Include="..\..\src\video\SDL_blit_slow.c" />
  19.391 -    <ClCompile Include="..\..\src\video\SDL_bmp.c" />
  19.392 -    <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" />
  19.393 -    <ClCompile Include="..\..\src\video\SDL_clipboard.c" />
  19.394 -    <ClCompile Include="..\..\src\video\SDL_shape.c" />
  19.395 -    <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
  19.396 -    <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" />
  19.397 -    <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
  19.398 -    <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" />
  19.399 -    <ClCompile Include="..\..\src\events\SDL_dropevents.c" />
  19.400 -    <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
  19.401 -    <ClCompile Include="..\..\src\joystick\windows\SDL_dxjoystick.c" />
  19.402 -    <ClCompile Include="..\..\src\SDL_error.c" />
  19.403 -    <ClCompile Include="..\..\src\events\SDL_events.c" />
  19.404 -    <ClCompile Include="..\..\src\SDL_fatal.c" />
  19.405 -    <ClCompile Include="..\..\src\video\SDL_fillrect.c" />
  19.406 -    <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" />
  19.407 -    <ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
  19.408 -    <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" />
  19.409 -    <ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
  19.410 -    <ClCompile Include="..\..\src\events\SDL_keyboard.c" />
  19.411 -    <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" />
  19.412 -    <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
  19.413 -    <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" />
  19.414 -    <ClCompile Include="..\..\src\events\SDL_mouse.c" />
  19.415 -    <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" />
  19.416 -    <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" />
  19.417 -    <ClCompile Include="..\..\src\video\SDL_pixels.c" />
  19.418 -    <ClCompile Include="..\..\src\power\SDL_power.c" />
  19.419 -    <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" />
  19.420 -    <ClCompile Include="..\..\src\events\SDL_quit.c" />
  19.421 -    <ClCompile Include="..\..\src\video\SDL_rect.c" />
  19.422 -    <ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
  19.423 -    <ClCompile Include="..\..\src\file\SDL_rwops.c" />
  19.424 -    <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" />
  19.425 -    <ClCompile Include="..\..\src\video\SDL_stretch.c" />
  19.426 -    <ClCompile Include="..\..\src\stdlib\SDL_string.c" />
  19.427 -    <ClCompile Include="..\..\src\video\SDL_surface.c" />
  19.428 -    <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" />
  19.429 -    <ClCompile Include="..\..\src\haptic\windows\SDL_syshaptic.c" />
  19.430 -    <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
  19.431 -    <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" />
  19.432 -    <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" />
  19.433 -    <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" />
  19.434 -    <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" />
  19.435 -    <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" />
  19.436 -    <ClCompile Include="..\..\src\thread\SDL_thread.c" />
  19.437 -    <ClCompile Include="..\..\src\timer\SDL_timer.c" />
  19.438 -    <ClCompile Include="..\..\src\video\SDL_video.c" />
  19.439 -    <ClCompile Include="..\..\src\audio\SDL_wave.c" />
  19.440 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
  19.441 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
  19.442 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
  19.443 -    <ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
  19.444 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
  19.445 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
  19.446 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
  19.447 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsopengl.c" />
  19.448 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsshape.c" />
  19.449 -    <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
  19.450 -    <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
  19.451 -    <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
  19.452 -    <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" />
  19.453 -  </ItemGroup>
  19.454 -  <ItemGroup>
  19.455 -    <ResourceCompile Include="..\..\src\main\windows\version.rc" />
  19.456 -  </ItemGroup>
  19.457 -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  19.458 -  <ImportGroup Label="ExtensionTargets">
  19.459 -  </ImportGroup>
  19.460 -</Project>
  19.461 +<?xml version="1.0" encoding="utf-8"?>
  19.462 +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  19.463 +  <ItemGroup Label="ProjectConfigurations">
  19.464 +    <ProjectConfiguration Include="Debug|Win32">
  19.465 +      <Configuration>Debug</Configuration>
  19.466 +      <Platform>Win32</Platform>
  19.467 +    </ProjectConfiguration>
  19.468 +    <ProjectConfiguration Include="Debug|x64">
  19.469 +      <Configuration>Debug</Configuration>
  19.470 +      <Platform>x64</Platform>
  19.471 +    </ProjectConfiguration>
  19.472 +    <ProjectConfiguration Include="Release|Win32">
  19.473 +      <Configuration>Release</Configuration>
  19.474 +      <Platform>Win32</Platform>
  19.475 +    </ProjectConfiguration>
  19.476 +    <ProjectConfiguration Include="Release|x64">
  19.477 +      <Configuration>Release</Configuration>
  19.478 +      <Platform>x64</Platform>
  19.479 +    </ProjectConfiguration>
  19.480 +  </ItemGroup>
  19.481 +  <PropertyGroup Label="Globals">
  19.482 +    <ProjectName>SDL</ProjectName>
  19.483 +    <ProjectGuid>{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}</ProjectGuid>
  19.484 +    <RootNamespace>SDL</RootNamespace>
  19.485 +  </PropertyGroup>
  19.486 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  19.487 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
  19.488 +    <ConfigurationType>DynamicLibrary</ConfigurationType>
  19.489 +    <UseOfMfc>false</UseOfMfc>
  19.490 +    <PlatformToolset>v110</PlatformToolset>
  19.491 +  </PropertyGroup>
  19.492 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
  19.493 +    <ConfigurationType>DynamicLibrary</ConfigurationType>
  19.494 +    <UseOfMfc>false</UseOfMfc>
  19.495 +    <PlatformToolset>v110</PlatformToolset>
  19.496 +  </PropertyGroup>
  19.497 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
  19.498 +    <ConfigurationType>DynamicLibrary</ConfigurationType>
  19.499 +    <UseOfMfc>false</UseOfMfc>
  19.500 +    <PlatformToolset>v110</PlatformToolset>
  19.501 +  </PropertyGroup>
  19.502 +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
  19.503 +    <ConfigurationType>DynamicLibrary</ConfigurationType>
  19.504 +    <UseOfMfc>false</UseOfMfc>
  19.505 +    <CharacterSet>MultiByte</CharacterSet>
  19.506 +    <PlatformToolset>v110</PlatformToolset>
  19.507 +  </PropertyGroup>
  19.508 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  19.509 +  <ImportGroup Label="ExtensionSettings">
  19.510 +  </ImportGroup>
  19.511 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
  19.512 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  19.513 +    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
  19.514 +  </ImportGroup>
  19.515 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
  19.516 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  19.517 +    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
  19.518 +  </ImportGroup>
  19.519 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
  19.520 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  19.521 +    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
  19.522 +  </ImportGroup>
  19.523 +  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
  19.524 +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  19.525 +    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" />
  19.526 +  </ImportGroup>
  19.527 +  <PropertyGroup Label="UserMacros" />
  19.528 +  <PropertyGroup>
  19.529 +    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
  19.530 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir>
  19.531 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir>
  19.532 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir>
  19.533 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir>
  19.534 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir>
  19.535 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir>
  19.536 +    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir>
  19.537 +    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir>
  19.538 +  </PropertyGroup>
  19.539 +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
  19.540 +    <PreBuildEvent />
  19.541 +    <Midl>
  19.542 +      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.543 +      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.544 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.545 +      <TargetEnvironment>Win32</TargetEnvironment>
  19.546 +    </Midl>
  19.547 +    <ClCompile>
  19.548 +      <Optimization>Disabled</Optimization>
  19.549 +      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.550 +      <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.551 +      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
  19.552 +      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.553 +      <PrecompiledHeader>
  19.554 +      </PrecompiledHeader>
  19.555 +      <WarningLevel>Level3</WarningLevel>
  19.556 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.557 +      <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
  19.558 +      <CompileAs>Default</CompileAs>
  19.559 +      <ExceptionHandling>false</ExceptionHandling>
  19.560 +    </ClCompile>
  19.561 +    <ResourceCompile>
  19.562 +      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.563 +      <Culture>0x0409</Culture>
  19.564 +    </ResourceCompile>
  19.565 +    <Link>
  19.566 +      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.567 +      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.568 +      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.569 +      <SubSystem>Windows</SubSystem>
  19.570 +      <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
  19.571 +      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
  19.572 +    </Link>
  19.573 +  </ItemDefinitionGroup>
  19.574 +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  19.575 +    <Midl>
  19.576 +      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.577 +      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.578 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.579 +      <TargetEnvironment>X64</TargetEnvironment>
  19.580 +    </Midl>
  19.581 +    <ClCompile>
  19.582 +      <Optimization>Disabled</Optimization>
  19.583 +      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.584 +      <PreprocessorDefinitions>_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.585 +      <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
  19.586 +      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.587 +      <PrecompiledHeader>
  19.588 +      </PrecompiledHeader>
  19.589 +      <WarningLevel>Level3</WarningLevel>
  19.590 +      <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
  19.591 +      <ExceptionHandling>false</ExceptionHandling>
  19.592 +    </ClCompile>
  19.593 +    <ResourceCompile>
  19.594 +      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.595 +      <Culture>0x0409</Culture>
  19.596 +    </ResourceCompile>
  19.597 +    <Link>
  19.598 +      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.599 +      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.600 +      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.601 +      <SubSystem>Windows</SubSystem>
  19.602 +      <CLRUnmanagedCodeCheck>false</CLRUnmanagedCodeCheck>
  19.603 +      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
  19.604 +    </Link>
  19.605 +  </ItemDefinitionGroup>
  19.606 +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  19.607 +    <PreBuildEvent />
  19.608 +    <Midl>
  19.609 +      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.610 +      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.611 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.612 +      <TargetEnvironment>Win32</TargetEnvironment>
  19.613 +    </Midl>
  19.614 +    <ClCompile>
  19.615 +      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
  19.616 +      <IntrinsicFunctions>false</IntrinsicFunctions>
  19.617 +      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.618 +      <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.619 +      <StringPooling>true</StringPooling>
  19.620 +      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
  19.621 +      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.622 +      <FunctionLevelLinking>true</FunctionLevelLinking>
  19.623 +      <PrecompiledHeader>
  19.624 +      </PrecompiledHeader>
  19.625 +      <WarningLevel>Level3</WarningLevel>
  19.626 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.627 +      <CompileAs>Default</CompileAs>
  19.628 +      <ExceptionHandling>false</ExceptionHandling>
  19.629 +    </ClCompile>
  19.630 +    <ResourceCompile>
  19.631 +      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.632 +      <Culture>0x0409</Culture>
  19.633 +    </ResourceCompile>
  19.634 +    <Link>
  19.635 +      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.636 +      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.637 +      <SubSystem>Windows</SubSystem>
  19.638 +      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x86</AdditionalLibraryDirectories>
  19.639 +      <OptimizeReferences>true</OptimizeReferences>
  19.640 +      <EnableCOMDATFolding>true</EnableCOMDATFolding>
  19.641 +      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.642 +    </Link>
  19.643 +  </ItemDefinitionGroup>
  19.644 +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  19.645 +    <Midl>
  19.646 +      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.647 +      <MkTypLibCompatible>true</MkTypLibCompatible>
  19.648 +      <SuppressStartupBanner>true</SuppressStartupBanner>
  19.649 +      <TargetEnvironment>X64</TargetEnvironment>
  19.650 +    </Midl>
  19.651 +    <ClCompile>
  19.652 +      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
  19.653 +      <IntrinsicFunctions>false</IntrinsicFunctions>
  19.654 +      <AdditionalIncludeDirectories>..\..\include;%(AdditionalIncludeDirectories);"$(DXSDK_DIR)\Include";</AdditionalIncludeDirectories>
  19.655 +      <PreprocessorDefinitions>NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.656 +      <StringPooling>true</StringPooling>
  19.657 +      <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
  19.658 +      <BufferSecurityCheck>false</BufferSecurityCheck>
  19.659 +      <FunctionLevelLinking>true</FunctionLevelLinking>
  19.660 +      <PrecompiledHeader>
  19.661 +      </PrecompiledHeader>
  19.662 +      <WarningLevel>Level3</WarningLevel>
  19.663 +      <ExceptionHandling>false</ExceptionHandling>
  19.664 +    </ClCompile>
  19.665 +    <ResourceCompile>
  19.666 +      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  19.667 +      <Culture>0x0409</Culture>
  19.668 +    </ResourceCompile>
  19.669 +    <Link>
  19.670 +      <AdditionalDependencies>winmm.lib;imm32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
  19.671 +      <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
  19.672 +      <SubSystem>Windows</SubSystem>
  19.673 +      <AdditionalLibraryDirectories>$(DXSDK_DIR)\lib\x64</AdditionalLibraryDirectories>
  19.674 +      <OptimizeReferences>true</OptimizeReferences>
  19.675 +      <EnableCOMDATFolding>true</EnableCOMDATFolding>
  19.676 +      <GenerateDebugInformation>true</GenerateDebugInformation>
  19.677 +    </Link>
  19.678 +  </ItemDefinitionGroup>
  19.679 +  <ItemGroup>
  19.680 +    <ClInclude Include="..\..\include\SDL.h" />
  19.681 +    <ClInclude Include="..\..\include\SDL_assert.h" />
  19.682 +    <ClInclude Include="..\..\include\SDL_atomic.h" />
  19.683 +    <ClInclude Include="..\..\include\SDL_audio.h" />
  19.684 +    <ClInclude Include="..\..\include\SDL_bits.h" />
  19.685 +    <ClInclude Include="..\..\include\SDL_blendmode.h" />
  19.686 +    <ClInclude Include="..\..\include\SDL_clipboard.h" />
  19.687 +    <ClInclude Include="..\..\include\SDL_config.h" />
  19.688 +    <ClInclude Include="..\..\include\SDL_config_windows.h" />
  19.689 +    <ClInclude Include="..\..\include\SDL_copying.h" />
  19.690 +    <ClInclude Include="..\..\include\SDL_cpuinfo.h" />
  19.691 +    <ClInclude Include="..\..\include\SDL_endian.h" />
  19.692 +    <ClInclude Include="..\..\include\SDL_error.h" />
  19.693 +    <ClInclude Include="..\..\include\SDL_events.h" />
  19.694 +    <ClInclude Include="..\..\include\SDL_gesture.h" />
  19.695 +    <ClInclude Include="..\..\include\SDL_haptic.h" />
  19.696 +    <ClInclude Include="..\..\include\SDL_hints.h" />
  19.697 +    <ClInclude Include="..\..\include\SDL_joystick.h" />
  19.698 +    <ClInclude Include="..\..\include\SDL_keyboard.h" />
  19.699 +    <ClInclude Include="..\..\include\SDL_keycode.h" />
  19.700 +    <ClInclude Include="..\..\include\SDL_loadso.h" />
  19.701 +    <ClInclude Include="..\..\include\SDL_log.h" />
  19.702 +    <ClInclude Include="..\..\include\SDL_main.h" />
  19.703 +    <ClInclude Include="..\..\include\SDL_mouse.h" />
  19.704 +    <ClInclude Include="..\..\include\SDL_mutex.h" />
  19.705 +    <ClInclude Include="..\..\include\SDL_name.h" />
  19.706 +    <ClInclude Include="..\..\include\SDL_opengl.h" />
  19.707 +    <ClInclude Include="..\..\include\SDL_opengles.h" />
  19.708 +    <ClInclude Include="..\..\include\SDL_pixels.h" />
  19.709 +    <ClInclude Include="..\..\include\SDL_platform.h" />
  19.710 +    <ClInclude Include="..\..\include\SDL_power.h" />
  19.711 +    <ClInclude Include="..\..\include\SDL_quit.h" />
  19.712 +    <ClInclude Include="..\..\include\SDL_rect.h" />
  19.713 +    <ClInclude Include="..\..\include\SDL_render.h" />
  19.714 +    <ClInclude Include="..\..\include\SDL_revision.h" />
  19.715 +    <ClInclude Include="..\..\include\SDL_rwops.h" />
  19.716 +    <ClInclude Include="..\..\include\SDL_scancode.h" />
  19.717 +    <ClInclude Include="..\..\include\SDL_shape.h" />
  19.718 +    <ClInclude Include="..\..\include\SDL_stdinc.h" />
  19.719 +    <ClInclude Include="..\..\include\SDL_surface.h" />
  19.720 +    <ClInclude Include="..\..\include\SDL_system.h" />
  19.721 +    <ClInclude Include="..\..\include\SDL_syswm.h" />
  19.722 +    <ClInclude Include="..\..\include\SDL_thread.h" />
  19.723 +    <ClInclude Include="..\..\include\SDL_timer.h" />
  19.724 +    <ClInclude Include="..\..\include\SDL_touch.h" />
  19.725 +    <ClInclude Include="..\..\include\SDL_types.h" />
  19.726 +    <ClInclude Include="..\..\include\SDL_version.h" />
  19.727 +    <ClInclude Include="..\..\include\SDL_video.h" />
  19.728 +    <ClInclude Include="..\..\include\SDL_gamecontroller.h" />
  19.729 +    <ClInclude Include="..\..\src\core\windows\SDL_windows.h" />
  19.730 +    <ClInclude Include="..\..\src\events\blank_cursor.h" />
  19.731 +    <ClInclude Include="..\..\src\events\default_cursor.h" />
  19.732 +    <ClInclude Include="..\..\src\audio\directsound\directx.h" />
  19.733 +    <ClInclude Include="..\..\src\events\SDL_clipboardevents_c.h" />
  19.734 +    <ClInclude Include="..\..\src\events\SDL_gesture_c.h" />
  19.735 +    <ClInclude Include="..\..\src\events\SDL_touch_c.h" />
  19.736 +    <ClInclude Include="..\..\src\libm\math.h" />
  19.737 +    <ClInclude Include="..\..\src\libm\math_private.h" />
  19.738 +    <ClInclude Include="..\..\src\render\mmx.h" />
  19.739 +    <ClInclude Include="..\..\src\render\opengl\SDL_shaders_gl.h" />
  19.740 +    <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
  19.741 +    <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
  19.742 +    <ClInclude Include="..\..\src\audio\SDL_audio_c.h" />
  19.743 +    <ClInclude Include="..\..\src\audio\SDL_audiodev_c.h" />
  19.744 +    <ClInclude Include="..\..\src\audio\SDL_audiomem.h" />
  19.745 +    <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
  19.746 +    <ClInclude Include="..\..\src\render\software\SDL_blendline.h" />
  19.747 +    <ClInclude Include="..\..\src\render\software\SDL_blendpoint.h" />
  19.748 +    <ClInclude Include="..\..\src\render\software\SDL_draw.h" />
  19.749 +    <ClInclude Include="..\..\src\render\software\SDL_drawline.h" />
  19.750 +    <ClInclude Include="..\..\src\render\software\SDL_drawpoint.h" />
  19.751 +    <ClInclude Include="..\..\src\events\SDL_dropevents_c.h" />
  19.752 +    <ClInclude Include="..\..\src\render\software\SDL_render_sw_c.h" />
  19.753 +    <ClInclude Include="..\..\src\render\software\SDL_rotate.h" />
  19.754 +    <ClInclude Include="..\..\src\video\dummy\SDL_nullframebuffer_c.h" />
  19.755 +    <ClInclude Include="..\..\src\video\SDL_blit.h" />
  19.756 +    <ClInclude Include="..\..\src\video\SDL_blit_auto.h" />
  19.757 +    <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
  19.758 +    <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
  19.759 +    <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
  19.760 +    <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
  19.761 +    <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
  19.762 +    <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
  19.763 +    <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
  19.764 +    <ClInclude Include="..\..\src\SDL_error_c.h" />
  19.765 +    <ClInclude Include="..\..\src\SDL_hints_c.h" />
  19.766 +    <ClInclude Include="..\..\src\events\SDL_events_c.h" />
  19.767 +    <ClInclude Include="..\..\src\SDL_fatal.h" />
  19.768 +    <ClInclude Include="..\..\src\video\SDL_glesfuncs.h" />
  19.769 +    <ClInclude Include="..\..\src\video\SDL_glfuncs.h" />
  19.770 +    <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
  19.771 +    <ClInclude Include="..\..\src\events\SDL_keyboard_c.h" />
  19.772 +    <ClInclude Include="..\..\src\events\SDL_mouse_c.h" />
  19.773 +    <ClInclude Include="..\..\src\video\dummy\SDL_nullevents_c.h" />
  19.774 +    <ClInclude Include="..\..\src\video\dummy\SDL_nullvideo.h" />
  19.775 +    <ClInclude Include="..\..\src\video\SDL_pixels_c.h" />
  19.776 +    <ClInclude Include="..\..\src\video\SDL_rect_c.h" />
  19.777 +    <ClInclude Include="..\..\src\video\SDL_RLEaccel_c.h" />
  19.778 +    <ClInclude Include="..\..\src\video\SDL_stretch_c.h" />
  19.779 +    <ClInclude Include="..\..\src\audio\SDL_sysaudio.h" />
  19.780 +    <ClInclude Include="..\..\src\events\SDL_sysevents.h" />
  19.781 +    <ClInclude Include="..\..\src\haptic\SDL_syshaptic.h" />
  19.782 +    <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
  19.783 +    <ClInclude Include="..\..\src\thread\SDL_systhread.h" />
  19.784 +    <ClInclude Include="..\..\src\thread\windows\SDL_systhread_c.h" />
  19.785 +    <ClInclude Include="..\..\src\timer\SDL_systimer.h" />
  19.786 +    <ClInclude Include="..\..\src\video\SDL_sysvideo.h" />
  19.787 +    <ClInclude Include="..\..\src\thread\SDL_thread_c.h" />
  19.788 +    <ClInclude Include="..\..\src\timer\SDL_timer_c.h" />
  19.789 +    <ClInclude Include="..\..\src\video\windows\SDL_vkeys.h" />
  19.790 +    <ClInclude Include="..\..\src\audio\SDL_wave.h" />
  19.791 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsclipboard.h" />
  19.792 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsevents.h" />
  19.793 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsframebuffer.h" />
  19.794 +    <ClInclude Include="..\..\src\video\windows\SDL_windowskeyboard.h" />
  19.795 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsmessagebox.h" />
  19.796 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsmodes.h" />
  19.797 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsmouse.h" />
  19.798 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsopengl.h" />
  19.799 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsshape.h" />
  19.800 +    <ClInclude Include="..\..\src\video\windows\SDL_windowsvideo.h" />
  19.801 +    <ClInclude Include="..\..\src\video\windows\SDL_windowswindow.h" />
  19.802 +    <ClInclude Include="..\..\src\events\SDL_windowevents_c.h" />
  19.803 +    <ClInclude Include="..\..\src\video\windows\wmmsg.h" />
  19.804 +    <ClInclude Include="resource.h" />
  19.805 +  </ItemGroup>
  19.806 +  <ItemGroup>
  19.807 +    <ClCompile Include="..\..\src\core\windows\SDL_windows.c" />
  19.808 +    <ClCompile Include="..\..\src\events\SDL_clipboardevents.c" />
  19.809 +    <ClCompile Include="..\..\src\events\SDL_gesture.c" />
  19.810 +    <ClCompile Include="..\..\src\events\SDL_touch.c" />
  19.811 +    <ClCompile Include="..\..\src\libm\e_atan2.c" />
  19.812 +    <ClCompile Include="..\..\src\libm\e_log.c" />
  19.813 +    <ClCompile Include="..\..\src\libm\e_pow.c" />
  19.814 +    <ClCompile Include="..\..\src\libm\e_rem_pio2.c" />
  19.815 +    <ClCompile Include="..\..\src\libm\e_sqrt.c" />
  19.816 +    <ClCompile Include="..\..\src\libm\k_cos.c" />
  19.817 +    <ClCompile Include="..\..\src\libm\k_rem_pio2.c" />
  19.818 +    <ClCompile Include="..\..\src\libm\k_sin.c" />
  19.819 +    <ClCompile Include="..\..\src\libm\s_atan.c" />
  19.820 +    <ClCompile Include="..\..\src\libm\s_copysign.c" />
  19.821 +    <ClCompile Include="..\..\src\libm\s_cos.c" />
  19.822 +    <ClCompile Include="..\..\src\libm\s_fabs.c" />
  19.823 +    <ClCompile Include="..\..\src\libm\s_floor.c" />
  19.824 +    <ClCompile Include="..\..\src\libm\s_scalbn.c" />
  19.825 +    <ClCompile Include="..\..\src\libm\s_sin.c" />
  19.826 +    <ClCompile Include="..\..\src\render\direct3d\SDL_render_d3d.c" />
  19.827 +    <ClCompile Include="..\..\src\render\opengl\SDL_render_gl.c" />
  19.828 +    <ClCompile Include="..\..\src\render\opengl\SDL_shaders_gl.c" />
  19.829 +    <ClCompile Include="..\..\src\render\SDL_render.c" />
  19.830 +    <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
  19.831 +    <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
  19.832 +    <ClCompile Include="..\..\src\render\software\SDL_blendfillrect.c" />
  19.833 +    <ClCompile Include="..\..\src\render\software\SDL_blendline.c" />
  19.834 +    <ClCompile Include="..\..\src\render\software\SDL_blendpoint.c" />
  19.835 +    <ClCompile Include="..\..\src\render\software\SDL_drawline.c" />
  19.836 +    <ClCompile Include="..\..\src\render\software\SDL_drawpoint.c" />
  19.837 +    <ClCompile Include="..\..\src\render\software\SDL_render_sw.c" />
  19.838 +    <ClCompile Include="..\..\src\render\software\SDL_rotate.c" />
  19.839 +    <ClCompile Include="..\..\src\SDL.c" />
  19.840 +    <ClCompile Include="..\..\src\SDL_assert.c" />
  19.841 +    <ClCompile Include="..\..\src\atomic\SDL_atomic.c" />
  19.842 +    <ClCompile Include="..\..\src\atomic\SDL_spinlock.c" />
  19.843 +    <ClCompile Include="..\..\src\audio\SDL_audio.c" />
  19.844 +    <ClCompile Include="..\..\src\audio\SDL_audiocvt.c" />
  19.845 +    <ClCompile Include="..\..\src\audio\SDL_audiodev.c" />
  19.846 +    <ClCompile Include="..\..\src\audio\SDL_audiotypecvt.c" />
  19.847 +    <ClCompile Include="..\..\src\SDL_hints.c" />
  19.848 +    <ClCompile Include="..\..\src\SDL_log.c" />
  19.849 +    <ClCompile Include="..\..\src\video\dummy\SDL_nullframebuffer.c" />
  19.850 +    <ClCompile Include="..\..\src\video\SDL_blit.c" />
  19.851 +    <ClCompile Include="..\..\src\video\SDL_blit_0.c" />
  19.852 +    <ClCompile Include="..\..\src\video\SDL_blit_1.c" />
  19.853 +    <ClCompile Include="..\..\src\video\SDL_blit_A.c" />
  19.854 +    <ClCompile Include="..\..\src\video\SDL_blit_auto.c" />
  19.855 +    <ClCompile Include="..\..\src\video\SDL_blit_copy.c" />
  19.856 +    <ClCompile Include="..\..\src\video\SDL_blit_N.c" />
  19.857 +    <ClCompile Include="..\..\src\video\SDL_blit_slow.c" />
  19.858 +    <ClCompile Include="..\..\src\video\SDL_bmp.c" />
  19.859 +    <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" />
  19.860 +    <ClCompile Include="..\..\src\video\SDL_clipboard.c" />
  19.861 +    <ClCompile Include="..\..\src\video\SDL_shape.c" />
  19.862 +    <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
  19.863 +    <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" />
  19.864 +    <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
  19.865 +    <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" />
  19.866 +    <ClCompile Include="..\..\src\events\SDL_dropevents.c" />
  19.867 +    <ClCompile Include="..\..\src\audio\xaudio2\SDL_xaudio2.c" />
  19.868 +    <ClCompile Include="..\..\src\joystick\windows\SDL_dxjoystick.c" />
  19.869 +    <ClCompile Include="..\..\src\SDL_error.c" />
  19.870 +    <ClCompile Include="..\..\src\events\SDL_events.c" />
  19.871 +    <ClCompile Include="..\..\src\SDL_fatal.c" />
  19.872 +    <ClCompile Include="..\..\src\video\SDL_fillrect.c" />
  19.873 +    <ClCompile Include="..\..\src\stdlib\SDL_getenv.c" />
  19.874 +    <ClCompile Include="..\..\src\haptic\SDL_haptic.c" />
  19.875 +    <ClCompile Include="..\..\src\stdlib\SDL_iconv.c" />
  19.876 +    <ClCompile Include="..\..\src\joystick\SDL_joystick.c" />
  19.877 +    <ClCompile Include="..\..\src\events\SDL_keyboard.c" />
  19.878 +    <ClCompile Include="..\..\src\stdlib\SDL_malloc.c" />
  19.879 +    <ClCompile Include="..\..\src\audio\SDL_mixer.c" />
  19.880 +    <ClCompile Include="..\..\src\joystick\windows\SDL_mmjoystick.c" />
  19.881 +    <ClCompile Include="..\..\src\events\SDL_mouse.c" />
  19.882 +    <ClCompile Include="..\..\src\video\dummy\SDL_nullevents.c" />
  19.883 +    <ClCompile Include="..\..\src\video\dummy\SDL_nullvideo.c" />
  19.884 +    <ClCompile Include="..\..\src\video\SDL_pixels.c" />
  19.885 +    <ClCompile Include="..\..\src\power\SDL_power.c" />
  19.886 +    <ClCompile Include="..\..\src\stdlib\SDL_qsort.c" />
  19.887 +    <ClCompile Include="..\..\src\events\SDL_quit.c" />
  19.888 +    <ClCompile Include="..\..\src\video\SDL_rect.c" />
  19.889 +    <ClCompile Include="..\..\src\video\SDL_RLEaccel.c" />
  19.890 +    <ClCompile Include="..\..\src\file\SDL_rwops.c" />
  19.891 +    <ClCompile Include="..\..\src\stdlib\SDL_stdlib.c" />
  19.892 +    <ClCompile Include="..\..\src\video\SDL_stretch.c" />
  19.893 +    <ClCompile Include="..\..\src\stdlib\SDL_string.c" />
  19.894 +    <ClCompile Include="..\..\src\video\SDL_surface.c" />
  19.895 +    <ClCompile Include="..\..\src\thread\generic\SDL_syscond.c" />
  19.896 +    <ClCompile Include="..\..\src\haptic\windows\SDL_syshaptic.c" />
  19.897 +    <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
  19.898 +    <ClCompile Include="..\..\src\thread\windows\SDL_sysmutex.c" />
  19.899 +    <ClCompile Include="..\..\src\power\windows\SDL_syspower.c" />
  19.900 +    <ClCompile Include="..\..\src\thread\windows\SDL_syssem.c" />
  19.901 +    <ClCompile Include="..\..\src\thread\windows\SDL_systhread.c" />
  19.902 +    <ClCompile Include="..\..\src\timer\windows\SDL_systimer.c" />
  19.903 +    <ClCompile Include="..\..\src\thread\SDL_thread.c" />
  19.904 +    <ClCompile Include="..\..\src\timer\SDL_timer.c" />
  19.905 +    <ClCompile Include="..\..\src\video\SDL_video.c" />
  19.906 +    <ClCompile Include="..\..\src\audio\SDL_wave.c" />
  19.907 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsclipboard.c" />
  19.908 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsevents.c" />
  19.909 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsframebuffer.c" />
  19.910 +    <ClCompile Include="..\..\src\video\windows\SDL_windowskeyboard.c" />
  19.911 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsmessagebox.c" />
  19.912 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsmodes.c" />
  19.913 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsmouse.c" />
  19.914 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsopengl.c" />
  19.915 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsshape.c" />
  19.916 +    <ClCompile Include="..\..\src\video\windows\SDL_windowsvideo.c" />
  19.917 +    <ClCompile Include="..\..\src\video\windows\SDL_windowswindow.c" />
  19.918 +    <ClCompile Include="..\..\src\events\SDL_windowevents.c" />
  19.919 +    <ClCompile Include="..\..\src\joystick\SDL_gamecontroller.c" />
  19.920 +  </ItemGroup>
  19.921 +  <ItemGroup>
  19.922 +    <ResourceCompile Include="..\..\src\main\windows\version.rc" />
  19.923 +  </ItemGroup>
  19.924 +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  19.925 +  <ImportGroup Label="ExtensionTargets">
  19.926 +  </ImportGroup>
  19.927 +</Project>
  19.928 \ No newline at end of file
    20.1 --- a/VisualC/SDL_VS2010.sln	Sat Apr 13 23:03:46 2013 -0400
    20.2 +++ b/VisualC/SDL_VS2010.sln	Sun Apr 14 11:42:55 2013 -0400
    20.3 @@ -1,197 +1,160 @@
    20.4 -
    20.5 -Microsoft Visual Studio Solution File, Format Version 11.00
    20.6 -# Visual Studio 2010
    20.7 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2", "SDL\SDL_VS2010.vcxproj", "{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}"
    20.8 -EndProject
    20.9 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2main", "SDLmain\SDLmain_VS2010.vcxproj", "{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}"
   20.10 -EndProject
   20.11 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{CE748C1F-3C21-4825-AA6A-F895A023F7E7}"
   20.12 -EndProject
   20.13 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "loopwave", "tests\loopwave\loopwave_VS2010.vcxproj", "{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}"
   20.14 -	ProjectSection(ProjectDependencies) = postProject
   20.15 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.16 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.17 -	EndProjectSection
   20.18 -EndProject
   20.19 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testplatform", "tests\testplatform\testplatform_VS2010.vcxproj", "{26932B24-EFC6-4E3A-B277-ED653DA37968}"
   20.20 -	ProjectSection(ProjectDependencies) = postProject
   20.21 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.22 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.23 -	EndProjectSection
   20.24 -EndProject
   20.25 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testfile", "tests\testfile\testfile_VS2010.vcxproj", "{CAE4F1D0-314F-4B10-805B-0EFD670133A0}"
   20.26 -	ProjectSection(ProjectDependencies) = postProject
   20.27 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.28 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.29 -	EndProjectSection
   20.30 -EndProject
   20.31 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testgl2", "tests\testgl2\testgl2_VS2010.vcxproj", "{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}"
   20.32 -	ProjectSection(ProjectDependencies) = postProject
   20.33 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.34 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.35 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A} = {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}
   20.36 -	EndProjectSection
   20.37 -EndProject
   20.38 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "checkkeys", "tests\checkkeys\checkkeys_VS2010.vcxproj", "{26828762-C95D-4637-9CB1-7F0979523813}"
   20.39 -	ProjectSection(ProjectDependencies) = postProject
   20.40 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.41 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.42 -	EndProjectSection
   20.43 -EndProject
   20.44 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testsprite2", "tests\testsprite2\testsprite2_VS2010.vcxproj", "{40FB7794-D3C3-4CFE-BCF4-A80C96635682}"
   20.45 -	ProjectSection(ProjectDependencies) = postProject
   20.46 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.47 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.48 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A} = {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}
   20.49 -	EndProjectSection
   20.50 -EndProject
   20.51 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testshape", "tests\testshape\testshape_VS2010.vcxproj", "{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}"
   20.52 -	ProjectSection(ProjectDependencies) = postProject
   20.53 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.54 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.55 -	EndProjectSection
   20.56 -EndProject
   20.57 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testdraw2", "tests\testdraw2\testdraw2_VS2010.vcxproj", "{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}"
   20.58 -	ProjectSection(ProjectDependencies) = postProject
   20.59 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.60 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.61 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A} = {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}
   20.62 -	EndProjectSection
   20.63 -EndProject
   20.64 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testpower", "tests\testpower\testpower_VS2010.vcxproj", "{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}"
   20.65 -	ProjectSection(ProjectDependencies) = postProject
   20.66 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.67 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.68 -	EndProjectSection
   20.69 -EndProject
   20.70 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2test", "SDLtest\SDLtest_VS2010.vcxproj", "{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}"
   20.71 -	ProjectSection(ProjectDependencies) = postProject
   20.72 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.73 -	EndProjectSection
   20.74 -EndProject
   20.75 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testautomation", "tests\testautomation\testautomation_vs2010.vcxproj", "{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}"
   20.76 -	ProjectSection(ProjectDependencies) = postProject
   20.77 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68} = {81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}
   20.78 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A} = {DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}
   20.79 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A} = {DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}
   20.80 -	EndProjectSection
   20.81 -EndProject
   20.82 -Global
   20.83 -	GlobalSection(SolutionConfigurationPlatforms) = preSolution
   20.84 -		Debug|Win32 = Debug|Win32
   20.85 -		Debug|x64 = Debug|x64
   20.86 -		Release|Win32 = Release|Win32
   20.87 -		Release|x64 = Release|x64
   20.88 -	EndGlobalSection
   20.89 -	GlobalSection(ProjectConfigurationPlatforms) = postSolution
   20.90 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|Win32.ActiveCfg = Debug|Win32
   20.91 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|Win32.Build.0 = Debug|Win32
   20.92 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|x64.ActiveCfg = Debug|x64
   20.93 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|x64.Build.0 = Debug|x64
   20.94 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|Win32.ActiveCfg = Release|Win32
   20.95 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|Win32.Build.0 = Release|Win32
   20.96 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|x64.ActiveCfg = Release|x64
   20.97 -		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|x64.Build.0 = Release|x64
   20.98 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|Win32.ActiveCfg = Debug|Win32
   20.99 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|Win32.Build.0 = Debug|Win32
  20.100 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|x64.ActiveCfg = Debug|x64
  20.101 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|x64.Build.0 = Debug|x64
  20.102 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|Win32.ActiveCfg = Release|Win32
  20.103 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|Win32.Build.0 = Release|Win32
  20.104 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|x64.ActiveCfg = Release|x64
  20.105 -		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|x64.Build.0 = Release|x64
  20.106 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|Win32.ActiveCfg = Debug|Win32
  20.107 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|Win32.Build.0 = Debug|Win32
  20.108 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|x64.ActiveCfg = Debug|x64
  20.109 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|x64.Build.0 = Debug|x64
  20.110 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|Win32.ActiveCfg = Release|Win32
  20.111 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|Win32.Build.0 = Release|Win32
  20.112 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|x64.ActiveCfg = Release|Win32
  20.113 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|Win32.ActiveCfg = Debug|Win32
  20.114 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|Win32.Build.0 = Debug|Win32
  20.115 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|x64.ActiveCfg = Debug|x64
  20.116 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|x64.Build.0 = Debug|x64
  20.117 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|Win32.ActiveCfg = Release|Win32
  20.118 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|Win32.Build.0 = Release|Win32
  20.119 -		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|x64.ActiveCfg = Release|Win32
  20.120 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|Win32.ActiveCfg = Debug|Win32
  20.121 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|Win32.Build.0 = Debug|Win32
  20.122 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|x64.ActiveCfg = Debug|x64
  20.123 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|x64.Build.0 = Debug|x64
  20.124 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|Win32.ActiveCfg = Release|Win32
  20.125 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|Win32.Build.0 = Release|Win32
  20.126 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|x64.ActiveCfg = Release|Win32
  20.127 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|Win32.ActiveCfg = Debug|Win32
  20.128 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|Win32.Build.0 = Debug|Win32
  20.129 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|x64.ActiveCfg = Debug|x64
  20.130 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|x64.Build.0 = Debug|x64
  20.131 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|Win32.ActiveCfg = Release|Win32
  20.132 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|Win32.Build.0 = Release|Win32
  20.133 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|x64.ActiveCfg = Release|Win32
  20.134 -		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|Win32.ActiveCfg = Debug|Win32
  20.135 -		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|Win32.Build.0 = Debug|Win32
  20.136 -		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|x64.ActiveCfg = Debug|x64
  20.137 -		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|x64.Build.0 = Debug|x64
  20.138 -		{26828762-C95D-4637-9CB1-7F0979523813}.Release|Win32.ActiveCfg = Release|Win32
  20.139 -		{26828762-C95D-4637-9CB1-7F0979523813}.Release|Win32.Build.0 = Release|Win32
  20.140 -		{26828762-C95D-4637-9CB1-7F0979523813}.Release|x64.ActiveCfg = Release|Win32
  20.141 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|Win32.ActiveCfg = Debug|Win32
  20.142 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|Win32.Build.0 = Debug|Win32
  20.143 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|x64.ActiveCfg = Debug|x64
  20.144 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|x64.Build.0 = Debug|x64
  20.145 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|Win32.ActiveCfg = Release|Win32
  20.146 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|Win32.Build.0 = Release|Win32
  20.147 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|x64.ActiveCfg = Release|Win32
  20.148 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|Win32.ActiveCfg = Debug|Win32
  20.149 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|Win32.Build.0 = Debug|Win32
  20.150 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|x64.ActiveCfg = Debug|x64
  20.151 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|x64.Build.0 = Debug|x64
  20.152 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|Win32.ActiveCfg = Release|Win32
  20.153 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|x64.ActiveCfg = Release|Win32
  20.154 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|Win32.ActiveCfg = Debug|Win32
  20.155 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|Win32.Build.0 = Debug|Win32
  20.156 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|x64.ActiveCfg = Debug|x64
  20.157 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|x64.Build.0 = Debug|x64
  20.158 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|Win32.ActiveCfg = Release|Win32
  20.159 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|Win32.Build.0 = Release|Win32
  20.160 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|x64.ActiveCfg = Release|Win32
  20.161 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|Win32.ActiveCfg = Debug|Win32
  20.162 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|Win32.Build.0 = Debug|Win32
  20.163 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|x64.ActiveCfg = Debug|x64
  20.164 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|x64.Build.0 = Debug|x64
  20.165 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|Win32.ActiveCfg = Release|Win32
  20.166 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|Win32.Build.0 = Release|Win32
  20.167 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|x64.ActiveCfg = Release|Win32
  20.168 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|Win32.ActiveCfg = Debug|Win32
  20.169 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|Win32.Build.0 = Debug|Win32
  20.170 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|x64.ActiveCfg = Debug|x64
  20.171 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|x64.Build.0 = Debug|x64
  20.172 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|Win32.ActiveCfg = Release|Win32
  20.173 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|Win32.Build.0 = Release|Win32
  20.174 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|x64.ActiveCfg = Release|x64
  20.175 -		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|x64.Build.0 = Release|x64
  20.176 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|Win32.ActiveCfg = Debug|Win32
  20.177 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|Win32.Build.0 = Debug|Win32
  20.178 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|x64.ActiveCfg = Debug|x64
  20.179 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|x64.Build.0 = Debug|x64
  20.180 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|Win32.ActiveCfg = Release|Win32
  20.181 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|Win32.Build.0 = Release|Win32
  20.182 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|x64.ActiveCfg = Release|x64
  20.183 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|x64.Build.0 = Release|x64
  20.184 -	EndGlobalSection
  20.185 -	GlobalSection(SolutionProperties) = preSolution
  20.186 -		HideSolutionNode = FALSE
  20.187 -	EndGlobalSection
  20.188 -	GlobalSection(NestedProjects) = preSolution
  20.189 -		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.190 -		{26932B24-EFC6-4E3A-B277-ED653DA37968} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.191 -		{CAE4F1D0-314F-4B10-805B-0EFD670133A0} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.192 -		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.193 -		{26828762-C95D-4637-9CB1-7F0979523813} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.194 -		{40FB7794-D3C3-4CFE-BCF4-A80C96635682} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.195 -		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.196 -		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.197 -		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.198 -		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.199 -	EndGlobalSection
  20.200 -EndGlobal
  20.201 +
  20.202 +Microsoft Visual Studio Solution File, Format Version 11.00
  20.203 +# Visual Studio 2010
  20.204 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2", "SDL\SDL_VS2010.vcxproj", "{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}"
  20.205 +EndProject
  20.206 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2main", "SDLmain\SDLmain_VS2010.vcxproj", "{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}"
  20.207 +EndProject
  20.208 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{CE748C1F-3C21-4825-AA6A-F895A023F7E7}"
  20.209 +EndProject
  20.210 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "loopwave", "tests\loopwave\loopwave_VS2010.vcxproj", "{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}"
  20.211 +EndProject
  20.212 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testplatform", "tests\testplatform\testplatform_VS2010.vcxproj", "{26932B24-EFC6-4E3A-B277-ED653DA37968}"
  20.213 +EndProject
  20.214 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testfile", "tests\testfile\testfile_VS2010.vcxproj", "{CAE4F1D0-314F-4B10-805B-0EFD670133A0}"
  20.215 +EndProject
  20.216 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testgl2", "tests\testgl2\testgl2_VS2010.vcxproj", "{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}"
  20.217 +EndProject
  20.218 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "checkkeys", "tests\checkkeys\checkkeys_VS2010.vcxproj", "{26828762-C95D-4637-9CB1-7F0979523813}"
  20.219 +EndProject
  20.220 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testsprite2", "tests\testsprite2\testsprite2_VS2010.vcxproj", "{40FB7794-D3C3-4CFE-BCF4-A80C96635682}"
  20.221 +EndProject
  20.222 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testshape", "tests\testshape\testshape_VS2010.vcxproj", "{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}"
  20.223 +EndProject
  20.224 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testdraw2", "tests\testdraw2\testdraw2_VS2010.vcxproj", "{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}"
  20.225 +EndProject
  20.226 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testpower", "tests\testpower\testpower_VS2010.vcxproj", "{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}"
  20.227 +EndProject
  20.228 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2test", "SDLtest\SDLtest_VS2010.vcxproj", "{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}"
  20.229 +EndProject
  20.230 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "testautomation", "tests\testautomation\testautomation_vs2010.vcxproj", "{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}"
  20.231 +EndProject
  20.232 +Global
  20.233 +	GlobalSection(SolutionConfigurationPlatforms) = preSolution
  20.234 +		Debug|Win32 = Debug|Win32
  20.235 +		Debug|x64 = Debug|x64
  20.236 +		Release|Win32 = Release|Win32
  20.237 +		Release|x64 = Release|x64
  20.238 +	EndGlobalSection
  20.239 +	GlobalSection(ProjectConfigurationPlatforms) = postSolution
  20.240 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|Win32.ActiveCfg = Debug|Win32
  20.241 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|Win32.Build.0 = Debug|Win32
  20.242 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|x64.ActiveCfg = Debug|x64
  20.243 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Debug|x64.Build.0 = Debug|x64
  20.244 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|Win32.ActiveCfg = Release|Win32
  20.245 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|Win32.Build.0 = Release|Win32
  20.246 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|x64.ActiveCfg = Release|x64
  20.247 +		{81CE8DAF-EBB2-4761-8E45-B71ABCCA8C68}.Release|x64.Build.0 = Release|x64
  20.248 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|Win32.ActiveCfg = Debug|Win32
  20.249 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|Win32.Build.0 = Debug|Win32
  20.250 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|x64.ActiveCfg = Debug|x64
  20.251 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Debug|x64.Build.0 = Debug|x64
  20.252 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|Win32.ActiveCfg = Release|Win32
  20.253 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|Win32.Build.0 = Release|Win32
  20.254 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|x64.ActiveCfg = Release|x64
  20.255 +		{DA956FD3-E142-46F2-9DD5-C78BEBB56B7A}.Release|x64.Build.0 = Release|x64
  20.256 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|Win32.ActiveCfg = Debug|Win32
  20.257 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|Win32.Build.0 = Debug|Win32
  20.258 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|x64.ActiveCfg = Debug|x64
  20.259 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Debug|x64.Build.0 = Debug|x64
  20.260 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|Win32.ActiveCfg = Release|Win32
  20.261 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|Win32.Build.0 = Release|Win32
  20.262 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|x64.ActiveCfg = Release|x64
  20.263 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB}.Release|x64.Build.0 = Release|x64
  20.264 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|Win32.ActiveCfg = Debug|Win32
  20.265 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|Win32.Build.0 = Debug|Win32
  20.266 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|x64.ActiveCfg = Debug|x64
  20.267 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Debug|x64.Build.0 = Debug|x64
  20.268 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|Win32.ActiveCfg = Release|Win32
  20.269 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|Win32.Build.0 = Release|Win32
  20.270 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|x64.ActiveCfg = Release|x64
  20.271 +		{26932B24-EFC6-4E3A-B277-ED653DA37968}.Release|x64.Build.0 = Release|x64
  20.272 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|Win32.ActiveCfg = Debug|Win32
  20.273 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|Win32.Build.0 = Debug|Win32
  20.274 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|x64.ActiveCfg = Debug|x64
  20.275 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Debug|x64.Build.0 = Debug|x64
  20.276 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|Win32.ActiveCfg = Release|Win32
  20.277 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|Win32.Build.0 = Release|Win32
  20.278 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|x64.ActiveCfg = Release|x64
  20.279 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0}.Release|x64.Build.0 = Release|x64
  20.280 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|Win32.ActiveCfg = Debug|Win32
  20.281 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|Win32.Build.0 = Debug|Win32
  20.282 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|x64.ActiveCfg = Debug|x64
  20.283 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Debug|x64.Build.0 = Debug|x64
  20.284 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|Win32.ActiveCfg = Release|Win32
  20.285 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|Win32.Build.0 = Release|Win32
  20.286 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|x64.ActiveCfg = Release|x64
  20.287 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884}.Release|x64.Build.0 = Release|x64
  20.288 +		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|Win32.ActiveCfg = Debug|Win32
  20.289 +		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|Win32.Build.0 = Debug|Win32
  20.290 +		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|x64.ActiveCfg = Debug|x64
  20.291 +		{26828762-C95D-4637-9CB1-7F0979523813}.Debug|x64.Build.0 = Debug|x64
  20.292 +		{26828762-C95D-4637-9CB1-7F0979523813}.Release|Win32.ActiveCfg = Release|Win32
  20.293 +		{26828762-C95D-4637-9CB1-7F0979523813}.Release|Win32.Build.0 = Release|Win32
  20.294 +		{26828762-C95D-4637-9CB1-7F0979523813}.Release|x64.ActiveCfg = Release|x64
  20.295 +		{26828762-C95D-4637-9CB1-7F0979523813}.Release|x64.Build.0 = Release|x64
  20.296 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|Win32.ActiveCfg = Debug|Win32
  20.297 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|Win32.Build.0 = Debug|Win32
  20.298 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|x64.ActiveCfg = Debug|x64
  20.299 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Debug|x64.Build.0 = Debug|x64
  20.300 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|Win32.ActiveCfg = Release|Win32
  20.301 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|Win32.Build.0 = Release|Win32
  20.302 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|x64.ActiveCfg = Release|x64
  20.303 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682}.Release|x64.Build.0 = Release|x64
  20.304 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|Win32.ActiveCfg = Debug|Win32
  20.305 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|Win32.Build.0 = Debug|Win32
  20.306 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|x64.ActiveCfg = Debug|x64
  20.307 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Debug|x64.Build.0 = Debug|x64
  20.308 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|Win32.ActiveCfg = Release|Win32
  20.309 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|Win32.Build.0 = Release|Win32
  20.310 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|x64.ActiveCfg = Release|x64
  20.311 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F}.Release|x64.Build.0 = Release|x64
  20.312 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|Win32.ActiveCfg = Debug|Win32
  20.313 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|Win32.Build.0 = Debug|Win32
  20.314 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|x64.ActiveCfg = Debug|x64
  20.315 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Debug|x64.Build.0 = Debug|x64
  20.316 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|Win32.ActiveCfg = Release|Win32
  20.317 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|Win32.Build.0 = Release|Win32
  20.318 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|x64.ActiveCfg = Release|x64
  20.319 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF}.Release|x64.Build.0 = Release|x64
  20.320 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|Win32.ActiveCfg = Debug|Win32
  20.321 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|Win32.Build.0 = Debug|Win32
  20.322 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|x64.ActiveCfg = Debug|x64
  20.323 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Debug|x64.Build.0 = Debug|x64
  20.324 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|Win32.ActiveCfg = Release|Win32
  20.325 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|Win32.Build.0 = Release|Win32
  20.326 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|x64.ActiveCfg = Release|x64
  20.327 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3}.Release|x64.Build.0 = Release|x64
  20.328 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|Win32.ActiveCfg = Debug|Win32
  20.329 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|Win32.Build.0 = Debug|Win32
  20.330 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|x64.ActiveCfg = Debug|x64
  20.331 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Debug|x64.Build.0 = Debug|x64
  20.332 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|Win32.ActiveCfg = Release|Win32
  20.333 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|Win32.Build.0 = Release|Win32
  20.334 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|x64.ActiveCfg = Release|x64
  20.335 +		{DA956FD3-E143-46F2-9FE5-C77BEBC56B1A}.Release|x64.Build.0 = Release|x64
  20.336 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|Win32.ActiveCfg = Debug|Win32
  20.337 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|Win32.Build.0 = Debug|Win32
  20.338 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|x64.ActiveCfg = Debug|x64
  20.339 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Debug|x64.Build.0 = Debug|x64
  20.340 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|Win32.ActiveCfg = Release|Win32
  20.341 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|Win32.Build.0 = Release|Win32
  20.342 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|x64.ActiveCfg = Release|x64
  20.343 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0}.Release|x64.Build.0 = Release|x64
  20.344 +	EndGlobalSection
  20.345 +	GlobalSection(SolutionProperties) = preSolution
  20.346 +		HideSolutionNode = FALSE
  20.347 +	EndGlobalSection
  20.348 +	GlobalSection(NestedProjects) = preSolution
  20.349 +		{FEE710DB-EC7B-4CCB-BD75-535D401A2FE0} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.350 +		{40FB7794-D3C3-4CFE-BCF4-A80C96635682} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.351 +		{8682FE1E-0CF6-4EDD-9BB5-1733D8C8B4DF} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.352 +		{CAE4F1D0-314F-4B10-805B-0EFD670133A0} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.353 +		{8B5CFB38-CCBA-40A8-AD7A-89C57B070884} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.354 +		{26932B24-EFC6-4E3A-B277-ED653DA37968} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.355 +		{C4E04D18-EF76-4B42-B4C2-16A1BACDC0A3} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.356 +		{EDEA9D00-AF64-45DE-8F60-5957048F2F0F} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.357 +		{26828762-C95D-4637-9CB1-7F0979523813} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.358 +		{AAAD1CB5-7ADA-47AE-85A0-08A6EC48FAFB} = {CE748C1F-3C21-4825-AA6A-F895A023F7E7}
  20.359 +	EndGlobalSection
  20.360 +EndGlobal
    21.1 --- a/VisualC/SDLmain/SDLmain_VS2012.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    21.2 +++ b/VisualC/SDLmain/SDLmain_VS2012.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    21.3 @@ -144,7 +144,6 @@
    21.4        <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
    21.5        <PrecompiledHeader>
    21.6        </PrecompiledHeader>
    21.7 -      <PrecompiledHeaderOutputFile>.\Debug/SDLmain.pch</PrecompiledHeaderOutputFile>
    21.8        <WarningLevel>Level3</WarningLevel>
    21.9        <SuppressStartupBanner>true</SuppressStartupBanner>
   21.10        <DebugInformationFormat>OldStyle</DebugInformationFormat>
    22.1 --- a/VisualC/SDLtest/SDLtest_VS2012.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    22.2 +++ b/VisualC/SDLtest/SDLtest_VS2012.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    22.3 @@ -144,7 +144,6 @@
    22.4        <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
    22.5        <PrecompiledHeader>
    22.6        </PrecompiledHeader>
    22.7 -      <PrecompiledHeaderOutputFile>.\Debug/SDLtest.pch</PrecompiledHeaderOutputFile>
    22.8        <WarningLevel>Level3</WarningLevel>
    22.9        <SuppressStartupBanner>true</SuppressStartupBanner>
   22.10        <DebugInformationFormat>OldStyle</DebugInformationFormat>
    23.1 --- a/VisualC/tests/testplatform/testplatform_VS2012.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    23.2 +++ b/VisualC/tests/testplatform/testplatform_VS2012.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    23.3 @@ -168,7 +168,6 @@
    23.4        <StringPooling>true</StringPooling>
    23.5        <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
    23.6        <FunctionLevelLinking>true</FunctionLevelLinking>
    23.7 -      <PrecompiledHeaderOutputFile>.\Release/testplatform.pch</PrecompiledHeaderOutputFile>
    23.8        <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation>
    23.9        <ObjectFileName>$(IntDir)</ObjectFileName>
   23.10        <ProgramDataBaseFileName>$(IntDir)vc$(PlatformToolsetVersion).pdb</ProgramDataBaseFileName>
    24.1 --- a/VisualC/tests/testpower/testpower_VS2012.vcxproj	Sat Apr 13 23:03:46 2013 -0400
    24.2 +++ b/VisualC/tests/testpower/testpower_VS2012.vcxproj	Sun Apr 14 11:42:55 2013 -0400
    24.3 @@ -223,10 +223,7 @@
    24.4      <Library Include="..\..\SDLmain\$(Platform)\$(Configuration)\SDLmain.lib" />
    24.5    </ItemGroup>
    24.6    <ItemGroup>
    24.7 -    <ClCompile Include="..\..\..\test\testpower.c">
    24.8 -      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug/testpower.pch</PrecompiledHeaderOutputFile>
    24.9 -      <PrecompiledHeaderOutputFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\Debug/testpower.pch</PrecompiledHeaderOutputFile>
   24.10 -    </ClCompile>
   24.11 +    <ClCompile Include="..\..\..\test\testpower.c" />
   24.12    </ItemGroup>
   24.13    <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   24.14    <ImportGroup Label="ExtensionTargets">
    25.1 --- a/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj	Sat Apr 13 23:03:46 2013 -0400
    25.2 +++ b/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj	Sun Apr 14 11:42:55 2013 -0400
    25.3 @@ -38,7 +38,6 @@
    25.4  		0097E2A812F70C4D00724AC5 /* SDL_config_iphoneos.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_iphoneos.h; sourceTree = "<group>"; };
    25.5  		0097E2A912F70C4D00724AC5 /* SDL_config_macosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_macosx.h; sourceTree = "<group>"; };
    25.6  		0097E2AA12F70C4D00724AC5 /* SDL_config_minimal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_minimal.h; sourceTree = "<group>"; };
    25.7 -		0097E2AB12F70C4D00724AC5 /* SDL_config_nintendods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_nintendods.h; sourceTree = "<group>"; };
    25.8  		0097E2AC12F70C4D00724AC5 /* SDL_config_pandora.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_pandora.h; sourceTree = "<group>"; };
    25.9  		0097E2AD12F70C4D00724AC5 /* SDL_config_windows.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_windows.h; sourceTree = "<group>"; };
   25.10  		0097E2AE12F70C4D00724AC5 /* SDL_config_wiz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_wiz.h; sourceTree = "<group>"; };
   25.11 @@ -142,7 +141,6 @@
   25.12  				0097E2A812F70C4D00724AC5 /* SDL_config_iphoneos.h */,
   25.13  				0097E2A912F70C4D00724AC5 /* SDL_config_macosx.h */,
   25.14  				0097E2AA12F70C4D00724AC5 /* SDL_config_minimal.h */,
   25.15 -				0097E2AB12F70C4D00724AC5 /* SDL_config_nintendods.h */,
   25.16  				0097E2AC12F70C4D00724AC5 /* SDL_config_pandora.h */,
   25.17  				0097E2AD12F70C4D00724AC5 /* SDL_config_windows.h */,
   25.18  				0097E2AE12F70C4D00724AC5 /* SDL_config_wiz.h */,
    29.1 --- a/android-project/AndroidManifest.xml	Sat Apr 13 23:03:46 2013 -0400
    29.2 +++ b/android-project/AndroidManifest.xml	Sun Apr 14 11:42:55 2013 -0400
    29.3 @@ -18,7 +18,7 @@
    29.4           An example Java class can be found in README.android
    29.5      -->
    29.6      <application android:label="@string/app_name"
    29.7 -                 android:icon="@drawable/icon"
    29.8 +                 android:icon="@drawable/ic_launcher"
    29.9  	         android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
   29.10          <activity android:name="SDLActivity"
   29.11                    android:label="@string/app_name">
   29.12 @@ -29,7 +29,7 @@
   29.13          </activity>
   29.14      </application>
   29.15  
   29.16 -    <!-- Android 2.1 -->
   29.17 +    <!-- Android 2.3.3 -->
   29.18      <uses-sdk android:minSdkVersion="10" /> 
   29.19  
   29.20      <!-- OpenGL ES 2.0 -->
    31.1 Binary file android-project/res/drawable-hdpi/ic_launcher.png has changed
    32.1 Binary file android-project/res/drawable-hdpi/icon.png has changed
    33.1 Binary file android-project/res/drawable-ldpi/icon.png has changed
    34.1 Binary file android-project/res/drawable-mdpi/ic_launcher.png has changed
    35.1 Binary file android-project/res/drawable-mdpi/icon.png has changed
    36.1 Binary file android-project/res/drawable-xhdpi/ic_launcher.png has changed
    37.1 Binary file android-project/res/drawable-xxhdpi/ic_launcher.png has changed
    38.1 --- a/android-project/src/org/libsdl/app/SDLActivity.java	Sat Apr 13 23:03:46 2013 -0400
    38.2 +++ b/android-project/src/org/libsdl/app/SDLActivity.java	Sun Apr 14 11:42:55 2013 -0400
    38.3 @@ -509,7 +509,7 @@
    38.4                                 int format, int width, int height) {
    38.5          Log.v("SDL", "surfaceChanged()");
    38.6  
    38.7 -        int sdlFormat = 0x85151002; // SDL_PIXELFORMAT_RGB565 by default
    38.8 +        int sdlFormat = 0x15151002; // SDL_PIXELFORMAT_RGB565 by default
    38.9          switch (format) {
   38.10          case PixelFormat.A_8:
   38.11              Log.v("SDL", "pixel format A_8");
   38.12 @@ -522,32 +522,32 @@
   38.13              break;
   38.14          case PixelFormat.RGBA_4444:
   38.15              Log.v("SDL", "pixel format RGBA_4444");
   38.16 -            sdlFormat = 0x85421002; // SDL_PIXELFORMAT_RGBA4444
   38.17 +            sdlFormat = 0x15421002; // SDL_PIXELFORMAT_RGBA4444
   38.18              break;
   38.19          case PixelFormat.RGBA_5551:
   38.20              Log.v("SDL", "pixel format RGBA_5551");
   38.21 -            sdlFormat = 0x85441002; // SDL_PIXELFORMAT_RGBA5551
   38.22 +            sdlFormat = 0x15441002; // SDL_PIXELFORMAT_RGBA5551
   38.23              break;
   38.24          case PixelFormat.RGBA_8888:
   38.25              Log.v("SDL", "pixel format RGBA_8888");
   38.26 -            sdlFormat = 0x86462004; // SDL_PIXELFORMAT_RGBA8888
   38.27 +            sdlFormat = 0x16462004; // SDL_PIXELFORMAT_RGBA8888
   38.28              break;
   38.29          case PixelFormat.RGBX_8888:
   38.30              Log.v("SDL", "pixel format RGBX_8888");
   38.31 -            sdlFormat = 0x86262004; // SDL_PIXELFORMAT_RGBX8888
   38.32 +            sdlFormat = 0x16261804; // SDL_PIXELFORMAT_RGBX8888
   38.33              break;
   38.34          case PixelFormat.RGB_332:
   38.35              Log.v("SDL", "pixel format RGB_332");
   38.36 -            sdlFormat = 0x84110801; // SDL_PIXELFORMAT_RGB332
   38.37 +            sdlFormat = 0x14110801; // SDL_PIXELFORMAT_RGB332
   38.38              break;
   38.39          case PixelFormat.RGB_565:
   38.40              Log.v("SDL", "pixel format RGB_565");
   38.41 -            sdlFormat = 0x85151002; // SDL_PIXELFORMAT_RGB565
   38.42 +            sdlFormat = 0x15151002; // SDL_PIXELFORMAT_RGB565
   38.43              break;
   38.44          case PixelFormat.RGB_888:
   38.45              Log.v("SDL", "pixel format RGB_888");
   38.46              // Not sure this is right, maybe SDL_PIXELFORMAT_RGB24 instead?
   38.47 -            sdlFormat = 0x86161804; // SDL_PIXELFORMAT_RGB888
   38.48 +            sdlFormat = 0x16161804; // SDL_PIXELFORMAT_RGB888
   38.49              break;
   38.50          default:
   38.51              Log.v("SDL", "pixel format unknown " + format);
    39.1 --- a/build-scripts/updaterev.sh	Sat Apr 13 23:03:46 2013 -0400
    39.2 +++ b/build-scripts/updaterev.sh	Sun Apr 14 11:42:55 2013 -0400
    39.3 @@ -10,11 +10,11 @@
    39.4  rev=`sh showrev.sh 2>/dev/null`
    39.5  if [ "$rev" != "" -a "$rev" != "hg-0:baadf00d" ]; then
    39.6      revnum=`echo $rev | sed 's,hg-\([0-9]*\).*,\1,'`
    39.7 -    echo "#define SDL_REVISION \"$rev\"" >$header.new
    39.8 -    echo "#define SDL_REVISION_NUMBER $revnum" >>$header.new
    39.9 +    echo "#define SDL_REVISION \"$rev\"" >"$header.new"
   39.10 +    echo "#define SDL_REVISION_NUMBER $revnum" >>"$header.new"
   39.11      if diff $header $header.new >/dev/null 2>&1; then
   39.12 -        rm $header.new
   39.13 +        rm "$header.new"
   39.14      else
   39.15 -        mv $header.new $header
   39.16 +        mv "$header.new" "$header"
   39.17      fi
   39.18  fi
    40.1 --- a/configure	Sat Apr 13 23:03:46 2013 -0400
    40.2 +++ b/configure	Sun Apr 14 11:42:55 2013 -0400
    40.3 @@ -20263,7 +20263,7 @@
    40.4          else
    40.5              set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
    40.6              NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
    40.7 -            set -- `directfb-config --version | sed 's/\./ /g'`
    40.8 +            set -- `$DIRECTFBCONFIG --version | sed 's/\./ /g'`
    40.9              HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
   40.10              if test $HAVE_VERSION -ge $NEED_VERSION; then
   40.11                  DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
   40.12 @@ -22324,6 +22324,15 @@
   40.13          # The iOS platform requires special setup.
   40.14          SOURCES="$SOURCES $srcdir/src/video/uikit/*.m"
   40.15          SOURCES="$SOURCES $srcdir/src/video/uikit/*.c"
   40.16 +        EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings"
   40.17 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc"
   40.18 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation"
   40.19 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit"
   40.20 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES"
   40.21 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
   40.22 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio"
   40.23 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox"
   40.24 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreGraphics"
   40.25          ;;
   40.26      *-*-darwin* )
   40.27          # This could be either full "Mac OS X", or plain "Darwin" which is
    41.1 --- a/configure.in	Sat Apr 13 23:03:46 2013 -0400
    41.2 +++ b/configure.in	Sun Apr 14 11:42:55 2013 -0400
    41.3 @@ -794,6 +794,14 @@
    41.4                 test x$enable_pulseaudio_shared = xyes && test x$pulseaudio_lib != x; then
    41.5                  echo "-- dynamic libpulse-simple -> $pulseaudio_lib"
    41.6                  AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_PULSEAUDIO_DYNAMIC, "$pulseaudio_lib", [ ])
    41.7 +
    41.8 +                case "$host" in
    41.9 +                    # On Solaris, pulseaudio must be linked deferred explicitly
   41.10 +                    # to prevent undefined symbol failures.
   41.11 +                    *-*-solaris*)
   41.12 +                        PULSEAUDIO_LIBS=`echo $PULSEAUDIO_LIBS | sed 's/\-l/-Wl,-l/g'`
   41.13 +                        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-zdeferred $PULSEAUDIO_LIBS -Wl,-znodeferred"
   41.14 +                esac
   41.15              else
   41.16                  EXTRA_LDFLAGS="$EXTRA_LDFLAGS $PULSEAUDIO_LIBS"
   41.17              fi
   41.18 @@ -1415,7 +1423,7 @@
   41.19          else
   41.20              set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
   41.21              NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
   41.22 -            set -- `directfb-config --version | sed 's/\./ /g'`
   41.23 +            set -- `$DIRECTFBCONFIG --version | sed 's/\./ /g'`
   41.24              HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
   41.25              if test $HAVE_VERSION -ge $NEED_VERSION; then
   41.26                  DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
   41.27 @@ -1767,9 +1775,20 @@
   41.28              pthread_cflags="-D_REENTRANT"
   41.29              pthread_lib="-pthread"
   41.30              ;;
   41.31 -        *-*-solaris*)
   41.32 +        *-*-solaris2.9)
   41.33 +            # From Solaris 9+, posix4's preferred name is rt.
   41.34              pthread_cflags="-D_REENTRANT"
   41.35 -            pthread_lib="-lpthread -lposix4"
   41.36 +            pthread_lib="-lpthread -lrt"
   41.37 +            ;;
   41.38 +        *-*-solaris2.10)
   41.39 +            # Solaris 10+ merged pthread into libc.
   41.40 +            pthread_cflags="-D_REENTRANT"
   41.41 +            pthread_lib="-lrt"
   41.42 +            ;;
   41.43 +        *-*-solaris*)
   41.44 +            # Solaris 11+ merged rt into libc.
   41.45 +            pthread_cflags="-D_REENTRANT"
   41.46 +            pthread_lib=""
   41.47              ;;
   41.48          *-*-sysv5*)
   41.49              pthread_cflags="-D_REENTRANT -Kthread"
   41.50 @@ -2499,6 +2518,15 @@
   41.51          # The iOS platform requires special setup.
   41.52          SOURCES="$SOURCES $srcdir/src/video/uikit/*.m"
   41.53          SOURCES="$SOURCES $srcdir/src/video/uikit/*.c"
   41.54 +        EXTRA_CFLAGS="$EXTRA_CFLAGS -fpascal-strings"
   41.55 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lm -liconv -lobjc"
   41.56 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,Foundation"
   41.57 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,UIKit"
   41.58 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,OpenGLES"
   41.59 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,QuartzCore"
   41.60 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreAudio"
   41.61 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,AudioToolbox"
   41.62 +        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,CoreGraphics"
   41.63          ;;
   41.64      *-*-darwin* )
   41.65          # This could be either full "Mac OS X", or plain "Darwin" which is
    42.1 --- a/include/SDL.h	Sat Apr 13 23:03:46 2013 -0400
    42.2 +++ b/include/SDL.h	Sun Apr 14 11:42:55 2013 -0400
    42.3 @@ -41,10 +41,9 @@
    42.4   *  Guile, Haskell, Java, Lisp, Lua, ML, Objective C, Pascal, Perl, PHP,
    42.5   *  Pike, Pliant, Python, Ruby, and Smalltalk.
    42.6   *  
    42.7 - *  This library is distributed under GNU LGPL version 2, which can be
    42.8 + *  This library is distributed under the zlib license, which can be
    42.9   *  found in the file  "COPYING".  This license allows you to use SDL
   42.10 - *  freely in commercial programs as long as you link with the dynamic
   42.11 - *  library.
   42.12 + *  freely for any purpose as long as you retain the copyright notice.
   42.13   *  
   42.14   *  The best way to learn how to use SDL is to check out the header files in
   42.15   *  the "include" subdirectory and the programs in the "test" subdirectory.
   42.16 @@ -73,7 +72,9 @@
   42.17  #include "SDL_endian.h"
   42.18  #include "SDL_error.h"
   42.19  #include "SDL_events.h"
   42.20 +#include "SDL_joystick.h"
   42.21  #include "SDL_gamecontroller.h"
   42.22 +#include "SDL_haptic.h"
   42.23  #include "SDL_hints.h"
   42.24  #include "SDL_loadso.h"
   42.25  #include "SDL_log.h"
   42.26 @@ -112,7 +113,10 @@
   42.27  #define SDL_INIT_HAPTIC         0x00001000
   42.28  #define SDL_INIT_GAMECONTROLLER 0x00002000		/**< turn on game controller also implicitly does JOYSTICK */
   42.29  #define SDL_INIT_NOPARACHUTE    0x00100000      /**< Don't catch fatal signals */
   42.30 -#define SDL_INIT_EVERYTHING     0x0000FFFF
   42.31 +#define SDL_INIT_EVERYTHING ( \
   42.32 +                SDL_INIT_TIMER | SDL_INIT_AUDIO | SDL_INIT_VIDEO | \
   42.33 +                SDL_INIT_JOYSTICK | SDL_INIT_HAPTIC | SDL_INIT_GAMECONTROLLER \
   42.34 +            )
   42.35  /*@}*/
   42.36  
   42.37  /**
    43.1 --- a/include/SDL_atomic.h	Sat Apr 13 23:03:46 2013 -0400
    43.2 +++ b/include/SDL_atomic.h	Sun Apr 14 11:42:55 2013 -0400
    43.3 @@ -126,7 +126,7 @@
    43.4   * The compiler barrier prevents the compiler from reordering
    43.5   * reads and writes to globally visible variables across the call.
    43.6   */
    43.7 -#ifdef _MSC_VER
    43.8 +#if defined(_MSC_VER) && (_MSC_VER > 1200)
    43.9  void _ReadWriteBarrier(void);
   43.10  #pragma intrinsic(_ReadWriteBarrier)
   43.11  #define SDL_CompilerBarrier()   _ReadWriteBarrier()
   43.12 @@ -134,7 +134,7 @@
   43.13  #define SDL_CompilerBarrier()   __asm__ __volatile__ ("" : : : "memory")
   43.14  #else
   43.15  #define SDL_CompilerBarrier()   \
   43.16 -({ SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); })
   43.17 +{ SDL_SpinLock _tmp = 0; SDL_AtomicLock(&_tmp); SDL_AtomicUnlock(&_tmp); }
   43.18  #endif
   43.19  
   43.20  /* Platform specific optimized versions of the atomic functions,
   43.21 @@ -196,9 +196,8 @@
   43.22   * \note If you don't know what this function is for, you shouldn't use it!
   43.23  */
   43.24  #ifndef SDL_AtomicCAS
   43.25 -#define SDL_AtomicCAS SDL_AtomicCAS_
   43.26 +extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCAS(SDL_atomic_t *a, int oldval, int newval);
   43.27  #endif
   43.28 -extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCAS_(SDL_atomic_t *a, int oldval, int newval);
   43.29  
   43.30  /**
   43.31   * \brief Set an atomic variable to a value.
   43.32 @@ -206,7 +205,7 @@
   43.33   * \return The previous value of the atomic variable.
   43.34   */
   43.35  #ifndef SDL_AtomicSet
   43.36 -static __inline__ int SDL_AtomicSet(SDL_atomic_t *a, int v)
   43.37 +SDL_FORCE_INLINE int SDL_AtomicSet(SDL_atomic_t *a, int v)
   43.38  {
   43.39      int value;
   43.40      do {
   43.41 @@ -220,7 +219,7 @@
   43.42   * \brief Get the value of an atomic variable
   43.43   */
   43.44  #ifndef SDL_AtomicGet
   43.45 -static __inline__ int SDL_AtomicGet(SDL_atomic_t *a)
   43.46 +SDL_FORCE_INLINE int SDL_AtomicGet(SDL_atomic_t *a)
   43.47  {
   43.48      int value = a->value;
   43.49      SDL_CompilerBarrier();
   43.50 @@ -236,7 +235,7 @@
   43.51   * \note This same style can be used for any number operation
   43.52   */
   43.53  #ifndef SDL_AtomicAdd
   43.54 -static __inline__ int SDL_AtomicAdd(SDL_atomic_t *a, int v)
   43.55 +SDL_FORCE_INLINE int SDL_AtomicAdd(SDL_atomic_t *a, int v)
   43.56  {
   43.57      int value;
   43.58      do {
   43.59 @@ -271,9 +270,8 @@
   43.60   * \note If you don't know what this function is for, you shouldn't use it!
   43.61  */
   43.62  #ifndef SDL_AtomicCASPtr
   43.63 -#define SDL_AtomicCASPtr SDL_AtomicCASPtr_
   43.64 +extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCASPtr(void* *a, void *oldval, void *newval);
   43.65  #endif
   43.66 -extern DECLSPEC SDL_bool SDLCALL SDL_AtomicCASPtr_(void* *a, void *oldval, void *newval);
   43.67  
   43.68  /**
   43.69   * \brief Set a pointer to a value atomically.
   43.70 @@ -281,7 +279,7 @@
   43.71   * \return The previous value of the pointer.
   43.72   */
   43.73  #ifndef SDL_AtomicSetPtr
   43.74 -static __inline__ void* SDL_AtomicSetPtr(void* *a, void* v)
   43.75 +SDL_FORCE_INLINE void* SDL_AtomicSetPtr(void* *a, void* v)
   43.76  {
   43.77      void* value;
   43.78      do {
   43.79 @@ -295,7 +293,7 @@
   43.80   * \brief Get the value of a pointer atomically.
   43.81   */
   43.82  #ifndef SDL_AtomicGetPtr
   43.83 -static __inline__ void* SDL_AtomicGetPtr(void* *a)
   43.84 +SDL_FORCE_INLINE void* SDL_AtomicGetPtr(void* *a)
   43.85  {
   43.86      void* value = *a;
   43.87      SDL_CompilerBarrier();
    44.1 --- a/include/SDL_bits.h	Sat Apr 13 23:03:46 2013 -0400
    44.2 +++ b/include/SDL_bits.h	Sun Apr 14 11:42:55 2013 -0400
    44.3 @@ -40,11 +40,6 @@
    44.4  
    44.5  /**
    44.6   *  \file SDL_bits.h
    44.7 - *
    44.8 - *  Uses inline functions for compilers that support them, and static
    44.9 - *  functions for those that do not.  Because these functions become
   44.10 - *  static for compilers that do not support inline functions, this
   44.11 - *  header should only be included in files that actually use them.
   44.12   */
   44.13  
   44.14  /**
   44.15 @@ -54,10 +49,10 @@
   44.16   *
   44.17   *  \return Index of the most significant bit.
   44.18   */
   44.19 -static __inline__ Sint8
   44.20 +SDL_FORCE_INLINE Sint8
   44.21  SDL_MostSignificantBitIndex32(Uint32 x)
   44.22  {
   44.23 -#if defined(__GNUC__)
   44.24 +#if defined(__GNUC__) && __GNUC__ >= 4
   44.25      /* Count Leading Zeroes builtin in GCC.
   44.26       * http://gcc.gnu.org/onlinedocs/gcc-4.3.4/gcc/Other-Builtins.html
   44.27       */
    45.1 --- a/include/SDL_config.h	Sat Apr 13 23:03:46 2013 -0400
    45.2 +++ b/include/SDL_config.h	Sun Apr 14 11:42:55 2013 -0400
    45.3 @@ -39,8 +39,8 @@
    45.4  #include "SDL_config_iphoneos.h"
    45.5  #elif defined(__ANDROID__)
    45.6  #include "SDL_config_android.h"
    45.7 -#elif defined(__NINTENDODS__)
    45.8 -#include "SDL_config_nintendods.h"
    45.9 +#elif defined(__PSP__)
   45.10 +#include "SDL_config_psp.h"
   45.11  #else
   45.12  /* This is a minimal configuration just to get SDL running on new platforms */
   45.13  #include "SDL_config_minimal.h"
    46.1 --- a/include/SDL_config.h.cmake	Sat Apr 13 23:03:46 2013 -0400
    46.2 +++ b/include/SDL_config.h.cmake	Sun Apr 14 11:42:55 2013 -0400
    46.3 @@ -195,7 +195,6 @@
    46.4  #cmakedefine SDL_AUDIO_DRIVER_ESD_DYNAMIC @SDL_AUDIO_DRIVER_ESD_DYNAMIC@
    46.5  #cmakedefine SDL_AUDIO_DRIVER_NAS @SDL_AUDIO_DRIVER_NAS@
    46.6  #cmakedefine SDL_AUDIO_DRIVER_NAS_DYNAMIC @SDL_AUDIO_DRIVER_NAS_DYNAMIC@
    46.7 -#cmakedefine SDL_AUDIO_DRIVER_NDS @SDL_AUDIO_DRIVER_NDS@
    46.8  #cmakedefine SDL_AUDIO_DRIVER_OSS @SDL_AUDIO_DRIVER_OSS@
    46.9  #cmakedefine SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H @SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H@
   46.10  #cmakedefine SDL_AUDIO_DRIVER_PAUDIO @SDL_AUDIO_DRIVER_PAUDIO@
   46.11 @@ -213,7 +212,6 @@
   46.12  #cmakedefine SDL_JOYSTICK_DUMMY @SDL_JOYSTICK_DUMMY@
   46.13  #cmakedefine SDL_JOYSTICK_IOKIT @SDL_JOYSTICK_IOKIT@
   46.14  #cmakedefine SDL_JOYSTICK_LINUX @SDL_JOYSTICK_LINUX@
   46.15 -#cmakedefine SDL_JOYSTICK_NDS @SDL_JOYSTICK_NDS@
   46.16  #cmakedefine SDL_JOYSTICK_WINMM @SDL_JOYSTICK_WINMM@
   46.17  #cmakedefine SDL_JOYSTICK_USBHID @SDL_JOYSTICK_USBHID@
   46.18  #cmakedefine SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H @SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H@
   46.19 @@ -231,7 +229,6 @@
   46.20  
   46.21  /* Enable various threading systems */
   46.22  #cmakedefine SDL_THREAD_BEOS @SDL_THREAD_BEOS@
   46.23 -#cmakedefine SDL_THREAD_NDS @SDL_THREAD_NDS@
   46.24  #cmakedefine SDL_THREAD_PTHREAD @SDL_THREAD_PTHREAD@
   46.25  #cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX@
   46.26  #cmakedefine SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP @SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP@
   46.27 @@ -240,7 +237,6 @@
   46.28  /* Enable various timer systems */
   46.29  #cmakedefine SDL_TIMER_BEOS @SDL_TIMER_BEOS@
   46.30  #cmakedefine SDL_TIMER_DUMMY @SDL_TIMER_DUMMY@
   46.31 -#cmakedefine SDL_TIMER_NDS @SDL_TIMER_NDS@
   46.32  #cmakedefine SDL_TIMER_UNIX @SDL_TIMER_UNIX@
   46.33  #cmakedefine SDL_TIMER_WINDOWS @SDL_TIMER_WINDOWS@
   46.34  #cmakedefine SDL_TIMER_WINCE @SDL_TIMER_WINCE@
   46.35 @@ -251,7 +247,6 @@
   46.36  #cmakedefine SDL_VIDEO_DRIVER_DIRECTFB @SDL_VIDEO_DRIVER_DIRECTFB@
   46.37  #cmakedefine SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC @SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC@
   46.38  #cmakedefine SDL_VIDEO_DRIVER_DUMMY @SDL_VIDEO_DRIVER_DUMMY@
   46.39 -#cmakedefine SDL_VIDEO_DRIVER_NDS @SDL_VIDEO_DRIVER_NDS@
   46.40  #cmakedefine SDL_VIDEO_DRIVER_WINDOWS @SDL_VIDEO_DRIVER_WINDOWS@
   46.41  #cmakedefine SDL_VIDEO_DRIVER_X11 @SDL_VIDEO_DRIVER_X11@
   46.42  #cmakedefine SDL_VIDEO_DRIVER_X11_DYNAMIC @SDL_VIDEO_DRIVER_X11_DYNAMIC@
   46.43 @@ -295,7 +290,6 @@
   46.44  #cmakedefine SDL_POWER_WINDOWS @SDL_POWER_WINDOWS@
   46.45  #cmakedefine SDL_POWER_MACOSX @SDL_POWER_MACOSX@
   46.46  #cmakedefine SDL_POWER_BEOS @SDL_POWER_BEOS@
   46.47 -#cmakedefine SDL_POWER_NINTENDODS @SDL_POWER_NINTENDODS@
   46.48  #cmakedefine SDL_POWER_HARDWIRED @SDL_POWER_HARDWIRED@
   46.49  
   46.50  /* Enable assembly routines */
    47.1 --- a/include/SDL_config.h.in	Sat Apr 13 23:03:46 2013 -0400
    47.2 +++ b/include/SDL_config.h.in	Sun Apr 14 11:42:55 2013 -0400
    47.3 @@ -198,7 +198,6 @@
    47.4  #undef SDL_AUDIO_DRIVER_ESD_DYNAMIC
    47.5  #undef SDL_AUDIO_DRIVER_NAS
    47.6  #undef SDL_AUDIO_DRIVER_NAS_DYNAMIC
    47.7 -#undef SDL_AUDIO_DRIVER_NDS
    47.8  #undef SDL_AUDIO_DRIVER_OSS
    47.9  #undef SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H
   47.10  #undef SDL_AUDIO_DRIVER_PAUDIO
   47.11 @@ -216,7 +215,6 @@
   47.12  #undef SDL_JOYSTICK_DUMMY
   47.13  #undef SDL_JOYSTICK_IOKIT
   47.14  #undef SDL_JOYSTICK_LINUX
   47.15 -#undef SDL_JOYSTICK_NDS
   47.16  #undef SDL_JOYSTICK_WINMM
   47.17  #undef SDL_JOYSTICK_USBHID
   47.18  #undef SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H
   47.19 @@ -234,7 +232,6 @@
   47.20  
   47.21  /* Enable various threading systems */
   47.22  #undef SDL_THREAD_BEOS
   47.23 -#undef SDL_THREAD_NDS
   47.24  #undef SDL_THREAD_PTHREAD
   47.25  #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX
   47.26  #undef SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP
   47.27 @@ -243,7 +240,6 @@
   47.28  /* Enable various timer systems */
   47.29  #undef SDL_TIMER_BEOS
   47.30  #undef SDL_TIMER_DUMMY
   47.31 -#undef SDL_TIMER_NDS
   47.32  #undef SDL_TIMER_UNIX
   47.33  #undef SDL_TIMER_WINDOWS
   47.34  
   47.35 @@ -253,7 +249,6 @@
   47.36  #undef SDL_VIDEO_DRIVER_DIRECTFB
   47.37  #undef SDL_VIDEO_DRIVER_DIRECTFB_DYNAMIC
   47.38  #undef SDL_VIDEO_DRIVER_DUMMY
   47.39 -#undef SDL_VIDEO_DRIVER_NDS
   47.40  #undef SDL_VIDEO_DRIVER_WINDOWS
   47.41  #undef SDL_VIDEO_DRIVER_X11
   47.42  #undef SDL_VIDEO_DRIVER_X11_DYNAMIC
   47.43 @@ -297,7 +292,6 @@
   47.44  #undef SDL_POWER_WINDOWS
   47.45  #undef SDL_POWER_MACOSX
   47.46  #undef SDL_POWER_BEOS
   47.47 -#undef SDL_POWER_NINTENDODS
   47.48  #undef SDL_POWER_HARDWIRED
   47.49  
   47.50  /* Enable assembly routines */
    48.1 --- a/include/SDL_config_nintendods.h	Sat Apr 13 23:03:46 2013 -0400
    48.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
    48.3 @@ -1,129 +0,0 @@
    48.4 -/*
    48.5 -  Simple DirectMedia Layer
    48.6 -  Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
    48.7 -
    48.8 -  This software is provided 'as-is', without any express or implied
    48.9 -  warranty.  In no event will the authors be held liable for any damages
   48.10 -  arising from the use of this software.
   48.11 -
   48.12 -  Permission is granted to anyone to use this software for any purpose,
   48.13 -  including commercial applications, and to alter it and redistribute it
   48.14 -  freely, subject to the following restrictions:
   48.15 -
   48.16 -  1. The origin of this software must not be misrepresented; you must not
   48.17 -     claim that you wrote the original software. If you use this software
   48.18 -     in a product, an acknowledgment in the product documentation would be
   48.19 -     appreciated but is not required.
   48.20 -  2. Altered source versions must be plainly marked as such, and must not be
   48.21 -     misrepresented as being the original software.
   48.22 -  3. This notice may not be removed or altered from any source distribution.
   48.23 -*/
   48.24 -
   48.25 -#ifndef _SDL_config_nintendods_h
   48.26 -#define _SDL_config_nintendods_h
   48.27 -
   48.28 -#include "SDL_platform.h"
   48.29 -
   48.30 -/* This is a set of defines to configure the SDL features */
   48.31 -
   48.32 -#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
   48.33 -typedef signed char int8_t;
   48.34 -typedef unsigned char uint8_t;
   48.35 -typedef signed short int16_t;
   48.36 -typedef unsigned short uint16_t;
   48.37 -typedef signed int int32_t;
   48.38 -typedef unsigned int uint32_t;
   48.39 -typedef signed long long int64_t;
   48.40 -typedef unsigned long long uint64_t;
   48.41 -
   48.42 -/* LiF: __PTRDIFF_TYPE__ was causing errors of conflicting typedefs with the
   48.43 -   <stdint.h> shipping with devkitARM.  copied a similar ifdef from it. */
   48.44 -#ifndef __PTRDIFF_TYPE__
   48.45 -typedef unsigned long uintptr_t;
   48.46 -#else
   48.47 -typedef unsigned __PTRDIFF_TYPE__ uintptr_t;
   48.48 -#endif
   48.49 -#endif /* !_STDINT_H_ && !HAVE_STDINT_H */
   48.50 -
   48.51 -#define SIZEOF_VOIDP 4
   48.52 -
   48.53 -/* Useful headers */
   48.54 -#define HAVE_SYS_TYPES_H	1
   48.55 -#define HAVE_STDIO_H	1
   48.56 -#define STDC_HEADERS	1
   48.57 -#define HAVE_STRING_H	1
   48.58 -#define HAVE_CTYPE_H	1
   48.59 -
   48.60 -/* C library functions */
   48.61 -#define HAVE_MALLOC	1
   48.62 -#define HAVE_CALLOC	1
   48.63 -#define HAVE_REALLOC	1
   48.64 -#define HAVE_FREE	1
   48.65 -#define HAVE_ALLOCA	1
   48.66 -#define HAVE_GETENV	1
   48.67 -#define HAVE_SETENV	1
   48.68 -#define HAVE_PUTENV	1
   48.69 -#define HAVE_QSORT	1
   48.70 -#define HAVE_ABS	1
   48.71 -#define HAVE_BCOPY	1
   48.72 -#define HAVE_MEMSET	1
   48.73 -#define HAVE_MEMCPY	1
   48.74 -#define HAVE_MEMMOVE	1
   48.75 -#define HAVE_MEMCMP	1
   48.76 -#define HAVE_STRLEN	1
   48.77 -#define HAVE_STRDUP	1
   48.78 -#define HAVE_INDEX	1
   48.79 -#define HAVE_RINDEX	1
   48.80 -#define HAVE_STRCHR	1
   48.81 -#define HAVE_STRRCHR	1
   48.82 -#define HAVE_STRSTR	1
   48.83 -#define HAVE_STRTOL	1
   48.84 -#define HAVE_STRTOD	1
   48.85 -#define HAVE_ATOI	1
   48.86 -#define HAVE_ATOF	1
   48.87 -#define HAVE_STRCMP	1
   48.88 -#define HAVE_STRNCMP	1
   48.89 -#define HAVE_STRICMP	1
   48.90 -#define HAVE_STRCASECMP	1
   48.91 -#define HAVE_SSCANF	1
   48.92 -#define HAVE_SNPRINTF	1
   48.93 -#define HAVE_VSNPRINTF	1
   48.94 -
   48.95 -/* DS isn't that sophisticated */
   48.96 -#define LACKS_SYS_MMAN_H 1
   48.97 -
   48.98 -/* Enable various audio drivers */
   48.99 -#define SDL_AUDIO_DRIVER_NDS	1
  48.100 -/*#define SDL_AUDIO_DRIVER_DUMMY	1 TODO: uncomment this later*/
  48.101 -
  48.102 -/* Enable various input drivers */
  48.103 -#define SDL_JOYSTICK_NDS	1
  48.104 -/*#define SDL_JOYSTICK_DUMMY	1 TODO: uncomment this later*/
  48.105 -
  48.106 -/* DS has no dynamic linking afaik */
  48.107 -#define SDL_LOADSO_DISABLED	1
  48.108 -
  48.109 -/* Enable various threading systems */
  48.110 -/*#define SDL_THREAD_NDS	1*/
  48.111 -#define SDL_THREADS_DISABLED	1
  48.112 -
  48.113 -/* Enable various timer systems */
  48.114 -#define SDL_TIMER_NDS	1
  48.115 -
  48.116 -/* Enable various video drivers */
  48.117 -#define SDL_VIDEO_DRIVER_NDS	1
  48.118 -#ifdef USE_HW_RENDERER
  48.119 -#define SDL_VIDEO_RENDER_NDS	1
  48.120 -#else
  48.121 -#define SDL_VIDEO_RENDER_NDS	0
  48.122 -#endif
  48.123 -
  48.124 -/* Enable system power support */
  48.125 -#define SDL_POWER_NINTENDODS 1
  48.126 -
  48.127 -/* Enable haptic support */
  48.128 -#define SDL_HAPTIC_NDS 1
  48.129 -
  48.130 -#define SDL_BYTEORDER   SDL_LIL_ENDIAN
  48.131 -
  48.132 -#endif /* _SDL_config_nintendods_h */
    49.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    49.2 +++ b/include/SDL_config_psp.h	Sun Apr 14 11:42:55 2013 -0400
    49.3 @@ -0,0 +1,136 @@
    49.4 +/*
    49.5 +  Simple DirectMedia Layer
    49.6 +  Copyright (C) 1997-2013 Sam Lantinga <slouken@libsdl.org>
    49.7 +
    49.8 +  This software is provided 'as-is', without any express or implied
    49.9 +  warranty.  In no event will the authors be held liable for any damages
   49.10 +  arising from the use of this software.
   49.11 +
   49.12 +  Permission is granted to anyone to use this software for any purpose,
   49.13 +  including commercial applications, and to alter it and redistribute it
   49.14 +  freely, subject to the following restrictions:
   49.15 +
   49.16 +  1. The origin of this software must not be misrepresented; you must not
   49.17 +     claim that you wrote the original software. If you use this software
   49.18 +     in a product, an acknowledgment in the product documentation would be
   49.19 +     appreciated but is not required.
   49.20 +  2. Altered source versions must be plainly marked as such, and must not be
   49.21 +     misrepresented as being the original software.
   49.22 +  3. This notice may not be removed or altered from any source distribution.
   49.23 +*/
   49.24 +
   49.25 +#ifndef _SDL_config_psp_h
   49.26 +#define _SDL_config_psp_h
   49.27 +
   49.28 +#include "SDL_platform.h"
   49.29 +
   49.30 +
   49.31 +
   49.32 +#ifdef __GNUC__
   49.33 +#define HAVE_GCC_SYNC_LOCK_TEST_AND_SET 1
   49.34 +#endif
   49.35 +
   49.36 +#define HAVE_GCC_ATOMICS	1
   49.37 +
   49.38 +#define HAVE_ALLOCA_H		1
   49.39 +#define HAVE_SYS_TYPES_H	1
   49.40 +#define HAVE_STDIO_H	1
   49.41 +#define STDC_HEADERS	1
   49.42 +#define HAVE_STRING_H	1
   49.43 +#define HAVE_INTTYPES_H	1
   49.44 +#define HAVE_STDINT_H	1
   49.45 +#define HAVE_CTYPE_H	1
   49.46 +#define HAVE_MATH_H	1
   49.47 +#define HAVE_SIGNAL_H	1
   49.48 +
   49.49 +/* C library functions */
   49.50 +#define HAVE_MALLOC	1
   49.51 +#define HAVE_CALLOC	1
   49.52 +#define HAVE_REALLOC	1
   49.53 +#define HAVE_FREE	1
   49.54 +#define HAVE_ALLOCA	1
   49.55 +#define HAVE_GETENV	1
   49.56 +#define HAVE_SETENV	1
   49.57 +#define HAVE_PUTENV	1
   49.58 +#define HAVE_SETENV	1
   49.59 +#define HAVE_UNSETENV	1
   49.60 +#define HAVE_QSORT	1
   49.61 +#define HAVE_ABS	1
   49.62 +#define HAVE_BCOPY	1
   49.63 +#define HAVE_MEMSET	1
   49.64 +#define HAVE_MEMCPY	1
   49.65 +#define HAVE_MEMMOVE	1
   49.66 +#define HAVE_MEMCMP	1
   49.67 +#define HAVE_STRLEN	1
   49.68 +#define HAVE_STRLCPY	1
   49.69 +#define HAVE_STRLCAT	1
   49.70 +#define HAVE_STRDUP	1
   49.71 +#define HAVE_STRCHR	1
   49.72 +#define HAVE_STRRCHR	1
   49.73 +#define HAVE_STRSTR	1
   49.74 +#define HAVE_STRTOL	1
   49.75 +#define HAVE_STRTOUL	1
   49.76 +#define HAVE_STRTOLL	1
   49.77 +#define HAVE_STRTOULL	1
   49.78 +#define HAVE_STRTOD	1
   49.79 +#define HAVE_ATOI	1
   49.80 +#define HAVE_ATOF	1
   49.81 +#define HAVE_STRCMP	1
   49.82 +#define HAVE_STRNCMP	1
   49.83 +#define HAVE_STRCASECMP	1
   49.84 +#define HAVE_STRNCASECMP 1
   49.85 +#define HAVE_SSCANF	1
   49.86 +#define HAVE_SNPRINTF	1
   49.87 +#define HAVE_VSNPRINTF	1
   49.88 +#define HAVE_M_PI	1
   49.89 +#define HAVE_ATAN	1
   49.90 +#define HAVE_ATAN2	1
   49.91 +#define HAVE_CEIL	1
   49.92 +#define HAVE_COPYSIGN	1
   49.93 +#define HAVE_COS	1
   49.94 +#define HAVE_COSF	1
   49.95 +#define HAVE_FABS	1
   49.96 +#define HAVE_FLOOR	1
   49.97 +#define HAVE_LOG	1
   49.98 +#define HAVE_POW	1
   49.99 +#define HAVE_SCALBN	1
  49.100 +#define HAVE_SIN	1
  49.101 +#define HAVE_SINF	1
  49.102 +#define HAVE_SQRT	1
  49.103 +#define HAVE_SETJMP	1
  49.104 +#define HAVE_NANOSLEEP	1
  49.105 +//#define HAVE_SYSCONF	1
  49.106 +//#define HAVE_SIGACTION	1
  49.107 +
  49.108 +
  49.109 +/* PSP isn't that sophisticated */
  49.110 +#define LACKS_SYS_MMAN_H 1
  49.111 +
  49.112 +/* Enable the stub thread support (src/thread/psp/\*.c) */
  49.113 +#define SDL_THREAD_PSP	1
  49.114 +
  49.115 +/* Enable the stub timer support (src/timer/psp/\*.c) */
  49.116 +#define SDL_TIMERS_PSP	1
  49.117 +
  49.118 +/* Enable the stub joystick driver (src/joystick/psp/\*.c) */
  49.119 +#define SDL_JOYSTICK_PSP		1
  49.120 +
  49.121 +/* Enable the stub audio driver (src/audio/psp/\*.c) */
  49.122 +#define SDL_AUDIO_DRIVER_PSP	1
  49.123 +
  49.124 +/* PSP video dirver */
  49.125 +#define SDL_VIDEO_DRIVER_PSP   1
  49.126 +
  49.127 +/* PSP render dirver */
  49.128 +#define SDL_VIDEO_RENDER_PSP   1
  49.129 +
  49.130 +#define SDL_POWER_PSP          1
  49.131 +
  49.132 +/* PSP doesn't have haptic device (src/haptic/dummy/\*.c) */
  49.133 +#define SDL_HAPTIC_DISABLED	   1
  49.134 +
  49.135 +/* PSP can't load shared object (src/loadso/dummy/\*.c) */
  49.136 +#define SDL_LOADSO_DISABLED	   1
  49.137 +
  49.138 +
  49.139 +#endif /* _SDL_config_minimal_h */
    50.1 --- a/include/SDL_config_windowsrt.h	Sat Apr 13 23:03:46 2013 -0400
    50.2 +++ b/include/SDL_config_windowsrt.h	Sun Apr 14 11:42:55 2013 -0400
    50.3 @@ -109,7 +109,7 @@
    50.4  //#define HAVE__ULTOA 1	// TODO, WinRT: consider using _ultoa_s instead
    50.5  #define HAVE_STRTOL 1
    50.6  #define HAVE_STRTOUL 1
    50.7 -#define HAVE_STRTOLL 1
    50.8 +//#define HAVE_STRTOLL 1
    50.9  #define HAVE_STRTOD 1
   50.10  #define HAVE_ATOI 1
   50.11  #define HAVE_ATOF 1
   50.12 @@ -123,14 +123,14 @@
   50.13  #define HAVE_ATAN 1
   50.14  #define HAVE_ATAN2 1
   50.15  #define HAVE_CEIL 1
   50.16 -#define HAVE_COPYSIGN 1
   50.17 +//#define HAVE_COPYSIGN 1   // TODO, WinRT: consider using _copysign instead
   50.18  #define HAVE_COS 1
   50.19  #define HAVE_COSF 1
   50.20  #define HAVE_FABS 1
   50.21  #define HAVE_FLOOR 1
   50.22  #define HAVE_LOG 1
   50.23  #define HAVE_POW 1
   50.24 -#define HAVE_SCALBN 1
   50.25 +//#define HAVE_SCALBN 1
   50.26  #define HAVE_SIN 1
   50.27  #define HAVE_SINF 1
   50.28  #define HAVE_SQRT 1
    51.1 --- a/include/SDL_endian.h	Sat Apr 13 23:03:46 2013 -0400
    51.2 +++ b/include/SDL_endian.h	Sun Apr 14 11:42:55 2013 -0400
    51.3 @@ -66,29 +66,24 @@
    51.4  
    51.5  /**
    51.6   *  \file SDL_endian.h
    51.7 - *  
    51.8 - *  Uses inline functions for compilers that support them, and static
    51.9 - *  functions for those that do not.  Because these functions become
   51.10 - *  static for compilers that do not support inline functions, this
   51.11 - *  header should only be included in files that actually use them.
   51.12   */
   51.13  #if defined(__GNUC__) && defined(__i386__) && \
   51.14     !(__GNUC__ == 2 && __GNUC_MINOR__ == 95 /* broken gcc version */)
   51.15 -static __inline__ Uint16
   51.16 +SDL_FORCE_INLINE Uint16
   51.17  SDL_Swap16(Uint16 x)
   51.18  {
   51.19    __asm__("xchgb %b0,%h0": "=q"(x):"0"(x));
   51.20      return x;
   51.21  }
   51.22  #elif defined(__GNUC__) && defined(__x86_64__)
   51.23 -static __inline__ Uint16
   51.24 +SDL_FORCE_INLINE Uint16
   51.25  SDL_Swap16(Uint16 x)
   51.26  {
   51.27    __asm__("xchgb %b0,%h0": "=Q"(x):"0"(x));
   51.28      return x;
   51.29  }
   51.30  #elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
   51.31 -static __inline__ Uint16
   51.32 +SDL_FORCE_INLINE Uint16
   51.33  SDL_Swap16(Uint16 x)
   51.34  {
   51.35      int result;
   51.36 @@ -97,14 +92,14 @@
   51.37      return (Uint16)result;
   51.38  }
   51.39  #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__)
   51.40 -static __inline__ Uint16
   51.41 +SDL_FORCE_INLINE Uint16
   51.42  SDL_Swap16(Uint16 x)
   51.43  {
   51.44    __asm__("rorw #8,%0": "=d"(x): "0"(x):"cc");
   51.45      return x;
   51.46  }
   51.47  #else
   51.48 -static __inline__ Uint16
   51.49 +SDL_FORCE_INLINE Uint16
   51.50  SDL_Swap16(Uint16 x)
   51.51  {
   51.52      return SDL_static_cast(Uint16, ((x << 8) | (x >> 8)));
   51.53 @@ -112,21 +107,21 @@
   51.54  #endif
   51.55  
   51.56  #if defined(__GNUC__) && defined(__i386__)
   51.57 -static __inline__ Uint32
   51.58 +SDL_FORCE_INLINE Uint32
   51.59  SDL_Swap32(Uint32 x)
   51.60  {
   51.61    __asm__("bswap %0": "=r"(x):"0"(x));
   51.62      return x;
   51.63  }
   51.64  #elif defined(__GNUC__) && defined(__x86_64__)
   51.65 -static __inline__ Uint32
   51.66 +SDL_FORCE_INLINE Uint32
   51.67  SDL_Swap32(Uint32 x)
   51.68  {
   51.69    __asm__("bswapl %0": "=r"(x):"0"(x));
   51.70      return x;
   51.71  }
   51.72  #elif defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))
   51.73 -static __inline__ Uint32
   51.74 +SDL_FORCE_INLINE Uint32
   51.75  SDL_Swap32(Uint32 x)
   51.76  {
   51.77      Uint32 result;
   51.78 @@ -137,14 +132,14 @@
   51.79      return result;
   51.80  }
   51.81  #elif defined(__GNUC__) && (defined(__M68000__) || defined(__M68020__)) && !defined(__mcoldfire__)
   51.82 -static __inline__ Uint32
   51.83 +SDL_FORCE_INLINE Uint32
   51.84  SDL_Swap32(Uint32 x)
   51.85  {
   51.86    __asm__("rorw #8,%0\n\tswap %0\n\trorw #8,%0": "=d"(x): "0"(x):"cc");
   51.87      return x;
   51.88  }
   51.89  #else
   51.90 -static __inline__ Uint32
   51.91 +SDL_FORCE_INLINE Uint32
   51.92  SDL_Swap32(Uint32 x)
   51.93  {
   51.94      return SDL_static_cast(Uint32, ((x << 24) | ((x << 8) & 0x00FF0000) |
   51.95 @@ -153,7 +148,7 @@
   51.96  #endif
   51.97  
   51.98  #if defined(__GNUC__) && defined(__i386__)
   51.99 -static __inline__ Uint64
  51.100 +SDL_FORCE_INLINE Uint64
  51.101  SDL_Swap64(Uint64 x)
  51.102  {
  51.103      union
  51.104 @@ -171,14 +166,14 @@
  51.105      return v.u;
  51.106  }
  51.107  #elif defined(__GNUC__) && defined(__x86_64__)
  51.108 -static __inline__ Uint64
  51.109 +SDL_FORCE_INLINE Uint64
  51.110  SDL_Swap64(Uint64 x)
  51.111  {
  51.112    __asm__("bswapq %0": "=r"(x):"0"(x));
  51.113      return x;
  51.114  }
  51.115  #else
  51.116 -static __inline__ Uint64
  51.117 +SDL_FORCE_INLINE Uint64
  51.118  SDL_Swap64(Uint64 x)
  51.119  {
  51.120      Uint32 hi, lo;
  51.121 @@ -195,7 +190,7 @@
  51.122  #endif
  51.123  
  51.124  
  51.125 -static __inline__ float
  51.126 +SDL_FORCE_INLINE float
  51.127  SDL_SwapFloat(float x)
  51.128  {
  51.129      union
    52.1 --- a/include/SDL_error.h	Sat Apr 13 23:03:46 2013 -0400
    52.2 +++ b/include/SDL_error.h	Sun Apr 14 11:42:55 2013 -0400
    52.3 @@ -39,7 +39,8 @@
    52.4  #endif
    52.5  
    52.6  /* Public functions */
    52.7 -extern DECLSPEC void SDLCALL SDL_SetError(const char *fmt, ...);
    52.8 +/* SDL_SetError() unconditionally returns -1. */
    52.9 +extern DECLSPEC int SDLCALL SDL_SetError(const char *fmt, ...);
   52.10  extern DECLSPEC const char *SDLCALL SDL_GetError(void);
   52.11  extern DECLSPEC void SDLCALL SDL_ClearError(void);
   52.12  
   52.13 @@ -62,7 +63,8 @@
   52.14      SDL_UNSUPPORTED,
   52.15      SDL_LASTERROR
   52.16  } SDL_errorcode;
   52.17 -extern DECLSPEC void SDLCALL SDL_Error(SDL_errorcode code);
   52.18 +/* SDL_Error() unconditionally returns -1. */
   52.19 +extern DECLSPEC int SDLCALL SDL_Error(SDL_errorcode code);
   52.20  /*@}*//*Internal error functions*/
   52.21  
   52.22  /* Ends C function definitions when using C++ */
    53.1 --- a/include/SDL_events.h	Sat Apr 13 23:03:46 2013 -0400
    53.2 +++ b/include/SDL_events.h	Sun Apr 14 11:42:55 2013 -0400
    53.3 @@ -77,14 +77,6 @@
    53.4      SDL_MOUSEBUTTONUP,          /**< Mouse button released */
    53.5      SDL_MOUSEWHEEL,             /**< Mouse wheel motion */
    53.6  
    53.7 -    /* Tablet or multiple mice input device events */
    53.8 -    SDL_INPUTMOTION    = 0x500, /**< Input moved */
    53.9 -    SDL_INPUTBUTTONDOWN,        /**< Input button pressed */
   53.10 -    SDL_INPUTBUTTONUP,          /**< Input button released */
   53.11 -    SDL_INPUTWHEEL,             /**< Input wheel motion */
   53.12 -    SDL_INPUTPROXIMITYIN,       /**< Input pen entered proximity */
   53.13 -    SDL_INPUTPROXIMITYOUT,      /**< Input pen left proximity */
   53.14 -
   53.15      /* Joystick events */
   53.16      SDL_JOYAXISMOTION  = 0x600, /**< Joystick axis motion */
   53.17      SDL_JOYBALLMOTION,          /**< Joystick trackball motion */
   53.18 @@ -100,13 +92,12 @@
   53.19  	SDL_CONTROLLERBUTTONUP,            /**< Game controller button released */
   53.20  	SDL_CONTROLLERDEVICEADDED,         /**< A new Game controller has been inserted into the system */
   53.21  	SDL_CONTROLLERDEVICEREMOVED,       /**< An opened Game controller has been removed */
   53.22 +	SDL_CONTROLLERDEVICEREMAPPED,      /**< The controller mapping was updated */
   53.23  
   53.24      /* Touch events */
   53.25      SDL_FINGERDOWN      = 0x700,
   53.26      SDL_FINGERUP,
   53.27      SDL_FINGERMOTION,
   53.28 -    SDL_TOUCHBUTTONDOWN,
   53.29 -    SDL_TOUCHBUTTONUP,    
   53.30  
   53.31      /* Gesture events */
   53.32      SDL_DOLLARGESTURE   = 0x800,
   53.33 @@ -131,6 +122,15 @@
   53.34  } SDL_EventType;
   53.35  
   53.36  /**
   53.37 + *  \brief Fields shared by every event
   53.38 + */
   53.39 +typedef struct SDL_GenericEvent
   53.40 +{
   53.41 +    Uint32 type;
   53.42 +    Uint32 timestamp;
   53.43 +} SDL_GenericEvent;
   53.44 +    
   53.45 +/**
   53.46   *  \brief Window state change event data (event.window.*)
   53.47   */
   53.48  typedef struct SDL_WindowEvent
   53.49 @@ -142,8 +142,8 @@
   53.50      Uint8 padding1;
   53.51      Uint8 padding2;
   53.52      Uint8 padding3;
   53.53 -    int data1;          /**< event dependent data */
   53.54 -    int data2;          /**< event dependent data */
   53.55 +    Sint32 data1;       /**< event dependent data */
   53.56 +    Sint32 data2;       /**< event dependent data */
   53.57  } SDL_WindowEvent;
   53.58  
   53.59  /**
   53.60 @@ -171,8 +171,8 @@
   53.61      Uint32 timestamp;
   53.62      Uint32 windowID;                            /**< The window with keyboard focus, if any */
   53.63      char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE];  /**< The editing text */
   53.64 -    int start;                                  /**< The start cursor of selected editing text */
   53.65 -    int length;                                 /**< The length of selected editing text */
   53.66 +    Sint32 start;                               /**< The start cursor of selected editing text */
   53.67 +    Sint32 length;                              /**< The length of selected editing text */
   53.68  } SDL_TextEditingEvent;
   53.69  
   53.70  
   53.71 @@ -196,14 +196,15 @@
   53.72      Uint32 type;        /**< ::SDL_MOUSEMOTION */
   53.73      Uint32 timestamp;
   53.74      Uint32 windowID;    /**< The window with mouse focus, if any */
   53.75 +    Uint32 which;       /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
   53.76      Uint8 state;        /**< The current button state */
   53.77      Uint8 padding1;
   53.78      Uint8 padding2;
   53.79      Uint8 padding3;
   53.80 -    int x;              /**< X coordinate, relative to window */
   53.81 -    int y;              /**< Y coordinate, relative to window */
   53.82 -    int xrel;           /**< The relative motion in the X direction */
   53.83 -    int yrel;           /**< The relative motion in the Y direction */
   53.84 +    Sint32 x;           /**< X coordinate, relative to window */
   53.85 +    Sint32 y;           /**< Y coordinate, relative to window */
   53.86 +    Sint32 xrel;        /**< The relative motion in the X direction */
   53.87 +    Sint32 yrel;        /**< The relative motion in the Y direction */
   53.88  } SDL_MouseMotionEvent;
   53.89  
   53.90  /**
   53.91 @@ -214,12 +215,13 @@
   53.92      Uint32 type;        /**< ::SDL_MOUSEBUTTONDOWN or ::SDL_MOUSEBUTTONUP */
   53.93      Uint32 timestamp;
   53.94      Uint32 windowID;    /**< The window with mouse focus, if any */
   53.95 +    Uint32 which;       /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
   53.96      Uint8 button;       /**< The mouse button index */
   53.97      Uint8 state;        /**< ::SDL_PRESSED or ::SDL_RELEASED */
   53.98      Uint8 padding1;
   53.99      Uint8 padding2;
  53.100 -    int x;              /**< X coordinate, relative to window */
  53.101 -    int y;              /**< Y coordinate, relative to window */
  53.102 +    Sint32 x;           /**< X coordinate, relative to window */
  53.103 +    Sint32 y;           /**< Y coordinate, relative to window */
  53.104  } SDL_MouseButtonEvent;
  53.105  
  53.106  /**
  53.107 @@ -230,8 +232,9 @@
  53.108      Uint32 type;        /**< ::SDL_MOUSEWHEEL */
  53.109      Uint32 timestamp;
  53.110      Uint32 windowID;    /**< The window with mouse focus, if any */
  53.111 -    int x;              /**< The amount scrolled horizontally */
  53.112 -    int y;              /**< The amount scrolled vertically */
  53.113 +    Uint32 which;       /**< The mouse instance id, or SDL_TOUCH_MOUSEID */
  53.114 +    Sint32 x;           /**< The amount scrolled horizontally */
  53.115 +    Sint32 y;           /**< The amount scrolled vertically */
  53.116  } SDL_MouseWheelEvent;
  53.117  
  53.118  /**
  53.119 @@ -241,11 +244,13 @@
  53.120  {
  53.121      Uint32 type;        /**< ::SDL_JOYAXISMOTION */
  53.122      Uint32 timestamp;
  53.123 -    Uint8 which;        /**< The joystick instance id */
  53.124 +    SDL_JoystickID which; /**< The joystick instance id */
  53.125      Uint8 axis;         /**< The joystick axis index */
  53.126      Uint8 padding1;
  53.127      Uint8 padding2;
  53.128 -    int value;          /**< The axis value (range: -32768 to 32767) */
  53.129 +    Uint8 padding3;
  53.130 +    Sint16 value;       /**< The axis value (range: -32768 to 32767) */
  53.131 +    Uint16 padding4;
  53.132  } SDL_JoyAxisEvent;
  53.133  
  53.134  /**
  53.135 @@ -254,13 +259,14 @@
  53.136  typedef struct SDL_JoyBallEvent
  53.137  {
  53.138      Uint32 type;        /**< ::SDL_JOYBALLMOTION */
  53.139 -    Uint32 timestamp;
  53.140 -    Uint8 which;        /**< The joystick instance id */
  53.141 +	Uint32 timestamp;
  53.142 +    SDL_JoystickID which; /**< The joystick instance id */
  53.143      Uint8 ball;         /**< The joystick trackball index */
  53.144      Uint8 padding1;
  53.145      Uint8 padding2;
  53.146 -    int xrel;           /**< The relative motion in the X direction */
  53.147 -    int yrel;           /**< The relative motion in the Y direction */
  53.148 +    Uint8 padding3;
  53.149 +    Sint16 xrel;        /**< The relative motion in the X direction */
  53.150 +    Sint16 yrel;        /**< The relative motion in the Y direction */
  53.151  } SDL_JoyBallEvent;
  53.152  
  53.153  /**
  53.154 @@ -269,8 +275,8 @@
  53.155  typedef struct SDL_JoyHatEvent
  53.156  {
  53.157      Uint32 type;        /**< ::SDL_JOYHATMOTION */
  53.158 -    Uint32 timestamp;
  53.159 -    Uint8 which;        /**< The joystick instance id */
  53.160 +	Uint32 timestamp;
  53.161 +    SDL_JoystickID which; /**< The joystick instance id */
  53.162      Uint8 hat;          /**< The joystick hat index */
  53.163      Uint8 value;        /**< The hat position value.
  53.164                           *   \sa ::SDL_HAT_LEFTUP ::SDL_HAT_UP ::SDL_HAT_RIGHTUP
  53.165 @@ -280,6 +286,7 @@
  53.166                           *   Note that zero means the POV is centered.
  53.167                           */
  53.168      Uint8 padding1;
  53.169 +    Uint8 padding2;
  53.170  } SDL_JoyHatEvent;
  53.171  
  53.172  /**
  53.173 @@ -288,11 +295,12 @@
  53.174  typedef struct SDL_JoyButtonEvent
  53.175  {
  53.176      Uint32 type;        /**< ::SDL_JOYBUTTONDOWN or ::SDL_JOYBUTTONUP */
  53.177 -    Uint32 timestamp;
  53.178 -    Uint8 which;        /**< The joystick instance id */
  53.179 +	Uint32 timestamp;
  53.180 +    SDL_JoystickID which; /**< The joystick instance id */
  53.181      Uint8 button;       /**< The joystick button index */
  53.182      Uint8 state;        /**< ::SDL_PRESSED or ::SDL_RELEASED */
  53.183      Uint8 padding1;
  53.184 +    Uint8 padding2;
  53.185  } SDL_JoyButtonEvent;
  53.186  
  53.187  /**
  53.188 @@ -302,7 +310,7 @@
  53.189  {
  53.190  	Uint32 type;        /**< ::SDL_JOYDEVICEADDED or ::SDL_JOYDEVICEREMOVED */
  53.191  	Uint32 timestamp;
  53.192 -	Uint32 which;        /**< The joystick device index for ADD, instance_id for REMOVE*/
  53.193 +	Sint32 which;       /**< The joystick device index for the ADDED event, instance id for the REMOVED event */
  53.194  } SDL_JoyDeviceEvent;
  53.195  
  53.196  
  53.197 @@ -312,10 +320,14 @@
  53.198  typedef struct SDL_ControllerAxisEvent
  53.199  {
  53.200      Uint32 type;        /**< ::SDL_CONTROLLERAXISMOTION */
  53.201 -    Uint32 timestamp;
  53.202 -    Uint8 which;        /**< The joystick instance id */
  53.203 -    SDL_CONTROLLER_AXIS axis;         /**< The joystick axis index */
  53.204 -    int value;          /**< The axis value (range: -32768 to 32767) */
  53.205 +	Uint32 timestamp;
  53.206 +    SDL_JoystickID which; /**< The joystick instance id */
  53.207 +    Uint8 axis;         /**< The controller axis (SDL_GameControllerAxis) */
  53.208 +    Uint8 padding1;
  53.209 +    Uint8 padding2;
  53.210 +    Uint8 padding3;
  53.211 +    Sint16 value;       /**< The axis value (range: -32768 to 32767) */
  53.212 +    Uint16 padding4;
  53.213  } SDL_ControllerAxisEvent;
  53.214  
  53.215  
  53.216 @@ -325,10 +337,12 @@
  53.217  typedef struct SDL_ControllerButtonEvent
  53.218  {
  53.219      Uint32 type;        /**< ::SDL_CONTROLLERBUTTONDOWN or ::SDL_CONTROLLERBUTTONUP */
  53.220 -    Uint32 timestamp;
  53.221 -    Uint8 which;        /**< The joystick instance id */
  53.222 -    SDL_CONTROLLER_BUTTON button;       /**< The joystick button index */
  53.223 +	Uint32 timestamp;
  53.224 +    SDL_JoystickID which; /**< The joystick instance id */
  53.225 +    Uint8 button;       /**< The controller button (SDL_GameControllerButton) */
  53.226      Uint8 state;        /**< ::SDL_PRESSED or ::SDL_RELEASED */
  53.227 +    Uint8 padding1;
  53.228 +    Uint8 padding2;
  53.229  } SDL_ControllerButtonEvent;
  53.230  
  53.231  
  53.232 @@ -337,83 +351,57 @@
  53.233   */
  53.234  typedef struct SDL_ControllerDeviceEvent
  53.235  {
  53.236 -	Uint32 type;        /**< ::SDL_CONTROLLERDEVICEADDED or ::SDL_CONTROLLERDEVICEREMOVED */
  53.237 +	Uint32 type;        /**< ::SDL_CONTROLLERDEVICEADDED, ::SDL_CONTROLLERDEVICEREMOVED, or ::SDL_CONTROLLERDEVICEREMAPPED */
  53.238  	Uint32 timestamp;
  53.239 -	Uint32 which;        /**< The joystick device index for ADD, instance_id for REMOVE*/
  53.240 +	Sint32 which;       /**< The joystick device index for the ADDED event, instance id for the REMOVED or REMAPPED event */
  53.241  } SDL_ControllerDeviceEvent;
  53.242  
  53.243  
  53.244  /**
  53.245 - *  \brief Touch finger motion/finger event structure (event.tfinger.*)
  53.246 + *  \brief Touch finger event structure (event.tfinger.*)
  53.247   */
  53.248  typedef struct SDL_TouchFingerEvent
  53.249  {
  53.250 -    Uint32 type;        /**< ::SDL_FINGERMOTION OR 
  53.251 -			   SDL_FINGERDOWN OR SDL_FINGERUP*/
  53.252 +    Uint32 type;        /**< ::SDL_FINGERMOTION or ::SDL_FINGERDOWN or ::SDL_FINGERUP */
  53.253      Uint32 timestamp;
  53.254 -    Uint32 windowID;    /**< The window with mouse focus, if any */
  53.255 -    SDL_TouchID touchId;        /**< The touch device id */
  53.256 +    SDL_TouchID touchId; /**< The touch device id */
  53.257      SDL_FingerID fingerId;
  53.258 -    Uint8 state;        /**< The current button state */
  53.259 -    Uint8 padding1;
  53.260 -    Uint8 padding2;
  53.261 -    Uint8 padding3;
  53.262 -    Uint16 x;
  53.263 -    Uint16 y;
  53.264 -    Sint16 dx;
  53.265 -    Sint16 dy;
  53.266 -    Uint16 pressure;
  53.267 +    float x;            /**< Normalized in the range 0...1 */
  53.268 +    float y;            /**< Normalized in the range 0...1 */
  53.269 +    float dx;           /**< Normalized in the range 0...1 */
  53.270 +    float dy;           /**< Normalized in the range 0...1 */
  53.271 +    float pressure;     /**< Normalized in the range 0...1 */
  53.272  } SDL_TouchFingerEvent;
  53.273  
  53.274  
  53.275  /**
  53.276 - *  \brief Touch finger motion/finger event structure (event.tbutton.*)
  53.277 - */
  53.278 -typedef struct SDL_TouchButtonEvent
  53.279 -{
  53.280 -    Uint32 type;        /**< ::SDL_TOUCHBUTTONUP OR SDL_TOUCHBUTTONDOWN */
  53.281 -    Uint32 timestamp;
  53.282 -    Uint32 windowID;    /**< The window with mouse focus, if any */
  53.283 -    SDL_TouchID touchId;        /**< The touch device index */
  53.284 -    Uint8 state;        /**< The current button state */
  53.285 -    Uint8 button;        /**< The button changing state */
  53.286 -    Uint8 padding1;
  53.287 -    Uint8 padding2;
  53.288 -} SDL_TouchButtonEvent;
  53.289 -
  53.290 -
  53.291 -/**
  53.292   *  \brief Multiple Finger Gesture Event (event.mgesture.*)
  53.293   */
  53.294  typedef struct SDL_MultiGestureEvent
  53.295  {
  53.296      Uint32 type;        /**< ::SDL_MULTIGESTURE */
  53.297      Uint32 timestamp;
  53.298 -    Uint32 windowID;    /**< The window with mouse focus, if any */
  53.299 -    SDL_TouchID touchId;        /**< The touch device index */
  53.300 +    SDL_TouchID touchId; /**< The touch device index */
  53.301      float dTheta;
  53.302      float dDist;
  53.303 -    float x;  /* currently 0...1. Change to screen coords? */
  53.304 +    float x;
  53.305      float y;  
  53.306      Uint16 numFingers;
  53.307      Uint16 padding;
  53.308  } SDL_MultiGestureEvent;
  53.309  
  53.310 +
  53.311  /* (event.dgesture.*) */
  53.312  typedef struct SDL_DollarGestureEvent
  53.313  {
  53.314      Uint32 type;        /**< ::SDL_DOLLARGESTURE */
  53.315      Uint32 timestamp;
  53.316 -    Uint32 windowID;    /**< The window with mouse focus, if any */
  53.317 -    SDL_TouchID touchId;        /**< The touch device index */
  53.318 +    SDL_TouchID touchId; /**< The touch device id */
  53.319      SDL_GestureID gestureId;
  53.320      Uint32 numFingers;
  53.321      float error;
  53.322 -  /*
  53.323 -    //TODO: Enable to give location?
  53.324 -    float x;  //currently 0...1. Change to screen coords?
  53.325 -    float y;  
  53.326 -  */
  53.327 +    float x;            /**< Normalized center of gesture */
  53.328 +    float y;            /**< Normalized center of gesture */
  53.329  } SDL_DollarGestureEvent;
  53.330  
  53.331  
  53.332 @@ -448,7 +436,7 @@
  53.333      Uint32 type;        /**< ::SDL_USEREVENT through ::SDL_NUMEVENTS-1 */
  53.334      Uint32 timestamp;
  53.335      Uint32 windowID;    /**< The associated window if any */
  53.336 -    int code;           /**< User defined event code */
  53.337 +    Sint32 code;        /**< User defined event code */
  53.338      void *data1;        /**< User defined data pointer */
  53.339      void *data2;        /**< User defined data pointer */
  53.340  } SDL_UserEvent;
  53.341 @@ -476,6 +464,7 @@
  53.342  typedef union SDL_Event
  53.343  {
  53.344      Uint32 type;                    /**< Event type, shared with all events */
  53.345 +    SDL_GenericEvent generic;       /**< Generic event data */
  53.346      SDL_WindowEvent window;         /**< Window event data */
  53.347      SDL_KeyboardEvent key;          /**< Keyboard event data */
  53.348      SDL_TextEditingEvent edit;      /**< Text editing event data */
  53.349 @@ -488,16 +477,15 @@
  53.350      SDL_JoyHatEvent jhat;           /**< Joystick hat event data */
  53.351      SDL_JoyButtonEvent jbutton;     /**< Joystick button event data */
  53.352      SDL_JoyDeviceEvent jdevice;     /**< Joystick device change event data */
  53.353 -	SDL_ControllerAxisEvent caxis;		/**< Game Controller button event data */
  53.354 +	SDL_ControllerAxisEvent caxis;		/**< Game Controller axis event data */
  53.355  	SDL_ControllerButtonEvent cbutton;  /**< Game Controller button event data */
  53.356  	SDL_ControllerDeviceEvent cdevice;  /**< Game Controller device event data */
  53.357      SDL_QuitEvent quit;             /**< Quit request event data */
  53.358      SDL_UserEvent user;             /**< Custom event data */
  53.359      SDL_SysWMEvent syswm;           /**< System dependent window event data */
  53.360      SDL_TouchFingerEvent tfinger;   /**< Touch finger event data */
  53.361 -    SDL_TouchButtonEvent tbutton;   /**< Touch button event data */
  53.362 -    SDL_MultiGestureEvent mgesture; /**< Multi Finger Gesture data */
  53.363 -    SDL_DollarGestureEvent dgesture; /**< Multi Finger Gesture data */
  53.364 +    SDL_MultiGestureEvent mgesture; /**< Gesture event data */
  53.365 +    SDL_DollarGestureEvent dgesture; /**< Gesture event data */
  53.366      SDL_DropEvent drop;             /**< Drag and drop event data */
  53.367  
  53.368      /* This is necessary for ABI compatibility between Visual C++ and GCC
    54.1 --- a/include/SDL_gamecontroller.h	Sat Apr 13 23:03:46 2013 -0400
    54.2 +++ b/include/SDL_gamecontroller.h	Sun Apr 14 11:42:55 2013 -0400
    54.3 @@ -59,25 +59,23 @@
    54.4  	SDL_CONTROLLER_BINDTYPE_BUTTON,
    54.5  	SDL_CONTROLLER_BINDTYPE_AXIS,
    54.6  	SDL_CONTROLLER_BINDTYPE_HAT
    54.7 -} SDL_CONTROLLER_BINDTYPE;
    54.8 +} SDL_GameControllerBindType;
    54.9 +
   54.10  /**
   54.11 - *  get the sdl joystick layer binding for this controller button/axis mapping
   54.12 + *  Get the SDL joystick layer binding for this controller button/axis mapping
   54.13   */
   54.14 -struct _SDL_GameControllerHatBind
   54.15 +typedef struct SDL_GameControllerButtonBind
   54.16  {
   54.17 -	int hat;
   54.18 -	int hat_mask;
   54.19 -};
   54.20 -
   54.21 -typedef struct _SDL_GameControllerButtonBind
   54.22 -{
   54.23 -	SDL_CONTROLLER_BINDTYPE m_eBindType;
   54.24 +	SDL_GameControllerBindType bindType;
   54.25  	union
   54.26  	{
   54.27  		int button;
   54.28  		int axis;
   54.29 -		struct _SDL_GameControllerHatBind hat;
   54.30 -	};
   54.31 +		struct {
   54.32 +            int hat;
   54.33 +            int hat_mask;
   54.34 +        } hat;
   54.35 +	} value;
   54.36  
   54.37  } SDL_GameControllerButtonBind;
   54.38  
   54.39 @@ -92,7 +90,7 @@
   54.40   *		}
   54.41   *  }
   54.42   *
   54.43 - *  Using the SDL_HINT_GAMECONTROLLERCONFIG hint you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is:
   54.44 + *  Using the SDL_HINT_GAMECONTROLLERCONFIG hint or the SDL_GameControllerAddMapping you can add support for controllers SDL is unaware of or cause an existing controller to have a different binding. The format is:
   54.45   *	guid,name,mappings
   54.46   *
   54.47   *  Where GUID is the string value from SDL_JoystickGetGUIDString(), name is the human readable string for the device and mappings are controller mappings to joystick ones.
   54.48 @@ -108,6 +106,26 @@
   54.49   *
   54.50   */
   54.51  
   54.52 +/**
   54.53 + *  Add or update an existing mapping configuration
   54.54 + *
   54.55 + * \return 1 if mapping is added, 0 if updated, -1 on error
   54.56 + */
   54.57 +extern DECLSPEC int SDLCALL SDL_GameControllerAddMapping( const char* mappingString );
   54.58 +
   54.59 +/**
   54.60 + *  Get a mapping string for a GUID
   54.61 + *
   54.62 + *  \return the mapping string.  Must be freed with SDL_free.  Returns NULL if no mapping is available
   54.63 + */
   54.64 +extern DECLSPEC char * SDLCALL SDL_GameControllerMappingForGUID( SDL_JoystickGUID guid );
   54.65 +
   54.66 +/**
   54.67 + *  Get a mapping string for an open GameController
   54.68 + *
   54.69 + *  \return the mapping string.  Must be freed with SDL_free.  Returns NULL if no mapping is available
   54.70 + */
   54.71 +extern DECLSPEC char * SDLCALL SDL_GameControllerMapping( SDL_GameController * gamecontroller );
   54.72  
   54.73  /**
   54.74   *  Is the joystick on this index supported by the game controller interface?
   54.75 @@ -160,6 +178,15 @@
   54.76  extern DECLSPEC int SDLCALL SDL_GameControllerEventState(int state);
   54.77  
   54.78  /**
   54.79 + *  Update the current state of the open game controllers.
   54.80 + *  
   54.81 + *  This is called automatically by the event loop if any game controller
   54.82 + *  events are enabled.
   54.83 + */
   54.84 +extern DECLSPEC void SDLCALL SDL_GameControllerUpdate(void);
   54.85 +
   54.86 +
   54.87 +/**
   54.88   *  The list of axii available from a controller
   54.89   */
   54.90  typedef enum
   54.91 @@ -172,19 +199,24 @@
   54.92  	SDL_CONTROLLER_AXIS_TRIGGERLEFT,
   54.93  	SDL_CONTROLLER_AXIS_TRIGGERRIGHT,
   54.94  	SDL_CONTROLLER_AXIS_MAX
   54.95 -} SDL_CONTROLLER_AXIS;
   54.96 +} SDL_GameControllerAxis;
   54.97  
   54.98  /**
   54.99   *  turn this string into a axis mapping
  54.100   */
  54.101 -extern DECLSPEC SDL_CONTROLLER_AXIS SDLCALL SDL_GameControllerGetAxisFromString(const char *pchString);
  54.102 +extern DECLSPEC SDL_GameControllerAxis SDLCALL SDL_GameControllerGetAxisFromString(const char *pchString);
  54.103  
  54.104  /**
  54.105 - *  get the sdl joystick layer binding for this controller button mapping
  54.106 + *  turn this axis enum into a string mapping
  54.107 + */
  54.108 +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForAxis(SDL_GameControllerAxis axis);
  54.109 +
  54.110 +/**
  54.111 + *  Get the SDL joystick layer binding for this controller button mapping
  54.112   */
  54.113  extern DECLSPEC SDL_GameControllerButtonBind SDLCALL
  54.114  SDL_GameControllerGetBindForAxis(SDL_GameController *gamecontroller,
  54.115 -                                 SDL_CONTROLLER_AXIS button);
  54.116 +                                 SDL_GameControllerAxis axis);
  54.117  
  54.118  /**
  54.119   *  Get the current state of an axis control on a game controller.
  54.120 @@ -195,7 +227,7 @@
  54.121   */
  54.122  extern DECLSPEC Sint16 SDLCALL
  54.123  SDL_GameControllerGetAxis(SDL_GameController *gamecontroller,
  54.124 -                          SDL_CONTROLLER_AXIS axis);
  54.125 +                          SDL_GameControllerAxis axis);
  54.126  
  54.127  /**
  54.128   *  The list of buttons available from a controller
  54.129 @@ -219,20 +251,24 @@
  54.130  	SDL_CONTROLLER_BUTTON_DPAD_LEFT,
  54.131  	SDL_CONTROLLER_BUTTON_DPAD_RIGHT,
  54.132  	SDL_CONTROLLER_BUTTON_MAX
  54.133 -} SDL_CONTROLLER_BUTTON;
  54.134 +} SDL_GameControllerButton;
  54.135  
  54.136  /**
  54.137   *  turn this string into a button mapping
  54.138   */
  54.139 -extern DECLSPEC SDL_CONTROLLER_BUTTON SDLCALL SDL_GameControllerGetButtonFromString(const char *pchString);
  54.140 -
  54.141 +extern DECLSPEC SDL_GameControllerButton SDLCALL SDL_GameControllerGetButtonFromString(const char *pchString);
  54.142  
  54.143  /**
  54.144 - *  get the sdl joystick layer binding for this controller button mapping
  54.145 + *  turn this button enum into a string mapping
  54.146 + */
  54.147 +extern DECLSPEC const char* SDLCALL SDL_GameControllerGetStringForButton(SDL_GameControllerButton button);
  54.148 +
  54.149 +/**
  54.150 + *  Get the SDL joystick layer binding for this controller button mapping
  54.151   */
  54.152  extern DECLSPEC SDL_GameControllerButtonBind SDLCALL
  54.153  SDL_GameControllerGetBindForButton(SDL_GameController *gamecontroller,
  54.154 -                                   SDL_CONTROLLER_BUTTON button);
  54.155 +                                   SDL_GameControllerButton button);
  54.156  
  54.157  
  54.158  /**
  54.159 @@ -241,7 +277,7 @@
  54.160   *  The button indices start at index 0.
  54.161   */
  54.162  extern DECLSPEC Uint8 SDLCALL SDL_GameControllerGetButton(SDL_GameController *gamecontroller,
  54.163 -                                                          SDL_CONTROLLER_BUTTON button);
  54.164 +                                                          SDL_GameControllerButton button);
  54.165  
  54.166  /**
  54.167   *  Close a controller previously opened with SDL_GameControllerOpen().
    55.1 --- a/include/SDL_hints.h	Sat Apr 13 23:03:46 2013 -0400
    55.2 +++ b/include/SDL_hints.h	Sun Apr 14 11:42:55 2013 -0400
    55.3 @@ -197,9 +197,22 @@
    55.4  
    55.5  
    55.6  /**
    55.7 - *  \brief  A variable that lets you manually hint extra gamecontroller db entries
    55.8 + *  \brief  A variable that lets you disable the detection and use of Xinput gamepad devices
    55.9   *
   55.10 - *  The variable expected newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h
   55.11 + *  The variable can be set to the following values:
   55.12 + *    "0"       - Disable XInput timer (only uses direct input)
   55.13 + *    "1"       - Enable XInput timer (the default)
   55.14 + */
   55.15 +#define SDL_HINT_XINPUT_ENABLED "SDL_XINPUT_ENABLED"
   55.16 +
   55.17 +
   55.18 +/**
   55.19 + *  \brief  A variable that lets you manually hint extra gamecontroller db entries
   55.20 + *  
   55.21 + *  The variable should be newline delimited rows of gamecontroller config data, see SDL_gamecontroller.h
   55.22 + *
   55.23 + *  This hint must be set before calling SDL_Init(SDL_INIT_GAMECONTROLLER)
   55.24 + *  You can update mappings after the system is initialized with SDL_GameControllerMappingForGUID() and SDL_GameControllerAddMapping()
   55.25   */
   55.26  #define SDL_HINT_GAMECONTROLLERCONFIG "SDL_GAMECONTROLLERCONFIG"
   55.27  
    56.1 --- a/include/SDL_joystick.h	Sat Apr 13 23:03:46 2013 -0400
    56.2 +++ b/include/SDL_joystick.h	Sun Apr 14 11:42:55 2013 -0400
    56.3 @@ -67,7 +67,7 @@
    56.4  	Uint8 data[16];
    56.5  } SDL_JoystickGUID;
    56.6  
    56.7 -typedef int SDL_JoystickID;
    56.8 +typedef Sint32 SDL_JoystickID;
    56.9  
   56.10  
   56.11  /* Function prototypes */
   56.12 @@ -126,7 +126,7 @@
   56.13  extern DECLSPEC SDL_bool SDLCALL SDL_JoystickGetAttached(SDL_Joystick * joystick);
   56.14  
   56.15  /**
   56.16 - *  Get the instance ID of an opened joystick.
   56.17 + *  Get the instance ID of an opened joystick or -1 if the joystick is invalid.
   56.18   */
   56.19  extern DECLSPEC SDL_JoystickID SDLCALL SDL_JoystickInstanceID(SDL_Joystick * joystick);
   56.20  
    57.1 --- a/include/SDL_mutex.h	Sat Apr 13 23:03:46 2013 -0400
    57.2 +++ b/include/SDL_mutex.h	Sun Apr 14 11:42:55 2013 -0400
    57.3 @@ -70,8 +70,15 @@
    57.4   *  
    57.5   *  \return 0, or -1 on error.
    57.6   */
    57.7 -#define SDL_LockMutex(m)	SDL_mutexP(m)
    57.8 -extern DECLSPEC int SDLCALL SDL_mutexP(SDL_mutex * mutex);
    57.9 +#define SDL_mutexP(m)	SDL_LockMutex(m)
   57.10 +extern DECLSPEC int SDLCALL SDL_LockMutex(SDL_mutex * mutex);
   57.11 +
   57.12 +/**
   57.13 + *  Try to lock the mutex
   57.14 + *  
   57.15 + *  \return 0, SDL_MUTEX_TIMEDOUT, or -1 on error
   57.16 + */
   57.17 +extern DECLSPEC int SDLCALL SDL_TryLockMutex(SDL_mutex * mutex);
   57.18  
   57.19  /**
   57.20   *  Unlock the mutex.
   57.21 @@ -81,8 +88,8 @@
   57.22   *  \warning It is an error to unlock a mutex that has not been locked by
   57.23   *           the current thread, and doing so results in undefined behavior.
   57.24   */
   57.25 -#define SDL_UnlockMutex(m)	SDL_mutexV(m)
   57.26 -extern DECLSPEC int SDLCALL SDL_mutexV(SDL_mutex * mutex);
   57.27 +#define SDL_mutexV(m)	SDL_UnlockMutex(m)
   57.28 +extern DECLSPEC int SDLCALL SDL_UnlockMutex(SDL_mutex * mutex);
   57.29  
   57.30  /** 
   57.31   *  Destroy a mutex.
    58.1 --- a/include/SDL_opengl.h	Sat Apr 13 23:03:46 2013 -0400
    58.2 +++ b/include/SDL_opengl.h	Sun Apr 14 11:42:55 2013 -0400
    58.3 @@ -44,10 +44,6 @@
    58.4  #define NO_SDL_GLEXT 1
    58.5  #endif
    58.6  
    58.7 -#ifdef __FreeBSD__  /* !!! FIXME: temp compiler warning fix... */
    58.8 -#define NO_SDL_GLEXT 1
    58.9 -#endif
   58.10 -
   58.11  #ifdef __glext_h_
   58.12  /* Someone has already included glext.h */
   58.13  #define NO_SDL_GLEXT
    59.1 --- a/include/SDL_pixels.h	Sat Apr 13 23:03:46 2013 -0400
    59.2 +++ b/include/SDL_pixels.h	Sun Apr 14 11:42:55 2013 -0400
    59.3 @@ -256,7 +256,7 @@
    59.4      Uint8 r;
    59.5      Uint8 g;
    59.6      Uint8 b;
    59.7 -    Uint8 unused;
    59.8 +    Uint8 a;
    59.9  } SDL_Color;
   59.10  #define SDL_Colour SDL_Color
   59.11  
    60.1 --- a/include/SDL_platform.h	Sat Apr 13 23:03:46 2013 -0400
    60.2 +++ b/include/SDL_platform.h	Sun Apr 14 11:42:55 2013 -0400
    60.3 @@ -138,12 +138,10 @@
    60.4  #endif /* if ! defined(WINAPI_FAMILY_PARTITION) ; else */
    60.5  #endif /* if defined(WIN32) || defined(_WIN32) */
    60.6  
    60.7 -#if defined(__NDS__)
    60.8 -#undef __NINTENDODS__
    60.9 -#define __NINTENDODS__	1
   60.10 +#if defined(__PSP__)
   60.11 +#define __PSP__	1
   60.12  #endif
   60.13  
   60.14 -
   60.15  #include "begin_code.h"
   60.16  /* Set up for C function definitions, even when using C++ */
   60.17  #ifdef __cplusplus
    61.1 --- a/include/SDL_rwops.h	Sat Apr 13 23:03:46 2013 -0400
    61.2 +++ b/include/SDL_rwops.h	Sun Apr 14 11:42:55 2013 -0400
    61.3 @@ -40,6 +40,14 @@
    61.4  /* *INDENT-ON* */
    61.5  #endif
    61.6  
    61.7 +/* RWops Types */
    61.8 +#define SDL_RWOPS_UNKNOWN	0	/* Unknown stream type */
    61.9 +#define SDL_RWOPS_WINFILE	1	/* Win32 file */
   61.10 +#define SDL_RWOPS_STDFILE	2	/* Stdio file */
   61.11 +#define SDL_RWOPS_JNIFILE	3	/* Android asset */
   61.12 +#define SDL_RWOPS_MEMORY	4	/* Memory stream */
   61.13 +#define SDL_RWOPS_MEMORY_RO	5	/* Read-Only memory stream */
   61.14 +
   61.15  /**
   61.16   * This is the read/write operation structure -- very basic.
   61.17   */
   61.18 @@ -54,7 +62,7 @@
   61.19       *  Seek to \c offset relative to \c whence, one of stdio's whence values:
   61.20       *  RW_SEEK_SET, RW_SEEK_CUR, RW_SEEK_END
   61.21       *  
   61.22 -     *  \return the final offset in the data stream.
   61.23 +     *  \return the final offset in the data stream, or -1 on error.
   61.24       */
   61.25      Sint64 (SDLCALL * seek) (struct SDL_RWops * context, Sint64 offset,
   61.26                               int whence);
   61.27 @@ -130,6 +138,7 @@
   61.28          struct
   61.29          {
   61.30              void *data1;
   61.31 +            int data2;
   61.32          } unknown;
   61.33      } hidden;
   61.34  
    62.1 --- a/include/SDL_scancode.h	Sat Apr 13 23:03:46 2013 -0400
    62.2 +++ b/include/SDL_scancode.h	Sun Apr 14 11:42:55 2013 -0400
    62.3 @@ -38,7 +38,7 @@
    62.4   *  SDL_Event structure.
    62.5   *  
    62.6   *  The values in this enumeration are based on the USB usage page standard:
    62.7 - *  http://www.usb.org/developers/devclass_docs/Hut1_12.pdf
    62.8 + *  http://www.usb.org/developers/devclass_docs/Hut1_12v2.pdf
    62.9   */
   62.10  typedef enum
   62.11  {
   62.12 @@ -385,6 +385,9 @@
   62.13      SDL_SCANCODE_EJECT = 281,
   62.14      SDL_SCANCODE_SLEEP = 282,
   62.15      
   62.16 +	SDL_SCANCODE_APP1 = 283,
   62.17 +	SDL_SCANCODE_APP2 = 284,
   62.18 +
   62.19      /*@}*//*Walther keys*/
   62.20  
   62.21      /* Add any other keys here. */
    63.1 --- a/include/SDL_stdinc.h	Sat Apr 13 23:03:46 2013 -0400
    63.2 +++ b/include/SDL_stdinc.h	Sun Apr 14 11:42:55 2013 -0400
    63.3 @@ -30,7 +30,6 @@
    63.4  
    63.5  #include "SDL_config.h"
    63.6  
    63.7 -
    63.8  #ifdef HAVE_SYS_TYPES_H
    63.9  #include <sys/types.h>
   63.10  #endif
   63.11 @@ -182,14 +181,10 @@
   63.12     enums having the size of an int must be enabled.
   63.13     This is "-b" for Borland C/C++ and "-ei" for Watcom C/C++ (v11).
   63.14  */
   63.15 -/* Enable enums always int in CodeWarrior (for MPW use "-enum int") */
   63.16 -#ifdef __MWERKS__
   63.17 -#pragma enumsalwaysint on
   63.18 -#endif
   63.19  
   63.20  /** \cond */
   63.21  #ifndef DOXYGEN_SHOULD_IGNORE_THIS
   63.22 -#if !defined(__NINTENDODS__) && !defined(__ANDROID__) 
   63.23 +#if !defined(__ANDROID__) 
   63.24     /* TODO: include/SDL_stdinc.h:174: error: size of array 'SDL_dummy_enum' is negative */
   63.25  typedef enum
   63.26  {
   63.27 @@ -209,30 +204,6 @@
   63.28  /* *INDENT-ON* */
   63.29  #endif
   63.30  
   63.31 -#ifdef HAVE_MALLOC
   63.32 -#define SDL_malloc	malloc
   63.33 -#else
   63.34 -extern DECLSPEC void *SDLCALL SDL_malloc(size_t size);
   63.35 -#endif
   63.36 -
   63.37 -#ifdef HAVE_CALLOC
   63.38 -#define SDL_calloc	calloc
   63.39 -#else
   63.40 -extern DECLSPEC void *SDLCALL SDL_calloc(size_t nmemb, size_t size);
   63.41 -#endif
   63.42 -
   63.43 -#ifdef HAVE_REALLOC
   63.44 -#define SDL_realloc	realloc
   63.45 -#else
   63.46 -extern DECLSPEC void *SDLCALL SDL_realloc(void *mem, size_t size);
   63.47 -#endif
   63.48 -
   63.49 -#ifdef HAVE_FREE
   63.50 -#define SDL_free	free
   63.51 -#else
   63.52 -extern DECLSPEC void SDLCALL SDL_free(void *mem);
   63.53 -#endif
   63.54 -
   63.55  #if defined(HAVE_ALLOCA) && !defined(alloca)
   63.56  # if defined(HAVE_ALLOCA_H)
   63.57  #  include <alloca.h>
   63.58 @@ -263,380 +234,460 @@
   63.59  #define SDL_stack_free(data)            SDL_free(data)
   63.60  #endif
   63.61  
   63.62 -#ifdef HAVE_GETENV
   63.63 -#define SDL_getenv	getenv
   63.64 -#else
   63.65 -extern DECLSPEC char *SDLCALL SDL_getenv(const char *name);
   63.66 +
   63.67 +/* SDL stdinc inline functions:
   63.68 +
   63.69 +   The theory here is that by default we forcibly inline what we can, and your
   63.70 +   app will use the inline version by default. However we expose a non-inline
   63.71 +   version too, so the symbol is always available in the library even if your app
   63.72 +   bypassed the inline version. The SDL_*_inline versions aren't guaranteed to
   63.73 +   exist, so never call them directly; use SDL_* instead, and trust the system
   63.74 +   to give you the right thing.
   63.75 +
   63.76 +   The benefit here is that you can dlsym() these functions, which you
   63.77 +   couldn't if you had macros, you can link against a foreign build of SDL
   63.78 +   even if you configured differently, and you can drop the unconfigured SDL
   63.79 +   headers into a project without #defining HAVE_MALLOC (etc) and still link.
   63.80 +*/
   63.81 +
   63.82 +extern DECLSPEC void *SDLCALL SDL_malloc(size_t size);
   63.83 +#ifdef HAVE_MALLOC
   63.84 +SDL_FORCE_INLINE void *SDL_malloc_inline(size_t size) { return malloc(size); }
   63.85 +#define SDL_malloc SDL_malloc_inline
   63.86  #endif
   63.87  
   63.88 -/* SDL_putenv() has moved to SDL_compat. */
   63.89 -#ifdef HAVE_SETENV
   63.90 -#define SDL_setenv	setenv
   63.91 -#else
   63.92 -extern DECLSPEC int SDLCALL SDL_setenv(const char *name, const char *value,
   63.93 -                                       int overwrite);
   63.94 -#endif
   63.95 -
   63.96 -#ifdef HAVE_QSORT
   63.97 -#define SDL_qsort	qsort
   63.98 -#else
   63.99 -extern DECLSPEC void SDLCALL SDL_qsort(void *base, size_t nmemb, size_t size,
  63.100 -                                       int (*compare) (const void *,
  63.101 -                                                       const void *));
  63.102 -#endif
  63.103 -
  63.104 -#ifdef HAVE_ABS
  63.105 -#define SDL_abs		abs
  63.106 -#else
  63.107 -#define SDL_abs(X)	((X) < 0 ? -(X) : (X))
  63.108 +extern DECLSPEC void *SDLCALL SDL_calloc(size_t nmemb, size_t size);
  63.109 +#ifdef HAVE_CALLOC
  63.110 +SDL_FORCE_INLINE void *SDL_calloc_inline(size_t nmemb, size_t size) { return calloc(nmemb, size); }
  63.111 +#define SDL_calloc SDL_calloc_inline
  63.112  #endif
  63.113  
  63.114 -#define SDL_min(x, y)	(((x) < (y)) ? (x) : (y))
  63.115 -#define SDL_max(x, y)	(((x) > (y)) ? (x) : (y))
  63.116 +extern DECLSPEC void *SDLCALL SDL_realloc(void *mem, size_t size);
  63.117 +#ifdef HAVE_REALLOC
  63.118 +SDL_FORCE_INLINE void *SDL_realloc_inline(void *mem, size_t size) { return realloc(mem, size); }
  63.119 +#define SDL_realloc SDL_realloc_inline
  63.120 +#endif
  63.121  
  63.122 -#ifdef HAVE_CTYPE_H
  63.123 -#define SDL_isdigit(X)  isdigit(X)
  63.124 -#define SDL_isspace(X)  isspace(X)
  63.125 -#define SDL_toupper(X)  toupper(X)
  63.126 -#define SDL_tolower(X)  tolower(X)
  63.127 -#else
  63.128 -#define SDL_isdigit(X)  (((X) >= '0') && ((X) <= '9'))
  63.129 -#define SDL_isspace(X)  (((X) == ' ') || ((X) == '\t') || ((X) == '\r') || ((X) == '\n'))
  63.130 -#define SDL_toupper(X)  (((X) >= 'a') && ((X) <= 'z') ? ('A'+((X)-'a')) : (X))
  63.131 -#define SDL_tolower(X)  (((X) >= 'A') && ((X) <= 'Z') ? ('a'+((X)-'A')) : (X))
  63.132 +extern DECLSPEC void SDLCALL SDL_free(void *mem);
  63.133 +#ifdef HAVE_FREE
  63.134 +SDL_FORCE_INLINE void SDL_free_inline(void *mem) { free(mem); }
  63.135 +#define SDL_free SDL_free_inline
  63.136  #endif
  63.137  
  63.138 -#ifdef HAVE_MEMSET
  63.139 -#define SDL_memset      memset
  63.140 -#else
  63.141 -extern DECLSPEC void *SDLCALL SDL_memset(void *dst, int c, size_t len);
  63.142 +extern DECLSPEC char *SDLCALL SDL_getenv(const char *name);
  63.143 +#ifdef HAVE_GETENV
  63.144 +SDL_FORCE_INLINE char *SDL_getenv_inline(const char *name) { return getenv(name); }
  63.145 +#define SDL_getenv SDL_getenv_inline
  63.146  #endif
  63.147 -#define SDL_zero(x)	SDL_memset(&(x), 0, sizeof((x)))
  63.148 -#define SDL_zerop(x)	SDL_memset((x), 0, sizeof(*(x)))
  63.149  
  63.150 -#if defined(__GNUC__) && defined(i386)
  63.151 -#define SDL_memset4(dst, val, len)				\
  63.152 -do {								\
  63.153 -	int u0, u1, u2;						\
  63.154 -	__asm__ __volatile__ (					\
  63.155 -		"cld\n\t"					\
  63.156 -		"rep ; stosl\n\t"				\
  63.157 -		: "=&D" (u0), "=&a" (u1), "=&c" (u2)		\
  63.158 -		: "0" (dst), "1" (val), "2" (SDL_static_cast(Uint32, len))	\
  63.159 -		: "memory" );					\
  63.160 -} while(0)
  63.161 +extern DECLSPEC int SDLCALL SDL_setenv(const char *name, const char *value, int overwrite);
  63.162 +#ifdef HAVE_SETENV
  63.163 +SDL_FORCE_INLINE int SDL_setenv_inline(const char *name, const char *value, int overwrite) { return setenv(name, value, overwrite); }
  63.164 +#define SDL_setenv SDL_setenv_inline
  63.165  #endif
  63.166 -#ifndef SDL_memset4
  63.167 -#define SDL_memset4(dst, val, len)		\
  63.168 -do {						\
  63.169 -	unsigned _count = (len);		\
  63.170 -	unsigned _n = (_count + 3) / 4;		\
  63.171 -	Uint32 *_p = SDL_static_cast(Uint32 *, dst);		\
  63.172 -	Uint32 _val = (val);			\
  63.173 -	if (len == 0) break;			\
  63.174 -        switch (_count % 4) {			\
  63.175 -        case 0: do {    *_p++ = _val;		\
  63.176 -        case 3:         *_p++ = _val;		\
  63.177 -        case 2:         *_p++ = _val;		\
  63.178 -        case 1:         *_p++ = _val;		\
  63.179 -		} while ( --_n );		\
  63.180 -	}					\
  63.181 -} while(0)
  63.182 +
  63.183 +extern DECLSPEC void SDLCALL SDL_qsort(void *base, size_t nmemb, size_t size, int (*compare) (const void *, const void *));
  63.184 +#ifdef HAVE_QSORT
  63.185 +SDL_FORCE_INLINE void SDL_qsort_inline(void *base, size_t nmemb, size_t size, int (*compare) (const void *, const void *)) { qsort(base, nmemb, size, compare); }
  63.186 +#define SDL_qsort SDL_qsort_inline
  63.187  #endif
  63.188  
  63.189 -/* We can count on memcpy existing on Mac OS X and being well-tuned. */
  63.190 -#if defined(__MACOSX__)
  63.191 -#define SDL_memcpy      memcpy
  63.192 -#elif defined(__GNUC__) && defined(i386) && !defined(__WIN32__)
  63.193 -#define SDL_memcpy(dst, src, len)					  \
  63.194 -do {									  \
  63.195 -	int u0, u1, u2;						  	  \
  63.196 -	__asm__ __volatile__ (						  \
  63.197 -		"cld\n\t"						  \
  63.198 -		"rep ; movsl\n\t"					  \
  63.199 -		"testb $2,%b4\n\t"					  \
  63.200 -		"je 1f\n\t"						  \
  63.201 -		"movsw\n"						  \
  63.202 -		"1:\ttestb $1,%b4\n\t"					  \
  63.203 -		"je 2f\n\t"						  \
  63.204 -		"movsb\n"						  \
  63.205 -		"2:"							  \
  63.206 -		: "=&c" (u0), "=&D" (u1), "=&S" (u2)			  \
  63.207 -		: "0" (SDL_static_cast(unsigned, len)/4), "q" (len), "1" (dst),"2" (src) \
  63.208 -		: "memory" );						  \
  63.209 -} while(0)
  63.210 +extern DECLSPEC int SDLCALL SDL_abs(int x);
  63.211 +#ifdef HAVE_ABS
  63.212 +SDL_FORCE_INLINE int SDL_abs_inline(int x) { return abs(x); }
  63.213 +#else
  63.214 +SDL_FORCE_INLINE int SDL_abs_inline(int x) { return ((x) < 0 ? -(x) : (x)); }
  63.215  #endif
  63.216 -#ifndef SDL_memcpy
  63.217 -#ifdef HAVE_MEMCPY
  63.218 -#define SDL_memcpy      memcpy
  63.219 -#elif defined(HAVE_BCOPY)
  63.220 -#define SDL_memcpy(d, s, n)	bcopy((s), (d), (n))
  63.221 +#define SDL_abs SDL_abs_inline
  63.222 +
  63.223 +/* !!! FIXME: these have side effects. You probably shouldn't use them. */
  63.224 +/* !!! FIXME: Maybe we do forceinline functions of SDL_mini, SDL_minf, etc? */
  63.225 +#define SDL_min(x, y) (((x) < (y)) ? (x) : (y))
  63.226 +#define SDL_max(x, y) (((x) > (y)) ? (x) : (y))
  63.227 +
  63.228 +extern DECLSPEC int SDLCALL SDL_isdigit(int x);
  63.229 +extern DECLSPEC int SDLCALL SDL_isspace(int x);
  63.230 +extern DECLSPEC int SDLCALL SDL_toupper(int x);
  63.231 +extern DECLSPEC int SDLCALL SDL_tolower(int x);
  63.232 +#ifdef HAVE_CTYPE_H
  63.233 +SDL_FORCE_INLINE int SDL_isdigit_inline(int x) { return isdigit(x); }
  63.234 +SDL_FORCE_INLINE int SDL_isspace_inline(int x) { return isspace(x); }
  63.235 +SDL_FORCE_INLINE int SDL_toupper_inline(int x) { return toupper(x); }
  63.236 +SDL_FORCE_INLINE int SDL_tolower_inline(int x) { return tolower(x); }
  63.237  #else
  63.238 -extern DECLSPEC void *SDLCALL SDL_memcpy(void *dst, const void *src,
  63.239 -                                         size_t len);
  63.240 +SDL_FORCE_INLINE int SDL_isdigit_inline(int x) { return ((x) >= '0') && ((x) <= '9'); }
  63.241 +SDL_FORCE_INLINE int SDL_isspace_inline(int x) { return ((x) == ' ') || ((x) == '\t') || ((x) == '\r') || ((x) == '\n'); }
  63.242 +SDL_FORCE_INLINE int SDL_toupper_inline(int x) { return ((x) >= 'a') && ((x) <= 'z') ? ('A'+((x)-'a')) : (x); }
  63.243 +SDL_FORCE_INLINE int SDL_tolower_inline(int x) { return ((x) >= 'A') && ((x) <= 'Z') ? ('a'+((x)-'A')) : (x); }
  63.244  #endif
  63.245 +#define SDL_isdigit SDL_isdigit_inline
  63.246 +#define SDL_isspace SDL_isspace_inline
  63.247 +#define SDL_toupper SDL_toupper_inline
  63.248 +#define SDL_tolower SDL_tolower_inline
  63.249 +
  63.250 +extern DECLSPEC void *SDLCALL SDL_memset(void *dst, int c, size_t len);
  63.251 +#ifdef HAVE_MEMSET
  63.252 +SDL_FORCE_INLINE void *SDL_memset_inline(void *dst, int c, size_t len) { return memset(dst, c, len); }
  63.253 +#define SDL_memset SDL_memset_inline
  63.254  #endif
  63.255  
  63.256 -/* We can count on memcpy existing on Mac OS X and being well-tuned. */
  63.257 -#if defined(__MACOSX__)
  63.258 -#define SDL_memcpy4(dst, src, len)	SDL_memcpy((dst), (src), (len) << 2)
  63.259 -#elif defined(__GNUC__) && defined(i386)
  63.260 -#define SDL_memcpy4(dst, src, len)				\
  63.261 -do {								\
  63.262 -	int ecx, edi, esi;					\
  63.263 -	__asm__ __volatile__ (					\
  63.264 -		"cld\n\t"					\
  63.265 -		"rep ; movsl"					\
  63.266 -		: "=&c" (ecx), "=&D" (edi), "=&S" (esi)		\
  63.267 -		: "0" (SDL_static_cast(unsigned, len)), "1" (dst), "2" (src)	\
  63.268 -		: "memory" );					\
  63.269 -} while(0)
  63.270 -#endif
  63.271 -#ifndef SDL_memcpy4
  63.272 -#define SDL_memcpy4(dst, src, len)	SDL_memcpy((dst), (src), (len) << 2)
  63.273 -#endif
  63.274 +#define SDL_zero(x) SDL_memset(&(x), 0, sizeof((x)))
  63.275 +#define SDL_zerop(x) SDL_memset((x), 0, sizeof(*(x)))
  63.276  
  63.277 -#ifdef HAVE_MEMMOVE
  63.278 -#define SDL_memmove     memmove
  63.279 -#else
  63.280 -extern DECLSPEC void *SDLCALL SDL_memmove(void *dst, const void *src,
  63.281 -                                          size_t len);
  63.282 -#endif
  63.283 -
  63.284 -#ifdef HAVE_MEMCMP
  63.285 -#define SDL_memcmp      memcmp
  63.286 +/* !!! FIXME: does this _really_ beat memset() on any modern platform? */
  63.287 +SDL_FORCE_INLINE void SDL_memset4(void *dst, int val, size_t len)
  63.288 +{
  63.289 +#if defined(__GNUC__) && defined(i386)
  63.290 +    int u0, u1, u2;
  63.291 +    __asm__ __volatile__ (
  63.292 +        "cld \n\t"
  63.293 +        "rep ; stosl \n\t"
  63.294 +        : "=&D" (u0), "=&a" (u1), "=&c" (u2)
  63.295 +        : "0" (dst), "1" (val), "2" (SDL_static_cast(Uint32, len))
  63.296 +        : "memory"
  63.297 +    );
  63.298 +/* !!! FIXME: amd64? */
  63.299  #else
  63.300 -extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2,
  63.301 -                                       size_t len);
  63.302 +    size_t _n = (len + 3) / 4;
  63.303 +    Uint32 *_p = SDL_static_cast(Uint32 *, dst);
  63.304 +    Uint32 _val = (val);
  63.305 +    if (len == 0)
  63.306 +        return;
  63.307 +    switch (len % 4)
  63.308 +    {
  63.309 +        case 0: do {    *_p++ = _val;
  63.310 +        case 3:         *_p++ = _val;
  63.311 +        case 2:         *_p++ = _val;
  63.312 +        case 1:         *_p++ = _val;
  63.313 +        } while ( --_n );
  63.314 +    }
  63.315  #endif
  63.316 +}
  63.317  
  63.318 -#ifdef HAVE_STRLEN
  63.319 -#define SDL_strlen      strlen
  63.320 -#else
  63.321 -extern DECLSPEC size_t SDLCALL SDL_strlen(const char *string);
  63.322 -#endif
  63.323  
  63.324 -#ifdef HAVE_WCSLEN
  63.325 -#define SDL_wcslen      wcslen
  63.326 -#else
  63.327 -#if !defined(wchar_t) && defined(__NINTENDODS__)
  63.328 -#define wchar_t short           /* TODO: figure out why libnds doesn't have this */
  63.329 -#endif
  63.330 -extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t * string);
  63.331 -#endif
  63.332 -
  63.333 -#ifdef HAVE_WCSLCPY
  63.334 -#define SDL_wcslcpy      wcslcpy
  63.335 -#else
  63.336 -extern DECLSPEC size_t SDLCALL SDL_wcslcpy(wchar_t *dst, const wchar_t *src, size_t maxlen);
  63.337 -#endif
  63.338 -
  63.339 -#ifdef HAVE_WCSLCAT
  63.340 -#define SDL_wcslcat      wcslcat
  63.341 -#else
  63.342 -extern DECLSPEC size_t SDLCALL SDL_wcslcat(wchar_t *dst, const wchar_t *src, size_t maxlen);
  63.343 +extern DECLSPEC void *SDLCALL SDL_memcpy(void *dst, const void *src, size_t len);
  63.344 +#if defined(__MACOSX__)
  63.345 +SDL_FORCE_INLINE void *SDL_memcpy_inline(void *dst, const void *src, size_t len)
  63.346 +{
  63.347 +    /* We can count on memcpy existing on Mac OS X and being well-tuned. */
  63.348 +    return memcpy(dst, src, len);
  63.349 +}
  63.350 +#define SDL_memcpy SDL_memcpy_inline
  63.351 +#elif defined(__GNUC__) && defined(i386) && !defined(__WIN32__)
  63.352 +SDL_FORCE_INLINE void *SDL_memcpy_inline(void *dst, const void *src, size_t len)
  63.353 +{
  63.354 +    /* !!! FIXME: does this _really_ beat memcpy() on any modern platform? */
  63.355 +    /* !!! FIXME: shouldn't we just force the inputs to ecx/edi/esi instead of this tapdance with outputs? */
  63.356 +    /* !!! FIXME: amd64? */
  63.357 +    int u0, u1, u2;
  63.358 +    __asm__ __volatile__ (
  63.359 +        "cld \n\t"
  63.360 +        "rep ; movsl \n\t"
  63.361 +        "testb $2,%b4 \n\t"
  63.362 +        "je 1f \n\t"
  63.363 +        "movsw \n"
  63.364 +        "1:\ttestb $1,%b4 \n\t"
  63.365 +        "je 2f \n\t"
  63.366 +        "movsb \n"
  63.367 +        "2:"
  63.368 +        : "=&c" (u0), "=&D" (u1), "=&S" (u2)
  63.369 +        : "0" (SDL_static_cast(unsigned, len)/4), "q" (len), "1" (dst), "2" (src)
  63.370 +        : "memory"
  63.371 +    );
  63.372 +    return dst;
  63.373 +}
  63.374 +#define SDL_memcpy SDL_memcpy_inline
  63.375 +#elif defined(HAVE_MEMCPY)
  63.376 +SDL_FORCE_INLINE void *SDL_memcpy_inline(void *dst, const void *src, size_t len)
  63.377 +{
  63.378 +    return memcpy(dst, src, len);
  63.379 +}
  63.380 +#define SDL_memcpy SDL_memcpy_inline
  63.381 +#elif defined(HAVE_BCOPY)  /* !!! FIXME: is there _really_ ever a time where you have bcopy and not memcpy? */
  63.382 +SDL_FORCE_INLINE void *SDL_memcpy_inline(void *dst, const void *src, size_t len)
  63.383 +{
  63.384 +    bcopy(src, dst, len);
  63.385 +    return dst;
  63.386 +}
  63.387 +#define SDL_memcpy SDL_memcpy_inline
  63.388  #endif
  63.389  
  63.390  
  63.391 -#ifdef HAVE_STRLCPY
  63.392 -#define SDL_strlcpy     strlcpy
  63.393 +SDL_FORCE_INLINE void *SDL_memcpy4(void *dst, const void *src, size_t dwords)
  63.394 +{
  63.395 +#if defined(__GNUC__) && defined(i386)
  63.396 +    /* !!! FIXME: does this _really_ beat memcpy() on any modern platform? */
  63.397 +    /* !!! FIXME: shouldn't we just force the inputs to ecx/edi/esi instead of this tapdance with outputs? */
  63.398 +    int ecx, edi, esi;
  63.399 +    __asm__ __volatile__ (
  63.400 +        "cld \n\t"
  63.401 +        "rep ; movsl \n\t"
  63.402 +        : "=&c" (ecx), "=&D" (edi), "=&S" (esi)
  63.403 +        : "0" (SDL_static_cast(unsigned, dwords)), "1" (dst), "2" (src)
  63.404 +        : "memory"
  63.405 +    );
  63.406 +    return dst;
  63.407  #else
  63.408 -extern DECLSPEC size_t SDLCALL SDL_strlcpy(char *dst, const char *src,
  63.409 -                                           size_t maxlen);
  63.410 +    return SDL_memcpy(dst, src, dwords * 4);
  63.411  #endif
  63.412 +}
  63.413  
  63.414 -extern DECLSPEC size_t SDLCALL SDL_utf8strlcpy(char *dst, const char *src,
  63.415 -                                            size_t dst_bytes);
  63.416 -
  63.417 -#ifdef HAVE_STRLCAT
  63.418 -#define SDL_strlcat    strlcat
  63.419 -#else
  63.420 -extern DECLSPEC size_t SDLCALL SDL_strlcat(char *dst, const char *src,
  63.421 -                                           size_t maxlen);
  63.422 +extern DECLSPEC void *SDLCALL SDL_memmove(void *dst, const void *src, size_t len);
  63.423 +#ifdef HAVE_MEMMOVE
  63.424 +SDL_FORCE_INLINE void *SDL_memmove_inline(void *dst, const void *src, size_t len) { return memmove(dst, src, len); }
  63.425 +#define SDL_memmove SDL_memmove_inline
  63.426  #endif
  63.427  
  63.428 -#ifdef HAVE_STRDUP
  63.429 -#define SDL_strdup     strdup
  63.430 -#else
  63.431 -extern DECLSPEC char *SDLCALL SDL_strdup(const char *string);
  63.432 +extern DECLSPEC int SDLCALL SDL_memcmp(const void *s1, const void *s2, size_t len);
  63.433 +#ifdef HAVE_MEMCMP
  63.434 +SDL_FORCE_INLINE int SDL_memcmp_inline(const void *s1, const void *s2, size_t len) { return memcmp(s1, s2, len); }
  63.435 +#define SDL_memcmp SDL_memcmp_inline
  63.436 +#endif
  63.437 +
  63.438 +extern DECLSPEC size_t SDLCALL SDL_strlen(const char *str);
  63.439 +#ifdef HAVE_STRLEN
  63.440 +SDL_FORCE_INLINE size_t SDL_strlen_inline(const char *str) { return strlen(str); }
  63.441 +#define SDL_strlen SDL_strlen_inline
  63.442 +#endif
  63.443 +
  63.444 +extern DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr);
  63.445 +#ifdef HAVE_WCSLEN
  63.446 +SDL_FORCE_INLINE size_t SDL_wcslen_inline(const wchar_t *wstr) { return wcslen(wstr); }
  63.447 +#define SDL_wcslen SDL_wcslen_inline
  63.448  #endif
  63.449  
  63.450 -#ifdef HAVE__STRREV
  63.451 -#define SDL_strrev      _strrev
  63.452 -#else
  63.453 -extern DECLSPEC char *SDLCALL SDL_strrev(char *string);
  63.454 +extern DECLSPEC size_t SDLCALL SDL_wcslcpy(wchar_t *dst, const wchar_t *src, size_t maxlen);
  63.455 +#ifdef HAVE_WCSLCPY
  63.456 +SDL_FORCE_INLINE size_t SDL_wcslcpy_inline(wchar_t *dst, const wchar_t *src, size_t maxlen) { return wcslcpy(dst, src, maxlen); }
  63.457 +#define SDL_wcslcpy SDL_wcslcpy_inline
  63.458  #endif
  63.459  
  63.460 -#ifdef HAVE__STRUPR
  63.461 -#define SDL_strupr      _strupr
  63.462 -#else
  63.463 -extern DECLSPEC char *SDLCALL SDL_strupr(char *string);
  63.464 +extern DECLSPEC size_t SDLCALL SDL_wcslcat(wchar_t *dst, const wchar_t *src, size_t maxlen);
  63.465 +#ifdef HAVE_WCSLCAT
  63.466 +SDL_FORCE_INLINE size_t SDL_wcslcat_inline(wchar_t *dst, const wchar_t *src, size_t maxlen) { return wcslcat(dst, src, maxlen); }
  63.467 +#define SDL_wcslcat SDL_wcslcat_inline
  63.468  #endif
  63.469  
  63.470 -#ifdef HAVE__STRLWR
  63.471 -#define SDL_strlwr      _strlwr
  63.472 +extern DECLSPEC size_t SDLCALL SDL_strlcpy(char *dst, const char *src, size_t maxlen);
  63.473 +#ifdef HAVE_STRLCPY
  63.474 +SDL_FORCE_INLINE size_t SDL_strlcpy_inline(char *dst, const char *src, size_t maxlen) { return strlcpy(dst, src, maxlen); }
  63.475 +#define SDL_strlcpy SDL_strlcpy_inline
  63.476  #else
  63.477 -extern DECLSPEC char *SDLCALL SDL_strlwr(char *string);
  63.478  #endif
  63.479  
  63.480 -#ifdef HAVE_STRCHR
  63.481 -#define SDL_strchr      strchr
  63.482 -#elif defined(HAVE_INDEX)
  63.483 -#define SDL_strchr      index
  63.484 -#else
  63.485 -extern DECLSPEC char *SDLCALL SDL_strchr(const char *string, int c);
  63.486 +extern DECLSPEC size_t SDLCALL SDL_utf8strlcpy(char *dst, const char *src, size_t dst_bytes);
  63.487 +
  63.488 +extern DECLSPEC size_t SDLCALL SDL_strlcat(char *dst, const char *src, size_t maxlen);
  63.489 +#ifdef HAVE_STRLCAT
  63.490 +SDL_FORCE_INLINE size_t SDL_strlcat_inline(char *dst, const char *src, size_t maxlen) { return strlcat(dst, src, maxlen); }
  63.491 +#define SDL_strlcat SDL_strlcat_inline
  63.492 +#endif
  63.493 +
  63.494 +extern DECLSPEC char *SDLCALL SDL_strdup(const char *str);
  63.495 +#ifdef HAVE_STRDUP
  63.496 +SDL_FORCE_INLINE char *SDL_strdup_inline(const char *str) { return strdup(str); }
  63.497 +#define SDL_strdup SDL_strdup_inline
  63.498  #endif
  63.499  
  63.500 -#ifdef HAVE_STRRCHR
  63.501 -#define SDL_strrchr     strrchr
  63.502 -#elif defined(HAVE_RINDEX)
  63.503 -#define SDL_strrchr     rindex
  63.504 -#else
  63.505 -extern DECLSPEC char *SDLCALL SDL_strrchr(const char *string, int c);
  63.506 +extern DECLSPEC char *SDLCALL SDL_strrev(char *str);
  63.507 +#ifdef HAVE__STRREV
  63.508 +SDL_FORCE_INLINE char *SDL_strrev_inline(char *str) { return _strrev(str); }
  63.509 +#define SDL_strrev SDL_strrev_inline
  63.510  #endif
  63.511  
  63.512 -#ifdef HAVE_STRSTR
  63.513 -#define SDL_strstr      strstr
  63.514 -#else
  63.515 -extern DECLSPEC char *SDLCALL SDL_strstr(const char *haystack,
  63.516 -                                         const char *needle);
  63.517 +extern DECLSPEC char *SDLCALL SDL_strupr(char *str);
  63.518 +#ifdef HAVE__STRUPR
  63.519 +SDL_FORCE_INLINE char *SDL_strupr_inline(char *str) { return _strupr(str); }
  63.520 +#define SDL_strupr SDL_strupr_inline
  63.521 +#endif
  63.522 +
  63.523 +extern DECLSPEC char *SDLCALL SDL_strlwr(char *str);
  63.524 +#ifdef HAVE__STRLWR
  63.525 +SDL_FORCE_INLINE char *SDL_strlwr_inline(char *str) { return _strlwr(str); }
  63.526 +#define SDL_strlwr SDL_strlwr_inline
  63.527  #endif
  63.528  
  63.529 -#ifdef HAVE_ITOA
  63.530 -#define SDL_itoa        itoa
  63.531 +extern DECLSPEC char *SDLCALL SDL_strchr(const char *str, int c);
  63.532 +#ifdef HAVE_STRCHR
  63.533 +SDL_FORCE_INLINE char *SDL_strchr_inline(const char *str, int c) {
  63.534 +#ifdef __cplusplus
  63.535 +return const_cast<char*>(strchr(str, c));
  63.536  #else
  63.537 -#define SDL_itoa(value, string, radix)	SDL_ltoa((long)value, string, radix)
  63.538 +return (char*)strchr(str, c);
  63.539  #endif
  63.540 -
  63.541 -#ifdef HAVE__LTOA
  63.542 -#define SDL_ltoa        _ltoa
  63.543 -#else
  63.544 -extern DECLSPEC char *SDLCALL SDL_ltoa(long value, char *string, int radix);
  63.545 +}
  63.546 +#define SDL_strchr SDL_strchr_inline
  63.547 +#elif defined(HAVE_INDEX)  /* !!! FIXME: is there anywhere that has this but not strchr? */
  63.548 +SDL_FORCE_INLINE char *SDL_strchr_inline(const char *str, int c) { return index(str, c); }
  63.549 +#define SDL_strchr SDL_strchr_inline
  63.550  #endif
  63.551  
  63.552 -#ifdef HAVE__UITOA
  63.553 -#define SDL_uitoa       _uitoa
  63.554 -#else
  63.555 -#define SDL_uitoa(value, string, radix)	SDL_ultoa((long)value, string, radix)
  63.556 -#endif
  63.557 -
  63.558 -#ifdef HAVE__ULTOA
  63.559 -#define SDL_ultoa       _ultoa
  63.560 +extern DECLSPEC char *SDLCALL SDL_strrchr(const char *str, int c);
  63.561 +#ifdef HAVE_STRRCHR
  63.562 +SDL_FORCE_INLINE char *SDL_strrchr_inline(const char *str, int c) {
  63.563 +#ifdef __cplusplus
  63.564 +return const_cast<char*>(strrchr(str, c));
  63.565  #else
  63.566 -extern DECLSPEC char *SDLCALL SDL_ultoa(unsigned long value, char *string,
  63.567 -                                        int radix);
  63.568 +return (char*)strrchr(str, c);
  63.569  #endif
  63.570 -
  63.571 -#ifdef HAVE_STRTOL
  63.572 -#define SDL_strtol      strtol
  63.573 +}
  63.574 +#define SDL_strrchr SDL_strrchr_inline
  63.575 +#elif defined(HAVE_RINDEX)  /* !!! FIXME: is there anywhere that has this but not strrchr? */
  63.576 +SDL_FORCE_INLINE char *SDL_strrchr_inline(const char *str, int c) {
  63.577 +#ifdef __cplusplus
  63.578 +return const_cast<char*>(rindex(str, c));
  63.579  #else
  63.580 -extern DECLSPEC long SDLCALL SDL_strtol(const char *string, char **endp,
  63.581 -                                        int base);
  63.582 +return (char*)rindex(str, c);
  63.583 +#endif
  63.584 +}
  63.585 +#define SDL_strrchr SDL_strrchr_inline
  63.586  #endif
  63.587  
  63.588 -#ifdef HAVE_STRTOUL
  63.589 -#define SDL_strtoul      strtoul
  63.590 +extern DECLSPEC char *SDLCALL SDL_strstr(const char *haystack, const char *needle);
  63.591 +#ifdef HAVE_STRSTR
  63.592 +SDL_FORCE_INLINE char *SDL_strstr_inline(const char *haystack, const char *needle) {
  63.593 +#ifdef __cplusplus
  63.594 +return const_cast<char*>(strstr(haystack, needle));
  63.595  #else
  63.596 -extern DECLSPEC unsigned long SDLCALL SDL_strtoul(const char *string,
  63.597 -                                                  char **endp, int base);
  63.598 +return (char*)strstr(haystack, needle);
  63.599 +#endif
  63.600 +}
  63.601 +#define SDL_strstr SDL_strstr_inline
  63.602  #endif
  63.603  
  63.604 -#ifdef HAVE__I64TOA
  63.605 -#define SDL_lltoa       _i64toa
  63.606 -#else
  63.607 -extern DECLSPEC char *SDLCALL SDL_lltoa(Sint64 value, char *string,
  63.608 -                                        int radix);
  63.609 +extern DECLSPEC char *SDLCALL SDL_ltoa(long value, char *str, int radix);
  63.610 +#ifdef HAVE__LTOA
  63.611 +SDL_FORCE_INLINE char *SDL_ltoa_inline(long value, char *str, int radix) { return _ltoa(value, str, radix); }
  63.612 +#define SDL_ltoa SDL_ltoa_inline
  63.613  #endif
  63.614  
  63.615 -#ifdef HAVE__UI64TOA
  63.616 -#define SDL_ulltoa      _ui64toa
  63.617 +extern DECLSPEC char *SDLCALL SDL_itoa(int value, char *str, int radix);
  63.618 +#ifdef HAVE_ITOA
  63.619 +SDL_FORCE_INLINE char *SDL_itoa_inline(int value, char *str, int radix) { return itoa(value, str, radix); }
  63.620  #else
  63.621 -extern DECLSPEC char *SDLCALL SDL_ulltoa(Uint64 value, char *string,
  63.622 -                                         int radix);
  63.623 +SDL_FORCE_INLINE char *SDL_itoa_inline(int value, char *str, int radix) { return SDL_ltoa((long)value, str, radix); }
  63.624 +#endif
  63.625 +#define SDL_itoa SDL_itoa_inline
  63.626 +
  63.627 +extern DECLSPEC char *SDLCALL SDL_ultoa(unsigned long value, char *str, int radix);
  63.628 +#ifdef HAVE__ULTOA
  63.629 +SDL_FORCE_INLINE char *SDL_ultoa_inline(unsigned long value, char *str, int radix) { return _ultoa(value, str, radix); }
  63.630 +#define SDL_ultoa SDL_ultoa_inline
  63.631  #endif
  63.632  
  63.633 -#ifdef HAVE_STRTOLL
  63.634 -#define SDL_strtoll     strtoll
  63.635 +extern DECLSPEC char *SDLCALL SDL_uitoa(unsigned int value, char *str, int radix);
  63.636 +#ifdef HAVE__UITOA
  63.637 +SDL_FORCE_INLINE char *SDL_uitoa_inline(unsigned int value, char *str, int radix) { return _uitoa(value, str, radix); }
  63.638  #else
  63.639 -extern DECLSPEC Sint64 SDLCALL SDL_strtoll(const char *string, char **endp,
  63.640 -                                           int base);
  63.641 +SDL_FORCE_INLINE char *SDL_uitoa_inline(unsigned int value, char *str, int radix) { return SDL_ultoa((unsigned long)value, str, radix); }
  63.642 +#endif
  63.643 +#define SDL_uitoa SDL_uitoa_inline
  63.644 +
  63.645 +
  63.646 +extern DECLSPEC long SDLCALL SDL_strtol(const char *str, char **endp, int base);
  63.647 +#ifdef HAVE_STRTOL
  63.648 +SDL_FORCE_INLINE long SDL_strtol_inline(const char *str, char **endp, int base) { return strtol(str, endp, base); }
  63.649 +#define SDL_strtol SDL_strtol_inline
  63.650  #endif
  63.651  
  63.652 -#ifdef HAVE_STRTOULL
  63.653 -#define SDL_strtoull     strtoull
  63.654 -#else
  63.655 -extern DECLSPEC Uint64 SDLCALL SDL_strtoull(const char *string, char **endp,
  63.656 -                                            int base);
  63.657 +extern DECLSPEC unsigned long SDLCALL SDL_strtoul(const char *str, char **endp, int base);
  63.658 +#ifdef HAVE_STRTOUL
  63.659 +SDL_FORCE_INLINE unsigned long SDLCALL SDL_strtoul_inline(const char *str, char **endp, int base) { return strtoul(str, endp, base); }
  63.660 +#define SDL_strtoul SDL_strtoul_inline
  63.661  #endif
  63.662  
  63.663 -#ifdef HAVE_STRTOD
  63.664 -#define SDL_strtod      strtod
  63.665 -#else
  63.666 -extern DECLSPEC double SDLCALL SDL_strtod(const char *string, char **endp);
  63.667 +extern DECLSPEC char *SDLCALL SDL_lltoa(Sint64 value, char *str, int radix);
  63.668 +#ifdef HAVE__I64TOA
  63.669 +SDL_FORCE_INLINE char *SDL_lltoa_inline(Sint64 value, char *str, int radix) { return _i64toa(value, str, radix); }
  63.670 +#define SDL_lltoa SDL_lltoa_inline
  63.671  #endif
  63.672  
  63.673 -#ifdef HAVE_ATOI
  63.674 -#define SDL_atoi        atoi
  63.675 -#else
  63.676 -#define SDL_atoi(X)     SDL_strtol(X, NULL, 0)
  63.677 +extern DECLSPEC char *SDLCALL SDL_ulltoa(Uint64 value, char *str, int radix);
  63.678 +#ifdef HAVE__UI64TOA
  63.679 +SDL_FORCE_INLINE char *SDL_ulltoa_inline(Uint64 value, char *str, int radix) { return _ui64toa(value, str, radix); }
  63.680 +#define SDL_ulltoa SDL_ulltoa_inline
  63.681 +#endif
  63.682 +
  63.683 +extern DECLSPEC Sint64 SDLCALL SDL_strtoll(const char *str, char **endp, int base);
  63.684 +#ifdef HAVE_STRTOLL
  63.685 +SDL_FORCE_INLINE Sint64 SDL_strtoll_inline(const char *str, char **endp, int base) { return strtoll(str, endp, base); }
  63.686 +#define SDL_strtoll SDL_strtoll_inline
  63.687  #endif
  63.688  
  63.689 -#ifdef HAVE_ATOF
  63.690 -#define SDL_atof        atof
  63.691 -#else
  63.692 -#define SDL_atof(X)     SDL_strtod(X, NULL)
  63.693 +extern DECLSPEC Uint64 SDLCALL SDL_strtoull(const char *str, char **endp, int base);
  63.694 +#ifdef HAVE_STRTOULL
  63.695 +SDL_FORCE_INLINE Uint64 SDL_strtoull_inline(const char *str, char **endp, int base) { return strtoull(str, endp, base); }
  63.696 +#define SDL_strtoull SDL_strtoull_inline
  63.697  #endif
  63.698  
  63.699 -#ifdef HAVE_STRCMP
  63.700 -#define SDL_strcmp      strcmp
  63.701 -#else
  63.702 -extern DECLSPEC int SDLCALL SDL_strcmp(const char *str1, const char *str2);
  63.703 +extern DECLSPEC double SDLCALL SDL_strtod(const char *str, char **endp);
  63.704 +#ifdef HAVE_STRTOD
  63.705 +SDL_FORCE_INLINE double SDL_strtod_inline(const char *str, char **endp) { return strtod(str, endp); }
  63.706 +#define SDL_strtod SDL_strtod_inline
  63.707  #endif
  63.708  
  63.709 -#ifdef HAVE_STRNCMP
  63.710 -#define SDL_strncmp     strncmp
  63.711 +extern DECLSPEC int SDLCALL SDL_atoi(const char *str);
  63.712 +#ifdef HAVE_ATOI
  63.713 +SDL_FORCE_INLINE int SDL_atoi_inline(const char *str) { return atoi(str); }
  63.714  #else
  63.715 -extern DECLSPEC int SDLCALL SDL_strncmp(const char *str1, const char *str2,
  63.716 -                                        size_t maxlen);
  63.717 +SDL_FORCE_INLINE int SDL_atoi_inline(const char *str) { return SDL_strtol(str, NULL, 0); }
  63.718  #endif
  63.719 +#define SDL_atoi SDL_atoi_inline
  63.720  
  63.721 -#ifdef HAVE_STRCASECMP
  63.722 -#define SDL_strcasecmp  strcasecmp
  63.723 -#elif defined(HAVE__STRICMP)
  63.724 -#define SDL_strcasecmp  _stricmp
  63.725 +extern DECLSPEC double SDLCALL SDL_atof(const char *str);
  63.726 +#ifdef HAVE_ATOF
  63.727 +SDL_FORCE_INLINE double SDL_atof_inline(const char *str) { return (double) atof(str); }
  63.728  #else
  63.729 -extern DECLSPEC int SDLCALL SDL_strcasecmp(const char *str1,
  63.730 -                                           const char *str2);
  63.731 +SDL_FORCE_INLINE double SDL_atof_inline(const char *str) { return SDL_strtod(str, NULL); }
  63.732 +#endif
  63.733 +#define SDL_atof SDL_atof_inline
  63.734 +
  63.735 +
  63.736 +extern DECLSPEC int SDLCALL SDL_strcmp(const char *str1, const char *str2);
  63.737 +#ifdef HAVE_STRCMP
  63.738 +SDL_FORCE_INLINE int SDL_strcmp_inline(const char *str1, const char *str2) { return strcmp(str1, str2); }
  63.739 +#define SDL_strcmp SDL_strcmp_inline
  63.740  #endif
  63.741  
  63.742 -#ifdef HAVE_STRNCASECMP
  63.743 -#define SDL_strncasecmp strncasecmp
  63.744 -#elif defined(HAVE__STRNICMP)
  63.745 -#define SDL_strncasecmp _strnicmp
  63.746 -#else
  63.747 -extern DECLSPEC int SDLCALL SDL_strncasecmp(const char *str1,
  63.748 -                                            const char *str2, size_t maxlen);
  63.749 +extern DECLSPEC int SDLCALL SDL_strncmp(const char *str1, const char *str2, size_t maxlen);
  63.750 +#ifdef HAVE_STRNCMP
  63.751 +SDL_FORCE_INLINE int SDL_strncmp_inline(const char *str1, const char *str2, size_t maxlen) { return strncmp(str1, str2, maxlen); }
  63.752 +#define SDL_strncmp SDL_strncmp_inline
  63.753 +#endif
  63.754 +
  63.755 +extern DECLSPEC int SDLCALL SDL_strcasecmp(const char *str1, const char *str2);
  63.756 +#ifdef HAVE_STRCASECMP
  63.757 +SDL_FORCE_INLINE int SDL_strcasecmp_inline(const char *str1, const char *str2) { return strcasecmp(str1, str2); }
  63.758 +#define SDL_strcasecmp SDL_strcasecmp_inline
  63.759 +#elif defined(HAVE__STRICMP)
  63.760 +SDL_FORCE_INLINE int SDL_strcasecmp_inline(const char *str1, const char *str2) { return _stricmp(str1, str2); }
  63.761 +#define SDL_strcasecmp SDL_strcasecmp_inline
  63.762  #endif
  63.763  
  63.764 -#ifdef HAVE_SSCANF
  63.765 -#define SDL_sscanf      sscanf
  63.766 -#else
  63.767 -extern DECLSPEC int SDLCALL SDL_sscanf(const char *text, const char *fmt,
  63.768 -                                       ...);
  63.769 +extern DECLSPEC int SDLCALL SDL_strncasecmp(const char *str1, const char *str2, size_t len);
  63.770 +#ifdef HAVE_STRNCASECMP
  63.771 +SDL_FORCE_INLINE int SDL_strncasecmp_inline(const char *str1, const char *str2, size_t len) { return strncasecmp(str1, str2, len); }
  63.772 +#define SDL_strncasecmp SDL_strncasecmp_inline
  63.773 +#elif defined(HAVE__STRNICMP)
  63.774 +SDL_FORCE_INLINE int SDL_strncasecmp_inline(const char *str1, const char *str2, size_t len) { return _strnicmp(str1, str2, len); }
  63.775 +#define SDL_strncasecmp SDL_strncasecmp_inline
  63.776  #endif
  63.777  
  63.778 -#ifdef HAVE_SNPRINTF
  63.779 -#define SDL_snprintf    snprintf
  63.780 -#else
  63.781 -extern DECLSPEC int SDLCALL SDL_snprintf(char *text, size_t maxlen,
  63.782 -                                         const char *fmt, ...);
  63.783 +/* Not doing SDL_*_inline functions for these, because of the varargs. */
  63.784 +extern DECLSPEC int SDLCALL SDL_sscanf(const char *text, const char *fmt, ...);
  63.785 +#ifdef HAVE_SSCANF
  63.786 +#define SDL_sscanf sscanf
  63.787  #endif
  63.788  
  63.789 +extern DECLSPEC int SDLCALL SDL_snprintf(char *text, size_t maxlen, const char *fmt, ...);
  63.790 +#ifdef HAVE_SNPRINTF
  63.791 +#define SDL_snprintf snprintf
  63.792 +#endif
  63.793 +
  63.794 +extern DECLSPEC int SDLCALL SDL_vsnprintf(char *text, size_t maxlen, const char *fmt, va_list ap);
  63.795  #ifdef HAVE_VSNPRINTF
  63.796 -#define SDL_vsnprintf   vsnprintf
  63.797 -#else
  63.798 -extern DECLSPEC int SDLCALL SDL_vsnprintf(char *text, size_t maxlen,
  63.799 -                                          const char *fmt, va_list ap);
  63.800 +SDL_FORCE_INLINE int SDL_vsnprintf_inline(char *text, size_t maxlen, const char *fmt, va_list ap) { return vsnprintf(text, maxlen, fmt, ap); }
  63.801 +#define SDL_vsnprintf SDL_vsnprintf_inline
  63.802  #endif
  63.803  
  63.804  #ifndef HAVE_M_PI
  63.805 @@ -645,88 +696,94 @@
  63.806  #endif
  63.807  #endif
  63.808  
  63.809 +extern DECLSPEC double SDLCALL SDL_atan(double x);
  63.810  #ifdef HAVE_ATAN
  63.811 -#define SDL_atan        atan
  63.812 -#else
  63.813 -extern DECLSPEC double SDLCALL SDL_atan(double x);
  63.814 +SDL_FORCE_INLINE double SDL_atan_inline(double x) { return atan(x); }
  63.815 +#define SDL_atan SDL_atan_inline
  63.816  #endif
  63.817  
  63.818 +extern DECLSPEC double SDLCALL SDL_atan2(double x, double y);
  63.819  #ifdef HAVE_ATAN2
  63.820 -#define SDL_atan2       atan2
  63.821 -#else
  63.822 -extern DECLSPEC double SDLCALL SDL_atan2(double y, double x);
  63.823 +SDL_FORCE_INLINE double SDL_atan2_inline(double x, double y) { return atan2(x, y); }
  63.824 +#define SDL_atan2 SDL_atan2_inline
  63.825  #endif
  63.826  
  63.827 +extern DECLSPEC double SDLCALL SDL_ceil(double x);
  63.828  #ifdef HAVE_CEIL
  63.829 -#define SDL_ceil        ceil
  63.830 +SDL_FORCE_INLINE double SDL_ceil_inline(double x) { return ceil(x); }
  63.831  #else
  63.832 -#define SDL_ceil(x)     ((double)(int)((x)+0.5))
  63.833 +SDL_FORCE_INLINE double SDL_ceil_inline(double x) { return (double)(int)((x)+0.5); }
  63.834 +#endif
  63.835 +#define SDL_ceil SDL_ceil_inline
  63.836 +
  63.837 +extern DECLSPEC double SDLCALL SDL_copysign(double x, double y);
  63.838 +#ifdef HAVE_COPYSIGN
  63.839 +SDL_FORCE_INLINE double SDL_copysign_inline(double x, double y) { return copysign(x, y); }
  63.840 +#define SDL_copysign SDL_copysign_inline
  63.841  #endif
  63.842  
  63.843 -#ifdef HAVE_COPYSIGN
  63.844 -#define SDL_copysign    copysign
  63.845 -#else
  63.846 -extern DECLSPEC double SDLCALL SDL_copysign(double x, double y);
  63.847 -#endif
  63.848 -
  63.849 +extern DECLSPEC double SDLCALL SDL_cos(double x);
  63.850  #ifdef HAVE_COS
  63.851 -#define SDL_cos         cos
  63.852 -#else
  63.853 -extern DECLSPEC double SDLCALL SDL_cos(double x);
  63.854 -#endif
  63.855 -
  63.856 -#ifdef HAVE_COSF
  63.857 -#define SDL_cosf        cosf
  63.858 -#else
  63.859 -#define SDL_cosf(x) (float)SDL_cos((double)x)
  63.860 +SDL_FORCE_INLINE double SDL_cos_inline(double x) { return cos(x); }
  63.861 +#define SDL_cos SDL_cos_inline
  63.862  #endif
  63.863  
  63.864 +extern DECLSPEC float SDLCALL SDL_cosf(float x);
  63.865 +#ifdef HAVE_COSF
  63.866 +SDL_FORCE_INLINE float SDL_cosf_inline(float x) { return cosf(x); }
  63.867 +#else
  63.868 +SDL_FORCE_INLINE float SDL_cosf_inline(float x) { return (float)SDL_cos((double)x); }
  63.869 +#endif
  63.870 +#define SDL_cosf SDL_cosf_inline
  63.871 +
  63.872 +extern DECLSPEC double SDLCALL SDL_fabs(double x);
  63.873  #ifdef HAVE_FABS
  63.874 -#define SDL_fabs        fabs
  63.875 -#else
  63.876 -extern DECLSPEC double SDLCALL SDL_fabs(double x);
  63.877 +SDL_FORCE_INLINE double SDL_fabs_inline(double x) { return fabs(x); }
  63.878 +#define SDL_fabs SDL_fabs_inline
  63.879  #endif
  63.880  
  63.881 +extern DECLSPEC double SDLCALL SDL_floor(double x);
  63.882  #ifdef HAVE_FLOOR
  63.883 -#define SDL_floor       floor
  63.884 -#else
  63.885 -extern DECLSPEC double SDLCALL SDL_floor(double x);
  63.886 +SDL_FORCE_INLINE double SDL_floor_inline(double x) { return floor(x); }
  63.887 +#define SDL_floor SDL_floor_inline
  63.888  #endif
  63.889  
  63.890 +extern DECLSPEC double SDLCALL SDL_log(double x);
  63.891  #ifdef HAVE_LOG
  63.892 -#define SDL_log         log
  63.893 -#else
  63.894 -extern DECLSPEC double SDLCALL SDL_log(double x);
  63.895 +SDL_FORCE_INLINE double SDL_log_inline(double x) { return log(x); }
  63.896 +#define SDL_log SDL_log_inline
  63.897  #endif
  63.898  
  63.899 +extern DECLSPEC double SDLCALL SDL_pow(double x, double y);
  63.900  #ifdef HAVE_POW
  63.901 -#define SDL_pow         pow
  63.902 -#else
  63.903 -extern DECLSPEC double SDLCALL SDL_pow(double x, double y);
  63.904 +SDL_FORCE_INLINE double SDL_pow_inline(double x, double y) { return pow(x, y); }
  63.905 +#define SDL_pow SDL_pow_inline
  63.906  #endif
  63.907  
  63.908 +extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n);
  63.909  #ifdef HAVE_SCALBN
  63.910 -#define SDL_scalbn      scalbn
  63.911 -#else
  63.912 -extern DECLSPEC double SDLCALL SDL_scalbn(double x, int n);
  63.913 +SDL_FORCE_INLINE double SDL_scalbn_inline(double x, int n) { return scalbn(x, n); }
  63.914 +#define SDL_scalbn SDL_scalbn_inline
  63.915  #endif
  63.916  
  63.917 +extern DECLSPEC double SDLCALL SDL_sin(double x);
  63.918  #ifdef HAVE_SIN
  63.919 -#define SDL_sin         sin
  63.920 -#else
  63.921 -extern DECLSPEC double SDLCALL SDL_sin(double x);
  63.922 +SDL_FORCE_INLINE double SDL_sin_inline(double x) { return sin(x); }
  63.923 +#define SDL_sin SDL_sin_inline
  63.924  #endif
  63.925  
  63.926 +extern DECLSPEC float SDLCALL SDL_sinf(float x);
  63.927  #ifdef HAVE_SINF
  63.928 -#define SDL_sinf        sinf
  63.929 +SDL_FORCE_INLINE float SDL_sinf_inline(float x) { return sinf(x); }
  63.930  #else
  63.931 -#define SDL_sinf(x) (float)SDL_sin((double)x)
  63.932 +SDL_FORCE_INLINE float SDL_sinf_inline(float x) { return (float)SDL_sin((double)x); }
  63.933  #endif
  63.934 +#define SDL_sinf SDL_sinf_inline
  63.935  
  63.936 +extern DECLSPEC double SDLCALL SDL_sqrt(double x);
  63.937  #ifdef HAVE_SQRT
  63.938 -#define SDL_sqrt        sqrt
  63.939 -#else
  63.940 -extern DECLSPEC double SDLCALL SDL_sqrt(double x);
  63.941 +SDL_FORCE_INLINE double SDL_sqrt_inline(double x) { return sqrt(x); }
  63.942 +#define SDL_sqrt SDL_sqrt_inline
  63.943  #endif
  63.944  
  63.945  /* The SDL implementation of iconv() returns these error codes */
  63.946 @@ -735,16 +792,11 @@
  63.947  #define SDL_ICONV_EILSEQ	(size_t)-3
  63.948  #define SDL_ICONV_EINVAL	(size_t)-4
  63.949  
  63.950 -#if defined(HAVE_ICONV) && defined(HAVE_ICONV_H)
  63.951 -#define SDL_iconv_t     iconv_t
  63.952 -#define SDL_iconv_open  iconv_open
  63.953 -#define SDL_iconv_close iconv_close
  63.954 -#else
  63.955 +/* SDL_iconv_* are now always real symbols/types, not macros or inlined. */
  63.956  typedef struct _SDL_iconv_t *SDL_iconv_t;
  63.957  extern DECLSPEC SDL_iconv_t SDLCALL SDL_iconv_open(const char *tocode,
  63.958                                                     const char *fromcode);
  63.959  extern DECLSPEC int SDLCALL SDL_iconv_close(SDL_iconv_t cd);
  63.960 -#endif
  63.961  extern DECLSPEC size_t SDLCALL SDL_iconv(SDL_iconv_t cd, const char **inbuf,
  63.962                                           size_t * inbytesleft, char **outbuf,
  63.963                                           size_t * outbytesleft);
    64.1 --- a/include/SDL_test_common.h	Sat Apr 13 23:03:46 2013 -0400
    64.2 +++ b/include/SDL_test_common.h	Sun Apr 14 11:42:55 2013 -0400
    64.3 @@ -34,9 +34,9 @@
    64.4  
    64.5  #include "SDL.h"
    64.6  
    64.7 -#ifdef __NDS__
    64.8 -#define DEFAULT_WINDOW_WIDTH  256
    64.9 -#define DEFAULT_WINDOW_HEIGHT (2*192)
   64.10 +#if defined(__PSP__)
   64.11 +#define DEFAULT_WINDOW_WIDTH  480
   64.12 +#define DEFAULT_WINDOW_HEIGHT 272
   64.13  #else
   64.14  #define DEFAULT_WINDOW_WIDTH  640
   64.15  #define DEFAULT_WINDOW_HEIGHT 480
    65.1 --- a/include/SDL_test_images.h	Sat Apr 13 23:03:46 2013 -0400
    65.2 +++ b/include/SDL_test_images.h	Sun Apr 14 11:42:55 2013 -0400
    65.3 @@ -53,11 +53,7 @@
    65.4    int width;
    65.5    int height;
    65.6    unsigned int bytes_per_pixel; /* 3:RGB, 4:RGBA */ 
    65.7 -#if (defined(__GNUC__) && (__GNUC__ <= 2))
    65.8 -  unsigned char pixel_data[0];
    65.9 -#else
   65.10 -  unsigned char pixel_data[];
   65.11 -#endif
   65.12 +  const char *pixel_data;
   65.13  } SDLTest_SurfaceImage_t;
   65.14  
   65.15  /* Test images */
    66.1 --- a/include/SDL_touch.h	Sat Apr 13 23:03:46 2013 -0400
    66.2 +++ b/include/SDL_touch.h	Sun Apr 14 11:42:55 2013 -0400
    66.3 @@ -40,77 +40,42 @@
    66.4  /* *INDENT-ON* */
    66.5  #endif
    66.6  
    66.7 -
    66.8  typedef Sint64 SDL_TouchID;
    66.9  typedef Sint64 SDL_FingerID;
   66.10  
   66.11 -
   66.12 -struct SDL_Finger {
   66.13 -  SDL_FingerID id;
   66.14 -  Uint16 x;
   66.15 -  Uint16 y;
   66.16 -  Uint16 pressure;
   66.17 -  Uint16 xdelta;
   66.18 -  Uint16 ydelta;
   66.19 -  Uint16 last_x, last_y,last_pressure;  /* the last reported coordinates */
   66.20 -  SDL_bool down;
   66.21 -};
   66.22 -
   66.23 -typedef struct SDL_Touch SDL_Touch;
   66.24 -typedef struct SDL_Finger SDL_Finger;
   66.25 -
   66.26 +typedef struct SDL_Finger
   66.27 +{
   66.28 +    SDL_FingerID id;
   66.29 +    float x;
   66.30 +    float y;
   66.31 +    float pressure;
   66.32 +} SDL_Finger;
   66.33  
   66.34 -struct SDL_Touch {
   66.35 -  
   66.36 -  /* Free the touch when it's time */
   66.37 -  void (*FreeTouch) (SDL_Touch * touch);
   66.38 -  
   66.39 -  /* data common for tablets */
   66.40 -  float pressure_max, pressure_min;
   66.41 -  float x_max,x_min;
   66.42 -  float y_max,y_min;
   66.43 -  Uint16 xres,yres,pressureres;
   66.44 -  float native_xres,native_yres,native_pressureres;
   66.45 -  float tilt_x;                 /* for future use */
   66.46 -  float tilt_y;                 /* for future use */
   66.47 -  float rotation;               /* for future use */
   66.48 -  
   66.49 -  /* Data common to all touch */
   66.50 -  SDL_TouchID id;
   66.51 -  SDL_Window *focus;
   66.52 -  
   66.53 -  char *name;
   66.54 -  Uint8 buttonstate;
   66.55 -  SDL_bool relative_mode;
   66.56 -  SDL_bool flush_motion;
   66.57 -
   66.58 -  int num_fingers;
   66.59 -  int max_fingers;
   66.60 -  SDL_Finger** fingers;
   66.61 -    
   66.62 -  void *driverdata;
   66.63 -};
   66.64 -
   66.65 +/* Used as the device ID for mouse events simulated with touch input */
   66.66 +#define SDL_TOUCH_MOUSEID ((Uint32)-1)
   66.67  
   66.68  
   66.69  /* Function prototypes */
   66.70  
   66.71  /**
   66.72 - *  \brief Get the touch object at the given id.
   66.73 - *
   66.74 - *
   66.75 + *  \brief Get the number of registered touch devices.
   66.76   */
   66.77 -  extern DECLSPEC SDL_Touch* SDLCALL SDL_GetTouch(SDL_TouchID id);
   66.78 -
   66.79 -
   66.80 +extern DECLSPEC int SDLCALL SDL_GetNumTouchDevices();
   66.81  
   66.82  /**
   66.83 - *  \brief Get the finger object of the given touch, at the given id.
   66.84 - *
   66.85 - *
   66.86 + *  \brief Get the touch ID with the given index, or 0 if the index is invalid.
   66.87 + */
   66.88 +extern DECLSPEC SDL_TouchID SDLCALL SDL_GetTouchDevice(int index);
   66.89 +
   66.90 +/**
   66.91 + *  \brief Get the number of active fingers for a given touch device.
   66.92   */
   66.93 -  extern 
   66.94 -  DECLSPEC SDL_Finger* SDLCALL SDL_GetFinger(SDL_Touch *touch, SDL_FingerID id);
   66.95 +extern DECLSPEC int SDLCALL SDL_GetNumTouchFingers(SDL_TouchID touchID);
   66.96 +
   66.97 +/**
   66.98 + *  \brief Get the finger object of the given touch, with the given index.
   66.99 + */
  66.100 +extern DECLSPEC SDL_Finger * SDLCALL SDL_GetTouchFinger(SDL_TouchID touchID, int index);
  66.101  
  66.102  /* Ends C function definitions when using C++ */
  66.103  #ifdef __cplusplus
    67.1 --- a/include/SDL_video.h	Sat Apr 13 23:03:46 2013 -0400
    67.2 +++ b/include/SDL_video.h	Sun Apr 14 11:42:55 2013 -0400
    67.3 @@ -504,6 +504,9 @@
    67.4  /**
    67.5   *  \brief Get the position of a window.
    67.6   *  
    67.7 + *  \param x        Pointer to variable for storing the x position, may be NULL
    67.8 + *  \param y        Pointer to variable for storing the y position, may be NULL
    67.9 + *
   67.10   *  \sa SDL_SetWindowPosition()
   67.11   */
   67.12  extern DECLSPEC void SDLCALL SDL_GetWindowPosition(SDL_Window * window,
   67.13 @@ -512,6 +515,9 @@
   67.14  /**
   67.15   *  \brief Set the size of a window's client area.
   67.16   *  
   67.17 + *  \param w        The width of the window, must be >0
   67.18 + *  \param h        The height of the window, must be >0
   67.19 + *
   67.20   *  \note You can't change the size of a fullscreen window, it automatically
   67.21   *        matches the size of the display mode.
   67.22   *  
   67.23 @@ -523,6 +529,9 @@
   67.24  /**
   67.25   *  \brief Get the size of a window's client area.
   67.26   *  
   67.27 + *  \param w        Pointer to variable for storing the width, may be NULL
   67.28 + *  \param h        Pointer to variable for storing the height, may be NULL
   67.29 + *  
   67.30   *  \sa SDL_SetWindowSize()
   67.31   */
   67.32  extern DECLSPEC void SDLCALL SDL_GetWindowSize(SDL_Window * window, int *w,
   67.33 @@ -530,6 +539,9 @@
   67.34      
   67.35  /**
   67.36   *  \brief Set the minimum size of a window's client area.
   67.37 + *  
   67.38 + *  \param min_w     The minimum width of the window, must be >0
   67.39 + *  \param min_h     The minimum height of the window, must be >0
   67.40   *
   67.41   *  \note You can't change the minimum size of a fullscreen window, it
   67.42   *        automatically matches the size of the display mode.
   67.43 @@ -542,7 +554,10 @@
   67.44      
   67.45  /**
   67.46   *  \brief Get the minimum size of a window's client area.
   67.47 - *
   67.48 + *  
   67.49 + *  \param w        Pointer to variable for storing the minimum width, may be NULL
   67.50 + *  \param h        Pointer to variable for storing the minimum height, may be NULL
   67.51 + *  
   67.52   *  \sa SDL_GetWindowMaximumSize()
   67.53   *  \sa SDL_SetWindowMinimumSize()
   67.54   */
   67.55 @@ -552,6 +567,9 @@