diff --git a/.gitignore b/.gitignore index e7b443e8a..c2458f3ab 100644 --- a/.gitignore +++ b/.gitignore @@ -32,5 +32,20 @@ Thumbs.db /Plugin/RSP/pdb /Plugin/RSP/RSP 1.7.dll /Plugin/RSP/RSP_d 1.7.dll +/Plugin64/GFX/lib +/Plugin64/GFX/map +/Plugin64/GFX/pdb +/Plugin64/GFX/PJ64Glide64.dll +/Plugin64/GFX/PJ64Glide64_d.dll +/Plugin64/Input/lib +/Plugin64/Input/map +/Plugin64/Input/pdb +/Plugin64/Input/PJ64_NRage.dll +/Plugin64/Input/PJ64_NRage_d.dll +/Plugin64/RSP/lib +/Plugin64/RSP/map +/Plugin64/RSP/pdb +/Plugin64/RSP/RSP 1.7.dll +/Plugin64/RSP/RSP_d 1.7.dll /Source/3rd Party/wx/lib/vc_lib/mswu/wx/msw/rcdefs.h /Source/3rd Party/wx/lib/vc_lib/mswud/wx/msw/rcdefs.h diff --git a/Bin/Debug64/Config/Project64.cfg b/Bin/Debug64/Config/Project64.cfg new file mode 100644 index 000000000..de2c5dfbc --- /dev/null +++ b/Bin/Debug64/Config/Project64.cfg @@ -0,0 +1,2 @@ +[default] +ConfigFile=..\..\Config\Project64.cfg diff --git a/Bin/Release64/Config/Project64.cfg b/Bin/Release64/Config/Project64.cfg new file mode 100644 index 000000000..de2c5dfbc --- /dev/null +++ b/Bin/Release64/Config/Project64.cfg @@ -0,0 +1,2 @@ +[default] +ConfigFile=..\..\Config\Project64.cfg diff --git a/Config/Project64.cfg.development b/Config/Project64.cfg.development index 93d84e3d9..171c11f11 100644 --- a/Config/Project64.cfg.development +++ b/Config/Project64.cfg.development @@ -18,6 +18,7 @@ Instant Save=..\..\Save\ Instant Save - Use Selected=1 Lang=..\..\Lang Plugin=..\..\Plugin\ +Plugin64=..\..\Plugin64\ Plugin - Use Selected=1 Save=..\..\Save\ Save - Use Selected=1 diff --git a/Project64.vs2013.sln b/Project64.vs2013.sln index 445a5fe47..ba8d91a01 100644 --- a/Project64.vs2013.sln +++ b/Project64.vs2013.sln @@ -60,7 +60,8 @@ Global {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Debug|x64.Build.0 = Debug|x64 {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|Win32.ActiveCfg = Release|Win32 {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|Win32.Build.0 = Release|Win32 - {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|x64.ActiveCfg = Release|Win32 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|x64.ActiveCfg = Release|x64 + {B4A4B994-9111-42B1-93C2-6F1CA8BC4421}.Release|x64.Build.0 = Release|x64 {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Debug|Win32.ActiveCfg = Debug|Win32 {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Debug|Win32.Build.0 = Debug|Win32 {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Debug|x64.ActiveCfg = Debug|x64 @@ -71,13 +72,15 @@ Global {7E534C8E-1ACE-4A88-8807-39A11ED4DA18}.Release|x64.Build.0 = Release|x64 {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|Win32.ActiveCfg = Debug|Win32 {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|Win32.Build.0 = Debug|Win32 - {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|x64.ActiveCfg = Debug|Win32 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|x64.ActiveCfg = Debug|x64 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Debug|x64.Build.0 = Debug|x64 {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Release|Win32.ActiveCfg = Release|Win32 {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Release|Win32.Build.0 = Release|Win32 {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1}.Release|x64.ActiveCfg = Release|Win32 {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|Win32.ActiveCfg = Debug|Win32 {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|Win32.Build.0 = Debug|Win32 - {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|x64.ActiveCfg = Debug|Win32 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|x64.ActiveCfg = Debug|x64 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Debug|x64.Build.0 = Debug|x64 {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Release|Win32.ActiveCfg = Release|Win32 {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Release|Win32.Build.0 = Release|Win32 {8B9961B1-88D9-4EA3-A752-507A00DD9F3D}.Release|x64.ActiveCfg = Release|Win32 @@ -87,7 +90,8 @@ Global {3326E128-33AF-422C-BB7C-67CC6B915610}.Debug|x64.Build.0 = Debug|x64 {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|Win32.ActiveCfg = Release|Win32 {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|Win32.Build.0 = Release|Win32 - {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|x64.ActiveCfg = Release|Win32 + {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|x64.ActiveCfg = Release|x64 + {3326E128-33AF-422C-BB7C-67CC6B915610}.Release|x64.Build.0 = Release|x64 {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Debug|Win32.ActiveCfg = Debug|Win32 {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Debug|Win32.Build.0 = Debug|Win32 {4BC6906B-213E-40D7-9FC7-1A93E228393D}.Debug|x64.ActiveCfg = Debug|Win32 @@ -100,7 +104,8 @@ Global {731BD205-2826-4631-B7AF-117658E88DBC}.Debug|x64.Build.0 = Debug|x64 {731BD205-2826-4631-B7AF-117658E88DBC}.Release|Win32.ActiveCfg = Release|Win32 {731BD205-2826-4631-B7AF-117658E88DBC}.Release|Win32.Build.0 = Release|Win32 - {731BD205-2826-4631-B7AF-117658E88DBC}.Release|x64.ActiveCfg = Release|Win32 + {731BD205-2826-4631-B7AF-117658E88DBC}.Release|x64.ActiveCfg = Release|x64 + {731BD205-2826-4631-B7AF-117658E88DBC}.Release|x64.Build.0 = Release|x64 {360A34F3-3172-4B09-8BC9-B3FBEE677863}.Debug|Win32.ActiveCfg = Debug|Win32 {360A34F3-3172-4B09-8BC9-B3FBEE677863}.Debug|x64.ActiveCfg = Debug|Win32 {360A34F3-3172-4B09-8BC9-B3FBEE677863}.Release|Win32.ActiveCfg = Release|Win32 @@ -156,7 +161,8 @@ Global {2DADDAA5-0F57-46ED-A974-747908DDC7F3}.Release|x64.ActiveCfg = Release|Win32 {FD617E80-9E40-4138-85DA-B94633972E6A}.Debug|Win32.ActiveCfg = Debug|Win32 {FD617E80-9E40-4138-85DA-B94633972E6A}.Debug|Win32.Build.0 = Debug|Win32 - {FD617E80-9E40-4138-85DA-B94633972E6A}.Debug|x64.ActiveCfg = Debug|Win32 + {FD617E80-9E40-4138-85DA-B94633972E6A}.Debug|x64.ActiveCfg = Debug|x64 + {FD617E80-9E40-4138-85DA-B94633972E6A}.Debug|x64.Build.0 = Debug|x64 {FD617E80-9E40-4138-85DA-B94633972E6A}.Release|Win32.ActiveCfg = Release|Win32 {FD617E80-9E40-4138-85DA-B94633972E6A}.Release|Win32.Build.0 = Release|Win32 {FD617E80-9E40-4138-85DA-B94633972E6A}.Release|x64.ActiveCfg = Release|Win32 diff --git a/Source/3rd Party/directx/lib64/dinput8.lib b/Source/3rd Party/directx/lib64/dinput8.lib new file mode 100644 index 000000000..fcd91e148 Binary files /dev/null and b/Source/3rd Party/directx/lib64/dinput8.lib differ diff --git a/Source/3rd Party/directx/lib64/dxguid.lib b/Source/3rd Party/directx/lib64/dxguid.lib new file mode 100644 index 000000000..f3994f9c4 Binary files /dev/null and b/Source/3rd Party/directx/lib64/dxguid.lib differ diff --git a/Source/Project64/Multilanguage/Language Class.cpp b/Source/Project64/Multilanguage/Language Class.cpp index 85df4fc3f..cfd1be356 100644 --- a/Source/Project64/Multilanguage/Language Class.cpp +++ b/Source/Project64/Multilanguage/Language Class.cpp @@ -796,11 +796,7 @@ LRESULT CALLBACK LangSelectProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPa { lResult = HTCAPTION; } -#ifdef _M_IX86 - SetWindowLong(hDlg, DWL_MSGRESULT, lResult); -#else - g_Notify->BreakPoint(__FILEW__,__LINE__); -#endif + SetWindowLong(hDlg, DWLP_MSGRESULT, lResult); return TRUE; } break; diff --git a/Source/Project64/Plugins/Plugin List.cpp b/Source/Project64/Plugins/Plugin List.cpp index 366744c01..3b4654ccd 100644 --- a/Source/Project64/Plugins/Plugin List.cpp +++ b/Source/Project64/Plugins/Plugin List.cpp @@ -69,13 +69,15 @@ void CPluginList::AddPluginFromDir ( CPath Dir) hLib = NULL; } - UINT LastErrorMode = SetErrorMode( SEM_FAILCRITICALERRORS ); + //UINT LastErrorMode = SetErrorMode( SEM_FAILCRITICALERRORS ); WriteTraceF(TraceDebug,__FUNCTION__ ": loading %s",(LPCSTR)Dir); - hLib = LoadLibrary(Dir); - SetErrorMode(LastErrorMode); + hLib = LoadLibrary(Dir); + //SetErrorMode(LastErrorMode); if (hLib == NULL) { + DWORD LoadError = GetLastError(); + WriteTraceF(TraceDebug, __FUNCTION__ ": failed to loadi %s (error: %d)", (LPCSTR)Dir, LoadError); continue; } diff --git a/Source/Project64/Project64.vcxproj b/Source/Project64/Project64.vcxproj index 6f22febea..a032f0e8d 100644 --- a/Source/Project64/Project64.vcxproj +++ b/Source/Project64/Project64.vcxproj @@ -312,10 +312,6 @@ {b4a4b994-9111-42b1-93c2-6f1ca8bc4421} false - - {a4d13408-a794-4199-8fc7-4a9a32505005} - false - diff --git a/Source/Project64/Settings/Settings Class.cpp b/Source/Project64/Settings/Settings Class.cpp index 023a0df36..513a7a3f9 100644 --- a/Source/Project64/Settings/Settings Class.cpp +++ b/Source/Project64/Settings/Settings Class.cpp @@ -248,11 +248,18 @@ void CSettings::AddHowToHandleSetting () AddHandler(Directory_GameUseSelected, new CSettingTypeApplication("Directory","Game - Use Selected",false)); AddHandler(Directory_Plugin, new CSettingTypeSelectedDirectory("Dir:Plugin",Directory_PluginInitial,Directory_PluginSelected,Directory_PluginUseSelected)); - AddHandler(Directory_PluginInitial, new CSettingTypeRelativePath("Plugin","")); +#ifdef _M_IX86 + AddHandler(Directory_PluginInitial, new CSettingTypeRelativePath("Plugin", "")); AddHandler(Directory_PluginSelected, new CSettingTypeApplicationPath("Directory","Plugin",Directory_PluginInitial)); AddHandler(Directory_PluginUseSelected, new CSettingTypeApplication("Directory","Plugin - Use Selected",false)); AddHandler(Directory_PluginSync, new CSettingTypeRelativePath("SyncPlugin","")); - +#else + AddHandler(Directory_PluginInitial, new CSettingTypeRelativePath("Plugin64", "")); + AddHandler(Directory_PluginSelected, new CSettingTypeApplicationPath("Directory", "Plugin64", Directory_PluginInitial)); + AddHandler(Directory_PluginUseSelected, new CSettingTypeApplication("Directory", "Plugin - Use Selected", false)); + AddHandler(Directory_PluginSync, new CSettingTypeRelativePath("SyncPlugin64", "")); +#endif + AddHandler(Directory_SnapShot, new CSettingTypeSelectedDirectory("Dir:Snapshot",Directory_SnapShotInitial,Directory_SnapShotSelected,Directory_SnapShotUseSelected)); AddHandler(Directory_SnapShotInitial, new CSettingTypeRelativePath("Screenshots","")); AddHandler(Directory_SnapShotSelected, new CSettingTypeApplicationPath("Directory","Snap Shot",Directory_SnapShotInitial)); diff --git a/Source/Project64/User Interface/Gui Class.cpp b/Source/Project64/User Interface/Gui Class.cpp index 03c1e7710..dd50c3b83 100644 --- a/Source/Project64/User Interface/Gui Class.cpp +++ b/Source/Project64/User Interface/Gui Class.cpp @@ -1139,14 +1139,8 @@ DWORD CALLBACK AboutBoxProc (HWND hWnd, DWORD uMsg, DWORD wParam, DWORD lParam) { lResult = HTCAPTION; } -#ifdef _M_IX86 - SetWindowLong(hWnd, DWL_MSGRESULT, lResult); -#else - g_Notify->BreakPoint(__FILEW__,__LINE__); -#endif - + SetWindowLong(hWnd, DWLP_MSGRESULT, lResult); return TRUE; - } break; case WM_CTLCOLORSTATIC: diff --git a/Source/RSP/Main.cpp b/Source/RSP/Main.cpp index 943778a04..874394503 100644 --- a/Source/RSP/Main.cpp +++ b/Source/RSP/Main.cpp @@ -98,12 +98,12 @@ const char * AboutMsg ( void ) /************ Functions ***********/ DWORD AsciiToHex (char * HexValue) { - DWORD Count, Finish, Value = 0; + DWORD Value = 0; - Finish = strlen(HexValue); + size_t Finish = strlen(HexValue); if (Finish > 8 ) { Finish = 8; } - for (Count = 0; Count < Finish; Count++) + for (size_t Count = 0; Count < Finish; Count++) { Value = (Value << 4); switch( HexValue[Count] ) @@ -273,6 +273,7 @@ void DetectCpuSpecs(void) DWORD AMD_Features = 0; __try { +#ifdef _M_IX86 _asm { /* Intel features */ mov eax, 1 @@ -284,7 +285,15 @@ void DetectCpuSpecs(void) cpuid or [AMD_Features], edx } - } __except ( EXCEPTION_EXECUTE_HANDLER) { +#else + int cpuInfo[4]; + __cpuid(cpuInfo, 1); + Intel_Features = cpuInfo[3]; + __cpuid(cpuInfo, 0x80000001); + AMD_Features = cpuInfo[3]; +#endif + } + __except (EXCEPTION_EXECUTE_HANDLER) { AMD_Features = Intel_Features = 0; } @@ -411,7 +420,7 @@ void ProcessMenuItem(int ID) } break; case ID_COMPILER: - DialogBox(hinstDLL, "RSPCOMPILER", HWND_DESKTOP, CompilerDlgProc); + DialogBox(hinstDLL, "RSPCOMPILER", HWND_DESKTOP, (DLGPROC)CompilerDlgProc); break; case ID_BREAKONSTARTOFTASK: { @@ -768,5 +777,5 @@ __declspec(dllexport) void PluginLoaded (void) void UseUnregisteredSetting (int /*SettingID*/) { - _asm int 3 + DebugBreak(); } diff --git a/Source/RSP/Profiling.cpp b/Source/RSP/Profiling.cpp index 3e15f4198..95891554b 100644 --- a/Source/RSP/Profiling.cpp +++ b/Source/RSP/Profiling.cpp @@ -59,6 +59,7 @@ public: DWORD OldTimerAddr = StopTimer(); m_CurrentTimerAddr = Address; +#ifdef _M_IX86 DWORD HiValue, LoValue; _asm { pushad @@ -69,14 +70,17 @@ public: } m_StartTimeHi = HiValue; m_StartTimeLo = LoValue; +#else + DebugBreak(); +#endif return OldTimerAddr; } DWORD StopTimer ( void ) - { - DWORD HiValue, LoValue; - + { if (m_CurrentTimerAddr == Timer_None) { return m_CurrentTimerAddr; } +#ifdef _M_IX86 + DWORD HiValue, LoValue; _asm { pushad rdtsc @@ -85,10 +89,10 @@ public: popad } - __int64 StopTime = ((unsigned __int64)HiValue << 32) + (unsigned __int64)LoValue; + __int64 StopTime = ((unsigned __int64)HiValue << 32) + (unsigned __int64)LoValue; __int64 StartTime = ((unsigned __int64)m_StartTimeHi << 32) + (unsigned __int64)m_StartTimeLo; __int64 TimeTaken = StopTime - StartTime; - + PROFILE_ENRTY Entry = m_Entries.find(m_CurrentTimerAddr); if (Entry != m_Entries.end()) { @@ -96,8 +100,11 @@ public: } else { - m_Entries.insert(PROFILE_ENRTIES::value_type(m_CurrentTimerAddr,TimeTaken)); + m_Entries.insert(PROFILE_ENRTIES::value_type(m_CurrentTimerAddr, TimeTaken)); } +#else + DebugBreak(); +#endif DWORD OldTimerAddr = m_CurrentTimerAddr; m_CurrentTimerAddr = Timer_None; diff --git a/Source/RSP/RSP Command.c b/Source/RSP/RSP Command.c index ff6bcb2d0..f362d256e 100644 --- a/Source/RSP/RSP Command.c +++ b/Source/RSP/RSP Command.c @@ -661,7 +661,7 @@ void RSP_Commands_Setup ( HWND hDlg ) SendMessage(hList,LB_SETITEMHEIGHT, (WPARAM)0,(LPARAM)MAKELPARAM(14, 0)); } - sprintf(Location,"%03X",*PrgCount); + sprintf(Location, "%03X", PrgCount ? *PrgCount : 0); hAddress = CreateWindowEx(0,"EDIT",Location, WS_CHILD | ES_UPPERCASE | WS_VISIBLE | WS_BORDER | WS_TABSTOP,375,17,36,18, hDlg,(HMENU)IDC_ADDRESS,hinstDLL, NULL ); if (hAddress) diff --git a/Source/RSP/RSP Register.c b/Source/RSP/RSP Register.c index d93cdf756..387705b82 100644 --- a/Source/RSP/RSP Register.c +++ b/Source/RSP/RSP Register.c @@ -401,7 +401,7 @@ LRESULT CALLBACK RSP_Registers_Proc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM HideRSP_RegisterPanel (CurrentPanel); item.mask = TCIF_PARAM; TabCtrl_GetItem( hTab, TabCtrl_GetCurSel( hTab ), &item ); - CurrentPanel = item.lParam; + CurrentPanel = (int)item.lParam; InvalidateRect( hStatic, NULL, FALSE ); UpdateRSPRegistersScreen(); ShowRSP_RegisterPanel ( CurrentPanel ); @@ -513,7 +513,11 @@ void SetupRSP_RegistersMain (HWND hDlg) { SetupRSP_Vect2Panel ( hDlg ); hStatic = CreateWindowEx(0,"STATIC","", WS_CHILD|WS_VISIBLE, 5,6,616,290,hDlg,0,hinstDLL,NULL ); - RefreshProc = (FARPROC)SetWindowLong( hStatic,GWL_WNDPROC,(long)RefreshRSP_RegProc); +#ifdef _M_IX86 + RefreshProc = (FARPROC)SetWindowLong(hStatic, GWL_WNDPROC, (long)RefreshRSP_RegProc); +#else + DebugBreak(); +#endif UpdateRSPRegistersScreen (); ShowRSP_RegisterPanel ( GeneralPurpose ); diff --git a/Source/RSP/RSP.vcxproj b/Source/RSP/RSP.vcxproj index 58706df18..7e53afb01 100644 --- a/Source/RSP/RSP.vcxproj +++ b/Source/RSP/RSP.vcxproj @@ -5,10 +5,18 @@ Debug Win32 + + Debug + x64 + Release Win32 + + Release + x64 + {A7ED562C-63F3-4B7E-B6B3-2CF7848752E1} @@ -25,7 +33,9 @@ + + <_ProjectFileVersion>12.0.21005.1 @@ -33,7 +43,8 @@ RSP 1.7 RSP_d 1.7 - $(SolutionDir)Plugin\RSP\ + RSP_d 1.7 + $(SolutionDir)Plugin64\RSP\ diff --git a/Source/RSP/Recompiler CPU.c b/Source/RSP/Recompiler CPU.c index cbe636de6..d537fa689 100644 --- a/Source/RSP/Recompiler CPU.c +++ b/Source/RSP/Recompiler CPU.c @@ -933,11 +933,15 @@ DWORD RunRecompilerCPU ( DWORD Cycles ) { StartTimer(*PrgCount); } +#ifdef _M_IX86 _asm { pushad call Block popad } +#else + DebugBreak(); +#endif if (Profiling && IndvidualBlock) { StopTimer(); } @@ -948,7 +952,11 @@ DWORD RunRecompilerCPU ( DWORD Cycles ) { } if (IsMmxEnabled == TRUE) { +#ifdef _M_IX86 _asm emms +#else + DebugBreak(); +#endif } return Cycles; } diff --git a/Source/Settings/Settings.vcxproj b/Source/Settings/Settings.vcxproj index bbccf9443..3c0782484 100644 --- a/Source/Settings/Settings.vcxproj +++ b/Source/Settings/Settings.vcxproj @@ -5,10 +5,18 @@ Debug Win32 + + Debug + x64 + Release Win32 + + Release + x64 + {8B9961B1-88D9-4EA3-A752-507A00DD9F3D} @@ -25,7 +33,9 @@ + + <_ProjectFileVersion>12.0.21005.1 diff --git a/Source/nragev20/DirectInput.cpp b/Source/nragev20/DirectInput.cpp index 006f2218b..2e960c798 100644 --- a/Source/nragev20/DirectInput.cpp +++ b/Source/nragev20/DirectInput.cpp @@ -22,6 +22,7 @@ */ +#include #include "commonIncludes.h" #include #include "NRagePluginV2.h" @@ -29,6 +30,7 @@ #include "DirectInput.h" #include "XInputController.h" #include +#include // ProtoTypes // HRESULT AcquireDevice( LPDIRECTINPUTDEVICE8 lpDirectInputDevice ); diff --git a/Source/nragev20/Interface.cpp b/Source/nragev20/Interface.cpp index 88073aabf..c7f9eaf02 100644 --- a/Source/nragev20/Interface.cpp +++ b/Source/nragev20/Interface.cpp @@ -183,10 +183,10 @@ BOOL CALLBACK MainDlgProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) case TAB_CONTROLLER2: case TAB_CONTROLLER3: case TAB_CONTROLLER4: - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_CONTROLLER ), hDlg, ControllerTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_CONTROLLER), hDlg, (DLGPROC)ControllerTabProc); break; case TAB_SHORTCUTS: - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_SHORTCUT ), hDlg, ShortcutsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_SHORTCUT), hDlg, (DLGPROC)ShortcutsTabProc); break; default: hTabControl = NULL; @@ -420,18 +420,18 @@ BOOL CALLBACK ControllerTabProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPa { case TAB_CONTROLS: if( pcController->fXInput) // added to show the xinput controller config tab --tecnicors - hTabControl = CreateDialog ( g_hResourceDLL, MAKEINTRESOURCE( IDD_XCONTROLS ), hDlg, XControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_XCONTROLS), hDlg, (DLGPROC)XControlsTabProc); else - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_CONTROLS ), hDlg, ControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_CONTROLS), hDlg, (DLGPROC)ControlsTabProc); break; case TAB_DEVICES: - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_DEVICES ), hDlg, DevicesTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_DEVICES), hDlg, (DLGPROC)DevicesTabProc); break; case TAB_MODIFIERS: - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_MODIFIER ), hDlg, ModifierTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_MODIFIER), hDlg, (DLGPROC)ModifierTabProc); break; case TAB_PAK: - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_CONTROLLERPAK ), hDlg, ControllerPakTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_CONTROLLERPAK), hDlg, (DLGPROC)ControllerPakTabProc); break; default: hTabControl = NULL; @@ -528,9 +528,9 @@ BOOL CALLBACK ControllerTabProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPa if( hTabControl ) DestroyWindow( hTabControl ); if( pcController->fXInput ) - hTabControl = CreateDialog ( g_hResourceDLL, MAKEINTRESOURCE( IDD_XCONTROLS ), hDlg, XControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_XCONTROLS), hDlg, (DLGPROC)XControlsTabProc); else - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_CONTROLS ), hDlg, ControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_CONTROLS), hDlg, (DLGPROC)ControlsTabProc); { hDlgItem = GetDlgItem( hDlg, IDC_CONTROLLERTAB ); @@ -566,9 +566,9 @@ BOOL CALLBACK ControllerTabProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPa DestroyWindow( hTabControl ); if( pcController->fXInput ) - hTabControl = CreateDialog ( g_hResourceDLL, MAKEINTRESOURCE( IDD_XCONTROLS ), hDlg, XControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_XCONTROLS), hDlg, (DLGPROC)XControlsTabProc); else - hTabControl = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_CONTROLS ), hDlg, ControlsTabProc ); + hTabControl = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_CONTROLS), hDlg, (DLGPROC)ControlsTabProc); { hDlgItem = GetDlgItem( hDlg, IDC_CONTROLLERTAB ); @@ -1775,13 +1775,13 @@ BOOL CALLBACK ModifierTabProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPara switch( bByte ) { case MDT_MOVE: - hModProperties = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_MOD_MOVE ), hDlg, MoveModifierDialog ); + hModProperties = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_MOD_MOVE), hDlg, (DLGPROC)MoveModifierDialog); break; case MDT_MACRO: - hModProperties = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_MOD_MACRO ), hDlg, MacroModifierDialog ); + hModProperties = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_MOD_MACRO), hDlg, (DLGPROC)MacroModifierDialog); break; case MDT_CONFIG: - hModProperties = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_MOD_CONFIG ), hDlg, ConfigModifierDialog ); + hModProperties = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_MOD_CONFIG), hDlg, (DLGPROC)ConfigModifierDialog); break; case MDT_NONE: default: @@ -1953,23 +1953,23 @@ BOOL CALLBACK ControllerPakTabProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM switch( bByte ) { case PAK_MEM: - hPakWindow = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_PAK_MEMPAK ), hDlg, MemPakProc ); + hPakWindow = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_PAK_MEMPAK), hDlg, (DLGPROC)MemPakProc); break; case PAK_RUMBLE: - hPakWindow = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_PAK_RUMBLE ), hDlg, RumblePakProc ); + hPakWindow = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_PAK_RUMBLE), hDlg, (DLGPROC)RumblePakProc); break; case PAK_TRANSFER: - hPakWindow = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_PAK_TRANSFER ), hDlg, TransferPakProc ); + hPakWindow = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_PAK_TRANSFER), hDlg, (DLGPROC)TransferPakProc); break; case PAK_ADAPTOID: - hPakWindow = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_PAK_ADAPTOID ), hDlg, PakProc ); + hPakWindow = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_PAK_ADAPTOID), hDlg, (DLGPROC)PakProc); break; case PAK_VOICE: case PAK_NONRAW: case PAK_NONE: default: - hPakWindow = CreateDialog( g_hResourceDLL, MAKEINTRESOURCE( IDD_PAK_TEXT ), hDlg, PakProc ); + hPakWindow = CreateDialog(g_hResourceDLL, MAKEINTRESOURCE(IDD_PAK_TEXT), hDlg, (DLGPROC)PakProc); } if( hPakWindow ) @@ -2123,7 +2123,7 @@ BOOL CALLBACK MemPakProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) } return TRUE; case IDC_CHGDIR: - if( DialogBox( g_hResourceDLL, MAKEINTRESOURCE( IDD_FOLDERS ), hDlg, FoldersDialogProc ) == TRUE ) + if (DialogBox(g_hResourceDLL, MAKEINTRESOURCE(IDD_FOLDERS), hDlg, (DLGPROC)FoldersDialogProc) == TRUE) MemPakProc( hDlg, WM_USER_UPDATE, 0, 0 ); return TRUE; @@ -2751,7 +2751,7 @@ BOOL CALLBACK TransferPakProc( HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lPara return TRUE; case IDC_CHGDIR: - if( DialogBox( g_hResourceDLL, MAKEINTRESOURCE( IDD_FOLDERS ), hDlg, FoldersDialogProc ) == TRUE ) + if (DialogBox(g_hResourceDLL, MAKEINTRESOURCE(IDD_FOLDERS), hDlg, (DLGPROC)FoldersDialogProc) == TRUE) TransferPakProc( hDlg, WM_USER_UPDATE, 0, 0 ); return TRUE; diff --git a/Source/nragev20/NRagePluginV2.cpp b/Source/nragev20/NRagePluginV2.cpp index 2b75bf9d1..193a68385 100644 --- a/Source/nragev20/NRagePluginV2.cpp +++ b/Source/nragev20/NRagePluginV2.cpp @@ -243,7 +243,7 @@ EXPORT void CALL DllConfig ( HWND hParent ) } LeaveCriticalSection( &g_critical ); - int iOK = DialogBox( g_hResourceDLL, MAKEINTRESOURCE( IDD_MAINCFGDIALOG ), hParent, MainDlgProc ); + int iOK = DialogBox(g_hResourceDLL, MAKEINTRESOURCE(IDD_MAINCFGDIALOG), hParent, (DLGPROC)MainDlgProc); // If we go into the dialog box, and the user navigates to the Rumble window, our FF device can get unacquired. // So let's reinit them now if we're running, just to be safe --rabid diff --git a/Source/nragev20/NRage_Input_V2.vcxproj b/Source/nragev20/NRage_Input_V2.vcxproj index f2e19019b..3b61ceb4e 100644 --- a/Source/nragev20/NRage_Input_V2.vcxproj +++ b/Source/nragev20/NRage_Input_V2.vcxproj @@ -5,10 +5,18 @@ Debug Win32 + + Debug + x64 + Release Win32 + + Release + x64 + {FD617E80-9E40-4138-85DA-B94633972E6A} @@ -25,15 +33,15 @@ - + <_ProjectFileVersion>12.0.21005.1 PJ64_NRage - PJ64_NRage_d - $(SolutionDir)Plugin\Input\ + PJ64_NRage_d + $(SolutionDir)Plugin64\Input\ @@ -44,12 +52,13 @@ xinput.lib;dinput8.lib;dxguid.lib;Comctl32.lib;%(AdditionalDependencies) $(Root)Source\3rd Party\directx\lib;%(AdditionalLibraryDirectories) + $(Root)Source\3rd Party\directx\lib64;%(AdditionalLibraryDirectories) false - true + true