mirror of https://github.com/PCSX2/pcsx2.git
Implemented a feature which could potentially reduce the slight slowdowns present when running in windowed mode inside Aero.
Since it's late, I will leave it to the world to figure out of it really makes a difference. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@2183 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
0f43b12d72
commit
ce31ac361c
|
@ -294,6 +294,11 @@ bool Pcsx2App::OnInit()
|
||||||
SysDetect();
|
SysDetect();
|
||||||
AppApplySettings();
|
AppApplySettings();
|
||||||
|
|
||||||
|
#ifdef __WIN32__
|
||||||
|
extern void SetupDwmStuff(WXHWND hMainWindow);
|
||||||
|
SetupDwmStuff(m_MainFrame->GetHWND());
|
||||||
|
#endif
|
||||||
|
|
||||||
m_CoreAllocs = new SysCoreAllocations();
|
m_CoreAllocs = new SysCoreAllocations();
|
||||||
|
|
||||||
if( m_CoreAllocs->HadSomeFailures( g_Conf->EmuOptions.Cpu.Recompiler ) )
|
if( m_CoreAllocs->HadSomeFailures( g_Conf->EmuOptions.Cpu.Recompiler ) )
|
||||||
|
|
|
@ -269,7 +269,6 @@ MainEmuFrame::MainEmuFrame(wxWindow* parent, const wxString& title):
|
||||||
m_Listener_SettingsApplied( wxGetApp().Source_SettingsApplied(), EventListener<int>( this, OnSettingsApplied ) ),
|
m_Listener_SettingsApplied( wxGetApp().Source_SettingsApplied(), EventListener<int>( this, OnSettingsApplied ) ),
|
||||||
m_Listener_SettingsLoadSave( wxGetApp().Source_SettingsLoadSave(), EventListener<IniInterface>( this, OnSettingsLoadSave ) )
|
m_Listener_SettingsLoadSave( wxGetApp().Source_SettingsLoadSave(), EventListener<IniInterface>( this, OnSettingsLoadSave ) )
|
||||||
{
|
{
|
||||||
|
|
||||||
for( int i=0; i<PluginId_Count; ++i )
|
for( int i=0; i<PluginId_Count; ++i )
|
||||||
m_PluginMenuPacks[i].Populate( (PluginsEnum_t)i );
|
m_PluginMenuPacks[i].Populate( (PluginsEnum_t)i );
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
#include "PrecompiledHeader.h"
|
||||||
|
#include <windows.h>
|
||||||
|
#include "Utilities/Console.h"
|
||||||
|
|
||||||
|
// This could potentially reduce lag while running in Aero,
|
||||||
|
// by telling the DWM the application requires
|
||||||
|
// multimedia-class scheduling for smooth display.
|
||||||
|
void SetupDwmStuff(WXHWND hMainWindow)
|
||||||
|
{
|
||||||
|
HRESULT (WINAPI * pDwmEnableMMCSS)(DWORD);
|
||||||
|
|
||||||
|
OSVERSIONINFOEX info = {0};
|
||||||
|
info.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);
|
||||||
|
info.dwMajorVersion = 6;
|
||||||
|
|
||||||
|
DWORDLONG mask=0;
|
||||||
|
VER_SET_CONDITION(mask,VER_MAJORVERSION, VER_GREATER_EQUAL);
|
||||||
|
VER_SET_CONDITION(mask,VER_MINORVERSION, VER_GREATER_EQUAL);
|
||||||
|
VER_SET_CONDITION(mask,VER_SERVICEPACKMAJOR,VER_GREATER_EQUAL);
|
||||||
|
VER_SET_CONDITION(mask,VER_SERVICEPACKMINOR,VER_GREATER_EQUAL);
|
||||||
|
|
||||||
|
//info
|
||||||
|
if(VerifyVersionInfo(&info,
|
||||||
|
VER_MAJORVERSION|VER_MINORVERSION|VER_SERVICEPACKMAJOR|VER_SERVICEPACKMINOR,
|
||||||
|
mask))
|
||||||
|
{
|
||||||
|
HMODULE hDwmapi = LoadLibrary(wxT("dwmapi.dll"));
|
||||||
|
if(hDwmapi)
|
||||||
|
{
|
||||||
|
pDwmEnableMMCSS = (HRESULT (WINAPI *)(DWORD))GetProcAddress(hDwmapi,"DwmEnableMMCSS");
|
||||||
|
if(pDwmEnableMMCSS)
|
||||||
|
{
|
||||||
|
if(FAILED(pDwmEnableMMCSS(TRUE)))
|
||||||
|
{
|
||||||
|
Console.WriteLn("Warning: DwmEnableMMCSS returned a failure code (not an error).");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Console.WriteLn("DwmEnableMMCSS successful.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//DwmSetDxFrameDuration(hMainWindow,1);
|
||||||
|
|
||||||
|
FreeLibrary(hDwmapi);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="windows-1253"?>
|
<?xml version="1.0" encoding="windows-1253"?>
|
||||||
<VisualStudioProject
|
<VisualStudioProject
|
||||||
ProjectType="Visual C++"
|
ProjectType="Visual C++"
|
||||||
Version="9.00"
|
Version="9,00"
|
||||||
Name="pcsx2"
|
Name="pcsx2"
|
||||||
ProjectGUID="{1CEFD830-2B76-4596-A4EE-BCD7280A60BD}"
|
ProjectGUID="{1CEFD830-2B76-4596-A4EE-BCD7280A60BD}"
|
||||||
RootNamespace="pcsx2"
|
RootNamespace="pcsx2"
|
||||||
|
@ -69,7 +69,6 @@
|
||||||
/>
|
/>
|
||||||
<Tool
|
<Tool
|
||||||
Name="VCLinkerTool"
|
Name="VCLinkerTool"
|
||||||
AdditionalOptions="/MACHINE:I386"
|
|
||||||
AdditionalDependencies="zlib.lib rpcrt4.lib"
|
AdditionalDependencies="zlib.lib rpcrt4.lib"
|
||||||
OutputFile="$(OutDir)\$(ProjectName)-dbg.exe"
|
OutputFile="$(OutDir)\$(ProjectName)-dbg.exe"
|
||||||
/>
|
/>
|
||||||
|
@ -2477,6 +2476,10 @@
|
||||||
<Filter
|
<Filter
|
||||||
Name="Win32"
|
Name="Win32"
|
||||||
>
|
>
|
||||||
|
<File
|
||||||
|
RelativePath="..\DwmSetup.cpp"
|
||||||
|
>
|
||||||
|
</File>
|
||||||
<File
|
<File
|
||||||
RelativePath="..\WinCompressNTFS.cpp"
|
RelativePath="..\WinCompressNTFS.cpp"
|
||||||
>
|
>
|
||||||
|
|
Loading…
Reference in New Issue