]> granicus.if.org Git - nethack/commitdiff
Create initial vs2017 files from vs2015 files.
authorBart House <bart@barthouse.com>
Sat, 2 Sep 2017 23:18:37 +0000 (16:18 -0700)
committerPasi Kallinen <paxed@alt.org>
Mon, 4 Sep 2017 09:56:19 +0000 (12:56 +0300)
35 files changed:
win/win32/vs2017/NetHack.vcxproj [new file with mode: 0644]
win/win32/vs2017/NetHackW.vcxproj [new file with mode: 0644]
win/win32/vs2017/afterdgncomp.proj [new file with mode: 0644]
win/win32/vs2017/afterdlb.proj [new file with mode: 0644]
win/win32/vs2017/afterlevcomp.proj [new file with mode: 0644]
win/win32/vs2017/aftermakedefs.proj [new file with mode: 0644]
win/win32/vs2017/afternethack.proj [new file with mode: 0644]
win/win32/vs2017/afterrecover.proj [new file with mode: 0644]
win/win32/vs2017/aftertile2bmp.proj [new file with mode: 0644]
win/win32/vs2017/aftertilemap.proj [new file with mode: 0644]
win/win32/vs2017/afteruudecode.proj [new file with mode: 0644]
win/win32/vs2017/build.bat [new file with mode: 0644]
win/win32/vs2017/common.props [new file with mode: 0644]
win/win32/vs2017/config.props [new file with mode: 0644]
win/win32/vs2017/console.props [new file with mode: 0644]
win/win32/vs2017/default.props [new file with mode: 0644]
win/win32/vs2017/default_dll.props [new file with mode: 0644]
win/win32/vs2017/dgncomp.vcxproj [new file with mode: 0644]
win/win32/vs2017/dirs.props [new file with mode: 0644]
win/win32/vs2017/dlb.vcxproj [new file with mode: 0644]
win/win32/vs2017/dll.props [new file with mode: 0644]
win/win32/vs2017/files.props [new file with mode: 0644]
win/win32/vs2017/levcomp.vcxproj [new file with mode: 0644]
win/win32/vs2017/makedefs.vcxproj [new file with mode: 0644]
win/win32/vs2017/nh340key.def [new file with mode: 0644]
win/win32/vs2017/nh340key.vcxproj [new file with mode: 0644]
win/win32/vs2017/nhdefkey.def [new file with mode: 0644]
win/win32/vs2017/nhdefkey.vcxproj [new file with mode: 0644]
win/win32/vs2017/nhraykey.def [new file with mode: 0644]
win/win32/vs2017/nhraykey.vcxproj [new file with mode: 0644]
win/win32/vs2017/recover.vcxproj [new file with mode: 0644]
win/win32/vs2017/tile2bmp.vcxproj [new file with mode: 0644]
win/win32/vs2017/tilemap.vcxproj [new file with mode: 0644]
win/win32/vs2017/tiles.vcxproj [new file with mode: 0644]
win/win32/vs2017/uudecode.vcxproj [new file with mode: 0644]

diff --git a/win/win32/vs2017/NetHack.vcxproj b/win/win32/vs2017/NetHack.vcxproj
new file mode 100644 (file)
index 0000000..6c73188
--- /dev/null
@@ -0,0 +1,233 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{609BC774-C6F8-4B2B-AA7D-5B3D0EA95751}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>NetHack</RootNamespace>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalOptions>/Gs /Oi- %(AdditionalOptions)</AdditionalOptions>
+      <Optimization>Disabled</Optimization>
+      <InlineFunctionExpansion>Default</InlineFunctionExpansion>
+      <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
+      <OmitFramePointers>true</OmitFramePointers>
+      <AdditionalIncludeDirectories>$(WinWin32Dir);$(IncDir);$(SysWinntDir);$(SysShareDir);$(WinShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>TILES;WIN32CON;DLB;MSWIN_GRAPHICS;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <Link>
+      <AdditionalDependencies>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;Winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)allmain.c" />
+    <ClCompile Include="$(SrcDir)alloc.c" />
+    <ClCompile Include="$(SrcDir)apply.c" />
+    <ClCompile Include="$(SrcDir)artifact.c" />
+    <ClCompile Include="$(SrcDir)attrib.c" />
+    <ClCompile Include="$(SrcDir)ball.c" />
+    <ClCompile Include="$(SrcDir)bones.c" />
+    <ClCompile Include="$(SrcDir)botl.c" />
+    <ClCompile Include="$(SrcDir)cmd.c" />
+    <ClCompile Include="$(SrcDir)dbridge.c" />
+    <ClCompile Include="$(SrcDir)decl.c" />
+    <ClCompile Include="$(SrcDir)detect.c" />
+    <ClCompile Include="$(SrcDir)dig.c" />
+    <ClCompile Include="$(SrcDir)display.c" />
+    <ClCompile Include="$(SrcDir)dlb.c" />
+    <ClCompile Include="$(SrcDir)do.c" />
+    <ClCompile Include="$(SrcDir)dog.c" />
+    <ClCompile Include="$(SrcDir)dogmove.c" />
+    <ClCompile Include="$(SrcDir)dokick.c" />
+    <ClCompile Include="$(SrcDir)dothrow.c" />
+    <ClCompile Include="$(SrcDir)do_name.c" />
+    <ClCompile Include="$(SrcDir)do_wear.c" />
+    <ClCompile Include="$(SrcDir)drawing.c" />
+    <ClCompile Include="$(SrcDir)dungeon.c" />
+    <ClCompile Include="$(SrcDir)eat.c" />
+    <ClCompile Include="$(SrcDir)end.c" />
+    <ClCompile Include="$(SrcDir)engrave.c" />
+    <ClCompile Include="$(SrcDir)exper.c" />
+    <ClCompile Include="$(SrcDir)explode.c" />
+    <ClCompile Include="$(SrcDir)extralev.c" />
+    <ClCompile Include="$(SrcDir)files.c" />
+    <ClCompile Include="$(SrcDir)fountain.c" />
+    <ClCompile Include="$(SrcDir)hack.c" />
+    <ClCompile Include="$(SrcDir)hacklib.c" />
+    <ClCompile Include="$(SrcDir)invent.c" />
+    <ClCompile Include="$(SrcDir)light.c" />
+    <ClCompile Include="$(SrcDir)lock.c" />
+    <ClCompile Include="$(SrcDir)mail.c" />
+    <ClCompile Include="$(SrcDir)makemon.c" />
+    <ClCompile Include="$(SrcDir)mapglyph.c" />
+    <ClCompile Include="$(SrcDir)mcastu.c" />
+    <ClCompile Include="$(SrcDir)mhitm.c" />
+    <ClCompile Include="$(SrcDir)mhitu.c" />
+    <ClCompile Include="$(SrcDir)minion.c" />
+    <ClCompile Include="$(SrcDir)mklev.c" />
+    <ClCompile Include="$(SrcDir)mkmap.c" />
+    <ClCompile Include="$(SrcDir)mkmaze.c" />
+    <ClCompile Include="$(SrcDir)mkobj.c" />
+    <ClCompile Include="$(SrcDir)mkroom.c" />
+    <ClCompile Include="$(SrcDir)mon.c" />
+    <ClCompile Include="$(SrcDir)mondata.c" />
+    <ClCompile Include="$(SrcDir)monmove.c" />
+    <ClCompile Include="$(SrcDir)monst.c" />
+    <ClCompile Include="$(SrcDir)monstr.c" />
+    <ClCompile Include="$(SrcDir)mplayer.c" />
+    <ClCompile Include="$(SrcDir)mthrowu.c" />
+    <ClCompile Include="$(SrcDir)muse.c" />
+    <ClCompile Include="$(SrcDir)music.c" />
+    <ClCompile Include="$(SrcDir)objects.c" />
+    <ClCompile Include="$(SrcDir)objnam.c" />
+    <ClCompile Include="$(SrcDir)options.c" />
+    <ClCompile Include="$(SrcDir)o_init.c" />
+    <ClCompile Include="$(SrcDir)pager.c" />
+    <ClCompile Include="$(SrcDir)pickup.c" />
+    <ClCompile Include="$(SrcDir)pline.c" />
+    <ClCompile Include="$(SrcDir)polyself.c" />
+    <ClCompile Include="$(SrcDir)potion.c" />
+    <ClCompile Include="$(SrcDir)pray.c" />
+    <ClCompile Include="$(SrcDir)priest.c" />
+    <ClCompile Include="$(SrcDir)quest.c" />
+    <ClCompile Include="$(SrcDir)questpgr.c" />
+    <ClCompile Include="$(SrcDir)read.c" />
+    <ClCompile Include="$(SrcDir)rect.c" />
+    <ClCompile Include="$(SrcDir)region.c" />
+    <ClCompile Include="$(SrcDir)restore.c" />
+    <ClCompile Include="$(SrcDir)rip.c" />
+    <ClCompile Include="$(SrcDir)rnd.c" />
+    <ClCompile Include="$(SrcDir)role.c" />
+    <ClCompile Include="$(SrcDir)rumors.c" />
+    <ClCompile Include="$(SrcDir)save.c" />
+    <ClCompile Include="$(SrcDir)shk.c" />
+    <ClCompile Include="$(SrcDir)shknam.c" />
+    <ClCompile Include="$(SrcDir)sit.c" />
+    <ClCompile Include="$(SrcDir)sounds.c" />
+    <ClCompile Include="$(SrcDir)spell.c" />
+    <ClCompile Include="$(SrcDir)sp_lev.c" />
+    <ClCompile Include="$(SrcDir)steal.c" />
+    <ClCompile Include="$(SrcDir)steed.c" />
+    <ClCompile Include="$(SrcDir)sys.c" />
+    <ClCompile Include="$(SrcDir)teleport.c" />
+    <ClCompile Include="$(SrcDir)tile.c" />
+    <ClCompile Include="$(SrcDir)timeout.c" />
+    <ClCompile Include="$(SrcDir)topten.c" />
+    <ClCompile Include="$(SrcDir)track.c" />
+    <ClCompile Include="$(SrcDir)trap.c" />
+    <ClCompile Include="$(SrcDir)uhitm.c" />
+    <ClCompile Include="$(SrcDir)u_init.c" />
+    <ClCompile Include="$(SrcDir)vault.c" />
+    <ClCompile Include="$(SrcDir)version.c" />
+    <ClCompile Include="$(SrcDir)vision.c" />
+    <ClCompile Include="$(SrcDir)weapon.c" />
+    <ClCompile Include="$(SrcDir)were.c" />
+    <ClCompile Include="$(SrcDir)wield.c" />
+    <ClCompile Include="$(SrcDir)windows.c" />
+    <ClCompile Include="$(SrcDir)wizard.c" />
+    <ClCompile Include="$(SrcDir)worm.c" />
+    <ClCompile Include="$(SrcDir)worn.c" />
+    <ClCompile Include="$(SrcDir)write.c" />
+    <ClCompile Include="$(SrcDir)zap.c" />
+    <ClCompile Include="$(SysShareDir)cppregex.cpp" />
+    <ClCompile Include="$(SysShareDir)nhlan.c" />
+    <ClCompile Include="$(SysShareDir)pcmain.c" />
+    <ClCompile Include="$(SysShareDir)pcsys.c" />
+    <ClCompile Include="$(SysShareDir)pcunix.c" />
+    <ClCompile Include="$(SysShareDir)random.c" />
+    <ClCompile Include="$(SysWinntDir)ntsound.c" />
+    <ClCompile Include="$(SysWinntDir)nttty.c" />
+    <ClCompile Include="$(SysWinntDir)stubs.c">
+      <PreprocessorDefinitions>GUISTUB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <ClCompile Include="$(SysWinntDir)winnt.c" />
+    <ClCompile Include="$(WinTtyDir)getline.c" />
+    <ClCompile Include="$(WinTtyDir)topl.c" />
+    <ClCompile Include="$(WinTtyDir)wintty.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)align.h" />
+    <ClInclude Include="$(IncDir)artifact.h" />
+    <ClInclude Include="$(IncDir)artilist.h" />
+    <ClInclude Include="$(IncDir)attrib.h" />
+    <ClInclude Include="$(IncDir)botl.h" />
+    <ClInclude Include="$(IncDir)color.h" />
+    <ClInclude Include="$(IncDir)config.h" />
+    <ClInclude Include="$(IncDir)config1.h" />
+    <ClInclude Include="$(IncDir)context.h" />
+    <ClInclude Include="$(IncDir)coord.h" />
+    <ClInclude Include="$(IncDir)date.h" />
+    <ClInclude Include="$(IncDir)decl.h" />
+    <ClInclude Include="$(IncDir)display.h" />
+    <ClInclude Include="$(IncDir)dlb.h" />
+    <ClInclude Include="$(IncDir)dungeon.h" />
+    <ClInclude Include="$(IncDir)engrave.h" />
+    <ClInclude Include="$(IncDir)extern.h" />
+    <ClInclude Include="$(IncDir)flag.h" />
+    <ClInclude Include="$(IncDir)func_tab.h" />
+    <ClInclude Include="$(IncDir)global.h" />
+    <ClInclude Include="$(IncDir)hack.h" />
+    <ClInclude Include="$(IncDir)lev.h" />
+    <ClInclude Include="$(IncDir)mextra.h" />
+    <ClInclude Include="$(IncDir)mfndpos.h" />
+    <ClInclude Include="$(IncDir)mkroom.h" />
+    <ClInclude Include="$(IncDir)monattk.h" />
+    <ClInclude Include="$(IncDir)mondata.h" />
+    <ClInclude Include="$(IncDir)monflag.h" />
+    <ClInclude Include="$(IncDir)monst.h" />
+    <ClInclude Include="$(IncDir)monsym.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)obj.h" />
+    <ClInclude Include="$(IncDir)objclass.h" />
+    <ClInclude Include="$(IncDir)onames.h" />
+    <ClInclude Include="$(IncDir)patchlevel.h" />
+    <ClInclude Include="$(IncDir)permonst.h" />
+    <ClInclude Include="$(IncDir)pm.h" />
+    <ClInclude Include="$(IncDir)prop.h" />
+    <ClInclude Include="$(IncDir)qtext.h" />
+    <ClInclude Include="$(IncDir)quest.h" />
+    <ClInclude Include="$(IncDir)rect.h" />
+    <ClInclude Include="$(IncDir)region.h" />
+    <ClInclude Include="$(IncDir)rm.h" />
+    <ClInclude Include="$(IncDir)skills.h" />
+    <ClInclude Include="$(IncDir)spell.h" />
+    <ClInclude Include="$(IncDir)sp_lev.h" />
+    <ClInclude Include="$(IncDir)timeout.h" />
+    <ClInclude Include="$(IncDir)tradstdc.h" />
+    <ClInclude Include="$(IncDir)trap.h" />
+    <ClInclude Include="$(IncDir)vision.h" />
+    <ClInclude Include="$(IncDir)winprocs.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(IncDir)wintype.h" />
+    <ClInclude Include="$(IncDir)you.h" />
+    <ClInclude Include="$(IncDir)youprop.h" />
+    <ClInclude Include="$(WinWin32Dir)nhresource.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="$(WinWin32Dir)NetHack.rc" />
+  </ItemGroup>
+  <ItemGroup>
+    <Image Include="$(WinWin32Dir)nethack.ico" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afternethack.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afternethack.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afternethack.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/NetHackW.vcxproj b/win/win32/vs2017/NetHackW.vcxproj
new file mode 100644 (file)
index 0000000..827daa6
--- /dev/null
@@ -0,0 +1,192 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{CEC5D360-8804-454F-8591-002184C23499}</ProjectGuid>
+    <RootNamespace>NetHackW</RootNamespace>
+  </PropertyGroup>
+
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalOptions>/Gs /Oi- %(AdditionalOptions)</AdditionalOptions>
+      <Optimization>Disabled</Optimization>
+      <OmitFramePointers>true</OmitFramePointers>
+      <AdditionalIncludeDirectories>$(WinWin32Dir);$(IncDir);$(SysWinntDir);$(SysShareDir);$(WinShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>TILES;_WINDOWS;DLB;MSWIN_GRAPHICS;WIN32CONNDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <ResourceCompile>
+      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <Culture>0x0409</Culture>
+    </ResourceCompile>
+    <Link>
+       <!-- TODO common.props has SubSystem Console -->
+      <SubSystem>Windows</SubSystem>
+      <AdditionalDependencies>comctl32.lib;winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
+    </Link>
+  </ItemDefinitionGroup>
+
+
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)allmain.c" />
+    <ClCompile Include="$(SrcDir)alloc.c" />
+    <ClCompile Include="$(SrcDir)apply.c" />
+    <ClCompile Include="$(SrcDir)artifact.c" />
+    <ClCompile Include="$(SrcDir)attrib.c" />
+    <ClCompile Include="$(SrcDir)ball.c" />
+    <ClCompile Include="$(SrcDir)bones.c" />
+    <ClCompile Include="$(SrcDir)botl.c" />
+    <ClCompile Include="$(SrcDir)cmd.c" />
+    <ClCompile Include="$(SrcDir)dbridge.c" />
+    <ClCompile Include="$(SrcDir)decl.c" />
+    <ClCompile Include="$(SrcDir)detect.c" />
+    <ClCompile Include="$(SrcDir)dig.c" />
+    <ClCompile Include="$(SrcDir)display.c" />
+    <ClCompile Include="$(SrcDir)dlb.c" />
+    <ClCompile Include="$(SrcDir)do.c" />
+    <ClCompile Include="$(SrcDir)dog.c" />
+    <ClCompile Include="$(SrcDir)dogmove.c" />
+    <ClCompile Include="$(SrcDir)dokick.c" />
+    <ClCompile Include="$(SrcDir)dothrow.c" />
+    <ClCompile Include="$(SrcDir)do_name.c" />
+    <ClCompile Include="$(SrcDir)do_wear.c" />
+    <ClCompile Include="$(SrcDir)drawing.c" />
+    <ClCompile Include="$(SrcDir)dungeon.c" />
+    <ClCompile Include="$(SrcDir)eat.c" />
+    <ClCompile Include="$(SrcDir)end.c" />
+    <ClCompile Include="$(SrcDir)engrave.c" />
+    <ClCompile Include="$(SrcDir)exper.c" />
+    <ClCompile Include="$(SrcDir)explode.c" />
+    <ClCompile Include="$(SrcDir)extralev.c" />
+    <ClCompile Include="$(SrcDir)files.c" />
+    <ClCompile Include="$(SrcDir)fountain.c" />
+    <ClCompile Include="$(SrcDir)hack.c" />
+    <ClCompile Include="$(SrcDir)hacklib.c" />
+    <ClCompile Include="$(SrcDir)invent.c" />
+    <ClCompile Include="$(SrcDir)light.c" />
+    <ClCompile Include="$(SrcDir)lock.c" />
+    <ClCompile Include="$(SrcDir)mail.c" />
+    <ClCompile Include="$(SrcDir)makemon.c" />
+    <ClCompile Include="$(SrcDir)mapglyph.c" />
+    <ClCompile Include="$(SrcDir)mcastu.c" />
+    <ClCompile Include="$(SrcDir)mhitm.c" />
+    <ClCompile Include="$(SrcDir)mhitu.c" />
+    <ClCompile Include="$(SrcDir)minion.c" />
+    <ClCompile Include="$(SrcDir)mklev.c" />
+    <ClCompile Include="$(SrcDir)mkmap.c" />
+    <ClCompile Include="$(SrcDir)mkmaze.c" />
+    <ClCompile Include="$(SrcDir)mkobj.c" />
+    <ClCompile Include="$(SrcDir)mkroom.c" />
+    <ClCompile Include="$(SrcDir)mon.c" />
+    <ClCompile Include="$(SrcDir)mondata.c" />
+    <ClCompile Include="$(SrcDir)monmove.c" />
+    <ClCompile Include="$(SrcDir)monst.c" />
+    <ClCompile Include="$(SrcDir)monstr.c" />
+    <ClCompile Include="$(SrcDir)mplayer.c" />
+    <ClCompile Include="$(SrcDir)mthrowu.c" />
+    <ClCompile Include="$(SrcDir)muse.c" />
+    <ClCompile Include="$(SrcDir)music.c" />
+    <ClCompile Include="$(SrcDir)objects.c" />
+    <ClCompile Include="$(SrcDir)objnam.c" />
+    <ClCompile Include="$(SrcDir)options.c" />
+    <ClCompile Include="$(SrcDir)o_init.c" />
+    <ClCompile Include="$(SrcDir)pager.c" />
+    <ClCompile Include="$(SrcDir)pickup.c" />
+    <ClCompile Include="$(SrcDir)pline.c" />
+    <ClCompile Include="$(SrcDir)polyself.c" />
+    <ClCompile Include="$(SrcDir)potion.c" />
+    <ClCompile Include="$(SrcDir)pray.c" />
+    <ClCompile Include="$(SrcDir)priest.c" />
+    <ClCompile Include="$(SrcDir)quest.c" />
+    <ClCompile Include="$(SrcDir)questpgr.c" />
+    <ClCompile Include="$(SrcDir)read.c" />
+    <ClCompile Include="$(SrcDir)rect.c" />
+    <ClCompile Include="$(SrcDir)region.c" />
+    <ClCompile Include="$(SrcDir)restore.c" />
+    <ClCompile Include="$(SrcDir)rip.c" />
+    <ClCompile Include="$(SrcDir)rnd.c" />
+    <ClCompile Include="$(SrcDir)role.c" />
+    <ClCompile Include="$(SrcDir)rumors.c" />
+    <ClCompile Include="$(SrcDir)save.c" />
+    <ClCompile Include="$(SrcDir)shk.c" />
+    <ClCompile Include="$(SrcDir)shknam.c" />
+    <ClCompile Include="$(SrcDir)sit.c" />
+    <ClCompile Include="$(SrcDir)sounds.c" />
+    <ClCompile Include="$(SrcDir)spell.c" />
+    <ClCompile Include="$(SrcDir)sp_lev.c" />
+    <ClCompile Include="$(SrcDir)steal.c" />
+    <ClCompile Include="$(SrcDir)steed.c" />
+    <ClCompile Include="$(SrcDir)sys.c" />
+    <ClCompile Include="$(SrcDir)teleport.c" />
+    <ClCompile Include="$(SrcDir)tile.c" />
+    <ClCompile Include="$(SrcDir)timeout.c" />
+    <ClCompile Include="$(SrcDir)topten.c" />
+    <ClCompile Include="$(SrcDir)track.c" />
+    <ClCompile Include="$(SrcDir)trap.c" />
+    <ClCompile Include="$(SrcDir)uhitm.c" />
+    <ClCompile Include="$(SrcDir)u_init.c" />
+    <ClCompile Include="$(SrcDir)vault.c" />
+    <ClCompile Include="$(SrcDir)version.c" />
+    <ClCompile Include="$(SrcDir)vision.c" />
+    <ClCompile Include="$(SrcDir)vis_tab.c" />
+    <ClCompile Include="$(SrcDir)weapon.c" />
+    <ClCompile Include="$(SrcDir)were.c" />
+    <ClCompile Include="$(SrcDir)wield.c" />
+    <ClCompile Include="$(SrcDir)windows.c" />
+    <ClCompile Include="$(SrcDir)wizard.c" />
+    <ClCompile Include="$(SrcDir)worm.c" />
+    <ClCompile Include="$(SrcDir)worn.c" />
+    <ClCompile Include="$(SrcDir)write.c" />
+    <ClCompile Include="$(SrcDir)zap.c" />
+    <ClCompile Include="$(SysShareDir)cppregex.cpp" />
+    <ClCompile Include="$(SysShareDir)nhlan.c" />
+    <ClCompile Include="$(SysShareDir)pcmain.c" />
+    <ClCompile Include="$(SysShareDir)pcsys.c" />
+    <ClCompile Include="$(SysShareDir)pcunix.c" />
+    <ClCompile Include="$(SysShareDir)random.c" />
+    <ClCompile Include="$(SysWinntDir)ntsound.c" />
+    <ClCompile Include="$(SysWinntDir)stubs.c">
+      <PreprocessorDefinitions>TTYSTUB;</PreprocessorDefinitions>
+    </ClCompile>
+    <ClCompile Include="$(SysWinntDir)winnt.c" />
+    <ClCompile Include="$(WinWin32Dir)mhaskyn.c" />
+    <ClCompile Include="$(WinWin32Dir)mhdlg.c" />
+    <ClCompile Include="$(WinWin32Dir)mhfont.c" />
+    <ClCompile Include="$(WinWin32Dir)mhinput.c" />
+    <ClCompile Include="$(WinWin32Dir)mhmain.c" />
+    <ClCompile Include="$(WinWin32Dir)mhmap.c" />
+    <ClCompile Include="$(WinWin32Dir)mhmenu.c" />
+    <ClCompile Include="$(WinWin32Dir)mhmsgwnd.c" />
+    <ClCompile Include="$(WinWin32Dir)mhrip.c" />
+    <ClCompile Include="$(WinWin32Dir)mhsplash.c" />
+    <ClCompile Include="$(WinWin32Dir)mhstatus.c" />
+    <ClCompile Include="$(WinWin32Dir)mhtext.c" />
+    <ClCompile Include="$(WinWin32Dir)mswproc.c" />
+    <ClCompile Include="$(WinWin32Dir)winhack.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ResourceCompile Include="$(WinWin32Dir)winhack.rc" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+ <Target Name="AfterBuild">
+    <MSBuild Projects="afternethack.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afternethack.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afternethack.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+
+ </Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/afterdgncomp.proj b/win/win32/vs2017/afterdgncomp.proj
new file mode 100644 (file)
index 0000000..7aebee7
--- /dev/null
@@ -0,0 +1,12 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(ToolsDir)dgncomp.exe;$(DatDir)dungeon.pdf"
+        Outputs="$(DatDir)dungeon">
+       <Exec Command="$(ToolsDir)dgncomp.exe dungeon.pdf" WorkingDirectory="$(DatDir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="$(DatDir)dungeon"/>
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/afterdlb.proj b/win/win32/vs2017/afterdlb.proj
new file mode 100644 (file)
index 0000000..ed68ba3
--- /dev/null
@@ -0,0 +1,17 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+       Inputs="$(ToolsDir)dlb.exe;@(DlbList);$(SysWinntDir)porthelp"
+       Outputs="$(BinDir)nhdat">
+
+       <Copy SourceFiles="$(SysWinntDir)porthelp" DestinationFolder="$(DatDir)"/>
+       <WriteLinesToFile File="$(DatDir)dlb.lst" Lines="@(DlbList->'%(filename)%(extension)')" Overwrite="true"/>
+       <Exec Command="$(ToolsDir)dlb.exe cIf $(DatDir)dlb.lst $(BinDir)nhdat" WorkingDirectory="$(DatDir)"/>
+       <Delete Files="$(DatDir)porthelp"/>
+
+       </Target>
+  <Target Name="Clean">
+       <Delete Files="$(BinDir)nhdat"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/afterlevcomp.proj b/win/win32/vs2017/afterlevcomp.proj
new file mode 100644 (file)
index 0000000..924f66c
--- /dev/null
@@ -0,0 +1,12 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="@(Desfiles->'$(DatDir)%(filename)%(extension)');$(BinDir)levcomp.exe"
+        Outputs="@(Levfiles->'$(DatDir)%(filename)%(extension)')">
+       <Exec Command="$(ToolsDir)levcomp.exe @(Desfiles, ' ')" WorkingDirectory="$(DatDir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="@(Levfiles->'$(DatDir)%(filename)%(extension)')"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/aftermakedefs.proj b/win/win32/vs2017/aftermakedefs.proj
new file mode 100644 (file)
index 0000000..20adf1b
--- /dev/null
@@ -0,0 +1,22 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(ToolsDir)makedefs.exe"
+        Outputs="@(Defs)">
+       <Exec Command="$(ToolsDir)makedefs.exe -v" WorkingDirectory="$(UtilDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -o" WorkingDirectory="$(UtilDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -p" WorkingDirectory="$(UtilDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -m" WorkingDirectory="$(UtilDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -z" WorkingDirectory="$(UtilDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -d" WorkingDirectory="$(DatDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -r" WorkingDirectory="$(DatDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -s" WorkingDirectory="$(DatDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -q" WorkingDirectory="$(DatDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -h" WorkingDirectory="$(DatDir)"/>
+       <Exec Command="$(ToolsDir)makedefs.exe -e" WorkingDirectory="$(DatDir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="@(Defs)"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/afternethack.proj b/win/win32/vs2017/afternethack.proj
new file mode 100644 (file)
index 0000000..3b76932
--- /dev/null
@@ -0,0 +1,15 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <!-- TODO not copying record -->
+  <Target Name="Build" 
+       Inputs="$(SysWinntDir)defaults.nh;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp"
+       Outputs="$(BinDir)defaults.nh;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf;$(BinDir)symbols;$(BinDir)record;$(BinDir)opthelp">
+
+       <Copy SourceFiles="$(SysWinntDir)defaults.nh;$(DocDir)Guidebook.txt;$(DatDir)license;$(SysWinntDir)sysconf;$(DocDir)nethack.txt;$(DatDir)symbols;$(WinWin32Dir)record;$(DatDir)opthelp" DestinationFolder="$(BinDir)"/>
+
+       </Target>
+  <Target Name="Clean">
+       <Delete Files="$(BinDir)defaults.nh;$(BinDir)Guidebook.txt;$(BinDir)license;$(BinDir)sysconf;$(BinDir)nethack.txt;$(BinDir)symbols;$(BinDir)record;$(BinDir)opthelp"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/afterrecover.proj b/win/win32/vs2017/afterrecover.proj
new file mode 100644 (file)
index 0000000..0652e78
--- /dev/null
@@ -0,0 +1,12 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(DocDir)recover.txt"
+        Outputs="$(BinDir)recover.txt">
+       <Copy SourceFiles="$(DocDir)recover.txt" DestinationFiles="$(BinDir)recover.txt"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="$(BinDir)recover.txt"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/aftertile2bmp.proj b/win/win32/vs2017/aftertile2bmp.proj
new file mode 100644 (file)
index 0000000..28d2b2e
--- /dev/null
@@ -0,0 +1,13 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(ToolsDir)tile2bmp.exe;$(WinShareDir)monsters.txt;$(WinShareDir)objects.txt"
+        Outputs="$(WinWin32Dir)tiles.bmp">
+       <Exec Command="$(ToolsDir)tile2bmp.exe tiles.bmp" WorkingDirectory="$(SrcDir)"/>
+       <Move SourceFiles="$(SrcDir)tiles.bmp" DestinationFolder="$(WinWin32Dir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="$(WinWin32Dir)tiles.bmp"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/aftertilemap.proj b/win/win32/vs2017/aftertilemap.proj
new file mode 100644 (file)
index 0000000..bfdb48f
--- /dev/null
@@ -0,0 +1,12 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(ToolsDir)tilemap.exe"
+        Outputs="$(SrcDir)tile.c">
+       <Exec Command="$(ToolsDir)tilemap.exe" WorkingDirectory="$(SrcDir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="$(SrcDir)tile.c"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/afteruudecode.proj b/win/win32/vs2017/afteruudecode.proj
new file mode 100644 (file)
index 0000000..b33e3c4
--- /dev/null
@@ -0,0 +1,20 @@
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="dirs.props"/>
+  <Import Project="files.props"/>
+  <Target Name="Build" 
+     Inputs="$(ToolsDir)uudecode.exe;@(UUFiles)"
+        Outputs="@(IconFiles);@(BmpFiles);@(RecordFiles)">
+       <Exec Command="$(ToolsDir)uudecode.exe $(SysWinntDir)nhico.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)mnsel.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)mnselcnt.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)mnunsel.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)petmark.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)pilemark.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)splash.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)rip.uu" WorkingDirectory="$(WinWin32Dir)"/>
+       <Exec Command="$(ToolsDir)uudecode.exe $(WinWin32Dir)record.uu" WorkingDirectory="$(WinWin32Dir)"/>
+  </Target>
+  <Target Name="Clean">
+       <Delete Files="@(IconFiles);@(BmpFiles);@(RecordFiles)"/>
+  </Target>
+</Project>
diff --git a/win/win32/vs2017/build.bat b/win/win32/vs2017/build.bat
new file mode 100644 (file)
index 0000000..c2798cf
--- /dev/null
@@ -0,0 +1,4 @@
+msbuild NetHack.sln /t:Clean;Build /p:Configuration=Debug;Platform=Win32
+msbuild NetHack.sln /t:Clean;Build /p:Configuration=Debug;Platform=x64
+msbuild NetHack.sln /t:Clean;Build /p:Configuration=Release;Platform=Win32
+msbuild NetHack.sln /t:Clean;Build /p:Configuration=Release;Platform=x64
diff --git a/win/win32/vs2017/common.props b/win/win32/vs2017/common.props
new file mode 100644 (file)
index 0000000..5a5b2ed
--- /dev/null
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup Condition="'$(Configuration)'=='Debug'">
+    <LinkIncremental>true</LinkIncremental>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)'=='Release'">
+    <LinkIncremental>false</LinkIncremental>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <WarningLevel>Level3</WarningLevel>
+      <PreprocessorDefinitions>WIN32;CRT_SECURE_NO_DEPRECATE;_SCL_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+      <ProgramDatabaseFile>$(SymbolsDir)$(TargetName).pdb</ProgramDatabaseFile>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'">
+    <ClCompile>
+      <Optimization>Disabled</Optimization>
+      <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
+      <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+    </ClCompile>
+    <Link>
+      <GenerateDebugInformation>true</GenerateDebugInformation>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'">
+    <ClCompile>
+      <Optimization>MaxSpeed</Optimization>
+      <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
+      <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
+    </ClCompile>
+    <Link>
+      <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
+    </Link>
+  </ItemDefinitionGroup>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/config.props b/win/win32/vs2017/config.props
new file mode 100644 (file)
index 0000000..84ef04d
--- /dev/null
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup Label="ProjectConfigurations">
+    <ProjectConfiguration Include="Debug|Win32">
+      <Configuration>Debug</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Debug|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/console.props b/win/win32/vs2017/console.props
new file mode 100644 (file)
index 0000000..8fdca9d
--- /dev/null
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <PreprocessorDefinitions>_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <Link>
+      <SubSystem>Console</SubSystem>
+    </Link>
+  </ItemDefinitionGroup>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/default.props b/win/win32/vs2017/default.props
new file mode 100644 (file)
index 0000000..688b5d3
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ConfigurationType>Application</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup> 
+  <PropertyGroup Condition="'$(Configuration)'=='Debug'" >
+    <UseDebugLibraries>true</UseDebugLibraries>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)'=='Release'" >
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+  </PropertyGroup>
+
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/default_dll.props b/win/win32/vs2017/default_dll.props
new file mode 100644 (file)
index 0000000..94a07f4
--- /dev/null
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <ConfigurationType>DynamicLibrary</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <CharacterSet>MultiByte</CharacterSet>
+    <PlatformToolset>v140</PlatformToolset>
+  </PropertyGroup> 
+  <PropertyGroup Condition="'$(Configuration)'=='Debug'" >
+    <UseDebugLibraries>true</UseDebugLibraries>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)'=='Release'" >
+    <UseDebugLibraries>false</UseDebugLibraries>
+    <WholeProgramOptimization>true</WholeProgramOptimization>
+  </PropertyGroup>
+
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/dgncomp.vcxproj b/win/win32/vs2017/dgncomp.vcxproj
new file mode 100644 (file)
index 0000000..b91cc12
--- /dev/null
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{8A3F81C7-2968-49A8-86BF-2669412AD7DE}</ProjectGuid>
+  </PropertyGroup>
+
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);$(SysShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+
+
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)alloc.c" />
+    <ClCompile Include="$(SysShareDir)\dgn_lex.c" />
+    <ClCompile Include="$(UtilDir)dgn_main.c" />
+    <ClCompile Include="$(SysShareDir)dgn_yacc.c" />
+    <ClCompile Include="$(UtilDir)panic.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)align.h" />
+    <ClInclude Include="$(IncDir)attrib.h" />
+    <ClInclude Include="$(IncDir)color.h" />
+    <ClInclude Include="$(IncDir)config.h" />
+    <ClInclude Include="$(IncDir)config1.h" />
+    <ClInclude Include="$(IncDir)context.h" />
+    <ClInclude Include="$(IncDir)coord.h" />
+    <ClInclude Include="$(IncDir)decl.h" />
+    <ClInclude Include="$(IncDir)dgn_comp.h" />
+    <ClInclude Include="$(IncDir)dgn_file.h" />
+    <ClInclude Include="$(IncDir)display.h" />
+    <ClInclude Include="$(IncDir)dungeon.h" />
+    <ClInclude Include="$(IncDir)engrave.h" />
+    <ClInclude Include="$(IncDir)flag.h" />
+    <ClInclude Include="$(IncDir)global.h" />
+    <ClInclude Include="$(IncDir)mkroom.h" />
+    <ClInclude Include="$(IncDir)monattk.h" />
+    <ClInclude Include="$(IncDir)monst.h" />
+    <ClInclude Include="$(IncDir)monsym.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)obj.h" />
+    <ClInclude Include="$(IncDir)objclass.h" />
+    <ClInclude Include="$(IncDir)onames.h" />
+    <ClInclude Include="$(IncDir)permonst.h" />
+    <ClInclude Include="$(IncDir)pm.h" />
+    <ClInclude Include="$(IncDir)prop.h" />
+    <ClInclude Include="$(IncDir)quest.h" />
+    <ClInclude Include="$(IncDir)rect.h" />
+    <ClInclude Include="$(IncDir)region.h" />
+    <ClInclude Include="$(IncDir)rm.h" />
+    <ClInclude Include="$(IncDir)skills.h" />
+    <ClInclude Include="$(IncDir)spell.h" />
+    <ClInclude Include="$(IncDir)timeout.h" />
+    <ClInclude Include="$(IncDir)tradstdc.h" />
+    <ClInclude Include="$(IncDir)trampoli.h" />
+    <ClInclude Include="$(IncDir)trap.h" />
+    <ClInclude Include="$(IncDir)vision.h" />
+    <ClInclude Include="$(IncDir)winprocs.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(IncDir)wintype.h" />
+    <ClInclude Include="$(IncDir)you.h" />
+    <ClInclude Include="$(IncDir)youprop.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Choose>
+    <When Condition=" '$(YACC)'!='' "> 
+      <PropertyGroup>
+        <BuildDependsOn>
+          Lex;
+          Yacc;
+          $(BuildDependsOn);
+        </BuildDependsOn>
+      </PropertyGroup>
+       </When>
+       <Otherwise>
+      <PropertyGroup>
+        <BuildDependsOn>
+          NoLex;
+          NoYacc;
+          $(BuildDependsOn);
+        </BuildDependsOn>
+      </PropertyGroup>
+       </Otherwise>
+  </Choose>  
+  <Target Name="Yacc" Inputs="$(UtilDir)dgn_comp.y" Outputs="$(UtilDir)dgn_yacc.c;$(IncDir)dgn_comp.h">
+    <Message Text="Running Yacc" Importance="high" />
+    <Exec Command="$(YACC) -d dgn_comp.y" WorkingDirectory="$(UtilDir)" />
+       <Move SourceFiles="$(UtilDir)y.tab.c;$(UtilDir)y.tab.h" DestinationFiles="$(UtilDir)dgn_yacc.c;$(IncDir)dgn_comp.h" />  
+  </Target>
+  <Target Name="Lex" Inputs="$(UtilDir)lev_comp.l" Outputs="$(UtilDir)dgn_lex.c">
+    <Message Text="Running Lex" Importance="high" />
+    <Exec Command="$(LEX) dgn_comp.l" WorkingDirectory="$(UtilDir)" />
+       <Move SourceFiles="$(UtilDir)lex.yy.c" DestinationFiles="$(UtilDir)dgn_lex.c" />        
+  </Target>
+  <Target Name="NoYacc" Inputs="$(SysShareDir)dgn_yacc.c;$(SysShareDir)dgn_comp.h" Outputs="$(UtilDir)dgn_yacc.c;$(IncDir)dgn_comp.h">
+    <Message Text="No Yacc using pre-built files" Importance="high" />
+       <Copy SourceFiles="$(SysShareDir)dgn_yacc.c;$(SysShareDir)dgn_comp.h" DestinationFiles="$(UtilDir)dgn_yacc.c;$(IncDir)dgn_comp.h" />    
+  </Target>
+  <Target Name="NoLex" Inputs="$(SysShareDir)dgn_lex.c" Outputs="$(UtilDir)dgn_lex.c">
+    <Message Text="No Lex using pre-built files" Importance="high" />
+       <Copy SourceFiles="$(SysShareDir)dgn_lex.c" DestinationFiles="$(UtilDir)dgn_lex.c" />   
+  </Target>
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afterdgncomp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afterdgncomp.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+       <Delete Files="$(UtilDir)dgn_yacc.c;$(IncDir)dgn_comp.h;$(UtilDir)dgn_lex.c" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afterdgncomp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/dirs.props b/win/win32/vs2017/dirs.props
new file mode 100644 (file)
index 0000000..8cdcf60
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <RootDir>$(MSBuildProjectDirectory)\..\..\..\</RootDir>
+    <BinDir>$(RootDir)bin\$(Configuration)\$(Platform)\</BinDir>
+    <ObjDir>$(ProjectDir)obj\$(Configuration)\$(Platform)\$(TargetName)\</ObjDir>
+    <SymbolsDir>$(ProjectDir)symbols\$(Configuration)\$(Platform)\$(TargetName)\</SymbolsDir>
+    <ToolsDir>$(RootDir)tools\$(Configuration)\$(Platform)\</ToolsDir>
+    <UtilDir>$(RootDir)util\</UtilDir>
+    <DatDir>$(RootDir)dat\</DatDir>
+    <DocDir>$(RootDir)doc\</DocDir>
+    <IncDir>$(RootDir)include\</IncDir>
+    <SrcDir>$(RootDir)src\</SrcDir>
+       <SysDir>$(RootDir)sys\</SysDir>
+    <UtilDir>$(RootDir)util\</UtilDir>
+       <SysShareDir>$(RootDir)sys\share\</SysShareDir>
+    <SysWinntDir>$(RootDir)sys\winnt\</SysWinntDir>
+    <WinShareDir>$(RootDir)win\share\</WinShareDir>
+    <WinTtyDir>$(RootDir)win\tty\</WinTtyDir>
+    <WinWin32Dir>$(RootDir)win\win32\</WinWin32Dir>
+    <OutDir>$(ToolsDir)</OutDir>
+       <IntDir>$(ObjDir)</IntDir>
+  </PropertyGroup>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/dlb.vcxproj b/win/win32/vs2017/dlb.vcxproj
new file mode 100644 (file)
index 0000000..06424d4
--- /dev/null
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{0303A585-3F83-4BB7-AF6B-1E12C8FB54AC}</ProjectGuid>
+  </PropertyGroup>
+
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);$(SysShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)alloc.c" />
+    <ClCompile Include="$(SrcDir)dlb.c" />
+    <ClCompile Include="$(UtilDir)dlb_main.c" />
+    <ClCompile Include="$(UtilDir)panic.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)dlb.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afterdlb.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afterdlb.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afterdlb.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/dll.props b/win/win32/vs2017/dll.props
new file mode 100644 (file)
index 0000000..3b37e2e
--- /dev/null
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <PreprocessorDefinitions>WIN32CON;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+    <Link>
+      <SubSystem>Windows</SubSystem>
+    </Link>
+  </ItemDefinitionGroup>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/files.props b/win/win32/vs2017/files.props
new file mode 100644 (file)
index 0000000..d905edb
--- /dev/null
@@ -0,0 +1,228 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <!-- -v -->
+    <Defs Include = "$(DatDir)options"/>
+    <Defs Include = "$(IncDir)date.h"/>
+       <!-- -o -->
+    <Defs Include = "$(IncDir)onames.h"/>
+       <!-- -p -->
+    <Defs Include = "$(IncDir)pm.h"/>
+       <!-- -m -->
+    <Defs Include = "$(SrcDir)monstr.c"/>
+       <!-- -z -->
+    <Defs Include = "$(IncDir)vis_tab.h"/>
+    <Defs Include = "$(SrcDir)vis_tab.c"/>
+       <!-- -d -->
+    <Defs Include = "$(DatDir)data"/>
+       <!-- -r -->
+    <Defs Include = "$(DatDir)rumors"/>
+       <!-- -s -->
+    <Defs Include = "$(DatDir)engrave"/>
+    <Defs Include = "$(DatDir)epitaph"/>
+    <Defs Include = "$(DatDir)bogusmon"/>
+       <!-- -q -->
+    <Defs Include = "$(DatDir)quest.dat"/>
+       <!-- -h -->
+    <Defs Include = "$(DatDir)oracles"/>
+       <!-- -e -->
+    <Defs Include = "$(DatDir)dungeon.pdf"/>
+  </ItemGroup>
+  <ItemGroup>
+    <Desfiles Include = "arch.des"/>
+    <Desfiles Include = "barb.des"/>
+    <Desfiles Include = "bigroom.des"/>
+    <Desfiles Include = "castle.des"/>
+    <Desfiles Include = "caveman.des"/>
+    <Desfiles Include = "endgame.des"/>
+    <Desfiles Include = "gehennom.des"/>
+    <Desfiles Include = "healer.des"/>
+    <Desfiles Include = "knight.des"/>
+    <Desfiles Include = "knox.des"/>
+    <Desfiles Include = "medusa.des"/>
+    <Desfiles Include = "mines.des"/>
+    <Desfiles Include = "monk.des"/>
+    <Desfiles Include = "oracle.des"/>
+    <Desfiles Include = "priest.des"/>
+    <Desfiles Include = "ranger.des"/>
+    <Desfiles Include = "rogue.des"/>
+    <Desfiles Include = "samurai.des"/>
+    <Desfiles Include = "sokoban.des"/>
+    <Desfiles Include = "tourist.des"/>
+    <Desfiles Include = "tower.des"/>
+    <Desfiles Include = "valkyrie.des"/>
+    <Desfiles Include = "wizard.des"/> 
+    <Desfiles Include = "yendor.des"/>
+  </ItemGroup>
+  <ItemGroup>
+    <Levfiles Include = "bigrm-1.lev"/>
+    <Levfiles Include = "bigrm-2.lev"/>
+    <Levfiles Include = "bigrm-3.lev"/>
+    <Levfiles Include = "bigrm-4.lev"/>
+    <Levfiles Include = "bigrm-5.lev"/>
+    <Levfiles Include = "bigrm-6.lev"/>
+    <Levfiles Include = "bigrm-7.lev"/>
+    <Levfiles Include = "bigrm-8.lev"/>
+    <Levfiles Include = "bigrm-9.lev"/>
+    <Levfiles Include = "bigrm-10.lev"/>
+    <Levfiles Include = "castle.lev"/>
+    <Levfiles Include = "air.lev"/>
+    <Levfiles Include = "astral.lev"/>
+    <Levfiles Include = "earth.lev"/>
+    <Levfiles Include = "fire.lev"/>
+    <Levfiles Include = "water.lev"/>
+    <Levfiles Include = "asmodeus.lev"/>
+    <Levfiles Include = "baalz.lev"/>
+    <Levfiles Include = "juiblex.lev"/>
+    <Levfiles Include = "orcus.lev"/>
+    <Levfiles Include = "sanctum.lev"/>
+    <Levfiles Include = "valley.lev"/>
+    <Levfiles Include = "knox.lev"/>
+    <Levfiles Include = "minefill.lev"/>
+    <Levfiles Include = "minend-1.lev"/>
+    <Levfiles Include = "minend-2.lev"/>
+    <Levfiles Include = "minend-3.lev"/>
+    <Levfiles Include = "minetn-1.lev"/>
+    <Levfiles Include = "minetn-2.lev"/>
+    <Levfiles Include = "minetn-3.lev"/>
+    <Levfiles Include = "minetn-4.lev"/>
+    <Levfiles Include = "minetn-5.lev"/>
+    <Levfiles Include = "minetn-6.lev"/>
+    <Levfiles Include = "minetn-7.lev"/>
+    <Levfiles Include = "medusa-1.lev"/>
+    <Levfiles Include = "medusa-2.lev"/>
+    <Levfiles Include = "medusa-3.lev"/>
+    <Levfiles Include = "medusa-4.lev"/>
+    <Levfiles Include = "oracle.lev"/>
+    <Levfiles Include = "soko1-1.lev"/>
+    <Levfiles Include = "soko1-2.lev"/>
+    <Levfiles Include = "soko2-1.lev"/>
+    <Levfiles Include = "soko2-2.lev"/>
+    <Levfiles Include = "soko3-1.lev"/>
+    <Levfiles Include = "soko3-2.lev"/>
+    <Levfiles Include = "soko4-1.lev"/>
+    <Levfiles Include = "soko4-2.lev"/>
+    <Levfiles Include = "tower1.lev"/>
+    <Levfiles Include = "tower2.lev"/>
+    <Levfiles Include = "tower3.lev"/>
+    <Levfiles Include = "fakewiz1.lev"/>
+    <Levfiles Include = "fakewiz2.lev"/>
+    <Levfiles Include = "wizard1.lev"/>
+    <Levfiles Include = "wizard2.lev"/>
+    <Levfiles Include = "wizard3.lev"/>
+    <Levfiles Include = "arc-fila.lev"/>
+    <Levfiles Include = "arc-filb.lev"/>
+    <Levfiles Include = "arc-goal.lev"/>
+    <Levfiles Include = "arc-loca.lev"/>
+    <Levfiles Include = "arc-strt.lev"/>
+    <Levfiles Include = "bar-fila.lev"/>
+    <Levfiles Include = "bar-filb.lev"/>
+    <Levfiles Include = "bar-goal.lev"/>
+    <Levfiles Include = "bar-loca.lev"/>
+    <Levfiles Include = "bar-strt.lev"/>
+    <Levfiles Include = "cav-fila.lev"/>
+    <Levfiles Include = "cav-filb.lev"/>
+    <Levfiles Include = "cav-goal.lev"/>
+    <Levfiles Include = "cav-loca.lev"/>
+    <Levfiles Include = "cav-strt.lev"/>
+    <Levfiles Include = "hea-fila.lev"/>
+    <Levfiles Include = "hea-filb.lev"/>
+    <Levfiles Include = "hea-goal.lev"/>
+    <Levfiles Include = "hea-loca.lev"/>
+    <Levfiles Include = "hea-strt.lev"/>
+    <Levfiles Include = "kni-fila.lev"/>
+    <Levfiles Include = "kni-filb.lev"/>
+    <Levfiles Include = "kni-goal.lev"/>
+    <Levfiles Include = "kni-loca.lev"/>
+    <Levfiles Include = "kni-strt.lev"/>
+    <Levfiles Include = "mon-fila.lev"/>
+    <Levfiles Include = "mon-filb.lev"/>
+    <Levfiles Include = "mon-goal.lev"/>
+    <Levfiles Include = "mon-loca.lev"/>
+    <Levfiles Include = "mon-strt.lev"/>
+    <Levfiles Include = "pri-fila.lev"/>
+    <Levfiles Include = "pri-filb.lev"/>
+    <Levfiles Include = "pri-goal.lev"/>
+    <Levfiles Include = "pri-loca.lev"/>
+    <Levfiles Include = "pri-strt.lev"/>
+    <Levfiles Include = "ran-fila.lev"/>
+    <Levfiles Include = "ran-filb.lev"/>
+    <Levfiles Include = "ran-goal.lev"/>
+    <Levfiles Include = "ran-loca.lev"/>
+    <Levfiles Include = "ran-strt.lev"/>
+    <Levfiles Include = "rog-fila.lev"/>
+    <Levfiles Include = "rog-filb.lev"/>
+    <Levfiles Include = "rog-goal.lev"/>
+    <Levfiles Include = "rog-loca.lev"/>
+    <Levfiles Include = "rog-strt.lev"/>
+    <Levfiles Include = "sam-fila.lev"/>
+    <Levfiles Include = "sam-filb.lev"/>
+    <Levfiles Include = "sam-goal.lev"/>
+    <Levfiles Include = "sam-loca.lev"/>
+    <Levfiles Include = "sam-strt.lev"/>
+    <Levfiles Include = "tou-fila.lev"/>
+    <Levfiles Include = "tou-filb.lev"/>
+    <Levfiles Include = "tou-goal.lev"/>
+    <Levfiles Include = "tou-loca.lev"/>
+    <Levfiles Include = "tou-strt.lev"/>
+    <Levfiles Include = "val-fila.lev"/>
+    <Levfiles Include = "val-filb.lev"/>
+    <Levfiles Include = "val-goal.lev"/>
+    <Levfiles Include = "val-loca.lev"/>
+    <Levfiles Include = "val-strt.lev"/>
+    <Levfiles Include = "wiz-fila.lev"/>
+    <Levfiles Include = "wiz-filb.lev"/>
+    <Levfiles Include = "wiz-goal.lev"/>
+    <Levfiles Include = "wiz-loca.lev"/>
+    <Levfiles Include = "wiz-strt.lev"/>
+  </ItemGroup>
+  <ItemGroup>
+    <UUFiles Include = "$(SysWinntDir)nhico.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)mnsel.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)mnselcnt.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)mnunsel.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)petmark.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)pilemark.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)splash.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)rip.uu"/>
+    <UUFiles Include = "$(WinWin32Dir)record.uu"/>
+  </ItemGroup>
+  <ItemGroup>
+    <IconFiles Include = "$(WinWin32Dir)nethack.ico"/>
+  </ItemGroup>
+  <ItemGroup>
+    <RecordFiles Include = "$(WinWin32Dir)record"/>
+  </ItemGroup>
+  <ItemGroup>
+    <BmpFiles Include = "$(WinWin32Dir)mnsel.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)mnselcnt.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)mnunsel.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)petmark.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)pilemark.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)rip.bmp"/>
+    <BmpFiles Include = "$(WinWin32Dir)splash.bmp"/>
+  </ItemGroup>
+  <ItemGroup>
+    <DlbList Include = "$(DatDir)data"/>
+    <DlbList Include = "$(DatDir)oracles"/>
+    <DlbList Include = "$(DatDir)options" Condition="Exists('$(DatDir)options')"/>
+    <DlbList Include = "$(DatDir)ttyoptions" Condition="Exists('$(DatDir)ttyoptions')"/>
+    <DlbList Include = "$(DatDir)guioptions" Condition="Exists('$(DatDir)guioptions')"/>
+    <DlbList Include = "$(DatDir)quest.dat"/>
+    <DlbList Include = "$(DatDir)rumors"/>
+    <DlbList Include = "$(DatDir)engrave"/>
+    <DlbList Include = "$(DatDir)epitaph"/>
+    <DlbList Include = "$(DatDir)bogusmon"/>
+    <DlbList Include = "$(DatDir)tribute"/>
+    <DlbList Include = "$(DatDir)help"/>
+    <DlbList Include = "$(DatDir)porthelp"/>
+    <DlbList Include = "$(DatDir)hh"/>
+    <DlbList Include = "$(DatDir)cmdhelp"/>
+    <DlbList Include = "$(DatDir)history"/>
+    <DlbList Include = "$(DatDir)opthelp"/>
+    <DlbList Include = "$(DatDir)wizhelp"/>
+    <DlbList Include = "$(DatDir)dungeon"/>
+    <DlbList Include = "$(DatDir)license"/>
+    <DlbList Include = "$(DatDir)*.lev"/>
+  </ItemGroup>
+ </Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/levcomp.vcxproj b/win/win32/vs2017/levcomp.vcxproj
new file mode 100644 (file)
index 0000000..e345021
--- /dev/null
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{9DD9C52E-E8C9-4533-BD22-83C055C0AABA}</ProjectGuid>
+  </PropertyGroup>
+  
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);$(SysShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;YY_NO_UNISTD_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)alloc.c" />
+    <ClCompile Include="$(SrcDir)decl.c" />
+    <ClCompile Include="$(SrcDir)drawing.c" />
+    <ClCompile Include="$(UtilDir)lev_lex.c" />
+    <ClCompile Include="$(UtilDir)lev_main.c" />
+    <ClCompile Include="$(UtilDir)lev_yacc.c" />
+    <ClCompile Include="$(SrcDir)monst.c" />
+    <ClCompile Include="$(SrcDir)objects.c" />
+    <ClCompile Include="$(UtilDir)panic.c" />  
+  </ItemGroup>
+  
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)lev_comp.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Choose>
+    <When Condition=" '$(YACC)'!='' "> 
+      <PropertyGroup>
+        <BuildDependsOn>
+          Lex;
+          Yacc;
+          $(BuildDependsOn);
+        </BuildDependsOn>
+      </PropertyGroup>
+       </When>
+       <Otherwise>
+      <PropertyGroup>
+        <BuildDependsOn>
+          NoLex;
+          NoYacc;
+          $(BuildDependsOn);
+        </BuildDependsOn>
+      </PropertyGroup>
+       </Otherwise>
+  </Choose>
+  <Target Name="Yacc" Inputs="$(UtilDir)lev_comp.y" Outputs="$(UtilDir)lev_yacc.c;$(IncDir)lev_comp.h">
+    <Message Text="Running Yacc" Importance="high" />
+    <Exec Command="$(YACC) -d lev_comp.y" WorkingDirectory="$(UtilDir)" />
+       <Move SourceFiles="$(UtilDir)y.tab.c;$(UtilDir)y.tab.h" DestinationFiles="$(UtilDir)lev_yacc.c;$(IncDir)lev_comp.h" />  
+  </Target>
+  <Target Name="Lex" Inputs="$(UtilDir)lev_comp.l" Outputs="$(UtilDir)lev_lex.c">
+    <Message Text="Running Lex" Importance="high" />
+    <Exec Command="$(LEX) lev_comp.l" WorkingDirectory="$(UtilDir)" />
+       <Move SourceFiles="$(UtilDir)lex.yy.c" DestinationFiles="$(UtilDir)lev_lex.c" />        
+  </Target>
+  <Target Name="NoYacc" Inputs="$(SysShareDir)lev_yacc.c;$(SysShareDir)lev_comp.h" Outputs="$(UtilDir)lev_yacc.c;$(IncDir)lev_comp.h">
+    <Message Text="No Yacc using pre-built files" Importance="high" />
+       <Copy SourceFiles="$(SysShareDir)lev_yacc.c;$(SysShareDir)lev_comp.h" DestinationFiles="$(UtilDir)lev_yacc.c;$(IncDir)lev_comp.h" />    
+  </Target>
+  <Target Name="NoLex" Inputs="$(SysShareDir)lev_lex.c" Outputs="$(UtilDir)lev_lex.c">
+    <Message Text="No Lex using pre-built files" Importance="high" />
+       <Copy SourceFiles="$(SysShareDir)lev_lex.c" DestinationFiles="$(UtilDir)lev_lex.c" />   
+  </Target>
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afterlevcomp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afterlevcomp.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+       <Delete Files="$(UtilDir)lev_yacc.c;$(IncDir)lev_comp.h;$(UtilDir)lev_lex.c" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afterlevcomp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/makedefs.vcxproj b/win/win32/vs2017/makedefs.vcxproj
new file mode 100644 (file)
index 0000000..b9beba3
--- /dev/null
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">       
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{BA3DD34C-04B7-40D0-B373-9329AA9E8945}</ProjectGuid>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+
+
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  
+
+  <ItemGroup>
+    <ClCompile Include="..\..\..\util\makedefs.c" />
+    <ClCompile Include="..\..\..\src\monst.c" />
+    <ClCompile Include="..\..\..\src\objects.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="..\..\..\include\config.h" />
+    <ClInclude Include="..\..\..\include\config1.h" />
+    <ClInclude Include="..\..\..\include\context.h" />
+    <ClInclude Include="..\..\..\include\coord.h" />
+    <ClInclude Include="..\..\..\include\global.h" />
+    <ClInclude Include="..\..\..\include\monattk.h" />
+    <ClInclude Include="..\..\..\include\monflag.h" />
+    <ClInclude Include="..\..\..\include\monsym.h" />
+    <ClInclude Include="..\..\..\include\ntconf.h" />
+    <ClInclude Include="..\..\..\include\objclass.h" />
+    <ClInclude Include="..\..\..\include\patchlevel.h" />
+    <ClInclude Include="..\..\..\include\qtext.h" />
+    <ClInclude Include="..\..\..\include\tradstdc.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="aftermakedefs.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="aftermakedefs.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="aftermakedefs.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/nh340key.def b/win/win32/vs2017/nh340key.def
new file mode 100644 (file)
index 0000000..f484a53
--- /dev/null
@@ -0,0 +1,8 @@
+LIBRARY nh340key
+EXPORTS
+ProcessKeystroke
+NHkbhit
+CheckInput
+SourceWhere
+SourceAuthor
+KeyHandlerName
diff --git a/win/win32/vs2017/nh340key.vcxproj b/win/win32/vs2017/nh340key.vcxproj
new file mode 100644 (file)
index 0000000..8b20686
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{be04e242-a1e9-4593-b95b-057f37330b76}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>nh340key</RootNamespace>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default_dll.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="dll.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <ImportLibrary>$(ToolsDir)$(TargetName).lib</ImportLibrary>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
+    <Link>
+      <ModuleDefinitionFile>nh340key.def</ModuleDefinitionFile>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="$(SysWinntDir)nh340key.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)hack.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(SysWinntDir)win32api.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/nhdefkey.def b/win/win32/vs2017/nhdefkey.def
new file mode 100644 (file)
index 0000000..2950904
--- /dev/null
@@ -0,0 +1,8 @@
+LIBRARY nhdefkey
+EXPORTS
+ProcessKeystroke
+NHkbhit
+CheckInput
+SourceWhere
+SourceAuthor
+KeyHandlerName
diff --git a/win/win32/vs2017/nhdefkey.vcxproj b/win/win32/vs2017/nhdefkey.vcxproj
new file mode 100644 (file)
index 0000000..98e70a8
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{6813477F-64B6-4B97-B230-438D0D233385}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>nhdefkey</RootNamespace>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default_dll.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="dll.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <ImportLibrary>$(ToolsDir)$(TargetName).lib</ImportLibrary>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
+    <Link>
+      <ModuleDefinitionFile>nhdefkey.def</ModuleDefinitionFile>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="$(SysWinntDir)nhdefkey.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)hack.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(SysWinntDir)win32api.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/nhraykey.def b/win/win32/vs2017/nhraykey.def
new file mode 100644 (file)
index 0000000..5432a1a
--- /dev/null
@@ -0,0 +1,8 @@
+LIBRARY nhraykey
+EXPORTS
+ProcessKeystroke
+NHkbhit
+CheckInput
+SourceWhere
+SourceAuthor
+KeyHandlerName
diff --git a/win/win32/vs2017/nhraykey.vcxproj b/win/win32/vs2017/nhraykey.vcxproj
new file mode 100644 (file)
index 0000000..0017f4a
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2e1f4bb3-3bd7-43ad-8e64-d3b8a2f5d7b2}</ProjectGuid>
+    <Keyword>Win32Proj</Keyword>
+    <RootNamespace>nhraykey</RootNamespace>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default_dll.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="dll.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+    </ClCompile>
+    <Link>
+      <ImportLibrary>$(ToolsDir)$(TargetName).lib</ImportLibrary>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
+    <Link>
+      <ModuleDefinitionFile>nhraykey.def</ModuleDefinitionFile>
+    </Link>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="$(SysWinntDir)nhraykey.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)hack.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(SysWinntDir)win32api.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/recover.vcxproj b/win/win32/vs2017/recover.vcxproj
new file mode 100644 (file)
index 0000000..c766265
--- /dev/null
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{2F35F228-6733-4FE5-9B46-B3AA10D4BC2E}</ProjectGuid>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <PropertyGroup>
+    <OutDir>$(BinDir)</OutDir>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ClCompile Include="$(UtilDir)recover.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)config.h" />
+    <ClInclude Include="$(IncDir)config1.h" />
+    <ClInclude Include="$(IncDir)coord.h" />
+    <ClInclude Include="$(IncDir)global.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)tradstdc.h" />
+    <ClInclude Include="$(SysWinntDir)win32api.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afterrecover.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afterrecover.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afterrecover.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/tile2bmp.vcxproj b/win/win32/vs2017/tile2bmp.vcxproj
new file mode 100644 (file)
index 0000000..81a7df8
--- /dev/null
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{642BC75D-ABAF-403E-8224-7C725FD4CB42}</ProjectGuid>
+  </PropertyGroup>
+
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);$(SysShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+  
+  <ItemGroup>
+    <ClCompile Include="$(SrcDir)decl.c" />
+    <ClCompile Include="$(SrcDir)drawing.c" />
+    <ClCompile Include="$(SrcDir)monst.c" />
+    <ClCompile Include="$(SrcDir)objects.c" />
+    <ClCompile Include="$(WinShareDir)tile2bmp.c" />
+    <ClCompile Include="$(WinShareDir)tiletext.c" />
+    <ClCompile Include="$(WinShareDir)tilemap.c">
+       <PreprocessorDefinitions>TILETEXT;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+       </ClCompile>
+  </ItemGroup>
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+
+ <Target Name="AfterBuild">
+    <MSBuild Projects="aftertile2bmp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="aftertile2bmp.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="aftertile2bmp.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/tilemap.vcxproj b/win/win32/vs2017/tilemap.vcxproj
new file mode 100644 (file)
index 0000000..100775d
--- /dev/null
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{93F10526-209E-41D7-BBEA-775787876895}</ProjectGuid>
+  </PropertyGroup>
+  
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+
+  <ItemDefinitionGroup>
+    <ClCompile>
+      <AdditionalIncludeDirectories>$(IncDir);$(SysWinntDir);$(SysShareDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+      <PreprocessorDefinitions>WIN32CON;DLB;MSWIN_GRAPHICS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+    </ClCompile>
+  </ItemDefinitionGroup>
+
+  <ItemGroup>
+    <ClCompile Include="$(WinShareDir)tilemap.c" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="$(IncDir)align.h" />
+    <ClInclude Include="$(IncDir)attrib.h" />
+    <ClInclude Include="$(IncDir)color.h" />
+    <ClInclude Include="$(IncDir)config.h" />
+    <ClInclude Include="$(IncDir)config1.h" />
+    <ClInclude Include="$(IncDir)context.h" />
+    <ClInclude Include="$(IncDir)coord.h" />
+    <ClInclude Include="$(IncDir)decl.h" />
+    <ClInclude Include="$(IncDir)dgn_comp.h" />
+    <ClInclude Include="$(IncDir)dgn_file.h" />
+    <ClInclude Include="$(IncDir)display.h" />
+    <ClInclude Include="$(IncDir)dungeon.h" />
+    <ClInclude Include="$(IncDir)engrave.h" />
+    <ClInclude Include="$(IncDir)flag.h" />
+    <ClInclude Include="$(IncDir)global.h" />
+    <ClInclude Include="$(IncDir)mkroom.h" />
+    <ClInclude Include="$(IncDir)monattk.h" />
+    <ClInclude Include="$(IncDir)monst.h" />
+    <ClInclude Include="$(IncDir)monsym.h" />
+    <ClInclude Include="$(IncDir)ntconf.h" />
+    <ClInclude Include="$(IncDir)obj.h" />
+    <ClInclude Include="$(IncDir)objclass.h" />
+    <ClInclude Include="$(IncDir)onames.h" />
+    <ClInclude Include="$(IncDir)permonst.h" />
+    <ClInclude Include="$(IncDir)pm.h" />
+    <ClInclude Include="$(IncDir)prop.h" />
+    <ClInclude Include="$(IncDir)quest.h" />
+    <ClInclude Include="$(IncDir)rect.h" />
+    <ClInclude Include="$(IncDir)region.h" />
+    <ClInclude Include="$(IncDir)rm.h" />
+    <ClInclude Include="$(IncDir)skills.h" />
+    <ClInclude Include="$(IncDir)spell.h" />
+    <ClInclude Include="$(IncDir)timeout.h" />
+    <ClInclude Include="$(IncDir)tradstdc.h" />
+    <ClInclude Include="$(IncDir)trampoli.h" />
+    <ClInclude Include="$(IncDir)trap.h" />
+    <ClInclude Include="$(IncDir)vision.h" />
+    <ClInclude Include="$(IncDir)winprocs.h" />
+    <ClInclude Include="$(IncDir)wintty.h" />
+    <ClInclude Include="$(IncDir)wintype.h" />
+    <ClInclude Include="$(IncDir)you.h" />
+    <ClInclude Include="$(IncDir)youprop.h" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="aftertilemap.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="aftertilemap.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="aftertilemap.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file
diff --git a/win/win32/vs2017/tiles.vcxproj b/win/win32/vs2017/tiles.vcxproj
new file mode 100644 (file)
index 0000000..f17bd02
--- /dev/null
@@ -0,0 +1,124 @@
+<?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|x64">
+      <Configuration>Debug</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|Win32">
+      <Configuration>Release</Configuration>
+      <Platform>Win32</Platform>
+    </ProjectConfiguration>
+    <ProjectConfiguration Include="Release|x64">
+      <Configuration>Release</Configuration>
+      <Platform>x64</Platform>
+    </ProjectConfiguration>
+  </ItemGroup>
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{55946465-FC65-47B3-BB48-742C7694C0D6}</ProjectGuid>
+    <Keyword>MakeFileProj</Keyword>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
+    <ConfigurationType>Makefile</ConfigurationType>
+    <UseOfMfc>false</UseOfMfc>
+    <PlatformToolset>v120</PlatformToolset>
+  </PropertyGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <ImportGroup Label="ExtensionSettings">
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
+  </ImportGroup>
+  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
+    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
+    <Import Project="$(VCTargetsPath)Microsoft.CPP.UpgradeFromVC60.props" />
+  </ImportGroup>
+  <PropertyGroup Label="UserMacros" />
+  <PropertyGroup>
+    <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\util\</OutDir>
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\..\util\</OutDir>
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\Debug\</IntDir>
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">.\Debug\</IntDir>
+    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">nmake /f "tiles.mak"</NMakeBuildCommandLine>
+    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">nmake /f "tiles.mak"</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">nmake /f "tiles.mak" /a</NMakeReBuildCommandLine>
+    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">nmake /f "tiles.mak" /a</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
+    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
+    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">..\win\win32\tiles.bmp</NMakeOutput>
+    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">..\win\win32\tiles.bmp</NMakeOutput>
+    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
+    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
+    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
+    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
+    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
+    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
+    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
+    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
+    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
+    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\util\</OutDir>
+    <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\..\util\</OutDir>
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\Release\</IntDir>
+    <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">.\Release\</IntDir>
+    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">nmake /f "tiles.mak"</NMakeBuildCommandLine>
+    <NMakeBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|x64'">nmake /f "tiles.mak"</NMakeBuildCommandLine>
+    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">nmake /f "tiles.mak" /a</NMakeReBuildCommandLine>
+    <NMakeReBuildCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|x64'">nmake /f "tiles.mak" /a</NMakeReBuildCommandLine>
+    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
+    <NMakeCleanCommandLine Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
+    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">..\win\win32\tiles.bmp</NMakeOutput>
+    <NMakeOutput Condition="'$(Configuration)|$(Platform)'=='Release|x64'">..\win\win32\tiles.bmp</NMakeOutput>
+    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
+    <NMakePreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
+    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
+    <NMakeIncludeSearchPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(NMakeIncludeSearchPath)</NMakeIncludeSearchPath>
+    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
+    <NMakeForcedIncludes Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(NMakeForcedIncludes)</NMakeForcedIncludes>
+    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
+    <NMakeAssemblySearchPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(NMakeAssemblySearchPath)</NMakeAssemblySearchPath>
+    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
+    <NMakeForcedUsingAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(NMakeForcedUsingAssemblies)</NMakeForcedUsingAssemblies>
+  </PropertyGroup>
+  <ItemDefinitionGroup>
+  </ItemDefinitionGroup>
+  <ItemGroup>
+    <ProjectReference Include="tile2bmp.vcxproj">
+      <Project>{642bc75d-abaf-403e-8224-7c725fd4cb42}</Project>
+      <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
+    </ProjectReference>
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <ImportGroup Label="ExtensionTargets">
+  </ImportGroup>
+</Project>
diff --git a/win/win32/vs2017/uudecode.vcxproj b/win/win32/vs2017/uudecode.vcxproj
new file mode 100644 (file)
index 0000000..581a8c0
--- /dev/null
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="config.props" />
+
+  <PropertyGroup Label="Globals">
+    <ProjectGuid>{63F9B82B-F589-4082-ABE5-D4F0682050AB}</ProjectGuid>
+  </PropertyGroup>
+
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
+  <Import Project="default.props" />
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
+  <Import Project="console.props" />
+  <Import Project="common.props" />
+  <Import Project="dirs.props" />
+  <Import Project="files.props" />
+  <ItemGroup>
+    <ClCompile Include="$(SysShareDir)uudecode.c" />
+  </ItemGroup>
+  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+  <Target Name="AfterBuild">
+    <MSBuild Projects="afteruudecode.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterClean">
+    <MSBuild Projects="afteruudecode.proj" Targets="Clean" Properties="Configuration=$(Configuration)" />
+  </Target>
+  <Target Name="AfterRebuild">
+    <MSBuild Projects="afteruudecode.proj" Targets="Build" Properties="Configuration=$(Configuration)" />
+  </Target>
+</Project>
\ No newline at end of file