diff --git a/stepmania/src/RageFileDriverDeflate.cpp b/stepmania/src/RageFileDriverDeflate.cpp
index 5739b99e52..4dfeeacdf9 100644
--- a/stepmania/src/RageFileDriverDeflate.cpp
+++ b/stepmania/src/RageFileDriverDeflate.cpp
@@ -7,7 +7,7 @@
#if defined(_WINDOWS) || defined(_XBOX)
#include "zlib/zlib.h"
-#if defined(_MSC_VER)
+#if defined(_MSC_VER) && !defined(_XBOX)
#pragma comment(lib, "zlib/zdll.lib")
#endif
#elif defined(MACOSX)
diff --git a/stepmania/src/StepManiaXbox-2003.sln b/stepmania/src/StepManiaXbox-2003.sln
index be8c825d24..cf75305418 100644
--- a/stepmania/src/StepManiaXbox-2003.sln
+++ b/stepmania/src/StepManiaXbox-2003.sln
@@ -1,6 +1,8 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "StepMania", "StepManiaXbox-2003.vcproj", "{670745A6-106B-420D-A2A9-D4F89A23986E}"
ProjectSection(ProjectDependencies) = postProject
+ {15A6313B-3206-4847-87A2-62255F0B3837} = {15A6313B-3206-4847-87A2-62255F0B3837}
+ {00C33C79-1140-47B0-838B-109A61950513} = {00C33C79-1140-47B0-838B-109A61950513}
{CA22B79A-E8A9-4BFB-A297-42231F2213F2} = {CA22B79A-E8A9-4BFB-A297-42231F2213F2}
EndProjectSection
EndProject
@@ -8,6 +10,15 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xboxmad", "mad-0.15.1b\xbox
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtomcrypt", "libtomcrypt\libtomcryptXbox-net2003.vcproj", "{15A6313B-3206-4847-87A2-62255F0B3837}"
+ ProjectSection(ProjectDependencies) = postProject
+ {00C33C79-1140-47B0-838B-109A61950513} = {00C33C79-1140-47B0-838B-109A61950513}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtommath", "libtommath\libtommathXbox-net2003.vcproj", "{00C33C79-1140-47B0-838B-109A61950513}"
+ ProjectSection(ProjectDependencies) = postProject
+ EndProjectSection
+EndProject
Global
GlobalSection(DPCodeReviewSolutionGUID) = preSolution
DPCodeReviewSolutionGUID = {00000000-0000-0000-0000-000000000000}
@@ -25,6 +36,14 @@ Global
{CA22B79A-E8A9-4BFB-A297-42231F2213F2}.Debug Xbox.Build.0 = Debug|Xbox
{CA22B79A-E8A9-4BFB-A297-42231F2213F2}.Release Xbox.ActiveCfg = Release|Xbox
{CA22B79A-E8A9-4BFB-A297-42231F2213F2}.Release Xbox.Build.0 = Release|Xbox
+ {15A6313B-3206-4847-87A2-62255F0B3837}.Debug Xbox.ActiveCfg = Debug|Xbox
+ {15A6313B-3206-4847-87A2-62255F0B3837}.Debug Xbox.Build.0 = Debug|Xbox
+ {15A6313B-3206-4847-87A2-62255F0B3837}.Release Xbox.ActiveCfg = Release|Xbox
+ {15A6313B-3206-4847-87A2-62255F0B3837}.Release Xbox.Build.0 = Release|Xbox
+ {00C33C79-1140-47B0-838B-109A61950513}.Debug Xbox.ActiveCfg = Debug|Xbox
+ {00C33C79-1140-47B0-838B-109A61950513}.Debug Xbox.Build.0 = Debug|Xbox
+ {00C33C79-1140-47B0-838B-109A61950513}.Release Xbox.ActiveCfg = Release|Xbox
+ {00C33C79-1140-47B0-838B-109A61950513}.Release Xbox.Build.0 = Release|Xbox
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
DPBuild = 5
diff --git a/stepmania/src/StepManiaXbox-2003.vcproj b/stepmania/src/StepManiaXbox-2003.vcproj
index ab27508947..e192faa971 100644
--- a/stepmania/src/StepManiaXbox-2003.vcproj
+++ b/stepmania/src/StepManiaXbox-2003.vcproj
@@ -7,87 +7,10 @@
SccLocalPath=""
Keyword="MFCProj">
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -157,90 +80,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
TitleImage=".\archutils\Xbox\smicon.XBX"
SaveGameImage=".\archutils\Xbox\saveblue.XBX"/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
@@ -478,13 +319,7 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
RelativePath="ScreenMiniMenu.cpp">
-
-
-
-
+ RelativePath=".\ScreenMiniMenu.h">
@@ -856,6 +691,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -961,6 +802,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -1009,12 +856,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
-
-
@@ -1063,6 +904,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -1147,6 +994,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -1195,6 +1048,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -1326,18 +1185,21 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
-
-
+
+
+
+
+
+
@@ -1366,12 +1228,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
-
-
@@ -1390,9 +1246,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
+
+
@@ -1575,24 +1431,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
Filter="">
-
-
-
-
-
-
-
-
-
-
@@ -1832,6 +1670,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
@@ -1941,12 +1785,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
-
-
@@ -1971,12 +1809,6 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
-
-
-
-
@@ -2257,24 +2089,48 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -2293,6 +2149,12 @@ cl /Zl /nologo /c verstub.cpp /Fo$(IntDir)\
+
+
+
+
diff --git a/stepmania/src/archutils/Win32/arch_setup.h b/stepmania/src/archutils/Win32/arch_setup.h
index 78279b3566..597c4b27c5 100644
--- a/stepmania/src/archutils/Win32/arch_setup.h
+++ b/stepmania/src/archutils/Win32/arch_setup.h
@@ -6,7 +6,9 @@
#define HAVE_THEORA
#endif
+#if !defined(XBOX)
#define SUPPORT_OPENGL
+#endif
#define SUPPORT_D3D
#if defined(__MINGW32__)
diff --git a/stepmania/src/libtomcrypt/libtomcryptXbox-net2003.vcproj b/stepmania/src/libtomcrypt/libtomcryptXbox-net2003.vcproj
new file mode 100644
index 0000000000..79ec4fbac3
--- /dev/null
+++ b/stepmania/src/libtomcrypt/libtomcryptXbox-net2003.vcproj
@@ -0,0 +1,503 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/stepmania/src/libtommath/libtommathXbox-net2003.vcproj b/stepmania/src/libtommath/libtommathXbox-net2003.vcproj
new file mode 100644
index 0000000000..43b90a1ec4
--- /dev/null
+++ b/stepmania/src/libtommath/libtommathXbox-net2003.vcproj
@@ -0,0 +1,449 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/stepmania/src/zlib/xboxzlib.lib b/stepmania/src/zlib/xboxzlib.lib
new file mode 100644
index 0000000000..a6eb295360
Binary files /dev/null and b/stepmania/src/zlib/xboxzlib.lib differ