diff --git a/project/vc2008_mfc/VBA2008.vcproj b/project/vc2008_mfc/VBA2008.vcproj
index 76b79cea..0e85b9dc 100644
--- a/project/vc2008_mfc/VBA2008.vcproj
+++ b/project/vc2008_mfc/VBA2008.vcproj
@@ -1405,6 +1405,10 @@
RelativePath="..\..\src\win32\stdafx.h"
>
+
+
@@ -1469,13 +1473,17 @@
>
+
+
#include "AcceleratorManager.h"
#include "Display.h"
diff --git a/src/win32/VBA.rc b/src/win32/VBA.rc
index 44e6bb10..7b78117a 100644
--- a/src/win32/VBA.rc
+++ b/src/win32/VBA.rc
@@ -7,11 +7,70 @@
//
// Generated from the TEXTINCLUDE 2 resource.
//
+#ifndef APSTUDIO_INVOKED
+#include "targetver.h"
+#endif
#include "afxres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
+/////////////////////////////////////////////////////////////////////////////
+// German (Germany) resources
+
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_DEU)
+#ifdef _WIN32
+LANGUAGE LANG_GERMAN, SUBLANG_GERMAN
+#pragma code_page(1252)
+#endif //_WIN32
+
+#ifdef APSTUDIO_INVOKED
+/////////////////////////////////////////////////////////////////////////////
+//
+// TEXTINCLUDE
+//
+
+1 TEXTINCLUDE
+BEGIN
+ "resource.h\0"
+END
+
+2 TEXTINCLUDE
+BEGIN
+ "#ifndef APSTUDIO_INVOKED\r\n"
+ "#include ""targetver.h""\r\n"
+ "#endif\r\n"
+ "#include ""afxres.h""\r\0"
+END
+
+3 TEXTINCLUDE
+BEGIN
+ "#define _AFX_NO_SPLITTER_RESOURCES\r\n"
+ "#define _AFX_NO_OLE_RESOURCES\r\n"
+ "#define _AFX_NO_TRACKER_RESOURCES\r\n"
+ "#define _AFX_NO_PROPERTY_RESOURCES\r\n"
+ "\r\n"
+ "#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)\r\n"
+ "LANGUAGE 9, 1\r\n"
+ "#pragma code_page(1252)\r\n"
+ "#include ""res\\VBA.rc2"" // non-Microsoft Visual C++ edited resources\r\n"
+ "#include ""afxres.rc"" // Standard components\r\n"
+ "#endif\r\0"
+END
+
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// Icon
+//
+
+// Icon with lowest ID value placed first to ensure application icon
+// remains consistent on all systems.
+IDI_MAINICON ICON "res\\VBA.ico"
+#endif // German (Germany) resources
+/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
@@ -1496,7 +1555,7 @@ BEGIN
BEGIN
VALUE "Comments", "VBA-M comes with NO WARRANTY. Use it at your own risk."
VALUE "CompanyName", "http://vba-m.ngemu.com/"
- VALUE "FileDescription", "GB & GBA emulator for Windows"
+ VALUE "FileDescription", "GB/C/A emulator for Windows"
VALUE "FileVersion", "1, 8, 0, 0"
VALUE "InternalName", "VBA-M"
VALUE "LegalCopyright", "Copyright © 2008 VBA-M development team"
@@ -1512,15 +1571,6 @@ BEGIN
END
-/////////////////////////////////////////////////////////////////////////////
-//
-// Icon
-//
-
-// Icon with lowest ID value placed first to ensure application icon
-// remains consistent on all systems.
-IDI_MAINICON ICON "VBA-M.ico"
-
/////////////////////////////////////////////////////////////////////////////
//
// Menu
@@ -2243,7 +2293,17 @@ END
//
// Generated from the TEXTINCLUDE 3 resource.
//
+#define _AFX_NO_SPLITTER_RESOURCES
+#define _AFX_NO_OLE_RESOURCES
+#define _AFX_NO_TRACKER_RESOURCES
+#define _AFX_NO_PROPERTY_RESOURCES
+#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
+LANGUAGE 9, 1
+#pragma code_page(1252)
+#include "res\VBA.rc2" // non-Microsoft Visual C++ edited resources
+#include "afxres.rc" // Standard components
+#endif
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
diff --git a/src/win32/VBA-M.ico b/src/win32/res/VBA.ico
similarity index 100%
rename from src/win32/VBA-M.ico
rename to src/win32/res/VBA.ico
diff --git a/src/win32/res/VBA.rc2 b/src/win32/res/VBA.rc2
new file mode 100644
index 00000000..b1e617e7
--- /dev/null
+++ b/src/win32/res/VBA.rc2
@@ -0,0 +1,13 @@
+//
+// VBA.RC2 - resources Microsoft Visual C++ does not edit directly
+//
+
+#ifdef APSTUDIO_INVOKED
+#error this file is not editable by Microsoft Visual C++
+#endif //APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+// Add manually edited resources here...
+
+/////////////////////////////////////////////////////////////////////////////
diff --git a/src/win32/resource.h b/src/win32/resource.h
index fe01a034..ec449c0f 100644
--- a/src/win32/resource.h
+++ b/src/win32/resource.h
@@ -869,12 +869,13 @@
#define ID_OUTPUTAPI_XAUDIO2CONFIG 40364
// Next default values for new objects
-//
+//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 164
-#define _APS_NEXT_COMMAND_VALUE 40365
-#define _APS_NEXT_CONTROL_VALUE 1288
-#define _APS_NEXT_SYMED_VALUE 103
+
+#define _APS_NEXT_RESOURCE_VALUE 164
+#define _APS_NEXT_CONTROL_VALUE 1288
+#define _APS_NEXT_SYMED_VALUE 103
+#define _APS_NEXT_COMMAND_VALUE 40365
#endif
#endif
diff --git a/src/win32/stdafx.h b/src/win32/stdafx.h
index fcadc242..83b6e750 100644
--- a/src/win32/stdafx.h
+++ b/src/win32/stdafx.h
@@ -19,19 +19,32 @@
#pragma once
-// Exclude rarely-used stuff from Windows headers like
-// Cryptography, DDE, RPC, Shell, and Windows Sockets
-#define WIN32_LEAN_AND_MEAN
+#ifndef VC_EXTRALEAN
+#define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers
+#endif
-// Target for Windows 2000 (Required by GetMenuBar and other functions)
-#define NTDDI_VERSION NTDDI_WIN2K // new
-#define _WIN32_WINNT 0x0500 // old
-
-// Enable STRICT type checking
+#ifndef NO_STRICT
#define STRICT
+#endif
-#include
-#include
-#include
-#include "VBA.h"
-#include "resource.h"
+#include "targetver.h"
+
+#define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS // some CString constructors will be explicit
+
+// turns off MFC's hiding of some common and often safely ignored warning messages
+#define _AFX_ALL_WARNINGS
+
+#include // MFC core and standard components
+#include // MFC extensions
+
+
+#ifndef _AFX_NO_OLE_SUPPORT
+#include // MFC support for Internet Explorer 4 Common Controls
+#endif
+#ifndef _AFX_NO_AFXCMN_SUPPORT
+#include // MFC support for Windows Common Controls
+#endif // _AFX_NO_AFXCMN_SUPPORT
+
+#include // MFC support for ribbons and control bars
+
+#include "VBA.h" // It would be cleaner if we could leave this out
diff --git a/src/win32/targetver.h b/src/win32/targetver.h
new file mode 100644
index 00000000..223e072c
--- /dev/null
+++ b/src/win32/targetver.h
@@ -0,0 +1,25 @@
+
+#pragma once
+
+// The following macros define the minimum required platform. The minimum required platform
+// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run
+// your application. The macros work by enabling all features available on platform versions up to and
+// including the version specified.
+
+// Modify the following defines if you have to target a platform prior to the ones specified below.
+// Refer to MSDN for the latest info on corresponding values for different platforms.
+#ifndef WINVER // Specifies that the minimum required platform is Windows 2000.
+#define WINVER 0x0500 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows 2000.
+#define _WIN32_WINNT 0x0500 // Change this to the appropriate value to target other versions of Windows.
+#endif
+
+#ifndef _WIN32_WINDOWS // Specifies that the minimum required platform is Windows 98.
+#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
+#endif
+
+#ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 5.0.
+#define _WIN32_IE 0x0500 // Change this to the appropriate value to target other versions of IE.
+#endif // Actually, we don't care