diff -ruB us//Makefile us-msvc//Makefile
--- us//Makefile	2010-12-18 20:09:06.000000000 +0300
+++ us-msvc//Makefile	2011-04-10 18:19:03.000000000 +0400
@@ -1,10 +1,10 @@
 .SUFFIXES : .dep .cpp
-CXX=icl -c
-LINK=xilink
+CXX=cl -c
+LINK=link
 
 #-RTCsu -Qtrapuv
 
-CFLAGS_COMMON=-nologo -W3 -Wcheck -Qms0 -EHa- -GR- -Zi -MT -MP -Oi \
+CFLAGS_COMMON=-nologo -W3  -Qms0 -EHa- -GR- -Zi -MT -MP -Oi \
          -D_CRT_SECURE_NO_DEPRECATE -DUSE_SND_EXTERNAL_BUFFER -D_PREFIX_
 
 !ifdef VGEMUL
@@ -22,7 +22,7 @@
 !ifdef DEBUG
 CFLAGS_DEBUG=-Od -DDEBUG -D_DEBUG
 !else
-CFLAGS_RELEASE=-O3 -Qipo
+CFLAGS_RELEASE=-O2 -Qipo
 !endif
 
 CXXFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:forScope,wchar_t
@@ -37,10 +37,10 @@
         debug.cpp draw.cpp drawnomc.cpp draw_384.cpp dx.cpp dxerr.cpp dxovr.cpp \
         dxrcopy.cpp dxrend.cpp dxrendch.cpp dxrframe.cpp dxr_4bpp.cpp dxr_512.cpp \
         dxr_advm.cpp dxr_atm.cpp dxr_atm0.cpp dxr_atm2.cpp dxr_atm6.cpp dxr_atm7.cpp \
-        dxr_atmf.cpp dxr_prof.cpp dxr_rsm.cpp dxr_text.cpp dxr_vd.cpp \
+        dxr_atmf.cpp dxr_prof.cpp dxr_rsm.cpp dxr_text.cpp \
         emulkeys.cpp emul_2203.cpp fntsrch.cpp font.cpp font14.cpp font16.cpp \
         font8.cpp fontatm2.cpp fontdata.cpp gs.cpp gshlbass.cpp gshle.cpp \
-        gsz80.cpp gui.cpp hdd.cpp hddaspi.cpp hddio.cpp iehelp.cpp init.cpp \
+        gsz80.cpp gui.cpp hdd.cpp hddio.cpp iehelp.cpp init.cpp \
         input.cpp inputpc.cpp io.cpp keydefs.cpp leds.cpp mainloop.cpp \
         memory.cpp modem.cpp opendlg.cpp savesnd.cpp sdcard.cpp snapshot.cpp \
         snd_bass.cpp sound.cpp sshot_png.cpp tape.cpp util.cpp vars.cpp \
diff -ruB us//sndrender/Makefile us-msvc//sndrender/Makefile
--- us//sndrender/Makefile	2011-01-05 18:42:53.000000000 +0300
+++ us-msvc//sndrender/Makefile	2011-04-10 18:19:24.000000000 +0400
@@ -1,6 +1,6 @@
-CXX=icl -c
+CXX=cl -c
 
-CFLAGS_COMMON=-nologo -W3 -Wcheck -Qms0 -EHa- -GR- -Zi -MT -MP -Oi \
+CFLAGS_COMMON=-nologo -W3  -Qms0 -EHa- -GR- -Zi -MT -MP -Oi -I.. \
          -D_CRT_SECURE_NO_DEPRECATE -DUSE_SND_EXTERNAL_BUFFER -D_PREFIX_
 
 !ifdef SSE1
@@ -14,12 +14,12 @@
 !ifdef DEBUG
 CFLAGS_DEBUG=-Od -DDEBUG -D_DEBUG
 !else
-CFLAGS_RELEASE=-O3 -Qipo
+CFLAGS_RELEASE=-O2 -Qipo
 !endif
 
 CXXFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:forScope,wchar_t
 CFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:wchar_t
-LIB=xilib
+LIB=lib
 
 all: snd.lib
 
diff -ruB us//sndrender/sndbuffer.cpp us-msvc//sndrender/sndbuffer.cpp
--- us//sndrender/sndbuffer.cpp	2009-09-12 20:50:47.000000000 +0400
+++ us-msvc//sndrender/sndbuffer.cpp	2011-04-10 15:41:26.000000000 +0400
@@ -1,3 +1,4 @@
+#include "../std.h"
 #include "sndbuffer.h"
 
 #ifdef SND_EXTERNAL_BUFFER
diff -ruB us//sndrender/sndcounter.cpp us-msvc//sndrender/sndcounter.cpp
--- us//sndrender/sndcounter.cpp	2009-09-12 20:50:47.000000000 +0400
+++ us-msvc//sndrender/sndcounter.cpp	2011-04-10 15:41:33.000000000 +0400
@@ -1,3 +1,4 @@
+#include "../std.h"
 #include "sndcounter.h"
 
 #ifdef SND_EXTERNAL_BUFFER
diff -ruB us//std.h us-msvc//std.h
--- us//std.h	2010-09-09 00:30:22.000000000 +0400
+++ us-msvc//std.h	2011-04-10 15:44:00.000000000 +0400
@@ -8,7 +8,7 @@
 #include <windows.h>
 #include <windowsx.h>
 #include <commctrl.h>
-#include <ddraw.h>
+#include "ddraw.h"
 #include <dinput.h>
 #include <dsound.h>
 #include <urlmon.h>
diff -ruB us//sysdefs.h us-msvc//sysdefs.h
--- us//sysdefs.h	2009-09-12 20:50:46.000000000 +0400
+++ us-msvc//sysdefs.h	2011-04-10 15:53:08.000000000 +0400
@@ -2,6 +2,11 @@
 #ifndef __SYSDEFS_H_INCLUDED
 #define __SYSDEFS_H_INCLUDED
 
+#if _MSC_VER >= 1300
+#include <intrin.h>
+#include <emmintrin.h>
+#endif
+
 #define inline __inline
 #define forceinline __forceinline
 #define fastcall __fastcall             // parameters in registers
diff -ruB us//wd93crc.cpp us-msvc//wd93crc.cpp
--- us//wd93crc.cpp	2009-09-12 20:50:46.000000000 +0400
+++ us-msvc//wd93crc.cpp	2011-04-10 16:02:55.000000000 +0400
@@ -1,3 +1,4 @@
+#include "std.h"
 
 // for WD1793 engine
 unsigned wd93_crc(unsigned char *ptr, unsigned size)
diff -ruB us//z80/Makefile us-msvc//z80/Makefile
--- us//z80/Makefile	2010-12-18 18:50:08.000000000 +0300
+++ us-msvc//z80/Makefile	2011-04-10 18:19:12.000000000 +0400
@@ -1,6 +1,6 @@
-CXX=icl -c
+CXX=cl -c
 
-CFLAGS_COMMON=-nologo -W3 -Wcheck -Qms0 -EHa- -GR- -Zi -MT -MP -Oi \
+CFLAGS_COMMON=-nologo -W3 -Qms0 -EHa- -GR- -Zi -MT -MP -Oi \
          -D_CRT_SECURE_NO_DEPRECATE -DUSE_SND_EXTERNAL_BUFFER -D_PREFIX_
 
 !ifdef SSE1
@@ -14,12 +14,12 @@
 !ifdef DEBUG
 CFLAGS_DEBUG=-Od -DDEBUG -D_DEBUG
 !else
-CFLAGS_RELEASE=-O3 -Qipo
+CFLAGS_RELEASE=-O2 -Qipo
 !endif
 
 CXXFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:forScope,wchar_t
 CFLAGS=$(CFLAGS_COMMON) $(CFLAGS_DEBUG) $(CFLAGS_RELEASE) -Zc:wchar_t
-LIB=xilib
+LIB=lib
 
 all: z80.lib
 
