Updated iOS projects and renamed iPhoneOS to iOS
authorSam Lantinga <slouken@libsdl.org>
Thu, 05 Jan 2012 21:41:55 -0500
changeset 6159fb6f363032fd
parent 6156 160a69849b9e
child 6160 79c33569d463
Updated iOS projects and renamed iPhoneOS to iOS
Makefile.in
README.iOS
README.iphoneos
Xcode-iOS/Demos/Default.png
Xcode-iOS/Demos/Demos.xcodeproj/project.pbxproj
Xcode-iOS/Demos/Icon.png
Xcode-iOS/Demos/Info.plist
Xcode-iOS/Demos/README
Xcode-iOS/Demos/data/bitmapfont/kromasky_16x16.bmp
Xcode-iOS/Demos/data/bitmapfont/license.txt
Xcode-iOS/Demos/data/drums/ds_brush_snare.wav
Xcode-iOS/Demos/data/drums/ds_china.wav
Xcode-iOS/Demos/data/drums/ds_kick_big_amb.wav
Xcode-iOS/Demos/data/drums/ds_loose_skin_mute.wav
Xcode-iOS/Demos/data/icon.bmp
Xcode-iOS/Demos/data/ship.bmp
Xcode-iOS/Demos/data/space.bmp
Xcode-iOS/Demos/data/stroke.bmp
Xcode-iOS/Demos/src/accelerometer.c
Xcode-iOS/Demos/src/common.c
Xcode-iOS/Demos/src/common.h
Xcode-iOS/Demos/src/fireworks.c
Xcode-iOS/Demos/src/happy.c
Xcode-iOS/Demos/src/keyboard.c
Xcode-iOS/Demos/src/mixer.c
Xcode-iOS/Demos/src/rectangles.c
Xcode-iOS/Demos/src/touch.c
Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj
Xcode-iOS/SDL/testsdl-Info.plist
Xcode-iOS/Template/SDL iOS Application/Default.png
Xcode-iOS/Template/SDL iOS Application/Icon.png
Xcode-iOS/Template/SDL iOS Application/Info.plist
Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns
Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist
Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj
Xcode-iOS/Template/SDL iOS Application/main.c
Xcode-iOS/Test/Info.plist
Xcode-iOS/Test/README
Xcode-iOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj
Xcode-iPhoneOS/Demos/Default.png
Xcode-iPhoneOS/Demos/DemosiPhoneOS.xcodeproj/project.pbxproj
Xcode-iPhoneOS/Demos/Icon.png
Xcode-iPhoneOS/Demos/Info.plist
Xcode-iPhoneOS/Demos/README
Xcode-iPhoneOS/Demos/data/bitmapfont/kromasky_16x16.bmp
Xcode-iPhoneOS/Demos/data/bitmapfont/license.txt
Xcode-iPhoneOS/Demos/data/drums/ds_brush_snare.wav
Xcode-iPhoneOS/Demos/data/drums/ds_china.wav
Xcode-iPhoneOS/Demos/data/drums/ds_kick_big_amb.wav
Xcode-iPhoneOS/Demos/data/drums/ds_loose_skin_mute.wav
Xcode-iPhoneOS/Demos/data/icon.bmp
Xcode-iPhoneOS/Demos/data/ship.bmp
Xcode-iPhoneOS/Demos/data/space.bmp
Xcode-iPhoneOS/Demos/data/stroke.bmp
Xcode-iPhoneOS/Demos/src/accelerometer.c
Xcode-iPhoneOS/Demos/src/common.c
Xcode-iPhoneOS/Demos/src/common.h
Xcode-iPhoneOS/Demos/src/fireworks.c
Xcode-iPhoneOS/Demos/src/happy.c
Xcode-iPhoneOS/Demos/src/keyboard.c
Xcode-iPhoneOS/Demos/src/mixer.c
Xcode-iPhoneOS/Demos/src/rectangles.c
Xcode-iPhoneOS/Demos/src/touch.c
Xcode-iPhoneOS/SDL/SDLiPhoneOS.xcodeproj/project.pbxproj
Xcode-iPhoneOS/SDL/testsdl-Info.plist
Xcode-iPhoneOS/Template/SDL iOS Application/Default.png
Xcode-iPhoneOS/Template/SDL iOS Application/Icon.png
Xcode-iPhoneOS/Template/SDL iOS Application/Info.plist
Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns
Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist
Xcode-iPhoneOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj
Xcode-iPhoneOS/Template/SDL iOS Application/main.c
Xcode-iPhoneOS/Test/Info.plist
Xcode-iPhoneOS/Test/README
Xcode-iPhoneOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj
include/doxyfile
     1.1 --- a/Makefile.in	Tue Jan 03 01:46:52 2012 -0500
     1.2 +++ b/Makefile.in	Thu Jan 05 21:41:55 2012 -0500
     1.3 @@ -36,7 +36,7 @@
     1.4  SDLMAIN_TARGET = libSDLmain.a
     1.5  SDLMAIN_OBJECTS = @SDLMAIN_OBJECTS@
     1.6  
     1.7 -SRC_DIST = acinclude Android.mk autogen.sh Borland.html Borland.zip BUGS build-scripts configure configure.in COPYING CREDITS include INSTALL Makefile.minimal Makefile.in README* sdl-config.in sdl.m4 sdl.pc.in SDL.spec.in src test TODO VisualC.html VisualC VisualCE Watcom-Win32.zip WhatsNew Xcode Xcode-iPhoneOS
     1.8 +SRC_DIST = acinclude Android.mk autogen.sh Borland.html Borland.zip BUGS build-scripts configure configure.in COPYING CREDITS include INSTALL Makefile.minimal Makefile.in README* sdl-config.in sdl.m4 sdl.pc.in SDL.spec.in src test TODO VisualC.html VisualC VisualCE Watcom-Win32.zip WhatsNew Xcode Xcode-iOS
     1.9  GEN_DIST = SDL.spec
    1.10  
    1.11  HDRS = \
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/README.iOS	Thu Jan 05 21:41:55 2012 -0500
     2.3 @@ -0,0 +1,110 @@
     2.4 +==============================================================================
     2.5 +Building the Simple DirectMedia Layer for iPhone OS 2.0
     2.6 +==============================================================================
     2.7 +
     2.8 +Requirements: Mac OS X v10.5 or later and the iPhone SDK.
     2.9 +
    2.10 +Instructions:
    2.11 +1.  Open SDL.xcodeproj (located in Xcode-iOS/SDL) in XCode.
    2.12 +2.  Select your desired target, and hit build.
    2.13 +
    2.14 +There are three build targets:
    2.15 +- libSDL.a:
    2.16 +	Build SDL as a statically linked library
    2.17 +- testsdl
    2.18 +	Build a test program (there are known test failures which are fine)
    2.19 +- Template:
    2.20 +	Package a project template together with the SDL for iPhone static libraries and copies of the SDL headers.  The template includes proper references to the SDL library and headers, skeleton code for a basic SDL program, and placeholder graphics for the application icon and startup screen.
    2.21 +
    2.22 +==============================================================================
    2.23 +Using the Simple DirectMedia Layer for iOS
    2.24 +==============================================================================
    2.25 +
    2.26 +FIXME: This needs to be updated for the latest methods
    2.27 +
    2.28 +Here is the easiest method:
    2.29 +1.  Build the SDL libraries (libSDL.a and libSDLSimulator.a) and the iPhone SDL Application template.
    2.30 +1.  Install the iPhone SDL Application template by copying it to one of XCode's template directories.  I recommend creating a directory called "SDL" in "/Developer/Platforms/iOS.platform/Developer/Library/XCode/Project Templates/" and placing it there.
    2.31 +2.  Start a new project using the template.  The project should be immediately ready for use with SDL.
    2.32 +
    2.33 +Here is a more manual method:
    2.34 +1.  Create a new iPhone view based application.
    2.35 +2.  Build the SDL static libraries (libSDL.a and libSDLSimulator.a) for iPhone and include them in your project.  XCode will ignore the library that is not currently of the correct architecture, hence your app will work both on iPhone and in the iPhone Simulator.
    2.36 +3.  Include the SDL header files in your project.
    2.37 +4.  Remove the ApplicationDelegate.h and ApplicationDelegate.m files -- SDL for iPhone provides its own UIApplicationDelegate.  Remove MainWindow.xib -- SDL for iPhone produces its user interface programmatically.
    2.38 +5.  Delete the contents of main.m and program your app as a regular SDL program instead.  You may replace main.m with your own main.c, but you must tell XCode not to use the project prefix file, as it includes Objective-C code.
    2.39 +
    2.40 +==============================================================================
    2.41 +Notes -- Accelerometer as Joystick
    2.42 +==============================================================================
    2.43 +
    2.44 +SDL for iPhone supports polling the built in accelerometer as a joystick device.  For an example on how to do this, see the accelerometer.c in the demos directory.
    2.45 +
    2.46 +The main thing to note when using the accelerometer with SDL is that while the iPhone natively reports accelerometer as floating point values in units of g-force, SDL_JoystickGetAxis reports joystick values as signed integers.  Hence, in order to convert between the two, some clamping and scaling is necessary on the part of the iPhone SDL joystick driver.  To convert SDL_JoystickGetAxis reported values BACK to units of g-force, simply multiply the values by SDL_IPHONE_MAX_GFORCE / 0x7FFF.
    2.47 +
    2.48 +==============================================================================
    2.49 +Notes -- OpenGL ES
    2.50 +==============================================================================
    2.51 +
    2.52 +Your SDL application for iPhone uses OpenGL ES for video by default.
    2.53 +
    2.54 +OpenGL ES for iPhone supports several display pixel formats, such as RGBA8 and RGB565, which provide a 32 bit and 16 bit color buffer respectively.  By default, the implementation uses RGB565, but you may use RGBA8 by setting each color component to 8 bits in SDL_GL_SetAttribute.
    2.55 +
    2.56 +If your application doesn't use OpenGL's depth buffer, you may find significant performance improvement by setting SDL_GL_DEPTH_SIZE to 0.
    2.57 +
    2.58 +Finally, if your application completely redraws the screen each frame, you may find significant performance improvement by setting the attribute SDL_GL_RETAINED_BACKING to 1.
    2.59 +
    2.60 +==============================================================================
    2.61 +Notes -- Keyboard
    2.62 +==============================================================================
    2.63 +
    2.64 +SDL for iPhone contains several additional functions related to keyboard visibility.  These functions are not part of the SDL standard API, but are necessary for revealing and hiding the iPhone's virtual onscreen keyboard.  You can use them in your own applications by including a copy of the SDL_uikitkeyboard.h header (located in src/video/uikit) in your project.
    2.65 +
    2.66 +int SDL_iPhoneKeyboardShow(SDL_Window * window) 
    2.67 +	-- reveals the onscreen keyboard.  Returns 0 on success and -1 on error.
    2.68 +int SDL_iPhoneKeyboardHide(SDL_Window * window) 
    2.69 +	-- hides the onscreen keyboard.  Returns 0 on success and -1 on error.
    2.70 +SDL_bool SDL_iPhoneKeyboardIsShown(SDL_Window * window) 
    2.71 +	-- returns whether or not the onscreen keyboard is currently visible.
    2.72 +int SDL_iPhoneKeyboardToggle(SDL_Window * window) 	
    2.73 +	-- toggles the visibility of the onscreen keyboard.  Returns 0 on success and -1 on error.
    2.74 +
    2.75 +==============================================================================
    2.76 +Notes -- Reading and Writing files
    2.77 +==============================================================================
    2.78 +
    2.79 +Each application installed on iPhone resides in a sandbox which includes its own Application Home directory.  Your application may not access files outside this directory.
    2.80 +
    2.81 +Once your application is installed its directory tree looks like:
    2.82 +
    2.83 +MySDLApp Home/
    2.84 +	MySDLApp.app
    2.85 +	Documents/
    2.86 +	Library/
    2.87 +		Preferences/
    2.88 +	tmp/
    2.89 +
    2.90 +When your SDL based iPhone application starts up, it sets the working directory to the main bundle (MySDLApp Home/MySDLApp.app), where your application resources are stored.  You cannot write to this directory.  Instead, I advise you to write document files to "../Documents/" and preferences to "../Library/Preferences".  
    2.91 +
    2.92 +More information on this subject is available here:
    2.93 +http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Introduction/Introduction.html
    2.94 +
    2.95 +==============================================================================
    2.96 +Notes -- iPhone SDL limitations
    2.97 +==============================================================================
    2.98 +
    2.99 +Windows:
   2.100 +	Full-size, single window applications only.  You cannot create multi-window SDL applications for iPhone OS.  The application window will fill the display, though you have the option of turning on or off the menu-bar (pass SDL_CreateWindow the flag SDL_WINDOW_BORDERLESS).  Presently, landscape mode is not supported.
   2.101 +
   2.102 +Video:
   2.103 +	For real time frame-rates, you are advised to use strictly SDL 1.3 video calls.  Using compatibility video calls uploads an OpenGL texture for each frame drawn, and this operation is excruciatingly slow.
   2.104 +
   2.105 +Textures:
   2.106 +	SDL for iPhone Textures supports only SDL_PIXELFORMAT_ABGR8888 and SDL_PIXELFORMAT_RGB24 pixel formats.  This is because texture support in SDL for iPhone is done through OpenGL ES, which supports fewer pixel formats than OpenGL, will not re-order pixel data for you, and has no support for color-paletted formats (without extensions).
   2.107 +
   2.108 +Audio:
   2.109 +	SDL for iPhone does not yet support audio input.
   2.110 +
   2.111 +Loading Shared Objects:
   2.112 +	This is disabled by default since it seems to break the terms of the iPhone SDK agreement.  It can be re-enabled in SDL_config_iphoneos.h.
   2.113 +
     3.1 --- a/README.iphoneos	Tue Jan 03 01:46:52 2012 -0500
     3.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.3 @@ -1,111 +0,0 @@
     3.4 -==============================================================================
     3.5 -Building the Simple DirectMedia Layer for iPhone OS 2.0
     3.6 -==============================================================================
     3.7 -
     3.8 -Requirements: Mac OS X v10.5 or later and the iPhone SDK.
     3.9 -
    3.10 -Instructions:
    3.11 -1.  Open SDLiPhoneOS.xcodeproj (located in Xcode-iPhoneOS/SDL) in XCode.
    3.12 -2.  Set Project->Set Active SDK to "Use Project Settings"
    3.13 -3.  Select your desired target, and hit build.
    3.14 -
    3.15 -There are three build targets:
    3.16 -- StaticLibiPhoneOS:
    3.17 -	Build SDL as a statically linked (armv6) library for iPhone OS 2.0.
    3.18 -- StaticLibSimulator:
    3.19 -	Build SDL as a statically linked (x86) library for the iPhone Simulator
    3.20 -- Template:
    3.21 -	Package a project template together with the SDL for iPhone static libraries and copies of the SDL headers.  The template includes proper references to the SDL library and headers, skeleton code for a basic SDL program, and placeholder graphics for the application icon and startup screen.
    3.22 -
    3.23 -==============================================================================
    3.24 -Using the Simple DirectMedia Layer for iPhone OS 2.0
    3.25 -==============================================================================
    3.26 -
    3.27 -Here is the easiest method:
    3.28 -1.  Build the SDL libraries (libSDLiPhoneOS.a and libSDLSimulator.a) and the iPhone SDL Application template.
    3.29 -1.  Install the iPhone SDL Application template by copying it to one of XCode's template directories.  I recommend creating a directory called "SDL" in "/Developer/Platforms/iPhoneOS.platform/Developer/Library/XCode/Project Templates/" and placing it there.
    3.30 -2.  Start a new project using the template.  The project should be immediately ready for use with SDL.
    3.31 -
    3.32 -Here is a more manual method:
    3.33 -1.  Create a new iPhone view based application.
    3.34 -2.  Build the SDL static libraries (libSDLiPhoneOS.a and libSDLSimulator.a) for iPhone and include them in your project.  XCode will ignore the library that is not currently of the correct architecture, hence your app will work both on iPhone and in the iPhone Simulator.
    3.35 -3.  Include the SDL header files in your project.
    3.36 -4.  Remove the ApplicationDelegate.h and ApplicationDelegate.m files -- SDL for iPhone provides its own UIApplicationDelegate.  Remove MainWindow.xib -- SDL for iPhone produces its user interface programmatically.
    3.37 -5.  Delete the contents of main.m and program your app as a regular SDL program instead.  You may replace main.m with your own main.c, but you must tell XCode not to use the project prefix file, as it includes Objective-C code.
    3.38 -
    3.39 -==============================================================================
    3.40 -Notes -- Accelerometer as Joystick
    3.41 -==============================================================================
    3.42 -
    3.43 -SDL for iPhone supports polling the built in accelerometer as a joystick device.  For an example on how to do this, see the accelerometer.c in the demos directory.
    3.44 -
    3.45 -The main thing to note when using the accelerometer with SDL is that while the iPhone natively reports accelerometer as floating point values in units of g-force, SDL_JoystickGetAxis reports joystick values as signed integers.  Hence, in order to convert between the two, some clamping and scaling is necessary on the part of the iPhone SDL joystick driver.  To convert SDL_JoystickGetAxis reported values BACK to units of g-force, simply multiply the values by SDL_IPHONE_MAX_GFORCE / 0x7FFF.
    3.46 -
    3.47 -==============================================================================
    3.48 -Notes -- OpenGL ES
    3.49 -==============================================================================
    3.50 -
    3.51 -Your SDL application for iPhone uses OpenGL ES for video by default.
    3.52 -
    3.53 -OpenGL ES for iPhone supports several display pixel formats, such as RGBA8 and RGB565, which provide a 32 bit and 16 bit color buffer respectively.  By default, the implementation uses RGB565, but you may use RGBA8 by setting each color component to 8 bits in SDL_GL_SetAttribute.
    3.54 -
    3.55 -If your application doesn't use OpenGL's depth buffer, you may find significant performance improvement by setting SDL_GL_DEPTH_SIZE to 0.
    3.56 -
    3.57 -Finally, if your application completely redraws the screen each frame, you may find significant performance improvement by setting the attribute SDL_GL_RETAINED_BACKING to 1.
    3.58 -
    3.59 -==============================================================================
    3.60 -Notes -- Keyboard
    3.61 -==============================================================================
    3.62 -
    3.63 -SDL for iPhone contains several additional functions related to keyboard visibility.  These functions are not part of the SDL standard API, but are necessary for revealing and hiding the iPhone's virtual onscreen keyboard.  You can use them in your own applications by including a copy of the SDL_uikitkeyboard.h header (located in src/video/uikit) in your project.
    3.64 -
    3.65 -int SDL_iPhoneKeyboardShow(SDL_Window * window) 
    3.66 -	-- reveals the onscreen keyboard.  Returns 0 on success and -1 on error.
    3.67 -int SDL_iPhoneKeyboardHide(SDL_Window * window) 
    3.68 -	-- hides the onscreen keyboard.  Returns 0 on success and -1 on error.
    3.69 -SDL_bool SDL_iPhoneKeyboardIsShown(SDL_Window * window) 
    3.70 -	-- returns whether or not the onscreen keyboard is currently visible.
    3.71 -int SDL_iPhoneKeyboardToggle(SDL_Window * window) 	
    3.72 -	-- toggles the visibility of the onscreen keyboard.  Returns 0 on success and -1 on error.
    3.73 -
    3.74 -==============================================================================
    3.75 -Notes -- Reading and Writing files
    3.76 -==============================================================================
    3.77 -
    3.78 -Each application installed on iPhone resides in a sandbox which includes its own Application Home directory.  Your application may not access files outside this directory.
    3.79 -
    3.80 -Once your application is installed its directory tree looks like:
    3.81 -
    3.82 -MySDLApp Home/
    3.83 -	MySDLApp.app
    3.84 -	Documents/
    3.85 -	Library/
    3.86 -		Preferences/
    3.87 -	tmp/
    3.88 -
    3.89 -When your SDL based iPhone application starts up, it sets the working directory to the main bundle (MySDLApp Home/MySDLApp.app), where your application resources are stored.  You cannot write to this directory.  Instead, I advise you to write document files to "../Documents/" and preferences to "../Library/Preferences".  
    3.90 -
    3.91 -More information on this subject is available here:
    3.92 -http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/ApplicationEnvironment/chapter_6_section_3.html#//apple_ref/doc/uid/TP40007072-CH7-SW21
    3.93 -
    3.94 -==============================================================================
    3.95 -Notes -- iPhone SDL limitations
    3.96 -==============================================================================
    3.97 -
    3.98 -Windows:
    3.99 -	Full-size, single window applications only.  You cannot create multi-window SDL applications for iPhone OS.  The application window will fill the display, though you have the option of turning on or off the menu-bar (pass SDL_CreateWindow the flag SDL_WINDOW_BORDERLESS).  Presently, landscape mode is not supported.
   3.100 -
   3.101 -Video:
   3.102 -	For real time frame-rates, you are advised to use strictly SDL 1.3 video calls.  Using compatibility video calls uploads an OpenGL texture for each frame drawn, and this operation is excruciatingly slow.
   3.103 -
   3.104 -Textures:
   3.105 -	SDL for iPhone Textures supports only SDL_PIXELFORMAT_ABGR8888 and SDL_PIXELFORMAT_RGB24 pixel formats.  This is because texture support in SDL for iPhone is done through OpenGL ES, which supports fewer pixel formats than OpenGL, will not re-order pixel data for you, and has no support for color-paletted formats (without extensions).
   3.106 -
   3.107 -Audio:
   3.108 -	SDL for iPhone does not yet support audio input.
   3.109 -
   3.110 -Loading Shared Objects:
   3.111 -	This is disabled by default since it seems to break the terms of the iPhone SDK agreement.  It can be re-enabled in SDL_config_iphoneos.h.
   3.112 -
   3.113 -
   3.114 -
     4.1 Binary file Xcode-iOS/Demos/Default.png has changed
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/Xcode-iOS/Demos/Demos.xcodeproj/project.pbxproj	Thu Jan 05 21:41:55 2012 -0500
     5.3 @@ -0,0 +1,1028 @@
     5.4 +// !$*UTF8*$!
     5.5 +{
     5.6 +	archiveVersion = 1;
     5.7 +	classes = {
     5.8 +	};
     5.9 +	objectVersion = 46;
    5.10 +	objects = {
    5.11 +
    5.12 +/* Begin PBXBuildFile section */
    5.13 +		1D3623EC0D0F72F000981E51 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.14 +		1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.15 +		1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.16 +		FD15FD690E086911003BDF25 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.17 +		FD15FD6A0E086911003BDF25 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.18 +		FD15FD6B0E086911003BDF25 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.19 +		FD15FD6C0E086911003BDF25 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.20 +		FD15FD6D0E086911003BDF25 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.21 +		FD1B48DD0E313255007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.22 +		FD1B49980E313261007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.23 +		FD1B499C0E313269007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.24 +		FD1B499E0E31326C007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.25 +		FD1B49A00E313270007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.26 +		FD1B49A20E313273007AB34E /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.27 +		FD5F9CE80E0E0741008E885B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.28 +		FD5F9CE90E0E0741008E885B /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.29 +		FD5F9CEA0E0E0741008E885B /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.30 +		FD5F9CEB0E0E0741008E885B /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.31 +		FD5F9CEC0E0E0741008E885B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.32 +		FD77A00E0E26BC0500F39101 /* happy.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0080E26BC0500F39101 /* happy.c */; };
    5.33 +		FD77A0130E26BC0500F39101 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.34 +		FD77A0160E26BC0500F39101 /* rectangles.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A00A0E26BC0500F39101 /* rectangles.c */; };
    5.35 +		FD77A0190E26BC0500F39101 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.36 +		FD77A01F0E26BC0500F39101 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.37 +		FD77A0230E26BC0500F39101 /* touch.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A00B0E26BC0500F39101 /* touch.c */; };
    5.38 +		FD77A0250E26BC0500F39101 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.39 +		FD77A0270E26BC0500F39101 /* mixer.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0090E26BC0500F39101 /* mixer.c */; };
    5.40 +		FD77A02A0E26BC2700F39101 /* accelerometer.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0050E26BC0500F39101 /* accelerometer.c */; };
    5.41 +		FD787AA10E22A5CC003E8E36 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.42 +		FD787AA20E22A5CC003E8E36 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.43 +		FD787AA30E22A5CC003E8E36 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.44 +		FD787AA40E22A5CC003E8E36 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.45 +		FD787AA50E22A5CC003E8E36 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.46 +		FD925B190E0F276600E92347 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.47 +		FD925B1A0E0F276600E92347 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.48 +		FD925B1B0E0F276600E92347 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.49 +		FDB651D00E43D1AD00F688B5 /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CC0E43D19800F688B5 /* icon.bmp */; };
    5.50 +		FDB651D10E43D1B300F688B5 /* ship.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CD0E43D19800F688B5 /* ship.bmp */; };
    5.51 +		FDB651D20E43D1B500F688B5 /* space.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CE0E43D19800F688B5 /* space.bmp */; };
    5.52 +		FDB651D30E43D1BA00F688B5 /* stroke.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CF0E43D19800F688B5 /* stroke.bmp */; };
    5.53 +		FDB651D40E43D1C500F688B5 /* ds_brush_snare.wav in Resources */ = {isa = PBXBuildFile; fileRef = FDB651C80E43D19800F688B5 /* ds_brush_snare.wav */; };
    5.54 +		FDB651D50E43D1C500F688B5 /* ds_china.wav in Resources */ = {isa = PBXBuildFile; fileRef = FDB651C90E43D19800F688B5 /* ds_china.wav */; };
    5.55 +		FDB651D60E43D1C500F688B5 /* ds_kick_big_amb.wav in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CA0E43D19800F688B5 /* ds_kick_big_amb.wav */; };
    5.56 +		FDB651D70E43D1C500F688B5 /* ds_loose_skin_mute.wav in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CB0E43D19800F688B5 /* ds_loose_skin_mute.wav */; };
    5.57 +		FDB651D80E43D1D800F688B5 /* stroke.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CF0E43D19800F688B5 /* stroke.bmp */; };
    5.58 +		FDB651F90E43D1F300F688B5 /* stroke.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB651CF0E43D19800F688B5 /* stroke.bmp */; };
    5.59 +		FDB651FA0E43D1F300F688B5 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.60 +		FDB651FB0E43D1F300F688B5 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.61 +		FDB651FD0E43D1F300F688B5 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.62 +		FDB652000E43D1F300F688B5 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B489E0E313154007AB34E /* libSDL.a */; };
    5.63 +		FDB652020E43D1F300F688B5 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.64 +		FDB652030E43D1F300F688B5 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.65 +		FDB652040E43D1F300F688B5 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.66 +		FDB652050E43D1F300F688B5 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.67 +		FDB652060E43D1F300F688B5 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.68 +		FDB652070E43D1F300F688B5 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
    5.69 +		FDB652080E43D1F300F688B5 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
    5.70 +		FDB652120E43D21A00F688B5 /* keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = FDB652110E43D21A00F688B5 /* keyboard.c */; };
    5.71 +		FDB652C70E43E25900F688B5 /* kromasky_16x16.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDB652C60E43E25900F688B5 /* kromasky_16x16.bmp */; };
    5.72 +		FDB96ED40DEFC9C700FAF19F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.73 +		FDB96EE00DEFC9DC00FAF19F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.74 +		FDC202E10E107B1200ABAC90 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.75 +		FDC202E60E107B1200ABAC90 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.76 +		FDC202E70E107B1200ABAC90 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.77 +		FDC202E80E107B1200ABAC90 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.78 +		FDC202E90E107B1200ABAC90 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.79 +		FDC202EA0E107B1200ABAC90 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.80 +		FDC214870E26D78A00DDED23 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.81 +		FDC52EC80E2843D6008D768C /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.82 +		FDC52EC90E2843D6008D768C /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD787AA00E22A5CC003E8E36 /* Default.png */; };
    5.83 +		FDC52ECF0E2843D6008D768C /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A0060E26BC0500F39101 /* common.c */; };
    5.84 +		FDC52ED40E2843D6008D768C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.85 +		FDC52ED50E2843D6008D768C /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.86 +		FDC52ED60E2843D6008D768C /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.87 +		FDC52ED70E2843D6008D768C /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.88 +		FDC52ED80E2843D6008D768C /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.89 +		FDC52ED90E2843D6008D768C /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
    5.90 +		FDC52EDA0E2843D6008D768C /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
    5.91 +		FDC52EE50E284410008D768C /* fireworks.c in Sources */ = {isa = PBXBuildFile; fileRef = FDC52EE40E284410008D768C /* fireworks.c */; };
    5.92 +		FDF0D6960E12D05400247964 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD925B180E0F276600E92347 /* Icon.png */; };
    5.93 +		FDF0D69C0E12D05400247964 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
    5.94 +		FDF0D69D0E12D05400247964 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
    5.95 +		FDF0D69E0E12D05400247964 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */; };
    5.96 +		FDF0D69F0E12D05400247964 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */; };
    5.97 +		FDF0D6A00E12D05400247964 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */; };
    5.98 +		FDF0D71E0E12D2AB00247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
    5.99 +		FDF0D7230E12D31800247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
   5.100 +		FDF0D7950E12D52900247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
   5.101 +		FDF0D7960E12D52900247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
   5.102 +		FDF0D7A70E12D53200247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
   5.103 +		FDF0D7A80E12D53200247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
   5.104 +		FDF0D7A90E12D53500247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
   5.105 +		FDF0D7AA0E12D53500247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
   5.106 +		FDF0D7AB0E12D53800247964 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */; };
   5.107 +		FDF0D7AC0E12D53800247964 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDF0D7220E12D31800247964 /* AudioToolbox.framework */; };
   5.108 +/* End PBXBuildFile section */
   5.109 +
   5.110 +/* Begin PBXContainerItemProxy section */
   5.111 +		049F3694130CD86800FF080F /* PBXContainerItemProxy */ = {
   5.112 +			isa = PBXContainerItemProxy;
   5.113 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.114 +			proxyType = 1;
   5.115 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.116 +			remoteInfo = libSDL;
   5.117 +		};
   5.118 +		049F3696130CD87600FF080F /* PBXContainerItemProxy */ = {
   5.119 +			isa = PBXContainerItemProxy;
   5.120 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.121 +			proxyType = 1;
   5.122 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.123 +			remoteInfo = libSDL;
   5.124 +		};
   5.125 +		049F3698130CD87F00FF080F /* PBXContainerItemProxy */ = {
   5.126 +			isa = PBXContainerItemProxy;
   5.127 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.128 +			proxyType = 1;
   5.129 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.130 +			remoteInfo = libSDL;
   5.131 +		};
   5.132 +		049F369A130CD88800FF080F /* PBXContainerItemProxy */ = {
   5.133 +			isa = PBXContainerItemProxy;
   5.134 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.135 +			proxyType = 1;
   5.136 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.137 +			remoteInfo = libSDL;
   5.138 +		};
   5.139 +		049F369C130CD89000FF080F /* PBXContainerItemProxy */ = {
   5.140 +			isa = PBXContainerItemProxy;
   5.141 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.142 +			proxyType = 1;
   5.143 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.144 +			remoteInfo = libSDL;
   5.145 +		};
   5.146 +		049F369E130CD89800FF080F /* PBXContainerItemProxy */ = {
   5.147 +			isa = PBXContainerItemProxy;
   5.148 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.149 +			proxyType = 1;
   5.150 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.151 +			remoteInfo = libSDL;
   5.152 +		};
   5.153 +		049F36A0130CD8A000FF080F /* PBXContainerItemProxy */ = {
   5.154 +			isa = PBXContainerItemProxy;
   5.155 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.156 +			proxyType = 1;
   5.157 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
   5.158 +			remoteInfo = libSDL;
   5.159 +		};
   5.160 +		04AB757011E563D200BE9753 /* PBXContainerItemProxy */ = {
   5.161 +			isa = PBXContainerItemProxy;
   5.162 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.163 +			proxyType = 2;
   5.164 +			remoteGlobalIDString = 006E982211955059001DE610;
   5.165 +			remoteInfo = testsdl;
   5.166 +		};
   5.167 +		FD1B489D0E313154007AB34E /* PBXContainerItemProxy */ = {
   5.168 +			isa = PBXContainerItemProxy;
   5.169 +			containerPortal = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.170 +			proxyType = 2;
   5.171 +			remoteGlobalIDString = FD6526630DE8FCCB002AD96B;
   5.172 +			remoteInfo = StaticLib;
   5.173 +		};
   5.174 +/* End PBXContainerItemProxy section */
   5.175 +
   5.176 +/* Begin PBXFileReference section */
   5.177 +		1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
   5.178 +		1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
   5.179 +		1D6058910D05DD3D006BFB54 /* Rectangles.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Rectangles.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.180 +		1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
   5.181 +		8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
   5.182 +		FD15FCB20E086866003BDF25 /* Happy.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Happy.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.183 +		FD1B48920E313154007AB34E /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../SDL/SDL.xcodeproj; sourceTree = SOURCE_ROOT; };
   5.184 +		FD5F9BE40E0DEBEA008E885B /* Accel.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Accel.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.185 +		FD77A0050E26BC0500F39101 /* accelerometer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = accelerometer.c; sourceTree = "<group>"; };
   5.186 +		FD77A0060E26BC0500F39101 /* common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = common.c; sourceTree = "<group>"; };
   5.187 +		FD77A0070E26BC0500F39101 /* common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = common.h; sourceTree = "<group>"; };
   5.188 +		FD77A0080E26BC0500F39101 /* happy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = happy.c; sourceTree = "<group>"; };
   5.189 +		FD77A0090E26BC0500F39101 /* mixer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mixer.c; sourceTree = "<group>"; };
   5.190 +		FD77A00A0E26BC0500F39101 /* rectangles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rectangles.c; sourceTree = "<group>"; };
   5.191 +		FD77A00B0E26BC0500F39101 /* touch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = touch.c; sourceTree = "<group>"; };
   5.192 +		FD787AA00E22A5CC003E8E36 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
   5.193 +		FD925B180E0F276600E92347 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = "<group>"; };
   5.194 +		FDB651C60E43D19800F688B5 /* license.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = license.txt; sourceTree = "<group>"; };
   5.195 +		FDB651C80E43D19800F688B5 /* ds_brush_snare.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ds_brush_snare.wav; sourceTree = "<group>"; };
   5.196 +		FDB651C90E43D19800F688B5 /* ds_china.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ds_china.wav; sourceTree = "<group>"; };
   5.197 +		FDB651CA0E43D19800F688B5 /* ds_kick_big_amb.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ds_kick_big_amb.wav; sourceTree = "<group>"; };
   5.198 +		FDB651CB0E43D19800F688B5 /* ds_loose_skin_mute.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = ds_loose_skin_mute.wav; sourceTree = "<group>"; };
   5.199 +		FDB651CC0E43D19800F688B5 /* icon.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = icon.bmp; sourceTree = "<group>"; };
   5.200 +		FDB651CD0E43D19800F688B5 /* ship.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = ship.bmp; sourceTree = "<group>"; };
   5.201 +		FDB651CE0E43D19800F688B5 /* space.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = space.bmp; sourceTree = "<group>"; };
   5.202 +		FDB651CF0E43D19800F688B5 /* stroke.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = stroke.bmp; sourceTree = "<group>"; };
   5.203 +		FDB6520C0E43D1F300F688B5 /* Keyboard.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Keyboard.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.204 +		FDB652110E43D21A00F688B5 /* keyboard.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = keyboard.c; sourceTree = "<group>"; };
   5.205 +		FDB652C60E43E25900F688B5 /* kromasky_16x16.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = kromasky_16x16.bmp; sourceTree = "<group>"; };
   5.206 +		FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
   5.207 +		FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
   5.208 +		FDC202EE0E107B1200ABAC90 /* Touch.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Touch.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.209 +		FDC52EDE0E2843D6008D768C /* Fireworks.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Fireworks.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.210 +		FDC52EE40E284410008D768C /* fireworks.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fireworks.c; sourceTree = "<group>"; };
   5.211 +		FDF0D6A40E12D05400247964 /* Mixer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Mixer.app; sourceTree = BUILT_PRODUCTS_DIR; };
   5.212 +		FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
   5.213 +		FDF0D7220E12D31800247964 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
   5.214 +/* End PBXFileReference section */
   5.215 +
   5.216 +/* Begin PBXFrameworksBuildPhase section */
   5.217 +		1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
   5.218 +			isa = PBXFrameworksBuildPhase;
   5.219 +			buildActionMask = 2147483647;
   5.220 +			files = (
   5.221 +				FD1B48DD0E313255007AB34E /* libSDL.a in Frameworks */,
   5.222 +				FDF0D7AB0E12D53800247964 /* CoreAudio.framework in Frameworks */,
   5.223 +				FDF0D7AC0E12D53800247964 /* AudioToolbox.framework in Frameworks */,
   5.224 +				1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */,
   5.225 +				1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */,
   5.226 +				1D3623EC0D0F72F000981E51 /* CoreGraphics.framework in Frameworks */,
   5.227 +				FDB96ED40DEFC9C700FAF19F /* OpenGLES.framework in Frameworks */,
   5.228 +				FDB96EE00DEFC9DC00FAF19F /* QuartzCore.framework in Frameworks */,
   5.229 +			);
   5.230 +			runOnlyForDeploymentPostprocessing = 0;
   5.231 +		};
   5.232 +		FD15FCB00E086866003BDF25 /* Frameworks */ = {
   5.233 +			isa = PBXFrameworksBuildPhase;
   5.234 +			buildActionMask = 2147483647;
   5.235 +			files = (
   5.236 +				FD1B49980E313261007AB34E /* libSDL.a in Frameworks */,
   5.237 +				FDF0D7A90E12D53500247964 /* CoreAudio.framework in Frameworks */,
   5.238 +				FDF0D7AA0E12D53500247964 /* AudioToolbox.framework in Frameworks */,
   5.239 +				FD15FD690E086911003BDF25 /* Foundation.framework in Frameworks */,
   5.240 +				FD15FD6A0E086911003BDF25 /* UIKit.framework in Frameworks */,
   5.241 +				FD15FD6B0E086911003BDF25 /* CoreGraphics.framework in Frameworks */,
   5.242 +				FD15FD6C0E086911003BDF25 /* OpenGLES.framework in Frameworks */,
   5.243 +				FD15FD6D0E086911003BDF25 /* QuartzCore.framework in Frameworks */,
   5.244 +			);
   5.245 +			runOnlyForDeploymentPostprocessing = 0;
   5.246 +		};
   5.247 +		FD5F9BE20E0DEBEA008E885B /* Frameworks */ = {
   5.248 +			isa = PBXFrameworksBuildPhase;
   5.249 +			buildActionMask = 2147483647;
   5.250 +			files = (
   5.251 +				FD1B499C0E313269007AB34E /* libSDL.a in Frameworks */,
   5.252 +				FDF0D7A70E12D53200247964 /* CoreAudio.framework in Frameworks */,
   5.253 +				FDF0D7A80E12D53200247964 /* AudioToolbox.framework in Frameworks */,
   5.254 +				FD5F9CEB0E0E0741008E885B /* OpenGLES.framework in Frameworks */,
   5.255 +				FD5F9CEC0E0E0741008E885B /* QuartzCore.framework in Frameworks */,
   5.256 +				FD5F9CE80E0E0741008E885B /* Foundation.framework in Frameworks */,
   5.257 +				FD5F9CE90E0E0741008E885B /* UIKit.framework in Frameworks */,
   5.258 +				FD5F9CEA0E0E0741008E885B /* CoreGraphics.framework in Frameworks */,
   5.259 +			);
   5.260 +			runOnlyForDeploymentPostprocessing = 0;
   5.261 +		};
   5.262 +		FDB651FF0E43D1F300F688B5 /* Frameworks */ = {
   5.263 +			isa = PBXFrameworksBuildPhase;
   5.264 +			buildActionMask = 2147483647;
   5.265 +			files = (
   5.266 +				FDB652000E43D1F300F688B5 /* libSDL.a in Frameworks */,
   5.267 +				FDB652020E43D1F300F688B5 /* Foundation.framework in Frameworks */,
   5.268 +				FDB652030E43D1F300F688B5 /* UIKit.framework in Frameworks */,
   5.269 +				FDB652040E43D1F300F688B5 /* CoreGraphics.framework in Frameworks */,
   5.270 +				FDB652050E43D1F300F688B5 /* OpenGLES.framework in Frameworks */,
   5.271 +				FDB652060E43D1F300F688B5 /* QuartzCore.framework in Frameworks */,
   5.272 +				FDB652070E43D1F300F688B5 /* CoreAudio.framework in Frameworks */,
   5.273 +				FDB652080E43D1F300F688B5 /* AudioToolbox.framework in Frameworks */,
   5.274 +			);
   5.275 +			runOnlyForDeploymentPostprocessing = 0;
   5.276 +		};
   5.277 +		FDC202E40E107B1200ABAC90 /* Frameworks */ = {
   5.278 +			isa = PBXFrameworksBuildPhase;
   5.279 +			buildActionMask = 2147483647;
   5.280 +			files = (
   5.281 +				FD1B499E0E31326C007AB34E /* libSDL.a in Frameworks */,
   5.282 +				FDF0D7950E12D52900247964 /* CoreAudio.framework in Frameworks */,
   5.283 +				FDF0D7960E12D52900247964 /* AudioToolbox.framework in Frameworks */,
   5.284 +				FDC202E60E107B1200ABAC90 /* Foundation.framework in Frameworks */,
   5.285 +				FDC202E70E107B1200ABAC90 /* UIKit.framework in Frameworks */,
   5.286 +				FDC202E80E107B1200ABAC90 /* CoreGraphics.framework in Frameworks */,
   5.287 +				FDC202E90E107B1200ABAC90 /* OpenGLES.framework in Frameworks */,
   5.288 +				FDC202EA0E107B1200ABAC90 /* QuartzCore.framework in Frameworks */,
   5.289 +			);
   5.290 +			runOnlyForDeploymentPostprocessing = 0;
   5.291 +		};
   5.292 +		FDC52ED10E2843D6008D768C /* Frameworks */ = {
   5.293 +			isa = PBXFrameworksBuildPhase;
   5.294 +			buildActionMask = 2147483647;
   5.295 +			files = (
   5.296 +				FD1B49A20E313273007AB34E /* libSDL.a in Frameworks */,
   5.297 +				FDC52ED40E2843D6008D768C /* Foundation.framework in Frameworks */,
   5.298 +				FDC52ED50E2843D6008D768C /* UIKit.framework in Frameworks */,
   5.299 +				FDC52ED60E2843D6008D768C /* CoreGraphics.framework in Frameworks */,
   5.300 +				FDC52ED70E2843D6008D768C /* OpenGLES.framework in Frameworks */,
   5.301 +				FDC52ED80E2843D6008D768C /* QuartzCore.framework in Frameworks */,
   5.302 +				FDC52ED90E2843D6008D768C /* CoreAudio.framework in Frameworks */,
   5.303 +				FDC52EDA0E2843D6008D768C /* AudioToolbox.framework in Frameworks */,
   5.304 +			);
   5.305 +			runOnlyForDeploymentPostprocessing = 0;
   5.306 +		};
   5.307 +		FDF0D69A0E12D05400247964 /* Frameworks */ = {
   5.308 +			isa = PBXFrameworksBuildPhase;
   5.309 +			buildActionMask = 2147483647;
   5.310 +			files = (
   5.311 +				FD1B49A00E313270007AB34E /* libSDL.a in Frameworks */,
   5.312 +				FDF0D69C0E12D05400247964 /* Foundation.framework in Frameworks */,
   5.313 +				FDF0D69D0E12D05400247964 /* UIKit.framework in Frameworks */,
   5.314 +				FDF0D69E0E12D05400247964 /* CoreGraphics.framework in Frameworks */,
   5.315 +				FDF0D69F0E12D05400247964 /* OpenGLES.framework in Frameworks */,
   5.316 +				FDF0D6A00E12D05400247964 /* QuartzCore.framework in Frameworks */,
   5.317 +				FDF0D71E0E12D2AB00247964 /* CoreAudio.framework in Frameworks */,
   5.318 +				FDF0D7230E12D31800247964 /* AudioToolbox.framework in Frameworks */,
   5.319 +			);
   5.320 +			runOnlyForDeploymentPostprocessing = 0;
   5.321 +		};
   5.322 +/* End PBXFrameworksBuildPhase section */
   5.323 +
   5.324 +/* Begin PBXGroup section */
   5.325 +		19C28FACFE9D520D11CA2CBB /* Products */ = {
   5.326 +			isa = PBXGroup;
   5.327 +			children = (
   5.328 +				1D6058910D05DD3D006BFB54 /* Rectangles.app */,
   5.329 +				FD15FCB20E086866003BDF25 /* Happy.app */,
   5.330 +				FD5F9BE40E0DEBEA008E885B /* Accel.app */,
   5.331 +				FDC202EE0E107B1200ABAC90 /* Touch.app */,
   5.332 +				FDF0D6A40E12D05400247964 /* Mixer.app */,
   5.333 +				FDC52EDE0E2843D6008D768C /* Fireworks.app */,
   5.334 +				FDB6520C0E43D1F300F688B5 /* Keyboard.app */,
   5.335 +			);
   5.336 +			name = Products;
   5.337 +			sourceTree = "<group>";
   5.338 +		};
   5.339 +		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
   5.340 +			isa = PBXGroup;
   5.341 +			children = (
   5.342 +				FD1B48920E313154007AB34E /* SDL.xcodeproj */,
   5.343 +				FD77A0040E26BC0500F39101 /* src */,
   5.344 +				29B97317FDCFA39411CA2CEA /* Resources */,
   5.345 +				29B97323FDCFA39411CA2CEA /* Frameworks */,
   5.346 +				19C28FACFE9D520D11CA2CBB /* Products */,
   5.347 +			);
   5.348 +			name = CustomTemplate;
   5.349 +			sourceTree = "<group>";
   5.350 +		};
   5.351 +		29B97317FDCFA39411CA2CEA /* Resources */ = {
   5.352 +			isa = PBXGroup;
   5.353 +			children = (
   5.354 +				FDB651C30E43D19800F688B5 /* data */,
   5.355 +				FD787AA00E22A5CC003E8E36 /* Default.png */,
   5.356 +				FD925B180E0F276600E92347 /* Icon.png */,
   5.357 +				8D1107310486CEB800E47090 /* Info.plist */,
   5.358 +			);
   5.359 +			name = Resources;
   5.360 +			sourceTree = "<group>";
   5.361 +		};
   5.362 +		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
   5.363 +			isa = PBXGroup;
   5.364 +			children = (
   5.365 +				FDF0D7220E12D31800247964 /* AudioToolbox.framework */,
   5.366 +				FDB96EDF0DEFC9DC00FAF19F /* QuartzCore.framework */,
   5.367 +				FDB96ED30DEFC9C700FAF19F /* OpenGLES.framework */,
   5.368 +				1D3623EB0D0F72F000981E51 /* CoreGraphics.framework */,
   5.369 +				1DF5F4DF0D08C38300B7A737 /* UIKit.framework */,
   5.370 +				1D30AB110D05D00D00671497 /* Foundation.framework */,
   5.371 +				FDF0D71D0E12D2AB00247964 /* CoreAudio.framework */,
   5.372 +			);
   5.373 +			name = Frameworks;
   5.374 +			sourceTree = "<group>";
   5.375 +		};
   5.376 +		FD1B48930E313154007AB34E /* Products */ = {
   5.377 +			isa = PBXGroup;
   5.378 +			children = (
   5.379 +				FD1B489E0E313154007AB34E /* libSDL.a */,
   5.380 +				04AB757111E563D200BE9753 /* testsdl.app */,
   5.381 +			);
   5.382 +			name = Products;
   5.383 +			sourceTree = "<group>";
   5.384 +		};
   5.385 +		FD77A0040E26BC0500F39101 /* src */ = {
   5.386 +			isa = PBXGroup;
   5.387 +			children = (
   5.388 +				FD77A0060E26BC0500F39101 /* common.c */,
   5.389 +				FD77A0070E26BC0500F39101 /* common.h */,
   5.390 +				FD77A00A0E26BC0500F39101 /* rectangles.c */,
   5.391 +				FD77A0080E26BC0500F39101 /* happy.c */,
   5.392 +				FD77A0050E26BC0500F39101 /* accelerometer.c */,
   5.393 +				FD77A00B0E26BC0500F39101 /* touch.c */,
   5.394 +				FD77A0090E26BC0500F39101 /* mixer.c */,
   5.395 +				FDB652110E43D21A00F688B5 /* keyboard.c */,
   5.396 +				FDC52EE40E284410008D768C /* fireworks.c */,
   5.397 +			);
   5.398 +			path = src;
   5.399 +			sourceTree = "<group>";
   5.400 +		};
   5.401 +		FDB651C30E43D19800F688B5 /* data */ = {
   5.402 +			isa = PBXGroup;
   5.403 +			children = (
   5.404 +				FDB651C40E43D19800F688B5 /* bitmapfont */,
   5.405 +				FDB651C70E43D19800F688B5 /* drums */,
   5.406 +				FDB651CC0E43D19800F688B5 /* icon.bmp */,
   5.407 +				FDB651CD0E43D19800F688B5 /* ship.bmp */,
   5.408 +				FDB651CE0E43D19800F688B5 /* space.bmp */,
   5.409 +				FDB651CF0E43D19800F688B5 /* stroke.bmp */,
   5.410 +			);
   5.411 +			path = data;
   5.412 +			sourceTree = "<group>";
   5.413 +		};
   5.414 +		FDB651C40E43D19800F688B5 /* bitmapfont */ = {
   5.415 +			isa = PBXGroup;
   5.416 +			children = (
   5.417 +				FDB652C60E43E25900F688B5 /* kromasky_16x16.bmp */,
   5.418 +				FDB651C60E43D19800F688B5 /* license.txt */,
   5.419 +			);
   5.420 +			path = bitmapfont;
   5.421 +			sourceTree = "<group>";
   5.422 +		};
   5.423 +		FDB651C70E43D19800F688B5 /* drums */ = {
   5.424 +			isa = PBXGroup;
   5.425 +			children = (
   5.426 +				FDB651C80E43D19800F688B5 /* ds_brush_snare.wav */,
   5.427 +				FDB651C90E43D19800F688B5 /* ds_china.wav */,
   5.428 +				FDB651CA0E43D19800F688B5 /* ds_kick_big_amb.wav */,
   5.429 +				FDB651CB0E43D19800F688B5 /* ds_loose_skin_mute.wav */,
   5.430 +			);
   5.431 +			path = drums;
   5.432 +			sourceTree = "<group>";
   5.433 +		};
   5.434 +/* End PBXGroup section */
   5.435 +
   5.436 +/* Begin PBXNativeTarget section */
   5.437 +		1D6058900D05DD3D006BFB54 /* Rectangles */ = {
   5.438 +			isa = PBXNativeTarget;
   5.439 +			buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "Rectangles" */;
   5.440 +			buildPhases = (
   5.441 +				1D60588D0D05DD3D006BFB54 /* Resources */,
   5.442 +				1D60588E0D05DD3D006BFB54 /* Sources */,
   5.443 +				1D60588F0D05DD3D006BFB54 /* Frameworks */,
   5.444 +			);
   5.445 +			buildRules = (
   5.446 +			);
   5.447 +			dependencies = (
   5.448 +				049F3695130CD86800FF080F /* PBXTargetDependency */,
   5.449 +			);
   5.450 +			name = Rectangles;
   5.451 +			productName = SDLiPodTest;
   5.452 +			productReference = 1D6058910D05DD3D006BFB54 /* Rectangles.app */;
   5.453 +			productType = "com.apple.product-type.application";
   5.454 +		};
   5.455 +		FD15FCB10E086866003BDF25 /* Happy */ = {
   5.456 +			isa = PBXNativeTarget;
   5.457 +			buildConfigurationList = FD15FCB70E086867003BDF25 /* Build configuration list for PBXNativeTarget "Happy" */;
   5.458 +			buildPhases = (
   5.459 +				FD15FCAE0E086866003BDF25 /* Resources */,
   5.460 +				FD15FCAF0E086866003BDF25 /* Sources */,
   5.461 +				FD15FCB00E086866003BDF25 /* Frameworks */,
   5.462 +			);
   5.463 +			buildRules = (
   5.464 +			);
   5.465 +			dependencies = (
   5.466 +				049F3697130CD87600FF080F /* PBXTargetDependency */,
   5.467 +			);
   5.468 +			name = Happy;
   5.469 +			productName = BMPTest;
   5.470 +			productReference = FD15FCB20E086866003BDF25 /* Happy.app */;
   5.471 +			productType = "com.apple.product-type.application";
   5.472 +		};
   5.473 +		FD5F9BE30E0DEBEA008E885B /* Accel */ = {
   5.474 +			isa = PBXNativeTarget;
   5.475 +			buildConfigurationList = FD5F9BE90E0DEBEB008E885B /* Build configuration list for PBXNativeTarget "Accel" */;
   5.476 +			buildPhases = (
   5.477 +				FD5F9BE00E0DEBEA008E885B /* Resources */,
   5.478 +				FD5F9BE10E0DEBEA008E885B /* Sources */,
   5.479 +				FD5F9BE20E0DEBEA008E885B /* Frameworks */,
   5.480 +			);
   5.481 +			buildRules = (
   5.482 +			);
   5.483 +			dependencies = (
   5.484 +				049F3699130CD87F00FF080F /* PBXTargetDependency */,
   5.485 +			);
   5.486 +			name = Accel;
   5.487 +			productName = Accelerometer;
   5.488 +			productReference = FD5F9BE40E0DEBEA008E885B /* Accel.app */;
   5.489 +			productType = "com.apple.product-type.application";
   5.490 +		};
   5.491 +		FDB651F70E43D1F300F688B5 /* Keyboard */ = {
   5.492 +			isa = PBXNativeTarget;
   5.493 +			buildConfigurationList = FDB652090E43D1F300F688B5 /* Build configuration list for PBXNativeTarget "Keyboard" */;
   5.494 +			buildPhases = (
   5.495 +				FDB651F80E43D1F300F688B5 /* Resources */,
   5.496 +				FDB651FC0E43D1F300F688B5 /* Sources */,
   5.497 +				FDB651FF0E43D1F300F688B5 /* Frameworks */,
   5.498 +			);
   5.499 +			buildRules = (
   5.500 +			);
   5.501 +			dependencies = (
   5.502 +				049F36A1130CD8A000FF080F /* PBXTargetDependency */,
   5.503 +			);
   5.504 +			name = Keyboard;
   5.505 +			productName = Accelerometer;
   5.506 +			productReference = FDB6520C0E43D1F300F688B5 /* Keyboard.app */;
   5.507 +			productType = "com.apple.product-type.application";
   5.508 +		};
   5.509 +		FDC202DD0E107B1200ABAC90 /* Touch */ = {
   5.510 +			isa = PBXNativeTarget;
   5.511 +			buildConfigurationList = FDC202EB0E107B1200ABAC90 /* Build configuration list for PBXNativeTarget "Touch" */;
   5.512 +			buildPhases = (
   5.513 +				FDC202DE0E107B1200ABAC90 /* Resources */,
   5.514 +				FDC202E20E107B1200ABAC90 /* Sources */,
   5.515 +				FDC202E40E107B1200ABAC90 /* Frameworks */,
   5.516 +			);
   5.517 +			buildRules = (
   5.518 +			);
   5.519 +			dependencies = (
   5.520 +				049F369B130CD88800FF080F /* PBXTargetDependency */,
   5.521 +			);
   5.522 +			name = Touch;
   5.523 +			productName = Accelerometer;
   5.524 +			productReference = FDC202EE0E107B1200ABAC90 /* Touch.app */;
   5.525 +			productType = "com.apple.product-type.application";
   5.526 +		};
   5.527 +		FDC52EC60E2843D6008D768C /* Fireworks */ = {
   5.528 +			isa = PBXNativeTarget;
   5.529 +			buildConfigurationList = FDC52EDB0E2843D6008D768C /* Build configuration list for PBXNativeTarget "Fireworks" */;
   5.530 +			buildPhases = (
   5.531 +				FDC52EC70E2843D6008D768C /* Resources */,
   5.532 +				FDC52ECE0E2843D6008D768C /* Sources */,
   5.533 +				FDC52ED10E2843D6008D768C /* Frameworks */,
   5.534 +			);
   5.535 +			buildRules = (
   5.536 +			);
   5.537 +			dependencies = (
   5.538 +				049F369F130CD89800FF080F /* PBXTargetDependency */,
   5.539 +			);
   5.540 +			name = Fireworks;
   5.541 +			productName = Accelerometer;
   5.542 +			productReference = FDC52EDE0E2843D6008D768C /* Fireworks.app */;
   5.543 +			productType = "com.apple.product-type.application";
   5.544 +		};
   5.545 +		FDF0D6920E12D05400247964 /* Mixer */ = {
   5.546 +			isa = PBXNativeTarget;
   5.547 +			buildConfigurationList = FDF0D6A10E12D05400247964 /* Build configuration list for PBXNativeTarget "Mixer" */;
   5.548 +			buildPhases = (
   5.549 +				FDF0D6930E12D05400247964 /* Resources */,
   5.550 +				FDF0D6980E12D05400247964 /* Sources */,
   5.551 +				FDF0D69A0E12D05400247964 /* Frameworks */,
   5.552 +			);
   5.553 +			buildRules = (
   5.554 +			);
   5.555 +			dependencies = (
   5.556 +				049F369D130CD89000FF080F /* PBXTargetDependency */,
   5.557 +			);
   5.558 +			name = Mixer;
   5.559 +			productName = Accelerometer;
   5.560 +			productReference = FDF0D6A40E12D05400247964 /* Mixer.app */;
   5.561 +			productType = "com.apple.product-type.application";
   5.562 +		};
   5.563 +/* End PBXNativeTarget section */
   5.564 +
   5.565 +/* Begin PBXProject section */
   5.566 +		29B97313FDCFA39411CA2CEA /* Project object */ = {
   5.567 +			isa = PBXProject;
   5.568 +			attributes = {
   5.569 +				LastUpgradeCheck = 0420;
   5.570 +			};
   5.571 +			buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Demos" */;
   5.572 +			compatibilityVersion = "Xcode 3.2";
   5.573 +			developmentRegion = English;
   5.574 +			hasScannedForEncodings = 1;
   5.575 +			knownRegions = (
   5.576 +				English,
   5.577 +				Japanese,
   5.578 +				French,
   5.579 +				German,
   5.580 +			);
   5.581 +			mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
   5.582 +			projectDirPath = "";
   5.583 +			projectReferences = (
   5.584 +				{
   5.585 +					ProductGroup = FD1B48930E313154007AB34E /* Products */;
   5.586 +					ProjectRef = FD1B48920E313154007AB34E /* SDL.xcodeproj */;
   5.587 +				},
   5.588 +			);
   5.589 +			projectRoot = "";
   5.590 +			targets = (
   5.591 +				1D6058900D05DD3D006BFB54 /* Rectangles */,
   5.592 +				FD15FCB10E086866003BDF25 /* Happy */,
   5.593 +				FD5F9BE30E0DEBEA008E885B /* Accel */,
   5.594 +				FDC202DD0E107B1200ABAC90 /* Touch */,
   5.595 +				FDF0D6920E12D05400247964 /* Mixer */,
   5.596 +				FDC52EC60E2843D6008D768C /* Fireworks */,
   5.597 +				FDB651F70E43D1F300F688B5 /* Keyboard */,
   5.598 +			);
   5.599 +		};
   5.600 +/* End PBXProject section */
   5.601 +
   5.602 +/* Begin PBXReferenceProxy section */
   5.603 +		04AB757111E563D200BE9753 /* testsdl.app */ = {
   5.604 +			isa = PBXReferenceProxy;
   5.605 +			fileType = wrapper.application;
   5.606 +			path = testsdl.app;
   5.607 +			remoteRef = 04AB757011E563D200BE9753 /* PBXContainerItemProxy */;
   5.608 +			sourceTree = BUILT_PRODUCTS_DIR;
   5.609 +		};
   5.610 +		FD1B489E0E313154007AB34E /* libSDL.a */ = {
   5.611 +			isa = PBXReferenceProxy;
   5.612 +			fileType = archive.ar;
   5.613 +			path = libSDL.a;
   5.614 +			remoteRef = FD1B489D0E313154007AB34E /* PBXContainerItemProxy */;
   5.615 +			sourceTree = BUILT_PRODUCTS_DIR;
   5.616 +		};
   5.617 +/* End PBXReferenceProxy section */
   5.618 +
   5.619 +/* Begin PBXResourcesBuildPhase section */
   5.620 +		1D60588D0D05DD3D006BFB54 /* Resources */ = {
   5.621 +			isa = PBXResourcesBuildPhase;
   5.622 +			buildActionMask = 2147483647;
   5.623 +			files = (
   5.624 +				FD925B1B0E0F276600E92347 /* Icon.png in Resources */,
   5.625 +				FD787AA20E22A5CC003E8E36 /* Default.png in Resources */,
   5.626 +			);
   5.627 +			runOnlyForDeploymentPostprocessing = 0;
   5.628 +		};
   5.629 +		FD15FCAE0E086866003BDF25 /* Resources */ = {
   5.630 +			isa = PBXResourcesBuildPhase;
   5.631 +			buildActionMask = 2147483647;
   5.632 +			files = (
   5.633 +				FDB651D00E43D1AD00F688B5 /* icon.bmp in Resources */,
   5.634 +				FD925B1A0E0F276600E92347 /* Icon.png in Resources */,
   5.635 +				FD787AA10E22A5CC003E8E36 /* Default.png in Resources */,
   5.636 +			);
   5.637 +			runOnlyForDeploymentPostprocessing = 0;
   5.638 +		};
   5.639 +		FD5F9BE00E0DEBEA008E885B /* Resources */ = {
   5.640 +			isa = PBXResourcesBuildPhase;
   5.641 +			buildActionMask = 2147483647;
   5.642 +			files = (
   5.643 +				FDB651D20E43D1B500F688B5 /* space.bmp in Resources */,
   5.644 +				FDB651D10E43D1B300F688B5 /* ship.bmp in Resources */,
   5.645 +				FD925B190E0F276600E92347 /* Icon.png in Resources */,
   5.646 +				FD787AA30E22A5CC003E8E36 /* Default.png in Resources */,
   5.647 +			);
   5.648 +			runOnlyForDeploymentPostprocessing = 0;
   5.649 +		};
   5.650 +		FDB651F80E43D1F300F688B5 /* Resources */ = {
   5.651 +			isa = PBXResourcesBuildPhase;
   5.652 +			buildActionMask = 2147483647;
   5.653 +			files = (
   5.654 +				FDB651F90E43D1F300F688B5 /* stroke.bmp in Resources */,
   5.655 +				FDB651FA0E43D1F300F688B5 /* Icon.png in Resources */,
   5.656 +				FDB651FB0E43D1F300F688B5 /* Default.png in Resources */,
   5.657 +				FDB652C70E43E25900F688B5 /* kromasky_16x16.bmp in Resources */,
   5.658 +			);
   5.659 +			runOnlyForDeploymentPostprocessing = 0;
   5.660 +		};
   5.661 +		FDC202DE0E107B1200ABAC90 /* Resources */ = {
   5.662 +			isa = PBXResourcesBuildPhase;
   5.663 +			buildActionMask = 2147483647;
   5.664 +			files = (
   5.665 +				FDB651D30E43D1BA00F688B5 /* stroke.bmp in Resources */,
   5.666 +				FDC202E10E107B1200ABAC90 /* Icon.png in Resources */,
   5.667 +				FD787AA40E22A5CC003E8E36 /* Default.png in Resources */,
   5.668 +			);
   5.669 +			runOnlyForDeploymentPostprocessing = 0;
   5.670 +		};
   5.671 +		FDC52EC70E2843D6008D768C /* Resources */ = {
   5.672 +			isa = PBXResourcesBuildPhase;
   5.673 +			buildActionMask = 2147483647;
   5.674 +			files = (
   5.675 +				FDB651D80E43D1D800F688B5 /* stroke.bmp in Resources */,
   5.676 +				FDC52EC80E2843D6008D768C /* Icon.png in Resources */,
   5.677 +				FDC52EC90E2843D6008D768C /* Default.png in Resources */,
   5.678 +			);
   5.679 +			runOnlyForDeploymentPostprocessing = 0;
   5.680 +		};
   5.681 +		FDF0D6930E12D05400247964 /* Resources */ = {
   5.682 +			isa = PBXResourcesBuildPhase;
   5.683 +			buildActionMask = 2147483647;
   5.684 +			files = (
   5.685 +				FDB651D40E43D1C500F688B5 /* ds_brush_snare.wav in Resources */,
   5.686 +				FDB651D50E43D1C500F688B5 /* ds_china.wav in Resources */,
   5.687 +				FDB651D60E43D1C500F688B5 /* ds_kick_big_amb.wav in Resources */,
   5.688 +				FDB651D70E43D1C500F688B5 /* ds_loose_skin_mute.wav in Resources */,
   5.689 +				FDF0D6960E12D05400247964 /* Icon.png in Resources */,
   5.690 +				FD787AA50E22A5CC003E8E36 /* Default.png in Resources */,
   5.691 +			);
   5.692 +			runOnlyForDeploymentPostprocessing = 0;
   5.693 +		};
   5.694 +/* End PBXResourcesBuildPhase section */
   5.695 +
   5.696 +/* Begin PBXSourcesBuildPhase section */
   5.697 +		1D60588E0D05DD3D006BFB54 /* Sources */ = {
   5.698 +			isa = PBXSourcesBuildPhase;
   5.699 +			buildActionMask = 2147483647;
   5.700 +			files = (
   5.701 +				FD77A0130E26BC0500F39101 /* common.c in Sources */,
   5.702 +				FD77A0160E26BC0500F39101 /* rectangles.c in Sources */,
   5.703 +			);
   5.704 +			runOnlyForDeploymentPostprocessing = 0;
   5.705 +		};
   5.706 +		FD15FCAF0E086866003BDF25 /* Sources */ = {
   5.707 +			isa = PBXSourcesBuildPhase;
   5.708 +			buildActionMask = 2147483647;
   5.709 +			files = (
   5.710 +				FDC214870E26D78A00DDED23 /* common.c in Sources */,
   5.711 +				FD77A00E0E26BC0500F39101 /* happy.c in Sources */,
   5.712 +			);
   5.713 +			runOnlyForDeploymentPostprocessing = 0;
   5.714 +		};
   5.715 +		FD5F9BE10E0DEBEA008E885B /* Sources */ = {
   5.716 +			isa = PBXSourcesBuildPhase;
   5.717 +			buildActionMask = 2147483647;
   5.718 +			files = (
   5.719 +				FD77A0190E26BC0500F39101 /* common.c in Sources */,
   5.720 +				FD77A02A0E26BC2700F39101 /* accelerometer.c in Sources */,
   5.721 +			);
   5.722 +			runOnlyForDeploymentPostprocessing = 0;
   5.723 +		};
   5.724 +		FDB651FC0E43D1F300F688B5 /* Sources */ = {
   5.725 +			isa = PBXSourcesBuildPhase;
   5.726 +			buildActionMask = 2147483647;
   5.727 +			files = (
   5.728 +				FDB651FD0E43D1F300F688B5 /* common.c in Sources */,
   5.729 +				FDB652120E43D21A00F688B5 /* keyboard.c in Sources */,
   5.730 +			);
   5.731 +			runOnlyForDeploymentPostprocessing = 0;
   5.732 +		};
   5.733 +		FDC202E20E107B1200ABAC90 /* Sources */ = {
   5.734 +			isa = PBXSourcesBuildPhase;
   5.735 +			buildActionMask = 2147483647;
   5.736 +			files = (
   5.737 +				FD77A01F0E26BC0500F39101 /* common.c in Sources */,
   5.738 +				FD77A0230E26BC0500F39101 /* touch.c in Sources */,
   5.739 +			);
   5.740 +			runOnlyForDeploymentPostprocessing = 0;
   5.741 +		};
   5.742 +		FDC52ECE0E2843D6008D768C /* Sources */ = {
   5.743 +			isa = PBXSourcesBuildPhase;
   5.744 +			buildActionMask = 2147483647;
   5.745 +			files = (
   5.746 +				FDC52ECF0E2843D6008D768C /* common.c in Sources */,
   5.747 +				FDC52EE50E284410008D768C /* fireworks.c in Sources */,
   5.748 +			);
   5.749 +			runOnlyForDeploymentPostprocessing = 0;
   5.750 +		};
   5.751 +		FDF0D6980E12D05400247964 /* Sources */ = {
   5.752 +			isa = PBXSourcesBuildPhase;
   5.753 +			buildActionMask = 2147483647;
   5.754 +			files = (
   5.755 +				FD77A0250E26BC0500F39101 /* common.c in Sources */,
   5.756 +				FD77A0270E26BC0500F39101 /* mixer.c in Sources */,
   5.757 +			);
   5.758 +			runOnlyForDeploymentPostprocessing = 0;
   5.759 +		};
   5.760 +/* End PBXSourcesBuildPhase section */
   5.761 +
   5.762 +/* Begin PBXTargetDependency section */
   5.763 +		049F3695130CD86800FF080F /* PBXTargetDependency */ = {
   5.764 +			isa = PBXTargetDependency;
   5.765 +			name = libSDL;
   5.766 +			targetProxy = 049F3694130CD86800FF080F /* PBXContainerItemProxy */;
   5.767 +		};
   5.768 +		049F3697130CD87600FF080F /* PBXTargetDependency */ = {
   5.769 +			isa = PBXTargetDependency;
   5.770 +			name = libSDL;
   5.771 +			targetProxy = 049F3696130CD87600FF080F /* PBXContainerItemProxy */;
   5.772 +		};
   5.773 +		049F3699130CD87F00FF080F /* PBXTargetDependency */ = {
   5.774 +			isa = PBXTargetDependency;
   5.775 +			name = libSDL;
   5.776 +			targetProxy = 049F3698130CD87F00FF080F /* PBXContainerItemProxy */;
   5.777 +		};
   5.778 +		049F369B130CD88800FF080F /* PBXTargetDependency */ = {
   5.779 +			isa = PBXTargetDependency;
   5.780 +			name = libSDL;
   5.781 +			targetProxy = 049F369A130CD88800FF080F /* PBXContainerItemProxy */;
   5.782 +		};
   5.783 +		049F369D130CD89000FF080F /* PBXTargetDependency */ = {
   5.784 +			isa = PBXTargetDependency;
   5.785 +			name = libSDL;
   5.786 +			targetProxy = 049F369C130CD89000FF080F /* PBXContainerItemProxy */;
   5.787 +		};
   5.788 +		049F369F130CD89800FF080F /* PBXTargetDependency */ = {
   5.789 +			isa = PBXTargetDependency;
   5.790 +			name = libSDL;
   5.791 +			targetProxy = 049F369E130CD89800FF080F /* PBXContainerItemProxy */;
   5.792 +		};
   5.793 +		049F36A1130CD8A000FF080F /* PBXTargetDependency */ = {
   5.794 +			isa = PBXTargetDependency;
   5.795 +			name = libSDL;
   5.796 +			targetProxy = 049F36A0130CD8A000FF080F /* PBXContainerItemProxy */;
   5.797 +		};
   5.798 +/* End PBXTargetDependency section */
   5.799 +
   5.800 +/* Begin XCBuildConfiguration section */
   5.801 +		1D6058940D05DD3E006BFB54 /* Debug */ = {
   5.802 +			isa = XCBuildConfiguration;
   5.803 +			buildSettings = {
   5.804 +				INFOPLIST_FILE = Info.plist;
   5.805 +				PRODUCT_NAME = Rectangles;
   5.806 +			};
   5.807 +			name = Debug;
   5.808 +		};
   5.809 +		1D6058950D05DD3E006BFB54 /* Release */ = {
   5.810 +			isa = XCBuildConfiguration;
   5.811 +			buildSettings = {
   5.812 +				INFOPLIST_FILE = Info.plist;
   5.813 +				PRODUCT_NAME = Rectangles;
   5.814 +			};
   5.815 +			name = Release;
   5.816 +		};
   5.817 +		C01FCF4F08A954540054247B /* Debug */ = {
   5.818 +			isa = XCBuildConfiguration;
   5.819 +			buildSettings = {
   5.820 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
   5.821 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
   5.822 +				GCC_OPTIMIZATION_LEVEL = 0;
   5.823 +				HEADER_SEARCH_PATHS = ../../include;
   5.824 +				IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
   5.825 +				PRELINK_LIBS = "";
   5.826 +				SDKROOT = iphoneos;
   5.827 +				TARGETED_DEVICE_FAMILY = "1,2";
   5.828 +			};
   5.829 +			name = Debug;
   5.830 +		};
   5.831 +		C01FCF5008A954540054247B /* Release */ = {
   5.832 +			isa = XCBuildConfiguration;
   5.833 +			buildSettings = {
   5.834 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
   5.835 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
   5.836 +				HEADER_SEARCH_PATHS = ../../include;
   5.837 +				IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
   5.838 +				PRELINK_LIBS = "";
   5.839 +				SDKROOT = iphoneos;
   5.840 +				TARGETED_DEVICE_FAMILY = "1,2";
   5.841 +			};
   5.842 +			name = Release;
   5.843 +		};
   5.844 +		FD15FCB50E086866003BDF25 /* Debug */ = {
   5.845 +			isa = XCBuildConfiguration;
   5.846 +			buildSettings = {
   5.847 +				GCC_DYNAMIC_NO_PIC = NO;
   5.848 +				INFOPLIST_FILE = Info.plist;
   5.849 +				PRODUCT_NAME = Happy;
   5.850 +				SDKROOT = iphoneos;
   5.851 +			};
   5.852 +			name = Debug;
   5.853 +		};
   5.854 +		FD15FCB60E086866003BDF25 /* Release */ = {
   5.855 +			isa = XCBuildConfiguration;
   5.856 +			buildSettings = {
   5.857 +				INFOPLIST_FILE = Info.plist;
   5.858 +				PRODUCT_NAME = Happy;
   5.859 +				SDKROOT = iphoneos;
   5.860 +			};
   5.861 +			name = Release;
   5.862 +		};
   5.863 +		FD5F9BE70E0DEBEB008E885B /* Debug */ = {
   5.864 +			isa = XCBuildConfiguration;
   5.865 +			buildSettings = {
   5.866 +				INFOPLIST_FILE = Info.plist;
   5.867 +				PRODUCT_NAME = Accel;
   5.868 +				SDKROOT = iphoneos;
   5.869 +			};
   5.870 +			name = Debug;
   5.871 +		};
   5.872 +		FD5F9BE80E0DEBEB008E885B /* Release */ = {
   5.873 +			isa = XCBuildConfiguration;
   5.874 +			buildSettings = {
   5.875 +				INFOPLIST_FILE = Info.plist;
   5.876 +				PRODUCT_NAME = Accel;
   5.877 +				SDKROOT = iphoneos;
   5.878 +			};
   5.879 +			name = Release;
   5.880 +		};
   5.881 +		FDB6520A0E43D1F300F688B5 /* Debug */ = {
   5.882 +			isa = XCBuildConfiguration;
   5.883 +			buildSettings = {
   5.884 +				INFOPLIST_FILE = Info.plist;
   5.885 +				PRODUCT_NAME = Keyboard;
   5.886 +				SDKROOT = iphoneos;
   5.887 +			};
   5.888 +			name = Debug;
   5.889 +		};
   5.890 +		FDB6520B0E43D1F300F688B5 /* Release */ = {
   5.891 +			isa = XCBuildConfiguration;
   5.892 +			buildSettings = {
   5.893 +				INFOPLIST_FILE = Info.plist;
   5.894 +				PRODUCT_NAME = Keyboard;
   5.895 +				SDKROOT = iphoneos;
   5.896 +			};
   5.897 +			name = Release;
   5.898 +		};
   5.899 +		FDC202EC0E107B1200ABAC90 /* Debug */ = {
   5.900 +			isa = XCBuildConfiguration;
   5.901 +			buildSettings = {
   5.902 +				INFOPLIST_FILE = Info.plist;
   5.903 +				PRODUCT_NAME = Touch;
   5.904 +				SDKROOT = iphoneos;
   5.905 +			};
   5.906 +			name = Debug;
   5.907 +		};
   5.908 +		FDC202ED0E107B1200ABAC90 /* Release */ = {
   5.909 +			isa = XCBuildConfiguration;
   5.910 +			buildSettings = {
   5.911 +				INFOPLIST_FILE = Info.plist;
   5.912 +				PRODUCT_NAME = Touch;
   5.913 +				SDKROOT = iphoneos;
   5.914 +			};
   5.915 +			name = Release;
   5.916 +		};
   5.917 +		FDC52EDC0E2843D6008D768C /* Debug */ = {
   5.918 +			isa = XCBuildConfiguration;
   5.919 +			buildSettings = {
   5.920 +				INFOPLIST_FILE = Info.plist;
   5.921 +				PRODUCT_NAME = Fireworks;
   5.922 +				SDKROOT = iphoneos;
   5.923 +			};
   5.924 +			name = Debug;
   5.925 +		};
   5.926 +		FDC52EDD0E2843D6008D768C /* Release */ = {
   5.927 +			isa = XCBuildConfiguration;
   5.928 +			buildSettings = {
   5.929 +				INFOPLIST_FILE = Info.plist;
   5.930 +				PRODUCT_NAME = Fireworks;
   5.931 +				SDKROOT = iphoneos;
   5.932 +			};
   5.933 +			name = Release;
   5.934 +		};
   5.935 +		FDF0D6A20E12D05400247964 /* Debug */ = {
   5.936 +			isa = XCBuildConfiguration;
   5.937 +			buildSettings = {
   5.938 +				INFOPLIST_FILE = Info.plist;
   5.939 +				PRODUCT_NAME = Mixer;
   5.940 +				SDKROOT = iphoneos;
   5.941 +			};
   5.942 +			name = Debug;
   5.943 +		};
   5.944 +		FDF0D6A30E12D05400247964 /* Release */ = {
   5.945 +			isa = XCBuildConfiguration;
   5.946 +			buildSettings = {
   5.947 +				INFOPLIST_FILE = Info.plist;
   5.948 +				PRODUCT_NAME = Mixer;
   5.949 +				SDKROOT = iphoneos;
   5.950 +			};
   5.951 +			name = Release;
   5.952 +		};
   5.953 +/* End XCBuildConfiguration section */
   5.954 +
   5.955 +/* Begin XCConfigurationList section */
   5.956 +		1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "Rectangles" */ = {
   5.957 +			isa = XCConfigurationList;
   5.958 +			buildConfigurations = (
   5.959 +				1D6058940D05DD3E006BFB54 /* Debug */,
   5.960 +				1D6058950D05DD3E006BFB54 /* Release */,
   5.961 +			);
   5.962 +			defaultConfigurationIsVisible = 0;
   5.963 +			defaultConfigurationName = Release;
   5.964 +		};
   5.965 +		C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Demos" */ = {
   5.966 +			isa = XCConfigurationList;
   5.967 +			buildConfigurations = (
   5.968 +				C01FCF4F08A954540054247B /* Debug */,
   5.969 +				C01FCF5008A954540054247B /* Release */,
   5.970 +			);
   5.971 +			defaultConfigurationIsVisible = 0;
   5.972 +			defaultConfigurationName = Release;
   5.973 +		};
   5.974 +		FD15FCB70E086867003BDF25 /* Build configuration list for PBXNativeTarget "Happy" */ = {
   5.975 +			isa = XCConfigurationList;
   5.976 +			buildConfigurations = (
   5.977 +				FD15FCB50E086866003BDF25 /* Debug */,
   5.978 +				FD15FCB60E086866003BDF25 /* Release */,
   5.979 +			);
   5.980 +			defaultConfigurationIsVisible = 0;
   5.981 +			defaultConfigurationName = Release;
   5.982 +		};
   5.983 +		FD5F9BE90E0DEBEB008E885B /* Build configuration list for PBXNativeTarget "Accel" */ = {
   5.984 +			isa = XCConfigurationList;
   5.985 +			buildConfigurations = (
   5.986 +				FD5F9BE70E0DEBEB008E885B /* Debug */,
   5.987 +				FD5F9BE80E0DEBEB008E885B /* Release */,
   5.988 +			);
   5.989 +			defaultConfigurationIsVisible = 0;
   5.990 +			defaultConfigurationName = Release;
   5.991 +		};
   5.992 +		FDB652090E43D1F300F688B5 /* Build configuration list for PBXNativeTarget "Keyboard" */ = {
   5.993 +			isa = XCConfigurationList;
   5.994 +			buildConfigurations = (
   5.995 +				FDB6520A0E43D1F300F688B5 /* Debug */,
   5.996 +				FDB6520B0E43D1F300F688B5 /* Release */,
   5.997 +			);
   5.998 +			defaultConfigurationIsVisible = 0;
   5.999 +			defaultConfigurationName = Release;
  5.1000 +		};
  5.1001 +		FDC202EB0E107B1200ABAC90 /* Build configuration list for PBXNativeTarget "Touch" */ = {
  5.1002 +			isa = XCConfigurationList;
  5.1003 +			buildConfigurations = (
  5.1004 +				FDC202EC0E107B1200ABAC90 /* Debug */,
  5.1005 +				FDC202ED0E107B1200ABAC90 /* Release */,
  5.1006 +			);
  5.1007 +			defaultConfigurationIsVisible = 0;
  5.1008 +			defaultConfigurationName = Release;
  5.1009 +		};
  5.1010 +		FDC52EDB0E2843D6008D768C /* Build configuration list for PBXNativeTarget "Fireworks" */ = {
  5.1011 +			isa = XCConfigurationList;
  5.1012 +			buildConfigurations = (
  5.1013 +				FDC52EDC0E2843D6008D768C /* Debug */,
  5.1014 +				FDC52EDD0E2843D6008D768C /* Release */,
  5.1015 +			);
  5.1016 +			defaultConfigurationIsVisible = 0;
  5.1017 +			defaultConfigurationName = Release;
  5.1018 +		};
  5.1019 +		FDF0D6A10E12D05400247964 /* Build configuration list for PBXNativeTarget "Mixer" */ = {
  5.1020 +			isa = XCConfigurationList;
  5.1021 +			buildConfigurations = (
  5.1022 +				FDF0D6A20E12D05400247964 /* Debug */,
  5.1023 +				FDF0D6A30E12D05400247964 /* Release */,
  5.1024 +			);
  5.1025 +			defaultConfigurationIsVisible = 0;
  5.1026 +			defaultConfigurationName = Release;
  5.1027 +		};
  5.1028 +/* End XCConfigurationList section */
  5.1029 +	};
  5.1030 +	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
  5.1031 +}
     6.1 Binary file Xcode-iOS/Demos/Icon.png has changed
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/Xcode-iOS/Demos/Info.plist	Thu Jan 05 21:41:55 2012 -0500
     7.3 @@ -0,0 +1,28 @@
     7.4 +<?xml version="1.0" encoding="UTF-8"?>
     7.5 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
     7.6 +<plist version="1.0">
     7.7 +<dict>
     7.8 +	<key>CFBundleDevelopmentRegion</key>
     7.9 +	<string>en</string>
    7.10 +	<key>CFBundleDisplayName</key>
    7.11 +	<string>${PRODUCT_NAME}</string>
    7.12 +	<key>CFBundleExecutable</key>
    7.13 +	<string>${EXECUTABLE_NAME}</string>
    7.14 +	<key>CFBundleIconFile</key>
    7.15 +	<string></string>
    7.16 +	<key>CFBundleIdentifier</key>
    7.17 +	<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>
    7.18 +	<key>CFBundleInfoDictionaryVersion</key>
    7.19 +	<string>6.0</string>
    7.20 +	<key>CFBundleName</key>
    7.21 +	<string>${PRODUCT_NAME}</string>
    7.22 +	<key>CFBundlePackageType</key>
    7.23 +	<string>APPL</string>
    7.24 +	<key>CFBundleSignature</key>
    7.25 +	<string>????</string>
    7.26 +	<key>CFBundleVersion</key>
    7.27 +	<string>1.0</string>
    7.28 +	<key>NSMainNibFile</key>
    7.29 +	<string></string>
    7.30 +</dict>
    7.31 +</plist>
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/Xcode-iOS/Demos/README	Thu Jan 05 21:41:55 2012 -0500
     8.3 @@ -0,0 +1,43 @@
     8.4 +==============================================================================
     8.5 +About the iPhone OS Demo Applications
     8.6 +==============================================================================
     8.7 +
     8.8 +Demos.xcodeproj contains several targets for iPhone oriented SDL demos.  These demos are written strictly using SDL 1.3 calls.  All the demos except for Fireworks (which requires OpenGL ES) should work on platforms other than iPhone OS, though you'll need to write your own compile script.  To run them on your favorite platform, you may wish to set the macros SCREEN_WIDTH and SCREEN_HEIGHT, located in common.h.
     8.9 +
    8.10 +Common files:
    8.11 +
    8.12 +	common.c and common.h contain code common to all demo applications.  This includes macros about the screen dimensions (in pixels), simple error handling, and functions for generating random numbers.
    8.13 +
    8.14 +Rectangles (rectangles.c):
    8.15 +
    8.16 +	Draws randomly sized and colored rectangles all over the screen by using SDL_RenderFill.  This is the simplest of all the demos.
    8.17 +
    8.18 +Happy (happy.c):
    8.19 +
    8.20 +	Loads the classic happy-face bitmap and draws a large number of happy faces bouncing around the screen.  Shows how you can load a bitmap into an SDL_Texture.
    8.21 +
    8.22 +Accelerometer (accelerometer.c):
    8.23 +
    8.24 +	Uses the iPhone's accelerometer as a joystick device to move a spaceship around the screen.  Note the use of the macro SDL_IPHONE_MAX_GFORCE (normally defined in SDL_config_iphoneos.h) which converts between the Sint16 number returned by SDL_JoystickGetAxis, and the floating point units of g-force reported natively by the iPhone. 
    8.25 +
    8.26 +Touch (touch.c):
    8.27 +
    8.28 +	Acts as a finger-paint type program.  Demonstrates how you can use SDL mouse input to accept touch input from the iPhone.  If SDL for iPhone is compiled with multitouch as multiple mouse emulation (SDL_IPHONE_MULTIPLE_MICE in SDL_config_iphoneos.h) then the program will accept multiple finger inputs simultaneously. 
    8.29 +
    8.30 +Mixer (mixer.c):
    8.31 +
    8.32 +	Displays several rectangular buttons which can be used as a virtual drumkit.  Demonstrates how you can play .wav sounds in SDL and how you can use SDL_MixAudioFormat to build a software mixer that can play multiple sounds at once.
    8.33 +
    8.34 +Keyboard (keyboard.c):
    8.35 +
    8.36 +	Loads a bitmap font and let's the user type words, numbers, and symbols using the iPhone's virtual keyboard.  The iPhone's onscreen keyboard visibility is toggled when the user taps the screen.  If the user types ':)' a happy face is displayed.  Demonstrates how to use functions added to the iPhone implementation of SDL to toggle keyboard onscreen visibility.
    8.37 +
    8.38 +Fireworks (fireworks.c):
    8.39 +
    8.40 +	Displays a fireworks show.  When you tap the iPhone's screen, fireworks fly from the bottom of the screen and explode at the point that you tapped.  Demonstrates how you can use SDL on iPhone to build an OpenGL ES based application. Shows you how you can use SDL_LoadBMP to load a bmp image and convert it to an OpenGL ES texture.  Of lesser importance, shows how you can use OpenGL ES point sprites to build an efficient particle system.
    8.41 +
    8.42 +==============================================================================
    8.43 +Building and Running the demos
    8.44 +==============================================================================
    8.45 +
    8.46 +Before building the demos you must first build SDL as a static library for BOTH the iPhone Simulator and the iPhone itself.  See the iPhone SDL main README file for directions on how to do this.  Once this is done, simply launch XCode, select the target you'd like to build, select the active SDK (simulator or device), and then build and go.
     9.1 Binary file Xcode-iOS/Demos/data/bitmapfont/kromasky_16x16.bmp has changed
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/Xcode-iOS/Demos/data/bitmapfont/license.txt	Thu Jan 05 21:41:55 2012 -0500
    10.3 @@ -0,0 +1,258 @@
    10.4 +  __            _                    _    
    10.5 + / _|          | |                  | |   
    10.6 +| |_ ___  _ __ | |_ _ __   __ _  ___| | __
    10.7 +|  _/ _ \| '_ \| __| '_ \ / _` |/ __| |/ /
    10.8 +| || (_) | | | | |_| |_) | (_| | (__|   < 
    10.9 +|_| \___/|_| |_|\__| .__/ \__,_|\___|_|\_\
   10.10 +                   | |                    
   10.11 +                   |_|                              
   10.12 +----------------------------------------------------------------------
   10.13 +Product	: font-pack.zip
   10.14 +Website	: http://www.spicypixel.net
   10.15 +Author	: Marc Russell
   10.16 +Released: 16th January 2008
   10.17 +----------------------------------------------------------------------
   10.18 +
   10.19 +What is this?
   10.20 +-------------
   10.21 +font-pack is a package of free art assets to be used under the terms of this document. It is available to game developers and hobbyists alike.
   10.22 +
   10.23 +Contents
   10.24 +--------
   10.25 +The contents of the font-pack ZIP file include 20 bitmap fonts
   10.26 +
   10.27 +Usage License & Restrictions
   10.28 +----------------------------
   10.29 +font-pack is distributed under the "Common Public License Version 1.0."
   10.30 +The terms of which are given below. If you do not understand the terms of the license please refer to a solicitor. It should however, be relatively clear how this package can be used.
   10.31 +
   10.32 +THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON 
   10.33 +PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF 
   10.34 +THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
   10.35 +
   10.36 +1. DEFINITIONS
   10.37 +
   10.38 +"Contribution" means:
   10.39 +
   10.40 +    a) in the case of the initial Contributor, the initial code and 
   10.41 +    documentation distributed under this Agreement, and
   10.42 +
   10.43 +    b) in the case of each subsequent Contributor:
   10.44 +
   10.45 +    i) changes to the Program, and
   10.46 +
   10.47 +    ii) additions to the Program;
   10.48 +
   10.49 +    where such changes and/or additions to the Program originate from 
   10.50 +    and are distributed by that particular Contributor. A Contribution 
   10.51 +    'originates' from a Contributor if it was added to the Program by 
   10.52 +    such Contributor itself or anyone acting on such Contributor's 
   10.53 +    behalf. Contributions do not include additions to the Program which: 
   10.54 +    (i) are separate modules of software distributed in conjunction with 
   10.55 +    the Program under their own license agreement, and (ii) are not 
   10.56 +    derivative works of the Program.
   10.57 +
   10.58 +"Contributor" means any person or entity that distributes the Program.
   10.59 +
   10.60 +"Licensed Patents " mean patent claims licensable by a Contributor which 
   10.61 +are necessarily infringed by the use or sale of its Contribution alone 
   10.62 +or when combined with the Program.
   10.63 +
   10.64 +"Program" means the Contributions distributed in accordance with this 
   10.65 +Agreement.
   10.66 +
   10.67 +"Recipient" means anyone who receives the Program under this Agreement, 
   10.68 +including all Contributors.
   10.69 +
   10.70 +2. GRANT OF RIGHTS
   10.71 +
   10.72 +    a) Subject to the terms of this Agreement, each Contributor hereby 
   10.73 +    grants Recipient a non-exclusive, worldwide, royalty-free copyright 
   10.74 +    license to reproduce, prepare derivative works of, publicly display, 
   10.75 +    publicly perform, distribute and sublicense the Contribution of such 
   10.76 +    Contributor, if any, and such derivative works, in source code and 
   10.77 +    object code form.
   10.78 +
   10.79 +    b) Subject to the terms of this Agreement, each Contributor hereby 
   10.80 +    grants Recipient a non-exclusive, worldwide, royalty-free patent 
   10.81 +    license under Licensed Patents to make, use, sell, offer to sell, 
   10.82 +    import and otherwise transfer the Contribution of such Contributor, 
   10.83 +    if any, in source code and object code form. This patent license 
   10.84 +    shall apply to the combination of the Contribution and the Program 
   10.85 +    if, at the time the Contribution is added by the Contributor, such 
   10.86 +    addition of the Contribution causes such combination to be covered 
   10.87 +    by the Licensed Patents. The patent license shall not apply to any 
   10.88 +    other combinations which include the Contribution. No hardware per 
   10.89 +    se is licensed hereunder.
   10.90 +
   10.91 +    c) Recipient understands that although each Contributor grants the 
   10.92 +    licenses to its Contributions set forth herein, no assurances are 
   10.93 +    provided by any Contributor that the Program does not infringe the 
   10.94 +    patent or other intellectual property rights of any other entity. 
   10.95 +    Each Contributor disclaims any liability to Recipient for claims 
   10.96 +    brought by any other entity based on infringement of intellectual 
   10.97 +    property rights or otherwise. As a condition to exercising the 
   10.98 +    rights and licenses granted hereunder, each Recipient hereby assumes 
   10.99 +    sole responsibility to secure any other intellectual property rights 
  10.100 +    needed, if any. For example, if a third party patent license is 
  10.101 +    required to allow Recipient to distribute the Program, it is 
  10.102 +    Recipient's responsibility to acquire that license before 
  10.103 +    distributing the Program.
  10.104 +
  10.105 +    d) Each Contributor represents that to its knowledge it has 
  10.106 +    sufficient copyright rights in its Contribution, if any, to grant 
  10.107 +    the copyright license set forth in this Agreement.
  10.108 +
  10.109 +3. REQUIREMENTS
  10.110 +
  10.111 +A Contributor may choose to distribute the Program in object code form 
  10.112 +under its own license agreement, provided that:
  10.113 +
  10.114 +    a) it complies with the terms and conditions of this Agreement; and
  10.115 +
  10.116 +    b) its license agreement:
  10.117 +
  10.118 +    i) effectively disclaims on behalf of all Contributors all 
  10.119 +    warranties and conditions, express and implied, including warranties 
  10.120 +    or conditions of title and non-infringement, and implied warranties 
  10.121 +    or conditions of merchantability and fitness for a particular 
  10.122 +    purpose;
  10.123 +
  10.124 +    ii) effectively excludes on behalf of all Contributors all liability 
  10.125 +    for damages, including direct, indirect, special, incidental and 
  10.126 +    consequential damages, such as lost profits;
  10.127 +
  10.128 +    iii) states that any provisions which differ from this Agreement are 
  10.129 +    offered by that Contributor alone and not by any other party; and
  10.130 +
  10.131 +    iv) states that source code for the Program is available from such 
  10.132 +    Contributor, and informs licensees how to obtain it in a reasonable 
  10.133 +    manner on or through a medium customarily used for software 
  10.134 +    exchange. 
  10.135 +
  10.136 +When the Program is made available in source code form:
  10.137 +
  10.138 +    a) it must be made available under this Agreement; and
  10.139 +
  10.140 +    b) a copy of this Agreement must be included with each copy of the 
  10.141 +    Program. 
  10.142 +
  10.143 +Contributors may not remove or alter any copyright notices contained 
  10.144 +within the Program.
  10.145 +
  10.146 +Each Contributor must identify itself as the originator of its 
  10.147 +Contribution, if any, in a manner that reasonably allows subsequent 
  10.148 +Recipients to identify the originator of the Contribution.
  10.149 +
  10.150 +4. COMMERCIAL DISTRIBUTION
  10.151 +
  10.152 +Commercial distributors of software may accept certain responsibilities 
  10.153 +with respect to end users, business partners and the like. While this 
  10.154 +license is intended to facilitate the commercial use of the Program, the 
  10.155 +Contributor who includes the Program in a commercial product offering 
  10.156 +should do so in a manner which does not create potential liability for 
  10.157 +other Contributors. Therefore, if a Contributor includes the Program in 
  10.158 +a commercial product offering, such Contributor ("Commercial 
  10.159 +Contributor") hereby agrees to defend and indemnify every other 
  10.160 +Contributor ("Indemnified Contributor") against any losses, damages and 
  10.161 +costs (collectively "Losses") arising from claims, lawsuits and other 
  10.162 +legal actions brought by a third party against the Indemnified 
  10.163 +Contributor to the extent caused by the acts or omissions of such 
  10.164 +Commercial Contributor in connection with its distribution of the 
  10.165 +Program in a commercial product offering. The obligations in this 
  10.166 +section do not apply to any claims or Losses relating to any actual or 
  10.167 +alleged intellectual property infringement. In order to qualify, an 
  10.168 +Indemnified Contributor must: a) promptly notify the Commercial 
  10.169 +Contributor in writing of such claim, and b) allow the Commercial 
  10.170 +Contributor to control, and cooperate with the Commercial Contributor 
  10.171 +in, the defense and any related settlement negotiations. The Indemnified 
  10.172 +Contributor may participate in any such claim at its own expense.
  10.173 +
  10.174 +For example, a Contributor might include the Program in a commercial 
  10.175 +product offering, Product X. That Contributor is then a Commercial 
  10.176 +Contributor. If that Commercial Contributor then makes performance 
  10.177 +claims, or offers warranties related to Product X, those performance 
  10.178 +claims and warranties are such Commercial Contributor's responsibility 
  10.179 +alone. Under this section, the Commercial Contributor would have to 
  10.180 +defend claims against the other Contributors related to those 
  10.181 +performance claims and warranties, and if a court requires any other 
  10.182 +Contributor to pay any damages as a result, the Commercial Contributor 
  10.183 +must pay those damages.
  10.184 +
  10.185 +5. NO WARRANTY
  10.186 +
  10.187 +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED 
  10.188 +ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, 
  10.189 +EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES 
  10.190 +OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR 
  10.191 +A PARTICULAR PURPOSE. Each Recipient is solely responsible for 
  10.192 +determining the appropriateness of using and distributing the Program 
  10.193 +and assumes all risks associated with its exercise of rights under this 
  10.194 +Agreement, including but not limited to the risks and costs of program 
  10.195 +errors, compliance with applicable laws, damage to or loss of data, 
  10.196 +programs or equipment, and unavailability or interruption of operations.
  10.197 +
  10.198 +6. DISCLAIMER OF LIABILITY
  10.199 +
  10.200 +EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR 
  10.201 +ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, 
  10.202 +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING 
  10.203 +WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF 
  10.204 +LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 
  10.205 +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR 
  10.206 +DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED 
  10.207 +HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
  10.208 +
  10.209 +7. GENERAL
  10.210 +
  10.211 +If any provision of this Agreement is invalid or unenforceable under 
  10.212 +applicable law, it shall not affect the validity or enforceability of 
  10.213 +the remainder of the terms of this Agreement, and without further action 
  10.214 +by the parties hereto, such provision shall be reformed to the minimum 
  10.215 +extent necessary to make such provision valid and enforceable.
  10.216 +
  10.217 +If Recipient institutes patent litigation against a Contributor with 
  10.218 +respect to a patent applicable to software (including a cross-claim or 
  10.219 +counterclaim in a lawsuit), then any patent licenses granted by that 
  10.220 +Contributor to such Recipient under this Agreement shall terminate as of 
  10.221 +the date such litigation is filed. In addition, if Recipient institutes 
  10.222 +patent litigation against any entity (including a cross-claim or 
  10.223 +counterclaim in a lawsuit) alleging that the Program itself (excluding 
  10.224 +combinations of the Program with other software or hardware) infringes 
  10.225 +such Recipient's patent(s), then such Recipient's rights granted under 
  10.226 +Section 2(b) shall terminate as of the date such litigation is filed.
  10.227 +
  10.228 +All Recipient's rights under this Agreement shall terminate if it fails 
  10.229 +to comply with any of the material terms or conditions of this Agreement 
  10.230 +and does not cure such failure in a reasonable period of time after 
  10.231 +becoming aware of such noncompliance. If all Recipient's rights under 
  10.232 +this Agreement terminate, Recipient agrees to cease use and distribution 
  10.233 +of the Program as soon as reasonably practicable. However, Recipient's 
  10.234 +obligations under this Agreement and any licenses granted by Recipient 
  10.235 +relating to the Program shall continue and survive.
  10.236 +
  10.237 +Everyone is permitted to copy and distribute copies of this Agreement, 
  10.238 +but in order to avoid inconsistency the Agreement is copyrighted and may 
  10.239 +only be modified in the following manner. The Agreement Steward reserves 
  10.240 +the right to publish new versions (including revisions) of this 
  10.241 +Agreement from time to time. No one other than the Agreement Steward has 
  10.242 +the right to modify this Agreement. IBM is the initial Agreement 
  10.243 +Steward. IBM may assign the responsibility to serve as the Agreement 
  10.244 +Steward to a suitable separate entity. Each new version of the Agreement 
  10.245 +will be given a distinguishing version number. The Program (including 
  10.246 +Contributions) may always be distributed subject to the version of the 
  10.247 +Agreement under which it was received. In addition, after a new version 
  10.248 +of the Agreement is published, Contributor may elect to distribute the 
  10.249 +Program (including its Contributions) under the new version. Except as 
  10.250 +expressly stated in Sections 2(a) and 2(b) above, Recipient receives no 
  10.251 +rights or licenses to the intellectual property of any Contributor under 
  10.252 +this Agreement, whether expressly, by implication, estoppel or 
  10.253 +otherwise. All rights in the Program not expressly granted under this 
  10.254 +Agreement are reserved.
  10.255 +
  10.256 +This Agreement is governed by the laws of the State of New York and the 
  10.257 +intellectual property laws of the United States of America. No party to 
  10.258 +this Agreement will bring a legal action under this Agreement more than 
  10.259 +one year after the cause of action arose. Each party waives its rights 
  10.260 +to a jury trial in any resulting litigation.
  10.261 +
    11.1 Binary file Xcode-iOS/Demos/data/drums/ds_brush_snare.wav has changed
    12.1 Binary file Xcode-iOS/Demos/data/drums/ds_china.wav has changed
    13.1 Binary file Xcode-iOS/Demos/data/drums/ds_kick_big_amb.wav has changed
    14.1 Binary file Xcode-iOS/Demos/data/drums/ds_loose_skin_mute.wav has changed
    15.1 Binary file Xcode-iOS/Demos/data/icon.bmp has changed
    16.1 Binary file Xcode-iOS/Demos/data/ship.bmp has changed
    17.1 Binary file Xcode-iOS/Demos/data/space.bmp has changed
    18.1 Binary file Xcode-iOS/Demos/data/stroke.bmp has changed
    19.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.2 +++ b/Xcode-iOS/Demos/src/accelerometer.c	Thu Jan 05 21:41:55 2012 -0500
    19.3 @@ -0,0 +1,236 @@
    19.4 +/*
    19.5 + *	accelerometer.c
    19.6 + *	written by Holmes Futrell
    19.7 + *	use however you want
    19.8 + */
    19.9 +
   19.10 +#include "SDL.h"
   19.11 +#include "math.h"
   19.12 +#include "common.h"
   19.13 +
   19.14 +#define MILLESECONDS_PER_FRAME 16       /* about 60 frames per second */
   19.15 +#define DAMPING 0.5f;           /* after bouncing off a wall, damping coefficient determines final speed */
   19.16 +#define FRICTION 0.0008f        /* coefficient of acceleration that opposes direction of motion */
   19.17 +#define GRAVITY_CONSTANT 0.004f /* how sensitive the ship is to the accelerometer */
   19.18 +
   19.19 +/*	If we aren't on an iPhone, then this definition ought to yield reasonable behavior */
   19.20 +#ifndef SDL_IPHONE_MAX_GFORCE
   19.21 +#define SDL_IPHONE_MAX_GFORCE 5.0f
   19.22 +#endif
   19.23 +
   19.24 +static SDL_Joystick *accelerometer;     /* used for controlling the ship */
   19.25 +
   19.26 +static struct
   19.27 +{
   19.28 +    float x, y;                 /* position of ship */
   19.29 +    float vx, vy;               /* velocity of ship (in pixels per millesecond) */
   19.30 +    SDL_Rect rect;              /* (drawn) position and size of ship */
   19.31 +} shipData;
   19.32 +
   19.33 +static SDL_Texture *ship = 0;        /* texture for spaceship */
   19.34 +static SDL_Texture *space = 0;       /* texture for space (background */
   19.35 +
   19.36 +void
   19.37 +render(SDL_Renderer *renderer)
   19.38 +{
   19.39 +
   19.40 +
   19.41 +    /* get joystick (accelerometer) axis values and normalize them */
   19.42 +    float ax = SDL_JoystickGetAxis(accelerometer, 0);
   19.43 +    float ay = -SDL_JoystickGetAxis(accelerometer, 1);
   19.44 +
   19.45 +    /* ship screen constraints */
   19.46 +    Uint32 minx = 0.0f;
   19.47 +    Uint32 maxx = SCREEN_WIDTH - shipData.rect.w;
   19.48 +    Uint32 miny = 0.0f;
   19.49 +    Uint32 maxy = SCREEN_HEIGHT - shipData.rect.h;
   19.50 +
   19.51 +#define SINT16_MAX ((float)(0x7FFF))
   19.52 +
   19.53 +    /* update velocity from accelerometer
   19.54 +       the factor SDL_IPHONE_MAX_G_FORCE / SINT16_MAX converts between 
   19.55 +       SDL's units reported from the joytick, and units of g-force, as reported by the accelerometer
   19.56 +     */
   19.57 +    shipData.vx +=
   19.58 +        ax * SDL_IPHONE_MAX_GFORCE / SINT16_MAX * GRAVITY_CONSTANT *
   19.59 +        MILLESECONDS_PER_FRAME;
   19.60 +    shipData.vy +=
   19.61 +        ay * SDL_IPHONE_MAX_GFORCE / SINT16_MAX * GRAVITY_CONSTANT *
   19.62 +        MILLESECONDS_PER_FRAME;
   19.63 +
   19.64 +    float speed = sqrt(shipData.vx * shipData.vx + shipData.vy * shipData.vy);
   19.65 +
   19.66 +    if (speed > 0) {
   19.67 +        /* compensate for friction */
   19.68 +        float dirx = shipData.vx / speed;   /* normalized x velocity */
   19.69 +        float diry = shipData.vy / speed;   /* normalized y velocity */
   19.70 +
   19.71 +        /* update velocity due to friction */
   19.72 +        if (speed - FRICTION * MILLESECONDS_PER_FRAME > 0) {
   19.73 +            /* apply friction */
   19.74 +            shipData.vx -= dirx * FRICTION * MILLESECONDS_PER_FRAME;
   19.75 +            shipData.vy -= diry * FRICTION * MILLESECONDS_PER_FRAME;
   19.76 +        } else {
   19.77 +            /* applying friction would MORE than stop the ship, so just stop the ship */
   19.78 +            shipData.vx = 0.0f;
   19.79 +            shipData.vy = 0.0f;
   19.80 +        }
   19.81 +    }
   19.82 +
   19.83 +    /* update ship location */
   19.84 +    shipData.x += shipData.vx * MILLESECONDS_PER_FRAME;
   19.85 +    shipData.y += shipData.vy * MILLESECONDS_PER_FRAME;
   19.86 +
   19.87 +    if (shipData.x > maxx) {
   19.88 +        shipData.x = maxx;
   19.89 +        shipData.vx = -shipData.vx * DAMPING;
   19.90 +    } else if (shipData.x < minx) {
   19.91 +        shipData.x = minx;
   19.92 +        shipData.vx = -shipData.vx * DAMPING;
   19.93 +    }
   19.94 +    if (shipData.y > maxy) {
   19.95 +        shipData.y = maxy;
   19.96 +        shipData.vy = -shipData.vy * DAMPING;
   19.97 +    } else if (shipData.y < miny) {
   19.98 +        shipData.y = miny;
   19.99 +        shipData.vy = -shipData.vy * DAMPING;
  19.100 +    }
  19.101 +
  19.102 +    /* draw the background */
  19.103 +    SDL_RenderCopy(renderer, space, NULL, NULL);
  19.104 +
  19.105 +    /* draw the ship */
  19.106 +    shipData.rect.x = shipData.x;
  19.107 +    shipData.rect.y = shipData.y;
  19.108 +
  19.109 +    SDL_RenderCopy(renderer, ship, NULL, &shipData.rect);
  19.110 +
  19.111 +    /* update screen */
  19.112 +    SDL_RenderPresent(renderer);
  19.113 +
  19.114 +}
  19.115 +
  19.116 +void
  19.117 +initializeTextures(SDL_Renderer *renderer)
  19.118 +{
  19.119 +
  19.120 +    SDL_Surface *bmp_surface;
  19.121 +
  19.122 +    /* load the ship */
  19.123 +    bmp_surface = SDL_LoadBMP("ship.bmp");
  19.124 +    if (bmp_surface == NULL) {
  19.125 +        fatalError("could not ship.bmp");
  19.126 +    }
  19.127 +    /* set blue to transparent on the ship */
  19.128 +    SDL_SetColorKey(bmp_surface, 1,
  19.129 +                    SDL_MapRGB(bmp_surface->format, 0, 0, 255));
  19.130 +
  19.131 +    /* create ship texture from surface */
  19.132 +    ship = SDL_CreateTextureFromSurface(renderer, bmp_surface);
  19.133 +    if (ship == 0) {
  19.134 +        fatalError("could not create ship texture");
  19.135 +    }
  19.136 +    SDL_SetTextureBlendMode(ship, SDL_BLENDMODE_BLEND);
  19.137 +
  19.138 +    /* set the width and height of the ship from the surface dimensions */
  19.139 +    shipData.rect.w = bmp_surface->w;
  19.140 +    shipData.rect.h = bmp_surface->h;
  19.141 +
  19.142 +    SDL_FreeSurface(bmp_surface);
  19.143 +
  19.144 +    /* load the space background */
  19.145 +    bmp_surface = SDL_LoadBMP("space.bmp");
  19.146 +    if (bmp_surface == NULL) {
  19.147 +        fatalError("could not load space.bmp");
  19.148 +    }
  19.149 +    /* create space texture from surface */
  19.150 +    space = SDL_CreateTextureFromSurface(renderer, bmp_surface);
  19.151 +    if (space == 0) {
  19.152 +        fatalError("could not create space texture");
  19.153 +    }
  19.154 +    SDL_FreeSurface(bmp_surface);
  19.155 +
  19.156 +}
  19.157 +
  19.158 +
  19.159 +
  19.160 +int
  19.161 +main(int argc, char *argv[])
  19.162 +{
  19.163 +
  19.164 +    SDL_Window *window;         /* main window */
  19.165 +	SDL_Renderer *renderer;
  19.166 +    Uint32 startFrame;          /* time frame began to process */
  19.167 +    Uint32 endFrame;            /* time frame ended processing */
  19.168 +    Uint32 delay;               /* time to pause waiting to draw next frame */
  19.169 +    int done;                   /* should we clean up and exit? */
  19.170 +
  19.171 +    /* initialize SDL */
  19.172 +    if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_JOYSTICK) < 0) {
  19.173 +        fatalError("Could not initialize SDL");
  19.174 +    }
  19.175 +
  19.176 +    /* create main window and renderer */
  19.177 +    window = SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
  19.178 +                                SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN |
  19.179 +                                SDL_WINDOW_BORDERLESS);
  19.180 +    renderer = SDL_CreateRenderer(window, 0, 0);
  19.181 +
  19.182 +    /* print out some info about joysticks and try to open accelerometer for use */
  19.183 +    printf("There are %d joysticks available\n", SDL_NumJoysticks());
  19.184 +    printf("Default joystick (index 0) is %s\n", SDL_JoystickName(0));
  19.185 +    accelerometer = SDL_JoystickOpen(0);
  19.186 +    if (accelerometer == NULL) {
  19.187 +        fatalError("Could not open joystick (accelerometer)");
  19.188 +    }
  19.189 +    printf("joystick number of axis = %d\n",
  19.190 +           SDL_JoystickNumAxes(accelerometer));
  19.191 +    printf("joystick number of hats = %d\n",
  19.192 +           SDL_JoystickNumHats(accelerometer));
  19.193 +    printf("joystick number of balls = %d\n",
  19.194 +           SDL_JoystickNumBalls(accelerometer));
  19.195 +    printf("joystick number of buttons = %d\n",
  19.196 +           SDL_JoystickNumButtons(accelerometer));
  19.197 +
  19.198 +    /* load graphics */
  19.199 +    initializeTextures(renderer);
  19.200 +
  19.201 +    /* setup ship */
  19.202 +    shipData.x = (SCREEN_WIDTH - shipData.rect.w) / 2;
  19.203 +    shipData.y = (SCREEN_HEIGHT - shipData.rect.h) / 2;
  19.204 +    shipData.vx = 0.0f;
  19.205 +    shipData.vy = 0.0f;
  19.206 +
  19.207 +    done = 0;
  19.208 +    /* enter main loop */
  19.209 +    while (!done) {
  19.210 +        startFrame = SDL_GetTicks();
  19.211 +        SDL_Event event;
  19.212 +        while (SDL_PollEvent(&event)) {
  19.213 +            if (event.type == SDL_QUIT) {
  19.214 +                done = 1;
  19.215 +            }
  19.216 +        }
  19.217 +        render(renderer);
  19.218 +        endFrame = SDL_GetTicks();
  19.219 +
  19.220 +        /* figure out how much time we have left, and then sleep */
  19.221 +        delay = MILLESECONDS_PER_FRAME - (endFrame - startFrame);
  19.222 +        if (delay < 0) {
  19.223 +            delay = 0;
  19.224 +        } else if (delay > MILLESECONDS_PER_FRAME) {
  19.225 +            delay = MILLESECONDS_PER_FRAME;
  19.226 +        }
  19.227 +        SDL_Delay(delay);
  19.228 +    }
  19.229 +
  19.230 +    /* delete textures */
  19.231 +    SDL_DestroyTexture(ship);
  19.232 +    SDL_DestroyTexture(space);
  19.233 +
  19.234 +    /* shutdown SDL */
  19.235 +    SDL_Quit();
  19.236 +
  19.237 +    return 0;
  19.238 +
  19.239 +}
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/Xcode-iOS/Demos/src/common.c	Thu Jan 05 21:41:55 2012 -0500
    20.3 @@ -0,0 +1,36 @@
    20.4 +/*
    20.5 + *	common.c
    20.6 + *	written by Holmes Futrell
    20.7 + *	use however you want
    20.8 + */
    20.9 +
   20.10 +#include "common.h"
   20.11 +#include "SDL.h"
   20.12 +#include <stdlib.h>
   20.13 +
   20.14 +/*
   20.15 +	Produces a random int x, min <= x <= max 
   20.16 +	following a uniform distribution
   20.17 +*/
   20.18 +int
   20.19 +randomInt(int min, int max)
   20.20 +{
   20.21 +    return min + rand() % (max - min + 1);
   20.22 +}
   20.23 +
   20.24 +/*
   20.25 +	Produces a random float x, min <= x <= max 
   20.26 +	following a uniform distribution
   20.27 + */
   20.28 +float
   20.29 +randomFloat(float min, float max)
   20.30 +{
   20.31 +    return rand() / (float) RAND_MAX *(max - min) + min;
   20.32 +}
   20.33 +
   20.34 +void
   20.35 +fatalError(const char *string)
   20.36 +{
   20.37 +    printf("%s: %s\n", string, SDL_GetError());
   20.38 +    exit(1);
   20.39 +}
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/Xcode-iOS/Demos/src/common.h	Thu Jan 05 21:41:55 2012 -0500
    21.3 @@ -0,0 +1,12 @@
    21.4 +/*
    21.5 + *	common.h
    21.6 + *	written by Holmes Futrell
    21.7 + *	use however you want
    21.8 + */
    21.9 +
   21.10 +#define SCREEN_WIDTH 320
   21.11 +#define SCREEN_HEIGHT 480
   21.12 +
   21.13 +extern int randomInt(int min, int max);
   21.14 +extern float randomFloat(float min, float max);
   21.15 +extern void fatalError(const char *string);
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/Xcode-iOS/Demos/src/fireworks.c	Thu Jan 05 21:41:55 2012 -0500
    22.3 @@ -0,0 +1,475 @@
    22.4 +/*
    22.5 + *	fireworks.c
    22.6 + *	written by Holmes Futrell
    22.7 + *	use however you want
    22.8 + */
    22.9 +
   22.10 +#include "SDL.h"
   22.11 +#include "SDL_opengles.h"
   22.12 +#include "common.h"
   22.13 +#include <math.h>
   22.14 +#include <time.h>
   22.15 +
   22.16 +#define MILLESECONDS_PER_FRAME 16       /* about 60 frames per second */
   22.17 +#define ACCEL 0.0001f           /* acceleration due to gravity, units in pixels per millesecond squared */
   22.18 +#define WIND_RESISTANCE 0.00005f        /* acceleration per unit velocity due to wind resistance */
   22.19 +#define MAX_PARTICLES 2000      /* maximum number of particles displayed at once */
   22.20 +
   22.21 +static GLuint particleTextureID;        /* OpenGL particle texture id */
   22.22 +static SDL_bool pointSizeExtensionSupported;    /* is GL_OES_point_size_array supported ? */
   22.23 +/* 
   22.24 +	used to describe what type of particle a given struct particle is.
   22.25 +	emitter - this particle flies up, shooting off trail particles, then finally explodes into dust particles.
   22.26 +	trail	- shoots off, following emitter particle
   22.27 +	dust	- radiates outwards from emitter explosion
   22.28 +*/
   22.29 +enum particleType
   22.30 +{
   22.31 +    emitter = 0,
   22.32 +    trail,
   22.33 +    dust
   22.34 +};
   22.35 +/*
   22.36 +	struct particle is used to describe each particle displayed on screen
   22.37 +*/
   22.38 +struct particle
   22.39 +{
   22.40 +    GLfloat x;                  /* x position of particle */
   22.41 +    GLfloat y;                  /* y position of particle */
   22.42 +    GLubyte color[4];           /* rgba color of particle */
   22.43 +    GLfloat size;               /* size of particle in pixels */
   22.44 +    GLfloat xvel;               /* x velocity of particle in pixels per milesecond */
   22.45 +    GLfloat yvel;               /* y velocity of particle in pixels per millescond */
   22.46 +    int isActive;               /* if not active, then particle is overwritten */
   22.47 +    enum particleType type;     /* see enum particleType */
   22.48 +} particles[MAX_PARTICLES];     /* this array holds all our particles */
   22.49 +
   22.50 +static int num_active_particles;        /* how many members of the particle array are actually being drawn / animated? */
   22.51 +static int screen_w, screen_h;
   22.52 +
   22.53 +/* function declarations */
   22.54 +void spawnTrailFromEmitter(struct particle *emitter);
   22.55 +void spawnEmitterParticle(GLfloat x, GLfloat y);
   22.56 +void explodeEmitter(struct particle *emitter);
   22.57 +void initializeParticles(void);
   22.58 +void initializeTexture();
   22.59 +int nextPowerOfTwo(int x);
   22.60 +void drawParticles();
   22.61 +void stepParticles(void);
   22.62 +
   22.63 +/*	helper function (used in texture loading)
   22.64 +	returns next power of two greater than or equal to x
   22.65 +*/
   22.66 +int
   22.67 +nextPowerOfTwo(int x)
   22.68 +{
   22.69 +    int val = 1;
   22.70 +    while (val < x) {
   22.71 +        val *= 2;
   22.72 +    }
   22.73 +    return val;
   22.74 +}
   22.75 +
   22.76 +/*	
   22.77 +	steps each active particle by timestep MILLESECONDS_PER_FRAME
   22.78 +*/
   22.79 +void
   22.80 +stepParticles(void)
   22.81 +{
   22.82 +    int i;
   22.83 +    struct particle *slot = particles;
   22.84 +    struct particle *curr = particles;
   22.85 +    for (i = 0; i < num_active_particles; i++) {
   22.86 +        /* is the particle actually active, or is it marked for deletion? */
   22.87 +        if (curr->isActive) {
   22.88 +            /* is the particle off the screen? */
   22.89 +            if (curr->y > screen_h)
   22.90 +                curr->isActive = 0;
   22.91 +            else if (curr->y < 0)
   22.92 +                curr->isActive = 0;
   22.93 +            if (curr->x > screen_w)
   22.94 +                curr->isActive = 0;
   22.95 +            else if (curr->x < 0)
   22.96 +                curr->isActive = 0;
   22.97 +
   22.98 +            /* step velocity, then step position */
   22.99 +            curr->yvel += ACCEL * MILLESECONDS_PER_FRAME;
  22.100 +            curr->xvel += 0.0f;
  22.101 +            curr->y += curr->yvel * MILLESECONDS_PER_FRAME;
  22.102 +            curr->x += curr->xvel * MILLESECONDS_PER_FRAME;
  22.103 +
  22.104 +            /* particle behavior */
  22.105 +            if (curr->type == emitter) {
  22.106 +                /* if we're an emitter, spawn a trail */
  22.107 +                spawnTrailFromEmitter(curr);
  22.108 +                /* if we've reached our peak, explode */
  22.109 +                if (curr->yvel > 0.0) {
  22.110 +                    explodeEmitter(curr);
  22.111 +                }
  22.112 +            } else {
  22.113 +                float speed =
  22.114 +                    sqrt(curr->xvel * curr->xvel + curr->yvel * curr->yvel);
  22.115 +                /*      if wind resistance is not powerful enough to stop us completely,
  22.116 +                   then apply winde resistance, otherwise just stop us completely */
  22.117 +                if (WIND_RESISTANCE * MILLESECONDS_PER_FRAME < speed) {
  22.118 +                    float normx = curr->xvel / speed;
  22.119 +                    float normy = curr->yvel / speed;
  22.120 +                    curr->xvel -=
  22.121 +                        normx * WIND_RESISTANCE * MILLESECONDS_PER_FRAME;
  22.122 +                    curr->yvel -=
  22.123 +                        normy * WIND_RESISTANCE * MILLESECONDS_PER_FRAME;
  22.124 +                } else {
  22.125 +                    curr->xvel = curr->yvel = 0;        /* stop particle */
  22.126 +                }
  22.127 +
  22.128 +                if (curr->color[3] <= MILLESECONDS_PER_FRAME * 0.1275f) {
  22.129 +                    /* if this next step will cause us to fade out completely
  22.130 +                       then just mark for deletion */
  22.131 +                    curr->isActive = 0;
  22.132 +                } else {
  22.133 +                    /* otherwise, let's fade a bit more */
  22.134 +                    curr->color[3] -= MILLESECONDS_PER_FRAME * 0.1275f;
  22.135 +                }
  22.136 +
  22.137 +                /* if we're a dust particle, shrink our size */
  22.138 +                if (curr->type == dust)
  22.139 +                    curr->size -= MILLESECONDS_PER_FRAME * 0.010f;
  22.140 +
  22.141 +            }
  22.142 +
  22.143 +            /* if we're still active, pack ourselves in the array next
  22.144 +               to the last active guy (pack the array tightly) */
  22.145 +            if (curr->isActive)
  22.146 +                *(slot++) = *curr;
  22.147 +        }                       /* endif (curr->isActive) */
  22.148 +        curr++;
  22.149 +    }
  22.150 +    /* the number of active particles is computed as the difference between
  22.151 +       old number of active particles, where slot points, and the 
  22.152 +       new size of the array, where particles points */
  22.153 +    num_active_particles = slot - particles;
  22.154 +}
  22.155 +
  22.156 +/*
  22.157 +	This draws all the particles shown on screen
  22.158 +*/
  22.159 +void
  22.160 +drawParticles()
  22.161 +{
  22.162 +
  22.163 +    /* draw the background */
  22.164 +    glClear(GL_COLOR_BUFFER_BIT);
  22.165 +
  22.166 +    /* set up the position and color pointers */
  22.167 +    glVertexPointer(2, GL_FLOAT, sizeof(struct particle), particles);
  22.168 +    glColorPointer(4, GL_UNSIGNED_BYTE, sizeof(struct particle),
  22.169 +                   particles[0].color);
  22.170 +
  22.171 +    if (pointSizeExtensionSupported) {
  22.172 +        /* pass in our array of point sizes */
  22.173 +        glPointSizePointerOES(GL_FLOAT, sizeof(struct particle),
  22.174 +                              &(particles[0].size));
  22.175 +    }
  22.176 +
  22.177 +    /* draw our particles! */
  22.178 +    glDrawArrays(GL_POINTS, 0, num_active_particles);
  22.179 +
  22.180 +}
  22.181 +
  22.182 +/*
  22.183 +	This causes an emitter to explode in a circular bloom of dust particles
  22.184 +*/
  22.185 +void
  22.186 +explodeEmitter(struct particle *emitter)
  22.187 +{
  22.188 +    /* first off, we're done with this particle, so turn active off */
  22.189 +    emitter->isActive = 0;
  22.190 +    int i;
  22.191 +    for (i = 0; i < 200; i++) {
  22.192 +
  22.193 +        if (num_active_particles >= MAX_PARTICLES)
  22.194 +            return;
  22.195 +
  22.196 +        /* come up with a random angle and speed for new particle */
  22.197 +        float theta = randomFloat(0, 2.0f * 3.141592);
  22.198 +        float exponent = 3.0f;
  22.199 +        float speed = randomFloat(0.00, powf(0.17, exponent));
  22.200 +        speed = powf(speed, 1.0f / exponent);
  22.201 +
  22.202 +        /*select the particle at the end of our array */
  22.203 +        struct particle *p = &particles[num_active_particles];
  22.204 +
  22.205 +        /* set the particles properties */
  22.206 +        p->xvel = speed * cos(theta);
  22.207 +        p->yvel = speed * sin(theta);
  22.208 +        p->x = emitter->x + emitter->xvel;
  22.209 +        p->y = emitter->y + emitter->yvel;
  22.210 +        p->isActive = 1;
  22.211 +        p->type = dust;
  22.212 +        p->size = 15;
  22.213 +        /* inherit emitter's color */
  22.214 +        p->color[0] = emitter->color[0];
  22.215 +        p->color[1] = emitter->color[1];
  22.216 +        p->color[2] = emitter->color[2];
  22.217 +        p->color[3] = 255;
  22.218 +        /* our array has expanded at the end */
  22.219 +        num_active_particles++;
  22.220 +    }
  22.221 +
  22.222 +}
  22.223 +
  22.224 +/*
  22.225 +	This spawns a trail particle from an emitter
  22.226 +*/
  22.227 +void
  22.228 +spawnTrailFromEmitter(struct particle *emitter)
  22.229 +{
  22.230 +
  22.231 +    if (num_active_particles >= MAX_PARTICLES)
  22.232 +        return;
  22.233 +
  22.234 +    /* select the particle at the slot at the end of our array */
  22.235 +    struct particle *p = &particles[num_active_particles];
  22.236 +
  22.237 +    /* set position and velocity to roughly that of the emitter */
  22.238 +    p->x = emitter->x + randomFloat(-3.0, 3.0);
  22.239 +    p->y = emitter->y + emitter->size / 2.0f;
  22.240 +    p->xvel = emitter->xvel + randomFloat(-0.005, 0.005);
  22.241 +    p->yvel = emitter->yvel + 0.1;
  22.242 +
  22.243 +    /* set the color to a random-ish orangy type color */
  22.244 +    p->color[0] = (0.8f + randomFloat(-0.1, 0.0)) * 255;
  22.245 +    p->color[1] = (0.4f + randomFloat(-0.1, 0.1)) * 255;
  22.246 +    p->color[2] = (0.0f + randomFloat(0.0, 0.2)) * 255;
  22.247 +    p->color[3] = (0.7f) * 255;
  22.248 +
  22.249 +    /* set other attributes */
  22.250 +    p->size = 10;
  22.251 +    p->type = trail;
  22.252 +    p->isActive = 1;
  22.253 +
  22.254 +    /* our array has expanded at the end */
  22.255 +    num_active_particles++;
  22.256 +
  22.257 +}
  22.258 +
  22.259 +/*
  22.260 +	spawns a new emitter particle at the bottom of the screen
  22.261 +    destined for the point (x,y).
  22.262 +*/
  22.263 +void
  22.264 +spawnEmitterParticle(GLfloat x, GLfloat y)
  22.265 +{
  22.266 +
  22.267 +    if (num_active_particles >= MAX_PARTICLES)
  22.268 +        return;
  22.269 +
  22.270 +    /* find particle at endpoint of array */
  22.271 +    struct particle *p = &particles[num_active_particles];
  22.272 +
  22.273 +    /* set the color randomly */
  22.274 +    switch (rand() % 4) {
  22.275 +    case 0:
  22.276 +        p->color[0] = 255;
  22.277 +        p->color[1] = 100;
  22.278 +        p->color[2] = 100;
  22.279 +        break;
  22.280 +    case 1:
  22.281 +        p->color[0] = 100;
  22.282 +        p->color[1] = 255;
  22.283 +        p->color[2] = 100;
  22.284 +        break;
  22.285 +    case 2:
  22.286 +        p->color[0] = 100;
  22.287 +        p->color[1] = 100;
  22.288 +        p->color[2] = 255;
  22.289 +        break;
  22.290 +    case 3:
  22.291 +        p->color[0] = 255;
  22.292 +        p->color[1] = 150;
  22.293 +        p->color[2] = 50;
  22.294 +        break;
  22.295 +    }
  22.296 +    p->color[3] = 255;
  22.297 +    /* set position to (x, screen_h) */
  22.298 +    p->x = x;
  22.299 +    p->y = screen_h;
  22.300 +    /* set velocity so that terminal point is (x,y) */
  22.301 +    p->xvel = 0;
  22.302 +    p->yvel = -sqrt(2 * ACCEL * (screen_h - y));
  22.303 +    /* set other attributes */
  22.304 +    p->size = 10;
  22.305 +    p->type = emitter;
  22.306 +    p->isActive = 1;
  22.307 +    /* our array has expanded at the end */
  22.308 +    num_active_particles++;
  22.309 +}
  22.310 +
  22.311 +/* just sets the endpoint of the particle array to element zero */
  22.312 +void
  22.313 +initializeParticles(void)
  22.314 +{
  22.315 +    num_active_particles = 0;
  22.316 +}
  22.317 +
  22.318 +/*
  22.319 +	loads the particle texture
  22.320 + */
  22.321 +void
  22.322 +initializeTexture()
  22.323 +{
  22.324 +
  22.325 +    int bpp;                    /* texture bits per pixel */
  22.326 +    Uint32 Rmask, Gmask, Bmask, Amask;  /* masks for pixel format passed into OpenGL */
  22.327 +    SDL_Surface *bmp_surface;   /* the bmp is loaded here */
  22.328 +    SDL_Surface *bmp_surface_rgba8888;  /* this serves as a destination to convert the BMP
  22.329 +                                           to format passed into OpenGL */
  22.330 +
  22.331 +    bmp_surface = SDL_LoadBMP("stroke.bmp");
  22.332 +    if (bmp_surface == NULL) {
  22.333 +        fatalError("could not load stroke.bmp");
  22.334 +    }
  22.335 +
  22.336 +    /* Grab info about format that will be passed into OpenGL */
  22.337 +    SDL_PixelFormatEnumToMasks(SDL_PIXELFORMAT_ABGR8888, &bpp, &Rmask, &Gmask,
  22.338 +                               &Bmask, &Amask);
  22.339 +    /* Create surface that will hold pixels passed into OpenGL */
  22.340 +    bmp_surface_rgba8888 =
  22.341 +        SDL_CreateRGBSurface(0, bmp_surface->w, bmp_surface->h, bpp, Rmask,
  22.342 +                             Gmask, Bmask, Amask);
  22.343 +    /* Blit to this surface, effectively converting the format */
  22.344 +    SDL_BlitSurface(bmp_surface, NULL, bmp_surface_rgba8888, NULL);
  22.345 +
  22.346 +    glGenTextures(1, &particleTextureID);
  22.347 +    glBindTexture(GL_TEXTURE_2D, particleTextureID);
  22.348 +    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
  22.349 +                 nextPowerOfTwo(bmp_surface->w),
  22.350 +                 nextPowerOfTwo(bmp_surface->h),
  22.351 +                 0, GL_RGBA, GL_UNSIGNED_BYTE, NULL);
  22.352 +    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
  22.353 +    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
  22.354 +    /* this is where we actually pass in the pixel data */
  22.355 +    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, bmp_surface->w, bmp_surface->h, 0,
  22.356 +                 GL_RGBA, GL_UNSIGNED_BYTE, bmp_surface_rgba8888->pixels);
  22.357 +
  22.358 +    /* free bmp surface and converted bmp surface */
  22.359 +    SDL_FreeSurface(bmp_surface);
  22.360 +    SDL_FreeSurface(bmp_surface_rgba8888);
  22.361 +
  22.362 +}
  22.363 +
  22.364 +int
  22.365 +main(int argc, char *argv[])
  22.366 +{
  22.367 +    SDL_Window *window;         /* main window */
  22.368 +    SDL_GLContext context;
  22.369 +    int w, h;
  22.370 +    Uint32 startFrame;          /* time frame began to process */
  22.371 +    Uint32 endFrame;            /* time frame ended processing */
  22.372 +    Uint32 delay;               /* time to pause waiting to draw next frame */
  22.373 +    int done;                   /* should we clean up and exit? */
  22.374 +
  22.375 +    /* initialize SDL */
  22.376 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
  22.377 +        fatalError("Could not initialize SDL");
  22.378 +    }
  22.379 +    /* seed the random number generator */
  22.380 +    srand(time(NULL));
  22.381 +    /*      
  22.382 +       request some OpenGL parameters
  22.383 +       that may speed drawing
  22.384 +     */
  22.385 +    SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 5);
  22.386 +    SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 6);
  22.387 +    SDL_GL_SetAttribute(SDL_GL_BLUE_SIZE, 5);
  22.388 +    SDL_GL_SetAttribute(SDL_GL_ALPHA_SIZE, 0);
  22.389 +    SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 0);
  22.390 +    SDL_GL_SetAttribute(SDL_GL_RETAINED_BACKING, 0);
  22.391 +    SDL_GL_SetAttribute(SDL_GL_ACCELERATED_VISUAL, 1);
  22.392 +
  22.393 +    /* create main window and renderer */
  22.394 +    window = SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
  22.395 +                                SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN |
  22.396 +                                SDL_WINDOW_BORDERLESS);
  22.397 +    context = SDL_GL_CreateContext(window);
  22.398 +
  22.399 +    /* load the particle texture */
  22.400 +    initializeTexture();
  22.401 +
  22.402 +    /*      check if GL_POINT_SIZE_ARRAY_OES is supported
  22.403 +       this is used to give each particle its own size
  22.404 +     */
  22.405 +    pointSizeExtensionSupported =
  22.406 +        SDL_GL_ExtensionSupported("GL_OES_point_size_array");
  22.407 +
  22.408 +    /* set up some OpenGL state */
  22.409 +    glDisable(GL_DEPTH_TEST);
  22.410 +    glDisable(GL_CULL_FACE);
  22.411 +
  22.412 +    glMatrixMode(GL_MODELVIEW);
  22.413 +    glLoadIdentity();
  22.414 +
  22.415 +    SDL_GetWindowSize(window, &screen_w, &screen_h);
  22.416 +    glViewport(0, 0, screen_w, screen_h);
  22.417 +
  22.418 +    glMatrixMode(GL_PROJECTION);
  22.419 +    glLoadIdentity();
  22.420 +    glOrthof((GLfloat) 0,
  22.421 +             (GLfloat) screen_w,
  22.422 +             (GLfloat) screen_h,
  22.423 +             (GLfloat) 0, 0.0, 1.0);
  22.424 +
  22.425 +    glEnable(GL_TEXTURE_2D);
  22.426 +    glEnable(GL_BLEND);
  22.427 +    glBlendFunc(GL_SRC_ALPHA, GL_ONE);
  22.428 +    glEnableClientState(GL_VERTEX_ARRAY);
  22.429 +    glEnableClientState(GL_COLOR_ARRAY);
  22.430 +
  22.431 +    glEnable(GL_POINT_SPRITE_OES);
  22.432 +    glTexEnvi(GL_POINT_SPRITE_OES, GL_COORD_REPLACE_OES, 1);
  22.433 +
  22.434 +    if (pointSizeExtensionSupported) {
  22.435 +        /* we use this to set the sizes of all the particles */
  22.436 +        glEnableClientState(GL_POINT_SIZE_ARRAY_OES);
  22.437 +    } else {
  22.438 +        /* if extension not available then all particles have size 10 */
  22.439 +        glPointSize(10);
  22.440 +    }
  22.441 +
  22.442 +    done = 0;
  22.443 +    /* enter main loop */
  22.444 +    while (!done) {
  22.445 +        startFrame = SDL_GetTicks();
  22.446 +        SDL_Event event;
  22.447 +        while (SDL_PollEvent(&event)) {
  22.448 +            if (event.type == SDL_QUIT) {
  22.449 +                done = 1;
  22.450 +            }
  22.451 +            if (event.type == SDL_MOUSEBUTTONDOWN) {
  22.452 +                int x, y;
  22.453 +                SDL_GetMouseState(&x, &y);
  22.454 +                spawnEmitterParticle(x, y);
  22.455 +            }
  22.456 +        }
  22.457 +        stepParticles();
  22.458 +        drawParticles();
  22.459 +        SDL_GL_SwapWindow(window);
  22.460 +        endFrame = SDL_GetTicks();
  22.461 +
  22.462 +        /* figure out how much time we have left, and then sleep */
  22.463 +        delay = MILLESECONDS_PER_FRAME - (endFrame - startFrame);
  22.464 +        if (delay > MILLESECONDS_PER_FRAME) {
  22.465 +            delay = MILLESECONDS_PER_FRAME;
  22.466 +        }
  22.467 +        if (delay > 0) {
  22.468 +            SDL_Delay(delay);
  22.469 +        }
  22.470 +    }
  22.471 +
  22.472 +    /* delete textures */
  22.473 +    glDeleteTextures(1, &particleTextureID);
  22.474 +    /* shutdown SDL */
  22.475 +    SDL_Quit();
  22.476 +
  22.477 +    return 0;
  22.478 +}
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/Xcode-iOS/Demos/src/happy.c	Thu Jan 05 21:41:55 2012 -0500
    23.3 @@ -0,0 +1,177 @@
    23.4 +/*
    23.5 + *	happy.c
    23.6 + *	written by Holmes Futrell
    23.7 + *	use however you want
    23.8 + */
    23.9 +
   23.10 +#include "SDL.h"
   23.11 +#include "common.h"
   23.12 +
   23.13 +#define NUM_HAPPY_FACES 100     /* number of faces to draw */
   23.14 +#define MILLESECONDS_PER_FRAME 16       /* about 60 frames per second */
   23.15 +#define HAPPY_FACE_SIZE 32      /* width and height of happyface (pixels) */
   23.16 +
   23.17 +static SDL_Texture *texture = 0;    /* reference to texture holding happyface */
   23.18 +
   23.19 +static struct
   23.20 +{
   23.21 +    float x, y;                 /* position of happyface */
   23.22 +    float xvel, yvel;           /* velocity of happyface */
   23.23 +} faces[NUM_HAPPY_FACES];
   23.24 +
   23.25 +/*
   23.26 +	Sets initial positions and velocities of happyfaces
   23.27 +	units of velocity are pixels per millesecond
   23.28 +*/
   23.29 +void
   23.30 +initializeHappyFaces()
   23.31 +{
   23.32 +    int i;
   23.33 +    for (i = 0; i < NUM_HAPPY_FACES; i++) {
   23.34 +        faces[i].x = randomFloat(0.0f, SCREEN_WIDTH - HAPPY_FACE_SIZE);
   23.35 +        faces[i].y = randomFloat(0.0f, SCREEN_HEIGHT - HAPPY_FACE_SIZE);
   23.36 +        faces[i].xvel = randomFloat(-0.1f, 0.1f);
   23.37 +        faces[i].yvel = randomFloat(-0.1f, 0.1f);
   23.38 +    }
   23.39 +}
   23.40 +
   23.41 +void
   23.42 +render(SDL_Renderer *renderer)
   23.43 +{
   23.44 +
   23.45 +    int i;
   23.46 +    SDL_Rect srcRect;
   23.47 +    SDL_Rect dstRect;
   23.48 +
   23.49 +    /* setup boundaries for happyface bouncing */
   23.50 +    Uint16 maxx = SCREEN_WIDTH - HAPPY_FACE_SIZE;
   23.51 +    Uint16 maxy = SCREEN_HEIGHT - HAPPY_FACE_SIZE;
   23.52 +    Uint16 minx = 0;
   23.53 +    Uint16 miny = 0;
   23.54 +
   23.55 +    /* setup rects for drawing */
   23.56 +    srcRect.x = 0;
   23.57 +    srcRect.y = 0;
   23.58 +    srcRect.w = HAPPY_FACE_SIZE;
   23.59 +    srcRect.h = HAPPY_FACE_SIZE;
   23.60 +    dstRect.w = HAPPY_FACE_SIZE;
   23.61 +    dstRect.h = HAPPY_FACE_SIZE;
   23.62 +
   23.63 +    /* fill background in with black */
   23.64 +    SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255);
   23.65 +    SDL_RenderClear(renderer);
   23.66 +
   23.67 +    /*
   23.68 +       loop through all the happy faces:
   23.69 +       - update position
   23.70 +       - update velocity (if boundary is hit)
   23.71 +       - draw
   23.72 +     */
   23.73 +    for (i = 0; i < NUM_HAPPY_FACES; i++) {
   23.74 +        faces[i].x += faces[i].xvel * MILLESECONDS_PER_FRAME;
   23.75 +        faces[i].y += faces[i].yvel * MILLESECONDS_PER_FRAME;
   23.76 +        if (faces[i].x > maxx) {
   23.77 +            faces[i].x = maxx;
   23.78 +            faces[i].xvel = -faces[i].xvel;
   23.79 +        } else if (faces[i].y > maxy) {
   23.80 +            faces[i].y = maxy;
   23.81 +            faces[i].yvel = -faces[i].yvel;
   23.82 +        }
   23.83 +        if (faces[i].x < minx) {
   23.84 +            faces[i].x = minx;
   23.85 +            faces[i].xvel = -faces[i].xvel;
   23.86 +        } else if (faces[i].y < miny) {
   23.87 +            faces[i].y = miny;
   23.88 +            faces[i].yvel = -faces[i].yvel;
   23.89 +        }
   23.90 +        dstRect.x = faces[i].x;
   23.91 +        dstRect.y = faces[i].y;
   23.92 +        SDL_RenderCopy(renderer, texture, &srcRect, &dstRect);
   23.93 +    }
   23.94 +    /* update screen */
   23.95 +    SDL_RenderPresent(renderer);
   23.96 +
   23.97 +}
   23.98 +
   23.99 +/*
  23.100 +	loads the happyface graphic into a texture
  23.101 +*/
  23.102 +void
  23.103 +initializeTexture(SDL_Renderer *renderer)
  23.104 +{
  23.105 +    SDL_Surface *bmp_surface;
  23.106 +    /* load the bmp */
  23.107 +    bmp_surface = SDL_LoadBMP("icon.bmp");
  23.108 +    if (bmp_surface == NULL) {
  23.109 +        fatalError("could not load bmp");
  23.110 +    }
  23.111 +    /* set white to transparent on the happyface */
  23.112 +    SDL_SetColorKey(bmp_surface, 1,
  23.113 +                    SDL_MapRGB(bmp_surface->format, 255, 255, 255));
  23.114 +
  23.115 +    /* convert RGBA surface to texture */
  23.116 +    texture = SDL_CreateTextureFromSurface(renderer, bmp_surface);
  23.117 +    if (texture == 0) {
  23.118 +        fatalError("could not create texture");
  23.119 +    }
  23.120 +    SDL_SetTextureBlendMode(texture, SDL_BLENDMODE_BLEND);
  23.121 +
  23.122 +    /* free up allocated memory */
  23.123 +    SDL_FreeSurface(bmp_surface);
  23.124 +}
  23.125 +
  23.126 +int
  23.127 +main(int argc, char *argv[])
  23.128 +{
  23.129 +
  23.130 +    SDL_Window *window;
  23.131 +	SDL_Renderer *renderer;
  23.132 +    Uint32 startFrame;
  23.133 +    Uint32 endFrame;
  23.134 +    Uint32 delay;
  23.135 +    int done;
  23.136 +
  23.137 +    /* initialize SDL */
  23.138 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
  23.139 +        fatalError("Could not initialize SDL");
  23.140 +    }
  23.141 +    window = SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
  23.142 +                                SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN |
  23.143 +                                SDL_WINDOW_BORDERLESS);
  23.144 +
  23.145 +    renderer = SDL_CreateRenderer(window, -1, 0);
  23.146 +
  23.147 +    initializeTexture(renderer);
  23.148 +    initializeHappyFaces();
  23.149 +
  23.150 +    /* main loop */
  23.151 +    done = 0;
  23.152 +    while (!done) {
  23.153 +        startFrame = SDL_GetTicks();
  23.154 +        SDL_Event event;
  23.155 +        while (SDL_PollEvent(&event)) {
  23.156 +            if (event.type == SDL_QUIT) {
  23.157 +                done = 1;
  23.158 +            }
  23.159 +        }
  23.160 +        render(renderer);
  23.161 +        endFrame = SDL_GetTicks();
  23.162 +
  23.163 +        /* figure out how much time we have left, and then sleep */
  23.164 +        delay = MILLESECONDS_PER_FRAME - (endFrame - startFrame);
  23.165 +        if (delay < 0) {
  23.166 +            delay = 0;
  23.167 +        } else if (delay > MILLESECONDS_PER_FRAME) {
  23.168 +            delay = MILLESECONDS_PER_FRAME;
  23.169 +        }
  23.170 +        SDL_Delay(delay);
  23.171 +    }
  23.172 +
  23.173 +    /* cleanup */
  23.174 +    SDL_DestroyTexture(texture);
  23.175 +    /* shutdown SDL */
  23.176 +    SDL_Quit();
  23.177 +
  23.178 +    return 0;
  23.179 +
  23.180 +}
    24.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    24.2 +++ b/Xcode-iOS/Demos/src/keyboard.c	Thu Jan 05 21:41:55 2012 -0500
    24.3 @@ -0,0 +1,319 @@
    24.4 +/*
    24.5 + *	keyboard.c
    24.6 + *	written by Holmes Futrell
    24.7 + *	use however you want
    24.8 + */
    24.9 +
   24.10 +#import "SDL.h"
   24.11 +#import "common.h"
   24.12 +
   24.13 +#define GLYPH_SIZE_IMAGE 16     /* size of glyphs (characters) in the bitmap font file */
   24.14 +#define GLYPH_SIZE_SCREEN 32    /* size of glyphs (characters) as shown on the screen */
   24.15 +
   24.16 +static SDL_Texture *texture; /* texture where we'll hold our font */
   24.17 +
   24.18 +/* iPhone SDL addition keyboard related function definitions */
   24.19 +extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardShow(SDL_Window * window);
   24.20 +extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardHide(SDL_Window * window);
   24.21 +extern DECLSPEC SDL_bool SDLCALL SDL_iPhoneKeyboardIsShown(SDL_Window *
   24.22 +                                                           window);
   24.23 +extern DECLSPEC int SDLCALL SDL_iPhoneKeyboardToggle(SDL_Window * window);
   24.24 +
   24.25 +/* function declarations */
   24.26 +void cleanup(void);
   24.27 +void drawBlank(int x, int y);
   24.28 +
   24.29 +static SDL_Renderer *renderer;
   24.30 +static int numChars = 0;        /* number of characters we've typed so far */
   24.31 +static SDL_bool lastCharWasColon = 0;   /* we use this to detect sequences such as :) */
   24.32 +static SDL_Color bg_color = { 50, 50, 100, 255 };       /* color of background */
   24.33 +
   24.34 +/* this structure maps a scancode to an index in our bitmap font.
   24.35 +   it also contains data about under which modifiers the mapping is valid
   24.36 +   (for example, we don't want shift + 1 to produce the character '1',
   24.37 +   but rather the character '!')
   24.38 +*/
   24.39 +typedef struct
   24.40 +{
   24.41 +    SDL_ScanCode scancode;      /* scancode of the key we want to map */
   24.42 +    int allow_no_mod;           /* is the map valid if the key has no modifiers? */
   24.43 +    SDLMod mod;                 /* what modifiers are allowed for the mapping */
   24.44 +    int index;                  /* what index in the font does the scancode map to */
   24.45 +} fontMapping;
   24.46 +
   24.47 +#define TABLE_SIZE 51           /* size of our table which maps keys and modifiers to font indices */
   24.48 +
   24.49 +/* Below is the table that defines the mapping between scancodes and modifiers to indices in the
   24.50 +   bitmap font.  As an example, then line '{ SDL_SCANCODE_A, 1, KMOD_SHIFT, 33 }' means, map
   24.51 +   the key A (which has scancode SDL_SCANCODE_A) to index 33 in the font (which is a picture of an A),
   24.52 +   The '1' means that the mapping is valid even if there are no modifiers, and KMOD_SHIFT means the
   24.53 +   mapping is also valid if the user is holding shift.
   24.54 +*/
   24.55 +fontMapping map[TABLE_SIZE] = {
   24.56 +
   24.57 +    {SDL_SCANCODE_A, 1, KMOD_SHIFT, 33},        /* A */
   24.58 +    {SDL_SCANCODE_B, 1, KMOD_SHIFT, 34},        /* B */
   24.59 +    {SDL_SCANCODE_C, 1, KMOD_SHIFT, 35},        /* C */
   24.60 +    {SDL_SCANCODE_D, 1, KMOD_SHIFT, 36},        /* D */
   24.61 +    {SDL_SCANCODE_E, 1, KMOD_SHIFT, 37},        /* E */
   24.62 +    {SDL_SCANCODE_F, 1, KMOD_SHIFT, 38},        /* F */
   24.63 +    {SDL_SCANCODE_G, 1, KMOD_SHIFT, 39},        /* G */
   24.64 +    {SDL_SCANCODE_H, 1, KMOD_SHIFT, 40},        /* H */
   24.65 +    {SDL_SCANCODE_I, 1, KMOD_SHIFT, 41},        /* I */
   24.66 +    {SDL_SCANCODE_J, 1, KMOD_SHIFT, 42},        /* J */
   24.67 +    {SDL_SCANCODE_K, 1, KMOD_SHIFT, 43},        /* K */
   24.68 +    {SDL_SCANCODE_L, 1, KMOD_SHIFT, 44},        /* L */
   24.69 +    {SDL_SCANCODE_M, 1, KMOD_SHIFT, 45},        /* M */
   24.70 +    {SDL_SCANCODE_N, 1, KMOD_SHIFT, 46},        /* N */
   24.71 +    {SDL_SCANCODE_O, 1, KMOD_SHIFT, 47},        /* O */
   24.72 +    {SDL_SCANCODE_P, 1, KMOD_SHIFT, 48},        /* P */
   24.73 +    {SDL_SCANCODE_Q, 1, KMOD_SHIFT, 49},        /* Q */
   24.74 +    {SDL_SCANCODE_R, 1, KMOD_SHIFT, 50},        /* R */
   24.75 +    {SDL_SCANCODE_S, 1, KMOD_SHIFT, 51},        /* S */
   24.76 +    {SDL_SCANCODE_T, 1, KMOD_SHIFT, 52},        /* T */
   24.77 +    {SDL_SCANCODE_U, 1, KMOD_SHIFT, 53},        /* U */
   24.78 +    {SDL_SCANCODE_V, 1, KMOD_SHIFT, 54},        /* V */
   24.79 +    {SDL_SCANCODE_W, 1, KMOD_SHIFT, 55},        /* W */
   24.80 +    {SDL_SCANCODE_X, 1, KMOD_SHIFT, 56},        /* X */
   24.81 +    {SDL_SCANCODE_Y, 1, KMOD_SHIFT, 57},        /* Y */
   24.82 +    {SDL_SCANCODE_Z, 1, KMOD_SHIFT, 58},        /* Z */
   24.83 +    {SDL_SCANCODE_0, 1, 0, 16}, /* 0 */
   24.84 +    {SDL_SCANCODE_1, 1, 0, 17}, /* 1 */
   24.85 +    {SDL_SCANCODE_2, 1, 0, 18}, /* 2 */
   24.86 +    {SDL_SCANCODE_3, 1, 0, 19}, /* 3 */
   24.87 +    {SDL_SCANCODE_4, 1, 0, 20}, /* 4 */
   24.88 +    {SDL_SCANCODE_5, 1, 0, 21}, /* 5 */
   24.89 +    {SDL_SCANCODE_6, 1, 0, 22}, /* 6 */
   24.90 +    {SDL_SCANCODE_7, 1, 0, 23}, /* 7 */
   24.91 +    {SDL_SCANCODE_8, 1, 0, 24}, /* 8 */
   24.92 +    {SDL_SCANCODE_9, 1, 0, 25}, /* 9 */
   24.93 +    {SDL_SCANCODE_SPACE, 1, 0, 0},      /*' ' */
   24.94 +    {SDL_SCANCODE_1, 0, KMOD_SHIFT, 1}, /* ! */
   24.95 +    {SDL_SCANCODE_SLASH, 0, KMOD_SHIFT, 31},    /* ? */
   24.96 +    {SDL_SCANCODE_SLASH, 1, 0, 15},     /* / */
   24.97 +    {SDL_SCANCODE_COMMA, 1, 0, 12},     /* , */
   24.98 +    {SDL_SCANCODE_SEMICOLON, 1, 0, 27}, /* ; */
   24.99 +    {SDL_SCANCODE_SEMICOLON, 0, KMOD_SHIFT, 26},        /* : */
  24.100 +    {SDL_SCANCODE_PERIOD, 1, 0, 14},    /* . */
  24.101 +    {SDL_SCANCODE_MINUS, 1, 0, 13},     /* - */
  24.102 +    {SDL_SCANCODE_EQUALS, 0, KMOD_SHIFT, 11},   /* = */
  24.103 +    {SDL_SCANCODE_APOSTROPHE, 1, 0, 7}, /* ' */
  24.104 +    {SDL_SCANCODE_APOSTROPHE, 0, KMOD_SHIFT, 2},        /* " */
  24.105 +    {SDL_SCANCODE_5, 0, KMOD_SHIFT, 5}, /* % */
  24.106 +
  24.107 +};
  24.108 +
  24.109 +/*
  24.110 +	This function maps an SDL_KeySym to an index in the bitmap font.
  24.111 +	It does so by scanning through the font mapping table one entry
  24.112 +	at a time.
  24.113 + 
  24.114 +	If a match is found (scancode and allowed modifiers), the proper
  24.115 +	index is returned.
  24.116 + 
  24.117 +	If there is no entry for the key, -1 is returned
  24.118 +*/
  24.119 +int
  24.120 +keyToIndex(SDL_KeySym key)
  24.121 +{
  24.122 +    int i, index = -1;
  24.123 +    for (i = 0; i < TABLE_SIZE; i++) {
  24.124 +        fontMapping compare = map[i];
  24.125 +        if (key.scancode == compare.scancode) {
  24.126 +            /* if this entry is valid with no key mod and we have no keymod, or if
  24.127 +               the key's modifiers are allowed modifiers for that mapping */
  24.128 +            if ((compare.allow_no_mod && key.mod == 0)
  24.129 +                || (key.mod & compare.mod)) {
  24.130 +                index = compare.index;
  24.131 +                break;
  24.132 +            }
  24.133 +        }
  24.134 +    }
  24.135 +    return index;
  24.136 +}
  24.137 +
  24.138 +/* 
  24.139 +	This function returns and x,y position for a given character number.
  24.140 +    It is used for positioning each character of text
  24.141 +*/
  24.142 +void
  24.143 +getPositionForCharNumber(int n, int *x, int *y)
  24.144 +{
  24.145 +    int x_padding = 16;         /* padding space on left and right side of screen */
  24.146 +    int y_padding = 32;         /* padding space at top of screen */
  24.147 +    /* figure out the number of characters that can fit horizontally across the screen */
  24.148 +    int max_x_chars = (SCREEN_WIDTH - 2 * x_padding) / GLYPH_SIZE_SCREEN;
  24.149 +    int line_separation = 5;    /* pixels between each line */
  24.150 +    *x = (n % max_x_chars) * GLYPH_SIZE_SCREEN + x_padding;
  24.151 +    *y = (n / max_x_chars) * (GLYPH_SIZE_SCREEN + line_separation) +
  24.152 +        y_padding;
  24.153 +}
  24.154 +
  24.155 +void
  24.156 +drawIndex(int index)
  24.157 +{
  24.158 +    int x, y;
  24.159 +    getPositionForCharNumber(numChars, &x, &y);
  24.160 +    SDL_Rect srcRect =
  24.161 +        { GLYPH_SIZE_IMAGE * index, 0, GLYPH_SIZE_IMAGE, GLYPH_SIZE_IMAGE };
  24.162 +    SDL_Rect dstRect = { x, y, GLYPH_SIZE_SCREEN, GLYPH_SIZE_SCREEN };
  24.163 +    drawBlank(x, y);
  24.164 +    SDL_RenderCopy(renderer, texture, &srcRect, &dstRect);
  24.165 +}
  24.166 +
  24.167 +/*  draws the cursor icon at the current end position of the text */
  24.168 +void
  24.169 +drawCursor(void)
  24.170 +{
  24.171 +    drawIndex(29);              /* cursor is at index 29 in the bitmap font */
  24.172 +}
  24.173 +
  24.174 +/* paints over a glyph sized region with the background color
  24.175 +   in effect it erases the area
  24.176 +*/
  24.177 +void
  24.178 +drawBlank(int x, int y)
  24.179 +{
  24.180 +    SDL_Rect rect = { x, y, GLYPH_SIZE_SCREEN, GLYPH_SIZE_SCREEN };
  24.181 +    SDL_SetRenderDrawColor(renderer, bg_color.r, bg_color.g, bg_color.b,
  24.182 +                           bg_color.unused);
  24.183 +    SDL_RenderFillRect(renderer, &rect);
  24.184 +}
  24.185 +
  24.186 +/* moves backwards one character, erasing the last one put down */
  24.187 +void
  24.188 +backspace(void)
  24.189 +{
  24.190 +    int x, y;
  24.191 +    if (numChars > 0) {
  24.192 +        getPositionForCharNumber(numChars, &x, &y);
  24.193 +        drawBlank(x, y);
  24.194 +        numChars--;
  24.195 +        getPositionForCharNumber(numChars, &x, &y);
  24.196 +        drawBlank(x, y);
  24.197 +        drawCursor();
  24.198 +    }
  24.199 +}
  24.200 +
  24.201 +/* this function loads our font into an SDL_Texture and returns the SDL_Texture  */
  24.202 +SDL_Texture*
  24.203 +loadFont(void)
  24.204 +{
  24.205 +
  24.206 +    SDL_Surface *surface = SDL_LoadBMP("kromasky_16x16.bmp");
  24.207 +
  24.208 +    if (!surface) {
  24.209 +        printf("Error loading bitmap: %s\n", SDL_GetError());
  24.210 +        return 0;
  24.211 +    } else {
  24.212 +        /* set the transparent color for the bitmap font (hot pink) */
  24.213 +        SDL_SetColorKey(surface, 1, SDL_MapRGB(surface->format, 238, 0, 252));
  24.214 +        /* now we convert the surface to our desired pixel format */
  24.215 +        int format = SDL_PIXELFORMAT_ABGR8888;  /* desired texture format */
  24.216 +        Uint32 Rmask, Gmask, Bmask, Amask;      /* masks for desired format */
  24.217 +        int bpp;                /* bits per pixel for desired format */
  24.218 +        SDL_PixelFormatEnumToMasks(format, &bpp, &Rmask, &Gmask, &Bmask,
  24.219 +                                   &Amask);
  24.220 +        SDL_Surface *converted =
  24.221 +            SDL_CreateRGBSurface(0, surface->w, surface->h, bpp, Rmask, Gmask,
  24.222 +                                 Bmask, Amask);
  24.223 +        SDL_BlitSurface(surface, NULL, converted, NULL);
  24.224 +        /* create our texture */
  24.225 +        texture =
  24.226 +            SDL_CreateTextureFromSurface(renderer, converted);
  24.227 +        if (texture == 0) {
  24.228 +            printf("texture creation failed: %s\n", SDL_GetError());
  24.229 +        } else {
  24.230 +            /* set blend mode for our texture */
  24.231 +            SDL_SetTextureBlendMode(texture, SDL_BLENDMODE_BLEND);
  24.232 +        }
  24.233 +        SDL_FreeSurface(surface);
  24.234 +        SDL_FreeSurface(converted);
  24.235 +        return texture;
  24.236 +    }
  24.237 +}
  24.238 +
  24.239 +int
  24.240 +main(int argc, char *argv[])
  24.241 +{
  24.242 +
  24.243 +    int index;                  /* index of last key we pushed in the bitmap font */
  24.244 +    SDL_Window *window;
  24.245 +    SDL_Event event;            /* last event received */
  24.246 +    SDLMod mod;                 /* key modifiers of last key we pushed */
  24.247 +    SDL_ScanCode scancode;      /* scancode of last key we pushed */
  24.248 +
  24.249 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
  24.250 +        printf("Error initializing SDL: %s", SDL_GetError());
  24.251 +    }
  24.252 +    /* create window */
  24.253 +    window = SDL_CreateWindow("iPhone keyboard test", 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0);
  24.254 +    /* create renderer */
  24.255 +    renderer = SDL_CreateRenderer(window, -1, 0);
  24.256 +
  24.257 +    /* load up our font */
  24.258 +    loadFont();
  24.259 +
  24.260 +    /* draw the background, we'll just paint over it */
  24.261 +    SDL_SetRenderDrawColor(renderer, bg_color.r, bg_color.g, bg_color.b,
  24.262 +                           bg_color.unused);
  24.263 +    SDL_RenderFillRect(renderer, NULL);
  24.264 +    SDL_RenderPresent(renderer);
  24.265 +
  24.266 +    int done = 0;
  24.267 +    /* loop till we get SDL_Quit */
  24.268 +    while (SDL_WaitEvent(&event)) {
  24.269 +        switch (event.type) {
  24.270 +        case SDL_QUIT:
  24.271 +            done = 1;
  24.272 +            break;
  24.273 +        case SDL_KEYDOWN:
  24.274 +            index = keyToIndex(event.key.keysym);
  24.275 +            scancode = event.key.keysym.scancode;
  24.276 +            mod = event.key.keysym.mod;
  24.277 +            if (scancode == SDL_SCANCODE_DELETE) {
  24.278 +                /* if user hit delete, delete the last character */
  24.279 +                backspace();
  24.280 +                lastCharWasColon = 0;
  24.281 +            } else if (lastCharWasColon && scancode == SDL_SCANCODE_0
  24.282 +                       && (mod & KMOD_SHIFT)) {
  24.283 +                /* if our last key was a colon and this one is a close paren, the make a hoppy face */
  24.284 +                backspace();
  24.285 +                drawIndex(32);  /* index for happy face */
  24.286 +                numChars++;
  24.287 +                drawCursor();
  24.288 +                lastCharWasColon = 0;
  24.289 +            } else if (index != -1) {
  24.290 +                /* if we aren't doing a happy face, then just draw the normal character */
  24.291 +                drawIndex(index);
  24.292 +                numChars++;
  24.293 +                drawCursor();
  24.294 +                lastCharWasColon =
  24.295 +                    (event.key.keysym.scancode == SDL_SCANCODE_SEMICOLON
  24.296 +                     && (event.key.keysym.mod & KMOD_SHIFT));
  24.297 +            }
  24.298 +            /* check if the key was a colon */
  24.299 +            /* draw our updates to the screen */
  24.300 +            SDL_RenderPresent(renderer);
  24.301 +            break;
  24.302 +#ifdef __IPHONEOS__
  24.303 +        case SDL_MOUSEBUTTONUP:
  24.304 +            /*      mouse up toggles onscreen keyboard visibility
  24.305 +               this function is available ONLY on iPhone OS
  24.306 +             */
  24.307 +            SDL_iPhoneKeyboardToggle(window);
  24.308 +            break;
  24.309 +#endif
  24.310 +        }
  24.311 +    }
  24.312 +    cleanup();
  24.313 +    return 0;
  24.314 +}
  24.315 +
  24.316 +/* clean up after ourselves like a good kiddy */
  24.317 +void
  24.318 +cleanup(void)
  24.319 +{
  24.320 +    SDL_DestroyTexture(texture);
  24.321 +    SDL_Quit();
  24.322 +}
    25.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    25.2 +++ b/Xcode-iOS/Demos/src/mixer.c	Thu Jan 05 21:41:55 2012 -0500
    25.3 @@ -0,0 +1,353 @@
    25.4 +/*
    25.5 + *	mixer.c
    25.6 + *	written by Holmes Futrell
    25.7 + *	use however you want
    25.8 + */
    25.9 +
   25.10 +#import "SDL.h"
   25.11 +#import "common.h"
   25.12 +
   25.13 +#define NUM_CHANNELS 8          /* max number of sounds we can play at once */
   25.14 +#define NUM_DRUMS 4             /* number of drums in our set */
   25.15 +#define MILLESECONDS_PER_FRAME 16       /* about 60 frames per second */
   25.16 +
   25.17 +static struct
   25.18 +{
   25.19 +    SDL_Rect rect;              /* where the button is drawn */
   25.20 +    SDL_Color upColor;          /* color when button is not active */
   25.21 +    SDL_Color downColor;        /* color when button is active */
   25.22 +    int isPressed;              /* is the button being pressed ? */
   25.23 +    int touchIndex;             /* what mouse (touch) index pressed the button ? */
   25.24 +} buttons[NUM_DRUMS];
   25.25 +
   25.26 +struct sound
   25.27 +{
   25.28 +    Uint8 *buffer;              /* audio buffer for sound file */
   25.29 +    Uint32 length;              /* length of the buffer (in bytes) */
   25.30 +};
   25.31 +
   25.32 +/* this array holds the audio for the drum noises */
   25.33 +static struct sound drums[NUM_DRUMS];
   25.34 +
   25.35 +/* function declarations */
   25.36 +void handleMouseButtonDown(SDL_Event * event);
   25.37 +void handleMouseButtonUp(SDL_Event * event);
   25.38 +int playSound(struct sound *);
   25.39 +void initializeButtons();
   25.40 +void audioCallback(void *userdata, Uint8 * stream, int len);
   25.41 +void loadSound(const char *file, struct sound *s);
   25.42 +
   25.43 +struct
   25.44 +{
   25.45 +    /* channel array holds information about currently playing sounds */
   25.46 +    struct
   25.47 +    {
   25.48 +        Uint8 *position;        /* what is the current position in the buffer of this sound ? */
   25.49 +        Uint32 remaining;       /* how many bytes remaining before we're done playing the sound ? */
   25.50 +        Uint32 timestamp;       /* when did this sound start playing ? */
   25.51 +    } channels[NUM_CHANNELS];
   25.52 +    SDL_AudioSpec outputSpec;   /* what audio format are we using for output? */
   25.53 +    int numSoundsPlaying;       /* how many sounds are currently playing */
   25.54 +} mixer;
   25.55 +
   25.56 +/* sets up the buttons (color, position, state) */
   25.57 +void
   25.58 +initializeButtons()
   25.59 +{
   25.60 +
   25.61 +    int i;
   25.62 +    int spacing = 10;           /* gap between drum buttons */
   25.63 +    SDL_Rect buttonRect;        /* keeps track of where to position drum */
   25.64 +    SDL_Color upColor = { 86, 86, 140, 255 };   /* color of drum when not pressed */
   25.65 +    SDL_Color downColor = { 191, 191, 221, 255 };       /* color of drum when pressed */
   25.66 +
   25.67 +    buttonRect.x = spacing;
   25.68 +    buttonRect.y = spacing;
   25.69 +    buttonRect.w = SCREEN_WIDTH - 2 * spacing;
   25.70 +    buttonRect.h = (SCREEN_HEIGHT - (NUM_DRUMS + 1) * spacing) / NUM_DRUMS;
   25.71 +
   25.72 +    /* setup each button */
   25.73 +    for (i = 0; i < NUM_DRUMS; i++) {
   25.74 +
   25.75 +        buttons[i].rect = buttonRect;
   25.76 +        buttons[i].isPressed = 0;
   25.77 +        buttons[i].upColor = upColor;
   25.78 +        buttons[i].downColor = downColor;
   25.79 +
   25.80 +        buttonRect.y += spacing + buttonRect.h; /* setup y coordinate for next drum */
   25.81 +
   25.82 +    }
   25.83 +}
   25.84 +
   25.85 +/*
   25.86 + loads a wav file (stored in 'file'), converts it to the mixer's output format,
   25.87 + and stores the resulting buffer and length in the sound structure
   25.88 + */
   25.89 +void
   25.90 +loadSound(const char *file, struct sound *s)
   25.91 +{
   25.92 +    SDL_AudioSpec spec;         /* the audio format of the .wav file */
   25.93 +    SDL_AudioCVT cvt;           /* used to convert .wav to output format when formats differ */
   25.94 +    int result;
   25.95 +    if (SDL_LoadWAV(file, &spec, &s->buffer, &s->length) == NULL) {
   25.96 +        fatalError("could not load .wav");
   25.97 +    }
   25.98 +    /* build the audio converter */
   25.99 +    result = SDL_BuildAudioCVT(&cvt, spec.format, spec.channels, spec.freq,
  25.100 +                               mixer.outputSpec.format,
  25.101 +                               mixer.outputSpec.channels,
  25.102 +                               mixer.outputSpec.freq);
  25.103 +    if (result == -1) {
  25.104 +        fatalError("could not build audio CVT");
  25.105 +    } else if (result != 0) {
  25.106 +        /* 
  25.107 +           this happens when the .wav format differs from the output format.
  25.108 +           we convert the .wav buffer here
  25.109 +         */
  25.110 +        cvt.buf = (Uint8 *) SDL_malloc(s->length * cvt.len_mult);       /* allocate conversion buffer */
  25.111 +        cvt.len = s->length;    /* set conversion buffer length */
  25.112 +        SDL_memcpy(cvt.buf, s->buffer, s->length);      /* copy sound to conversion buffer */
  25.113 +        if (SDL_ConvertAudio(&cvt) == -1) {     /* convert the sound */
  25.114 +            fatalError("could not convert .wav");
  25.115 +        }
  25.116 +        SDL_free(s->buffer);    /* free the original (unconverted) buffer */
  25.117 +        s->buffer = cvt.buf;    /* point sound buffer to converted buffer */
  25.118 +        s->length = cvt.len_cvt;        /* set sound buffer's new length */
  25.119 +    }
  25.120 +}
  25.121 +
  25.122 +/* called from main event loop */
  25.123 +void
  25.124 +handleMouseButtonDown(SDL_Event * event)
  25.125 +{
  25.126 +
  25.127 +    int x, y, mouseIndex, i, drumIndex;
  25.128 +
  25.129 +    mouseIndex = 0;
  25.130 +    drumIndex = -1;
  25.131 +
  25.132 +    SDL_GetMouseState(&x, &y);
  25.133 +    /* check if we hit any of the drum buttons */
  25.134 +    for (i = 0; i < NUM_DRUMS; i++) {
  25.135 +        if (x >= buttons[i].rect.x
  25.136 +            && x < buttons[i].rect.x + buttons[i].rect.w
  25.137 +            && y >= buttons[i].rect.y
  25.138 +            && y < buttons[i].rect.y + buttons[i].rect.h) {
  25.139 +            drumIndex = i;
  25.140 +            break;
  25.141 +        }
  25.142 +    }
  25.143 +    if (drumIndex != -1) {
  25.144 +        /* if we hit a button */
  25.145 +        buttons[drumIndex].touchIndex = mouseIndex;
  25.146 +        buttons[drumIndex].isPressed = 1;
  25.147 +        playSound(&drums[drumIndex]);
  25.148 +    }
  25.149 +
  25.150 +}
  25.151 +
  25.152 +/* called from main event loop */
  25.153 +void
  25.154 +handleMouseButtonUp(SDL_Event * event)
  25.155 +{
  25.156 +    int i;
  25.157 +    int mouseIndex = 0;
  25.158 +    /* check if this should cause any of the buttons to become unpressed */
  25.159 +    for (i = 0; i < NUM_DRUMS; i++) {
  25.160 +        if (buttons[i].touchIndex == mouseIndex) {
  25.161 +            buttons[i].isPressed = 0;
  25.162 +        }
  25.163 +    }
  25.164 +}
  25.165 +
  25.166 +/* draws buttons to screen */
  25.167 +void
  25.168 +render(SDL_Renderer *renderer)
  25.169 +{
  25.170 +    int i;
  25.171 +    SDL_SetRenderDrawColor(renderer, 50, 50, 50, 255);
  25.172 +    SDL_RenderClear(renderer);       /* draw background (gray) */
  25.173 +    /* draw the drum buttons */
  25.174 +    for (i = 0; i < NUM_DRUMS; i++) {
  25.175 +        SDL_Color color =
  25.176 +            buttons[i].isPressed ? buttons[i].downColor : buttons[i].upColor;
  25.177 +        SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, color.unused);
  25.178 +        SDL_RenderFillRect(renderer, &buttons[i].rect);
  25.179 +    }
  25.180 +    /* update the screen */
  25.181 +    SDL_RenderPresent(renderer);
  25.182 +}
  25.183 +
  25.184 +/*
  25.185 +	finds a sound channel in the mixer for a sound
  25.186 +	and sets it up to start playing
  25.187 +*/
  25.188 +int
  25.189 +playSound(struct sound *s)
  25.190 +{
  25.191 +    /*
  25.192 +       find an empty channel to play on.
  25.193 +       if no channel is available, use oldest channel
  25.194 +     */
  25.195 +    int i;
  25.196 +    int selected_channel = -1;
  25.197 +    int oldest_channel = 0;
  25.198 +
  25.199 +    if (mixer.numSoundsPlaying == 0) {
  25.200 +        /* we're playing a sound now, so start audio callback back up */
  25.201 +        SDL_PauseAudio(0);
  25.202 +    }
  25.203 +
  25.204 +    /* find a sound channel to play the sound on */
  25.205 +    for (i = 0; i < NUM_CHANNELS; i++) {
  25.206 +        if (mixer.channels[i].position == NULL) {
  25.207 +            /* if no sound on this channel, select it */
  25.208 +            selected_channel = i;
  25.209 +            break;
  25.210 +        }
  25.211 +        /* if this channel's sound is older than the oldest so far, set it to oldest */
  25.212 +        if (mixer.channels[i].timestamp <
  25.213 +            mixer.channels[oldest_channel].timestamp)
  25.214 +            oldest_channel = i;
  25.215 +    }
  25.216 +
  25.217 +    /* no empty channels, take the oldest one */
  25.218 +    if (selected_channel == -1)
  25.219 +        selected_channel = oldest_channel;
  25.220 +    else
  25.221 +        mixer.numSoundsPlaying++;
  25.222 +
  25.223 +    /* point channel data to wav data */
  25.224 +    mixer.channels[selected_channel].position = s->buffer;
  25.225 +    mixer.channels[selected_channel].remaining = s->length;
  25.226 +    mixer.channels[selected_channel].timestamp = SDL_GetTicks();
  25.227 +
  25.228 +    return selected_channel;
  25.229 +}
  25.230 +
  25.231 +/* 
  25.232 +	Called from SDL's audio system.  Supplies sound input with data by mixing together all
  25.233 +	currently playing sound effects.
  25.234 +*/
  25.235 +void
  25.236 +audioCallback(void *userdata, Uint8 * stream, int len)
  25.237 +{
  25.238 +    int i;
  25.239 +    int copy_amt;
  25.240 +    SDL_memset(stream, mixer.outputSpec.silence, len);  /* initialize buffer to silence */
  25.241 +    /* for each channel, mix in whatever is playing on that channel */
  25.242 +    for (i = 0; i < NUM_CHANNELS; i++) {
  25.243 +        if (mixer.channels[i].position == NULL) {
  25.244 +            /* if no sound is playing on this channel */
  25.245 +            continue;           /* nothing to do for this channel */
  25.246 +        }
  25.247 +
  25.248 +        /* copy len bytes to the buffer, unless we have fewer than len bytes remaining */
  25.249 +        copy_amt =
  25.250 +            mixer.channels[i].remaining <
  25.251 +            len ? mixer.channels[i].remaining : len;
  25.252 +
  25.253 +        /* mix this sound effect with the output */
  25.254 +        SDL_MixAudioFormat(stream, mixer.channels[i].position,
  25.255 +                           mixer.outputSpec.format, copy_amt, 150);
  25.256 +
  25.257 +        /* update buffer position in sound effect and the number of bytes left */
  25.258 +        mixer.channels[i].position += copy_amt;
  25.259 +        mixer.channels[i].remaining -= copy_amt;
  25.260 +
  25.261 +        /* did we finish playing the sound effect ? */
  25.262 +        if (mixer.channels[i].remaining == 0) {
  25.263 +            mixer.channels[i].position = NULL;  /* indicates no sound playing on channel anymore */
  25.264 +            mixer.numSoundsPlaying--;
  25.265 +            if (mixer.numSoundsPlaying == 0) {
  25.266 +                /* if no sounds left playing, pause audio callback */
  25.267 +                SDL_PauseAudio(1);
  25.268 +            }
  25.269 +        }
  25.270 +    }
  25.271 +}
  25.272 +
  25.273 +int
  25.274 +main(int argc, char *argv[])
  25.275 +{
  25.276 +
  25.277 +    int done;                   /* has user tried to quit ? */
  25.278 +    SDL_Window *window;         /* main window */
  25.279 +	SDL_Renderer *renderer;
  25.280 +    SDL_Event event;
  25.281 +    Uint32 startFrame;          /* holds when frame started processing */
  25.282 +    Uint32 endFrame;            /* holds when frame ended processing */
  25.283 +    Uint32 delay;               /* calculated delay, how long should we wait before next frame? */
  25.284 +
  25.285 +    if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO) < 0) {
  25.286 +        fatalError("could not initialize SDL");
  25.287 +    }
  25.288 +    window =
  25.289 +        SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
  25.290 +                         SDL_WINDOW_OPENGL | SDL_WINDOW_BORDERLESS);
  25.291 +    renderer = SDL_CreateRenderer(window, 0, 0);
  25.292 +
  25.293 +    /* initialize the mixer */
  25.294 +    SDL_memset(&mixer, 0, sizeof(mixer));
  25.295 +    /* setup output format */
  25.296 +    mixer.outputSpec.freq = 44100;
  25.297 +    mixer.outputSpec.format = AUDIO_S16LSB;
  25.298 +    mixer.outputSpec.channels = 2;
  25.299 +    mixer.outputSpec.samples = 256;
  25.300 +    mixer.outputSpec.callback = audioCallback;
  25.301 +    mixer.outputSpec.userdata = NULL;
  25.302 +
  25.303 +    /* open audio for output */
  25.304 +    if (SDL_OpenAudio(&mixer.outputSpec, NULL) != 0) {
  25.305 +        fatalError("Opening audio failed");
  25.306 +    }
  25.307 +
  25.308 +    /* load our drum noises */
  25.309 +    loadSound("ds_kick_big_amb.wav", &drums[3]);
  25.310 +    loadSound("ds_brush_snare.wav", &drums[2]);
  25.311 +    loadSound("ds_loose_skin_mute.wav", &drums[1]);
  25.312 +    loadSound("ds_china.wav", &drums[0]);
  25.313 +
  25.314 +    /* setup positions, colors, and state of buttons */
  25.315 +    initializeButtons();
  25.316 +
  25.317 +    /* enter main loop */
  25.318 +    done = 0;
  25.319 +    while (!done) {
  25.320 +        startFrame = SDL_GetTicks();
  25.321 +        while (SDL_PollEvent(&event)) {
  25.322 +            switch (event.type) {
  25.323 +            case SDL_MOUSEBUTTONDOWN:
  25.324 +                handleMouseButtonDown(&event);
  25.325 +                break;
  25.326 +            case SDL_MOUSEBUTTONUP:
  25.327 +                handleMouseButtonUp(&event);
  25.328 +                break;
  25.329 +            case SDL_QUIT:
  25.330 +                done = 1;
  25.331 +                break;
  25.332 +            }
  25.333 +        }
  25.334 +        render(renderer);               /* draw buttons */
  25.335 +        endFrame = SDL_GetTicks();
  25.336 +
  25.337 +        /* figure out how much time we have left, and then sleep */
  25.338 +        delay = MILLESECONDS_PER_FRAME - (endFrame - startFrame);
  25.339 +        if (delay < 0) {
  25.340 +            delay = 0;
  25.341 +        } else if (delay > MILLESECONDS_PER_FRAME) {
  25.342 +            delay = MILLESECONDS_PER_FRAME;
  25.343 +        }
  25.344 +        SDL_Delay(delay);
  25.345 +    }
  25.346 +
  25.347 +    /* cleanup code, let's free up those sound buffers */
  25.348 +    int i;
  25.349 +    for (i = 0; i < NUM_DRUMS; i++) {
  25.350 +        SDL_free(drums[i].buffer);
  25.351 +    }
  25.352 +    /* let SDL do its exit code */
  25.353 +    SDL_Quit();
  25.354 +
  25.355 +    return 0;
  25.356 +}
    26.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    26.2 +++ b/Xcode-iOS/Demos/src/rectangles.c	Thu Jan 05 21:41:55 2012 -0500
    26.3 @@ -0,0 +1,86 @@
    26.4 +/*
    26.5 + *	rectangles.c
    26.6 + *	written by Holmes Futrell
    26.7 + *	use however you want
    26.8 +*/
    26.9 +
   26.10 +#include "SDL.h"
   26.11 +#include <time.h>
   26.12 +#include "common.h"
   26.13 +
   26.14 +void
   26.15 +render(SDL_Renderer *renderer)
   26.16 +{
   26.17 +
   26.18 +    Uint8 r, g, b;
   26.19 +    /*  Come up with a random rectangle */
   26.20 +    SDL_Rect rect;
   26.21 +    rect.w = randomInt(64, 128);
   26.22 +    rect.h = randomInt(64, 128);
   26.23 +    rect.x = randomInt(0, SCREEN_WIDTH);
   26.24 +    rect.y = randomInt(0, SCREEN_HEIGHT);
   26.25 +
   26.26 +    /* Come up with a random color */
   26.27 +    r = randomInt(50, 255);
   26.28 +    g = randomInt(50, 255);
   26.29 +    b = randomInt(50, 255);
   26.30 +
   26.31 +    /*  Fill the rectangle in the color */
   26.32 +    SDL_SetRenderDrawColor(renderer, r, g, b, 255);
   26.33 +    SDL_RenderFillRect(renderer, &rect);
   26.34 +
   26.35 +    /* update screen */
   26.36 +    SDL_RenderPresent(renderer);
   26.37 +
   26.38 +}
   26.39 +
   26.40 +int
   26.41 +main(int argc, char *argv[])
   26.42 +{
   26.43 +
   26.44 +    SDL_Window *window;
   26.45 +	SDL_Renderer *renderer;
   26.46 +    int done;
   26.47 +    SDL_Event event;
   26.48 +
   26.49 +    /* initialize SDL */
   26.50 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
   26.51 +        fatalError("Could not initialize SDL");
   26.52 +    }
   26.53 +
   26.54 +    /* seed random number generator */
   26.55 +    srand(time(NULL));
   26.56 +
   26.57 +    /* create window and renderer */
   26.58 +    window =
   26.59 +        SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
   26.60 +                         SDL_WINDOW_SHOWN);
   26.61 +    if (window == 0) {
   26.62 +        fatalError("Could not initialize Window");
   26.63 +    }
   26.64 +    renderer = SDL_CreateRenderer(window, -1, 0);
   26.65 +	if (!renderer) {
   26.66 +        fatalError("Could not create renderer");
   26.67 +    }
   26.68 +
   26.69 +    /* Fill screen with black */
   26.70 +    SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255);
   26.71 +    SDL_RenderClear(renderer);
   26.72 +
   26.73 +    /* Enter render loop, waiting for user to quit */
   26.74 +    done = 0;
   26.75 +    while (!done) {
   26.76 +        while (SDL_PollEvent(&event)) {
   26.77 +            if (event.type == SDL_QUIT) {
   26.78 +                done = 1;
   26.79 +            }
   26.80 +        }
   26.81 +        render(renderer);
   26.82 +        SDL_Delay(1);
   26.83 +    }
   26.84 +
   26.85 +    /* shutdown SDL */
   26.86 +    SDL_Quit();
   26.87 +
   26.88 +    return 0;
   26.89 +}
    27.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    27.2 +++ b/Xcode-iOS/Demos/src/touch.c	Thu Jan 05 21:41:55 2012 -0500
    27.3 @@ -0,0 +1,125 @@
    27.4 +/*
    27.5 + *	touch.c
    27.6 + *	written by Holmes Futrell
    27.7 + *	use however you want
    27.8 + */
    27.9 +
   27.10 +#include "SDL.h"
   27.11 +#include "math.h"
   27.12 +#include "common.h"
   27.13 +
   27.14 +#define BRUSH_SIZE 32           /* width and height of the brush */
   27.15 +#define PIXELS_PER_ITERATION 5  /* number of pixels between brush blots when forming a line */
   27.16 +
   27.17 +static SDL_Texture *brush = 0;       /* texture for the brush */
   27.18 +
   27.19 +/*
   27.20 +	draws a line from (startx, starty) to (startx + dx, starty + dy)
   27.21 +	this is accomplished by drawing several blots spaced PIXELS_PER_ITERATION apart
   27.22 +*/
   27.23 +void
   27.24 +drawLine(SDL_Renderer *renderer, float startx, float starty, float dx, float dy)
   27.25 +{
   27.26 +
   27.27 +    float distance = sqrt(dx * dx + dy * dy);   /* length of line segment (pythagoras) */
   27.28 +    int iterations = distance / PIXELS_PER_ITERATION + 1;       /* number of brush sprites to draw for the line */
   27.29 +    float dx_prime = dx / iterations;   /* x-shift per iteration */
   27.30 +    float dy_prime = dy / iterations;   /* y-shift per iteration */
   27.31 +    SDL_Rect dstRect;           /* rect to draw brush sprite into */
   27.32 +
   27.33 +    dstRect.w = BRUSH_SIZE;
   27.34 +    dstRect.h = BRUSH_SIZE;
   27.35 +
   27.36 +    /* setup x and y for the location of the first sprite */
   27.37 +    float x = startx - BRUSH_SIZE / 2.0f;
   27.38 +    float y = starty - BRUSH_SIZE / 2.0f;
   27.39 +
   27.40 +    int i;
   27.41 +    /* draw a series of blots to form the line */
   27.42 +    for (i = 0; i < iterations; i++) {
   27.43 +        dstRect.x = x;
   27.44 +        dstRect.y = y;
   27.45 +        /* shift x and y for next sprite location */
   27.46 +        x += dx_prime;
   27.47 +        y += dy_prime;
   27.48 +        /* draw brush blot */
   27.49 +        SDL_RenderCopy(renderer, brush, NULL, &dstRect);
   27.50 +    }
   27.51 +}
   27.52 +
   27.53 +/*
   27.54 +	loads the brush texture
   27.55 +*/
   27.56 +void
   27.57 +initializeTexture(SDL_Renderer *renderer)
   27.58 +{
   27.59 +    SDL_Surface *bmp_surface;
   27.60 +    bmp_surface = SDL_LoadBMP("stroke.bmp");
   27.61 +    if (bmp_surface == NULL) {
   27.62 +        fatalError("could not load stroke.bmp");
   27.63 +    }
   27.64 +    brush =
   27.65 +        SDL_CreateTextureFromSurface(renderer, bmp_surface);
   27.66 +    SDL_FreeSurface(bmp_surface);
   27.67 +    if (brush == 0) {
   27.68 +        fatalError("could not create brush texture");
   27.69 +    }
   27.70 +    /* additive blending -- laying strokes on top of eachother makes them brighter */
   27.71 +    SDL_SetTextureBlendMode(brush, SDL_BLENDMODE_ADD);
   27.72 +    /* set brush color (red) */
   27.73 +    SDL_SetTextureColorMod(brush, 255, 100, 100);
   27.74 +}
   27.75 +
   27.76 +int
   27.77 +main(int argc, char *argv[])
   27.78 +{
   27.79 +
   27.80 +    int x, y, dx, dy;           /* mouse location          */
   27.81 +    Uint8 state;                /* mouse (touch) state */
   27.82 +    SDL_Event event;
   27.83 +    SDL_Window *window;         /* main window */
   27.84 +	SDL_Renderer *renderer;
   27.85 +    int done;                   /* does user want to quit? */
   27.86 +
   27.87 +    /* initialize SDL */
   27.88 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
   27.89 +        fatalError("Could not initialize SDL");
   27.90 +    }
   27.91 +
   27.92 +    /* create main window and renderer */
   27.93 +    window = SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
   27.94 +                                SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN |
   27.95 +                                SDL_WINDOW_BORDERLESS);
   27.96 +    renderer = SDL_CreateRenderer(window, 0, 0);
   27.97 +
   27.98 +    /*load brush texture */
   27.99 +    initializeTexture(renderer);
  27.100 +
  27.101 +    /* fill canvass initially with all black */
  27.102 +    SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255);
  27.103 +    SDL_RenderClear(renderer);
  27.104 +    SDL_RenderPresent(renderer);
  27.105 +
  27.106 +    done = 0;
  27.107 +    while (!done && SDL_WaitEvent(&event)) {
  27.108 +        switch (event.type) {
  27.109 +        case SDL_QUIT:
  27.110 +            done = 1;
  27.111 +            break;
  27.112 +        case SDL_MOUSEMOTION:
  27.113 +            state = SDL_GetMouseState(&x, &y);  /* get its location */
  27.114 +            SDL_GetRelativeMouseState(&dx, &dy);        /* find how much the mouse moved */
  27.115 +            if (state & SDL_BUTTON_LMASK) {     /* is the mouse (touch) down? */
  27.116 +                drawLine(renderer, x - dx, y - dy, dx, dy);       /* draw line segment */
  27.117 +                SDL_RenderPresent(renderer);
  27.118 +            }
  27.119 +            break;
  27.120 +        }
  27.121 +    }
  27.122 +
  27.123 +    /* cleanup */
  27.124 +    SDL_DestroyTexture(brush);
  27.125 +    SDL_Quit();
  27.126 +
  27.127 +    return 0;
  27.128 +}
    28.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    28.2 +++ b/Xcode-iOS/SDL/SDL.xcodeproj/project.pbxproj	Thu Jan 05 21:41:55 2012 -0500
    28.3 @@ -0,0 +1,1605 @@
    28.4 +// !$*UTF8*$!
    28.5 +{
    28.6 +	archiveVersion = 1;
    28.7 +	classes = {
    28.8 +	};
    28.9 +	objectVersion = 46;
   28.10 +	objects = {
   28.11 +
   28.12 +/* Begin PBXAggregateTarget section */
   28.13 +		00B4F48B12F6A69C0084EC00 /* PrepareXcodeProjectTemplate */ = {
   28.14 +			isa = PBXAggregateTarget;
   28.15 +			buildConfigurationList = 00B4F48E12F6A6BA0084EC00 /* Build configuration list for PBXAggregateTarget "PrepareXcodeProjectTemplate" */;
   28.16 +			buildPhases = (
   28.17 +				00B4F48A12F6A69C0084EC00 /* ShellScript */,
   28.18 +			);
   28.19 +			dependencies = (
   28.20 +			);
   28.21 +			name = PrepareXcodeProjectTemplate;
   28.22 +			productName = PrepareXcodeProjectTemplate;
   28.23 +		};
   28.24 +/* End PBXAggregateTarget section */
   28.25 +
   28.26 +/* Begin PBXBuildFile section */
   28.27 +		001E39A71196EE6F00A3F5B8 /* TestSupportRWops_Cocoa.m in Sources */ = {isa = PBXBuildFile; fileRef = 001E39A51196EE6F00A3F5B8 /* TestSupportRWops_Cocoa.m */; };
   28.28 +		006E9852119550FB001DE610 /* audio.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9831119550FB001DE610 /* audio.c */; };
   28.29 +		006E9853119550FB001DE610 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9834119550FB001DE610 /* common.c */; };
   28.30 +		006E9859119550FB001DE610 /* platform.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E983D119550FB001DE610 /* platform.c */; };
   28.31 +		006E985A119550FB001DE610 /* README in Resources */ = {isa = PBXBuildFile; fileRef = 006E983F119550FB001DE610 /* README */; };
   28.32 +		006E985B119550FB001DE610 /* rect.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9841119550FB001DE610 /* rect.c */; };
   28.33 +		006E985C119550FB001DE610 /* render.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9844119550FB001DE610 /* render.c */; };
   28.34 +		006E985D119550FB001DE610 /* read in Copy rwops */ = {isa = PBXBuildFile; fileRef = 006E9847119550FB001DE610 /* read */; };
   28.35 +		006E985E119550FB001DE610 /* rwops.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9848119550FB001DE610 /* rwops.c */; };
   28.36 +		006E9860119550FB001DE610 /* SDL_at.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E984C119550FB001DE610 /* SDL_at.c */; };
   28.37 +		006E9861119550FB001DE610 /* surface.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E984F119550FB001DE610 /* surface.c */; };
   28.38 +		006E9862119550FB001DE610 /* testsdl.c in Sources */ = {isa = PBXBuildFile; fileRef = 006E9851119550FB001DE610 /* testsdl.c */; };
   28.39 +		006E986A1195513D001DE610 /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = 006E98631195513D001DE610 /* icon.bmp */; };
   28.40 +		006E986B1195513D001DE610 /* moose.dat in Resources */ = {isa = PBXBuildFile; fileRef = 006E98641195513D001DE610 /* moose.dat */; };
   28.41 +		006E986C1195513D001DE610 /* picture.xbm in Resources */ = {isa = PBXBuildFile; fileRef = 006E98651195513D001DE610 /* picture.xbm */; };
   28.42 +		006E986E1195513D001DE610 /* sample.bmp in Resources */ = {isa = PBXBuildFile; fileRef = 006E98671195513D001DE610 /* sample.bmp */; };
   28.43 +		006E986F1195513D001DE610 /* sample.wav in Resources */ = {isa = PBXBuildFile; fileRef = 006E98681195513D001DE610 /* sample.wav */; };
   28.44 +		006E98701195513D001DE610 /* utf8.txt in Resources */ = {isa = PBXBuildFile; fileRef = 006E98691195513D001DE610 /* utf8.txt */; };
   28.45 +		006E9888119552DD001DE610 /* SDL_rwopsbundlesupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 006E9886119552DD001DE610 /* SDL_rwopsbundlesupport.h */; };
   28.46 +		006E9889119552DD001DE610 /* SDL_rwopsbundlesupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 006E9887119552DD001DE610 /* SDL_rwopsbundlesupport.m */; };
   28.47 +		006E988C119552FC001DE610 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD6526630DE8FCCB002AD96B /* libSDL.a */; };
   28.48 +		0098A55B1195B4D900343137 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A55A1195B4D900343137 /* AudioToolbox.framework */; };
   28.49 +		0098A55F1195B4D900343137 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A55E1195B4D900343137 /* CoreAudio.framework */; };
   28.50 +		0098A5611195B4D900343137 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A5601195B4D900343137 /* CoreGraphics.framework */; };
   28.51 +		0098A5631195B4D900343137 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A5621195B4D900343137 /* OpenGLES.framework */; };
   28.52 +		0098A5651195B4D900343137 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A5641195B4D900343137 /* UIKit.framework */; };
   28.53 +		0098A5851195B5E200343137 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0098A5841195B5E200343137 /* QuartzCore.framework */; };
   28.54 +		0402A85812FE70C600CECEE3 /* SDL_render_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 0402A85512FE70C600CECEE3 /* SDL_render_gles2.c */; };
   28.55 +		0402A85912FE70C600CECEE3 /* SDL_shaders_gles2.c in Sources */ = {isa = PBXBuildFile; fileRef = 0402A85612FE70C600CECEE3 /* SDL_shaders_gles2.c */; };
   28.56 +		0402A85A12FE70C600CECEE3 /* SDL_shaders_gles2.h in Headers */ = {isa = PBXBuildFile; fileRef = 0402A85712FE70C600CECEE3 /* SDL_shaders_gles2.h */; };
   28.57 +		04043B8D12FEA9350076DB1F /* SDL_opengles2.h in Headers */ = {isa = PBXBuildFile; fileRef = 04043B8C12FEA9350076DB1F /* SDL_opengles2.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.58 +		0417A516130C988500578583 /* SDL_keycode.h in Headers */ = {isa = PBXBuildFile; fileRef = 0417A515130C988500578583 /* SDL_keycode.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.59 +		041B2CD912FA0E9E0087D585 /* SDL_render.h in Headers */ = {isa = PBXBuildFile; fileRef = 041B2CD812FA0E9E0087D585 /* SDL_render.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.60 +		041B2CF112FA0F680087D585 /* SDL_render.c in Sources */ = {isa = PBXBuildFile; fileRef = 041B2CEA12FA0F680087D585 /* SDL_render.c */; };
   28.61 +		041B2CF212FA0F680087D585 /* SDL_sysrender.h in Headers */ = {isa = PBXBuildFile; fileRef = 041B2CEB12FA0F680087D585 /* SDL_sysrender.h */; };
   28.62 +		0420497011E6F03D007E7EC9 /* SDL_clipboardevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0420496E11E6F03D007E7EC9 /* SDL_clipboardevents_c.h */; };
   28.63 +		0420497111E6F03D007E7EC9 /* SDL_clipboardevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 0420496F11E6F03D007E7EC9 /* SDL_clipboardevents.c */; };
   28.64 +		04409BA612FA989600FB9AA8 /* mmx.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409BA212FA989600FB9AA8 /* mmx.h */; };
   28.65 +		04409BA712FA989600FB9AA8 /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */; };
   28.66 +		04409BA812FA989600FB9AA8 /* SDL_yuv_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */; };
   28.67 +		04409BA912FA989600FB9AA8 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */; };
   28.68 +		0442EC4B12FE1BFF004C9285 /* SDL_hints.h in Headers */ = {isa = PBXBuildFile; fileRef = 0442EC4A12FE1BFF004C9285 /* SDL_hints.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.69 +		0442EC5012FE1C1E004C9285 /* SDL_render_sw_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0442EC4E12FE1C1E004C9285 /* SDL_render_sw_c.h */; };
   28.70 +		0442EC5112FE1C1E004C9285 /* SDL_render_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 0442EC4F12FE1C1E004C9285 /* SDL_render_sw.c */; };
   28.71 +		0442EC5312FE1C28004C9285 /* SDL_render_gles.c in Sources */ = {isa = PBXBuildFile; fileRef = 0442EC5212FE1C28004C9285 /* SDL_render_gles.c */; };
   28.72 +		0442EC5512FE1C3F004C9285 /* SDL_hints.c in Sources */ = {isa = PBXBuildFile; fileRef = 0442EC5412FE1C3F004C9285 /* SDL_hints.c */; };
   28.73 +		04461DEE0EA76BA3006C462D /* SDL_haptic.h in Headers */ = {isa = PBXBuildFile; fileRef = 04461DED0EA76BA3006C462D /* SDL_haptic.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.74 +		044E5FB511E6069F0076F181 /* SDL_clipboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 044E5FB311E6069F0076F181 /* SDL_clipboard.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.75 +		044E5FB611E6069F0076F181 /* SDL_input.h in Headers */ = {isa = PBXBuildFile; fileRef = 044E5FB411E6069F0076F181 /* SDL_input.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.76 +		044E5FB811E606EB0076F181 /* SDL_clipboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 044E5FB711E606EB0076F181 /* SDL_clipboard.c */; };
   28.77 +		046387420F0B5B7D0041FD65 /* SDL_blit_slow.h in Headers */ = {isa = PBXBuildFile; fileRef = 0463873A0F0B5B7D0041FD65 /* SDL_blit_slow.h */; };
   28.78 +		046387460F0B5B7D0041FD65 /* SDL_fillrect.c in Sources */ = {isa = PBXBuildFile; fileRef = 0463873E0F0B5B7D0041FD65 /* SDL_fillrect.c */; };
   28.79 +		047677BB0EA76A31008ABAF1 /* SDL_syshaptic.c in Sources */ = {isa = PBXBuildFile; fileRef = 047677B80EA76A31008ABAF1 /* SDL_syshaptic.c */; };
   28.80 +		047677BC0EA76A31008ABAF1 /* SDL_haptic.c in Sources */ = {isa = PBXBuildFile; fileRef = 047677B90EA76A31008ABAF1 /* SDL_haptic.c */; };
   28.81 +		047677BD0EA76A31008ABAF1 /* SDL_syshaptic.h in Headers */ = {isa = PBXBuildFile; fileRef = 047677BA0EA76A31008ABAF1 /* SDL_syshaptic.h */; };
   28.82 +		047AF1B30EA98D6C00811173 /* SDL_sysloadso.c in Sources */ = {isa = PBXBuildFile; fileRef = 047AF1B20EA98D6C00811173 /* SDL_sysloadso.c */; };
   28.83 +		04B2ECEC1025CE4800F9BC5F /* SDL_atomic.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B2ECE61025CE4800F9BC5F /* SDL_atomic.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.84 +		04B2ECED1025CE4800F9BC5F /* SDL_power.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B2ECE71025CE4800F9BC5F /* SDL_power.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.85 +		04B2ECEE1025CE4800F9BC5F /* SDL_revision.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B2ECE81025CE4800F9BC5F /* SDL_revision.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.86 +		04B2ED081025CF9E00F9BC5F /* SDL_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 04B2ED061025CF9E00F9BC5F /* SDL_config.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.87 +		04BA9D6311EF474A00B60E01 /* SDL_gesture_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BA9D5F11EF474A00B60E01 /* SDL_gesture_c.h */; };
   28.88 +		04BA9D6411EF474A00B60E01 /* SDL_gesture.c in Sources */ = {isa = PBXBuildFile; fileRef = 04BA9D6011EF474A00B60E01 /* SDL_gesture.c */; };
   28.89 +		04BA9D6511EF474A00B60E01 /* SDL_touch_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BA9D6111EF474A00B60E01 /* SDL_touch_c.h */; };
   28.90 +		04BA9D6611EF474A00B60E01 /* SDL_touch.c in Sources */ = {isa = PBXBuildFile; fileRef = 04BA9D6211EF474A00B60E01 /* SDL_touch.c */; };
   28.91 +		04BA9D7D11EF497E00B60E01 /* SDL_gesture.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BA9D7B11EF497E00B60E01 /* SDL_gesture.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.92 +		04BA9D7E11EF497E00B60E01 /* SDL_touch.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BA9D7C11EF497E00B60E01 /* SDL_touch.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.93 +		04BAC0991300C0F70055DE28 /* SDL_log.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BAC0981300C0F70055DE28 /* SDL_log.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.94 +		04BAC09C1300C1290055DE28 /* SDL_assert_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04BAC09A1300C1290055DE28 /* SDL_assert_c.h */; };
   28.95 +		04BAC09D1300C1290055DE28 /* SDL_log.c in Sources */ = {isa = PBXBuildFile; fileRef = 04BAC09B1300C1290055DE28 /* SDL_log.c */; };
   28.96 +		04EC8B521025D12900431D42 /* SDL_config_iphoneos.h in Headers */ = {isa = PBXBuildFile; fileRef = 04EC8B501025D12900431D42 /* SDL_config_iphoneos.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.97 +		04F2AF541104ABC300D6DDF7 /* SDL_assert.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F2AF531104ABC300D6DDF7 /* SDL_assert.h */; settings = {ATTRIBUTES = (Public, ); }; };
   28.98 +		04F2AF561104ABD200D6DDF7 /* SDL_assert.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F2AF551104ABD200D6DDF7 /* SDL_assert.c */; };
   28.99 +		04F7807612FB751400FC43C0 /* SDL_blendfillrect.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7806A12FB751400FC43C0 /* SDL_blendfillrect.c */; };
  28.100 +		04F7807712FB751400FC43C0 /* SDL_blendfillrect.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7806B12FB751400FC43C0 /* SDL_blendfillrect.h */; };
  28.101 +		04F7807812FB751400FC43C0 /* SDL_blendline.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7806C12FB751400FC43C0 /* SDL_blendline.c */; };
  28.102 +		04F7807912FB751400FC43C0 /* SDL_blendline.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7806D12FB751400FC43C0 /* SDL_blendline.h */; };
  28.103 +		04F7807A12FB751400FC43C0 /* SDL_blendpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7806E12FB751400FC43C0 /* SDL_blendpoint.c */; };
  28.104 +		04F7807B12FB751400FC43C0 /* SDL_blendpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7806F12FB751400FC43C0 /* SDL_blendpoint.h */; };
  28.105 +		04F7807C12FB751400FC43C0 /* SDL_draw.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7807012FB751400FC43C0 /* SDL_draw.h */; };
  28.106 +		04F7807D12FB751400FC43C0 /* SDL_drawline.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7807112FB751400FC43C0 /* SDL_drawline.c */; };
  28.107 +		04F7807E12FB751400FC43C0 /* SDL_drawline.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7807212FB751400FC43C0 /* SDL_drawline.h */; };
  28.108 +		04F7807F12FB751400FC43C0 /* SDL_drawpoint.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7807312FB751400FC43C0 /* SDL_drawpoint.c */; };
  28.109 +		04F7808012FB751400FC43C0 /* SDL_drawpoint.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7807412FB751400FC43C0 /* SDL_drawpoint.h */; };
  28.110 +		04F7808412FB753F00FC43C0 /* SDL_nullframebuffer_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 04F7808212FB753F00FC43C0 /* SDL_nullframebuffer_c.h */; };
  28.111 +		04F7808512FB753F00FC43C0 /* SDL_nullframebuffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 04F7808312FB753F00FC43C0 /* SDL_nullframebuffer.c */; };
  28.112 +		04FFAB8B12E23B8D00BA343D /* SDL_atomic.c in Sources */ = {isa = PBXBuildFile; fileRef = 04FFAB8912E23B8D00BA343D /* SDL_atomic.c */; };
  28.113 +		04FFAB8C12E23B8D00BA343D /* SDL_spinlock.c in Sources */ = {isa = PBXBuildFile; fileRef = 04FFAB8A12E23B8D00BA343D /* SDL_spinlock.c */; };
  28.114 +		04FFAB9612E23BDC00BA343D /* SDL_blendmode.h in Headers */ = {isa = PBXBuildFile; fileRef = 04FFAB9312E23BDC00BA343D /* SDL_blendmode.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.115 +		04FFAB9812E23BDC00BA343D /* SDL_shape.h in Headers */ = {isa = PBXBuildFile; fileRef = 04FFAB9512E23BDC00BA343D /* SDL_shape.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.116 +		22C905CD13A22646003FE4E4 /* SDL_hints_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 22C905CC13A22646003FE4E4 /* SDL_hints_c.h */; };
  28.117 +		56EA86FB13E9EC2B002E47EB /* SDL_coreaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = 56EA86F913E9EC2B002E47EB /* SDL_coreaudio.c */; };
  28.118 +		56EA86FC13E9EC2B002E47EB /* SDL_coreaudio.h in Headers */ = {isa = PBXBuildFile; fileRef = 56EA86FA13E9EC2B002E47EB /* SDL_coreaudio.h */; };
  28.119 +		56ED04E1118A8EE200A56AA6 /* SDL_power.c in Sources */ = {isa = PBXBuildFile; fileRef = 56ED04E0118A8EE200A56AA6 /* SDL_power.c */; };
  28.120 +		56ED04E3118A8EFD00A56AA6 /* SDL_syspower.m in Sources */ = {isa = PBXBuildFile; fileRef = 56ED04E2118A8EFD00A56AA6 /* SDL_syspower.m */; };
  28.121 +		93CB792313FC5E5200BD3E05 /* SDL_uikitviewcontroller.h in Headers */ = {isa = PBXBuildFile; fileRef = 93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */; };
  28.122 +		93CB792613FC5F5300BD3E05 /* SDL_uikitviewcontroller.m in Sources */ = {isa = PBXBuildFile; fileRef = 93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */; };
  28.123 +		FD24846D0E5655AE0021E198 /* SDL_uikitkeyboard.h in Headers */ = {isa = PBXBuildFile; fileRef = FD24846B0E5655AE0021E198 /* SDL_uikitkeyboard.h */; };
  28.124 +		FD3F495C0DEA5B2100C5B771 /* begin_code.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8CC0DD52EB400FB1D6B /* begin_code.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.125 +		FD3F495D0DEA5B2100C5B771 /* close_code.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8CD0DD52EB400FB1D6B /* close_code.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.126 +		FD3F495F0DEA5B2100C5B771 /* SDL_audio.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8CF0DD52EB400FB1D6B /* SDL_audio.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.127 +		FD3F49610DEA5B2100C5B771 /* SDL_compat.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8D10DD52EB400FB1D6B /* SDL_compat.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.128 +		FD3F49690DEA5B2100C5B771 /* SDL_copying.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DA0DD52EB400FB1D6B /* SDL_copying.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.129 +		FD3F496A0DEA5B2100C5B771 /* SDL_cpuinfo.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DB0DD52EB400FB1D6B /* SDL_cpuinfo.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.130 +		FD3F496B0DEA5B2100C5B771 /* SDL_error.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DC0DD52EB400FB1D6B /* SDL_error.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.131 +		FD3F496C0DEA5B2100C5B771 /* SDL_events.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DD0DD52EB400FB1D6B /* SDL_events.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.132 +		FD3F496D0DEA5B2100C5B771 /* SDL_joystick.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DE0DD52EB400FB1D6B /* SDL_joystick.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.133 +		FD3F496E0DEA5B2100C5B771 /* SDL_keyboard.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8DF0DD52EB400FB1D6B /* SDL_keyboard.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.134 +		FD3F49700DEA5B2100C5B771 /* SDL_loadso.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E10DD52EB400FB1D6B /* SDL_loadso.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.135 +		FD3F49710DEA5B2100C5B771 /* SDL_main.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E20DD52EB400FB1D6B /* SDL_main.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.136 +		FD3F49720DEA5B2100C5B771 /* SDL_mouse.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E30DD52EB400FB1D6B /* SDL_mouse.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.137 +		FD3F49730DEA5B2100C5B771 /* SDL_mutex.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E40DD52EB400FB1D6B /* SDL_mutex.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.138 +		FD3F49740DEA5B2100C5B771 /* SDL_name.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E50DD52EB400FB1D6B /* SDL_name.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.139 +		FD3F49750DEA5B2100C5B771 /* SDL_opengl.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E60DD52EB400FB1D6B /* SDL_opengl.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.140 +		FD3F49760DEA5B2100C5B771 /* SDL_pixels.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E70DD52EB400FB1D6B /* SDL_pixels.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.141 +		FD3F49770DEA5B2100C5B771 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E80DD52EB400FB1D6B /* SDL_platform.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.142 +		FD3F49780DEA5B2100C5B771 /* SDL_quit.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8E90DD52EB400FB1D6B /* SDL_quit.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.143 +		FD3F49790DEA5B2100C5B771 /* SDL_rect.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8EA0DD52EB400FB1D6B /* SDL_rect.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.144 +		FD3F497A0DEA5B2100C5B771 /* SDL_rwops.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8EB0DD52EB400FB1D6B /* SDL_rwops.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.145 +		FD3F497B0DEA5B2100C5B771 /* SDL_scancode.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8EC0DD52EB400FB1D6B /* SDL_scancode.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.146 +		FD3F497C0DEA5B2100C5B771 /* SDL_stdinc.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8ED0DD52EB400FB1D6B /* SDL_stdinc.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.147 +		FD3F497D0DEA5B2100C5B771 /* SDL_surface.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8EE0DD52EB400FB1D6B /* SDL_surface.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.148 +		FD3F497E0DEA5B2100C5B771 /* SDL_syswm.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8EF0DD52EB400FB1D6B /* SDL_syswm.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.149 +		FD3F497F0DEA5B2100C5B771 /* SDL_thread.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F00DD52EB400FB1D6B /* SDL_thread.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.150 +		FD3F49800DEA5B2100C5B771 /* SDL_timer.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F10DD52EB400FB1D6B /* SDL_timer.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.151 +		FD3F49810DEA5B2100C5B771 /* SDL_types.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F20DD52EB400FB1D6B /* SDL_types.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.152 +		FD3F49820DEA5B2100C5B771 /* SDL_version.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F30DD52EB400FB1D6B /* SDL_version.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.153 +		FD3F49830DEA5B2100C5B771 /* SDL_video.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F40DD52EB400FB1D6B /* SDL_video.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.154 +		FD3F49840DEA5B2100C5B771 /* SDL.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F50DD52EB400FB1D6B /* SDL.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.155 +		FD3F49850DEA5B2100C5B771 /* SDL_endian.h in Headers */ = {isa = PBXBuildFile; fileRef = FD99B8F60DD52EB400FB1D6B /* SDL_endian.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.156 +		FD3F4A760DEA620800C5B771 /* SDL_getenv.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A700DEA620800C5B771 /* SDL_getenv.c */; };
  28.157 +		FD3F4A770DEA620800C5B771 /* SDL_iconv.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A710DEA620800C5B771 /* SDL_iconv.c */; };
  28.158 +		FD3F4A780DEA620800C5B771 /* SDL_malloc.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A720DEA620800C5B771 /* SDL_malloc.c */; };
  28.159 +		FD3F4A790DEA620800C5B771 /* SDL_qsort.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A730DEA620800C5B771 /* SDL_qsort.c */; };
  28.160 +		FD3F4A7A0DEA620800C5B771 /* SDL_stdlib.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A740DEA620800C5B771 /* SDL_stdlib.c */; };
  28.161 +		FD3F4A7B0DEA620800C5B771 /* SDL_string.c in Sources */ = {isa = PBXBuildFile; fileRef = FD3F4A750DEA620800C5B771 /* SDL_string.c */; };
  28.162 +		FD5F9D2F0E0E08B3008E885B /* SDL_joystick.c in Sources */ = {isa = PBXBuildFile; fileRef = FD5F9D1E0E0E08B3008E885B /* SDL_joystick.c */; };
  28.163 +		FD5F9D300E0E08B3008E885B /* SDL_joystick_c.h in Headers */ = {isa = PBXBuildFile; fileRef = FD5F9D1F0E0E08B3008E885B /* SDL_joystick_c.h */; };
  28.164 +		FD5F9D310E0E08B3008E885B /* SDL_sysjoystick.h in Headers */ = {isa = PBXBuildFile; fileRef = FD5F9D200E0E08B3008E885B /* SDL_sysjoystick.h */; };
  28.165 +		FD6526660DE8FCDD002AD96B /* SDL_dummyaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B91D0DD52EDC00FB1D6B /* SDL_dummyaudio.c */; };
  28.166 +		FD6526670DE8FCDD002AD96B /* SDL_audio.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9440DD52EDC00FB1D6B /* SDL_audio.c */; };
  28.167 +		FD6526680DE8FCDD002AD96B /* SDL_audiocvt.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9460DD52EDC00FB1D6B /* SDL_audiocvt.c */; };
  28.168 +		FD65266A0DE8FCDD002AD96B /* SDL_audiotypecvt.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B94A0DD52EDC00FB1D6B /* SDL_audiotypecvt.c */; };
  28.169 +		FD65266B0DE8FCDD002AD96B /* SDL_mixer.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B94B0DD52EDC00FB1D6B /* SDL_mixer.c */; };
  28.170 +		FD65266F0DE8FCDD002AD96B /* SDL_wave.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9530DD52EDC00FB1D6B /* SDL_wave.c */; };
  28.171 +		FD6526700DE8FCDD002AD96B /* SDL_cpuinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B98B0DD52EDC00FB1D6B /* SDL_cpuinfo.c */; };
  28.172 +		FD6526710DE8FCDD002AD96B /* SDL_events.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9930DD52EDC00FB1D6B /* SDL_events.c */; };
  28.173 +		FD6526720DE8FCDD002AD96B /* SDL_keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9950DD52EDC00FB1D6B /* SDL_keyboard.c */; };
  28.174 +		FD6526730DE8FCDD002AD96B /* SDL_mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9970DD52EDC00FB1D6B /* SDL_mouse.c */; };
  28.175 +		FD6526740DE8FCDD002AD96B /* SDL_quit.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9990DD52EDC00FB1D6B /* SDL_quit.c */; };
  28.176 +		FD6526750DE8FCDD002AD96B /* SDL_windowevents.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B99B0DD52EDC00FB1D6B /* SDL_windowevents.c */; };
  28.177 +		FD6526760DE8FCDD002AD96B /* SDL_rwops.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B99E0DD52EDC00FB1D6B /* SDL_rwops.c */; };
  28.178 +		FD6526770DE8FCDD002AD96B /* SDL_compat.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9D30DD52EDC00FB1D6B /* SDL_compat.c */; };
  28.179 +		FD6526780DE8FCDD002AD96B /* SDL_error.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9D50DD52EDC00FB1D6B /* SDL_error.c */; };
  28.180 +		FD6526790DE8FCDD002AD96B /* SDL_fatal.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9D60DD52EDC00FB1D6B /* SDL_fatal.c */; };
  28.181 +		FD65267A0DE8FCDD002AD96B /* SDL.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99B9D80DD52EDC00FB1D6B /* SDL.c */; };
  28.182 +		FD65267B0DE8FCDD002AD96B /* SDL_syscond.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA070DD52EDC00FB1D6B /* SDL_syscond.c */; };
  28.183 +		FD65267C0DE8FCDD002AD96B /* SDL_sysmutex.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA080DD52EDC00FB1D6B /* SDL_sysmutex.c */; };
  28.184 +		FD65267D0DE8FCDD002AD96B /* SDL_syssem.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA0A0DD52EDC00FB1D6B /* SDL_syssem.c */; };
  28.185 +		FD65267E0DE8FCDD002AD96B /* SDL_systhread.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA0B0DD52EDC00FB1D6B /* SDL_systhread.c */; };
  28.186 +		FD65267F0DE8FCDD002AD96B /* SDL_thread.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA150DD52EDC00FB1D6B /* SDL_thread.c */; };
  28.187 +		FD6526800DE8FCDD002AD96B /* SDL_timer.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA2E0DD52EDC00FB1D6B /* SDL_timer.c */; };
  28.188 +		FD6526810DE8FCDD002AD96B /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = FD99BA310DD52EDC00FB1D6B /* SDL_systimer.c */; };
  28.189 +		FD689F030E26E5B600F90B21 /* SDL_sysjoystick.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F000E26E5B600F90B21 /* SDL_sysjoystick.m */; };
  28.190 +		FD689F040E26E5B600F90B21 /* SDLUIAccelerationDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F010E26E5B600F90B21 /* SDLUIAccelerationDelegate.h */; };
  28.191 +		FD689F050E26E5B600F90B21 /* SDLUIAccelerationDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F020E26E5B600F90B21 /* SDLUIAccelerationDelegate.m */; };
  28.192 +		FD689F1C0E26E5D900F90B21 /* SDL_uikitevents.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F0C0E26E5D900F90B21 /* SDL_uikitevents.h */; };
  28.193 +		FD689F1D0E26E5D900F90B21 /* SDL_uikitevents.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F0D0E26E5D900F90B21 /* SDL_uikitevents.m */; };
  28.194 +		FD689F1E0E26E5D900F90B21 /* SDL_uikitopengles.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F0E0E26E5D900F90B21 /* SDL_uikitopengles.h */; };
  28.195 +		FD689F1F0E26E5D900F90B21 /* SDL_uikitopengles.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F0F0E26E5D900F90B21 /* SDL_uikitopengles.m */; };
  28.196 +		FD689F200E26E5D900F90B21 /* SDL_uikitvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F100E26E5D900F90B21 /* SDL_uikitvideo.h */; };
  28.197 +		FD689F210E26E5D900F90B21 /* SDL_uikitvideo.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F110E26E5D900F90B21 /* SDL_uikitvideo.m */; };
  28.198 +		FD689F230E26E5D900F90B21 /* SDL_uikitview.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F130E26E5D900F90B21 /* SDL_uikitview.m */; };
  28.199 +		FD689F240E26E5D900F90B21 /* SDL_uikitwindow.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F140E26E5D900F90B21 /* SDL_uikitwindow.h */; };
  28.200 +		FD689F250E26E5D900F90B21 /* SDL_uikitwindow.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F150E26E5D900F90B21 /* SDL_uikitwindow.m */; };
  28.201 +		FD689F260E26E5D900F90B21 /* SDL_uikitopenglview.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689F160E26E5D900F90B21 /* SDL_uikitopenglview.h */; };
  28.202 +		FD689F270E26E5D900F90B21 /* SDL_uikitopenglview.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689F170E26E5D900F90B21 /* SDL_uikitopenglview.m */; };
  28.203 +		FD689FCE0E26E9D400F90B21 /* SDL_uikitappdelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = FD689FCC0E26E9D400F90B21 /* SDL_uikitappdelegate.m */; };
  28.204 +		FD689FCF0E26E9D400F90B21 /* SDL_uikitappdelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = FD689FCD0E26E9D400F90B21 /* SDL_uikitappdelegate.h */; };
  28.205 +		FD8BD7AC0E27DCA400B52CD5 /* SDL_opengles.h in Headers */ = {isa = PBXBuildFile; fileRef = FD8BD7AB0E27DCA400B52CD5 /* SDL_opengles.h */; settings = {ATTRIBUTES = (Public, ); }; };
  28.206 +		FD8BD8250E27E25900B52CD5 /* SDL_sysloadso.c in Sources */ = {isa = PBXBuildFile; fileRef = FD8BD8190E27E25900B52CD5 /* SDL_sysloadso.c */; };
  28.207 +		FDA6844D0DF2374E00F98A1A /* SDL_blit.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683000DF2374E00F98A1A /* SDL_blit.c */; };
  28.208 +		FDA6844E0DF2374E00F98A1A /* SDL_blit.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA683010DF2374E00F98A1A /* SDL_blit.h */; };
  28.209 +		FDA6844F0DF2374E00F98A1A /* SDL_blit_0.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683020DF2374E00F98A1A /* SDL_blit_0.c */; };
  28.210 +		FDA684500DF2374E00F98A1A /* SDL_blit_1.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683030DF2374E00F98A1A /* SDL_blit_1.c */; };
  28.211 +		FDA684510DF2374E00F98A1A /* SDL_blit_A.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683040DF2374E00F98A1A /* SDL_blit_A.c */; };
  28.212 +		FDA684520DF2374E00F98A1A /* SDL_blit_auto.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683050DF2374E00F98A1A /* SDL_blit_auto.c */; };
  28.213 +		FDA684530DF2374E00F98A1A /* SDL_blit_auto.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA683060DF2374E00F98A1A /* SDL_blit_auto.h */; };
  28.214 +		FDA684540DF2374E00F98A1A /* SDL_blit_copy.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683070DF2374E00F98A1A /* SDL_blit_copy.c */; };
  28.215 +		FDA684550DF2374E00F98A1A /* SDL_blit_copy.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA683080DF2374E00F98A1A /* SDL_blit_copy.h */; };
  28.216 +		FDA684560DF2374E00F98A1A /* SDL_blit_N.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683090DF2374E00F98A1A /* SDL_blit_N.c */; };
  28.217 +		FDA684570DF2374E00F98A1A /* SDL_blit_slow.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA6830A0DF2374E00F98A1A /* SDL_blit_slow.c */; };
  28.218 +		FDA684580DF2374E00F98A1A /* SDL_bmp.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA6830B0DF2374E00F98A1A /* SDL_bmp.c */; };
  28.219 +		FDA6845C0DF2374E00F98A1A /* SDL_pixels.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA6830F0DF2374E00F98A1A /* SDL_pixels.c */; };
  28.220 +		FDA6845D0DF2374E00F98A1A /* SDL_pixels_c.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA683100DF2374E00F98A1A /* SDL_pixels_c.h */; };
  28.221 +		FDA6845E0DF2374E00F98A1A /* SDL_rect.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683110DF2374E00F98A1A /* SDL_rect.c */; };
  28.222 +		FDA684620DF2374E00F98A1A /* SDL_RLEaccel.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683150DF2374E00F98A1A /* SDL_RLEaccel.c */; };
  28.223 +		FDA684630DF2374E00F98A1A /* SDL_RLEaccel_c.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA683160DF2374E00F98A1A /* SDL_RLEaccel_c.h */; };
  28.224 +		FDA684640DF2374E00F98A1A /* SDL_stretch.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683170DF2374E00F98A1A /* SDL_stretch.c */; };
  28.225 +		FDA684660DF2374E00F98A1A /* SDL_surface.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA683190DF2374E00F98A1A /* SDL_surface.c */; };
  28.226 +		FDA684670DF2374E00F98A1A /* SDL_sysvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA6831A0DF2374E00F98A1A /* SDL_sysvideo.h */; };
  28.227 +		FDA684680DF2374E00F98A1A /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA6831B0DF2374E00F98A1A /* SDL_video.c */; };
  28.228 +		FDA685FB0DF244C800F98A1A /* SDL_nullevents.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA685F50DF244C800F98A1A /* SDL_nullevents.c */; };
  28.229 +		FDA685FC0DF244C800F98A1A /* SDL_nullevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA685F60DF244C800F98A1A /* SDL_nullevents_c.h */; };
  28.230 +		FDA685FF0DF244C800F98A1A /* SDL_nullvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA685F90DF244C800F98A1A /* SDL_nullvideo.c */; };
  28.231 +		FDA686000DF244C800F98A1A /* SDL_nullvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = FDA685FA0DF244C800F98A1A /* SDL_nullvideo.h */; };
  28.232 +		FDC656480E560DF800311C8E /* jumphack.c in Sources */ = {isa = PBXBuildFile; fileRef = FDC656440E560DF800311C8E /* jumphack.c */; };
  28.233 +		FDC656490E560DF800311C8E /* jumphack.h in Headers */ = {isa = PBXBuildFile; fileRef = FDC656450E560DF800311C8E /* jumphack.h */; };
  28.234 +/* End PBXBuildFile section */
  28.235 +
  28.236 +/* Begin PBXContainerItemProxy section */
  28.237 +		006E982A11955065001DE610 /* PBXContainerItemProxy */ = {
  28.238 +			isa = PBXContainerItemProxy;
  28.239 +			containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */;
  28.240 +			proxyType = 1;
  28.241 +			remoteGlobalIDString = FD6526620DE8FCCB002AD96B;
  28.242 +			remoteInfo = StaticLib;
  28.243 +		};
  28.244 +/* End PBXContainerItemProxy section */
  28.245 +
  28.246 +/* Begin PBXCopyFilesBuildPhase section */
  28.247 +		006E9881119551D0001DE610 /* Copy rwops */ = {
  28.248 +			isa = PBXCopyFilesBuildPhase;
  28.249 +			buildActionMask = 2147483647;
  28.250 +			dstPath = rwops;
  28.251 +			dstSubfolderSpec = 7;
  28.252 +			files = (
  28.253 +				006E985D119550FB001DE610 /* read in Copy rwops */,
  28.254 +			);
  28.255 +			name = "Copy rwops";
  28.256 +			runOnlyForDeploymentPostprocessing = 0;
  28.257 +		};
  28.258 +/* End PBXCopyFilesBuildPhase section */
  28.259 +
  28.260 +/* Begin PBXFileReference section */
  28.261 +		001E39A51196EE6F00A3F5B8 /* TestSupportRWops_Cocoa.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TestSupportRWops_Cocoa.m; sourceTree = "<group>"; };
  28.262 +		001E39A61196EE6F00A3F5B8 /* TestSupportRWops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TestSupportRWops.h; sourceTree = "<group>"; };
  28.263 +		006E982211955059001DE610 /* testsdl.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testsdl.app; sourceTree = BUILT_PRODUCTS_DIR; };
  28.264 +		006E982411955059001DE610 /* testsdl-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "testsdl-Info.plist"; sourceTree = "<group>"; };
  28.265 +		006E9831119550FB001DE610 /* audio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = audio.c; sourceTree = "<group>"; };
  28.266 +		006E9832119550FB001DE610 /* audio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = audio.h; sourceTree = "<group>"; };
  28.267 +		006E9834119550FB001DE610 /* common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = common.c; sourceTree = "<group>"; };
  28.268 +		006E9835119550FB001DE610 /* common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = common.h; sourceTree = "<group>"; };
  28.269 +		006E9836119550FB001DE610 /* images.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = images.h; sourceTree = "<group>"; };
  28.270 +		006E9837119550FB001DE610 /* img_blit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = img_blit.c; sourceTree = "<group>"; };
  28.271 +		006E9838119550FB001DE610 /* img_blitblend.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = img_blitblend.c; sourceTree = "<group>"; };
  28.272 +		006E9839119550FB001DE610 /* img_face.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = img_face.c; sourceTree = "<group>"; };
  28.273 +		006E983A119550FB001DE610 /* img_primitives.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = img_primitives.c; sourceTree = "<group>"; };
  28.274 +		006E983B119550FB001DE610 /* img_primitivesblend.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = img_primitivesblend.c; sourceTree = "<group>"; };
  28.275 +		006E983D119550FB001DE610 /* platform.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = platform.c; sourceTree = "<group>"; };
  28.276 +		006E983E119550FB001DE610 /* platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = platform.h; sourceTree = "<group>"; };
  28.277 +		006E983F119550FB001DE610 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = README; path = ../../test/automated/README; sourceTree = SOURCE_ROOT; };
  28.278 +		006E9841119550FB001DE610 /* rect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rect.c; sourceTree = "<group>"; };
  28.279 +		006E9842119550FB001DE610 /* rect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rect.h; sourceTree = "<group>"; };
  28.280 +		006E9844119550FB001DE610 /* render.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = render.c; sourceTree = "<group>"; };
  28.281 +		006E9845119550FB001DE610 /* render.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = render.h; sourceTree = "<group>"; };
  28.282 +		006E9847119550FB001DE610 /* read */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = read; sourceTree = "<group>"; };
  28.283 +		006E9848119550FB001DE610 /* rwops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = rwops.c; sourceTree = "<group>"; };
  28.284 +		006E9849119550FB001DE610 /* rwops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = rwops.h; sourceTree = "<group>"; };
  28.285 +		006E984C119550FB001DE610 /* SDL_at.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_at.c; path = ../../test/automated/SDL_at.c; sourceTree = SOURCE_ROOT; };
  28.286 +		006E984D119550FB001DE610 /* SDL_at.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_at.h; path = ../../test/automated/SDL_at.h; sourceTree = SOURCE_ROOT; };
  28.287 +		006E984F119550FB001DE610 /* surface.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = surface.c; sourceTree = "<group>"; };
  28.288 +		006E9850119550FB001DE610 /* surface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = surface.h; sourceTree = "<group>"; };
  28.289 +		006E9851119550FB001DE610 /* testsdl.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testsdl.c; path = ../../test/automated/testsdl.c; sourceTree = SOURCE_ROOT; };
  28.290 +		006E98631195513D001DE610 /* icon.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = icon.bmp; path = ../../test/icon.bmp; sourceTree = SOURCE_ROOT; };
  28.291 +		006E98641195513D001DE610 /* moose.dat */ = {isa = PBXFileReference; lastKnownFileType = file; name = moose.dat; path = ../../test/moose.dat; sourceTree = SOURCE_ROOT; };
  28.292 +		006E98651195513D001DE610 /* picture.xbm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = picture.xbm; path = ../../test/picture.xbm; sourceTree = SOURCE_ROOT; };
  28.293 +		006E98671195513D001DE610 /* sample.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = sample.bmp; path = ../../test/sample.bmp; sourceTree = SOURCE_ROOT; };
  28.294 +		006E98681195513D001DE610 /* sample.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = sample.wav; path = ../../test/sample.wav; sourceTree = SOURCE_ROOT; };
  28.295 +		006E98691195513D001DE610 /* utf8.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = utf8.txt; path = ../../test/utf8.txt; sourceTree = SOURCE_ROOT; };
  28.296 +		006E9886119552DD001DE610 /* SDL_rwopsbundlesupport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rwopsbundlesupport.h; sourceTree = "<group>"; };
  28.297 +		006E9887119552DD001DE610 /* SDL_rwopsbundlesupport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_rwopsbundlesupport.m; sourceTree = "<group>"; };
  28.298 +		0098A55A1195B4D900343137 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
  28.299 +		0098A55E1195B4D900343137 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
  28.300 +		0098A5601195B4D900343137 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
  28.301 +		0098A5621195B4D900343137 /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
  28.302 +		0098A5641195B4D900343137 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
  28.303 +		0098A5841195B5E200343137 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
  28.304 +		0402A85512FE70C600CECEE3 /* SDL_render_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gles2.c; sourceTree = "<group>"; };
  28.305 +		0402A85612FE70C600CECEE3 /* SDL_shaders_gles2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_shaders_gles2.c; sourceTree = "<group>"; };
  28.306 +		0402A85712FE70C600CECEE3 /* SDL_shaders_gles2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shaders_gles2.h; sourceTree = "<group>"; };
  28.307 +		04043B8C12FEA9350076DB1F /* SDL_opengles2.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_opengles2.h; path = ../../include/SDL_opengles2.h; sourceTree = SOURCE_ROOT; };
  28.308 +		0417A515130C988500578583 /* SDL_keycode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_keycode.h; path = ../../include/SDL_keycode.h; sourceTree = SOURCE_ROOT; };
  28.309 +		041B2CD812FA0E9E0087D585 /* SDL_render.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_render.h; path = ../../include/SDL_render.h; sourceTree = SOURCE_ROOT; };
  28.310 +		041B2CEA12FA0F680087D585 /* SDL_render.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render.c; sourceTree = "<group>"; };
  28.311 +		041B2CEB12FA0F680087D585 /* SDL_sysrender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysrender.h; sourceTree = "<group>"; };
  28.312 +		0420496E11E6F03D007E7EC9 /* SDL_clipboardevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_clipboardevents_c.h; sourceTree = "<group>"; };
  28.313 +		0420496F11E6F03D007E7EC9 /* SDL_clipboardevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_clipboardevents.c; sourceTree = "<group>"; };
  28.314 +		04409BA212FA989600FB9AA8 /* mmx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mmx.h; sourceTree = "<group>"; };
  28.315 +		04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_mmx.c; sourceTree = "<group>"; };
  28.316 +		04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_yuv_sw_c.h; sourceTree = "<group>"; };
  28.317 +		04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_sw.c; sourceTree = "<group>"; };
  28.318 +		0442EC4A12FE1BFF004C9285 /* SDL_hints.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_hints.h; path = ../../include/SDL_hints.h; sourceTree = SOURCE_ROOT; };
  28.319 +		0442EC4E12FE1C1E004C9285 /* SDL_render_sw_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_render_sw_c.h; sourceTree = "<group>"; };
  28.320 +		0442EC4F12FE1C1E004C9285 /* SDL_render_sw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_sw.c; sourceTree = "<group>"; };
  28.321 +		0442EC5212FE1C28004C9285 /* SDL_render_gles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_render_gles.c; sourceTree = "<group>"; };
  28.322 +		0442EC5412FE1C3F004C9285 /* SDL_hints.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_hints.c; path = ../../src/SDL_hints.c; sourceTree = SOURCE_ROOT; };
  28.323 +		04461DED0EA76BA3006C462D /* SDL_haptic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_haptic.h; path = ../../include/SDL_haptic.h; sourceTree = SOURCE_ROOT; };
  28.324 +		044E5FB311E6069F0076F181 /* SDL_clipboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_clipboard.h; path = ../../include/SDL_clipboard.h; sourceTree = SOURCE_ROOT; };
  28.325 +		044E5FB411E6069F0076F181 /* SDL_input.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_input.h; path = ../../include/SDL_input.h; sourceTree = SOURCE_ROOT; };
  28.326 +		044E5FB711E606EB0076F181 /* SDL_clipboard.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_clipboard.c; sourceTree = "<group>"; };
  28.327 +		0463873A0F0B5B7D0041FD65 /* SDL_blit_slow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blit_slow.h; sourceTree = "<group>"; };
  28.328 +		0463873E0F0B5B7D0041FD65 /* SDL_fillrect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_fillrect.c; sourceTree = "<group>"; };
  28.329 +		047677B80EA76A31008ABAF1 /* SDL_syshaptic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_syshaptic.c; sourceTree = "<group>"; };
  28.330 +		047677B90EA76A31008ABAF1 /* SDL_haptic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_haptic.c; path = ../../src/haptic/SDL_haptic.c; sourceTree = SOURCE_ROOT; };
  28.331 +		047677BA0EA76A31008ABAF1 /* SDL_syshaptic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_syshaptic.h; path = ../../src/haptic/SDL_syshaptic.h; sourceTree = SOURCE_ROOT; };
  28.332 +		047AF1B20EA98D6C00811173 /* SDL_sysloadso.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysloadso.c; sourceTree = "<group>"; };
  28.333 +		04B2ECE61025CE4800F9BC5F /* SDL_atomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_atomic.h; path = ../../include/SDL_atomic.h; sourceTree = SOURCE_ROOT; };
  28.334 +		04B2ECE71025CE4800F9BC5F /* SDL_power.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_power.h; path = ../../include/SDL_power.h; sourceTree = SOURCE_ROOT; };
  28.335 +		04B2ECE81025CE4800F9BC5F /* SDL_revision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_revision.h; path = ../../include/SDL_revision.h; sourceTree = SOURCE_ROOT; };
  28.336 +		04B2ED061025CF9E00F9BC5F /* SDL_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_config.h; path = ../../include/SDL_config.h; sourceTree = SOURCE_ROOT; };
  28.337 +		04BA9D5F11EF474A00B60E01 /* SDL_gesture_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gesture_c.h; sourceTree = "<group>"; };
  28.338 +		04BA9D6011EF474A00B60E01 /* SDL_gesture.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_gesture.c; sourceTree = "<group>"; };
  28.339 +		04BA9D6111EF474A00B60E01 /* SDL_touch_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_touch_c.h; sourceTree = "<group>"; };
  28.340 +		04BA9D6211EF474A00B60E01 /* SDL_touch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_touch.c; sourceTree = "<group>"; };
  28.341 +		04BA9D7B11EF497E00B60E01 /* SDL_gesture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_gesture.h; path = ../../include/SDL_gesture.h; sourceTree = SOURCE_ROOT; };
  28.342 +		04BA9D7C11EF497E00B60E01 /* SDL_touch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_touch.h; path = ../../include/SDL_touch.h; sourceTree = SOURCE_ROOT; };
  28.343 +		04BAC0981300C0F70055DE28 /* SDL_log.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_log.h; path = ../../include/SDL_log.h; sourceTree = SOURCE_ROOT; };
  28.344 +		04BAC09A1300C1290055DE28 /* SDL_assert_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_assert_c.h; path = ../../src/SDL_assert_c.h; sourceTree = SOURCE_ROOT; };
  28.345 +		04BAC09B1300C1290055DE28 /* SDL_log.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_log.c; path = ../../src/SDL_log.c; sourceTree = SOURCE_ROOT; };
  28.346 +		04EC8B501025D12900431D42 /* SDL_config_iphoneos.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_config_iphoneos.h; path = ../../include/SDL_config_iphoneos.h; sourceTree = SOURCE_ROOT; };
  28.347 +		04F2AF531104ABC300D6DDF7 /* SDL_assert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_assert.h; path = ../../include/SDL_assert.h; sourceTree = SOURCE_ROOT; };
  28.348 +		04F2AF551104ABD200D6DDF7 /* SDL_assert.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_assert.c; path = ../../src/SDL_assert.c; sourceTree = SOURCE_ROOT; };
  28.349 +		04F7806A12FB751400FC43C0 /* SDL_blendfillrect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendfillrect.c; sourceTree = "<group>"; };
  28.350 +		04F7806B12FB751400FC43C0 /* SDL_blendfillrect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendfillrect.h; sourceTree = "<group>"; };
  28.351 +		04F7806C12FB751400FC43C0 /* SDL_blendline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendline.c; sourceTree = "<group>"; };
  28.352 +		04F7806D12FB751400FC43C0 /* SDL_blendline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendline.h; sourceTree = "<group>"; };
  28.353 +		04F7806E12FB751400FC43C0 /* SDL_blendpoint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blendpoint.c; sourceTree = "<group>"; };
  28.354 +		04F7806F12FB751400FC43C0 /* SDL_blendpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendpoint.h; sourceTree = "<group>"; };
  28.355 +		04F7807012FB751400FC43C0 /* SDL_draw.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_draw.h; sourceTree = "<group>"; };
  28.356 +		04F7807112FB751400FC43C0 /* SDL_drawline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawline.c; sourceTree = "<group>"; };
  28.357 +		04F7807212FB751400FC43C0 /* SDL_drawline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawline.h; sourceTree = "<group>"; };
  28.358 +		04F7807312FB751400FC43C0 /* SDL_drawpoint.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_drawpoint.c; sourceTree = "<group>"; };
  28.359 +		04F7807412FB751400FC43C0 /* SDL_drawpoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_drawpoint.h; sourceTree = "<group>"; };
  28.360 +		04F7808212FB753F00FC43C0 /* SDL_nullframebuffer_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_nullframebuffer_c.h; sourceTree = "<group>"; };
  28.361 +		04F7808312FB753F00FC43C0 /* SDL_nullframebuffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_nullframebuffer.c; sourceTree = "<group>"; };
  28.362 +		04FFAB8912E23B8D00BA343D /* SDL_atomic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_atomic.c; sourceTree = "<group>"; };
  28.363 +		04FFAB8A12E23B8D00BA343D /* SDL_spinlock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_spinlock.c; sourceTree = "<group>"; };
  28.364 +		04FFAB9312E23BDC00BA343D /* SDL_blendmode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_blendmode.h; path = ../../include/SDL_blendmode.h; sourceTree = SOURCE_ROOT; };
  28.365 +		04FFAB9512E23BDC00BA343D /* SDL_shape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_shape.h; path = ../../include/SDL_shape.h; sourceTree = SOURCE_ROOT; };
  28.366 +		22C905CC13A22646003FE4E4 /* SDL_hints_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_hints_c.h; path = ../../src/SDL_hints_c.h; sourceTree = "<group>"; };
  28.367 +		56EA86F913E9EC2B002E47EB /* SDL_coreaudio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_coreaudio.c; path = coreaudio/SDL_coreaudio.c; sourceTree = "<group>"; };
  28.368 +		56EA86FA13E9EC2B002E47EB /* SDL_coreaudio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_coreaudio.h; path = coreaudio/SDL_coreaudio.h; sourceTree = "<group>"; };
  28.369 +		56ED04E0118A8EE200A56AA6 /* SDL_power.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_power.c; path = ../../src/power/SDL_power.c; sourceTree = SOURCE_ROOT; };
  28.370 +		56ED04E2118A8EFD00A56AA6 /* SDL_syspower.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SDL_syspower.m; path = ../../src/power/uikit/SDL_syspower.m; sourceTree = SOURCE_ROOT; };
  28.371 +		93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitviewcontroller.h; sourceTree = "<group>"; };
  28.372 +		93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitviewcontroller.m; sourceTree = "<group>"; };
  28.373 +		FD0BBFEF0E3933DD00D833B1 /* SDL_uikitview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitview.h; sourceTree = "<group>"; };
  28.374 +		FD24846B0E5655AE0021E198 /* SDL_uikitkeyboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitkeyboard.h; sourceTree = "<group>"; };
  28.375 +		FD3F4A700DEA620800C5B771 /* SDL_getenv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_getenv.c; sourceTree = "<group>"; };
  28.376 +		FD3F4A710DEA620800C5B771 /* SDL_iconv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_iconv.c; sourceTree = "<group>"; };
  28.377 +		FD3F4A720DEA620800C5B771 /* SDL_malloc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_malloc.c; sourceTree = "<group>"; };
  28.378 +		FD3F4A730DEA620800C5B771 /* SDL_qsort.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_qsort.c; sourceTree = "<group>"; };
  28.379 +		FD3F4A740DEA620800C5B771 /* SDL_stdlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_stdlib.c; sourceTree = "<group>"; };
  28.380 +		FD3F4A750DEA620800C5B771 /* SDL_string.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_string.c; sourceTree = "<group>"; };
  28.381 +		FD5F9D1E0E0E08B3008E885B /* SDL_joystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_joystick.c; sourceTree = "<group>"; };
  28.382 +		FD5F9D1F0E0E08B3008E885B /* SDL_joystick_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_joystick_c.h; sourceTree = "<group>"; };
  28.383 +		FD5F9D200E0E08B3008E885B /* SDL_sysjoystick.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysjoystick.h; sourceTree = "<group>"; };
  28.384 +		FD6526630DE8FCCB002AD96B /* libSDL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL.a; sourceTree = BUILT_PRODUCTS_DIR; };
  28.385 +		FD689F000E26E5B600F90B21 /* SDL_sysjoystick.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_sysjoystick.m; sourceTree = "<group>"; };
  28.386 +		FD689F010E26E5B600F90B21 /* SDLUIAccelerationDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDLUIAccelerationDelegate.h; sourceTree = "<group>"; };
  28.387 +		FD689F020E26E5B600F90B21 /* SDLUIAccelerationDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDLUIAccelerationDelegate.m; sourceTree = "<group>"; };
  28.388 +		FD689F0C0E26E5D900F90B21 /* SDL_uikitevents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitevents.h; sourceTree = "<group>"; };
  28.389 +		FD689F0D0E26E5D900F90B21 /* SDL_uikitevents.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitevents.m; sourceTree = "<group>"; };
  28.390 +		FD689F0E0E26E5D900F90B21 /* SDL_uikitopengles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitopengles.h; sourceTree = "<group>"; };
  28.391 +		FD689F0F0E26E5D900F90B21 /* SDL_uikitopengles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitopengles.m; sourceTree = "<group>"; };
  28.392 +		FD689F100E26E5D900F90B21 /* SDL_uikitvideo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitvideo.h; sourceTree = "<group>"; };
  28.393 +		FD689F110E26E5D900F90B21 /* SDL_uikitvideo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitvideo.m; sourceTree = "<group>"; };
  28.394 +		FD689F130E26E5D900F90B21 /* SDL_uikitview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitview.m; sourceTree = "<group>"; };
  28.395 +		FD689F140E26E5D900F90B21 /* SDL_uikitwindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitwindow.h; sourceTree = "<group>"; };
  28.396 +		FD689F150E26E5D900F90B21 /* SDL_uikitwindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitwindow.m; sourceTree = "<group>"; };
  28.397 +		FD689F160E26E5D900F90B21 /* SDL_uikitopenglview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitopenglview.h; sourceTree = "<group>"; };
  28.398 +		FD689F170E26E5D900F90B21 /* SDL_uikitopenglview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitopenglview.m; sourceTree = "<group>"; };
  28.399 +		FD689FCC0E26E9D400F90B21 /* SDL_uikitappdelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SDL_uikitappdelegate.m; sourceTree = "<group>"; };
  28.400 +		FD689FCD0E26E9D400F90B21 /* SDL_uikitappdelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_uikitappdelegate.h; sourceTree = "<group>"; };
  28.401 +		FD8BD7AB0E27DCA400B52CD5 /* SDL_opengles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_opengles.h; path = ../../include/SDL_opengles.h; sourceTree = SOURCE_ROOT; };
  28.402 +		FD8BD8190E27E25900B52CD5 /* SDL_sysloadso.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysloadso.c; sourceTree = "<group>"; };
  28.403 +		FD99B8CC0DD52EB400FB1D6B /* begin_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = begin_code.h; path = ../../include/begin_code.h; sourceTree = "<group>"; };
  28.404 +		FD99B8CD0DD52EB400FB1D6B /* close_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = close_code.h; path = ../../include/close_code.h; sourceTree = "<group>"; };
  28.405 +		FD99B8CF0DD52EB400FB1D6B /* SDL_audio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_audio.h; path = ../../include/SDL_audio.h; sourceTree = "<group>"; };
  28.406 +		FD99B8D10DD52EB400FB1D6B /* SDL_compat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_compat.h; path = ../../include/SDL_compat.h; sourceTree = "<group>"; };
  28.407 +		FD99B8DA0DD52EB400FB1D6B /* SDL_copying.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_copying.h; path = ../../include/SDL_copying.h; sourceTree = "<group>"; };
  28.408 +		FD99B8DB0DD52EB400FB1D6B /* SDL_cpuinfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_cpuinfo.h; path = ../../include/SDL_cpuinfo.h; sourceTree = "<group>"; };
  28.409 +		FD99B8DC0DD52EB400FB1D6B /* SDL_error.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_error.h; path = ../../include/SDL_error.h; sourceTree = "<group>"; };
  28.410 +		FD99B8DD0DD52EB400FB1D6B /* SDL_events.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_events.h; path = ../../include/SDL_events.h; sourceTree = "<group>"; };
  28.411 +		FD99B8DE0DD52EB400FB1D6B /* SDL_joystick.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_joystick.h; path = ../../include/SDL_joystick.h; sourceTree = "<group>"; };
  28.412 +		FD99B8DF0DD52EB400FB1D6B /* SDL_keyboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_keyboard.h; path = ../../include/SDL_keyboard.h; sourceTree = "<group>"; };
  28.413 +		FD99B8E10DD52EB400FB1D6B /* SDL_loadso.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_loadso.h; path = ../../include/SDL_loadso.h; sourceTree = "<group>"; };
  28.414 +		FD99B8E20DD52EB400FB1D6B /* SDL_main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_main.h; path = ../../include/SDL_main.h; sourceTree = "<group>"; };
  28.415 +		FD99B8E30DD52EB400FB1D6B /* SDL_mouse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_mouse.h; path = ../../include/SDL_mouse.h; sourceTree = "<group>"; };
  28.416 +		FD99B8E40DD52EB400FB1D6B /* SDL_mutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_mutex.h; path = ../../include/SDL_mutex.h; sourceTree = "<group>"; };
  28.417 +		FD99B8E50DD52EB400FB1D6B /* SDL_name.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_name.h; path = ../../include/SDL_name.h; sourceTree = "<group>"; };
  28.418 +		FD99B8E60DD52EB400FB1D6B /* SDL_opengl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_opengl.h; path = ../../include/SDL_opengl.h; sourceTree = "<group>"; };
  28.419 +		FD99B8E70DD52EB400FB1D6B /* SDL_pixels.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_pixels.h; path = ../../include/SDL_pixels.h; sourceTree = "<group>"; };
  28.420 +		FD99B8E80DD52EB400FB1D6B /* SDL_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_platform.h; path = ../../include/SDL_platform.h; sourceTree = "<group>"; };
  28.421 +		FD99B8E90DD52EB400FB1D6B /* SDL_quit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_quit.h; path = ../../include/SDL_quit.h; sourceTree = "<group>"; };
  28.422 +		FD99B8EA0DD52EB400FB1D6B /* SDL_rect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_rect.h; path = ../../include/SDL_rect.h; sourceTree = "<group>"; };
  28.423 +		FD99B8EB0DD52EB400FB1D6B /* SDL_rwops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_rwops.h; path = ../../include/SDL_rwops.h; sourceTree = "<group>"; };
  28.424 +		FD99B8EC0DD52EB400FB1D6B /* SDL_scancode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_scancode.h; path = ../../include/SDL_scancode.h; sourceTree = "<group>"; };
  28.425 +		FD99B8ED0DD52EB400FB1D6B /* SDL_stdinc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_stdinc.h; path = ../../include/SDL_stdinc.h; sourceTree = "<group>"; };
  28.426 +		FD99B8EE0DD52EB400FB1D6B /* SDL_surface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_surface.h; path = ../../include/SDL_surface.h; sourceTree = "<group>"; };
  28.427 +		FD99B8EF0DD52EB400FB1D6B /* SDL_syswm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_syswm.h; path = ../../include/SDL_syswm.h; sourceTree = "<group>"; };
  28.428 +		FD99B8F00DD52EB400FB1D6B /* SDL_thread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_thread.h; path = ../../include/SDL_thread.h; sourceTree = "<group>"; };
  28.429 +		FD99B8F10DD52EB400FB1D6B /* SDL_timer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_timer.h; path = ../../include/SDL_timer.h; sourceTree = "<group>"; };
  28.430 +		FD99B8F20DD52EB400FB1D6B /* SDL_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_types.h; path = ../../include/SDL_types.h; sourceTree = "<group>"; };
  28.431 +		FD99B8F30DD52EB400FB1D6B /* SDL_version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_version.h; path = ../../include/SDL_version.h; sourceTree = "<group>"; };
  28.432 +		FD99B8F40DD52EB400FB1D6B /* SDL_video.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_video.h; path = ../../include/SDL_video.h; sourceTree = "<group>"; };
  28.433 +		FD99B8F50DD52EB400FB1D6B /* SDL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL.h; path = ../../include/SDL.h; sourceTree = "<group>"; };
  28.434 +		FD99B8F60DD52EB400FB1D6B /* SDL_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_endian.h; path = ../../include/SDL_endian.h; sourceTree = "<group>"; };
  28.435 +		FD99B91D0DD52EDC00FB1D6B /* SDL_dummyaudio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_dummyaudio.c; sourceTree = "<group>"; };
  28.436 +		FD99B91E0DD52EDC00FB1D6B /* SDL_dummyaudio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_dummyaudio.h; sourceTree = "<group>"; };
  28.437 +		FD99B9440DD52EDC00FB1D6B /* SDL_audio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audio.c; sourceTree = "<group>"; };
  28.438 +		FD99B9450DD52EDC00FB1D6B /* SDL_audio_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_audio_c.h; sourceTree = "<group>"; };
  28.439 +		FD99B9460DD52EDC00FB1D6B /* SDL_audiocvt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audiocvt.c; sourceTree = "<group>"; };
  28.440 +		FD99B9490DD52EDC00FB1D6B /* SDL_audiomem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_audiomem.h; sourceTree = "<group>"; };
  28.441 +		FD99B94A0DD52EDC00FB1D6B /* SDL_audiotypecvt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_audiotypecvt.c; sourceTree = "<group>"; };
  28.442 +		FD99B94B0DD52EDC00FB1D6B /* SDL_mixer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_mixer.c; sourceTree = "<group>"; };
  28.443 +		FD99B9520DD52EDC00FB1D6B /* SDL_sysaudio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysaudio.h; sourceTree = "<group>"; };
  28.444 +		FD99B9530DD52EDC00FB1D6B /* SDL_wave.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_wave.c; sourceTree = "<group>"; };
  28.445 +		FD99B9540DD52EDC00FB1D6B /* SDL_wave.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_wave.h; sourceTree = "<group>"; };
  28.446 +		FD99B98B0DD52EDC00FB1D6B /* SDL_cpuinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_cpuinfo.c; sourceTree = "<group>"; };
  28.447 +		FD99B98D0DD52EDC00FB1D6B /* blank_cursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = blank_cursor.h; sourceTree = "<group>"; };
  28.448 +		FD99B98E0DD52EDC00FB1D6B /* default_cursor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = default_cursor.h; sourceTree = "<group>"; };
  28.449 +		FD99B98F0DD52EDC00FB1D6B /* scancodes_darwin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scancodes_darwin.h; sourceTree = "<group>"; };
  28.450 +		FD99B9900DD52EDC00FB1D6B /* scancodes_linux.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scancodes_linux.h; sourceTree = "<group>"; };
  28.451 +		FD99B9920DD52EDC00FB1D6B /* scancodes_xfree86.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = scancodes_xfree86.h; sourceTree = "<group>"; };
  28.452 +		FD99B9930DD52EDC00FB1D6B /* SDL_events.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_events.c; sourceTree = "<group>"; };
  28.453 +		FD99B9940DD52EDC00FB1D6B /* SDL_events_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_events_c.h; sourceTree = "<group>"; };
  28.454 +		FD99B9950DD52EDC00FB1D6B /* SDL_keyboard.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_keyboard.c; sourceTree = "<group>"; };
  28.455 +		FD99B9960DD52EDC00FB1D6B /* SDL_keyboard_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_keyboard_c.h; sourceTree = "<group>"; };
  28.456 +		FD99B9970DD52EDC00FB1D6B /* SDL_mouse.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_mouse.c; sourceTree = "<group>"; };
  28.457 +		FD99B9980DD52EDC00FB1D6B /* SDL_mouse_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_mouse_c.h; sourceTree = "<group>"; };
  28.458 +		FD99B9990DD52EDC00FB1D6B /* SDL_quit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_quit.c; sourceTree = "<group>"; };
  28.459 +		FD99B99A0DD52EDC00FB1D6B /* SDL_sysevents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysevents.h; sourceTree = "<group>"; };
  28.460 +		FD99B99B0DD52EDC00FB1D6B /* SDL_windowevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_windowevents.c; sourceTree = "<group>"; };
  28.461 +		FD99B99C0DD52EDC00FB1D6B /* SDL_windowevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_windowevents_c.h; sourceTree = "<group>"; };
  28.462 +		FD99B99E0DD52EDC00FB1D6B /* SDL_rwops.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_rwops.c; sourceTree = "<group>"; };
  28.463 +		FD99B9D30DD52EDC00FB1D6B /* SDL_compat.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_compat.c; path = ../../src/SDL_compat.c; sourceTree = "<group>"; };
  28.464 +		FD99B9D40DD52EDC00FB1D6B /* SDL_error_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_error_c.h; path = ../../src/SDL_error_c.h; sourceTree = "<group>"; };
  28.465 +		FD99B9D50DD52EDC00FB1D6B /* SDL_error.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_error.c; path = ../../src/SDL_error.c; sourceTree = "<group>"; };
  28.466 +		FD99B9D60DD52EDC00FB1D6B /* SDL_fatal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL_fatal.c; path = ../../src/SDL_fatal.c; sourceTree = "<group>"; };
  28.467 +		FD99B9D70DD52EDC00FB1D6B /* SDL_fatal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SDL_fatal.h; path = ../../src/SDL_fatal.h; sourceTree = "<group>"; };
  28.468 +		FD99B9D80DD52EDC00FB1D6B /* SDL.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = SDL.c; path = ../../src/SDL.c; sourceTree = "<group>"; };
  28.469 +		FD99BA070DD52EDC00FB1D6B /* SDL_syscond.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_syscond.c; sourceTree = "<group>"; };
  28.470 +		FD99BA080DD52EDC00FB1D6B /* SDL_sysmutex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_sysmutex.c; sourceTree = "<group>"; };
  28.471 +		FD99BA090DD52EDC00FB1D6B /* SDL_sysmutex_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysmutex_c.h; sourceTree = "<group>"; };
  28.472 +		FD99BA0A0DD52EDC00FB1D6B /* SDL_syssem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_syssem.c; sourceTree = "<group>"; };
  28.473 +		FD99BA0B0DD52EDC00FB1D6B /* SDL_systhread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systhread.c; sourceTree = "<group>"; };
  28.474 +		FD99BA0C0DD52EDC00FB1D6B /* SDL_systhread_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_systhread_c.h; sourceTree = "<group>"; };
  28.475 +		FD99BA140DD52EDC00FB1D6B /* SDL_systhread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_systhread.h; sourceTree = "<group>"; };
  28.476 +		FD99BA150DD52EDC00FB1D6B /* SDL_thread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_thread.c; sourceTree = "<group>"; };
  28.477 +		FD99BA160DD52EDC00FB1D6B /* SDL_thread_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_thread_c.h; sourceTree = "<group>"; };
  28.478 +		FD99BA2E0DD52EDC00FB1D6B /* SDL_timer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_timer.c; sourceTree = "<group>"; };
  28.479 +		FD99BA2F0DD52EDC00FB1D6B /* SDL_timer_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_timer_c.h; sourceTree = "<group>"; };
  28.480 +		FD99BA310DD52EDC00FB1D6B /* SDL_systimer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_systimer.c; sourceTree = "<group>"; };
  28.481 +		FDA683000DF2374E00F98A1A /* SDL_blit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit.c; sourceTree = "<group>"; };
  28.482 +		FDA683010DF2374E00F98A1A /* SDL_blit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blit.h; sourceTree = "<group>"; };
  28.483 +		FDA683020DF2374E00F98A1A /* SDL_blit_0.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_0.c; sourceTree = "<group>"; };
  28.484 +		FDA683030DF2374E00F98A1A /* SDL_blit_1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_1.c; sourceTree = "<group>"; };
  28.485 +		FDA683040DF2374E00F98A1A /* SDL_blit_A.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_A.c; sourceTree = "<group>"; };
  28.486 +		FDA683050DF2374E00F98A1A /* SDL_blit_auto.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_auto.c; sourceTree = "<group>"; };
  28.487 +		FDA683060DF2374E00F98A1A /* SDL_blit_auto.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blit_auto.h; sourceTree = "<group>"; };
  28.488 +		FDA683070DF2374E00F98A1A /* SDL_blit_copy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_copy.c; sourceTree = "<group>"; };
  28.489 +		FDA683080DF2374E00F98A1A /* SDL_blit_copy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blit_copy.h; sourceTree = "<group>"; };
  28.490 +		FDA683090DF2374E00F98A1A /* SDL_blit_N.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_N.c; sourceTree = "<group>"; };
  28.491 +		FDA6830A0DF2374E00F98A1A /* SDL_blit_slow.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_blit_slow.c; sourceTree = "<group>"; };
  28.492 +		FDA6830B0DF2374E00F98A1A /* SDL_bmp.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_bmp.c; sourceTree = "<group>"; };
  28.493 +		FDA6830F0DF2374E00F98A1A /* SDL_pixels.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_pixels.c; sourceTree = "<group>"; };
  28.494 +		FDA683100DF2374E00F98A1A /* SDL_pixels_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_pixels_c.h; sourceTree = "<group>"; };
  28.495 +		FDA683110DF2374E00F98A1A /* SDL_rect.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_rect.c; sourceTree = "<group>"; };
  28.496 +		FDA683150DF2374E00F98A1A /* SDL_RLEaccel.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_RLEaccel.c; sourceTree = "<group>"; };
  28.497 +		FDA683160DF2374E00F98A1A /* SDL_RLEaccel_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_RLEaccel_c.h; sourceTree = "<group>"; };
  28.498 +		FDA683170DF2374E00F98A1A /* SDL_stretch.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_stretch.c; sourceTree = "<group>"; };
  28.499 +		FDA683190DF2374E00F98A1A /* SDL_surface.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_surface.c; sourceTree = "<group>"; };
  28.500 +		FDA6831A0DF2374E00F98A1A /* SDL_sysvideo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_sysvideo.h; sourceTree = "<group>"; };
  28.501 +		FDA6831B0DF2374E00F98A1A /* SDL_video.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_video.c; sourceTree = "<group>"; };
  28.502 +		FDA685F50DF244C800F98A1A /* SDL_nullevents.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_nullevents.c; sourceTree = "<group>"; };
  28.503 +		FDA685F60DF244C800F98A1A /* SDL_nullevents_c.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_nullevents_c.h; sourceTree = "<group>"; };
  28.504 +		FDA685F90DF244C800F98A1A /* SDL_nullvideo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = SDL_nullvideo.c; sourceTree = "<group>"; };
  28.505 +		FDA685FA0DF244C800F98A1A /* SDL_nullvideo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_nullvideo.h; sourceTree = "<group>"; };
  28.506 +		FDC261780E3A3FC8001C4554 /* keyinfotable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = keyinfotable.h; sourceTree = "<group>"; };
  28.507 +		FDC656440E560DF800311C8E /* jumphack.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = jumphack.c; sourceTree = "<group>"; };
  28.508 +		FDC656450E560DF800311C8E /* jumphack.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = jumphack.h; sourceTree = "<group>"; };
  28.509 +/* End PBXFileReference section */
  28.510 +
  28.511 +/* Begin PBXFrameworksBuildPhase section */
  28.512 +		006E982011955059001DE610 /* Frameworks */ = {
  28.513 +			isa = PBXFrameworksBuildPhase;
  28.514 +			buildActionMask = 2147483647;
  28.515 +			files = (
  28.516 +				006E988C119552FC001DE610 /* libSDL.a in Frameworks */,
  28.517 +				0098A55B1195B4D900343137 /* AudioToolbox.framework in Frameworks */,
  28.518 +				0098A55F1195B4D900343137 /* CoreAudio.framework in Frameworks */,
  28.519 +				0098A5611195B4D900343137 /* CoreGraphics.framework in Frameworks */,
  28.520 +				0098A5631195B4D900343137 /* OpenGLES.framework in Frameworks */,
  28.521 +				0098A5651195B4D900343137 /* UIKit.framework in Frameworks */,
  28.522 +				0098A5851195B5E200343137 /* QuartzCore.framework in Frameworks */,
  28.523 +			);
  28.524 +			runOnlyForDeploymentPostprocessing = 0;
  28.525 +		};
  28.526 +/* End PBXFrameworksBuildPhase section */
  28.527 +
  28.528 +/* Begin PBXGroup section */
  28.529 +		006E982E119550D8001DE610 /* AutomatedTests */ = {
  28.530 +			isa = PBXGroup;
  28.531 +			children = (
  28.532 +				006E9830119550FB001DE610 /* audio */,
  28.533 +				006E9833119550FB001DE610 /* common */,
  28.534 +				006E983C119550FB001DE610 /* platform */,
  28.535 +				006E983F119550FB001DE610 /* README */,
  28.536 +				006E9840119550FB001DE610 /* rect */,
  28.537 +				006E9843119550FB001DE610 /* render */,
  28.538 +				006E9846119550FB001DE610 /* rwops */,
  28.539 +				006E984C119550FB001DE610 /* SDL_at.c */,
  28.540 +				006E984D119550FB001DE610 /* SDL_at.h */,
  28.541 +				006E984E119550FB001DE610 /* surface */,
  28.542 +				006E9851119550FB001DE610 /* testsdl.c */,
  28.543 +			);
  28.544 +			name = AutomatedTests;
  28.545 +			sourceTree = "<group>";
  28.546 +		};
  28.547 +		006E982F119550E4001DE610 /* TestResources */ = {
  28.548 +			isa = PBXGroup;
  28.549 +			children = (
  28.550 +				006E98631195513D001DE610 /* icon.bmp */,
  28.551 +				006E98641195513D001DE610 /* moose.dat */,
  28.552 +				006E98651195513D001DE610 /* picture.xbm */,
  28.553 +				006E98671195513D001DE610 /* sample.bmp */,
  28.554 +				006E98681195513D001DE610 /* sample.wav */,
  28.555 +				006E98691195513D001DE610 /* utf8.txt */,
  28.556 +			);
  28.557 +			name = TestResources;
  28.558 +			sourceTree = "<group>";
  28.559 +		};
  28.560 +		006E9830119550FB001DE610 /* audio */ = {
  28.561 +			isa = PBXGroup;
  28.562 +			children = (
  28.563 +				006E9831119550FB001DE610 /* audio.c */,
  28.564 +				006E9832119550FB001DE610 /* audio.h */,
  28.565 +			);
  28.566 +			name = audio;
  28.567 +			path = ../../test/automated/audio;
  28.568 +			sourceTree = SOURCE_ROOT;
  28.569 +		};
  28.570 +		006E9833119550FB001DE610 /* common */ = {
  28.571 +			isa = PBXGroup;
  28.572 +			children = (
  28.573 +				006E9834119550FB001DE610 /* common.c */,
  28.574 +				006E9835119550FB001DE610 /* common.h */,
  28.575 +				006E9836119550FB001DE610 /* images.h */,
  28.576 +				006E9837119550FB001DE610 /* img_blit.c */,
  28.577 +				006E9838119550FB001DE610 /* img_blitblend.c */,
  28.578 +				006E9839119550FB001DE610 /* img_face.c */,
  28.579 +				006E983A119550FB001DE610 /* img_primitives.c */,
  28.580 +				006E983B119550FB001DE610 /* img_primitivesblend.c */,
  28.581 +			);
  28.582 +			name = common;
  28.583 +			path = ../../test/automated/common;
  28.584 +			sourceTree = SOURCE_ROOT;
  28.585 +		};
  28.586 +		006E983C119550FB001DE610 /* platform */ = {
  28.587 +			isa = PBXGroup;
  28.588 +			children = (
  28.589 +				006E983D119550FB001DE610 /* platform.c */,
  28.590 +				006E983E119550FB001DE610 /* platform.h */,
  28.591 +			);
  28.592 +			name = platform;
  28.593 +			path = ../../test/automated/platform;
  28.594 +			sourceTree = SOURCE_ROOT;
  28.595 +		};
  28.596 +		006E9840119550FB001DE610 /* rect */ = {
  28.597 +			isa = PBXGroup;
  28.598 +			children = (
  28.599 +				006E9841119550FB001DE610 /* rect.c */,
  28.600 +				006E9842119550FB001DE610 /* rect.h */,
  28.601 +			);
  28.602 +			name = rect;
  28.603 +			path = ../../test/automated/rect;
  28.604 +			sourceTree = SOURCE_ROOT;
  28.605 +		};
  28.606 +		006E9843119550FB001DE610 /* render */ = {
  28.607 +			isa = PBXGroup;
  28.608 +			children = (
  28.609 +				006E9844119550FB001DE610 /* render.c */,
  28.610 +				006E9845119550FB001DE610 /* render.h */,
  28.611 +			);
  28.612 +			name = render;
  28.613 +			path = ../../test/automated/render;
  28.614 +			sourceTree = SOURCE_ROOT;
  28.615 +		};
  28.616 +		006E9846119550FB001DE610 /* rwops */ = {
  28.617 +			isa = PBXGroup;
  28.618 +			children = (
  28.619 +				001E39A51196EE6F00A3F5B8 /* TestSupportRWops_Cocoa.m */,
  28.620 +				001E39A61196EE6F00A3F5B8 /* TestSupportRWops.h */,
  28.621 +				006E9847119550FB001DE610 /* read */,
  28.622 +				006E9848119550FB001DE610 /* rwops.c */,
  28.623 +				006E9849119550FB001DE610 /* rwops.h */,
  28.624 +			);
  28.625 +			name = rwops;
  28.626 +			path = ../../test/automated/rwops;
  28.627 +			sourceTree = SOURCE_ROOT;
  28.628 +		};
  28.629 +		006E984E119550FB001DE610 /* surface */ = {
  28.630 +			isa = PBXGroup;
  28.631 +			children = (
  28.632 +				006E984F119550FB001DE610 /* surface.c */,
  28.633 +				006E9850119550FB001DE610 /* surface.h */,
  28.634 +			);
  28.635 +			name = surface;
  28.636 +			path = ../../test/automated/surface;
  28.637 +			sourceTree = SOURCE_ROOT;
  28.638 +		};
  28.639 +		006E9885119552DD001DE610 /* cocoa */ = {
  28.640 +			isa = PBXGroup;
  28.641 +			children = (
  28.642 +				006E9886119552DD001DE610 /* SDL_rwopsbundlesupport.h */,
  28.643 +				006E9887119552DD001DE610 /* SDL_rwopsbundlesupport.m */,
  28.644 +			);
  28.645 +			path = cocoa;
  28.646 +			sourceTree = "<group>";
  28.647 +		};
  28.648 +		0402A85412FE70C600CECEE3 /* opengles2 */ = {
  28.649 +			isa = PBXGroup;
  28.650 +			children = (
  28.651 +				0402A85512FE70C600CECEE3 /* SDL_render_gles2.c */,
  28.652 +				0402A85612FE70C600CECEE3 /* SDL_shaders_gles2.c */,
  28.653 +				0402A85712FE70C600CECEE3 /* SDL_shaders_gles2.h */,
  28.654 +			);
  28.655 +			path = opengles2;
  28.656 +			sourceTree = "<group>";
  28.657 +		};
  28.658 +		041B2CE312FA0F680087D585 /* render */ = {
  28.659 +			isa = PBXGroup;
  28.660 +			children = (
  28.661 +				041B2CE812FA0F680087D585 /* opengles */,
  28.662 +				0402A85412FE70C600CECEE3 /* opengles2 */,
  28.663 +				041B2CEC12FA0F680087D585 /* software */,
  28.664 +				04409BA212FA989600FB9AA8 /* mmx.h */,
  28.665 +				041B2CEA12FA0F680087D585 /* SDL_render.c */,
  28.666 +				041B2CEB12FA0F680087D585 /* SDL_sysrender.h */,
  28.667 +				04409BA312FA989600FB9AA8 /* SDL_yuv_mmx.c */,
  28.668 +				04409BA412FA989600FB9AA8 /* SDL_yuv_sw_c.h */,
  28.669 +				04409BA512FA989600FB9AA8 /* SDL_yuv_sw.c */,
  28.670 +			);
  28.671 +			name = render;
  28.672 +			path = ../../src/render;
  28.673 +			sourceTree = SOURCE_ROOT;
  28.674 +		};
  28.675 +		041B2CE812FA0F680087D585 /* opengles */ = {
  28.676 +			isa = PBXGroup;
  28.677 +			children = (
  28.678 +				0442EC5212FE1C28004C9285 /* SDL_render_gles.c */,
  28.679 +			);
  28.680 +			path = opengles;
  28.681 +			sourceTree = "<group>";
  28.682 +		};
  28.683 +		041B2CEC12FA0F680087D585 /* software */ = {
  28.684 +			isa = PBXGroup;
  28.685 +			children = (
  28.686 +				04F7806A12FB751400FC43C0 /* SDL_blendfillrect.c */,
  28.687 +				04F7806B12FB751400FC43C0 /* SDL_blendfillrect.h */,
  28.688 +				04F7806C12FB751400FC43C0 /* SDL_blendline.c */,
  28.689 +				04F7806D12FB751400FC43C0 /* SDL_blendline.h */,
  28.690 +				04F7806E12FB751400FC43C0 /* SDL_blendpoint.c */,
  28.691 +				04F7806F12FB751400FC43C0 /* SDL_blendpoint.h */,
  28.692 +				04F7807012FB751400FC43C0 /* SDL_draw.h */,
  28.693 +				04F7807112FB751400FC43C0 /* SDL_drawline.c */,
  28.694 +				04F7807212FB751400FC43C0 /* SDL_drawline.h */,
  28.695 +				04F7807312FB751400FC43C0 /* SDL_drawpoint.c */,
  28.696 +				04F7807412FB751400FC43C0 /* SDL_drawpoint.h */,
  28.697 +				0442EC4E12FE1C1E004C9285 /* SDL_render_sw_c.h */,
  28.698 +				0442EC4F12FE1C1E004C9285 /* SDL_render_sw.c */,
  28.699 +			);
  28.700 +			path = software;
  28.701 +			sourceTree = "<group>";
  28.702 +		};
  28.703 +		047677B60EA769DF008ABAF1 /* haptic */ = {
  28.704 +			isa = PBXGroup;
  28.705 +			children = (
  28.706 +				047677B70EA76A31008ABAF1 /* dummy */,
  28.707 +				047677B90EA76A31008ABAF1 /* SDL_haptic.c */,
  28.708 +				047677BA0EA76A31008ABAF1 /* SDL_syshaptic.h */,
  28.709 +			);
  28.710 +			name = haptic;
  28.711 +			sourceTree = "<group>";
  28.712 +		};
  28.713 +		047677B70EA76A31008ABAF1 /* dummy */ = {
  28.714 +			isa = PBXGroup;
  28.715 +			children = (
  28.716 +				047677B80EA76A31008ABAF1 /* SDL_syshaptic.c */,
  28.717 +			);
  28.718 +			name = dummy;
  28.719 +			path = ../../src/haptic/dummy;
  28.720 +			sourceTree = SOURCE_ROOT;
  28.721 +		};
  28.722 +		047AF1B10EA98D6C00811173 /* dummy */ = {
  28.723 +			isa = PBXGroup;
  28.724 +			children = (
  28.725 +				047AF1B20EA98D6C00811173 /* SDL_sysloadso.c */,
  28.726 +			);
  28.727 +			path = dummy;
  28.728 +			sourceTree = "<group>";
  28.729 +		};
  28.730 +		04B2ECEF1025CEB900F9BC5F /* atomic */ = {
  28.731 +			isa = PBXGroup;
  28.732 +			children = (
  28.733 +				04FFAB8912E23B8D00BA343D /* SDL_atomic.c */,
  28.734 +				04FFAB8A12E23B8D00BA343D /* SDL_spinlock.c */,
  28.735 +			);
  28.736 +			name = atomic;
  28.737 +			path = ../../src/atomic;
  28.738 +			sourceTree = SOURCE_ROOT;
  28.739 +		};
  28.740 +		19C28FACFE9D520D11CA2CBB /* Products */ = {
  28.741 +			isa = PBXGroup;
  28.742 +			children = (
  28.743 +				FD6526630DE8FCCB002AD96B /* libSDL.a */,
  28.744 +				006E982211955059001DE610 /* testsdl.app */,
  28.745 +			);
  28.746 +			name = Products;
  28.747 +			sourceTree = "<group>";
  28.748 +		};
  28.749 +		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
  28.750 +			isa = PBXGroup;
  28.751 +			children = (
  28.752 +				FD99B8BC0DD52E5C00FB1D6B /* Public Headers */,
  28.753 +				FD99B8BD0DD52E6D00FB1D6B /* Library Source */,
  28.754 +				006E982E119550D8001DE610 /* AutomatedTests */,
  28.755 +				006E982F119550E4001DE610 /* TestResources */,
  28.756 +				29B97323FDCFA39411CA2CEA /* Frameworks */,
  28.757 +				19C28FACFE9D520D11CA2CBB /* Products */,
  28.758 +				006E982411955059001DE610 /* testsdl-Info.plist */,
  28.759 +				0098A5841195B5E200343137 /* QuartzCore.framework */,
  28.760 +			);
  28.761 +			name = CustomTemplate;
  28.762 +			sourceTree = "<group>";
  28.763 +		};
  28.764 +		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
  28.765 +			isa = PBXGroup;
  28.766 +			children = (
  28.767 +				0098A55A1195B4D900343137 /* AudioToolbox.framework */,
  28.768 +				0098A55E1195B4D900343137 /* CoreAudio.framework */,
  28.769 +				0098A5601195B4D900343137 /* CoreGraphics.framework */,
  28.770 +				0098A5621195B4D900343137 /* OpenGLES.framework */,
  28.771 +				0098A5641195B4D900343137 /* UIKit.framework */,
  28.772 +			);
  28.773 +			name = Frameworks;
  28.774 +			sourceTree = "<group>";
  28.775 +		};
  28.776 +		56EA86F813E9EBF9002E47EB /* coreaudio */ = {
  28.777 +			isa = PBXGroup;
  28.778 +			children = (
  28.779 +				56EA86F913E9EC2B002E47EB /* SDL_coreaudio.c */,
  28.780 +				56EA86FA13E9EC2B002E47EB /* SDL_coreaudio.h */,
  28.781 +			);
  28.782 +			name = coreaudio;
  28.783 +			sourceTree = "<group>";
  28.784 +		};
  28.785 +		56ED04DE118A8E9A00A56AA6 /* power */ = {
  28.786 +			isa = PBXGroup;
  28.787 +			children = (
  28.788 +				56ED04E0118A8EE200A56AA6 /* SDL_power.c */,
  28.789 +				56ED04DF118A8EB700A56AA6 /* uikit */,
  28.790 +			);
  28.791 +			name = power;
  28.792 +			sourceTree = "<group>";
  28.793 +		};
  28.794 +		56ED04DF118A8EB700A56AA6 /* uikit */ = {
  28.795 +			isa = PBXGroup;
  28.796 +			children = (
  28.797 +				56ED04E2118A8EFD00A56AA6 /* SDL_syspower.m */,
  28.798 +			);
  28.799 +			name = uikit;
  28.800 +			sourceTree = "<group>";
  28.801 +		};
  28.802 +		FD3F4A6F0DEA620800C5B771 /* stdlib */ = {
  28.803 +			isa = PBXGroup;
  28.804 +			children = (
  28.805 +				FD3F4A700DEA620800C5B771 /* SDL_getenv.c */,
  28.806 +				FD3F4A710DEA620800C5B771 /* SDL_iconv.c */,
  28.807 +				FD3F4A720DEA620800C5B771 /* SDL_malloc.c */,
  28.808 +				FD3F4A730DEA620800C5B771 /* SDL_qsort.c */,
  28.809 +				FD3F4A740DEA620800C5B771 /* SDL_stdlib.c */,
  28.810 +				FD3F4A750DEA620800C5B771 /* SDL_string.c */,
  28.811 +			);
  28.812 +			name = stdlib;
  28.813 +			path = ../../src/stdlib;
  28.814 +			sourceTree = SOURCE_ROOT;
  28.815 +		};
  28.816 +		FD5F9D080E0E08B3008E885B /* joystick */ = {
  28.817 +			isa = PBXGroup;
  28.818 +			children = (
  28.819 +				FD689EFF0E26E5B600F90B21 /* iphoneos */,
  28.820 +				FD5F9D1E0E0E08B3008E885B /* SDL_joystick.c */,
  28.821 +				FD5F9D1F0E0E08B3008E885B /* SDL_joystick_c.h */,
  28.822 +				FD5F9D200E0E08B3008E885B /* SDL_sysjoystick.h */,
  28.823 +			);
  28.824 +			name = joystick;
  28.825 +			path = ../../src/joystick;
  28.826 +			sourceTree = SOURCE_ROOT;
  28.827 +		};
  28.828 +		FD689EFF0E26E5B600F90B21 /* iphoneos */ = {
  28.829 +			isa = PBXGroup;
  28.830 +			children = (
  28.831 +				FD689F000E26E5B600F90B21 /* SDL_sysjoystick.m */,
  28.832 +				FD689F010E26E5B600F90B21 /* SDLUIAccelerationDelegate.h */,
  28.833 +				FD689F020E26E5B600F90B21 /* SDLUIAccelerationDelegate.m */,
  28.834 +			);
  28.835 +			path = iphoneos;
  28.836 +			sourceTree = "<group>";
  28.837 +		};
  28.838 +		FD689F090E26E5D900F90B21 /* uikit */ = {
  28.839 +			isa = PBXGroup;
  28.840 +			children = (
  28.841 +				FDC656450E560DF800311C8E /* jumphack.h */,
  28.842 +				FDC656440E560DF800311C8E /* jumphack.c */,
  28.843 +				FD689F0C0E26E5D900F90B21 /* SDL_uikitevents.h */,
  28.844 +				FD689F0D0E26E5D900F90B21 /* SDL_uikitevents.m */,
  28.845 +				FD689F0E0E26E5D900F90B21 /* SDL_uikitopengles.h */,
  28.846 +				FD689F0F0E26E5D900F90B21 /* SDL_uikitopengles.m */,
  28.847 +				FD689F100E26E5D900F90B21 /* SDL_uikitvideo.h */,
  28.848 +				FD689F110E26E5D900F90B21 /* SDL_uikitvideo.m */,
  28.849 +				FDC261780E3A3FC8001C4554 /* keyinfotable.h */,
  28.850 +				FD24846B0E5655AE0021E198 /* SDL_uikitkeyboard.h */,
  28.851 +				FD0BBFEF0E3933DD00D833B1 /* SDL_uikitview.h */,
  28.852 +				FD689F130E26E5D900F90B21 /* SDL_uikitview.m */,
  28.853 +				FD689F140E26E5D900F90B21 /* SDL_uikitwindow.h */,
  28.854 +				FD689F150E26E5D900F90B21 /* SDL_uikitwindow.m */,
  28.855 +				FD689F160E26E5D900F90B21 /* SDL_uikitopenglview.h */,
  28.856 +				FD689F170E26E5D900F90B21 /* SDL_uikitopenglview.m */,
  28.857 +				FD689FCD0E26E9D400F90B21 /* SDL_uikitappdelegate.h */,
  28.858 +				FD689FCC0E26E9D400F90B21 /* SDL_uikitappdelegate.m */,
  28.859 +				93CB792213FC5E5200BD3E05 /* SDL_uikitviewcontroller.h */,
  28.860 +				93CB792513FC5F5300BD3E05 /* SDL_uikitviewcontroller.m */,
  28.861 +			);
  28.862 +			path = uikit;
  28.863 +			sourceTree = "<group>";
  28.864 +		};
  28.865 +		FD8BD8150E27E25900B52CD5 /* loadso */ = {
  28.866 +			isa = PBXGroup;
  28.867 +			children = (
  28.868 +				047AF1B10EA98D6C00811173 /* dummy */,
  28.869 +				FD8BD8180E27E25900B52CD5 /* dlopen */,
  28.870 +			);
  28.871 +			name = loadso;
  28.872 +			path = ../../src/loadso;
  28.873 +			sourceTree = SOURCE_ROOT;
  28.874 +		};
  28.875 +		FD8BD8180E27E25900B52CD5 /* dlopen */ = {
  28.876 +			isa = PBXGroup;
  28.877 +			children = (
  28.878 +				FD8BD8190E27E25900B52CD5 /* SDL_sysloadso.c */,
  28.879 +			);
  28.880 +			path = dlopen;
  28.881 +			sourceTree = "<group>";
  28.882 +		};
  28.883 +		FD99B8BC0DD52E5C00FB1D6B /* Public Headers */ = {
  28.884 +			isa = PBXGroup;
  28.885 +			children = (
  28.886 +				FD99B8CC0DD52EB400FB1D6B /* begin_code.h */,
  28.887 +				FD99B8CD0DD52EB400FB1D6B /* close_code.h */,
  28.888 +				FD99B8F50DD52EB400FB1D6B /* SDL.h */,
  28.889 +				04F2AF531104ABC300D6DDF7 /* SDL_assert.h */,
  28.890 +				04B2ECE61025CE4800F9BC5F /* SDL_atomic.h */,
  28.891 +				FD99B8CF0DD52EB400FB1D6B /* SDL_audio.h */,
  28.892 +				04FFAB9312E23BDC00BA343D /* SDL_blendmode.h */,
  28.893 +				044E5FB311E6069F0076F181 /* SDL_clipboard.h */,
  28.894 +				FD99B8D10DD52EB400FB1D6B /* SDL_compat.h */,
  28.895 +				04B2ED061025CF9E00F9BC5F /* SDL_config.h */,
  28.896 +				04EC8B501025D12900431D42 /* SDL_config_iphoneos.h */,
  28.897 +				FD99B8DA0DD52EB400FB1D6B /* SDL_copying.h */,
  28.898 +				FD99B8DB0DD52EB400FB1D6B /* SDL_cpuinfo.h */,
  28.899 +				FD99B8F60DD52EB400FB1D6B /* SDL_endian.h */,
  28.900 +				FD99B8DC0DD52EB400FB1D6B /* SDL_error.h */,
  28.901 +				FD99B8DD0DD52EB400FB1D6B /* SDL_events.h */,
  28.902 +				04BA9D7B11EF497E00B60E01 /* SDL_gesture.h */,
  28.903 +				04461DED0EA76BA3006C462D /* SDL_haptic.h */,
  28.904 +				0442EC4A12FE1BFF004C9285 /* SDL_hints.h */,
  28.905 +				044E5FB411E6069F0076F181 /* SDL_input.h */,
  28.906 +				FD99B8DE0DD52EB400FB1D6B /* SDL_joystick.h */,
  28.907 +				FD99B8DF0DD52EB400FB1D6B /* SDL_keyboard.h */,
  28.908 +				0417A515130C988500578583 /* SDL_keycode.h */,
  28.909 +				FD99B8E10DD52EB400FB1D6B /* SDL_loadso.h */,
  28.910 +				04BAC0981300C0F70055DE28 /* SDL_log.h */,
  28.911 +				FD99B8E20DD52EB400FB1D6B /* SDL_main.h */,
  28.912 +				FD99B8E30DD52EB400FB1D6B /* SDL_mouse.h */,
  28.913 +				FD99B8E40DD52EB400FB1D6B /* SDL_mutex.h */,
  28.914 +				FD99B8E50DD52EB400FB1D6B /* SDL_name.h */,
  28.915 +				FD99B8E60DD52EB400FB1D6B /* SDL_opengl.h */,
  28.916 +				FD8BD7AB0E27DCA400B52CD5 /* SDL_opengles.h */,
  28.917 +				04043B8C12FEA9350076DB1F /* SDL_opengles2.h */,
  28.918 +				FD99B8E70DD52EB400FB1D6B /* SDL_pixels.h */,
  28.919 +				FD99B8E80DD52EB400FB1D6B /* SDL_platform.h */,
  28.920 +				04B2ECE71025CE4800F9BC5F /* SDL_power.h */,
  28.921 +				FD99B8E90DD52EB400FB1D6B /* SDL_quit.h */,
  28.922 +				FD99B8EA0DD52EB400FB1D6B /* SDL_rect.h */,
  28.923 +				041B2CD812FA0E9E0087D585 /* SDL_render.h */,
  28.924 +				04B2ECE81025CE4800F9BC5F /* SDL_revision.h */,
  28.925 +				FD99B8EB0DD52EB400FB1D6B /* SDL_rwops.h */,
  28.926 +				FD99B8EC0DD52EB400FB1D6B /* SDL_scancode.h */,
  28.927 +				04FFAB9512E23BDC00BA343D /* SDL_shape.h */,
  28.928 +				FD99B8ED0DD52EB400FB1D6B /* SDL_stdinc.h */,
  28.929 +				FD99B8EE0DD52EB400FB1D6B /* SDL_surface.h */,
  28.930 +				FD99B8EF0DD52EB400FB1D6B /* SDL_syswm.h */,
  28.931 +				FD99B8F00DD52EB400FB1D6B /* SDL_thread.h */,
  28.932 +				FD99B8F10DD52EB400FB1D6B /* SDL_timer.h */,
  28.933 +				04BA9D7C11EF497E00B60E01 /* SDL_touch.h */,
  28.934 +				FD99B8F20DD52EB400FB1D6B /* SDL_types.h */,
  28.935 +				FD99B8F30DD52EB400FB1D6B /* SDL_version.h */,
  28.936 +				FD99B8F40DD52EB400FB1D6B /* SDL_video.h */,
  28.937 +			);
  28.938 +			name = "Public Headers";
  28.939 +			sourceTree = "<group>";
  28.940 +		};
  28.941 +		FD99B8BD0DD52E6D00FB1D6B /* Library Source */ = {
  28.942 +			isa = PBXGroup;
  28.943 +			children = (
  28.944 +				04B2ECEF1025CEB900F9BC5F /* atomic */,
  28.945 +				FD99B8FB0DD52EDC00FB1D6B /* audio */,
  28.946 +				FD99B98A0DD52EDC00FB1D6B /* cpuinfo */,
  28.947 +				FD99B98C0DD52EDC00FB1D6B /* events */,
  28.948 +				FD99B99D0DD52EDC00FB1D6B /* file */,
  28.949 +				047677B60EA769DF008ABAF1 /* haptic */,
  28.950 +				FD5F9D080E0E08B3008E885B /* joystick */,
  28.951 +				FD8BD8150E27E25900B52CD5 /* loadso */,
  28.952 +				56ED04DE118A8E9A00A56AA6 /* power */,
  28.953 +				041B2CE312FA0F680087D585 /* render */,
  28.954 +				FD3F4A6F0DEA620800C5B771 /* stdlib */,
  28.955 +				FD99B9E00DD52EDC00FB1D6B /* thread */,
  28.956 +				FD99BA1E0DD52EDC00FB1D6B /* timer */,
  28.957 +				FDA682420DF2374D00F98A1A /* video */,
  28.958 +				04F2AF551104ABD200D6DDF7 /* SDL_assert.c */,
  28.959 +				04BAC09A1300C1290055DE28 /* SDL_assert_c.h */,
  28.960 +				FD99B9D30DD52EDC00FB1D6B /* SDL_compat.c */,
  28.961 +				FD99B9D40DD52EDC00FB1D6B /* SDL_error_c.h */,
  28.962 +				FD99B9D50DD52EDC00FB1D6B /* SDL_error.c */,
  28.963 +				FD99B9D60DD52EDC00FB1D6B /* SDL_fatal.c */,
  28.964 +				FD99B9D70DD52EDC00FB1D6B /* SDL_fatal.h */,
  28.965 +				0442EC5412FE1C3F004C9285 /* SDL_hints.c */,
  28.966 +				22C905CC13A22646003FE4E4 /* SDL_hints_c.h */,
  28.967 +				04BAC09B1300C1290055DE28 /* SDL_log.c */,
  28.968 +				FD99B9D80DD52EDC00FB1D6B /* SDL.c */,
  28.969 +			);
  28.970 +			name = "Library Source";
  28.971 +			sourceTree = "<group>";
  28.972 +		};
  28.973 +		FD99B8FB0DD52EDC00FB1D6B /* audio */ = {
  28.974 +			isa = PBXGroup;
  28.975 +			children = (
  28.976 +				56EA86F813E9EBF9002E47EB /* coreaudio */,
  28.977 +				FD99B91C0DD52EDC00FB1D6B /* dummy */,
  28.978 +				FD99B9440DD52EDC00FB1D6B /* SDL_audio.c */,
  28.979 +				FD99B9450DD52EDC00FB1D6B /* SDL_audio_c.h */,
  28.980 +				FD99B9460DD52EDC00FB1D6B /* SDL_audiocvt.c */,
  28.981 +				FD99B9490DD52EDC00FB1D6B /* SDL_audiomem.h */,
  28.982 +				FD99B94A0DD52EDC00FB1D6B /* SDL_audiotypecvt.c */,
  28.983 +				FD99B94B0DD52EDC00FB1D6B /* SDL_mixer.c */,
  28.984 +				FD99B9520DD52EDC00FB1D6B /* SDL_sysaudio.h */,
  28.985 +				FD99B9530DD52EDC00FB1D6B /* SDL_wave.c */,
  28.986 +				FD99B9540DD52EDC00FB1D6B /* SDL_wave.h */,
  28.987 +			);
  28.988 +			name = audio;
  28.989 +			path = ../../src/audio;
  28.990 +			sourceTree = "<group>";
  28.991 +		};
  28.992 +		FD99B91C0DD52EDC00FB1D6B /* dummy */ = {
  28.993 +			isa = PBXGroup;
  28.994 +			children = (
  28.995 +				FD99B91D0DD52EDC00FB1D6B /* SDL_dummyaudio.c */,
  28.996 +				FD99B91E0DD52EDC00FB1D6B /* SDL_dummyaudio.h */,
  28.997 +			);
  28.998 +			path = dummy;
  28.999 +			sourceTree = "<group>";
 28.1000 +		};
 28.1001 +		FD99B98A0DD52EDC00FB1D6B /* cpuinfo */ = {
 28.1002 +			isa = PBXGroup;
 28.1003 +			children = (
 28.1004 +				FD99B98B0DD52EDC00FB1D6B /* SDL_cpuinfo.c */,
 28.1005 +			);
 28.1006 +			name = cpuinfo;
 28.1007 +			path = ../../src/cpuinfo;
 28.1008 +			sourceTree = "<group>";
 28.1009 +		};
 28.1010 +		FD99B98C0DD52EDC00FB1D6B /* events */ = {
 28.1011 +			isa = PBXGroup;
 28.1012 +			children = (
 28.1013 +				04BA9D5F11EF474A00B60E01 /* SDL_gesture_c.h */,
 28.1014 +				04BA9D6011EF474A00B60E01 /* SDL_gesture.c */,
 28.1015 +				04BA9D6111EF474A00B60E01 /* SDL_touch_c.h */,
 28.1016 +				04BA9D6211EF474A00B60E01 /* SDL_touch.c */,
 28.1017 +				FD99B98D0DD52EDC00FB1D6B /* blank_cursor.h */,
 28.1018 +				FD99B98E0DD52EDC00FB1D6B /* default_cursor.h */,
 28.1019 +				FD99B98F0DD52EDC00FB1D6B /* scancodes_darwin.h */,
 28.1020 +				FD99B9900DD52EDC00FB1D6B /* scancodes_linux.h */,
 28.1021 +				FD99B9920DD52EDC00FB1D6B /* scancodes_xfree86.h */,
 28.1022 +				0420496E11E6F03D007E7EC9 /* SDL_clipboardevents_c.h */,
 28.1023 +				0420496F11E6F03D007E7EC9 /* SDL_clipboardevents.c */,
 28.1024 +				FD99B9930DD52EDC00FB1D6B /* SDL_events.c */,
 28.1025 +				FD99B9940DD52EDC00FB1D6B /* SDL_events_c.h */,
 28.1026 +				FD99B9950DD52EDC00FB1D6B /* SDL_keyboard.c */,
 28.1027 +				FD99B9960DD52EDC00FB1D6B /* SDL_keyboard_c.h */,
 28.1028 +				FD99B9970DD52EDC00FB1D6B /* SDL_mouse.c */,
 28.1029 +				FD99B9980DD52EDC00FB1D6B /* SDL_mouse_c.h */,
 28.1030 +				FD99B9990DD52EDC00FB1D6B /* SDL_quit.c */,
 28.1031 +				FD99B99A0DD52EDC00FB1D6B /* SDL_sysevents.h */,
 28.1032 +				FD99B99B0DD52EDC00FB1D6B /* SDL_windowevents.c */,
 28.1033 +				FD99B99C0DD52EDC00FB1D6B /* SDL_windowevents_c.h */,
 28.1034 +			);
 28.1035 +			name = events;
 28.1036 +			path = ../../src/events;
 28.1037 +			sourceTree = "<group>";
 28.1038 +		};
 28.1039 +		FD99B99D0DD52EDC00FB1D6B /* file */ = {
 28.1040 +			isa = PBXGroup;
 28.1041 +			children = (
 28.1042 +				006E9885119552DD001DE610 /* cocoa */,
 28.1043 +				FD99B99E0DD52EDC00FB1D6B /* SDL_rwops.c */,
 28.1044 +			);
 28.1045 +			name = file;
 28.1046 +			path = ../../src/file;
 28.1047 +			sourceTree = "<group>";
 28.1048 +		};
 28.1049 +		FD99B9E00DD52EDC00FB1D6B /* thread */ = {
 28.1050 +			isa = PBXGroup;
 28.1051 +			children = (
 28.1052 +				FD99BA060DD52EDC00FB1D6B /* pthread */,
 28.1053 +				FD99BA140DD52EDC00FB1D6B /* SDL_systhread.h */,
 28.1054 +				FD99BA150DD52EDC00FB1D6B /* SDL_thread.c */,
 28.1055 +				FD99BA160DD52EDC00FB1D6B /* SDL_thread_c.h */,
 28.1056 +			);
 28.1057 +			name = thread;
 28.1058 +			path = ../../src/thread;
 28.1059 +			sourceTree = "<group>";
 28.1060 +		};
 28.1061 +		FD99BA060DD52EDC00FB1D6B /* pthread */ = {
 28.1062 +			isa = PBXGroup;
 28.1063 +			children = (
 28.1064 +				FD99BA070DD52EDC00FB1D6B /* SDL_syscond.c */,
 28.1065 +				FD99BA080DD52EDC00FB1D6B /* SDL_sysmutex.c */,
 28.1066 +				FD99BA090DD52EDC00FB1D6B /* SDL_sysmutex_c.h */,
 28.1067 +				FD99BA0A0DD52EDC00FB1D6B /* SDL_syssem.c */,
 28.1068 +				FD99BA0B0DD52EDC00FB1D6B /* SDL_systhread.c */,
 28.1069 +				FD99BA0C0DD52EDC00FB1D6B /* SDL_systhread_c.h */,
 28.1070 +			);
 28.1071 +			path = pthread;
 28.1072 +			sourceTree = "<group>";
 28.1073 +		};
 28.1074 +		FD99BA1E0DD52EDC00FB1D6B /* timer */ = {
 28.1075 +			isa = PBXGroup;
 28.1076 +			children = (
 28.1077 +				FD99BA300DD52EDC00FB1D6B /* unix */,
 28.1078 +				FD99BA2E0DD52EDC00FB1D6B /* SDL_timer.c */,
 28.1079 +				FD99BA2F0DD52EDC00FB1D6B /* SDL_timer_c.h */,
 28.1080 +			);
 28.1081 +			name = timer;
 28.1082 +			path = ../../src/timer;
 28.1083 +			sourceTree = "<group>";
 28.1084 +		};
 28.1085 +		FD99BA300DD52EDC00FB1D6B /* unix */ = {
 28.1086 +			isa = PBXGroup;
 28.1087 +			children = (
 28.1088 +				FD99BA310DD52EDC00FB1D6B /* SDL_systimer.c */,
 28.1089 +			);
 28.1090 +			path = unix;
 28.1091 +			sourceTree = "<group>";
 28.1092 +		};
 28.1093 +		FDA682420DF2374D00F98A1A /* video */ = {
 28.1094 +			isa = PBXGroup;
 28.1095 +			children = (
 28.1096 +				FD689F090E26E5D900F90B21 /* uikit */,
 28.1097 +				FDA685F40DF244C800F98A1A /* dummy */,
 28.1098 +				FDA683000DF2374E00F98A1A /* SDL_blit.c */,
 28.1099 +				FDA683010DF2374E00F98A1A /* SDL_blit.h */,
 28.1100 +				FDA683020DF2374E00F98A1A /* SDL_blit_0.c */,
 28.1101 +				FDA683030DF2374E00F98A1A /* SDL_blit_1.c */,
 28.1102 +				FDA683040DF2374E00F98A1A /* SDL_blit_A.c */,
 28.1103 +				FDA683050DF2374E00F98A1A /* SDL_blit_auto.c */,
 28.1104 +				FDA683060DF2374E00F98A1A /* SDL_blit_auto.h */,
 28.1105 +				FDA683070DF2374E00F98A1A /* SDL_blit_copy.c */,
 28.1106 +				FDA683080DF2374E00F98A1A /* SDL_blit_copy.h */,
 28.1107 +				FDA683090DF2374E00F98A1A /* SDL_blit_N.c */,
 28.1108 +				FDA6830A0DF2374E00F98A1A /* SDL_blit_slow.c */,
 28.1109 +				0463873A0F0B5B7D0041FD65 /* SDL_blit_slow.h */,
 28.1110 +				FDA6830B0DF2374E00F98A1A /* SDL_bmp.c */,
 28.1111 +				044E5FB711E606EB0076F181 /* SDL_clipboard.c */,
 28.1112 +				0463873E0F0B5B7D0041FD65 /* SDL_fillrect.c */,
 28.1113 +				FDA6830F0DF2374E00F98A1A /* SDL_pixels.c */,
 28.1114 +				FDA683100DF2374E00F98A1A /* SDL_pixels_c.h */,
 28.1115 +				FDA683110DF2374E00F98A1A /* SDL_rect.c */,
 28.1116 +				FDA683150DF2374E00F98A1A /* SDL_RLEaccel.c */,
 28.1117 +				FDA683160DF2374E00F98A1A /* SDL_RLEaccel_c.h */,
 28.1118 +				FDA683170DF2374E00F98A1A /* SDL_stretch.c */,
 28.1119 +				FDA683190DF2374E00F98A1A /* SDL_surface.c */,
 28.1120 +				FDA6831A0DF2374E00F98A1A /* SDL_sysvideo.h */,
 28.1121 +				FDA6831B0DF2374E00F98A1A /* SDL_video.c */,
 28.1122 +			);
 28.1123 +			name = video;
 28.1124 +			path = ../../src/video;
 28.1125 +			sourceTree = SOURCE_ROOT;
 28.1126 +		};
 28.1127 +		FDA685F40DF244C800F98A1A /* dummy */ = {
 28.1128 +			isa = PBXGroup;
 28.1129 +			children = (
 28.1130 +				FDA685F50DF244C800F98A1A /* SDL_nullevents.c */,
 28.1131 +				FDA685F60DF244C800F98A1A /* SDL_nullevents_c.h */,
 28.1132 +				04F7808212FB753F00FC43C0 /* SDL_nullframebuffer_c.h */,
 28.1133 +				04F7808312FB753F00FC43C0 /* SDL_nullframebuffer.c */,
 28.1134 +				FDA685F90DF244C800F98A1A /* SDL_nullvideo.c */,
 28.1135 +				FDA685FA0DF244C800F98A1A /* SDL_nullvideo.h */,
 28.1136 +			);
 28.1137 +			path = dummy;
 28.1138 +			sourceTree = "<group>";
 28.1139 +		};
 28.1140 +/* End PBXGroup section */
 28.1141 +
 28.1142 +/* Begin PBXHeadersBuildPhase section */
 28.1143 +		FD65265F0DE8FCCB002AD96B /* Headers */ = {
 28.1144 +			isa = PBXHeadersBuildPhase;
 28.1145 +			buildActionMask = 2147483647;
 28.1146 +			files = (
 28.1147 +				FD3F495C0DEA5B2100C5B771 /* begin_code.h in Headers */,
 28.1148 +				FD3F495D0DEA5B2100C5B771 /* close_code.h in Headers */,
 28.1149 +				FD3F495F0DEA5B2100C5B771 /* SDL_audio.h in Headers */,
 28.1150 +				FD3F49610DEA5B2100C5B771 /* SDL_compat.h in Headers */,
 28.1151 +				FD3F49690DEA5B2100C5B771 /* SDL_copying.h in Headers */,
 28.1152 +				FD3F496A0DEA5B2100C5B771 /* SDL_cpuinfo.h in Headers */,
 28.1153 +				FD3F496B0DEA5B2100C5B771 /* SDL_error.h in Headers */,
 28.1154 +				FD3F496C0DEA5B2100C5B771 /* SDL_events.h in Headers */,
 28.1155 +				FD3F496D0DEA5B2100C5B771 /* SDL_joystick.h in Headers */,
 28.1156 +				FD3F496E0DEA5B2100C5B771 /* SDL_keyboard.h in Headers */,
 28.1157 +				FD3F49700DEA5B2100C5B771 /* SDL_loadso.h in Headers */,
 28.1158 +				FD3F49710DEA5B2100C5B771 /* SDL_main.h in Headers */,
 28.1159 +				FD3F49720DEA5B2100C5B771 /* SDL_mouse.h in Headers */,
 28.1160 +				FD3F49730DEA5B2100C5B771 /* SDL_mutex.h in Headers */,
 28.1161 +				FD3F49740DEA5B2100C5B771 /* SDL_name.h in Headers */,
 28.1162 +				FD3F49750DEA5B2100C5B771 /* SDL_opengl.h in Headers */,
 28.1163 +				FD3F49760DEA5B2100C5B771 /* SDL_pixels.h in Headers */,
 28.1164 +				FD3F49770DEA5B2100C5B771 /* SDL_platform.h in Headers */,
 28.1165 +				FD3F49780DEA5B2100C5B771 /* SDL_quit.h in Headers */,
 28.1166 +				FD3F49790DEA5B2100C5B771 /* SDL_rect.h in Headers */,
 28.1167 +				FD3F497A0DEA5B2100C5B771 /* SDL_rwops.h in Headers */,
 28.1168 +				FD3F497B0DEA5B2100C5B771 /* SDL_scancode.h in Headers */,
 28.1169 +				FD3F497C0DEA5B2100C5B771 /* SDL_stdinc.h in Headers */,
 28.1170 +				FD3F497D0DEA5B2100C5B771 /* SDL_surface.h in Headers */,
 28.1171 +				FD3F497E0DEA5B2100C5B771 /* SDL_syswm.h in Headers */,
 28.1172 +				FD3F497F0DEA5B2100C5B771 /* SDL_thread.h in Headers */,
 28.1173 +				FD3F49800DEA5B2100C5B771 /* SDL_timer.h in Headers */,
 28.1174 +				FD3F49810DEA5B2100C5B771 /* SDL_types.h in Headers */,
 28.1175 +				FD3F49820DEA5B2100C5B771 /* SDL_version.h in Headers */,
 28.1176 +				FD3F49830DEA5B2100C5B771 /* SDL_video.h in Headers */,
 28.1177 +				FD3F49840DEA5B2100C5B771 /* SDL.h in Headers */,
 28.1178 +				FD3F49850DEA5B2100C5B771 /* SDL_endian.h in Headers */,
 28.1179 +				FDA6844E0DF2374E00F98A1A /* SDL_blit.h in Headers */,
 28.1180 +				FDA684530DF2374E00F98A1A /* SDL_blit_auto.h in Headers */,
 28.1181 +				FDA684550DF2374E00F98A1A /* SDL_blit_copy.h in Headers */,
 28.1182 +				FDA6845D0DF2374E00F98A1A /* SDL_pixels_c.h in Headers */,
 28.1183 +				FDA684630DF2374E00F98A1A /* SDL_RLEaccel_c.h in Headers */,
 28.1184 +				FDA684670DF2374E00F98A1A /* SDL_sysvideo.h in Headers */,
 28.1185 +				FDA685FC0DF244C800F98A1A /* SDL_nullevents_c.h in Headers */,
 28.1186 +				FDA686000DF244C800F98A1A /* SDL_nullvideo.h in Headers */,
 28.1187 +				FD5F9D300E0E08B3008E885B /* SDL_joystick_c.h in Headers */,
 28.1188 +				FD5F9D310E0E08B3008E885B /* SDL_sysjoystick.h in Headers */,
 28.1189 +				FD689F040E26E5B600F90B21 /* SDLUIAccelerationDelegate.h in Headers */,
 28.1190 +				FD689F1C0E26E5D900F90B21 /* SDL_uikitevents.h in Headers */,
 28.1191 +				FD689F1E0E26E5D900F90B21 /* SDL_uikitopengles.h in Headers */,
 28.1192 +				FD689F200E26E5D900F90B21 /* SDL_uikitvideo.h in Headers */,
 28.1193 +				FD689F240E26E5D900F90B21 /* SDL_uikitwindow.h in Headers */,
 28.1194 +				FD689F260E26E5D900F90B21 /* SDL_uikitopenglview.h in Headers */,
 28.1195 +				FD689FCF0E26E9D400F90B21 /* SDL_uikitappdelegate.h in Headers */,
 28.1196 +				FD8BD7AC0E27DCA400B52CD5 /* SDL_opengles.h in Headers */,
 28.1197 +				FDC656490E560DF800311C8E /* jumphack.h in Headers */,
 28.1198 +				FD24846D0E5655AE0021E198 /* SDL_uikitkeyboard.h in Headers */,
 28.1199 +				047677BD0EA76A31008ABAF1 /* SDL_syshaptic.h in Headers */,
 28.1200 +				04461DEE0EA76BA3006C462D /* SDL_haptic.h in Headers */,
 28.1201 +				046387420F0B5B7D0041FD65 /* SDL_blit_slow.h in Headers */,
 28.1202 +				04B2ECEC1025CE4800F9BC5F /* SDL_atomic.h in Headers */,
 28.1203 +				04B2ECED1025CE4800F9BC5F /* SDL_power.h in Headers */,
 28.1204 +				04B2ECEE1025CE4800F9BC5F /* SDL_revision.h in Headers */,
 28.1205 +				04B2ED081025CF9E00F9BC5F /* SDL_config.h in Headers */,
 28.1206 +				04EC8B521025D12900431D42 /* SDL_config_iphoneos.h in Headers */,
 28.1207 +				04F2AF541104ABC300D6DDF7 /* SDL_assert.h in Headers */,
 28.1208 +				006E9888119552DD001DE610 /* SDL_rwopsbundlesupport.h in Headers */,
 28.1209 +				044E5FB511E6069F0076F181 /* SDL_clipboard.h in Headers */,
 28.1210 +				044E5FB611E6069F0076F181 /* SDL_input.h in Headers */,
 28.1211 +				0420497011E6F03D007E7EC9 /* SDL_clipboardevents_c.h in Headers */,
 28.1212 +				04BA9D6311EF474A00B60E01 /* SDL_gesture_c.h in Headers */,
 28.1213 +				04BA9D6511EF474A00B60E01 /* SDL_touch_c.h in Headers */,
 28.1214 +				04BA9D7D11EF497E00B60E01 /* SDL_gesture.h in Headers */,
 28.1215 +				04BA9D7E11EF497E00B60E01 /* SDL_touch.h in Headers */,
 28.1216 +				04FFAB9612E23BDC00BA343D /* SDL_blendmode.h in Headers */,
 28.1217 +				04FFAB9812E23BDC00BA343D /* SDL_shape.h in Headers */,
 28.1218 +				041B2CD912FA0E9E0087D585 /* SDL_render.h in Headers */,
 28.1219 +				041B2CF212FA0F680087D585 /* SDL_sysrender.h in Headers */,
 28.1220 +				04409BA612FA989600FB9AA8 /* mmx.h in Headers */,
 28.1221 +				04409BA812FA989600FB9AA8 /* SDL_yuv_sw_c.h in Headers */,
 28.1222 +				04F7807712FB751400FC43C0 /* SDL_blendfillrect.h in Headers */,
 28.1223 +				04F7807912FB751400FC43C0 /* SDL_blendline.h in Headers */,
 28.1224 +				04F7807B12FB751400FC43C0 /* SDL_blendpoint.h in Headers */,
 28.1225 +				04F7807C12FB751400FC43C0 /* SDL_draw.h in Headers */,
 28.1226 +				04F7807E12FB751400FC43C0 /* SDL_drawline.h in Headers */,
 28.1227 +				04F7808012FB751400FC43C0 /* SDL_drawpoint.h in Headers */,
 28.1228 +				04F7808412FB753F00FC43C0 /* SDL_nullframebuffer_c.h in Headers */,
 28.1229 +				0442EC4B12FE1BFF004C9285 /* SDL_hints.h in Headers */,
 28.1230 +				0442EC5012FE1C1E004C9285 /* SDL_render_sw_c.h in Headers */,
 28.1231 +				0402A85A12FE70C600CECEE3 /* SDL_shaders_gles2.h in Headers */,
 28.1232 +				04043B8D12FEA9350076DB1F /* SDL_opengles2.h in Headers */,
 28.1233 +				04BAC0991300C0F70055DE28 /* SDL_log.h in Headers */,
 28.1234 +				04BAC09C1300C1290055DE28 /* SDL_assert_c.h in Headers */,
 28.1235 +				0417A516130C988500578583 /* SDL_keycode.h in Headers */,
 28.1236 +				22C905CD13A22646003FE4E4 /* SDL_hints_c.h in Headers */,
 28.1237 +				56EA86FC13E9EC2B002E47EB /* SDL_coreaudio.h in Headers */,
 28.1238 +				93CB792313FC5E5200BD3E05 /* SDL_uikitviewcontroller.h in Headers */,
 28.1239 +			);
 28.1240 +			runOnlyForDeploymentPostprocessing = 0;
 28.1241 +		};
 28.1242 +/* End PBXHeadersBuildPhase section */
 28.1243 +
 28.1244 +/* Begin PBXNativeTarget section */
 28.1245 +		006E982111955059001DE610 /* testsdl */ = {
 28.1246 +			isa = PBXNativeTarget;
 28.1247 +			buildConfigurationList = 006E98271195505B001DE610 /* Build configuration list for PBXNativeTarget "testsdl" */;
 28.1248 +			buildPhases = (
 28.1249 +				006E981E11955059001DE610 /* Resources */,
 28.1250 +				006E981F11955059001DE610 /* Sources */,
 28.1251 +				006E982011955059001DE610 /* Frameworks */,
 28.1252 +				006E9881119551D0001DE610 /* Copy rwops */,
 28.1253 +			);
 28.1254 +			buildRules = (
 28.1255 +			);
 28.1256 +			dependencies = (
 28.1257 +				006E982B11955065001DE610 /* PBXTargetDependency */,
 28.1258 +			);
 28.1259 +			name = testsdl;
 28.1260 +			productName = testsdl;
 28.1261 +			productReference = 006E982211955059001DE610 /* testsdl.app */;
 28.1262 +			productType = "com.apple.product-type.application";
 28.1263 +		};
 28.1264 +		FD6526620DE8FCCB002AD96B /* libSDL */ = {
 28.1265 +			isa = PBXNativeTarget;
 28.1266 +			buildConfigurationList = FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL" */;
 28.1267 +			buildPhases = (
 28.1268 +				FD65265F0DE8FCCB002AD96B /* Headers */,
 28.1269 +				FD6526600DE8FCCB002AD96B /* Sources */,
 28.1270 +			);
 28.1271 +			buildRules = (
 28.1272 +			);
 28.1273 +			dependencies = (
 28.1274 +			);
 28.1275 +			name = libSDL;
 28.1276 +			productName = iPhoneSDLStaticLib;
 28.1277 +			productReference = FD6526630DE8FCCB002AD96B /* libSDL.a */;
 28.1278 +			productType = "com.apple.product-type.library.static";
 28.1279 +		};
 28.1280 +/* End PBXNativeTarget section */
 28.1281 +
 28.1282 +/* Begin PBXProject section */
 28.1283 +		29B97313FDCFA39411CA2CEA /* Project object */ = {
 28.1284 +			isa = PBXProject;
 28.1285 +			attributes = {
 28.1286 +				LastUpgradeCheck = 0420;
 28.1287 +			};
 28.1288 +			buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDL" */;
 28.1289 +			compatibilityVersion = "Xcode 3.2";
 28.1290 +			developmentRegion = English;
 28.1291 +			hasScannedForEncodings = 1;
 28.1292 +			knownRegions = (
 28.1293 +				English,
 28.1294 +				Japanese,
 28.1295 +				French,
 28.1296 +				German,
 28.1297 +			);
 28.1298 +			mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
 28.1299 +			projectDirPath = "";
 28.1300 +			projectRoot = ../..;
 28.1301 +			targets = (
 28.1302 +				FD6526620DE8FCCB002AD96B /* libSDL */,
 28.1303 +				006E982111955059001DE610 /* testsdl */,
 28.1304 +				00B4F48B12F6A69C0084EC00 /* PrepareXcodeProjectTemplate */,
 28.1305 +			);
 28.1306 +		};
 28.1307 +/* End PBXProject section */
 28.1308 +
 28.1309 +/* Begin PBXResourcesBuildPhase section */
 28.1310 +		006E981E11955059001DE610 /* Resources */ = {
 28.1311 +			isa = PBXResourcesBuildPhase;
 28.1312 +			buildActionMask = 2147483647;
 28.1313 +			files = (
 28.1314 +				006E985A119550FB001DE610 /* README in Resources */,
 28.1315 +				006E986A1195513D001DE610 /* icon.bmp in Resources */,
 28.1316 +				006E986B1195513D001DE610 /* moose.dat in Resources */,
 28.1317 +				006E986C1195513D001DE610 /* picture.xbm in Resources */,
 28.1318 +				006E986E1195513D001DE610 /* sample.bmp in Resources */,
 28.1319 +				006E986F1195513D001DE610 /* sample.wav in Resources */,
 28.1320 +				006E98701195513D001DE610 /* utf8.txt in Resources */,
 28.1321 +			);
 28.1322 +			runOnlyForDeploymentPostprocessing = 0;
 28.1323 +		};
 28.1324 +/* End PBXResourcesBuildPhase section */
 28.1325 +
 28.1326 +/* Begin PBXShellScriptBuildPhase section */
 28.1327 +		00B4F48A12F6A69C0084EC00 /* ShellScript */ = {
 28.1328 +			isa = PBXShellScriptBuildPhase;
 28.1329 +			buildActionMask = 2147483647;
 28.1330 +			files = (
 28.1331 +			);
 28.1332 +			inputPaths = (
 28.1333 +				"$(SYMROOT)/$CONFIGURATION-Universal/libSDL.a",
 28.1334 +			);
 28.1335 +			outputPaths = (
 28.1336 +			);
 28.1337 +			runOnlyForDeploymentPostprocessing = 0;
 28.1338 +			shellPath = /bin/sh;
 28.1339 +			shellScript = "# clean up the framework, remove headers, extra files\n\ntemp=$BUILD_DIR/$BUILD_STYLE-template\n# Wrong! 1. Can't assume location of Xcode directory (use xcode-select)\n# 2. Project templates should go in Application Support directories anyway.\ntemplate_dir_name=\"SDL iOS Application\"\n# dest=\"$(HOME)/Library/Application Support/Developer/Shared/Xcode/Project Templates/SDL/SDL iOS Application\"\nrsync_flags=\"--exclude *.svn --links -r\"\n\n# mkdir -p $dest\nmkdir -p $temp\nmkdir -p \"$temp/$template_dir_name/SDL/lib/\"\nmkdir -p \"$temp/$template_dir_name/SDL/include\"\n\n# copy template\nrsync $rsync_flags \"../template/$template_dir_name\" $temp/\n\n# copy Universal libSDL.a\nrsync $rsync_flags -r $SYMROOT/$CONFIGURATION-Universal/libSDL.a \"$temp/$template_dir_name/SDL/lib/\"\n\n# copy headers\nrsync $rsync_flags ../../include/ \"$temp/$template_dir_name/SDL/include\"\n\n#install (nah, don't install)\n# cp -fr \"$temp/$template_dir_name\" \"$dest\"";
 28.1340 +		};
 28.1341 +/* End PBXShellScriptBuildPhase section */
 28.1342 +
 28.1343 +/* Begin PBXSourcesBuildPhase section */
 28.1344 +		006E981F11955059001DE610 /* Sources */ = {
 28.1345 +			isa = PBXSourcesBuildPhase;
 28.1346 +			buildActionMask = 2147483647;
 28.1347 +			files = (
 28.1348 +				006E9852119550FB001DE610 /* audio.c in Sources */,
 28.1349 +				006E9853119550FB001DE610 /* common.c in Sources */,
 28.1350 +				006E9859119550FB001DE610 /* platform.c in Sources */,
 28.1351 +				006E985B119550FB001DE610 /* rect.c in Sources */,
 28.1352 +				006E985C119550FB001DE610 /* render.c in Sources */,
 28.1353 +				006E985E119550FB001DE610 /* rwops.c in Sources */,
 28.1354 +				006E9860119550FB001DE610 /* SDL_at.c in Sources */,
 28.1355 +				006E9861119550FB001DE610 /* surface.c in Sources */,
 28.1356 +				006E9862119550FB001DE610 /* testsdl.c in Sources */,
 28.1357 +				001E39A71196EE6F00A3F5B8 /* TestSupportRWops_Cocoa.m in Sources */,
 28.1358 +			);
 28.1359 +			runOnlyForDeploymentPostprocessing = 0;
 28.1360 +		};
 28.1361 +		FD6526600DE8FCCB002AD96B /* Sources */ = {
 28.1362 +			isa = PBXSourcesBuildPhase;
 28.1363 +			buildActionMask = 2147483647;
 28.1364 +			files = (
 28.1365 +				FD6526810DE8FCDD002AD96B /* SDL_systimer.c in Sources */,
 28.1366 +				FD6526800DE8FCDD002AD96B /* SDL_timer.c in Sources */,
 28.1367 +				FD3F4A7B0DEA620800C5B771 /* SDL_string.c in Sources */,
 28.1368 +				FD6526660DE8FCDD002AD96B /* SDL_dummyaudio.c in Sources */,
 28.1369 +				FD6526670DE8FCDD002AD96B /* SDL_audio.c in Sources */,
 28.1370 +				FD6526680DE8FCDD002AD96B /* SDL_audiocvt.c in Sources */,
 28.1371 +				FD65266A0DE8FCDD002AD96B /* SDL_audiotypecvt.c in Sources */,
 28.1372 +				FD65266B0DE8FCDD002AD96B /* SDL_mixer.c in Sources */,
 28.1373 +				FD65266F0DE8FCDD002AD96B /* SDL_wave.c in Sources */,
 28.1374 +				FD6526700DE8FCDD002AD96B /* SDL_cpuinfo.c in Sources */,
 28.1375 +				FD6526710DE8FCDD002AD96B /* SDL_events.c in Sources */,
 28.1376 +				FD6526720DE8FCDD002AD96B /* SDL_keyboard.c in Sources */,
 28.1377 +				FD6526730DE8FCDD002AD96B /* SDL_mouse.c in Sources */,
 28.1378 +				FD6526740DE8FCDD002AD96B /* SDL_quit.c in Sources */,
 28.1379 +				FD6526750DE8FCDD002AD96B /* SDL_windowevents.c in Sources */,
 28.1380 +				FD6526760DE8FCDD002AD96B /* SDL_rwops.c in Sources */,
 28.1381 +				FD6526770DE8FCDD002AD96B /* SDL_compat.c in Sources */,
 28.1382 +				FD6526780DE8FCDD002AD96B /* SDL_error.c in Sources */,
 28.1383 +				FD6526790DE8FCDD002AD96B /* SDL_fatal.c in Sources */,
 28.1384 +				FD65267A0DE8FCDD002AD96B /* SDL.c in Sources */,
 28.1385 +				FD65267B0DE8FCDD002AD96B /* SDL_syscond.c in Sources */,
 28.1386 +				FD65267C0DE8FCDD002AD96B /* SDL_sysmutex.c in Sources */,
 28.1387 +				FD65267D0DE8FCDD002AD96B /* SDL_syssem.c in Sources */,
 28.1388 +				FD65267E0DE8FCDD002AD96B /* SDL_systhread.c in Sources */,
 28.1389 +				FD65267F0DE8FCDD002AD96B /* SDL_thread.c in Sources */,
 28.1390 +				FD3F4A760DEA620800C5B771 /* SDL_getenv.c in Sources */,
 28.1391 +				FD3F4A770DEA620800C5B771 /* SDL_iconv.c in Sources */,
 28.1392 +				FD3F4A780DEA620800C5B771 /* SDL_malloc.c in Sources */,
 28.1393 +				FD3F4A790DEA620800C5B771 /* SDL_qsort.c in Sources */,
 28.1394 +				FD3F4A7A0DEA620800C5B771 /* SDL_stdlib.c in Sources */,
 28.1395 +				FDA6844D0DF2374E00F98A1A /* SDL_blit.c in Sources */,
 28.1396 +				FDA6844F0DF2374E00F98A1A /* SDL_blit_0.c in Sources */,
 28.1397 +				FDA684500DF2374E00F98A1A /* SDL_blit_1.c in Sources */,
 28.1398 +				FDA684510DF2374E00F98A1A /* SDL_blit_A.c in Sources */,
 28.1399 +				FDA684520DF2374E00F98A1A /* SDL_blit_auto.c in Sources */,
 28.1400 +				FDA684540DF2374E00F98A1A /* SDL_blit_copy.c in Sources */,
 28.1401 +				FDA684560DF2374E00F98A1A /* SDL_blit_N.c in Sources */,
 28.1402 +				FDA684570DF2374E00F98A1A /* SDL_blit_slow.c in Sources */,
 28.1403 +				FDA684580DF2374E00F98A1A /* SDL_bmp.c in Sources */,
 28.1404 +				FDA6845C0DF2374E00F98A1A /* SDL_pixels.c in Sources */,
 28.1405 +				FDA6845E0DF2374E00F98A1A /* SDL_rect.c in Sources */,
 28.1406 +				FDA684620DF2374E00F98A1A /* SDL_RLEaccel.c in Sources */,
 28.1407 +				FDA684640DF2374E00F98A1A /* SDL_stretch.c in Sources */,
 28.1408 +				FDA684660DF2374E00F98A1A /* SDL_surface.c in Sources */,
 28.1409 +				FDA684680DF2374E00F98A1A /* SDL_video.c in Sources */,
 28.1410 +				FDA685FB0DF244C800F98A1A /* SDL_nullevents.c in Sources */,
 28.1411 +				FDA685FF0DF244C800F98A1A /* SDL_nullvideo.c in Sources */,
 28.1412 +				FD5F9D2F0E0E08B3008E885B /* SDL_joystick.c in Sources */,
 28.1413 +				FD689F030E26E5B600F90B21 /* SDL_sysjoystick.m in Sources */,
 28.1414 +				FD689F050E26E5B600F90B21 /* SDLUIAccelerationDelegate.m in Sources */,
 28.1415 +				FD689F1D0E26E5D900F90B21 /* SDL_uikitevents.m in Sources */,
 28.1416 +				FD689F1F0E26E5D900F90B21 /* SDL_uikitopengles.m in Sources */,
 28.1417 +				FD689F210E26E5D900F90B21 /* SDL_uikitvideo.m in Sources */,
 28.1418 +				FD689F230E26E5D900F90B21 /* SDL_uikitview.m in Sources */,
 28.1419 +				FD689F250E26E5D900F90B21 /* SDL_uikitwindow.m in Sources */,
 28.1420 +				FD689F270E26E5D900F90B21 /* SDL_uikitopenglview.m in Sources */,
 28.1421 +				FD689FCE0E26E9D400F90B21 /* SDL_uikitappdelegate.m in Sources */,
 28.1422 +				FD8BD8250E27E25900B52CD5 /* SDL_sysloadso.c in Sources */,
 28.1423 +				FDC656480E560DF800311C8E /* jumphack.c in Sources */,
 28.1424 +				047677BB0EA76A31008ABAF1 /* SDL_syshaptic.c in Sources */,
 28.1425 +				047677BC0EA76A31008ABAF1 /* SDL_haptic.c in Sources */,
 28.1426 +				047AF1B30EA98D6C00811173 /* SDL_sysloadso.c in Sources */,
 28.1427 +				046387460F0B5B7D0041FD65 /* SDL_fillrect.c in Sources */,
 28.1428 +				04F2AF561104ABD200D6DDF7 /* SDL_assert.c in Sources */,
 28.1429 +				56ED04E1118A8EE200A56AA6 /* SDL_power.c in Sources */,
 28.1430 +				56ED04E3118A8EFD00A56AA6 /* SDL_syspower.m in Sources */,
 28.1431 +				006E9889119552DD001DE610 /* SDL_rwopsbundlesupport.m in Sources */,
 28.1432 +				044E5FB811E606EB0076F181 /* SDL_clipboard.c in Sources */,
 28.1433 +				0420497111E6F03D007E7EC9 /* SDL_clipboardevents.c in Sources */,
 28.1434 +				04BA9D6411EF474A00B60E01 /* SDL_gesture.c in Sources */,
 28.1435 +				04BA9D6611EF474A00B60E01 /* SDL_touch.c in Sources */,
 28.1436 +				04FFAB8B12E23B8D00BA343D /* SDL_atomic.c in Sources */,
 28.1437 +				04FFAB8C12E23B8D00BA343D /* SDL_spinlock.c in Sources */,
 28.1438 +				041B2CF112FA0F680087D585 /* SDL_render.c in Sources */,
 28.1439 +				04409BA712FA989600FB9AA8 /* SDL_yuv_mmx.c in Sources */,
 28.1440 +				04409BA912FA989600FB9AA8 /* SDL_yuv_sw.c in Sources */,
 28.1441 +				04F7807612FB751400FC43C0 /* SDL_blendfillrect.c in Sources */,
 28.1442 +				04F7807812FB751400FC43C0 /* SDL_blendline.c in Sources */,
 28.1443 +				04F7807A12FB751400FC43C0 /* SDL_blendpoint.c in Sources */,
 28.1444 +				04F7807D12FB751400FC43C0 /* SDL_drawline.c in Sources */,
 28.1445 +				04F7807F12FB751400FC43C0 /* SDL_drawpoint.c in Sources */,
 28.1446 +				04F7808512FB753F00FC43C0 /* SDL_nullframebuffer.c in Sources */,
 28.1447 +				0442EC5112FE1C1E004C9285 /* SDL_render_sw.c in Sources */,
 28.1448 +				0442EC5312FE1C28004C9285 /* SDL_render_gles.c in Sources */,
 28.1449 +				0442EC5512FE1C3F004C9285 /* SDL_hints.c in Sources */,
 28.1450 +				0402A85812FE70C600CECEE3 /* SDL_render_gles2.c in Sources */,
 28.1451 +				0402A85912FE70C600CECEE3 /* SDL_shaders_gles2.c in Sources */,
 28.1452 +				04BAC09D1300C1290055DE28 /* SDL_log.c in Sources */,
 28.1453 +				56EA86FB13E9EC2B002E47EB /* SDL_coreaudio.c in Sources */,
 28.1454 +				93CB792613FC5F5300BD3E05 /* SDL_uikitviewcontroller.m in Sources */,
 28.1455 +			);
 28.1456 +			runOnlyForDeploymentPostprocessing = 0;
 28.1457 +		};
 28.1458 +/* End PBXSourcesBuildPhase section */
 28.1459 +
 28.1460 +/* Begin PBXTargetDependency section */
 28.1461 +		006E982B11955065001DE610 /* PBXTargetDependency */ = {
 28.1462 +			isa = PBXTargetDependency;
 28.1463 +			target = FD6526620DE8FCCB002AD96B /* libSDL */;
 28.1464 +			targetProxy = 006E982A11955065001DE610 /* PBXContainerItemProxy */;
 28.1465 +		};
 28.1466 +/* End PBXTargetDependency section */
 28.1467 +
 28.1468 +/* Begin XCBuildConfiguration section */
 28.1469 +		006E98251195505B001DE610 /* Debug */ = {
 28.1470 +			isa = XCBuildConfiguration;
 28.1471 +			buildSettings = {
 28.1472 +				CODE_SIGN_IDENTITY = "iPhone Developer";
 28.1473 +				COPY_PHASE_STRIP = NO;
 28.1474 +				INFOPLIST_FILE = "testsdl-Info.plist";
 28.1475 +				INSTALL_PATH = "$(HOME)/Applications";
 28.1476 +				OTHER_LDFLAGS = (
 28.1477 +					"-framework",
 28.1478 +					Foundation,
 28.1479 +					"-framework",
 28.1480 +					UIKit,
 28.1481 +				);
 28.1482 +				PRODUCT_NAME = testsdl;
 28.1483 +			};
 28.1484 +			name = Debug;
 28.1485 +		};
 28.1486 +		006E98261195505B001DE610 /* Release */ = {
 28.1487 +			isa = XCBuildConfiguration;
 28.1488 +			buildSettings = {
 28.1489 +				CODE_SIGN_IDENTITY = "iPhone Developer";
 28.1490 +				COPY_PHASE_STRIP = YES;
 28.1491 +				INFOPLIST_FILE = "testsdl-Info.plist";
 28.1492 +				INSTALL_PATH = "$(HOME)/Applications";
 28.1493 +				OTHER_LDFLAGS = (
 28.1494 +					"-framework",
 28.1495 +					Foundation,
 28.1496 +					"-framework",
 28.1497 +					UIKit,
 28.1498 +				);
 28.1499 +				PRODUCT_NAME = testsdl;
 28.1500 +			};
 28.1501 +			name = Release;
 28.1502 +		};
 28.1503 +		00B4F48C12F6A69C0084EC00 /* Debug */ = {
 28.1504 +			isa = XCBuildConfiguration;
 28.1505 +			buildSettings = {
 28.1506 +				COPY_PHASE_STRIP = NO;
 28.1507 +				GCC_DYNAMIC_NO_PIC = NO;
 28.1508 +				GCC_OPTIMIZATION_LEVEL = 0;
 28.1509 +				PRODUCT_NAME = PrepareXcodeProjectTemplate;
 28.1510 +			};
 28.1511 +			name = Debug;
 28.1512 +		};
 28.1513 +		00B4F48D12F6A69C0084EC00 /* Release */ = {
 28.1514 +			isa = XCBuildConfiguration;
 28.1515 +			buildSettings = {
 28.1516 +				COPY_PHASE_STRIP = YES;
 28.1517 +				DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
 28.1518 +				PRODUCT_NAME = PrepareXcodeProjectTemplate;
 28.1519 +				ZERO_LINK = NO;
 28.1520 +			};
 28.1521 +			name = Release;
 28.1522 +		};
 28.1523 +		C01FCF4F08A954540054247B /* Debug */ = {
 28.1524 +			isa = XCBuildConfiguration;
 28.1525 +			buildSettings = {
 28.1526 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
 28.1527 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 28.1528 +				GCC_OPTIMIZATION_LEVEL = 0;
 28.1529 +				GCC_WARN_ABOUT_RETURN_TYPE = YES;
 28.1530 +				IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
 28.1531 +				SDKROOT = iphoneos;
 28.1532 +				TARGETED_DEVICE_FAMILY = "1,2";
 28.1533 +			};
 28.1534 +			name = Debug;
 28.1535 +		};
 28.1536 +		C01FCF5008A954540054247B /* Release */ = {
 28.1537 +			isa = XCBuildConfiguration;
 28.1538 +			buildSettings = {
 28.1539 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
 28.1540 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
 28.1541 +				GCC_WARN_ABOUT_RETURN_TYPE = YES;
 28.1542 +				IPHONEOS_DEPLOYMENT_TARGET = 3.1.3;
 28.1543 +				SDKROOT = iphoneos;
 28.1544 +				TARGETED_DEVICE_FAMILY = "1,2";
 28.1545 +			};
 28.1546 +			name = Release;
 28.1547 +		};
 28.1548 +		FD6526640DE8FCCB002AD96B /* Debug */ = {
 28.1549 +			isa = XCBuildConfiguration;
 28.1550 +			buildSettings = {
 28.1551 +				COPY_PHASE_STRIP = NO;
 28.1552 +				PRODUCT_NAME = SDL;
 28.1553 +				SKIP_INSTALL = YES;
 28.1554 +			};
 28.1555 +			name = Debug;
 28.1556 +		};
 28.1557 +		FD6526650DE8FCCB002AD96B /* Release */ = {
 28.1558 +			isa = XCBuildConfiguration;
 28.1559 +			buildSettings = {
 28.1560 +				COPY_PHASE_STRIP = YES;
 28.1561 +				PRODUCT_NAME = SDL;
 28.1562 +				SKIP_INSTALL = YES;
 28.1563 +			};
 28.1564 +			name = Release;
 28.1565 +		};
 28.1566 +/* End XCBuildConfiguration section */
 28.1567 +
 28.1568 +/* Begin XCConfigurationList section */
 28.1569 +		006E98271195505B001DE610 /* Build configuration list for PBXNativeTarget "testsdl" */ = {
 28.1570 +			isa = XCConfigurationList;
 28.1571 +			buildConfigurations = (
 28.1572 +				006E98251195505B001DE610 /* Debug */,
 28.1573 +				006E98261195505B001DE610 /* Release */,
 28.1574 +			);
 28.1575 +			defaultConfigurationIsVisible = 0;
 28.1576 +			defaultConfigurationName = Release;
 28.1577 +		};
 28.1578 +		00B4F48E12F6A6BA0084EC00 /* Build configuration list for PBXAggregateTarget "PrepareXcodeProjectTemplate" */ = {
 28.1579 +			isa = XCConfigurationList;
 28.1580 +			buildConfigurations = (
 28.1581 +				00B4F48C12F6A69C0084EC00 /* Debug */,
 28.1582 +				00B4F48D12F6A69C0084EC00 /* Release */,
 28.1583 +			);
 28.1584 +			defaultConfigurationIsVisible = 0;
 28.1585 +			defaultConfigurationName = Release;
 28.1586 +		};
 28.1587 +		C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDL" */ = {
 28.1588 +			isa = XCConfigurationList;
 28.1589 +			buildConfigurations = (
 28.1590 +				C01FCF4F08A954540054247B /* Debug */,
 28.1591 +				C01FCF5008A954540054247B /* Release */,
 28.1592 +			);
 28.1593 +			defaultConfigurationIsVisible = 0;
 28.1594 +			defaultConfigurationName = Release;
 28.1595 +		};
 28.1596 +		FD6526990DE8FD14002AD96B /* Build configuration list for PBXNativeTarget "libSDL" */ = {
 28.1597 +			isa = XCConfigurationList;
 28.1598 +			buildConfigurations = (
 28.1599 +				FD6526640DE8FCCB002AD96B /* Debug */,
 28.1600 +				FD6526650DE8FCCB002AD96B /* Release */,
 28.1601 +			);
 28.1602 +			defaultConfigurationIsVisible = 0;
 28.1603 +			defaultConfigurationName = Release;
 28.1604 +		};
 28.1605 +/* End XCConfigurationList section */
 28.1606 +	};
 28.1607 +	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
 28.1608 +}
    29.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    29.2 +++ b/Xcode-iOS/SDL/testsdl-Info.plist	Thu Jan 05 21:41:55 2012 -0500
    29.3 @@ -0,0 +1,20 @@
    29.4 +<?xml version="1.0" encoding="UTF-8"?>
    29.5 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    29.6 +<plist version="1.0">
    29.7 +<dict>
    29.8 +	<key>CFBundleDevelopmentRegion</key>
    29.9 +	<string>English</string>
   29.10 +	<key>CFBundleExecutable</key>
   29.11 +	<string>${EXECUTABLE_NAME}</string>
   29.12 +	<key>CFBundleIdentifier</key>
   29.13 +	<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>
   29.14 +	<key>CFBundleInfoDictionaryVersion</key>
   29.15 +	<string>6.0</string>
   29.16 +	<key>CFBundlePackageType</key>
   29.17 +	<string>APPL</string>
   29.18 +	<key>CFBundleSignature</key>
   29.19 +	<string>????</string>
   29.20 +	<key>CFBundleVersion</key>
   29.21 +	<string>1.0</string>
   29.22 +</dict>
   29.23 +</plist>
    30.1 Binary file Xcode-iOS/Template/SDL iOS Application/Default.png has changed
    31.1 Binary file Xcode-iOS/Template/SDL iOS Application/Icon.png has changed
    32.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    32.2 +++ b/Xcode-iOS/Template/SDL iOS Application/Info.plist	Thu Jan 05 21:41:55 2012 -0500
    32.3 @@ -0,0 +1,28 @@
    32.4 +<?xml version="1.0" encoding="UTF-8"?>
    32.5 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    32.6 +<plist version="1.0">
    32.7 +<dict>
    32.8 +	<key>CFBundleDevelopmentRegion</key>
    32.9 +	<string>en</string>
   32.10 +	<key>CFBundleDisplayName</key>
   32.11 +	<string>${PRODUCT_NAME}</string>
   32.12 +	<key>CFBundleExecutable</key>
   32.13 +	<string>${EXECUTABLE_NAME}</string>
   32.14 +	<key>CFBundleIconFile</key>
   32.15 +	<string>Icon</string>
   32.16 +	<key>CFBundleIdentifier</key>
   32.17 +	<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>
   32.18 +	<key>CFBundleInfoDictionaryVersion</key>
   32.19 +	<string>6.0</string>
   32.20 +	<key>CFBundleName</key>
   32.21 +	<string>${PRODUCT_NAME}</string>
   32.22 +	<key>CFBundlePackageType</key>
   32.23 +	<string>APPL</string>
   32.24 +	<key>CFBundleSignature</key>
   32.25 +	<string>????</string>
   32.26 +	<key>CFBundleVersion</key>
   32.27 +	<string>1.0</string>
   32.28 +	<key>LSRequiresIPhoneOS</key>
   32.29 +	<false/>
   32.30 +</dict>
   32.31 +</plist>
    33.1 Binary file Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns has changed
    34.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    34.2 +++ b/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist	Thu Jan 05 21:41:55 2012 -0500
    34.3 @@ -0,0 +1,10 @@
    34.4 +<?xml version="1.0" encoding="UTF-8"?>
    34.5 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    34.6 +<plist version="1.0">
    34.7 +<dict>
    34.8 +	<key>Description</key>
    34.9 +	<string>This project builds an SDL based project for iPhone OS using C or Objective-C.  It includes everything you need to get up and running with SDL on iPhone.</string>
   34.10 +	<key>CFBundleIconFile</key>
   34.11 +	<string>Icon.png</string>
   34.12 +</dict>
   34.13 +</plist>
    35.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    35.2 +++ b/Xcode-iOS/Template/SDL iOS Application/___PROJECTNAME___.xcodeproj/project.pbxproj	Thu Jan 05 21:41:55 2012 -0500
    35.3 @@ -0,0 +1,405 @@
    35.4 +// !$*UTF8*$!
    35.5 +{
    35.6 +	archiveVersion = 1;
    35.7 +	classes = {
    35.8 +	};
    35.9 +	objectVersion = 45;
   35.10 +	objects = {
   35.11 +
   35.12 +/* Begin PBXBuildFile section */
   35.13 +		0097E2D912F70C4E00724AC5 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 0097E2D512F70C4D00724AC5 /* libSDL.a */; };
   35.14 +		1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1D30AB110D05D00D00671497 /* Foundation.framework */; };
   35.15 +		1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
   35.16 +		28FD15000DC6FC520079059D /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28FD14FF0DC6FC520079059D /* OpenGLES.framework */; };
   35.17 +		28FD15080DC6FC5B0079059D /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 28FD15070DC6FC5B0079059D /* QuartzCore.framework */; };
   35.18 +		FD779EDE0E26BA1200F39101 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FD779EDD0E26BA1200F39101 /* CoreAudio.framework */; };
   35.19 +		FD77A07D0E26BD8C00F39101 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = FD77A07C0E26BD8C00F39101 /* Icon.png */; };
   35.20 +		FD77A07F0E26BDA900F39101 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FD77A07E0E26BDA900F39101 /* Default.png */; };
   35.21 +		FD77A0850E26BDB800F39101 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FD77A0840E26BDB800F39101 /* AudioToolbox.framework */; };
   35.22 +		FD77A09D0E26BDE500F39101 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = FD77A09C0E26BDE500F39101 /* main.c */; };
   35.23 +		FDB8BFC60E5A0F6A00980157 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDB8BFC50E5A0F6A00980157 /* CoreGraphics.framework */; };
   35.24 +/* End PBXBuildFile section */
   35.25 +
   35.26 +/* Begin PBXFileReference section */
   35.27 +		0097E29A12F70C4D00724AC5 /* begin_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = begin_code.h; sourceTree = "<group>"; };
   35.28 +		0097E29B12F70C4D00724AC5 /* close_code.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = close_code.h; sourceTree = "<group>"; };
   35.29 +		0097E29C12F70C4D00724AC5 /* doxyfile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = doxyfile; sourceTree = "<group>"; };
   35.30 +		0097E29D12F70C4D00724AC5 /* SDL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL.h; sourceTree = "<group>"; };
   35.31 +		0097E29E12F70C4D00724AC5 /* SDL_assert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_assert.h; sourceTree = "<group>"; };
   35.32 +		0097E29F12F70C4D00724AC5 /* SDL_atomic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_atomic.h; sourceTree = "<group>"; };
   35.33 +		0097E2A012F70C4D00724AC5 /* SDL_audio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_audio.h; sourceTree = "<group>"; };
   35.34 +		0097E2A112F70C4D00724AC5 /* SDL_blendmode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_blendmode.h; sourceTree = "<group>"; };
   35.35 +		0097E2A212F70C4D00724AC5 /* SDL_clipboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_clipboard.h; sourceTree = "<group>"; };
   35.36 +		0097E2A312F70C4D00724AC5 /* SDL_compat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_compat.h; sourceTree = "<group>"; };
   35.37 +		0097E2A412F70C4D00724AC5 /* SDL_config.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config.h; sourceTree = "<group>"; };
   35.38 +		0097E2A512F70C4D00724AC5 /* SDL_config.h.default */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SDL_config.h.default; sourceTree = "<group>"; };
   35.39 +		0097E2A612F70C4D00724AC5 /* SDL_config.h.in */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = SDL_config.h.in; sourceTree = "<group>"; };
   35.40 +		0097E2A712F70C4D00724AC5 /* SDL_config_android.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_android.h; sourceTree = "<group>"; };
   35.41 +		0097E2A812F70C4D00724AC5 /* SDL_config_iphoneos.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_iphoneos.h; sourceTree = "<group>"; };
   35.42 +		0097E2A912F70C4D00724AC5 /* SDL_config_macosx.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_macosx.h; sourceTree = "<group>"; };
   35.43 +		0097E2AA12F70C4D00724AC5 /* SDL_config_minimal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_minimal.h; sourceTree = "<group>"; };
   35.44 +		0097E2AB12F70C4D00724AC5 /* SDL_config_nintendods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_nintendods.h; sourceTree = "<group>"; };
   35.45 +		0097E2AC12F70C4D00724AC5 /* SDL_config_pandora.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_pandora.h; sourceTree = "<group>"; };
   35.46 +		0097E2AD12F70C4D00724AC5 /* SDL_config_windows.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_windows.h; sourceTree = "<group>"; };
   35.47 +		0097E2AE12F70C4D00724AC5 /* SDL_config_wiz.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_config_wiz.h; sourceTree = "<group>"; };
   35.48 +		0097E2AF12F70C4D00724AC5 /* SDL_copying.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_copying.h; sourceTree = "<group>"; };
   35.49 +		0097E2B012F70C4D00724AC5 /* SDL_cpuinfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_cpuinfo.h; sourceTree = "<group>"; };
   35.50 +		0097E2B112F70C4D00724AC5 /* SDL_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_endian.h; sourceTree = "<group>"; };
   35.51 +		0097E2B212F70C4D00724AC5 /* SDL_error.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_error.h; sourceTree = "<group>"; };
   35.52 +		0097E2B312F70C4D00724AC5 /* SDL_events.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_events.h; sourceTree = "<group>"; };
   35.53 +		0097E2B412F70C4D00724AC5 /* SDL_gesture.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_gesture.h; sourceTree = "<group>"; };
   35.54 +		0097E2B512F70C4D00724AC5 /* SDL_haptic.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_haptic.h; sourceTree = "<group>"; };
   35.55 +		0097E2B612F70C4D00724AC5 /* SDL_input.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_input.h; sourceTree = "<group>"; };
   35.56 +		0097E2B712F70C4D00724AC5 /* SDL_joystick.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_joystick.h; sourceTree = "<group>"; };
   35.57 +		0097E2B812F70C4D00724AC5 /* SDL_keyboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_keyboard.h; sourceTree = "<group>"; };
   35.58 +		0097E2B912F70C4D00724AC5 /* SDL_keysym.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_keysym.h; sourceTree = "<group>"; };
   35.59 +		0097E2BA12F70C4D00724AC5 /* SDL_loadso.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_loadso.h; sourceTree = "<group>"; };
   35.60 +		0097E2BB12F70C4D00724AC5 /* SDL_main.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_main.h; sourceTree = "<group>"; };
   35.61 +		0097E2BC12F70C4D00724AC5 /* SDL_mouse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_mouse.h; sourceTree = "<group>"; };
   35.62 +		0097E2BD12F70C4D00724AC5 /* SDL_mutex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_mutex.h; sourceTree = "<group>"; };
   35.63 +		0097E2BE12F70C4D00724AC5 /* SDL_name.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_name.h; sourceTree = "<group>"; };
   35.64 +		0097E2BF12F70C4D00724AC5 /* SDL_opengl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_opengl.h; sourceTree = "<group>"; };
   35.65 +		0097E2C012F70C4D00724AC5 /* SDL_opengles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_opengles.h; sourceTree = "<group>"; };
   35.66 +		0097E2C112F70C4D00724AC5 /* SDL_pixels.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_pixels.h; sourceTree = "<group>"; };
   35.67 +		0097E2C212F70C4D00724AC5 /* SDL_platform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_platform.h; sourceTree = "<group>"; };
   35.68 +		0097E2C312F70C4D00724AC5 /* SDL_power.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_power.h; sourceTree = "<group>"; };
   35.69 +		0097E2C412F70C4D00724AC5 /* SDL_quit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_quit.h; sourceTree = "<group>"; };
   35.70 +		0097E2C512F70C4D00724AC5 /* SDL_rect.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rect.h; sourceTree = "<group>"; };
   35.71 +		0097E2C612F70C4D00724AC5 /* SDL_revision.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_revision.h; sourceTree = "<group>"; };
   35.72 +		0097E2C712F70C4D00724AC5 /* SDL_rwops.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_rwops.h; sourceTree = "<group>"; };
   35.73 +		0097E2C812F70C4D00724AC5 /* SDL_scalemode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_scalemode.h; sourceTree = "<group>"; };
   35.74 +		0097E2C912F70C4D00724AC5 /* SDL_scancode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_scancode.h; sourceTree = "<group>"; };
   35.75 +		0097E2CA12F70C4D00724AC5 /* SDL_shape.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_shape.h; sourceTree = "<group>"; };
   35.76 +		0097E2CB12F70C4D00724AC5 /* SDL_stdinc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_stdinc.h; sourceTree = "<group>"; };
   35.77 +		0097E2CC12F70C4D00724AC5 /* SDL_surface.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_surface.h; sourceTree = "<group>"; };
   35.78 +		0097E2CD12F70C4D00724AC5 /* SDL_syswm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_syswm.h; sourceTree = "<group>"; };
   35.79 +		0097E2CE12F70C4D00724AC5 /* SDL_thread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_thread.h; sourceTree = "<group>"; };
   35.80 +		0097E2CF12F70C4D00724AC5 /* SDL_timer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_timer.h; sourceTree = "<group>"; };
   35.81 +		0097E2D012F70C4D00724AC5 /* SDL_touch.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_touch.h; sourceTree = "<group>"; };
   35.82 +		0097E2D112F70C4D00724AC5 /* SDL_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_types.h; sourceTree = "<group>"; };
   35.83 +		0097E2D212F70C4D00724AC5 /* SDL_version.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_version.h; sourceTree = "<group>"; };
   35.84 +		0097E2D312F70C4D00724AC5 /* SDL_video.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_video.h; sourceTree = "<group>"; };
   35.85 +		0097E2D512F70C4D00724AC5 /* libSDL.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libSDL.a; sourceTree = "<group>"; };
   35.86 +		1D30AB110D05D00D00671497 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
   35.87 +		1D6058910D05DD3D006BFB54 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; };
   35.88 +		1DF5F4DF0D08C38300B7A737 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
   35.89 +		28FD14FF0DC6FC520079059D /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
   35.90 +		28FD15070DC6FC5B0079059D /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
   35.91 +		8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
   35.92 +		FD779EDD0E26BA1200F39101 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
   35.93 +		FD77A07C0E26BD8C00F39101 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = "<group>"; };
   35.94 +		FD77A07E0E26BDA900F39101 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
   35.95 +		FD77A0840E26BDB800F39101 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
   35.96 +		FD77A09C0E26BDE500F39101 /* main.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = "<group>"; };
   35.97 +		FDB8BFC50E5A0F6A00980157 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
   35.98 +/* End PBXFileReference section */
   35.99 +
  35.100 +/* Begin PBXFrameworksBuildPhase section */
  35.101 +		1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
  35.102 +			isa = PBXFrameworksBuildPhase;
  35.103 +			buildActionMask = 2147483647;
  35.104 +			files = (
  35.105 +				1D60589F0D05DD5A006BFB54 /* Foundation.framework in Frameworks */,
  35.106 +				1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */,
  35.107 +				28FD15000DC6FC520079059D /* OpenGLES.framework in Frameworks */,
  35.108 +				28FD15080DC6FC5B0079059D /* QuartzCore.framework in Frameworks */,
  35.109 +				FD779EDE0E26BA1200F39101 /* CoreAudio.framework in Frameworks */,
  35.110 +				FD77A0850E26BDB800F39101 /* AudioToolbox.framework in Frameworks */,
  35.111 +				FDB8BFC60E5A0F6A00980157 /* CoreGraphics.framework in Frameworks */,
  35.112 +				0097E2D912F70C4E00724AC5 /* libSDL.a in Frameworks */,
  35.113 +			);
  35.114 +			runOnlyForDeploymentPostprocessing = 0;
  35.115 +		};
  35.116 +/* End PBXFrameworksBuildPhase section */
  35.117 +
  35.118 +/* Begin PBXGroup section */
  35.119 +		0097E29812F70C4D00724AC5 /* SDL */ = {
  35.120 +			isa = PBXGroup;
  35.121 +			children = (
  35.122 +				0097E29912F70C4D00724AC5 /* include */,
  35.123 +				0097E2D412F70C4D00724AC5 /* lib */,
  35.124 +			);
  35.125 +			path = SDL;
  35.126 +			sourceTree = "<group>";
  35.127 +		};
  35.128 +		0097E29912F70C4D00724AC5 /* include */ = {
  35.129 +			isa = PBXGroup;
  35.130 +			children = (
  35.131 +				0097E29A12F70C4D00724AC5 /* begin_code.h */,
  35.132 +				0097E29B12F70C4D00724AC5 /* close_code.h */,
  35.133 +				0097E29C12F70C4D00724AC5 /* doxyfile */,
  35.134 +				0097E29D12F70C4D00724AC5 /* SDL.h */,
  35.135 +				0097E29E12F70C4D00724AC5 /* SDL_assert.h */,
  35.136 +				0097E29F12F70C4D00724AC5 /* SDL_atomic.h */,
  35.137 +				0097E2A012F70C4D00724AC5 /* SDL_audio.h */,
  35.138 +				0097E2A112F70C4D00724AC5 /* SDL_blendmode.h */,
  35.139 +				0097E2A212F70C4D00724AC5 /* SDL_clipboard.h */,
  35.140 +				0097E2A312F70C4D00724AC5 /* SDL_compat.h */,
  35.141 +				0097E2A412F70C4D00724AC5 /* SDL_config.h */,
  35.142 +				0097E2A512F70C4D00724AC5 /* SDL_config.h.default */,
  35.143 +				0097E2A612F70C4D00724AC5 /* SDL_config.h.in */,
  35.144 +				0097E2A712F70C4D00724AC5 /* SDL_config_android.h */,
  35.145 +				0097E2A812F70C4D00724AC5 /* SDL_config_iphoneos.h */,
  35.146 +				0097E2A912F70C4D00724AC5 /* SDL_config_macosx.h */,
  35.147 +				0097E2AA12F70C4D00724AC5 /* SDL_config_minimal.h */,
  35.148 +				0097E2AB12F70C4D00724AC5 /* SDL_config_nintendods.h */,
  35.149 +				0097E2AC12F70C4D00724AC5 /* SDL_config_pandora.h */,
  35.150 +				0097E2AD12F70C4D00724AC5 /* SDL_config_windows.h */,
  35.151 +				0097E2AE12F70C4D00724AC5 /* SDL_config_wiz.h */,
  35.152 +				0097E2AF12F70C4D00724AC5 /* SDL_copying.h */,
  35.153 +				0097E2B012F70C4D00724AC5 /* SDL_cpuinfo.h */,
  35.154 +				0097E2B112F70C4D00724AC5 /* SDL_endian.h */,
  35.155 +				0097E2B212F70C4D00724AC5 /* SDL_error.h */,
  35.156 +				0097E2B312F70C4D00724AC5 /* SDL_events.h */,
  35.157 +				0097E2B412F70C4D00724AC5 /* SDL_gesture.h */,
  35.158 +				0097E2B512F70C4D00724AC5 /* SDL_haptic.h */,
  35.159 +				0097E2B612F70C4D00724AC5 /* SDL_input.h */,
  35.160 +				0097E2B712F70C4D00724AC5 /* SDL_joystick.h */,
  35.161 +				0097E2B812F70C4D00724AC5 /* SDL_keyboard.h */,
  35.162 +				0097E2B912F70C4D00724AC5 /* SDL_keysym.h */,
  35.163 +				0097E2BA12F70C4D00724AC5 /* SDL_loadso.h */,
  35.164 +				0097E2BB12F70C4D00724AC5 /* SDL_main.h */,
  35.165 +				0097E2BC12F70C4D00724AC5 /* SDL_mouse.h */,
  35.166 +				0097E2BD12F70C4D00724AC5 /* SDL_mutex.h */,
  35.167 +				0097E2BE12F70C4D00724AC5 /* SDL_name.h */,
  35.168 +				0097E2BF12F70C4D00724AC5 /* SDL_opengl.h */,
  35.169 +				0097E2C012F70C4D00724AC5 /* SDL_opengles.h */,
  35.170 +				0097E2C112F70C4D00724AC5 /* SDL_pixels.h */,
  35.171 +				0097E2C212F70C4D00724AC5 /* SDL_platform.h */,
  35.172 +				0097E2C312F70C4D00724AC5 /* SDL_power.h */,
  35.173 +				0097E2C412F70C4D00724AC5 /* SDL_quit.h */,
  35.174 +				0097E2C512F70C4D00724AC5 /* SDL_rect.h */,
  35.175 +				0097E2C612F70C4D00724AC5 /* SDL_revision.h */,
  35.176 +				0097E2C712F70C4D00724AC5 /* SDL_rwops.h */,
  35.177 +				0097E2C812F70C4D00724AC5 /* SDL_scalemode.h */,
  35.178 +				0097E2C912F70C4D00724AC5 /* SDL_scancode.h */,
  35.179 +				0097E2CA12F70C4D00724AC5 /* SDL_shape.h */,
  35.180 +				0097E2CB12F70C4D00724AC5 /* SDL_stdinc.h */,
  35.181 +				0097E2CC12F70C4D00724AC5 /* SDL_surface.h */,
  35.182 +				0097E2CD12F70C4D00724AC5 /* SDL_syswm.h */,
  35.183 +				0097E2CE12F70C4D00724AC5 /* SDL_thread.h */,
  35.184 +				0097E2CF12F70C4D00724AC5 /* SDL_timer.h */,
  35.185 +				0097E2D012F70C4D00724AC5 /* SDL_touch.h */,
  35.186 +				0097E2D112F70C4D00724AC5 /* SDL_types.h */,
  35.187 +				0097E2D212F70C4D00724AC5 /* SDL_version.h */,
  35.188 +				0097E2D312F70C4D00724AC5 /* SDL_video.h */,
  35.189 +			);
  35.190 +			path = include;
  35.191 +			sourceTree = "<group>";
  35.192 +		};
  35.193 +		0097E2D412F70C4D00724AC5 /* lib */ = {
  35.194 +			isa = PBXGroup;
  35.195 +			children = (
  35.196 +				0097E2D512F70C4D00724AC5 /* libSDL.a */,
  35.197 +			);
  35.198 +			path = lib;
  35.199 +			sourceTree = "<group>";
  35.200 +		};
  35.201 +		19C28FACFE9D520D11CA2CBB /* Products */ = {
  35.202 +			isa = PBXGroup;
  35.203 +			children = (
  35.204 +				1D6058910D05DD3D006BFB54 /* ___PROJECTNAME___.app */,
  35.205 +			);
  35.206 +			name = Products;
  35.207 +			sourceTree = "<group>";
  35.208 +		};
  35.209 +		29B97314FDCFA39411CA2CEA /* CustomTemplate */ = {
  35.210 +			isa = PBXGroup;
  35.211 +			children = (
  35.212 +				29B97315FDCFA39411CA2CEA /* Sources */,
  35.213 +				29B97317FDCFA39411CA2CEA /* Resources */,
  35.214 +				0097E29812F70C4D00724AC5 /* SDL */,
  35.215 +				29B97323FDCFA39411CA2CEA /* Frameworks */,
  35.216 +				19C28FACFE9D520D11CA2CBB /* Products */,
  35.217 +			);
  35.218 +			name = CustomTemplate;
  35.219 +			sourceTree = "<group>";
  35.220 +		};
  35.221 +		29B97315FDCFA39411CA2CEA /* Sources */ = {
  35.222 +			isa = PBXGroup;
  35.223 +			children = (
  35.224 +				FD77A09C0E26BDE500F39101 /* main.c */,
  35.225 +			);
  35.226 +			name = Sources;
  35.227 +			sourceTree = "<group>";
  35.228 +		};
  35.229 +		29B97317FDCFA39411CA2CEA /* Resources */ = {
  35.230 +			isa = PBXGroup;
  35.231 +			children = (
  35.232 +				FD77A07E0E26BDA900F39101 /* Default.png */,
  35.233 +				FD77A07C0E26BD8C00F39101 /* Icon.png */,
  35.234 +				8D1107310486CEB800E47090 /* Info.plist */,
  35.235 +			);
  35.236 +			name = Resources;
  35.237 +			sourceTree = "<group>";
  35.238 +		};
  35.239 +		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
  35.240 +			isa = PBXGroup;
  35.241 +			children = (
  35.242 +				FDB8BFC50E5A0F6A00980157 /* CoreGraphics.framework */,
  35.243 +				FD77A0840E26BDB800F39101 /* AudioToolbox.framework */,
  35.244 +				FD779EDD0E26BA1200F39101 /* CoreAudio.framework */,
  35.245 +				28FD15070DC6FC5B0079059D /* QuartzCore.framework */,
  35.246 +				28FD14FF0DC6FC520079059D /* OpenGLES.framework */,
  35.247 +				1DF5F4DF0D08C38300B7A737 /* UIKit.framework */,
  35.248 +				1D30AB110D05D00D00671497 /* Foundation.framework */,
  35.249 +			);
  35.250 +			name = Frameworks;
  35.251 +			sourceTree = "<group>";
  35.252 +		};
  35.253 +/* End PBXGroup section */
  35.254 +
  35.255 +/* Begin PBXNativeTarget section */
  35.256 +		1D6058900D05DD3D006BFB54 /* ___PROJECTNAME___ */ = {
  35.257 +			isa = PBXNativeTarget;
  35.258 +			buildConfigurationList = 1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */;
  35.259 +			buildPhases = (
  35.260 +				1D60588D0D05DD3D006BFB54 /* Resources */,
  35.261 +				1D60588E0D05DD3D006BFB54 /* Sources */,
  35.262 +				1D60588F0D05DD3D006BFB54 /* Frameworks */,
  35.263 +			);
  35.264 +			buildRules = (
  35.265 +			);
  35.266 +			dependencies = (
  35.267 +			);
  35.268 +			name = "___PROJECTNAME___";
  35.269 +			productName = "___PROJECTNAME___";
  35.270 +			productReference = 1D6058910D05DD3D006BFB54 /* ___PROJECTNAME___.app */;
  35.271 +			productType = "com.apple.product-type.application";
  35.272 +		};
  35.273 +/* End PBXNativeTarget section */
  35.274 +
  35.275 +/* Begin PBXProject section */
  35.276 +		29B97313FDCFA39411CA2CEA /* Project object */ = {
  35.277 +			isa = PBXProject;
  35.278 +			buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */;
  35.279 +			compatibilityVersion = "Xcode 3.1";
  35.280 +			developmentRegion = English;
  35.281 +			hasScannedForEncodings = 1;
  35.282 +			knownRegions = (
  35.283 +				English,
  35.284 +				Japanese,
  35.285 +				French,
  35.286 +				German,
  35.287 +			);
  35.288 +			mainGroup = 29B97314FDCFA39411CA2CEA /* CustomTemplate */;
  35.289 +			projectDirPath = "";
  35.290 +			projectRoot = "";
  35.291 +			targets = (
  35.292 +				1D6058900D05DD3D006BFB54 /* ___PROJECTNAME___ */,
  35.293 +			);
  35.294 +		};
  35.295 +/* End PBXProject section */
  35.296 +
  35.297 +/* Begin PBXResourcesBuildPhase section */
  35.298 +		1D60588D0D05DD3D006BFB54 /* Resources */ = {
  35.299 +			isa = PBXResourcesBuildPhase;
  35.300 +			buildActionMask = 2147483647;
  35.301 +			files = (
  35.302 +				FD77A07D0E26BD8C00F39101 /* Icon.png in Resources */,
  35.303 +				FD77A07F0E26BDA900F39101 /* Default.png in Resources */,
  35.304 +			);
  35.305 +			runOnlyForDeploymentPostprocessing = 0;
  35.306 +		};
  35.307 +/* End PBXResourcesBuildPhase section */
  35.308 +
  35.309 +/* Begin PBXSourcesBuildPhase section */
  35.310 +		1D60588E0D05DD3D006BFB54 /* Sources */ = {
  35.311 +			isa = PBXSourcesBuildPhase;
  35.312 +			buildActionMask = 2147483647;
  35.313 +			files = (
  35.314 +				FD77A09D0E26BDE500F39101 /* main.c in Sources */,
  35.315 +			);
  35.316 +			runOnlyForDeploymentPostprocessing = 0;
  35.317 +		};
  35.318 +/* End PBXSourcesBuildPhase section */
  35.319 +
  35.320 +/* Begin XCBuildConfiguration section */
  35.321 +		1D6058940D05DD3E006BFB54 /* Debug */ = {
  35.322 +			isa = XCBuildConfiguration;
  35.323 +			buildSettings = {
  35.324 +				ALWAYS_SEARCH_USER_PATHS = NO;
  35.325 +				COPY_PHASE_STRIP = NO;
  35.326 +				GCC_DYNAMIC_NO_PIC = NO;
  35.327 +				GCC_OPTIMIZATION_LEVEL = 0;
  35.328 +				GCC_PRECOMPILE_PREFIX_HEADER = YES;
  35.329 +				GCC_PREFIX_HEADER = "";
  35.330 +				INFOPLIST_FILE = Info.plist;
  35.331 +				LIBRARY_SEARCH_PATHS = (
  35.332 +					"$(inherited)",
  35.333 +					"\"$(SRCROOT)/SDL/lib\"",
  35.334 +				);
  35.335 +				PRODUCT_NAME = "___PROJECTNAME___";
  35.336 +			};
  35.337 +			name = Debug;
  35.338 +		};
  35.339 +		1D6058950D05DD3E006BFB54 /* Release */ = {
  35.340 +			isa = XCBuildConfiguration;
  35.341 +			buildSettings = {
  35.342 +				ALWAYS_SEARCH_USER_PATHS = NO;
  35.343 +				COPY_PHASE_STRIP = YES;
  35.344 +				GCC_PRECOMPILE_PREFIX_HEADER = YES;
  35.345 +				GCC_PREFIX_HEADER = "";
  35.346 +				INFOPLIST_FILE = Info.plist;
  35.347 +				LIBRARY_SEARCH_PATHS = (
  35.348 +					"$(inherited)",
  35.349 +					"\"$(SRCROOT)/SDL/lib\"",
  35.350 +				);
  35.351 +				PRODUCT_NAME = "___PROJECTNAME___";
  35.352 +			};
  35.353 +			name = Release;
  35.354 +		};
  35.355 +		C01FCF4F08A954540054247B /* Debug */ = {
  35.356 +			isa = XCBuildConfiguration;
  35.357 +			buildSettings = {
  35.358 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
  35.359 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
  35.360 +				GCC_C_LANGUAGE_STANDARD = c99;
  35.361 +				GCC_WARN_ABOUT_RETURN_TYPE = YES;
  35.362 +				GCC_WARN_UNUSED_VARIABLE = YES;
  35.363 +				ONLY_ACTIVE_ARCH = YES;
  35.364 +				OTHER_CFLAGS = "";
  35.365 +				PREBINDING = NO;
  35.366 +				SDKROOT = iphoneos;
  35.367 +			};
  35.368 +			name = Debug;
  35.369 +		};
  35.370 +		C01FCF5008A954540054247B /* Release */ = {
  35.371 +			isa = XCBuildConfiguration;
  35.372 +			buildSettings = {
  35.373 +				ARCHS = "$(ARCHS_STANDARD_32_BIT)";
  35.374 +				"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
  35.375 +				GCC_C_LANGUAGE_STANDARD = c99;
  35.376 +				GCC_WARN_ABOUT_RETURN_TYPE = YES;
  35.377 +				GCC_WARN_UNUSED_VARIABLE = YES;
  35.378 +				OTHER_CFLAGS = "";
  35.379 +				PREBINDING = NO;
  35.380 +				SDKROOT = iphoneos;
  35.381 +			};
  35.382 +			name = Release;
  35.383 +		};
  35.384 +/* End XCBuildConfiguration section */
  35.385 +
  35.386 +/* Begin XCConfigurationList section */
  35.387 +		1D6058960D05DD3E006BFB54 /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = {
  35.388 +			isa = XCConfigurationList;
  35.389 +			buildConfigurations = (
  35.390 +				1D6058940D05DD3E006BFB54 /* Debug */,
  35.391 +				1D6058950D05DD3E006BFB54 /* Release */,
  35.392 +			);
  35.393 +			defaultConfigurationIsVisible = 0;
  35.394 +			defaultConfigurationName = Release;
  35.395 +		};
  35.396 +		C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = {
  35.397 +			isa = XCConfigurationList;
  35.398 +			buildConfigurations = (
  35.399 +				C01FCF4F08A954540054247B /* Debug */,
  35.400 +				C01FCF5008A954540054247B /* Release */,
  35.401 +			);
  35.402 +			defaultConfigurationIsVisible = 0;
  35.403 +			defaultConfigurationName = Release;
  35.404 +		};
  35.405 +/* End XCConfigurationList section */
  35.406 +	};
  35.407 +	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
  35.408 +}
    36.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    36.2 +++ b/Xcode-iOS/Template/SDL iOS Application/main.c	Thu Jan 05 21:41:55 2012 -0500
    36.3 @@ -0,0 +1,98 @@
    36.4 +/*
    36.5 + *	rectangles.c
    36.6 + *	written by Holmes Futrell
    36.7 + *	use however you want
    36.8 + */
    36.9 +
   36.10 +#include "SDL.h"
   36.11 +#include <time.h>
   36.12 +
   36.13 +#define SCREEN_WIDTH 320
   36.14 +#define SCREEN_HEIGHT 480
   36.15 +
   36.16 +int
   36.17 +randomInt(int min, int max)
   36.18 +{
   36.19 +    return min + rand() % (max - min + 1);
   36.20 +}
   36.21 +
   36.22 +void
   36.23 +render(SDL_Renderer *renderer)
   36.24 +{
   36.25 +
   36.26 +    Uint8 r, g, b;
   36.27 +
   36.28 +    /* Clear the screen */
   36.29 +    SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255);
   36.30 +    SDL_RenderClear(renderer);
   36.31 +
   36.32 +    /*  Come up with a random rectangle */
   36.33 +    SDL_Rect rect;
   36.34 +    rect.w = randomInt(64, 128);
   36.35 +    rect.h = randomInt(64, 128);
   36.36 +    rect.x = randomInt(0, SCREEN_WIDTH);
   36.37 +    rect.y = randomInt(0, SCREEN_HEIGHT);
   36.38 +
   36.39 +    /* Come up with a random color */
   36.40 +    r = randomInt(50, 255);
   36.41 +    g = randomInt(50, 255);
   36.42 +    b = randomInt(50, 255);
   36.43 +    SDL_SetRenderDrawColor(renderer, r, g, b, 255);
   36.44 +
   36.45 +    /*  Fill the rectangle in the color */
   36.46 +    SDL_RenderFillRect(renderer, &rect);
   36.47 +
   36.48 +    /* update screen */
   36.49 +    SDL_RenderPresent(renderer);
   36.50 +}
   36.51 +
   36.52 +int
   36.53 +main(int argc, char *argv[])
   36.54 +{
   36.55 +
   36.56 +    SDL_Window *window;
   36.57 +    SDL_Renderer *renderer;
   36.58 +    int done;
   36.59 +    SDL_Event event;
   36.60 +
   36.61 +    /* initialize SDL */
   36.62 +    if (SDL_Init(SDL_INIT_VIDEO) < 0) {
   36.63 +        printf("Could not initialize SDL\n");
   36.64 +        return 1;
   36.65 +    }
   36.66 +
   36.67 +    /* seed random number generator */
   36.68 +    srand(time(NULL));
   36.69 +
   36.70 +    /* create window and renderer */
   36.71 +    window =
   36.72 +        SDL_CreateWindow(NULL, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT,
   36.73 +                         SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN);
   36.74 +    if (!window) {
   36.75 +        printf("Could not initialize Window\n");
   36.76 +        return 1;
   36.77 +    }
   36.78 +
   36.79 +    renderer = SDL_CreateRenderer(window, -1, 0);
   36.80 +    if (!renderer) {
   36.81 +        printf("Could not create renderer\n");
   36.82 +        return 1;
   36.83 +    }
   36.84 +
   36.85 +    /* Enter render loop, waiting for user to quit */
   36.86 +    done = 0;
   36.87 +    while (!done) {
   36.88 +        while (SDL_PollEvent(&event)) {
   36.89 +            if (event.type == SDL_QUIT) {
   36.90 +                done = 1;
   36.91 +            }
   36.92 +        }
   36.93 +        render(renderer);
   36.94 +        SDL_Delay(1);
   36.95 +    }
   36.96 +
   36.97 +    /* shutdown SDL */
   36.98 +    SDL_Quit();
   36.99 +
  36.100 +    return 0;
  36.101 +}
    37.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    37.2 +++ b/Xcode-iOS/Test/Info.plist	Thu Jan 05 21:41:55 2012 -0500
    37.3 @@ -0,0 +1,28 @@
    37.4 +<?xml version="1.0" encoding="UTF-8"?>
    37.5 +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    37.6 +<plist version="1.0">
    37.7 +<dict>
    37.8 +	<key>CFBundleDevelopmentRegion</key>
    37.9 +	<string>en</string>
   37.10 +	<key>CFBundleDisplayName</key>
   37.11 +	<string>${PRODUCT_NAME}</string>
   37.12 +	<key>CFBundleExecutable</key>
   37.13 +	<string>${EXECUTABLE_NAME}</string>
   37.14 +	<key>CFBundleIconFile</key>
   37.15 +	<string></string>
   37.16 +	<key>CFBundleIdentifier</key>
   37.17 +	<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>
   37.18 +	<key>CFBundleInfoDictionaryVersion</key>
   37.19 +	<string>6.0</string>
   37.20 +	<key>CFBundleName</key>
   37.21 +	<string>${PRODUCT_NAME}</string>
   37.22 +	<key>CFBundlePackageType</key>
   37.23 +	<string>APPL</string>
   37.24 +	<key>CFBundleSignature</key>
   37.25 +	<string>????</string>
   37.26 +	<key>CFBundleVersion</key>
   37.27 +	<string>1.0</string>
   37.28 +	<key>NSMainNibFile</key>
   37.29 +	<string></string>
   37.30 +</dict>
   37.31 +</plist>
    38.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    38.2 +++ b/Xcode-iOS/Test/README	Thu Jan 05 21:41:55 2012 -0500
    38.3 @@ -0,0 +1,22 @@
    38.4 +TestiPhoneOS.xcodeproj contains targets to compile many of the SDL test programs for iPhone OS.  Most of these test programs work fine, with the following exceptions:
    38.5 +
    38.6 +testalpha:
    38.7 +	Program crashes.  Problem appears to effect Mac OS X as well.
    38.8 +
    38.9 +testthread:
   38.10 +	SIGTERM kills the process immediately without executing the 'kill' function.  The posix standard says this shouldn't happen.  Apple seems intent on having iPhone apps exit promptly when the user requests it, so maybe that's why(?)
   38.11 +
   38.12 +testlock:
   38.13 +	Locks appear to work, but there doesn't appear to be a simple way to send the process SIGINT.
   38.14 +
   38.15 +testpalette:
   38.16 +	"SDL error: blitting boat: Blit combination not supported."  Happens on Mac OS X as well.
   38.17 +
   38.18 +testsprite2: 
   38.19 +	SDL_CreateTextureFromSurface requests an ARGB pixel format, but iPhone's SDL video driver only supports ABGR.
   38.20 +
   38.21 +testwin:
   38.22 +	Behaves as it does under Mac OS X ... not sure if that is correctly or not.
   38.23 +
   38.24 +threadwin:
   38.25 +	Works if -threaded is not on.  Otherwise it doesn't work, but this is true under Mac OS X as well.
    39.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    39.2 +++ b/Xcode-iOS/Test/TestiPhoneOS.xcodeproj/project.pbxproj	Thu Jan 05 21:41:55 2012 -0500
    39.3 @@ -0,0 +1,3149 @@
    39.4 +// !$*UTF8*$!
    39.5 +{
    39.6 +	archiveVersion = 1;
    39.7 +	classes = {
    39.8 +	};
    39.9 +	objectVersion = 45;
   39.10 +	objects = {
   39.11 +
   39.12 +/* Begin PBXBuildFile section */
   39.13 +		046CEF7713254F23007AD51D /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
   39.14 +		046CEF7B13254F23007AD51D /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
   39.15 +		046CEF7C13254F23007AD51D /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.16 +		046CEF7D13254F23007AD51D /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.17 +		046CEF7E13254F23007AD51D /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.18 +		046CEF7F13254F23007AD51D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.19 +		046CEF8013254F23007AD51D /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.20 +		046CEF8113254F23007AD51D /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.21 +		046CEF8213254F23007AD51D /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.22 +		046CEF8A13254F63007AD51D /* testgesture.c in Sources */ = {isa = PBXBuildFile; fileRef = 046CEF8913254F63007AD51D /* testgesture.c */; };
   39.23 +		047A63E213285C3200CD7973 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
   39.24 +		047A63E313285C3200CD7973 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.25 +		047A63E413285C3200CD7973 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.26 +		047A63E513285C3200CD7973 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.27 +		047A63E613285C3200CD7973 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.28 +		047A63E713285C3200CD7973 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.29 +		047A63E813285C3200CD7973 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.30 +		047A63E913285C3200CD7973 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.31 +		047A63F113285CD100CD7973 /* checkkeys.c in Sources */ = {isa = PBXBuildFile; fileRef = 047A63F013285CD100CD7973 /* checkkeys.c */; };
   39.32 +		56ED04FE118A8FE400A56AA6 /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
   39.33 +		56ED0502118A8FE400A56AA6 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
   39.34 +		56ED0503118A8FE400A56AA6 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.35 +		56ED0504118A8FE400A56AA6 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.36 +		56ED0505118A8FE400A56AA6 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.37 +		56ED0506118A8FE400A56AA6 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.38 +		56ED0507118A8FE400A56AA6 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.39 +		56ED0508118A8FE400A56AA6 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.40 +		56ED0509118A8FE400A56AA6 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.41 +		56ED0511118A904200A56AA6 /* testpower.c in Sources */ = {isa = PBXBuildFile; fileRef = 56ED0510118A904200A56AA6 /* testpower.c */; };
   39.42 +		FDA8A79B0E2D0F8B00EA573E /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7840E2D0F1F00EA573E /* common.c */; };
   39.43 +		FDA8A79C0E2D0F9300EA573E /* testwm2.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A75F0E2D0F1600EA573E /* testwm2.c */; };
   39.44 +		FDA8A89F0E2D111A00EA573E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.45 +		FDA8A8A00E2D111A00EA573E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.46 +		FDA8A8A10E2D111A00EA573E /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.47 +		FDA8A8A20E2D111A00EA573E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.48 +		FDA8A8A30E2D111A00EA573E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.49 +		FDA8A8A40E2D111A00EA573E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.50 +		FDA8A8A50E2D111A00EA573E /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.51 +		FDA8A9250E2D1C0B00EA573E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.52 +		FDA8A9260E2D1C0B00EA573E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.53 +		FDA8A9270E2D1C0B00EA573E /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.54 +		FDA8A9280E2D1C0B00EA573E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.55 +		FDA8A9290E2D1C0B00EA573E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.56 +		FDA8A92A0E2D1C0B00EA573E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.57 +		FDA8A92B0E2D1C0B00EA573E /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.58 +		FDA8A9340E2D1D1300EA573E /* graywin.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7870E2D0F2700EA573E /* graywin.c */; };
   39.59 +		FDA8AAB10E2D330F00EA573E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.60 +		FDA8AAB20E2D330F00EA573E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.61 +		FDA8AAB30E2D330F00EA573E /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.62 +		FDA8AAB40E2D330F00EA573E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.63 +		FDA8AAB50E2D330F00EA573E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.64 +		FDA8AAB60E2D330F00EA573E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.65 +		FDA8AAB70E2D330F00EA573E /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.66 +		FDA8AABE0E2D335C00EA573E /* loopwave.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A78B0E2D0F3D00EA573E /* loopwave.c */; };
   39.67 +		FDA8AAE30E2D33C600EA573E /* sample.wav in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAE20E2D33C600EA573E /* sample.wav */; };
   39.68 +		FDA8AB1C0E2D386600EA573E /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.69 +		FDA8AB1D0E2D386600EA573E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.70 +		FDA8AB1E0E2D386600EA573E /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.71 +		FDA8AB1F0E2D386600EA573E /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.72 +		FDA8AB200E2D386600EA573E /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.73 +		FDA8AB210E2D386600EA573E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.74 +		FDA8AB220E2D386600EA573E /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.75 +		FDA8AB290E2D387B00EA573E /* testalpha.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7400E2D0F1600EA573E /* testalpha.c */; };
   39.76 +		FDA8AB2A0E2D388700EA573E /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
   39.77 +		FDAAC3C30E2D47E6001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.78 +		FDAAC3C40E2D47E6001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.79 +		FDAAC3C50E2D47E6001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.80 +		FDAAC3C60E2D47E6001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.81 +		FDAAC3C70E2D47E6001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.82 +		FDAAC3C80E2D47E6001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.83 +		FDAAC3C90E2D47E6001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.84 +		FDAAC3D30E2D4800001DB1D8 /* testaudioinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7410E2D0F1600EA573E /* testaudioinfo.c */; };
   39.85 +		FDAAC4370E2D4961001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.86 +		FDAAC4380E2D4961001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.87 +		FDAAC4390E2D4961001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.88 +		FDAAC43A0E2D4961001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.89 +		FDAAC43B0E2D4961001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.90 +		FDAAC43C0E2D4961001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.91 +		FDAAC43D0E2D4961001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
   39.92 +		FDAAC4440E2D4989001DB1D8 /* testbitmap.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7420E2D0F1600EA573E /* testbitmap.c */; };
   39.93 +		FDAAC45B0E2D4C27001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
   39.94 +		FDAAC45C0E2D4C27001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
   39.95 +		FDAAC45D0E2D4C27001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
   39.96 +		FDAAC45E0E2D4C27001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
   39.97 +		FDAAC45F0E2D4C27001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
   39.98 +		FDAAC4600E2D4C27001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
   39.99 +		FDAAC4610E2D4C27001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.100 +		FDAAC4680E2D4C9C001DB1D8 /* testblitspeed.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7430E2D0F1600EA573E /* testblitspeed.c */; };
  39.101 +		FDAAC46B0E2D4CDE001DB1D8 /* sample.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AADE0E2D33C100EA573E /* sample.bmp */; };
  39.102 +		FDAAC50B0E2D4FEB001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.103 +		FDAAC50C0E2D4FEB001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.104 +		FDAAC50D0E2D4FEB001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.105 +		FDAAC50E0E2D4FEB001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.106 +		FDAAC50F0E2D4FEB001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.107 +		FDAAC5100E2D4FEB001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.108 +		FDAAC5110E2D4FEB001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.109 +		FDAAC53A0E2D517D001DB1D8 /* testdyngles.c in Sources */ = {isa = PBXBuildFile; fileRef = FDAAC5390E2D517D001DB1D8 /* testdyngles.c */; };
  39.110 +		FDAAC5910E2D5429001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.111 +		FDAAC5920E2D5429001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.112 +		FDAAC5930E2D5429001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.113 +		FDAAC5940E2D5429001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.114 +		FDAAC5950E2D5429001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.115 +		FDAAC5960E2D5429001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.116 +		FDAAC5970E2D5429001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.117 +		FDAAC59F0E2D54B8001DB1D8 /* testerror.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7470E2D0F1600EA573E /* testerror.c */; };
  39.118 +		FDAAC5BF0E2D55B5001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.119 +		FDAAC5C00E2D55B5001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.120 +		FDAAC5C10E2D55B5001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.121 +		FDAAC5C20E2D55B5001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.122 +		FDAAC5C30E2D55B5001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.123 +		FDAAC5C40E2D55B5001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.124 +		FDAAC5C50E2D55B5001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.125 +		FDAAC5CC0E2D55CA001DB1D8 /* testfile.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7480E2D0F1600EA573E /* testfile.c */; };
  39.126 +		FDAAC5F00E2D5843001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.127 +		FDAAC5F10E2D5843001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.128 +		FDAAC5F20E2D5843001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.129 +		FDAAC5F30E2D5843001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.130 +		FDAAC5F40E2D5843001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.131 +		FDAAC5F50E2D5843001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.132 +		FDAAC5F60E2D5843001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.133 +		FDAAC6030E2D5886001DB1D8 /* testgamma.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7490E2D0F1600EA573E /* testgamma.c */; };
  39.134 +		FDAAC61C0E2D5914001DB1D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.135 +		FDAAC61D0E2D5914001DB1D8 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.136 +		FDAAC61E0E2D5914001DB1D8 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.137 +		FDAAC61F0E2D5914001DB1D8 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.138 +		FDAAC6200E2D5914001DB1D8 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.139 +		FDAAC6210E2D5914001DB1D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.140 +		FDAAC6220E2D5914001DB1D8 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.141 +		FDAAC62A0E2D5960001DB1D8 /* testgles.c in Sources */ = {isa = PBXBuildFile; fileRef = FDAAC6290E2D5960001DB1D8 /* testgles.c */; };
  39.142 +		FDAAC6390E2D59BE001DB1D8 /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.143 +		FDAAC7780E2D7024001DB1D8 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7840E2D0F1F00EA573E /* common.c */; };
  39.144 +		FDBDE54B0E31338A006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.145 +		FDBDE56B0E3133F5006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.146 +		FDBDE5780E313425006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.147 +		FDBDE57C0E313445006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.148 +		FDBDE5810E313465006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.149 +		FDBDE5850E313495006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.150 +		FDBDE5890E3134B8006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.151 +		FDBDE58C0E3134F3006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.152 +		FDBDE5920E313531006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.153 +		FDBDE59B0E31356A006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.154 +		FDBDE59F0E31358D006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.155 +		FDBDE5A10E313594006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.156 +		FDBDE5A90E3135C0006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.157 +		FDBDE5AE0E3135E6006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.158 +		FDBDE5B60E3135FE006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.159 +		FDBDE5BC0E31364D006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.160 +		FDBDE5C20E313663006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.161 +		FDBDE5C60E3136F1006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.162 +		FDBDE5C80E313702006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.163 +		FDBDE5CA0E313712006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.164 +		FDBDE5CC0E31372B006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.165 +		FDBDE5CE0E31373E006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.166 +		FDBDE5D00E31375B006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.167 +		FDBDE5D20E31376B006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.168 +		FDBDE5D40E313789006BAC0B /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.169 +		FDC42FF40F0D866D009C87E1 /* libSDL.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1B48B80E3131CA007AB34E /* libSDL.a */; };
  39.170 +		FDC42FF60F0D866D009C87E1 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.171 +		FDC42FF70F0D866D009C87E1 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.172 +		FDC42FF80F0D866D009C87E1 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.173 +		FDC42FF90F0D866D009C87E1 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.174 +		FDC42FFA0F0D866D009C87E1 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.175 +		FDC42FFB0F0D866D009C87E1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.176 +		FDC42FFC0F0D866D009C87E1 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.177 +		FDC4300A0F0D86BF009C87E1 /* testdraw2.c in Sources */ = {isa = PBXBuildFile; fileRef = FDC430090F0D86BF009C87E1 /* testdraw2.c */; };
  39.178 +		FDC4301F0F0D8702009C87E1 /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7840E2D0F1F00EA573E /* common.c */; };
  39.179 +		FDD2C1000E2E4F4B00B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.180 +		FDD2C1010E2E4F4B00B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.181 +		FDD2C1020E2E4F4B00B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.182 +		FDD2C1030E2E4F4B00B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.183 +		FDD2C1040E2E4F4B00B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.184 +		FDD2C1050E2E4F4B00B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.185 +		FDD2C1060E2E4F4B00B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.186 +		FDD2C10D0E2E4F6900B7A85F /* testthread.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A74C0E2D0F1600EA573E /* testthread.c */; };
  39.187 +		FDD2C1770E2E52C000B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.188 +		FDD2C1780E2E52C000B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.189 +		FDD2C1790E2E52C000B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.190 +		FDD2C17A0E2E52C000B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.191 +		FDD2C17B0E2E52C000B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.192 +		FDD2C17C0E2E52C000B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.193 +		FDD2C17D0E2E52C000B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.194 +		FDD2C1840E2E52D900B7A85F /* testiconv.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A74D0E2D0F1600EA573E /* testiconv.c */; };
  39.195 +		FDD2C18B0E2E52FE00B7A85F /* utf8.txt in Resources */ = {isa = PBXBuildFile; fileRef = FDD2C18A0E2E52FE00B7A85F /* utf8.txt */; };
  39.196 +		FDD2C19B0E2E534F00B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.197 +		FDD2C19C0E2E534F00B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.198 +		FDD2C19D0E2E534F00B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.199 +		FDD2C19E0E2E534F00B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.200 +		FDD2C19F0E2E534F00B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.201 +		FDD2C1A00E2E534F00B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.202 +		FDD2C1A10E2E534F00B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.203 +		FDD2C1A80E2E536400B7A85F /* testjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A74E0E2D0F1600EA573E /* testjoystick.c */; };
  39.204 +		FDD2C4540E2E773800B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.205 +		FDD2C4550E2E773800B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.206 +		FDD2C4560E2E773800B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.207 +		FDD2C4570E2E773800B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.208 +		FDD2C4580E2E773800B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.209 +		FDD2C4590E2E773800B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.210 +		FDD2C45A0E2E773800B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.211 +		FDD2C4610E2E777500B7A85F /* testkeys.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A74F0E2D0F1600EA573E /* testkeys.c */; };
  39.212 +		FDD2C4720E2E77D700B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.213 +		FDD2C4730E2E77D700B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.214 +		FDD2C4740E2E77D700B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.215 +		FDD2C4750E2E77D700B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.216 +		FDD2C4760E2E77D700B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.217 +		FDD2C4770E2E77D700B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.218 +		FDD2C4780E2E77D700B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.219 +		FDD2C47F0E2E77E300B7A85F /* testlock.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7510E2D0F1600EA573E /* testlock.c */; };
  39.220 +		FDD2C5010E2E7F4800B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.221 +		FDD2C5020E2E7F4800B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.222 +		FDD2C5030E2E7F4800B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.223 +		FDD2C5040E2E7F4800B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.224 +		FDD2C5050E2E7F4800B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.225 +		FDD2C5060E2E7F4800B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.226 +		FDD2C5070E2E7F4800B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.227 +		FDD2C50E0E2E7F5800B7A85F /* testplatform.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7560E2D0F1600EA573E /* testplatform.c */; };
  39.228 +		FDD2C51F0E2E807600B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.229 +		FDD2C5200E2E807600B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.230 +		FDD2C5210E2E807600B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.231 +		FDD2C5220E2E807600B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.232 +		FDD2C5230E2E807600B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.233 +		FDD2C5240E2E807600B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.234 +		FDD2C5250E2E807600B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.235 +		FDD2C52C0E2E808700B7A85F /* testsem.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7570E2D0F1600EA573E /* testsem.c */; };
  39.236 +		FDD2C5440E2E80E400B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.237 +		FDD2C5450E2E80E400B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.238 +		FDD2C5460E2E80E400B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.239 +		FDD2C5470E2E80E400B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.240 +		FDD2C5480E2E80E400B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.241 +		FDD2C5490E2E80E400B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.242 +		FDD2C54A0E2E80E400B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.243 +		FDD2C5510E2E80F400B7A85F /* testsprite2.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7590E2D0F1600EA573E /* testsprite2.c */; };
  39.244 +		FDD2C5520E2E812C00B7A85F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.245 +		FDD2C5630E2E815C00B7A85F /* common.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7840E2D0F1F00EA573E /* common.c */; };
  39.246 +		FDD2C5760E2E8C7400B7A85F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.247 +		FDD2C57D0E2E8C7400B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.248 +		FDD2C57E0E2E8C7400B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.249 +		FDD2C57F0E2E8C7400B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.250 +		FDD2C5800E2E8C7400B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.251 +		FDD2C5810E2E8C7400B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.252 +		FDD2C5820E2E8C7400B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.253 +		FDD2C5830E2E8C7400B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.254 +		FDD2C58A0E2E8CB500B7A85F /* testtimer.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A75A0E2D0F1600EA573E /* testtimer.c */; };
  39.255 +		FDD2C5B50E2E8CFC00B7A85F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.256 +		FDD2C5BB0E2E8CFC00B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.257 +		FDD2C5BC0E2E8CFC00B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.258 +		FDD2C5BD0E2E8CFC00B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.259 +		FDD2C5BE0E2E8CFC00B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.260 +		FDD2C5BF0E2E8CFC00B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.261 +		FDD2C5C00E2E8CFC00B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.262 +		FDD2C5C10E2E8CFC00B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.263 +		FDD2C5C80E2E8D1200B7A85F /* testver.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A75B0E2D0F1600EA573E /* testver.c */; };
  39.264 +		FDD2C5D10E2E8E0300B7A85F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.265 +		FDD2C5D70E2E8E0300B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.266 +		FDD2C5D80E2E8E0300B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.267 +		FDD2C5D90E2E8E0300B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.268 +		FDD2C5DA0E2E8E0300B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.269 +		FDD2C5DB0E2E8E0300B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.270 +		FDD2C5DC0E2E8E0300B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.271 +		FDD2C5DD0E2E8E0300B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.272 +		FDD2C5E40E2E8E1300B7A85F /* testvidinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A75C0E2D0F1600EA573E /* testvidinfo.c */; };
  39.273 +		FDD2C61D0E2E8F0600B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.274 +		FDD2C61E0E2E8F0600B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.275 +		FDD2C61F0E2E8F0600B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.276 +		FDD2C6200E2E8F0600B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.277 +		FDD2C6210E2E8F0600B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.278 +		FDD2C6220E2E8F0600B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.279 +		FDD2C6230E2E8F0600B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.280 +		FDD2C62B0E2E8F1600B7A85F /* testwin.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A75D0E2D0F1600EA573E /* testwin.c */; };
  39.281 +		FDD2C62C0E2E8F2100B7A85F /* sample.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AADE0E2D33C100EA573E /* sample.bmp */; };
  39.282 +		FDD2C6A90E2E92D200B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.283 +		FDD2C6AA0E2E92D200B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.284 +		FDD2C6AB0E2E92D200B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.285 +		FDD2C6AC0E2E92D200B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.286 +		FDD2C6AD0E2E92D200B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.287 +		FDD2C6AE0E2E92D200B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.288 +		FDD2C6AF0E2E92D200B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.289 +		FDD2C6B60E2E92F100B7A85F /* threadwin.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7600E2D0F1600EA573E /* threadwin.c */; };
  39.290 +		FDD2C6C20E2E936500B7A85F /* icon.bmp in Resources */ = {isa = PBXBuildFile; fileRef = FDA8AAD90E2D33B000EA573E /* icon.bmp */; };
  39.291 +		FDD2C6EA0E2E959E00B7A85F /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */; };
  39.292 +		FDD2C6EB0E2E959E00B7A85F /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A8990E2D111A00EA573E /* QuartzCore.framework */; };
  39.293 +		FDD2C6EC0E2E959E00B7A85F /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */; };
  39.294 +		FDD2C6ED0E2E959E00B7A85F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */; };
  39.295 +		FDD2C6EE0E2E959E00B7A85F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89C0E2D111A00EA573E /* UIKit.framework */; };
  39.296 +		FDD2C6EF0E2E959E00B7A85F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89D0E2D111A00EA573E /* Foundation.framework */; };
  39.297 +		FDD2C6F00E2E959E00B7A85F /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */; };
  39.298 +		FDD2C6F70E2E95B100B7A85F /* torturethread.c in Sources */ = {isa = PBXBuildFile; fileRef = FDA8A7610E2D0F1600EA573E /* torturethread.c */; };
  39.299 +/* End PBXBuildFile section */
  39.300 +
  39.301 +/* Begin PBXContainerItemProxy section */
  39.302 +		0466EE6F11E565E4000198A4 /* PBXContainerItemProxy */ = {
  39.303 +			isa = PBXContainerItemProxy;
  39.304 +			containerPortal = FD1B48AC0E3131CA007AB34E /* SDLiPhoneOS.xcodeproj */;
  39.305 +			proxyType = 2;
  39.306 +			remoteGlobalIDString = 006E982211955059001DE610;
  39.307 +			remoteInfo = testsdl;
  39.308 +		};
  39.309 +		FD1B48B70E3131CA007AB34E /* PBXContainerItemProxy */ = {
  39.310 +			isa = PBXContainerItemProxy;
  39.311 +			containerPortal = FD1B48AC0E3131CA007AB34E /* SDLiPhoneOS.xcodeproj */;
  39.312 +			proxyType = 2;
  39.313 +			remoteGlobalIDString = FD6526630DE8FCCB002AD96B;
  39.314 +			remoteInfo = StaticLibiPhoneOS;
  39.315 +		};
  39.316 +/* End PBXContainerItemProxy section */
  39.317 +
  39.318 +/* Begin PBXFileReference section */
  39.319 +		046CEF8613254F23007AD51D /* testgesture.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgesture.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.320 +		046CEF8913254F63007AD51D /* testgesture.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testgesture.c; path = ../../test/testgesture.c; sourceTree = SOURCE_ROOT; };
  39.321 +		047A63ED13285C3200CD7973 /* checkkeys.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = checkkeys.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.322 +		047A63F013285CD100CD7973 /* checkkeys.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = checkkeys.c; path = ../../test/checkkeys.c; sourceTree = SOURCE_ROOT; };
  39.323 +		1D6058910D05DD3D006BFB54 /* testwm2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testwm2.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.324 +		56ED050D118A8FE400A56AA6 /* testpower.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testpower.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.325 +		56ED0510118A904200A56AA6 /* testpower.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testpower.c; path = ../../test/testpower.c; sourceTree = SOURCE_ROOT; };
  39.326 +		FD1B48AC0E3131CA007AB34E /* SDLiPhoneOS.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDLiPhoneOS.xcodeproj; path = ../SDL/SDLiPhoneOS.xcodeproj; sourceTree = SOURCE_ROOT; };
  39.327 +		FDA8A7400E2D0F1600EA573E /* testalpha.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testalpha.c; path = ../../test/testalpha.c; sourceTree = SOURCE_ROOT; };
  39.328 +		FDA8A7410E2D0F1600EA573E /* testaudioinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testaudioinfo.c; path = ../../test/testaudioinfo.c; sourceTree = SOURCE_ROOT; };
  39.329 +		FDA8A7420E2D0F1600EA573E /* testbitmap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testbitmap.c; path = ../../test/testbitmap.c; sourceTree = SOURCE_ROOT; };
  39.330 +		FDA8A7430E2D0F1600EA573E /* testblitspeed.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testblitspeed.c; path = ../../test/testblitspeed.c; sourceTree = SOURCE_ROOT; };
  39.331 +		FDA8A7450E2D0F1600EA573E /* testcursor.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testcursor.c; path = ../../test/testcursor.c; sourceTree = SOURCE_ROOT; };
  39.332 +		FDA8A7470E2D0F1600EA573E /* testerror.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testerror.c; path = ../../test/testerror.c; sourceTree = SOURCE_ROOT; };
  39.333 +		FDA8A7480E2D0F1600EA573E /* testfile.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testfile.c; path = ../../test/testfile.c; sourceTree = SOURCE_ROOT; };
  39.334 +		FDA8A7490E2D0F1600EA573E /* testgamma.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testgamma.c; path = ../../test/testgamma.c; sourceTree = SOURCE_ROOT; };
  39.335 +		FDA8A74C0E2D0F1600EA573E /* testthread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testthread.c; path = ../../test/testthread.c; sourceTree = SOURCE_ROOT; };
  39.336 +		FDA8A74D0E2D0F1600EA573E /* testiconv.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testiconv.c; path = ../../test/testiconv.c; sourceTree = SOURCE_ROOT; };
  39.337 +		FDA8A74E0E2D0F1600EA573E /* testjoystick.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testjoystick.c; path = ../../test/testjoystick.c; sourceTree = SOURCE_ROOT; };
  39.338 +		FDA8A74F0E2D0F1600EA573E /* testkeys.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testkeys.c; path = ../../test/testkeys.c; sourceTree = SOURCE_ROOT; };
  39.339 +		FDA8A7500E2D0F1600EA573E /* testloadso.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testloadso.c; path = ../../test/testloadso.c; sourceTree = SOURCE_ROOT; };
  39.340 +		FDA8A7510E2D0F1600EA573E /* testlock.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testlock.c; path = ../../test/testlock.c; sourceTree = SOURCE_ROOT; };
  39.341 +		FDA8A7520E2D0F1600EA573E /* testmultiaudio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testmultiaudio.c; path = ../../test/testmultiaudio.c; sourceTree = SOURCE_ROOT; };
  39.342 +		FDA8A7530E2D0F1600EA573E /* testoverlay.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testoverlay.c; path = ../../test/testoverlay.c; sourceTree = SOURCE_ROOT; };
  39.343 +		FDA8A7540E2D0F1600EA573E /* testoverlay2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testoverlay2.c; path = ../../test/testoverlay2.c; sourceTree = SOURCE_ROOT; };
  39.344 +		FDA8A7560E2D0F1600EA573E /* testplatform.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testplatform.c; path = ../../test/testplatform.c; sourceTree = SOURCE_ROOT; };
  39.345 +		FDA8A7570E2D0F1600EA573E /* testsem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testsem.c; path = ../../test/testsem.c; sourceTree = SOURCE_ROOT; };
  39.346 +		FDA8A7580E2D0F1600EA573E /* testsprite.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testsprite.c; path = ../../test/testsprite.c; sourceTree = SOURCE_ROOT; };
  39.347 +		FDA8A7590E2D0F1600EA573E /* testsprite2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testsprite2.c; path = ../../test/testsprite2.c; sourceTree = SOURCE_ROOT; };
  39.348 +		FDA8A75A0E2D0F1600EA573E /* testtimer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testtimer.c; path = ../../test/testtimer.c; sourceTree = SOURCE_ROOT; };
  39.349 +		FDA8A75B0E2D0F1600EA573E /* testver.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testver.c; path = ../../test/testver.c; sourceTree = SOURCE_ROOT; };
  39.350 +		FDA8A75C0E2D0F1600EA573E /* testvidinfo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testvidinfo.c; path = ../../test/testvidinfo.c; sourceTree = SOURCE_ROOT; };
  39.351 +		FDA8A75D0E2D0F1600EA573E /* testwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testwin.c; path = ../../test/testwin.c; sourceTree = SOURCE_ROOT; };
  39.352 +		FDA8A75E0E2D0F1600EA573E /* testwm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testwm.c; path = ../../test/testwm.c; sourceTree = SOURCE_ROOT; };
  39.353 +		FDA8A75F0E2D0F1600EA573E /* testwm2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testwm2.c; path = ../../test/testwm2.c; sourceTree = SOURCE_ROOT; };
  39.354 +		FDA8A7600E2D0F1600EA573E /* threadwin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = threadwin.c; path = ../../test/threadwin.c; sourceTree = SOURCE_ROOT; };
  39.355 +		FDA8A7610E2D0F1600EA573E /* torturethread.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = torturethread.c; path = ../../test/torturethread.c; sourceTree = SOURCE_ROOT; };
  39.356 +		FDA8A7840E2D0F1F00EA573E /* common.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = common.c; path = ../../test/common.c; sourceTree = SOURCE_ROOT; };
  39.357 +		FDA8A7850E2D0F1F00EA573E /* common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = common.h; path = ../../test/common.h; sourceTree = SOURCE_ROOT; };
  39.358 +		FDA8A7870E2D0F2700EA573E /* graywin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = graywin.c; path = ../../test/graywin.c; sourceTree = SOURCE_ROOT; };
  39.359 +		FDA8A78B0E2D0F3D00EA573E /* loopwave.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = loopwave.c; path = ../../test/loopwave.c; sourceTree = SOURCE_ROOT; };
  39.360 +		FDA8A8980E2D111A00EA573E /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = System/Library/Frameworks/AudioToolbox.framework; sourceTree = SDKROOT; };
  39.361 +		FDA8A8990E2D111A00EA573E /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; };
  39.362 +		FDA8A89A0E2D111A00EA573E /* OpenGLES.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGLES.framework; path = System/Library/Frameworks/OpenGLES.framework; sourceTree = SDKROOT; };
  39.363 +		FDA8A89B0E2D111A00EA573E /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; };
  39.364 +		FDA8A89C0E2D111A00EA573E /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
  39.365 +		FDA8A89D0E2D111A00EA573E /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
  39.366 +		FDA8A89E0E2D111A00EA573E /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = System/Library/Frameworks/CoreAudio.framework; sourceTree = SDKROOT; };
  39.367 +		FDA8A92F0E2D1C0B00EA573E /* graywin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = graywin.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.368 +		FDA8AABB0E2D330F00EA573E /* loopwav.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = loopwav.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.369 +		FDA8AAD90E2D33B000EA573E /* icon.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = icon.bmp; path = ../../test/icon.bmp; sourceTree = SOURCE_ROOT; };
  39.370 +		FDA8AADA0E2D33BA00EA573E /* moose.dat */ = {isa = PBXFileReference; lastKnownFileType = file; name = moose.dat; path = ../../test/moose.dat; sourceTree = SOURCE_ROOT; };
  39.371 +		FDA8AADB0E2D33BA00EA573E /* picture.xbm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = picture.xbm; path = ../../test/picture.xbm; sourceTree = SOURCE_ROOT; };
  39.372 +		FDA8AADE0E2D33C100EA573E /* sample.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = sample.bmp; path = ../../test/sample.bmp; sourceTree = SOURCE_ROOT; };
  39.373 +		FDA8AAE20E2D33C600EA573E /* sample.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = sample.wav; path = ../../test/sample.wav; sourceTree = SOURCE_ROOT; };
  39.374 +		FDA8AB260E2D386600EA573E /* testalpha.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testalpha.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.375 +		FDAAC3CD0E2D47E6001DB1D8 /* testaudioinfo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testaudioinfo.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.376 +		FDAAC4410E2D4961001DB1D8 /* testbitmap.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testbitmap.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.377 +		FDAAC4650E2D4C27001DB1D8 /* testblitspeed.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testblitspeed.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.378 +		FDAAC5150E2D4FEB001DB1D8 /* testdyngles.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testdyngles.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.379 +		FDAAC5390E2D517D001DB1D8 /* testdyngles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testdyngles.c; path = ../../test/testdyngles.c; sourceTree = SOURCE_ROOT; };
  39.380 +		FDAAC59B0E2D5429001DB1D8 /* testerror.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testerror.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.381 +		FDAAC5C90E2D55B5001DB1D8 /* testfile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testfile.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.382 +		FDAAC5FA0E2D5843001DB1D8 /* testgamma.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgamma.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.383 +		FDAAC6260E2D5914001DB1D8 /* testgles.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgles.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.384 +		FDAAC6290E2D5960001DB1D8 /* testgles.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testgles.c; path = ../../test/testgles.c; sourceTree = SOURCE_ROOT; };
  39.385 +		FDC430000F0D866D009C87E1 /* torturethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = torturethread.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.386 +		FDC430090F0D86BF009C87E1 /* testdraw2.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = testdraw2.c; path = ../../test/testdraw2.c; sourceTree = SOURCE_ROOT; };
  39.387 +		FDD2C10A0E2E4F4B00B7A85F /* testthread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testthread.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.388 +		FDD2C1810E2E52C000B7A85F /* testiconv.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testiconv.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.389 +		FDD2C18A0E2E52FE00B7A85F /* utf8.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = utf8.txt; path = ../../test/utf8.txt; sourceTree = SOURCE_ROOT; };
  39.390 +		FDD2C1A50E2E534F00B7A85F /* testjoystick.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testjoystick.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.391 +		FDD2C45E0E2E773800B7A85F /* testkeys.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testkeys.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.392 +		FDD2C47C0E2E77D700B7A85F /* testlock.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testlock.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.393 +		FDD2C50B0E2E7F4800B7A85F /* testplatform.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testplatform.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.394 +		FDD2C5290E2E807600B7A85F /* testsem.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testsem.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.395 +		FDD2C54E0E2E80E400B7A85F /* testsprite2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testsprite2.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.396 +		FDD2C5870E2E8C7400B7A85F /* testtimer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testtimer.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.397 +		FDD2C5C50E2E8CFC00B7A85F /* testver.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testver.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.398 +		FDD2C5E10E2E8E0300B7A85F /* testvidinfo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testvidinfo.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.399 +		FDD2C6270E2E8F0600B7A85F /* testwin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testwin.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.400 +		FDD2C6B30E2E92D200B7A85F /* threadwin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = threadwin.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.401 +		FDD2C6F40E2E959E00B7A85F /* torturethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = torturethread.app; sourceTree = BUILT_PRODUCTS_DIR; };
  39.402 +/* End PBXFileReference section */
  39.403 +
  39.404 +/* Begin PBXFrameworksBuildPhase section */
  39.405 +		046CEF7A13254F23007AD51D /* Frameworks */ = {
  39.406 +			isa = PBXFrameworksBuildPhase;
  39.407 +			buildActionMask = 2147483647;
  39.408 +			files = (
  39.409 +				046CEF7B13254F23007AD51D /* libSDL.a in Frameworks */,
  39.410 +				046CEF7C13254F23007AD51D /* AudioToolbox.framework in Frameworks */,
  39.411 +				046CEF7D13254F23007AD51D /* QuartzCore.framework in Frameworks */,
  39.412 +				046CEF7E13254F23007AD51D /* OpenGLES.framework in Frameworks */,
  39.413 +				046CEF7F13254F23007AD51D /* CoreGraphics.framework in Frameworks */,
  39.414 +				046CEF8013254F23007AD51D /* UIKit.framework in Frameworks */,
  39.415 +				046CEF8113254F23007AD51D /* Foundation.framework in Frameworks */,
  39.416 +				046CEF8213254F23007AD51D /* CoreAudio.framework in Frameworks */,
  39.417 +			);
  39.418 +			runOnlyForDeploymentPostprocessing = 0;
  39.419 +		};
  39.420 +		047A63E113285C3200CD7973 /* Frameworks */ = {
  39.421 +			isa = PBXFrameworksBuildPhase;
  39.422 +			buildActionMask = 2147483647;
  39.423 +			files = (
  39.424 +				047A63E213285C3200CD7973 /* libSDL.a in Frameworks */,
  39.425 +				047A63E313285C3200CD7973 /* AudioToolbox.framework in Frameworks */,
  39.426 +				047A63E413285C3200CD7973 /* QuartzCore.framework in Frameworks */,
  39.427 +				047A63E513285C3200CD7973 /* OpenGLES.framework in Frameworks */,
  39.428 +				047A63E613285C3200CD7973 /* CoreGraphics.framework in Frameworks */,
  39.429 +				047A63E713285C3200CD7973 /* UIKit.framework in Frameworks */,
  39.430 +				047A63E813285C3200CD7973 /* Foundation.framework in Frameworks */,
  39.431 +				047A63E913285C3200CD7973 /* CoreAudio.framework in Frameworks */,
  39.432 +			);
  39.433 +			runOnlyForDeploymentPostprocessing = 0;
  39.434 +		};
  39.435 +		1D60588F0D05DD3D006BFB54 /* Frameworks */ = {
  39.436 +			isa = PBXFrameworksBuildPhase;
  39.437 +			buildActionMask = 2147483647;
  39.438 +			files = (
  39.439 +				FDBDE5810E313465006BAC0B /* libSDL.a in Frameworks */,
  39.440 +				FDA8A89F0E2D111A00EA573E /* AudioToolbox.framework in Frameworks */,
  39.441 +				FDA8A8A00E2D111A00EA573E /* QuartzCore.framework in Frameworks */,
  39.442 +				FDA8A8A10E2D111A00EA573E /* OpenGLES.framework in Frameworks */,
  39.443 +				FDA8A8A20E2D111A00EA573E /* CoreGraphics.framework in Frameworks */,
  39.444 +				FDA8A8A30E2D111A00EA573E /* UIKit.framework in Frameworks */,
  39.445 +				FDA8A8A40E2D111A00EA573E /* Foundation.framework in Frameworks */,
  39.446 +				FDA8A8A50E2D111A00EA573E /* CoreAudio.framework in Frameworks */,
  39.447 +			);
  39.448 +			runOnlyForDeploymentPostprocessing = 0;
  39.449 +		};
  39.450 +		56ED0501118A8FE400A56AA6 /* Frameworks */ = {
  39.451 +			isa = PBXFrameworksBuildPhase;
  39.452 +			buildActionMask = 2147483647;
  39.453 +			files = (
  39.454 +				56ED0502118A8FE400A56AA6 /* libSDL.a in Frameworks */,
  39.455 +				56ED0503118A8FE400A56AA6 /* AudioToolbox.framework in Frameworks */,
  39.456 +				56ED0504118A8FE400A56AA6 /* QuartzCore.framework in Frameworks */,
  39.457 +				56ED0505118A8FE400A56AA6 /* OpenGLES.framework in Frameworks */,
  39.458 +				56ED0506118A8FE400A56AA6 /* CoreGraphics.framework in Frameworks */,
  39.459 +				56ED0507118A8FE400A56AA6 /* UIKit.framework in Frameworks */,
  39.460 +				56ED0508118A8FE400A56AA6 /* Foundation.framework in Frameworks */,
  39.461 +				56ED0509118A8FE400A56AA6 /* CoreAudio.framework in Frameworks */,
  39.462 +			);
  39.463 +			runOnlyForDeploymentPostprocessing = 0;
  39.464 +		};
  39.465 +		FDA8A9220E2D1C0B00EA573E /* Frameworks */ = {
  39.466 +			isa = PBXFrameworksBuildPhase;
  39.467 +			buildActionMask = 2147483647;
  39.468 +			files = (
  39.469 +				FDBDE54B0E31338A006BAC0B /* libSDL.a in Frameworks */,
  39.470 +				FDA8A9250E2D1C0B00EA573E /* AudioToolbox.framework in Frameworks */,
  39.471 +				FDA8A9260E2D1C0B00EA573E /* QuartzCore.framework in Frameworks */,
  39.472 +				FDA8A9270E2D1C0B00EA573E /* OpenGLES.framework in Frameworks */,
  39.473 +				FDA8A9280E2D1C0B00EA573E /* CoreGraphics.framework in Frameworks */,
  39.474 +				FDA8A9290E2D1C0B00EA573E /* UIKit.framework in Frameworks */,
  39.475 +				FDA8A92A0E2D1C0B00EA573E /* Foundation.framework in Frameworks */,
  39.476 +				FDA8A92B0E2D1C0B00EA573E /* CoreAudio.framework in Frameworks */,
  39.477 +			);
  39.478 +			runOnlyForDeploymentPostprocessing = 0;
  39.479 +		};
  39.480 +		FDA8AAAE0E2D330F00EA573E /* Frameworks */ = {
  39.481 +			isa = PBXFrameworksBuildPhase;
  39.482 +			buildActionMask = 2147483647;
  39.483 +			files = (
  39.484 +				FDBDE5850E313495006BAC0B /* libSDL.a in Frameworks */,
  39.485 +				FDA8AAB10E2D330F00EA573E /* AudioToolbox.framework in Frameworks */,
  39.486 +				FDA8AAB20E2D330F00EA573E /* QuartzCore.framework in Frameworks */,
  39.487 +				FDA8AAB30E2D330F00EA573E /* OpenGLES.framework in Frameworks */,
  39.488 +				FDA8AAB40E2D330F00EA573E /* CoreGraphics.framework in Frameworks */,
  39.489 +				FDA8AAB50E2D330F00EA573E /* UIKit.framework in Frameworks */,
  39.490 +				FDA8AAB60E2D330F00EA573E /* Foundation.framework in Frameworks */,
  39.491 +				FDA8AAB70E2D330F00EA573E /* CoreAudio.framework in Frameworks */,
  39.492 +			);
  39.493 +			runOnlyForDeploymentPostprocessing = 0;
  39.494 +		};
  39.495 +		FDA8AB190E2D386600EA573E /* Frameworks */ = {
  39.496 +			isa = PBXFrameworksBuildPhase;
  39.497 +			buildActionMask = 2147483647;
  39.498 +			files = (
  39.499 +				FDBDE5890E3134B8006BAC0B /* libSDL.a in Frameworks */,
  39.500 +				FDA8AB1C0E2D386600EA573E /* AudioToolbox.framework in Frameworks */,
  39.501 +				FDA8AB1D0E2D386600EA573E /* QuartzCore.framework in Frameworks */,
  39.502 +				FDA8AB1E0E2D386600EA573E /* OpenGLES.framework in Frameworks */,
  39.503 +				FDA8AB1F0E2D386600EA573E /* CoreGraphics.framework in Frameworks */,
  39.504 +				FDA8AB200E2D386600EA573E /* UIKit.framework in Frameworks */,
  39.505 +				FDA8AB210E2D386600EA573E /* Foundation.framework in Frameworks */,
  39.506 +				FDA8AB220E2D386600EA573E /* CoreAudio.framework in Frameworks */,
  39.507 +			);
  39.508 +			runOnlyForDeploymentPostprocessing = 0;
  39.509 +		};
  39.510 +		FDAAC3C00E2D47E6001DB1D8 /* Frameworks */ = {
  39.511 +			isa = PBXFrameworksBuildPhase;
  39.512 +			buildActionMask = 2147483647;
  39.513 +			files = (
  39.514 +				FDBDE58C0E3134F3006BAC0B /* libSDL.a in Frameworks */,
  39.515 +				FDAAC3C30E2D47E6001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.516 +				FDAAC3C40E2D47E6001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.517 +				FDAAC3C50E2D47E6001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.518 +				FDAAC3C60E2D47E6001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.519 +				FDAAC3C70E2D47E6001DB1D8 /* UIKit.framework in Frameworks */,
  39.520 +				FDAAC3C80E2D47E6001DB1D8 /* Foundation.framework in Frameworks */,
  39.521 +				FDAAC3C90E2D47E6001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.522 +			);
  39.523 +			runOnlyForDeploymentPostprocessing = 0;
  39.524 +		};
  39.525 +		FDAAC4340E2D4961001DB1D8 /* Frameworks */ = {
  39.526 +			isa = PBXFrameworksBuildPhase;
  39.527 +			buildActionMask = 2147483647;
  39.528 +			files = (
  39.529 +				FDBDE56B0E3133F5006BAC0B /* libSDL.a in Frameworks */,
  39.530 +				FDAAC4370E2D4961001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.531 +				FDAAC4380E2D4961001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.532 +				FDAAC4390E2D4961001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.533 +				FDAAC43A0E2D4961001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.534 +				FDAAC43B0E2D4961001DB1D8 /* UIKit.framework in Frameworks */,
  39.535 +				FDAAC43C0E2D4961001DB1D8 /* Foundation.framework in Frameworks */,
  39.536 +				FDAAC43D0E2D4961001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.537 +			);
  39.538 +			runOnlyForDeploymentPostprocessing = 0;
  39.539 +		};
  39.540 +		FDAAC4580E2D4C27001DB1D8 /* Frameworks */ = {
  39.541 +			isa = PBXFrameworksBuildPhase;
  39.542 +			buildActionMask = 2147483647;
  39.543 +			files = (
  39.544 +				FDBDE5920E313531006BAC0B /* libSDL.a in Frameworks */,
  39.545 +				FDAAC45B0E2D4C27001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.546 +				FDAAC45C0E2D4C27001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.547 +				FDAAC45D0E2D4C27001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.548 +				FDAAC45E0E2D4C27001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.549 +				FDAAC45F0E2D4C27001DB1D8 /* UIKit.framework in Frameworks */,
  39.550 +				FDAAC4600E2D4C27001DB1D8 /* Foundation.framework in Frameworks */,
  39.551 +				FDAAC4610E2D4C27001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.552 +			);
  39.553 +			runOnlyForDeploymentPostprocessing = 0;
  39.554 +		};
  39.555 +		FDAAC5080E2D4FEB001DB1D8 /* Frameworks */ = {
  39.556 +			isa = PBXFrameworksBuildPhase;
  39.557 +			buildActionMask = 2147483647;
  39.558 +			files = (
  39.559 +				FDBDE5780E313425006BAC0B /* libSDL.a in Frameworks */,
  39.560 +				FDAAC50B0E2D4FEB001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.561 +				FDAAC50C0E2D4FEB001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.562 +				FDAAC50D0E2D4FEB001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.563 +				FDAAC50E0E2D4FEB001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.564 +				FDAAC50F0E2D4FEB001DB1D8 /* UIKit.framework in Frameworks */,
  39.565 +				FDAAC5100E2D4FEB001DB1D8 /* Foundation.framework in Frameworks */,
  39.566 +				FDAAC5110E2D4FEB001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.567 +			);
  39.568 +			runOnlyForDeploymentPostprocessing = 0;
  39.569 +		};
  39.570 +		FDAAC58E0E2D5429001DB1D8 /* Frameworks */ = {
  39.571 +			isa = PBXFrameworksBuildPhase;
  39.572 +			buildActionMask = 2147483647;
  39.573 +			files = (
  39.574 +				FDBDE59B0E31356A006BAC0B /* libSDL.a in Frameworks */,
  39.575 +				FDAAC5910E2D5429001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.576 +				FDAAC5920E2D5429001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.577 +				FDAAC5930E2D5429001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.578 +				FDAAC5940E2D5429001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.579 +				FDAAC5950E2D5429001DB1D8 /* UIKit.framework in Frameworks */,
  39.580 +				FDAAC5960E2D5429001DB1D8 /* Foundation.framework in Frameworks */,
  39.581 +				FDAAC5970E2D5429001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.582 +			);
  39.583 +			runOnlyForDeploymentPostprocessing = 0;
  39.584 +		};
  39.585 +		FDAAC5BC0E2D55B5001DB1D8 /* Frameworks */ = {
  39.586 +			isa = PBXFrameworksBuildPhase;
  39.587 +			buildActionMask = 2147483647;
  39.588 +			files = (
  39.589 +				FDBDE59F0E31358D006BAC0B /* libSDL.a in Frameworks */,
  39.590 +				FDAAC5BF0E2D55B5001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.591 +				FDAAC5C00E2D55B5001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.592 +				FDAAC5C10E2D55B5001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.593 +				FDAAC5C20E2D55B5001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.594 +				FDAAC5C30E2D55B5001DB1D8 /* UIKit.framework in Frameworks */,
  39.595 +				FDAAC5C40E2D55B5001DB1D8 /* Foundation.framework in Frameworks */,
  39.596 +				FDAAC5C50E2D55B5001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.597 +			);
  39.598 +			runOnlyForDeploymentPostprocessing = 0;
  39.599 +		};
  39.600 +		FDAAC5ED0E2D5843001DB1D8 /* Frameworks */ = {
  39.601 +			isa = PBXFrameworksBuildPhase;
  39.602 +			buildActionMask = 2147483647;
  39.603 +			files = (
  39.604 +				FDBDE5A10E313594006BAC0B /* libSDL.a in Frameworks */,
  39.605 +				FDAAC5F00E2D5843001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.606 +				FDAAC5F10E2D5843001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.607 +				FDAAC5F20E2D5843001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.608 +				FDAAC5F30E2D5843001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.609 +				FDAAC5F40E2D5843001DB1D8 /* UIKit.framework in Frameworks */,
  39.610 +				FDAAC5F50E2D5843001DB1D8 /* Foundation.framework in Frameworks */,
  39.611 +				FDAAC5F60E2D5843001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.612 +			);
  39.613 +			runOnlyForDeploymentPostprocessing = 0;
  39.614 +		};
  39.615 +		FDAAC6190E2D5914001DB1D8 /* Frameworks */ = {
  39.616 +			isa = PBXFrameworksBuildPhase;
  39.617 +			buildActionMask = 2147483647;
  39.618 +			files = (
  39.619 +				FDBDE57C0E313445006BAC0B /* libSDL.a in Frameworks */,
  39.620 +				FDAAC61C0E2D5914001DB1D8 /* AudioToolbox.framework in Frameworks */,
  39.621 +				FDAAC61D0E2D5914001DB1D8 /* QuartzCore.framework in Frameworks */,
  39.622 +				FDAAC61E0E2D5914001DB1D8 /* OpenGLES.framework in Frameworks */,
  39.623 +				FDAAC61F0E2D5914001DB1D8 /* CoreGraphics.framework in Frameworks */,
  39.624 +				FDAAC6200E2D5914001DB1D8 /* UIKit.framework in Frameworks */,
  39.625 +				FDAAC6210E2D5914001DB1D8 /* Foundation.framework in Frameworks */,
  39.626 +				FDAAC6220E2D5914001DB1D8 /* CoreAudio.framework in Frameworks */,
  39.627 +			);
  39.628 +			runOnlyForDeploymentPostprocessing = 0;
  39.629 +		};
  39.630 +		FDC42FF30F0D866D009C87E1 /* Frameworks */ = {
  39.631 +			isa = PBXFrameworksBuildPhase;
  39.632 +			buildActionMask = 2147483647;
  39.633 +			files = (
  39.634 +				FDC42FF40F0D866D009C87E1 /* libSDL.a in Frameworks */,
  39.635 +				FDC42FF60F0D866D009C87E1 /* AudioToolbox.framework in Frameworks */,
  39.636 +				FDC42FF70F0D866D009C87E1 /* QuartzCore.framework in Frameworks */,
  39.637 +				FDC42FF80F0D866D009C87E1 /* OpenGLES.framework in Frameworks */,
  39.638 +				FDC42FF90F0D866D009C87E1 /* CoreGraphics.framework in Frameworks */,
  39.639 +				FDC42FFA0F0D866D009C87E1 /* UIKit.framework in Frameworks */,
  39.640 +				FDC42FFB0F0D866D009C87E1 /* Foundation.framework in Frameworks */,
  39.641 +				FDC42FFC0F0D866D009C87E1 /* CoreAudio.framework in Frameworks */,
  39.642 +			);
  39.643 +			runOnlyForDeploymentPostprocessing = 0;
  39.644 +		};
  39.645 +		FDD2C0FD0E2E4F4B00B7A85F /* Frameworks */ = {
  39.646 +			isa = PBXFrameworksBuildPhase;
  39.647 +			buildActionMask = 2147483647;
  39.648 +			files = (
  39.649 +				FDBDE5A90E3135C0006BAC0B /* libSDL.a in Frameworks */,
  39.650 +				FDD2C1000E2E4F4B00B7A85F /* AudioToolbox.framework in Frameworks */,
  39.651 +				FDD2C1010E2E4F4B00B7A85F /* QuartzCore.framework in Frameworks */,
  39.652 +				FDD2C1020E2E4F4B00B7A85F /* OpenGLES.framework in Frameworks */,
  39.653 +				FDD2C1030E2E4F4B00B7A85F /* CoreGraphics.framework in Frameworks */,
  39.654 +				FDD2C1040E2E4F4B00B7A85F /* UIKit.framework in Frameworks */,
  39.655 +				FDD2C1050E2E4F4B00B7A85F /* Foundation.framework in Frameworks */,
  39.656 +				FDD2C1060E2E4F4B00B7A85F /* CoreAudio.framework in Frameworks */,
  39.657 +			);
  39.658 +			runOnlyForDeploymentPostprocessing = 0;
  39.659 +		};
  39.660 +		FDD2C1740E2E52C000B7A85F /* Frameworks */ = {
  39.661 +			isa = PBXFrameworksBuildPhase;
  39.662 +			buildActionMask = 2147483647;
  39.663 +			files = (
  39.664 +				FDBDE5AE0E3135E6006BAC0B /* libSDL.a in Frameworks */,
  39.665 +				FDD2C1770E2E52C000B7A85F /* AudioToolbox.framework in Frameworks */,
  39.666 +				FDD2C1780E2E52C000B7A85F /* QuartzCore.framework in Frameworks */,
  39.667 +				FDD2C1790E2E52C000B7A85F /* OpenGLES.framework in Frameworks */,
  39.668 +				FDD2C17A0E2E52C000B7A85F /* CoreGraphics.framework in Frameworks */,
  39.669 +				FDD2C17B0E2E52C000B7A85F /* UIKit.framework in Frameworks */,
  39.670 +				FDD2C17C0E2E52C000B7A85F /* Foundation.framework in Frameworks */,
  39.671 +				FDD2C17D0E2E52C000B7A85F /* CoreAudio.framework in Frameworks */,
  39.672 +			);
  39.673 +			runOnlyForDeploymentPostprocessing = 0;
  39.674 +		};
  39.675 +		FDD2C1980E2E534F00B7A85F /* Frameworks */ = {
  39.676 +			isa = PBXFrameworksBuildPhase;
  39.677 +			buildActionMask = 2147483647;
  39.678 +			files = (
  39.679 +				FDBDE5B60E3135FE006BAC0B /* libSDL.a in Frameworks */,
  39.680 +				FDD2C19B0E2E534F00B7A85F /* AudioToolbox.framework in Frameworks */,
  39.681 +				FDD2C19C0E2E534F00B7A85F /* QuartzCore.framework in Frameworks */,
  39.682 +				FDD2C19D0E2E534F00B7A85F /* OpenGLES.framework in Frameworks */,
  39.683 +				FDD2C19E0E2E534F00B7A85F /* CoreGraphics.framework in Frameworks */,
  39.684 +				FDD2C19F0E2E534F00B7A85F /* UIKit.framework in Frameworks */,
  39.685 +				FDD2C1A00E2E534F00B7A85F /* Foundation.framework in Frameworks */,
  39.686 +				FDD2C1A10E2E534F00B7A85F /* CoreAudio.framework in Frameworks */,
  39.687 +			);
  39.688 +			runOnlyForDeploymentPostprocessing = 0;
  39.689 +		};
  39.690 +		FDD2C4510E2E773800B7A85F /* Frameworks */ = {
  39.691 +			isa = PBXFrameworksBuildPhase;
  39.692 +			buildActionMask = 2147483647;
  39.693 +			files = (
  39.694 +				FDBDE5BC0E31364D006BAC0B /* libSDL.a in Frameworks */,
  39.695 +				FDD2C4540E2E773800B7A85F /* AudioToolbox.framework in Frameworks */,
  39.696 +				FDD2C4550E2E773800B7A85F /* QuartzCore.framework in Frameworks */,
  39.697 +				FDD2C4560E2E773800B7A85F /* OpenGLES.framework in Frameworks */,
  39.698 +				FDD2C4570E2E773800B7A85F /* CoreGraphics.framework in Frameworks */,
  39.699 +				FDD2C4580E2E773800B7A85F /* UIKit.framework in Frameworks */,
  39.700 +				FDD2C4590E2E773800B7A85F /* Foundation.framework in Frameworks */,
  39.701 +				FDD2C45A0E2E773800B7A85F /* CoreAudio.framework in Frameworks */,
  39.702 +			);
  39.703 +			runOnlyForDeploymentPostprocessing = 0;
  39.704 +		};
  39.705 +		FDD2C46F0E2E77D700B7A85F /* Frameworks */ = {
  39.706 +			isa = PBXFrameworksBuildPhase;
  39.707 +			buildActionMask = 2147483647;
  39.708 +			files = (
  39.709 +				FDBDE5C20E313663006BAC0B /*