diff --git a/libs/libopenmpt.props b/libs/libopenmpt.props
new file mode 100644
index 0000000000000000000000000000000000000000..8825907b63e33d145b1bf5f605e1b8f80c9bb10d
--- /dev/null
+++ b/libs/libopenmpt.props
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ImportGroup Label="PropertySheets" />
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <IncludePath>$(SolutionDir)libs\libopenmpt\inc;$(IncludePath)</IncludePath>
+	<LibraryPath Condition="'$(Platform)' == 'Win32'">$(SolutionDir)libs\libopenmpt\lib\x86;$(LibraryPath)</LibraryPath>
+    <LibraryPath Condition="'$(Platform)' == 'x64'">$(SolutionDir)libs\libopenmpt\lib\x86_64;$(LibraryPath)</LibraryPath>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <Link>
+      <AdditionalDependencies>libopenmpt.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup />
+</Project>
\ No newline at end of file
diff --git a/src/doomtype.h b/src/doomtype.h
index b44e32e46ccb1391ee5d1294d41b72dd52a117eb..1afa77c9dd98ac9565a64d42ccae1ef04178b596 100644
--- a/src/doomtype.h
+++ b/src/doomtype.h
@@ -29,6 +29,12 @@
 
 /* 7.18.1.1  Exact-width integer types */
 #ifdef _MSC_VER
+// libopenmpt.h will include stdint.h later;
+// include it now so that INT8_MAX etc. don't get redefined
+#ifdef HAVE_OPENMPT
+#include <stdint.h>
+#endif
+
 #define UINT8 unsigned __int8
 #define SINT8 signed __int8
 
@@ -206,6 +212,7 @@ size_t strlcpy(char *dst, const char *src, size_t siz);
 #endif // __BYTEBOOL__
 
 /* 7.18.2.1  Limits of exact-width integer types */
+
 #ifndef INT8_MIN
 #define INT8_MIN (-128)
 #endif
diff --git a/src/sdl/Srb2SDL-vc10.vcxproj b/src/sdl/Srb2SDL-vc10.vcxproj
index 04af6a8e1a2fb35b217495d2949959f110266c0d..cb08f727ee6b047eaad2775b2c734d41512b5172 100644
--- a/src/sdl/Srb2SDL-vc10.vcxproj
+++ b/src/sdl/Srb2SDL-vc10.vcxproj
@@ -93,6 +93,7 @@
     <Import Project="..\..\libs\libpng.props" />
     <Import Project="..\..\libs\SDL2.props" />
     <Import Project="..\..\libs\SDL_mixer.props" />
+    <Import Project="..\..\libs\libopenmpt.props" />
     <Import Project="Srb2SDL.props" />
   </ImportGroup>
   <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
@@ -291,6 +292,7 @@
     <ClInclude Include="endtxt.h" />
     <ClInclude Include="hwsym_sdl.h" />
     <ClInclude Include="i_ttf.h" />
+    <ClInclude Include="load_libraries.h" />
     <ClInclude Include="ogl_sdl.h" />
     <ClInclude Include="sdlmain.h" />
   </ItemGroup>
@@ -465,6 +467,7 @@
     <ClCompile Include="i_system.c" />
     <ClCompile Include="i_ttf.c" />
     <ClCompile Include="i_video.c" />
+    <ClCompile Include="load_libraries.c" />
     <ClCompile Include="mixer_sound.c" />
     <ClCompile Include="ogl_sdl.c" />
     <ClCompile Include="SDL_main\SDL_windows_main.c" />
diff --git a/src/sdl/Srb2SDL-vc10.vcxproj.filters b/src/sdl/Srb2SDL-vc10.vcxproj.filters
index ac0b031779bbfe8cb5351cbec18a5d5465a01deb..d9d31e3bb719065ad198298b89fa1e52a9d7bbd4 100644
--- a/src/sdl/Srb2SDL-vc10.vcxproj.filters
+++ b/src/sdl/Srb2SDL-vc10.vcxproj.filters
@@ -447,6 +447,9 @@
     <ClInclude Include="sdlmain.h">
       <Filter>SDLApp</Filter>
     </ClInclude>
+    <ClInclude Include="load_libraries.h">
+      <Filter>SDLApp</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <CustomBuild Include="..\tmap.nas">
@@ -885,6 +888,9 @@
     <ClCompile Include="SDL_main\SDL_windows_main.c">
       <Filter>SDLApp</Filter>
     </ClCompile>
+    <ClCompile Include="load_libraries.c">
+      <Filter>SDLApp</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <Image Include="Srb2SDL.ico">
diff --git a/src/sdl/Srb2SDL.props b/src/sdl/Srb2SDL.props
index 260f81eed79d762e0f079810d30ea0e0d35d4dcb..b376c64b7393188d9034597e93950ebb319a163e 100644
--- a/src/sdl/Srb2SDL.props
+++ b/src/sdl/Srb2SDL.props
@@ -5,7 +5,7 @@
   <PropertyGroup />
   <ItemDefinitionGroup>
     <ClCompile>
-      <PreprocessorDefinitions>USE_WGL_SWAP;DIRECTFULLSCREEN;HAVE_SDL;HWRENDER;HW3SOUND;HAVE_FILTER;HAVE_MIXER;SDLMAIN;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions>USE_WGL_SWAP;DIRECTFULLSCREEN;HAVE_SDL;HWRENDER;HW3SOUND;HAVE_FILTER;HAVE_MIXER;HAVE_OPENMPT;SDLMAIN;%(PreprocessorDefinitions)</PreprocessorDefinitions>
     </ClCompile>
   </ItemDefinitionGroup>
   <ItemGroup />