diff --git a/desmume/src/matrix.h b/desmume/src/matrix.h
index 0f15e6269..a9ec857ea 100644
--- a/desmume/src/matrix.h
+++ b/desmume/src/matrix.h
@@ -125,9 +125,15 @@ FORCEINLINE void memset_u16_le(void* dst, u16 val)
T1WriteWord((u8*)&u32val,0,val);
T1WriteWord((u8*)&u32val,2,val);
////const __m128i temp = _mm_set_epi32(u32val,u32val,u32val,u32val);
+
+#ifdef __INTEL_COMPILER
+ const __m128i temp = _mm_set_epi32(u32val,u32val,u32val,u32val);
+ MACRODO_N(NUM/8,_mm_store_si128((__m128i*)((u8*)dst+(X)*16), temp));
+#else
__m128 temp; temp.m128_i32[0] = u32val;
//MACRODO_N(NUM/8,_mm_store_si128((__m128i*)((u8*)dst+(X)*16), temp));
MACRODO_N(NUM/8,_mm_store_ps1((float*)((u8*)dst+(X)*16), temp));
+#endif
}
#else //no sse2
diff --git a/desmume/src/windows/DeSmuME_Intel.icproj b/desmume/src/windows/DeSmuME_Intel.icproj
index e0f3931b1..21170b564 100644
--- a/desmume/src/windows/DeSmuME_Intel.icproj
+++ b/desmume/src/windows/DeSmuME_Intel.icproj
@@ -1,15 +1,17 @@
-
+
+
+ Name="PreBuildEventTool"
+ CommandLine="defaultconfig\SubWCRev.bat"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Name="PreBuildEventTool"
+ CommandLine="defaultconfig\SubWCRev.bat"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
+ RelativePath="..\gdbstub\gdbstub.cpp"/>
+ RelativePath="..\gdbstub.h"/>
+
+
+
+
+ RelativePath="..\bios.h"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ RelativePath="..\saves.h"/>
+
+
+
+
+
+
+
+
+
+
+
+ RelativePath="..\wifi.h"/>
+ RelativePath=".\filter\2xsai.cpp"/>
+ RelativePath=".\filter\bilinear.cpp"/>
+ RelativePath=".\filter\filter.h"/>
+ RelativePath=".\filter\hq2x.cpp"/>
+ RelativePath=".\filter\scanline.cpp"/>
+
+
+
-
-
-
-
+ RelativePath=".\disView.h"/>
+
+ RelativePath=".\lightView.h"/>
+
+
+ RelativePath=".\memView.h"/>
+ RelativePath=".\oamView.h"/>
+
+
-
+ RelativePath=".\ramwatch.h"/>
+ RelativePath=".\soundView.h"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/desmume/src/windows/DeSmuME_Intel.sln b/desmume/src/windows/DeSmuME_Intel.sln
index 4f8f94d10..b26560563 100644
--- a/desmume/src/windows/DeSmuME_Intel.sln
+++ b/desmume/src/windows/DeSmuME_Intel.sln
@@ -1,22 +1,32 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
-Project("{EAF909A5-FA59-4C3D-9431-0FCC20D5BCF9}") = "DeSmuME_Intel", "DeSmuME_Intel.icproj", "{439F53E2-431F-4F28-9058-C6A9B00B503F}"
+Project("{EAF909A5-FA59-4C3D-9431-0FCC20D5BCF9}") = "DeSmuME_Intel", "DeSmuME_Intel.icproj", "{61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {439F53E2-431F-4F28-9058-C6A9B00B503F}.Debug|Win32.ActiveCfg = Debug|Win32
- {439F53E2-431F-4F28-9058-C6A9B00B503F}.Debug|Win32.Build.0 = Debug|Win32
- {439F53E2-431F-4F28-9058-C6A9B00B503F}.Release|Win32.ActiveCfg = Release|Win32
- {439F53E2-431F-4F28-9058-C6A9B00B503F}.Release|Win32.Build.0 = Release|Win32
- {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|Win32.Build.0 = Release|Win32
- {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|Win32.ActiveCfg = Release|Win32
- {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Debug|Win32.Build.0 = Debug|Win32
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Debug|Win32.ActiveCfg = Debug|Win32
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Debug|Win32.Build.0 = Debug|Win32
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Debug|x64.ActiveCfg = Debug|x64
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Debug|x64.Build.0 = Debug|x64
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Release|Win32.ActiveCfg = Release|Win32
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Release|Win32.Build.0 = Release|Win32
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Release|x64.ActiveCfg = Release|x64
+ {61FB2DAF-A8E9-4CCC-ADF4-B824B4F00187}.Release|x64.Build.0 = Release|x64
{9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Debug|Win32.ActiveCfg = Debug|Win32
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Debug|Win32.Build.0 = Debug|Win32
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Debug|x64.ActiveCfg = Debug|x64
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Debug|x64.Build.0 = Debug|x64
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|Win32.ActiveCfg = Release|Win32
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|Win32.Build.0 = Release|Win32
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|x64.ActiveCfg = Release|x64
+ {9F5F72A1-D3A5-4918-B460-E076B16D10A9}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/desmume/src/windows/DeSmuME_Intel.vcproj b/desmume/src/windows/DeSmuME_Intel.vcproj
index 0d20d549b..833856dc5 100644
--- a/desmume/src/windows/DeSmuME_Intel.vcproj
+++ b/desmume/src/windows/DeSmuME_Intel.vcproj
@@ -1,7 +1,7 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-