This repository has been archived by the owner. It is now read-only.
Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Added hotplug joystick support and simplified game controller API, co…
…urtesy of Alfred Reynolds
- Loading branch information
Showing
with
4,202 additions
and 591 deletions.
- +1 −0 Makefile.in
- +6 −4 VisualC/SDL/SDL_VS2010.vcxproj
- +227 −0 VisualC/tests/testgamecontroller/testgamecontroller_VS2010.vcxproj
- +5 −0 Xcode/SDL/SDL.xcodeproj/project.pbxproj
- +202 −0 Xcode/SDLTest/SDLTest.xcodeproj/project.pbxproj
- +32 −0 Xcode/SDLTest/testgamecontroller-Info.plist
- +2 −0 include/SDL.h
- +65 −4 include/SDL_events.h
- +257 −0 include/SDL_gamecontroller.h
- +8 −0 include/SDL_hints.h
- +51 −6 include/SDL_joystick.h
- +110 −33 src/SDL.c
- +1 −1 src/events/SDL_events.c
- +2 −2 src/haptic/SDL_haptic.c
- +1 −1 src/haptic/windows/SDL_syshaptic.c
- +1,125 −0 src/joystick/SDL_gamecontroller.c
- +284 −131 src/joystick/SDL_joystick.c
- +9 −4 src/joystick/SDL_joystick_c.h
- +40 −4 src/joystick/SDL_sysjoystick.h
- 0 src/joystick/beos/SDL_bejoystick.cc
- +337 −74 src/joystick/darwin/SDL_sysjoystick.c
- +8 −1 src/joystick/darwin/SDL_sysjoystick_c.h
- 0 src/joystick/iphoneos/SDLUIAccelerationDelegate.m
- 0 src/joystick/iphoneos/SDL_sysjoystick.m
- +79 −29 src/joystick/linux/SDL_sysjoystick.c
- +995 −188 src/joystick/windows/SDL_dxjoystick.c
- +34 −2 src/joystick/windows/SDL_dxjoystick_c.h
- +4 −0 test/Makefile.in
- +205 −0 test/testgamecontroller.c
- +112 −107 test/testjoystick.c
@@ -0,0 +1,227 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
<ItemGroup Label="ProjectConfigurations"> | ||
<ProjectConfiguration Include="Debug|Win32"> | ||
<Configuration>Debug</Configuration> | ||
<Platform>Win32</Platform> | ||
</ProjectConfiguration> | ||
<ProjectConfiguration Include="Debug|x64"> | ||
<Configuration>Debug</Configuration> | ||
<Platform>x64</Platform> | ||
</ProjectConfiguration> | ||
<ProjectConfiguration Include="Release|Win32"> | ||
<Configuration>Release</Configuration> | ||
<Platform>Win32</Platform> | ||
</ProjectConfiguration> | ||
<ProjectConfiguration Include="Release|x64"> | ||
<Configuration>Release</Configuration> | ||
<Platform>x64</Platform> | ||
</ProjectConfiguration> | ||
</ItemGroup> | ||
<PropertyGroup Label="Globals"> | ||
<ProjectName>testgamecontroller</ProjectName> | ||
<RootNamespace>testgamecontroller</RootNamespace> | ||
<ProjectGuid>{55812185-D13C-4022-9C81-32E0F4A08336}</ProjectGuid> | ||
</PropertyGroup> | ||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> | ||
<ConfigurationType>Application</ConfigurationType> | ||
<UseOfMfc>false</UseOfMfc> | ||
</PropertyGroup> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration"> | ||
<ConfigurationType>Application</ConfigurationType> | ||
<UseOfMfc>false</UseOfMfc> | ||
<CharacterSet>MultiByte</CharacterSet> | ||
</PropertyGroup> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> | ||
<ConfigurationType>Application</ConfigurationType> | ||
<UseOfMfc>false</UseOfMfc> | ||
</PropertyGroup> | ||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration"> | ||
<ConfigurationType>Application</ConfigurationType> | ||
<UseOfMfc>false</UseOfMfc> | ||
</PropertyGroup> | ||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
<ImportGroup Label="ExtensionSettings"> | ||
</ImportGroup> | ||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets"> | ||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" /> | ||
</ImportGroup> | ||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets"> | ||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" /> | ||
</ImportGroup> | ||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets"> | ||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" /> | ||
</ImportGroup> | ||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets"> | ||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> | ||
<Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC70.props" /> | ||
</ImportGroup> | ||
<PropertyGroup Label="UserMacros" /> | ||
<PropertyGroup> | ||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion> | ||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</OutDir> | ||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</OutDir> | ||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(Platform)\$(Configuration)\</IntDir> | ||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(Platform)\$(Configuration)\</IntDir> | ||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental> | ||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental> | ||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</OutDir> | ||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</OutDir> | ||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(Platform)\$(Configuration)\</IntDir> | ||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(Platform)\$(Configuration)\</IntDir> | ||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental> | ||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental> | ||
</PropertyGroup> | ||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> | ||
<Midl> | ||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<MkTypLibCompatible>true</MkTypLibCompatible> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<TargetEnvironment>Win32</TargetEnvironment> | ||
</Midl> | ||
<ClCompile> | ||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> | ||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<StringPooling>true</StringPooling> | ||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> | ||
<FunctionLevelLinking>true</FunctionLevelLinking> | ||
<PrecompiledHeader> | ||
</PrecompiledHeader> | ||
<WarningLevel>Level3</WarningLevel> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<CompileAs>Default</CompileAs> | ||
</ClCompile> | ||
<ResourceCompile> | ||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<Culture>0x0409</Culture> | ||
</ResourceCompile> | ||
<Link> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<SubSystem>Windows</SubSystem> | ||
</Link> | ||
<PostBuildEvent> | ||
<Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDir)\SDL.dll"</Command> | ||
</PostBuildEvent> | ||
<PostBuildEvent> | ||
<Message>Copy SDL</Message> | ||
</PostBuildEvent> | ||
</ItemDefinitionGroup> | ||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> | ||
<Midl> | ||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<MkTypLibCompatible>true</MkTypLibCompatible> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
</Midl> | ||
<ClCompile> | ||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> | ||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<StringPooling>true</StringPooling> | ||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> | ||
<FunctionLevelLinking>true</FunctionLevelLinking> | ||
<PrecompiledHeader> | ||
</PrecompiledHeader> | ||
<WarningLevel>Level3</WarningLevel> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<CompileAs>Default</CompileAs> | ||
</ClCompile> | ||
<ResourceCompile> | ||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<Culture>0x0409</Culture> | ||
</ResourceCompile> | ||
<Link> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<SubSystem>Windows</SubSystem> | ||
</Link> | ||
<PostBuildEvent> | ||
<Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDir)\SDL.dll"</Command> | ||
</PostBuildEvent> | ||
<PostBuildEvent> | ||
<Message>Copy SDL</Message> | ||
</PostBuildEvent> | ||
</ItemDefinitionGroup> | ||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> | ||
<Midl> | ||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<MkTypLibCompatible>true</MkTypLibCompatible> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<TargetEnvironment>Win32</TargetEnvironment> | ||
</Midl> | ||
<ClCompile> | ||
<Optimization>Disabled</Optimization> | ||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> | ||
<PrecompiledHeader> | ||
</PrecompiledHeader> | ||
<WarningLevel>Level3</WarningLevel> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<DebugInformationFormat>EditAndContinue</DebugInformationFormat> | ||
<CompileAs>Default</CompileAs> | ||
</ClCompile> | ||
<ResourceCompile> | ||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<Culture>0x0409</Culture> | ||
</ResourceCompile> | ||
<Link> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<GenerateDebugInformation>true</GenerateDebugInformation> | ||
<SubSystem>Windows</SubSystem> | ||
</Link> | ||
<PostBuildEvent> | ||
<Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDir)\SDL.dll"</Command> | ||
</PostBuildEvent> | ||
<PostBuildEvent> | ||
<Message>Copy SDL</Message> | ||
</PostBuildEvent> | ||
</ItemDefinitionGroup> | ||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> | ||
<Midl> | ||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<MkTypLibCompatible>true</MkTypLibCompatible> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
</Midl> | ||
<ClCompile> | ||
<Optimization>Disabled</Optimization> | ||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> | ||
<PrecompiledHeader> | ||
</PrecompiledHeader> | ||
<WarningLevel>Level3</WarningLevel> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> | ||
<CompileAs>Default</CompileAs> | ||
</ClCompile> | ||
<ResourceCompile> | ||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
<Culture>0x0409</Culture> | ||
</ResourceCompile> | ||
<Link> | ||
<SuppressStartupBanner>true</SuppressStartupBanner> | ||
<GenerateDebugInformation>true</GenerateDebugInformation> | ||
<SubSystem>Windows</SubSystem> | ||
</Link> | ||
<PostBuildEvent> | ||
<Command>copy "$(SolutionDir)\SDL\$(Platform)\$(Configuration)\SDL.dll" "$(TargetDir)\SDL.dll"</Command> | ||
</PostBuildEvent> | ||
<PostBuildEvent> | ||
<Message>Copy SDL</Message> | ||
</PostBuildEvent> | ||
</ItemDefinitionGroup> | ||
<ItemGroup> | ||
<Library Include="..\..\Sdl\$(Platform)\$(Configuration)\SDL.lib" /> | ||
<Library Include="..\..\SDLmain\$(Platform)\$(Configuration)\SDLmain.lib" /> | ||
</ItemGroup> | ||
<ItemGroup> | ||
<ClCompile Include="..\..\..\test\testgamecontroller.c" /> | ||
</ItemGroup> | ||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
<ImportGroup Label="ExtensionTargets"> | ||
</ImportGroup> | ||
</Project> |
Oops, something went wrong.