浏览代码

Windows phone related fix, remove VC6 & VS2010 support, and update readme.txt.

louyihua 8 年之前
父节点
当前提交
42c3490ca3
共有 49 个文件被更改,包括 1735 次插入1480 次删除
  1. 6 0
      .gitignore
  2. 12 0
      AUTHORS.txt
  3. 0 21
      CREDITS.txt
  4. 21 5
      README.txt
  5. 23 35
      common.h
  6. 1 1
      global.c
  7. 2 2
      input.c
  8. 25 6
      main.c
  9. 0 154
      sdlpal.cproj
  10. 0 584
      sdlpal.dsp
  11. 1 0
      sound.c
  12. 9 0
      util.h
  13. 二进制
      winphone/Assets/AlignmentGrid.png
  14. 二进制
      winphone/Assets/ApplicationIcon.png
  15. 二进制
      winphone/Assets/Tiles/FlipCycleTileLarge.png
  16. 二进制
      winphone/Assets/Tiles/FlipCycleTileMedium.png
  17. 二进制
      winphone/Assets/Tiles/FlipCycleTileSmall.png
  18. 二进制
      winphone/Assets/Tiles/IconicTileMediumLarge.png
  19. 二进制
      winphone/Assets/Tiles/IconicTileSmall.png
  20. 46 24
      winphone/SDLPal.sln
  21. 0 329
      winphone/SDLPal.vcxproj
  22. 0 227
      winphone/SDLPal.vcxproj.filters
  23. 0 0
      winphone/SDLPal/Assets/Data/README.txt
  24. 二进制
      winphone/SDLPal/Assets/Logo.scale-100.png
  25. 二进制
      winphone/SDLPal/Assets/Logo.scale-140.png
  26. 二进制
      winphone/SDLPal/Assets/Logo.scale-240.png
  27. 二进制
      winphone/SDLPal/Assets/SmallLogo.scale-100.png
  28. 二进制
      winphone/SDLPal/Assets/SmallLogo.scale-140.png
  29. 二进制
      winphone/SDLPal/Assets/SmallLogo.scale-240.png
  30. 二进制
      winphone/SDLPal/Assets/SplashScreen.scale-100.png
  31. 二进制
      winphone/SDLPal/Assets/SplashScreen.scale-140.png
  32. 二进制
      winphone/SDLPal/Assets/SplashScreen.scale-240.png
  33. 二进制
      winphone/SDLPal/Assets/Square71x71Logo.scale-100.png
  34. 二进制
      winphone/SDLPal/Assets/Square71x71Logo.scale-140.png
  35. 二进制
      winphone/SDLPal/Assets/Square71x71Logo.scale-240.png
  36. 二进制
      winphone/SDLPal/Assets/StoreLogo.scale-100.png
  37. 二进制
      winphone/SDLPal/Assets/StoreLogo.scale-140.png
  38. 二进制
      winphone/SDLPal/Assets/StoreLogo.scale-240.png
  39. 二进制
      winphone/SDLPal/Assets/WideLogo.scale-100.png
  40. 二进制
      winphone/SDLPal/Assets/WideLogo.scale-140.png
  41. 二进制
      winphone/SDLPal/Assets/WideLogo.scale-240.png
  42. 29 0
      winphone/SDLPal/Package.appxmanifest
  43. 294 0
      winphone/SDLPal/SDLPal.vcxproj
  44. 217 0
      winphone/SDLPal/SDLPal.vcxproj.filters
  45. 68 0
      winphone/SDLPal/WinPhoneUtil.cpp
  46. 347 0
      winphone/SDLPalLib/SDLPalLib.vcxproj
  47. 634 0
      winphone/SDLPalLib/SDLPalLib.vcxproj.filters
  48. 0 42
      winphone/WMAppManifest.xml
  49. 0 50
      winphone/WinPhoneUtil.cpp

+ 6 - 0
.gitignore

@@ -210,3 +210,9 @@ FakesAssemblies/
 GeneratedArtifacts/
 GeneratedArtifacts/
 _Pvt_Extensions/
 _Pvt_Extensions/
 ModelManifest.xml
 ModelManifest.xml
+
+# Windows Phone associated file
+winphone/SDLPal/Assets/Data/*
+!winphone/SDLPal/Assets/Data/README.txt
+winphone/SDL2/*
+!winphone/SDL2/README.txt

+ 12 - 0
AUTHORS.txt

@@ -0,0 +1,12 @@
+ADDITIONAL AUTHORS
+------------------
+palxex <palxex.ys168.com>
+louyihua <louyihua@21cn.com>
+Öлª´óÊ¥
+
+
+SPECIAL THANKS
+--------------
+
+Thanks to Kovu Wu and Shikon for their contribution in Japanese
+language proofreading.

+ 0 - 21
CREDITS.txt

@@ -1,21 +0,0 @@
-SPECIAL THANKS
---------------
-
-Many of the ideas of this program are based on documents from PAL
-Research Project (http://code.google.com/p/palresearch).
-
-Portions of the code are based on the work done by Baldur and louyihua.
-
-getopt.c file is based on source code in OpenBSD.
-
-This program made extensive use of the following libraries:
-
-SDL (http://www.libsdl.org/)
-Adplug (http://adplug.sourceforge.net/)
-SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/)
-libmad (http://www.underbit.com/products/mad/)
-
-OTHER THANKS
-------------
-And thanks to Kovu Wu and Shikon for their contribution in Japanese
-language proofreading.

+ 21 - 5
README.txt

@@ -8,14 +8,30 @@ SDLPAL is an SDL-based reimplementation of the classic Chinese-language RPG
 LICENSE
 LICENSE
 =======
 =======
 
 
-SDLPAL is Copyrighted (c) 2009-2015 Wei Mingzhi <whistler_wmz@users.sf.net>.
+SDLPAL is originally created by Wei Mingzhi from 2009.
+Copyright (c) 2009-2011 Wei Mingzhi <whistler_wmz@users.sf.net>.
+Copyright (c) 2011-2015 SDLPAL development team.
 All rights reserved.
 All rights reserved.
 
 
 SDLPAL is distributed under the terms of GNU General Public License, version 3
 SDLPAL is distributed under the terms of GNU General Public License, version 3
 (or any later version) as published by the Free Software Foundation. See
 (or any later version) as published by the Free Software Foundation. See
 gpl.txt for details.
 gpl.txt for details.
 
 
-Also see credits.txt for additional credits.
+Many of the ideas of this program are based on documents from PAL
+Research Project (https://github.com/palxex/palresearch), and portions of the
+code are based on the work done by Baldur and louyihua.
+
+The getopt.c file is based on source code in OpenBSD.
+
+This program made extensive use of the following libraries:
+
+SDL (http://www.libsdl.org/)
+Adplug (http://adplug.sourceforge.net/)
+SDL_mixer (http://www.libsdl.org/projects/SDL_mixer/)
+libmad (http://www.underbit.com/products/mad/)
+libogg & libvorbis (http://www.vorbis.com/)
+
+Also see authors.txt for additional authors.
 
 
 This program does NOT include any code or data files of the original game,
 This program does NOT include any code or data files of the original game,
 which is proprietary and copyrighted by SoftStar Inc.
 which is proprietary and copyrighted by SoftStar Inc.
@@ -26,9 +42,9 @@ COMPILE UNDER WINDOWS
 
 
 The following compilers/IDEs are supported under Windows:
 The following compilers/IDEs are supported under Windows:
 
 
-1) Microsoft Visual Studio 2013 or higher
-2) Dev-C++ 4.9.9.2
-3) Open Watcom 1.7
+1) Microsoft Visual Studio 2013 or higher (official)
+2) Dev-C++ 4.9.9.2 (unofficial)
+3) Open Watcom 1.7 (unofficial)
 
 
 To compile, open the respective project file (sdlpal.sln, sdlpal.dev, or
 To compile, open the respective project file (sdlpal.sln, sdlpal.dev, or
 sdlpal.wpj). You need to have SDL 2.0 development files installed.
 sdlpal.wpj). You need to have SDL 2.0 development files installed.

+ 23 - 35
common.h

@@ -30,6 +30,10 @@ extern "C"
 {
 {
 #endif
 #endif
 
 
+#if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_WARNINGS)
+#define _CRT_SECURE_NO_WARNINGS
+#endif
+
 #include <wchar.h>
 #include <wchar.h>
 #include <stdio.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdlib.h>
@@ -128,41 +132,27 @@ extern "C"
 #elif defined (__WINPHONE__)
 #elif defined (__WINPHONE__)
 
 
 #define PAL_PREFIX            "Assets\\Data\\"
 #define PAL_PREFIX            "Assets\\Data\\"
-#define PAL_SAVE_PREFIX       "" // ???
+#define PAL_SAVE_PREFIX       UTIL_WP_SavePath()
 #define PAL_HAS_TOUCH         1
 #define PAL_HAS_TOUCH         1
-#include <stdio.h>
-#ifdef __cplusplus
-#include <cstdio>
-#endif
-
-FILE *MY_fopen(const char *path, const char *mode);
-#define fopen MY_fopen
+#define PAL_AUDIO_DEFAULT_BUFFER_SIZE   4096
 
 
 #else
 #else
 
 
-# define PAL_HAS_JOYSTICKS     1
-
-# ifndef _WIN32_WCE
-
-#  if SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION <= 2
-#   define PAL_ALLOW_KEYREPEAT   1
-#   define PAL_HAS_SDLCD         1
-#  endif
-
-#  ifndef PAL_PREFIX
-#   define PAL_PREFIX            "./"
-#  endif
+#define PAL_HAS_JOYSTICKS     1
 
 
-#  ifndef PAL_SAVE_PREFIX
-#   define PAL_SAVE_PREFIX       "./"
-#  endif
+#if SDL_MAJOR_VERSION == 1 && SDL_MINOR_VERSION <= 2
+# define PAL_ALLOW_KEYREPEAT   1
+# define PAL_HAS_SDLCD         1
+#endif
 
 
-# endif
+#define PAL_PREFIX            "./"
+#define PAL_SAVE_PREFIX       "./"
 
 
-//# if !defined (CYGWIN) && !defined (DINGOO) && !defined (GPH)
-//#  define PAL_HAS_MP3         1
-//# endif
+#endif
 
 
+/* Default for 1024 samples */
+#ifndef PAL_AUDIO_DEFAULT_BUFFER_SIZE
+#define PAL_AUDIO_DEFAULT_BUFFER_SIZE   1024
 #endif
 #endif
 
 
 #ifndef PAL_HAS_SDLCD
 #ifndef PAL_HAS_SDLCD
@@ -185,17 +175,15 @@ FILE *MY_fopen(const char *path, const char *mode);
 
 
 #include <windows.h>
 #include <windows.h>
 
 
-#if !defined(__BORLANDC__) && !defined(_WIN32_WCE)
+#if !defined(__BORLANDC__)
 #include <io.h>
 #include <io.h>
 #endif
 #endif
 
 
-#if defined(_MSC_VER) && _MSC_VER < 1900
-#define vsnprintf _vsnprintf
-#endif
-
-#ifdef _MSC_VER
-#pragma warning (disable:4244)
-#pragma warning (disable:4996)
+#if defined(_MSC_VER)
+# if _MSC_VER < 1900
+#  define vsnprintf _vsnprintf
+# endif
+# pragma warning (disable:4244)
 #endif
 #endif
 
 
 #ifndef _LPCBYTE_DEFINED
 #ifndef _LPCBYTE_DEFINED

+ 1 - 1
global.c

@@ -79,7 +79,7 @@ PAL_InitGlobals(
    INT       iSampleRate = 44100;		// Default for 44100 Hz
    INT       iSampleRate = 44100;		// Default for 44100 Hz
    INT       iOPLSampleRate = 49716;	// Default for 49716 Hz
    INT       iOPLSampleRate = 49716;	// Default for 49716 Hz
    INT       iResampleQuality = RESAMPLER_QUALITY_MAX;	// Default to maximum quality
    INT       iResampleQuality = RESAMPLER_QUALITY_MAX;	// Default to maximum quality
-   INT       iAudioBufferSize = 1024;	// Default for 1024 samples
+   INT       iAudioBufferSize = PAL_AUDIO_DEFAULT_BUFFER_SIZE;
    INT       iVolume = 100;				// Default for 100%
    INT       iVolume = 100;				// Default for 100%
    MUSICTYPE eMusicType = g_fUseMidi ? MUSIC_MIDI : MUSIC_RIX;
    MUSICTYPE eMusicType = g_fUseMidi ? MUSIC_MIDI : MUSIC_RIX;
    MUSICTYPE eCDType = PAL_HAS_SDLCD ? MUSIC_SDLCD : MUSIC_OGG;
    MUSICTYPE eCDType = PAL_HAS_SDLCD ? MUSIC_SDLCD : MUSIC_OGG;

+ 2 - 2
input.c

@@ -680,7 +680,7 @@ PAL_JoystickEventFilter(
 #endif
 #endif
 }
 }
 
 
-#ifdef PAL_HAS_TOUCH
+#if PAL_HAS_TOUCH
 
 
 #define  TOUCH_NONE     0
 #define  TOUCH_NONE     0
 #define    TOUCH_UP      1
 #define    TOUCH_UP      1
@@ -841,7 +841,7 @@ PAL_TouchEventFilter(
 
 
 --*/
 --*/
 {
 {
-#ifdef PAL_HAS_TOUCH
+#if PAL_HAS_TOUCH
    static SDL_TouchID finger1 = -1, finger2 = -1;
    static SDL_TouchID finger1 = -1, finger2 = -1;
    static int prev_touch1 = TOUCH_NONE;
    static int prev_touch1 = TOUCH_NONE;
    static int prev_touch2 = TOUCH_NONE;
    static int prev_touch2 = TOUCH_NONE;

+ 25 - 6
main.c

@@ -32,6 +32,14 @@
 #include <fat.h>
 #include <fat.h>
 #endif
 #endif
 
 
+#ifdef __WINPHONE__
+#include <setjmp.h>
+
+static jmp_buf g_exit_jmp_env;
+# define LONGJMP_EXIT_CODE          0xff
+
+#endif
+
 #define BITMAPNUM_SPLASH_UP         (gpGlobals->fIsWIN95 ? 0x03 : 0x26)
 #define BITMAPNUM_SPLASH_UP         (gpGlobals->fIsWIN95 ? 0x03 : 0x26)
 #define BITMAPNUM_SPLASH_DOWN       (gpGlobals->fIsWIN95 ? 0x04 : 0x27)
 #define BITMAPNUM_SPLASH_DOWN       (gpGlobals->fIsWIN95 ? 0x04 : 0x27)
 #define SPRITENUM_SPLASH_TITLE      0x47
 #define SPRITENUM_SPLASH_TITLE      0x47
@@ -99,6 +107,12 @@ PAL_Init(
    //
    //
    // Initialize subsystems.
    // Initialize subsystems.
    //
    //
+   e = PAL_InitGlobals();
+   if (e != 0)
+   {
+	   TerminateOnError("Could not initialize global data: %d.\n", e);
+   }
+
 #ifdef GEKKO
 #ifdef GEKKO
    e = VIDEO_Init_GEKKO(wScreenWidth, wScreenHeight, fFullScreen);
    e = VIDEO_Init_GEKKO(wScreenWidth, wScreenHeight, fFullScreen);
 #else
 #else
@@ -111,12 +125,6 @@ PAL_Init(
 
 
    SDL_WM_SetCaption("Loading...", NULL);
    SDL_WM_SetCaption("Loading...", NULL);
 
 
-   e = PAL_InitGlobals();
-   if (e != 0)
-   {
-      TerminateOnError("Could not initialize global data: %d.\n", e);
-   }
-
    e = PAL_InitFont(gpGlobals->fUseEmbeddedFonts);
    e = PAL_InitFont(gpGlobals->fUseEmbeddedFonts);
    if (e != 0)
    if (e != 0)
    {
    {
@@ -192,6 +200,9 @@ PAL_Shutdown(
 	chdir("/usr/gp2x");
 	chdir("/usr/gp2x");
 	execl("./gp2xmenu", "./gp2xmenu", NULL);
 	execl("./gp2xmenu", "./gp2xmenu", NULL);
 #endif
 #endif
+#ifdef __WINPHONE__
+	longjmp(g_exit_jmp_env, LONGJMP_EXIT_CODE);
+#endif
 }
 }
 
 
 VOID
 VOID
@@ -632,6 +643,14 @@ main(
 #endif
 #endif
    PAL_Init(wScreenWidth, wScreenHeight, fFullScreen);
    PAL_Init(wScreenWidth, wScreenHeight, fFullScreen);
 
 
+#ifdef __WINPHONE__
+   //
+   // In windows phone, calling exit(0) directly will cause an abnormal exit.
+   // By using setjmp/longjmp to avoid this.
+   //
+   if (setjmp(g_exit_jmp_env) == LONGJMP_EXIT_CODE) return 0;
+#endif
+
    //
    //
    // Show the trademark screen and splash screen
    // Show the trademark screen and splash screen
    //
    //

+ 0 - 154
sdlpal.cproj

@@ -1,154 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>8.0.50727</ProductVersion>
-    <ProjectGuid>{97ADEBD0-5333-4E9D-A9F7-6F3F226ECA5C}</ProjectGuid>
-    <Compiler>
-      <Compiler ctype="GccCompiler" />
-    </Compiler>
-    <Language>C</Language>
-    <Target>Bin</Target>
-    <SchemaVersion>2.0</SchemaVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <OutputPath>bin\Debug</OutputPath>
-    <DefineSymbols>DEBUG MONODEVELOP</DefineSymbols>
-    <SourceDirectory>.</SourceDirectory>
-    <OutputName>sdlpal</OutputName>
-    <CompileTarget>Bin</CompileTarget>
-    <ExtraLinkerArguments>`sdl-config --libs` -lm</ExtraLinkerArguments>
-    <ExtraCompilerArguments>`sdl-config --cflags`</ExtraCompilerArguments>
-    <Libs>
-      <Libs>
-        <Lib>stdc++</Lib>
-      </Libs>
-    </Libs>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\Release</OutputPath>
-    <DefineSymbols>MONODEVELOP</DefineSymbols>
-    <SourceDirectory>.</SourceDirectory>
-    <OptimizationLevel>3</OptimizationLevel>
-    <OutputName>sdlpal</OutputName>
-    <CompileTarget>Bin</CompileTarget>
-    <ExtraLinkerArguments>`sdl-config --libs` -lm</ExtraLinkerArguments>
-    <ExtraCompilerArguments>`sdl-config --cflags`</ExtraCompilerArguments>
-    <Libs>
-      <Libs>
-        <Lib>stdc++</Lib>
-      </Libs>
-    </Libs>
-  </PropertyGroup>
-  <ItemGroup>
-    <None Include="ascii.h" />
-    <None Include="battle.h" />
-    <None Include="common.h" />
-    <None Include="ending.h" />
-    <None Include="fight.h" />
-    <None Include="font.h" />
-    <None Include="game.h" />
-    <None Include="getopt.h" />
-    <None Include="global.h" />
-    <None Include="input.h" />
-    <None Include="itemmenu.h" />
-    <None Include="magicmenu.h" />
-    <None Include="main.h" />
-    <None Include="map.h" />
-    <None Include="palcommon.h" />
-    <None Include="palette.h" />
-    <None Include="play.h" />
-    <None Include="res.h" />
-    <None Include="rixplay.h" />
-    <None Include="rngplay.h" />
-    <None Include="scene.h" />
-    <None Include="script.h" />
-    <None Include="sound.h" />
-    <None Include="text.h" />
-    <None Include="ui.h" />
-    <None Include="uibattle.h" />
-    <None Include="uigame.h" />
-    <None Include="util.h" />
-    <None Include="video.h" />
-    <None Include="adplug\binfile.h" />
-    <None Include="adplug\binio.h" />
-    <None Include="adplug\demuopl.h" />
-    <None Include="adplug\dosbox_opl.h" />
-    <None Include="adplug\emuopl.h" />
-    <None Include="adplug\fmopl.h" />
-    <None Include="adplug\fprovide.h" />
-    <None Include="adplug\opl.h" />
-    <None Include="adplug\player.h" />
-    <None Include="adplug\rix.h" />
-    <None Include="libmad\bit.h" />
-    <None Include="libmad\D.dat" />
-    <None Include="libmad\decoder.h" />
-    <None Include="libmad\fixed.h" />
-    <None Include="libmad\frame.h" />
-    <None Include="libmad\huffman.h" />
-    <None Include="libmad\imdct_s.dat" />
-    <None Include="libmad\layer3.h" />
-    <None Include="libmad\layer12.h" />
-    <None Include="libmad\libmad_config.h" />
-    <None Include="libmad\libmad_global.h" />
-    <None Include="libmad\mad.h" />
-    <None Include="libmad\qc_table.dat" />
-    <None Include="libmad\rq_table.dat" />
-    <None Include="libmad\sf_table.dat" />
-    <None Include="libmad\stream.h" />
-    <None Include="libmad\synth.h" />
-    <None Include="libmad\timer.h" />
-    <None Include="libmad\music_mad.h" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="battle.c" />
-    <Compile Include="ending.c" />
-    <Compile Include="fight.c" />
-    <Compile Include="font.c" />
-    <Compile Include="game.c" />
-    <Compile Include="getopt.c" />
-    <Compile Include="global.c" />
-    <Compile Include="input.c" />
-    <Compile Include="itemmenu.c" />
-    <Compile Include="magicmenu.c" />
-    <Compile Include="main.c" />
-    <Compile Include="map.c" />
-    <Compile Include="palcommon.c" />
-    <Compile Include="palette.c" />
-    <Compile Include="play.c" />
-    <Compile Include="res.c" />
-    <Compile Include="rngplay.c" />
-    <Compile Include="scene.c" />
-    <Compile Include="script.c" />
-    <Compile Include="sound.c" />
-    <Compile Include="text.c" />
-    <Compile Include="ui.c" />
-    <Compile Include="uibattle.c" />
-    <Compile Include="uigame.c" />
-    <Compile Include="util.c" />
-    <Compile Include="video.c" />
-    <Compile Include="yj1.c" />
-    <Compile Include="rixplay.cpp" />
-    <Compile Include="adplug\binfile.cpp" />
-    <Compile Include="adplug\binio.cpp" />
-    <Compile Include="adplug\dosbox_opl.cpp" />
-    <Compile Include="adplug\emuopl.cpp" />
-    <Compile Include="adplug\fmopl.c" />
-    <Compile Include="adplug\fprovide.cpp" />
-    <Compile Include="adplug\player.cpp" />
-    <Compile Include="adplug\rix.cpp" />
-    <Compile Include="libmad\bit.c" />
-    <Compile Include="libmad\decoder.c" />
-    <Compile Include="libmad\fixed.c" />
-    <Compile Include="libmad\frame.c" />
-    <Compile Include="libmad\huffman.c" />
-    <Compile Include="libmad\layer3.c" />
-    <Compile Include="libmad\layer12.c" />
-    <Compile Include="libmad\stream.c" />
-    <Compile Include="libmad\synth.c" />
-    <Compile Include="libmad\timer.c" />
-    <Compile Include="libmad\music_mad.c" />
-  </ItemGroup>
-</Project>

+ 0 - 584
sdlpal.dsp

@@ -1,584 +0,0 @@
-# Microsoft Developer Studio Project File - Name="sdlpal" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Application" 0x0101
-
-CFG=sdlpal - Win32 Release
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "sdlpal.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "sdlpal.mak" CFG="sdlpal - Win32 Release"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "sdlpal - Win32 Release" (based on "Win32 (x86) Application")
-!MESSAGE "sdlpal - Win32 Debug" (based on "Win32 (x86) Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "sdlpal - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /GX /Zi /O2 /Op /I "d:\sdl\include" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /YX /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x804 /d "NDEBUG"
-# ADD RSC /l 0x804 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib sdl.lib sdlmain.lib /nologo /subsystem:windows /machine:I386 /libpath:"d:\sdl\lib"
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "sdlpal - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /GX /ZI /Od /I "d:\sdl\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /FR /YX /FD /GZ /Zm200 /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x804 /d "_DEBUG"
-# ADD RSC /l 0x804 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib winmm.lib sdl.lib sdlmain.lib /nologo /subsystem:windows /debug /machine:I386 /pdbtype:sept /libpath:"d:\sdl\lib\\"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "sdlpal - Win32 Release"
-# Name "sdlpal - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\battle.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ending.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\fight.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\font.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\game.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\getopt.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\global.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\input.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\itemmenu.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\magicmenu.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\main.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\map.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\midi.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\palcommon.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\palette.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\play.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\res.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\rixplay.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\rngplay.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\scene.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\script.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\sound.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\text.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\ui.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\uibattle.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\uigame.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\util.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\video.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\yj1.c
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\ascii.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\battle.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\big5font.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\common.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\ending.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\fight.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\font.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\game.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\gbfont.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\getopt.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\global.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\input.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\itemmenu.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\magicmenu.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\main.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\map.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\midi.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\palcommon.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\palette.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\play.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\res.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\rixplay.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\rngplay.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\scene.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\script.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\sound.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\text.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\ui.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\uibattle.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\uigame.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\util.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\video.h
-# End Source File
-# End Group
-# Begin Group "adplug"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\adplug\binfile.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\binfile.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\binio.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\binio.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\demuopl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\dosbox_opl.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\dosbox_opl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\emuopl.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\emuopl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\fmopl.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\fmopl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\fprovide.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\fprovide.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\opl.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\player.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\player.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\rix.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\rix.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\surroundopl.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\adplug\surroundopl.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\sdlpal.ico
-# End Source File
-# Begin Source File
-
-SOURCE=.\sdlpal.rc
-# End Source File
-# End Group
-# Begin Group "native_midi"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\native_midi\native_midi.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\native_midi\native_midi_common.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\native_midi\native_midi_common.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\native_midi\native_midi_win32.c
-# End Source File
-# End Group
-# Begin Group "libmad"
-
-# PROP Default_Filter ""
-# Begin Source File
-
-SOURCE=.\libmad\bit.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\bit.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\D.dat
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\decoder.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\decoder.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\fixed.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\fixed.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\frame.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\frame.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\huffman.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\huffman.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\imdct_s.dat
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\layer12.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\layer12.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\layer3.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\layer3.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\libmad_config.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\libmad_global.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\mad.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\music_mad.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\music_mad.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\qc_table.dat
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\rq_table.dat
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\sf_table.dat
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\stream.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\stream.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\synth.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\synth.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\timer.c
-# End Source File
-# Begin Source File
-
-SOURCE=.\libmad\timer.h
-# End Source File
-# End Group
-# End Target
-# End Project

+ 1 - 0
sound.c

@@ -779,6 +779,7 @@ SOUND_CloseAudio(
 	  gSndPlayer.resampler = NULL;
 	  gSndPlayer.resampler = NULL;
    }
    }
 
 
+   SDL_mutexV(gSndPlayer.mtx);
    SDL_DestroyMutex(gSndPlayer.mtx);
    SDL_DestroyMutex(gSndPlayer.mtx);
 }
 }
 
 

+ 9 - 0
util.h

@@ -105,6 +105,15 @@ UTIL_IOS_SavePath(
     
     
 #endif
 #endif
 
 
+#ifdef __WINPHONE__
+
+LPCSTR
+UTIL_WP_SavePath(
+   VOID
+);
+
+#endif
+
 #define _PATH_LOG           PAL_PREFIX "log.txt"
 #define _PATH_LOG           PAL_PREFIX "log.txt"
 #define LOG_EMERG           0 /* system is unusable */
 #define LOG_EMERG           0 /* system is unusable */
 #define LOG_ALERT           1 /* action must be taken immediately */
 #define LOG_ALERT           1 /* action must be taken immediately */

二进制
winphone/Assets/AlignmentGrid.png


二进制
winphone/Assets/ApplicationIcon.png


二进制
winphone/Assets/Tiles/FlipCycleTileLarge.png


二进制
winphone/Assets/Tiles/FlipCycleTileMedium.png


二进制
winphone/Assets/Tiles/FlipCycleTileSmall.png


二进制
winphone/Assets/Tiles/IconicTileMediumLarge.png


二进制
winphone/Assets/Tiles/IconicTileSmall.png


+ 46 - 24
winphone/SDLPal.sln

@@ -1,40 +1,62 @@
 
 
 Microsoft Visual Studio Solution File, Format Version 12.00
 Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2013
-VisualStudioVersion = 12.0.21005.1
+# Visual Studio 14
+VisualStudioVersion = 14.0.23107.0
 MinimumVisualStudioVersion = 10.0.40219.1
 MinimumVisualStudioVersion = 10.0.40219.1
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDLPal", "SDLPal.vcxproj", "{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-WinPhone81", "SDL2\VisualC-WinRT\WinPhone81_VS2013\SDL-WinPhone81.vcxproj", "{48FADC0E-964D-4DAB-BCED-372E0AD19577}"
 EndProject
 EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDL2-WinPhone80", "SDL2\VisualC-WinRT\WinPhone80_VS2012\SDL-WinPhone80.vcxproj", "{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDLPalLib", "SDLPalLib\SDLPalLib.vcxproj", "{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "SDLPal", "SDLPal\SDLPal.vcxproj", "{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}"
 EndProject
 EndProject
 Global
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
 		Debug|ARM = Debug|ARM
 		Debug|ARM = Debug|ARM
 		Debug|Win32 = Debug|Win32
 		Debug|Win32 = Debug|Win32
+		Debug|x64 = Debug|x64
 		Release|ARM = Release|ARM
 		Release|ARM = Release|ARM
 		Release|Win32 = Release|Win32
 		Release|Win32 = Release|Win32
+		Release|x64 = Release|x64
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|ARM.ActiveCfg = Debug|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|ARM.Build.0 = Debug|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|ARM.Deploy.0 = Debug|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|Win32.ActiveCfg = Debug|Win32
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|Win32.Build.0 = Debug|Win32
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Debug|Win32.Deploy.0 = Debug|Win32
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|ARM.ActiveCfg = Release|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|ARM.Build.0 = Release|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|ARM.Deploy.0 = Release|ARM
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|Win32.ActiveCfg = Release|Win32
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|Win32.Build.0 = Release|Win32
-		{F59B48BC-5646-4F8B-90B2-4B09A9D94C5C}.Release|Win32.Deploy.0 = Release|Win32
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Debug|ARM.ActiveCfg = Debug|ARM
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Debug|ARM.Build.0 = Debug|ARM
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Debug|Win32.ActiveCfg = Debug|Win32
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Debug|Win32.Build.0 = Debug|Win32
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Release|ARM.ActiveCfg = Release|ARM
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Release|ARM.Build.0 = Release|ARM
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Release|Win32.ActiveCfg = Release|Win32
-		{33048AF1-031A-4CE6-B61E-FAD2DB832E9E}.Release|Win32.Build.0 = Release|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|ARM.ActiveCfg = Debug|ARM
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|ARM.Build.0 = Debug|ARM
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|Win32.ActiveCfg = Debug|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|Win32.Build.0 = Debug|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Debug|x64.ActiveCfg = Debug|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|ARM.ActiveCfg = Release|ARM
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|ARM.Build.0 = Release|ARM
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|Win32.ActiveCfg = Release|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|Win32.Build.0 = Release|Win32
+		{48FADC0E-964D-4DAB-BCED-372E0AD19577}.Release|x64.ActiveCfg = Release|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|ARM.ActiveCfg = Debug|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|ARM.Build.0 = Debug|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|ARM.Deploy.0 = Debug|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|Win32.ActiveCfg = Debug|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|Win32.Build.0 = Debug|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|Win32.Deploy.0 = Debug|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Debug|x64.ActiveCfg = Debug|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|ARM.ActiveCfg = Release|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|ARM.Build.0 = Release|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|ARM.Deploy.0 = Release|ARM
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|Win32.ActiveCfg = Release|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|Win32.Build.0 = Release|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|Win32.Deploy.0 = Release|Win32
+		{704D3871-2E86-42EF-A607-CBCFB7A7EBAB}.Release|x64.ActiveCfg = Release|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|ARM.ActiveCfg = Debug|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|ARM.Build.0 = Debug|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|ARM.Deploy.0 = Debug|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|Win32.ActiveCfg = Debug|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|Win32.Build.0 = Debug|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|Win32.Deploy.0 = Debug|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Debug|x64.ActiveCfg = Debug|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|ARM.ActiveCfg = Release|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|ARM.Build.0 = Release|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|ARM.Deploy.0 = Release|ARM
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|Win32.ActiveCfg = Release|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|Win32.Build.0 = Release|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|Win32.Deploy.0 = Release|Win32
+		{4C240E16-F6F6-4D60-B29B-7F7ACB4815D7}.Release|x64.ActiveCfg = Release|Win32
 	EndGlobalSection
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
 		HideSolutionNode = FALSE

+ 0 - 329
winphone/SDLPal.vcxproj

@@ -1,329 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="12.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|ARM">
-      <Configuration>Debug</Configuration>
-      <Platform>ARM</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|Win32">
-      <Configuration>Release</Configuration>
-      <Platform>Win32</Platform>
-    </ProjectConfiguration>
-    <ProjectConfiguration Include="Release|ARM">
-      <Configuration>Release</Configuration>
-      <Platform>ARM</Platform>
-    </ProjectConfiguration>
-  </ItemGroup>
-  <PropertyGroup Label="Globals">
-    <ProjectGuid>{f59b48bc-5646-4f8b-90b2-4b09a9d94c5c}</ProjectGuid>
-    <RootNamespace>SDLPal</RootNamespace>
-    <DefaultLanguage>en-US</DefaultLanguage>
-    <MinimumVisualStudioVersion>11.0</MinimumVisualStudioVersion>
-    <XapOutputs>true</XapOutputs>
-    <XapFilename>SDLPal_$(Configuration)_$(Platform).xap</XapFilename>
-    <WinMDAssembly>true</WinMDAssembly>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <PlatformToolset>v110_wp80</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <UseDebugLibraries>true</UseDebugLibraries>
-    <PlatformToolset>v110_wp80</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v110_wp80</PlatformToolset>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
-    <ConfigurationType>Application</ConfigurationType>
-    <UseDebugLibraries>false</UseDebugLibraries>
-    <WholeProgramOptimization>true</WholeProgramOptimization>
-    <PlatformToolset>v110_wp80</PlatformToolset>
-  </PropertyGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
-  <ImportGroup Label="PropertySheets">
-    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
-  </ImportGroup>
-  <PropertyGroup Label="UserMacros" />
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
-    <IncludePath>.\SDL2\include;$(IncludePath)</IncludePath>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
-    <IncludePath>.\SDL2\include;$(IncludePath)</IncludePath>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <IncludePath>.\SDL2\include;$(IncludePath)</IncludePath>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <IncludePath>.\SDL2\include;$(IncludePath)</IncludePath>
-  </PropertyGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
-    <ClCompile>
-      <PreprocessorDefinitions>PSAPI_VERSION=2;%(PreprocessorDefinitions);__WINPHONE__=1</PreprocessorDefinitions>
-      <PrecompiledHeader>NotUsing</PrecompiledHeader>
-      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
-      <AdditionalIncludeDirectories>$(ProjectDir)\SDL2\include;$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <CompileAsWinRT>false</CompileAsWinRT>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>d3d11.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
-      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
-    </Link>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
-    <ClCompile>
-      <PreprocessorDefinitions>PSAPI_VERSION=2;%(PreprocessorDefinitions);__WINPHONE__=1</PreprocessorDefinitions>
-      <PrecompiledHeader>NotUsing</PrecompiledHeader>
-      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
-      <AdditionalIncludeDirectories>$(ProjectDir)\SDL2\include;$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <CompileAsWinRT>false</CompileAsWinRT>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>d3d11.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
-      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
-    </Link>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
-    <ClCompile>
-      <PreprocessorDefinitions>PSAPI_VERSION=2;%(PreprocessorDefinitions);__WINPHONE__=1</PreprocessorDefinitions>
-      <PrecompiledHeader>NotUsing</PrecompiledHeader>
-      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
-      <AdditionalIncludeDirectories>$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <CompileAsWinRT>false</CompileAsWinRT>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>d3d11.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
-      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
-    </Link>
-  </ItemDefinitionGroup>
-  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
-    <ClCompile>
-      <PreprocessorDefinitions>PSAPI_VERSION=2;%(PreprocessorDefinitions);__WINPHONE__=1</PreprocessorDefinitions>
-      <PrecompiledHeader>NotUsing</PrecompiledHeader>
-      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
-      <AdditionalIncludeDirectories>$(ProjectDir);$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
-      <CompileAsWinRT>false</CompileAsWinRT>
-    </ClCompile>
-    <Link>
-      <AdditionalDependencies>d3d11.lib;%(AdditionalDependencies)</AdditionalDependencies>
-      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
-      <IgnoreSpecificDefaultLibraries>ole32.lib;%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
-    </Link>
-  </ItemDefinitionGroup>
-  <ItemGroup>
-    <Reference Include="platform.winmd">
-      <IsWinMDFile>true</IsWinMDFile>
-      <Private>false</Private>
-    </Reference>
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="Assets\ApplicationIcon.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\AlignmentGrid.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileLarge.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileMedium.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileSmall.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\Tiles\IconicTileMediumLarge.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-    <Image Include="Assets\Tiles\IconicTileSmall.png">
-      <DeploymentContent>true</DeploymentContent>
-    </Image>
-  </ItemGroup>
-  <ItemGroup>
-    <Xml Include="WMAppManifest.xml">
-      <SubType>Designer</SubType>
-    </Xml>
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="..\adplug\binfile.h" />
-    <ClInclude Include="..\adplug\binio.h" />
-    <ClInclude Include="..\adplug\demuopl.h" />
-    <ClInclude Include="..\adplug\dosbox_opl.h" />
-    <ClInclude Include="..\adplug\emuopl.h" />
-    <ClInclude Include="..\adplug\fmopl.h" />
-    <ClInclude Include="..\adplug\fprovide.h" />
-    <ClInclude Include="..\adplug\opl.h" />
-    <ClInclude Include="..\adplug\player.h" />
-    <ClInclude Include="..\adplug\rix.h" />
-    <ClInclude Include="..\adplug\surroundopl.h" />
-    <ClInclude Include="..\ascii.h" />
-    <ClInclude Include="..\battle.h" />
-    <ClInclude Include="..\big5font.h" />
-    <ClInclude Include="..\codepage.h" />
-    <ClInclude Include="..\common.h" />
-    <ClInclude Include="..\ending.h" />
-    <ClInclude Include="..\fight.h" />
-    <ClInclude Include="..\font.h" />
-    <ClInclude Include="..\fontglyph.h" />
-    <ClInclude Include="..\game.h" />
-    <ClInclude Include="..\gbfont.h" />
-    <ClInclude Include="..\getopt.h" />
-    <ClInclude Include="..\global.h" />
-    <ClInclude Include="..\input.h" />
-    <ClInclude Include="..\itemmenu.h" />
-    <ClInclude Include="..\magicmenu.h" />
-    <ClInclude Include="..\main.h" />
-    <ClInclude Include="..\map.h" />
-    <ClInclude Include="..\palcommon.h" />
-    <ClInclude Include="..\palette.h" />
-    <ClInclude Include="..\play.h" />
-    <ClInclude Include="..\res.h" />
-    <ClInclude Include="..\rixplay.h" />
-    <ClInclude Include="..\rngplay.h" />
-    <ClInclude Include="..\scene.h" />
-    <ClInclude Include="..\script.h" />
-    <ClInclude Include="..\sound.h" />
-    <ClInclude Include="..\text.h" />
-    <ClInclude Include="..\ui.h" />
-    <ClInclude Include="..\uibattle.h" />
-    <ClInclude Include="..\uigame.h" />
-    <ClInclude Include="..\util.h" />
-    <ClInclude Include="..\video.h" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="..\adplug\binfile.cpp" />
-    <ClCompile Include="..\adplug\binio.cpp" />
-    <ClCompile Include="..\adplug\dosbox_opl.cpp" />
-    <ClCompile Include="..\adplug\emuopl.cpp" />
-    <ClCompile Include="..\adplug\fmopl.c" />
-    <ClCompile Include="..\adplug\fprovide.cpp" />
-    <ClCompile Include="..\adplug\player.cpp" />
-    <ClCompile Include="..\adplug\rix.cpp" />
-    <ClCompile Include="..\adplug\surroundopl.cpp" />
-    <ClCompile Include="..\battle.c" />
-    <ClCompile Include="..\ending.c" />
-    <ClCompile Include="..\fight.c" />
-    <ClCompile Include="..\font.c" />
-    <ClCompile Include="..\game.c" />
-    <ClCompile Include="..\getopt.c" />
-    <ClCompile Include="..\global.c" />
-    <ClCompile Include="..\input.c" />
-    <ClCompile Include="..\itemmenu.c" />
-    <ClCompile Include="..\magicmenu.c" />
-    <ClCompile Include="..\main.c" />
-    <ClCompile Include="..\map.c" />
-    <ClCompile Include="..\palcommon.c" />
-    <ClCompile Include="..\palette.c" />
-    <ClCompile Include="..\play.c" />
-    <ClCompile Include="..\res.c" />
-    <ClCompile Include="..\rixplay.cpp" />
-    <ClCompile Include="..\rngplay.c" />
-    <ClCompile Include="..\scene.c" />
-    <ClCompile Include="..\script.c" />
-    <ClCompile Include="..\sound.c" />
-    <ClCompile Include="..\text.c" />
-    <ClCompile Include="..\ui.c" />
-    <ClCompile Include="..\uibattle.c" />
-    <ClCompile Include="..\uigame.c" />
-    <ClCompile Include="..\util.c" />
-    <ClCompile Include="..\video.c" />
-    <ClCompile Include="..\yj1.c" />
-    <ClCompile Include="SDL2\src\main\winrt\SDL_winrt_main_NonXAML.cpp">
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
-    </ClCompile>
-    <ClCompile Include="WinPhoneUtil.cpp">
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
-    </ClCompile>
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="SDL2\VisualC-WinRT\WinPhone80_VS2012\SDL-WinPhone80.vcxproj">
-      <Project>{33048af1-031a-4ce6-b61e-fad2db832e9e}</Project>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <_CustomResource Include="Assets\Data\**\*">
-      <Link>Assets\Data\%(RecursiveDir)%(FileName)%(Extension)</Link>
-      <DeploymentContent>true</DeploymentContent>
-    </_CustomResource>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="Assets\Data\ABC.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\BALL.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\DATA.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\F.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\FBP.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\FIRE.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\GOP.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\M.MSG">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\MAP.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\MGO.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\MUS.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\PAT.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\RGM.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\RNG.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\SSS.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\VOC.MKF">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\WOR16.ASC">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\wor16.fon">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-    <None Include="Assets\Data\WORD.DAT">
-      <DeploymentContent>true</DeploymentContent>
-    </None>
-  </ItemGroup>
-  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-  <Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsPhone\v$(TargetPlatformVersion)\Microsoft.Cpp.WindowsPhone.$(TargetPlatformVersion).targets" />
-  <ImportGroup Label="ExtensionTargets">
-  </ImportGroup>
-</Project>

+ 0 - 227
winphone/SDLPal.vcxproj.filters

@@ -1,227 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <ItemGroup>
-    <Filter Include="Assets">
-      <UniqueIdentifier>17b52f90-9b33-4188-8a0e-808582bbabbc</UniqueIdentifier>
-      <Extensions>ico;bmp;dlg;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;resw;resjson</Extensions>
-    </Filter>
-    <Filter Include="adplug">
-      <UniqueIdentifier>{e0154447-2329-47d7-8713-a66a8cc6b0c8}</UniqueIdentifier>
-    </Filter>
-    <Filter Include="Assets\Data">
-      <UniqueIdentifier>{b92e17f5-b5dd-48b2-924f-59695abbed55}</UniqueIdentifier>
-    </Filter>
-  </ItemGroup>
-  <ItemGroup>
-    <Image Include="Assets\ApplicationIcon.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\AlignmentGrid.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileLarge.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileMedium.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\Tiles\FlipCycleTileSmall.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\Tiles\IconicTileMediumLarge.png">
-      <Filter>Assets</Filter>
-    </Image>
-    <Image Include="Assets\Tiles\IconicTileSmall.png">
-      <Filter>Assets</Filter>
-    </Image>
-  </ItemGroup>
-  <ItemGroup>
-    <Xml Include="WMAppManifest.xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClInclude Include="..\ascii.h" />
-    <ClInclude Include="..\battle.h" />
-    <ClInclude Include="..\common.h" />
-    <ClInclude Include="..\ending.h" />
-    <ClInclude Include="..\fight.h" />
-    <ClInclude Include="..\font.h" />
-    <ClInclude Include="..\game.h" />
-    <ClInclude Include="..\getopt.h" />
-    <ClInclude Include="..\global.h" />
-    <ClInclude Include="..\input.h" />
-    <ClInclude Include="..\itemmenu.h" />
-    <ClInclude Include="..\magicmenu.h" />
-    <ClInclude Include="..\main.h" />
-    <ClInclude Include="..\map.h" />
-    <ClInclude Include="..\palcommon.h" />
-    <ClInclude Include="..\palette.h" />
-    <ClInclude Include="..\play.h" />
-    <ClInclude Include="..\res.h" />
-    <ClInclude Include="..\rixplay.h" />
-    <ClInclude Include="..\rngplay.h" />
-    <ClInclude Include="..\scene.h" />
-    <ClInclude Include="..\script.h" />
-    <ClInclude Include="..\sound.h" />
-    <ClInclude Include="..\text.h" />
-    <ClInclude Include="..\ui.h" />
-    <ClInclude Include="..\uibattle.h" />
-    <ClInclude Include="..\uigame.h" />
-    <ClInclude Include="..\util.h" />
-    <ClInclude Include="..\video.h" />
-    <ClInclude Include="..\adplug\binfile.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\binio.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\demuopl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\dosbox_opl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\emuopl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\fmopl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\fprovide.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\opl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\player.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\rix.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\adplug\surroundopl.h">
-      <Filter>adplug</Filter>
-    </ClInclude>
-    <ClInclude Include="..\big5font.h" />
-    <ClInclude Include="..\codepage.h" />
-    <ClInclude Include="..\fontglyph.h" />
-    <ClInclude Include="..\gbfont.h" />
-  </ItemGroup>
-  <ItemGroup>
-    <ClCompile Include="..\battle.c" />
-    <ClCompile Include="..\ending.c" />
-    <ClCompile Include="..\fight.c" />
-    <ClCompile Include="..\font.c" />
-    <ClCompile Include="..\game.c" />
-    <ClCompile Include="..\getopt.c" />
-    <ClCompile Include="..\global.c" />
-    <ClCompile Include="..\input.c" />
-    <ClCompile Include="..\itemmenu.c" />
-    <ClCompile Include="..\magicmenu.c" />
-    <ClCompile Include="..\main.c" />
-    <ClCompile Include="..\map.c" />
-    <ClCompile Include="..\palcommon.c" />
-    <ClCompile Include="..\palette.c" />
-    <ClCompile Include="..\play.c" />
-    <ClCompile Include="..\res.c" />
-    <ClCompile Include="..\rixplay.cpp" />
-    <ClCompile Include="..\rngplay.c" />
-    <ClCompile Include="..\scene.c" />
-    <ClCompile Include="..\script.c" />
-    <ClCompile Include="..\sound.c" />
-    <ClCompile Include="..\text.c" />
-    <ClCompile Include="..\ui.c" />
-    <ClCompile Include="..\uibattle.c" />
-    <ClCompile Include="..\uigame.c" />
-    <ClCompile Include="..\util.c" />
-    <ClCompile Include="..\video.c" />
-    <ClCompile Include="..\yj1.c" />
-    <ClCompile Include="..\adplug\binfile.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\binio.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\dosbox_opl.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\emuopl.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\fmopl.c">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\fprovide.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\player.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\rix.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="..\adplug\surroundopl.cpp">
-      <Filter>adplug</Filter>
-    </ClCompile>
-    <ClCompile Include="SDL2\src\main\winrt\SDL_winrt_main_NonXAML.cpp" />
-    <ClCompile Include="WinPhoneUtil.cpp" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="Assets\Data\DATA.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\ABC.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\BALL.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\F.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\FBP.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\FIRE.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\GOP.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\MAP.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\M.MSG">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\MGO.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\MUS.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\PAT.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\RGM.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\RNG.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\VOC.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\SSS.MKF">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\WOR16.ASC">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\wor16.fon">
-      <Filter>Assets\Data</Filter>
-    </None>
-    <None Include="Assets\Data\WORD.DAT">
-      <Filter>Assets\Data</Filter>
-    </None>
-  </ItemGroup>
-</Project>

winphone/Assets/Data/README.txt → winphone/SDLPal/Assets/Data/README.txt


二进制
winphone/SDLPal/Assets/Logo.scale-100.png


二进制
winphone/SDLPal/Assets/Logo.scale-140.png


二进制
winphone/SDLPal/Assets/Logo.scale-240.png


二进制
winphone/SDLPal/Assets/SmallLogo.scale-100.png


二进制
winphone/SDLPal/Assets/SmallLogo.scale-140.png


二进制
winphone/SDLPal/Assets/SmallLogo.scale-240.png


二进制
winphone/SDLPal/Assets/SplashScreen.scale-100.png


二进制
winphone/SDLPal/Assets/SplashScreen.scale-140.png


二进制
winphone/SDLPal/Assets/SplashScreen.scale-240.png


二进制
winphone/SDLPal/Assets/Square71x71Logo.scale-100.png


二进制
winphone/SDLPal/Assets/Square71x71Logo.scale-140.png


二进制
winphone/SDLPal/Assets/Square71x71Logo.scale-240.png


二进制
winphone/SDLPal/Assets/StoreLogo.scale-100.png


二进制
winphone/SDLPal/Assets/StoreLogo.scale-140.png


二进制
winphone/SDLPal/Assets/StoreLogo.scale-240.png


二进制
winphone/SDLPal/Assets/WideLogo.scale-100.png


二进制
winphone/SDLPal/Assets/WideLogo.scale-140.png


二进制
winphone/SDLPal/Assets/WideLogo.scale-240.png


+ 29 - 0
winphone/SDLPal/Package.appxmanifest

@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Package xmlns="http://schemas.microsoft.com/appx/2010/manifest" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest" xmlns:m3="http://schemas.microsoft.com/appx/2014/manifest" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest">
+  <Identity Name="ac4bf6d5-bbea-4be4-a7d8-4a404f7ee2af" Publisher="CN=LouYihua" Version="2.0.0.0" />
+  <mp:PhoneIdentity PhoneProductId="ac4bf6d5-bbea-4be4-a7d8-4a404f7ee2af" PhonePublisherId="00000000-0000-0000-0000-000000000000" />
+  <Properties>
+    <DisplayName>SDLPal</DisplayName>
+    <PublisherDisplayName>SDLPal Team</PublisherDisplayName>
+    <Logo>Assets\StoreLogo.png</Logo>
+  </Properties>
+  <Prerequisites>
+    <OSMinVersion>6.3.1</OSMinVersion>
+    <OSMaxVersionTested>6.3.1</OSMaxVersionTested>
+  </Prerequisites>
+  <Resources>
+    <Resource Language="x-generate" />
+  </Resources>
+  <Applications>
+    <Application Id="App" Executable="$targetnametoken$.exe" EntryPoint="SDLPal.App">
+      <m3:VisualElements DisplayName="SDLPal" Square150x150Logo="Assets\Logo.png" Square44x44Logo="Assets\SmallLogo.png" Description="SDL-based reimplementation of classic Chinese RPG &quot;Xian Jian Qi Xia Zhuan&quot;." ForegroundText="light" BackgroundColor="transparent">
+        <m3:DefaultTile Wide310x150Logo="Assets\WideLogo.png" Square71x71Logo="Assets\Square71x71Logo.png">
+        </m3:DefaultTile>
+        <m3:SplashScreen Image="Assets\SplashScreen.png" BackgroundColor="black" />
+      </m3:VisualElements>
+    </Application>
+  </Applications>
+  <Capabilities>
+    <Capability Name="internetClientServer" />
+  </Capabilities>
+</Package>

+ 294 - 0
winphone/SDLPal/SDLPal.vcxproj

@@ -0,0 +1,294 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|ARM">
+      <Configuration>Debug</Configuration>
+      <Platform>ARM</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|ARM">
+      <Configuration>Release</Configuration>
+      <Platform>ARM</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{4c240e16-f6f6-4d60-b29b-7f7acb4815d7}</ProjectGuid>
+    <Keyword>BlankApp</Keyword>
+    <RootNamespace>SDLPal</RootNamespace>
+    <DefaultLanguage>zh-CN</DefaultLanguage>
+    <MinimumVisualStudioVersion>12.0</MinimumVisualStudioVersion>
+    <AppContainerApplication>true</AppContainerApplication>
+    <ApplicationType>Windows Phone</ApplicationType>
+    <ApplicationTypeRevision>8.1</ApplicationTypeRevision>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
+    <ConfigurationType>Application</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
+    <ClCompile>
+      <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
+      <DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
+    <ClCompile>
+      <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
+      <DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
+      <DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <AdditionalOptions>/bigobj %(AdditionalOptions)</AdditionalOptions>
+      <DisableSpecificWarnings>4453;28204</DisableSpecificWarnings>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <AppxManifest Include="Package.appxmanifest">
+      <SubType>Designer</SubType>
+    </AppxManifest>
+  </ItemGroup>
+  <ItemGroup>
+    <Image Include="Assets\Logo.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\Logo.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\Logo.scale-240.png" />
+    <Image Include="Assets\SmallLogo.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\SmallLogo.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\SmallLogo.scale-240.png" />
+    <Image Include="Assets\SplashScreen.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\SplashScreen.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\SplashScreen.scale-240.png" />
+    <Image Include="Assets\Square71x71Logo.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\Square71x71Logo.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\Square71x71Logo.scale-240.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-240.png" />
+    <Image Include="Assets\WideLogo.scale-100.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\WideLogo.scale-140.png">
+      <DeploymentContent>true</DeploymentContent>
+    </Image>
+    <Image Include="Assets\WideLogo.scale-240.png" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\SDL2\src\main\winrt\SDL_winrt_main_NonXAML.cpp" />
+    <ClCompile Include="WinPhoneUtil.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Assets\Data\ABC.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\BALL.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\DATA.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\F.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\FBP.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\FIRE.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\GOP.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\M.MSG">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\MAP.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\MGO.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\MUS.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10002.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10003.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10004.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10005.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10006.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10007.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10008.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10009.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10010.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10011.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10012.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\OGG\10013.ogg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\PAT.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\RGM.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\RNG.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\sdlpal.cfg">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\SSS.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\VOC.MKF">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\WOR16.ASC">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\WOR16.FON">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+    <None Include="Assets\Data\WORD.DAT">
+      <DeploymentContent>true</DeploymentContent>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\SDL2\VisualC-WinRT\WinPhone81_VS2013\SDL-WinPhone81.vcxproj">
+      <Project>{48fadc0e-964d-4dab-bced-372e0ad19577}</Project>
+    </ProjectReference>
+    <ProjectReference Include="..\SDLPalLib\SDLPalLib.vcxproj">
+      <Project>{704d3871-2e86-42ef-a607-cbcfb7a7ebab}</Project>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <Media Include="Assets\Data\MP3\10002.MP3" />
+    <Media Include="Assets\Data\MP3\10003.MP3" />
+    <Media Include="Assets\Data\MP3\10004.MP3" />
+    <Media Include="Assets\Data\MP3\10005.MP3" />
+    <Media Include="Assets\Data\MP3\10006.MP3" />
+    <Media Include="Assets\Data\MP3\10007.MP3" />
+    <Media Include="Assets\Data\MP3\10008.MP3" />
+    <Media Include="Assets\Data\MP3\10009.MP3" />
+    <Media Include="Assets\Data\MP3\10010.MP3" />
+    <Media Include="Assets\Data\MP3\10011.MP3" />
+    <Media Include="Assets\Data\MP3\10012.MP3" />
+    <Media Include="Assets\Data\MP3\10013.MP3" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>

+ 217 - 0
winphone/SDLPal/SDLPal.vcxproj.filters

@@ -0,0 +1,217 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="资产">
+      <UniqueIdentifier>4c240e16-f6f6-4d60-b29b-7f7acb4815d7</UniqueIdentifier>
+      <Extensions>bmp;fbx;gif;jpg;jpeg;tga;tiff;tif;png</Extensions>
+    </Filter>
+    <Image Include="Assets\Logo.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SmallLogo.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SplashScreen.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\Square71x71Logo.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\WideLogo.scale-240.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Filter Include="资产\Data">
+      <UniqueIdentifier>{77c8944a-e166-4a2c-b515-9550e82a9d63}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="资产\Data\OGG">
+      <UniqueIdentifier>{08b020ee-aa73-48f6-83b9-ad6573dd0dcc}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="资产\Data\MP3">
+      <UniqueIdentifier>{eb7b143d-6d18-479d-8908-7d6fc6f86449}</UniqueIdentifier>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="WinPhoneUtil.cpp" />
+    <ClCompile Include="..\SDL2\src\main\winrt\SDL_winrt_main_NonXAML.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <AppxManifest Include="Package.appxmanifest" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Assets\Data\ABC.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\BALL.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\DATA.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\F.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\FBP.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\FIRE.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\GOP.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\M.MSG">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\MAP.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\MGO.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\MUS.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\PAT.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\RGM.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\RNG.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\SSS.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\VOC.MKF">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\WOR16.ASC">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\WOR16.FON">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\WORD.DAT">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\sdlpal.cfg">
+      <Filter>资产\Data</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10002.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10003.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10004.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10005.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10006.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10007.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10008.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10009.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10010.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10011.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10012.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+    <None Include="Assets\Data\OGG\10013.ogg">
+      <Filter>资产\Data\OGG</Filter>
+    </None>
+  </ItemGroup>
+  <ItemGroup>
+    <Media Include="Assets\Data\MP3\10002.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10003.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10004.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10005.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10006.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10007.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10008.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10009.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10010.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10011.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10012.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+    <Media Include="Assets\Data\MP3\10013.MP3">
+      <Filter>资产\Data\MP3</Filter>
+    </Media>
+  </ItemGroup>
+  <ItemGroup>
+    <Image Include="Assets\Square71x71Logo.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\Square71x71Logo.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\Logo.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\Logo.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\WideLogo.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\WideLogo.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SmallLogo.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SmallLogo.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\StoreLogo.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SplashScreen.scale-140.png">
+      <Filter>资产</Filter>
+    </Image>
+    <Image Include="Assets\SplashScreen.scale-100.png">
+      <Filter>资产</Filter>
+    </Image>
+  </ItemGroup>
+</Project>

+ 68 - 0
winphone/SDLPal/WinPhoneUtil.cpp

@@ -0,0 +1,68 @@
+#include <wrl.h>
+#include <string>
+
+//#include <stdio.h>
+//#include <share.h>
+
+//static const char *
+//GetRootPath()
+//{
+//	static char buf[1024] = "";
+//	if (buf[0] == '\0')
+//	{
+//		Platform::String^ localfolder = Windows::Storage::ApplicationData::Current->LocalFolder->Path;
+//		const char16 *begin = localfolder->Begin();
+//		WideCharToMultiByte(CP_ACP, 0, begin, -1, buf, 1024, NULL, FALSE);
+//	}
+//	return buf;
+//}
+//
+//static const char *
+//GetInstallPath()
+//{
+//	static char buf[1024] = "";
+//	if (buf[0] == '\0')
+//	{
+//		Platform::String^ installfolder = Windows::ApplicationModel::Package::Current->InstalledLocation->Path;
+//		const char16 *begin = installfolder->Begin();
+//		WideCharToMultiByte(CP_ACP, 0, begin, -1, buf, 1024, NULL, FALSE);
+//	}
+//	return buf;
+//}
+//
+//extern "C" FILE *
+//MY_fopen(const char *path, const char *mode)
+//{
+//	return fopen(path, mode);
+//
+//	const char *p = GetRootPath();
+//	char buf[1024];
+//	_snprintf_s(buf, 1024, "%s\\%s", p, path);
+//	FILE *fp = _fsopen(buf, mode, _SH_DENYNO);
+//	if (fp == NULL)
+//	{
+//		p = GetInstallPath();
+//		_snprintf_s(buf, 1024, "%s\\%s", p, path);
+//		fp = _fsopen(buf, mode, _SH_DENYNO);
+//	}
+//	if (fp == NULL)
+//	{
+//		p = GetRootPath();
+//		_snprintf_s(buf, 1024, "%s\\Shared\\%s", p, path);
+//		fp = _fsopen(buf, mode, _SH_DENYNO);
+//	}
+//	return fp;
+//}
+
+static std::string g_savepath;
+
+extern "C"
+LPCSTR UTIL_WP_SavePath(VOID)
+{
+	Platform::String^ localfolder = Windows::Storage::ApplicationData::Current->LocalFolder->Path;
+	int len = WideCharToMultiByte(CP_ACP, 0, localfolder->Begin(), -1, nullptr, 0, nullptr, nullptr);
+	g_savepath.resize(len);
+	WideCharToMultiByte(CP_ACP, 0, localfolder->Begin(), -1, (char*)g_savepath.data(), len, nullptr, nullptr);
+	const_cast<char*>(g_savepath.data())[len - 1] = '\\';
+	return g_savepath.c_str();
+}

+ 347 - 0
winphone/SDLPalLib/SDLPalLib.vcxproj

@@ -0,0 +1,347 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.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|ARM">
+      <Configuration>Debug</Configuration>
+      <Platform>ARM</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|ARM">
+      <Configuration>Release</Configuration>
+      <Platform>ARM</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{704d3871-2e86-42ef-a607-cbcfb7a7ebab}</ProjectGuid>
+    <Keyword>StaticLibrary</Keyword>
+    <RootNamespace>SDLPal</RootNamespace>
+    <DefaultLanguage>en-US</DefaultLanguage>
+    <AppContainerApplication>true</AppContainerApplication>
+    <MinimumVisualStudioVersion>12.0</MinimumVisualStudioVersion>
+    <ApplicationType>Windows Phone</ApplicationType>
+    <ApplicationTypeRevision>8.1</ApplicationTypeRevision>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>true</UseDebugLibraries>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
+    <ConfigurationType>StaticLibrary</ConfigurationType>
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+    <PlatformToolset>v120_wp81</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Label="Shared">
+  </ImportGroup>
+  <ImportGroup Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <IncludePath>..\SDL2\include;$(IncludePath)</IncludePath>
+  </PropertyGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
+    <ClCompile>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;__WINPHONE__=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
+      <AdditionalIncludeDirectories>..\..\liboggvorbis\include;$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <CompileAsWinRT>false</CompileAsWinRT>
+      <DisableSpecificWarnings>
+      </DisableSpecificWarnings>
+    </ClCompile>
+    <Link>
+      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
+      <AdditionalLibraryDirectories>$(OutDir)..\SDL-WinPhone81</AdditionalLibraryDirectories>
+      <AdditionalDependencies>sdl2.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
+    <ClCompile>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;__WINPHONE__=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
+      <AdditionalIncludeDirectories>..\..\liboggvorbis\include;$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <CompileAsWinRT>false</CompileAsWinRT>
+      <DisableSpecificWarnings>
+      </DisableSpecificWarnings>
+    </ClCompile>
+    <Link>
+      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
+      <AdditionalLibraryDirectories>$(OutDir)..\SDL-WinPhone81</AdditionalLibraryDirectories>
+      <AdditionalDependencies>sdl2.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
+    <ClCompile>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;__WINPHONE__=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
+      <AdditionalIncludeDirectories>..\..\liboggvorbis\include;$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <CompileAsWinRT>false</CompileAsWinRT>
+      <DisableSpecificWarnings>
+      </DisableSpecificWarnings>
+    </ClCompile>
+    <Link>
+      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
+      <AdditionalLibraryDirectories>$(OutDir)..\SDL-WinPhone81</AdditionalLibraryDirectories>
+      <AdditionalDependencies>sdl2.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
+    <ClCompile>
+      <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;__WINPHONE__=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PrecompiledHeader>NotUsing</PrecompiledHeader>
+      <PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
+      <AdditionalIncludeDirectories>..\..\liboggvorbis\include;$(IntermediateOutputPath);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <CompileAsWinRT>false</CompileAsWinRT>
+      <DisableSpecificWarnings>
+      </DisableSpecificWarnings>
+    </ClCompile>
+    <Link>
+      <GenerateWindowsMetadata>false</GenerateWindowsMetadata>
+      <AdditionalLibraryDirectories>$(OutDir)..\SDL-WinPhone81</AdditionalLibraryDirectories>
+      <AdditionalDependencies>sdl2.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\adplug\adlibemu.h" />
+    <ClInclude Include="..\..\adplug\binfile.h" />
+    <ClInclude Include="..\..\adplug\binio.h" />
+    <ClInclude Include="..\..\adplug\dbemuopl.h" />
+    <ClInclude Include="..\..\adplug\dbopl.h" />
+    <ClInclude Include="..\..\adplug\demuopl.h" />
+    <ClInclude Include="..\..\adplug\dosbox_opl.h" />
+    <ClInclude Include="..\..\adplug\emuopl.h" />
+    <ClInclude Include="..\..\adplug\fmopl.h" />
+    <ClInclude Include="..\..\adplug\fprovide.h" />
+    <ClInclude Include="..\..\adplug\opl.h" />
+    <ClInclude Include="..\..\adplug\player.h" />
+    <ClInclude Include="..\..\adplug\rix.h" />
+    <ClInclude Include="..\..\adplug\surroundopl.h" />
+    <ClInclude Include="..\..\ascii.h" />
+    <ClInclude Include="..\..\battle.h" />
+    <ClInclude Include="..\..\codepage.h" />
+    <ClInclude Include="..\..\common.h" />
+    <ClInclude Include="..\..\ending.h" />
+    <ClInclude Include="..\..\fight.h" />
+    <ClInclude Include="..\..\font.h" />
+    <ClInclude Include="..\..\fontglyph.h" />
+    <ClInclude Include="..\..\game.h" />
+    <ClInclude Include="..\..\getopt.h" />
+    <ClInclude Include="..\..\global.h" />
+    <ClInclude Include="..\..\input.h" />
+    <ClInclude Include="..\..\itemmenu.h" />
+    <ClInclude Include="..\..\libmad\bit.h" />
+    <ClInclude Include="..\..\libmad\decoder.h" />
+    <ClInclude Include="..\..\libmad\fixed.h" />
+    <ClInclude Include="..\..\libmad\frame.h" />
+    <ClInclude Include="..\..\libmad\huffman.h" />
+    <ClInclude Include="..\..\libmad\layer12.h" />
+    <ClInclude Include="..\..\libmad\layer3.h" />
+    <ClInclude Include="..\..\libmad\libmad_config.h" />
+    <ClInclude Include="..\..\libmad\libmad_global.h" />
+    <ClInclude Include="..\..\libmad\mad.h" />
+    <ClInclude Include="..\..\libmad\music_mad.h" />
+    <ClInclude Include="..\..\libmad\stream.h" />
+    <ClInclude Include="..\..\libmad\synth.h" />
+    <ClInclude Include="..\..\libmad\timer.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\config_types.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\ogg.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\os_types.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\codec.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\vorbisenc.h" />
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\vorbisfile.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\backends.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\bitrate.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\books\coupled\res_books_51.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\books\coupled\res_books_stereo.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\books\floor\floor_books.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\books\uncoupled\res_books_uncoupled.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\codebook.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\codec_internal.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\envelope.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\highlevel.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\lookup.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\lookup_data.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\lpc.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\lsp.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\masking.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\mdct.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\misc.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\floor_all.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_11.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_16.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_44.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_8.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_16.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44p51.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44u.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_8.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_11.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_16.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_22.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_32.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44p51.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44u.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_8.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_X.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\os.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\psy.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\registry.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\scales.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\smallft.h" />
+    <ClInclude Include="..\..\liboggvorbis\src\window.h" />
+    <ClInclude Include="..\..\magicmenu.h" />
+    <ClInclude Include="..\..\main.h" />
+    <ClInclude Include="..\..\map.h" />
+    <ClInclude Include="..\..\midi.h" />
+    <ClInclude Include="..\..\palcommon.h" />
+    <ClInclude Include="..\..\palette.h" />
+    <ClInclude Include="..\..\play.h" />
+    <ClInclude Include="..\..\players.h" />
+    <ClInclude Include="..\..\res.h" />
+    <ClInclude Include="..\..\resampler.h" />
+    <ClInclude Include="..\..\rngplay.h" />
+    <ClInclude Include="..\..\scene.h" />
+    <ClInclude Include="..\..\script.h" />
+    <ClInclude Include="..\..\sound.h" />
+    <ClInclude Include="..\..\text.h" />
+    <ClInclude Include="..\..\ui.h" />
+    <ClInclude Include="..\..\uibattle.h" />
+    <ClInclude Include="..\..\uigame.h" />
+    <ClInclude Include="..\..\util.h" />
+    <ClInclude Include="..\..\video.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\adplug\adlibemu.c" />
+    <ClCompile Include="..\..\adplug\binfile.cpp" />
+    <ClCompile Include="..\..\adplug\binio.cpp" />
+    <ClCompile Include="..\..\adplug\dbemuopl.cpp" />
+    <ClCompile Include="..\..\adplug\dbopl.cpp" />
+    <ClCompile Include="..\..\adplug\demuopl.cpp" />
+    <ClCompile Include="..\..\adplug\dosbox_opl.cpp" />
+    <ClCompile Include="..\..\adplug\emuopl.cpp" />
+    <ClCompile Include="..\..\adplug\fmopl.c" />
+    <ClCompile Include="..\..\adplug\fprovide.cpp" />
+    <ClCompile Include="..\..\adplug\player.cpp" />
+    <ClCompile Include="..\..\adplug\rix.cpp" />
+    <ClCompile Include="..\..\adplug\surroundopl.cpp" />
+    <ClCompile Include="..\..\battle.c" />
+    <ClCompile Include="..\..\ending.c" />
+    <ClCompile Include="..\..\fight.c" />
+    <ClCompile Include="..\..\font.c" />
+    <ClCompile Include="..\..\game.c" />
+    <ClCompile Include="..\..\getopt.c" />
+    <ClCompile Include="..\..\global.c" />
+    <ClCompile Include="..\..\input.c" />
+    <ClCompile Include="..\..\itemmenu.c" />
+    <ClCompile Include="..\..\libmad\bit.c" />
+    <ClCompile Include="..\..\libmad\decoder.c" />
+    <ClCompile Include="..\..\libmad\fixed.c" />
+    <ClCompile Include="..\..\libmad\frame.c" />
+    <ClCompile Include="..\..\libmad\huffman.c" />
+    <ClCompile Include="..\..\libmad\layer12.c" />
+    <ClCompile Include="..\..\libmad\layer3.c" />
+    <ClCompile Include="..\..\libmad\music_mad.c" />
+    <ClCompile Include="..\..\libmad\stream.c" />
+    <ClCompile Include="..\..\libmad\synth.c" />
+    <ClCompile Include="..\..\libmad\timer.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\analysis.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\bitrate.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\bitwise.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\block.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\codebook.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\envelope.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\floor0.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\floor1.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\framing.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\info.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\lookup.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\lpc.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\lsp.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\mapping0.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\mdct.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\psy.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\registry.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\res0.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\sharedbook.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\smallft.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\synthesis.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\vorbisenc.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\vorbisfile.c" />
+    <ClCompile Include="..\..\liboggvorbis\src\window.c" />
+    <ClCompile Include="..\..\magicmenu.c" />
+    <ClCompile Include="..\..\main.c" />
+    <ClCompile Include="..\..\map.c" />
+    <ClCompile Include="..\..\mp3play.c" />
+    <ClCompile Include="..\..\oggplay.c" />
+    <ClCompile Include="..\..\palcommon.c" />
+    <ClCompile Include="..\..\palette.c" />
+    <ClCompile Include="..\..\play.c" />
+    <ClCompile Include="..\..\res.c" />
+    <ClCompile Include="..\..\resampler.c" />
+    <ClCompile Include="..\..\rixplay.cpp" />
+    <ClCompile Include="..\..\rngplay.c" />
+    <ClCompile Include="..\..\scene.c" />
+    <ClCompile Include="..\..\script.c" />
+    <ClCompile Include="..\..\sound.c" />
+    <ClCompile Include="..\..\text.c" />
+    <ClCompile Include="..\..\ui.c" />
+    <ClCompile Include="..\..\uibattle.c" />
+    <ClCompile Include="..\..\uigame.c" />
+    <ClCompile Include="..\..\util.c" />
+    <ClCompile Include="..\..\video.c" />
+    <ClCompile Include="..\..\yj1.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <_CustomResource Include="Assets\Data\**\*">
+      <Link>Assets\Data\%(RecursiveDir)%(FileName)%(Extension)</Link>
+      <DeploymentContent>true</DeploymentContent>
+    </_CustomResource>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\libmad\D.dat" />
+    <None Include="..\libmad\imdct_s.dat" />
+    <None Include="..\libmad\qc_table.dat" />
+    <None Include="..\libmad\rq_table.dat" />
+    <None Include="..\libmad\sf_table.dat" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>

+ 634 - 0
winphone/SDLPalLib/SDLPalLib.vcxproj.filters

@@ -0,0 +1,634 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <Filter Include="adplug">
+      <UniqueIdentifier>{e0154447-2329-47d7-8713-a66a8cc6b0c8}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="libmad">
+      <UniqueIdentifier>{03839bd5-b2c2-4ac7-b7bc-2b254ebe404d}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis">
+      <UniqueIdentifier>{b59fd91d-29f4-4b2a-a441-55efc46fc184}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\include">
+      <UniqueIdentifier>{79d69454-53b7-44c9-ac9a-31c8b32ffc30}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src">
+      <UniqueIdentifier>{f0c1a2b5-d532-48df-8882-61310afb9699}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\include\vorbis">
+      <UniqueIdentifier>{672e9674-8ef1-40e1-b7c1-61e38e95cb3f}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\include\ogg">
+      <UniqueIdentifier>{1cfbe453-cd2e-4cc6-8fe7-697858f695e1}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src\modes">
+      <UniqueIdentifier>{ae768a83-ddd4-4d80-820f-2152ac4a561b}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src\books">
+      <UniqueIdentifier>{a6026f32-f75b-4d0b-b2c1-061ee818d7db}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src\books\coupled">
+      <UniqueIdentifier>{27265bac-1f69-4fe3-bfe4-ae319e4821c7}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src\books\floor">
+      <UniqueIdentifier>{0436c424-c669-474c-a07c-16df4fa6e2d8}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="liboggvorbis\src\books\uncoupled">
+      <UniqueIdentifier>{004a5ad8-1fcb-4c4b-bbf7-809256e2eefe}</UniqueIdentifier>
+    </Filter>
+    <Filter Include="Header Files">
+      <UniqueIdentifier>{4844f59c-c0f1-4395-9e5b-0b0ab0ff70e5}</UniqueIdentifier>
+      <Extensions>h;hpp;hxx;hm;inl</Extensions>
+    </Filter>
+    <Filter Include="Source Files">
+      <UniqueIdentifier>{1a7b7589-37a9-4516-b280-45eb081680b6}</UniqueIdentifier>
+      <Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
+    </Filter>
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\adplug\binfile.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\binio.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\demuopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\dosbox_opl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\emuopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\fmopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\fprovide.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\opl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\player.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\rix.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\surroundopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\adlibemu.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\dbemuopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\adplug\dbopl.h">
+      <Filter>adplug</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\config_types.h">
+      <Filter>liboggvorbis\include\ogg</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\ogg.h">
+      <Filter>liboggvorbis\include\ogg</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\ogg\os_types.h">
+      <Filter>liboggvorbis\include\ogg</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\codec.h">
+      <Filter>liboggvorbis\include\vorbis</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\vorbisenc.h">
+      <Filter>liboggvorbis\include\vorbis</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\include\vorbis\vorbisfile.h">
+      <Filter>liboggvorbis\include\vorbis</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\books\coupled\res_books_51.h">
+      <Filter>liboggvorbis\src\books\coupled</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\books\coupled\res_books_stereo.h">
+      <Filter>liboggvorbis\src\books\coupled</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\books\floor\floor_books.h">
+      <Filter>liboggvorbis\src\books\floor</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\books\uncoupled\res_books_uncoupled.h">
+      <Filter>liboggvorbis\src\books\uncoupled</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\floor_all.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_8.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_11.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_16.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\psych_44.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_8.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_16.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44p51.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\residue_44u.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_8.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_11.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_16.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_22.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_32.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44p51.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_44u.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\modes\setup_X.h">
+      <Filter>liboggvorbis\src\modes</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\backends.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\bitrate.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\codebook.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\codec_internal.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\envelope.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\highlevel.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\lookup.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\lookup_data.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\lpc.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\lsp.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\masking.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\mdct.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\misc.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\os.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\psy.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\registry.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\scales.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\smallft.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\liboggvorbis\src\window.h">
+      <Filter>liboggvorbis\src</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\bit.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\decoder.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\fixed.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\frame.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\huffman.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\layer3.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\layer12.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\libmad_config.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\libmad_global.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\mad.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\music_mad.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\stream.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\synth.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\libmad\timer.h">
+      <Filter>libmad</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\ascii.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\battle.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\codepage.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\common.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\ending.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\fight.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\font.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\fontglyph.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\game.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\getopt.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\global.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\input.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\itemmenu.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\magicmenu.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\main.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\map.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\palcommon.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\palette.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\play.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\res.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\rngplay.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\scene.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\script.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\sound.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\text.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\ui.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\uibattle.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\uigame.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\util.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\video.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\midi.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\players.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+    <ClInclude Include="..\..\resampler.h">
+      <Filter>Header Files</Filter>
+    </ClInclude>
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="..\..\adplug\binfile.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\binio.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\dosbox_opl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\emuopl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\fmopl.c">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\fprovide.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\player.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\rix.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\surroundopl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\adlibemu.c">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\dbemuopl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\dbopl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\adplug\demuopl.cpp">
+      <Filter>adplug</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\analysis.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\bitrate.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\bitwise.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\block.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\codebook.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\envelope.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\floor0.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\floor1.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\framing.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\info.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\lookup.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\lpc.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\lsp.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\mapping0.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\mdct.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\psy.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\registry.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\res0.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\sharedbook.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\smallft.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\synthesis.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\vorbisenc.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\vorbisfile.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\liboggvorbis\src\window.c">
+      <Filter>liboggvorbis\src</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\bit.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\decoder.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\fixed.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\frame.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\huffman.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\layer3.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\layer12.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\music_mad.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\stream.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\synth.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\libmad\timer.c">
+      <Filter>libmad</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\battle.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\ending.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\fight.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\font.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\game.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\getopt.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\global.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\input.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\itemmenu.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\magicmenu.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\main.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\map.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\palcommon.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\palette.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\play.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\res.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\rixplay.cpp">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\rngplay.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\scene.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\script.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\sound.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\text.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\ui.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\uibattle.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\uigame.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\util.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\video.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\yj1.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\mp3play.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\oggplay.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+    <ClCompile Include="..\..\resampler.c">
+      <Filter>Source Files</Filter>
+    </ClCompile>
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="..\libmad\D.dat">
+      <Filter>libmad</Filter>
+    </None>
+    <None Include="..\libmad\imdct_s.dat">
+      <Filter>libmad</Filter>
+    </None>
+    <None Include="..\libmad\qc_table.dat">
+      <Filter>libmad</Filter>
+    </None>
+    <None Include="..\libmad\rq_table.dat">
+      <Filter>libmad</Filter>
+    </None>
+    <None Include="..\libmad\sf_table.dat">
+      <Filter>libmad</Filter>
+    </None>
+  </ItemGroup>
+</Project>

+ 0 - 42
winphone/WMAppManifest.xml

@@ -1,42 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Deployment xmlns="http://schemas.microsoft.com/windowsphone/2012/deployment" AppPlatformVersion="8.0">
-  <DefaultLanguage xmlns="" code="en-US" />
-  <Languages xmlns="">
-    <Language code="zh-TW" />
-    <Language code="zh-CN" />
-    <Language code="en-US" />
-  </Languages>
-  <App xmlns="" ProductID="{f59b48bc-5646-4f8b-90b2-4b09a9d94c5c}" Title="SDLPal" RuntimeType="Modern Native" Version="2.0.0.0" Genre="apps.normal" Author="Wei Mingzhi" Description="SDL-based reimplementation of classic Chinese RPG &quot;Xian Jian Qi Xia Zhuan&quot;." Publisher="SDLPal" PublisherID="{f27682c8-453b-451e-8c75-76c006cdede4}">
-    <IconPath IsRelative="true" IsResource="false">Assets\ApplicationIcon.png</IconPath>
-    <Capabilities>
-    </Capabilities>
-    <Tasks>
-      <DefaultTask Name="_default" ImagePath="SDLPal.exe" ImageParams="" />
-    </Tasks>
-    <Tokens>
-      <PrimaryToken TokenID="SDLPalToken" TaskName="_default">
-        <TemplateFlip>
-          <SmallImageURI IsRelative="true" IsResource="false">Assets\Tiles\FlipCycleTileSmall.png</SmallImageURI>
-          <Count>0</Count>
-          <BackgroundImageURI IsRelative="true" IsResource="false">Assets\Tiles\FlipCycleTileMedium.png</BackgroundImageURI>
-          <Title>SDLPal</Title>
-          <BackContent>
-          </BackContent>
-          <BackBackgroundImageURI>
-          </BackBackgroundImageURI>
-          <BackTitle>
-          </BackTitle>
-          <DeviceLockImageURI>
-          </DeviceLockImageURI>
-          <HasLarge>
-          </HasLarge>
-        </TemplateFlip>
-      </PrimaryToken>
-    </Tokens>
-    <ScreenResolutions>
-      <ScreenResolution Name="ID_RESOLUTION_WVGA" />
-      <ScreenResolution Name="ID_RESOLUTION_WXGA" />
-      <ScreenResolution Name="ID_RESOLUTION_HD720P" />
-    </ScreenResolutions>
-  </App>
-</Deployment>

+ 0 - 50
winphone/WinPhoneUtil.cpp

@@ -1,50 +0,0 @@
-#include <wrl.h>
-#include <stdio.h>
-
-static const char *
-GetRootPath()
-{
-	static char buf[1024] = "";
-	if (buf[0] == '\0')
-	{
-		Platform::String^ localfolder = Windows::Storage::ApplicationData::Current->LocalFolder->Path;
-		const char16 *begin = localfolder->Begin();
-		WideCharToMultiByte(CP_ACP, 0, begin, -1, buf, 1024, NULL, FALSE);
-	}
-	return buf;
-}
-
-static const char *
-GetInstallPath()
-{
-	static char buf[1024] = "";
-	if (buf[0] == '\0')
-	{
-		Platform::String^ installfolder = Windows::ApplicationModel::Package::Current->InstalledLocation->Path;
-		const char16 *begin = installfolder->Begin();
-		WideCharToMultiByte(CP_ACP, 0, begin, -1, buf, 1024, NULL, FALSE);
-	}
-	return buf;
-}
-
-extern "C" FILE *
-MY_fopen(const char *path, const char *mode)
-{
-	const char *p = GetRootPath();
-	char buf[1024];
-	_snprintf_s(buf, 1024, "%s\\%s", p, path);
-	FILE *fp = _fsopen(buf, mode, 0x40);
-	if (fp == NULL)
-	{
-		p = GetInstallPath();
-		_snprintf_s(buf, 1024, "%s\\%s", p, path);
-		fp = _fsopen(buf, mode, 0x40);
-	}
-	if (fp == NULL)
-	{
-		p = GetRootPath();
-		_snprintf_s(buf, 1024, "%s\\Shared\\%s", p, path);
-		fp = _fsopen(buf, mode, 0x40);
-	}
-	return fp;
-}