diff --git a/projects/msvc15/VARCem.sln b/projects/msvc15/VARCem.sln
new file mode 100644
index 0000000..6036e55
--- /dev/null
+++ b/projects/msvc15/VARCem.sln
@@ -0,0 +1,31 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27130.2036
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "VARCem", "VARCem.vcxproj", "{6E445F28-CA8F-430F-8CCF-C59C53516AC5}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Debug|x64.ActiveCfg = Debug|x64
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Debug|x64.Build.0 = Debug|x64
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Debug|x86.ActiveCfg = Debug|Win32
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Debug|x86.Build.0 = Debug|Win32
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Release|x64.ActiveCfg = Release|x64
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Release|x64.Build.0 = Release|x64
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Release|x86.ActiveCfg = Release|Win32
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {85A5962B-0218-472C-A361-6E55D8FE7E9B}
+ EndGlobalSection
+EndGlobal
diff --git a/projects/msvc15/VARCem.vcxproj b/projects/msvc15/VARCem.vcxproj
new file mode 100644
index 0000000..1e8b43c
--- /dev/null
+++ b/projects/msvc15/VARCem.vcxproj
@@ -0,0 +1,762 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ x64
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 15.0
+ {6E445F28-CA8F-430F-8CCF-C59C53516AC5}
+ Win32Proj
+ VARCem
+ 10.0.16299.0
+
+
+
+ Application
+ true
+ v141
+ NotSet
+
+
+ Application
+ false
+ v141
+ true
+ NotSet
+
+
+ Application
+ true
+ v141
+ NotSet
+
+
+ Application
+ false
+ v141
+ true
+ NotSet
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ false
+
+
+ true
+ false
+
+
+ false
+ false
+
+
+ false
+ false
+
+
+
+ NotUsing
+ Level3
+ Disabled
+ true
+ WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ winmm.lib;ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;iphlpapi.lib;psapi.lib;Comctl32.lib;DInput8.lib;d3d9.lib;d3dx9.lib;ddraw.lib;dxguid.lib;%(AdditionalDependencies)
+
+
+ $(ProjectDir)\..\..\src;%(AdditionalIncludeDirectories)
+
+
+
+
+ NotUsing
+ Level3
+ Disabled
+ true
+ _DEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ winmm.lib;ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;iphlpapi.lib;psapi.lib;Comctl32.lib;DInput8.lib;d3d9.lib;d3dx9.lib;ddraw.lib;dxguid.lib;%(AdditionalDependencies)
+
+
+ $(ProjectDir)\..\..\src;%(AdditionalIncludeDirectories)
+
+
+
+
+ NotUsing
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+ winmm.lib;ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;iphlpapi.lib;psapi.lib;Comctl32.lib;DInput8.lib;d3d9.lib;d3dx9.lib;ddraw.lib;dxguid.lib;%(AdditionalDependencies)
+
+
+ $(ProjectDir)\..\..\src;%(AdditionalIncludeDirectories)
+
+
+
+
+ NotUsing
+ Level3
+ MaxSpeed
+ true
+ true
+ true
+ NDEBUG;_WINDOWS;%(PreprocessorDefinitions)
+ true
+
+
+ Windows
+ true
+ true
+ true
+ winmm.lib;ws2_32.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;iphlpapi.lib;psapi.lib;Comctl32.lib;DInput8.lib;d3d9.lib;d3dx9.lib;ddraw.lib;dxguid.lib;%(AdditionalDependencies)
+
+
+ $(ProjectDir)\..\..\src;%(AdditionalIncludeDirectories)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/projects/msvc15/VARCem.vcxproj.filters b/projects/msvc15/VARCem.vcxproj.filters
new file mode 100644
index 0000000..c07cc56
--- /dev/null
+++ b/projects/msvc15/VARCem.vcxproj.filters
@@ -0,0 +1,1638 @@
+
+
+
+
+ {69e2513c-1659-477c-9344-9b231ece2a86}
+
+
+ {394484c6-8edd-4c7a-b725-59ce97316964}
+
+
+ {ad1696e2-c2ca-4137-9625-79ab0e568358}
+
+
+ {0e80f090-ba1b-4742-b521-57640a5e7409}
+
+
+ {b4e8f582-13b4-42b9-a728-d386257f820e}
+
+
+ {b2b26f7e-4730-45e6-a7dd-9d81acf5d9a9}
+
+
+ {1cbc69cc-abf3-4c3f-9045-daa90d321744}
+
+
+ {457389db-e409-4241-b97d-092998f7e1eb}
+
+
+ {b465915e-1bb4-47a0-9282-195835d10527}
+
+
+ {9e35190e-96a0-4f69-805e-2f06ce93664a}
+
+
+ {8011339f-543c-45cd-bd16-bcd69d5fe800}
+
+
+ {a823d659-3f80-40e4-ab99-109af8ed3310}
+
+
+ {3b7f4688-3464-43cb-82c4-28bf8bbf9008}
+
+
+ {cf05d527-ca0f-4dea-b5cd-5a3684f5d117}
+
+
+ {cd17d813-c024-462b-a1f3-93e91bbce743}
+
+
+ {2058cdb5-46fe-4746-9e0d-1fe616e59cbd}
+
+
+ {c3116352-12eb-4f63-a311-ae64e220b19e}
+
+
+ {f1fcd10c-95aa-45e9-80a6-a27563d0549b}
+
+
+ {631aa0fe-dc9f-4e98-853b-6c8e82e555a1}
+
+
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ crcspeed
+
+
+ crcspeed
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ lzf
+
+
+ lzf
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ machine
+
+
+ network
+
+
+ network
+
+
+ network
+
+
+ network
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt\c_interface
+
+
+ sound\munt\sha1
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cdrom
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ cpu
+
+
+ crcspeed
+
+
+ crcspeed
+
+
+ disk
+
+
+ disk
+
+
+ disk
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ floppy
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ game
+
+
+ lang
+
+
+ lzf
+
+
+ lzf
+
+
+ machine
+
+
+ machine
+
+
+ network
+
+
+ network
+
+
+ network
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ network\slirp
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ scsi
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt
+
+
+ sound\munt\c_interface
+
+
+ sound\munt\c_interface
+
+
+ sound\munt\c_interface
+
+
+ sound\munt\sha1
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ sound\resid-fp
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ video
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+ win
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ win
+
+
+
\ No newline at end of file
diff --git a/projects/msvc15/global.props b/projects/msvc15/global.props
new file mode 100644
index 0000000..2a47866
--- /dev/null
+++ b/projects/msvc15/global.props
@@ -0,0 +1,14 @@
+
+
+
+
+
+ $(IncludePath)
+
+
+
+ _USE_MATH_DEFINES;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;USE_DYNAREC
+
+
+
+
\ No newline at end of file