From a4f2d4f2ce6bfa30b10e71ffa2b1884a19294150 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Sun, 11 Sep 2011 14:44:37 -0400 Subject: [PATCH] Unpacked Xcode.tar.gz. --HG-- branch : SDL-1.2 --- .hgignore | 1 - README.MacOSX | 9 +- Xcode.tar.gz | Bin 918433 -> 0 bytes Xcode/SDL/Info-Framework.plist | 28 + Xcode/SDL/SDL.xcodeproj/project.pbxproj | 2609 ++++++++++ .../SDL/pkg-support/Readme SDL Developer.txt | 282 + Xcode/SDL/pkg-support/SDL-devel.info | 15 + Xcode/SDL/pkg-support/SDL.info | 15 + .../pkg-support/devel-resources/ReadMe.txt | 5 + .../pkg-support/devel-resources/Welcome.txt | 5 + .../pkg-support/devel-resources/install.sh | 76 + Xcode/SDL/pkg-support/resources/License.rtf | 283 ++ Xcode/SDL/pkg-support/resources/ReadMe.txt | 171 + .../pkg-support/resources/ReadMeDevLite.txt | 12 + Xcode/SDL/pkg-support/resources/SDL_DS_Store | Bin 0 -> 12292 bytes .../resources/UniversalBinaryNotes.rtf | 150 + Xcode/SDL/pkg-support/sdl_logo.pdf | Bin 0 -> 163800 bytes Xcode/SDLTest/Info-checkkeys__Upgraded_.plist | 32 + Xcode/SDLTest/Info-graywin__Upgraded_.plist | 32 + Xcode/SDLTest/Info-loopwave__Upgraded_.plist | 32 + Xcode/SDLTest/Info-test.plist | 32 + Xcode/SDLTest/Info-testalpha__Upgraded_.plist | 32 + .../SDLTest/Info-testbitmap__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testblitspeed.plist | 32 + Xcode/SDLTest/Info-testcdrom__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testdyngl.plist | 32 + Xcode/SDLTest/Info-testerror__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testfile.plist | 32 + Xcode/SDLTest/Info-testgamma__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testgl__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testiconv.plist | 32 + .../Info-testjoystick__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testkeys__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testlock__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testoverlay2.plist | 32 + .../SDLTest/Info-testoverlay__Upgraded_.plist | 32 + .../SDLTest/Info-testpalette__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testplatform.plist | 32 + Xcode/SDLTest/Info-testsem__Upgraded_.plist | 32 + .../SDLTest/Info-testsprite__Upgraded_.plist | 32 + .../SDLTest/Info-testthread__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testtimer__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testtypes__Upgraded_.plist | 32 + .../SDLTest/Info-testversion__Upgraded_.plist | 32 + .../SDLTest/Info-testvidinfo__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testwin__Upgraded_.plist | 32 + Xcode/SDLTest/Info-testwm__Upgraded_.plist | 32 + Xcode/SDLTest/Info-threadwin__Upgraded_.plist | 32 + .../Info-torturethread__Upgraded_.plist | 32 + .../SDLTest/SDLTest.xcodeproj/project.pbxproj | 4520 +++++++++++++++++ Xcode/SDLTest/libsdlmain_prefix.h | 13 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../SDL Application/Info.plist | 37 + .../SDL Application/SDLMain.h | 16 + .../SDL Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 308 ++ .../SDL Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../English.lproj/SDLMain.nib/classes.nib | 19 + .../English.lproj/SDLMain.nib/info.nib | 21 + .../English.lproj/SDLMain.nib/objects.nib | Bin 0 -> 2590 bytes .../SDL Cocoa Application/Info.plist | 37 + .../SDL Cocoa Application/SDLMain.h | 16 + .../SDL Cocoa Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 320 ++ .../SDL Cocoa Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../SDL OpenGL Application/Info.plist | 37 + .../SDL OpenGL Application/SDLMain.h | 16 + .../SDL OpenGL Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 350 ++ .../atlantis/atlantis.c | 459 ++ .../atlantis/atlantis.h | 65 + .../SDL OpenGL Application/atlantis/dolphin.c | 1934 +++++++ .../SDL OpenGL Application/atlantis/shark.c | 1308 +++++ .../SDL OpenGL Application/atlantis/swim.c | 188 + .../SDL OpenGL Application/atlantis/whale.c | 1798 +++++++ .../SDL OpenGL Application/main.c | 179 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../SDL Application/Info.plist | 37 + .../SDL Application/SDLMain.h | 16 + .../SDL Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 310 ++ .../SDL Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../English.lproj/SDLMain.nib/classes.nib | 19 + .../English.lproj/SDLMain.nib/info.nib | 21 + .../English.lproj/SDLMain.nib/objects.nib | Bin 0 -> 2590 bytes .../SDL Cocoa Application/Info.plist | 37 + .../SDL Cocoa Application/SDLMain.h | 16 + .../SDL Cocoa Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 322 ++ .../SDL Cocoa Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 644 bytes .../SDL OpenGL Application/Info.plist | 37 + .../SDL OpenGL Application/SDLMain.h | 16 + .../SDL OpenGL Application/SDLMain.m | 383 ++ .../___PROJECTNAMEASIDENTIFIER____Prefix.pch | 9 + .../TemplateIcon.icns | Bin 0 -> 111234 bytes .../TemplateInfo.plist | 12 + .../project.pbxproj | 352 ++ .../atlantis/atlantis.c | 459 ++ .../atlantis/atlantis.h | 65 + .../SDL OpenGL Application/atlantis/dolphin.c | 1934 +++++++ .../SDL OpenGL Application/atlantis/shark.c | 1308 +++++ .../SDL OpenGL Application/atlantis/swim.c | 188 + .../SDL OpenGL Application/atlantis/whale.c | 1798 +++++++ .../SDL OpenGL Application/main.c | 179 + .../English.lproj/InfoPlist.strings | Bin 0 -> 588 bytes .../SDL Application/Info.plist | 28 + .../SDLApp.xcodeproj/TemplateInfo.plist | 12 + .../SDLApp.xcodeproj/project.pbxproj | 324 ++ .../SDL Application/SDLApp_Prefix.pch | 9 + .../SDL Application/SDLMain.h | 16 + .../SDL Application/SDLMain.m | 383 ++ .../SDL Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 588 bytes .../English.lproj/SDLMain.nib/classes.nib | 19 + .../English.lproj/SDLMain.nib/info.nib | 21 + .../English.lproj/SDLMain.nib/objects.nib | Bin 0 -> 2590 bytes .../SDL Cocoa Application/Info.plist | 28 + .../SDL Cocoa Application/SDLApp_Prefix.pch | 9 + .../SDLCocoaApp.xcodeproj/TemplateInfo.plist | 12 + .../SDLCocoaApp.xcodeproj/project.pbxproj | 336 ++ .../SDL Cocoa Application/SDLMain.h | 16 + .../SDL Cocoa Application/SDLMain.m | 383 ++ .../SDL Cocoa Application/main.c | 65 + .../English.lproj/InfoPlist.strings | Bin 0 -> 588 bytes .../SDL OpenGL Application/Info.plist | 28 + .../SDL OpenGL Application/SDLApp_Prefix.pch | 9 + .../SDL OpenGL Application/SDLMain.h | 16 + .../SDL OpenGL Application/SDLMain.m | 383 ++ .../SDLOpenGLApp.xcodeproj/TemplateInfo.plist | 12 + .../SDLOpenGLApp.xcodeproj/project.pbxproj | 362 ++ .../atlantis/atlantis.c | 459 ++ .../atlantis/atlantis.h | 65 + .../SDL OpenGL Application/atlantis/dolphin.c | 1934 +++++++ .../SDL OpenGL Application/atlantis/shark.c | 1308 +++++ .../SDL OpenGL Application/atlantis/swim.c | 188 + .../SDL OpenGL Application/atlantis/whale.c | 1798 +++++++ .../SDL OpenGL Application/main.c | 179 + Xcode/XcodeDocSet/Doxyfile | 1558 ++++++ Xcode/mkxcode.csh | 20 + Xcode/package | 272 + Xcode/stationary.csh | 25 + Xcode/uninstall.csh | 32 + 161 files changed, 36489 insertions(+), 9 deletions(-) delete mode 100644 Xcode.tar.gz create mode 100644 Xcode/SDL/Info-Framework.plist create mode 100755 Xcode/SDL/SDL.xcodeproj/project.pbxproj create mode 100755 Xcode/SDL/pkg-support/Readme SDL Developer.txt create mode 100755 Xcode/SDL/pkg-support/SDL-devel.info create mode 100755 Xcode/SDL/pkg-support/SDL.info create mode 100755 Xcode/SDL/pkg-support/devel-resources/ReadMe.txt create mode 100755 Xcode/SDL/pkg-support/devel-resources/Welcome.txt create mode 100755 Xcode/SDL/pkg-support/devel-resources/install.sh create mode 100755 Xcode/SDL/pkg-support/resources/License.rtf create mode 100755 Xcode/SDL/pkg-support/resources/ReadMe.txt create mode 100644 Xcode/SDL/pkg-support/resources/ReadMeDevLite.txt create mode 100644 Xcode/SDL/pkg-support/resources/SDL_DS_Store create mode 100644 Xcode/SDL/pkg-support/resources/UniversalBinaryNotes.rtf create mode 100644 Xcode/SDL/pkg-support/sdl_logo.pdf create mode 100644 Xcode/SDLTest/Info-checkkeys__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-graywin__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-loopwave__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-test.plist create mode 100644 Xcode/SDLTest/Info-testalpha__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testbitmap__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testblitspeed.plist create mode 100644 Xcode/SDLTest/Info-testcdrom__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testdyngl.plist create mode 100644 Xcode/SDLTest/Info-testerror__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testfile.plist create mode 100644 Xcode/SDLTest/Info-testgamma__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testgl__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testiconv.plist create mode 100644 Xcode/SDLTest/Info-testjoystick__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testkeys__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testlock__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testoverlay2.plist create mode 100644 Xcode/SDLTest/Info-testoverlay__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testpalette__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testplatform.plist create mode 100644 Xcode/SDLTest/Info-testsem__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testsprite__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testthread__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testtimer__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testtypes__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testversion__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testvidinfo__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testwin__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-testwm__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-threadwin__Upgraded_.plist create mode 100644 Xcode/SDLTest/Info-torturethread__Upgraded_.plist create mode 100755 Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj create mode 100644 Xcode/SDLTest/libsdlmain_prefix.h create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Application/main.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/classes.nib create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/info.nib create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/main.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.h create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/dolphin.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/shark.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/swim.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/whale.c create mode 100644 Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/main.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Application/main.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/classes.nib create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/info.nib create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/main.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.h create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/dolphin.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/shark.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/swim.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/whale.c create mode 100644 Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/main.c create mode 100755 Xcode/TemplatesForXcodeTiger/SDL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp_Prefix.pch create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Application/main.c create mode 100755 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/SDLMain.nib/classes.nib create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/SDLMain.nib/info.nib create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLApp_Prefix.pch create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/main.c create mode 100755 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/English.lproj/InfoPlist.strings create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/Info.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLApp_Prefix.pch create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.h create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.m create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/TemplateInfo.plist create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/project.pbxproj create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.c create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.h create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/dolphin.c create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/shark.c create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/swim.c create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/whale.c create mode 100644 Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/main.c create mode 100644 Xcode/XcodeDocSet/Doxyfile create mode 100755 Xcode/mkxcode.csh create mode 100755 Xcode/package create mode 100755 Xcode/stationary.csh create mode 100755 Xcode/uninstall.csh diff --git a/.hgignore b/.hgignore index 9d52df6cb..77e37a785 100644 --- a/.hgignore +++ b/.hgignore @@ -12,7 +12,6 @@ SDL.spec SDL.qpg build build-deps -Xcode .DS_Store sdl.pc include/SDL_config.h diff --git a/README.MacOSX b/README.MacOSX index 3bc421371..2ea9f6876 100644 --- a/README.MacOSX +++ b/README.MacOSX @@ -108,14 +108,7 @@ These instructions are for using Apple's Xcode IDE to build SDL applications. - First steps -The first thing to do is to unpack the Xcode.tar.gz archive in the -top level SDL directory (where the Xcode.tar.gz archive resides). -Because Stuffit Expander will unpack the archive into a subdirectory, -you should unpack the archive manually from the command line: - cd [path_to_SDL_source] - tar zxf Xcode.tar.gz -This will create a new folder called Xcode, which you can browse -normally from the Finder. +The Xcode project files are in the "Xcode" directory. - Building the Framework diff --git a/Xcode.tar.gz b/Xcode.tar.gz deleted file mode 100644 index b18e74ef6f11a7ce182682ad10fbc77aee21fa6c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 918433 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

Q<}ghBIvF}d)G-gsFUQj+@vJhKBDa*lX!5otw8 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

n^xJ-5Avz1W$ZzN(y+^1S2~$^QgWod9y=i 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 z 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

~}Yyj2&veu>m^KpqAmiFS1J? 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%0AHdFzT{y!7;j^fQLx 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 z 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%0DG1V9yEjH@Sf%9GF`UG1_)MU+nTo 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Ν=XCMASi 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 + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + SDL + CFBundleGetInfoString + http://www.libsdl.org + CFBundleIconFile + + CFBundleIdentifier + SDL + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + Simple DirectMedia Layer + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.2.14 + CFBundleSignature + SDLX + CFBundleVersion + 1.2.14 + + diff --git a/Xcode/SDL/SDL.xcodeproj/project.pbxproj b/Xcode/SDL/SDL.xcodeproj/project.pbxproj new file mode 100755 index 000000000..cde1b71d5 --- /dev/null +++ b/Xcode/SDL/SDL.xcodeproj/project.pbxproj @@ -0,0 +1,2609 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXAggregateTarget section */ + 0032354F1070931700C76517 /* Generate Doxygen DocSet */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 003235571070933500C76517 /* Build configuration list for PBXAggregateTarget "Generate Doxygen DocSet" */; + buildPhases = ( + 0032354E1070931700C76517 /* ShellScript */, + ); + dependencies = ( + ); + name = "Generate Doxygen DocSet"; + productName = "Generate Doxygen DocSet"; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 0014B7EF09C0D8D2003A99D5 /* SDL_dgaevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7E909C0D8D2003A99D5 /* SDL_dgaevents.c */; }; + 0014B7F109C0D8D2003A99D5 /* SDL_dgamouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7EB09C0D8D2003A99D5 /* SDL_dgamouse.c */; }; + 0014B7F209C0D8D2003A99D5 /* SDL_dgavideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7EC09C0D8D2003A99D5 /* SDL_dgavideo.c */; }; + 0014B7F409C0D8D2003A99D5 /* SDL_dgaevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B7E809C0D8D2003A99D5 /* SDL_dgaevents_c.h */; }; + 0014B7F509C0D8D2003A99D5 /* SDL_dgaevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7E909C0D8D2003A99D5 /* SDL_dgaevents.c */; }; + 0014B7F609C0D8D2003A99D5 /* SDL_dgamouse_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B7EA09C0D8D2003A99D5 /* SDL_dgamouse_c.h */; }; + 0014B7F709C0D8D2003A99D5 /* SDL_dgamouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7EB09C0D8D2003A99D5 /* SDL_dgamouse.c */; }; + 0014B7F809C0D8D2003A99D5 /* SDL_dgavideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B7EC09C0D8D2003A99D5 /* SDL_dgavideo.c */; }; + 0014B7F909C0D8D2003A99D5 /* SDL_dgavideo.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B7ED09C0D8D2003A99D5 /* SDL_dgavideo.h */; }; + 0014B84F09C0D977003A99D5 /* SDL_x11dga.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83809C0D977003A99D5 /* SDL_x11dga.c */; }; + 0014B85009C0D977003A99D5 /* SDL_x11dyn.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83909C0D977003A99D5 /* SDL_x11dyn.c */; }; + 0014B85309C0D977003A99D5 /* SDL_x11events.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83C09C0D977003A99D5 /* SDL_x11events.c */; }; + 0014B85509C0D977003A99D5 /* SDL_x11gamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83E09C0D977003A99D5 /* SDL_x11gamma.c */; }; + 0014B85709C0D977003A99D5 /* SDL_x11gl.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84009C0D977003A99D5 /* SDL_x11gl.c */; }; + 0014B85909C0D977003A99D5 /* SDL_x11image.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84209C0D977003A99D5 /* SDL_x11image.c */; }; + 0014B85B09C0D977003A99D5 /* SDL_x11modes.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84409C0D977003A99D5 /* SDL_x11modes.c */; }; + 0014B85D09C0D977003A99D5 /* SDL_x11mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84609C0D977003A99D5 /* SDL_x11mouse.c */; }; + 0014B85F09C0D977003A99D5 /* SDL_x11video.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84809C0D977003A99D5 /* SDL_x11video.c */; }; + 0014B86209C0D977003A99D5 /* SDL_x11wm.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84B09C0D977003A99D5 /* SDL_x11wm.c */; }; + 0014B86409C0D977003A99D5 /* SDL_x11yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84D09C0D977003A99D5 /* SDL_x11yuv.c */; }; + 0014B86509C0D977003A99D5 /* SDL_x11dga_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B83709C0D977003A99D5 /* SDL_x11dga_c.h */; }; + 0014B86609C0D977003A99D5 /* SDL_x11dga.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83809C0D977003A99D5 /* SDL_x11dga.c */; }; + 0014B86709C0D977003A99D5 /* SDL_x11dyn.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83909C0D977003A99D5 /* SDL_x11dyn.c */; }; + 0014B86809C0D977003A99D5 /* SDL_x11dyn.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B83A09C0D977003A99D5 /* SDL_x11dyn.h */; }; + 0014B86909C0D977003A99D5 /* SDL_x11events_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B83B09C0D977003A99D5 /* SDL_x11events_c.h */; }; + 0014B86A09C0D977003A99D5 /* SDL_x11events.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83C09C0D977003A99D5 /* SDL_x11events.c */; }; + 0014B86B09C0D977003A99D5 /* SDL_x11gamma_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B83D09C0D977003A99D5 /* SDL_x11gamma_c.h */; }; + 0014B86C09C0D977003A99D5 /* SDL_x11gamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B83E09C0D977003A99D5 /* SDL_x11gamma.c */; }; + 0014B86D09C0D977003A99D5 /* SDL_x11gl_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B83F09C0D977003A99D5 /* SDL_x11gl_c.h */; }; + 0014B86E09C0D977003A99D5 /* SDL_x11gl.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84009C0D977003A99D5 /* SDL_x11gl.c */; }; + 0014B86F09C0D977003A99D5 /* SDL_x11image_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84109C0D977003A99D5 /* SDL_x11image_c.h */; }; + 0014B87009C0D977003A99D5 /* SDL_x11image.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84209C0D977003A99D5 /* SDL_x11image.c */; }; + 0014B87109C0D977003A99D5 /* SDL_x11modes_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84309C0D977003A99D5 /* SDL_x11modes_c.h */; }; + 0014B87209C0D977003A99D5 /* SDL_x11modes.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84409C0D977003A99D5 /* SDL_x11modes.c */; }; + 0014B87309C0D977003A99D5 /* SDL_x11mouse_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84509C0D977003A99D5 /* SDL_x11mouse_c.h */; }; + 0014B87409C0D977003A99D5 /* SDL_x11mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84609C0D977003A99D5 /* SDL_x11mouse.c */; }; + 0014B87509C0D977003A99D5 /* SDL_x11sym.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84709C0D977003A99D5 /* SDL_x11sym.h */; }; + 0014B87609C0D977003A99D5 /* SDL_x11video.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84809C0D977003A99D5 /* SDL_x11video.c */; }; + 0014B87709C0D977003A99D5 /* SDL_x11video.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84909C0D977003A99D5 /* SDL_x11video.h */; }; + 0014B87809C0D977003A99D5 /* SDL_x11wm_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84A09C0D977003A99D5 /* SDL_x11wm_c.h */; }; + 0014B87909C0D977003A99D5 /* SDL_x11wm.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84B09C0D977003A99D5 /* SDL_x11wm.c */; }; + 0014B87A09C0D977003A99D5 /* SDL_x11yuv_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B84C09C0D977003A99D5 /* SDL_x11yuv_c.h */; }; + 0014B87B09C0D977003A99D5 /* SDL_x11yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B84D09C0D977003A99D5 /* SDL_x11yuv.c */; }; + 0014B89209C0DA94003A99D5 /* XF86DGA.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89009C0DA94003A99D5 /* XF86DGA.c */; }; + 0014B89309C0DA94003A99D5 /* XF86DGA2.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89109C0DA94003A99D5 /* XF86DGA2.c */; }; + 0014B89409C0DA94003A99D5 /* XF86DGA.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89009C0DA94003A99D5 /* XF86DGA.c */; }; + 0014B89509C0DA94003A99D5 /* XF86DGA2.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89109C0DA94003A99D5 /* XF86DGA2.c */; }; + 0014B89709C0DAA1003A99D5 /* XF86VMode.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89609C0DAA1003A99D5 /* XF86VMode.c */; }; + 0014B89809C0DAA1003A99D5 /* XF86VMode.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89609C0DAA1003A99D5 /* XF86VMode.c */; }; + 0014B89B09C0DAAE003A99D5 /* Xv.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89909C0DAAE003A99D5 /* Xv.c */; }; + 0014B89D09C0DAAE003A99D5 /* Xv.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89909C0DAAE003A99D5 /* Xv.c */; }; + 0014B89E09C0DAAE003A99D5 /* Xvlibint.h in Headers */ = {isa = PBXBuildFile; fileRef = 0014B89A09C0DAAE003A99D5 /* Xvlibint.h */; }; + 0014B8A009C0DAB9003A99D5 /* Xinerama.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89F09C0DAB9003A99D5 /* Xinerama.c */; }; + 0014B8A109C0DAB9003A99D5 /* Xinerama.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B89F09C0DAB9003A99D5 /* Xinerama.c */; }; + 0014B8A309C0DAC4003A99D5 /* xme.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B8A209C0DAC4003A99D5 /* xme.c */; }; + 0014B8A409C0DAC4003A99D5 /* xme.c in Sources */ = {isa = PBXBuildFile; fileRef = 0014B8A209C0DAC4003A99D5 /* xme.c */; }; + 00162D4409BD1FA90037C8D0 /* SDL_config_dreamcast.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3209BD1FA90037C8D0 /* SDL_config_dreamcast.h */; }; + 00162D4509BD1FA90037C8D0 /* SDL_config_macos.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3309BD1FA90037C8D0 /* SDL_config_macos.h */; }; + 00162D4609BD1FA90037C8D0 /* SDL_config_macosx.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3409BD1FA90037C8D0 /* SDL_config_macosx.h */; }; + 00162D4709BD1FA90037C8D0 /* SDL_config_os2.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3509BD1FA90037C8D0 /* SDL_config_os2.h */; }; + 00162D4809BD1FA90037C8D0 /* SDL_config_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3609BD1FA90037C8D0 /* SDL_config_win32.h */; }; + 00162D4909BD1FA90037C8D0 /* SDL_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3709BD1FA90037C8D0 /* SDL_config.h */; }; + 00162D4A09BD1FA90037C8D0 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3809BD1FA90037C8D0 /* SDL_platform.h */; }; + 00162D4B09BD1FA90037C8D0 /* SDL_stdinc.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3909BD1FA90037C8D0 /* SDL_stdinc.h */; }; + 00162D5309BD20DA0037C8D0 /* SDL_syscond.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D4D09BD20DA0037C8D0 /* SDL_syscond.c */; }; + 00162D5409BD20DA0037C8D0 /* SDL_sysmutex.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D4E09BD20DA0037C8D0 /* SDL_sysmutex.c */; }; + 00162D5609BD20DA0037C8D0 /* SDL_syssem.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D5009BD20DA0037C8D0 /* SDL_syssem.c */; }; + 00162D5709BD20DA0037C8D0 /* SDL_systhread.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D5109BD20DA0037C8D0 /* SDL_systhread.c */; }; + 00162D5909BD20DA0037C8D0 /* SDL_syscond.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D4D09BD20DA0037C8D0 /* SDL_syscond.c */; }; + 00162D5A09BD20DA0037C8D0 /* SDL_sysmutex.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D4E09BD20DA0037C8D0 /* SDL_sysmutex.c */; }; + 00162D5B09BD20DA0037C8D0 /* SDL_sysmutex_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D4F09BD20DA0037C8D0 /* SDL_sysmutex_c.h */; }; + 00162D5C09BD20DA0037C8D0 /* SDL_syssem.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D5009BD20DA0037C8D0 /* SDL_syssem.c */; }; + 00162D5D09BD20DA0037C8D0 /* SDL_systhread.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D5109BD20DA0037C8D0 /* SDL_systhread.c */; }; + 00162D5E09BD20DA0037C8D0 /* SDL_systhread_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D5209BD20DA0037C8D0 /* SDL_systhread_c.h */; }; + 00162D6109BD21010037C8D0 /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6009BD21010037C8D0 /* SDL_systimer.c */; }; + 00162D6209BD21010037C8D0 /* SDL_systimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6009BD21010037C8D0 /* SDL_systimer.c */; }; + 00162D6B09BD214F0037C8D0 /* SDL_getenv.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6509BD214F0037C8D0 /* SDL_getenv.c */; }; + 00162D6C09BD214F0037C8D0 /* SDL_malloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6609BD214F0037C8D0 /* SDL_malloc.c */; }; + 00162D6D09BD214F0037C8D0 /* SDL_qsort.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6709BD214F0037C8D0 /* SDL_qsort.c */; }; + 00162D6E09BD214F0037C8D0 /* SDL_stdlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6809BD214F0037C8D0 /* SDL_stdlib.c */; }; + 00162D6F09BD214F0037C8D0 /* SDL_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6909BD214F0037C8D0 /* SDL_string.c */; }; + 00162D7009BD214F0037C8D0 /* SDL_getenv.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6509BD214F0037C8D0 /* SDL_getenv.c */; }; + 00162D7109BD214F0037C8D0 /* SDL_malloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6609BD214F0037C8D0 /* SDL_malloc.c */; }; + 00162D7209BD214F0037C8D0 /* SDL_qsort.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6709BD214F0037C8D0 /* SDL_qsort.c */; }; + 00162D7309BD214F0037C8D0 /* SDL_stdlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6809BD214F0037C8D0 /* SDL_stdlib.c */; }; + 00162D7409BD214F0037C8D0 /* SDL_string.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162D6909BD214F0037C8D0 /* SDL_string.c */; }; + 00162DA409BD222F0037C8D0 /* SDL_config_dreamcast.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3209BD1FA90037C8D0 /* SDL_config_dreamcast.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DA509BD222F0037C8D0 /* SDL_config_macos.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3309BD1FA90037C8D0 /* SDL_config_macos.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DA609BD222F0037C8D0 /* SDL_config_macosx.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3409BD1FA90037C8D0 /* SDL_config_macosx.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DA709BD222F0037C8D0 /* SDL_config_os2.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3509BD1FA90037C8D0 /* SDL_config_os2.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DA809BD222F0037C8D0 /* SDL_config_win32.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3609BD1FA90037C8D0 /* SDL_config_win32.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DA909BD222F0037C8D0 /* SDL_config.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3709BD1FA90037C8D0 /* SDL_config.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAA09BD222F0037C8D0 /* SDL_platform.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3809BD1FA90037C8D0 /* SDL_platform.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAB09BD222F0037C8D0 /* SDL_stdinc.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162D3909BD1FA90037C8D0 /* SDL_stdinc.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAC09BD222F0037C8D0 /* begin_code.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5E501191D2B7F000001 /* begin_code.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAD09BD222F0037C8D0 /* close_code.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5E601191D2B7F000001 /* close_code.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAE09BD222F0037C8D0 /* SDL_active.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5E701191D2B7F000001 /* SDL_active.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DAF09BD222F0037C8D0 /* SDL_audio.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5E801191D2B7F000001 /* SDL_audio.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB009BD222F0037C8D0 /* SDL_byteorder.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5E901191D2B7F000001 /* SDL_byteorder.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB109BD222F0037C8D0 /* SDL_cdrom.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5EA01191D2B7F000001 /* SDL_cdrom.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB209BD222F0037C8D0 /* SDL_copying.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5EB01191D2B7F000001 /* SDL_copying.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB309BD222F0037C8D0 /* SDL_cpuinfo.h in Headers */ = {isa = PBXBuildFile; fileRef = B2CF8DC405C444E400E5DC7F /* SDL_cpuinfo.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB409BD222F0037C8D0 /* SDL_endian.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5EC01191D2B7F000001 /* SDL_endian.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB509BD222F0037C8D0 /* SDL_error.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5ED01191D2B7F000001 /* SDL_error.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB609BD222F0037C8D0 /* SDL_events.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5EE01191D2B7F000001 /* SDL_events.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB709BD222F0037C8D0 /* SDL_getenv.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5EF01191D2B7F000001 /* SDL_getenv.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB809BD222F0037C8D0 /* SDL_joystick.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F001191D2B7F000001 /* SDL_joystick.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DB909BD222F0037C8D0 /* SDL_keyboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F101191D2B7F000001 /* SDL_keyboard.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBA09BD222F0037C8D0 /* SDL_keysym.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F201191D2B7F000001 /* SDL_keysym.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBB09BD222F0037C8D0 /* SDL_loadso.h in Headers */ = {isa = PBXBuildFile; fileRef = B29A290D04E5B28700A80002 /* SDL_loadso.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBC09BD222F0037C8D0 /* SDL_main.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F301191D2B7F000001 /* SDL_main.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBD09BD222F0037C8D0 /* SDL_mouse.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F401191D2B7F000001 /* SDL_mouse.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBE09BD222F0037C8D0 /* SDL_mutex.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F501191D2B7F000001 /* SDL_mutex.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DBF09BD222F0037C8D0 /* SDL_name.h in Headers */ = {isa = PBXBuildFile; fileRef = B2CF8DC705C4450500E5DC7F /* SDL_name.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC009BD222F0037C8D0 /* SDL_opengl.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F601191D2B7F000001 /* SDL_opengl.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC109BD222F0037C8D0 /* SDL_quit.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F701191D2B7F000001 /* SDL_quit.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC209BD222F0037C8D0 /* SDL_rwops.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F801191D2B7F000001 /* SDL_rwops.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC309BD222F0037C8D0 /* SDL_syswm.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5F901191D2B7F000001 /* SDL_syswm.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC409BD222F0037C8D0 /* SDL_thread.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FA01191D2B7F000001 /* SDL_thread.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC509BD222F0037C8D0 /* SDL_timer.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FB01191D2B7F000001 /* SDL_timer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC609BD222F0037C8D0 /* SDL_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FC01191D2B7F000001 /* SDL_types.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC709BD222F0037C8D0 /* SDL_version.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FD01191D2B7F000001 /* SDL_version.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC809BD222F0037C8D0 /* SDL_video.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FE01191D2B7F000001 /* SDL_video.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162DC909BD222F0037C8D0 /* SDL.h in Headers */ = {isa = PBXBuildFile; fileRef = 0C5AF5FF01191D2B7F000001 /* SDL.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 00162E6809BD27300037C8D0 /* SDL_mixer_MMX.c in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E61F097F2D9E00826121 /* SDL_mixer_MMX.c */; }; + 00162E6A09BD27360037C8D0 /* SDL_mixer_MMX.c in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E61F097F2D9E00826121 /* SDL_mixer_MMX.c */; }; + 00162E6B09BD27370037C8D0 /* SDL_mixer_MMX.h in Headers */ = {isa = PBXBuildFile; fileRef = 00B7E620097F2D9E00826121 /* SDL_mixer_MMX.h */; }; + 00162F3B09BE27FB0037C8D0 /* SDL_nullevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3409BE27FB0037C8D0 /* SDL_nullevents.c */; }; + 00162F3D09BE27FB0037C8D0 /* SDL_nullmouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3609BE27FB0037C8D0 /* SDL_nullmouse.c */; }; + 00162F3F09BE27FB0037C8D0 /* SDL_nullvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3809BE27FB0037C8D0 /* SDL_nullvideo.c */; }; + 00162F4109BE27FB0037C8D0 /* SDL_nullevents.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3409BE27FB0037C8D0 /* SDL_nullevents.c */; }; + 00162F4209BE27FB0037C8D0 /* SDL_nullevents_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162F3509BE27FB0037C8D0 /* SDL_nullevents_c.h */; }; + 00162F4309BE27FB0037C8D0 /* SDL_nullmouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3609BE27FB0037C8D0 /* SDL_nullmouse.c */; }; + 00162F4409BE27FB0037C8D0 /* SDL_nullmouse_c.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162F3709BE27FB0037C8D0 /* SDL_nullmouse_c.h */; }; + 00162F4509BE27FB0037C8D0 /* SDL_nullvideo.c in Sources */ = {isa = PBXBuildFile; fileRef = 00162F3809BE27FB0037C8D0 /* SDL_nullvideo.c */; }; + 00162F4609BE27FB0037C8D0 /* SDL_nullvideo.h in Headers */ = {isa = PBXBuildFile; fileRef = 00162F3909BE27FB0037C8D0 /* SDL_nullvideo.h */; }; + 002F328609CA049100EBEB88 /* SDL_iconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F328509CA049100EBEB88 /* SDL_iconv.c */; }; + 002F328709CA049100EBEB88 /* SDL_iconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F328509CA049100EBEB88 /* SDL_iconv.c */; }; + 002F32D709CA0BE700EBEB88 /* SDL_diskaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F32D409CA0BE700EBEB88 /* SDL_diskaudio.c */; }; + 002F32D909CA0BE700EBEB88 /* SDL_diskaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F32D409CA0BE700EBEB88 /* SDL_diskaudio.c */; }; + 002F32DA09CA0BE700EBEB88 /* SDL_diskaudio.h in Headers */ = {isa = PBXBuildFile; fileRef = 002F32D509CA0BE700EBEB88 /* SDL_diskaudio.h */; }; + 002F32E509CA0BF600EBEB88 /* SDL_dummyaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F32E209CA0BF600EBEB88 /* SDL_dummyaudio.c */; }; + 002F32E709CA0BF600EBEB88 /* SDL_dummyaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F32E209CA0BF600EBEB88 /* SDL_dummyaudio.c */; }; + 002F32E809CA0BF600EBEB88 /* SDL_dummyaudio.h in Headers */ = {isa = PBXBuildFile; fileRef = 002F32E309CA0BF600EBEB88 /* SDL_dummyaudio.h */; }; + 004C2C8B0975E13300E9D430 /* AudioFilePlayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C860975E13300E9D430 /* AudioFilePlayer.c */; }; + 004C2C8C0975E13300E9D430 /* AudioFileReaderThread.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C870975E13300E9D430 /* AudioFileReaderThread.c */; }; + 004C2C8D0975E13300E9D430 /* CDPlayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C880975E13300E9D430 /* CDPlayer.c */; }; + 004C2C8E0975E13300E9D430 /* SDLOSXCAGuard.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C890975E13300E9D430 /* SDLOSXCAGuard.c */; }; + 004C2C900975E13300E9D430 /* AudioFilePlayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C860975E13300E9D430 /* AudioFilePlayer.c */; }; + 004C2C910975E13300E9D430 /* AudioFileReaderThread.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C870975E13300E9D430 /* AudioFileReaderThread.c */; }; + 004C2C920975E13300E9D430 /* CDPlayer.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C880975E13300E9D430 /* CDPlayer.c */; }; + 004C2C930975E13300E9D430 /* SDLOSXCAGuard.c in Sources */ = {isa = PBXBuildFile; fileRef = 004C2C890975E13300E9D430 /* SDLOSXCAGuard.c */; }; + 004C2C940975E13300E9D430 /* SDLOSXCAGuard.h in Headers */ = {isa = PBXBuildFile; fileRef = 004C2C8A0975E13300E9D430 /* SDLOSXCAGuard.h */; }; + 007317A20858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179B0858DECD00B2BC32 /* AudioToolbox.framework */; }; + 007317A30858DECD00B2BC32 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179C0858DECD00B2BC32 /* AudioUnit.framework */; }; + 007317A40858DECD00B2BC32 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179D0858DECD00B2BC32 /* Cocoa.framework */; }; + 007317A50858DECD00B2BC32 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179E0858DECD00B2BC32 /* CoreAudio.framework */; }; + 007317A60858DECD00B2BC32 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179F0858DECD00B2BC32 /* IOKit.framework */; }; + 007317A70858DECD00B2BC32 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317A00858DECD00B2BC32 /* OpenGL.framework */; }; + 007317A90858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179B0858DECD00B2BC32 /* AudioToolbox.framework */; }; + 007317AA0858DECD00B2BC32 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179C0858DECD00B2BC32 /* AudioUnit.framework */; }; + 007317AB0858DECD00B2BC32 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179D0858DECD00B2BC32 /* Cocoa.framework */; }; + 007317AC0858DECD00B2BC32 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179E0858DECD00B2BC32 /* CoreAudio.framework */; }; + 007317AD0858DECD00B2BC32 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179F0858DECD00B2BC32 /* IOKit.framework */; }; + 007317AE0858DECD00B2BC32 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317A00858DECD00B2BC32 /* OpenGL.framework */; }; + 007317AF0858DECD00B2BC32 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317A10858DECD00B2BC32 /* QuickTime.framework */; }; + 007317B00858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179B0858DECD00B2BC32 /* AudioToolbox.framework */; }; + 007317B10858DECD00B2BC32 /* AudioUnit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179C0858DECD00B2BC32 /* AudioUnit.framework */; }; + 007317B20858DECD00B2BC32 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179D0858DECD00B2BC32 /* Cocoa.framework */; }; + 007317B30858DECD00B2BC32 /* CoreAudio.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179E0858DECD00B2BC32 /* CoreAudio.framework */; }; + 007317B40858DECD00B2BC32 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0073179F0858DECD00B2BC32 /* IOKit.framework */; }; + 007317B50858DECD00B2BC32 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317A00858DECD00B2BC32 /* OpenGL.framework */; }; + 007317B60858DECD00B2BC32 /* QuickTime.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317A10858DECD00B2BC32 /* QuickTime.framework */; }; + 007317C30858E15000B2BC32 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; }; + 007317C40858E15000B2BC32 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; }; + 00D0D02310675823004B05EF /* SDL_QuartzWM.h in Headers */ = {isa = PBXBuildFile; fileRef = 00D0D02210675823004B05EF /* SDL_QuartzWM.h */; }; + 00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00D0D08310675DD9004B05EF /* CoreFoundation.framework */; }; + 00D0D0D810675E46004B05EF /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 007317C10858E15000B2BC32 /* Carbon.framework */; }; + 00EAE6FC0C4D3F84009A420A /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E625097F2DD100826121 /* SDL_yuv_mmx.c */; }; + 00EAE6FD0C4D3F88009A420A /* SDL_yuv_mmx.c in Sources */ = {isa = PBXBuildFile; fileRef = 00B7E625097F2DD100826121 /* SDL_yuv_mmx.c */; }; + 046B91EC0A11B53500FB151C /* SDL_sysloadso.c in Sources */ = {isa = PBXBuildFile; fileRef = 046B91E90A11B53500FB151C /* SDL_sysloadso.c */; }; + 046B91ED0A11B53500FB151C /* SDL_sysloadso.c in Sources */ = {isa = PBXBuildFile; fileRef = 046B91E90A11B53500FB151C /* SDL_sysloadso.c */; }; + 046B92130A11B8AD00FB151C /* SDL_dlcompat.c in Sources */ = {isa = PBXBuildFile; fileRef = 046B92100A11B8AD00FB151C /* SDL_dlcompat.c */; }; + 046B92140A11B8AD00FB151C /* SDL_dlcompat.c in Sources */ = {isa = PBXBuildFile; fileRef = 046B92100A11B8AD00FB151C /* SDL_dlcompat.c */; }; + BECDF62B0761BA81005FE872 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF2F0086C3A07F000001 /* SDLMain.nib */; }; + BECDF62E0761BA81005FE872 /* SDL_audio.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538330006D78D67F000001 /* SDL_audio.c */; }; + BECDF62F0761BA81005FE872 /* SDL_audiocvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538331006D78D67F000001 /* SDL_audiocvt.c */; }; + BECDF6300761BA81005FE872 /* SDL_audiodev.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538332006D78D67F000001 /* SDL_audiodev.c */; }; + BECDF6320761BA81005FE872 /* SDL_mixer.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538334006D78D67F000001 /* SDL_mixer.c */; }; + BECDF6330761BA81005FE872 /* SDL_wave.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538335006D78D67F000001 /* SDL_wave.c */; }; + BECDF6350761BA81005FE872 /* SDL_active.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538368006D79147F000001 /* SDL_active.c */; }; + BECDF6360761BA81005FE872 /* SDL_events.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538369006D79147F000001 /* SDL_events.c */; }; + BECDF6370761BA81005FE872 /* SDL_expose.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836A006D79147F000001 /* SDL_expose.c */; }; + BECDF6380761BA81005FE872 /* SDL_keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836B006D79147F000001 /* SDL_keyboard.c */; }; + BECDF6390761BA81005FE872 /* SDL_mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836C006D79147F000001 /* SDL_mouse.c */; }; + BECDF63A0761BA81005FE872 /* SDL_quit.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836D006D79147F000001 /* SDL_quit.c */; }; + BECDF63B0761BA81005FE872 /* SDL_resize.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836E006D79147F000001 /* SDL_resize.c */; }; + BECDF63C0761BA81005FE872 /* SDL_rwops.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538377006D79307F000001 /* SDL_rwops.c */; }; + BECDF63E0761BA81005FE872 /* SDL_timer.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383A0006D79BC7F000001 /* SDL_timer.c */; }; + BECDF63F0761BA81005FE872 /* SDL_blit.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383D8006D7A567F000001 /* SDL_blit.c */; }; + BECDF6400761BA81005FE872 /* SDL_blit_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DA006D7A567F000001 /* SDL_blit_0.c */; }; + BECDF6410761BA81005FE872 /* SDL_blit_1.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DB006D7A567F000001 /* SDL_blit_1.c */; }; + BECDF6420761BA81005FE872 /* SDL_blit_A.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DC006D7A567F000001 /* SDL_blit_A.c */; }; + BECDF6430761BA81005FE872 /* SDL_blit_N.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DE006D7A567F000001 /* SDL_blit_N.c */; }; + BECDF6440761BA81005FE872 /* SDL_bmp.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DF006D7A567F000001 /* SDL_bmp.c */; }; + BECDF6450761BA81005FE872 /* SDL_cursor.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E0006D7A567F000001 /* SDL_cursor.c */; }; + BECDF6460761BA81005FE872 /* SDL_gamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E2006D7A567F000001 /* SDL_gamma.c */; }; + BECDF6470761BA81005FE872 /* SDL_pixels.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E6006D7A567F000001 /* SDL_pixels.c */; }; + BECDF6480761BA81005FE872 /* SDL_RLEaccel.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E8006D7A567F000001 /* SDL_RLEaccel.c */; }; + BECDF6490761BA81005FE872 /* SDL_surface.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EC006D7A567F000001 /* SDL_surface.c */; }; + BECDF64A0761BA81005FE872 /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EE006D7A567F000001 /* SDL_video.c */; }; + BECDF64B0761BA81005FE872 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EF006D7A567F000001 /* SDL_yuv.c */; }; + BECDF64C0761BA81005FE872 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383F1006D7A567F000001 /* SDL_yuv_sw.c */; }; + BECDF64D0761BA81005FE872 /* SDL_error.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538438006D7D947F000001 /* SDL_error.c */; }; + BECDF64E0761BA81005FE872 /* SDL_fatal.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538439006D7D947F000001 /* SDL_fatal.c */; }; + BECDF6500761BA81005FE872 /* SDL.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153843C006D7D947F000001 /* SDL.c */; }; + BECDF6510761BA81005FE872 /* SDL_thread.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538445006D7EC67F000001 /* SDL_thread.c */; }; + BECDF6520761BA81005FE872 /* SDL_cdrom.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4895006D86FF7F000001 /* SDL_cdrom.c */; }; + BECDF6530761BA81005FE872 /* SDL_joystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E489D006D88D97F000001 /* SDL_joystick.c */; }; + BECDF6580761BA81005FE872 /* SDL_stretch.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EA006D7A567F000001 /* SDL_stretch.c */; }; + BECDF6590761BA81005FE872 /* SDL_sysjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = F51789D101769A2401D3D55B /* SDL_sysjoystick.c */; }; + BECDF65B0761BA81005FE872 /* SDL_QuartzEvents.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4D705A88AD0006B9F1C /* SDL_QuartzEvents.m */; }; + BECDF65C0761BA81005FE872 /* SDL_QuartzGL.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4D805A88AD0006B9F1C /* SDL_QuartzGL.m */; }; + BECDF65D0761BA81005FE872 /* SDL_QuartzVideo.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DB05A88AD0006B9F1C /* SDL_QuartzVideo.m */; }; + BECDF65E0761BA81005FE872 /* SDL_QuartzWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DD05A88AD0006B9F1C /* SDL_QuartzWindow.m */; }; + BECDF65F0761BA81005FE872 /* SDL_QuartzWM.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DE05A88AD0006B9F1C /* SDL_QuartzWM.m */; }; + BECDF6610761BA81005FE872 /* SDL_cpuinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = B24DA50405A88D52006B9F1C /* SDL_cpuinfo.c */; }; + BECDF6620761BA81005FE872 /* SDL_syscdrom.c in Sources */ = {isa = PBXBuildFile; fileRef = B2A23A7B04157C5700A80002 /* SDL_syscdrom.c */; }; + BECDF6670761BA81005FE872 /* SDL_coreaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = BECDF5D50761B759005FE872 /* SDL_coreaudio.c */; }; + BECDF6720761BA81005FE872 /* CGS.h in Headers */ = {isa = PBXBuildFile; fileRef = B24DA4D605A88AD0006B9F1C /* CGS.h */; }; + BECDF6730761BA81005FE872 /* SDL_QuartzKeys.h in Headers */ = {isa = PBXBuildFile; fileRef = B24DA4D905A88AD0006B9F1C /* SDL_QuartzKeys.h */; }; + BECDF6740761BA81005FE872 /* SDL_QuartzVideo.h in Headers */ = {isa = PBXBuildFile; fileRef = B24DA4DA05A88AD0006B9F1C /* SDL_QuartzVideo.h */; }; + BECDF6750761BA81005FE872 /* SDL_QuartzWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = B24DA4DC05A88AD0006B9F1C /* SDL_QuartzWindow.h */; }; + BECDF6760761BA81005FE872 /* SDL_cpuinfo.h in Headers */ = {isa = PBXBuildFile; fileRef = B2CF8DC405C444E400E5DC7F /* SDL_cpuinfo.h */; }; + BECDF6770761BA81005FE872 /* SDL_name.h in Headers */ = {isa = PBXBuildFile; fileRef = B2CF8DC705C4450500E5DC7F /* SDL_name.h */; }; + BECDF6780761BA81005FE872 /* SDL_coreaudio.h in Headers */ = {isa = PBXBuildFile; fileRef = BECDF5D60761B759005FE872 /* SDL_coreaudio.h */; }; + BECDF67A0761BA81005FE872 /* SDL_audio.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538330006D78D67F000001 /* SDL_audio.c */; }; + BECDF67B0761BA81005FE872 /* SDL_audiocvt.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538331006D78D67F000001 /* SDL_audiocvt.c */; }; + BECDF67D0761BA81005FE872 /* SDL_audiodev.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538332006D78D67F000001 /* SDL_audiodev.c */; }; + BECDF67E0761BA81005FE872 /* SDL_mixer.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538334006D78D67F000001 /* SDL_mixer.c */; }; + BECDF67F0761BA81005FE872 /* SDL_wave.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538335006D78D67F000001 /* SDL_wave.c */; }; + BECDF6810761BA81005FE872 /* SDL_cdrom.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4895006D86FF7F000001 /* SDL_cdrom.c */; }; + BECDF6830761BA81005FE872 /* SDL_active.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538368006D79147F000001 /* SDL_active.c */; }; + BECDF6840761BA81005FE872 /* SDL_events.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538369006D79147F000001 /* SDL_events.c */; }; + BECDF6850761BA81005FE872 /* SDL_expose.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836A006D79147F000001 /* SDL_expose.c */; }; + BECDF6860761BA81005FE872 /* SDL_keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836B006D79147F000001 /* SDL_keyboard.c */; }; + BECDF6870761BA81005FE872 /* SDL_mouse.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836C006D79147F000001 /* SDL_mouse.c */; }; + BECDF6880761BA81005FE872 /* SDL_quit.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836D006D79147F000001 /* SDL_quit.c */; }; + BECDF6890761BA81005FE872 /* SDL_resize.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153836E006D79147F000001 /* SDL_resize.c */; }; + BECDF68A0761BA81005FE872 /* SDL_rwops.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538377006D79307F000001 /* SDL_rwops.c */; }; + BECDF68B0761BA81005FE872 /* SDL_joystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E489D006D88D97F000001 /* SDL_joystick.c */; }; + BECDF68C0761BA81005FE872 /* SDL_thread.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538445006D7EC67F000001 /* SDL_thread.c */; }; + BECDF6920761BA81005FE872 /* SDL_timer.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383A0006D79BC7F000001 /* SDL_timer.c */; }; + BECDF6930761BA81005FE872 /* SDL_blit.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383D8006D7A567F000001 /* SDL_blit.c */; }; + BECDF6940761BA81005FE872 /* SDL_blit_0.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DA006D7A567F000001 /* SDL_blit_0.c */; }; + BECDF6950761BA81005FE872 /* SDL_blit_1.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DB006D7A567F000001 /* SDL_blit_1.c */; }; + BECDF6960761BA81005FE872 /* SDL_blit_A.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DC006D7A567F000001 /* SDL_blit_A.c */; }; + BECDF6970761BA81005FE872 /* SDL_blit_N.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DE006D7A567F000001 /* SDL_blit_N.c */; }; + BECDF6980761BA81005FE872 /* SDL_bmp.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383DF006D7A567F000001 /* SDL_bmp.c */; }; + BECDF6990761BA81005FE872 /* SDL_cursor.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E0006D7A567F000001 /* SDL_cursor.c */; }; + BECDF69A0761BA81005FE872 /* SDL_gamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E2006D7A567F000001 /* SDL_gamma.c */; }; + BECDF69B0761BA81005FE872 /* SDL_pixels.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E6006D7A567F000001 /* SDL_pixels.c */; }; + BECDF69C0761BA81005FE872 /* SDL_RLEaccel.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383E8006D7A567F000001 /* SDL_RLEaccel.c */; }; + BECDF69D0761BA81005FE872 /* SDL_stretch.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EA006D7A567F000001 /* SDL_stretch.c */; }; + BECDF69E0761BA81005FE872 /* SDL_surface.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EC006D7A567F000001 /* SDL_surface.c */; }; + BECDF69F0761BA81005FE872 /* SDL_video.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EE006D7A567F000001 /* SDL_video.c */; }; + BECDF6A00761BA81005FE872 /* SDL_yuv.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383EF006D7A567F000001 /* SDL_yuv.c */; }; + BECDF6A10761BA81005FE872 /* SDL_yuv_sw.c in Sources */ = {isa = PBXBuildFile; fileRef = 015383F1006D7A567F000001 /* SDL_yuv_sw.c */; }; + BECDF6A20761BA81005FE872 /* SDL_error.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538438006D7D947F000001 /* SDL_error.c */; }; + BECDF6A30761BA81005FE872 /* SDL_fatal.c in Sources */ = {isa = PBXBuildFile; fileRef = 01538439006D7D947F000001 /* SDL_fatal.c */; }; + BECDF6A50761BA81005FE872 /* SDL.c in Sources */ = {isa = PBXBuildFile; fileRef = 0153843C006D7D947F000001 /* SDL.c */; }; + BECDF6A60761BA81005FE872 /* SDL_sysjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = F51789D101769A2401D3D55B /* SDL_sysjoystick.c */; }; + BECDF6A80761BA81005FE872 /* SDL_syscdrom.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4894006D86FF7F000001 /* SDL_syscdrom.c */; }; + BECDF6A90761BA81005FE872 /* SDL_QuartzEvents.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4D705A88AD0006B9F1C /* SDL_QuartzEvents.m */; }; + BECDF6AA0761BA81005FE872 /* SDL_QuartzGL.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4D805A88AD0006B9F1C /* SDL_QuartzGL.m */; }; + BECDF6AB0761BA81005FE872 /* SDL_QuartzVideo.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DB05A88AD0006B9F1C /* SDL_QuartzVideo.m */; }; + BECDF6AC0761BA81005FE872 /* SDL_QuartzWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DD05A88AD0006B9F1C /* SDL_QuartzWindow.m */; }; + BECDF6AD0761BA81005FE872 /* SDL_QuartzWM.m in Sources */ = {isa = PBXBuildFile; fileRef = B24DA4DE05A88AD0006B9F1C /* SDL_QuartzWM.m */; }; + BECDF6AF0761BA81005FE872 /* SDL_cpuinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = B24DA50405A88D52006B9F1C /* SDL_cpuinfo.c */; }; + BECDF6B00761BA81005FE872 /* SDL_coreaudio.c in Sources */ = {isa = PBXBuildFile; fileRef = BECDF5D50761B759005FE872 /* SDL_coreaudio.c */; }; + BECDF6B70761BA81005FE872 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 2EECDF2E0086C3A07F000001 /* SDLMain.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 00830FFF1072D94A00A531F1 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0032354F1070931700C76517; + remoteInfo = "Generate Doxygen DocSet"; + }; + BECDF6C50761BA81005FE872 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0867D690FE84028FC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BECDF5FE0761BA81005FE872; + remoteInfo = "Framework (Upgraded)"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 0014B7E809C0D8D2003A99D5 /* SDL_dgaevents_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_dgaevents_c.h; sourceTree = ""; }; + 0014B7E909C0D8D2003A99D5 /* SDL_dgaevents.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dgaevents.c; sourceTree = ""; }; + 0014B7EA09C0D8D2003A99D5 /* SDL_dgamouse_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_dgamouse_c.h; sourceTree = ""; }; + 0014B7EB09C0D8D2003A99D5 /* SDL_dgamouse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dgamouse.c; sourceTree = ""; }; + 0014B7EC09C0D8D2003A99D5 /* SDL_dgavideo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dgavideo.c; sourceTree = ""; }; + 0014B7ED09C0D8D2003A99D5 /* SDL_dgavideo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_dgavideo.h; sourceTree = ""; }; + 0014B83709C0D977003A99D5 /* SDL_x11dga_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11dga_c.h; sourceTree = ""; }; + 0014B83809C0D977003A99D5 /* SDL_x11dga.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11dga.c; sourceTree = ""; }; + 0014B83909C0D977003A99D5 /* SDL_x11dyn.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11dyn.c; sourceTree = ""; }; + 0014B83A09C0D977003A99D5 /* SDL_x11dyn.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11dyn.h; sourceTree = ""; }; + 0014B83B09C0D977003A99D5 /* SDL_x11events_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11events_c.h; sourceTree = ""; }; + 0014B83C09C0D977003A99D5 /* SDL_x11events.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11events.c; sourceTree = ""; }; + 0014B83D09C0D977003A99D5 /* SDL_x11gamma_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11gamma_c.h; sourceTree = ""; }; + 0014B83E09C0D977003A99D5 /* SDL_x11gamma.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11gamma.c; sourceTree = ""; }; + 0014B83F09C0D977003A99D5 /* SDL_x11gl_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11gl_c.h; sourceTree = ""; }; + 0014B84009C0D977003A99D5 /* SDL_x11gl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11gl.c; sourceTree = ""; }; + 0014B84109C0D977003A99D5 /* SDL_x11image_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11image_c.h; sourceTree = ""; }; + 0014B84209C0D977003A99D5 /* SDL_x11image.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11image.c; sourceTree = ""; }; + 0014B84309C0D977003A99D5 /* SDL_x11modes_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11modes_c.h; sourceTree = ""; }; + 0014B84409C0D977003A99D5 /* SDL_x11modes.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11modes.c; sourceTree = ""; }; + 0014B84509C0D977003A99D5 /* SDL_x11mouse_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11mouse_c.h; sourceTree = ""; }; + 0014B84609C0D977003A99D5 /* SDL_x11mouse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11mouse.c; sourceTree = ""; }; + 0014B84709C0D977003A99D5 /* SDL_x11sym.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11sym.h; sourceTree = ""; }; + 0014B84809C0D977003A99D5 /* SDL_x11video.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11video.c; sourceTree = ""; }; + 0014B84909C0D977003A99D5 /* SDL_x11video.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11video.h; sourceTree = ""; }; + 0014B84A09C0D977003A99D5 /* SDL_x11wm_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11wm_c.h; sourceTree = ""; }; + 0014B84B09C0D977003A99D5 /* SDL_x11wm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11wm.c; sourceTree = ""; }; + 0014B84C09C0D977003A99D5 /* SDL_x11yuv_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_x11yuv_c.h; sourceTree = ""; }; + 0014B84D09C0D977003A99D5 /* SDL_x11yuv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_x11yuv.c; sourceTree = ""; }; + 0014B89009C0DA94003A99D5 /* XF86DGA.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = XF86DGA.c; sourceTree = ""; }; + 0014B89109C0DA94003A99D5 /* XF86DGA2.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = XF86DGA2.c; sourceTree = ""; }; + 0014B89609C0DAA1003A99D5 /* XF86VMode.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = XF86VMode.c; sourceTree = ""; }; + 0014B89909C0DAAE003A99D5 /* Xv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = Xv.c; sourceTree = ""; }; + 0014B89A09C0DAAE003A99D5 /* Xvlibint.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = Xvlibint.h; sourceTree = ""; }; + 0014B89F09C0DAB9003A99D5 /* Xinerama.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = Xinerama.c; sourceTree = ""; }; + 0014B8A209C0DAC4003A99D5 /* xme.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xme.c; sourceTree = ""; }; + 00162D3209BD1FA90037C8D0 /* SDL_config_dreamcast.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config_dreamcast.h; path = ../../include/SDL_config_dreamcast.h; sourceTree = SOURCE_ROOT; }; + 00162D3309BD1FA90037C8D0 /* SDL_config_macos.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config_macos.h; path = ../../include/SDL_config_macos.h; sourceTree = SOURCE_ROOT; }; + 00162D3409BD1FA90037C8D0 /* SDL_config_macosx.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config_macosx.h; path = ../../include/SDL_config_macosx.h; sourceTree = SOURCE_ROOT; }; + 00162D3509BD1FA90037C8D0 /* SDL_config_os2.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config_os2.h; path = ../../include/SDL_config_os2.h; sourceTree = SOURCE_ROOT; }; + 00162D3609BD1FA90037C8D0 /* SDL_config_win32.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config_win32.h; path = ../../include/SDL_config_win32.h; sourceTree = SOURCE_ROOT; }; + 00162D3709BD1FA90037C8D0 /* SDL_config.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_config.h; path = ../../include/SDL_config.h; sourceTree = SOURCE_ROOT; }; + 00162D3809BD1FA90037C8D0 /* SDL_platform.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_platform.h; path = ../../include/SDL_platform.h; sourceTree = SOURCE_ROOT; }; + 00162D3909BD1FA90037C8D0 /* SDL_stdinc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_stdinc.h; path = ../../include/SDL_stdinc.h; sourceTree = SOURCE_ROOT; }; + 00162D4D09BD20DA0037C8D0 /* SDL_syscond.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_syscond.c; sourceTree = ""; }; + 00162D4E09BD20DA0037C8D0 /* SDL_sysmutex.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_sysmutex.c; sourceTree = ""; }; + 00162D4F09BD20DA0037C8D0 /* SDL_sysmutex_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_sysmutex_c.h; sourceTree = ""; }; + 00162D5009BD20DA0037C8D0 /* SDL_syssem.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_syssem.c; sourceTree = ""; }; + 00162D5109BD20DA0037C8D0 /* SDL_systhread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_systhread.c; sourceTree = ""; }; + 00162D5209BD20DA0037C8D0 /* SDL_systhread_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_systhread_c.h; sourceTree = ""; }; + 00162D6009BD21010037C8D0 /* SDL_systimer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_systimer.c; sourceTree = ""; }; + 00162D6509BD214F0037C8D0 /* SDL_getenv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_getenv.c; sourceTree = ""; }; + 00162D6609BD214F0037C8D0 /* SDL_malloc.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_malloc.c; sourceTree = ""; }; + 00162D6709BD214F0037C8D0 /* SDL_qsort.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_qsort.c; sourceTree = ""; }; + 00162D6809BD214F0037C8D0 /* SDL_stdlib.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_stdlib.c; sourceTree = ""; }; + 00162D6909BD214F0037C8D0 /* SDL_string.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_string.c; sourceTree = ""; }; + 00162F3409BE27FB0037C8D0 /* SDL_nullevents.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_nullevents.c; sourceTree = ""; }; + 00162F3509BE27FB0037C8D0 /* SDL_nullevents_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_nullevents_c.h; sourceTree = ""; }; + 00162F3609BE27FB0037C8D0 /* SDL_nullmouse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_nullmouse.c; sourceTree = ""; }; + 00162F3709BE27FB0037C8D0 /* SDL_nullmouse_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_nullmouse_c.h; sourceTree = ""; }; + 00162F3809BE27FB0037C8D0 /* SDL_nullvideo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_nullvideo.c; sourceTree = ""; }; + 00162F3909BE27FB0037C8D0 /* SDL_nullvideo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_nullvideo.h; sourceTree = ""; }; + 002F328509CA049100EBEB88 /* SDL_iconv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_iconv.c; sourceTree = ""; }; + 002F32D409CA0BE700EBEB88 /* SDL_diskaudio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_diskaudio.c; sourceTree = ""; }; + 002F32D509CA0BE700EBEB88 /* SDL_diskaudio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_diskaudio.h; sourceTree = ""; }; + 002F32E209CA0BF600EBEB88 /* SDL_dummyaudio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dummyaudio.c; sourceTree = ""; }; + 002F32E309CA0BF600EBEB88 /* SDL_dummyaudio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_dummyaudio.h; sourceTree = ""; }; + 004C2C860975E13300E9D430 /* AudioFilePlayer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = AudioFilePlayer.c; sourceTree = ""; }; + 004C2C870975E13300E9D430 /* AudioFileReaderThread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = AudioFileReaderThread.c; sourceTree = ""; }; + 004C2C880975E13300E9D430 /* CDPlayer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = CDPlayer.c; sourceTree = ""; }; + 004C2C890975E13300E9D430 /* SDLOSXCAGuard.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDLOSXCAGuard.c; sourceTree = ""; }; + 004C2C8A0975E13300E9D430 /* SDLOSXCAGuard.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLOSXCAGuard.h; sourceTree = ""; }; + 0073179B0858DECD00B2BC32 /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = /System/Library/Frameworks/AudioToolbox.framework; sourceTree = ""; }; + 0073179C0858DECD00B2BC32 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = ""; }; + 0073179D0858DECD00B2BC32 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 0073179E0858DECD00B2BC32 /* CoreAudio.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreAudio.framework; path = /System/Library/Frameworks/CoreAudio.framework; sourceTree = ""; }; + 0073179F0858DECD00B2BC32 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; }; + 007317A00858DECD00B2BC32 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 007317A10858DECD00B2BC32 /* QuickTime.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuickTime.framework; path = /System/Library/Frameworks/QuickTime.framework; sourceTree = ""; }; + 007317C10858E15000B2BC32 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; + 00794D3F09D0C461003FC8A1 /* License.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; path = License.rtf; sourceTree = ""; }; + 00AE6E1E08B958CC00255E2F /* ReadMeDevLite.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = ReadMeDevLite.txt; sourceTree = ""; }; + 00B7E61F097F2D9E00826121 /* SDL_mixer_MMX.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_mixer_MMX.c; sourceTree = ""; }; + 00B7E620097F2D9E00826121 /* SDL_mixer_MMX.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_mixer_MMX.h; sourceTree = ""; }; + 00B7E625097F2DD100826121 /* SDL_yuv_mmx.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_mmx.c; sourceTree = ""; }; + 00D0D02210675823004B05EF /* SDL_QuartzWM.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SDL_QuartzWM.h; sourceTree = ""; }; + 00D0D08310675DD9004B05EF /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + 00F5D79E0990CA0D0051C449 /* UniversalBinaryNotes.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; path = UniversalBinaryNotes.rtf; sourceTree = ""; }; + 01538330006D78D67F000001 /* SDL_audio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_audio.c; sourceTree = ""; }; + 01538331006D78D67F000001 /* SDL_audiocvt.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_audiocvt.c; sourceTree = ""; }; + 01538332006D78D67F000001 /* SDL_audiodev.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_audiodev.c; sourceTree = ""; }; + 01538334006D78D67F000001 /* SDL_mixer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_mixer.c; sourceTree = ""; }; + 01538335006D78D67F000001 /* SDL_wave.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_wave.c; sourceTree = ""; }; + 01538368006D79147F000001 /* SDL_active.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_active.c; sourceTree = ""; }; + 01538369006D79147F000001 /* SDL_events.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_events.c; sourceTree = ""; }; + 0153836A006D79147F000001 /* SDL_expose.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_expose.c; sourceTree = ""; }; + 0153836B006D79147F000001 /* SDL_keyboard.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_keyboard.c; sourceTree = ""; }; + 0153836C006D79147F000001 /* SDL_mouse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_mouse.c; sourceTree = ""; }; + 0153836D006D79147F000001 /* SDL_quit.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_quit.c; sourceTree = ""; }; + 0153836E006D79147F000001 /* SDL_resize.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_resize.c; sourceTree = ""; }; + 01538377006D79307F000001 /* SDL_rwops.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_rwops.c; sourceTree = ""; }; + 015383A0006D79BC7F000001 /* SDL_timer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_timer.c; sourceTree = ""; }; + 015383C5006D7A567F000001 /* SDL_macevents.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_macevents.c; sourceTree = ""; }; + 015383C7006D7A567F000001 /* SDL_macgl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_macgl.c; sourceTree = ""; }; + 015383CA006D7A567F000001 /* SDL_macmouse.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_macmouse.c; sourceTree = ""; }; + 015383CC006D7A567F000001 /* SDL_macwm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_macwm.c; sourceTree = ""; }; + 015383D1006D7A567F000001 /* SDL_dspvideo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dspvideo.c; sourceTree = ""; }; + 015383D2006D7A567F000001 /* SDL_dspvideo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_dspvideo.h; sourceTree = ""; }; + 015383D6006D7A567F000001 /* SDL_romvideo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_romvideo.c; sourceTree = ""; }; + 015383D8006D7A567F000001 /* SDL_blit.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_blit.c; sourceTree = ""; }; + 015383DA006D7A567F000001 /* SDL_blit_0.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_blit_0.c; sourceTree = ""; }; + 015383DB006D7A567F000001 /* SDL_blit_1.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_blit_1.c; sourceTree = ""; }; + 015383DC006D7A567F000001 /* SDL_blit_A.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_blit_A.c; sourceTree = ""; }; + 015383DE006D7A567F000001 /* SDL_blit_N.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_blit_N.c; sourceTree = ""; }; + 015383DF006D7A567F000001 /* SDL_bmp.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_bmp.c; sourceTree = ""; }; + 015383E0006D7A567F000001 /* SDL_cursor.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_cursor.c; sourceTree = ""; }; + 015383E2006D7A567F000001 /* SDL_gamma.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_gamma.c; sourceTree = ""; }; + 015383E6006D7A567F000001 /* SDL_pixels.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_pixels.c; sourceTree = ""; }; + 015383E8006D7A567F000001 /* SDL_RLEaccel.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_RLEaccel.c; sourceTree = ""; }; + 015383EA006D7A567F000001 /* SDL_stretch.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_stretch.c; sourceTree = ""; }; + 015383EC006D7A567F000001 /* SDL_surface.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_surface.c; sourceTree = ""; }; + 015383EE006D7A567F000001 /* SDL_video.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_video.c; sourceTree = ""; }; + 015383EF006D7A567F000001 /* SDL_yuv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_yuv.c; sourceTree = ""; }; + 015383F1006D7A567F000001 /* SDL_yuv_sw.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_yuv_sw.c; sourceTree = ""; }; + 01538438006D7D947F000001 /* SDL_error.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = SDL_error.c; path = ../../src/SDL_error.c; sourceTree = SOURCE_ROOT; }; + 01538439006D7D947F000001 /* SDL_fatal.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = SDL_fatal.c; path = ../../src/SDL_fatal.c; sourceTree = SOURCE_ROOT; }; + 0153843C006D7D947F000001 /* SDL.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = SDL.c; path = ../../src/SDL.c; sourceTree = SOURCE_ROOT; }; + 01538445006D7EC67F000001 /* SDL_thread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = SDL_thread.c; path = ../../src/thread/SDL_thread.c; sourceTree = SOURCE_ROOT; }; + 046B91E90A11B53500FB151C /* SDL_sysloadso.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_sysloadso.c; sourceTree = ""; }; + 046B92100A11B8AD00FB151C /* SDL_dlcompat.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_dlcompat.c; sourceTree = ""; }; + 083E4894006D86FF7F000001 /* SDL_syscdrom.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_syscdrom.c; sourceTree = ""; }; + 083E4895006D86FF7F000001 /* SDL_cdrom.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_cdrom.c; sourceTree = ""; }; + 083E489D006D88D97F000001 /* SDL_joystick.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_joystick.c; sourceTree = ""; }; + 0C5AF5E501191D2B7F000001 /* begin_code.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = begin_code.h; path = ../../include/begin_code.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5E601191D2B7F000001 /* close_code.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = close_code.h; path = ../../include/close_code.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5E701191D2B7F000001 /* SDL_active.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_active.h; path = ../../include/SDL_active.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5E801191D2B7F000001 /* SDL_audio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_audio.h; path = ../../include/SDL_audio.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5E901191D2B7F000001 /* SDL_byteorder.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_byteorder.h; path = ../../include/SDL_byteorder.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5EA01191D2B7F000001 /* SDL_cdrom.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_cdrom.h; path = ../../include/SDL_cdrom.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5EB01191D2B7F000001 /* SDL_copying.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_copying.h; path = ../../include/SDL_copying.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5EC01191D2B7F000001 /* SDL_endian.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_endian.h; path = ../../include/SDL_endian.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5ED01191D2B7F000001 /* SDL_error.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_error.h; path = ../../include/SDL_error.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5EE01191D2B7F000001 /* SDL_events.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_events.h; path = ../../include/SDL_events.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5EF01191D2B7F000001 /* SDL_getenv.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_getenv.h; path = ../../include/SDL_getenv.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F001191D2B7F000001 /* SDL_joystick.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_joystick.h; path = ../../include/SDL_joystick.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F101191D2B7F000001 /* SDL_keyboard.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_keyboard.h; path = ../../include/SDL_keyboard.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F201191D2B7F000001 /* SDL_keysym.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_keysym.h; path = ../../include/SDL_keysym.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F301191D2B7F000001 /* SDL_main.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_main.h; path = ../../include/SDL_main.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F401191D2B7F000001 /* SDL_mouse.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_mouse.h; path = ../../include/SDL_mouse.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F501191D2B7F000001 /* SDL_mutex.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_mutex.h; path = ../../include/SDL_mutex.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F601191D2B7F000001 /* SDL_opengl.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_opengl.h; path = ../../include/SDL_opengl.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F701191D2B7F000001 /* SDL_quit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_quit.h; path = ../../include/SDL_quit.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F801191D2B7F000001 /* SDL_rwops.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_rwops.h; path = ../../include/SDL_rwops.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5F901191D2B7F000001 /* SDL_syswm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_syswm.h; path = ../../include/SDL_syswm.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FA01191D2B7F000001 /* SDL_thread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_thread.h; path = ../../include/SDL_thread.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FB01191D2B7F000001 /* SDL_timer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_timer.h; path = ../../include/SDL_timer.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FC01191D2B7F000001 /* SDL_types.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_types.h; path = ../../include/SDL_types.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FD01191D2B7F000001 /* SDL_version.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_version.h; path = ../../include/SDL_version.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FE01191D2B7F000001 /* SDL_video.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_video.h; path = ../../include/SDL_video.h; sourceTree = SOURCE_ROOT; }; + 0C5AF5FF01191D2B7F000001 /* SDL.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL.h; path = ../../include/SDL.h; sourceTree = SOURCE_ROOT; }; + 2EECDF2D0086C3A07F000001 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDLMain.h; path = ../../src/main/macosx/SDLMain.h; sourceTree = SOURCE_ROOT; }; + 2EECDF2E0086C3A07F000001 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = SDLMain.m; path = ../../src/main/macosx/SDLMain.m; sourceTree = SOURCE_ROOT; }; + 2EECDF2F0086C3A07F000001 /* SDLMain.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = SDLMain.nib; path = ../../src/main/macosx/SDLMain.nib; sourceTree = SOURCE_ROOT; }; + B24DA4D605A88AD0006B9F1C /* CGS.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CGS.h; sourceTree = ""; }; + B24DA4D705A88AD0006B9F1C /* SDL_QuartzEvents.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDL_QuartzEvents.m; sourceTree = ""; }; + B24DA4D805A88AD0006B9F1C /* SDL_QuartzGL.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDL_QuartzGL.m; sourceTree = ""; }; + B24DA4D905A88AD0006B9F1C /* SDL_QuartzKeys.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_QuartzKeys.h; sourceTree = ""; }; + B24DA4DA05A88AD0006B9F1C /* SDL_QuartzVideo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_QuartzVideo.h; sourceTree = ""; }; + B24DA4DB05A88AD0006B9F1C /* SDL_QuartzVideo.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDL_QuartzVideo.m; sourceTree = ""; }; + B24DA4DC05A88AD0006B9F1C /* SDL_QuartzWindow.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_QuartzWindow.h; sourceTree = ""; }; + B24DA4DD05A88AD0006B9F1C /* SDL_QuartzWindow.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDL_QuartzWindow.m; sourceTree = ""; }; + B24DA4DE05A88AD0006B9F1C /* SDL_QuartzWM.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDL_QuartzWM.m; sourceTree = ""; }; + B24DA50405A88D52006B9F1C /* SDL_cpuinfo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_cpuinfo.c; sourceTree = ""; }; + B29A290D04E5B28700A80002 /* SDL_loadso.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_loadso.h; path = ../../include/SDL_loadso.h; sourceTree = ""; }; + B2A23A450415799100A80002 /* AudioFilePlayer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = AudioFilePlayer.h; sourceTree = ""; }; + B2A23A7A04157C5700A80002 /* SDL_syscdrom_c.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_syscdrom_c.h; sourceTree = ""; }; + B2A23A7B04157C5700A80002 /* SDL_syscdrom.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_syscdrom.c; sourceTree = ""; }; + B2A23A8104157D5D00A80002 /* CDPlayer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = CDPlayer.h; sourceTree = ""; }; + B2CF8DC405C444E400E5DC7F /* SDL_cpuinfo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_cpuinfo.h; path = ../../include/SDL_cpuinfo.h; sourceTree = SOURCE_ROOT; }; + B2CF8DC705C4450500E5DC7F /* SDL_name.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDL_name.h; path = ../../include/SDL_name.h; sourceTree = SOURCE_ROOT; }; + BECDF5D50761B759005FE872 /* SDL_coreaudio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_coreaudio.c; sourceTree = ""; }; + BECDF5D60761B759005FE872 /* SDL_coreaudio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDL_coreaudio.h; sourceTree = ""; }; + BECDF66B0761BA81005FE872 /* Info-Framework.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Info-Framework.plist"; sourceTree = ""; }; + BECDF66C0761BA81005FE872 /* SDL.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SDL.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + BECDF6B30761BA81005FE872 /* libSDL.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDL.a; sourceTree = BUILT_PRODUCTS_DIR; }; + BECDF6BA0761BA81005FE872 /* libSDLmain.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSDLmain.a; sourceTree = BUILT_PRODUCTS_DIR; }; + BECDF6BE0761BA81005FE872 /* Standard DMG */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "Standard DMG"; sourceTree = BUILT_PRODUCTS_DIR; }; + BECDF6C30761BA81005FE872 /* Developer Extras Package */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = "Developer Extras Package"; sourceTree = BUILT_PRODUCTS_DIR; }; + F51789D101769A2401D3D55B /* SDL_sysjoystick.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = SDL_sysjoystick.c; sourceTree = ""; }; + F59C70FF00D5CB5801000001 /* ReadMe.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = ReadMe.txt; sourceTree = ""; }; + F59C710000D5CB5801000001 /* Welcome.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = Welcome.txt; sourceTree = ""; }; + F59C710300D5CB5801000001 /* ReadMe.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = ReadMe.txt; sourceTree = ""; }; + F59C710500D5CB5801000001 /* SDL-devel.info */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = "SDL-devel.info"; sourceTree = ""; }; + F59C710600D5CB5801000001 /* SDL.info */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; path = SDL.info; sourceTree = ""; }; + F59C710C00D5D15801000001 /* install.sh */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.script.sh; path = install.sh; sourceTree = ""; }; + F5A2EF3900C6A39A01000001 /* BUGS */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = BUGS; path = ../../BUGS; sourceTree = SOURCE_ROOT; }; + F5A2EF3A00C6A3C201000001 /* README.MacOSX */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = README.MacOSX; path = ../../README.MacOSX; sourceTree = SOURCE_ROOT; }; + F5F81AD400D706B101000001 /* Readme SDL Developer.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = "Readme SDL Developer.txt"; path = "pkg-support/Readme SDL Developer.txt"; sourceTree = SOURCE_ROOT; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + BECDF6680761BA81005FE872 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 007317A20858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */, + 007317A30858DECD00B2BC32 /* AudioUnit.framework in Frameworks */, + 007317A40858DECD00B2BC32 /* Cocoa.framework in Frameworks */, + 007317A50858DECD00B2BC32 /* CoreAudio.framework in Frameworks */, + 007317A60858DECD00B2BC32 /* IOKit.framework in Frameworks */, + 007317A70858DECD00B2BC32 /* OpenGL.framework in Frameworks */, + 00D0D08410675DD9004B05EF /* CoreFoundation.framework in Frameworks */, + 00D0D0D810675E46004B05EF /* Carbon.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B10761BA81005FE872 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 007317A90858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */, + 007317AA0858DECD00B2BC32 /* AudioUnit.framework in Frameworks */, + 007317AB0858DECD00B2BC32 /* Cocoa.framework in Frameworks */, + 007317AC0858DECD00B2BC32 /* CoreAudio.framework in Frameworks */, + 007317AD0858DECD00B2BC32 /* IOKit.framework in Frameworks */, + 007317AE0858DECD00B2BC32 /* OpenGL.framework in Frameworks */, + 007317AF0858DECD00B2BC32 /* QuickTime.framework in Frameworks */, + 007317C30858E15000B2BC32 /* Carbon.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B80761BA81005FE872 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 007317B00858DECD00B2BC32 /* AudioToolbox.framework in Frameworks */, + 007317B10858DECD00B2BC32 /* AudioUnit.framework in Frameworks */, + 007317B20858DECD00B2BC32 /* Cocoa.framework in Frameworks */, + 007317B30858DECD00B2BC32 /* CoreAudio.framework in Frameworks */, + 007317B40858DECD00B2BC32 /* IOKit.framework in Frameworks */, + 007317B50858DECD00B2BC32 /* OpenGL.framework in Frameworks */, + 007317B60858DECD00B2BC32 /* QuickTime.framework in Frameworks */, + 007317C40858E15000B2BC32 /* Carbon.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 0014B7D809C0D808003A99D5 /* dga */ = { + isa = PBXGroup; + children = ( + 0014B7E809C0D8D2003A99D5 /* SDL_dgaevents_c.h */, + 0014B7E909C0D8D2003A99D5 /* SDL_dgaevents.c */, + 0014B7EA09C0D8D2003A99D5 /* SDL_dgamouse_c.h */, + 0014B7EB09C0D8D2003A99D5 /* SDL_dgamouse.c */, + 0014B7EC09C0D8D2003A99D5 /* SDL_dgavideo.c */, + 0014B7ED09C0D8D2003A99D5 /* SDL_dgavideo.h */, + ); + path = dga; + sourceTree = ""; + }; + 0014B83109C0D91E003A99D5 /* x11 */ = { + isa = PBXGroup; + children = ( + 0014B83709C0D977003A99D5 /* SDL_x11dga_c.h */, + 0014B83809C0D977003A99D5 /* SDL_x11dga.c */, + 0014B83909C0D977003A99D5 /* SDL_x11dyn.c */, + 0014B83A09C0D977003A99D5 /* SDL_x11dyn.h */, + 0014B83B09C0D977003A99D5 /* SDL_x11events_c.h */, + 0014B83C09C0D977003A99D5 /* SDL_x11events.c */, + 0014B83D09C0D977003A99D5 /* SDL_x11gamma_c.h */, + 0014B83E09C0D977003A99D5 /* SDL_x11gamma.c */, + 0014B83F09C0D977003A99D5 /* SDL_x11gl_c.h */, + 0014B84009C0D977003A99D5 /* SDL_x11gl.c */, + 0014B84109C0D977003A99D5 /* SDL_x11image_c.h */, + 0014B84209C0D977003A99D5 /* SDL_x11image.c */, + 0014B84309C0D977003A99D5 /* SDL_x11modes_c.h */, + 0014B84409C0D977003A99D5 /* SDL_x11modes.c */, + 0014B84509C0D977003A99D5 /* SDL_x11mouse_c.h */, + 0014B84609C0D977003A99D5 /* SDL_x11mouse.c */, + 0014B84709C0D977003A99D5 /* SDL_x11sym.h */, + 0014B84809C0D977003A99D5 /* SDL_x11video.c */, + 0014B84909C0D977003A99D5 /* SDL_x11video.h */, + 0014B84A09C0D977003A99D5 /* SDL_x11wm_c.h */, + 0014B84B09C0D977003A99D5 /* SDL_x11wm.c */, + 0014B84C09C0D977003A99D5 /* SDL_x11yuv_c.h */, + 0014B84D09C0D977003A99D5 /* SDL_x11yuv.c */, + ); + path = x11; + sourceTree = ""; + }; + 0014B87D09C0D98A003A99D5 /* Xext */ = { + isa = PBXGroup; + children = ( + 0014B87E09C0D9BD003A99D5 /* Xxf86dga */, + 0014B87F09C0D9D1003A99D5 /* Xxf86vm */, + 0014B88309C0DA1A003A99D5 /* Xv */, + 0014B88209C0DA0F003A99D5 /* Xinerama */, + 0014B88109C0DA04003A99D5 /* XME */, + ); + path = Xext; + sourceTree = ""; + }; + 0014B87E09C0D9BD003A99D5 /* Xxf86dga */ = { + isa = PBXGroup; + children = ( + 0014B89009C0DA94003A99D5 /* XF86DGA.c */, + 0014B89109C0DA94003A99D5 /* XF86DGA2.c */, + ); + path = Xxf86dga; + sourceTree = ""; + }; + 0014B87F09C0D9D1003A99D5 /* Xxf86vm */ = { + isa = PBXGroup; + children = ( + 0014B89609C0DAA1003A99D5 /* XF86VMode.c */, + ); + path = Xxf86vm; + sourceTree = ""; + }; + 0014B88109C0DA04003A99D5 /* XME */ = { + isa = PBXGroup; + children = ( + 0014B8A209C0DAC4003A99D5 /* xme.c */, + ); + path = XME; + sourceTree = ""; + }; + 0014B88209C0DA0F003A99D5 /* Xinerama */ = { + isa = PBXGroup; + children = ( + 0014B89F09C0DAB9003A99D5 /* Xinerama.c */, + ); + path = Xinerama; + sourceTree = ""; + }; + 0014B88309C0DA1A003A99D5 /* Xv */ = { + isa = PBXGroup; + children = ( + 0014B89909C0DAAE003A99D5 /* Xv.c */, + 0014B89A09C0DAAE003A99D5 /* Xvlibint.h */, + ); + path = Xv; + sourceTree = ""; + }; + 00162D4C09BD20DA0037C8D0 /* pthread */ = { + isa = PBXGroup; + children = ( + 00162D4D09BD20DA0037C8D0 /* SDL_syscond.c */, + 00162D4E09BD20DA0037C8D0 /* SDL_sysmutex.c */, + 00162D4F09BD20DA0037C8D0 /* SDL_sysmutex_c.h */, + 00162D5009BD20DA0037C8D0 /* SDL_syssem.c */, + 00162D5109BD20DA0037C8D0 /* SDL_systhread.c */, + 00162D5209BD20DA0037C8D0 /* SDL_systhread_c.h */, + ); + path = pthread; + sourceTree = ""; + }; + 00162D5F09BD21010037C8D0 /* unix */ = { + isa = PBXGroup; + children = ( + 00162D6009BD21010037C8D0 /* SDL_systimer.c */, + ); + path = unix; + sourceTree = ""; + }; + 00162D6309BD214E0037C8D0 /* stdlib */ = { + isa = PBXGroup; + children = ( + 00162D6509BD214F0037C8D0 /* SDL_getenv.c */, + 002F328509CA049100EBEB88 /* SDL_iconv.c */, + 00162D6609BD214F0037C8D0 /* SDL_malloc.c */, + 00162D6709BD214F0037C8D0 /* SDL_qsort.c */, + 00162D6809BD214F0037C8D0 /* SDL_stdlib.c */, + 00162D6909BD214F0037C8D0 /* SDL_string.c */, + ); + name = stdlib; + path = ../../src/stdlib; + sourceTree = SOURCE_ROOT; + }; + 00162D7509BD217B0037C8D0 /* loadso */ = { + isa = PBXGroup; + children = ( + 046B91E80A11B53500FB151C /* dlopen */, + 00D55F250A11163D0030ED2A /* macosx */, + ); + name = loadso; + path = ../../src/loadso; + sourceTree = SOURCE_ROOT; + }; + 00162F3209BE27FB0037C8D0 /* dummy */ = { + isa = PBXGroup; + children = ( + 00162F3409BE27FB0037C8D0 /* SDL_nullevents.c */, + 00162F3509BE27FB0037C8D0 /* SDL_nullevents_c.h */, + 00162F3609BE27FB0037C8D0 /* SDL_nullmouse.c */, + 00162F3709BE27FB0037C8D0 /* SDL_nullmouse_c.h */, + 00162F3809BE27FB0037C8D0 /* SDL_nullvideo.c */, + 00162F3909BE27FB0037C8D0 /* SDL_nullvideo.h */, + ); + path = dummy; + sourceTree = ""; + }; + 002F32D209CA0BE700EBEB88 /* disk */ = { + isa = PBXGroup; + children = ( + 002F32D409CA0BE700EBEB88 /* SDL_diskaudio.c */, + 002F32D509CA0BE700EBEB88 /* SDL_diskaudio.h */, + ); + path = disk; + sourceTree = ""; + }; + 002F32E009CA0BF600EBEB88 /* dummy */ = { + isa = PBXGroup; + children = ( + 002F32E209CA0BF600EBEB88 /* SDL_dummyaudio.c */, + 002F32E309CA0BF600EBEB88 /* SDL_dummyaudio.h */, + ); + path = dummy; + sourceTree = ""; + }; + 00D55F250A11163D0030ED2A /* macosx */ = { + isa = PBXGroup; + children = ( + 046B92100A11B8AD00FB151C /* SDL_dlcompat.c */, + ); + path = macosx; + sourceTree = ""; + }; + 0153832C006D78D67F000001 /* audio */ = { + isa = PBXGroup; + children = ( + BECDF5D20761B759005FE872 /* macosx */, + 002F32D209CA0BE700EBEB88 /* disk */, + 002F32E009CA0BF600EBEB88 /* dummy */, + 01538330006D78D67F000001 /* SDL_audio.c */, + 01538331006D78D67F000001 /* SDL_audiocvt.c */, + 01538332006D78D67F000001 /* SDL_audiodev.c */, + 01538334006D78D67F000001 /* SDL_mixer.c */, + 00B7E61F097F2D9E00826121 /* SDL_mixer_MMX.c */, + 00B7E620097F2D9E00826121 /* SDL_mixer_MMX.h */, + 01538335006D78D67F000001 /* SDL_wave.c */, + ); + name = audio; + path = ../../src/audio; + sourceTree = SOURCE_ROOT; + }; + 01538367006D79147F000001 /* events */ = { + isa = PBXGroup; + children = ( + 01538368006D79147F000001 /* SDL_active.c */, + 01538369006D79147F000001 /* SDL_events.c */, + 0153836A006D79147F000001 /* SDL_expose.c */, + 0153836B006D79147F000001 /* SDL_keyboard.c */, + 0153836C006D79147F000001 /* SDL_mouse.c */, + 0153836D006D79147F000001 /* SDL_quit.c */, + 0153836E006D79147F000001 /* SDL_resize.c */, + ); + name = events; + path = ../../src/events; + sourceTree = SOURCE_ROOT; + }; + 01538376006D79307F000001 /* file */ = { + isa = PBXGroup; + children = ( + 01538377006D79307F000001 /* SDL_rwops.c */, + ); + name = file; + path = ../../src/file; + sourceTree = SOURCE_ROOT; + }; + 01538379006D79737F000001 /* thread */ = { + isa = PBXGroup; + children = ( + 00162D4C09BD20DA0037C8D0 /* pthread */, + 01538445006D7EC67F000001 /* SDL_thread.c */, + ); + name = thread; + path = ../../src/thread; + sourceTree = SOURCE_ROOT; + }; + 01538391006D79BC7F000001 /* timer */ = { + isa = PBXGroup; + children = ( + 00162D5F09BD21010037C8D0 /* unix */, + 015383A0006D79BC7F000001 /* SDL_timer.c */, + ); + name = timer; + path = ../../src/timer; + sourceTree = SOURCE_ROOT; + }; + 015383BE006D7A567F000001 /* video */ = { + isa = PBXGroup; + children = ( + 0FCDF5B50083FCE77F000001 /* quartz */, + 015383C1006D7A567F000001 /* maccommon */, + 015383CE006D7A567F000001 /* macdsp */, + 015383D3006D7A567F000001 /* macrom */, + 00162F3209BE27FB0037C8D0 /* dummy */, + 0014B83109C0D91E003A99D5 /* x11 */, + 0014B7D809C0D808003A99D5 /* dga */, + 0014B87D09C0D98A003A99D5 /* Xext */, + 015383D8006D7A567F000001 /* SDL_blit.c */, + 015383DA006D7A567F000001 /* SDL_blit_0.c */, + 015383DB006D7A567F000001 /* SDL_blit_1.c */, + 015383DC006D7A567F000001 /* SDL_blit_A.c */, + 015383DE006D7A567F000001 /* SDL_blit_N.c */, + 015383DF006D7A567F000001 /* SDL_bmp.c */, + 015383E0006D7A567F000001 /* SDL_cursor.c */, + 015383E2006D7A567F000001 /* SDL_gamma.c */, + 015383E6006D7A567F000001 /* SDL_pixels.c */, + 015383E8006D7A567F000001 /* SDL_RLEaccel.c */, + 015383EA006D7A567F000001 /* SDL_stretch.c */, + 015383EC006D7A567F000001 /* SDL_surface.c */, + 015383EE006D7A567F000001 /* SDL_video.c */, + 015383EF006D7A567F000001 /* SDL_yuv.c */, + 00B7E625097F2DD100826121 /* SDL_yuv_mmx.c */, + 015383F1006D7A567F000001 /* SDL_yuv_sw.c */, + ); + name = video; + path = ../../src/video; + sourceTree = SOURCE_ROOT; + }; + 015383C1006D7A567F000001 /* maccommon */ = { + isa = PBXGroup; + children = ( + 015383C5006D7A567F000001 /* SDL_macevents.c */, + 015383C7006D7A567F000001 /* SDL_macgl.c */, + 015383CA006D7A567F000001 /* SDL_macmouse.c */, + 015383CC006D7A567F000001 /* SDL_macwm.c */, + ); + path = maccommon; + sourceTree = ""; + }; + 015383CE006D7A567F000001 /* macdsp */ = { + isa = PBXGroup; + children = ( + 015383D1006D7A567F000001 /* SDL_dspvideo.c */, + 015383D2006D7A567F000001 /* SDL_dspvideo.h */, + ); + path = macdsp; + sourceTree = ""; + }; + 015383D3006D7A567F000001 /* macrom */ = { + isa = PBXGroup; + children = ( + 015383D6006D7A567F000001 /* SDL_romvideo.c */, + ); + path = macrom; + sourceTree = ""; + }; + 0153844A006D81B07F000001 /* Public Headers */ = { + isa = PBXGroup; + children = ( + 00162D3209BD1FA90037C8D0 /* SDL_config_dreamcast.h */, + 00162D3309BD1FA90037C8D0 /* SDL_config_macos.h */, + 00162D3409BD1FA90037C8D0 /* SDL_config_macosx.h */, + 00162D3509BD1FA90037C8D0 /* SDL_config_os2.h */, + 00162D3609BD1FA90037C8D0 /* SDL_config_win32.h */, + 00162D3709BD1FA90037C8D0 /* SDL_config.h */, + 00162D3809BD1FA90037C8D0 /* SDL_platform.h */, + 00162D3909BD1FA90037C8D0 /* SDL_stdinc.h */, + 0C5AF5E501191D2B7F000001 /* begin_code.h */, + 0C5AF5E601191D2B7F000001 /* close_code.h */, + 0C5AF5E701191D2B7F000001 /* SDL_active.h */, + 0C5AF5E801191D2B7F000001 /* SDL_audio.h */, + 0C5AF5E901191D2B7F000001 /* SDL_byteorder.h */, + 0C5AF5EA01191D2B7F000001 /* SDL_cdrom.h */, + 0C5AF5EB01191D2B7F000001 /* SDL_copying.h */, + B2CF8DC405C444E400E5DC7F /* SDL_cpuinfo.h */, + 0C5AF5EC01191D2B7F000001 /* SDL_endian.h */, + 0C5AF5ED01191D2B7F000001 /* SDL_error.h */, + 0C5AF5EE01191D2B7F000001 /* SDL_events.h */, + 0C5AF5EF01191D2B7F000001 /* SDL_getenv.h */, + 0C5AF5F001191D2B7F000001 /* SDL_joystick.h */, + 0C5AF5F101191D2B7F000001 /* SDL_keyboard.h */, + 0C5AF5F201191D2B7F000001 /* SDL_keysym.h */, + B29A290D04E5B28700A80002 /* SDL_loadso.h */, + 0C5AF5F301191D2B7F000001 /* SDL_main.h */, + 0C5AF5F401191D2B7F000001 /* SDL_mouse.h */, + 0C5AF5F501191D2B7F000001 /* SDL_mutex.h */, + B2CF8DC705C4450500E5DC7F /* SDL_name.h */, + 0C5AF5F601191D2B7F000001 /* SDL_opengl.h */, + 0C5AF5F701191D2B7F000001 /* SDL_quit.h */, + 0C5AF5F801191D2B7F000001 /* SDL_rwops.h */, + 0C5AF5F901191D2B7F000001 /* SDL_syswm.h */, + 0C5AF5FA01191D2B7F000001 /* SDL_thread.h */, + 0C5AF5FB01191D2B7F000001 /* SDL_timer.h */, + 0C5AF5FC01191D2B7F000001 /* SDL_types.h */, + 0C5AF5FD01191D2B7F000001 /* SDL_version.h */, + 0C5AF5FE01191D2B7F000001 /* SDL_video.h */, + 0C5AF5FF01191D2B7F000001 /* SDL.h */, + ); + name = "Public Headers"; + sourceTree = ""; + }; + 034768DDFF38A45A11DB9C8B /* Products */ = { + isa = PBXGroup; + children = ( + 089C1665FE841158C02AAC07 /* Resources */, + BECDF66C0761BA81005FE872 /* SDL.framework */, + BECDF6B30761BA81005FE872 /* libSDL.a */, + BECDF6BA0761BA81005FE872 /* libSDLmain.a */, + BECDF6BE0761BA81005FE872 /* Standard DMG */, + BECDF6C30761BA81005FE872 /* Developer Extras Package */, + ); + name = Products; + sourceTree = ""; + }; + 046B91E80A11B53500FB151C /* dlopen */ = { + isa = PBXGroup; + children = ( + 046B91E90A11B53500FB151C /* SDL_sysloadso.c */, + ); + path = dlopen; + sourceTree = ""; + }; + 083E4892006D86FF7F000001 /* cdrom */ = { + isa = PBXGroup; + children = ( + B2A23A420415799100A80002 /* macosx */, + 083E4893006D86FF7F000001 /* dummy */, + 083E4895006D86FF7F000001 /* SDL_cdrom.c */, + ); + name = cdrom; + path = ../../src/cdrom; + sourceTree = SOURCE_ROOT; + }; + 083E4893006D86FF7F000001 /* dummy */ = { + isa = PBXGroup; + children = ( + 083E4894006D86FF7F000001 /* SDL_syscdrom.c */, + ); + path = dummy; + sourceTree = ""; + }; + 083E489A006D88D97F000001 /* joystick */ = { + isa = PBXGroup; + children = ( + F51789D001769A2401D3D55B /* darwin */, + 083E489D006D88D97F000001 /* SDL_joystick.c */, + ); + name = joystick; + path = ../../src/joystick; + sourceTree = SOURCE_ROOT; + }; + 0867D691FE84028FC02AAC07 /* SDLFramework */ = { + isa = PBXGroup; + children = ( + F5A2EF3900C6A39A01000001 /* BUGS */, + F5A2EF3A00C6A3C201000001 /* README.MacOSX */, + F59C70FC00D5CB5801000001 /* pkg-support */, + F5B2A58400C5D39001000001 /* Main */, + 0153844A006D81B07F000001 /* Public Headers */, + 08FB77ACFE841707C02AAC07 /* Library Source */, + 034768DDFF38A45A11DB9C8B /* Products */, + BECDF66B0761BA81005FE872 /* Info-Framework.plist */, + BEC562FE0761C0E800A33029 /* Linked Frameworks */, + ); + comments = "To build Universal Binaries, we have experimented with a variety of different options.\nThe complication is that we must retain compatibility with at least 10.2. \nThe Universal Binary defaults only work for > 10.3.9\n\nSo far, we have found:\ngcc 4.0.0 with Xcode 2.1 always links against libgcc_s. gcc 4.0.1 from Xcode 2.2 fixes this problem.\n\nBut gcc 4.0 will not work with < 10.3.9 because we continue to get an undefined symbol to _fprintf$LDBL128.\nSo we must use gcc 3.3 on PPC to accomplish 10.2 support. (But 4.0 is required for i386.)\n\nSetting the deployment target to 10.4 will disable prebinding, so for PPC, we set it less than 10.4 to preserve prebinding for legacy support.\n\nSetting the PPC SDKROOT to /Developers/SDKs/MacOSX10.2.8.sdk will link to 63.0.0 libSystem.B.dylib. Leaving it at current or 10.4u links to 88.1.2. However, as long as we are using gcc 3.3, it doesn't seem to matter as testing has demonstrated both will run. We have decided not to invoke the 10.2.8 SDK because it is not a default installed component with Xcode which will probably cause most people problems. However, rather than deleting the SDKROOT_ppc entry entirely, we have mapped it to 10.4u in case we decide we need to change this setting.\n\nTo use Altivec or SSE, we needed architecture specific flags:\nOTHER_CFLAGS_ppc\nOTHER_CFLAGS_i386\nOTHER_CFLAGS=$(OTHER_CFLAGS_($CURRENT_ARCH))\n\nThe general OTHER_CFLAGS needed to be manually mapped to architecture specific options because Xcode didn't do this automatically for us.\n\n\n"; + name = SDLFramework; + sourceTree = ""; + }; + 089C1665FE841158C02AAC07 /* Resources */ = { + isa = PBXGroup; + children = ( + ); + name = Resources; + sourceTree = ""; + }; + 08FB77ACFE841707C02AAC07 /* Library Source */ = { + isa = PBXGroup; + children = ( + 0153832C006D78D67F000001 /* audio */, + 083E4892006D86FF7F000001 /* cdrom */, + B24DA50105A88D52006B9F1C /* cpuinfo */, + 01538367006D79147F000001 /* events */, + 01538376006D79307F000001 /* file */, + 083E489A006D88D97F000001 /* joystick */, + 00162D7509BD217B0037C8D0 /* loadso */, + 00162D6309BD214E0037C8D0 /* stdlib */, + 01538379006D79737F000001 /* thread */, + 01538391006D79BC7F000001 /* timer */, + 015383BE006D7A567F000001 /* video */, + 01538438006D7D947F000001 /* SDL_error.c */, + 01538439006D7D947F000001 /* SDL_fatal.c */, + 0153843C006D7D947F000001 /* SDL.c */, + ); + name = "Library Source"; + sourceTree = ""; + }; + 0FCDF5B50083FCE77F000001 /* quartz */ = { + isa = PBXGroup; + children = ( + 00D0D02210675823004B05EF /* SDL_QuartzWM.h */, + B24DA4D605A88AD0006B9F1C /* CGS.h */, + B24DA4D705A88AD0006B9F1C /* SDL_QuartzEvents.m */, + B24DA4D805A88AD0006B9F1C /* SDL_QuartzGL.m */, + B24DA4D905A88AD0006B9F1C /* SDL_QuartzKeys.h */, + B24DA4DA05A88AD0006B9F1C /* SDL_QuartzVideo.h */, + B24DA4DB05A88AD0006B9F1C /* SDL_QuartzVideo.m */, + B24DA4DC05A88AD0006B9F1C /* SDL_QuartzWindow.h */, + B24DA4DD05A88AD0006B9F1C /* SDL_QuartzWindow.m */, + B24DA4DE05A88AD0006B9F1C /* SDL_QuartzWM.m */, + ); + name = quartz; + path = ../../src/video/quartz; + sourceTree = SOURCE_ROOT; + }; + B24DA50105A88D52006B9F1C /* cpuinfo */ = { + isa = PBXGroup; + children = ( + B24DA50405A88D52006B9F1C /* SDL_cpuinfo.c */, + ); + name = cpuinfo; + path = ../../src/cpuinfo; + sourceTree = ""; + }; + B2A23A420415799100A80002 /* macosx */ = { + isa = PBXGroup; + children = ( + 004C2C860975E13300E9D430 /* AudioFilePlayer.c */, + B2A23A450415799100A80002 /* AudioFilePlayer.h */, + 004C2C870975E13300E9D430 /* AudioFileReaderThread.c */, + 004C2C880975E13300E9D430 /* CDPlayer.c */, + B2A23A8104157D5D00A80002 /* CDPlayer.h */, + 004C2C890975E13300E9D430 /* SDLOSXCAGuard.c */, + 004C2C8A0975E13300E9D430 /* SDLOSXCAGuard.h */, + B2A23A7B04157C5700A80002 /* SDL_syscdrom.c */, + B2A23A7A04157C5700A80002 /* SDL_syscdrom_c.h */, + ); + path = macosx; + sourceTree = ""; + }; + BEC562FE0761C0E800A33029 /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 00D0D08310675DD9004B05EF /* CoreFoundation.framework */, + 007317C10858E15000B2BC32 /* Carbon.framework */, + 0073179B0858DECD00B2BC32 /* AudioToolbox.framework */, + 0073179C0858DECD00B2BC32 /* AudioUnit.framework */, + 0073179D0858DECD00B2BC32 /* Cocoa.framework */, + 0073179E0858DECD00B2BC32 /* CoreAudio.framework */, + 0073179F0858DECD00B2BC32 /* IOKit.framework */, + 007317A00858DECD00B2BC32 /* OpenGL.framework */, + 007317A10858DECD00B2BC32 /* QuickTime.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + BECDF5D20761B759005FE872 /* macosx */ = { + isa = PBXGroup; + children = ( + BECDF5D50761B759005FE872 /* SDL_coreaudio.c */, + BECDF5D60761B759005FE872 /* SDL_coreaudio.h */, + ); + name = macosx; + path = ../../src/audio/macosx; + sourceTree = SOURCE_ROOT; + }; + F51789D001769A2401D3D55B /* darwin */ = { + isa = PBXGroup; + children = ( + F51789D101769A2401D3D55B /* SDL_sysjoystick.c */, + ); + name = darwin; + path = ../../src/joystick/darwin; + sourceTree = SOURCE_ROOT; + }; + F59C70FC00D5CB5801000001 /* pkg-support */ = { + isa = PBXGroup; + children = ( + F59C70FE00D5CB5801000001 /* devel-resources */, + F59C710100D5CB5801000001 /* resources */, + F5F81AD400D706B101000001 /* Readme SDL Developer.txt */, + F59C710500D5CB5801000001 /* SDL-devel.info */, + F59C710600D5CB5801000001 /* SDL.info */, + ); + path = "pkg-support"; + sourceTree = SOURCE_ROOT; + }; + F59C70FE00D5CB5801000001 /* devel-resources */ = { + isa = PBXGroup; + children = ( + F59C710C00D5D15801000001 /* install.sh */, + F59C70FF00D5CB5801000001 /* ReadMe.txt */, + F59C710000D5CB5801000001 /* Welcome.txt */, + ); + path = "devel-resources"; + sourceTree = ""; + }; + F59C710100D5CB5801000001 /* resources */ = { + isa = PBXGroup; + children = ( + 00794D3F09D0C461003FC8A1 /* License.rtf */, + 00F5D79E0990CA0D0051C449 /* UniversalBinaryNotes.rtf */, + 00AE6E1E08B958CC00255E2F /* ReadMeDevLite.txt */, + F59C710300D5CB5801000001 /* ReadMe.txt */, + ); + path = resources; + sourceTree = ""; + }; + F5B2A58400C5D39001000001 /* Main */ = { + isa = PBXGroup; + children = ( + 2EECDF2D0086C3A07F000001 /* SDLMain.h */, + 2EECDF2E0086C3A07F000001 /* SDLMain.m */, + 2EECDF2F0086C3A07F000001 /* SDLMain.nib */, + ); + name = Main; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + BECDF5FF0761BA81005FE872 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 00162DA409BD222F0037C8D0 /* SDL_config_dreamcast.h in Headers */, + 00162DA509BD222F0037C8D0 /* SDL_config_macos.h in Headers */, + 00162DA609BD222F0037C8D0 /* SDL_config_macosx.h in Headers */, + 00162DA709BD222F0037C8D0 /* SDL_config_os2.h in Headers */, + 00162DA809BD222F0037C8D0 /* SDL_config_win32.h in Headers */, + 00162DA909BD222F0037C8D0 /* SDL_config.h in Headers */, + 00162DAA09BD222F0037C8D0 /* SDL_platform.h in Headers */, + 00162DAB09BD222F0037C8D0 /* SDL_stdinc.h in Headers */, + 00162DAC09BD222F0037C8D0 /* begin_code.h in Headers */, + 00162DAD09BD222F0037C8D0 /* close_code.h in Headers */, + 00162DAE09BD222F0037C8D0 /* SDL_active.h in Headers */, + 00162DAF09BD222F0037C8D0 /* SDL_audio.h in Headers */, + 00162DB009BD222F0037C8D0 /* SDL_byteorder.h in Headers */, + 00162DB109BD222F0037C8D0 /* SDL_cdrom.h in Headers */, + 00162DB209BD222F0037C8D0 /* SDL_copying.h in Headers */, + 00162DB309BD222F0037C8D0 /* SDL_cpuinfo.h in Headers */, + 00162DB409BD222F0037C8D0 /* SDL_endian.h in Headers */, + 00162DB509BD222F0037C8D0 /* SDL_error.h in Headers */, + 00162DB609BD222F0037C8D0 /* SDL_events.h in Headers */, + 00162DB709BD222F0037C8D0 /* SDL_getenv.h in Headers */, + 00162DB809BD222F0037C8D0 /* SDL_joystick.h in Headers */, + 00162DB909BD222F0037C8D0 /* SDL_keyboard.h in Headers */, + 00162DBA09BD222F0037C8D0 /* SDL_keysym.h in Headers */, + 00162DBB09BD222F0037C8D0 /* SDL_loadso.h in Headers */, + 00162DBC09BD222F0037C8D0 /* SDL_main.h in Headers */, + 00162DBD09BD222F0037C8D0 /* SDL_mouse.h in Headers */, + 00162DBE09BD222F0037C8D0 /* SDL_mutex.h in Headers */, + 00162DBF09BD222F0037C8D0 /* SDL_name.h in Headers */, + 00162DC009BD222F0037C8D0 /* SDL_opengl.h in Headers */, + 00162DC109BD222F0037C8D0 /* SDL_quit.h in Headers */, + 00162DC209BD222F0037C8D0 /* SDL_rwops.h in Headers */, + 00162DC309BD222F0037C8D0 /* SDL_syswm.h in Headers */, + 00162DC409BD222F0037C8D0 /* SDL_thread.h in Headers */, + 00162DC509BD222F0037C8D0 /* SDL_timer.h in Headers */, + 00162DC609BD222F0037C8D0 /* SDL_types.h in Headers */, + 00162DC709BD222F0037C8D0 /* SDL_version.h in Headers */, + 00162DC809BD222F0037C8D0 /* SDL_video.h in Headers */, + 00162DC909BD222F0037C8D0 /* SDL.h in Headers */, + 00D0D02310675823004B05EF /* SDL_QuartzWM.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF66E0761BA81005FE872 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + BECDF6720761BA81005FE872 /* CGS.h in Headers */, + BECDF6730761BA81005FE872 /* SDL_QuartzKeys.h in Headers */, + BECDF6740761BA81005FE872 /* SDL_QuartzVideo.h in Headers */, + BECDF6750761BA81005FE872 /* SDL_QuartzWindow.h in Headers */, + BECDF6760761BA81005FE872 /* SDL_cpuinfo.h in Headers */, + BECDF6770761BA81005FE872 /* SDL_name.h in Headers */, + BECDF6780761BA81005FE872 /* SDL_coreaudio.h in Headers */, + 004C2C940975E13300E9D430 /* SDLOSXCAGuard.h in Headers */, + 00162D4409BD1FA90037C8D0 /* SDL_config_dreamcast.h in Headers */, + 00162D4509BD1FA90037C8D0 /* SDL_config_macos.h in Headers */, + 00162D4609BD1FA90037C8D0 /* SDL_config_macosx.h in Headers */, + 00162D4709BD1FA90037C8D0 /* SDL_config_os2.h in Headers */, + 00162D4809BD1FA90037C8D0 /* SDL_config_win32.h in Headers */, + 00162D4909BD1FA90037C8D0 /* SDL_config.h in Headers */, + 00162D4A09BD1FA90037C8D0 /* SDL_platform.h in Headers */, + 00162D4B09BD1FA90037C8D0 /* SDL_stdinc.h in Headers */, + 00162D5B09BD20DA0037C8D0 /* SDL_sysmutex_c.h in Headers */, + 00162D5E09BD20DA0037C8D0 /* SDL_systhread_c.h in Headers */, + 00162E6B09BD27370037C8D0 /* SDL_mixer_MMX.h in Headers */, + 00162F4209BE27FB0037C8D0 /* SDL_nullevents_c.h in Headers */, + 00162F4409BE27FB0037C8D0 /* SDL_nullmouse_c.h in Headers */, + 00162F4609BE27FB0037C8D0 /* SDL_nullvideo.h in Headers */, + 0014B7F409C0D8D2003A99D5 /* SDL_dgaevents_c.h in Headers */, + 0014B7F609C0D8D2003A99D5 /* SDL_dgamouse_c.h in Headers */, + 0014B7F909C0D8D2003A99D5 /* SDL_dgavideo.h in Headers */, + 0014B86509C0D977003A99D5 /* SDL_x11dga_c.h in Headers */, + 0014B86809C0D977003A99D5 /* SDL_x11dyn.h in Headers */, + 0014B86909C0D977003A99D5 /* SDL_x11events_c.h in Headers */, + 0014B86B09C0D977003A99D5 /* SDL_x11gamma_c.h in Headers */, + 0014B86D09C0D977003A99D5 /* SDL_x11gl_c.h in Headers */, + 0014B86F09C0D977003A99D5 /* SDL_x11image_c.h in Headers */, + 0014B87109C0D977003A99D5 /* SDL_x11modes_c.h in Headers */, + 0014B87309C0D977003A99D5 /* SDL_x11mouse_c.h in Headers */, + 0014B87509C0D977003A99D5 /* SDL_x11sym.h in Headers */, + 0014B87709C0D977003A99D5 /* SDL_x11video.h in Headers */, + 0014B87809C0D977003A99D5 /* SDL_x11wm_c.h in Headers */, + 0014B87A09C0D977003A99D5 /* SDL_x11yuv_c.h in Headers */, + 0014B89E09C0DAAE003A99D5 /* Xvlibint.h in Headers */, + 002F32DA09CA0BE700EBEB88 /* SDL_diskaudio.h in Headers */, + 002F32E809CA0BF600EBEB88 /* SDL_dummyaudio.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B50761BA81005FE872 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + BECDF5FE0761BA81005FE872 /* Framework */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0073177A0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Framework" */; + buildPhases = ( + 00D55F050A11143E0030ED2A /* Run Script to Create SDL_config.h */, + BECDF5FF0761BA81005FE872 /* Headers */, + BECDF62A0761BA81005FE872 /* Resources */, + BECDF62C0761BA81005FE872 /* Sources */, + BECDF6680761BA81005FE872 /* Frameworks */, + BECDF6690761BA81005FE872 /* Rez */, + ); + buildRules = ( + ); + comments = "We recommend installing to /Library/Frameworks\nAn alternative is $(HOME)/Library/Frameworks for per-user if permissions are an issue.\n\nAdd the framework to the Groups & Files panel (under Linked Frameworks is a good place) and enable the check box for the targets that need to link to it. You can also manually add \"-framework SDL\" to your linker flags if you don't like the check box system.\n\nAdd /Library/Frameworks/SDL.framework/Headers to your header search path\nAdd /Library/Frameworks to your library search path\n(Adjust the two above if installed in $(HOME)/Library/Frameworks. You can also list both paths if you want robustness.)\n\nWe used to use an exports file. It was becoming a maintenance issue we kept neglecting, so we have removed it. If you need it back, set the \"Exported Symbols File\" option to:\n../../src/main/macosx/exports/SDL.x\n(You may need to regenerate the exports list. There is a Makefile in that directory that you can run from the command line to rebuild it.)\nLong term, we want to utilize gcc 4.0's new visibility feature (analogous to declspec on Windows). Other platforms would benefit from this change too. The downside is that we still use gcc 3.3 for the PowerPC build here so only our x86 builds will cull the symbols if we go down this route (and don't use the exports file).\n\n"; + dependencies = ( + ); + name = Framework; + productInstallPath = "@executable_path/../Frameworks"; + productName = SDL; + productReference = BECDF66C0761BA81005FE872 /* SDL.framework */; + productType = "com.apple.product-type.framework"; + }; + BECDF66D0761BA81005FE872 /* Static Library */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0073177E0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Static Library" */; + buildPhases = ( + 00D55F080A11147F0030ED2A /* Run Script to Create SDL_config.h */, + BECDF66E0761BA81005FE872 /* Headers */, + BECDF6790761BA81005FE872 /* Sources */, + BECDF6B10761BA81005FE872 /* Frameworks */, + BECDF6B20761BA81005FE872 /* Rez */, + ); + buildRules = ( + ); + comments = "This produces libsdl.a, which is the static build of SDL. You will have to link to the Cocoa and OpenGL frameworks in your application."; + dependencies = ( + ); + name = "Static Library"; + productInstallPath = /usr/local/lib; + productName = "Static Library"; + productReference = BECDF6B30761BA81005FE872 /* libSDL.a */; + productType = "com.apple.product-type.library.static"; + }; + BECDF6B40761BA81005FE872 /* Main Library */ = { + isa = PBXNativeTarget; + buildConfigurationList = 007317820858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Main Library" */; + buildPhases = ( + BECDF6B50761BA81005FE872 /* Headers */, + BECDF6B60761BA81005FE872 /* Sources */, + BECDF6B80761BA81005FE872 /* Frameworks */, + BECDF6B90761BA81005FE872 /* Rez */, + ); + buildRules = ( + ); + comments = "This produces libSDLmain.a, which contains only SDL_main.m, the hook to get the app running correctly before your SDL code executes."; + dependencies = ( + ); + name = "Main Library"; + productInstallPath = /usr/local/lib; + productName = libSDLmain.a; + productReference = BECDF6BA0761BA81005FE872 /* libSDLmain.a */; + productType = "com.apple.product-type.library.static"; + }; + BECDF6BB0761BA81005FE872 /* Standard DMG */ = { + isa = PBXNativeTarget; + buildConfigurationList = 007317860858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Standard DMG" */; + buildPhases = ( + BECDF6BD0761BA81005FE872 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + BECDF6C60761BA81005FE872 /* PBXTargetDependency */, + ); + name = "Standard DMG"; + productInstallPath = /usr/local/bin; + productName = "Standard Package"; + productReference = BECDF6BE0761BA81005FE872 /* Standard DMG */; + productType = "com.apple.product-type.tool"; + }; + BECDF6C00761BA81005FE872 /* Developer Extras Package */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0073178A0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Developer Extras Package" */; + buildPhases = ( + BECDF6C20761BA81005FE872 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + 008310001072D94A00A531F1 /* PBXTargetDependency */, + ); + name = "Developer Extras Package"; + productInstallPath = /usr/local/bin; + productName = "Devel Package"; + productReference = BECDF6C30761BA81005FE872 /* Developer Extras Package */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0867D690FE84028FC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 0073178E0858DB0500B2BC32 /* Build configuration list for PBXProject "SDL" */; + compatibilityVersion = "Xcode 2.4"; + hasScannedForEncodings = 1; + mainGroup = 0867D691FE84028FC02AAC07 /* SDLFramework */; + productRefGroup = 034768DDFF38A45A11DB9C8B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + BECDF5FE0761BA81005FE872 /* Framework */, + BECDF66D0761BA81005FE872 /* Static Library */, + BECDF6B40761BA81005FE872 /* Main Library */, + BECDF6BB0761BA81005FE872 /* Standard DMG */, + BECDF6C00761BA81005FE872 /* Developer Extras Package */, + 0032354F1070931700C76517 /* Generate Doxygen DocSet */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + BECDF62A0761BA81005FE872 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BECDF62B0761BA81005FE872 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXRezBuildPhase section */ + BECDF6690761BA81005FE872 /* Rez */ = { + isa = PBXRezBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B20761BA81005FE872 /* Rez */ = { + isa = PBXRezBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B90761BA81005FE872 /* Rez */ = { + isa = PBXRezBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXRezBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 0032354E1070931700C76517 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 12; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# DOXYGEN_EXE is defined in the Enclosing Target's Build Tab\n# DOXYGEN_EXE=/Applications/Doxygen.app/Contents/Resources/doxygen\n#echo DOXYGEN_EXE dir is $DOXYGEN_EXE\n\nDOC_DIR=$SRCROOT/../XcodeDocSet\n#echo Doc dir is $DOC_DIR\ncd $DOC_DIR\n$DOXYGEN_EXE $DOC_DIR/Doxyfile\ncd html\nmake\nif [ -d $SRCROOT/../XcodeDocSet/org.libsdl.sdl.docset ] ; then\n\t# remove previous docset\n\trm -rf $SRCROOT/../XcodeDocSet/org.libsdl.sdl.docset\nfi\nmv org.libsdl.sdl.docset ..\ncd ..\nrm -rf html\nexit 0"; + }; + 00D55F050A11143E0030ED2A /* Run Script to Create SDL_config.h */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script to Create SDL_config.h"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# Make sure that include/SDL_config.h is a symlink to SDL_config.h.default.\n# If it exists and is not a symlink, it was probably generated by configure and\n# we move it aside.\nif [ ! -L ../../include/SDL_config.h ]; then\n if [ -e ../../include/SDL_config.h ]; then\n mv ../../include/SDL_config.h ../../include/SDL_config.h.generated\n fi\n ln -s SDL_config.h.default ../../include/SDL_config.h\nfi\n"; + }; + 00D55F080A11147F0030ED2A /* Run Script to Create SDL_config.h */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script to Create SDL_config.h"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# Make sure that include/SDL_config.h is a symlink to SDL_config.h.default.\n# If it exists and is not a symlink, it was probably generated by configure and\n# we move it aside.\nif [ ! -L ../../include/SDL_config.h ]; then\n if [ -e ../../include/SDL_config.h ]; then\n mv ../../include/SDL_config.h ../../include/SDL_config.h.generated\n fi\n ln -s SDL_config.h.default ../../include/SDL_config.h\nfi\n"; + }; + BECDF6BD0761BA81005FE872 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 12; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# clean up the framework, remove headers, extra files\nmkdir -p build/dmg-tmp\nmkdir -p build/dmg-tmp/devel-lite\n/Developer/Tools/CpMac -r $TARGET_BUILD_DIR/SDL.framework build/dmg-tmp/\n\n# strip moved to Xcode native mechanism\n# strip -x build/dmg-tmp/SDL.framework/SDL\n\ncp pkg-support/resources/License.rtf build/dmg-tmp\ncp pkg-support/resources/ReadMe.txt build/dmg-tmp\ncp pkg-support/resources/ReadMeDevLite.txt build/dmg-tmp/devel-lite\ncp pkg-support/resources/UniversalBinaryNotes.rtf build/dmg-tmp\n\ncp ../../src/main/macosx/SDLMain.h build/dmg-tmp/devel-lite\ncp ../../src/main/macosx/SDLMain.m build/dmg-tmp/devel-lite\n\n# remove the .DS_Store files if any (we may want to provide one in the future for fancy .dmgs)\nfind build/dmg-tmp -name .DS_Store -exec rm -f \"{}\" \\;\nfind -d build/dmg-tmp -type d -name .svn -exec rm -rf \"{}\" \\;\n\n# for fancy .dmg\nmkdir -p build/dmg-tmp/.logo\ncp pkg-support/resources/SDL_DS_Store build/dmg-tmp/.DS_Store\ncp pkg-support/sdl_logo.pdf build/dmg-tmp/.logo\n\n# create the dmg\nhdiutil create -ov -fs HFS+ -volname SDL -srcfolder build/dmg-tmp build/SDL.dmg\n\n# clean up\nrm -rf build/dmg-tmp\n\n# compress it???\n#(cd build; gnutar -zcvf SDL.dmg.tar.gz SDL.dmg)"; + }; + BECDF6C20761BA81005FE872 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + comments = "The old .pkg generator script:\n\n# make a copy of the framework to work with\nmkdir -p build/pkg-tmp\n\n## We're changing this to follow OS X conventions, where the headers and\n## framework are bundled together. Thus this development package won't \n## actually contain any direct framework elements.\n#/Developer/Tools/CpMac -r build/SDL.framework build/pkg-tmp/\n\n# copy in some files they might want around...\ncp ../../docs.html build/pkg-tmp\ncp -r ../../docs build/pkg-tmp\n#cp -r ../../src/main/macosx build/pkg-tmp/\n#rm -rf build/pkg-tmp/main/exports\ncp -r \"../Project Stationary\" build/pkg-tmp/\ncp \"pkg-support/Readme SDL Developer.txt\" build/pkg-tmp/\n#cp \"../uninstall.csh\" build/pkg-tmp/\n\n## We shouldn't have any framework stuff to deal with now\n# clean up the framework, remove extra files\n# rm -rf build/pkg-tmp/SDL.framework/Resources/pbdevelopment.plist\n\n# remove the .DS_Store file to keep tool from crapping out\nfind pkg-support -name \".DS_Store\" -exec rm -rf \"{}\" \";\" \n\n# create the .pkg\n../package build/pkg-tmp pkg-support/SDL-devel.info -d build -r pkg-support/devel-resources \n#\"/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMaker\" -build -p build/ -f build/pkg-tmp -r pkg-support/devel-resources -i Info.plist -d Description.plist\n\n# create install scripts\nDIR=build/SDL-devel.pkg/\ncp $DIR/install.sh $DIR/SDL-devel.post_install\nmv $DIR/install.sh $DIR/SDL-devel.post_upgrade\n\n# add execute flag to scripts\nchmod 755 $DIR/SDL-devel.post_install $DIR/SDL-devel.post_upgrade\n\n# remove temporary files\n#rm -rf build/pkg-tmp\n\n# compress\n(cd build; gnutar -zcvf SDL-devel.pkg.tar.gz SDL-devel.pkg)"; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "# make a directory to hold the stuff we're going to package up\nmkdir -p build/devel-extras-tmp\nmkdir -p build/devel-extras-tmp/Documentation\nmkdir -p build/devel-extras-tmp/Documentation/docs/XcodeDocSet\nmkdir -p build/devel-extras-tmp/XcodeTemplates\nmkdir -p build/devel-extras-tmp/SDLMain\nmkdir -p build/devel-extras-tmp/SDLMain/NIBless\nmkdir -p build/devel-extras-tmp/SDLMain/CocoaMenus\n\n# copy the docs\ncp ../../docs.html build/devel-extras-tmp/Documentation\ncp -r ../../docs build/devel-extras-tmp/Documentation\n\n# Copy Doxyfile for DocSet\ncp $SRCROOT/../XcodeDocSet/Doxyfile build/devel-extras-tmp/Documentation/docs/XcodeDocSet\n\n# Copy DocSet (if it exists)\nif [ -d $SRCROOT/../XcodeDocSet/org.libsdl.sdl.docset ] ; then\n#\techo Found docset directory\n\tmv $SRCROOT/../XcodeDocSet/org.libsdl.sdl.docset build/devel-extras-tmp/Documentation/docs/XcodeDocSet/\nelse\n\techo Warning: Could not find DocSet and will be omitted from package\nfi\n\n# copy the Xcode Project user templates\ncp -r \"../TemplatesForXcodeTiger\" build/devel-extras-tmp/XcodeTemplates\ncp -r \"../TemplatesForXcodeLeopard\" build/devel-extras-tmp/XcodeTemplates\ncp -r \"../TemplatesForXcodeSnowLeopard\" build/devel-extras-tmp/XcodeTemplates\n\ncp \"pkg-support/Readme SDL Developer.txt\" build/devel-extras-tmp\n\n# readme file\n#cp pkg-support/resources/ReadMe.txt build/devel-extras-tmp\n\n#cp pkg-support/resources/UniversalBinaryNotes.rtf build/devel-extras-tmp\n\n# Copy the devel-lite stuff just in case the user didn't notice it in the main package\n# I should copy all the different SDLMain versions (and nibs) instead.\n# I'm assuming the default is the same as the SDL App and SDL/OpenGL templates\n\ncp pkg-support/resources/ReadMeDevLite.txt build/devel-extras-tmp/SDLMain/NIBless\ncp ../../src/main/macosx/SDLMain.h build/devel-extras-tmp/SDLMain/NIBless\ncp ../../src/main/macosx/SDLMain.m build/devel-extras-tmp/SDLMain/NIBless\n\n# Nib stuff from SDL-Cocoa App\n/Developer/Tools/CpMac -r \"../TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.h\" build/devel-extras-tmp/SDLMain/CocoaMenus\n/Developer/Tools/CpMac -r \"../TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.m\" build/devel-extras-tmp/SDLMain/CocoaMenus\n/Developer/Tools/CpMac -r \"../TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib\" build/devel-extras-tmp/SDLMain/CocoaMenus\n\n# Copy precompiled libSDLmain.a's here??? We have potentially 3 different ones?\n# /Developer/Tools/CpMac -r $TARGET_BUILD_DIR/libSDLmain.a build/devel-extras-tmp/SDLMain/NIBless\n#\n#\n\n# Copy sdl-config's for those who've been wanting one? Will need to document that it may\n# require manual changes if you don't install the framework to /Library/Frameworks\n# <>\n\n# remove the .DS_Store files if any (we may want to provide one in the future for fancy .dmgs)\nfind build/devel-extras-tmp -name .DS_Store -exec rm -f \"{}\" \\;\n# remove CVS stuff\nfind build/devel-extras-tmp -name .cvsignore -exec rm -f \"{}\" \\;\n# depth first traversal, type=directory, remove recursively\nfind -d build/devel-extras-tmp -type d -name CVS -exec rm -rf \"{}\" \\;\nfind -d build/devel-extras-tmp -type d -name .svn -exec rm -rf \"{}\" \\;\n\n\n# create the dmg\nhdiutil create -ov -fs HFS+ -volname SDL-devel-extras -srcfolder build/devel-extras-tmp build/SDL-devel-extras.dmg\n\n# clean up\nrm -rf build/devel-extras-tmp\n\n# compress it???\n#(cd build; gnutar -zcvf SDL.dmg.tar.gz SDL.dmg)\n\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + BECDF62C0761BA81005FE872 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BECDF62E0761BA81005FE872 /* SDL_audio.c in Sources */, + BECDF62F0761BA81005FE872 /* SDL_audiocvt.c in Sources */, + BECDF6300761BA81005FE872 /* SDL_audiodev.c in Sources */, + BECDF6320761BA81005FE872 /* SDL_mixer.c in Sources */, + BECDF6330761BA81005FE872 /* SDL_wave.c in Sources */, + BECDF6350761BA81005FE872 /* SDL_active.c in Sources */, + BECDF6360761BA81005FE872 /* SDL_events.c in Sources */, + BECDF6370761BA81005FE872 /* SDL_expose.c in Sources */, + BECDF6380761BA81005FE872 /* SDL_keyboard.c in Sources */, + BECDF6390761BA81005FE872 /* SDL_mouse.c in Sources */, + BECDF63A0761BA81005FE872 /* SDL_quit.c in Sources */, + BECDF63B0761BA81005FE872 /* SDL_resize.c in Sources */, + BECDF63C0761BA81005FE872 /* SDL_rwops.c in Sources */, + BECDF63E0761BA81005FE872 /* SDL_timer.c in Sources */, + BECDF63F0761BA81005FE872 /* SDL_blit.c in Sources */, + BECDF6400761BA81005FE872 /* SDL_blit_0.c in Sources */, + BECDF6410761BA81005FE872 /* SDL_blit_1.c in Sources */, + BECDF6420761BA81005FE872 /* SDL_blit_A.c in Sources */, + BECDF6430761BA81005FE872 /* SDL_blit_N.c in Sources */, + BECDF6440761BA81005FE872 /* SDL_bmp.c in Sources */, + BECDF6450761BA81005FE872 /* SDL_cursor.c in Sources */, + BECDF6460761BA81005FE872 /* SDL_gamma.c in Sources */, + BECDF6470761BA81005FE872 /* SDL_pixels.c in Sources */, + BECDF6480761BA81005FE872 /* SDL_RLEaccel.c in Sources */, + BECDF6490761BA81005FE872 /* SDL_surface.c in Sources */, + BECDF64A0761BA81005FE872 /* SDL_video.c in Sources */, + BECDF64B0761BA81005FE872 /* SDL_yuv.c in Sources */, + BECDF64C0761BA81005FE872 /* SDL_yuv_sw.c in Sources */, + BECDF64D0761BA81005FE872 /* SDL_error.c in Sources */, + BECDF64E0761BA81005FE872 /* SDL_fatal.c in Sources */, + BECDF6500761BA81005FE872 /* SDL.c in Sources */, + BECDF6510761BA81005FE872 /* SDL_thread.c in Sources */, + BECDF6520761BA81005FE872 /* SDL_cdrom.c in Sources */, + BECDF6530761BA81005FE872 /* SDL_joystick.c in Sources */, + BECDF6580761BA81005FE872 /* SDL_stretch.c in Sources */, + BECDF6590761BA81005FE872 /* SDL_sysjoystick.c in Sources */, + BECDF65B0761BA81005FE872 /* SDL_QuartzEvents.m in Sources */, + BECDF65C0761BA81005FE872 /* SDL_QuartzGL.m in Sources */, + BECDF65D0761BA81005FE872 /* SDL_QuartzVideo.m in Sources */, + BECDF65E0761BA81005FE872 /* SDL_QuartzWindow.m in Sources */, + BECDF65F0761BA81005FE872 /* SDL_QuartzWM.m in Sources */, + BECDF6610761BA81005FE872 /* SDL_cpuinfo.c in Sources */, + BECDF6620761BA81005FE872 /* SDL_syscdrom.c in Sources */, + BECDF6670761BA81005FE872 /* SDL_coreaudio.c in Sources */, + 004C2C8B0975E13300E9D430 /* AudioFilePlayer.c in Sources */, + 004C2C8C0975E13300E9D430 /* AudioFileReaderThread.c in Sources */, + 004C2C8D0975E13300E9D430 /* CDPlayer.c in Sources */, + 004C2C8E0975E13300E9D430 /* SDLOSXCAGuard.c in Sources */, + 00162D5309BD20DA0037C8D0 /* SDL_syscond.c in Sources */, + 00162D5409BD20DA0037C8D0 /* SDL_sysmutex.c in Sources */, + 00162D5609BD20DA0037C8D0 /* SDL_syssem.c in Sources */, + 00162D5709BD20DA0037C8D0 /* SDL_systhread.c in Sources */, + 00162D6109BD21010037C8D0 /* SDL_systimer.c in Sources */, + 00162D6B09BD214F0037C8D0 /* SDL_getenv.c in Sources */, + 00162D6C09BD214F0037C8D0 /* SDL_malloc.c in Sources */, + 00162D6D09BD214F0037C8D0 /* SDL_qsort.c in Sources */, + 00162D6E09BD214F0037C8D0 /* SDL_stdlib.c in Sources */, + 00162D6F09BD214F0037C8D0 /* SDL_string.c in Sources */, + 00162E6809BD27300037C8D0 /* SDL_mixer_MMX.c in Sources */, + 00162F3B09BE27FB0037C8D0 /* SDL_nullevents.c in Sources */, + 00162F3D09BE27FB0037C8D0 /* SDL_nullmouse.c in Sources */, + 00162F3F09BE27FB0037C8D0 /* SDL_nullvideo.c in Sources */, + 0014B7EF09C0D8D2003A99D5 /* SDL_dgaevents.c in Sources */, + 0014B7F109C0D8D2003A99D5 /* SDL_dgamouse.c in Sources */, + 0014B7F209C0D8D2003A99D5 /* SDL_dgavideo.c in Sources */, + 0014B84F09C0D977003A99D5 /* SDL_x11dga.c in Sources */, + 0014B85009C0D977003A99D5 /* SDL_x11dyn.c in Sources */, + 0014B85309C0D977003A99D5 /* SDL_x11events.c in Sources */, + 0014B85509C0D977003A99D5 /* SDL_x11gamma.c in Sources */, + 0014B85709C0D977003A99D5 /* SDL_x11gl.c in Sources */, + 0014B85909C0D977003A99D5 /* SDL_x11image.c in Sources */, + 0014B85B09C0D977003A99D5 /* SDL_x11modes.c in Sources */, + 0014B85D09C0D977003A99D5 /* SDL_x11mouse.c in Sources */, + 0014B85F09C0D977003A99D5 /* SDL_x11video.c in Sources */, + 0014B86209C0D977003A99D5 /* SDL_x11wm.c in Sources */, + 0014B86409C0D977003A99D5 /* SDL_x11yuv.c in Sources */, + 0014B89209C0DA94003A99D5 /* XF86DGA.c in Sources */, + 0014B89309C0DA94003A99D5 /* XF86DGA2.c in Sources */, + 0014B89709C0DAA1003A99D5 /* XF86VMode.c in Sources */, + 0014B89B09C0DAAE003A99D5 /* Xv.c in Sources */, + 0014B8A009C0DAB9003A99D5 /* Xinerama.c in Sources */, + 0014B8A309C0DAC4003A99D5 /* xme.c in Sources */, + 002F328609CA049100EBEB88 /* SDL_iconv.c in Sources */, + 002F32D709CA0BE700EBEB88 /* SDL_diskaudio.c in Sources */, + 002F32E509CA0BF600EBEB88 /* SDL_dummyaudio.c in Sources */, + 046B91EC0A11B53500FB151C /* SDL_sysloadso.c in Sources */, + 046B92130A11B8AD00FB151C /* SDL_dlcompat.c in Sources */, + 00EAE6FC0C4D3F84009A420A /* SDL_yuv_mmx.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6790761BA81005FE872 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BECDF67A0761BA81005FE872 /* SDL_audio.c in Sources */, + BECDF67B0761BA81005FE872 /* SDL_audiocvt.c in Sources */, + BECDF67D0761BA81005FE872 /* SDL_audiodev.c in Sources */, + BECDF67E0761BA81005FE872 /* SDL_mixer.c in Sources */, + BECDF67F0761BA81005FE872 /* SDL_wave.c in Sources */, + BECDF6810761BA81005FE872 /* SDL_cdrom.c in Sources */, + BECDF6830761BA81005FE872 /* SDL_active.c in Sources */, + BECDF6840761BA81005FE872 /* SDL_events.c in Sources */, + BECDF6850761BA81005FE872 /* SDL_expose.c in Sources */, + BECDF6860761BA81005FE872 /* SDL_keyboard.c in Sources */, + BECDF6870761BA81005FE872 /* SDL_mouse.c in Sources */, + BECDF6880761BA81005FE872 /* SDL_quit.c in Sources */, + BECDF6890761BA81005FE872 /* SDL_resize.c in Sources */, + BECDF68A0761BA81005FE872 /* SDL_rwops.c in Sources */, + BECDF68B0761BA81005FE872 /* SDL_joystick.c in Sources */, + BECDF68C0761BA81005FE872 /* SDL_thread.c in Sources */, + BECDF6920761BA81005FE872 /* SDL_timer.c in Sources */, + BECDF6930761BA81005FE872 /* SDL_blit.c in Sources */, + BECDF6940761BA81005FE872 /* SDL_blit_0.c in Sources */, + BECDF6950761BA81005FE872 /* SDL_blit_1.c in Sources */, + BECDF6960761BA81005FE872 /* SDL_blit_A.c in Sources */, + BECDF6970761BA81005FE872 /* SDL_blit_N.c in Sources */, + BECDF6980761BA81005FE872 /* SDL_bmp.c in Sources */, + BECDF6990761BA81005FE872 /* SDL_cursor.c in Sources */, + BECDF69A0761BA81005FE872 /* SDL_gamma.c in Sources */, + BECDF69B0761BA81005FE872 /* SDL_pixels.c in Sources */, + BECDF69C0761BA81005FE872 /* SDL_RLEaccel.c in Sources */, + BECDF69D0761BA81005FE872 /* SDL_stretch.c in Sources */, + BECDF69E0761BA81005FE872 /* SDL_surface.c in Sources */, + BECDF69F0761BA81005FE872 /* SDL_video.c in Sources */, + BECDF6A00761BA81005FE872 /* SDL_yuv.c in Sources */, + BECDF6A10761BA81005FE872 /* SDL_yuv_sw.c in Sources */, + BECDF6A20761BA81005FE872 /* SDL_error.c in Sources */, + BECDF6A30761BA81005FE872 /* SDL_fatal.c in Sources */, + BECDF6A50761BA81005FE872 /* SDL.c in Sources */, + BECDF6A60761BA81005FE872 /* SDL_sysjoystick.c in Sources */, + BECDF6A80761BA81005FE872 /* SDL_syscdrom.c in Sources */, + BECDF6A90761BA81005FE872 /* SDL_QuartzEvents.m in Sources */, + BECDF6AA0761BA81005FE872 /* SDL_QuartzGL.m in Sources */, + BECDF6AB0761BA81005FE872 /* SDL_QuartzVideo.m in Sources */, + BECDF6AC0761BA81005FE872 /* SDL_QuartzWindow.m in Sources */, + BECDF6AD0761BA81005FE872 /* SDL_QuartzWM.m in Sources */, + BECDF6AF0761BA81005FE872 /* SDL_cpuinfo.c in Sources */, + BECDF6B00761BA81005FE872 /* SDL_coreaudio.c in Sources */, + 004C2C900975E13300E9D430 /* AudioFilePlayer.c in Sources */, + 004C2C910975E13300E9D430 /* AudioFileReaderThread.c in Sources */, + 004C2C920975E13300E9D430 /* CDPlayer.c in Sources */, + 004C2C930975E13300E9D430 /* SDLOSXCAGuard.c in Sources */, + 00162D5909BD20DA0037C8D0 /* SDL_syscond.c in Sources */, + 00162D5A09BD20DA0037C8D0 /* SDL_sysmutex.c in Sources */, + 00162D5C09BD20DA0037C8D0 /* SDL_syssem.c in Sources */, + 00162D5D09BD20DA0037C8D0 /* SDL_systhread.c in Sources */, + 00162D6209BD21010037C8D0 /* SDL_systimer.c in Sources */, + 00162D7009BD214F0037C8D0 /* SDL_getenv.c in Sources */, + 00162D7109BD214F0037C8D0 /* SDL_malloc.c in Sources */, + 00162D7209BD214F0037C8D0 /* SDL_qsort.c in Sources */, + 00162D7309BD214F0037C8D0 /* SDL_stdlib.c in Sources */, + 00162D7409BD214F0037C8D0 /* SDL_string.c in Sources */, + 00162E6A09BD27360037C8D0 /* SDL_mixer_MMX.c in Sources */, + 00162F4109BE27FB0037C8D0 /* SDL_nullevents.c in Sources */, + 00162F4309BE27FB0037C8D0 /* SDL_nullmouse.c in Sources */, + 00162F4509BE27FB0037C8D0 /* SDL_nullvideo.c in Sources */, + 0014B7F509C0D8D2003A99D5 /* SDL_dgaevents.c in Sources */, + 0014B7F709C0D8D2003A99D5 /* SDL_dgamouse.c in Sources */, + 0014B7F809C0D8D2003A99D5 /* SDL_dgavideo.c in Sources */, + 0014B86609C0D977003A99D5 /* SDL_x11dga.c in Sources */, + 0014B86709C0D977003A99D5 /* SDL_x11dyn.c in Sources */, + 0014B86A09C0D977003A99D5 /* SDL_x11events.c in Sources */, + 0014B86C09C0D977003A99D5 /* SDL_x11gamma.c in Sources */, + 0014B86E09C0D977003A99D5 /* SDL_x11gl.c in Sources */, + 0014B87009C0D977003A99D5 /* SDL_x11image.c in Sources */, + 0014B87209C0D977003A99D5 /* SDL_x11modes.c in Sources */, + 0014B87409C0D977003A99D5 /* SDL_x11mouse.c in Sources */, + 0014B87609C0D977003A99D5 /* SDL_x11video.c in Sources */, + 0014B87909C0D977003A99D5 /* SDL_x11wm.c in Sources */, + 0014B87B09C0D977003A99D5 /* SDL_x11yuv.c in Sources */, + 0014B89409C0DA94003A99D5 /* XF86DGA.c in Sources */, + 0014B89509C0DA94003A99D5 /* XF86DGA2.c in Sources */, + 0014B89809C0DAA1003A99D5 /* XF86VMode.c in Sources */, + 0014B89D09C0DAAE003A99D5 /* Xv.c in Sources */, + 0014B8A109C0DAB9003A99D5 /* Xinerama.c in Sources */, + 0014B8A409C0DAC4003A99D5 /* xme.c in Sources */, + 002F328709CA049100EBEB88 /* SDL_iconv.c in Sources */, + 002F32D909CA0BE700EBEB88 /* SDL_diskaudio.c in Sources */, + 002F32E709CA0BF600EBEB88 /* SDL_dummyaudio.c in Sources */, + 046B91ED0A11B53500FB151C /* SDL_sysloadso.c in Sources */, + 046B92140A11B8AD00FB151C /* SDL_dlcompat.c in Sources */, + 00EAE6FD0C4D3F88009A420A /* SDL_yuv_mmx.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BECDF6B60761BA81005FE872 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BECDF6B70761BA81005FE872 /* SDLMain.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 008310001072D94A00A531F1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 0032354F1070931700C76517 /* Generate Doxygen DocSet */; + targetProxy = 00830FFF1072D94A00A531F1 /* PBXContainerItemProxy */; + }; + BECDF6C60761BA81005FE872 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BECDF5FE0761BA81005FE872 /* Framework */; + targetProxy = BECDF6C50761BA81005FE872 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 003235501070931700C76517 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 003235511070931700C76517 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 003235521070931700C76517 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Development_native_only; + }; + 003235531070931700C76517 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Deployment_native_only; + }; + 003235541070931700C76517 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Development_legacy; + }; + 003235551070931700C76517 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Deployment_legacy; + }; + 003235561070931700C76517 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + DOXYGEN_EXE = /Applications/Doxygen.app/Contents/Resources/doxygen; + PRODUCT_NAME = "Generate Doxygen DocSet"; + }; + name = Default; + }; + 0073177B0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 0073177C0858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + OTHER_LDFLAGS_ppc = "-prebind -seg1addr 0x30000000"; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 0073177D0858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Default; + }; + 0073177F0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 007317800858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 007317810858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Default; + }; + 007317830858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 007317840858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 007317850858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Default; + }; + 007317870858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 007317880858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 007317890858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Default; + }; + 0073178B0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 0073178C0858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 0073178D0858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Default; + }; + 0073178F0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_VERSION = 4.0; + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + MACOSX_DEPLOYMENT_TARGET = ""; + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + PREBINDING = NO; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Development_using_10.4SDK_and_10.6SDK; + }; + 007317900858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + DEPLOYMENT_POSTPROCESSING = YES; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_VERSION = 4.0; + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + MACOSX_DEPLOYMENT_TARGET = ""; + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + PREBINDING = NO; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + SEPARATE_STRIP = YES; + STRIP_STYLE = "non-global"; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Deployment_for_official_releases_using_10.4SDK_and_10.6SDK; + }; + 007317910858DB0500B2BC32 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_VERSION = 4.0; + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + MACOSX_DEPLOYMENT_TARGET = ""; + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + PREBINDING = NO; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Default; + }; + 00B04D1C0CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + OTHER_LDFLAGS_ppc = "-prebind -seg1addr 0x30000000"; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Deployment_legacy; + }; + 00B04D1D0CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Deployment_legacy; + }; + 00B04D1E0CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Deployment_legacy; + }; + 00B04D1F0CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Deployment_legacy; + }; + 00B04D200CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Deployment_legacy; + }; + 00B04D230CC7F3B100A95728 /* Deployment_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + DEPLOYMENT_POSTPROCESSING = YES; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 3; + GCC_VERSION = 4.0; + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + MACOSX_DEPLOYMENT_TARGET = ""; + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + PREBINDING = NO; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + SEPARATE_STRIP = YES; + STRIP_STYLE = "non-global"; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Deployment_legacy; + }; + 00B04D240CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Development_legacy; + }; + 00B04D250CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Development_legacy; + }; + 00B04D260CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Development_legacy; + }; + 00B04D270CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Development_legacy; + }; + 00B04D280CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Development_legacy; + }; + 00B04D2B0CC7F43D00A95728 /* Development_legacy */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_VERSION = 4.0; + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + MACOSX_DEPLOYMENT_TARGET = ""; + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + PREBINDING = NO; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Development_legacy; + }; + 00CFA621106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + DEPLOYMENT_POSTPROCESSING = YES; + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 3; + MACOSX_DEPLOYMENT_TARGET = ""; + PREBINDING = NO; + SEPARATE_STRIP = YES; + STRIP_STYLE = "non-global"; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Deployment_native_only; + }; + 00CFA622106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + OTHER_LDFLAGS_ppc = "-prebind -seg1addr 0x30000000"; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Deployment_native_only; + }; + 00CFA623106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Deployment_native_only; + }; + 00CFA624106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Deployment_native_only; + }; + 00CFA625106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Deployment_native_only; + }; + 00CFA626106A567900758660 /* Deployment_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Deployment_native_only; + }; + 00CFA627106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_ALTIVEC_EXTENSIONS = YES; + GCC_AUTO_VECTORIZATION = YES; + GCC_ENABLE_CPP_EXCEPTIONS = NO; + GCC_ENABLE_CPP_RTTI = NO; + GCC_ENABLE_SSE3_EXTENSIONS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + MACOSX_DEPLOYMENT_TARGET = ""; + PREBINDING = NO; + WARNING_CFLAGS = ""; + ZERO_LINK = NO; + }; + name = Development_native_only; + }; + 00CFA628106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + FRAMEWORK_VERSION = A; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = YES; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + INFOPLIST_FILE = "Info-Framework.plist"; + INSTALL_PATH = "@executable_path/../Frameworks"; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + WRAPPER_EXTENSION = framework; + }; + name = Development_native_only; + }; + 00CFA629106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "SDL_VIDEO_DRIVER_DGA=1", + "SDL_VIDEO_DRIVER_X11=1", + "SDL_VIDEO_DRIVER_X11_DGAMOUSE=1", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)", + "$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)", + "SDL_VIDEO_DRIVER_X11_VIDMODE=1", + "SDL_VIDEO_DRIVER_X11_XINERAMA=1", + "SDL_VIDEO_DRIVER_X11_XME=1", + "SDL_VIDEO_DRIVER_X11_XRANDR=1", + "SDL_VIDEO_DRIVER_X11_XV=1", + ); + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "SDL_VIDEO_DRIVER_X11_DYNAMIC=\\\"/usr/X11R6/lib/libX11.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT=\\\"/usr/X11R6/lib/libXext.6.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR=\\\"/usr/X11R6/lib/libXrandr.2.dylib\\\""; + GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER=\\\"/usr/X11R6/lib/libXrender.1.dylib\\\""; + HEADER_SEARCH_PATHS = /usr/X11R6/include; + OTHER_CFLAGS = "$(OTHER_CFLAGS_$(CURRENT_ARCH))"; + OTHER_CFLAGS_i386 = ""; + OTHER_CFLAGS_ppc = ""; + PRODUCT_NAME = SDL; + }; + name = Development_native_only; + }; + 00CFA62A106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = SDLmain; + }; + name = Development_native_only; + }; + 00CFA62B106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Standard DMG"; + }; + name = Development_native_only; + }; + 00CFA62C106A568900758660 /* Development_native_only */ = { + isa = XCBuildConfiguration; + buildSettings = { + PRODUCT_NAME = "Developer Extras Package"; + }; + name = Development_native_only; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 003235571070933500C76517 /* Build configuration list for PBXAggregateTarget "Generate Doxygen DocSet" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 003235501070931700C76517 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 003235511070931700C76517 /* Development_using_10.4SDK_and_10.6SDK */, + 003235521070931700C76517 /* Development_native_only */, + 003235531070931700C76517 /* Deployment_native_only */, + 003235541070931700C76517 /* Development_legacy */, + 003235551070931700C76517 /* Deployment_legacy */, + 003235561070931700C76517 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 0073177A0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Framework" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0073177C0858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 0073177B0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA628106A568900758660 /* Development_native_only */, + 00CFA622106A567900758660 /* Deployment_native_only */, + 00B04D240CC7F43D00A95728 /* Development_legacy */, + 00B04D1C0CC7F3B100A95728 /* Deployment_legacy */, + 0073177D0858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 0073177E0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Static Library" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 007317800858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 0073177F0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA629106A568900758660 /* Development_native_only */, + 00CFA623106A567900758660 /* Deployment_native_only */, + 00B04D250CC7F43D00A95728 /* Development_legacy */, + 00B04D1D0CC7F3B100A95728 /* Deployment_legacy */, + 007317810858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 007317820858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Main Library" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 007317840858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 007317830858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA62A106A568900758660 /* Development_native_only */, + 00CFA624106A567900758660 /* Deployment_native_only */, + 00B04D260CC7F43D00A95728 /* Development_legacy */, + 00B04D1E0CC7F3B100A95728 /* Deployment_legacy */, + 007317850858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 007317860858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Standard DMG" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 007317880858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 007317870858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA62B106A568900758660 /* Development_native_only */, + 00CFA625106A567900758660 /* Deployment_native_only */, + 00B04D270CC7F43D00A95728 /* Development_legacy */, + 00B04D1F0CC7F3B100A95728 /* Deployment_legacy */, + 007317890858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 0073178A0858DB0500B2BC32 /* Build configuration list for PBXNativeTarget "Developer Extras Package" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0073178C0858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 0073178B0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA62C106A568900758660 /* Development_native_only */, + 00CFA626106A567900758660 /* Deployment_native_only */, + 00B04D280CC7F43D00A95728 /* Development_legacy */, + 00B04D200CC7F3B100A95728 /* Deployment_legacy */, + 0073178D0858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 0073178E0858DB0500B2BC32 /* Build configuration list for PBXProject "SDL" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 007317900858DB0500B2BC32 /* Deployment_for_official_releases_using_10.4SDK_and_10.6SDK */, + 0073178F0858DB0500B2BC32 /* Development_using_10.4SDK_and_10.6SDK */, + 00CFA627106A568900758660 /* Development_native_only */, + 00CFA621106A567900758660 /* Deployment_native_only */, + 00B04D2B0CC7F43D00A95728 /* Development_legacy */, + 00B04D230CC7F3B100A95728 /* Deployment_legacy */, + 007317910858DB0500B2BC32 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0867D690FE84028FC02AAC07 /* Project object */; +} diff --git a/Xcode/SDL/pkg-support/Readme SDL Developer.txt b/Xcode/SDL/pkg-support/Readme SDL Developer.txt new file mode 100755 index 000000000..aa32284d9 --- /dev/null +++ b/Xcode/SDL/pkg-support/Readme SDL Developer.txt @@ -0,0 +1,282 @@ +SDL Mac OS X Developer Notes: + This is an optional developer package to provide extras that an + SDL developer might benefit from. + + Make sure you have already installed the SDL.framework + from the SDL.dmg. + + For more complete documentation, please see READMEs included + with the SDL source code. Also, don't forget about the API + documentation (also included with this package). + + +This package contains: +- SDL API Documentation +- A variety of SDLMain and .Nib files to choose from +- Xcode project templates + + +SDL API Documentation: + We include both the HTML documentation and the man files. + And new to 1.2.14, we introduce an Xocde DocSet which + is generated via Doxygen. These require Xcode 3.0 or greater. + + You will need to drill down into the XcodeDocSet directory + from the Documentation folder and find the + org.libsdl.sdl.docset bundle. We recommend you copy this to: + + /Library/Developer/Shared/Documentation/DocSets + + Again, this follows all the standard Xcode patterns + described with the project templates (below). You may need + to create the directories if they don't already exist. + You may install it on a per-user basis. + And you may target specific versions of Xcode + in lieu of using the "Shared" directory. + + To use, it is quite simple. Just bring up the Xcode + Documentation Browser window (can be activated through + the Xcode Help Menu) and start searching for something. + + If nothing is found on a legitimate search, verify that + the SDL documentation is enabled by opening up the DocSet + popup box below the toolbar in Snow Leopard. + (In Leopard, the DocSets appear in the left-side panel.) + + Another handy trick is to use the mouse and Option-Double-Click + on a function or keyword to bring up documentation on the + selected item. Prior to Xcode 3.2 (Snow Leopard), this would + jump you to the entry in the Xcode Documentation Browser. + + However, in Xcode 3.2 (Snow Leopard), this behavior has been + altered and you are now given a hovering connected popup box + on the selected item (called Quick Help). Unfortunately, the + Doxygen generated DocSet doesn't currently provide Quick Help + information. You can either follow a link to the main + Documentation Browser from the Quick Help, or alternatively, + you can bypass Quick Help by using Command-Option-Double-Click + instead of Option-Double-Click. (Please file feedback with both + Doxygen and Apple to improve Quick Help integration.) + + + For those that want to tweak the documentation output, + you can find my Doxyfile in the XcodeDocSet directory in + the Xcode directory of the SDL source code base (and in this package). + + One of the most significant options is "Separate Member Pages" + which I disable. When disabled, the documentation is about 6MB. + When enabled, the documentation is closer to 1.6GB (yes gigabytes). + Obviously, distribution will be really hard with sizes that huge + so I disable the option. + + I also disabled Dot because there didn't seem to be + much benefit of generating graphs for public C functions. + + One thing I would like to see is a CSS file that makes the + Doxygen DocSet look more like the native Apple documentation + style. Style sheets are outside my expertise so I am asking for + contributions on this one. Meanwhile, I also request you send + feedback to Doxygen and Apple about this issue too. + + + Finally for convenience, I have added a new shell script target + to the Xcode project that builds SDL that refers to my Doxyfile + and generate the DocSet we distribute. + + +SDLMain: + We include several different variations of SDLMain and the + .Nibs. (Each of these are demonstrated by the different PB/Xcode + project templates.) You get to pick which one you want to use, + or you can write your own to meet your own specific needs. We do + not currently provide a libSDLMain.a. You can build it yourself + once you decide which one you want to use though it is easier and + recommended in the SDL FAQ that you just copy the SDLMain.h and + SDLMain.m directly into your project. If you are puzzled by this, + we strongly recommend you look at the different PB/Xcode project + templates to understand their uses and differences. (See Project + Template info below.) Note that the "Nibless" version is the same + version of SDLMain we include the the devel-lite section of the + main SDL.dmg. + + +Xocde Project Templates: + For convenience, we provide Project Templates for Xcode. + Using Xcode is *not* a requirement for using + the SDL.framework. However, for newbies, we do recommend trying + out the Xcode templates first (and work your way back to raw gcc + if you desire), as the Xcode templates try to setup everything + for you in a working state. This avoids the need to ask those + many reoccuring questions that appear on the mailing list + or the SDL FAQ. + + + We have provided 3 different kinds of SDL templates for Xcode and have + a different set of templates for each version of Xcode (which generally + correspond with a particular Mac OS X version). + The installion directory depends on which version of Xcode you have. + (Note: These directories may not already exist on your system so you must create them yourself.) + + For Leopard and Snow Leopard (Xcode 2.5, 3+), we recommend you install to: + /Library/Application Support/Developer/Shared/Xcode/Project Templates/Application + + For Xcode 1.0 to 2.4, + /Library/Application Support/Apple/Developer Tools/Project Templates/Appllcation + + + Also note you may place it in per-user locations, e.g. + ~/Library/Application Support/Developer/Shared/Xcode/Project Templates/Application + + + And for advanced users who have multiple versions of Xcode installed on a single system, + you may put each set in a directory with the Xcode version number instead of using "Shared", e.g. + /Library/Application Support/Developer/2.5/Xcode/Project Templates/Application + /Library/Application Support/Developer/3.1/Xcode/Project Templates/Application + /Library/Application Support/Developer/3.2/Xcode/Project Templates/Application + + + Copy each of the SDL/Xcode template directories into the correct location (e.g. "SDL OpenGL Application"). + Do not copy our enclosing folder into the location (e.g. TemplatesForXcodeSnowLeopard). + So for example, in: + /Library/Application Support/Developer/Shared/Xcode/Project Templates/Application + you should have the 3 folders: + SDL Application + SDL Cocoa Application + SDL OpenGL Application + + + After doing this, when doing a File->New Project, you will see the + projects under the Application category. + (Newer versions of Xcode have a separate section for User Templates and it will + appear in the Application category of the User Templates section.) + + + + How to create a new SDL project: + + 1. Open Xcode + 2. Select File->New Project + 3. Select SDL Application + 4. Name, Save, and Finish + 5. Add your sources. + *6. That's it! + + * If you installed the SDL.framework to $(HOME)/Library/Frameworks + instead of /Library/Frameworks, you will need to update the + location of the SDL.framework in the "Groups & Files" browser. + + + The project templates we provide are: + - SDL Application + This is the barebones, most basic version. There is no + customized .Nib file. While still utilizing Cocoa under + the hood, this version may be best suited for fullscreen + applications. + + - SDL Cocoa Application + This demonstrates the integration of using native + Cocoa Menus with an SDL Application. For applications + designed to run in Windowed mode, Mac users may appreciate + having access to standard menus for things + like Preferences and Quiting (among other things). + + - SDL OpenGL Application + This reuses the same SDLMain from the "SDL Application" + temmplate, but also demonstrates how to + bring OpenGL into the mix. + + +Special Notes: +Only the 10.6 Snow Leopard templates (and later) will include 64-bit in the Universal Binary as +prior versions of OS X lacked the API support SDL requires for 64-bit to work correctly. +To prevent 64-bit SDL executables from being launched on 10.5 Leopard, a special key has been set +in the Info.plist in our Snow Leopard SDL/Xcode templates. + + +Xcode Tips and Tricks: + +- Building from command line + Use the command line tool: xcodebuild (see man page) + +- Running your app + You can send command line args to your app by either + invoking it from the command line (in *.app/Contents/MacOS) + or by entering them in the "Executables" panel of the target + settings. + +- Working directory + As defined in the SDLMain.m file, the working directory of + your SDL app is by default set to its parent. You may wish to + change this to better suit your needs. + + + +Additional References: + + - Screencast tutorials for getting started with OpenSceneGraph/Mac OS X are + available at: + http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips + Though these are OpenSceneGraph centric, the same exact concepts apply to + SDL, thus the videos are recommended for everybody getting started with + developing on Mac OS X. (You can skim over the PlugIns stuff since SDL + doesn't have any PlugIns to worry about.) + + +Partial History: +2009-09-21 - CustomView template project was removed because it was broken by + the removal of legacy Quicktime support while moving to 64-bit. + ProjectBuilder templates were removed. + Tiger, Leopard, and Snow Leopard Xcode templates were introduced instead of + using a single common template due to the differences between the 3. + (Tiger used a chevron marker for substitution while Leopard/Snow Leopard use ___ + and we need the 10.6 SDK for 64-bit.) + +2007-12-30 - Updated documentation to reflect new template paths in Leopard + Xcode. Added reference to OSG screencasts. + +2006-03-17 - Changed the package format from a .pkg based + installer to a .dmg to avoid requiring administrator/root + to access contents, for better transparency, and to allow + users to more easily control which components + they actually want to install. + Introduced and updated documentation. + Created brand new Xcode project templates for Xcode 2.1 + based on the old Project Builder templates as they + required Xcode users to "Upgrade to Native Target". The new + templates try to leveage more default options and leverage + more Xcode conventions. The major change that may introduce + some breakage is that I now link to the SDL framework + via the "Group & Files" browser instead of using build + options. The downside to this is that if the user + installs the SDL.framework to a place other than + /Library/Frameworks (e.g. $(HOME)/Library/Frameworks), + the framework will not be found to link to and the user + has to manually fix this. But the upshot is (in addition to + being visually displayed in the forefront) is that it is + really easy to copy (embed) the framework automatically + into the .app bundle on build. So I have added this + feature, which makes the application potentially + drag-and-droppable ready. The Project Builder templates + are mostly unchanged due to the fact that I don't have + Project Builder. I did rename a file extension to .pbxproj + for the SDL Custom Cocoa Application template because + the .pbx extension would not load in my version of Xcode. + For both Project Builder and Xcode templates, I resync'd + the SDLMain.* files for the SDL App and OpenGL App + templates. I think people forget that we have 2 other + SDLMain's (and .Nib's) and somebody needs to go + through them and merge the new changes into those. + I also wrote a fix for the SDL Custom Cocoa App + template in MyController.m. The sprite loading code + needed to be able to find the icon.bmp in the .app + bundle's Resources folder. This change was needed to get + the app to run out of the box. This might change is untested + with Project Builder though and might break it. + There also seemed to be some corruption in the .nib itself. + Merely opening it and saving (allowing IB to correct the + .nib) seemed to correct things. + (Eric Wing) + + + + diff --git a/Xcode/SDL/pkg-support/SDL-devel.info b/Xcode/SDL/pkg-support/SDL-devel.info new file mode 100755 index 000000000..698f1d603 --- /dev/null +++ b/Xcode/SDL/pkg-support/SDL-devel.info @@ -0,0 +1,15 @@ +Title SDL 1.2.9 +Version 1 +Description SDL Library for Mac OS X (http://www.libsdl.org) +DefaultLocation /Developer/Documentation/SDL +Diskname (null) +DeleteWarning +NeedsAuthorization YES +DisableStop NO +UseUserMask YES +Application NO +Relocatable NO +Required NO +InstallOnly NO +RequiresReboot NO +InstallFat NO diff --git a/Xcode/SDL/pkg-support/SDL.info b/Xcode/SDL/pkg-support/SDL.info new file mode 100755 index 000000000..ca37a7f16 --- /dev/null +++ b/Xcode/SDL/pkg-support/SDL.info @@ -0,0 +1,15 @@ +Title SDL 1.2.8 +Version 1 +Description SDL Library for Mac OS X (http://www.libsdl.org) +DefaultLocation /Library/Frameworks +Diskname (null) +DeleteWarning +NeedsAuthorization NO +DisableStop NO +UseUserMask NO +Application NO +Relocatable YES +Required NO +InstallOnly NO +RequiresReboot NO +InstallFat NO diff --git a/Xcode/SDL/pkg-support/devel-resources/ReadMe.txt b/Xcode/SDL/pkg-support/devel-resources/ReadMe.txt new file mode 100755 index 000000000..f4fe36164 --- /dev/null +++ b/Xcode/SDL/pkg-support/devel-resources/ReadMe.txt @@ -0,0 +1,5 @@ +The Simple DirectMedia Layer (SDL for short) is a cross-platform library designed to make it easy to write multi-media software, such as games and emulators. + +The Simple DirectMedia Layer library source code is available from: http://www.libsdl.org/ + +This library is distributed under the terms of the GNU LGPL license: http://www.gnu.org/copyleft/lesser.html \ No newline at end of file diff --git a/Xcode/SDL/pkg-support/devel-resources/Welcome.txt b/Xcode/SDL/pkg-support/devel-resources/Welcome.txt new file mode 100755 index 000000000..9b0d2862f --- /dev/null +++ b/Xcode/SDL/pkg-support/devel-resources/Welcome.txt @@ -0,0 +1,5 @@ +This package installs documentation and Project Builder stationary for the SDL framework. + +The SDL documentation is installed into /Developer/Documentation/SDL. + +The SDL Mac OS X Readme is installed into your home directory. diff --git a/Xcode/SDL/pkg-support/devel-resources/install.sh b/Xcode/SDL/pkg-support/devel-resources/install.sh new file mode 100755 index 000000000..e7a4dedff --- /dev/null +++ b/Xcode/SDL/pkg-support/devel-resources/install.sh @@ -0,0 +1,76 @@ +#!/bin/sh +# finish up the installation +# this script should be executed using the sudo command +# this file is copied to SDL-devel.post_install and SDL-devel.post_upgrade +# inside the .pkg bundle +echo "Running post-install script" +umask 022 + +USER=`basename ~` +echo "User is \"$USER\"" + +ROOT=/Developer/Documentation/SDL +echo "Fixing framework permissions" +find $ROOT -type d -exec chmod a+rx {} \; +find $ROOT -type f -exec chmod a+r {} \; + +## We're not installing frameworks here anymore. The single +## framework should be installed to /Library/Frameworks which +## is handled by the standard package (not developer package). +## Using the home directory here is problematic for multi-user systems too. +# echo "Moving SDL.framework to ~/Library/Frameworks" +# move SDL to its proper home, so the target stationary works +#sudo -u $USER mkdir -p ~/Library/Frameworks +#sudo -u $USER /Developer/Tools/CpMac -r $ROOT/SDL.framework ~/Library/Frameworks + +## I'm not sure where this gets created and what's put in there. +rm -rf $ROOT/SDL.framework + +## I think precompiled headers have changed through the revisions of Apple's gcc. +## I don't know how useful this is anymore w.r.t. Apple's newest system for precompiled headers. +## I'm removing this for now. +# echo "Precompiling Header" +# precompile header for speedier compiles +#sudo -u $USER /usr/bin/cc -precomp ~/Library/Frameworks/SDL.framework/Headers/SDL.h -o ~/Library/Frameworks/SDL.framework/Headers/SDL.p + +# find the directory to store stationary in +if [ -e "/Library/Application Support/Apple/Developer Tools" ] ; then + echo "Installing project stationary for XCode" + PBXDIR="/Library/Application Support/Apple/Developer Tools" +else + echo "Installing project stationary for Project Builder" + PBXDIR="/Developer/ProjectBuilder Extras" +fi + +# move stationary to its proper home +mkdir -p "$PBXDIR/Project Templates/Application" +mkdir -p "$PBXDIR/Target Templates/SDL" + +cp -r "$ROOT/Project Stationary/SDL Application" "$PBXDIR/Project Templates/Application/" +cp -r "$ROOT/Project Stationary/SDL Cocoa Application" "$PBXDIR/Project Templates/Application/" +cp -r "$ROOT/Project Stationary/SDL Custom Cocoa Application" "$PBXDIR/Project Templates/Application/" +cp -r "$ROOT/Project Stationary/SDL OpenGL Application" "$PBXDIR/Project Templates/Application/" +cp "$ROOT/Project Stationary/Application.trgttmpl" "$PBXDIR/Target Templates/SDL/" + +rm -rf "$ROOT/Project Stationary" + +# Actually, man doesn't check this directory by default, so this isn't +# very helpful anymore. +#echo "Installing Man Pages" +## remove old man pages +#rm -rf "/Developer/Documentation/ManPages/man3/SDL"* +# +## install man pages +#mkdir -p "/Developer/Documentation/ManPages/man3" +#cp "$ROOT/docs/man3/SDL"* "/Developer/Documentation/ManPages/man3/" +#rm -rf "$ROOT/docs/man3" +# +#echo "Rebuilding Apropos Database" +## rebuild apropos database +#/usr/libexec/makewhatis + +# copy README file to your home directory +sudo -u $USER cp "$ROOT/Readme SDL Developer.txt" ~/ + +# open up the README file +sudo -u $USER open ~/"Readme SDL Developer.txt" diff --git a/Xcode/SDL/pkg-support/resources/License.rtf b/Xcode/SDL/pkg-support/resources/License.rtf new file mode 100755 index 000000000..706980dbb --- /dev/null +++ b/Xcode/SDL/pkg-support/resources/License.rtf @@ -0,0 +1,283 @@ +{\rtf1\mac\ansicpg10000\cocoartf102 +{\fonttbl\f0\fswiss\fcharset77 Helvetica-Bold;\f1\fswiss\fcharset77 Helvetica;\f2\fswiss\fcharset77 Helvetica-Oblique; +} +{\colortbl;\red255\green255\blue255;\red64\green64\blue64;} +\paperw11900\paperh16840\margl1440\margr1440\vieww9080\viewh13160\viewkind0 +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f0\b\fs36 \cf0 GNU LESSER GENERAL PUBLIC LICENSE +\fs24 \ +Version 2.1, February 1999 +\f1\b0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f2\i \cf0 Copyright (C) 1991, 1999 Free Software Foundation, Inc.\ + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\ + Everyone is permitted to copy and distribute verbatim copies\ + of this license document, but changing it is not allowed.\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f1\i0 \cf0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf2 [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.]\cf0 \ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f0\b \cf0 Preamble +\f1\b0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users.\ +\ +This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below.\ +\ +When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things.\ +\ +To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it.\ +\ +For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights.\ +\ +We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library.\ +\ +To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others.\ +\ +Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license.\ +\ +Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We this license for certain libraries in order to permit linking those libraries into non-free programs.\ +\ +When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library.\ +\ +We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances.\ +\ +For example, on rare occasions, there may be a special need to encourage widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License.\ +\ +Another cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system.\ +\ +Although the Lesser General Public License is Less protective of the users' freedom, it does insure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library.\ +\ +The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run.\ +\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f0\b \cf0 GNU LESSER GENERAL PUBLIC LICENSE\ +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f1\b0 \cf0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f0\b \cf0 0. +\f1\b0 This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you".\ +\ +A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables.\ +\ +The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".)\ +\ +"Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library.\ +\ +Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does.\ + \ + +\f0\b 1. +\f1\b0 You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library.\ +\ +You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.\ +\ + +\f0\b 2. +\f1\b0 You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\li240\ql\qnatural + +\f0\b \cf0 a) +\f1\b0 The modified work must itself be a software library.\ +\ + +\f0\b b) +\f1\b0 You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change.\ +\ + +\f0\b c) +\f1\b0 You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License.\ +\ + +\f0\b d) +\f1\b0 If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful.\ +\ +(For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.)\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.\ +\ +Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library.\ +\ +In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License.\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f0\b \cf0 3. +\f1\b0 You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices.\ +\ +Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy.\ +\ +This option is useful when you wish to copy part of the code of the Library into a program that is not a library.\ +\ + +\f0\b 4. +\f1\b0 You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange.\ +\ +If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code.\ +\ + +\f0\b 5. +\f1\b0 A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License.\ +\ +However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables.\ +\ +When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law.\ +\ +If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.)\ +\ +Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself.\ +\ + +\f0\b 6. +\f1\b0 As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications.\ +\ +You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things:\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\li240\ql\qnatural + +\f0\b \cf0 a) +\f1\b0 Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.)\ +\ + +\f0\b b) +\f1\b0 Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with.\ +\ + +\f0\b c) +\f1\b0 Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution.\ +\ + +\f0\b d) +\f1\b0 If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place.\ +\ + +\f0\b e) +\f1\b0 Verify that the user has already received a copy of these materials or that you have already sent this user a copy.\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.\ +\ +It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute.\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f0\b \cf0 7. +\f1\b0 You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things:\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\li240\ql\qnatural + +\f0\b \cf0 a) +\f1\b0 Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above.\ +\ + +\f0\b b) +\f1\b0 Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work.\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f0\b \cf0 8. +\f1\b0 You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.\ +\ + +\f0\b 9. +\f1\b0 You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it.\ +\ + +\f0\b 10. +\f1\b0 Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License.\ +\ + +\f0\b 11. +\f1\b0 If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library.\ +\ +If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances.\ +\ +It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.\ +\ +This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.\ +\ + +\f0\b 12. +\f1\b0 If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.\ +\ + +\f0\b 13. +\f1\b0 The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.\ +\ +Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation.\ +\ + +\f0\b 14. +\f1\b0 If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f0\b \cf0 NO WARRANTY +\f1\b0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural + +\f0\b \cf0 15. +\f1\b0 BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.\ +\ + +\f0\b 16. +\f1\b0 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\qc + +\f0\b \cf0 END OF TERMS AND CONDITIONS +\f1\b0 \ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +\ +How to Apply These Terms to Your New Libraries\ +\ +If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License).\ +\ +To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found.\ +\ +\pard\tx220\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\li240\ql\qnatural +\cf0 \ +Copyright (C) \ +\ +This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\ +\ +This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.\ +\ +You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +Also add information on how to contact you by electronic and paper mail.\ +\ +You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names:\ +\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\li240\ql\qnatural +\cf0 Yoyodyne, Inc., hereby disclaims all copyright interest in the library\ +`Frob' (a library for tweaking knobs) written by James Random Hacker.\ +\ +, 1 April 1990\ +Ty Coon, President of Vice\ +\pard\tx565\tx1133\tx1700\tx2266\tx2832\tx3401\tx3967\tx4535\tx5102\tx5669\tx6235\tx6802\ql\qnatural +\cf0 \ +That's all there is to it!\ +\ +} \ No newline at end of file diff --git a/Xcode/SDL/pkg-support/resources/ReadMe.txt b/Xcode/SDL/pkg-support/resources/ReadMe.txt new file mode 100755 index 000000000..073115031 --- /dev/null +++ b/Xcode/SDL/pkg-support/resources/ReadMe.txt @@ -0,0 +1,171 @@ +The Simple DirectMedia Layer (SDL for short) is a cross-platform +library designed to make it easy to write multi-media software, +such as games and emulators. + +The Simple DirectMedia Layer library source code is available from: +http://www.libsdl.org/ + +This library is distributed under the terms of the GNU LGPL license: +http://www.gnu.org/copyleft/lesser.html + + +This packages contains the SDL.framework for OS X. +Conforming with Apple guidelines, this framework +contains both the SDL runtime component and development header files. + + +To Install: +Copy the SDL.framework to /Library/Frameworks + +You may alternatively install it in /Library/Frameworks +if your access privileges are not high enough. +(Be aware that the Xcode templates we provide in the SDL Developer Extras +package may require some adjustment for your system if you do this.) + + +Known Issues: +??? + + +Additional References: + + - Screencast tutorials for getting started with OpenSceneGraph/Mac OS X are + available at: + http://www.openscenegraph.org/projects/osg/wiki/Support/Tutorials/MacOSXTips + Though these are OpenSceneGraph centric, the same exact concepts apply to + SDL, thus the videos are recommended for everybody getting started with + developing on Mac OS X. (You can skim over the PlugIns stuff since SDL + doesn't have any PlugIns to worry about.) + + + +(Partial) History of PB/Xcode projects: +2009-09-21 - Added 64-bit for Snow Leopard. 10.4 is the new minimum requirement. + Removed 'no X11' targets as + new codebase will assume you have them. Also removed specific #defines + for X11, but needed to add search path to /usr/X11R6/include + +2007-12-31 - Enabled strip -x in the Xcode settings and removed it + from the Build DMG script. + Added a per-arch setting for the Deployment targets for OTHER_LDFLAGS_ppc + to re-enable prebinding. + Need to remember to copy these changes to the SDL satellite projects. + +2007-12-30 - Updated documentation to reflect new installation paths for + Xcode project templates under Leopard (Xcode 2.5/3.0). + +????-??-?? - Added extra targets for building formal releases against the + 10.2 SDK so we don't have to keep modifying the settings. + +????-??-?? - Added fancy DMG (background logo) support with automation. + +2006-05-09 - Added shell script phase to deal with new SDL_config.h + behavior. Encountered what seems to be an Xcode bug with + multiple files of the same name, even when conditional compiling + is controlled by custom #defines (SDL_sysloadso.c). Multiple or + undefined symbols are the result of this. + Recommended that macosx/SDL_sysloadso.c be modified to directly + include the dlopen version of the file via #ifdef's so only + one version needs to exist. Filed a formal bug report with Apple + about this (4542369). + +2006-03-22 - gcc 4 visibility features have been added to the code base so I + enabled the switch in Xcode to take advantage of it. Be aware that only + our x86 builds will be exposed to this feature as we still build ppc + with gcc 3.3. + + Christian Walther has sent me some great feedback on things that are + broken, so I have made some of these fixes. Among the issues are + compatibility and current library versions are not set to 1 (breaks + backwards compatibility), documentation errors, resource copying + location problems for the SDLTest apps, missing HAVE_OPENGL and + OpenGL.framework linking in testgl. + (Eric Wing) + +2006-03-17 - Because the X11 headers are not installed by default with Xcode, + we decided to offer two variants of the same targets (one with X11 stuff + and one without). By default, since the X11 stuff does not necessarily + conflict with the native stuff, we build the libraries with the X11 stuff + so advanced developers can access it by default. However, in the case + that a developer did not install X11 (or just doesn't want the extra bloat), + the user may directly select those targets and build those instead. + + Once again, we are attempting to remove the exported symbols file. If + I recall correctly, the clashing symbol problems we got were related + to the CD-ROM code which was formerly in C++. Now that the C++ code + has been purged, we are speculating that we might be able to remove + the exports file safely. The long term solution is to utilize gcc 4's + visibility features. + + For the developer extras package, I changed the package format + from a .pkg based installer to a .dmg to avoid requiring + administrator/root to access contents, for better + transparency, and to allow users to more easily control which components + they actually want to install. + I also made changes and updates to the PB/Xcode project templates (see Developer ReadMe). + (Eric Wing) + +2006-03-07 - The entire code base has been reorganized and platform specific + defines have been pushed into header files (SDL_config_*.h). This means + that defines that previously had to be defined in the Xcode projects can + be removed (which I have started doing). Furthermore, it appears that the + MMX/SSE code has been rewritten and refactored so it now compiles without + nasm and without making us do strange things to support OS X. However, this + Xcode project still employs architecture specific build options in order to + achieve the mandated 10.2 compatibility. As a result of the code base changes, + there are new public headers. But also as a result of these changes, there are + also new headers that qualify as "PrivateHeaders". Private Headers are headers + that must be exported because a public header includes them, but users shouldn't + directly invoke these. SDL_config_macosx.h and SDL_config_dreamcast.h are + examples of this. We have considered marking these headers as Private, but it + requires that the public headers invoke them via framework conventions, i.e. + #include + e.g. + #include + and not + #include "SDL_config_macosx.h" + However this imposes the restriction that non-framework distributions must + place their headers in a directory called SDL/ (and not SDL11/ like FreeBSD). + Currently, I do not believe this would pose a problem for any of the current + distributions (Fink, DarwinPorts). Or alternatively, users could be + expected/forced to also include the header path: + -I/Library/Frameworks/SDL.framework/PrivateHeaders, + but most people would probably not read the documentation on this. + But currently, we have decided to be conservative and have opted not to + use the PrivateHeaders feature. + (Eric Wing) + +2006-01-31 - Updates to build Universal Binaries while retaining 10.2 compatibility. + We were unable to get MMX/SSE support enabled. It is believed that a rewrite of + the assembly code will be necessary to make it position independent and not + require nasm. Altivec has finally been enabled for PPC. (Eric Wing) + +2005-09-?? - Had to add back the exports file because it was causing build problems + for some cases. (Eric Wing) + +2005-08-21 - First entry in history. Updated for SDL 1.2.9 and Xcode 2.1. Getting + ready for Universal Binaries. Removed the .pkg system for .dmg for due to problems + with broken packages in the past several SDL point releases. Removed usage of SDL + exports file because it has become another point of failure. Introduced new documentation + about SDLMain and how to compile in an devel-lite section of the SDL.dmg. (Eric Wing) + +Before history: +SDL 1.2.6? to 1.2.8 +Started updating Project Builder projects to Xcode for Panther and Tiger. Also removed +the system that split the single framework into separate runtime and headers frameworks. +This is against Apple conventions and causes problems on multiuser systems. +We now distribute a single framework. +The .pkg system has repeatedly been broken with every new release of OS X. +With 1.2.8, started migrating stuff to .dmg based system to simplify distribution process. +Tried updating the exports file and Perl script generation system for changing syntax. (Eric Wing) + +Pre-SDL 1.2.6 +Created Project Builder projects for SDL and .pkg based distribution system. (Darrell Walisser) + + + + + + + + diff --git a/Xcode/SDL/pkg-support/resources/ReadMeDevLite.txt b/Xcode/SDL/pkg-support/resources/ReadMeDevLite.txt new file mode 100644 index 000000000..d2cd793c5 --- /dev/null +++ b/Xcode/SDL/pkg-support/resources/ReadMeDevLite.txt @@ -0,0 +1,12 @@ +This directory is for developers. This directory contains some basic essentials you will need for developing SDL based applications on OS X. The SDL-devel package contains all of this stuff plus more, so you can ignore this if you install the SDL-devel.pkg. The SDL-devel package contains Xcode templates, SDL documentation, and different variations of SDLmain and NIB files for SDL. + +To compile an SDL based application on OS X, SDLMain.m must be compiled into your program. (See the SDL FAQ). The SDL-devel.pkg includes Xcode templates which already do this for you. But for those who may not want to install the dev package, an SDLMain is provided here as a convenience. Be aware that there are different variations of SDLMain.m depending on what class of SDL application you make and they are intended to work with NIB files. Only one SDLMain variant is provided here and without any NIB files. You should look to the SDL-devel package for the others. We currently do not provide a SDLMain.a file, partly to call to attention that there are different variations of SDLmain. + +To build from the command line, your gcc line will look something like this: + +gcc -I/Library/Frameworks/SDL.framework/Headers MyProgram.c SDLmain.m -framework SDL -framework Cocoa + +An SDL/OpenGL based application might look like: + +gcc -I/Library/Frameworks/SDL.framework/Headers -I/System/Library/Frameworks/OpenGL.framework/Headers MyProgram.c SDLmain.m -framework SDL -framework Cocoa -framework OpenGL + diff --git a/Xcode/SDL/pkg-support/resources/SDL_DS_Store b/Xcode/SDL/pkg-support/resources/SDL_DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..f15a5e78c092498e2491f71b174b5ebbaa0726d1 GIT binary patch literal 12292 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

T{gzDiu~PaoOMh(5q5IiJqb2 zxt72M0^u>k=x*@feFdJ+e=;Y|GZ98f|MH*fD;bL#4Cr&mdCCw51u@s(V6?yxB9Z)u5@#T#FdbW%y{Zxe}i* zXN7fw@t2#S)>yRC793p0Q6kWCVWTLDp*DKQ>C?O?(lpTqy>-UtDhGvrFEillynK+W zUMO2u5aAg>{4IxarmfAId6>jKgIW@SmqjzxgJGSL(?!}Ap`aE$lPQlU>|5De(eB@5 zSh^Lv@g2FLg#6=6ur+%m{G3KQC#CnT)VCh1OkV5;1QIL&52d`C=HWT9=E}bdvpjp% zc5K$gJN(TJF0vy~oi%bKlnbEQVm;Y&=KV zSs&4tIL+TJA$yLa)&3j*cX8Fp($%n=$tEU_SOWW0?WyN=#s2#+>tBc+blS?4c0^HI#N(Q#T$gyvnTtk7 zw!sO5u>)IBvd%apBH|}-rn!5UnbWQ&^^EJ`g^6~kOBC#9ZZqFk2jlQL+9rew>+ zx>^*dZ#0%=Nli!4i!Nm6a@Tb@{d1Z{Z7vNJw|q@~W9u!c*j}hocc!RXb!A?3T!0ld z>xqOeHLzcOWHwn4PIWTwZ9G9cwOF~h>u7w zeU~ajrBu}FD&ng%Q^sS1;a`PNZ`WNR-k&lu(zEJZ8P7Cw?6|A z5Wg6R3MR&F^dJ~JnvSr%x!Gg|GIQ4eAf4U}?NLVbvy-=^z_~K#pEQXwOioi3@jb$X zG4tuc!^lz7cr4-bRD~j-rxU`+2G8hXroY1?q;yZTg>h??&X1S53c}y*``o9#vn7QN zZg-wKlk0oQWzpj1Ph8j3ol#n5@iD|XZ32UqAhkN)^s+Q!Nd=zh+jh5~mFx_Prcm8k z%=dl@Rkr0Jt8>a*GI8K{M#)@jnG7$Wpe3t*x+N?~OI!R_g(Jgj(Mckm98Kd{T9O;n z=@<~hEFSJazY;x&5a?QeCQ>1hvRmQrN zr=7;c^6t4VidP{PGz_B`v$i_IH^Pgjqn99nU-4O=pr22^bMIBhro+8gCm&(_{)f(A z9ftbRn7+d3|J(2b8#=TT40J29*MI5#pa(>5uf*=8g|3(vKH1yuI2AmnG&4tJ!t7%- z!CvljEMS>s^J&eRkLc}ChI8?;XK!tLt|0gZ(q!UNqH>l|DNd?ckT4=@pkX04c~OMc zk#|oFet+ltd0F?p&Al=J<)CE0fGtf0{+zO4ae_Nj%y$kREGLazNE@q)@_;-XUQ3ZZ zN~){z%}F(R^*obAx{c?=I=t)uu=kcxZFXC`Fr_U;3KS_VPH_+J(%|lHB|r!k0wlOo zq!f3T;!g466bck~_hO}3affff)BWtd&$rL`-Z9QQ&iCiN$4Ij7Ip@08oY$IJD?euL zrKtP73qH*yd0}8+nUwb=BvD58Q@>2~b6F1Q1I6!HoP@QhBv^{;dAEku#&OsRVBU{; z+u7?+2h?r)p5~oM=CQd_OtNP03W;m=DJRo(;cObjm~riEfzok4O3 zfxqQhw4ze&DxLfB+<8V{#tG=>#_Ln@U&u}cmTYh#;`CFEg^wNUmn--Amdfr|wK>>% zgVENNTZdOGIpE;oX=}GJE|;qnf1YW0|8Zwf(l_d*bY0PG?><_~d|hkX#5UGFH+SA; zDt0v_ayCr+nrESQ3*+iAF-n%w^QVHhsb~K56Jb%C2s*@1rpPpoO_Y8!xaG6A_TOyi z2u#~POxXlP_VjjDAo&F7VO(T>|0eNXX3?zP-NwW>%;S5TmtGhx4bs%}7c6XrNbLR+ z?@e9%BiP1mypQHxIjBJ;DPeKl(TJGwkf_@fN1|RI#qUqnj-yGezNKtaqcCeYP?e}B z<6-uim~t2O2UXfw1^MVM=BVm*_6ZLs<5rTezd6OQR_dO?m&);p!9G`2Wq$c71)-|( z>=Vd63uC}GF!s5=7|lViIiK)(wFxA*aG)bt(=4K?k&=jdJ^P=!6KmHBxO zDOUtZ)r`46$7}iQ5SP)oS-a%h`S_^n7ktfcQvK5}96r`!)Tjkn)OItwMhYqMp|!ro zPLk^{u_;MsrexT8ywWj7B0M{^c@cVb6TZKVxjBbfccs+ook3pbncvq!9+LYo5qC63 zw;cxmvU+*bB_=J_#Z8Tg%~k%MYdG9Ow0GC0DeYqXUWJ+>N0b92!@9m?(4uSrB!>_B zR3WoQq<+IYY;&V*=nF(+RV=SpT;ARY7B+z#O8bKxkzAdfpCy0oeo+an;MWOZPtp{( zao4$s!r2A2eqgHCAQ~Ppar&4Cu?{t6Ho?e-izV9A3Gsw~IT3n8$St0P;Sd{7Tr)uS zalJPu2^t+G{=HwCGUtd(7N5xcX}X+mY5M%scD3T>KuBaoJ5R9-E>)42Qd%T&G0Vm7 zEA!2ATuk}E$<*?cSe1nA&p7DvNutu-$}@qGZRe{Gz8J`0K%dx9)stO2@UVO)O01o=v4qzk@|;!>(qp8XWHQB%htPUIdPa{Gp)T9uo@iQ zvM+&|Ecg!&;E%{Y4{IyAT}BRQ&QNh6O!Oq?GEN{W>$4lOU5a(AWWatj^+GO)7|G1! z2QE=gkzBHlek!GEF{2NsleAFx+bC&N#aezAb|u!#V8R;XPIzb!p9Dpg!Z>kz;&}Y4 zM@km4_*XR(>6B+5Tr;u@(AGLh$}hGqsDjyO(R(wG=dZ~LGpOAhMj*TT%irrGKJx`8(X)hvrd9>}&x!bbpFlTRT?ViH)*H5RZ<%|8< zzaRLhLVvwq@$g%!Z%bmXXb22d&Z~1=$IJNXseh6(D#G%qHSsF@j@B;2qSaCT-J^?& zciyp;C3TONMFKD7P@*B`M>#__!EvvLgTYko5K0*naiy<`-+9>7KKFiZekgM;YGzJ!+Qpr6+H|}IZXgC~7Ii*+G~ZoFxSqH6 zBS!qQ$X@%TJ=}^ZG!{t^H_ms!Gaf}(J>UpCYzK@GF zNn)ELJ6pcvWKTl7B+mEdi6%rhI^$fy16SEs_`4pBwlNC>yHBg%EA$b?xp%v3XNPUc zjK0x{F0XPQ3J4DE%T_fK&2i$6J}j*CW;wlMpN{eOh|z1+%Xa8=+`RFq7_dFGubZ_H#7|^~y`}EfQ_T2CvCn#g8;&VlHHcUd zNXy7M#?{jzpIfZ!93xSHRIG4QkCT(OhrA=y2@w^1Njf%DRbe0>4N5VK)hVhkP5xC- z$~4FMAxL)eN5s~I<}~VFP^7gIT30t@TUA~-R1YfJ89U{66k`S`Wgw*^nzHIYT$iP* z$HqN88u$R8RGt^xz5S?kL|B)yXB#u*f{UU)f6A#rA z$*K=)$i-<(x0}V~Tb18Vl9t|=EYt*AawJ(@NyVnLmRw=EV>orsjTc`)_vUU0agm&nO?Tf_FrH{H2+hB!ns^b6{aX7)~J?%DGx->4Gp`|GeQq+180DNT&S(R9l0 zb&Bnk;YIn@G^JfvA+nP%%vT8$0u`q=R3|Uxi7Ahs)|H2znAg?#EI|v&I3F!{?c$4-Ib$5mYny$K2r-N<+ zWGA1QE14PdJ5;w*cDCI{O(?e=B3D<2yIzJ&&5Ljl0$P&0L@Y2`tXwCiJhV(xL>H74 zsNzp4;*q6O_izcU7^KKgu35{>3JKJUa-VRFbJZvgM{1MWC{R^Cf5hR~c=~3v1meJ1 zo_%TFs%wGJByWHy20Hh+`54vp#A=H=_LF5ON_7xtYR7uHwZpk9vqwh;?YkdS=tAnA8bf1O~6bpGsc7h$#krLXd5-vPa6 ziCUKx*uwy;k_>ym+z`u+d7DwIF30PqNNT)y-if7SqvGrrK1X*Z(b*ud3S_J<3DNh% zd{TTu_KJN8S}{?@I~J5>BUM5mqDkHu8{MMdj$EGIIf>KOUOeQH9h+5}!wS>bwd%E+ z+wWK*Wv^>?2{8{42PW)1 z6J`t(AV>4|+>7sG2%GOQaq`k}*Oy{Z&Bzmc&C3<+Dv(3g*FV}sbLgH`b@B^HE;$$| z3oFbesVO?DT_~R`CG<8ZuUy!N-mN-Rq%7n{luu46ws@zKbKReQvvV=BWcMeNTAy}z z04FEc=Sr7~oc|H=zR^i~3qUbmb?NnlvgFlNTBv zU*sZR6Px7vA}lsqpF?8fqehl}sbuopjC9@zK{;1ev71fR_;+0KKIt+Mh90PbDIueX zZdmO^eDDV6+_P}={4(VTWOdEEf( zROw93ffL@lgv!Md);Zd#-BbMggJ74--+J5rb@&ewlBkLB{W8OT=OnQ8+InTqQWKB; zBo4N%M+SORzO7ecB3r7|e`!!`{Yj~&tQJgM+cIT1E9UrHm7O;!kSr^>^4C~9J{;O% z!>9;c8U@iSYDOD0PBsHQS*EDorJOcRF+Cazt74G1R2V{|9H?rELc3r%C*e6snP7=Anx%s|joc^mbB_o4 z%=hJ-T{MnPLn@K#yyHe;pizhuw9It;Mc`r}SDNePXWGxrU~NN_xUNJcyxl^nZkEpY z7dTAOrd?J;4EqW4Ximz&ag5KE&NYU=4?RTR?bs5$VVs&%WSxtTnW*j44`#W~zE-qL zINqN$JU7%Kh?`n1s!)+WwW#{O?Ka+`Tc_Bi{>r2muVCH;}X;UpGHa3pEc|A;luIGNJwqH|6}w&6#U&Yw0n7ast4p9P2q&_5}Gco+*H zivZbJngVShHsF5?g5$3s?tNkZM+$Io{vDYD*cO7Ypm;D-14vogAixgy4k5r2;QO=^ z5&4tZ=rX|w?Y?ko?ibg7mq7wlVN;fy9q})o5fFUEWXFBx&sSaT6aR?C{q2wKV1#4B zm~fa>;{@q0x^!R_N0o?eHRM{DG@-ALRuA{~q($^4Yhg`8tIa%~cFK2hI?D66W^dcW zu)n(QM_gshb(fmST9JxkKB9qFR$isGxp)`#%krz+Yryi3=SXYWLB zuz@&AFO5A1-kv>=wPx&I;I`&ia)oTkVj(Axp!EtrQdfe?Wg6htz331I3Zu4ouM3D! zn`Q-CLk(`+S*RPlrw?zh_5?>G=g~yz`vcaJnY9leXQjuiwUdCXgll>YvDwb7D*b3Q zS|#);c!UOnP{adsB{;U;xeEtOBVDuB}%bcLFs_IQ(UEc+ZV2h+!q z4S*k*b`bT<6NNIUsV5ZSuTauB_U2$wN)<|BpmG+~C>a|q$44S&&}glz{L2^6^8D}+ z$ckzuhYgd_uM-JIgFA1Oxn$B}-xNGUc@B}2ol)qvQhWjr;tWtTx5iyjb71tpA;l+& zC@iC(8yryf09ugdmtFJ%=joSG1c04offBlt?YepHlSn9!9;N9$-U|KY`?!OM z_aoCgJl~=$zc!-tC8iL`X>7SDxKpYwgsIjqepsCHu?|03wb^dej#&R-WVTMC*Tks47#Q^@*z@s9mkqkBO`W@<))(3 zRgUxCCr|Hs_|;l`_Cc_sr*Dn27^fwX)TK$$ASg~}Q!-|uNl zVOR;o09*L=23t{Xq4tv@CsSG{IAd2h?V=%V|3qU*oj;wo0cx;3lgzMjJ1a}uc(fzQ zBAKqNYVHX4S;6uXVB60utI^3C3$}%AOEXMkjTbBGP~$Xv;X~s@)01B(>MxJaCdcPV z%-$7R(BYWpyt8#s_#pHASV<2k5)}P3@0-fgm%cTAZBKe$Jeg;kw?!`!ao91KX_C;| z#sEL*IK>gkMHwX=r+Pe32y9Wq1M0TvBx)33L5BAuuR9j;%<&JIQHOvzuAe3eUIh|+1+cRYys@SZX zV6*_as!L897dCg&Z93*#r(x+3kn)kymr@Ga$n9?gpaSM>WGSs!6b0f$V74FLlSe(J z-QQ{~#6%`oN*;xxQ+gC(mT;CylaVBu7SlO>BxUHU7i&4%9zGVK(=Fu`gL3{6-B#@z@#mHjS{?K&;+JGE zQ#0{2<~8B(rc8JuorVOyN&+T*2l zsT@4|sGPy%Z~K9k&CSC9AP{1NLZC$Mqw$sStku^@@jzfW%4=J%%f{!x5sYc9@?xcU z^1Ex-G5sy*`E#ht3KG^n8{cUZm)#Qj7P5QHis>Y|h&;5~&y92lFo%4Fku`)9g&**Y zlVUvZ1~xsi*5Ec}6rW{fM^0nofWmA`zRbWKIhbkGz2DMwXOk_wy1(_s!01|#tbbCl zEU{!75FdAnJ(n;vmr}Q$&@^^??bUa6^t4Xs?)}~Arm`To^>%xBNwCPcyKUlGvG*rA zPr%P-Qw+GIuPsB2F0U(Zj$H>eTZcoLT7}D^%ctBrmki5yzicoW?d*x@P94N)e-209 zzqnes>36=~*D_cvJ2P#~$Y^bBkm@YAaC9^np%<{B%3%aOk0~ZBXdh)Wcd1k><1iv{ zt8&}#WZ|*+E!^U@c#CI@G(Wk0ala$|`%fnhu0I4-Fa^ID@d_&L=98p*_(&cM}KgqnnjNxJmWzXG>uC# zYp3?7_@S1dGKH2~u=h(1e<8~aS7W-&Iw338>SbIX}j(+#L6Z+R#|O z_ioiv(*D(A-&yni+0Eh-zcMlk#S_WpsN2KLoYOq_zVhgG+>UT?RcZC$&VpHes{|EHFu|=sJTJ><42}kZ>tb9=*T4yS@#Qo($ioHj+b_XSc^jcDnZuuurZ~ODoV@5(S8(1Qz7W{AWz%FkV;>(b z(k>PpX8Ga4*^1Tu1()RuMd?TFVvW>~Sw}9JC*;(qnVV$!!KD?SisLKJo}e!~AGHkT zU$C&}^w4wXm({n1+H=_zEPd}O9#2MszHiH1jtukMLz_geB3O0^94( z4SSY!=uDBLhnPu9PVMfj^UvwRBY2OYT7$@4d&q)X;~86S5{t0=$=+DqySoGW*!}MC;N97-sNL`373Eu}wV(Oj;Th*UYlTC~tNpJat=GTir#1lw z*BffCk~9lyot>l8&kFs$D9qdYW-EaGU-LdE+3-8Z3Uqxa!us2Ikl(nv}h z&exbMp{c5-&$$B$iHWnrD!N=u0oeLqq> z)IQ)mq0vf^Hj$j@bWme2%-ZeTcf1FS`+g;Nnr+dt2@L(W*CE;FGXT!yE1Ifb@6Hu(Y$o({GLcrU-x@i$mA<~n3U zF|EK_Wh1*t^a)P%N5(hdXz9RL=+J2TNSGMDpcA31u|V11C2Ei9Zif~3#V6z(<>fii z`gA~q-D|Q?3sdOWZf z4I%_f@lSJv!$c>NCbEm^G?k0fjfDG#a#2vdkTcq>W1CiDwb$@2Y8_qok4kdetEG=b zzSUT{JK8$7L_6p83)c55FE0+IH>L}w&!v+KPYG)aX{O5!Jsq+fDtyK-YiPc{m4Bet zDBoz03GSsStF=R=x?)_P1U6Z+7SXEb7YnV*C4XQm$!plm2M|vzsHa>`|!ka6_0Q;*~ zthFfkHr}oPYIIrjQwLvGTbIwAzHw-@hw%V!kDVLCbVR{J4(v1GA6K4c3O4Yed}_je zh812(bXXRMMk_GDZ7U!ek#KW_mKJ_|{jn>^PJV{XmZKTE&5s9J@2zLSzT9G(iP#hI zW${J;tlN_-sN>t2kJHULc&~i7+Zxmj_uIr}{Hx5TJAx~0JqEtAPcO5#3N^rmd56-v z3>A*3QllOO;ximSjwu`7c@uP|y?x?jrycD5YMQM@Q0uq)%$o)fJ+btru52SK&USp! z;B_+5b?Z$$%SpgyV;(}*s|=nWPC8p>oia|#{-(vTIDV-1gEcD=rdZW<9{c6bg71)I zu5eTsejWz&H7*JM^jqRg)nb?MH@>n_wAQj3Z<`j4*`{%C+z_6IKUNWSn7Bj}`Z?Yf z>iyzwV?oE$0yi{hIMI?^xjnw}#urLrU%pXNf7jJ<@$Ow)GIQGaxIx0uyH-7CDV7PO!SFvqriPHlT~v;(|<^*{$$WZiD4xZQ&u68s8ik`Rd=sm z&8i~p340i26y0@8e!si%!F$%>T0Mq&I(AvpXyn)?vGCYmkt)ow)FgHQ*0DEZWaK;e zY2hIM)c1or$RdL~y^;1@eG7ZI)GwcEqX_Fhsgkz~;UFC)FAT!|8YQ3z5Qa{Hrt9bL zs}&Vb+b8bCF|XT$?)v=rlfuswFYkn$@UdXOD^_arSFptbnEg3RGT(yX_bkck=>^*m zdYyTvy6k@aSO#=~5yR2Ca=|5={E{uLS(~Dl(cjQDQ0;4Bq)E-s)yZt?s*NSoBC>c z7=rS?fAB}8hFLV_OU%!gh(}46YB{u>>cTsfn{P|=4~%EjHMR@qY+o_-DXn`)bVb)n zE&w#9sONX&qI6>3*+H(Z)xPxfZr}AeO?30vryra(W6y0433hM7ch0X!=tOoxcKNyn zf&gg#xoEO7$cjkMkYz1&o<2g(hWZp(jG&M4gw=|F=IDJfA)-U|slsWj+N%U_&f=L> z(5bTEB)g-S;z;cW*~jlrQ%QBAXw#P5_iAohhK}65hW6_dUbE`^2aPjlKZ#r90>~Io z$#heoO|>7Da4BOqZ&?yyeI}vziEs9`n`#IX_nqh_tIQOtA}Q>8oayFr++*68n-g_= zH{^sVgk)gK9D8j4*28H|i2~Cg``y$Uol9ui{ukooClU4_cM3Y}1l<86j5~t&cD^MQ zM_&r@30N(OcE2^z+GY?yl*)HqfrE$EB&u!-emK>wwdno ze)@T7Mf=**OU&+Px5v&x0CJ;_4t?genAfMs5+>tkpQcnn(+rYmN`i*(NEMCI;9DBv zwNJ;i0puB4`>ASp=QjxzH_O4~MOCXY3*}1NCqaNyn?*SfH^rM7l>~`*<+_4dEhpW0 zQ^cl$S1CzrrrIFL@0jFAqLv!&Nfd?8n+zX`zGUh!fAlPcOdU%oZ_MMzXk|`)Y)NtF z3zx{``u&b)AM$^0pEXn;S#ORm6%73xQX#ro!CZScTXL*F!|Z89%tr-_wMg2WZ_@v< z9?CkzGYc<6xij@eFtc#yXl=XAu)60Lcig#T3Qw{+=I|u*R-~l9ulU-K&q(`Y$YE?0 zk*0HUIjTtWRi{$Ihu!=!7uIlPgz*#Raq3chhbxayZoKT0rpY|xRM|t2^%y-aX7xBl zT26e;4sZFySE!F@0lL#A6!HN9)g_WByr`@!ud02kFzSV$`WQu{>qP&Ie7!!ZR21r* z_e9hn$t{P*AA`=0FK0}jecujUu5Gd9IO6RG0eWS%nd zbtAjp3Hw!n-bLRSdGXyiU%cL>zn(m4z^f6yWK|N063W`BMVU%L|D32H2RvFs;jTS2OrKAqi{Rlwgi484!uCne$~0aNTO)am zLy0@mn5K>^Mll?%jEN3A?IWE;cG+iIvMwI|UHw)DwYFxrx9yU`K_(UkI95#Gj7=p4 zzI@yPH!y0uKOcF$Hd|!hje=5)M5C*v(jQykYvL!Zdd&EtA}%8dNvPb;9ifif_$4!n z$}lTXgGeqXQ+$F3*}_96Ka~bcLY|A>6lrXROB>nmi_7)c$$Kh1<>$92GwnmtKRl{* znrrO$zV!{&gaxm}3h!-~Dq>#=2ndS0ZN(`I2+q>z-VCd5E;qOG9lgg8NspMDz-D<9 zGl4<~)49ZO)YyEhgfF!#*EBNvbGH`Zp3nHx?)j*K)#C`EQj!47uRQNZ-Wc=Fk{-A! zs8do$v554)Yr&V^b=YWs<9GFr4cPDbhTvC$8|$$I+hm6Ok-4+`k+M|KDPjfZB-MS` z`TYBN`nT`5i~){(b{IVA=j!h^FJNcEmdd$Q=5s*4g1{msjis@B1s-c-7>iNDagL9Xl^LRCq_TScM z^NY9z{4_-94L{JeBBe5`Mq^QgO9EeC7#Gr#56DT@n+H2j)J=qZLDT-~8p&wl2B!3~ zQ#|s`8E25l;by7NZ(jR3{Y@kddum0F&(Kr0xs(9=OyTl|ETYQfY5r}}(X0)LJ^bvL zGe%Ew&+beqO|z1ZzwCN9#wH zu0Td>8?9}Yx^cM6w*s%n`?<9lovC@%aJG5IU7ThGW0f61nXI~FwbO05@Or25Ba9G;y^IxpVeJorV5Vm@D!Liy)^^;cm zP7hMG4(Ap|J1HS6iBt2|fV+3}un4y33wl|?heE0QBpi&(=}|g-uj)RS-HEVS3!TAK z=O6-Cbz$M5`D&N|GG-|XV)(DuCy&1Mh`n0OoaW?PH4M;potmqi!x{-<#8i3_Apceb z^;hkW#~nFTq)@GopM*=PP1)dN)!i`MW7`f^a*VIJnIBYIG~S*Xl+BatJkfjQ`8td= z;Ut_%HT?2zGaPJ}CmsUYo#}D5Ey(X`Wq$QTb2oT~FiZ0$!L7bQ$`A7ql=X-hG zKFugUcdt5_SZ9uUR!I6mS{O#b^!?T2Tx0W{;mR87#81-d#XHqe=Dmt3rhFE&eu}>_ z{B`%uo%rQns@cw8c&N$&A!AKlE7EG84bIkp<=KK!o&x#&+j`_>WD#)oaKzThBS=(k zZR-ykXH=jc($IPC+}i4~>l#oT9X49jZTwlqH9Os@p2YRr7lmZeM|Q(zha1h!Mq-fa zFDE={?_N>Jl2Ym(az|6Ii#0^D=B>3?e)mfX+N^$F@+f$~ZbhMC%`}p!MyoV%Ovu9O zCd_$b<2R~Nev8y}iM5s{wDQWKYVd-|ABgT<%$I z^YQ7T!yr^XY3@5NhSC6T>R=|TDN!Z1RPB>G(NMgvuMIpzPug064^fzdABcZNOy?C*`0>76(Vt_x8%69FsV(_I2fEr3#qN| zy7X^O*3!*z5KP4ygY8zYIt#{|rhXu<$c8U_e@inZ;S4a~3^GrWM1)!9#%=KES?_(a ztqP0YctqrQxPg8;!DF7M3*t$NwGXrICLwNMG}1j$-%c1`GTKjM!!cfxh++dXe)GIaG&BtPc_we zTpX5lcJHNJCOKQ$k{%3wno{0bKK;$I?^XHvu6@D2sER^g*@^G{Z_gFmtn;@Z?-gUA zarFy$ty1GoBYyd4U25IWmG9bHz`EeQa&JErDr<|FX1}h~djk5p>vu`*#5}nUdvT$t3A_l1-#(q8a zsK}X;Rfs~a=LVM@(h}srlV%rwtDygU(;9F|p6@wgZSl?w$Bwk7-n!<7d#yZE362Xp zRX?VwEC20e$TSeN=iQKkamThl#&~Xz#6vFGNW9&;%=2=QN54esh{$lCXVhO;k!jvd z4;(&>4q+TH*<;N_b0_v3xz%6EbTvGeK!_^ZwYuuB(di7%`0igI-dEuq5e&aK7ggH4 z;F@Ss<%6^s^1-x5)!^Y;jfz^2b`vUYZ4Xi&wa#otD}T;_CgXpO+AV%!(?I@t2O6;2 zMjlc-;kR2Ph9_)FFe+}*TF5_#;z6#n&FYt-`wJv-D<}M6jJ7HO%V94oA00BSG`@drEeql6qfC)~R+?k65yw%3pqF8M z+f+3saY1o;$?lG{>spO5OeS?@U+p{2U=?5;z3pdBSs9v_;=J-|ig9icOHf7s_xkf6 zr?kIue|vcPlRa*E<`K4?a2D4!J$18i>mACO5L9zH`Z?ojXqf~H)bc(C^jLMRi%7`O zm$$;&TUTl!`^~R%Et1yP>RzXBM84gTcz`oGu7APD(oNsBcxf z7y5gN!MRPDo_9GvwsCo%KEkK9TnK$oOSj86Ei4hwLHwv>tKINexk4|N*s8s-O~~)| zgJY0`IADFjF(jmm;lxTg}v|N2}n6goy zA2Ex~;9S_l`YSl|F7uEcS`oomo_!IX-;}<=&&!yBE4(+K-Q+t~i|L99K#!nj`W8G({EXu7o;>9}%;nW^}ok9L0(&GaERgbaPJT zk{pBv+zy(#n>_9XDcfkAGanCy?rPfpG_82t4hgv)imSRNZWm=d+@}xn5Tf*8-Q;ai z;Xfp9H9C*8QNBLv1t|;lpCCsmGeRy(ei!q%9-ys%hY3|fak}ZeRQP}3i843o9yjHs zo{&I{=nf(>w6LyL_t9Rp5jK@?ypXsTE92wjJN7ovgAvO#O-&gx zd4agMnF-sC{x~+`?u=372kJoWL2F_evnzF)IuX=Qta7TNMl1}y>V6Hrk9tR5=#`r@ zD^qEuR`Q7#<@VlqMk-8(272yhQN82LYaS%qlpa)0BVXN@pTOm&TIF+9A5P3PswSId zM!3HfV?O?=YfM=4!=9p5AT}M@i!$mUPH!9ZCDFo-0)p89NxB{alkVL#w z1~fyVA7d1k)5+cd+=Q6*5&ty=QgLVxYI*FdE4r!>$2?Zk?i$KCO{lLK?~5*?F%Bkg zRZKSGb__Q;7ND`0`?^Zsl>_V$yQ4rdD8L(3-uA04|IbjA6cKkdBt zk}>->IlgsmhjxCRms*s zvvr(cL~0%?Pwx&Jxuh~96GiI2^<8du(-$sp1Cyv1DYYN*wdGnU!zJC3qx!}rc$tVk z-fC{pys^&3>G2;|5c|c{zv>cj(-OK?bLu45$3dlL?HZ=@Wzp;^r?%l-f>HkfXpVRz zMOOMYH9=0(IRxz6#avQ|Q~Cz`Lawh~<2192lTa*Z)?H{qm1$&={^m`&5*{7F;NM(XmCgi>KCP(C~6Izb!N+FIK`cCXO`#+ zp|4SssWSCBnNfSoMr|eNT9)?x77Xy@Wo|gi@@)Plpk4V}Pq@M%Iv5i-4p>uTz~m8Q zA6nbXx4rdtU+ci5qMq|9H0Jh)ji4eaE8Y6FxBR)Gt+NU=d+(Uo*fzimIiz$_nr77uGJ7BuCFKIZ*m12 z`N~}qK6_Xks0>)tipj4Vj#2Js3UPT8-Mwc8a$VF(?k)a`DUm#?mnf#7gUN^hQGOeG zsOJHW7N2)dep2&$&U31*ITKB8akVSh3+Ks{e-q3-7Q_1jHs*sdr5dC;PxzT^} z&?VxtRpIAyaVs+orCq(?UloE}dQ_DVxI=_ypE9i~VV#~}aaTVwJiGpDb&{rejjri! zr)!P0v})SHQre9F4prmKjI0bw&wya$)1x-#CtpdUnQQ&ut7^0r_?sfj`tC$4&W?>q zk22QI`m4NDCfBgAE|!)EB=mjK`6S~lIZ*#YO?9;}ixyhMB+q8`olR>}nvc$L=2<_i zWy#~L@yrXppSIsvH9WFhP(ONW%3S7k*jn<=BaT=87g7J2X`GoOco*#XzNXuR>x}&5 zMx47pqV+>SPHX#*XeS2CXh=fDUX<)j&3>bG`hfDtCf&ZmBQ4o)cKF&%cu07OGIwQI zITSC|BT?wUD!f9mvdzEWJob`7eJe#<$@X&QyRV<+7p$=;3?9tJJD?sRyOv{3}wy#Opr@;n8AUQ_XfCLEv}by~ZS!j@4>$JnotTfde6whsNl zxA+bATR*i;HgpAgjkUjg#up&E9KjbRx-xXmbQ{R&^2$3Ow(gnQ$v3zn#QKB$oKB>z z^*2o6GuOs9Y0~&iDRNZV{5YEXwq7CQYouotGe1wwZopcVg50sn4sK!R?vBk8aV!E; z{Nmqe15_ypC(M1L(WlN-pZoL;6rT%d?V#=}%3fmQoGo7mH7iF%65% zg@9+i?bii!@{{wsfx*$QtIU(a91!WSDTSe$;N1c<6<#ySt(hJ#8qXPy6bai}S^Hqc zov56iq|JsoXw0!}7_{T$Z5wTE_I$FGR&SzFr{#AI!{`!pU`CXIsCn!lR~pXq!*J@9 z<4T#K!P;N|72<=dW#iRXOCz;Vgmo?{N|?3W!d4|SX$;=_@GIu(o@g3blM)^9Z2Y!T z9e2HDgL=gWb?t2%6K;;4lb1XUELF0=D8<+wEr&cwv*v>Dv^2T0CN9WtmM8%!@7X}y zz$f`CgE}Zjs;EEu^970Ow+J-$2C--sSFdlX(98My7Gqv|frQ>?&>4%Ry+FZhwmS8n z!%H?s7vyMah?>WPcHsI}on2)4r{X z28p`MKAMxC#F37T0-sZLD7l~>=l*Lrd7&t!MgD8C^hOn!K&+=>8usZTGi- zxo7V8h?MS6v@rZ)ve}EwsKdj;3q%9pVBr{1H`(Q9kdq{Lo#8Br=KOx_4{U#NQAx40 ziGjw8^9#+2T0AjtXEBnmfP6%#iy~9#D*S1 zRLpPHiFN|Lt)19aIqqTJGGD%umdZW`6-s`?D1B<|h;2L%GArsswI z-9H&2AOf(k4K}fP_71Wp~?-#FhM)Znabg_lK2$(DUUq>Qw^3p?h`m?U4ukb-{e$Y#We2yas#)ABMj88Vp4-J$3yzDQ{5+qBI!m)Csof-xN2O<#0}YGU(;??2Z`yc2h$!z;ez?q-g0g_Yt@%vz7y-0NBl~G3mcf^l~;GT5u8Q&k4tC7 zha1?{VGMpTnH8diF+(c1bZtlr5WIx{P-XI`IF^Egpa1V7lYbV*{-em`-s(RUnfz;6 zi9uAKRR`M($+OFky0jq_t!BK&&pY2NOOlW8KI0qZdpTYi85eNZQc0Vm;)@w1=$ziP ztCTiEcHWo*jv$kQ#&&>P_=D}f7V|IwRV#ZkXG89ruBZO#8wTb%Gy41Dr z=?=V_=e*s(7l4+1zOuR!{(Wn{i>+iKL_N%vX=m2tNw~Ak_U5;RAcFDdYfauF+bFUB!C|-bAKK0km@8OA@1w;R0_r#_vvq>u1X*E@bU7)bhz;m5getFVcc% zWn2km*P_I}OM&Gi^jxRtm zE!{Fyi%G8ZBx0a91r91a2)9p}Bdht^UASxW=1XnF4LTcA*3Y=A|Mx6#-q-a0TUie~ zH!m;uUq!=;U(-`Gk=VQD5zr_HU% zrf4S)wy>0Oa{#NmDQTFxS)1~k(TR$n3yFg6D}GsAKz1zV54Emv3NYMMm{MF#L5fmT z1QT7zMZg7W2L&TQ6fRI3TeyIWFx^8R0b97hy%<18@nC|m7N*ltRG~n?U^dp42nr5X zepYrCc1~sra|aL<>73Tf%IG={VRq`TkX>`!70n4qhHQz&|+q?~26kUl{+lKS2$5>ga4mL?7$2UiLnRvsQY5h1`mq5tC6f4ip^Fa!*40kiwh zQ~kI45Bq=L3&>c)5ikc=VY>f*_7Ill|C>Cx*ZlG1zA2#WU>{7cBm#s>I@Lic~C_@`Xc))FC1$MN4ElMCp7!>|kJ54V`;|5yM(cG9v?$bX)Y zf0#o6mQcw3(g3m(5O)CIm(PO`U|~8AHa0F6HVzgxehm(G0ZuLf4o)UEb^$iFzf2Wj zW|roz|25M;%i({?_`wC3g9Z#{BTOf2W8(-%IDil^2RadY&cAKBkFmQWA`ECS%S0&oF=s_NEya%vEu7!V=} zR0oR50)Y|$UR5AmQ`*AGOq$;fB+c(EE1~G92n2GeTH7cAnb?32mlzPJ{?L#F(o(qq z1%ayfoq<50Do_l-#08YFma;bCkh1|wYdna7<^U6*tSV3pqADo{)RYv1XiAAetfj?N zb>+mJA<|+Hh=K$VCNJ&`lYan|5CbYo0G;n&suDmh6-gkUvV@qThLo79hNO$LiL?vc zRK|tR{O^~uq>PxesgeYcO;=J3s4H!usV1ccd(b}s{%!cLo&Jk$03Q%2sR{ww0wsY! zXGyicLI%pJ0aX>%faU;6Am|}_8Q^_%s*-<&{BWsC0i9)~fvP|maiF!lxU(b>2$7Ze zU+w;I2owi8t4fJMOl8GYVG5E!pg2%fQ34226&Hh;N{9hvrGd7JVnB$Znivo$C95Xu zqN*h+Ey*EiX{sx!sc0u{A?Bj(qH3uk_5i4fkg-s7(X-?eS966pN!qBoscBf-%e(4w zs)#FTs@hufD7z_Hm}%Y6y?M%AbJ*ZYEo+U>TFsFB`tX|2UjkDisS~a#Z1SBUt5pE!VUyQz)iHdopd?X*v)LsxWGDgyyi0OOy-=*k`}rk z8B1BHyd{^bk`;_e+?rcm%f=3@3)Oo7v^TMp;{e-o%UjvWYeVgLEbZ*=9pMfj9w(R@ z5GX4SRF#zwQ`M9dQ`MCe2P#UK+;eLoDIq2li&mLYjWB1O6lnS>)Qk1|04T8x_tor_c8vD@N^yk|IO$BA|9My zP1RY;$wHT3o*!UiX%G0*?>_7;g873 z$cV@wVj&ST5_)%b5Z{2=xho5(_jLqC)9)tre5piAk_gaF8jjsIGERS-Zp8zd($nTi z?ta2h#U@Thn015AJ1l}u&S`|v-hgR7EoVgT7p-itxUZ6Qtx(Vl3x`CTpRMiz!#ttx zt%AjL51^#fWEw={TG*to4C~xVgSn^SlTpxY$AO{`xpUomYMA=0h|lD_2G5QGqGWX{qjnz|(n;vYqH-_COv-8YapVM& z)2y@SjP4cyd7KhZUR2xdVM=XKQG;^?WUGMTm<^g8iwg1!Ou^@sc>^vv&32MalaH4~ zzltZn4l^Yb5XlCh!P6tZ)t%k}ng~EUL`OqCqddPqI5I)j;~6uqs_epcPPIJ*-#835 zJC|~x`$p3_VL}j>0>!E<>|Y z%Ac(_6A1D0Req8LvRkLox~O|8$F=!%>948lrcZ33Rfq=-y-1fxk(jIkBY2z(&-hC? z9)=`O+R>JE{N}KKqEj0Vv=f?h(I4ksKMxA@p+S=yG?ai$CLWAM16~)uz%;)+C~N~X zdsZeC_#J-^gRo#?>jC=XQzjbelE;oxS;g_Y3kS3O7zBRRp`h*eQo3o7Y~Hc#B&uba z-L!mvjHsoBchp>~OBVopbAqwCt#1ycO@W$zp|Ue70<;cQsK>%edyR_IT49frX5*yZ z<@rn_++JNf5+XU0q~7-|*?iDRc~vL*H407@Jl}v7``h0BW+z?>O>U>?A2;H@YW5Rf zMg)E>sa!>cIIWl532nsF9v*W(QhIseknF0`(RAKz^NfiGEyjT;`J#r}Vw$n#E zE*x;hwr=5rRPwXdBZhUJR@xXdqV7c0vawmzBe{UHY@qm7_7Pgmnj_sZZTMIl+Ty*& zpjpdZb_%cDhumHK23;W!sKV3F5yNBjRnt~Wo^Hv$2%cDOcfK}~Fc%(%G^v&z!x&(t z-FtHgUc9uR7+`r0^TCyCgb^y{7mbF1CR#vYnQK6*OMw?_J&(;wJumN}I5~x)HfrqP zh=nGwbdNG`dIRz#NW3{{IvWXsOunsmE$k`|qt(K=-)VR+?ISc2K;vZIY4OW2BqC1h zhZ~rf*2w^tMD<)4_7I8k4Jc*@E&Iu<@_>S_|ha!%%rwVInQ?me9`fR`H{zaGa~XgSSR&nz^cV8j6NvDiz?k5G_w+>x7JP$fTl zK1Un%&eI3)whs(on=|w+?Us1-lem+re6!TMChxwl`EW&V)5l^TO|#x(@j!)Y#wX8w zj=O4_w^G6eGlEGz@3q%cFj4Gbu?LB)Q${U4)uQ!vzK%st+_c9dxw!t9C;iCqn@>G3 zaJGJaYGc=QHVGHybB)WcgsZ*c; zCWrb1^c`X_AZZBNpjm|xJLXG^-TZRdQe~}*%JyDt%gru5kyB3e9BP| z`pH`#pCZ}JAc$dezrXhS5nnD!=456LCD}FB$h=712`(vsoIpwZFp94t-|p2upftZ(}Y)~n-@3q1YEA;XLa*OvH2_t=%k!R zwQE%tH6kc3mE9drar#2u1@Pj=kiY3DF}aq5Vm6W+dL9Wd8 z9eZ=gSi~$f4b?Vx$rP>j1vVRpQ0IUP@-_=e>d!_!(U@@nnz)*gIKnYD-0Xp70;TJ% zOih{#!)ix&|7<-q%VZ}D;^5>6bw8FG@;4|sbB5aF4t!JZHXiipy@{8vO$>|REOu}- z?FLvwWji3@VHtgh_Z` z`bjm{Z&A%(ffo@pFS;X`~#ja+&0VShmjPWq7JN>9E)nQTzF{szmm@nMD~w69e|t-p&pBZ0CU>R z#eII6e?|zV@=m!9g>V9X*YP_k^4D5;Jxgqlp{OIcEY3e(?}lipH>>TG`Et`QX7QL| z%SAoH%;#%<=Am(-!oG*Qf~|^iebDQ{Oz-LY=3$wZA_==?UIY`7K5D}~qvx~g&2l2! zFHe?$6GudELX9IP#+6SnYP1J^ING@$9!bTiI|PI4btEuN7KXv+5aF`C2wjn~w+wfy z1FUpv;KjW)kLAiOhoncSSgEJ~U|CFUJeJaa}Oc%A-`p@vmRZcb!rJR&A>o&}=L(0J34!A$>A0&ojZwEL0rm%RO|w57_%}mJqVz z@JVj%=d35ak`8v;JEs3;n7*4R3Fz00oq3w&7LLNgPbkUvigtIGpde2ewHr}ry=PqL zGR(wa`vB5`1X;zlz3x0RU7Byk?u|K%G@RERATZJ>#}d$N6nefS2>HU?WtH~`=Mue~kvs%@nn zWx%<%hSdXlf*0TM6=)PK2do}&24ug^E0W(e=%d&pG^;QFo|Y5w`cmu{&=NTc`>nC0 zS4a%i=)zA3o|9;~@jjY%InCmtdRitXMe2?Y^g^_&&O89Izd2m#)rt@()*EA&7Dm3d zz0dRW-5o^0s!eChnkn~Md(Q^rul|*0-~P2`v^xEY9PR%*=IaHBW3GWZD8M#g^>cV+ za+z2xrADRtB9Lmu?Mc?4j8VJ@DveV5V6+z;6N~Pbq?XsNHu(tkC`MqAjOS?N#t<*r z*a-wg_h>Lx@%5 zY-?b*^-R|27GJ2)uU}U61|*6`yk8jiDCV@BPK<`q95yWDSP(>WQr+v(x#YGWCx>=3bBHR2la7N)uO-AVz_*^9&d{WGpNuUF#}qoWJ634Q7kA9ETsh0A|0Ouc3nT28iQIe|AddOtKqWOo?pXczr~9XeswT9w4Z->pI}b zit?8RH8|O?h3ov}@smcNNDF9~1X)B)S8VbT97u=Oyg76qvRv|6+4nuy?#0!-al2&A zXd_q;=ro`t00-RA6XbXZ=JcD5RQ{{(&4Nzcp7U-zej{mAghqZ<-+&0(ABou~Pr{Qm z4hLV6!LZ4 z%C*0pi!^YyA~-s<0?a%ZP~XNXuyV^6PWnaPPC4>E2A1TYVC%L6+(^BOnA~$$ZI8`! zBkwv2hHE3k&SlZtM^lwq5MDxFnkvxUPnw`g4i62r8mqDrbaeh~y$&jH+zs5%Y=;$tP)Swgk%-TU}VM&I=Ck_7n? zZGkc>CpOVs;oNih7Fm~SA)oS+ssnWB(jfYi-vHSzqD})B@xDK%r2jf0{MDzw0lz!; zAe9iaBaIeQ_x^kSh`44ZQdQ1M)p9AzbxpA>fAirAGCQDa2p+E(eP)^B!@=GAJX~ms zK6ybJ#*K3W7tryf%r5CDmzzjD{4A=cYhgE$bJo4S>5qHQFL)?)`^Cf}x+Zx7z%~s7 z4Ya4viA1vkxRCE}4y{=QgZXIKLP;`J-iHTWZPw}$vl^5yJl4S%yxU054!7q}m%V#@HNdH$xb- zh=cE=Ocma!oy%6^p=1(jXmZ4MHPmkhA6?|#$UaWu$qC?sAhOEucM)45IfLLwy ziFzR-hp87t1l{eVG0N?(w<7j&cfCj0+PgdtC7<|k4Q!i$jiq@Zs=&RDhe5Nj5<;mD zoE6ZlO$9mQ(gsnA+5VL>>d-2u@iuSMYy$(`6hjiQk~;6rCz*zDs2jMok6Ri!8`1jE z$MO`eTeuz2mrn_{JJw`Gh42oRpZw^UglQ!GoX!>BA1JOMK~BV~5v{@JylgvGLuhmI z;88_Q=gbG40a-p^FY}mNLk=TQnZvC02NYq~bjGV=8Xxj&{ zPyhs8Yz`4IV71Qk^A<=G&7UcNzY^sP_=;u^49w&XG{}NDqR(D{*g5!MvX~qQvRsix zLYL_iiUf)zstKH4Xr+ml^;#B%>)lL$C{v$MaIrmX+kg_okQ}v$oisuO%DGwPqZBY< zhwi#n?{{Od@1py8YDTsGvmj$a1+q_Xo3wlWgSnUG_F(z^bh|ZcE~a$%KRNe$|Cf|c491xyJ^c8}Et4OMhj#P^=Vu(TRK8&T1ZyIB-)>I%e#h@qHn z#b*}DfV^&i0xSopW}{g&4L}Q|oTagxxqL;xISyX@M{O2B>2rSO_4dr-jb?ib09FAa zSUtdWoX+zIVMe7IydYT#P-Wl!O1Tk$qO8KS6|4$tdMO%$-*XYgH7YgV&Zd%k34+4&QEWVRe8==IJqAFt;v z3m2iVyTtt+zh6CF*0QpH_PuzpN3*)g_w@e{2jy?6olFKDMP!H$UYre|&S%QTGIdT| z*@_oVxh17)hZuG|TISQRrDfb=n>H8u!E#nLnhkoNCGNR&V@EKNrKJla!7T%O0#Bal zCy&iEVPtcXs3bBomJ+!ygRokTQXv;g$GzPn+%g@TQ@c?)*SiQ>@Y*NK$20v}a^~7$#0+`V@ue~>{qhs6 zIRGMCBt5@S^oeO*h+U68nwWqvKUrciRm8neeY6c*ACIc-u|Lx_chzET)@u7od|yy+ z_1lijZ&GkbOti)$q1O)q+o%>^?xHCvy=i9sM{QcyudaJd2%8@V-E&A`7@p1$N~yz( z$Sol|ez=Y*!=$KJp1v@6FuuqG3p;4*&B}iGmoAfayJDJ865}E3k6b zq-e8bS%7vtNhAmG7S&5-l)g7G{5Vc@KH#qA6*5T*F?=kh=bH3dQp1$KymAu4n{+p!8>>jh5O?$chpHwmYK9GZK)fw5>;U+LDkTbBRp+E z)E-u~aL89m=HQXsPkH#T-FUKN9b!!8u@R~8N$RGPTQBAvPG875KrPCMt=UwJ)DB1Q zXJu2D?B&@o7ou9K*>wnlzj2a$jUN3Fn8SKHx9rZGC5MyI>*z$5)#37Hn&8^q=a(FEAl$2v~HUs&@J~cCQp6}v3T!c_};MI!#u7@O+1~rOlfT_=gYdgZ@?cDHScUq zA4K8MBUiFjtZP)mj|JT}+egleK$Q0bCTQIQ!Xo3bd&O^QIb9W>#_|LH_5}Q~F2=H{ z+Mr}!5S*sGW4KUdHKMD7SP0$`?gu*;)y_S!&ZdzVI88mLHv&z|yvT4Jrk~812R;#h z3)(MaC^Tv-WDYps7NJ~W)r>jljdDoH77iT6Pq&gCPhoq+-L`CXr6TTZ-k2-N5ji|P zQp0+|=+%6@r#!8cm=XfDQYmUc$WjY0PW{{G0pEQ{T2AJuKPM^}3C|s2&C+|Sx_R_> zxAOt~*MIzAz<8?$q|tJp*~JJ=*P-rKslAwePtK?IV1tL^$_r03na!jyYJYQ55|Sb7 zB;3|3d>q`PN}EL6Ln}kf4SgMDK*Q{F&gcWQ>0o&@G7Ph{`Hk75ZQO`g_I20vYJtS_ zkkL1XPy%F;(6Cx;Etyy(Lcw26`&@9m6rlSpIyC3WWxlUY(wNDb1Mj=zZ(TFd{T-2g zeLE5epMz?lhfh+MgNA%NZ}CGMv?W53iEXynlz2{%&E0&;V}-JND6hX|6@SvRb$0{W zGMH~Jpz2@feZsGCb#u588760`;jF<(bUFMgl!m_0Ot*GBt8pRpDZ6C3Waw3{Bxwj> zPF3_AEd*CHpv$KiuLkMURTh&*AfM508&oSx>|pLLMvsf@JBy)4<^ZD;-o+O#8pf%| z$B8TOC-V9|*Pm4mr2t0=OTRj)7d&}7akC7xHk28Sc!I1bcFkM7mN)~#$+&>+x5SV=DSA55S! zs1puK#lW(O;7_v;Jq}WlsislCBGn)uvx0OXhrZMw^EECA+353an>T-@E`tc|f-{rh z+u919cc4ha)>j#ZZk)An)+CNQb8dxI{v4ORW%%R9`f<~EhiM+lUO)8h`Qk(zAD@IK zzywNMlqVL}lGkBzAiHv|iuI~^i*frT)1)zFVzcz*z~FS+rhETdR(0`!#|;V($2K32 zs+*V0hsdpof&bt^<<4cpV_HW{*~QXz$kH&k@!U`GNhe**hq}q?{H_G*n{fMnz+GU~keB*@(|MB@WJKPM15>hhnN+ zVxDf9Xvqx*5T~%%ExqBVD8-BX@`_7UdX6je6)iLKqC2g@+gB4?nmb)#@cCKgX{7xI zsJc@CJgyp7Z5jk}jplT&rskUpZFY?y-GlbB;G@Jz4?L)=+PSg=7H9URz~Z$;u9X6- z)d#QuFD*0hK(^Xti#=u&$#lEcYVH?8@3_$8HI6^m@qK#^|J!4t&$ss~|Bm*b`tuF= zWBuU2e&7G|d%OYv(A$JB{;%#Jm=`nqH_G+D z7pu=-rQP6rWw)8-|Lt$8-BtD9uXS%*@Tmq@)j#psRBl;%oBHiVo}4yxWb^1Z1Cg9?Ssw?+EzAuW9nFwEtiJ5Di09Chta$uO69C|HWH# zP5$=P^8$Wrllsdq|MctsgYl1>{9WT8;`+PBKg9KSjem&i?;8IQ*WWe%A+En`{C^kM z553q~m;TEiUVr!>@0U>h?Ry>eDa(I>f5nhr;O_(fl_Us^_%;9KpT3h2^4Is*U%S83 zsGn&F`ZEpwMnitULn-(tJe2vFM$*_%*HH}q6ODn1pJ`t&r}!Fw<(Z&=zAr&D$nUO0 zP#F1FXxQ(0p%?^Xe)n67LCD|z7QqPe>%CV$@`7LlMW8>^elJr5BjMlA?TbeJju!+Y zf0F4J?e}v-FpBxTOc9KR;h$v+qtu(fAJ^?mnqMEk(GZ-Z=- + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + checkkeys + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-graywin__Upgraded_.plist b/Xcode/SDLTest/Info-graywin__Upgraded_.plist new file mode 100644 index 000000000..0a9c04b10 --- /dev/null +++ b/Xcode/SDLTest/Info-graywin__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + graywin + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-loopwave__Upgraded_.plist b/Xcode/SDLTest/Info-loopwave__Upgraded_.plist new file mode 100644 index 000000000..5f66864f8 --- /dev/null +++ b/Xcode/SDLTest/Info-loopwave__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + loopwave + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-test.plist b/Xcode/SDLTest/Info-test.plist new file mode 100644 index 000000000..60d5db5b3 --- /dev/null +++ b/Xcode/SDLTest/Info-test.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testalpha + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testalpha__Upgraded_.plist b/Xcode/SDLTest/Info-testalpha__Upgraded_.plist new file mode 100644 index 000000000..60d5db5b3 --- /dev/null +++ b/Xcode/SDLTest/Info-testalpha__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testalpha + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testbitmap__Upgraded_.plist b/Xcode/SDLTest/Info-testbitmap__Upgraded_.plist new file mode 100644 index 000000000..87ec2719e --- /dev/null +++ b/Xcode/SDLTest/Info-testbitmap__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testbitmap + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testblitspeed.plist b/Xcode/SDLTest/Info-testblitspeed.plist new file mode 100644 index 000000000..c7fbcfe56 --- /dev/null +++ b/Xcode/SDLTest/Info-testblitspeed.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testblitspeed + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testcdrom__Upgraded_.plist b/Xcode/SDLTest/Info-testcdrom__Upgraded_.plist new file mode 100644 index 000000000..dde6614d7 --- /dev/null +++ b/Xcode/SDLTest/Info-testcdrom__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testcdrom + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testdyngl.plist b/Xcode/SDLTest/Info-testdyngl.plist new file mode 100644 index 000000000..1874119d2 --- /dev/null +++ b/Xcode/SDLTest/Info-testdyngl.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testdyngl + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testerror__Upgraded_.plist b/Xcode/SDLTest/Info-testerror__Upgraded_.plist new file mode 100644 index 000000000..11cc0fdc8 --- /dev/null +++ b/Xcode/SDLTest/Info-testerror__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testerror + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testfile.plist b/Xcode/SDLTest/Info-testfile.plist new file mode 100644 index 000000000..6488b54e6 --- /dev/null +++ b/Xcode/SDLTest/Info-testfile.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testfile + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testgamma__Upgraded_.plist b/Xcode/SDLTest/Info-testgamma__Upgraded_.plist new file mode 100644 index 000000000..6a6b5af8d --- /dev/null +++ b/Xcode/SDLTest/Info-testgamma__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testgamma + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testgl__Upgraded_.plist b/Xcode/SDLTest/Info-testgl__Upgraded_.plist new file mode 100644 index 000000000..eecc9cc34 --- /dev/null +++ b/Xcode/SDLTest/Info-testgl__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testgl + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testiconv.plist b/Xcode/SDLTest/Info-testiconv.plist new file mode 100644 index 000000000..0ff003f8a --- /dev/null +++ b/Xcode/SDLTest/Info-testiconv.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testiconv + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testjoystick__Upgraded_.plist b/Xcode/SDLTest/Info-testjoystick__Upgraded_.plist new file mode 100644 index 000000000..ef2e274f1 --- /dev/null +++ b/Xcode/SDLTest/Info-testjoystick__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testjoystick + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testkeys__Upgraded_.plist b/Xcode/SDLTest/Info-testkeys__Upgraded_.plist new file mode 100644 index 000000000..03eba705b --- /dev/null +++ b/Xcode/SDLTest/Info-testkeys__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testkeys + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testlock__Upgraded_.plist b/Xcode/SDLTest/Info-testlock__Upgraded_.plist new file mode 100644 index 000000000..50b71f2d3 --- /dev/null +++ b/Xcode/SDLTest/Info-testlock__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testlock + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testoverlay2.plist b/Xcode/SDLTest/Info-testoverlay2.plist new file mode 100644 index 000000000..664e0ce6d --- /dev/null +++ b/Xcode/SDLTest/Info-testoverlay2.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testoverlay2 + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testoverlay__Upgraded_.plist b/Xcode/SDLTest/Info-testoverlay__Upgraded_.plist new file mode 100644 index 000000000..a7a8a7726 --- /dev/null +++ b/Xcode/SDLTest/Info-testoverlay__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testpalette__Upgraded_.plist b/Xcode/SDLTest/Info-testpalette__Upgraded_.plist new file mode 100644 index 000000000..a08947ecb --- /dev/null +++ b/Xcode/SDLTest/Info-testpalette__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testpalette + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testplatform.plist b/Xcode/SDLTest/Info-testplatform.plist new file mode 100644 index 000000000..9b60de243 --- /dev/null +++ b/Xcode/SDLTest/Info-testplatform.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testplatform + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testsem__Upgraded_.plist b/Xcode/SDLTest/Info-testsem__Upgraded_.plist new file mode 100644 index 000000000..69235feac --- /dev/null +++ b/Xcode/SDLTest/Info-testsem__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testsem + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testsprite__Upgraded_.plist b/Xcode/SDLTest/Info-testsprite__Upgraded_.plist new file mode 100644 index 000000000..91739c16f --- /dev/null +++ b/Xcode/SDLTest/Info-testsprite__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testsprite + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testthread__Upgraded_.plist b/Xcode/SDLTest/Info-testthread__Upgraded_.plist new file mode 100644 index 000000000..30147f056 --- /dev/null +++ b/Xcode/SDLTest/Info-testthread__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testthread + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testtimer__Upgraded_.plist b/Xcode/SDLTest/Info-testtimer__Upgraded_.plist new file mode 100644 index 000000000..a143244ca --- /dev/null +++ b/Xcode/SDLTest/Info-testtimer__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testtimer + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testtypes__Upgraded_.plist b/Xcode/SDLTest/Info-testtypes__Upgraded_.plist new file mode 100644 index 000000000..f16490c02 --- /dev/null +++ b/Xcode/SDLTest/Info-testtypes__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testtypes + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testversion__Upgraded_.plist b/Xcode/SDLTest/Info-testversion__Upgraded_.plist new file mode 100644 index 000000000..ba635f703 --- /dev/null +++ b/Xcode/SDLTest/Info-testversion__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testversion + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testvidinfo__Upgraded_.plist b/Xcode/SDLTest/Info-testvidinfo__Upgraded_.plist new file mode 100644 index 000000000..35f13b473 --- /dev/null +++ b/Xcode/SDLTest/Info-testvidinfo__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testvidinfo + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testwin__Upgraded_.plist b/Xcode/SDLTest/Info-testwin__Upgraded_.plist new file mode 100644 index 000000000..f0e91c6cd --- /dev/null +++ b/Xcode/SDLTest/Info-testwin__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testwin + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-testwm__Upgraded_.plist b/Xcode/SDLTest/Info-testwm__Upgraded_.plist new file mode 100644 index 000000000..9979ee4bf --- /dev/null +++ b/Xcode/SDLTest/Info-testwm__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + testwm + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-threadwin__Upgraded_.plist b/Xcode/SDLTest/Info-threadwin__Upgraded_.plist new file mode 100644 index 000000000..721763d25 --- /dev/null +++ b/Xcode/SDLTest/Info-threadwin__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + threadwin + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/Info-torturethread__Upgraded_.plist b/Xcode/SDLTest/Info-torturethread__Upgraded_.plist new file mode 100644 index 000000000..3433469d1 --- /dev/null +++ b/Xcode/SDLTest/Info-torturethread__Upgraded_.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + torturethread + CFBundleGetInfoString + + CFBundleIconFile + + CFBundleIdentifier + + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + + CFBundlePackageType + APPL + CFBundleShortVersionString + + CFBundleSignature + ???? + CFBundleVersion + 0.0.1d1 + NSMainNibFile + SDLMain.nib + NSPrincipalClass + NSApplication + + diff --git a/Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj b/Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj new file mode 100755 index 000000000..af9c20339 --- /dev/null +++ b/Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj @@ -0,0 +1,4520 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXAggregateTarget section */ + BEC566920761D90300A33029 /* All */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 001B599808BDB826006539E9 /* Build configuration list for PBXAggregateTarget "All" */; + buildPhases = ( + ); + dependencies = ( + 003FA6A809400236000C53B3 /* PBXTargetDependency */, + BEC568010761D90600A33029 /* PBXTargetDependency */, + BEC568030761D90600A33029 /* PBXTargetDependency */, + BEC568050761D90600A33029 /* PBXTargetDependency */, + BEC568070761D90600A33029 /* PBXTargetDependency */, + BEC568090761D90600A33029 /* PBXTargetDependency */, + 002F347909CA215600EBEB88 /* PBXTargetDependency */, + BEC5680B0761D90600A33029 /* PBXTargetDependency */, + 002F347B09CA215600EBEB88 /* PBXTargetDependency */, + BEC5680D0761D90600A33029 /* PBXTargetDependency */, + 002F347D09CA215600EBEB88 /* PBXTargetDependency */, + BEC5680F0761D90600A33029 /* PBXTargetDependency */, + BEC568110761D90600A33029 /* PBXTargetDependency */, + 002F347F09CA215600EBEB88 /* PBXTargetDependency */, + BEC568150761D90600A33029 /* PBXTargetDependency */, + BEC568170761D90600A33029 /* PBXTargetDependency */, + BEC568190761D90600A33029 /* PBXTargetDependency */, + 002F348109CA215600EBEB88 /* PBXTargetDependency */, + 002F348309CA215600EBEB88 /* PBXTargetDependency */, + BEC5681B0761D90600A33029 /* PBXTargetDependency */, + 002F348509CA215600EBEB88 /* PBXTargetDependency */, + BEC5681D0761D90600A33029 /* PBXTargetDependency */, + BEC5681F0761D90600A33029 /* PBXTargetDependency */, + BEC568130761D90600A33029 /* PBXTargetDependency */, + BEC568210761D90600A33029 /* PBXTargetDependency */, + BEC568250761D90600A33029 /* PBXTargetDependency */, + BEC568270761D90600A33029 /* PBXTargetDependency */, + BEC568290761D90600A33029 /* PBXTargetDependency */, + BEC5682B0761D90600A33029 /* PBXTargetDependency */, + BEC5682D0761D90600A33029 /* PBXTargetDependency */, + BEC5682F0761D90600A33029 /* PBXTargetDependency */, + ); + name = All; + productName = "Build All"; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 002F337509CA14F900EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F337909CA14F900EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F337A09CA14F900EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F338B09CA16BF00EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F338F09CA16BF00EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F339009CA16BF00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F339B09CA17BC00EBEB88 /* testblitspeed.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F339A09CA17BC00EBEB88 /* testblitspeed.c */; }; + 002F33A809CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33A909CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AA09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AB09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AC09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AD09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AE09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33AF09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B009CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B109CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B209CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B309CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B409CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B509CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B609CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B709CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B809CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33B909CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BA09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BB09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BC09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BD09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BE09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33BF09CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33C009CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33C109CA188600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33CF09CA19A600EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F33D209CA19A600EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F33D309CA19A600EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F33D409CA19A600EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F33E309CA1A0B00EBEB88 /* testdyngl.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F33E209CA1A0B00EBEB88 /* testdyngl.c */; }; + 002F340609CA1BFF00EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F340909CA1BFF00EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F340A09CA1BFF00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F340B09CA1BFF00EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F341809CA1C5B00EBEB88 /* testfile.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F341709CA1C5B00EBEB88 /* testfile.c */; }; + 002F342509CA1F0300EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F342809CA1F0300EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F342909CA1F0300EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F342A09CA1F0300EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F343709CA1F6F00EBEB88 /* testiconv.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F343609CA1F6F00EBEB88 /* testiconv.c */; }; + 002F344109CA1FB300EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F344409CA1FB300EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F344509CA1FB300EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F344609CA1FB300EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F345409CA202000EBEB88 /* testoverlay2.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F345209CA201C00EBEB88 /* testoverlay2.c */; }; + 002F345E09CA204F00EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + 002F346109CA204F00EBEB88 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + 002F346209CA204F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 002F346309CA204F00EBEB88 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F33A709CA188600EBEB88 /* Cocoa.framework */; }; + 002F347009CA20A600EBEB88 /* testplatform.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F346F09CA20A600EBEB88 /* testplatform.c */; }; + 003FA64D093FFDB3000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA64E093FFDB5000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA64F093FFDB7000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA650093FFDBA000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA651093FFDBC000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA652093FFDBE000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA653093FFDC1000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA654093FFDC3000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA655093FFDC6000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA656093FFDC8000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA657093FFDCA000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA658093FFDCC000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA659093FFDCF000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA65A093FFDD1000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA65B093FFDD3000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA65C093FFDD5000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA65D093FFDD7000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA65E093FFDDA000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA660093FFDDF000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA661093FFDE1000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA662093FFDE3000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA663093FFDE6000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA664093FFDE8000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 003FA665093FFDEA000C53B3 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 003FA643093FFD41000C53B3 /* SDL.framework */; }; + 00794DD909D1F894003FC8A1 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 00794DD809D1F894003FC8A1 /* OpenGL.framework */; }; + 00794E6609D20865003FC8A1 /* sample.wav in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6209D20839003FC8A1 /* sample.wav */; }; + 00794EA209D2344B003FC8A1 /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; }; + 00794EB709D235F5003FC8A1 /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; }; + 00794EE709D236ED003FC8A1 /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; }; + 00794EF009D23739003FC8A1 /* utf8.txt in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6309D20839003FC8A1 /* utf8.txt */; }; + 00794EF709D237DE003FC8A1 /* moose.dat in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5E09D20839003FC8A1 /* moose.dat */; }; + 00794EFE09D2382B003FC8A1 /* sail.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6009D20839003FC8A1 /* sail.bmp */; }; + 00794F0409D23869003FC8A1 /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; }; + 00794F0B09D238F4003FC8A1 /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; }; + 00794F1109D2392B003FC8A1 /* icon.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E5D09D20839003FC8A1 /* icon.bmp */; }; + 00794F8709D2413B003FC8A1 /* sample.bmp in CopyFiles */ = {isa = PBXBuildFile; fileRef = 00794E6109D20839003FC8A1 /* sample.bmp */; }; + BEC566AF0761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566B10761D90300A33029 /* checkkeys.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D10FFB30A2C7F000001 /* checkkeys.c */; }; + BEC566BC0761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566BE0761D90300A33029 /* graywin.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D1BFFB30C237F000001 /* graywin.c */; }; + BEC566C90761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566CB0761D90300A33029 /* loopwave.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4872006D84C97F000001 /* loopwave.c */; }; + BEC566D70761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566D90761D90300A33029 /* testalpha.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4874006D84F77F000001 /* testalpha.c */; }; + BEC566E50761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566E70761D90300A33029 /* testbitmap.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D25FFB30D1A7F000001 /* testbitmap.c */; }; + BEC566F20761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC566F40761D90300A33029 /* testcdrom.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4876006D85297F000001 /* testcdrom.c */; }; + BEC566FF0761D90300A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567010761D90300A33029 /* testerror.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4878006D85357F000001 /* testerror.c */; }; + BEC5670C0761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC5670E0761D90400A33029 /* testgamma.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E487A006D85477F000001 /* testgamma.c */; }; + BEC5671A0761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC5671C0761D90400A33029 /* testgl.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D4EFFB311087F000001 /* testgl.c */; }; + BEC567270761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567290761D90400A33029 /* testhread.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D58FFB311A97F000001 /* testhread.c */; }; + BEC567340761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567360761D90400A33029 /* testjoystick.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D62FFB312AA7F000001 /* testjoystick.c */; }; + BEC567410761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567430761D90400A33029 /* testkeys.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D6CFFB313437F000001 /* testkeys.c */; }; + BEC5674E0761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567500761D90400A33029 /* testlock.c in Sources */ = {isa = PBXBuildFile; fileRef = 092D6D75FFB313BB7F000001 /* testlock.c */; }; + BEC5675D0761D90400A33029 /* testoverlay.c in Sources */ = {isa = PBXBuildFile; fileRef = F57DC39802A6E6A201D28762 /* testoverlay.c */; }; + BEC567680761D90400A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC5676A0761D90400A33029 /* testpalette.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E487C006D856B7F000001 /* testpalette.c */; }; + BEC567760761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567780761D90500A33029 /* testsem.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E487E006D86A17F000001 /* testsem.c */; }; + BEC567830761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567850761D90500A33029 /* testsprite.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E487F006D86A17F000001 /* testsprite.c */; }; + BEC567910761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567930761D90500A33029 /* testtimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4880006D86A17F000001 /* testtimer.c */; }; + BEC567AB0761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567AD0761D90500A33029 /* testver.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4882006D86A17F000001 /* testver.c */; }; + BEC567B80761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567BA0761D90500A33029 /* testvidinfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4883006D86A17F000001 /* testvidinfo.c */; }; + BEC567C50761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567C70761D90500A33029 /* testwin.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4884006D86A17F000001 /* testwin.c */; }; + BEC567D30761D90500A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567D50761D90500A33029 /* testwm.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4885006D86A17F000001 /* testwm.c */; }; + BEC567E10761D90600A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567E30761D90600A33029 /* threadwin.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4886006D86A17F000001 /* threadwin.c */; }; + BEC567EE0761D90600A33029 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */; }; + BEC567F00761D90600A33029 /* torturethread.c in Sources */ = {isa = PBXBuildFile; fileRef = 083E4887006D86A17F000001 /* torturethread.c */; }; + BEC567F90761D90600A33029 /* SDLMain.h in Headers */ = {isa = PBXBuildFile; fileRef = 2EECDF3B0086C5EA7F000001 /* SDLMain.h */; }; + BEC567FA0761D90600A33029 /* libsdlmain_prefix.h in Headers */ = {isa = PBXBuildFile; fileRef = B207FF2404E1B19600A80002 /* libsdlmain_prefix.h */; }; + BEC567FC0761D90600A33029 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 2EECDF3C0086C5EA7F000001 /* SDLMain.m */; }; + BEC568620761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568630761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568640761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568650761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568660761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568670761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568680761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568690761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686A0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686B0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686C0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686D0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686E0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5686F0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568700761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568710761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568720761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568730761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568750761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568760761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568770761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568780761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC568790761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; + BEC5687A0761D90600A33029 /* libsdlmain.a in Frameworks */ = {isa = PBXBuildFile; fileRef = BEC567FF0761D90600A33029 /* libsdlmain.a */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 002F337209CA14F900EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F338809CA16BF00EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F33CC09CA19A600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F340309CA1BFF00EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F342209CA1F0300EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F343E09CA1FB300EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F345B09CA204F00EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + 002F347809CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F338609CA16BF00EBEB88; + remoteInfo = testblitspeed; + }; + 002F347A09CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F33CA09CA19A600EBEB88; + remoteInfo = testdyngl; + }; + 002F347C09CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F340109CA1BFF00EBEB88; + remoteInfo = testfile; + }; + 002F347E09CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F342009CA1F0300EBEB88; + remoteInfo = testiconv; + }; + 002F348009CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567570761D90400A33029; + remoteInfo = "testoverlay (Upgraded)"; + }; + 002F348209CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F343C09CA1FB300EBEB88; + remoteInfo = testoverlay2; + }; + 002F348409CA215600EBEB88 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 002F345909CA204F00EBEB88; + remoteInfo = testplatform; + }; + 003FA642093FFD41000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = BECDF66C0761BA81005FE872; + remoteInfo = Framework; + }; + 003FA644093FFD41000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = BECDF6B30761BA81005FE872; + remoteInfo = "Static Library"; + }; + 003FA646093FFD41000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = BECDF6BA0761BA81005FE872; + remoteInfo = "Main Library"; + }; + 003FA648093FFD41000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = BECDF6BE0761BA81005FE872; + remoteInfo = "Standard DMG"; + }; + 003FA64A093FFD41000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 2; + remoteGlobalIDString = BECDF6C30761BA81005FE872; + remoteInfo = "Devel Extras Package"; + }; + 003FA6A709400236000C53B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + proxyType = 1; + remoteGlobalIDString = BECDF5FE0761BA81005FE872; + remoteInfo = Framework; + }; + BEC568000761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566AB0761D90300A33029; + remoteInfo = "checkkeys (Upgraded)"; + }; + BEC568020761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566B80761D90300A33029; + remoteInfo = "graywin (Upgraded)"; + }; + BEC568040761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566C50761D90300A33029; + remoteInfo = "loopwave (Upgraded)"; + }; + BEC568060761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566D30761D90300A33029; + remoteInfo = "testalpha (Upgraded)"; + }; + BEC568080761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566E10761D90300A33029; + remoteInfo = "testbitmap (Upgraded)"; + }; + BEC5680A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566EE0761D90300A33029; + remoteInfo = "testcdrom (Upgraded)"; + }; + BEC5680C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC566FB0761D90300A33029; + remoteInfo = "testerror (Upgraded)"; + }; + BEC5680E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567080761D90400A33029; + remoteInfo = "testgamma (Upgraded)"; + }; + BEC568100761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567160761D90400A33029; + remoteInfo = "testgl (Upgraded)"; + }; + BEC568120761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567230761D90400A33029; + remoteInfo = "testthread (Upgraded)"; + }; + BEC568140761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567300761D90400A33029; + remoteInfo = "testjoystick (Upgraded)"; + }; + BEC568160761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC5673D0761D90400A33029; + remoteInfo = "testkeys (Upgraded)"; + }; + BEC568180761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC5674A0761D90400A33029; + remoteInfo = "testlock (Upgraded)"; + }; + BEC5681A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567640761D90400A33029; + remoteInfo = "testpalette (Upgraded)"; + }; + BEC5681C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567720761D90500A33029; + remoteInfo = "testsem (Upgraded)"; + }; + BEC5681E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC5677F0761D90500A33029; + remoteInfo = "testsprite (Upgraded)"; + }; + BEC568200761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC5678D0761D90500A33029; + remoteInfo = "testtimer (Upgraded)"; + }; + BEC568240761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567A70761D90500A33029; + remoteInfo = "testversion (Upgraded)"; + }; + BEC568260761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567B40761D90500A33029; + remoteInfo = "testvidinfo (Upgraded)"; + }; + BEC568280761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567C10761D90500A33029; + remoteInfo = "testwin (Upgraded)"; + }; + BEC5682A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567CF0761D90500A33029; + remoteInfo = "testwm (Upgraded)"; + }; + BEC5682C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567DD0761D90600A33029; + remoteInfo = "threadwin (Upgraded)"; + }; + BEC5682E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567EA0761D90600A33029; + remoteInfo = "torturethread (Upgraded)"; + }; + BEC568300761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568320761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568340761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568360761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568380761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5683A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5683C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5683E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568400761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568420761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568440761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568460761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568480761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5684A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5684C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5684E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568500761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568520761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568560761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568580761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5685A0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5685C0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC5685E0761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; + BEC568600761D90600A33029 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = BEC567F70761D90600A33029; + remoteInfo = "libsdlmain.a (Upgraded)"; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 00794E6409D2084F003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794E6609D20865003FC8A1 /* sample.wav in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EA009D2343A003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EA209D2344B003FC8A1 /* icon.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EA909D234E8003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EB709D235F5003FC8A1 /* sample.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EE509D236E4003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EE709D236ED003FC8A1 /* sample.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EEC09D2371F003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EF009D23739003FC8A1 /* utf8.txt in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EF409D237C7003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EF709D237DE003FC8A1 /* moose.dat in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794EFC09D2381C003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794EFE09D2382B003FC8A1 /* sail.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794F0209D2385F003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794F0409D23869003FC8A1 /* icon.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794F0909D238E3003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794F0B09D238F4003FC8A1 /* sample.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794F0F09D23923003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794F1109D2392B003FC8A1 /* icon.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 00794F6109D24125003FC8A1 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 16; + files = ( + 00794F8709D2413B003FC8A1 /* sample.bmp in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F338109CA14F900EBEB88 /* test.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = test.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F339709CA16BF00EBEB88 /* testblitspeed.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testblitspeed.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F339A09CA17BC00EBEB88 /* testblitspeed.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testblitspeed.c; path = ../../test/testblitspeed.c; sourceTree = SOURCE_ROOT; }; + 002F33A709CA188600EBEB88 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 002F33DB09CA19A600EBEB88 /* testdyngl.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testdyngl.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F33E209CA1A0B00EBEB88 /* testdyngl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testdyngl.c; path = ../../test/testdyngl.c; sourceTree = SOURCE_ROOT; }; + 002F341209CA1BFF00EBEB88 /* testfile.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testfile.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F341709CA1C5B00EBEB88 /* testfile.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testfile.c; path = ../../test/testfile.c; sourceTree = SOURCE_ROOT; }; + 002F343109CA1F0300EBEB88 /* testiconv.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testiconv.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F343609CA1F6F00EBEB88 /* testiconv.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testiconv.c; path = ../../test/testiconv.c; sourceTree = SOURCE_ROOT; }; + 002F344D09CA1FB300EBEB88 /* testoverlay2.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testoverlay2.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F345209CA201C00EBEB88 /* testoverlay2.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testoverlay2.c; path = ../../test/testoverlay2.c; sourceTree = SOURCE_ROOT; }; + 002F346A09CA204F00EBEB88 /* testplatform.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testplatform.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 002F346F09CA20A600EBEB88 /* testplatform.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testplatform.c; path = ../../test/testplatform.c; sourceTree = SOURCE_ROOT; }; + 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = SDL.xcodeproj; path = ../SDL/SDL.xcodeproj; sourceTree = SOURCE_ROOT; }; + 00794DD809D1F894003FC8A1 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 00794E5D09D20839003FC8A1 /* icon.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = icon.bmp; path = ../../test/icon.bmp; sourceTree = SOURCE_ROOT; }; + 00794E5E09D20839003FC8A1 /* moose.dat */ = {isa = PBXFileReference; lastKnownFileType = file; name = moose.dat; path = ../../test/moose.dat; sourceTree = SOURCE_ROOT; }; + 00794E5F09D20839003FC8A1 /* picture.xbm */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = picture.xbm; path = ../../test/picture.xbm; sourceTree = SOURCE_ROOT; }; + 00794E6009D20839003FC8A1 /* sail.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = sail.bmp; path = ../../test/sail.bmp; sourceTree = SOURCE_ROOT; }; + 00794E6109D20839003FC8A1 /* sample.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; name = sample.bmp; path = ../../test/sample.bmp; sourceTree = SOURCE_ROOT; }; + 00794E6209D20839003FC8A1 /* sample.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = sample.wav; path = ../../test/sample.wav; sourceTree = SOURCE_ROOT; }; + 00794E6309D20839003FC8A1 /* utf8.txt */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text; name = utf8.txt; path = ../../test/utf8.txt; sourceTree = SOURCE_ROOT; }; + 083E4872006D84C97F000001 /* loopwave.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = loopwave.c; path = ../../test/loopwave.c; sourceTree = SOURCE_ROOT; }; + 083E4874006D84F77F000001 /* testalpha.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testalpha.c; path = ../../test/testalpha.c; sourceTree = SOURCE_ROOT; }; + 083E4876006D85297F000001 /* testcdrom.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testcdrom.c; path = ../../test/testcdrom.c; sourceTree = SOURCE_ROOT; }; + 083E4878006D85357F000001 /* testerror.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testerror.c; path = ../../test/testerror.c; sourceTree = SOURCE_ROOT; }; + 083E487A006D85477F000001 /* testgamma.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testgamma.c; path = ../../test/testgamma.c; sourceTree = SOURCE_ROOT; }; + 083E487C006D856B7F000001 /* testpalette.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testpalette.c; path = ../../test/testpalette.c; sourceTree = SOURCE_ROOT; }; + 083E487E006D86A17F000001 /* testsem.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testsem.c; path = ../../test/testsem.c; sourceTree = SOURCE_ROOT; }; + 083E487F006D86A17F000001 /* testsprite.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testsprite.c; path = ../../test/testsprite.c; sourceTree = SOURCE_ROOT; }; + 083E4880006D86A17F000001 /* testtimer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testtimer.c; path = ../../test/testtimer.c; sourceTree = SOURCE_ROOT; }; + 083E4882006D86A17F000001 /* testver.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testver.c; path = ../../test/testver.c; sourceTree = SOURCE_ROOT; }; + 083E4883006D86A17F000001 /* testvidinfo.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testvidinfo.c; path = ../../test/testvidinfo.c; sourceTree = SOURCE_ROOT; }; + 083E4884006D86A17F000001 /* testwin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testwin.c; path = ../../test/testwin.c; sourceTree = SOURCE_ROOT; }; + 083E4885006D86A17F000001 /* testwm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testwm.c; path = ../../test/testwm.c; sourceTree = SOURCE_ROOT; }; + 083E4886006D86A17F000001 /* threadwin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = threadwin.c; path = ../../test/threadwin.c; sourceTree = SOURCE_ROOT; }; + 083E4887006D86A17F000001 /* torturethread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = torturethread.c; path = ../../test/torturethread.c; sourceTree = SOURCE_ROOT; }; + 092D6D10FFB30A2C7F000001 /* checkkeys.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = checkkeys.c; path = ../../test/checkkeys.c; sourceTree = SOURCE_ROOT; }; + 092D6D1BFFB30C237F000001 /* graywin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = graywin.c; path = ../../test/graywin.c; sourceTree = SOURCE_ROOT; }; + 092D6D25FFB30D1A7F000001 /* testbitmap.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testbitmap.c; path = ../../test/testbitmap.c; sourceTree = SOURCE_ROOT; }; + 092D6D4EFFB311087F000001 /* testgl.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testgl.c; path = ../../test/testgl.c; sourceTree = SOURCE_ROOT; }; + 092D6D58FFB311A97F000001 /* testhread.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testhread.c; path = ../../test/testhread.c; sourceTree = SOURCE_ROOT; }; + 092D6D62FFB312AA7F000001 /* testjoystick.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testjoystick.c; path = ../../test/testjoystick.c; sourceTree = SOURCE_ROOT; }; + 092D6D6CFFB313437F000001 /* testkeys.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testkeys.c; path = ../../test/testkeys.c; sourceTree = SOURCE_ROOT; }; + 092D6D75FFB313BB7F000001 /* testlock.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testlock.c; path = ../../test/testlock.c; sourceTree = SOURCE_ROOT; }; + 2EECDF3B0086C5EA7F000001 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = SDLMain.h; path = ../../src/main/macosx/SDLMain.h; sourceTree = SOURCE_ROOT; }; + 2EECDF3C0086C5EA7F000001 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = SDLMain.m; path = ../../src/main/macosx/SDLMain.m; sourceTree = SOURCE_ROOT; }; + 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = SDLMain.nib; path = ../../src/main/macosx/SDLMain.nib; sourceTree = SOURCE_ROOT; }; + B207FF2404E1B19600A80002 /* libsdlmain_prefix.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = libsdlmain_prefix.h; sourceTree = ""; }; + BEC566B60761D90300A33029 /* checkkeys.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = checkkeys.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC566C30761D90300A33029 /* graywin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = graywin.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC566D10761D90300A33029 /* loopwave.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = loopwave.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC566DF0761D90300A33029 /* testalpha.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testalpha.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC566EC0761D90300A33029 /* testbitmap.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testbitmap.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC566F90761D90300A33029 /* testcdrom.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testcdrom.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567060761D90400A33029 /* testerror.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testerror.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567140761D90400A33029 /* testgamma.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgamma.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567210761D90400A33029 /* testgl.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testgl.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC5672E0761D90400A33029 /* testthread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testthread.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC5673B0761D90400A33029 /* testjoystick.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testjoystick.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567480761D90400A33029 /* testkeys.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testkeys.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567550761D90400A33029 /* testlock.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testlock.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567620761D90400A33029 /* testoverlay.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testoverlay.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567700761D90500A33029 /* testpalette.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testpalette.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC5677D0761D90500A33029 /* testsem.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testsem.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC5678B0761D90500A33029 /* testsprite.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testsprite.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567980761D90500A33029 /* testtimer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testtimer.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567B20761D90500A33029 /* testversion.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testversion.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567BF0761D90500A33029 /* testvidinfo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testvidinfo.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567CD0761D90500A33029 /* testwin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testwin.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567DB0761D90600A33029 /* testwm.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = testwm.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567E80761D90600A33029 /* threadwin.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = threadwin.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567F50761D90600A33029 /* torturethread.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = torturethread.app; sourceTree = BUILT_PRODUCTS_DIR; }; + BEC567FF0761D90600A33029 /* libsdlmain.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libsdlmain.a; sourceTree = BUILT_PRODUCTS_DIR; }; + F57DC39802A6E6A201D28762 /* testoverlay.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = testoverlay.c; path = ../../test/testoverlay.c; sourceTree = SOURCE_ROOT; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 002F337809CA14F900EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F337909CA14F900EBEB88 /* libsdlmain.a in Frameworks */, + 002F337A09CA14F900EBEB88 /* SDL.framework in Frameworks */, + 002F33A909CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F338E09CA16BF00EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F338F09CA16BF00EBEB88 /* libsdlmain.a in Frameworks */, + 002F339009CA16BF00EBEB88 /* SDL.framework in Frameworks */, + 002F33A809CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F33D109CA19A600EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F33D209CA19A600EBEB88 /* libsdlmain.a in Frameworks */, + 002F33D309CA19A600EBEB88 /* SDL.framework in Frameworks */, + 002F33D409CA19A600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F340809CA1BFF00EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F340909CA1BFF00EBEB88 /* libsdlmain.a in Frameworks */, + 002F340A09CA1BFF00EBEB88 /* SDL.framework in Frameworks */, + 002F340B09CA1BFF00EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F342709CA1F0300EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F342809CA1F0300EBEB88 /* libsdlmain.a in Frameworks */, + 002F342909CA1F0300EBEB88 /* SDL.framework in Frameworks */, + 002F342A09CA1F0300EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F344309CA1FB300EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F344409CA1FB300EBEB88 /* libsdlmain.a in Frameworks */, + 002F344509CA1FB300EBEB88 /* SDL.framework in Frameworks */, + 002F344609CA1FB300EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F346009CA204F00EBEB88 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F346109CA204F00EBEB88 /* libsdlmain.a in Frameworks */, + 002F346209CA204F00EBEB88 /* SDL.framework in Frameworks */, + 002F346309CA204F00EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566B20761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568620761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA64D093FFDB3000C53B3 /* SDL.framework in Frameworks */, + 002F33C109CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566BF0761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568630761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA64E093FFDB5000C53B3 /* SDL.framework in Frameworks */, + 002F33C009CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566CC0761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568640761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA64F093FFDB7000C53B3 /* SDL.framework in Frameworks */, + 002F33BF09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566DA0761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568650761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA650093FFDBA000C53B3 /* SDL.framework in Frameworks */, + 002F33BE09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566E80761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568660761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA651093FFDBC000C53B3 /* SDL.framework in Frameworks */, + 002F33BD09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566F50761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568670761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA652093FFDBE000C53B3 /* SDL.framework in Frameworks */, + 002F33BB09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567020761D90300A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568680761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA653093FFDC1000C53B3 /* SDL.framework in Frameworks */, + 002F33BC09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5670F0761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568690761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA654093FFDC3000C53B3 /* SDL.framework in Frameworks */, + 002F33BA09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5671D0761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686A0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA655093FFDC6000C53B3 /* SDL.framework in Frameworks */, + 002F33B909CA188600EBEB88 /* Cocoa.framework in Frameworks */, + 00794DD909D1F894003FC8A1 /* OpenGL.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5672A0761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686B0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA656093FFDC8000C53B3 /* SDL.framework in Frameworks */, + 002F33B809CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567370761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686C0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA657093FFDCA000C53B3 /* SDL.framework in Frameworks */, + 002F33B709CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567440761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686D0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA658093FFDCC000C53B3 /* SDL.framework in Frameworks */, + 002F33B509CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567510761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686E0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA659093FFDCF000C53B3 /* SDL.framework in Frameworks */, + 002F33B609CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5675E0761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5686F0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA65A093FFDD1000C53B3 /* SDL.framework in Frameworks */, + 002F33B409CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5676B0761D90400A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568700761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA65B093FFDD3000C53B3 /* SDL.framework in Frameworks */, + 002F33B309CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567790761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568710761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA65C093FFDD5000C53B3 /* SDL.framework in Frameworks */, + 002F33B209CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567860761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568720761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA65D093FFDD7000C53B3 /* SDL.framework in Frameworks */, + 002F33B109CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567940761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568730761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA65E093FFDDA000C53B3 /* SDL.framework in Frameworks */, + 002F33B009CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567AE0761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568750761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA660093FFDDF000C53B3 /* SDL.framework in Frameworks */, + 002F33AF09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567BB0761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568760761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA661093FFDE1000C53B3 /* SDL.framework in Frameworks */, + 002F33AE09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567C80761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568770761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA662093FFDE3000C53B3 /* SDL.framework in Frameworks */, + 002F33AD09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567D60761D90500A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568780761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA663093FFDE6000C53B3 /* SDL.framework in Frameworks */, + 002F33AC09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567E40761D90600A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC568790761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA665093FFDEA000C53B3 /* SDL.framework in Frameworks */, + 002F33AB09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567F10761D90600A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5687A0761D90600A33029 /* libsdlmain.a in Frameworks */, + 003FA664093FFDE8000C53B3 /* SDL.framework in Frameworks */, + 002F33AA09CA188600EBEB88 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567FD0761D90600A33029 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 002F33A209CA183B00EBEB88 /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 00794DD809D1F894003FC8A1 /* OpenGL.framework */, + 002F33A709CA188600EBEB88 /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 003FA63B093FFD41000C53B3 /* Products */ = { + isa = PBXGroup; + children = ( + 003FA643093FFD41000C53B3 /* SDL.framework */, + 003FA645093FFD41000C53B3 /* libSDL.a */, + 003FA647093FFD41000C53B3 /* libSDLmain.a */, + 003FA649093FFD41000C53B3 /* Standard DMG */, + 003FA64B093FFD41000C53B3 /* Developer Extras Package */, + ); + name = Products; + sourceTree = ""; + }; + 00794E4609D207B4003FC8A1 /* Resources */ = { + isa = PBXGroup; + children = ( + 00794E5D09D20839003FC8A1 /* icon.bmp */, + 00794E5E09D20839003FC8A1 /* moose.dat */, + 00794E5F09D20839003FC8A1 /* picture.xbm */, + 00794E6009D20839003FC8A1 /* sail.bmp */, + 00794E6109D20839003FC8A1 /* sample.bmp */, + 00794E6209D20839003FC8A1 /* sample.wav */, + 00794E6309D20839003FC8A1 /* utf8.txt */, + ); + name = Resources; + sourceTree = ""; + }; + 08FB7794FE84155DC02AAC07 /* SDLTest */ = { + isa = PBXGroup; + children = ( + 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */, + 08FB7795FE84155DC02AAC07 /* Source */, + 2EECDF3B0086C5EA7F000001 /* SDLMain.h */, + 2EECDF3C0086C5EA7F000001 /* SDLMain.m */, + B207FF2404E1B19600A80002 /* libsdlmain_prefix.h */, + 2EECDF3D0086C5EA7F000001 /* SDLMain.nib */, + 002F33A209CA183B00EBEB88 /* Linked Frameworks */, + 00794E4609D207B4003FC8A1 /* Resources */, + 1AB674ADFE9D54B511CA2CBB /* Products */, + ); + comments = "I made these tests link against our \"default\" framework which includes X11 stuff. If you didn't install the X11 headers with Xcode, you might have problems building the SDL.framework (which is a dependency). You can swap the dependencies around to get around this, or you can modify the default SDL.framework target to not include X11 stuff. (Go into its target build options and remove all the Preprocessor macros.)\n\n\n\nWe are sort of in a half-way state at the moment. Going \"all-the-way\" means we copy the SDL.framework inside the app bundle so we can run the test without the step of the user \"installing\" the framework. But there is an oversight/bug in Xcode that doesn't correctly find the location of the framework when in an embedded/nested Xcode project. We could probably try to hack this with a shell script that checks multiple directories for existence, but this is messier and more work than I prefer, so I rather just wait for Apple to fix this. In the meantime...\n\nThe \"All\" target will build the SDL framework from the Xcode project. The other targets do not have this dependency set (for flexibility reasons in case we make changes). If you have not built the framework, you will probably be unable to link. You will either need to build the framework, or you need to add \"-framework SDL\" to the link options and make sure you have the SDL.framework installed somewhere where it can be seen (like /Library/Frameworks...I think we already set this one up.) \n\nTo run though, you should have a copy of the SDL.framework in /Library/Frameworks or ~/Library/Frameworks.\n\n\n\n\ntestgl and testdyngl need -DHAVE_OPENGL\ntestgl needs to link against OpenGL.framework\n\n"; + name = SDLTest; + sourceTree = ""; + }; + 08FB7795FE84155DC02AAC07 /* Source */ = { + isa = PBXGroup; + children = ( + 092D6D10FFB30A2C7F000001 /* checkkeys.c */, + 092D6D1BFFB30C237F000001 /* graywin.c */, + 083E4872006D84C97F000001 /* loopwave.c */, + 083E4874006D84F77F000001 /* testalpha.c */, + 092D6D25FFB30D1A7F000001 /* testbitmap.c */, + 002F339A09CA17BC00EBEB88 /* testblitspeed.c */, + 083E4876006D85297F000001 /* testcdrom.c */, + 002F33E209CA1A0B00EBEB88 /* testdyngl.c */, + 083E4878006D85357F000001 /* testerror.c */, + 002F343609CA1F6F00EBEB88 /* testiconv.c */, + 002F341709CA1C5B00EBEB88 /* testfile.c */, + 083E487A006D85477F000001 /* testgamma.c */, + 092D6D4EFFB311087F000001 /* testgl.c */, + 092D6D58FFB311A97F000001 /* testhread.c */, + 092D6D62FFB312AA7F000001 /* testjoystick.c */, + 092D6D6CFFB313437F000001 /* testkeys.c */, + 092D6D75FFB313BB7F000001 /* testlock.c */, + F57DC39802A6E6A201D28762 /* testoverlay.c */, + 002F345209CA201C00EBEB88 /* testoverlay2.c */, + 083E487C006D856B7F000001 /* testpalette.c */, + 002F346F09CA20A600EBEB88 /* testplatform.c */, + 083E487E006D86A17F000001 /* testsem.c */, + 083E487F006D86A17F000001 /* testsprite.c */, + 083E4880006D86A17F000001 /* testtimer.c */, + 083E4882006D86A17F000001 /* testver.c */, + 083E4883006D86A17F000001 /* testvidinfo.c */, + 083E4884006D86A17F000001 /* testwin.c */, + 083E4885006D86A17F000001 /* testwm.c */, + 083E4886006D86A17F000001 /* threadwin.c */, + 083E4887006D86A17F000001 /* torturethread.c */, + ); + name = Source; + sourceTree = ""; + }; + 1AB674ADFE9D54B511CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + BEC566B60761D90300A33029 /* checkkeys.app */, + BEC566C30761D90300A33029 /* graywin.app */, + BEC566D10761D90300A33029 /* loopwave.app */, + BEC566DF0761D90300A33029 /* testalpha.app */, + BEC566EC0761D90300A33029 /* testbitmap.app */, + BEC566F90761D90300A33029 /* testcdrom.app */, + BEC567060761D90400A33029 /* testerror.app */, + BEC567140761D90400A33029 /* testgamma.app */, + BEC567210761D90400A33029 /* testgl.app */, + BEC5672E0761D90400A33029 /* testthread.app */, + BEC5673B0761D90400A33029 /* testjoystick.app */, + BEC567480761D90400A33029 /* testkeys.app */, + BEC567550761D90400A33029 /* testlock.app */, + BEC567620761D90400A33029 /* testoverlay.app */, + BEC567700761D90500A33029 /* testpalette.app */, + BEC5677D0761D90500A33029 /* testsem.app */, + BEC5678B0761D90500A33029 /* testsprite.app */, + BEC567980761D90500A33029 /* testtimer.app */, + BEC567B20761D90500A33029 /* testversion.app */, + BEC567BF0761D90500A33029 /* testvidinfo.app */, + BEC567CD0761D90500A33029 /* testwin.app */, + BEC567DB0761D90600A33029 /* testwm.app */, + BEC567E80761D90600A33029 /* threadwin.app */, + BEC567F50761D90600A33029 /* torturethread.app */, + BEC567FF0761D90600A33029 /* libsdlmain.a */, + 002F338109CA14F900EBEB88 /* test.app */, + 002F339709CA16BF00EBEB88 /* testblitspeed.app */, + 002F33DB09CA19A600EBEB88 /* testdyngl.app */, + 002F341209CA1BFF00EBEB88 /* testfile.app */, + 002F343109CA1F0300EBEB88 /* testiconv.app */, + 002F344D09CA1FB300EBEB88 /* testoverlay2.app */, + 002F346A09CA204F00EBEB88 /* testplatform.app */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 002F337309CA14F900EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F338909CA16BF00EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F33CD09CA19A600EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F340409CA1BFF00EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F342309CA1F0300EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F343F09CA1FB300EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F345C09CA204F00EBEB88 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566AD0761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566BA0761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566C70761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566D50761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566E30761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566F00761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566FD0761D90300A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5670A0761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567180761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567250761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567320761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5673F0761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5674C0761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567590761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567660761D90400A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567740761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567810761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5678F0761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567A90761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567B60761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567C30761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567D10761D90500A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567DF0761D90600A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567EC0761D90600A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567F80761D90600A33029 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567F90761D90600A33029 /* SDLMain.h in Headers */, + BEC567FA0761D90600A33029 /* libsdlmain_prefix.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 002F337009CA14F900EBEB88 /* test */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F337D09CA14F900EBEB88 /* Build configuration list for PBXNativeTarget "test" */; + buildPhases = ( + 002F337309CA14F900EBEB88 /* Headers */, + 002F337409CA14F900EBEB88 /* Resources */, + 002F337609CA14F900EBEB88 /* Sources */, + 002F337809CA14F900EBEB88 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 002F337109CA14F900EBEB88 /* PBXTargetDependency */, + ); + name = test; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F338109CA14F900EBEB88 /* test.app */; + productType = "com.apple.product-type.application"; + }; + 002F338609CA16BF00EBEB88 /* testblitspeed */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F339309CA16BF00EBEB88 /* Build configuration list for PBXNativeTarget "testblitspeed" */; + buildPhases = ( + 002F338909CA16BF00EBEB88 /* Headers */, + 002F338A09CA16BF00EBEB88 /* Resources */, + 002F338C09CA16BF00EBEB88 /* Sources */, + 002F338E09CA16BF00EBEB88 /* Frameworks */, + 00794EA909D234E8003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + 002F338709CA16BF00EBEB88 /* PBXTargetDependency */, + ); + name = testblitspeed; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F339709CA16BF00EBEB88 /* testblitspeed.app */; + productType = "com.apple.product-type.application"; + }; + 002F33CA09CA19A600EBEB88 /* testdyngl */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F33D709CA19A600EBEB88 /* Build configuration list for PBXNativeTarget "testdyngl" */; + buildPhases = ( + 002F33CD09CA19A600EBEB88 /* Headers */, + 002F33CE09CA19A600EBEB88 /* Resources */, + 002F33D009CA19A600EBEB88 /* Sources */, + 002F33D109CA19A600EBEB88 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 002F33CB09CA19A600EBEB88 /* PBXTargetDependency */, + ); + name = testdyngl; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F33DB09CA19A600EBEB88 /* testdyngl.app */; + productType = "com.apple.product-type.application"; + }; + 002F340109CA1BFF00EBEB88 /* testfile */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F340E09CA1BFF00EBEB88 /* Build configuration list for PBXNativeTarget "testfile" */; + buildPhases = ( + 002F340409CA1BFF00EBEB88 /* Headers */, + 002F340509CA1BFF00EBEB88 /* Resources */, + 002F340709CA1BFF00EBEB88 /* Sources */, + 002F340809CA1BFF00EBEB88 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 002F340209CA1BFF00EBEB88 /* PBXTargetDependency */, + ); + name = testfile; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F341209CA1BFF00EBEB88 /* testfile.app */; + productType = "com.apple.product-type.application"; + }; + 002F342009CA1F0300EBEB88 /* testiconv */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F342D09CA1F0300EBEB88 /* Build configuration list for PBXNativeTarget "testiconv" */; + buildPhases = ( + 002F342309CA1F0300EBEB88 /* Headers */, + 002F342409CA1F0300EBEB88 /* Resources */, + 002F342609CA1F0300EBEB88 /* Sources */, + 002F342709CA1F0300EBEB88 /* Frameworks */, + 00794EEC09D2371F003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + 002F342109CA1F0300EBEB88 /* PBXTargetDependency */, + ); + name = testiconv; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F343109CA1F0300EBEB88 /* testiconv.app */; + productType = "com.apple.product-type.application"; + }; + 002F343C09CA1FB300EBEB88 /* testoverlay2 */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F344909CA1FB300EBEB88 /* Build configuration list for PBXNativeTarget "testoverlay2" */; + buildPhases = ( + 002F343F09CA1FB300EBEB88 /* Headers */, + 002F344009CA1FB300EBEB88 /* Resources */, + 002F344209CA1FB300EBEB88 /* Sources */, + 002F344309CA1FB300EBEB88 /* Frameworks */, + 00794EF409D237C7003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + 002F343D09CA1FB300EBEB88 /* PBXTargetDependency */, + ); + name = testoverlay2; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F344D09CA1FB300EBEB88 /* testoverlay2.app */; + productType = "com.apple.product-type.application"; + }; + 002F345909CA204F00EBEB88 /* testplatform */ = { + isa = PBXNativeTarget; + buildConfigurationList = 002F346609CA204F00EBEB88 /* Build configuration list for PBXNativeTarget "testplatform" */; + buildPhases = ( + 002F345C09CA204F00EBEB88 /* Headers */, + 002F345D09CA204F00EBEB88 /* Resources */, + 002F345F09CA204F00EBEB88 /* Sources */, + 002F346009CA204F00EBEB88 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 002F345A09CA204F00EBEB88 /* PBXTargetDependency */, + ); + name = testplatform; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = 002F346A09CA204F00EBEB88 /* testplatform.app */; + productType = "com.apple.product-type.application"; + }; + BEC566AB0761D90300A33029 /* checkkeys (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B593808BDB826006539E9 /* Build configuration list for PBXNativeTarget "checkkeys (Upgraded)" */; + buildPhases = ( + BEC566AD0761D90300A33029 /* Headers */, + BEC566AE0761D90300A33029 /* Resources */, + BEC566B00761D90300A33029 /* Sources */, + BEC566B20761D90300A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568310761D90600A33029 /* PBXTargetDependency */, + ); + name = "checkkeys (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = checkkeys; + productReference = BEC566B60761D90300A33029 /* checkkeys.app */; + productType = "com.apple.product-type.application"; + }; + BEC566B80761D90300A33029 /* graywin (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B593C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "graywin (Upgraded)" */; + buildPhases = ( + BEC566BA0761D90300A33029 /* Headers */, + BEC566BB0761D90300A33029 /* Resources */, + BEC566BD0761D90300A33029 /* Sources */, + BEC566BF0761D90300A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568330761D90600A33029 /* PBXTargetDependency */, + ); + name = "graywin (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = graywin; + productReference = BEC566C30761D90300A33029 /* graywin.app */; + productType = "com.apple.product-type.application"; + }; + BEC566C50761D90300A33029 /* loopwave (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B594008BDB826006539E9 /* Build configuration list for PBXNativeTarget "loopwave (Upgraded)" */; + buildPhases = ( + BEC566C70761D90300A33029 /* Headers */, + BEC566C80761D90300A33029 /* Resources */, + BEC566CA0761D90300A33029 /* Sources */, + BEC566CC0761D90300A33029 /* Frameworks */, + 00794E6409D2084F003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC568350761D90600A33029 /* PBXTargetDependency */, + ); + name = "loopwave (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = loopwave; + productReference = BEC566D10761D90300A33029 /* loopwave.app */; + productType = "com.apple.product-type.application"; + }; + BEC566D30761D90300A33029 /* testalpha (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B594408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testalpha (Upgraded)" */; + buildPhases = ( + BEC566D50761D90300A33029 /* Headers */, + BEC566D60761D90300A33029 /* Resources */, + BEC566D80761D90300A33029 /* Sources */, + BEC566DA0761D90300A33029 /* Frameworks */, + 00794EA009D2343A003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC568370761D90600A33029 /* PBXTargetDependency */, + ); + name = "testalpha (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testalpha; + productReference = BEC566DF0761D90300A33029 /* testalpha.app */; + productType = "com.apple.product-type.application"; + }; + BEC566E10761D90300A33029 /* testbitmap (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B594808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testbitmap (Upgraded)" */; + buildPhases = ( + BEC566E30761D90300A33029 /* Headers */, + BEC566E40761D90300A33029 /* Resources */, + BEC566E60761D90300A33029 /* Sources */, + BEC566E80761D90300A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568390761D90600A33029 /* PBXTargetDependency */, + ); + name = "testbitmap (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testbitmap; + productReference = BEC566EC0761D90300A33029 /* testbitmap.app */; + productType = "com.apple.product-type.application"; + }; + BEC566EE0761D90300A33029 /* testcdrom (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B594C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testcdrom (Upgraded)" */; + buildPhases = ( + BEC566F00761D90300A33029 /* Headers */, + BEC566F10761D90300A33029 /* Resources */, + BEC566F30761D90300A33029 /* Sources */, + BEC566F50761D90300A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC5683B0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testcdrom (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testcdrom; + productReference = BEC566F90761D90300A33029 /* testcdrom.app */; + productType = "com.apple.product-type.application"; + }; + BEC566FB0761D90300A33029 /* testerror (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B595008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testerror (Upgraded)" */; + buildPhases = ( + BEC566FD0761D90300A33029 /* Headers */, + BEC566FE0761D90300A33029 /* Resources */, + BEC567000761D90300A33029 /* Sources */, + BEC567020761D90300A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC5683D0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testerror (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testerror; + productReference = BEC567060761D90400A33029 /* testerror.app */; + productType = "com.apple.product-type.application"; + }; + BEC567080761D90400A33029 /* testgamma (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B595408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testgamma (Upgraded)" */; + buildPhases = ( + BEC5670A0761D90400A33029 /* Headers */, + BEC5670B0761D90400A33029 /* Resources */, + BEC5670D0761D90400A33029 /* Sources */, + BEC5670F0761D90400A33029 /* Frameworks */, + 00794EE509D236E4003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC5683F0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testgamma (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testgamma; + productReference = BEC567140761D90400A33029 /* testgamma.app */; + productType = "com.apple.product-type.application"; + }; + BEC567160761D90400A33029 /* testgl (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B595808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testgl (Upgraded)" */; + buildPhases = ( + BEC567180761D90400A33029 /* Headers */, + BEC567190761D90400A33029 /* Resources */, + BEC5671B0761D90400A33029 /* Sources */, + BEC5671D0761D90400A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568410761D90600A33029 /* PBXTargetDependency */, + ); + name = "testgl (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testgl; + productReference = BEC567210761D90400A33029 /* testgl.app */; + productType = "com.apple.product-type.application"; + }; + BEC567230761D90400A33029 /* testthread (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B595C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testthread (Upgraded)" */; + buildPhases = ( + BEC567250761D90400A33029 /* Headers */, + BEC567260761D90400A33029 /* Resources */, + BEC567280761D90400A33029 /* Sources */, + BEC5672A0761D90400A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568430761D90600A33029 /* PBXTargetDependency */, + ); + name = "testthread (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testthread; + productReference = BEC5672E0761D90400A33029 /* testthread.app */; + productType = "com.apple.product-type.application"; + }; + BEC567300761D90400A33029 /* testjoystick (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B596008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testjoystick (Upgraded)" */; + buildPhases = ( + BEC567320761D90400A33029 /* Headers */, + BEC567330761D90400A33029 /* Resources */, + BEC567350761D90400A33029 /* Sources */, + BEC567370761D90400A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568450761D90600A33029 /* PBXTargetDependency */, + ); + name = "testjoystick (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testjoystick; + productReference = BEC5673B0761D90400A33029 /* testjoystick.app */; + productType = "com.apple.product-type.application"; + }; + BEC5673D0761D90400A33029 /* testkeys (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B596408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testkeys (Upgraded)" */; + buildPhases = ( + BEC5673F0761D90400A33029 /* Headers */, + BEC567400761D90400A33029 /* Resources */, + BEC567420761D90400A33029 /* Sources */, + BEC567440761D90400A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568470761D90600A33029 /* PBXTargetDependency */, + ); + name = "testkeys (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testkeys; + productReference = BEC567480761D90400A33029 /* testkeys.app */; + productType = "com.apple.product-type.application"; + }; + BEC5674A0761D90400A33029 /* testlock (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B596808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testlock (Upgraded)" */; + buildPhases = ( + BEC5674C0761D90400A33029 /* Headers */, + BEC5674D0761D90400A33029 /* Resources */, + BEC5674F0761D90400A33029 /* Sources */, + BEC567510761D90400A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568490761D90600A33029 /* PBXTargetDependency */, + ); + name = "testlock (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testlock; + productReference = BEC567550761D90400A33029 /* testlock.app */; + productType = "com.apple.product-type.application"; + }; + BEC567570761D90400A33029 /* testoverlay (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B599C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testoverlay (Upgraded)" */; + buildPhases = ( + BEC567590761D90400A33029 /* Headers */, + BEC5675A0761D90400A33029 /* Resources */, + BEC5675C0761D90400A33029 /* Sources */, + BEC5675E0761D90400A33029 /* Frameworks */, + 00794F6109D24125003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC5684B0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testoverlay (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testoverlay; + productReference = BEC567620761D90400A33029 /* testoverlay.app */; + productType = "com.apple.product-type.application"; + }; + BEC567640761D90400A33029 /* testpalette (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B596C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testpalette (Upgraded)" */; + buildPhases = ( + BEC567660761D90400A33029 /* Headers */, + BEC567670761D90400A33029 /* Resources */, + BEC567690761D90400A33029 /* Sources */, + BEC5676B0761D90400A33029 /* Frameworks */, + 00794EFC09D2381C003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC5684D0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testpalette (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testpalette; + productReference = BEC567700761D90500A33029 /* testpalette.app */; + productType = "com.apple.product-type.application"; + }; + BEC567720761D90500A33029 /* testsem (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B597008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testsem (Upgraded)" */; + buildPhases = ( + BEC567740761D90500A33029 /* Headers */, + BEC567750761D90500A33029 /* Resources */, + BEC567770761D90500A33029 /* Sources */, + BEC567790761D90500A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC5684F0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testsem (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testsem; + productReference = BEC5677D0761D90500A33029 /* testsem.app */; + productType = "com.apple.product-type.application"; + }; + BEC5677F0761D90500A33029 /* testsprite (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B597408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testsprite (Upgraded)" */; + buildPhases = ( + BEC567810761D90500A33029 /* Headers */, + BEC567820761D90500A33029 /* Resources */, + BEC567840761D90500A33029 /* Sources */, + BEC567860761D90500A33029 /* Frameworks */, + 00794F0209D2385F003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC568510761D90600A33029 /* PBXTargetDependency */, + ); + name = "testsprite (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testsprite; + productReference = BEC5678B0761D90500A33029 /* testsprite.app */; + productType = "com.apple.product-type.application"; + }; + BEC5678D0761D90500A33029 /* testtimer (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B597808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testtimer (Upgraded)" */; + buildPhases = ( + BEC5678F0761D90500A33029 /* Headers */, + BEC567900761D90500A33029 /* Resources */, + BEC567920761D90500A33029 /* Sources */, + BEC567940761D90500A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568530761D90600A33029 /* PBXTargetDependency */, + ); + name = "testtimer (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testtimer; + productReference = BEC567980761D90500A33029 /* testtimer.app */; + productType = "com.apple.product-type.application"; + }; + BEC567A70761D90500A33029 /* testversion (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B598008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testversion (Upgraded)" */; + buildPhases = ( + BEC567A90761D90500A33029 /* Headers */, + BEC567AA0761D90500A33029 /* Resources */, + BEC567AC0761D90500A33029 /* Sources */, + BEC567AE0761D90500A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568570761D90600A33029 /* PBXTargetDependency */, + ); + name = "testversion (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testversion; + productReference = BEC567B20761D90500A33029 /* testversion.app */; + productType = "com.apple.product-type.application"; + }; + BEC567B40761D90500A33029 /* testvidinfo (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B598408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testvidinfo (Upgraded)" */; + buildPhases = ( + BEC567B60761D90500A33029 /* Headers */, + BEC567B70761D90500A33029 /* Resources */, + BEC567B90761D90500A33029 /* Sources */, + BEC567BB0761D90500A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568590761D90600A33029 /* PBXTargetDependency */, + ); + name = "testvidinfo (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testvidinfo; + productReference = BEC567BF0761D90500A33029 /* testvidinfo.app */; + productType = "com.apple.product-type.application"; + }; + BEC567C10761D90500A33029 /* testwin (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B598808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testwin (Upgraded)" */; + buildPhases = ( + BEC567C30761D90500A33029 /* Headers */, + BEC567C40761D90500A33029 /* Resources */, + BEC567C60761D90500A33029 /* Sources */, + BEC567C80761D90500A33029 /* Frameworks */, + 00794F0909D238E3003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC5685B0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testwin (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testwin; + productReference = BEC567CD0761D90500A33029 /* testwin.app */; + productType = "com.apple.product-type.application"; + }; + BEC567CF0761D90500A33029 /* testwm (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B598C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testwm (Upgraded)" */; + buildPhases = ( + BEC567D10761D90500A33029 /* Headers */, + BEC567D20761D90500A33029 /* Resources */, + BEC567D40761D90500A33029 /* Sources */, + BEC567D60761D90500A33029 /* Frameworks */, + 00794F0F09D23923003FC8A1 /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + BEC5685D0761D90600A33029 /* PBXTargetDependency */, + ); + name = "testwm (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = testwm; + productReference = BEC567DB0761D90600A33029 /* testwm.app */; + productType = "com.apple.product-type.application"; + }; + BEC567DD0761D90600A33029 /* threadwin (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B599008BDB826006539E9 /* Build configuration list for PBXNativeTarget "threadwin (Upgraded)" */; + buildPhases = ( + BEC567DF0761D90600A33029 /* Headers */, + BEC567E00761D90600A33029 /* Resources */, + BEC567E20761D90600A33029 /* Sources */, + BEC567E40761D90600A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC5685F0761D90600A33029 /* PBXTargetDependency */, + ); + name = "threadwin (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = threadwin; + productReference = BEC567E80761D90600A33029 /* threadwin.app */; + productType = "com.apple.product-type.application"; + }; + BEC567EA0761D90600A33029 /* torturethread (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B599408BDB826006539E9 /* Build configuration list for PBXNativeTarget "torturethread (Upgraded)" */; + buildPhases = ( + BEC567EC0761D90600A33029 /* Headers */, + BEC567ED0761D90600A33029 /* Resources */, + BEC567EF0761D90600A33029 /* Sources */, + BEC567F10761D90600A33029 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + BEC568610761D90600A33029 /* PBXTargetDependency */, + ); + name = "torturethread (Upgraded)"; + productInstallPath = "$(USER_APPS_DIR)"; + productName = tortureThread; + productReference = BEC567F50761D90600A33029 /* torturethread.app */; + productType = "com.apple.product-type.application"; + }; + BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */ = { + isa = PBXNativeTarget; + buildConfigurationList = 001B593408BDB826006539E9 /* Build configuration list for PBXNativeTarget "libsdlmain.a (Upgraded)" */; + buildPhases = ( + BEC567F80761D90600A33029 /* Headers */, + BEC567FB0761D90600A33029 /* Sources */, + BEC567FD0761D90600A33029 /* Frameworks */, + BEC567FE0761D90600A33029 /* Rez */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "libsdlmain.a (Upgraded)"; + productInstallPath = /usr/local/lib; + productName = libsdlmain.a; + productReference = BEC567FF0761D90600A33029 /* libsdlmain.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 08FB7793FE84155DC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 001B5A0C08BDB826006539E9 /* Build configuration list for PBXProject "SDLTest" */; + compatibilityVersion = "Xcode 2.4"; + hasScannedForEncodings = 1; + mainGroup = 08FB7794FE84155DC02AAC07 /* SDLTest */; + projectDirPath = ""; + projectReferences = ( + { + ProductGroup = 003FA63B093FFD41000C53B3 /* Products */; + ProjectRef = 003FA63A093FFD41000C53B3 /* SDL.xcodeproj */; + }, + ); + projectRoot = ""; + targets = ( + BEC566920761D90300A33029 /* All */, + BEC566AB0761D90300A33029 /* checkkeys (Upgraded) */, + BEC566B80761D90300A33029 /* graywin (Upgraded) */, + BEC566C50761D90300A33029 /* loopwave (Upgraded) */, + BEC566D30761D90300A33029 /* testalpha (Upgraded) */, + BEC566E10761D90300A33029 /* testbitmap (Upgraded) */, + 002F338609CA16BF00EBEB88 /* testblitspeed */, + BEC566EE0761D90300A33029 /* testcdrom (Upgraded) */, + 002F33CA09CA19A600EBEB88 /* testdyngl */, + BEC566FB0761D90300A33029 /* testerror (Upgraded) */, + 002F340109CA1BFF00EBEB88 /* testfile */, + BEC567080761D90400A33029 /* testgamma (Upgraded) */, + BEC567160761D90400A33029 /* testgl (Upgraded) */, + 002F342009CA1F0300EBEB88 /* testiconv */, + BEC567300761D90400A33029 /* testjoystick (Upgraded) */, + BEC5673D0761D90400A33029 /* testkeys (Upgraded) */, + BEC5674A0761D90400A33029 /* testlock (Upgraded) */, + BEC567570761D90400A33029 /* testoverlay (Upgraded) */, + 002F343C09CA1FB300EBEB88 /* testoverlay2 */, + BEC567640761D90400A33029 /* testpalette (Upgraded) */, + 002F345909CA204F00EBEB88 /* testplatform */, + BEC567720761D90500A33029 /* testsem (Upgraded) */, + BEC5677F0761D90500A33029 /* testsprite (Upgraded) */, + BEC567230761D90400A33029 /* testthread (Upgraded) */, + BEC5678D0761D90500A33029 /* testtimer (Upgraded) */, + BEC567A70761D90500A33029 /* testversion (Upgraded) */, + BEC567B40761D90500A33029 /* testvidinfo (Upgraded) */, + BEC567C10761D90500A33029 /* testwin (Upgraded) */, + BEC567CF0761D90500A33029 /* testwm (Upgraded) */, + BEC567DD0761D90600A33029 /* threadwin (Upgraded) */, + BEC567EA0761D90600A33029 /* torturethread (Upgraded) */, + BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */, + 002F337009CA14F900EBEB88 /* test */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXReferenceProxy section */ + 003FA643093FFD41000C53B3 /* SDL.framework */ = { + isa = PBXReferenceProxy; + fileType = wrapper.framework; + path = SDL.framework; + remoteRef = 003FA642093FFD41000C53B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 003FA645093FFD41000C53B3 /* libSDL.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libSDL.a; + remoteRef = 003FA644093FFD41000C53B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 003FA647093FFD41000C53B3 /* libSDLmain.a */ = { + isa = PBXReferenceProxy; + fileType = archive.ar; + path = libSDLmain.a; + remoteRef = 003FA646093FFD41000C53B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 003FA649093FFD41000C53B3 /* Standard DMG */ = { + isa = PBXReferenceProxy; + fileType = "compiled.mach-o.executable"; + path = "Standard DMG"; + remoteRef = 003FA648093FFD41000C53B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; + 003FA64B093FFD41000C53B3 /* Developer Extras Package */ = { + isa = PBXReferenceProxy; + fileType = "compiled.mach-o.executable"; + path = "Developer Extras Package"; + remoteRef = 003FA64A093FFD41000C53B3 /* PBXContainerItemProxy */; + sourceTree = BUILT_PRODUCTS_DIR; + }; +/* End PBXReferenceProxy section */ + +/* Begin PBXResourcesBuildPhase section */ + 002F337409CA14F900EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F337509CA14F900EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F338A09CA16BF00EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F338B09CA16BF00EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F33CE09CA19A600EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F33CF09CA19A600EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F340509CA1BFF00EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F340609CA1BFF00EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F342409CA1F0300EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F342509CA1F0300EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F344009CA1FB300EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F344109CA1FB300EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F345D09CA204F00EBEB88 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F345E09CA204F00EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566AE0761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566AF0761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566BB0761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566BC0761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566C80761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566C90761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566D60761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566D70761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566E40761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566E50761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566F10761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566F20761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566FE0761D90300A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566FF0761D90300A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5670B0761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5670C0761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567190761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5671A0761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567260761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567270761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567330761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567340761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567400761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567410761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5674D0761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5674E0761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5675A0761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567670761D90400A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567680761D90400A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567750761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567760761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567820761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567830761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567900761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567910761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567AA0761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567AB0761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567B70761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567B80761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567C40761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567C50761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567D20761D90500A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567D30761D90500A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567E00761D90600A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567E10761D90600A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567ED0761D90600A33029 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567EE0761D90600A33029 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXRezBuildPhase section */ + BEC567FE0761D90600A33029 /* Rez */ = { + isa = PBXRezBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXRezBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 002F337609CA14F900EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F338C09CA16BF00EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F339B09CA17BC00EBEB88 /* testblitspeed.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F33D009CA19A600EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F33E309CA1A0B00EBEB88 /* testdyngl.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F340709CA1BFF00EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F341809CA1C5B00EBEB88 /* testfile.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F342609CA1F0300EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F343709CA1F6F00EBEB88 /* testiconv.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F344209CA1FB300EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F345409CA202000EBEB88 /* testoverlay2.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 002F345F09CA204F00EBEB88 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F347009CA20A600EBEB88 /* testplatform.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566B00761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566B10761D90300A33029 /* checkkeys.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566BD0761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566BE0761D90300A33029 /* graywin.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566CA0761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566CB0761D90300A33029 /* loopwave.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566D80761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566D90761D90300A33029 /* testalpha.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566E60761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566E70761D90300A33029 /* testbitmap.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC566F30761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC566F40761D90300A33029 /* testcdrom.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567000761D90300A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567010761D90300A33029 /* testerror.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5670D0761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5670E0761D90400A33029 /* testgamma.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5671B0761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5671C0761D90400A33029 /* testgl.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567280761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567290761D90400A33029 /* testhread.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567350761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567360761D90400A33029 /* testjoystick.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567420761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567430761D90400A33029 /* testkeys.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5674F0761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567500761D90400A33029 /* testlock.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC5675C0761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5675D0761D90400A33029 /* testoverlay.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567690761D90400A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC5676A0761D90400A33029 /* testpalette.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567770761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567780761D90500A33029 /* testsem.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567840761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567850761D90500A33029 /* testsprite.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567920761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567930761D90500A33029 /* testtimer.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567AC0761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567AD0761D90500A33029 /* testver.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567B90761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567BA0761D90500A33029 /* testvidinfo.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567C60761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567C70761D90500A33029 /* testwin.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567D40761D90500A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567D50761D90500A33029 /* testwm.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567E20761D90600A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567E30761D90600A33029 /* threadwin.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567EF0761D90600A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567F00761D90600A33029 /* torturethread.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEC567FB0761D90600A33029 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + BEC567FC0761D90600A33029 /* SDLMain.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 002F337109CA14F900EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F337209CA14F900EBEB88 /* PBXContainerItemProxy */; + }; + 002F338709CA16BF00EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F338809CA16BF00EBEB88 /* PBXContainerItemProxy */; + }; + 002F33CB09CA19A600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F33CC09CA19A600EBEB88 /* PBXContainerItemProxy */; + }; + 002F340209CA1BFF00EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F340309CA1BFF00EBEB88 /* PBXContainerItemProxy */; + }; + 002F342109CA1F0300EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F342209CA1F0300EBEB88 /* PBXContainerItemProxy */; + }; + 002F343D09CA1FB300EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F343E09CA1FB300EBEB88 /* PBXContainerItemProxy */; + }; + 002F345A09CA204F00EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = 002F345B09CA204F00EBEB88 /* PBXContainerItemProxy */; + }; + 002F347909CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F338609CA16BF00EBEB88 /* testblitspeed */; + targetProxy = 002F347809CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F347B09CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F33CA09CA19A600EBEB88 /* testdyngl */; + targetProxy = 002F347A09CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F347D09CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F340109CA1BFF00EBEB88 /* testfile */; + targetProxy = 002F347C09CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F347F09CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F342009CA1F0300EBEB88 /* testiconv */; + targetProxy = 002F347E09CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F348109CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567570761D90400A33029 /* testoverlay (Upgraded) */; + targetProxy = 002F348009CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F348309CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F343C09CA1FB300EBEB88 /* testoverlay2 */; + targetProxy = 002F348209CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 002F348509CA215600EBEB88 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 002F345909CA204F00EBEB88 /* testplatform */; + targetProxy = 002F348409CA215600EBEB88 /* PBXContainerItemProxy */; + }; + 003FA6A809400236000C53B3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Framework; + targetProxy = 003FA6A709400236000C53B3 /* PBXContainerItemProxy */; + }; + BEC568010761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566AB0761D90300A33029 /* checkkeys (Upgraded) */; + targetProxy = BEC568000761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568030761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566B80761D90300A33029 /* graywin (Upgraded) */; + targetProxy = BEC568020761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568050761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566C50761D90300A33029 /* loopwave (Upgraded) */; + targetProxy = BEC568040761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568070761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566D30761D90300A33029 /* testalpha (Upgraded) */; + targetProxy = BEC568060761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568090761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566E10761D90300A33029 /* testbitmap (Upgraded) */; + targetProxy = BEC568080761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5680B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566EE0761D90300A33029 /* testcdrom (Upgraded) */; + targetProxy = BEC5680A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5680D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC566FB0761D90300A33029 /* testerror (Upgraded) */; + targetProxy = BEC5680C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5680F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567080761D90400A33029 /* testgamma (Upgraded) */; + targetProxy = BEC5680E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568110761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567160761D90400A33029 /* testgl (Upgraded) */; + targetProxy = BEC568100761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568130761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567230761D90400A33029 /* testthread (Upgraded) */; + targetProxy = BEC568120761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568150761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567300761D90400A33029 /* testjoystick (Upgraded) */; + targetProxy = BEC568140761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568170761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC5673D0761D90400A33029 /* testkeys (Upgraded) */; + targetProxy = BEC568160761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568190761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC5674A0761D90400A33029 /* testlock (Upgraded) */; + targetProxy = BEC568180761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5681B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567640761D90400A33029 /* testpalette (Upgraded) */; + targetProxy = BEC5681A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5681D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567720761D90500A33029 /* testsem (Upgraded) */; + targetProxy = BEC5681C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5681F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC5677F0761D90500A33029 /* testsprite (Upgraded) */; + targetProxy = BEC5681E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568210761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC5678D0761D90500A33029 /* testtimer (Upgraded) */; + targetProxy = BEC568200761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568250761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567A70761D90500A33029 /* testversion (Upgraded) */; + targetProxy = BEC568240761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568270761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567B40761D90500A33029 /* testvidinfo (Upgraded) */; + targetProxy = BEC568260761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568290761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567C10761D90500A33029 /* testwin (Upgraded) */; + targetProxy = BEC568280761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5682B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567CF0761D90500A33029 /* testwm (Upgraded) */; + targetProxy = BEC5682A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5682D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567DD0761D90600A33029 /* threadwin (Upgraded) */; + targetProxy = BEC5682C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5682F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567EA0761D90600A33029 /* torturethread (Upgraded) */; + targetProxy = BEC5682E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568310761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568300761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568330761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568320761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568350761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568340761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568370761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568360761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568390761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568380761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5683B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5683A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5683D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5683C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5683F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5683E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568410761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568400761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568430761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568420761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568450761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568440761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568470761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568460761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568490761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568480761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5684B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5684A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5684D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5684C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5684F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5684E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568510761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568500761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568530761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568520761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568570761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568560761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568590761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568580761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5685B0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5685A0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5685D0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5685C0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC5685F0761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC5685E0761D90600A33029 /* PBXContainerItemProxy */; + }; + BEC568610761D90600A33029 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = BEC567F70761D90600A33029 /* libsdlmain.a (Upgraded) */; + targetProxy = BEC568600761D90600A33029 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 001B593508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREFIX_HEADER = libsdlmain_prefix.h; + PRODUCT_NAME = sdlmain; + }; + name = Deployment; + }; + 001B593608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREFIX_HEADER = libsdlmain_prefix.h; + PRODUCT_NAME = sdlmain; + }; + name = Development; + }; + 001B593708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREFIX_HEADER = libsdlmain_prefix.h; + PRODUCT_NAME = sdlmain; + }; + name = Default; + }; + 001B593908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-checkkeys__Upgraded_.plist"; + PRODUCT_NAME = checkkeys; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B593A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-checkkeys__Upgraded_.plist"; + PRODUCT_NAME = checkkeys; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B593B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-checkkeys__Upgraded_.plist"; + PRODUCT_NAME = checkkeys; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B593D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-graywin__Upgraded_.plist"; + PRODUCT_NAME = graywin; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B593E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-graywin__Upgraded_.plist"; + PRODUCT_NAME = graywin; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B593F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-graywin__Upgraded_.plist"; + PRODUCT_NAME = graywin; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B594108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-loopwave__Upgraded_.plist"; + PRODUCT_NAME = loopwave; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B594208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-loopwave__Upgraded_.plist"; + PRODUCT_NAME = loopwave; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B594308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-loopwave__Upgraded_.plist"; + PRODUCT_NAME = loopwave; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B594508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testalpha__Upgraded_.plist"; + PRODUCT_NAME = testalpha; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B594608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testalpha__Upgraded_.plist"; + PRODUCT_NAME = testalpha; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B594708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testalpha__Upgraded_.plist"; + PRODUCT_NAME = testalpha; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B594908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testbitmap__Upgraded_.plist"; + PRODUCT_NAME = testbitmap; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B594A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testbitmap__Upgraded_.plist"; + PRODUCT_NAME = testbitmap; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B594B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testbitmap__Upgraded_.plist"; + PRODUCT_NAME = testbitmap; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B594D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testcdrom__Upgraded_.plist"; + PRODUCT_NAME = testcdrom; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B594E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testcdrom__Upgraded_.plist"; + PRODUCT_NAME = testcdrom; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B594F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testcdrom__Upgraded_.plist"; + PRODUCT_NAME = testcdrom; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B595108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testerror__Upgraded_.plist"; + PRODUCT_NAME = testerror; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B595208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testerror__Upgraded_.plist"; + PRODUCT_NAME = testerror; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B595308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testerror__Upgraded_.plist"; + PRODUCT_NAME = testerror; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B595508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testgamma__Upgraded_.plist"; + PRODUCT_NAME = testgamma; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B595608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testgamma__Upgraded_.plist"; + PRODUCT_NAME = testgamma; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B595708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testgamma__Upgraded_.plist"; + PRODUCT_NAME = testgamma; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B595908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = HAVE_OPENGL; + INFOPLIST_FILE = "Info-testgl__Upgraded_.plist"; + PRODUCT_NAME = testgl; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B595A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = HAVE_OPENGL; + INFOPLIST_FILE = "Info-testgl__Upgraded_.plist"; + PRODUCT_NAME = testgl; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B595B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = HAVE_OPENGL; + INFOPLIST_FILE = "Info-testgl__Upgraded_.plist"; + PRODUCT_NAME = testgl; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B595D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testthread__Upgraded_.plist"; + PRODUCT_NAME = testthread; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B595E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testthread__Upgraded_.plist"; + PRODUCT_NAME = testthread; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B595F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testthread__Upgraded_.plist"; + PRODUCT_NAME = testthread; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B596108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testjoystick__Upgraded_.plist"; + PRODUCT_NAME = testjoystick; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B596208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testjoystick__Upgraded_.plist"; + PRODUCT_NAME = testjoystick; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B596308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testjoystick__Upgraded_.plist"; + PRODUCT_NAME = testjoystick; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B596508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testkeys__Upgraded_.plist"; + PRODUCT_NAME = testkeys; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B596608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testkeys__Upgraded_.plist"; + PRODUCT_NAME = testkeys; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B596708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testkeys__Upgraded_.plist"; + PRODUCT_NAME = testkeys; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B596908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testlock__Upgraded_.plist"; + PRODUCT_NAME = testlock; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B596A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testlock__Upgraded_.plist"; + PRODUCT_NAME = testlock; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B596B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testlock__Upgraded_.plist"; + PRODUCT_NAME = testlock; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B596D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testpalette__Upgraded_.plist"; + PRODUCT_NAME = testpalette; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B596E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testpalette__Upgraded_.plist"; + PRODUCT_NAME = testpalette; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B596F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testpalette__Upgraded_.plist"; + PRODUCT_NAME = testpalette; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B597108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsem__Upgraded_.plist"; + PRODUCT_NAME = testsem; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B597208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsem__Upgraded_.plist"; + PRODUCT_NAME = testsem; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B597308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsem__Upgraded_.plist"; + PRODUCT_NAME = testsem; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B597508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsprite__Upgraded_.plist"; + PRODUCT_NAME = testsprite; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B597608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsprite__Upgraded_.plist"; + PRODUCT_NAME = testsprite; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B597708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testsprite__Upgraded_.plist"; + PRODUCT_NAME = testsprite; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B597908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testtimer__Upgraded_.plist"; + PRODUCT_NAME = testtimer; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B597A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testtimer__Upgraded_.plist"; + PRODUCT_NAME = testtimer; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B597B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testtimer__Upgraded_.plist"; + PRODUCT_NAME = testtimer; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B598108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testversion__Upgraded_.plist"; + PRODUCT_NAME = testversion; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B598208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testversion__Upgraded_.plist"; + PRODUCT_NAME = testversion; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B598308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testversion__Upgraded_.plist"; + PRODUCT_NAME = testversion; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B598508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testvidinfo__Upgraded_.plist"; + PRODUCT_NAME = testvidinfo; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B598608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testvidinfo__Upgraded_.plist"; + PRODUCT_NAME = testvidinfo; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B598708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testvidinfo__Upgraded_.plist"; + PRODUCT_NAME = testvidinfo; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B598908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwin__Upgraded_.plist"; + PRODUCT_NAME = testwin; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B598A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwin__Upgraded_.plist"; + PRODUCT_NAME = testwin; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B598B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwin__Upgraded_.plist"; + PRODUCT_NAME = testwin; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B598D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwm__Upgraded_.plist"; + PRODUCT_NAME = testwm; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B598E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwm__Upgraded_.plist"; + PRODUCT_NAME = testwm; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B598F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testwm__Upgraded_.plist"; + PRODUCT_NAME = testwm; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B599108BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-threadwin__Upgraded_.plist"; + PRODUCT_NAME = threadwin; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B599208BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-threadwin__Upgraded_.plist"; + PRODUCT_NAME = threadwin; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B599308BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-threadwin__Upgraded_.plist"; + PRODUCT_NAME = threadwin; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B599508BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-torturethread__Upgraded_.plist"; + PRODUCT_NAME = torturethread; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B599608BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-torturethread__Upgraded_.plist"; + PRODUCT_NAME = torturethread; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B599708BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-torturethread__Upgraded_.plist"; + PRODUCT_NAME = torturethread; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B599908BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = YES; + DEBUGGING_SYMBOLS = NO; + GCC_ENABLE_FIX_AND_CONTINUE = NO; + GCC_OPTIMIZATION_LEVEL = 3; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "Build All"; + SECTORDER_FLAGS = ""; + WARNING_CFLAGS = ( + "-Wmost", + "-Wno-four-char-constants", + "-Wno-unknown-pragmas", + ); + ZERO_LINK = NO; + }; + name = Deployment; + }; + 001B599A08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_GENERATE_DEBUGGING_SYMBOLS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ( + ); + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "Build All"; + SECTORDER_FLAGS = ""; + WARNING_CFLAGS = ( + "-Wmost", + "-Wno-four-char-constants", + "-Wno-unknown-pragmas", + ); + ZERO_LINK = YES; + }; + name = Development; + }; + 001B599B08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + OTHER_CFLAGS = ""; + OTHER_LDFLAGS = ""; + OTHER_REZFLAGS = ""; + PRODUCT_NAME = "Build All"; + SECTORDER_FLAGS = ""; + WARNING_CFLAGS = ( + "-Wmost", + "-Wno-four-char-constants", + "-Wno-unknown-pragmas", + ); + }; + name = Default; + }; + 001B599D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay__Upgraded_.plist"; + PRODUCT_NAME = testoverlay; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 001B599E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay__Upgraded_.plist"; + PRODUCT_NAME = testoverlay; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 001B599F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay__Upgraded_.plist"; + PRODUCT_NAME = testoverlay; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 001B5A0D08BDB826006539E9 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SRCROOT)/../SDL/build/$(CONFIGURATION)", + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + ); + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + HEADER_SEARCH_PATHS = ( + ../../include, + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + ); + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = "-Wmost"; + ZERO_LINK = NO; + }; + name = Deployment; + }; + 001B5A0E08BDB826006539E9 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SRCROOT)/../SDL/build/$(CONFIGURATION)", + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + ); + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + HEADER_SEARCH_PATHS = ( + ../../include, + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + ); + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = "-Wmost"; + ZERO_LINK = NO; + }; + name = Development; + }; + 001B5A0F08BDB826006539E9 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + CONFIGURATION_BUILD_DIR = "$(BUILD_DIR)/$(CONFIGURATION)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(SRCROOT)/../SDL/build/$(CONFIGURATION)", + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + ); + GCC_VERSION_i386 = 4.0; + GCC_VERSION_ppc = 4.0; + GCC_VERSION_x86_64 = 4.2; + HEADER_SEARCH_PATHS = ( + ../../include, + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + ); + MACOSX_DEPLOYMENT_TARGET_i386 = 10.4; + MACOSX_DEPLOYMENT_TARGET_ppc = 10.4; + MACOSX_DEPLOYMENT_TARGET_x86_64 = 10.6; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_i386 = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_ppc = /Developer/SDKs/MacOSX10.4u.sdk; + SDKROOT_x86_64 = /Developer/SDKs/MacOSX10.6.sdk; + WARNING_CFLAGS = "-Wmost"; + ZERO_LINK = NO; + }; + name = Default; + }; + 002F337E09CA14F900EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-test.plist"; + PRODUCT_NAME = test; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F337F09CA14F900EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-test.plist"; + PRODUCT_NAME = test; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F338009CA14F900EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-test.plist"; + PRODUCT_NAME = test; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F339409CA16BF00EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testblitspeed.plist"; + PRODUCT_NAME = testblitspeed; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F339509CA16BF00EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testblitspeed.plist"; + PRODUCT_NAME = testblitspeed; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F339609CA16BF00EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testblitspeed.plist"; + PRODUCT_NAME = testblitspeed; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F33D809CA19A600EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + HAVE_OPENGL, + ); + INFOPLIST_FILE = "Info-testdyngl.plist"; + PRODUCT_NAME = testdyngl; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F33D909CA19A600EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + HAVE_OPENGL, + ); + INFOPLIST_FILE = "Info-testdyngl.plist"; + PRODUCT_NAME = testdyngl; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F33DA09CA19A600EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + HAVE_OPENGL, + ); + INFOPLIST_FILE = "Info-testdyngl.plist"; + PRODUCT_NAME = testdyngl; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F340F09CA1BFF00EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testfile.plist"; + PRODUCT_NAME = testfile; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F341009CA1BFF00EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testfile.plist"; + PRODUCT_NAME = testfile; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F341109CA1BFF00EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testfile.plist"; + PRODUCT_NAME = testfile; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F342E09CA1F0300EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testiconv.plist"; + PRODUCT_NAME = testiconv; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F342F09CA1F0300EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testiconv.plist"; + PRODUCT_NAME = testiconv; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F343009CA1F0300EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testiconv.plist"; + PRODUCT_NAME = testiconv; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F344A09CA1FB300EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay2.plist"; + PRODUCT_NAME = testoverlay2; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F344B09CA1FB300EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay2.plist"; + PRODUCT_NAME = testoverlay2; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F344C09CA1FB300EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testoverlay2.plist"; + PRODUCT_NAME = testoverlay2; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; + 002F346709CA204F00EBEB88 /* Deployment */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testplatform.plist"; + PRODUCT_NAME = testplatform; + WRAPPER_EXTENSION = app; + }; + name = Deployment; + }; + 002F346809CA204F00EBEB88 /* Development */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testplatform.plist"; + PRODUCT_NAME = testplatform; + WRAPPER_EXTENSION = app; + }; + name = Development; + }; + 002F346909CA204F00EBEB88 /* Default */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = "Info-testplatform.plist"; + PRODUCT_NAME = testplatform; + WRAPPER_EXTENSION = app; + }; + name = Default; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 001B593408BDB826006539E9 /* Build configuration list for PBXNativeTarget "libsdlmain.a (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B593508BDB826006539E9 /* Deployment */, + 001B593608BDB826006539E9 /* Development */, + 001B593708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B593808BDB826006539E9 /* Build configuration list for PBXNativeTarget "checkkeys (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B593908BDB826006539E9 /* Deployment */, + 001B593A08BDB826006539E9 /* Development */, + 001B593B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B593C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "graywin (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B593D08BDB826006539E9 /* Deployment */, + 001B593E08BDB826006539E9 /* Development */, + 001B593F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B594008BDB826006539E9 /* Build configuration list for PBXNativeTarget "loopwave (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B594108BDB826006539E9 /* Deployment */, + 001B594208BDB826006539E9 /* Development */, + 001B594308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B594408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testalpha (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B594508BDB826006539E9 /* Deployment */, + 001B594608BDB826006539E9 /* Development */, + 001B594708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B594808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testbitmap (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B594908BDB826006539E9 /* Deployment */, + 001B594A08BDB826006539E9 /* Development */, + 001B594B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B594C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testcdrom (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B594D08BDB826006539E9 /* Deployment */, + 001B594E08BDB826006539E9 /* Development */, + 001B594F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B595008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testerror (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B595108BDB826006539E9 /* Deployment */, + 001B595208BDB826006539E9 /* Development */, + 001B595308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B595408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testgamma (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B595508BDB826006539E9 /* Deployment */, + 001B595608BDB826006539E9 /* Development */, + 001B595708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B595808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testgl (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B595908BDB826006539E9 /* Deployment */, + 001B595A08BDB826006539E9 /* Development */, + 001B595B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B595C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testthread (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B595D08BDB826006539E9 /* Deployment */, + 001B595E08BDB826006539E9 /* Development */, + 001B595F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B596008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testjoystick (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B596108BDB826006539E9 /* Deployment */, + 001B596208BDB826006539E9 /* Development */, + 001B596308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B596408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testkeys (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B596508BDB826006539E9 /* Deployment */, + 001B596608BDB826006539E9 /* Development */, + 001B596708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B596808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testlock (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B596908BDB826006539E9 /* Deployment */, + 001B596A08BDB826006539E9 /* Development */, + 001B596B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B596C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testpalette (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B596D08BDB826006539E9 /* Deployment */, + 001B596E08BDB826006539E9 /* Development */, + 001B596F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B597008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testsem (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B597108BDB826006539E9 /* Deployment */, + 001B597208BDB826006539E9 /* Development */, + 001B597308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B597408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testsprite (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B597508BDB826006539E9 /* Deployment */, + 001B597608BDB826006539E9 /* Development */, + 001B597708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B597808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testtimer (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B597908BDB826006539E9 /* Deployment */, + 001B597A08BDB826006539E9 /* Development */, + 001B597B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B598008BDB826006539E9 /* Build configuration list for PBXNativeTarget "testversion (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B598108BDB826006539E9 /* Deployment */, + 001B598208BDB826006539E9 /* Development */, + 001B598308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B598408BDB826006539E9 /* Build configuration list for PBXNativeTarget "testvidinfo (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B598508BDB826006539E9 /* Deployment */, + 001B598608BDB826006539E9 /* Development */, + 001B598708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B598808BDB826006539E9 /* Build configuration list for PBXNativeTarget "testwin (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B598908BDB826006539E9 /* Deployment */, + 001B598A08BDB826006539E9 /* Development */, + 001B598B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B598C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testwm (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B598D08BDB826006539E9 /* Deployment */, + 001B598E08BDB826006539E9 /* Development */, + 001B598F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B599008BDB826006539E9 /* Build configuration list for PBXNativeTarget "threadwin (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B599108BDB826006539E9 /* Deployment */, + 001B599208BDB826006539E9 /* Development */, + 001B599308BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B599408BDB826006539E9 /* Build configuration list for PBXNativeTarget "torturethread (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B599508BDB826006539E9 /* Deployment */, + 001B599608BDB826006539E9 /* Development */, + 001B599708BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B599808BDB826006539E9 /* Build configuration list for PBXAggregateTarget "All" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B599908BDB826006539E9 /* Deployment */, + 001B599A08BDB826006539E9 /* Development */, + 001B599B08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B599C08BDB826006539E9 /* Build configuration list for PBXNativeTarget "testoverlay (Upgraded)" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B599D08BDB826006539E9 /* Deployment */, + 001B599E08BDB826006539E9 /* Development */, + 001B599F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 001B5A0C08BDB826006539E9 /* Build configuration list for PBXProject "SDLTest" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 001B5A0D08BDB826006539E9 /* Deployment */, + 001B5A0E08BDB826006539E9 /* Development */, + 001B5A0F08BDB826006539E9 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F337D09CA14F900EBEB88 /* Build configuration list for PBXNativeTarget "test" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F337E09CA14F900EBEB88 /* Deployment */, + 002F337F09CA14F900EBEB88 /* Development */, + 002F338009CA14F900EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F339309CA16BF00EBEB88 /* Build configuration list for PBXNativeTarget "testblitspeed" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F339409CA16BF00EBEB88 /* Deployment */, + 002F339509CA16BF00EBEB88 /* Development */, + 002F339609CA16BF00EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F33D709CA19A600EBEB88 /* Build configuration list for PBXNativeTarget "testdyngl" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F33D809CA19A600EBEB88 /* Deployment */, + 002F33D909CA19A600EBEB88 /* Development */, + 002F33DA09CA19A600EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F340E09CA1BFF00EBEB88 /* Build configuration list for PBXNativeTarget "testfile" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F340F09CA1BFF00EBEB88 /* Deployment */, + 002F341009CA1BFF00EBEB88 /* Development */, + 002F341109CA1BFF00EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F342D09CA1F0300EBEB88 /* Build configuration list for PBXNativeTarget "testiconv" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F342E09CA1F0300EBEB88 /* Deployment */, + 002F342F09CA1F0300EBEB88 /* Development */, + 002F343009CA1F0300EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F344909CA1FB300EBEB88 /* Build configuration list for PBXNativeTarget "testoverlay2" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F344A09CA1FB300EBEB88 /* Deployment */, + 002F344B09CA1FB300EBEB88 /* Development */, + 002F344C09CA1FB300EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; + 002F346609CA204F00EBEB88 /* Build configuration list for PBXNativeTarget "testplatform" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 002F346709CA204F00EBEB88 /* Deployment */, + 002F346809CA204F00EBEB88 /* Development */, + 002F346909CA204F00EBEB88 /* Default */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Default; + }; +/* End XCConfigurationList section */ + }; + rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; +} diff --git a/Xcode/SDLTest/libsdlmain_prefix.h b/Xcode/SDLTest/libsdlmain_prefix.h new file mode 100644 index 000000000..ed41c9744 --- /dev/null +++ b/Xcode/SDLTest/libsdlmain_prefix.h @@ -0,0 +1,13 @@ +/* + * libsdlmain_prefix.h + * SDLTest + * + * Created by Darrell Walisser on Wed Aug 06 2003. + * Copyright (c) 2003 __MyCompanyName__. All rights reserved. + * + */ + +#include +#include +#include "SDL.h" +#include "SDLMain.h" \ No newline at end of file diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeLeopard/SDL Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.h b/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.m b/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..d9ca45493 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application."; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..0cff0a338 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,308 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 2.4"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Application/main.c b/Xcode/TemplatesForXcodeLeopard/SDL Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + IBDocumentLocation + 62 117 356 240 0 0 1152 848 + IBEditorPositions + + 29 + 62 362 195 44 0 0 1152 848 + + IBFramework Version + 291.0 + IBOpenObjects + + 29 + + IBSystem Version + 6L60 + + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib new file mode 100644 index 0000000000000000000000000000000000000000..637801528a03f85f28a290e5ffde3716217cd1e8 GIT binary patch literal 2590 zcmai0O=ufO6rM?xSg~ctZJL&nn5xhc(t^P$rKvAnS*{yFy-u@-9?e>s*qf|&)zxm? z%>4}t`N+du*aWAMQk3{69SZl%W_O3KXYFEO%jt2ghP z?|W~)nWxBrdpU&nYjxn?M~{hj=`^lL{%+}0KX8XB)zrS@QYrWMOS09p*N7|Ev0+VRM~Qsk?Yr6o|x7Ri;`L; zBKYey@ZF30$WY#!%OcB5q=ogy<*`)dvD9U^B2$Kmc9gy(^CVHZnL=un1A?U?VNn$= z#y`=s(iza|RbdD4@=Oj{aZSI3G7={&K!O0;yF>TxdZ_1+*tsJpzx%GDeTUnKctRRd zsL^`is873^cJOn<%Gis$x2=^#Y85E@upTyU+OUkQaV2bAwkMysF|(=`66Hg4bSa3O zL1u1u{xGG*z7?{I`!AuQ+K+m&`&629U{=+H#X|ZLyIW<1$#+4U487;m5?g7o#)Ia< zpsG#TmOHIm`aE*v^6e^HtFzSxyHjQ4TEUk>BGNlAy0v4wKS-^zUv%xyP*Pm2IrEdsTL;%BuI-{W^QxV2>JXdy746u+2JK zU+dI1Agz85rIF?CkkBcSl%LORozy?F;{K$GbSEx5->VF9h_BA7T1Yi%r@bt)+?H7y z>_NQ}VyvMrHtin6ETffIg+w+zA7Nf0zg92Mg()|s8i1%w<>HStj- zFa>CV)GC7_>!_-!#$3|2T*o$(wq>ETYdaXM$+;aag|U~4WWS;)OQP%%+sPnj%CRk1 zb9F1DI~h3z&*~O3$HjH(yLqQ1nz&$OkenD@V>;i=xGgdch>T|7u7r4&2qjE&2ZWGU zq}&%T>jGcJ@B@Ae!?$?@!_)jt3_s>; z7#`=3Fno_c#_)Z + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.h b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.m b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..1dcbea207 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application with Cocoa menus."; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..c61e527c4 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,320 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3AF009D08F1000EBEB88 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/SDLMain.nib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 2.4"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */ = { + isa = PBXVariantGroup; + children = ( + 002F3AF009D08F1000EBEB88 /* English */, + ); + name = SDLMain.nib; + sourceTree = ""; + }; + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/main.c b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL Cocoa Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.h b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.m b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..ba87745fc --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application that uses OpenGL."; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..529d44436 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,350 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF409D0938900EBEB88 /* atlantis.c */; }; + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF609D0938900EBEB88 /* dolphin.c */; }; + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF709D0938900EBEB88 /* shark.c */; }; + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF809D0938900EBEB88 /* swim.c */; }; + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF909D0938900EBEB88 /* whale.c */; }; + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C0009D093BD00EBEB88 /* OpenGL.framework */; }; + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C6009D0951E00EBEB88 /* GLUT.framework */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3BF409D0938900EBEB88 /* atlantis.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = atlantis.c; path = atlantis/atlantis.c; sourceTree = SOURCE_ROOT; }; + 002F3BF509D0938900EBEB88 /* atlantis.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = atlantis.h; path = atlantis/atlantis.h; sourceTree = SOURCE_ROOT; }; + 002F3BF609D0938900EBEB88 /* dolphin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = dolphin.c; path = atlantis/dolphin.c; sourceTree = SOURCE_ROOT; }; + 002F3BF709D0938900EBEB88 /* shark.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = shark.c; path = atlantis/shark.c; sourceTree = SOURCE_ROOT; }; + 002F3BF809D0938900EBEB88 /* swim.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = swim.c; path = atlantis/swim.c; sourceTree = SOURCE_ROOT; }; + 002F3BF909D0938900EBEB88 /* whale.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = whale.c; path = atlantis/whale.c; sourceTree = SOURCE_ROOT; }; + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 002F3C6009D0951E00EBEB88 /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = ../../../../../../../../../../System/Library/Frameworks/GLUT.framework; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 002F3BF309D0937800EBEB88 /* atlantis */ = { + isa = PBXGroup; + children = ( + 002F3BF409D0938900EBEB88 /* atlantis.c */, + 002F3BF509D0938900EBEB88 /* atlantis.h */, + 002F3BF609D0938900EBEB88 /* dolphin.c */, + 002F3BF709D0938900EBEB88 /* shark.c */, + 002F3BF809D0938900EBEB88 /* swim.c */, + 002F3BF909D0938900EBEB88 /* whale.c */, + ); + name = atlantis; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 002F3C6009D0951E00EBEB88 /* GLUT.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 002F3BF309D0937800EBEB88 /* atlantis */, + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 2.4"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */, + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */, + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */, + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */, + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.c new file mode 100644 index 000000000..4efdf6ce8 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.c @@ -0,0 +1,459 @@ + +/* Copyright (c) Mark J. Kilgard, 1994. */ + +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include +#include +#include +#include +#include "atlantis.h" + +fishRec sharks[NUM_SHARKS]; +fishRec momWhale; +fishRec babyWhale; +fishRec dolph; + +GLboolean Timing = GL_TRUE; + +int w_win = 640; +int h_win = 480; +GLint count = 0; +GLenum StrMode = GL_VENDOR; + +GLboolean moving; + +static double mtime(void) +{ + struct timeval tk_time; + struct timezone tz; + + gettimeofday(&tk_time, &tz); + + return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec; +} + +static double filter(double in, double *save) +{ + static double k1 = 0.9; + static double k2 = 0.05; + + save[3] = in; + save[1] = save[0]*k1 + k2*(save[3] + save[2]); + + save[0]=save[1]; + save[2]=save[3]; + + return(save[1]); +} + +void DrawStr(const char *str) +{ + GLint i = 0; + + if(!str) return; + + while(str[i]) + { + glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]); + i++; + } +} + +void +InitFishs(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + sharks[i].x = 70000.0 + rand() % 6000; + sharks[i].y = rand() % 6000; + sharks[i].z = rand() % 6000; + sharks[i].psi = rand() % 360 - 180.0; + sharks[i].v = 1.0; + } + + dolph.x = 30000.0; + dolph.y = 0.0; + dolph.z = 6000.0; + dolph.psi = 90.0; + dolph.theta = 0.0; + dolph.v = 3.0; + + momWhale.x = 70000.0; + momWhale.y = 0.0; + momWhale.z = 0.0; + momWhale.psi = 90.0; + momWhale.theta = 0.0; + momWhale.v = 3.0; + + babyWhale.x = 60000.0; + babyWhale.y = -2000.0; + babyWhale.z = -2000.0; + babyWhale.psi = 90.0; + babyWhale.theta = 0.0; + babyWhale.v = 3.0; +} + +void +Atlantis_Init(void) +{ + static float ambient[] = {0.2, 0.2, 0.2, 1.0}; + static float diffuse[] = {1.0, 1.0, 1.0, 1.0}; + static float position[] = {0.0, 1.0, 0.0, 0.0}; + static float mat_shininess[] = {90.0}; + static float mat_specular[] = {0.8, 0.8, 0.8, 1.0}; + static float mat_diffuse[] = {0.46, 0.66, 0.795, 1.0}; + static float mat_ambient[] = {0.3, 0.4, 0.5, 1.0}; + static float lmodel_ambient[] = {0.4, 0.4, 0.4, 1.0}; + static float lmodel_localviewer[] = {0.0}; + //GLfloat map1[4] = {0.0, 0.0, 0.0, 0.0}; + //GLfloat map2[4] = {0.0, 0.0, 0.0, 0.0}; + static float fog_color[] = {0.0, 0.5, 0.9, 1.0}; + + glFrontFace(GL_CCW); + + glDepthFunc(GL_LESS); + glEnable(GL_DEPTH_TEST); + + glLightfv(GL_LIGHT0, GL_AMBIENT, ambient); + glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse); + glLightfv(GL_LIGHT0, GL_POSITION, position); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, lmodel_localviewer); + glEnable(GL_LIGHTING); + glEnable(GL_LIGHT0); + + glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse); + glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient); + + InitFishs(); + + glEnable(GL_FOG); + glFogi(GL_FOG_MODE, GL_EXP); + glFogf(GL_FOG_DENSITY, 0.0000025); + glFogfv(GL_FOG_COLOR, fog_color); + + glClearColor(0.0, 0.5, 0.9, 1.0); +} + +void +Atlantis_Reshape(int width, int height) +{ + w_win = width; + h_win = height; + + glViewport(0, 0, width, height); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0, 300000.0); + glMatrixMode(GL_MODELVIEW); +} + +void +Atlantis_Animate(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + SharkPilot(&sharks[i]); + SharkMiss(i); + } + WhalePilot(&dolph); + dolph.phi++; + //glutPostRedisplay(); + WhalePilot(&momWhale); + momWhale.phi++; + WhalePilot(&babyWhale); + babyWhale.phi++; +} + +void +Atlantis_Key(unsigned char key, int x, int y) +{ + switch (key) { + case 't': + Timing = !Timing; + break; + case ' ': + switch(StrMode) + { + case GL_EXTENSIONS: + StrMode = GL_VENDOR; + break; + case GL_VENDOR: + StrMode = GL_RENDERER; + break; + case GL_RENDERER: + StrMode = GL_VERSION; + break; + case GL_VERSION: + StrMode = GL_EXTENSIONS; + break; + } + break; + case 27: /* Esc will quit */ + exit(1); + break; + case 's': /* "s" start animation */ + moving = GL_TRUE; + //glutIdleFunc(Animate); + break; + case 'a': /* "a" stop animation */ + moving = GL_FALSE; + //glutIdleFunc(NULL); + break; + case '.': /* "." will advance frame */ + if (!moving) { + Atlantis_Animate(); + } + } +} +/* +void Display(void) +{ + static float P123[3] = {-448.94, -203.14, 9499.60}; + static float P124[3] = {-442.64, -185.20, 9528.07}; + static float P125[3] = {-441.07, -148.05, 9528.07}; + static float P126[3] = {-443.43, -128.84, 9499.60}; + static float P127[3] = {-456.87, -146.78, 9466.67}; + static float P128[3] = {-453.68, -183.93, 9466.67}; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glutSwapBuffers(); +} +*/ + +void +Atlantis_Display(void) +{ + int i; + static double th[4] = {0.0, 0.0, 0.0, 0.0}; + static double t1 = 0.0, t2 = 0.0, t; + char num_str[128]; + + t1 = t2; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + for (i = 0; i < NUM_SHARKS; i++) { + glPushMatrix(); + FishTransform(&sharks[i]); + DrawShark(&sharks[i]); + glPopMatrix(); + } + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&momWhale); + DrawWhale(&momWhale); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&babyWhale); + glScalef(0.45, 0.45, 0.3); + DrawWhale(&babyWhale); + glPopMatrix(); + + if(Timing) + { + t2 = mtime(); + t = t2 - t1; + if(t > 0.0001) t = 1.0 / t; + + glDisable(GL_LIGHTING); + //glDisable(GL_DEPTH_TEST); + + glColor3f(1.0, 0.0, 0.0); + + glMatrixMode (GL_PROJECTION); + glPushMatrix(); + glLoadIdentity(); + glOrtho(0, w_win, 0, h_win, -10.0, 10.0); + + glRasterPos2f(5.0, 5.0); + + switch(StrMode) + { + case GL_VENDOR: + sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VENDOR)); + break; + case GL_RENDERER: + sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_RENDERER)); + break; + case GL_VERSION: + sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VERSION)); + break; + case GL_EXTENSIONS: + sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_EXTENSIONS)); + break; + } + + glPopMatrix(); + glMatrixMode(GL_MODELVIEW); + + glEnable(GL_LIGHTING); + //glEnable(GL_DEPTH_TEST); + } + + count++; + + glutSwapBuffers(); +} + +/* +void +Visible(int state) +{ + if (state == GLUT_VISIBLE) { + if (moving) + glutIdleFunc(Animate); + } else { + if (moving) + glutIdleFunc(NULL); + } +} + + +void +timingSelect(int value) +{ + switch(value) + { + case 1: + StrMode = GL_VENDOR; + break; + case 2: + StrMode = GL_RENDERER; + break; + case 3: + StrMode = GL_VERSION; + break; + case 4: + StrMode = GL_EXTENSIONS; + break; + } +} + +void +menuSelect(int value) +{ + switch (value) { + case 1: + moving = GL_TRUE; + glutIdleFunc(Animate); + break; + case 2: + moving = GL_FALSE; + glutIdleFunc(NULL); + break; + case 4: + exit(0); + break; + } +} + +int +main(int argc, char **argv) +{ + GLboolean fullscreen = GL_FALSE; + GLint time_menu; + + srand(0); + + glutInit(&argc, argv); + if (argc > 1 && !strcmp(argv[1], "-w")) + fullscreen = GL_FALSE; + + //glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); + glutInitDisplayString("rgba double depth=24"); + if (fullscreen) { + glutGameModeString("1024x768:32"); + glutEnterGameMode(); + } else { + glutInitWindowSize(320, 240); + glutCreateWindow("Atlantis Timing"); + } + Init(); + glutDisplayFunc(Display); + glutReshapeFunc(Reshape); + glutKeyboardFunc(Key); + moving = GL_TRUE; +glutIdleFunc(Animate); + glutVisibilityFunc(Visible); + + time_menu = glutCreateMenu(timingSelect); + glutAddMenuEntry("GL_VENDOR", 1); + glutAddMenuEntry("GL_RENDERER", 2); + glutAddMenuEntry("GL_VERSION", 3); + glutAddMenuEntry("GL_EXTENSIONS", 4); + + glutCreateMenu(menuSelect); + glutAddMenuEntry("Start motion", 1); + glutAddMenuEntry("Stop motion", 2); + glutAddSubMenu("Timing Mode", time_menu); + glutAddMenuEntry("Quit", 4); + + //glutAttachMenu(GLUT_RIGHT_BUTTON); + glutAttachMenu(GLUT_RIGHT_BUTTON); + glutMainLoop(); + return 0; // ANSI C requires main to return int. +} +*/ \ No newline at end of file diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.h b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.h new file mode 100644 index 000000000..6ccf2d5f0 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/atlantis.h @@ -0,0 +1,65 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#define RAD 57.295 +#define RRAD 0.01745 + +#define NUM_SHARKS 4 +#define SHARKSIZE 6000 +#define SHARKSPEED 100.0 + +#define WHALESPEED 250.0 + +typedef struct _fishRec { + float x, y, z, phi, theta, psi, v; + float xt, yt, zt; + float htail, vtail; + float dtheta; + int spurt, attack; +} fishRec; + +extern fishRec sharks[NUM_SHARKS]; +extern fishRec momWhale; +extern fishRec babyWhale; +extern fishRec dolph; + +extern void FishTransform(fishRec *); +extern void WhalePilot(fishRec *); +extern void SharkPilot(fishRec *); +extern void SharkMiss(int); +extern void DrawWhale(fishRec *); +extern void DrawShark(fishRec *); +extern void DrawDolphin(fishRec *); diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/dolphin.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/dolphin.c new file mode 100644 index 000000000..9fba3ba98 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/dolphin.c @@ -0,0 +1,1934 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {-0.005937 ,-0.101998 ,-0.994767}; +static float N002[3] = {0.936780 ,-0.200803 ,0.286569}; +static float N003[3] = {-0.233062 ,0.972058 ,0.028007}; +static float N005[3] = {0.898117 ,0.360171 ,0.252315}; +static float N006[3] = {-0.915437 ,0.348456 ,0.201378}; +static float N007[3] = {0.602263 ,-0.777527 ,0.180920}; +static float N008[3] = {-0.906912 ,-0.412015 ,0.088061}; +static float N012[3] = {0.884408 ,-0.429417 ,-0.182821}; +static float N013[3] = {0.921121 ,0.311084 ,-0.234016}; +static float N014[3] = {0.382635 ,0.877882 ,-0.287948}; +static float N015[3] = {-0.380046 ,0.888166 ,-0.258316}; +static float N016[3] = {-0.891515 ,0.392238 ,-0.226607}; +static float N017[3] = {-0.901419 ,-0.382002 ,-0.203763}; +static float N018[3] = {-0.367225 ,-0.911091 ,-0.187243}; +static float N019[3] = {0.339539 ,-0.924846 ,-0.171388}; +static float N020[3] = {0.914706 ,-0.378617 ,-0.141290}; +static float N021[3] = {0.950662 ,0.262713 ,-0.164994}; +static float N022[3] = {0.546359 ,0.801460 ,-0.243218}; +static float N023[3] = {-0.315796 ,0.917068 ,-0.243431}; +static float N024[3] = {-0.825687 ,0.532277 ,-0.186875}; +static float N025[3] = {-0.974763 ,-0.155232 ,-0.160435}; +static float N026[3] = {-0.560596 ,-0.816658 ,-0.137119}; +static float N027[3] = {0.380210 ,-0.910817 ,-0.160786}; +static float N028[3] = {0.923772 ,-0.358322 ,-0.135093}; +static float N029[3] = {0.951202 ,0.275053 ,-0.139859}; +static float N030[3] = {0.686099 ,0.702548 ,-0.188932}; +static float N031[3] = {-0.521865 ,0.826719 ,-0.210220}; +static float N032[3] = {-0.923820 ,0.346739 ,-0.162258}; +static float N033[3] = {-0.902095 ,-0.409995 ,-0.134646}; +static float N034[3] = {-0.509115 ,-0.848498 ,-0.144404}; +static float N035[3] = {0.456469 ,-0.880293 ,-0.129305}; +static float N036[3] = {0.873401 ,-0.475489 ,-0.105266}; +static float N037[3] = {0.970825 ,0.179861 ,-0.158584}; +static float N038[3] = {0.675609 ,0.714187 ,-0.183004}; +static float N039[3] = {-0.523574 ,0.830212 ,-0.191360}; +static float N040[3] = {-0.958895 ,0.230808 ,-0.165071}; +static float N041[3] = {-0.918285 ,-0.376803 ,-0.121542}; +static float N042[3] = {-0.622467 ,-0.774167 ,-0.114888}; +static float N043[3] = {0.404497 ,-0.908807 ,-0.102231}; +static float N044[3] = {0.930538 ,-0.365155 ,-0.027588}; +static float N045[3] = {0.921920 ,0.374157 ,-0.100345}; +static float N046[3] = {0.507346 ,0.860739 ,0.041562}; +static float N047[3] = {-0.394646 ,0.918815 ,-0.005730}; +static float N048[3] = {-0.925411 ,0.373024 ,-0.066837}; +static float N049[3] = {-0.945337 ,-0.322309 ,-0.049551}; +static float N050[3] = {-0.660437 ,-0.750557 ,-0.022072}; +static float N051[3] = {0.488835 ,-0.871950 ,-0.027261}; +static float N052[3] = {0.902599 ,-0.421397 ,0.087969}; +static float N053[3] = {0.938636 ,0.322606 ,0.122020}; +static float N054[3] = {0.484605 ,0.871078 ,0.079878}; +static float N055[3] = {-0.353607 ,0.931559 ,0.084619}; +static float N056[3] = {-0.867759 ,0.478564 ,0.134054}; +static float N057[3] = {-0.951583 ,-0.296030 ,0.082794}; +static float N058[3] = {-0.672355 ,-0.730209 ,0.121384}; +static float N059[3] = {0.528336 ,-0.842452 ,0.105525}; +static float N060[3] = {0.786913 ,-0.564760 ,0.248627}; +static float N062[3] = {0.622098 ,0.765230 ,0.165584}; +static float N063[3] = {-0.631711 ,0.767816 ,0.106773}; +static float N064[3] = {-0.687886 ,0.606351 ,0.398938}; +static float N065[3] = {-0.946327 ,-0.281623 ,0.158598}; +static float N066[3] = {-0.509549 ,-0.860437 ,0.002776}; +static float N067[3] = {0.462594 ,-0.876692 ,0.131977}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N078[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N079[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N080[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N081[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N082[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N083[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N084[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N085[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N086[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N087[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N088[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N089[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N090[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N097[3] = {-0.697296 ,0.702881 ,0.140491}; +static float N098[3] = {0.918864 ,0.340821 ,0.198819}; +static float N099[3] = {-0.932737 ,0.201195 ,0.299202}; +static float N100[3] = {0.029517 ,0.981679 ,0.188244}; +static float N102[3] = {0.813521 ,-0.204936 ,0.544229}; +static float N110[3] = {-0.781480 ,-0.384779 ,0.491155}; +static float N111[3] = {-0.722243 ,0.384927 ,0.574627}; +static float N112[3] = {-0.752278 ,0.502679 ,0.425901}; +static float N113[3] = {0.547257 ,0.367910 ,0.751766}; +static float N114[3] = {0.725949 ,-0.232568 ,0.647233}; +static float N115[3] = {-0.747182 ,-0.660786 ,0.071280}; +static float N116[3] = {0.931519 ,0.200748 ,0.303270}; +static float N117[3] = {-0.828928 ,0.313757 ,0.463071}; +static float N118[3] = {0.902554 ,-0.370967 ,0.218587}; +static float N119[3] = {-0.879257 ,-0.441851 ,0.177973}; +static float N120[3] = {0.642327 ,0.611901 ,0.461512}; +static float N121[3] = {0.964817 ,-0.202322 ,0.167910}; +static float N122[3] = {0.000000 ,1.000000 ,0.000000}; +static float P001[3] = {5.68, -300.95, 1324.70}; +static float P002[3] = {338.69, -219.63, 9677.03}; +static float P003[3] = {12.18, 474.59, 9138.14}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 68.74, 9427.85}; +static float P007[3] = {156.52, -266.72, 10311.68}; +static float P008[3] = {-185.56, -266.51, 10310.47}; +static float P009[3] = {124.39, -261.46, 1942.34}; +static float P010[3] = {-130.05, -261.46, 1946.03}; +static float P011[3] = {141.07, -320.11, 1239.38}; +static float P012[3] = {156.48, -360.12, 2073.41}; +static float P013[3] = {162.00, -175.88, 2064.44}; +static float P014[3] = {88.16, -87.72, 2064.02}; +static float P015[3] = {-65.21, -96.13, 2064.02}; +static float P016[3] = {-156.48, -180.96, 2064.44}; +static float P017[3] = {-162.00, -368.93, 2082.39}; +static float P018[3] = {-88.16, -439.22, 2082.39}; +static float P019[3] = {65.21, -440.32, 2083.39}; +static float P020[3] = {246.87, -356.02, 2576.95}; +static float P021[3] = {253.17, -111.15, 2567.15}; +static float P022[3] = {132.34, 51.41, 2559.84}; +static float P023[3] = {-97.88, 40.44, 2567.15}; +static float P024[3] = {-222.97, -117.49, 2567.15}; +static float P025[3] = {-252.22, -371.53, 2569.92}; +static float P026[3] = {-108.44, -518.19, 2586.75}; +static float P027[3] = {97.88, -524.79, 2586.75}; +static float P028[3] = {370.03, -421.19, 3419.70}; +static float P029[3] = {351.15, -16.98, 3423.17}; +static float P030[3] = {200.66, 248.46, 3430.37}; +static float P031[3] = {-148.42, 235.02, 3417.91}; +static float P032[3] = {-360.21, -30.27, 3416.84}; +static float P033[3] = {-357.90, -414.89, 3407.04}; +static float P034[3] = {-148.88, -631.35, 3409.90}; +static float P035[3] = {156.38, -632.59, 3419.70}; +static float P036[3] = {462.61, -469.21, 4431.51}; +static float P037[3] = {466.60, 102.25, 4434.98}; +static float P038[3] = {243.05, 474.34, 4562.02}; +static float P039[3] = {-191.23, 474.40, 4554.42}; +static float P040[3] = {-476.12, 111.05, 4451.11}; +static float P041[3] = {-473.36, -470.74, 4444.78}; +static float P042[3] = {-266.95, -748.41, 4447.78}; +static float P043[3] = {211.14, -749.91, 4429.73}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 6360.63}; +static float P046[3] = {371.29, 804.51, 6486.26}; +static float P047[3] = {-291.43, 797.22, 6494.28}; +static float P048[3] = {-784.13, 370.75, 6378.01}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float iP001[3] = {5.68, -300.95, 1324.70}; +static float iP009[3] = {124.39, -261.46, 1942.34}; +static float iP010[3] = {-130.05, -261.46, 1946.03}; +static float iP011[3] = {141.07, -320.11, 1239.38}; +static float iP012[3] = {156.48, -360.12, 2073.41}; +static float iP013[3] = {162.00, -175.88, 2064.44}; +static float iP014[3] = {88.16, -87.72, 2064.02}; +static float iP015[3] = {-65.21, -96.13, 2064.02}; +static float iP016[3] = {-156.48, -180.96, 2064.44}; +static float iP017[3] = {-162.00, -368.93, 2082.39}; +static float iP018[3] = {-88.16, -439.22, 2082.39}; +static float iP019[3] = {65.21, -440.32, 2083.39}; +static float iP020[3] = {246.87, -356.02, 2576.95}; +static float iP021[3] = {253.17, -111.15, 2567.15}; +static float iP022[3] = {132.34, 51.41, 2559.84}; +static float iP023[3] = {-97.88, 40.44, 2567.15}; +static float iP024[3] = {-222.97, -117.49, 2567.15}; +static float iP025[3] = {-252.22, -371.53, 2569.92}; +static float iP026[3] = {-108.44, -518.19, 2586.75}; +static float iP027[3] = {97.88, -524.79, 2586.75}; +static float iP028[3] = {370.03, -421.19, 3419.70}; +static float iP029[3] = {351.15, -16.98, 3423.17}; +static float iP030[3] = {200.66, 248.46, 3430.37}; +static float iP031[3] = {-148.42, 235.02, 3417.91}; +static float iP032[3] = {-360.21, -30.27, 3416.84}; +static float iP033[3] = {-357.90, -414.89, 3407.04}; +static float iP034[3] = {-148.88, -631.35, 3409.90}; +static float iP035[3] = {156.38, -632.59, 3419.70}; +static float iP036[3] = {462.61, -469.21, 4431.51}; +static float iP037[3] = {466.60, 102.25, 4434.98}; +static float iP038[3] = {243.05, 474.34, 4562.02}; +static float iP039[3] = {-191.23, 474.40, 4554.42}; +static float iP040[3] = {-476.12, 111.05, 4451.11}; +static float iP041[3] = {-473.36, -470.74, 4444.78}; +static float iP042[3] = {-266.95, -748.41, 4447.78}; +static float iP043[3] = {211.14, -749.91, 4429.73}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 6360.63}; +static float iP046[3] = {371.29, 804.51, 6486.26}; +static float iP047[3] = {-291.43, 797.22, 6494.28}; +static float iP048[3] = {-784.13, 370.75, 6378.01}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -300.15, 7894.03}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {246.22, 558.53, 8460.50}; +static float P055[3] = {-230.41, 559.84, 8473.23}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 338.75, 9450.30}; +static float P063[3] = {-165.71, 341.04, 9462.35}; +static float P064[3] = {-298.11, 110.13, 10180.37}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -491.45, 9348.73}; +static float P068[3] = {-136.29, -319.84, 1228.73}; +static float P069[3] = {1111.17, -314.14, 1314.19}; +static float P070[3] = {-1167.34, -321.61, 1319.45}; +static float P071[3] = {1404.86, -306.66, 1235.45}; +static float P072[3] = {-1409.73, -314.14, 1247.66}; +static float P073[3] = {1254.01, -296.87, 1544.58}; +static float P074[3] = {-1262.09, -291.70, 1504.26}; +static float P075[3] = {965.71, -269.26, 1742.65}; +static float P076[3] = {-900.97, -276.74, 1726.07}; +static float iP068[3] = {-136.29, -319.84, 1228.73}; +static float iP069[3] = {1111.17, -314.14, 1314.19}; +static float iP070[3] = {-1167.34, -321.61, 1319.45}; +static float iP071[3] = {1404.86, -306.66, 1235.45}; +static float iP072[3] = {-1409.73, -314.14, 1247.66}; +static float iP073[3] = {1254.01, -296.87, 1544.58}; +static float iP074[3] = {-1262.09, -291.70, 1504.26}; +static float iP075[3] = {965.71, -269.26, 1742.65}; +static float iP076[3] = {-900.97, -276.74, 1726.07}; +static float P077[3] = {1058.00, -448.81, 8194.66}; +static float P078[3] = {-1016.51, -456.43, 8190.62}; +static float P079[3] = {-1515.96, -676.45, 7754.93}; +static float P080[3] = {1856.75, -830.34, 7296.56}; +static float P081[3] = {1472.16, -497.38, 7399.68}; +static float P082[3] = {-1775.26, -829.51, 7298.46}; +static float P083[3] = {911.09, -252.51, 7510.99}; +static float P084[3] = {-1451.94, -495.62, 7384.30}; +static float P085[3] = {1598.75, -669.26, 7769.90}; +static float P086[3] = {-836.53, -250.08, 7463.25}; +static float P087[3] = {722.87, -158.18, 8006.41}; +static float P088[3] = {-688.86, -162.28, 7993.89}; +static float P089[3] = {-626.92, -185.30, 8364.98}; +static float P090[3] = {647.72, -189.46, 8354.99}; +static float P091[3] = {0.00, 835.01, 5555.62}; +static float P092[3] = {0.00, 1350.18, 5220.86}; +static float P093[3] = {0.00, 1422.94, 5285.27}; +static float P094[3] = {0.00, 1296.75, 5650.19}; +static float P095[3] = {0.00, 795.63, 6493.88}; +static float iP091[3] = {0.00, 835.01, 5555.62}; +static float iP092[3] = {0.00, 1350.18, 5220.86}; +static float iP093[3] = {0.00, 1422.94, 5285.27}; +static float iP094[3] = {0.00, 1296.75, 5650.19}; +static float iP095[3] = {0.00, 795.63, 6493.88}; +static float P097[3] = {-194.91, -357.14, 10313.32}; +static float P098[3] = {135.35, -357.66, 10307.94}; +static float iP097[3] = {-194.91, -357.14, 10313.32}; +static float iP098[3] = {135.35, -357.66, 10307.94}; +static float P099[3] = {-380.53, -221.14, 9677.98}; +static float P100[3] = {0.00, 412.99, 9629.33}; +static float P102[3] = {59.51, -412.55, 10677.58}; +static float iP102[3] = {59.51, -412.55, 10677.58}; +static float P103[3] = {6.50, 484.74, 9009.94}; +static float P105[3] = {-41.86, 476.51, 9078.17}; +static float P108[3] = {49.20, 476.83, 9078.24}; +static float P110[3] = {-187.62, -410.04, 10674.12}; +static float iP110[3] = {-187.62, -410.04, 10674.12}; +static float P111[3] = {-184.25, -318.70, 10723.88}; +static float iP111[3] = {-184.25, -318.70, 10723.88}; +static float P112[3] = {-179.61, -142.81, 10670.26}; +static float P113[3] = {57.43, -147.94, 10675.26}; +static float P114[3] = {54.06, -218.90, 10712.44}; +static float P115[3] = {-186.35, -212.09, 10713.76}; +static float P116[3] = {205.90, -84.61, 10275.97}; +static float P117[3] = {-230.96, -83.26, 10280.09}; +static float iP118[3] = {216.78, -509.17, 10098.94}; +static float iP119[3] = {-313.21, -510.79, 10102.62}; +static float P118[3] = {216.78, -509.17, 10098.94}; +static float P119[3] = {-313.21, -510.79, 10102.62}; +static float P120[3] = {217.95, 96.34, 10161.62}; +static float P121[3] = {71.99, -319.74, 10717.70}; +static float iP121[3] = {71.99, -319.74, 10717.70}; +static float P122[3] = {0.00, 602.74, 5375.84}; +static float iP122[3] = {0.00, 602.74, 5375.84}; +static float P123[3] = {-448.94, -203.14, 9499.60}; +static float P124[3] = {-442.64, -185.20, 9528.07}; +static float P125[3] = {-441.07, -148.05, 9528.07}; +static float P126[3] = {-443.43, -128.84, 9499.60}; +static float P127[3] = {-456.87, -146.78, 9466.67}; +static float P128[3] = {-453.68, -183.93, 9466.67}; +static float P129[3] = {428.43, -124.08, 9503.03}; +static float P130[3] = {419.73, -142.14, 9534.56}; +static float P131[3] = {419.92, -179.96, 9534.56}; +static float P132[3] = {431.20, -199.73, 9505.26}; +static float P133[3] = {442.28, -181.67, 9475.96}; +static float P134[3] = {442.08, -143.84, 9475.96}; +/* *INDENT-ON* */ + +void +Dolphin001(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P076); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P072); + glVertex3fv(P074); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P072); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P074); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P068); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P001); + glVertex3fv(P010); + glEnd(); +} + +void +Dolphin002(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P001); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P075); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P075); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P069); + glVertex3fv(P073); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P009); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P069); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P073); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P071); + glVertex3fv(P073); + glEnd(); +} + +void +Dolphin003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Dolphin004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Dolphin005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Dolphin006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N091); + glVertex3fv(P091); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Dolphin007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Dolphin008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Dolphin009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Dolphin010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Dolphin011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Dolphin012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); +} + +void +Dolphin013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N113); + glVertex3fv(P113); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P007); + glVertex3fv(P008); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P007); + glVertex3fv(P114); + glVertex3fv(P115); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N112); + glVertex3fv(P112); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); +} + +void +Dolphin014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P098); + glVertex3fv(P097); + glVertex3fv(P111); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P099); + glVertex3fv(P097); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); +} + +void +Dolphin015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N117); + glVertex3fv(P117); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Dolphin016(void) +{ + + glDisable(GL_DEPTH_TEST); + glBegin(GL_POLYGON); + glVertex3fv(P123); + glVertex3fv(P124); + glVertex3fv(P125); + glVertex3fv(P126); + glVertex3fv(P127); + glVertex3fv(P128); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P129); + glVertex3fv(P130); + glVertex3fv(P131); + glVertex3fv(P132); + glVertex3fv(P133); + glVertex3fv(P134); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P103); + glVertex3fv(P105); + glVertex3fv(P108); + glEnd(); + glEnable(GL_DEPTH_TEST); +} + +void +DrawDolphin(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (10.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg3 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.0 * thrash * sin((fish->htail + 4.0) * RRAD); + seg2 = 3.0 * thrash * sin((fish->htail + 6.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 10.0) * RRAD); + seg5 = 4.5 * thrash * sin((fish->htail + 15.0) * RRAD); + seg6 = 5.0 * thrash * sin((fish->htail + 20.0) * RRAD); + seg7 = 6.0 * thrash * sin((fish->htail + 30.0) * RRAD); + + pitch = fish->v * sin((fish->htail + 180.0) * RRAD); + + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + chomp = 100.0; + + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3; + P122[1] = iP122[1] + seg3 * 1.5; + + P097[1] = iP097[1] + chomp; + P098[1] = iP098[1] + chomp; + P102[1] = iP102[1] + chomp; + P110[1] = iP110[1] + chomp; + P111[1] = iP111[1] + chomp; + P121[1] = iP121[1] + chomp; + P118[1] = iP118[1] + chomp; + P119[1] = iP119[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 7000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glEnable(GL_CULL_FACE); + Dolphin014(); + Dolphin010(); + Dolphin009(); + Dolphin012(); + Dolphin013(); + Dolphin006(); + Dolphin002(); + Dolphin001(); + Dolphin003(); + Dolphin015(); + Dolphin004(); + Dolphin005(); + Dolphin007(); + Dolphin008(); + Dolphin011(); + Dolphin016(); + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/shark.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/shark.c new file mode 100644 index 000000000..9c847dbaf --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/shark.c @@ -0,0 +1,1308 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N002[3] = {0.000077 ,-0.020611 ,0.999788}; +static float N003[3] = {0.961425 ,0.258729 ,-0.093390}; +static float N004[3] = {0.510811 ,-0.769633 ,-0.383063}; +static float N005[3] = {0.400123 ,0.855734 ,-0.328055}; +static float N006[3] = {-0.770715 ,0.610204 ,-0.183440}; +static float N007[3] = {-0.915597 ,-0.373345 ,-0.149316}; +static float N008[3] = {-0.972788 ,0.208921 ,-0.100179}; +static float N009[3] = {-0.939713 ,-0.312268 ,-0.139383}; +static float N010[3] = {-0.624138 ,-0.741047 ,-0.247589}; +static float N011[3] = {0.591434 ,-0.768401 ,-0.244471}; +static float N012[3] = {0.935152 ,-0.328495 ,-0.132598}; +static float N013[3] = {0.997102 ,0.074243 ,-0.016593}; +static float N014[3] = {0.969995 ,0.241712 ,-0.026186}; +static float N015[3] = {0.844539 ,0.502628 ,-0.184714}; +static float N016[3] = {-0.906608 ,0.386308 ,-0.169787}; +static float N017[3] = {-0.970016 ,0.241698 ,-0.025516}; +static float N018[3] = {-0.998652 ,0.050493 ,-0.012045}; +static float N019[3] = {-0.942685 ,-0.333051 ,-0.020556}; +static float N020[3] = {-0.660944 ,-0.750276 ,0.015480}; +static float N021[3] = {0.503549 ,-0.862908 ,-0.042749}; +static float N022[3] = {0.953202 ,-0.302092 ,-0.012089}; +static float N023[3] = {0.998738 ,0.023574 ,0.044344}; +static float N024[3] = {0.979297 ,0.193272 ,0.060202}; +static float N025[3] = {0.798300 ,0.464885 ,0.382883}; +static float N026[3] = {-0.756590 ,0.452403 ,0.472126}; +static float N027[3] = {-0.953855 ,0.293003 ,0.065651}; +static float N028[3] = {-0.998033 ,0.040292 ,0.048028}; +static float N029[3] = {-0.977079 ,-0.204288 ,0.059858}; +static float N030[3] = {-0.729117 ,-0.675304 ,0.111140}; +static float N031[3] = {0.598361 ,-0.792753 ,0.116221}; +static float N032[3] = {0.965192 ,-0.252991 ,0.066332}; +static float N033[3] = {0.998201 ,-0.002790 ,0.059892}; +static float N034[3] = {0.978657 ,0.193135 ,0.070207}; +static float N035[3] = {0.718815 ,0.680392 ,0.142733}; +static float N036[3] = {-0.383096 ,0.906212 ,0.178936}; +static float N037[3] = {-0.952831 ,0.292590 ,0.080647}; +static float N038[3] = {-0.997680 ,0.032417 ,0.059861}; +static float N039[3] = {-0.982629 ,-0.169881 ,0.074700}; +static float N040[3] = {-0.695424 ,-0.703466 ,0.146700}; +static float N041[3] = {0.359323 ,-0.915531 ,0.180805}; +static float N042[3] = {0.943356 ,-0.319387 ,0.089842}; +static float N043[3] = {0.998272 ,-0.032435 ,0.048993}; +static float N044[3] = {0.978997 ,0.193205 ,0.065084}; +static float N045[3] = {0.872144 ,0.470094 ,-0.135565}; +static float N046[3] = {-0.664282 ,0.737945 ,-0.119027}; +static float N047[3] = {-0.954508 ,0.288570 ,0.075107}; +static float N048[3] = {-0.998273 ,0.032406 ,0.048993}; +static float N049[3] = {-0.979908 ,-0.193579 ,0.048038}; +static float N050[3] = {-0.858736 ,-0.507202 ,-0.072938}; +static float N051[3] = {0.643545 ,-0.763887 ,-0.048237}; +static float N052[3] = {0.955580 ,-0.288954 ,0.058068}; +static float N058[3] = {0.000050 ,0.793007 ,-0.609213}; +static float N059[3] = {0.913510 ,0.235418 ,-0.331779}; +static float N060[3] = {-0.807970 ,0.495000 ,-0.319625}; +static float N061[3] = {0.000000 ,0.784687 ,-0.619892}; +static float N062[3] = {0.000000 ,-1.000000 ,0.000000}; +static float N063[3] = {0.000000 ,1.000000 ,0.000000}; +static float N064[3] = {0.000000 ,1.000000 ,0.000000}; +static float N065[3] = {0.000000 ,1.000000 ,0.000000}; +static float N066[3] = {-0.055784 ,0.257059 ,0.964784}; +static float N069[3] = {-0.000505 ,-0.929775 ,-0.368127}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float P002[3] = {0.00, -36.59, 5687.72}; +static float P003[3] = {90.00, 114.73, 724.38}; +static float P004[3] = {58.24, -146.84, 262.35}; +static float P005[3] = {27.81, 231.52, 510.43}; +static float P006[3] = {-27.81, 230.43, 509.76}; +static float P007[3] = {-46.09, -146.83, 265.84}; +static float P008[3] = {-90.00, 103.84, 718.53}; +static float P009[3] = {-131.10, -165.92, 834.85}; +static float P010[3] = {-27.81, -285.31, 500.00}; +static float P011[3] = {27.81, -285.32, 500.00}; +static float P012[3] = {147.96, -170.89, 845.50}; +static float P013[3] = {180.00, 0.00, 2000.00}; +static float P014[3] = {145.62, 352.67, 2000.00}; +static float P015[3] = {55.62, 570.63, 2000.00}; +static float P016[3] = {-55.62, 570.64, 2000.00}; +static float P017[3] = {-145.62, 352.68, 2000.00}; +static float P018[3] = {-180.00, 0.01, 2000.00}; +static float P019[3] = {-178.20, -352.66, 2001.61}; +static float P020[3] = {-55.63, -570.63, 2000.00}; +static float P021[3] = {55.62, -570.64, 2000.00}; +static float P022[3] = {179.91, -352.69, 1998.39}; +static float P023[3] = {150.00, 0.00, 3000.00}; +static float P024[3] = {121.35, 293.89, 3000.00}; +static float P025[3] = {46.35, 502.93, 2883.09}; +static float P026[3] = {-46.35, 497.45, 2877.24}; +static float P027[3] = {-121.35, 293.90, 3000.00}; +static float P028[3] = {-150.00, 0.00, 3000.00}; +static float P029[3] = {-152.21, -304.84, 2858.68}; +static float P030[3] = {-46.36, -475.52, 3000.00}; +static float P031[3] = {46.35, -475.53, 3000.00}; +static float P032[3] = {155.64, -304.87, 2863.50}; +static float P033[3] = {90.00, 0.00, 4000.00}; +static float P034[3] = {72.81, 176.33, 4000.00}; +static float P035[3] = {27.81, 285.32, 4000.00}; +static float P036[3] = {-27.81, 285.32, 4000.00}; +static float P037[3] = {-72.81, 176.34, 4000.00}; +static float P038[3] = {-90.00, 0.00, 4000.00}; +static float P039[3] = {-72.81, -176.33, 4000.00}; +static float P040[3] = {-27.81, -285.31, 4000.00}; +static float P041[3] = {27.81, -285.32, 4000.00}; +static float P042[3] = {72.81, -176.34, 4000.00}; +static float P043[3] = {30.00, 0.00, 5000.00}; +static float P044[3] = {24.27, 58.78, 5000.00}; +static float P045[3] = {9.27, 95.11, 5000.00}; +static float P046[3] = {-9.27, 95.11, 5000.00}; +static float P047[3] = {-24.27, 58.78, 5000.00}; +static float P048[3] = {-30.00, 0.00, 5000.00}; +static float P049[3] = {-24.27, -58.78, 5000.00}; +static float P050[3] = {-9.27, -95.10, 5000.00}; +static float P051[3] = {9.27, -95.11, 5000.00}; +static float P052[3] = {24.27, -58.78, 5000.00}; +static float P058[3] = {0.00, 1212.72, 2703.08}; +static float P059[3] = {50.36, 0.00, 108.14}; +static float P060[3] = {-22.18, 0.00, 108.14}; +static float P061[3] = {0.00, 1181.61, 6344.65}; +static float P062[3] = {516.45, -887.08, 2535.45}; +static float P063[3] = {-545.69, -879.31, 2555.63}; +static float P064[3] = {618.89, -1005.64, 2988.32}; +static float P065[3] = {-635.37, -1014.79, 2938.68}; +static float P066[3] = {0.00, 1374.43, 3064.18}; +static float P069[3] = {0.00, -418.25, 5765.04}; +static float P070[3] = {0.00, 1266.91, 6629.60}; +static float P071[3] = {-139.12, -124.96, 997.98}; +static float P072[3] = {-139.24, -110.18, 1020.68}; +static float P073[3] = {-137.33, -94.52, 1022.63}; +static float P074[3] = {-137.03, -79.91, 996.89}; +static float P075[3] = {-135.21, -91.48, 969.14}; +static float P076[3] = {-135.39, -110.87, 968.76}; +static float P077[3] = {150.23, -78.44, 995.53}; +static float P078[3] = {152.79, -92.76, 1018.46}; +static float P079[3] = {154.19, -110.20, 1020.55}; +static float P080[3] = {151.33, -124.15, 993.77}; +static float P081[3] = {150.49, -111.19, 969.86}; +static float P082[3] = {150.79, -92.41, 969.70}; +static float iP002[3] = {0.00, -36.59, 5687.72}; +static float iP004[3] = {58.24, -146.84, 262.35}; +static float iP007[3] = {-46.09, -146.83, 265.84}; +static float iP010[3] = {-27.81, -285.31, 500.00}; +static float iP011[3] = {27.81, -285.32, 500.00}; +static float iP023[3] = {150.00, 0.00, 3000.00}; +static float iP024[3] = {121.35, 293.89, 3000.00}; +static float iP025[3] = {46.35, 502.93, 2883.09}; +static float iP026[3] = {-46.35, 497.45, 2877.24}; +static float iP027[3] = {-121.35, 293.90, 3000.00}; +static float iP028[3] = {-150.00, 0.00, 3000.00}; +static float iP029[3] = {-121.35, -304.84, 2853.86}; +static float iP030[3] = {-46.36, -475.52, 3000.00}; +static float iP031[3] = {46.35, -475.53, 3000.00}; +static float iP032[3] = {121.35, -304.87, 2853.86}; +static float iP033[3] = {90.00, 0.00, 4000.00}; +static float iP034[3] = {72.81, 176.33, 4000.00}; +static float iP035[3] = {27.81, 285.32, 4000.00}; +static float iP036[3] = {-27.81, 285.32, 4000.00}; +static float iP037[3] = {-72.81, 176.34, 4000.00}; +static float iP038[3] = {-90.00, 0.00, 4000.00}; +static float iP039[3] = {-72.81, -176.33, 4000.00}; +static float iP040[3] = {-27.81, -285.31, 4000.00}; +static float iP041[3] = {27.81, -285.32, 4000.00}; +static float iP042[3] = {72.81, -176.34, 4000.00}; +static float iP043[3] = {30.00, 0.00, 5000.00}; +static float iP044[3] = {24.27, 58.78, 5000.00}; +static float iP045[3] = {9.27, 95.11, 5000.00}; +static float iP046[3] = {-9.27, 95.11, 5000.00}; +static float iP047[3] = {-24.27, 58.78, 5000.00}; +static float iP048[3] = {-30.00, 0.00, 5000.00}; +static float iP049[3] = {-24.27, -58.78, 5000.00}; +static float iP050[3] = {-9.27, -95.10, 5000.00}; +static float iP051[3] = {9.27, -95.11, 5000.00}; +static float iP052[3] = {24.27, -58.78, 5000.00}; +static float iP061[3] = {0.00, 1181.61, 6344.65}; +static float iP069[3] = {0.00, -418.25, 5765.04}; +static float iP070[3] = {0.00, 1266.91, 6629.60}; +/* *INDENT-ON* */ + +void +Fish001(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N017); + glVertex3fv(P017); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N007); + glVertex3fv(P007); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P072); + glVertex3fv(P073); + glVertex3fv(P074); + glVertex3fv(P075); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P077); + glVertex3fv(P078); + glVertex3fv(P079); + glVertex3fv(P080); + glVertex3fv(P081); + glVertex3fv(P082); + glEnd(); +} + +void +Fish002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); +} + +void +Fish004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N070); + glVertex3fv(P070); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); +} + +void +Fish005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Fish006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); +} + +void +Fish007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); +} + +void +Fish008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish009(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P059); + glVertex3fv(P012); + glVertex3fv(P009); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P012); + glVertex3fv(P004); + glVertex3fv(P007); + glVertex3fv(P009); + glEnd(); +} + +void +Fish_1(void) +{ + Fish004(); + Fish005(); + Fish003(); + Fish007(); + Fish006(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); +} + +void +Fish_2(void) +{ + Fish005(); + Fish004(); + Fish003(); + Fish008(); + Fish006(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); +} + +void +Fish_3(void) +{ + Fish005(); + Fish004(); + Fish007(); + Fish003(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_4(void) +{ + Fish005(); + Fish004(); + Fish008(); + Fish003(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_5(void) +{ + Fish009(); + Fish006(); + Fish007(); + Fish001(); + Fish002(); + Fish003(); + Fish008(); + Fish004(); + Fish005(); +} + +void +Fish_6(void) +{ + Fish009(); + Fish006(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish004(); + Fish005(); +} + +void +Fish_7(void) +{ + Fish009(); + Fish001(); + Fish007(); + Fish005(); + Fish002(); + Fish008(); + Fish003(); + Fish004(); + Fish006(); +} + +void +Fish_8(void) +{ + Fish009(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish005(); + Fish004(); + Fish006(); +} + +void +DrawShark(fishRec * fish) +{ + float mat[4][4]; + int n; + float seg1, seg2, seg3, seg4, segup; + float thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 50.0 * fish->v; + + seg1 = 0.6 * thrash * sin(fish->htail * RRAD); + seg2 = 1.8 * thrash * sin((fish->htail + 45.0) * RRAD); + seg3 = 3.0 * thrash * sin((fish->htail + 90.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 110.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P004[1] = iP004[1] + chomp; + P007[1] = iP007[1] + chomp; + P010[1] = iP010[1] + chomp; + P011[1] = iP011[1] + chomp; + + P023[0] = iP023[0] + seg1; + P024[0] = iP024[0] + seg1; + P025[0] = iP025[0] + seg1; + P026[0] = iP026[0] + seg1; + P027[0] = iP027[0] + seg1; + P028[0] = iP028[0] + seg1; + P029[0] = iP029[0] + seg1; + P030[0] = iP030[0] + seg1; + P031[0] = iP031[0] + seg1; + P032[0] = iP032[0] + seg1; + P033[0] = iP033[0] + seg2; + P034[0] = iP034[0] + seg2; + P035[0] = iP035[0] + seg2; + P036[0] = iP036[0] + seg2; + P037[0] = iP037[0] + seg2; + P038[0] = iP038[0] + seg2; + P039[0] = iP039[0] + seg2; + P040[0] = iP040[0] + seg2; + P041[0] = iP041[0] + seg2; + P042[0] = iP042[0] + seg2; + P043[0] = iP043[0] + seg3; + P044[0] = iP044[0] + seg3; + P045[0] = iP045[0] + seg3; + P046[0] = iP046[0] + seg3; + P047[0] = iP047[0] + seg3; + P048[0] = iP048[0] + seg3; + P049[0] = iP049[0] + seg3; + P050[0] = iP050[0] + seg3; + P051[0] = iP051[0] + seg3; + P052[0] = iP052[0] + seg3; + P002[0] = iP002[0] + seg4; + P061[0] = iP061[0] + seg4; + P069[0] = iP069[0] + seg4; + P070[0] = iP070[0] + seg4; + + fish->vtail += ((fish->dtheta - fish->vtail) * 0.1); + + if (fish->vtail > 0.5) { + fish->vtail = 0.5; + } else if (fish->vtail < -0.5) { + fish->vtail = -0.5; + } + segup = thrash * fish->vtail; + + P023[1] = iP023[1] + segup; + P024[1] = iP024[1] + segup; + P025[1] = iP025[1] + segup; + P026[1] = iP026[1] + segup; + P027[1] = iP027[1] + segup; + P028[1] = iP028[1] + segup; + P029[1] = iP029[1] + segup; + P030[1] = iP030[1] + segup; + P031[1] = iP031[1] + segup; + P032[1] = iP032[1] + segup; + P033[1] = iP033[1] + segup * 5.0; + P034[1] = iP034[1] + segup * 5.0; + P035[1] = iP035[1] + segup * 5.0; + P036[1] = iP036[1] + segup * 5.0; + P037[1] = iP037[1] + segup * 5.0; + P038[1] = iP038[1] + segup * 5.0; + P039[1] = iP039[1] + segup * 5.0; + P040[1] = iP040[1] + segup * 5.0; + P041[1] = iP041[1] + segup * 5.0; + P042[1] = iP042[1] + segup * 5.0; + P043[1] = iP043[1] + segup * 12.0; + P044[1] = iP044[1] + segup * 12.0; + P045[1] = iP045[1] + segup * 12.0; + P046[1] = iP046[1] + segup * 12.0; + P047[1] = iP047[1] + segup * 12.0; + P048[1] = iP048[1] + segup * 12.0; + P049[1] = iP049[1] + segup * 12.0; + P050[1] = iP050[1] + segup * 12.0; + P051[1] = iP051[1] + segup * 12.0; + P052[1] = iP052[1] + segup * 12.0; + P002[1] = iP002[1] + segup * 17.0; + P061[1] = iP061[1] + segup * 17.0; + P069[1] = iP069[1] + segup * 17.0; + P070[1] = iP070[1] + segup * 17.0; + + glPushMatrix(); + + glTranslatef(0.0, 0.0, -3000.0); + + glGetFloatv(GL_MODELVIEW_MATRIX, &mat[0][0]); + n = 0; + if (mat[0][2] >= 0.0) { + n += 1; + } + if (mat[1][2] >= 0.0) { + n += 2; + } + if (mat[2][2] >= 0.0) { + n += 4; + } + glScalef(2.0, 1.0, 1.0); + + glEnable(GL_CULL_FACE); + switch (n) { + case 0: + Fish_1(); + break; + case 1: + Fish_2(); + break; + case 2: + Fish_3(); + break; + case 3: + Fish_4(); + break; + case 4: + Fish_5(); + break; + case 5: + Fish_6(); + break; + case 6: + Fish_7(); + break; + case 7: + Fish_8(); + break; + } + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/swim.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/swim.c new file mode 100644 index 000000000..cac7b6095 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/swim.c @@ -0,0 +1,188 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include /* For rand(). */ +#include +#include "atlantis.h" + +void +FishTransform(fishRec * fish) +{ + + glTranslatef(fish->y, fish->z, -fish->x); + glRotatef(-fish->psi, 0.0, 1.0, 0.0); + glRotatef(fish->theta, 1.0, 0.0, 0.0); + glRotatef(-fish->phi, 0.0, 0.0, 1.0); +} + +void +WhalePilot(fishRec * fish) +{ + + fish->phi = -20.0; + fish->theta = 0.0; + fish->psi -= 0.5; + + fish->x += WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += WHALESPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkPilot(fishRec * fish) +{ + static int sign = 1; + float X, Y, Z, tpsi, ttheta, thetal; + + fish->xt = 60000.0; + fish->yt = 0.0; + fish->zt = 0.0; + + X = fish->xt - fish->x; + Y = fish->yt - fish->y; + Z = fish->zt - fish->z; + + thetal = fish->theta; + + ttheta = RAD * atan(Z / (sqrt(X * X + Y * Y))); + + if (ttheta > fish->theta + 0.25) { + fish->theta += 0.5; + } else if (ttheta < fish->theta - 0.25) { + fish->theta -= 0.5; + } + if (fish->theta > 90.0) { + fish->theta = 90.0; + } + if (fish->theta < -90.0) { + fish->theta = -90.0; + } + fish->dtheta = fish->theta - thetal; + + tpsi = RAD * atan2(Y, X); + + fish->attack = 0; + + if (fabs(tpsi - fish->psi) < 10.0) { + fish->attack = 1; + } else if (fabs(tpsi - fish->psi) < 45.0) { + if (fish->psi > tpsi) { + fish->psi -= 0.5; + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } else if (fish->psi < tpsi) { + fish->psi += 0.5; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + } + } else { + if (rand() % 100 > 98) { + sign = 1 - sign; + } + fish->psi += sign; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } + + if (fish->attack) { + if (fish->v < 1.1) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.2; + } + if (fish->v > 5.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.2; + } + } else { + if (!(rand() % 400) && (!fish->spurt)) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.05; + } + if (fish->v > 3.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.05; + } + } + + fish->x += SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += SHARKSPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkMiss(int i) +{ + int j; + float avoid, thetal; + float X, Y, Z, R; + + for (j = 0; j < NUM_SHARKS; j++) { + if (j != i) { + X = sharks[j].x - sharks[i].x; + Y = sharks[j].y - sharks[i].y; + Z = sharks[j].z - sharks[i].z; + + R = sqrt(X * X + Y * Y + Z * Z); + + avoid = 1.0; + thetal = sharks[i].theta; + + if (R < SHARKSIZE) { + if (Z > 0.0) { + sharks[i].theta -= avoid; + } else { + sharks[i].theta += avoid; + } + } + sharks[i].dtheta += (sharks[i].theta - thetal); + } + } +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/whale.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/whale.c new file mode 100644 index 000000000..828640ad0 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/atlantis/whale.c @@ -0,0 +1,1798 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {0.019249 ,0.011340 ,-0.999750}; +static float N002[3] = {-0.132579 ,0.954547 ,0.266952}; +static float N003[3] = {-0.196061 ,0.980392 ,-0.019778}; +static float N004[3] = {0.695461 ,0.604704 ,0.388158}; +static float N005[3] = {0.870600 ,0.425754 ,0.246557}; +static float N006[3] = {-0.881191 ,0.392012 ,0.264251}; +static float N008[3] = {-0.341437 ,0.887477 ,0.309523}; +static float N009[3] = {0.124035 ,-0.992278 ,0.000000}; +static float N010[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N011[3] = {0.588172 ,0.000000 ,0.808736}; +static float N012[3] = {0.929824 ,-0.340623 ,-0.139298}; +static float N013[3] = {0.954183 ,0.267108 ,-0.134865}; +static float N014[3] = {0.495127 ,0.855436 ,-0.151914}; +static float N015[3] = {-0.390199 ,0.906569 ,-0.160867}; +static float N016[3] = {-0.923605 ,0.354581 ,-0.145692}; +static float N017[3] = {-0.955796 ,-0.260667 ,-0.136036}; +static float N018[3] = {-0.501283 ,-0.853462 ,-0.142540}; +static float N019[3] = {0.405300 ,-0.901974 ,-0.148913}; +static float N020[3] = {0.909913 ,-0.392746 ,-0.133451}; +static float N021[3] = {0.936494 ,0.331147 ,-0.115414}; +static float N022[3] = {0.600131 ,0.793724 ,-0.099222}; +static float N023[3] = {-0.231556 ,0.968361 ,-0.093053}; +static float N024[3] = {-0.844369 ,0.525330 ,-0.105211}; +static float N025[3] = {-0.982725 ,-0.136329 ,-0.125164}; +static float N026[3] = {-0.560844 ,-0.822654 ,-0.093241}; +static float N027[3] = {0.263884 ,-0.959981 ,-0.093817}; +static float N028[3] = {0.842057 ,-0.525192 ,-0.122938}; +static float N029[3] = {0.921620 ,0.367565 ,-0.124546}; +static float N030[3] = {0.613927 ,0.784109 ,-0.090918}; +static float N031[3] = {-0.448754 ,0.888261 ,-0.098037}; +static float N032[3] = {-0.891865 ,0.434376 ,-0.126077}; +static float N033[3] = {-0.881447 ,-0.448017 ,-0.149437}; +static float N034[3] = {-0.345647 ,-0.922057 ,-0.174183}; +static float N035[3] = {0.307998 ,-0.941371 ,-0.137688}; +static float N036[3] = {0.806316 ,-0.574647 ,-0.140124}; +static float N037[3] = {0.961346 ,0.233646 ,-0.145681}; +static float N038[3] = {0.488451 ,0.865586 ,-0.110351}; +static float N039[3] = {-0.374290 ,0.921953 ,-0.099553}; +static float N040[3] = {-0.928504 ,0.344533 ,-0.138485}; +static float N041[3] = {-0.918419 ,-0.371792 ,-0.135189}; +static float N042[3] = {-0.520666 ,-0.833704 ,-0.183968}; +static float N043[3] = {0.339204 ,-0.920273 ,-0.195036}; +static float N044[3] = {0.921475 ,-0.387382 ,-0.028636}; +static float N045[3] = {0.842465 ,0.533335 ,-0.076204}; +static float N046[3] = {0.380110 ,0.924939 ,0.002073}; +static float N047[3] = {-0.276128 ,0.961073 ,-0.009579}; +static float N048[3] = {-0.879684 ,0.473001 ,-0.049250}; +static float N049[3] = {-0.947184 ,-0.317614 ,-0.044321}; +static float N050[3] = {-0.642059 ,-0.764933 ,-0.051363}; +static float N051[3] = {0.466794 ,-0.880921 ,-0.077990}; +static float N052[3] = {0.898509 ,-0.432277 ,0.076279}; +static float N053[3] = {0.938985 ,0.328141 ,0.103109}; +static float N054[3] = {0.442420 ,0.895745 ,0.043647}; +static float N055[3] = {-0.255163 ,0.966723 ,0.018407}; +static float N056[3] = {-0.833769 ,0.540650 ,0.111924}; +static float N057[3] = {-0.953653 ,-0.289939 ,0.080507}; +static float N058[3] = {-0.672357 ,-0.730524 ,0.119461}; +static float N059[3] = {0.522249 ,-0.846652 ,0.102157}; +static float N060[3] = {0.885868 ,-0.427631 ,0.179914}; +static float N062[3] = {0.648942 ,0.743116 ,0.163255}; +static float N063[3] = {-0.578967 ,0.807730 ,0.111219}; +static float N065[3] = {-0.909864 ,-0.352202 ,0.219321}; +static float N066[3] = {-0.502541 ,-0.818090 ,0.279610}; +static float N067[3] = {0.322919 ,-0.915358 ,0.240504}; +static float N068[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N069[3] = {0.000000 ,1.000000 ,0.000000}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N072[3] = {0.000000 ,1.000000 ,0.000000}; +static float N073[3] = {0.000000 ,1.000000 ,0.000000}; +static float N074[3] = {0.000000 ,1.000000 ,0.000000}; +static float N075[3] = {0.031220 ,0.999025 ,-0.031220}; +static float N076[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {0.446821 ,0.893642 ,0.041889}; +static float N078[3] = {0.863035 ,-0.100980 ,0.494949}; +static float N079[3] = {0.585597 ,-0.808215 ,0.062174}; +static float N080[3] = {0.000000 ,1.000000 ,0.000000}; +static float N081[3] = {1.000000 ,0.000000 ,0.000000}; +static float N082[3] = {0.000000 ,1.000000 ,0.000000}; +static float N083[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N084[3] = {-0.478893 ,0.837129 ,-0.264343}; +static float N085[3] = {0.000000 ,1.000000 ,0.000000}; +static float N086[3] = {0.763909 ,0.539455 ,-0.354163}; +static float N087[3] = {0.446821 ,0.893642 ,0.041889}; +static float N088[3] = {0.385134 ,-0.908288 ,0.163352}; +static float N089[3] = {-0.605952 ,0.779253 ,-0.159961}; +static float N090[3] = {0.000000 ,1.000000 ,0.000000}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N096[3] = {0.644444 ,-0.621516 ,0.445433}; +static float N097[3] = {-0.760896 ,-0.474416 ,0.442681}; +static float N098[3] = {0.636888 ,-0.464314 ,0.615456}; +static float N099[3] = {-0.710295 ,0.647038 ,0.277168}; +static float N100[3] = {0.009604 ,0.993655 ,0.112063}; +static float iP001[3] = {18.74, 13.19, 3.76}; +static float P001[3] = {18.74, 13.19, 3.76}; +static float P002[3] = {0.00, 390.42, 10292.57}; +static float P003[3] = {55.80, 622.31, 8254.35}; +static float P004[3] = {20.80, 247.66, 10652.13}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 199.04, 9353.01}; +static float P008[3] = {-34.67, 247.64, 10663.71}; +static float iP009[3] = {97.46, 67.63, 593.82}; +static float iP010[3] = {-84.33, 67.63, 588.18}; +static float iP011[3] = {118.69, 8.98, -66.91}; +static float P009[3] = {97.46, 67.63, 593.82}; +static float P010[3] = {-84.33, 67.63, 588.18}; +static float P011[3] = {118.69, 8.98, -66.91}; +static float iP012[3] = {156.48, -31.95, 924.54}; +static float iP013[3] = {162.00, 110.22, 924.54}; +static float iP014[3] = {88.16, 221.65, 924.54}; +static float iP015[3] = {-65.21, 231.16, 924.54}; +static float iP016[3] = {-156.48, 121.97, 924.54}; +static float iP017[3] = {-162.00, -23.93, 924.54}; +static float iP018[3] = {-88.16, -139.10, 924.54}; +static float iP019[3] = {65.21, -148.61, 924.54}; +static float iP020[3] = {246.87, -98.73, 1783.04}; +static float iP021[3] = {253.17, 127.76, 1783.04}; +static float iP022[3] = {132.34, 270.77, 1783.04}; +static float iP023[3] = {-97.88, 285.04, 1783.04}; +static float iP024[3] = {-222.97, 139.80, 1783.04}; +static float iP025[3] = {-225.29, -86.68, 1783.04}; +static float iP026[3] = {-108.44, -224.15, 1783.04}; +static float iP027[3] = {97.88, -221.56, 1783.04}; +static float iP028[3] = {410.55, -200.66, 3213.87}; +static float iP029[3] = {432.19, 148.42, 3213.87}; +static float iP030[3] = {200.66, 410.55, 3213.87}; +static float iP031[3] = {-148.42, 432.19, 3213.87}; +static float iP032[3] = {-407.48, 171.88, 3213.87}; +static float iP033[3] = {-432.19, -148.42, 3213.87}; +static float iP034[3] = {-148.88, -309.74, 3213.87}; +static float iP035[3] = {156.38, -320.17, 3213.87}; +static float iP036[3] = {523.39, -303.81, 4424.57}; +static float iP037[3] = {574.66, 276.84, 4424.57}; +static float iP038[3] = {243.05, 492.50, 4424.57}; +static float iP039[3] = {-191.23, 520.13, 4424.57}; +static float iP040[3] = {-523.39, 304.01, 4424.57}; +static float iP041[3] = {-574.66, -231.83, 4424.57}; +static float iP042[3] = {-266.95, -578.17, 4424.57}; +static float iP043[3] = {211.14, -579.67, 4424.57}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 5943.46}; +static float iP046[3] = {371.29, 614.13, 5943.46}; +static float iP047[3] = {-291.43, 621.86, 5943.46}; +static float iP048[3] = {-784.13, 362.60, 5943.46}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P012[3] = {156.48, -31.95, 924.54}; +static float P013[3] = {162.00, 110.22, 924.54}; +static float P014[3] = {88.16, 221.65, 924.54}; +static float P015[3] = {-65.21, 231.16, 924.54}; +static float P016[3] = {-156.48, 121.97, 924.54}; +static float P017[3] = {-162.00, -23.93, 924.54}; +static float P018[3] = {-88.16, -139.10, 924.54}; +static float P019[3] = {65.21, -148.61, 924.54}; +static float P020[3] = {246.87, -98.73, 1783.04}; +static float P021[3] = {253.17, 127.76, 1783.04}; +static float P022[3] = {132.34, 270.77, 1783.04}; +static float P023[3] = {-97.88, 285.04, 1783.04}; +static float P024[3] = {-222.97, 139.80, 1783.04}; +static float P025[3] = {-225.29, -86.68, 1783.04}; +static float P026[3] = {-108.44, -224.15, 1783.04}; +static float P027[3] = {97.88, -221.56, 1783.04}; +static float P028[3] = {410.55, -200.66, 3213.87}; +static float P029[3] = {432.19, 148.42, 3213.87}; +static float P030[3] = {200.66, 410.55, 3213.87}; +static float P031[3] = {-148.42, 432.19, 3213.87}; +static float P032[3] = {-407.48, 171.88, 3213.87}; +static float P033[3] = {-432.19, -148.42, 3213.87}; +static float P034[3] = {-148.88, -309.74, 3213.87}; +static float P035[3] = {156.38, -320.17, 3213.87}; +static float P036[3] = {523.39, -303.81, 4424.57}; +static float P037[3] = {574.66, 276.84, 4424.57}; +static float P038[3] = {243.05, 492.50, 4424.57}; +static float P039[3] = {-191.23, 520.13, 4424.57}; +static float P040[3] = {-523.39, 304.01, 4424.57}; +static float P041[3] = {-574.66, -231.83, 4424.57}; +static float P042[3] = {-266.95, -578.17, 4424.57}; +static float P043[3] = {211.14, -579.67, 4424.57}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 5943.46}; +static float P046[3] = {371.29, 614.13, 5943.46}; +static float P047[3] = {-291.43, 621.86, 5943.46}; +static float P048[3] = {-784.13, 362.60, 5943.46}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -332.24, 7902.59}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {321.55, 558.53, 7902.59}; +static float P055[3] = {-260.54, 559.84, 7902.59}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 438.98, 9364.77}; +static float P063[3] = {-165.71, 441.27, 9355.44}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -504.03, 9355.44}; +static float iP068[3] = {-112.44, 9.25, -64.42}; +static float iP069[3] = {1155.63, 0.00, -182.46}; +static float iP070[3] = {-1143.13, 0.00, -181.54}; +static float iP071[3] = {1424.23, 0.00, -322.09}; +static float iP072[3] = {-1368.01, 0.00, -310.38}; +static float iP073[3] = {1255.57, 2.31, 114.05}; +static float iP074[3] = {-1149.38, 0.00, 117.12}; +static float iP075[3] = {718.36, 0.00, 433.36}; +static float iP076[3] = {-655.90, 0.00, 433.36}; +static float P068[3] = {-112.44, 9.25, -64.42}; +static float P069[3] = {1155.63, 0.00, -182.46}; +static float P070[3] = {-1143.13, 0.00, -181.54}; +static float P071[3] = {1424.23, 0.00, -322.09}; +static float P072[3] = {-1368.01, 0.00, -310.38}; +static float P073[3] = {1255.57, 2.31, 114.05}; +static float P074[3] = {-1149.38, 0.00, 117.12}; +static float P075[3] = {718.36, 0.00, 433.36}; +static float P076[3] = {-655.90, 0.00, 433.36}; +static float P077[3] = {1058.00, -2.66, 7923.51}; +static float P078[3] = {-1016.51, -15.47, 7902.87}; +static float P079[3] = {-1363.99, -484.50, 7593.38}; +static float P080[3] = {1478.09, -861.47, 7098.12}; +static float P081[3] = {1338.06, -284.68, 7024.15}; +static float P082[3] = {-1545.51, -860.64, 7106.60}; +static float P083[3] = {1063.19, -70.46, 7466.60}; +static float P084[3] = {-1369.18, -288.11, 7015.34}; +static float P085[3] = {1348.44, -482.50, 7591.41}; +static float P086[3] = {-1015.45, -96.80, 7474.86}; +static float P087[3] = {731.04, 148.38, 7682.58}; +static float P088[3] = {-697.03, 151.82, 7668.81}; +static float P089[3] = {-686.82, 157.09, 7922.29}; +static float P090[3] = {724.73, 147.75, 7931.39}; +static float iP091[3] = {0.00, 327.10, 2346.55}; +static float iP092[3] = {0.00, 552.28, 2311.31}; +static float iP093[3] = {0.00, 721.16, 2166.41}; +static float iP094[3] = {0.00, 693.42, 2388.80}; +static float iP095[3] = {0.00, 389.44, 2859.97}; +static float P091[3] = {0.00, 327.10, 2346.55}; +static float P092[3] = {0.00, 552.28, 2311.31}; +static float P093[3] = {0.00, 721.16, 2166.41}; +static float P094[3] = {0.00, 693.42, 2388.80}; +static float P095[3] = {0.00, 389.44, 2859.97}; +static float iP096[3] = {222.02, -183.67, 10266.89}; +static float iP097[3] = {-128.90, -182.70, 10266.89}; +static float iP098[3] = {41.04, 88.31, 10659.36}; +static float iP099[3] = {-48.73, 88.30, 10659.36}; +static float P096[3] = {222.02, -183.67, 10266.89}; +static float P097[3] = {-128.90, -182.70, 10266.89}; +static float P098[3] = {41.04, 88.31, 10659.36}; +static float P099[3] = {-48.73, 88.30, 10659.36}; +static float P100[3] = {0.00, 603.42, 9340.68}; +static float P104[3] = {-9.86, 567.62, 7858.65}; +static float P105[3] = {31.96, 565.27, 7908.46}; +static float P106[3] = {22.75, 568.13, 7782.83}; +static float P107[3] = {58.93, 568.42, 7775.94}; +static float P108[3] = {55.91, 565.59, 7905.86}; +static float P109[3] = {99.21, 566.00, 7858.65}; +static float P110[3] = {-498.83, 148.14, 9135.10}; +static float P111[3] = {-495.46, 133.24, 9158.48}; +static float P112[3] = {-490.82, 146.23, 9182.76}; +static float P113[3] = {-489.55, 174.11, 9183.66}; +static float P114[3] = {-492.92, 189.00, 9160.28}; +static float P115[3] = {-497.56, 176.02, 9136.00}; +static float P116[3] = {526.54, 169.68, 9137.70}; +static float P117[3] = {523.49, 184.85, 9161.42}; +static float P118[3] = {518.56, 171.78, 9186.06}; +static float P119[3] = {516.68, 143.53, 9186.98}; +static float P120[3] = {519.73, 128.36, 9163.26}; +static float P121[3] = {524.66, 141.43, 9138.62}; +/* *INDENT-ON* */ + +void +Whale001(void) +{ + + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N074); + glVertex3fv(P074); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); +} + +void +Whale002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); +} + +void +Whale003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Whale004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Whale005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Whale006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Whale007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Whale008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Whale009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Whale010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Whale011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Whale012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); +} + +void +Whale013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P005); + glVertex3fv(P006); + glVertex3fv(P099); + glVertex3fv(P098); + glEnd(); +} + +void +Whale014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P006); + glVertex3fv(P005); + glVertex3fv(P004); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); +} + +void +Whale015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); +} + +void +Whale016(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P104); + glVertex3fv(P105); + glVertex3fv(P106); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P107); + glVertex3fv(P108); + glVertex3fv(P109); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P110); + glVertex3fv(P111); + glVertex3fv(P112); + glVertex3fv(P113); + glVertex3fv(P114); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P116); + glVertex3fv(P117); + glVertex3fv(P118); + glVertex3fv(P119); + glVertex3fv(P120); + glVertex3fv(P121); + glEnd(); +} + +void +DrawWhale(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.5 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.5 * thrash * sin((fish->htail + 10.0) * RRAD); + seg2 = 3.7 * thrash * sin((fish->htail + 15.0) * RRAD); + seg3 = 4.8 * thrash * sin((fish->htail + 23.0) * RRAD); + seg4 = 6.0 * thrash * sin((fish->htail + 28.0) * RRAD); + seg5 = 6.5 * thrash * sin((fish->htail + 35.0) * RRAD); + seg6 = 6.5 * thrash * sin((fish->htail + 40.0) * RRAD); + seg7 = 6.5 * thrash * sin((fish->htail + 55.0) * RRAD); + + pitch = fish->v * sin((fish->htail - 160.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3 * 1.1; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3 * 0.9; + + P099[1] = iP099[1] + chomp; + P098[1] = iP098[1] + chomp; + P097[1] = iP097[1] + chomp; + P096[1] = iP096[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 8000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glScalef(3.0, 3.0, 3.0); + + glEnable(GL_CULL_FACE); + + Whale001(); + Whale002(); + Whale003(); + Whale004(); + Whale005(); + Whale006(); + Whale007(); + Whale008(); + Whale009(); + Whale010(); + Whale011(); + Whale012(); + Whale013(); + Whale014(); + Whale015(); + Whale016(); + + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/main.c b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/main.c new file mode 100644 index 000000000..b7794b3b6 --- /dev/null +++ b/Xcode/TemplatesForXcodeLeopard/SDL OpenGL Application/main.c @@ -0,0 +1,179 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +extern void Atlantis_Init (); +extern void Atlantis_Reshape (int w, int h); +extern void Atlantis_Animate (); +extern void Atlantis_Display (); + +static SDL_Surface *gScreen; + +static void initAttributes () +{ + // Setup attributes we want for the OpenGL context + + int value; + + // Don't set color bit sizes (SDL_GL_RED_SIZE, etc) + // Mac OS X will always use 8-8-8-8 ARGB for 32-bit screens and + // 5-5-5 RGB for 16-bit screens + + // Request a 16-bit depth buffer (without this, there is no depth buffer) + value = 16; + SDL_GL_SetAttribute (SDL_GL_DEPTH_SIZE, value); + + + // Request double-buffered OpenGL + // The fact that windows are double-buffered on Mac OS X has no effect + // on OpenGL double buffering. + value = 1; + SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, value); +} + +static void printAttributes () +{ + // Print out attributes of the context we created + int nAttr; + int i; + + int attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE, + SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE }; + + char *desc[] = { "Red size: %d bits\n", "Blue size: %d bits\n", "Green size: %d bits\n", + "Alpha size: %d bits\n", "Color buffer size: %d bits\n", + "Depth bufer size: %d bits\n" }; + + nAttr = sizeof(attr) / sizeof(int); + + for (i = 0; i < nAttr; i++) { + + int value; + SDL_GL_GetAttribute (attr[i], &value); + printf (desc[i], value); + } +} + +static void createSurface (int fullscreen) +{ + Uint32 flags = 0; + + flags = SDL_OPENGL; + if (fullscreen) + flags |= SDL_FULLSCREEN; + + // Create window + gScreen = SDL_SetVideoMode (640, 480, 0, flags); + if (gScreen == NULL) { + + fprintf (stderr, "Couldn't set 640x480 OpenGL video mode: %s\n", + SDL_GetError()); + SDL_Quit(); + exit(2); + } +} + +static void initGL () +{ + Atlantis_Init (); + Atlantis_Reshape (gScreen->w, gScreen->h); +} + +static void drawGL () +{ + Atlantis_Animate (); + Atlantis_Display (); +} + +static void mainLoop () +{ + SDL_Event event; + int done = 0; + int fps = 24; + int delay = 1000/fps; + int thenTicks = -1; + int nowTicks; + + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent (&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + + // Draw at 24 hz + // This approach is not normally recommended - it is better to + // use time-based animation and run as fast as possible + drawGL (); + SDL_GL_SwapBuffers (); + + // Time how long each draw-swap-delay cycle takes + // and adjust delay to get closer to target framerate + if (thenTicks > 0) { + nowTicks = SDL_GetTicks (); + delay += (1000/fps - (nowTicks-thenTicks)); + thenTicks = nowTicks; + if (delay < 0) + delay = 1000/fps; + } + else { + thenTicks = SDL_GetTicks (); + } + + SDL_Delay (delay); + } +} + +int main(int argc, char *argv[]) +{ + // Init SDL video subsystem + if ( SDL_Init (SDL_INIT_VIDEO) < 0 ) { + + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + // Set GL context attributes + initAttributes (); + + // Create GL context + createSurface (0); + + // Get GL context attributes + printAttributes (); + + // Init GL state + initGL (); + + // Draw, get events... + mainLoop (); + + // Cleanup + SDL_Quit(); + + return 0; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.h b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.m b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..d9ca45493 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application."; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..d6553a7bf --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,310 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 3.2"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = macosx10.6; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = macosx10.6; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/main.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + IBDocumentLocation + 62 117 356 240 0 0 1152 848 + IBEditorPositions + + 29 + 62 362 195 44 0 0 1152 848 + + IBFramework Version + 291.0 + IBOpenObjects + + 29 + + IBSystem Version + 6L60 + + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib new file mode 100644 index 0000000000000000000000000000000000000000..637801528a03f85f28a290e5ffde3716217cd1e8 GIT binary patch literal 2590 zcmai0O=ufO6rM?xSg~ctZJL&nn5xhc(t^P$rKvAnS*{yFy-u@-9?e>s*qf|&)zxm? z%>4}t`N+du*aWAMQk3{69SZl%W_O3KXYFEO%jt2ghP z?|W~)nWxBrdpU&nYjxn?M~{hj=`^lL{%+}0KX8XB)zrS@QYrWMOS09p*N7|Ev0+VRM~Qsk?Yr6o|x7Ri;`L; zBKYey@ZF30$WY#!%OcB5q=ogy<*`)dvD9U^B2$Kmc9gy(^CVHZnL=un1A?U?VNn$= z#y`=s(iza|RbdD4@=Oj{aZSI3G7={&K!O0;yF>TxdZ_1+*tsJpzx%GDeTUnKctRRd zsL^`is873^cJOn<%Gis$x2=^#Y85E@upTyU+OUkQaV2bAwkMysF|(=`66Hg4bSa3O zL1u1u{xGG*z7?{I`!AuQ+K+m&`&629U{=+H#X|ZLyIW<1$#+4U487;m5?g7o#)Ia< zpsG#TmOHIm`aE*v^6e^HtFzSxyHjQ4TEUk>BGNlAy0v4wKS-^zUv%xyP*Pm2IrEdsTL;%BuI-{W^QxV2>JXdy746u+2JK zU+dI1Agz85rIF?CkkBcSl%LORozy?F;{K$GbSEx5->VF9h_BA7T1Yi%r@bt)+?H7y z>_NQ}VyvMrHtin6ETffIg+w+zA7Nf0zg92Mg()|s8i1%w<>HStj- zFa>CV)GC7_>!_-!#$3|2T*o$(wq>ETYdaXM$+;aag|U~4WWS;)OQP%%+sPnj%CRk1 zb9F1DI~h3z&*~O3$HjH(yLqQ1nz&$OkenD@V>;i=xGgdch>T|7u7r4&2qjE&2ZWGU zq}&%T>jGcJ@B@Ae!?$?@!_)jt3_s>; z7#`=3Fno_c#_)Z + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.h b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.m b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..1dcbea207 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application with Cocoa menus."; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..9d9a9248f --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,322 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3AF009D08F1000EBEB88 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/SDLMain.nib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 3.2"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */ = { + isa = PBXVariantGroup; + children = ( + 002F3AF009D08F1000EBEB88 /* English */, + ); + name = SDLMain.nib; + sourceTree = ""; + }; + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = macosx10.6; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = macosx10.6; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/main.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL Cocoa Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/English.lproj/InfoPlist.strings new file mode 100644 index 0000000000000000000000000000000000000000..6e721b0ef0e7ef6d44f293955483ecf6ae72291a GIT binary patch literal 644 zcmb`^O-lk{6b0aC?XP%oDWSEF7L%A6HO44GZDPvtgLFpx2<*pKFiMcvB9ObdT<+nX zd(Qd#Y^Vut6<(#LCO%{af_IsPrHMjrDJTpD9l4=G-Mqvvtpsl}n-W#iP*Krz<HaO~?0PSu_L z!QGZw{Wx%3#uGtPVQy3E7#Ww&Zhd;x5=nMb*!8YNTO`);B+}Q>74P|2->Hf9Tw9w- W + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.___PROJECTNAMEASXML___ + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + LSMinimumSystemVersionByArchitecture + + x86_64 + 10.6.0 + i386 + 10.4.0 + ppc + 10.4.0 + + + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.h b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.m b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAMEASIDENTIFIER____Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateIcon.icns new file mode 100644 index 0000000000000000000000000000000000000000..ae0b02b12ae19056f034a483be03dd053112545a GIT binary patch literal 111234 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ñS8@V8tsP8tA_a)OBllLpeM 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 H0f7GkLul&m literal 0 HcmV?d00001 diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..ba87745fc --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application that uses OpenGL."; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj new file mode 100644 index 000000000..568327307 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/___PROJECTNAME___.xcodeproj/project.pbxproj @@ -0,0 +1,352 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF409D0938900EBEB88 /* atlantis.c */; }; + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF609D0938900EBEB88 /* dolphin.c */; }; + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF709D0938900EBEB88 /* shark.c */; }; + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF809D0938900EBEB88 /* swim.c */; }; + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF909D0938900EBEB88 /* whale.c */; }; + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C0009D093BD00EBEB88 /* OpenGL.framework */; }; + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C6009D0951E00EBEB88 /* GLUT.framework */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3BF409D0938900EBEB88 /* atlantis.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = atlantis.c; path = atlantis/atlantis.c; sourceTree = SOURCE_ROOT; }; + 002F3BF509D0938900EBEB88 /* atlantis.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = atlantis.h; path = atlantis/atlantis.h; sourceTree = SOURCE_ROOT; }; + 002F3BF609D0938900EBEB88 /* dolphin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = dolphin.c; path = atlantis/dolphin.c; sourceTree = SOURCE_ROOT; }; + 002F3BF709D0938900EBEB88 /* shark.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = shark.c; path = atlantis/shark.c; sourceTree = SOURCE_ROOT; }; + 002F3BF809D0938900EBEB88 /* swim.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = swim.c; path = atlantis/swim.c; sourceTree = SOURCE_ROOT; }; + 002F3BF909D0938900EBEB88 /* whale.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = whale.c; path = atlantis/whale.c; sourceTree = SOURCE_ROOT; }; + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 002F3C6009D0951E00EBEB88 /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = ../../../../../../../../../../System/Library/Frameworks/GLUT.framework; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "___PROJECTNAME____Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "___PROJECTNAME___.app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 002F3BF309D0937800EBEB88 /* atlantis */ = { + isa = PBXGroup; + children = ( + 002F3BF409D0938900EBEB88 /* atlantis.c */, + 002F3BF509D0938900EBEB88 /* atlantis.h */, + 002F3BF609D0938900EBEB88 /* dolphin.c */, + 002F3BF709D0938900EBEB88 /* shark.c */, + 002F3BF809D0938900EBEB88 /* swim.c */, + 002F3BF909D0938900EBEB88 /* whale.c */, + ); + name = atlantis; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 002F3C6009D0951E00EBEB88 /* GLUT.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "___PROJECTNAMEASXML___"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 002F3BF309D0937800EBEB88 /* atlantis */, + 32CA4F630368D1EE00C91783 /* ___PROJECTNAME____Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "___PROJECTNAME___"; + productInstallPath = "$(HOME)/Applications"; + productName = "___PROJECTNAME___"; + productReference = 8D1107320486CEB800E47090 /* ___PROJECTNAME___.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */; + compatibilityVersion = "Xcode 3.2"; + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* ___PROJECTNAMEASXML___ */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* ___PROJECTNAME___ */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */, + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */, + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */, + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */, + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = "___PROJECTNAMEASIDENTIFIER____Prefix.pch"; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "___PROJECTNAME___"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_VERSION = 4.0; + "GCC_VERSION[arch=x86_64]" = 4.2; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = macosx10.4; + "SDKROOT[arch=x86_64]" = "$(DEVELOPER_SDK_DIR)/MacOSX10.6.sdk"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "___PROJECTNAME___" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.c new file mode 100644 index 000000000..4efdf6ce8 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.c @@ -0,0 +1,459 @@ + +/* Copyright (c) Mark J. Kilgard, 1994. */ + +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include +#include +#include +#include +#include "atlantis.h" + +fishRec sharks[NUM_SHARKS]; +fishRec momWhale; +fishRec babyWhale; +fishRec dolph; + +GLboolean Timing = GL_TRUE; + +int w_win = 640; +int h_win = 480; +GLint count = 0; +GLenum StrMode = GL_VENDOR; + +GLboolean moving; + +static double mtime(void) +{ + struct timeval tk_time; + struct timezone tz; + + gettimeofday(&tk_time, &tz); + + return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec; +} + +static double filter(double in, double *save) +{ + static double k1 = 0.9; + static double k2 = 0.05; + + save[3] = in; + save[1] = save[0]*k1 + k2*(save[3] + save[2]); + + save[0]=save[1]; + save[2]=save[3]; + + return(save[1]); +} + +void DrawStr(const char *str) +{ + GLint i = 0; + + if(!str) return; + + while(str[i]) + { + glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]); + i++; + } +} + +void +InitFishs(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + sharks[i].x = 70000.0 + rand() % 6000; + sharks[i].y = rand() % 6000; + sharks[i].z = rand() % 6000; + sharks[i].psi = rand() % 360 - 180.0; + sharks[i].v = 1.0; + } + + dolph.x = 30000.0; + dolph.y = 0.0; + dolph.z = 6000.0; + dolph.psi = 90.0; + dolph.theta = 0.0; + dolph.v = 3.0; + + momWhale.x = 70000.0; + momWhale.y = 0.0; + momWhale.z = 0.0; + momWhale.psi = 90.0; + momWhale.theta = 0.0; + momWhale.v = 3.0; + + babyWhale.x = 60000.0; + babyWhale.y = -2000.0; + babyWhale.z = -2000.0; + babyWhale.psi = 90.0; + babyWhale.theta = 0.0; + babyWhale.v = 3.0; +} + +void +Atlantis_Init(void) +{ + static float ambient[] = {0.2, 0.2, 0.2, 1.0}; + static float diffuse[] = {1.0, 1.0, 1.0, 1.0}; + static float position[] = {0.0, 1.0, 0.0, 0.0}; + static float mat_shininess[] = {90.0}; + static float mat_specular[] = {0.8, 0.8, 0.8, 1.0}; + static float mat_diffuse[] = {0.46, 0.66, 0.795, 1.0}; + static float mat_ambient[] = {0.3, 0.4, 0.5, 1.0}; + static float lmodel_ambient[] = {0.4, 0.4, 0.4, 1.0}; + static float lmodel_localviewer[] = {0.0}; + //GLfloat map1[4] = {0.0, 0.0, 0.0, 0.0}; + //GLfloat map2[4] = {0.0, 0.0, 0.0, 0.0}; + static float fog_color[] = {0.0, 0.5, 0.9, 1.0}; + + glFrontFace(GL_CCW); + + glDepthFunc(GL_LESS); + glEnable(GL_DEPTH_TEST); + + glLightfv(GL_LIGHT0, GL_AMBIENT, ambient); + glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse); + glLightfv(GL_LIGHT0, GL_POSITION, position); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, lmodel_localviewer); + glEnable(GL_LIGHTING); + glEnable(GL_LIGHT0); + + glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse); + glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient); + + InitFishs(); + + glEnable(GL_FOG); + glFogi(GL_FOG_MODE, GL_EXP); + glFogf(GL_FOG_DENSITY, 0.0000025); + glFogfv(GL_FOG_COLOR, fog_color); + + glClearColor(0.0, 0.5, 0.9, 1.0); +} + +void +Atlantis_Reshape(int width, int height) +{ + w_win = width; + h_win = height; + + glViewport(0, 0, width, height); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0, 300000.0); + glMatrixMode(GL_MODELVIEW); +} + +void +Atlantis_Animate(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + SharkPilot(&sharks[i]); + SharkMiss(i); + } + WhalePilot(&dolph); + dolph.phi++; + //glutPostRedisplay(); + WhalePilot(&momWhale); + momWhale.phi++; + WhalePilot(&babyWhale); + babyWhale.phi++; +} + +void +Atlantis_Key(unsigned char key, int x, int y) +{ + switch (key) { + case 't': + Timing = !Timing; + break; + case ' ': + switch(StrMode) + { + case GL_EXTENSIONS: + StrMode = GL_VENDOR; + break; + case GL_VENDOR: + StrMode = GL_RENDERER; + break; + case GL_RENDERER: + StrMode = GL_VERSION; + break; + case GL_VERSION: + StrMode = GL_EXTENSIONS; + break; + } + break; + case 27: /* Esc will quit */ + exit(1); + break; + case 's': /* "s" start animation */ + moving = GL_TRUE; + //glutIdleFunc(Animate); + break; + case 'a': /* "a" stop animation */ + moving = GL_FALSE; + //glutIdleFunc(NULL); + break; + case '.': /* "." will advance frame */ + if (!moving) { + Atlantis_Animate(); + } + } +} +/* +void Display(void) +{ + static float P123[3] = {-448.94, -203.14, 9499.60}; + static float P124[3] = {-442.64, -185.20, 9528.07}; + static float P125[3] = {-441.07, -148.05, 9528.07}; + static float P126[3] = {-443.43, -128.84, 9499.60}; + static float P127[3] = {-456.87, -146.78, 9466.67}; + static float P128[3] = {-453.68, -183.93, 9466.67}; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glutSwapBuffers(); +} +*/ + +void +Atlantis_Display(void) +{ + int i; + static double th[4] = {0.0, 0.0, 0.0, 0.0}; + static double t1 = 0.0, t2 = 0.0, t; + char num_str[128]; + + t1 = t2; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + for (i = 0; i < NUM_SHARKS; i++) { + glPushMatrix(); + FishTransform(&sharks[i]); + DrawShark(&sharks[i]); + glPopMatrix(); + } + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&momWhale); + DrawWhale(&momWhale); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&babyWhale); + glScalef(0.45, 0.45, 0.3); + DrawWhale(&babyWhale); + glPopMatrix(); + + if(Timing) + { + t2 = mtime(); + t = t2 - t1; + if(t > 0.0001) t = 1.0 / t; + + glDisable(GL_LIGHTING); + //glDisable(GL_DEPTH_TEST); + + glColor3f(1.0, 0.0, 0.0); + + glMatrixMode (GL_PROJECTION); + glPushMatrix(); + glLoadIdentity(); + glOrtho(0, w_win, 0, h_win, -10.0, 10.0); + + glRasterPos2f(5.0, 5.0); + + switch(StrMode) + { + case GL_VENDOR: + sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VENDOR)); + break; + case GL_RENDERER: + sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_RENDERER)); + break; + case GL_VERSION: + sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VERSION)); + break; + case GL_EXTENSIONS: + sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_EXTENSIONS)); + break; + } + + glPopMatrix(); + glMatrixMode(GL_MODELVIEW); + + glEnable(GL_LIGHTING); + //glEnable(GL_DEPTH_TEST); + } + + count++; + + glutSwapBuffers(); +} + +/* +void +Visible(int state) +{ + if (state == GLUT_VISIBLE) { + if (moving) + glutIdleFunc(Animate); + } else { + if (moving) + glutIdleFunc(NULL); + } +} + + +void +timingSelect(int value) +{ + switch(value) + { + case 1: + StrMode = GL_VENDOR; + break; + case 2: + StrMode = GL_RENDERER; + break; + case 3: + StrMode = GL_VERSION; + break; + case 4: + StrMode = GL_EXTENSIONS; + break; + } +} + +void +menuSelect(int value) +{ + switch (value) { + case 1: + moving = GL_TRUE; + glutIdleFunc(Animate); + break; + case 2: + moving = GL_FALSE; + glutIdleFunc(NULL); + break; + case 4: + exit(0); + break; + } +} + +int +main(int argc, char **argv) +{ + GLboolean fullscreen = GL_FALSE; + GLint time_menu; + + srand(0); + + glutInit(&argc, argv); + if (argc > 1 && !strcmp(argv[1], "-w")) + fullscreen = GL_FALSE; + + //glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); + glutInitDisplayString("rgba double depth=24"); + if (fullscreen) { + glutGameModeString("1024x768:32"); + glutEnterGameMode(); + } else { + glutInitWindowSize(320, 240); + glutCreateWindow("Atlantis Timing"); + } + Init(); + glutDisplayFunc(Display); + glutReshapeFunc(Reshape); + glutKeyboardFunc(Key); + moving = GL_TRUE; +glutIdleFunc(Animate); + glutVisibilityFunc(Visible); + + time_menu = glutCreateMenu(timingSelect); + glutAddMenuEntry("GL_VENDOR", 1); + glutAddMenuEntry("GL_RENDERER", 2); + glutAddMenuEntry("GL_VERSION", 3); + glutAddMenuEntry("GL_EXTENSIONS", 4); + + glutCreateMenu(menuSelect); + glutAddMenuEntry("Start motion", 1); + glutAddMenuEntry("Stop motion", 2); + glutAddSubMenu("Timing Mode", time_menu); + glutAddMenuEntry("Quit", 4); + + //glutAttachMenu(GLUT_RIGHT_BUTTON); + glutAttachMenu(GLUT_RIGHT_BUTTON); + glutMainLoop(); + return 0; // ANSI C requires main to return int. +} +*/ \ No newline at end of file diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.h b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.h new file mode 100644 index 000000000..6ccf2d5f0 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/atlantis.h @@ -0,0 +1,65 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#define RAD 57.295 +#define RRAD 0.01745 + +#define NUM_SHARKS 4 +#define SHARKSIZE 6000 +#define SHARKSPEED 100.0 + +#define WHALESPEED 250.0 + +typedef struct _fishRec { + float x, y, z, phi, theta, psi, v; + float xt, yt, zt; + float htail, vtail; + float dtheta; + int spurt, attack; +} fishRec; + +extern fishRec sharks[NUM_SHARKS]; +extern fishRec momWhale; +extern fishRec babyWhale; +extern fishRec dolph; + +extern void FishTransform(fishRec *); +extern void WhalePilot(fishRec *); +extern void SharkPilot(fishRec *); +extern void SharkMiss(int); +extern void DrawWhale(fishRec *); +extern void DrawShark(fishRec *); +extern void DrawDolphin(fishRec *); diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/dolphin.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/dolphin.c new file mode 100644 index 000000000..9fba3ba98 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/dolphin.c @@ -0,0 +1,1934 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {-0.005937 ,-0.101998 ,-0.994767}; +static float N002[3] = {0.936780 ,-0.200803 ,0.286569}; +static float N003[3] = {-0.233062 ,0.972058 ,0.028007}; +static float N005[3] = {0.898117 ,0.360171 ,0.252315}; +static float N006[3] = {-0.915437 ,0.348456 ,0.201378}; +static float N007[3] = {0.602263 ,-0.777527 ,0.180920}; +static float N008[3] = {-0.906912 ,-0.412015 ,0.088061}; +static float N012[3] = {0.884408 ,-0.429417 ,-0.182821}; +static float N013[3] = {0.921121 ,0.311084 ,-0.234016}; +static float N014[3] = {0.382635 ,0.877882 ,-0.287948}; +static float N015[3] = {-0.380046 ,0.888166 ,-0.258316}; +static float N016[3] = {-0.891515 ,0.392238 ,-0.226607}; +static float N017[3] = {-0.901419 ,-0.382002 ,-0.203763}; +static float N018[3] = {-0.367225 ,-0.911091 ,-0.187243}; +static float N019[3] = {0.339539 ,-0.924846 ,-0.171388}; +static float N020[3] = {0.914706 ,-0.378617 ,-0.141290}; +static float N021[3] = {0.950662 ,0.262713 ,-0.164994}; +static float N022[3] = {0.546359 ,0.801460 ,-0.243218}; +static float N023[3] = {-0.315796 ,0.917068 ,-0.243431}; +static float N024[3] = {-0.825687 ,0.532277 ,-0.186875}; +static float N025[3] = {-0.974763 ,-0.155232 ,-0.160435}; +static float N026[3] = {-0.560596 ,-0.816658 ,-0.137119}; +static float N027[3] = {0.380210 ,-0.910817 ,-0.160786}; +static float N028[3] = {0.923772 ,-0.358322 ,-0.135093}; +static float N029[3] = {0.951202 ,0.275053 ,-0.139859}; +static float N030[3] = {0.686099 ,0.702548 ,-0.188932}; +static float N031[3] = {-0.521865 ,0.826719 ,-0.210220}; +static float N032[3] = {-0.923820 ,0.346739 ,-0.162258}; +static float N033[3] = {-0.902095 ,-0.409995 ,-0.134646}; +static float N034[3] = {-0.509115 ,-0.848498 ,-0.144404}; +static float N035[3] = {0.456469 ,-0.880293 ,-0.129305}; +static float N036[3] = {0.873401 ,-0.475489 ,-0.105266}; +static float N037[3] = {0.970825 ,0.179861 ,-0.158584}; +static float N038[3] = {0.675609 ,0.714187 ,-0.183004}; +static float N039[3] = {-0.523574 ,0.830212 ,-0.191360}; +static float N040[3] = {-0.958895 ,0.230808 ,-0.165071}; +static float N041[3] = {-0.918285 ,-0.376803 ,-0.121542}; +static float N042[3] = {-0.622467 ,-0.774167 ,-0.114888}; +static float N043[3] = {0.404497 ,-0.908807 ,-0.102231}; +static float N044[3] = {0.930538 ,-0.365155 ,-0.027588}; +static float N045[3] = {0.921920 ,0.374157 ,-0.100345}; +static float N046[3] = {0.507346 ,0.860739 ,0.041562}; +static float N047[3] = {-0.394646 ,0.918815 ,-0.005730}; +static float N048[3] = {-0.925411 ,0.373024 ,-0.066837}; +static float N049[3] = {-0.945337 ,-0.322309 ,-0.049551}; +static float N050[3] = {-0.660437 ,-0.750557 ,-0.022072}; +static float N051[3] = {0.488835 ,-0.871950 ,-0.027261}; +static float N052[3] = {0.902599 ,-0.421397 ,0.087969}; +static float N053[3] = {0.938636 ,0.322606 ,0.122020}; +static float N054[3] = {0.484605 ,0.871078 ,0.079878}; +static float N055[3] = {-0.353607 ,0.931559 ,0.084619}; +static float N056[3] = {-0.867759 ,0.478564 ,0.134054}; +static float N057[3] = {-0.951583 ,-0.296030 ,0.082794}; +static float N058[3] = {-0.672355 ,-0.730209 ,0.121384}; +static float N059[3] = {0.528336 ,-0.842452 ,0.105525}; +static float N060[3] = {0.786913 ,-0.564760 ,0.248627}; +static float N062[3] = {0.622098 ,0.765230 ,0.165584}; +static float N063[3] = {-0.631711 ,0.767816 ,0.106773}; +static float N064[3] = {-0.687886 ,0.606351 ,0.398938}; +static float N065[3] = {-0.946327 ,-0.281623 ,0.158598}; +static float N066[3] = {-0.509549 ,-0.860437 ,0.002776}; +static float N067[3] = {0.462594 ,-0.876692 ,0.131977}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N078[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N079[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N080[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N081[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N082[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N083[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N084[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N085[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N086[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N087[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N088[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N089[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N090[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N097[3] = {-0.697296 ,0.702881 ,0.140491}; +static float N098[3] = {0.918864 ,0.340821 ,0.198819}; +static float N099[3] = {-0.932737 ,0.201195 ,0.299202}; +static float N100[3] = {0.029517 ,0.981679 ,0.188244}; +static float N102[3] = {0.813521 ,-0.204936 ,0.544229}; +static float N110[3] = {-0.781480 ,-0.384779 ,0.491155}; +static float N111[3] = {-0.722243 ,0.384927 ,0.574627}; +static float N112[3] = {-0.752278 ,0.502679 ,0.425901}; +static float N113[3] = {0.547257 ,0.367910 ,0.751766}; +static float N114[3] = {0.725949 ,-0.232568 ,0.647233}; +static float N115[3] = {-0.747182 ,-0.660786 ,0.071280}; +static float N116[3] = {0.931519 ,0.200748 ,0.303270}; +static float N117[3] = {-0.828928 ,0.313757 ,0.463071}; +static float N118[3] = {0.902554 ,-0.370967 ,0.218587}; +static float N119[3] = {-0.879257 ,-0.441851 ,0.177973}; +static float N120[3] = {0.642327 ,0.611901 ,0.461512}; +static float N121[3] = {0.964817 ,-0.202322 ,0.167910}; +static float N122[3] = {0.000000 ,1.000000 ,0.000000}; +static float P001[3] = {5.68, -300.95, 1324.70}; +static float P002[3] = {338.69, -219.63, 9677.03}; +static float P003[3] = {12.18, 474.59, 9138.14}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 68.74, 9427.85}; +static float P007[3] = {156.52, -266.72, 10311.68}; +static float P008[3] = {-185.56, -266.51, 10310.47}; +static float P009[3] = {124.39, -261.46, 1942.34}; +static float P010[3] = {-130.05, -261.46, 1946.03}; +static float P011[3] = {141.07, -320.11, 1239.38}; +static float P012[3] = {156.48, -360.12, 2073.41}; +static float P013[3] = {162.00, -175.88, 2064.44}; +static float P014[3] = {88.16, -87.72, 2064.02}; +static float P015[3] = {-65.21, -96.13, 2064.02}; +static float P016[3] = {-156.48, -180.96, 2064.44}; +static float P017[3] = {-162.00, -368.93, 2082.39}; +static float P018[3] = {-88.16, -439.22, 2082.39}; +static float P019[3] = {65.21, -440.32, 2083.39}; +static float P020[3] = {246.87, -356.02, 2576.95}; +static float P021[3] = {253.17, -111.15, 2567.15}; +static float P022[3] = {132.34, 51.41, 2559.84}; +static float P023[3] = {-97.88, 40.44, 2567.15}; +static float P024[3] = {-222.97, -117.49, 2567.15}; +static float P025[3] = {-252.22, -371.53, 2569.92}; +static float P026[3] = {-108.44, -518.19, 2586.75}; +static float P027[3] = {97.88, -524.79, 2586.75}; +static float P028[3] = {370.03, -421.19, 3419.70}; +static float P029[3] = {351.15, -16.98, 3423.17}; +static float P030[3] = {200.66, 248.46, 3430.37}; +static float P031[3] = {-148.42, 235.02, 3417.91}; +static float P032[3] = {-360.21, -30.27, 3416.84}; +static float P033[3] = {-357.90, -414.89, 3407.04}; +static float P034[3] = {-148.88, -631.35, 3409.90}; +static float P035[3] = {156.38, -632.59, 3419.70}; +static float P036[3] = {462.61, -469.21, 4431.51}; +static float P037[3] = {466.60, 102.25, 4434.98}; +static float P038[3] = {243.05, 474.34, 4562.02}; +static float P039[3] = {-191.23, 474.40, 4554.42}; +static float P040[3] = {-476.12, 111.05, 4451.11}; +static float P041[3] = {-473.36, -470.74, 4444.78}; +static float P042[3] = {-266.95, -748.41, 4447.78}; +static float P043[3] = {211.14, -749.91, 4429.73}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 6360.63}; +static float P046[3] = {371.29, 804.51, 6486.26}; +static float P047[3] = {-291.43, 797.22, 6494.28}; +static float P048[3] = {-784.13, 370.75, 6378.01}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float iP001[3] = {5.68, -300.95, 1324.70}; +static float iP009[3] = {124.39, -261.46, 1942.34}; +static float iP010[3] = {-130.05, -261.46, 1946.03}; +static float iP011[3] = {141.07, -320.11, 1239.38}; +static float iP012[3] = {156.48, -360.12, 2073.41}; +static float iP013[3] = {162.00, -175.88, 2064.44}; +static float iP014[3] = {88.16, -87.72, 2064.02}; +static float iP015[3] = {-65.21, -96.13, 2064.02}; +static float iP016[3] = {-156.48, -180.96, 2064.44}; +static float iP017[3] = {-162.00, -368.93, 2082.39}; +static float iP018[3] = {-88.16, -439.22, 2082.39}; +static float iP019[3] = {65.21, -440.32, 2083.39}; +static float iP020[3] = {246.87, -356.02, 2576.95}; +static float iP021[3] = {253.17, -111.15, 2567.15}; +static float iP022[3] = {132.34, 51.41, 2559.84}; +static float iP023[3] = {-97.88, 40.44, 2567.15}; +static float iP024[3] = {-222.97, -117.49, 2567.15}; +static float iP025[3] = {-252.22, -371.53, 2569.92}; +static float iP026[3] = {-108.44, -518.19, 2586.75}; +static float iP027[3] = {97.88, -524.79, 2586.75}; +static float iP028[3] = {370.03, -421.19, 3419.70}; +static float iP029[3] = {351.15, -16.98, 3423.17}; +static float iP030[3] = {200.66, 248.46, 3430.37}; +static float iP031[3] = {-148.42, 235.02, 3417.91}; +static float iP032[3] = {-360.21, -30.27, 3416.84}; +static float iP033[3] = {-357.90, -414.89, 3407.04}; +static float iP034[3] = {-148.88, -631.35, 3409.90}; +static float iP035[3] = {156.38, -632.59, 3419.70}; +static float iP036[3] = {462.61, -469.21, 4431.51}; +static float iP037[3] = {466.60, 102.25, 4434.98}; +static float iP038[3] = {243.05, 474.34, 4562.02}; +static float iP039[3] = {-191.23, 474.40, 4554.42}; +static float iP040[3] = {-476.12, 111.05, 4451.11}; +static float iP041[3] = {-473.36, -470.74, 4444.78}; +static float iP042[3] = {-266.95, -748.41, 4447.78}; +static float iP043[3] = {211.14, -749.91, 4429.73}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 6360.63}; +static float iP046[3] = {371.29, 804.51, 6486.26}; +static float iP047[3] = {-291.43, 797.22, 6494.28}; +static float iP048[3] = {-784.13, 370.75, 6378.01}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -300.15, 7894.03}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {246.22, 558.53, 8460.50}; +static float P055[3] = {-230.41, 559.84, 8473.23}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 338.75, 9450.30}; +static float P063[3] = {-165.71, 341.04, 9462.35}; +static float P064[3] = {-298.11, 110.13, 10180.37}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -491.45, 9348.73}; +static float P068[3] = {-136.29, -319.84, 1228.73}; +static float P069[3] = {1111.17, -314.14, 1314.19}; +static float P070[3] = {-1167.34, -321.61, 1319.45}; +static float P071[3] = {1404.86, -306.66, 1235.45}; +static float P072[3] = {-1409.73, -314.14, 1247.66}; +static float P073[3] = {1254.01, -296.87, 1544.58}; +static float P074[3] = {-1262.09, -291.70, 1504.26}; +static float P075[3] = {965.71, -269.26, 1742.65}; +static float P076[3] = {-900.97, -276.74, 1726.07}; +static float iP068[3] = {-136.29, -319.84, 1228.73}; +static float iP069[3] = {1111.17, -314.14, 1314.19}; +static float iP070[3] = {-1167.34, -321.61, 1319.45}; +static float iP071[3] = {1404.86, -306.66, 1235.45}; +static float iP072[3] = {-1409.73, -314.14, 1247.66}; +static float iP073[3] = {1254.01, -296.87, 1544.58}; +static float iP074[3] = {-1262.09, -291.70, 1504.26}; +static float iP075[3] = {965.71, -269.26, 1742.65}; +static float iP076[3] = {-900.97, -276.74, 1726.07}; +static float P077[3] = {1058.00, -448.81, 8194.66}; +static float P078[3] = {-1016.51, -456.43, 8190.62}; +static float P079[3] = {-1515.96, -676.45, 7754.93}; +static float P080[3] = {1856.75, -830.34, 7296.56}; +static float P081[3] = {1472.16, -497.38, 7399.68}; +static float P082[3] = {-1775.26, -829.51, 7298.46}; +static float P083[3] = {911.09, -252.51, 7510.99}; +static float P084[3] = {-1451.94, -495.62, 7384.30}; +static float P085[3] = {1598.75, -669.26, 7769.90}; +static float P086[3] = {-836.53, -250.08, 7463.25}; +static float P087[3] = {722.87, -158.18, 8006.41}; +static float P088[3] = {-688.86, -162.28, 7993.89}; +static float P089[3] = {-626.92, -185.30, 8364.98}; +static float P090[3] = {647.72, -189.46, 8354.99}; +static float P091[3] = {0.00, 835.01, 5555.62}; +static float P092[3] = {0.00, 1350.18, 5220.86}; +static float P093[3] = {0.00, 1422.94, 5285.27}; +static float P094[3] = {0.00, 1296.75, 5650.19}; +static float P095[3] = {0.00, 795.63, 6493.88}; +static float iP091[3] = {0.00, 835.01, 5555.62}; +static float iP092[3] = {0.00, 1350.18, 5220.86}; +static float iP093[3] = {0.00, 1422.94, 5285.27}; +static float iP094[3] = {0.00, 1296.75, 5650.19}; +static float iP095[3] = {0.00, 795.63, 6493.88}; +static float P097[3] = {-194.91, -357.14, 10313.32}; +static float P098[3] = {135.35, -357.66, 10307.94}; +static float iP097[3] = {-194.91, -357.14, 10313.32}; +static float iP098[3] = {135.35, -357.66, 10307.94}; +static float P099[3] = {-380.53, -221.14, 9677.98}; +static float P100[3] = {0.00, 412.99, 9629.33}; +static float P102[3] = {59.51, -412.55, 10677.58}; +static float iP102[3] = {59.51, -412.55, 10677.58}; +static float P103[3] = {6.50, 484.74, 9009.94}; +static float P105[3] = {-41.86, 476.51, 9078.17}; +static float P108[3] = {49.20, 476.83, 9078.24}; +static float P110[3] = {-187.62, -410.04, 10674.12}; +static float iP110[3] = {-187.62, -410.04, 10674.12}; +static float P111[3] = {-184.25, -318.70, 10723.88}; +static float iP111[3] = {-184.25, -318.70, 10723.88}; +static float P112[3] = {-179.61, -142.81, 10670.26}; +static float P113[3] = {57.43, -147.94, 10675.26}; +static float P114[3] = {54.06, -218.90, 10712.44}; +static float P115[3] = {-186.35, -212.09, 10713.76}; +static float P116[3] = {205.90, -84.61, 10275.97}; +static float P117[3] = {-230.96, -83.26, 10280.09}; +static float iP118[3] = {216.78, -509.17, 10098.94}; +static float iP119[3] = {-313.21, -510.79, 10102.62}; +static float P118[3] = {216.78, -509.17, 10098.94}; +static float P119[3] = {-313.21, -510.79, 10102.62}; +static float P120[3] = {217.95, 96.34, 10161.62}; +static float P121[3] = {71.99, -319.74, 10717.70}; +static float iP121[3] = {71.99, -319.74, 10717.70}; +static float P122[3] = {0.00, 602.74, 5375.84}; +static float iP122[3] = {0.00, 602.74, 5375.84}; +static float P123[3] = {-448.94, -203.14, 9499.60}; +static float P124[3] = {-442.64, -185.20, 9528.07}; +static float P125[3] = {-441.07, -148.05, 9528.07}; +static float P126[3] = {-443.43, -128.84, 9499.60}; +static float P127[3] = {-456.87, -146.78, 9466.67}; +static float P128[3] = {-453.68, -183.93, 9466.67}; +static float P129[3] = {428.43, -124.08, 9503.03}; +static float P130[3] = {419.73, -142.14, 9534.56}; +static float P131[3] = {419.92, -179.96, 9534.56}; +static float P132[3] = {431.20, -199.73, 9505.26}; +static float P133[3] = {442.28, -181.67, 9475.96}; +static float P134[3] = {442.08, -143.84, 9475.96}; +/* *INDENT-ON* */ + +void +Dolphin001(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P076); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P072); + glVertex3fv(P074); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P072); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P074); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P068); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P001); + glVertex3fv(P010); + glEnd(); +} + +void +Dolphin002(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P001); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P075); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P075); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P069); + glVertex3fv(P073); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P009); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P069); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P073); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P071); + glVertex3fv(P073); + glEnd(); +} + +void +Dolphin003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Dolphin004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Dolphin005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Dolphin006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N091); + glVertex3fv(P091); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Dolphin007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Dolphin008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Dolphin009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Dolphin010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Dolphin011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Dolphin012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); +} + +void +Dolphin013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N113); + glVertex3fv(P113); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P007); + glVertex3fv(P008); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P007); + glVertex3fv(P114); + glVertex3fv(P115); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N112); + glVertex3fv(P112); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); +} + +void +Dolphin014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P098); + glVertex3fv(P097); + glVertex3fv(P111); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P099); + glVertex3fv(P097); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); +} + +void +Dolphin015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N117); + glVertex3fv(P117); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Dolphin016(void) +{ + + glDisable(GL_DEPTH_TEST); + glBegin(GL_POLYGON); + glVertex3fv(P123); + glVertex3fv(P124); + glVertex3fv(P125); + glVertex3fv(P126); + glVertex3fv(P127); + glVertex3fv(P128); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P129); + glVertex3fv(P130); + glVertex3fv(P131); + glVertex3fv(P132); + glVertex3fv(P133); + glVertex3fv(P134); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P103); + glVertex3fv(P105); + glVertex3fv(P108); + glEnd(); + glEnable(GL_DEPTH_TEST); +} + +void +DrawDolphin(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (10.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg3 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.0 * thrash * sin((fish->htail + 4.0) * RRAD); + seg2 = 3.0 * thrash * sin((fish->htail + 6.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 10.0) * RRAD); + seg5 = 4.5 * thrash * sin((fish->htail + 15.0) * RRAD); + seg6 = 5.0 * thrash * sin((fish->htail + 20.0) * RRAD); + seg7 = 6.0 * thrash * sin((fish->htail + 30.0) * RRAD); + + pitch = fish->v * sin((fish->htail + 180.0) * RRAD); + + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + chomp = 100.0; + + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3; + P122[1] = iP122[1] + seg3 * 1.5; + + P097[1] = iP097[1] + chomp; + P098[1] = iP098[1] + chomp; + P102[1] = iP102[1] + chomp; + P110[1] = iP110[1] + chomp; + P111[1] = iP111[1] + chomp; + P121[1] = iP121[1] + chomp; + P118[1] = iP118[1] + chomp; + P119[1] = iP119[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 7000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glEnable(GL_CULL_FACE); + Dolphin014(); + Dolphin010(); + Dolphin009(); + Dolphin012(); + Dolphin013(); + Dolphin006(); + Dolphin002(); + Dolphin001(); + Dolphin003(); + Dolphin015(); + Dolphin004(); + Dolphin005(); + Dolphin007(); + Dolphin008(); + Dolphin011(); + Dolphin016(); + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/shark.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/shark.c new file mode 100644 index 000000000..9c847dbaf --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/shark.c @@ -0,0 +1,1308 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N002[3] = {0.000077 ,-0.020611 ,0.999788}; +static float N003[3] = {0.961425 ,0.258729 ,-0.093390}; +static float N004[3] = {0.510811 ,-0.769633 ,-0.383063}; +static float N005[3] = {0.400123 ,0.855734 ,-0.328055}; +static float N006[3] = {-0.770715 ,0.610204 ,-0.183440}; +static float N007[3] = {-0.915597 ,-0.373345 ,-0.149316}; +static float N008[3] = {-0.972788 ,0.208921 ,-0.100179}; +static float N009[3] = {-0.939713 ,-0.312268 ,-0.139383}; +static float N010[3] = {-0.624138 ,-0.741047 ,-0.247589}; +static float N011[3] = {0.591434 ,-0.768401 ,-0.244471}; +static float N012[3] = {0.935152 ,-0.328495 ,-0.132598}; +static float N013[3] = {0.997102 ,0.074243 ,-0.016593}; +static float N014[3] = {0.969995 ,0.241712 ,-0.026186}; +static float N015[3] = {0.844539 ,0.502628 ,-0.184714}; +static float N016[3] = {-0.906608 ,0.386308 ,-0.169787}; +static float N017[3] = {-0.970016 ,0.241698 ,-0.025516}; +static float N018[3] = {-0.998652 ,0.050493 ,-0.012045}; +static float N019[3] = {-0.942685 ,-0.333051 ,-0.020556}; +static float N020[3] = {-0.660944 ,-0.750276 ,0.015480}; +static float N021[3] = {0.503549 ,-0.862908 ,-0.042749}; +static float N022[3] = {0.953202 ,-0.302092 ,-0.012089}; +static float N023[3] = {0.998738 ,0.023574 ,0.044344}; +static float N024[3] = {0.979297 ,0.193272 ,0.060202}; +static float N025[3] = {0.798300 ,0.464885 ,0.382883}; +static float N026[3] = {-0.756590 ,0.452403 ,0.472126}; +static float N027[3] = {-0.953855 ,0.293003 ,0.065651}; +static float N028[3] = {-0.998033 ,0.040292 ,0.048028}; +static float N029[3] = {-0.977079 ,-0.204288 ,0.059858}; +static float N030[3] = {-0.729117 ,-0.675304 ,0.111140}; +static float N031[3] = {0.598361 ,-0.792753 ,0.116221}; +static float N032[3] = {0.965192 ,-0.252991 ,0.066332}; +static float N033[3] = {0.998201 ,-0.002790 ,0.059892}; +static float N034[3] = {0.978657 ,0.193135 ,0.070207}; +static float N035[3] = {0.718815 ,0.680392 ,0.142733}; +static float N036[3] = {-0.383096 ,0.906212 ,0.178936}; +static float N037[3] = {-0.952831 ,0.292590 ,0.080647}; +static float N038[3] = {-0.997680 ,0.032417 ,0.059861}; +static float N039[3] = {-0.982629 ,-0.169881 ,0.074700}; +static float N040[3] = {-0.695424 ,-0.703466 ,0.146700}; +static float N041[3] = {0.359323 ,-0.915531 ,0.180805}; +static float N042[3] = {0.943356 ,-0.319387 ,0.089842}; +static float N043[3] = {0.998272 ,-0.032435 ,0.048993}; +static float N044[3] = {0.978997 ,0.193205 ,0.065084}; +static float N045[3] = {0.872144 ,0.470094 ,-0.135565}; +static float N046[3] = {-0.664282 ,0.737945 ,-0.119027}; +static float N047[3] = {-0.954508 ,0.288570 ,0.075107}; +static float N048[3] = {-0.998273 ,0.032406 ,0.048993}; +static float N049[3] = {-0.979908 ,-0.193579 ,0.048038}; +static float N050[3] = {-0.858736 ,-0.507202 ,-0.072938}; +static float N051[3] = {0.643545 ,-0.763887 ,-0.048237}; +static float N052[3] = {0.955580 ,-0.288954 ,0.058068}; +static float N058[3] = {0.000050 ,0.793007 ,-0.609213}; +static float N059[3] = {0.913510 ,0.235418 ,-0.331779}; +static float N060[3] = {-0.807970 ,0.495000 ,-0.319625}; +static float N061[3] = {0.000000 ,0.784687 ,-0.619892}; +static float N062[3] = {0.000000 ,-1.000000 ,0.000000}; +static float N063[3] = {0.000000 ,1.000000 ,0.000000}; +static float N064[3] = {0.000000 ,1.000000 ,0.000000}; +static float N065[3] = {0.000000 ,1.000000 ,0.000000}; +static float N066[3] = {-0.055784 ,0.257059 ,0.964784}; +static float N069[3] = {-0.000505 ,-0.929775 ,-0.368127}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float P002[3] = {0.00, -36.59, 5687.72}; +static float P003[3] = {90.00, 114.73, 724.38}; +static float P004[3] = {58.24, -146.84, 262.35}; +static float P005[3] = {27.81, 231.52, 510.43}; +static float P006[3] = {-27.81, 230.43, 509.76}; +static float P007[3] = {-46.09, -146.83, 265.84}; +static float P008[3] = {-90.00, 103.84, 718.53}; +static float P009[3] = {-131.10, -165.92, 834.85}; +static float P010[3] = {-27.81, -285.31, 500.00}; +static float P011[3] = {27.81, -285.32, 500.00}; +static float P012[3] = {147.96, -170.89, 845.50}; +static float P013[3] = {180.00, 0.00, 2000.00}; +static float P014[3] = {145.62, 352.67, 2000.00}; +static float P015[3] = {55.62, 570.63, 2000.00}; +static float P016[3] = {-55.62, 570.64, 2000.00}; +static float P017[3] = {-145.62, 352.68, 2000.00}; +static float P018[3] = {-180.00, 0.01, 2000.00}; +static float P019[3] = {-178.20, -352.66, 2001.61}; +static float P020[3] = {-55.63, -570.63, 2000.00}; +static float P021[3] = {55.62, -570.64, 2000.00}; +static float P022[3] = {179.91, -352.69, 1998.39}; +static float P023[3] = {150.00, 0.00, 3000.00}; +static float P024[3] = {121.35, 293.89, 3000.00}; +static float P025[3] = {46.35, 502.93, 2883.09}; +static float P026[3] = {-46.35, 497.45, 2877.24}; +static float P027[3] = {-121.35, 293.90, 3000.00}; +static float P028[3] = {-150.00, 0.00, 3000.00}; +static float P029[3] = {-152.21, -304.84, 2858.68}; +static float P030[3] = {-46.36, -475.52, 3000.00}; +static float P031[3] = {46.35, -475.53, 3000.00}; +static float P032[3] = {155.64, -304.87, 2863.50}; +static float P033[3] = {90.00, 0.00, 4000.00}; +static float P034[3] = {72.81, 176.33, 4000.00}; +static float P035[3] = {27.81, 285.32, 4000.00}; +static float P036[3] = {-27.81, 285.32, 4000.00}; +static float P037[3] = {-72.81, 176.34, 4000.00}; +static float P038[3] = {-90.00, 0.00, 4000.00}; +static float P039[3] = {-72.81, -176.33, 4000.00}; +static float P040[3] = {-27.81, -285.31, 4000.00}; +static float P041[3] = {27.81, -285.32, 4000.00}; +static float P042[3] = {72.81, -176.34, 4000.00}; +static float P043[3] = {30.00, 0.00, 5000.00}; +static float P044[3] = {24.27, 58.78, 5000.00}; +static float P045[3] = {9.27, 95.11, 5000.00}; +static float P046[3] = {-9.27, 95.11, 5000.00}; +static float P047[3] = {-24.27, 58.78, 5000.00}; +static float P048[3] = {-30.00, 0.00, 5000.00}; +static float P049[3] = {-24.27, -58.78, 5000.00}; +static float P050[3] = {-9.27, -95.10, 5000.00}; +static float P051[3] = {9.27, -95.11, 5000.00}; +static float P052[3] = {24.27, -58.78, 5000.00}; +static float P058[3] = {0.00, 1212.72, 2703.08}; +static float P059[3] = {50.36, 0.00, 108.14}; +static float P060[3] = {-22.18, 0.00, 108.14}; +static float P061[3] = {0.00, 1181.61, 6344.65}; +static float P062[3] = {516.45, -887.08, 2535.45}; +static float P063[3] = {-545.69, -879.31, 2555.63}; +static float P064[3] = {618.89, -1005.64, 2988.32}; +static float P065[3] = {-635.37, -1014.79, 2938.68}; +static float P066[3] = {0.00, 1374.43, 3064.18}; +static float P069[3] = {0.00, -418.25, 5765.04}; +static float P070[3] = {0.00, 1266.91, 6629.60}; +static float P071[3] = {-139.12, -124.96, 997.98}; +static float P072[3] = {-139.24, -110.18, 1020.68}; +static float P073[3] = {-137.33, -94.52, 1022.63}; +static float P074[3] = {-137.03, -79.91, 996.89}; +static float P075[3] = {-135.21, -91.48, 969.14}; +static float P076[3] = {-135.39, -110.87, 968.76}; +static float P077[3] = {150.23, -78.44, 995.53}; +static float P078[3] = {152.79, -92.76, 1018.46}; +static float P079[3] = {154.19, -110.20, 1020.55}; +static float P080[3] = {151.33, -124.15, 993.77}; +static float P081[3] = {150.49, -111.19, 969.86}; +static float P082[3] = {150.79, -92.41, 969.70}; +static float iP002[3] = {0.00, -36.59, 5687.72}; +static float iP004[3] = {58.24, -146.84, 262.35}; +static float iP007[3] = {-46.09, -146.83, 265.84}; +static float iP010[3] = {-27.81, -285.31, 500.00}; +static float iP011[3] = {27.81, -285.32, 500.00}; +static float iP023[3] = {150.00, 0.00, 3000.00}; +static float iP024[3] = {121.35, 293.89, 3000.00}; +static float iP025[3] = {46.35, 502.93, 2883.09}; +static float iP026[3] = {-46.35, 497.45, 2877.24}; +static float iP027[3] = {-121.35, 293.90, 3000.00}; +static float iP028[3] = {-150.00, 0.00, 3000.00}; +static float iP029[3] = {-121.35, -304.84, 2853.86}; +static float iP030[3] = {-46.36, -475.52, 3000.00}; +static float iP031[3] = {46.35, -475.53, 3000.00}; +static float iP032[3] = {121.35, -304.87, 2853.86}; +static float iP033[3] = {90.00, 0.00, 4000.00}; +static float iP034[3] = {72.81, 176.33, 4000.00}; +static float iP035[3] = {27.81, 285.32, 4000.00}; +static float iP036[3] = {-27.81, 285.32, 4000.00}; +static float iP037[3] = {-72.81, 176.34, 4000.00}; +static float iP038[3] = {-90.00, 0.00, 4000.00}; +static float iP039[3] = {-72.81, -176.33, 4000.00}; +static float iP040[3] = {-27.81, -285.31, 4000.00}; +static float iP041[3] = {27.81, -285.32, 4000.00}; +static float iP042[3] = {72.81, -176.34, 4000.00}; +static float iP043[3] = {30.00, 0.00, 5000.00}; +static float iP044[3] = {24.27, 58.78, 5000.00}; +static float iP045[3] = {9.27, 95.11, 5000.00}; +static float iP046[3] = {-9.27, 95.11, 5000.00}; +static float iP047[3] = {-24.27, 58.78, 5000.00}; +static float iP048[3] = {-30.00, 0.00, 5000.00}; +static float iP049[3] = {-24.27, -58.78, 5000.00}; +static float iP050[3] = {-9.27, -95.10, 5000.00}; +static float iP051[3] = {9.27, -95.11, 5000.00}; +static float iP052[3] = {24.27, -58.78, 5000.00}; +static float iP061[3] = {0.00, 1181.61, 6344.65}; +static float iP069[3] = {0.00, -418.25, 5765.04}; +static float iP070[3] = {0.00, 1266.91, 6629.60}; +/* *INDENT-ON* */ + +void +Fish001(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N017); + glVertex3fv(P017); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N007); + glVertex3fv(P007); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P072); + glVertex3fv(P073); + glVertex3fv(P074); + glVertex3fv(P075); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P077); + glVertex3fv(P078); + glVertex3fv(P079); + glVertex3fv(P080); + glVertex3fv(P081); + glVertex3fv(P082); + glEnd(); +} + +void +Fish002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); +} + +void +Fish004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N070); + glVertex3fv(P070); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); +} + +void +Fish005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Fish006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); +} + +void +Fish007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); +} + +void +Fish008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish009(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P059); + glVertex3fv(P012); + glVertex3fv(P009); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P012); + glVertex3fv(P004); + glVertex3fv(P007); + glVertex3fv(P009); + glEnd(); +} + +void +Fish_1(void) +{ + Fish004(); + Fish005(); + Fish003(); + Fish007(); + Fish006(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); +} + +void +Fish_2(void) +{ + Fish005(); + Fish004(); + Fish003(); + Fish008(); + Fish006(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); +} + +void +Fish_3(void) +{ + Fish005(); + Fish004(); + Fish007(); + Fish003(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_4(void) +{ + Fish005(); + Fish004(); + Fish008(); + Fish003(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_5(void) +{ + Fish009(); + Fish006(); + Fish007(); + Fish001(); + Fish002(); + Fish003(); + Fish008(); + Fish004(); + Fish005(); +} + +void +Fish_6(void) +{ + Fish009(); + Fish006(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish004(); + Fish005(); +} + +void +Fish_7(void) +{ + Fish009(); + Fish001(); + Fish007(); + Fish005(); + Fish002(); + Fish008(); + Fish003(); + Fish004(); + Fish006(); +} + +void +Fish_8(void) +{ + Fish009(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish005(); + Fish004(); + Fish006(); +} + +void +DrawShark(fishRec * fish) +{ + float mat[4][4]; + int n; + float seg1, seg2, seg3, seg4, segup; + float thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 50.0 * fish->v; + + seg1 = 0.6 * thrash * sin(fish->htail * RRAD); + seg2 = 1.8 * thrash * sin((fish->htail + 45.0) * RRAD); + seg3 = 3.0 * thrash * sin((fish->htail + 90.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 110.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P004[1] = iP004[1] + chomp; + P007[1] = iP007[1] + chomp; + P010[1] = iP010[1] + chomp; + P011[1] = iP011[1] + chomp; + + P023[0] = iP023[0] + seg1; + P024[0] = iP024[0] + seg1; + P025[0] = iP025[0] + seg1; + P026[0] = iP026[0] + seg1; + P027[0] = iP027[0] + seg1; + P028[0] = iP028[0] + seg1; + P029[0] = iP029[0] + seg1; + P030[0] = iP030[0] + seg1; + P031[0] = iP031[0] + seg1; + P032[0] = iP032[0] + seg1; + P033[0] = iP033[0] + seg2; + P034[0] = iP034[0] + seg2; + P035[0] = iP035[0] + seg2; + P036[0] = iP036[0] + seg2; + P037[0] = iP037[0] + seg2; + P038[0] = iP038[0] + seg2; + P039[0] = iP039[0] + seg2; + P040[0] = iP040[0] + seg2; + P041[0] = iP041[0] + seg2; + P042[0] = iP042[0] + seg2; + P043[0] = iP043[0] + seg3; + P044[0] = iP044[0] + seg3; + P045[0] = iP045[0] + seg3; + P046[0] = iP046[0] + seg3; + P047[0] = iP047[0] + seg3; + P048[0] = iP048[0] + seg3; + P049[0] = iP049[0] + seg3; + P050[0] = iP050[0] + seg3; + P051[0] = iP051[0] + seg3; + P052[0] = iP052[0] + seg3; + P002[0] = iP002[0] + seg4; + P061[0] = iP061[0] + seg4; + P069[0] = iP069[0] + seg4; + P070[0] = iP070[0] + seg4; + + fish->vtail += ((fish->dtheta - fish->vtail) * 0.1); + + if (fish->vtail > 0.5) { + fish->vtail = 0.5; + } else if (fish->vtail < -0.5) { + fish->vtail = -0.5; + } + segup = thrash * fish->vtail; + + P023[1] = iP023[1] + segup; + P024[1] = iP024[1] + segup; + P025[1] = iP025[1] + segup; + P026[1] = iP026[1] + segup; + P027[1] = iP027[1] + segup; + P028[1] = iP028[1] + segup; + P029[1] = iP029[1] + segup; + P030[1] = iP030[1] + segup; + P031[1] = iP031[1] + segup; + P032[1] = iP032[1] + segup; + P033[1] = iP033[1] + segup * 5.0; + P034[1] = iP034[1] + segup * 5.0; + P035[1] = iP035[1] + segup * 5.0; + P036[1] = iP036[1] + segup * 5.0; + P037[1] = iP037[1] + segup * 5.0; + P038[1] = iP038[1] + segup * 5.0; + P039[1] = iP039[1] + segup * 5.0; + P040[1] = iP040[1] + segup * 5.0; + P041[1] = iP041[1] + segup * 5.0; + P042[1] = iP042[1] + segup * 5.0; + P043[1] = iP043[1] + segup * 12.0; + P044[1] = iP044[1] + segup * 12.0; + P045[1] = iP045[1] + segup * 12.0; + P046[1] = iP046[1] + segup * 12.0; + P047[1] = iP047[1] + segup * 12.0; + P048[1] = iP048[1] + segup * 12.0; + P049[1] = iP049[1] + segup * 12.0; + P050[1] = iP050[1] + segup * 12.0; + P051[1] = iP051[1] + segup * 12.0; + P052[1] = iP052[1] + segup * 12.0; + P002[1] = iP002[1] + segup * 17.0; + P061[1] = iP061[1] + segup * 17.0; + P069[1] = iP069[1] + segup * 17.0; + P070[1] = iP070[1] + segup * 17.0; + + glPushMatrix(); + + glTranslatef(0.0, 0.0, -3000.0); + + glGetFloatv(GL_MODELVIEW_MATRIX, &mat[0][0]); + n = 0; + if (mat[0][2] >= 0.0) { + n += 1; + } + if (mat[1][2] >= 0.0) { + n += 2; + } + if (mat[2][2] >= 0.0) { + n += 4; + } + glScalef(2.0, 1.0, 1.0); + + glEnable(GL_CULL_FACE); + switch (n) { + case 0: + Fish_1(); + break; + case 1: + Fish_2(); + break; + case 2: + Fish_3(); + break; + case 3: + Fish_4(); + break; + case 4: + Fish_5(); + break; + case 5: + Fish_6(); + break; + case 6: + Fish_7(); + break; + case 7: + Fish_8(); + break; + } + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/swim.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/swim.c new file mode 100644 index 000000000..cac7b6095 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/swim.c @@ -0,0 +1,188 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include /* For rand(). */ +#include +#include "atlantis.h" + +void +FishTransform(fishRec * fish) +{ + + glTranslatef(fish->y, fish->z, -fish->x); + glRotatef(-fish->psi, 0.0, 1.0, 0.0); + glRotatef(fish->theta, 1.0, 0.0, 0.0); + glRotatef(-fish->phi, 0.0, 0.0, 1.0); +} + +void +WhalePilot(fishRec * fish) +{ + + fish->phi = -20.0; + fish->theta = 0.0; + fish->psi -= 0.5; + + fish->x += WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += WHALESPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkPilot(fishRec * fish) +{ + static int sign = 1; + float X, Y, Z, tpsi, ttheta, thetal; + + fish->xt = 60000.0; + fish->yt = 0.0; + fish->zt = 0.0; + + X = fish->xt - fish->x; + Y = fish->yt - fish->y; + Z = fish->zt - fish->z; + + thetal = fish->theta; + + ttheta = RAD * atan(Z / (sqrt(X * X + Y * Y))); + + if (ttheta > fish->theta + 0.25) { + fish->theta += 0.5; + } else if (ttheta < fish->theta - 0.25) { + fish->theta -= 0.5; + } + if (fish->theta > 90.0) { + fish->theta = 90.0; + } + if (fish->theta < -90.0) { + fish->theta = -90.0; + } + fish->dtheta = fish->theta - thetal; + + tpsi = RAD * atan2(Y, X); + + fish->attack = 0; + + if (fabs(tpsi - fish->psi) < 10.0) { + fish->attack = 1; + } else if (fabs(tpsi - fish->psi) < 45.0) { + if (fish->psi > tpsi) { + fish->psi -= 0.5; + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } else if (fish->psi < tpsi) { + fish->psi += 0.5; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + } + } else { + if (rand() % 100 > 98) { + sign = 1 - sign; + } + fish->psi += sign; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } + + if (fish->attack) { + if (fish->v < 1.1) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.2; + } + if (fish->v > 5.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.2; + } + } else { + if (!(rand() % 400) && (!fish->spurt)) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.05; + } + if (fish->v > 3.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.05; + } + } + + fish->x += SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += SHARKSPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkMiss(int i) +{ + int j; + float avoid, thetal; + float X, Y, Z, R; + + for (j = 0; j < NUM_SHARKS; j++) { + if (j != i) { + X = sharks[j].x - sharks[i].x; + Y = sharks[j].y - sharks[i].y; + Z = sharks[j].z - sharks[i].z; + + R = sqrt(X * X + Y * Y + Z * Z); + + avoid = 1.0; + thetal = sharks[i].theta; + + if (R < SHARKSIZE) { + if (Z > 0.0) { + sharks[i].theta -= avoid; + } else { + sharks[i].theta += avoid; + } + } + sharks[i].dtheta += (sharks[i].theta - thetal); + } + } +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/whale.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/whale.c new file mode 100644 index 000000000..828640ad0 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/atlantis/whale.c @@ -0,0 +1,1798 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {0.019249 ,0.011340 ,-0.999750}; +static float N002[3] = {-0.132579 ,0.954547 ,0.266952}; +static float N003[3] = {-0.196061 ,0.980392 ,-0.019778}; +static float N004[3] = {0.695461 ,0.604704 ,0.388158}; +static float N005[3] = {0.870600 ,0.425754 ,0.246557}; +static float N006[3] = {-0.881191 ,0.392012 ,0.264251}; +static float N008[3] = {-0.341437 ,0.887477 ,0.309523}; +static float N009[3] = {0.124035 ,-0.992278 ,0.000000}; +static float N010[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N011[3] = {0.588172 ,0.000000 ,0.808736}; +static float N012[3] = {0.929824 ,-0.340623 ,-0.139298}; +static float N013[3] = {0.954183 ,0.267108 ,-0.134865}; +static float N014[3] = {0.495127 ,0.855436 ,-0.151914}; +static float N015[3] = {-0.390199 ,0.906569 ,-0.160867}; +static float N016[3] = {-0.923605 ,0.354581 ,-0.145692}; +static float N017[3] = {-0.955796 ,-0.260667 ,-0.136036}; +static float N018[3] = {-0.501283 ,-0.853462 ,-0.142540}; +static float N019[3] = {0.405300 ,-0.901974 ,-0.148913}; +static float N020[3] = {0.909913 ,-0.392746 ,-0.133451}; +static float N021[3] = {0.936494 ,0.331147 ,-0.115414}; +static float N022[3] = {0.600131 ,0.793724 ,-0.099222}; +static float N023[3] = {-0.231556 ,0.968361 ,-0.093053}; +static float N024[3] = {-0.844369 ,0.525330 ,-0.105211}; +static float N025[3] = {-0.982725 ,-0.136329 ,-0.125164}; +static float N026[3] = {-0.560844 ,-0.822654 ,-0.093241}; +static float N027[3] = {0.263884 ,-0.959981 ,-0.093817}; +static float N028[3] = {0.842057 ,-0.525192 ,-0.122938}; +static float N029[3] = {0.921620 ,0.367565 ,-0.124546}; +static float N030[3] = {0.613927 ,0.784109 ,-0.090918}; +static float N031[3] = {-0.448754 ,0.888261 ,-0.098037}; +static float N032[3] = {-0.891865 ,0.434376 ,-0.126077}; +static float N033[3] = {-0.881447 ,-0.448017 ,-0.149437}; +static float N034[3] = {-0.345647 ,-0.922057 ,-0.174183}; +static float N035[3] = {0.307998 ,-0.941371 ,-0.137688}; +static float N036[3] = {0.806316 ,-0.574647 ,-0.140124}; +static float N037[3] = {0.961346 ,0.233646 ,-0.145681}; +static float N038[3] = {0.488451 ,0.865586 ,-0.110351}; +static float N039[3] = {-0.374290 ,0.921953 ,-0.099553}; +static float N040[3] = {-0.928504 ,0.344533 ,-0.138485}; +static float N041[3] = {-0.918419 ,-0.371792 ,-0.135189}; +static float N042[3] = {-0.520666 ,-0.833704 ,-0.183968}; +static float N043[3] = {0.339204 ,-0.920273 ,-0.195036}; +static float N044[3] = {0.921475 ,-0.387382 ,-0.028636}; +static float N045[3] = {0.842465 ,0.533335 ,-0.076204}; +static float N046[3] = {0.380110 ,0.924939 ,0.002073}; +static float N047[3] = {-0.276128 ,0.961073 ,-0.009579}; +static float N048[3] = {-0.879684 ,0.473001 ,-0.049250}; +static float N049[3] = {-0.947184 ,-0.317614 ,-0.044321}; +static float N050[3] = {-0.642059 ,-0.764933 ,-0.051363}; +static float N051[3] = {0.466794 ,-0.880921 ,-0.077990}; +static float N052[3] = {0.898509 ,-0.432277 ,0.076279}; +static float N053[3] = {0.938985 ,0.328141 ,0.103109}; +static float N054[3] = {0.442420 ,0.895745 ,0.043647}; +static float N055[3] = {-0.255163 ,0.966723 ,0.018407}; +static float N056[3] = {-0.833769 ,0.540650 ,0.111924}; +static float N057[3] = {-0.953653 ,-0.289939 ,0.080507}; +static float N058[3] = {-0.672357 ,-0.730524 ,0.119461}; +static float N059[3] = {0.522249 ,-0.846652 ,0.102157}; +static float N060[3] = {0.885868 ,-0.427631 ,0.179914}; +static float N062[3] = {0.648942 ,0.743116 ,0.163255}; +static float N063[3] = {-0.578967 ,0.807730 ,0.111219}; +static float N065[3] = {-0.909864 ,-0.352202 ,0.219321}; +static float N066[3] = {-0.502541 ,-0.818090 ,0.279610}; +static float N067[3] = {0.322919 ,-0.915358 ,0.240504}; +static float N068[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N069[3] = {0.000000 ,1.000000 ,0.000000}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N072[3] = {0.000000 ,1.000000 ,0.000000}; +static float N073[3] = {0.000000 ,1.000000 ,0.000000}; +static float N074[3] = {0.000000 ,1.000000 ,0.000000}; +static float N075[3] = {0.031220 ,0.999025 ,-0.031220}; +static float N076[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {0.446821 ,0.893642 ,0.041889}; +static float N078[3] = {0.863035 ,-0.100980 ,0.494949}; +static float N079[3] = {0.585597 ,-0.808215 ,0.062174}; +static float N080[3] = {0.000000 ,1.000000 ,0.000000}; +static float N081[3] = {1.000000 ,0.000000 ,0.000000}; +static float N082[3] = {0.000000 ,1.000000 ,0.000000}; +static float N083[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N084[3] = {-0.478893 ,0.837129 ,-0.264343}; +static float N085[3] = {0.000000 ,1.000000 ,0.000000}; +static float N086[3] = {0.763909 ,0.539455 ,-0.354163}; +static float N087[3] = {0.446821 ,0.893642 ,0.041889}; +static float N088[3] = {0.385134 ,-0.908288 ,0.163352}; +static float N089[3] = {-0.605952 ,0.779253 ,-0.159961}; +static float N090[3] = {0.000000 ,1.000000 ,0.000000}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N096[3] = {0.644444 ,-0.621516 ,0.445433}; +static float N097[3] = {-0.760896 ,-0.474416 ,0.442681}; +static float N098[3] = {0.636888 ,-0.464314 ,0.615456}; +static float N099[3] = {-0.710295 ,0.647038 ,0.277168}; +static float N100[3] = {0.009604 ,0.993655 ,0.112063}; +static float iP001[3] = {18.74, 13.19, 3.76}; +static float P001[3] = {18.74, 13.19, 3.76}; +static float P002[3] = {0.00, 390.42, 10292.57}; +static float P003[3] = {55.80, 622.31, 8254.35}; +static float P004[3] = {20.80, 247.66, 10652.13}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 199.04, 9353.01}; +static float P008[3] = {-34.67, 247.64, 10663.71}; +static float iP009[3] = {97.46, 67.63, 593.82}; +static float iP010[3] = {-84.33, 67.63, 588.18}; +static float iP011[3] = {118.69, 8.98, -66.91}; +static float P009[3] = {97.46, 67.63, 593.82}; +static float P010[3] = {-84.33, 67.63, 588.18}; +static float P011[3] = {118.69, 8.98, -66.91}; +static float iP012[3] = {156.48, -31.95, 924.54}; +static float iP013[3] = {162.00, 110.22, 924.54}; +static float iP014[3] = {88.16, 221.65, 924.54}; +static float iP015[3] = {-65.21, 231.16, 924.54}; +static float iP016[3] = {-156.48, 121.97, 924.54}; +static float iP017[3] = {-162.00, -23.93, 924.54}; +static float iP018[3] = {-88.16, -139.10, 924.54}; +static float iP019[3] = {65.21, -148.61, 924.54}; +static float iP020[3] = {246.87, -98.73, 1783.04}; +static float iP021[3] = {253.17, 127.76, 1783.04}; +static float iP022[3] = {132.34, 270.77, 1783.04}; +static float iP023[3] = {-97.88, 285.04, 1783.04}; +static float iP024[3] = {-222.97, 139.80, 1783.04}; +static float iP025[3] = {-225.29, -86.68, 1783.04}; +static float iP026[3] = {-108.44, -224.15, 1783.04}; +static float iP027[3] = {97.88, -221.56, 1783.04}; +static float iP028[3] = {410.55, -200.66, 3213.87}; +static float iP029[3] = {432.19, 148.42, 3213.87}; +static float iP030[3] = {200.66, 410.55, 3213.87}; +static float iP031[3] = {-148.42, 432.19, 3213.87}; +static float iP032[3] = {-407.48, 171.88, 3213.87}; +static float iP033[3] = {-432.19, -148.42, 3213.87}; +static float iP034[3] = {-148.88, -309.74, 3213.87}; +static float iP035[3] = {156.38, -320.17, 3213.87}; +static float iP036[3] = {523.39, -303.81, 4424.57}; +static float iP037[3] = {574.66, 276.84, 4424.57}; +static float iP038[3] = {243.05, 492.50, 4424.57}; +static float iP039[3] = {-191.23, 520.13, 4424.57}; +static float iP040[3] = {-523.39, 304.01, 4424.57}; +static float iP041[3] = {-574.66, -231.83, 4424.57}; +static float iP042[3] = {-266.95, -578.17, 4424.57}; +static float iP043[3] = {211.14, -579.67, 4424.57}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 5943.46}; +static float iP046[3] = {371.29, 614.13, 5943.46}; +static float iP047[3] = {-291.43, 621.86, 5943.46}; +static float iP048[3] = {-784.13, 362.60, 5943.46}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P012[3] = {156.48, -31.95, 924.54}; +static float P013[3] = {162.00, 110.22, 924.54}; +static float P014[3] = {88.16, 221.65, 924.54}; +static float P015[3] = {-65.21, 231.16, 924.54}; +static float P016[3] = {-156.48, 121.97, 924.54}; +static float P017[3] = {-162.00, -23.93, 924.54}; +static float P018[3] = {-88.16, -139.10, 924.54}; +static float P019[3] = {65.21, -148.61, 924.54}; +static float P020[3] = {246.87, -98.73, 1783.04}; +static float P021[3] = {253.17, 127.76, 1783.04}; +static float P022[3] = {132.34, 270.77, 1783.04}; +static float P023[3] = {-97.88, 285.04, 1783.04}; +static float P024[3] = {-222.97, 139.80, 1783.04}; +static float P025[3] = {-225.29, -86.68, 1783.04}; +static float P026[3] = {-108.44, -224.15, 1783.04}; +static float P027[3] = {97.88, -221.56, 1783.04}; +static float P028[3] = {410.55, -200.66, 3213.87}; +static float P029[3] = {432.19, 148.42, 3213.87}; +static float P030[3] = {200.66, 410.55, 3213.87}; +static float P031[3] = {-148.42, 432.19, 3213.87}; +static float P032[3] = {-407.48, 171.88, 3213.87}; +static float P033[3] = {-432.19, -148.42, 3213.87}; +static float P034[3] = {-148.88, -309.74, 3213.87}; +static float P035[3] = {156.38, -320.17, 3213.87}; +static float P036[3] = {523.39, -303.81, 4424.57}; +static float P037[3] = {574.66, 276.84, 4424.57}; +static float P038[3] = {243.05, 492.50, 4424.57}; +static float P039[3] = {-191.23, 520.13, 4424.57}; +static float P040[3] = {-523.39, 304.01, 4424.57}; +static float P041[3] = {-574.66, -231.83, 4424.57}; +static float P042[3] = {-266.95, -578.17, 4424.57}; +static float P043[3] = {211.14, -579.67, 4424.57}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 5943.46}; +static float P046[3] = {371.29, 614.13, 5943.46}; +static float P047[3] = {-291.43, 621.86, 5943.46}; +static float P048[3] = {-784.13, 362.60, 5943.46}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -332.24, 7902.59}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {321.55, 558.53, 7902.59}; +static float P055[3] = {-260.54, 559.84, 7902.59}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 438.98, 9364.77}; +static float P063[3] = {-165.71, 441.27, 9355.44}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -504.03, 9355.44}; +static float iP068[3] = {-112.44, 9.25, -64.42}; +static float iP069[3] = {1155.63, 0.00, -182.46}; +static float iP070[3] = {-1143.13, 0.00, -181.54}; +static float iP071[3] = {1424.23, 0.00, -322.09}; +static float iP072[3] = {-1368.01, 0.00, -310.38}; +static float iP073[3] = {1255.57, 2.31, 114.05}; +static float iP074[3] = {-1149.38, 0.00, 117.12}; +static float iP075[3] = {718.36, 0.00, 433.36}; +static float iP076[3] = {-655.90, 0.00, 433.36}; +static float P068[3] = {-112.44, 9.25, -64.42}; +static float P069[3] = {1155.63, 0.00, -182.46}; +static float P070[3] = {-1143.13, 0.00, -181.54}; +static float P071[3] = {1424.23, 0.00, -322.09}; +static float P072[3] = {-1368.01, 0.00, -310.38}; +static float P073[3] = {1255.57, 2.31, 114.05}; +static float P074[3] = {-1149.38, 0.00, 117.12}; +static float P075[3] = {718.36, 0.00, 433.36}; +static float P076[3] = {-655.90, 0.00, 433.36}; +static float P077[3] = {1058.00, -2.66, 7923.51}; +static float P078[3] = {-1016.51, -15.47, 7902.87}; +static float P079[3] = {-1363.99, -484.50, 7593.38}; +static float P080[3] = {1478.09, -861.47, 7098.12}; +static float P081[3] = {1338.06, -284.68, 7024.15}; +static float P082[3] = {-1545.51, -860.64, 7106.60}; +static float P083[3] = {1063.19, -70.46, 7466.60}; +static float P084[3] = {-1369.18, -288.11, 7015.34}; +static float P085[3] = {1348.44, -482.50, 7591.41}; +static float P086[3] = {-1015.45, -96.80, 7474.86}; +static float P087[3] = {731.04, 148.38, 7682.58}; +static float P088[3] = {-697.03, 151.82, 7668.81}; +static float P089[3] = {-686.82, 157.09, 7922.29}; +static float P090[3] = {724.73, 147.75, 7931.39}; +static float iP091[3] = {0.00, 327.10, 2346.55}; +static float iP092[3] = {0.00, 552.28, 2311.31}; +static float iP093[3] = {0.00, 721.16, 2166.41}; +static float iP094[3] = {0.00, 693.42, 2388.80}; +static float iP095[3] = {0.00, 389.44, 2859.97}; +static float P091[3] = {0.00, 327.10, 2346.55}; +static float P092[3] = {0.00, 552.28, 2311.31}; +static float P093[3] = {0.00, 721.16, 2166.41}; +static float P094[3] = {0.00, 693.42, 2388.80}; +static float P095[3] = {0.00, 389.44, 2859.97}; +static float iP096[3] = {222.02, -183.67, 10266.89}; +static float iP097[3] = {-128.90, -182.70, 10266.89}; +static float iP098[3] = {41.04, 88.31, 10659.36}; +static float iP099[3] = {-48.73, 88.30, 10659.36}; +static float P096[3] = {222.02, -183.67, 10266.89}; +static float P097[3] = {-128.90, -182.70, 10266.89}; +static float P098[3] = {41.04, 88.31, 10659.36}; +static float P099[3] = {-48.73, 88.30, 10659.36}; +static float P100[3] = {0.00, 603.42, 9340.68}; +static float P104[3] = {-9.86, 567.62, 7858.65}; +static float P105[3] = {31.96, 565.27, 7908.46}; +static float P106[3] = {22.75, 568.13, 7782.83}; +static float P107[3] = {58.93, 568.42, 7775.94}; +static float P108[3] = {55.91, 565.59, 7905.86}; +static float P109[3] = {99.21, 566.00, 7858.65}; +static float P110[3] = {-498.83, 148.14, 9135.10}; +static float P111[3] = {-495.46, 133.24, 9158.48}; +static float P112[3] = {-490.82, 146.23, 9182.76}; +static float P113[3] = {-489.55, 174.11, 9183.66}; +static float P114[3] = {-492.92, 189.00, 9160.28}; +static float P115[3] = {-497.56, 176.02, 9136.00}; +static float P116[3] = {526.54, 169.68, 9137.70}; +static float P117[3] = {523.49, 184.85, 9161.42}; +static float P118[3] = {518.56, 171.78, 9186.06}; +static float P119[3] = {516.68, 143.53, 9186.98}; +static float P120[3] = {519.73, 128.36, 9163.26}; +static float P121[3] = {524.66, 141.43, 9138.62}; +/* *INDENT-ON* */ + +void +Whale001(void) +{ + + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N074); + glVertex3fv(P074); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); +} + +void +Whale002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); +} + +void +Whale003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Whale004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Whale005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Whale006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Whale007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Whale008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Whale009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Whale010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Whale011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Whale012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); +} + +void +Whale013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P005); + glVertex3fv(P006); + glVertex3fv(P099); + glVertex3fv(P098); + glEnd(); +} + +void +Whale014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P006); + glVertex3fv(P005); + glVertex3fv(P004); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); +} + +void +Whale015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); +} + +void +Whale016(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P104); + glVertex3fv(P105); + glVertex3fv(P106); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P107); + glVertex3fv(P108); + glVertex3fv(P109); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P110); + glVertex3fv(P111); + glVertex3fv(P112); + glVertex3fv(P113); + glVertex3fv(P114); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P116); + glVertex3fv(P117); + glVertex3fv(P118); + glVertex3fv(P119); + glVertex3fv(P120); + glVertex3fv(P121); + glEnd(); +} + +void +DrawWhale(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.5 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.5 * thrash * sin((fish->htail + 10.0) * RRAD); + seg2 = 3.7 * thrash * sin((fish->htail + 15.0) * RRAD); + seg3 = 4.8 * thrash * sin((fish->htail + 23.0) * RRAD); + seg4 = 6.0 * thrash * sin((fish->htail + 28.0) * RRAD); + seg5 = 6.5 * thrash * sin((fish->htail + 35.0) * RRAD); + seg6 = 6.5 * thrash * sin((fish->htail + 40.0) * RRAD); + seg7 = 6.5 * thrash * sin((fish->htail + 55.0) * RRAD); + + pitch = fish->v * sin((fish->htail - 160.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3 * 1.1; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3 * 0.9; + + P099[1] = iP099[1] + chomp; + P098[1] = iP098[1] + chomp; + P097[1] = iP097[1] + chomp; + P096[1] = iP096[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 8000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glScalef(3.0, 3.0, 3.0); + + glEnable(GL_CULL_FACE); + + Whale001(); + Whale002(); + Whale003(); + Whale004(); + Whale005(); + Whale006(); + Whale007(); + Whale008(); + Whale009(); + Whale010(); + Whale011(); + Whale012(); + Whale013(); + Whale014(); + Whale015(); + Whale016(); + + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/main.c b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/main.c new file mode 100644 index 000000000..b7794b3b6 --- /dev/null +++ b/Xcode/TemplatesForXcodeSnowLeopard/SDL OpenGL Application/main.c @@ -0,0 +1,179 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +extern void Atlantis_Init (); +extern void Atlantis_Reshape (int w, int h); +extern void Atlantis_Animate (); +extern void Atlantis_Display (); + +static SDL_Surface *gScreen; + +static void initAttributes () +{ + // Setup attributes we want for the OpenGL context + + int value; + + // Don't set color bit sizes (SDL_GL_RED_SIZE, etc) + // Mac OS X will always use 8-8-8-8 ARGB for 32-bit screens and + // 5-5-5 RGB for 16-bit screens + + // Request a 16-bit depth buffer (without this, there is no depth buffer) + value = 16; + SDL_GL_SetAttribute (SDL_GL_DEPTH_SIZE, value); + + + // Request double-buffered OpenGL + // The fact that windows are double-buffered on Mac OS X has no effect + // on OpenGL double buffering. + value = 1; + SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, value); +} + +static void printAttributes () +{ + // Print out attributes of the context we created + int nAttr; + int i; + + int attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE, + SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE }; + + char *desc[] = { "Red size: %d bits\n", "Blue size: %d bits\n", "Green size: %d bits\n", + "Alpha size: %d bits\n", "Color buffer size: %d bits\n", + "Depth bufer size: %d bits\n" }; + + nAttr = sizeof(attr) / sizeof(int); + + for (i = 0; i < nAttr; i++) { + + int value; + SDL_GL_GetAttribute (attr[i], &value); + printf (desc[i], value); + } +} + +static void createSurface (int fullscreen) +{ + Uint32 flags = 0; + + flags = SDL_OPENGL; + if (fullscreen) + flags |= SDL_FULLSCREEN; + + // Create window + gScreen = SDL_SetVideoMode (640, 480, 0, flags); + if (gScreen == NULL) { + + fprintf (stderr, "Couldn't set 640x480 OpenGL video mode: %s\n", + SDL_GetError()); + SDL_Quit(); + exit(2); + } +} + +static void initGL () +{ + Atlantis_Init (); + Atlantis_Reshape (gScreen->w, gScreen->h); +} + +static void drawGL () +{ + Atlantis_Animate (); + Atlantis_Display (); +} + +static void mainLoop () +{ + SDL_Event event; + int done = 0; + int fps = 24; + int delay = 1000/fps; + int thenTicks = -1; + int nowTicks; + + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent (&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + + // Draw at 24 hz + // This approach is not normally recommended - it is better to + // use time-based animation and run as fast as possible + drawGL (); + SDL_GL_SwapBuffers (); + + // Time how long each draw-swap-delay cycle takes + // and adjust delay to get closer to target framerate + if (thenTicks > 0) { + nowTicks = SDL_GetTicks (); + delay += (1000/fps - (nowTicks-thenTicks)); + thenTicks = nowTicks; + if (delay < 0) + delay = 1000/fps; + } + else { + thenTicks = SDL_GetTicks (); + } + + SDL_Delay (delay); + } +} + +int main(int argc, char *argv[]) +{ + // Init SDL video subsystem + if ( SDL_Init (SDL_INIT_VIDEO) < 0 ) { + + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + // Set GL context attributes + initAttributes (); + + // Create GL context + createSurface (0); + + // Get GL context attributes + printAttributes (); + + // Init GL state + initGL (); + + // Draw, get events... + mainLoop (); + + // Cleanup + SDL_Quit(); + + return 0; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeTiger/SDL Application/English.lproj/InfoPlist.strings new file mode 100755 index 0000000000000000000000000000000000000000..e612457676d964a8021d20ec90290d5c6c3d88c1 GIT binary patch literal 588 zcmb`^&q@Mu6vgq++Nb#8Qo?E-ElkXe8e^28c2kajNM}UHz+TBm@ZBnyA}S0bTHkZ; z`JQv1U+k+1F68bdrY4@G27*Vag{6sHW+})G1s$28T;06XFBO6ZsdcHU*;i4~bn3)P zW?(86Nz9~zV?ou%l~~ugmZrW)!=;w3s-qqIJ!83r!u1!jp2EUJX7r2O-*W{A>JESK zY)cg%iT}rGPtcT`TbJA; + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.«PROJECTNAMEASXML» + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + + diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..d9ca45493 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application."; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/project.pbxproj new file mode 100644 index 000000000..ccac45981 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp.xcodeproj/project.pbxproj @@ -0,0 +1,324 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildStyle section */ + 4A9504CCFFE6A4B311CA0CBA /* Debug */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Debug; + }; + 4A9504CDFFE6A4B311CA0CBA /* Release */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Release; + }; +/* End PBXBuildStyle section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; path = "«PROJECTNAME»_Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "«PROJECTNAME».app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "«PROJECTNAMEASXML»"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* «PROJECTNAME» */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + buildSettings = { + }; + dependencies = ( + ); + name = "«PROJECTNAME»"; + productInstallPath = "$(HOME)/Applications"; + productName = "«PROJECTNAME»"; + productReference = 8D1107320486CEB800E47090 /* «PROJECTNAME».app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLApp" */; + buildSettings = { + }; + buildStyles = ( + 4A9504CCFFE6A4B311CA0CBA /* Debug */, + 4A9504CDFFE6A4B311CA0CBA /* Release */, + ); + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */; + projectDirPath = ""; + targets = ( + 8D1107260486CEB800E47090 /* «PROJECTNAME» */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp_Prefix.pch b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp_Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLApp_Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.h b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.m b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeTiger/SDL Application/main.c b/Xcode/TemplatesForXcodeTiger/SDL Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/InfoPlist.strings new file mode 100755 index 0000000000000000000000000000000000000000..e612457676d964a8021d20ec90290d5c6c3d88c1 GIT binary patch literal 588 zcmb`^&q@Mu6vgq++Nb#8Qo?E-ElkXe8e^28c2kajNM}UHz+TBm@ZBnyA}S0bTHkZ; z`JQv1U+k+1F68bdrY4@G27*Vag{6sHW+})G1s$28T;06XFBO6ZsdcHU*;i4~bn3)P zW?(86Nz9~zV?ou%l~~ugmZrW)!=;w3s-qqIJ!83r!u1!jp2EUJX7r2O-*W{A>JESK zY)cg%iT}rGPtcT`TbJA; + + + + IBDocumentLocation + 62 117 356 240 0 0 1152 848 + IBEditorPositions + + 29 + 62 362 195 44 0 0 1152 848 + + IBFramework Version + 291.0 + IBOpenObjects + + 29 + + IBSystem Version + 6L60 + + diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/English.lproj/SDLMain.nib/objects.nib new file mode 100644 index 0000000000000000000000000000000000000000..637801528a03f85f28a290e5ffde3716217cd1e8 GIT binary patch literal 2590 zcmai0O=ufO6rM?xSg~ctZJL&nn5xhc(t^P$rKvAnS*{yFy-u@-9?e>s*qf|&)zxm? z%>4}t`N+du*aWAMQk3{69SZl%W_O3KXYFEO%jt2ghP z?|W~)nWxBrdpU&nYjxn?M~{hj=`^lL{%+}0KX8XB)zrS@QYrWMOS09p*N7|Ev0+VRM~Qsk?Yr6o|x7Ri;`L; zBKYey@ZF30$WY#!%OcB5q=ogy<*`)dvD9U^B2$Kmc9gy(^CVHZnL=un1A?U?VNn$= z#y`=s(iza|RbdD4@=Oj{aZSI3G7={&K!O0;yF>TxdZ_1+*tsJpzx%GDeTUnKctRRd zsL^`is873^cJOn<%Gis$x2=^#Y85E@upTyU+OUkQaV2bAwkMysF|(=`66Hg4bSa3O zL1u1u{xGG*z7?{I`!AuQ+K+m&`&629U{=+H#X|ZLyIW<1$#+4U487;m5?g7o#)Ia< zpsG#TmOHIm`aE*v^6e^HtFzSxyHjQ4TEUk>BGNlAy0v4wKS-^zUv%xyP*Pm2IrEdsTL;%BuI-{W^QxV2>JXdy746u+2JK zU+dI1Agz85rIF?CkkBcSl%LORozy?F;{K$GbSEx5->VF9h_BA7T1Yi%r@bt)+?H7y z>_NQ}VyvMrHtin6ETffIg+w+zA7Nf0zg92Mg()|s8i1%w<>HStj- zFa>CV)GC7_>!_-!#$3|2T*o$(wq>ETYdaXM$+;aag|U~4WWS;)OQP%%+sPnj%CRk1 zb9F1DI~h3z&*~O3$HjH(yLqQ1nz&$OkenD@V>;i=xGgdch>T|7u7r4&2qjE&2ZWGU zq}&%T>jGcJ@B@Ae!?$?@!_)jt3_s>; z7#`=3Fno_c#_)Z + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.«PROJECTNAMEASXML» + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + + diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLApp_Prefix.pch b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLApp_Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLApp_Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..1dcbea207 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application with Cocoa menus."; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/project.pbxproj new file mode 100644 index 000000000..58596625b --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLCocoaApp.xcodeproj/project.pbxproj @@ -0,0 +1,336 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */ = {isa = PBXBuildFile; fileRef = 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildStyle section */ + 4A9504CCFFE6A4B311CA0CBA /* Debug */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Debug; + }; + 4A9504CDFFE6A4B311CA0CBA /* Release */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Release; + }; +/* End PBXBuildStyle section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3AF009D08F1000EBEB88 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/SDLMain.nib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; path = "«PROJECTNAME»_Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "«PROJECTNAME».app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "«PROJECTNAMEASXML»"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* «PROJECTNAME» */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + buildSettings = { + }; + dependencies = ( + ); + name = "«PROJECTNAME»"; + productInstallPath = "$(HOME)/Applications"; + productName = "«PROJECTNAME»"; + productReference = 8D1107320486CEB800E47090 /* «PROJECTNAME».app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLCocoaApp" */; + buildSettings = { + }; + buildStyles = ( + 4A9504CCFFE6A4B311CA0CBA /* Debug */, + 4A9504CDFFE6A4B311CA0CBA /* Release */, + ); + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */; + projectDirPath = ""; + targets = ( + 8D1107260486CEB800E47090 /* «PROJECTNAME» */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 002F3AF109D08F1000EBEB88 /* SDLMain.nib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 002F3AEF09D08F1000EBEB88 /* SDLMain.nib */ = { + isa = PBXVariantGroup; + children = ( + 002F3AF009D08F1000EBEB88 /* English */, + ); + name = SDLMain.nib; + sourceTree = ""; + }; + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLCocoaApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.h b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.m b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/main.c b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/main.c new file mode 100644 index 000000000..7115de989 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL Cocoa Application/main.c @@ -0,0 +1,65 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +int main(int argc, char *argv[]) +{ + Uint32 initflags = SDL_INIT_VIDEO; /* See documentation for details */ + SDL_Surface *screen; + Uint8 video_bpp = 0; + Uint32 videoflags = SDL_SWSURFACE; + int done; + SDL_Event event; + + /* Initialize the SDL library */ + if ( SDL_Init(initflags) < 0 ) { + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + /* Set 640x480 video mode */ + screen=SDL_SetVideoMode(640,480, video_bpp, videoflags); + if (screen == NULL) { + fprintf(stderr, "Couldn't set 640x480x%d video mode: %s\n", + video_bpp, SDL_GetError()); + SDL_Quit(); + exit(2); + } + + done = 0; + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent(&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + } + + /* Clean up the SDL library */ + SDL_Quit(); + return(0); +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/English.lproj/InfoPlist.strings b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/English.lproj/InfoPlist.strings new file mode 100755 index 0000000000000000000000000000000000000000..e612457676d964a8021d20ec90290d5c6c3d88c1 GIT binary patch literal 588 zcmb`^&q@Mu6vgq++Nb#8Qo?E-ElkXe8e^28c2kajNM}UHz+TBm@ZBnyA}S0bTHkZ; z`JQv1U+k+1F68bdrY4@G27*Vag{6sHW+})G1s$28T;06XFBO6ZsdcHU*;i4~bn3)P zW?(86Nz9~zV?ou%l~~ugmZrW)!=;w3s-qqIJ!83r!u1!jp2EUJX7r2O-*W{A>JESK zY)cg%iT}rGPtcT`TbJA; + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + + CFBundleIdentifier + com.yourcompany.«PROJECTNAMEASXML» + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleSignature + ???? + CFBundleVersion + 1.0 + NSMainNibFile + SDLMain + NSPrincipalClass + NSApplication + + diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLApp_Prefix.pch b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLApp_Prefix.pch new file mode 100644 index 000000000..00095074a --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLApp_Prefix.pch @@ -0,0 +1,9 @@ +// +// Prefix header for all source files of the 'ÇPROJECTNAMEÈ' target in the 'ÇPROJECTNAMEÈ' project +// + +#include "SDL.h" + +#ifdef __OBJC__ + #import +#endif diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.h b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.h new file mode 100644 index 000000000..c56d90cbe --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.h @@ -0,0 +1,16 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#ifndef _SDLMain_h_ +#define _SDLMain_h_ + +#import + +@interface SDLMain : NSObject +@end + +#endif /* _SDLMain_h_ */ diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.m b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.m new file mode 100644 index 000000000..b065a2009 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLMain.m @@ -0,0 +1,383 @@ +/* SDLMain.m - main entry point for our Cocoa-ized SDL app + Initial Version: Darrell Walisser + Non-NIB-Code & other changes: Max Horn + + Feel free to customize this file to suit your needs +*/ + +#include "SDL.h" +#include "SDLMain.h" +#include /* for MAXPATHLEN */ +#include + +/* For some reaon, Apple removed setAppleMenu from the headers in 10.4, + but the method still is there and works. To avoid warnings, we declare + it ourselves here. */ +@interface NSApplication(SDL_Missing_Methods) +- (void)setAppleMenu:(NSMenu *)menu; +@end + +/* Use this flag to determine whether we use SDLMain.nib or not */ +#define SDL_USE_NIB_FILE 0 + +/* Use this flag to determine whether we use CPS (docking) or not */ +#define SDL_USE_CPS 1 +#ifdef SDL_USE_CPS +/* Portions of CPS.h */ +typedef struct CPSProcessSerNum +{ + UInt32 lo; + UInt32 hi; +} CPSProcessSerNum; + +extern OSErr CPSGetCurrentProcess( CPSProcessSerNum *psn); +extern OSErr CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5); +extern OSErr CPSSetFrontProcess( CPSProcessSerNum *psn); + +#endif /* SDL_USE_CPS */ + +static int gArgc; +static char **gArgv; +static BOOL gFinderLaunch; +static BOOL gCalledAppMainline = FALSE; + +static NSString *getApplicationName(void) +{ + const NSDictionary *dict; + NSString *appName = 0; + + /* Determine the application name */ + dict = (const NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle()); + if (dict) + appName = [dict objectForKey: @"CFBundleName"]; + + if (![appName length]) + appName = [[NSProcessInfo processInfo] processName]; + + return appName; +} + +#if SDL_USE_NIB_FILE +/* A helper category for NSString */ +@interface NSString (ReplaceSubString) +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString; +@end +#endif + +@interface SDLApplication : NSApplication +@end + +@implementation SDLApplication +/* Invoked from the Quit menu item */ +- (void)terminate:(id)sender +{ + /* Post a SDL_QUIT event */ + SDL_Event event; + event.type = SDL_QUIT; + SDL_PushEvent(&event); +} +@end + +/* The main class of the application, the application's delegate */ +@implementation SDLMain + +/* Set the working directory to the .app's parent directory */ +- (void) setupWorkingDirectory:(BOOL)shouldChdir +{ + if (shouldChdir) + { + char parentdir[MAXPATHLEN]; + CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle()); + CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url); + if (CFURLGetFileSystemRepresentation(url2, 1, (UInt8 *)parentdir, MAXPATHLEN)) { + chdir(parentdir); /* chdir to the binary app's parent */ + } + CFRelease(url); + CFRelease(url2); + } +} + +#if SDL_USE_NIB_FILE + +/* Fix menu to contain the real app name instead of "SDL App" */ +- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName +{ + NSRange aRange; + NSEnumerator *enumerator; + NSMenuItem *menuItem; + + aRange = [[aMenu title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]]; + + enumerator = [[aMenu itemArray] objectEnumerator]; + while ((menuItem = [enumerator nextObject])) + { + aRange = [[menuItem title] rangeOfString:@"SDL App"]; + if (aRange.length != 0) + [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]]; + if ([menuItem hasSubmenu]) + [self fixMenu:[menuItem submenu] withAppName:appName]; + } + [ aMenu sizeToFit ]; +} + +#else + +static void setApplicationMenu(void) +{ + /* warning: this code is very odd */ + NSMenu *appleMenu; + NSMenuItem *menuItem; + NSString *title; + NSString *appName; + + appName = getApplicationName(); + appleMenu = [[NSMenu alloc] initWithTitle:@""]; + + /* Add menu items */ + title = [@"About " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Hide " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"]; + + menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; + [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)]; + + [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""]; + + [appleMenu addItem:[NSMenuItem separatorItem]]; + + title = [@"Quit " stringByAppendingString:appName]; + [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"]; + + + /* Put menu into the menubar */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""]; + [menuItem setSubmenu:appleMenu]; + [[NSApp mainMenu] addItem:menuItem]; + + /* Tell the application object that this is now the application menu */ + [NSApp setAppleMenu:appleMenu]; + + /* Finally give up our references to the objects */ + [appleMenu release]; + [menuItem release]; +} + +/* Create a window menu */ +static void setupWindowMenu(void) +{ + NSMenu *windowMenu; + NSMenuItem *windowMenuItem; + NSMenuItem *menuItem; + + windowMenu = [[NSMenu alloc] initWithTitle:@"Window"]; + + /* "Minimize" item */ + menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"]; + [windowMenu addItem:menuItem]; + [menuItem release]; + + /* Put menu into the menubar */ + windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""]; + [windowMenuItem setSubmenu:windowMenu]; + [[NSApp mainMenu] addItem:windowMenuItem]; + + /* Tell the application object that this is now the window menu */ + [NSApp setWindowsMenu:windowMenu]; + + /* Finally give up our references to the objects */ + [windowMenu release]; + [windowMenuItem release]; +} + +/* Replacement for NSApplicationMain */ +static void CustomApplicationMain (int argc, char **argv) +{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + SDLMain *sdlMain; + + /* Ensure the application object is initialised */ + [SDLApplication sharedApplication]; + +#ifdef SDL_USE_CPS + { + CPSProcessSerNum PSN; + /* Tell the dock about us */ + if (!CPSGetCurrentProcess(&PSN)) + if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103)) + if (!CPSSetFrontProcess(&PSN)) + [SDLApplication sharedApplication]; + } +#endif /* SDL_USE_CPS */ + + /* Set up the menubar */ + [NSApp setMainMenu:[[NSMenu alloc] init]]; + setApplicationMenu(); + setupWindowMenu(); + + /* Create SDLMain and make it the app delegate */ + sdlMain = [[SDLMain alloc] init]; + [NSApp setDelegate:sdlMain]; + + /* Start the main event loop */ + [NSApp run]; + + [sdlMain release]; + [pool release]; +} + +#endif + + +/* + * Catch document open requests...this lets us notice files when the app + * was launched by double-clicking a document, or when a document was + * dragged/dropped on the app's icon. You need to have a + * CFBundleDocumentsType section in your Info.plist to get this message, + * apparently. + * + * Files are added to gArgv, so to the app, they'll look like command line + * arguments. Previously, apps launched from the finder had nothing but + * an argv[0]. + * + * This message may be received multiple times to open several docs on launch. + * + * This message is ignored once the app's mainline has been called. + */ +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename +{ + const char *temparg; + size_t arglen; + char *arg; + char **newargv; + + if (!gFinderLaunch) /* MacOS is passing command line args. */ + return FALSE; + + if (gCalledAppMainline) /* app has started, ignore this document. */ + return FALSE; + + temparg = [filename UTF8String]; + arglen = SDL_strlen(temparg) + 1; + arg = (char *) SDL_malloc(arglen); + if (arg == NULL) + return FALSE; + + newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2)); + if (newargv == NULL) + { + SDL_free(arg); + return FALSE; + } + gArgv = newargv; + + SDL_strlcpy(arg, temparg, arglen); + gArgv[gArgc++] = arg; + gArgv[gArgc] = NULL; + return TRUE; +} + + +/* Called when the internal event loop has just started running */ +- (void) applicationDidFinishLaunching: (NSNotification *) note +{ + int status; + + /* Set the working directory to the .app's parent directory */ + [self setupWorkingDirectory:gFinderLaunch]; + +#if SDL_USE_NIB_FILE + /* Set the main menu to contain the real app name instead of "SDL App" */ + [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()]; +#endif + + /* Hand off to main application code */ + gCalledAppMainline = TRUE; + status = SDL_main (gArgc, gArgv); + + /* We're done, thank you for playing */ + exit(status); +} +@end + + +@implementation NSString (ReplaceSubString) + +- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString +{ + unsigned int bufferSize; + unsigned int selfLen = [self length]; + unsigned int aStringLen = [aString length]; + unichar *buffer; + NSRange localRange; + NSString *result; + + bufferSize = selfLen + aStringLen - aRange.length; + buffer = (unichar *)NSAllocateMemoryPages(bufferSize*sizeof(unichar)); + + /* Get first part into buffer */ + localRange.location = 0; + localRange.length = aRange.location; + [self getCharacters:buffer range:localRange]; + + /* Get middle part into buffer */ + localRange.location = 0; + localRange.length = aStringLen; + [aString getCharacters:(buffer+aRange.location) range:localRange]; + + /* Get last part into buffer */ + localRange.location = aRange.location + aRange.length; + localRange.length = selfLen - localRange.location; + [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange]; + + /* Build output string */ + result = [NSString stringWithCharacters:buffer length:bufferSize]; + + NSDeallocateMemoryPages(buffer, bufferSize); + + return result; +} + +@end + + + +#ifdef main +# undef main +#endif + + +/* Main entry point to executable - should *not* be SDL_main! */ +int main (int argc, char **argv) +{ + /* Copy the arguments into a global variable */ + /* This is passed if we are launched by double-clicking */ + if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) { + gArgv = (char **) SDL_malloc(sizeof (char *) * 2); + gArgv[0] = argv[0]; + gArgv[1] = NULL; + gArgc = 1; + gFinderLaunch = YES; + } else { + int i; + gArgc = argc; + gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1)); + for (i = 0; i <= argc; i++) + gArgv[i] = argv[i]; + gFinderLaunch = NO; + } + +#if SDL_USE_NIB_FILE + [SDLApplication poseAsClass:[NSApplication class]]; + NSApplicationMain (argc, argv); +#else + CustomApplicationMain (argc, argv); +#endif + return 0; +} + diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/TemplateInfo.plist b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/TemplateInfo.plist new file mode 100644 index 000000000..ba87745fc --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/TemplateInfo.plist @@ -0,0 +1,12 @@ +{ + FilesToRename = { + "SDLApp_Prefix.pch" = "ÇPROJECTNAMEÈ_Prefix.pch"; + }; + FilesToMacroExpand = ( + "ÇPROJECTNAMEÈ_Prefix.pch", + "Info.plist", + "English.lproj/InfoPlist.strings", + "main.c", + ); + Description = "This project builds an SDL-based application that uses OpenGL."; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/project.pbxproj b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/project.pbxproj new file mode 100644 index 000000000..6995ccbf7 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/SDLOpenGLApp.xcodeproj/project.pbxproj @@ -0,0 +1,362 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 42; + objects = { + +/* Begin PBXBuildFile section */ + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; }; + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; }; + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A3E09D088BA00EBEB88 /* main.c */; }; + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF409D0938900EBEB88 /* atlantis.c */; }; + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF609D0938900EBEB88 /* dolphin.c */; }; + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF709D0938900EBEB88 /* shark.c */; }; + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF809D0938900EBEB88 /* swim.c */; }; + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */ = {isa = PBXBuildFile; fileRef = 002F3BF909D0938900EBEB88 /* whale.c */; }; + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C0009D093BD00EBEB88 /* OpenGL.framework */; }; + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F3C6009D0951E00EBEB88 /* GLUT.framework */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildStyle section */ + 4A9504CCFFE6A4B311CA0CBA /* Debug */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Debug; + }; + 4A9504CDFFE6A4B311CA0CBA /* Release */ = { + isa = PBXBuildStyle; + buildSettings = { + }; + name = Release; + }; +/* End PBXBuildStyle section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */, + ); + name = "Copy Frameworks into .app bundle"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = ""; }; + 002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; }; + 002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; }; + 002F3A3E09D088BA00EBEB88 /* main.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = SOURCE_ROOT; }; + 002F3BF409D0938900EBEB88 /* atlantis.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = atlantis.c; path = atlantis/atlantis.c; sourceTree = SOURCE_ROOT; }; + 002F3BF509D0938900EBEB88 /* atlantis.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = atlantis.h; path = atlantis/atlantis.h; sourceTree = SOURCE_ROOT; }; + 002F3BF609D0938900EBEB88 /* dolphin.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = dolphin.c; path = atlantis/dolphin.c; sourceTree = SOURCE_ROOT; }; + 002F3BF709D0938900EBEB88 /* shark.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = shark.c; path = atlantis/shark.c; sourceTree = SOURCE_ROOT; }; + 002F3BF809D0938900EBEB88 /* swim.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = swim.c; path = atlantis/swim.c; sourceTree = SOURCE_ROOT; }; + 002F3BF909D0938900EBEB88 /* whale.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = whale.c; path = atlantis/whale.c; sourceTree = SOURCE_ROOT; }; + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = ""; }; + 002F3C6009D0951E00EBEB88 /* GLUT.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = GLUT.framework; path = ../../../../../../../../../../System/Library/Frameworks/GLUT.framework; sourceTree = SOURCE_ROOT; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file; path = "«PROJECTNAME»_Prefix.pch"; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "«PROJECTNAME».app"; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */, + 002F3C6109D0951E00EBEB88 /* GLUT.framework in Frameworks */, + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 002F3C0109D093BD00EBEB88 /* OpenGL.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 002F3BF309D0937800EBEB88 /* atlantis */ = { + isa = PBXGroup; + children = ( + 002F3BF409D0938900EBEB88 /* atlantis.c */, + 002F3BF509D0938900EBEB88 /* atlantis.h */, + 002F3BF609D0938900EBEB88 /* dolphin.c */, + 002F3BF709D0938900EBEB88 /* shark.c */, + 002F3BF809D0938900EBEB88 /* swim.c */, + 002F3BF909D0938900EBEB88 /* whale.c */, + ); + name = atlantis; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 002F3A2B09D0888800EBEB88 /* SDLMain.h */, + 002F3A2C09D0888800EBEB88 /* SDLMain.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 002F39F909D0881F00EBEB88 /* SDL.framework */, + 002F3C6009D0951E00EBEB88 /* GLUT.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 002F3C0009D093BD00EBEB88 /* OpenGL.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* «PROJECTNAME».app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */ = { + isa = PBXGroup; + children = ( + 080E96DDFE201D6D7F000001 /* Classes */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = "«PROJECTNAMEASXML»"; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 002F3BF309D0937800EBEB88 /* atlantis */, + 32CA4F630368D1EE00C91783 /* «PROJECTNAME»_Prefix.pch */, + 002F3A3E09D088BA00EBEB88 /* main.c */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 8D1107310486CEB800E47090 /* Info.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* «PROJECTNAME» */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */; + buildPhases = ( + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */, + ); + buildRules = ( + ); + buildSettings = { + }; + dependencies = ( + ); + name = "«PROJECTNAME»"; + productInstallPath = "$(HOME)/Applications"; + productName = "«PROJECTNAME»"; + productReference = 8D1107320486CEB800E47090 /* «PROJECTNAME».app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLOpenGLApp" */; + buildSettings = { + }; + buildStyles = ( + 4A9504CCFFE6A4B311CA0CBA /* Debug */, + 4A9504CDFFE6A4B311CA0CBA /* Release */, + ); + hasScannedForEncodings = 1; + mainGroup = 29B97314FDCFA39411CA2CEA /* «PROJECTNAMEASXML» */; + projectDirPath = ""; + targets = ( + 8D1107260486CEB800E47090 /* «PROJECTNAME» */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 002F3A2E09D0888800EBEB88 /* SDLMain.m in Sources */, + 002F3A3F09D088BA00EBEB88 /* main.c in Sources */, + 002F3BFA09D0938900EBEB88 /* atlantis.c in Sources */, + 002F3BFC09D0938900EBEB88 /* dolphin.c in Sources */, + 002F3BFD09D0938900EBEB88 /* shark.c in Sources */, + 002F3BFE09D0938900EBEB88 /* swim.c in Sources */, + 002F3BFF09D0938900EBEB88 /* whale.c in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = ( + ppc, + i386, + ); + GCC_GENERATE_DEBUGGING_SYMBOLS = NO; + GCC_MODEL_TUNING = G5; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "«PROJECTNAME»"; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + FRAMEWORK_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks", + /Library/Frameworks, + "$(FRAMEWORK_SEARCH_PATHS)", + ); + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(HOME)/Library/Frameworks/SDL.framework/Headers", + /Library/Frameworks/SDL.framework/Headers, + "$(HEADER_SEARCH_PATHS)", + ); + PREBINDING = NO; + SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "«PROJECTNAME»" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "SDLOpenGLApp" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.c new file mode 100644 index 000000000..4efdf6ce8 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.c @@ -0,0 +1,459 @@ + +/* Copyright (c) Mark J. Kilgard, 1994. */ + +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include +#include +#include +#include +#include "atlantis.h" + +fishRec sharks[NUM_SHARKS]; +fishRec momWhale; +fishRec babyWhale; +fishRec dolph; + +GLboolean Timing = GL_TRUE; + +int w_win = 640; +int h_win = 480; +GLint count = 0; +GLenum StrMode = GL_VENDOR; + +GLboolean moving; + +static double mtime(void) +{ + struct timeval tk_time; + struct timezone tz; + + gettimeofday(&tk_time, &tz); + + return 4294.967296 * tk_time.tv_sec + 0.000001 * tk_time.tv_usec; +} + +static double filter(double in, double *save) +{ + static double k1 = 0.9; + static double k2 = 0.05; + + save[3] = in; + save[1] = save[0]*k1 + k2*(save[3] + save[2]); + + save[0]=save[1]; + save[2]=save[3]; + + return(save[1]); +} + +void DrawStr(const char *str) +{ + GLint i = 0; + + if(!str) return; + + while(str[i]) + { + glutBitmapCharacter(GLUT_BITMAP_HELVETICA_12, str[i]); + i++; + } +} + +void +InitFishs(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + sharks[i].x = 70000.0 + rand() % 6000; + sharks[i].y = rand() % 6000; + sharks[i].z = rand() % 6000; + sharks[i].psi = rand() % 360 - 180.0; + sharks[i].v = 1.0; + } + + dolph.x = 30000.0; + dolph.y = 0.0; + dolph.z = 6000.0; + dolph.psi = 90.0; + dolph.theta = 0.0; + dolph.v = 3.0; + + momWhale.x = 70000.0; + momWhale.y = 0.0; + momWhale.z = 0.0; + momWhale.psi = 90.0; + momWhale.theta = 0.0; + momWhale.v = 3.0; + + babyWhale.x = 60000.0; + babyWhale.y = -2000.0; + babyWhale.z = -2000.0; + babyWhale.psi = 90.0; + babyWhale.theta = 0.0; + babyWhale.v = 3.0; +} + +void +Atlantis_Init(void) +{ + static float ambient[] = {0.2, 0.2, 0.2, 1.0}; + static float diffuse[] = {1.0, 1.0, 1.0, 1.0}; + static float position[] = {0.0, 1.0, 0.0, 0.0}; + static float mat_shininess[] = {90.0}; + static float mat_specular[] = {0.8, 0.8, 0.8, 1.0}; + static float mat_diffuse[] = {0.46, 0.66, 0.795, 1.0}; + static float mat_ambient[] = {0.3, 0.4, 0.5, 1.0}; + static float lmodel_ambient[] = {0.4, 0.4, 0.4, 1.0}; + static float lmodel_localviewer[] = {0.0}; + //GLfloat map1[4] = {0.0, 0.0, 0.0, 0.0}; + //GLfloat map2[4] = {0.0, 0.0, 0.0, 0.0}; + static float fog_color[] = {0.0, 0.5, 0.9, 1.0}; + + glFrontFace(GL_CCW); + + glDepthFunc(GL_LESS); + glEnable(GL_DEPTH_TEST); + + glLightfv(GL_LIGHT0, GL_AMBIENT, ambient); + glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuse); + glLightfv(GL_LIGHT0, GL_POSITION, position); + glLightModelfv(GL_LIGHT_MODEL_AMBIENT, lmodel_ambient); + glLightModelfv(GL_LIGHT_MODEL_LOCAL_VIEWER, lmodel_localviewer); + glEnable(GL_LIGHTING); + glEnable(GL_LIGHT0); + + glMaterialfv(GL_FRONT_AND_BACK, GL_SHININESS, mat_shininess); + glMaterialfv(GL_FRONT_AND_BACK, GL_SPECULAR, mat_specular); + glMaterialfv(GL_FRONT_AND_BACK, GL_DIFFUSE, mat_diffuse); + glMaterialfv(GL_FRONT_AND_BACK, GL_AMBIENT, mat_ambient); + + InitFishs(); + + glEnable(GL_FOG); + glFogi(GL_FOG_MODE, GL_EXP); + glFogf(GL_FOG_DENSITY, 0.0000025); + glFogfv(GL_FOG_COLOR, fog_color); + + glClearColor(0.0, 0.5, 0.9, 1.0); +} + +void +Atlantis_Reshape(int width, int height) +{ + w_win = width; + h_win = height; + + glViewport(0, 0, width, height); + + glMatrixMode(GL_PROJECTION); + glLoadIdentity(); + gluPerspective(60.0, (GLfloat) width / (GLfloat) height, 20000.0, 300000.0); + glMatrixMode(GL_MODELVIEW); +} + +void +Atlantis_Animate(void) +{ + int i; + + for (i = 0; i < NUM_SHARKS; i++) { + SharkPilot(&sharks[i]); + SharkMiss(i); + } + WhalePilot(&dolph); + dolph.phi++; + //glutPostRedisplay(); + WhalePilot(&momWhale); + momWhale.phi++; + WhalePilot(&babyWhale); + babyWhale.phi++; +} + +void +Atlantis_Key(unsigned char key, int x, int y) +{ + switch (key) { + case 't': + Timing = !Timing; + break; + case ' ': + switch(StrMode) + { + case GL_EXTENSIONS: + StrMode = GL_VENDOR; + break; + case GL_VENDOR: + StrMode = GL_RENDERER; + break; + case GL_RENDERER: + StrMode = GL_VERSION; + break; + case GL_VERSION: + StrMode = GL_EXTENSIONS; + break; + } + break; + case 27: /* Esc will quit */ + exit(1); + break; + case 's': /* "s" start animation */ + moving = GL_TRUE; + //glutIdleFunc(Animate); + break; + case 'a': /* "a" stop animation */ + moving = GL_FALSE; + //glutIdleFunc(NULL); + break; + case '.': /* "." will advance frame */ + if (!moving) { + Atlantis_Animate(); + } + } +} +/* +void Display(void) +{ + static float P123[3] = {-448.94, -203.14, 9499.60}; + static float P124[3] = {-442.64, -185.20, 9528.07}; + static float P125[3] = {-441.07, -148.05, 9528.07}; + static float P126[3] = {-443.43, -128.84, 9499.60}; + static float P127[3] = {-456.87, -146.78, 9466.67}; + static float P128[3] = {-453.68, -183.93, 9466.67}; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glutSwapBuffers(); +} +*/ + +void +Atlantis_Display(void) +{ + int i; + static double th[4] = {0.0, 0.0, 0.0, 0.0}; + static double t1 = 0.0, t2 = 0.0, t; + char num_str[128]; + + t1 = t2; + + glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + + for (i = 0; i < NUM_SHARKS; i++) { + glPushMatrix(); + FishTransform(&sharks[i]); + DrawShark(&sharks[i]); + glPopMatrix(); + } + + glPushMatrix(); + FishTransform(&dolph); + DrawDolphin(&dolph); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&momWhale); + DrawWhale(&momWhale); + glPopMatrix(); + + glPushMatrix(); + FishTransform(&babyWhale); + glScalef(0.45, 0.45, 0.3); + DrawWhale(&babyWhale); + glPopMatrix(); + + if(Timing) + { + t2 = mtime(); + t = t2 - t1; + if(t > 0.0001) t = 1.0 / t; + + glDisable(GL_LIGHTING); + //glDisable(GL_DEPTH_TEST); + + glColor3f(1.0, 0.0, 0.0); + + glMatrixMode (GL_PROJECTION); + glPushMatrix(); + glLoadIdentity(); + glOrtho(0, w_win, 0, h_win, -10.0, 10.0); + + glRasterPos2f(5.0, 5.0); + + switch(StrMode) + { + case GL_VENDOR: + sprintf(num_str, "%0.2f Hz, %dx%d, VENDOR: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VENDOR)); + break; + case GL_RENDERER: + sprintf(num_str, "%0.2f Hz, %dx%d, RENDERER: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_RENDERER)); + break; + case GL_VERSION: + sprintf(num_str, "%0.2f Hz, %dx%d, VERSION: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_VERSION)); + break; + case GL_EXTENSIONS: + sprintf(num_str, "%0.2f Hz, %dx%d, EXTENSIONS: ", filter(t, th), w_win, h_win); + DrawStr(num_str); + DrawStr(glGetString(GL_EXTENSIONS)); + break; + } + + glPopMatrix(); + glMatrixMode(GL_MODELVIEW); + + glEnable(GL_LIGHTING); + //glEnable(GL_DEPTH_TEST); + } + + count++; + + glutSwapBuffers(); +} + +/* +void +Visible(int state) +{ + if (state == GLUT_VISIBLE) { + if (moving) + glutIdleFunc(Animate); + } else { + if (moving) + glutIdleFunc(NULL); + } +} + + +void +timingSelect(int value) +{ + switch(value) + { + case 1: + StrMode = GL_VENDOR; + break; + case 2: + StrMode = GL_RENDERER; + break; + case 3: + StrMode = GL_VERSION; + break; + case 4: + StrMode = GL_EXTENSIONS; + break; + } +} + +void +menuSelect(int value) +{ + switch (value) { + case 1: + moving = GL_TRUE; + glutIdleFunc(Animate); + break; + case 2: + moving = GL_FALSE; + glutIdleFunc(NULL); + break; + case 4: + exit(0); + break; + } +} + +int +main(int argc, char **argv) +{ + GLboolean fullscreen = GL_FALSE; + GLint time_menu; + + srand(0); + + glutInit(&argc, argv); + if (argc > 1 && !strcmp(argv[1], "-w")) + fullscreen = GL_FALSE; + + //glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); + glutInitDisplayString("rgba double depth=24"); + if (fullscreen) { + glutGameModeString("1024x768:32"); + glutEnterGameMode(); + } else { + glutInitWindowSize(320, 240); + glutCreateWindow("Atlantis Timing"); + } + Init(); + glutDisplayFunc(Display); + glutReshapeFunc(Reshape); + glutKeyboardFunc(Key); + moving = GL_TRUE; +glutIdleFunc(Animate); + glutVisibilityFunc(Visible); + + time_menu = glutCreateMenu(timingSelect); + glutAddMenuEntry("GL_VENDOR", 1); + glutAddMenuEntry("GL_RENDERER", 2); + glutAddMenuEntry("GL_VERSION", 3); + glutAddMenuEntry("GL_EXTENSIONS", 4); + + glutCreateMenu(menuSelect); + glutAddMenuEntry("Start motion", 1); + glutAddMenuEntry("Stop motion", 2); + glutAddSubMenu("Timing Mode", time_menu); + glutAddMenuEntry("Quit", 4); + + //glutAttachMenu(GLUT_RIGHT_BUTTON); + glutAttachMenu(GLUT_RIGHT_BUTTON); + glutMainLoop(); + return 0; // ANSI C requires main to return int. +} +*/ \ No newline at end of file diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.h b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.h new file mode 100644 index 000000000..6ccf2d5f0 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/atlantis.h @@ -0,0 +1,65 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#define RAD 57.295 +#define RRAD 0.01745 + +#define NUM_SHARKS 4 +#define SHARKSIZE 6000 +#define SHARKSPEED 100.0 + +#define WHALESPEED 250.0 + +typedef struct _fishRec { + float x, y, z, phi, theta, psi, v; + float xt, yt, zt; + float htail, vtail; + float dtheta; + int spurt, attack; +} fishRec; + +extern fishRec sharks[NUM_SHARKS]; +extern fishRec momWhale; +extern fishRec babyWhale; +extern fishRec dolph; + +extern void FishTransform(fishRec *); +extern void WhalePilot(fishRec *); +extern void SharkPilot(fishRec *); +extern void SharkMiss(int); +extern void DrawWhale(fishRec *); +extern void DrawShark(fishRec *); +extern void DrawDolphin(fishRec *); diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/dolphin.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/dolphin.c new file mode 100644 index 000000000..9fba3ba98 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/dolphin.c @@ -0,0 +1,1934 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {-0.005937 ,-0.101998 ,-0.994767}; +static float N002[3] = {0.936780 ,-0.200803 ,0.286569}; +static float N003[3] = {-0.233062 ,0.972058 ,0.028007}; +static float N005[3] = {0.898117 ,0.360171 ,0.252315}; +static float N006[3] = {-0.915437 ,0.348456 ,0.201378}; +static float N007[3] = {0.602263 ,-0.777527 ,0.180920}; +static float N008[3] = {-0.906912 ,-0.412015 ,0.088061}; +static float N012[3] = {0.884408 ,-0.429417 ,-0.182821}; +static float N013[3] = {0.921121 ,0.311084 ,-0.234016}; +static float N014[3] = {0.382635 ,0.877882 ,-0.287948}; +static float N015[3] = {-0.380046 ,0.888166 ,-0.258316}; +static float N016[3] = {-0.891515 ,0.392238 ,-0.226607}; +static float N017[3] = {-0.901419 ,-0.382002 ,-0.203763}; +static float N018[3] = {-0.367225 ,-0.911091 ,-0.187243}; +static float N019[3] = {0.339539 ,-0.924846 ,-0.171388}; +static float N020[3] = {0.914706 ,-0.378617 ,-0.141290}; +static float N021[3] = {0.950662 ,0.262713 ,-0.164994}; +static float N022[3] = {0.546359 ,0.801460 ,-0.243218}; +static float N023[3] = {-0.315796 ,0.917068 ,-0.243431}; +static float N024[3] = {-0.825687 ,0.532277 ,-0.186875}; +static float N025[3] = {-0.974763 ,-0.155232 ,-0.160435}; +static float N026[3] = {-0.560596 ,-0.816658 ,-0.137119}; +static float N027[3] = {0.380210 ,-0.910817 ,-0.160786}; +static float N028[3] = {0.923772 ,-0.358322 ,-0.135093}; +static float N029[3] = {0.951202 ,0.275053 ,-0.139859}; +static float N030[3] = {0.686099 ,0.702548 ,-0.188932}; +static float N031[3] = {-0.521865 ,0.826719 ,-0.210220}; +static float N032[3] = {-0.923820 ,0.346739 ,-0.162258}; +static float N033[3] = {-0.902095 ,-0.409995 ,-0.134646}; +static float N034[3] = {-0.509115 ,-0.848498 ,-0.144404}; +static float N035[3] = {0.456469 ,-0.880293 ,-0.129305}; +static float N036[3] = {0.873401 ,-0.475489 ,-0.105266}; +static float N037[3] = {0.970825 ,0.179861 ,-0.158584}; +static float N038[3] = {0.675609 ,0.714187 ,-0.183004}; +static float N039[3] = {-0.523574 ,0.830212 ,-0.191360}; +static float N040[3] = {-0.958895 ,0.230808 ,-0.165071}; +static float N041[3] = {-0.918285 ,-0.376803 ,-0.121542}; +static float N042[3] = {-0.622467 ,-0.774167 ,-0.114888}; +static float N043[3] = {0.404497 ,-0.908807 ,-0.102231}; +static float N044[3] = {0.930538 ,-0.365155 ,-0.027588}; +static float N045[3] = {0.921920 ,0.374157 ,-0.100345}; +static float N046[3] = {0.507346 ,0.860739 ,0.041562}; +static float N047[3] = {-0.394646 ,0.918815 ,-0.005730}; +static float N048[3] = {-0.925411 ,0.373024 ,-0.066837}; +static float N049[3] = {-0.945337 ,-0.322309 ,-0.049551}; +static float N050[3] = {-0.660437 ,-0.750557 ,-0.022072}; +static float N051[3] = {0.488835 ,-0.871950 ,-0.027261}; +static float N052[3] = {0.902599 ,-0.421397 ,0.087969}; +static float N053[3] = {0.938636 ,0.322606 ,0.122020}; +static float N054[3] = {0.484605 ,0.871078 ,0.079878}; +static float N055[3] = {-0.353607 ,0.931559 ,0.084619}; +static float N056[3] = {-0.867759 ,0.478564 ,0.134054}; +static float N057[3] = {-0.951583 ,-0.296030 ,0.082794}; +static float N058[3] = {-0.672355 ,-0.730209 ,0.121384}; +static float N059[3] = {0.528336 ,-0.842452 ,0.105525}; +static float N060[3] = {0.786913 ,-0.564760 ,0.248627}; +static float N062[3] = {0.622098 ,0.765230 ,0.165584}; +static float N063[3] = {-0.631711 ,0.767816 ,0.106773}; +static float N064[3] = {-0.687886 ,0.606351 ,0.398938}; +static float N065[3] = {-0.946327 ,-0.281623 ,0.158598}; +static float N066[3] = {-0.509549 ,-0.860437 ,0.002776}; +static float N067[3] = {0.462594 ,-0.876692 ,0.131977}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N078[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N079[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N080[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N081[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N082[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N083[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N084[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N085[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N086[3] = {-0.571197 ,0.816173 ,0.087152}; +static float N087[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N088[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N089[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N090[3] = {-0.880770 ,0.461448 ,0.106351}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N097[3] = {-0.697296 ,0.702881 ,0.140491}; +static float N098[3] = {0.918864 ,0.340821 ,0.198819}; +static float N099[3] = {-0.932737 ,0.201195 ,0.299202}; +static float N100[3] = {0.029517 ,0.981679 ,0.188244}; +static float N102[3] = {0.813521 ,-0.204936 ,0.544229}; +static float N110[3] = {-0.781480 ,-0.384779 ,0.491155}; +static float N111[3] = {-0.722243 ,0.384927 ,0.574627}; +static float N112[3] = {-0.752278 ,0.502679 ,0.425901}; +static float N113[3] = {0.547257 ,0.367910 ,0.751766}; +static float N114[3] = {0.725949 ,-0.232568 ,0.647233}; +static float N115[3] = {-0.747182 ,-0.660786 ,0.071280}; +static float N116[3] = {0.931519 ,0.200748 ,0.303270}; +static float N117[3] = {-0.828928 ,0.313757 ,0.463071}; +static float N118[3] = {0.902554 ,-0.370967 ,0.218587}; +static float N119[3] = {-0.879257 ,-0.441851 ,0.177973}; +static float N120[3] = {0.642327 ,0.611901 ,0.461512}; +static float N121[3] = {0.964817 ,-0.202322 ,0.167910}; +static float N122[3] = {0.000000 ,1.000000 ,0.000000}; +static float P001[3] = {5.68, -300.95, 1324.70}; +static float P002[3] = {338.69, -219.63, 9677.03}; +static float P003[3] = {12.18, 474.59, 9138.14}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 68.74, 9427.85}; +static float P007[3] = {156.52, -266.72, 10311.68}; +static float P008[3] = {-185.56, -266.51, 10310.47}; +static float P009[3] = {124.39, -261.46, 1942.34}; +static float P010[3] = {-130.05, -261.46, 1946.03}; +static float P011[3] = {141.07, -320.11, 1239.38}; +static float P012[3] = {156.48, -360.12, 2073.41}; +static float P013[3] = {162.00, -175.88, 2064.44}; +static float P014[3] = {88.16, -87.72, 2064.02}; +static float P015[3] = {-65.21, -96.13, 2064.02}; +static float P016[3] = {-156.48, -180.96, 2064.44}; +static float P017[3] = {-162.00, -368.93, 2082.39}; +static float P018[3] = {-88.16, -439.22, 2082.39}; +static float P019[3] = {65.21, -440.32, 2083.39}; +static float P020[3] = {246.87, -356.02, 2576.95}; +static float P021[3] = {253.17, -111.15, 2567.15}; +static float P022[3] = {132.34, 51.41, 2559.84}; +static float P023[3] = {-97.88, 40.44, 2567.15}; +static float P024[3] = {-222.97, -117.49, 2567.15}; +static float P025[3] = {-252.22, -371.53, 2569.92}; +static float P026[3] = {-108.44, -518.19, 2586.75}; +static float P027[3] = {97.88, -524.79, 2586.75}; +static float P028[3] = {370.03, -421.19, 3419.70}; +static float P029[3] = {351.15, -16.98, 3423.17}; +static float P030[3] = {200.66, 248.46, 3430.37}; +static float P031[3] = {-148.42, 235.02, 3417.91}; +static float P032[3] = {-360.21, -30.27, 3416.84}; +static float P033[3] = {-357.90, -414.89, 3407.04}; +static float P034[3] = {-148.88, -631.35, 3409.90}; +static float P035[3] = {156.38, -632.59, 3419.70}; +static float P036[3] = {462.61, -469.21, 4431.51}; +static float P037[3] = {466.60, 102.25, 4434.98}; +static float P038[3] = {243.05, 474.34, 4562.02}; +static float P039[3] = {-191.23, 474.40, 4554.42}; +static float P040[3] = {-476.12, 111.05, 4451.11}; +static float P041[3] = {-473.36, -470.74, 4444.78}; +static float P042[3] = {-266.95, -748.41, 4447.78}; +static float P043[3] = {211.14, -749.91, 4429.73}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 6360.63}; +static float P046[3] = {371.29, 804.51, 6486.26}; +static float P047[3] = {-291.43, 797.22, 6494.28}; +static float P048[3] = {-784.13, 370.75, 6378.01}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float iP001[3] = {5.68, -300.95, 1324.70}; +static float iP009[3] = {124.39, -261.46, 1942.34}; +static float iP010[3] = {-130.05, -261.46, 1946.03}; +static float iP011[3] = {141.07, -320.11, 1239.38}; +static float iP012[3] = {156.48, -360.12, 2073.41}; +static float iP013[3] = {162.00, -175.88, 2064.44}; +static float iP014[3] = {88.16, -87.72, 2064.02}; +static float iP015[3] = {-65.21, -96.13, 2064.02}; +static float iP016[3] = {-156.48, -180.96, 2064.44}; +static float iP017[3] = {-162.00, -368.93, 2082.39}; +static float iP018[3] = {-88.16, -439.22, 2082.39}; +static float iP019[3] = {65.21, -440.32, 2083.39}; +static float iP020[3] = {246.87, -356.02, 2576.95}; +static float iP021[3] = {253.17, -111.15, 2567.15}; +static float iP022[3] = {132.34, 51.41, 2559.84}; +static float iP023[3] = {-97.88, 40.44, 2567.15}; +static float iP024[3] = {-222.97, -117.49, 2567.15}; +static float iP025[3] = {-252.22, -371.53, 2569.92}; +static float iP026[3] = {-108.44, -518.19, 2586.75}; +static float iP027[3] = {97.88, -524.79, 2586.75}; +static float iP028[3] = {370.03, -421.19, 3419.70}; +static float iP029[3] = {351.15, -16.98, 3423.17}; +static float iP030[3] = {200.66, 248.46, 3430.37}; +static float iP031[3] = {-148.42, 235.02, 3417.91}; +static float iP032[3] = {-360.21, -30.27, 3416.84}; +static float iP033[3] = {-357.90, -414.89, 3407.04}; +static float iP034[3] = {-148.88, -631.35, 3409.90}; +static float iP035[3] = {156.38, -632.59, 3419.70}; +static float iP036[3] = {462.61, -469.21, 4431.51}; +static float iP037[3] = {466.60, 102.25, 4434.98}; +static float iP038[3] = {243.05, 474.34, 4562.02}; +static float iP039[3] = {-191.23, 474.40, 4554.42}; +static float iP040[3] = {-476.12, 111.05, 4451.11}; +static float iP041[3] = {-473.36, -470.74, 4444.78}; +static float iP042[3] = {-266.95, -748.41, 4447.78}; +static float iP043[3] = {211.14, -749.91, 4429.73}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 6360.63}; +static float iP046[3] = {371.29, 804.51, 6486.26}; +static float iP047[3] = {-291.43, 797.22, 6494.28}; +static float iP048[3] = {-784.13, 370.75, 6378.01}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -300.15, 7894.03}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {246.22, 558.53, 8460.50}; +static float P055[3] = {-230.41, 559.84, 8473.23}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 338.75, 9450.30}; +static float P063[3] = {-165.71, 341.04, 9462.35}; +static float P064[3] = {-298.11, 110.13, 10180.37}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -491.45, 9348.73}; +static float P068[3] = {-136.29, -319.84, 1228.73}; +static float P069[3] = {1111.17, -314.14, 1314.19}; +static float P070[3] = {-1167.34, -321.61, 1319.45}; +static float P071[3] = {1404.86, -306.66, 1235.45}; +static float P072[3] = {-1409.73, -314.14, 1247.66}; +static float P073[3] = {1254.01, -296.87, 1544.58}; +static float P074[3] = {-1262.09, -291.70, 1504.26}; +static float P075[3] = {965.71, -269.26, 1742.65}; +static float P076[3] = {-900.97, -276.74, 1726.07}; +static float iP068[3] = {-136.29, -319.84, 1228.73}; +static float iP069[3] = {1111.17, -314.14, 1314.19}; +static float iP070[3] = {-1167.34, -321.61, 1319.45}; +static float iP071[3] = {1404.86, -306.66, 1235.45}; +static float iP072[3] = {-1409.73, -314.14, 1247.66}; +static float iP073[3] = {1254.01, -296.87, 1544.58}; +static float iP074[3] = {-1262.09, -291.70, 1504.26}; +static float iP075[3] = {965.71, -269.26, 1742.65}; +static float iP076[3] = {-900.97, -276.74, 1726.07}; +static float P077[3] = {1058.00, -448.81, 8194.66}; +static float P078[3] = {-1016.51, -456.43, 8190.62}; +static float P079[3] = {-1515.96, -676.45, 7754.93}; +static float P080[3] = {1856.75, -830.34, 7296.56}; +static float P081[3] = {1472.16, -497.38, 7399.68}; +static float P082[3] = {-1775.26, -829.51, 7298.46}; +static float P083[3] = {911.09, -252.51, 7510.99}; +static float P084[3] = {-1451.94, -495.62, 7384.30}; +static float P085[3] = {1598.75, -669.26, 7769.90}; +static float P086[3] = {-836.53, -250.08, 7463.25}; +static float P087[3] = {722.87, -158.18, 8006.41}; +static float P088[3] = {-688.86, -162.28, 7993.89}; +static float P089[3] = {-626.92, -185.30, 8364.98}; +static float P090[3] = {647.72, -189.46, 8354.99}; +static float P091[3] = {0.00, 835.01, 5555.62}; +static float P092[3] = {0.00, 1350.18, 5220.86}; +static float P093[3] = {0.00, 1422.94, 5285.27}; +static float P094[3] = {0.00, 1296.75, 5650.19}; +static float P095[3] = {0.00, 795.63, 6493.88}; +static float iP091[3] = {0.00, 835.01, 5555.62}; +static float iP092[3] = {0.00, 1350.18, 5220.86}; +static float iP093[3] = {0.00, 1422.94, 5285.27}; +static float iP094[3] = {0.00, 1296.75, 5650.19}; +static float iP095[3] = {0.00, 795.63, 6493.88}; +static float P097[3] = {-194.91, -357.14, 10313.32}; +static float P098[3] = {135.35, -357.66, 10307.94}; +static float iP097[3] = {-194.91, -357.14, 10313.32}; +static float iP098[3] = {135.35, -357.66, 10307.94}; +static float P099[3] = {-380.53, -221.14, 9677.98}; +static float P100[3] = {0.00, 412.99, 9629.33}; +static float P102[3] = {59.51, -412.55, 10677.58}; +static float iP102[3] = {59.51, -412.55, 10677.58}; +static float P103[3] = {6.50, 484.74, 9009.94}; +static float P105[3] = {-41.86, 476.51, 9078.17}; +static float P108[3] = {49.20, 476.83, 9078.24}; +static float P110[3] = {-187.62, -410.04, 10674.12}; +static float iP110[3] = {-187.62, -410.04, 10674.12}; +static float P111[3] = {-184.25, -318.70, 10723.88}; +static float iP111[3] = {-184.25, -318.70, 10723.88}; +static float P112[3] = {-179.61, -142.81, 10670.26}; +static float P113[3] = {57.43, -147.94, 10675.26}; +static float P114[3] = {54.06, -218.90, 10712.44}; +static float P115[3] = {-186.35, -212.09, 10713.76}; +static float P116[3] = {205.90, -84.61, 10275.97}; +static float P117[3] = {-230.96, -83.26, 10280.09}; +static float iP118[3] = {216.78, -509.17, 10098.94}; +static float iP119[3] = {-313.21, -510.79, 10102.62}; +static float P118[3] = {216.78, -509.17, 10098.94}; +static float P119[3] = {-313.21, -510.79, 10102.62}; +static float P120[3] = {217.95, 96.34, 10161.62}; +static float P121[3] = {71.99, -319.74, 10717.70}; +static float iP121[3] = {71.99, -319.74, 10717.70}; +static float P122[3] = {0.00, 602.74, 5375.84}; +static float iP122[3] = {0.00, 602.74, 5375.84}; +static float P123[3] = {-448.94, -203.14, 9499.60}; +static float P124[3] = {-442.64, -185.20, 9528.07}; +static float P125[3] = {-441.07, -148.05, 9528.07}; +static float P126[3] = {-443.43, -128.84, 9499.60}; +static float P127[3] = {-456.87, -146.78, 9466.67}; +static float P128[3] = {-453.68, -183.93, 9466.67}; +static float P129[3] = {428.43, -124.08, 9503.03}; +static float P130[3] = {419.73, -142.14, 9534.56}; +static float P131[3] = {419.92, -179.96, 9534.56}; +static float P132[3] = {431.20, -199.73, 9505.26}; +static float P133[3] = {442.28, -181.67, 9475.96}; +static float P134[3] = {442.08, -143.84, 9475.96}; +/* *INDENT-ON* */ + +void +Dolphin001(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P076); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P072); + glVertex3fv(P074); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P072); + glVertex3fv(P070); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P074); + glVertex3fv(P070); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P070); + glVertex3fv(P068); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P076); + glVertex3fv(P068); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P068); + glVertex3fv(P001); + glVertex3fv(P010); + glEnd(); +} + +void +Dolphin002(void) +{ + glNormal3fv(N071); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P001); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P075); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P075); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P069); + glVertex3fv(P073); + glEnd(); + glNormal3fv(N119); + glBegin(GL_POLYGON); + glVertex3fv(P001); + glVertex3fv(P011); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P009); + glVertex3fv(P011); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P011); + glVertex3fv(P069); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P073); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P069); + glVertex3fv(P071); + glVertex3fv(P073); + glEnd(); +} + +void +Dolphin003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Dolphin004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Dolphin005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Dolphin006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N091); + glVertex3fv(P091); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N122); + glVertex3fv(P122); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Dolphin007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Dolphin008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Dolphin009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Dolphin010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Dolphin011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Dolphin012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); +} + +void +Dolphin013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N113); + glVertex3fv(P113); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N116); + glVertex3fv(P116); + glNormal3fv(N113); + glVertex3fv(P113); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N114); + glVertex3fv(P114); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P007); + glVertex3fv(P008); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P007); + glVertex3fv(P114); + glVertex3fv(P115); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N112); + glVertex3fv(P112); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N112); + glVertex3fv(P112); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N115); + glVertex3fv(P115); + glEnd(); +} + +void +Dolphin014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N111); + glVertex3fv(P111); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N110); + glVertex3fv(P110); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N119); + glVertex3fv(P119); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P098); + glVertex3fv(P097); + glVertex3fv(P111); + glVertex3fv(P121); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P002); + glVertex3fv(P099); + glVertex3fv(P097); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N110); + glVertex3fv(P110); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N119); + glVertex3fv(P119); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N118); + glVertex3fv(P118); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N118); + glVertex3fv(P118); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N102); + glVertex3fv(P102); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N102); + glVertex3fv(P102); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N121); + glVertex3fv(P121); + glEnd(); +} + +void +Dolphin015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N099); + glVertex3fv(P099); + glNormal3fv(N117); + glVertex3fv(P117); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N117); + glVertex3fv(P117); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N120); + glVertex3fv(P120); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N120); + glVertex3fv(P120); + glNormal3fv(N116); + glVertex3fv(P116); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Dolphin016(void) +{ + + glDisable(GL_DEPTH_TEST); + glBegin(GL_POLYGON); + glVertex3fv(P123); + glVertex3fv(P124); + glVertex3fv(P125); + glVertex3fv(P126); + glVertex3fv(P127); + glVertex3fv(P128); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P129); + glVertex3fv(P130); + glVertex3fv(P131); + glVertex3fv(P132); + glVertex3fv(P133); + glVertex3fv(P134); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P103); + glVertex3fv(P105); + glVertex3fv(P108); + glEnd(); + glEnable(GL_DEPTH_TEST); +} + +void +DrawDolphin(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (10.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg3 = 1.0 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.0 * thrash * sin((fish->htail + 4.0) * RRAD); + seg2 = 3.0 * thrash * sin((fish->htail + 6.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 10.0) * RRAD); + seg5 = 4.5 * thrash * sin((fish->htail + 15.0) * RRAD); + seg6 = 5.0 * thrash * sin((fish->htail + 20.0) * RRAD); + seg7 = 6.0 * thrash * sin((fish->htail + 30.0) * RRAD); + + pitch = fish->v * sin((fish->htail + 180.0) * RRAD); + + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + chomp = 100.0; + + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3; + P122[1] = iP122[1] + seg3 * 1.5; + + P097[1] = iP097[1] + chomp; + P098[1] = iP098[1] + chomp; + P102[1] = iP102[1] + chomp; + P110[1] = iP110[1] + chomp; + P111[1] = iP111[1] + chomp; + P121[1] = iP121[1] + chomp; + P118[1] = iP118[1] + chomp; + P119[1] = iP119[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 7000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glEnable(GL_CULL_FACE); + Dolphin014(); + Dolphin010(); + Dolphin009(); + Dolphin012(); + Dolphin013(); + Dolphin006(); + Dolphin002(); + Dolphin001(); + Dolphin003(); + Dolphin015(); + Dolphin004(); + Dolphin005(); + Dolphin007(); + Dolphin008(); + Dolphin011(); + Dolphin016(); + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/shark.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/shark.c new file mode 100644 index 000000000..9c847dbaf --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/shark.c @@ -0,0 +1,1308 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N002[3] = {0.000077 ,-0.020611 ,0.999788}; +static float N003[3] = {0.961425 ,0.258729 ,-0.093390}; +static float N004[3] = {0.510811 ,-0.769633 ,-0.383063}; +static float N005[3] = {0.400123 ,0.855734 ,-0.328055}; +static float N006[3] = {-0.770715 ,0.610204 ,-0.183440}; +static float N007[3] = {-0.915597 ,-0.373345 ,-0.149316}; +static float N008[3] = {-0.972788 ,0.208921 ,-0.100179}; +static float N009[3] = {-0.939713 ,-0.312268 ,-0.139383}; +static float N010[3] = {-0.624138 ,-0.741047 ,-0.247589}; +static float N011[3] = {0.591434 ,-0.768401 ,-0.244471}; +static float N012[3] = {0.935152 ,-0.328495 ,-0.132598}; +static float N013[3] = {0.997102 ,0.074243 ,-0.016593}; +static float N014[3] = {0.969995 ,0.241712 ,-0.026186}; +static float N015[3] = {0.844539 ,0.502628 ,-0.184714}; +static float N016[3] = {-0.906608 ,0.386308 ,-0.169787}; +static float N017[3] = {-0.970016 ,0.241698 ,-0.025516}; +static float N018[3] = {-0.998652 ,0.050493 ,-0.012045}; +static float N019[3] = {-0.942685 ,-0.333051 ,-0.020556}; +static float N020[3] = {-0.660944 ,-0.750276 ,0.015480}; +static float N021[3] = {0.503549 ,-0.862908 ,-0.042749}; +static float N022[3] = {0.953202 ,-0.302092 ,-0.012089}; +static float N023[3] = {0.998738 ,0.023574 ,0.044344}; +static float N024[3] = {0.979297 ,0.193272 ,0.060202}; +static float N025[3] = {0.798300 ,0.464885 ,0.382883}; +static float N026[3] = {-0.756590 ,0.452403 ,0.472126}; +static float N027[3] = {-0.953855 ,0.293003 ,0.065651}; +static float N028[3] = {-0.998033 ,0.040292 ,0.048028}; +static float N029[3] = {-0.977079 ,-0.204288 ,0.059858}; +static float N030[3] = {-0.729117 ,-0.675304 ,0.111140}; +static float N031[3] = {0.598361 ,-0.792753 ,0.116221}; +static float N032[3] = {0.965192 ,-0.252991 ,0.066332}; +static float N033[3] = {0.998201 ,-0.002790 ,0.059892}; +static float N034[3] = {0.978657 ,0.193135 ,0.070207}; +static float N035[3] = {0.718815 ,0.680392 ,0.142733}; +static float N036[3] = {-0.383096 ,0.906212 ,0.178936}; +static float N037[3] = {-0.952831 ,0.292590 ,0.080647}; +static float N038[3] = {-0.997680 ,0.032417 ,0.059861}; +static float N039[3] = {-0.982629 ,-0.169881 ,0.074700}; +static float N040[3] = {-0.695424 ,-0.703466 ,0.146700}; +static float N041[3] = {0.359323 ,-0.915531 ,0.180805}; +static float N042[3] = {0.943356 ,-0.319387 ,0.089842}; +static float N043[3] = {0.998272 ,-0.032435 ,0.048993}; +static float N044[3] = {0.978997 ,0.193205 ,0.065084}; +static float N045[3] = {0.872144 ,0.470094 ,-0.135565}; +static float N046[3] = {-0.664282 ,0.737945 ,-0.119027}; +static float N047[3] = {-0.954508 ,0.288570 ,0.075107}; +static float N048[3] = {-0.998273 ,0.032406 ,0.048993}; +static float N049[3] = {-0.979908 ,-0.193579 ,0.048038}; +static float N050[3] = {-0.858736 ,-0.507202 ,-0.072938}; +static float N051[3] = {0.643545 ,-0.763887 ,-0.048237}; +static float N052[3] = {0.955580 ,-0.288954 ,0.058068}; +static float N058[3] = {0.000050 ,0.793007 ,-0.609213}; +static float N059[3] = {0.913510 ,0.235418 ,-0.331779}; +static float N060[3] = {-0.807970 ,0.495000 ,-0.319625}; +static float N061[3] = {0.000000 ,0.784687 ,-0.619892}; +static float N062[3] = {0.000000 ,-1.000000 ,0.000000}; +static float N063[3] = {0.000000 ,1.000000 ,0.000000}; +static float N064[3] = {0.000000 ,1.000000 ,0.000000}; +static float N065[3] = {0.000000 ,1.000000 ,0.000000}; +static float N066[3] = {-0.055784 ,0.257059 ,0.964784}; +static float N069[3] = {-0.000505 ,-0.929775 ,-0.368127}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float P002[3] = {0.00, -36.59, 5687.72}; +static float P003[3] = {90.00, 114.73, 724.38}; +static float P004[3] = {58.24, -146.84, 262.35}; +static float P005[3] = {27.81, 231.52, 510.43}; +static float P006[3] = {-27.81, 230.43, 509.76}; +static float P007[3] = {-46.09, -146.83, 265.84}; +static float P008[3] = {-90.00, 103.84, 718.53}; +static float P009[3] = {-131.10, -165.92, 834.85}; +static float P010[3] = {-27.81, -285.31, 500.00}; +static float P011[3] = {27.81, -285.32, 500.00}; +static float P012[3] = {147.96, -170.89, 845.50}; +static float P013[3] = {180.00, 0.00, 2000.00}; +static float P014[3] = {145.62, 352.67, 2000.00}; +static float P015[3] = {55.62, 570.63, 2000.00}; +static float P016[3] = {-55.62, 570.64, 2000.00}; +static float P017[3] = {-145.62, 352.68, 2000.00}; +static float P018[3] = {-180.00, 0.01, 2000.00}; +static float P019[3] = {-178.20, -352.66, 2001.61}; +static float P020[3] = {-55.63, -570.63, 2000.00}; +static float P021[3] = {55.62, -570.64, 2000.00}; +static float P022[3] = {179.91, -352.69, 1998.39}; +static float P023[3] = {150.00, 0.00, 3000.00}; +static float P024[3] = {121.35, 293.89, 3000.00}; +static float P025[3] = {46.35, 502.93, 2883.09}; +static float P026[3] = {-46.35, 497.45, 2877.24}; +static float P027[3] = {-121.35, 293.90, 3000.00}; +static float P028[3] = {-150.00, 0.00, 3000.00}; +static float P029[3] = {-152.21, -304.84, 2858.68}; +static float P030[3] = {-46.36, -475.52, 3000.00}; +static float P031[3] = {46.35, -475.53, 3000.00}; +static float P032[3] = {155.64, -304.87, 2863.50}; +static float P033[3] = {90.00, 0.00, 4000.00}; +static float P034[3] = {72.81, 176.33, 4000.00}; +static float P035[3] = {27.81, 285.32, 4000.00}; +static float P036[3] = {-27.81, 285.32, 4000.00}; +static float P037[3] = {-72.81, 176.34, 4000.00}; +static float P038[3] = {-90.00, 0.00, 4000.00}; +static float P039[3] = {-72.81, -176.33, 4000.00}; +static float P040[3] = {-27.81, -285.31, 4000.00}; +static float P041[3] = {27.81, -285.32, 4000.00}; +static float P042[3] = {72.81, -176.34, 4000.00}; +static float P043[3] = {30.00, 0.00, 5000.00}; +static float P044[3] = {24.27, 58.78, 5000.00}; +static float P045[3] = {9.27, 95.11, 5000.00}; +static float P046[3] = {-9.27, 95.11, 5000.00}; +static float P047[3] = {-24.27, 58.78, 5000.00}; +static float P048[3] = {-30.00, 0.00, 5000.00}; +static float P049[3] = {-24.27, -58.78, 5000.00}; +static float P050[3] = {-9.27, -95.10, 5000.00}; +static float P051[3] = {9.27, -95.11, 5000.00}; +static float P052[3] = {24.27, -58.78, 5000.00}; +static float P058[3] = {0.00, 1212.72, 2703.08}; +static float P059[3] = {50.36, 0.00, 108.14}; +static float P060[3] = {-22.18, 0.00, 108.14}; +static float P061[3] = {0.00, 1181.61, 6344.65}; +static float P062[3] = {516.45, -887.08, 2535.45}; +static float P063[3] = {-545.69, -879.31, 2555.63}; +static float P064[3] = {618.89, -1005.64, 2988.32}; +static float P065[3] = {-635.37, -1014.79, 2938.68}; +static float P066[3] = {0.00, 1374.43, 3064.18}; +static float P069[3] = {0.00, -418.25, 5765.04}; +static float P070[3] = {0.00, 1266.91, 6629.60}; +static float P071[3] = {-139.12, -124.96, 997.98}; +static float P072[3] = {-139.24, -110.18, 1020.68}; +static float P073[3] = {-137.33, -94.52, 1022.63}; +static float P074[3] = {-137.03, -79.91, 996.89}; +static float P075[3] = {-135.21, -91.48, 969.14}; +static float P076[3] = {-135.39, -110.87, 968.76}; +static float P077[3] = {150.23, -78.44, 995.53}; +static float P078[3] = {152.79, -92.76, 1018.46}; +static float P079[3] = {154.19, -110.20, 1020.55}; +static float P080[3] = {151.33, -124.15, 993.77}; +static float P081[3] = {150.49, -111.19, 969.86}; +static float P082[3] = {150.79, -92.41, 969.70}; +static float iP002[3] = {0.00, -36.59, 5687.72}; +static float iP004[3] = {58.24, -146.84, 262.35}; +static float iP007[3] = {-46.09, -146.83, 265.84}; +static float iP010[3] = {-27.81, -285.31, 500.00}; +static float iP011[3] = {27.81, -285.32, 500.00}; +static float iP023[3] = {150.00, 0.00, 3000.00}; +static float iP024[3] = {121.35, 293.89, 3000.00}; +static float iP025[3] = {46.35, 502.93, 2883.09}; +static float iP026[3] = {-46.35, 497.45, 2877.24}; +static float iP027[3] = {-121.35, 293.90, 3000.00}; +static float iP028[3] = {-150.00, 0.00, 3000.00}; +static float iP029[3] = {-121.35, -304.84, 2853.86}; +static float iP030[3] = {-46.36, -475.52, 3000.00}; +static float iP031[3] = {46.35, -475.53, 3000.00}; +static float iP032[3] = {121.35, -304.87, 2853.86}; +static float iP033[3] = {90.00, 0.00, 4000.00}; +static float iP034[3] = {72.81, 176.33, 4000.00}; +static float iP035[3] = {27.81, 285.32, 4000.00}; +static float iP036[3] = {-27.81, 285.32, 4000.00}; +static float iP037[3] = {-72.81, 176.34, 4000.00}; +static float iP038[3] = {-90.00, 0.00, 4000.00}; +static float iP039[3] = {-72.81, -176.33, 4000.00}; +static float iP040[3] = {-27.81, -285.31, 4000.00}; +static float iP041[3] = {27.81, -285.32, 4000.00}; +static float iP042[3] = {72.81, -176.34, 4000.00}; +static float iP043[3] = {30.00, 0.00, 5000.00}; +static float iP044[3] = {24.27, 58.78, 5000.00}; +static float iP045[3] = {9.27, 95.11, 5000.00}; +static float iP046[3] = {-9.27, 95.11, 5000.00}; +static float iP047[3] = {-24.27, 58.78, 5000.00}; +static float iP048[3] = {-30.00, 0.00, 5000.00}; +static float iP049[3] = {-24.27, -58.78, 5000.00}; +static float iP050[3] = {-9.27, -95.10, 5000.00}; +static float iP051[3] = {9.27, -95.11, 5000.00}; +static float iP052[3] = {24.27, -58.78, 5000.00}; +static float iP061[3] = {0.00, 1181.61, 6344.65}; +static float iP069[3] = {0.00, -418.25, 5765.04}; +static float iP070[3] = {0.00, 1266.91, 6629.60}; +/* *INDENT-ON* */ + +void +Fish001(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N017); + glVertex3fv(P017); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N007); + glVertex3fv(P007); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N010); + glVertex3fv(P010); + glNormal3fv(N007); + glVertex3fv(P007); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N011); + glVertex3fv(P011); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N003); + glVertex3fv(P003); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P071); + glVertex3fv(P072); + glVertex3fv(P073); + glVertex3fv(P074); + glVertex3fv(P075); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P077); + glVertex3fv(P078); + glVertex3fv(P079); + glVertex3fv(P080); + glVertex3fv(P081); + glVertex3fv(P082); + glEnd(); +} + +void +Fish002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); +} + +void +Fish004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N061); + glVertex3fv(P061); + glNormal3fv(N070); + glVertex3fv(P070); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N061); + glVertex3fv(P061); + glEnd(); +} + +void +Fish005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N069); + glVertex3fv(P069); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); +} + +void +Fish006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); +} + +void +Fish007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N064); + glVertex3fv(P064); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N064); + glVertex3fv(P064); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); +} + +void +Fish008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); +} + +void +Fish009(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P059); + glVertex3fv(P012); + glVertex3fv(P009); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P012); + glVertex3fv(P004); + glVertex3fv(P007); + glVertex3fv(P009); + glEnd(); +} + +void +Fish_1(void) +{ + Fish004(); + Fish005(); + Fish003(); + Fish007(); + Fish006(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); +} + +void +Fish_2(void) +{ + Fish005(); + Fish004(); + Fish003(); + Fish008(); + Fish006(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); +} + +void +Fish_3(void) +{ + Fish005(); + Fish004(); + Fish007(); + Fish003(); + Fish002(); + Fish008(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_4(void) +{ + Fish005(); + Fish004(); + Fish008(); + Fish003(); + Fish002(); + Fish007(); + Fish009(); + Fish001(); + Fish006(); +} + +void +Fish_5(void) +{ + Fish009(); + Fish006(); + Fish007(); + Fish001(); + Fish002(); + Fish003(); + Fish008(); + Fish004(); + Fish005(); +} + +void +Fish_6(void) +{ + Fish009(); + Fish006(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish004(); + Fish005(); +} + +void +Fish_7(void) +{ + Fish009(); + Fish001(); + Fish007(); + Fish005(); + Fish002(); + Fish008(); + Fish003(); + Fish004(); + Fish006(); +} + +void +Fish_8(void) +{ + Fish009(); + Fish008(); + Fish001(); + Fish002(); + Fish007(); + Fish003(); + Fish005(); + Fish004(); + Fish006(); +} + +void +DrawShark(fishRec * fish) +{ + float mat[4][4]; + int n; + float seg1, seg2, seg3, seg4, segup; + float thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 50.0 * fish->v; + + seg1 = 0.6 * thrash * sin(fish->htail * RRAD); + seg2 = 1.8 * thrash * sin((fish->htail + 45.0) * RRAD); + seg3 = 3.0 * thrash * sin((fish->htail + 90.0) * RRAD); + seg4 = 4.0 * thrash * sin((fish->htail + 110.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P004[1] = iP004[1] + chomp; + P007[1] = iP007[1] + chomp; + P010[1] = iP010[1] + chomp; + P011[1] = iP011[1] + chomp; + + P023[0] = iP023[0] + seg1; + P024[0] = iP024[0] + seg1; + P025[0] = iP025[0] + seg1; + P026[0] = iP026[0] + seg1; + P027[0] = iP027[0] + seg1; + P028[0] = iP028[0] + seg1; + P029[0] = iP029[0] + seg1; + P030[0] = iP030[0] + seg1; + P031[0] = iP031[0] + seg1; + P032[0] = iP032[0] + seg1; + P033[0] = iP033[0] + seg2; + P034[0] = iP034[0] + seg2; + P035[0] = iP035[0] + seg2; + P036[0] = iP036[0] + seg2; + P037[0] = iP037[0] + seg2; + P038[0] = iP038[0] + seg2; + P039[0] = iP039[0] + seg2; + P040[0] = iP040[0] + seg2; + P041[0] = iP041[0] + seg2; + P042[0] = iP042[0] + seg2; + P043[0] = iP043[0] + seg3; + P044[0] = iP044[0] + seg3; + P045[0] = iP045[0] + seg3; + P046[0] = iP046[0] + seg3; + P047[0] = iP047[0] + seg3; + P048[0] = iP048[0] + seg3; + P049[0] = iP049[0] + seg3; + P050[0] = iP050[0] + seg3; + P051[0] = iP051[0] + seg3; + P052[0] = iP052[0] + seg3; + P002[0] = iP002[0] + seg4; + P061[0] = iP061[0] + seg4; + P069[0] = iP069[0] + seg4; + P070[0] = iP070[0] + seg4; + + fish->vtail += ((fish->dtheta - fish->vtail) * 0.1); + + if (fish->vtail > 0.5) { + fish->vtail = 0.5; + } else if (fish->vtail < -0.5) { + fish->vtail = -0.5; + } + segup = thrash * fish->vtail; + + P023[1] = iP023[1] + segup; + P024[1] = iP024[1] + segup; + P025[1] = iP025[1] + segup; + P026[1] = iP026[1] + segup; + P027[1] = iP027[1] + segup; + P028[1] = iP028[1] + segup; + P029[1] = iP029[1] + segup; + P030[1] = iP030[1] + segup; + P031[1] = iP031[1] + segup; + P032[1] = iP032[1] + segup; + P033[1] = iP033[1] + segup * 5.0; + P034[1] = iP034[1] + segup * 5.0; + P035[1] = iP035[1] + segup * 5.0; + P036[1] = iP036[1] + segup * 5.0; + P037[1] = iP037[1] + segup * 5.0; + P038[1] = iP038[1] + segup * 5.0; + P039[1] = iP039[1] + segup * 5.0; + P040[1] = iP040[1] + segup * 5.0; + P041[1] = iP041[1] + segup * 5.0; + P042[1] = iP042[1] + segup * 5.0; + P043[1] = iP043[1] + segup * 12.0; + P044[1] = iP044[1] + segup * 12.0; + P045[1] = iP045[1] + segup * 12.0; + P046[1] = iP046[1] + segup * 12.0; + P047[1] = iP047[1] + segup * 12.0; + P048[1] = iP048[1] + segup * 12.0; + P049[1] = iP049[1] + segup * 12.0; + P050[1] = iP050[1] + segup * 12.0; + P051[1] = iP051[1] + segup * 12.0; + P052[1] = iP052[1] + segup * 12.0; + P002[1] = iP002[1] + segup * 17.0; + P061[1] = iP061[1] + segup * 17.0; + P069[1] = iP069[1] + segup * 17.0; + P070[1] = iP070[1] + segup * 17.0; + + glPushMatrix(); + + glTranslatef(0.0, 0.0, -3000.0); + + glGetFloatv(GL_MODELVIEW_MATRIX, &mat[0][0]); + n = 0; + if (mat[0][2] >= 0.0) { + n += 1; + } + if (mat[1][2] >= 0.0) { + n += 2; + } + if (mat[2][2] >= 0.0) { + n += 4; + } + glScalef(2.0, 1.0, 1.0); + + glEnable(GL_CULL_FACE); + switch (n) { + case 0: + Fish_1(); + break; + case 1: + Fish_2(); + break; + case 2: + Fish_3(); + break; + case 3: + Fish_4(); + break; + case 4: + Fish_5(); + break; + case 5: + Fish_6(); + break; + case 6: + Fish_7(); + break; + case 7: + Fish_8(); + break; + } + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/swim.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/swim.c new file mode 100644 index 000000000..cac7b6095 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/swim.c @@ -0,0 +1,188 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include /* For rand(). */ +#include +#include "atlantis.h" + +void +FishTransform(fishRec * fish) +{ + + glTranslatef(fish->y, fish->z, -fish->x); + glRotatef(-fish->psi, 0.0, 1.0, 0.0); + glRotatef(fish->theta, 1.0, 0.0, 0.0); + glRotatef(-fish->phi, 0.0, 0.0, 1.0); +} + +void +WhalePilot(fishRec * fish) +{ + + fish->phi = -20.0; + fish->theta = 0.0; + fish->psi -= 0.5; + + fish->x += WHALESPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += WHALESPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += WHALESPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkPilot(fishRec * fish) +{ + static int sign = 1; + float X, Y, Z, tpsi, ttheta, thetal; + + fish->xt = 60000.0; + fish->yt = 0.0; + fish->zt = 0.0; + + X = fish->xt - fish->x; + Y = fish->yt - fish->y; + Z = fish->zt - fish->z; + + thetal = fish->theta; + + ttheta = RAD * atan(Z / (sqrt(X * X + Y * Y))); + + if (ttheta > fish->theta + 0.25) { + fish->theta += 0.5; + } else if (ttheta < fish->theta - 0.25) { + fish->theta -= 0.5; + } + if (fish->theta > 90.0) { + fish->theta = 90.0; + } + if (fish->theta < -90.0) { + fish->theta = -90.0; + } + fish->dtheta = fish->theta - thetal; + + tpsi = RAD * atan2(Y, X); + + fish->attack = 0; + + if (fabs(tpsi - fish->psi) < 10.0) { + fish->attack = 1; + } else if (fabs(tpsi - fish->psi) < 45.0) { + if (fish->psi > tpsi) { + fish->psi -= 0.5; + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } else if (fish->psi < tpsi) { + fish->psi += 0.5; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + } + } else { + if (rand() % 100 > 98) { + sign = 1 - sign; + } + fish->psi += sign; + if (fish->psi > 180.0) { + fish->psi -= 360.0; + } + if (fish->psi < -180.0) { + fish->psi += 360.0; + } + } + + if (fish->attack) { + if (fish->v < 1.1) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.2; + } + if (fish->v > 5.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.2; + } + } else { + if (!(rand() % 400) && (!fish->spurt)) { + fish->spurt = 1; + } + if (fish->spurt) { + fish->v += 0.05; + } + if (fish->v > 3.0) { + fish->spurt = 0; + } + if ((fish->v > 1.0) && (!fish->spurt)) { + fish->v -= 0.05; + } + } + + fish->x += SHARKSPEED * fish->v * cos(fish->psi / RAD) * cos(fish->theta / RAD); + fish->y += SHARKSPEED * fish->v * sin(fish->psi / RAD) * cos(fish->theta / RAD); + fish->z += SHARKSPEED * fish->v * sin(fish->theta / RAD); +} + +void +SharkMiss(int i) +{ + int j; + float avoid, thetal; + float X, Y, Z, R; + + for (j = 0; j < NUM_SHARKS; j++) { + if (j != i) { + X = sharks[j].x - sharks[i].x; + Y = sharks[j].y - sharks[i].y; + Z = sharks[j].z - sharks[i].z; + + R = sqrt(X * X + Y * Y + Z * Z); + + avoid = 1.0; + thetal = sharks[i].theta; + + if (R < SHARKSIZE) { + if (Z > 0.0) { + sharks[i].theta -= avoid; + } else { + sharks[i].theta += avoid; + } + } + sharks[i].dtheta += (sharks[i].theta - thetal); + } + } +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/whale.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/whale.c new file mode 100644 index 000000000..828640ad0 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/atlantis/whale.c @@ -0,0 +1,1798 @@ +/** + * (c) Copyright 1993, 1994, Silicon Graphics, Inc. + * ALL RIGHTS RESERVED + * Permission to use, copy, modify, and distribute this software for + * any purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation, and that + * the name of Silicon Graphics, Inc. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. + * + * THE MATERIAL EMBODIED ON THIS SOFTWARE IS PROVIDED TO YOU "AS-IS" + * AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR + * FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON + * GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT, + * SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY + * KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION, + * LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF + * THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN + * ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE + * POSSESSION, USE OR PERFORMANCE OF THIS SOFTWARE. + * + * US Government Users Restricted Rights + * Use, duplication, or disclosure by the Government is subject to + * restrictions set forth in FAR 52.227.19(c)(2) or subparagraph + * (c)(1)(ii) of the Rights in Technical Data and Computer Software + * clause at DFARS 252.227-7013 and/or in similar or successor + * clauses in the FAR or the DOD or NASA FAR Supplement. + * Unpublished-- rights reserved under the copyright laws of the + * United States. Contractor/manufacturer is Silicon Graphics, + * Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311. + * + * OpenGL(TM) is a trademark of Silicon Graphics, Inc. + */ +#include +#include +#include "atlantis.h" +/* *INDENT-OFF* */ +static float N001[3] = {0.019249 ,0.011340 ,-0.999750}; +static float N002[3] = {-0.132579 ,0.954547 ,0.266952}; +static float N003[3] = {-0.196061 ,0.980392 ,-0.019778}; +static float N004[3] = {0.695461 ,0.604704 ,0.388158}; +static float N005[3] = {0.870600 ,0.425754 ,0.246557}; +static float N006[3] = {-0.881191 ,0.392012 ,0.264251}; +static float N008[3] = {-0.341437 ,0.887477 ,0.309523}; +static float N009[3] = {0.124035 ,-0.992278 ,0.000000}; +static float N010[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N011[3] = {0.588172 ,0.000000 ,0.808736}; +static float N012[3] = {0.929824 ,-0.340623 ,-0.139298}; +static float N013[3] = {0.954183 ,0.267108 ,-0.134865}; +static float N014[3] = {0.495127 ,0.855436 ,-0.151914}; +static float N015[3] = {-0.390199 ,0.906569 ,-0.160867}; +static float N016[3] = {-0.923605 ,0.354581 ,-0.145692}; +static float N017[3] = {-0.955796 ,-0.260667 ,-0.136036}; +static float N018[3] = {-0.501283 ,-0.853462 ,-0.142540}; +static float N019[3] = {0.405300 ,-0.901974 ,-0.148913}; +static float N020[3] = {0.909913 ,-0.392746 ,-0.133451}; +static float N021[3] = {0.936494 ,0.331147 ,-0.115414}; +static float N022[3] = {0.600131 ,0.793724 ,-0.099222}; +static float N023[3] = {-0.231556 ,0.968361 ,-0.093053}; +static float N024[3] = {-0.844369 ,0.525330 ,-0.105211}; +static float N025[3] = {-0.982725 ,-0.136329 ,-0.125164}; +static float N026[3] = {-0.560844 ,-0.822654 ,-0.093241}; +static float N027[3] = {0.263884 ,-0.959981 ,-0.093817}; +static float N028[3] = {0.842057 ,-0.525192 ,-0.122938}; +static float N029[3] = {0.921620 ,0.367565 ,-0.124546}; +static float N030[3] = {0.613927 ,0.784109 ,-0.090918}; +static float N031[3] = {-0.448754 ,0.888261 ,-0.098037}; +static float N032[3] = {-0.891865 ,0.434376 ,-0.126077}; +static float N033[3] = {-0.881447 ,-0.448017 ,-0.149437}; +static float N034[3] = {-0.345647 ,-0.922057 ,-0.174183}; +static float N035[3] = {0.307998 ,-0.941371 ,-0.137688}; +static float N036[3] = {0.806316 ,-0.574647 ,-0.140124}; +static float N037[3] = {0.961346 ,0.233646 ,-0.145681}; +static float N038[3] = {0.488451 ,0.865586 ,-0.110351}; +static float N039[3] = {-0.374290 ,0.921953 ,-0.099553}; +static float N040[3] = {-0.928504 ,0.344533 ,-0.138485}; +static float N041[3] = {-0.918419 ,-0.371792 ,-0.135189}; +static float N042[3] = {-0.520666 ,-0.833704 ,-0.183968}; +static float N043[3] = {0.339204 ,-0.920273 ,-0.195036}; +static float N044[3] = {0.921475 ,-0.387382 ,-0.028636}; +static float N045[3] = {0.842465 ,0.533335 ,-0.076204}; +static float N046[3] = {0.380110 ,0.924939 ,0.002073}; +static float N047[3] = {-0.276128 ,0.961073 ,-0.009579}; +static float N048[3] = {-0.879684 ,0.473001 ,-0.049250}; +static float N049[3] = {-0.947184 ,-0.317614 ,-0.044321}; +static float N050[3] = {-0.642059 ,-0.764933 ,-0.051363}; +static float N051[3] = {0.466794 ,-0.880921 ,-0.077990}; +static float N052[3] = {0.898509 ,-0.432277 ,0.076279}; +static float N053[3] = {0.938985 ,0.328141 ,0.103109}; +static float N054[3] = {0.442420 ,0.895745 ,0.043647}; +static float N055[3] = {-0.255163 ,0.966723 ,0.018407}; +static float N056[3] = {-0.833769 ,0.540650 ,0.111924}; +static float N057[3] = {-0.953653 ,-0.289939 ,0.080507}; +static float N058[3] = {-0.672357 ,-0.730524 ,0.119461}; +static float N059[3] = {0.522249 ,-0.846652 ,0.102157}; +static float N060[3] = {0.885868 ,-0.427631 ,0.179914}; +static float N062[3] = {0.648942 ,0.743116 ,0.163255}; +static float N063[3] = {-0.578967 ,0.807730 ,0.111219}; +static float N065[3] = {-0.909864 ,-0.352202 ,0.219321}; +static float N066[3] = {-0.502541 ,-0.818090 ,0.279610}; +static float N067[3] = {0.322919 ,-0.915358 ,0.240504}; +static float N068[3] = {0.242536 ,0.000000 ,-0.970143}; +static float N069[3] = {0.000000 ,1.000000 ,0.000000}; +static float N070[3] = {0.000000 ,1.000000 ,0.000000}; +static float N071[3] = {0.000000 ,1.000000 ,0.000000}; +static float N072[3] = {0.000000 ,1.000000 ,0.000000}; +static float N073[3] = {0.000000 ,1.000000 ,0.000000}; +static float N074[3] = {0.000000 ,1.000000 ,0.000000}; +static float N075[3] = {0.031220 ,0.999025 ,-0.031220}; +static float N076[3] = {0.000000 ,1.000000 ,0.000000}; +static float N077[3] = {0.446821 ,0.893642 ,0.041889}; +static float N078[3] = {0.863035 ,-0.100980 ,0.494949}; +static float N079[3] = {0.585597 ,-0.808215 ,0.062174}; +static float N080[3] = {0.000000 ,1.000000 ,0.000000}; +static float N081[3] = {1.000000 ,0.000000 ,0.000000}; +static float N082[3] = {0.000000 ,1.000000 ,0.000000}; +static float N083[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N084[3] = {-0.478893 ,0.837129 ,-0.264343}; +static float N085[3] = {0.000000 ,1.000000 ,0.000000}; +static float N086[3] = {0.763909 ,0.539455 ,-0.354163}; +static float N087[3] = {0.446821 ,0.893642 ,0.041889}; +static float N088[3] = {0.385134 ,-0.908288 ,0.163352}; +static float N089[3] = {-0.605952 ,0.779253 ,-0.159961}; +static float N090[3] = {0.000000 ,1.000000 ,0.000000}; +static float N091[3] = {0.000000 ,1.000000 ,0.000000}; +static float N092[3] = {0.000000 ,1.000000 ,0.000000}; +static float N093[3] = {0.000000 ,1.000000 ,0.000000}; +static float N094[3] = {1.000000 ,0.000000 ,0.000000}; +static float N095[3] = {-1.000000 ,0.000000 ,0.000000}; +static float N096[3] = {0.644444 ,-0.621516 ,0.445433}; +static float N097[3] = {-0.760896 ,-0.474416 ,0.442681}; +static float N098[3] = {0.636888 ,-0.464314 ,0.615456}; +static float N099[3] = {-0.710295 ,0.647038 ,0.277168}; +static float N100[3] = {0.009604 ,0.993655 ,0.112063}; +static float iP001[3] = {18.74, 13.19, 3.76}; +static float P001[3] = {18.74, 13.19, 3.76}; +static float P002[3] = {0.00, 390.42, 10292.57}; +static float P003[3] = {55.80, 622.31, 8254.35}; +static float P004[3] = {20.80, 247.66, 10652.13}; +static float P005[3] = {487.51, 198.05, 9350.78}; +static float P006[3] = {-457.61, 199.04, 9353.01}; +static float P008[3] = {-34.67, 247.64, 10663.71}; +static float iP009[3] = {97.46, 67.63, 593.82}; +static float iP010[3] = {-84.33, 67.63, 588.18}; +static float iP011[3] = {118.69, 8.98, -66.91}; +static float P009[3] = {97.46, 67.63, 593.82}; +static float P010[3] = {-84.33, 67.63, 588.18}; +static float P011[3] = {118.69, 8.98, -66.91}; +static float iP012[3] = {156.48, -31.95, 924.54}; +static float iP013[3] = {162.00, 110.22, 924.54}; +static float iP014[3] = {88.16, 221.65, 924.54}; +static float iP015[3] = {-65.21, 231.16, 924.54}; +static float iP016[3] = {-156.48, 121.97, 924.54}; +static float iP017[3] = {-162.00, -23.93, 924.54}; +static float iP018[3] = {-88.16, -139.10, 924.54}; +static float iP019[3] = {65.21, -148.61, 924.54}; +static float iP020[3] = {246.87, -98.73, 1783.04}; +static float iP021[3] = {253.17, 127.76, 1783.04}; +static float iP022[3] = {132.34, 270.77, 1783.04}; +static float iP023[3] = {-97.88, 285.04, 1783.04}; +static float iP024[3] = {-222.97, 139.80, 1783.04}; +static float iP025[3] = {-225.29, -86.68, 1783.04}; +static float iP026[3] = {-108.44, -224.15, 1783.04}; +static float iP027[3] = {97.88, -221.56, 1783.04}; +static float iP028[3] = {410.55, -200.66, 3213.87}; +static float iP029[3] = {432.19, 148.42, 3213.87}; +static float iP030[3] = {200.66, 410.55, 3213.87}; +static float iP031[3] = {-148.42, 432.19, 3213.87}; +static float iP032[3] = {-407.48, 171.88, 3213.87}; +static float iP033[3] = {-432.19, -148.42, 3213.87}; +static float iP034[3] = {-148.88, -309.74, 3213.87}; +static float iP035[3] = {156.38, -320.17, 3213.87}; +static float iP036[3] = {523.39, -303.81, 4424.57}; +static float iP037[3] = {574.66, 276.84, 4424.57}; +static float iP038[3] = {243.05, 492.50, 4424.57}; +static float iP039[3] = {-191.23, 520.13, 4424.57}; +static float iP040[3] = {-523.39, 304.01, 4424.57}; +static float iP041[3] = {-574.66, -231.83, 4424.57}; +static float iP042[3] = {-266.95, -578.17, 4424.57}; +static float iP043[3] = {211.14, -579.67, 4424.57}; +static float iP044[3] = {680.57, -370.27, 5943.46}; +static float iP045[3] = {834.01, 363.09, 5943.46}; +static float iP046[3] = {371.29, 614.13, 5943.46}; +static float iP047[3] = {-291.43, 621.86, 5943.46}; +static float iP048[3] = {-784.13, 362.60, 5943.46}; +static float iP049[3] = {-743.29, -325.82, 5943.46}; +static float iP050[3] = {-383.24, -804.77, 5943.46}; +static float iP051[3] = {283.47, -846.09, 5943.46}; +static float P012[3] = {156.48, -31.95, 924.54}; +static float P013[3] = {162.00, 110.22, 924.54}; +static float P014[3] = {88.16, 221.65, 924.54}; +static float P015[3] = {-65.21, 231.16, 924.54}; +static float P016[3] = {-156.48, 121.97, 924.54}; +static float P017[3] = {-162.00, -23.93, 924.54}; +static float P018[3] = {-88.16, -139.10, 924.54}; +static float P019[3] = {65.21, -148.61, 924.54}; +static float P020[3] = {246.87, -98.73, 1783.04}; +static float P021[3] = {253.17, 127.76, 1783.04}; +static float P022[3] = {132.34, 270.77, 1783.04}; +static float P023[3] = {-97.88, 285.04, 1783.04}; +static float P024[3] = {-222.97, 139.80, 1783.04}; +static float P025[3] = {-225.29, -86.68, 1783.04}; +static float P026[3] = {-108.44, -224.15, 1783.04}; +static float P027[3] = {97.88, -221.56, 1783.04}; +static float P028[3] = {410.55, -200.66, 3213.87}; +static float P029[3] = {432.19, 148.42, 3213.87}; +static float P030[3] = {200.66, 410.55, 3213.87}; +static float P031[3] = {-148.42, 432.19, 3213.87}; +static float P032[3] = {-407.48, 171.88, 3213.87}; +static float P033[3] = {-432.19, -148.42, 3213.87}; +static float P034[3] = {-148.88, -309.74, 3213.87}; +static float P035[3] = {156.38, -320.17, 3213.87}; +static float P036[3] = {523.39, -303.81, 4424.57}; +static float P037[3] = {574.66, 276.84, 4424.57}; +static float P038[3] = {243.05, 492.50, 4424.57}; +static float P039[3] = {-191.23, 520.13, 4424.57}; +static float P040[3] = {-523.39, 304.01, 4424.57}; +static float P041[3] = {-574.66, -231.83, 4424.57}; +static float P042[3] = {-266.95, -578.17, 4424.57}; +static float P043[3] = {211.14, -579.67, 4424.57}; +static float P044[3] = {680.57, -370.27, 5943.46}; +static float P045[3] = {834.01, 363.09, 5943.46}; +static float P046[3] = {371.29, 614.13, 5943.46}; +static float P047[3] = {-291.43, 621.86, 5943.46}; +static float P048[3] = {-784.13, 362.60, 5943.46}; +static float P049[3] = {-743.29, -325.82, 5943.46}; +static float P050[3] = {-383.24, -804.77, 5943.46}; +static float P051[3] = {283.47, -846.09, 5943.46}; +static float P052[3] = {599.09, -332.24, 7902.59}; +static float P053[3] = {735.48, 306.26, 7911.92}; +static float P054[3] = {321.55, 558.53, 7902.59}; +static float P055[3] = {-260.54, 559.84, 7902.59}; +static float P056[3] = {-698.66, 320.83, 7902.59}; +static float P057[3] = {-643.29, -299.16, 7902.59}; +static float P058[3] = {-341.47, -719.30, 7902.59}; +static float P059[3] = {252.57, -756.12, 7902.59}; +static float P060[3] = {458.39, -265.31, 9355.44}; +static float P062[3] = {224.04, 438.98, 9364.77}; +static float P063[3] = {-165.71, 441.27, 9355.44}; +static float P065[3] = {-473.99, -219.71, 9355.44}; +static float P066[3] = {-211.97, -479.87, 9355.44}; +static float P067[3] = {192.86, -504.03, 9355.44}; +static float iP068[3] = {-112.44, 9.25, -64.42}; +static float iP069[3] = {1155.63, 0.00, -182.46}; +static float iP070[3] = {-1143.13, 0.00, -181.54}; +static float iP071[3] = {1424.23, 0.00, -322.09}; +static float iP072[3] = {-1368.01, 0.00, -310.38}; +static float iP073[3] = {1255.57, 2.31, 114.05}; +static float iP074[3] = {-1149.38, 0.00, 117.12}; +static float iP075[3] = {718.36, 0.00, 433.36}; +static float iP076[3] = {-655.90, 0.00, 433.36}; +static float P068[3] = {-112.44, 9.25, -64.42}; +static float P069[3] = {1155.63, 0.00, -182.46}; +static float P070[3] = {-1143.13, 0.00, -181.54}; +static float P071[3] = {1424.23, 0.00, -322.09}; +static float P072[3] = {-1368.01, 0.00, -310.38}; +static float P073[3] = {1255.57, 2.31, 114.05}; +static float P074[3] = {-1149.38, 0.00, 117.12}; +static float P075[3] = {718.36, 0.00, 433.36}; +static float P076[3] = {-655.90, 0.00, 433.36}; +static float P077[3] = {1058.00, -2.66, 7923.51}; +static float P078[3] = {-1016.51, -15.47, 7902.87}; +static float P079[3] = {-1363.99, -484.50, 7593.38}; +static float P080[3] = {1478.09, -861.47, 7098.12}; +static float P081[3] = {1338.06, -284.68, 7024.15}; +static float P082[3] = {-1545.51, -860.64, 7106.60}; +static float P083[3] = {1063.19, -70.46, 7466.60}; +static float P084[3] = {-1369.18, -288.11, 7015.34}; +static float P085[3] = {1348.44, -482.50, 7591.41}; +static float P086[3] = {-1015.45, -96.80, 7474.86}; +static float P087[3] = {731.04, 148.38, 7682.58}; +static float P088[3] = {-697.03, 151.82, 7668.81}; +static float P089[3] = {-686.82, 157.09, 7922.29}; +static float P090[3] = {724.73, 147.75, 7931.39}; +static float iP091[3] = {0.00, 327.10, 2346.55}; +static float iP092[3] = {0.00, 552.28, 2311.31}; +static float iP093[3] = {0.00, 721.16, 2166.41}; +static float iP094[3] = {0.00, 693.42, 2388.80}; +static float iP095[3] = {0.00, 389.44, 2859.97}; +static float P091[3] = {0.00, 327.10, 2346.55}; +static float P092[3] = {0.00, 552.28, 2311.31}; +static float P093[3] = {0.00, 721.16, 2166.41}; +static float P094[3] = {0.00, 693.42, 2388.80}; +static float P095[3] = {0.00, 389.44, 2859.97}; +static float iP096[3] = {222.02, -183.67, 10266.89}; +static float iP097[3] = {-128.90, -182.70, 10266.89}; +static float iP098[3] = {41.04, 88.31, 10659.36}; +static float iP099[3] = {-48.73, 88.30, 10659.36}; +static float P096[3] = {222.02, -183.67, 10266.89}; +static float P097[3] = {-128.90, -182.70, 10266.89}; +static float P098[3] = {41.04, 88.31, 10659.36}; +static float P099[3] = {-48.73, 88.30, 10659.36}; +static float P100[3] = {0.00, 603.42, 9340.68}; +static float P104[3] = {-9.86, 567.62, 7858.65}; +static float P105[3] = {31.96, 565.27, 7908.46}; +static float P106[3] = {22.75, 568.13, 7782.83}; +static float P107[3] = {58.93, 568.42, 7775.94}; +static float P108[3] = {55.91, 565.59, 7905.86}; +static float P109[3] = {99.21, 566.00, 7858.65}; +static float P110[3] = {-498.83, 148.14, 9135.10}; +static float P111[3] = {-495.46, 133.24, 9158.48}; +static float P112[3] = {-490.82, 146.23, 9182.76}; +static float P113[3] = {-489.55, 174.11, 9183.66}; +static float P114[3] = {-492.92, 189.00, 9160.28}; +static float P115[3] = {-497.56, 176.02, 9136.00}; +static float P116[3] = {526.54, 169.68, 9137.70}; +static float P117[3] = {523.49, 184.85, 9161.42}; +static float P118[3] = {518.56, 171.78, 9186.06}; +static float P119[3] = {516.68, 143.53, 9186.98}; +static float P120[3] = {519.73, 128.36, 9163.26}; +static float P121[3] = {524.66, 141.43, 9138.62}; +/* *INDENT-ON* */ + +void +Whale001(void) +{ + + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N072); + glVertex3fv(P072); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N074); + glVertex3fv(P074); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N074); + glVertex3fv(P074); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N070); + glVertex3fv(P070); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N076); + glVertex3fv(P076); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N076); + glVertex3fv(P076); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N068); + glVertex3fv(P068); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N010); + glVertex3fv(P010); + glEnd(); +} + +void +Whale002(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N009); + glVertex3fv(P009); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N009); + glVertex3fv(P009); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N011); + glVertex3fv(P011); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N073); + glVertex3fv(P073); + glNormal3fv(N075); + glVertex3fv(P075); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N069); + glVertex3fv(P069); + glNormal3fv(N071); + glVertex3fv(P071); + glNormal3fv(N073); + glVertex3fv(P073); + glEnd(); +} + +void +Whale003(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N019); + glVertex3fv(P019); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N018); + glVertex3fv(P018); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N016); + glVertex3fv(P016); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N012); + glVertex3fv(P012); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N015); + glVertex3fv(P015); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N013); + glVertex3fv(P013); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N001); + glVertex3fv(P001); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N014); + glVertex3fv(P014); + glEnd(); +} + +void +Whale004(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N022); + glVertex3fv(P022); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N015); + glVertex3fv(P015); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N023); + glVertex3fv(P023); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N016); + glVertex3fv(P016); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N024); + glVertex3fv(P024); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N017); + glVertex3fv(P017); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N025); + glVertex3fv(P025); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N014); + glVertex3fv(P014); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N021); + glVertex3fv(P021); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N013); + glVertex3fv(P013); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N020); + glVertex3fv(P020); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N018); + glVertex3fv(P018); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N026); + glVertex3fv(P026); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N019); + glVertex3fv(P019); + glNormal3fv(N012); + glVertex3fv(P012); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N027); + glVertex3fv(P027); + glEnd(); +} + +void +Whale005(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N022); + glVertex3fv(P022); + glNormal3fv(N030); + glVertex3fv(P030); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N023); + glVertex3fv(P023); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N031); + glVertex3fv(P031); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N024); + glVertex3fv(P024); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N032); + glVertex3fv(P032); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N021); + glVertex3fv(P021); + glNormal3fv(N029); + glVertex3fv(P029); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N020); + glVertex3fv(P020); + glNormal3fv(N028); + glVertex3fv(P028); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N035); + glVertex3fv(P035); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N025); + glVertex3fv(P025); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N033); + glVertex3fv(P033); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N026); + glVertex3fv(P026); + glNormal3fv(N027); + glVertex3fv(P027); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N034); + glVertex3fv(P034); + glEnd(); +} + +void +Whale006(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N093); + glVertex3fv(P093); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N095); + glVertex3fv(P095); + glNormal3fv(N094); + glVertex3fv(P094); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N091); + glVertex3fv(P091); + glNormal3fv(N092); + glVertex3fv(P092); + glNormal3fv(N094); + glVertex3fv(P094); + glNormal3fv(N095); + glVertex3fv(P095); + glEnd(); +} + +void +Whale007(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N030); + glVertex3fv(P030); + glNormal3fv(N038); + glVertex3fv(P038); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N029); + glVertex3fv(P029); + glNormal3fv(N037); + glVertex3fv(P037); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N028); + glVertex3fv(P028); + glNormal3fv(N036); + glVertex3fv(P036); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N043); + glVertex3fv(P043); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N035); + glVertex3fv(P035); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N034); + glVertex3fv(P034); + glNormal3fv(N042); + glVertex3fv(P042); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N031); + glVertex3fv(P031); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N039); + glVertex3fv(P039); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N032); + glVertex3fv(P032); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N040); + glVertex3fv(P040); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N033); + glVertex3fv(P033); + glNormal3fv(N041); + glVertex3fv(P041); + glEnd(); +} + +void +Whale008(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N043); + glVertex3fv(P043); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N051); + glVertex3fv(P051); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N042); + glVertex3fv(P042); + glNormal3fv(N050); + glVertex3fv(P050); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N036); + glVertex3fv(P036); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N044); + glVertex3fv(P044); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N041); + glVertex3fv(P041); + glNormal3fv(N049); + glVertex3fv(P049); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N040); + glVertex3fv(P040); + glNormal3fv(N048); + glVertex3fv(P048); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N047); + glVertex3fv(P047); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N037); + glVertex3fv(P037); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N045); + glVertex3fv(P045); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N038); + glVertex3fv(P038); + glNormal3fv(N039); + glVertex3fv(P039); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N046); + glVertex3fv(P046); + glEnd(); +} + +void +Whale009(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N051); + glVertex3fv(P051); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N059); + glVertex3fv(P059); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N044); + glVertex3fv(P044); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N050); + glVertex3fv(P050); + glNormal3fv(N058); + glVertex3fv(P058); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N049); + glVertex3fv(P049); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N048); + glVertex3fv(P048); + glNormal3fv(N056); + glVertex3fv(P056); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N045); + glVertex3fv(P045); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N046); + glVertex3fv(P046); + glNormal3fv(N047); + glVertex3fv(P047); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); +} + +void +Whale010(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N080); + glVertex3fv(P080); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N081); + glVertex3fv(P081); + glNormal3fv(N085); + glVertex3fv(P085); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N085); + glVertex3fv(P085); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N083); + glVertex3fv(P083); + glNormal3fv(N077); + glVertex3fv(P077); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N087); + glVertex3fv(P087); + glNormal3fv(N077); + glVertex3fv(P077); + glNormal3fv(N090); + glVertex3fv(P090); + glEnd(); +} + +void +Whale011(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N079); + glVertex3fv(P079); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N088); + glVertex3fv(P088); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N089); + glVertex3fv(P089); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N089); + glVertex3fv(P089); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N086); + glVertex3fv(P086); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N078); + glVertex3fv(P078); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N078); + glVertex3fv(P078); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N084); + glVertex3fv(P084); + glNormal3fv(N082); + glVertex3fv(P082); + glNormal3fv(N079); + glVertex3fv(P079); + glEnd(); +} + +void +Whale012(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N066); + glVertex3fv(P066); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N052); + glVertex3fv(P052); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N059); + glVertex3fv(P059); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N067); + glVertex3fv(P067); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N058); + glVertex3fv(P058); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N057); + glVertex3fv(P057); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N057); + glVertex3fv(P057); + glNormal3fv(N065); + glVertex3fv(P065); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N006); + glVertex3fv(P006); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N056); + glVertex3fv(P056); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N055); + glVertex3fv(P055); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N053); + glVertex3fv(P053); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N060); + glVertex3fv(P060); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N053); + glVertex3fv(P053); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N052); + glVertex3fv(P052); + glEnd(); +} + +void +Whale013(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N098); + glVertex3fv(P098); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N066); + glVertex3fv(P066); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N067); + glVertex3fv(P067); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N060); + glVertex3fv(P060); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N096); + glVertex3fv(P096); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N096); + glVertex3fv(P096); + glNormal3fv(N005); + glVertex3fv(P005); + glNormal3fv(N098); + glVertex3fv(P098); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N065); + glVertex3fv(P065); + glNormal3fv(N097); + glVertex3fv(P097); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N097); + glVertex3fv(P097); + glNormal3fv(N099); + glVertex3fv(P099); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P005); + glVertex3fv(P006); + glVertex3fv(P099); + glVertex3fv(P098); + glEnd(); +} + +void +Whale014(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N004); + glVertex3fv(P004); + glNormal3fv(N005); + glVertex3fv(P005); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P006); + glVertex3fv(P005); + glVertex3fv(P004); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N006); + glVertex3fv(P006); + glNormal3fv(N008); + glVertex3fv(P008); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N008); + glVertex3fv(P008); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N062); + glVertex3fv(P062); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N004); + glVertex3fv(P004); + glEnd(); +} + +void +Whale015(void) +{ + glBegin(GL_POLYGON); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N055); + glVertex3fv(P055); + glNormal3fv(N063); + glVertex3fv(P063); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N100); + glVertex3fv(P100); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N003); + glVertex3fv(P003); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N054); + glVertex3fv(P054); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N054); + glVertex3fv(P054); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N063); + glVertex3fv(P063); + glNormal3fv(N002); + glVertex3fv(P002); + glEnd(); + glBegin(GL_POLYGON); + glNormal3fv(N100); + glVertex3fv(P100); + glNormal3fv(N002); + glVertex3fv(P002); + glNormal3fv(N062); + glVertex3fv(P062); + glEnd(); +} + +void +Whale016(void) +{ + glBegin(GL_POLYGON); + glVertex3fv(P104); + glVertex3fv(P105); + glVertex3fv(P106); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P107); + glVertex3fv(P108); + glVertex3fv(P109); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P110); + glVertex3fv(P111); + glVertex3fv(P112); + glVertex3fv(P113); + glVertex3fv(P114); + glVertex3fv(P115); + glEnd(); + glBegin(GL_POLYGON); + glVertex3fv(P116); + glVertex3fv(P117); + glVertex3fv(P118); + glVertex3fv(P119); + glVertex3fv(P120); + glVertex3fv(P121); + glEnd(); +} + +void +DrawWhale(fishRec * fish) +{ + float seg0, seg1, seg2, seg3, seg4, seg5, seg6, seg7; + float pitch, thrash, chomp; + + fish->htail = (int) (fish->htail - (int) (5.0 * fish->v)) % 360; + + thrash = 70.0 * fish->v; + + seg0 = 1.5 * thrash * sin((fish->htail) * RRAD); + seg1 = 2.5 * thrash * sin((fish->htail + 10.0) * RRAD); + seg2 = 3.7 * thrash * sin((fish->htail + 15.0) * RRAD); + seg3 = 4.8 * thrash * sin((fish->htail + 23.0) * RRAD); + seg4 = 6.0 * thrash * sin((fish->htail + 28.0) * RRAD); + seg5 = 6.5 * thrash * sin((fish->htail + 35.0) * RRAD); + seg6 = 6.5 * thrash * sin((fish->htail + 40.0) * RRAD); + seg7 = 6.5 * thrash * sin((fish->htail + 55.0) * RRAD); + + pitch = fish->v * sin((fish->htail - 160.0) * RRAD); + + chomp = 0.0; + if (fish->v > 2.0) { + chomp = -(fish->v - 2.0) * 200.0; + } + P012[1] = iP012[1] + seg5; + P013[1] = iP013[1] + seg5; + P014[1] = iP014[1] + seg5; + P015[1] = iP015[1] + seg5; + P016[1] = iP016[1] + seg5; + P017[1] = iP017[1] + seg5; + P018[1] = iP018[1] + seg5; + P019[1] = iP019[1] + seg5; + + P020[1] = iP020[1] + seg4; + P021[1] = iP021[1] + seg4; + P022[1] = iP022[1] + seg4; + P023[1] = iP023[1] + seg4; + P024[1] = iP024[1] + seg4; + P025[1] = iP025[1] + seg4; + P026[1] = iP026[1] + seg4; + P027[1] = iP027[1] + seg4; + + P028[1] = iP028[1] + seg2; + P029[1] = iP029[1] + seg2; + P030[1] = iP030[1] + seg2; + P031[1] = iP031[1] + seg2; + P032[1] = iP032[1] + seg2; + P033[1] = iP033[1] + seg2; + P034[1] = iP034[1] + seg2; + P035[1] = iP035[1] + seg2; + + P036[1] = iP036[1] + seg1; + P037[1] = iP037[1] + seg1; + P038[1] = iP038[1] + seg1; + P039[1] = iP039[1] + seg1; + P040[1] = iP040[1] + seg1; + P041[1] = iP041[1] + seg1; + P042[1] = iP042[1] + seg1; + P043[1] = iP043[1] + seg1; + + P044[1] = iP044[1] + seg0; + P045[1] = iP045[1] + seg0; + P046[1] = iP046[1] + seg0; + P047[1] = iP047[1] + seg0; + P048[1] = iP048[1] + seg0; + P049[1] = iP049[1] + seg0; + P050[1] = iP050[1] + seg0; + P051[1] = iP051[1] + seg0; + + P009[1] = iP009[1] + seg6; + P010[1] = iP010[1] + seg6; + P075[1] = iP075[1] + seg6; + P076[1] = iP076[1] + seg6; + + P001[1] = iP001[1] + seg7; + P011[1] = iP011[1] + seg7; + P068[1] = iP068[1] + seg7; + P069[1] = iP069[1] + seg7; + P070[1] = iP070[1] + seg7; + P071[1] = iP071[1] + seg7; + P072[1] = iP072[1] + seg7; + P073[1] = iP073[1] + seg7; + P074[1] = iP074[1] + seg7; + + P091[1] = iP091[1] + seg3 * 1.1; + P092[1] = iP092[1] + seg3; + P093[1] = iP093[1] + seg3; + P094[1] = iP094[1] + seg3; + P095[1] = iP095[1] + seg3 * 0.9; + + P099[1] = iP099[1] + chomp; + P098[1] = iP098[1] + chomp; + P097[1] = iP097[1] + chomp; + P096[1] = iP096[1] + chomp; + + glPushMatrix(); + + glRotatef(pitch, 1.0, 0.0, 0.0); + + glTranslatef(0.0, 0.0, 8000.0); + + glRotatef(180.0, 0.0, 1.0, 0.0); + + glScalef(3.0, 3.0, 3.0); + + glEnable(GL_CULL_FACE); + + Whale001(); + Whale002(); + Whale003(); + Whale004(); + Whale005(); + Whale006(); + Whale007(); + Whale008(); + Whale009(); + Whale010(); + Whale011(); + Whale012(); + Whale013(); + Whale014(); + Whale015(); + Whale016(); + + glDisable(GL_CULL_FACE); + + glPopMatrix(); +} diff --git a/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/main.c b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/main.c new file mode 100644 index 000000000..b7794b3b6 --- /dev/null +++ b/Xcode/TemplatesForXcodeTiger/SDL OpenGL Application/main.c @@ -0,0 +1,179 @@ + +/* Simple program: Create a blank window, wait for keypress, quit. + + Please see the SDL documentation for details on using the SDL API: + /Developer/Documentation/SDL/docs.html +*/ + +#include +#include +#include +#include + +#include "SDL.h" + +extern void Atlantis_Init (); +extern void Atlantis_Reshape (int w, int h); +extern void Atlantis_Animate (); +extern void Atlantis_Display (); + +static SDL_Surface *gScreen; + +static void initAttributes () +{ + // Setup attributes we want for the OpenGL context + + int value; + + // Don't set color bit sizes (SDL_GL_RED_SIZE, etc) + // Mac OS X will always use 8-8-8-8 ARGB for 32-bit screens and + // 5-5-5 RGB for 16-bit screens + + // Request a 16-bit depth buffer (without this, there is no depth buffer) + value = 16; + SDL_GL_SetAttribute (SDL_GL_DEPTH_SIZE, value); + + + // Request double-buffered OpenGL + // The fact that windows are double-buffered on Mac OS X has no effect + // on OpenGL double buffering. + value = 1; + SDL_GL_SetAttribute (SDL_GL_DOUBLEBUFFER, value); +} + +static void printAttributes () +{ + // Print out attributes of the context we created + int nAttr; + int i; + + int attr[] = { SDL_GL_RED_SIZE, SDL_GL_BLUE_SIZE, SDL_GL_GREEN_SIZE, + SDL_GL_ALPHA_SIZE, SDL_GL_BUFFER_SIZE, SDL_GL_DEPTH_SIZE }; + + char *desc[] = { "Red size: %d bits\n", "Blue size: %d bits\n", "Green size: %d bits\n", + "Alpha size: %d bits\n", "Color buffer size: %d bits\n", + "Depth bufer size: %d bits\n" }; + + nAttr = sizeof(attr) / sizeof(int); + + for (i = 0; i < nAttr; i++) { + + int value; + SDL_GL_GetAttribute (attr[i], &value); + printf (desc[i], value); + } +} + +static void createSurface (int fullscreen) +{ + Uint32 flags = 0; + + flags = SDL_OPENGL; + if (fullscreen) + flags |= SDL_FULLSCREEN; + + // Create window + gScreen = SDL_SetVideoMode (640, 480, 0, flags); + if (gScreen == NULL) { + + fprintf (stderr, "Couldn't set 640x480 OpenGL video mode: %s\n", + SDL_GetError()); + SDL_Quit(); + exit(2); + } +} + +static void initGL () +{ + Atlantis_Init (); + Atlantis_Reshape (gScreen->w, gScreen->h); +} + +static void drawGL () +{ + Atlantis_Animate (); + Atlantis_Display (); +} + +static void mainLoop () +{ + SDL_Event event; + int done = 0; + int fps = 24; + int delay = 1000/fps; + int thenTicks = -1; + int nowTicks; + + while ( !done ) { + + /* Check for events */ + while ( SDL_PollEvent (&event) ) { + switch (event.type) { + + case SDL_MOUSEMOTION: + break; + case SDL_MOUSEBUTTONDOWN: + break; + case SDL_KEYDOWN: + /* Any keypress quits the app... */ + case SDL_QUIT: + done = 1; + break; + default: + break; + } + } + + // Draw at 24 hz + // This approach is not normally recommended - it is better to + // use time-based animation and run as fast as possible + drawGL (); + SDL_GL_SwapBuffers (); + + // Time how long each draw-swap-delay cycle takes + // and adjust delay to get closer to target framerate + if (thenTicks > 0) { + nowTicks = SDL_GetTicks (); + delay += (1000/fps - (nowTicks-thenTicks)); + thenTicks = nowTicks; + if (delay < 0) + delay = 1000/fps; + } + else { + thenTicks = SDL_GetTicks (); + } + + SDL_Delay (delay); + } +} + +int main(int argc, char *argv[]) +{ + // Init SDL video subsystem + if ( SDL_Init (SDL_INIT_VIDEO) < 0 ) { + + fprintf(stderr, "Couldn't initialize SDL: %s\n", + SDL_GetError()); + exit(1); + } + + // Set GL context attributes + initAttributes (); + + // Create GL context + createSurface (0); + + // Get GL context attributes + printAttributes (); + + // Init GL state + initGL (); + + // Draw, get events... + mainLoop (); + + // Cleanup + SDL_Quit(); + + return 0; +} diff --git a/Xcode/XcodeDocSet/Doxyfile b/Xcode/XcodeDocSet/Doxyfile new file mode 100644 index 000000000..34e12280e --- /dev/null +++ b/Xcode/XcodeDocSet/Doxyfile @@ -0,0 +1,1558 @@ +# Doxyfile 1.6.1 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = SDL + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = 1.2.14 + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = NO + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = YES + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = YES + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = YES + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it parses. +# With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this tag. +# The format is ext=language, where ext is a file extension, and language is one of +# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, +# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat +# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C. Note that for custom extensions you also need to set +# FILE_PATTERNS otherwise the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen to replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = YES + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penality. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will rougly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols + +SYMBOL_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = NO + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespace are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = YES + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = NO + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen +# will sort the (brief and detailed) documentation of class members so that +# constructors and destructors are listed first. If set to NO (the default) +# the constructors will appear in the respective orders defined by +# SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. +# This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO +# and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = NO + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = NO + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by +# doxygen. The layout file controls the global structure of the generated output files +# in an output format independent way. The create the layout file that represents +# doxygen's defaults, run doxygen with the -l option. You can optionally specify a +# file name after the option, if omitted DoxygenLayout.xml will be used as the name +# of the layout file. + +LAYOUT_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = YES + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = YES + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = ../../include + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 + +FILE_PATTERNS = *.c \ + *.cc \ + *.cxx \ + *.cpp \ + *.c++ \ + *.d \ + *.java \ + *.ii \ + *.ixx \ + *.ipp \ + *.i++ \ + *.inl \ + *.h \ + *.hh \ + *.hxx \ + *.hpp \ + *.h++ \ + *.idl \ + *.odl \ + *.cs \ + *.php \ + *.php3 \ + *.inc \ + *.m \ + *.mm \ + *.dox \ + *.py \ + *.f90 \ + *.f \ + *.vhd \ + *.vhdl + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. Otherwise they will link to the documentation. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = YES + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. + +GENERATE_DOCSET = YES + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs for SDL" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.libsdl.sdl + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = SDL.chm + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = "C:/Program Files/HTML Help Workshop/hhc.exe" + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = YES + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER +# are set, an additional index file will be generated that can be used as input for +# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated +# HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = doc + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. +# For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see +# Qt Help Project / Custom Filters. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's +# filter section matches. +# Qt Help Project / Filter Attributes. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to YES, a side panel will be generated +# containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +# When the SEARCHENGINE tag is enable doxygen will generate a search box +# for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using +# HTML help (GENERATE_HTMLHELP) or Qt help (GENERATE_QHP) +# there is already a search function so this one should typically +# be disabled. + +SEARCHENGINE = NO + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +# If LATEX_SOURCE_CODE is set to YES then doxygen will include +# source code with syntax highlighting in the LaTeX output. +# Note that which sources are shown also depends on other settings +# such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. This is useful +# if you want to understand what is going on. On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = YES + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = YES + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = NO + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = DECLSPEC \ + SDLCALL + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse +# the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option is superseded by the HAVE_DOT option below. This is only a +# fallback. It is recommended to install and use dot, since it yields more +# powerful graphs. + +CLASS_DIAGRAMS = NO + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = NO + +# By default doxygen will write a font called FreeSans.ttf to the output +# directory and reference it in all dot files that doxygen generates. This +# font does not include all possible unicode characters however, so when you need +# these (or just want a differently looking font) you can specify the font name +# using DOT_FONTNAME. You need need to make sure dot is able to find the font, +# which can be done by putting it in a standard location or by setting the +# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory +# containing the font. + +DOT_FONTNAME = FreeSans + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the output directory to look for the +# FreeSans.ttf font (which doxygen will put there itself). If you specify a +# different font using DOT_FONTNAME you can set the path where dot +# can find it using this tag. + +DOT_FONTPATH = + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. + +CALL_GRAPH = NO + +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. + +CALLER_GRAPH = NO + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = /Applications/Graphviz.app/Contents/MacOS + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. + +DOT_GRAPH_MAX_NODES = 67 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. + +MAX_DOT_GRAPH_DEPTH = 2 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = NO + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES diff --git a/Xcode/mkxcode.csh b/Xcode/mkxcode.csh new file mode 100755 index 000000000..caf6481cb --- /dev/null +++ b/Xcode/mkxcode.csh @@ -0,0 +1,20 @@ +#!/bin/csh + +### +## This script creates "Xcode.tar.gz" in the parent directory +### + +# remove build products +rm -rf SDL/build +rm -rf SDLTest/build + +# remove Finder info files +find . -name ".DS_Store" -exec rm "{}" ";" + +# remove user project prefs +find . -name "*.pbxuser*" -exec rm "{}" ";" +find . -name "*.mode*" -exec rm "{}" ";" +find . -name "*.perspective*" -exec rm "{}" ";" + +# create the archive +(cd .. && gnutar -zcvf Xcode.tar.gz Xcode) diff --git a/Xcode/package b/Xcode/package new file mode 100755 index 000000000..6e6b5707c --- /dev/null +++ b/Xcode/package @@ -0,0 +1,272 @@ +#! /bin/csh -ef + +set prog = `/usr/bin/basename $0` +set usage = "Usage: $prog [-f] root-dir info-file [tiff-file] [-d dest-dir] [-r resource-dir] [-traditional | -gnutar]" +set noglob + +if (-x /usr/bin/mkbom) then + set mkbom=/usr/bin/mkbom + set lsbom=/usr/bin/lsbom +else + set mkbom=/usr/etc/mkbom + set lsbom=/usr/etc/lsbom +endif + +if (-x /usr/bin/awk) then + set awk=/usr/bin/awk +else + set awk=/bin/awk +endif + +set gnutar=/usr/bin/gnutar +set tar=/usr/bin/tar +set pax=/bin/pax + +# gather parameters +if ($#argv == 0) then + echo $usage + exit(1) +endif + +while ( $#argv > 0 ) + switch ( $argv[1] ) + case -d: + if ( $?destDir ) then + echo ${prog}: dest-dir parameter already set to ${destDir}. + echo $usage + exit(1) + else if ( $#argv < 2 ) then + echo ${prog}: -d option requires destination directory. + echo $usage + exit(1) + else + set destDir = $argv[2] + shift; shift + breaksw + endif + case -f: + if ( $?rootDir ) then + echo ${prog}: root-dir parameter already set to ${rootDir}. + echo $usage + exit(1) + else if ( $#argv < 2 ) then + echo ${prog}: -f option requires package root directory. + echo $usage + exit(1) + else + set rootDir = $argv[2] + set fflag + shift; shift + breaksw + endif + case -r: + if ( $?resDir ) then + echo ${prog}: resource-dir parameter already set to ${resDir}. + echo $usage + exit(1) + else if ( $#argv < 2 ) then + echo ${prog}: -r option requires package resource directory. + echo $usage + exit(1) + else + set resDir = $argv[2] + shift; shift + breaksw + endif + case -traditional: + set usetar + unset usegnutar + unset usepax + breaksw + case -gnutar: + set usegnutar + unset usepax + unset usetar + case -B: + # We got long file names, better use bigtar instead + #set archiver = /NextAdmin/Installer.app/Resources/installer_bigtar + echo 2>&1 ${prog}: -B flag is no longer relevant. + shift + breaksw + case -*: + echo ${prog}: Unknown option: $argv[1] + echo $usage + exit(1) + case *.info: + if ( $?info ) then + echo ${prog}: info-file parameter already set to ${info}. + echo $usage + exit(1) + else + set info = "$argv[1]" + shift + breaksw + endif + case *.tiff: + if ( $?tiff ) then + echo ${prog}: tiff-file parameter already set to ${tiff}. + echo $usage + exit(1) + else + set tiff = "$argv[1]" + shift + breaksw + endif + default: + if ( $?rootDir ) then + echo ${prog}: unrecognized parameter: $argv[1] + echo $usage + exit(1) + else + set rootDir = "$argv[1]" + shift + breaksw + endif + endsw +end + +# check for mandatory parameters +if ( ! $?rootDir ) then + echo ${prog}: missing root-dir parameter. + echo $usage + exit(1) +else if ( ! $?info) then + echo ${prog}: missing info-file parameter. + echo $usage + exit(1) +endif + +# destDir gets default value if unset on command line +if ( $?destDir ) then + /bin/mkdir -p $destDir +else + set destDir = . +endif + +# derive the root name for the package from the root name of the info file +set root = `/usr/bin/basename $info .info` + +# create package directory +set pkg = ${destDir}/${root}.pkg +echo Generating Installer package $pkg ... +if ( -e $pkg ) /bin/rm -rf $pkg +/bin/mkdir -p -m 755 $pkg + +# (gnu)tar/pax and compress root directory to package archive +echo -n " creating package archive ... " +if ( $?fflag ) then + set pkgTop = ${rootDir:t} + set parent = ${rootDir:h} + if ( "$parent" == "$pkgTop" ) set parent = "." +else + set parent = $rootDir + set pkgTop = . +endif +if ( $?usetar ) then + set pkgArchive = $pkg/$root.tar.Z + (cd $parent; $tar -w $pkgTop) | /usr/bin/compress -f -c > $pkgArchive +else if ( $?usegnutar ) then + set pkgArchive = $pkg/$root.tar.gz + (cd $parent; $gnutar zcf $pkgArchive $pkgTop) +else + set pkgArchive = $pkg/$root.pax.gz + (cd $parent; $pax -w -z -x cpio $pkgTop) > $pkgArchive +endif +/bin/chmod 444 $pkgArchive +echo done. + +# copy info file to package +set pkgInfo = $pkg/$root.info +echo -n " copying ${info:t} ... " +/bin/cp $info $pkgInfo +/bin/chmod 444 $pkgInfo +echo done. + +# copy tiff file to package +if ( $?tiff ) then + set pkgTiff = $pkg/$root.tiff + echo -n " copying ${tiff:t} ... " + /bin/cp $tiff $pkgTiff + /bin/chmod 444 $pkgTiff + echo done. +endif + +# copy resources to package +if ( $?resDir ) then + echo -n " copying ${resDir:t} ... " + + # don't want to see push/pop output + pushd $resDir > /dev/null + # get lists of resources. We'll want to change + # permissions on just these things later. + set directoriesInResDir = `find . -type d` + set filesInResDir = `find . -type f` + popd > /dev/null + + # copy the resource directory contents into the package directory + foreach resFile (`ls $resDir`) + cp -r $resDir/$resFile $pkg + end + + pushd $pkg > /dev/null + # Change all directories to +r+x, except the package + # directory itself + foreach resFileItem ($directoriesInResDir) + if ( $resFileItem != "." ) then + chmod 555 $resFileItem + endif + end + # change all flat files to read only + foreach resFileItem ($filesInResDir) + chmod 444 $resFileItem + end + popd > /dev/null + + echo done. +endif + +# generate bom file +set pkgBom = $pkg/$root.bom +echo -n " generating bom file ... " +/bin/rm -f $pkgBom +if ( $?fflag ) then + $mkbom $parent $pkgBom >& /dev/null +else + $mkbom $rootDir $pkgBom >& /dev/null +endif +/bin/chmod 444 $pkgArchive +echo done. + +# generate sizes file +set pkgSizes = $pkg/$root.sizes +echo -n " generating sizes file ... " + +# compute number of files in package +set numFiles = `$lsbom -s $pkgBom | /usr/bin/wc -l` + +# compute package size when compressed +@ compressedSize = `/usr/bin/du -k -s $pkg | $awk '{print $1}'` +@ compressedSize += 3 # add 1KB each for sizes, location, status files + +@ infoSize = `/bin/ls -s $pkgInfo | $awk '{print $1}'` +@ bomSize = `/bin/ls -s $pkgBom | $awk '{print $1}'` +if ( $?tiff ) then + @ tiffSize = `/bin/ls -s $pkgTiff | $awk '{print $1}'` +else + @ tiffSize = 0 +endif + +@ installedSize = `/usr/bin/du -k -s $rootDir | $awk '{print $1}'` +@ installedSize += $infoSize + $bomSize + $tiffSize + 3 + +# echo size parameters to sizes file +echo NumFiles $numFiles > $pkgSizes +echo InstalledSize $installedSize >> $pkgSizes +echo CompressedSize $compressedSize >> $pkgSizes +echo done. +echo " ... finished generating $pkg." + +exit(0) + +# end package + diff --git a/Xcode/stationary.csh b/Xcode/stationary.csh new file mode 100755 index 000000000..ba5a38551 --- /dev/null +++ b/Xcode/stationary.csh @@ -0,0 +1,25 @@ +#!/bin/csh + +### +## This script installs the stationary +### + +sudo -v -p "Please enter the administrator password: " + +# project templates +sudo /Developer/Tools/CpMac -r "Project Stationary/SDL Application" "/Developer/ProjectBuilder Extras/Project Templates/Application/" + +sudo /Developer/Tools/CpMac -r "Project Stationary/SDL Cocoa Application" "/Developer/ProjectBuilder Extras/Project Templates/Application/" + +sudo /Developer/Tools/CpMac -r "Project Stationary/SDL Custom Cocoa Application" "/Developer/ProjectBuilder Extras/Project Templates/Application/" + +sudo /Developer/Tools/CpMac -r "Project Stationary/SDL OpenGL Application" "/Developer/ProjectBuilder Extras/Project Templates/Application/" + + +# target templates +sudo mkdir -p "/Developer/ProjectBuilder Extras/Target Templates/SDL" + +sudo /Developer/Tools/CpMac -r "Project Stationary/Application.trgttmpl" "/Developer/ProjectBuilder Extras/Target Templates/SDL" + + + diff --git a/Xcode/uninstall.csh b/Xcode/uninstall.csh new file mode 100755 index 000000000..aab8d790f --- /dev/null +++ b/Xcode/uninstall.csh @@ -0,0 +1,32 @@ +#!/bin/csh + +### +## This script removes the Developer SDL package +### + +setenv HOME_DIR ~ + +sudo -v -p "Enter administrator password to remove SDL: " + +sudo rm -rf "$HOME_DIR/Library/Frameworks/SDL.framework" + +# will only remove the Frameworks dir if empty (since we put it there) +sudo rmdir "$HOME_DIR/Library/Frameworks" + +sudo rm -r "$HOME_DIR/Readme SDL Developer.txt" +sudo rm -r "/Developer/Documentation/SDL" +sudo rm -r "/Developer/Documentation/ManPages/man3/SDL"* +sudo rm -r "/Developer/ProjectBuilder Extras/Project Templates/Application/SDL Application" +sudo rm -r "/Developer/ProjectBuilder Extras/Project Templates/Application/SDL Cocoa Application" +sudo rm -r "/Developer/ProjectBuilder Extras/Project Templates/Application/SDL Custom Cocoa Application" +sudo rm -r "/Developer/ProjectBuilder Extras/Project Templates/Application/SDL OpenGL Application" +sudo rm -r "/Developer/ProjectBuilder Extras/Target Templates/SDL" +sudo rm -r "/Library/Receipts/SDL-devel.pkg" + +# rebuild apropos database +sudo /usr/libexec/makewhatis + +unsetenv HOME_DIR + + +