Wiimote: reapply the Upright wiimote option

D3D: add the EFB Copy option to complete Rodolfo's commit plus add the Overlay FPS and the Disable Fog options
also change the config dialog's behaviour a bit

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4622 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
luisr142004
2009-11-28 05:59:46 +00:00
parent bf6f40efbf
commit 60352d92eb
14 changed files with 214 additions and 76 deletions

View File

@ -126,7 +126,7 @@ bool GetConfig(const int &type)
case CONFIG_ISWII:
return g_VideoInitialize.bWii;
case CONFIG_DISABLEFOG:
return false;
return g_ActiveConfig.bDisableFog;
case CONFIG_SHOWEFBREGIONS:
return false;
default:

View File

@ -79,6 +79,7 @@ struct TabDirect3D : public W32Util::Tab
CheckDlgButton(hDlg, IDC_WIDESCREEN_HACK, g_Config.bWidescreenHack ? TRUE : FALSE);
CheckDlgButton(hDlg, IDC_SAFE_TEXTURE_CACHE, g_Config.bSafeTextureCache ? TRUE : FALSE);
CheckDlgButton(hDlg, IDC_EFB_ACCESS_ENABLE, g_Config.bEFBAccessEnable ? TRUE : FALSE);
Button_GetCheck(GetDlgItem(hDlg,IDC_RENDER_TO_MAINWINDOW)) ? Button_Enable(GetDlgItem(hDlg,IDC_FULLSCREENENABLE), false) : Button_Enable(GetDlgItem(hDlg,IDC_FULLSCREENENABLE), true);
}
void Command(HWND hDlg,WPARAM wParam)
@ -142,16 +143,25 @@ struct TabAdvanced : public W32Util::Tab
//ComboBox_AddString(opt,"Recompile to vbuffers and shaders");
// ComboBox_SetCurSel(opt,g_Config.iCompileDLsLevel);
Button_SetCheck(GetDlgItem(hDlg,IDC_OVERLAYFPS), g_Config.bShowFPS);
Button_SetCheck(GetDlgItem(hDlg,IDC_OVERLAYSTATS), g_Config.bOverlayStats);
Button_SetCheck(GetDlgItem(hDlg,IDC_OVERLAYPROJSTATS), g_Config.bOverlayProjStats);
Button_SetCheck(GetDlgItem(hDlg,IDC_WIREFRAME), g_Config.bWireFrame);
Button_SetCheck(GetDlgItem(hDlg,IDC_TEXDUMP), g_Config.bDumpTextures);
Button_SetCheck(GetDlgItem(hDlg,IDC_DUMPFRAMES), g_Config.bDumpFrames);
Button_SetCheck(GetDlgItem(hDlg,IDC_SHOWSHADERERRORS), g_Config.bShowShaderErrors);
Button_SetCheck(GetDlgItem(hDlg,IDC_DISABLEFOG), g_Config.bDisableFog);
Button_SetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY), !g_Config.bEFBCopyDisable);
if(g_Config.bCopyEFBToRAM)
Button_SetCheck(GetDlgItem(hDlg,IDC_EFBTORAM), TRUE);
else
Button_SetCheck(GetDlgItem(hDlg,IDC_EFBTOTEX), TRUE);
Button_SetCheck(GetDlgItem(hDlg,IDC_TEXFMT_OVERLAY), g_Config.bTexFmtOverlayEnable);
Button_SetCheck(GetDlgItem(hDlg,IDC_TEXFMT_CENTER), g_Config.bTexFmtOverlayCenter);
Button_GetCheck(GetDlgItem(hDlg,IDC_TEXFMT_OVERLAY)) ? Button_Enable(GetDlgItem(hDlg,IDC_TEXFMT_CENTER), true) : Button_Enable(GetDlgItem(hDlg,IDC_TEXFMT_CENTER), false);
Button_GetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY)) ? Button_Enable(GetDlgItem(hDlg,IDC_EFBTORAM), true) : Button_Enable(GetDlgItem(hDlg,IDC_EFBTORAM), false);
Button_GetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY)) ? Button_Enable(GetDlgItem(hDlg,IDC_EFBTOTEX), true) : Button_Enable(GetDlgItem(hDlg,IDC_EFBTOTEX), false);
}
void Command(HWND hDlg,WPARAM wParam)
{
@ -163,6 +173,12 @@ struct TabAdvanced : public W32Util::Tab
// SetWindowText(GetDlgItem(hDlg,IDC_TEXDUMPPATH),path.c_str());
// }
// break;
case IDC_ENABLEEFBCOPY:
{
Button_GetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY)) ? Button_Enable(GetDlgItem(hDlg,IDC_EFBTORAM), true) : Button_Enable(GetDlgItem(hDlg,IDC_EFBTORAM), false);
Button_GetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY)) ? Button_Enable(GetDlgItem(hDlg,IDC_EFBTOTEX), true) : Button_Enable(GetDlgItem(hDlg,IDC_EFBTOTEX), false);
}
break;
case IDC_TEXFMT_OVERLAY:
{
Button_GetCheck(GetDlgItem(hDlg, IDC_TEXFMT_OVERLAY)) ? Button_Enable(GetDlgItem(hDlg,IDC_TEXFMT_CENTER), true) : Button_Enable(GetDlgItem(hDlg,IDC_TEXFMT_CENTER), false);
@ -177,19 +193,24 @@ struct TabAdvanced : public W32Util::Tab
g_Config.bTexFmtOverlayEnable = Button_GetCheck(GetDlgItem(hDlg,IDC_TEXFMT_OVERLAY)) ? true : false;
g_Config.bTexFmtOverlayCenter = Button_GetCheck(GetDlgItem(hDlg,IDC_TEXFMT_CENTER)) ? true : false;
g_Config.bShowFPS = Button_GetCheck(GetDlgItem(hDlg,IDC_OVERLAYFPS)) ? true : false;
g_Config.bOverlayStats = Button_GetCheck(GetDlgItem(hDlg,IDC_OVERLAYSTATS)) ? true : false;
g_Config.bOverlayProjStats = Button_GetCheck(GetDlgItem(hDlg,IDC_OVERLAYPROJSTATS)) ? true : false;
g_Config.bWireFrame = Button_GetCheck(GetDlgItem(hDlg,IDC_WIREFRAME)) ? true : false;
g_Config.bDumpTextures = Button_GetCheck(GetDlgItem(hDlg,IDC_TEXDUMP)) ? true : false;
g_Config.bDumpFrames = Button_GetCheck(GetDlgItem(hDlg,IDC_DUMPFRAMES)) ? true : false;
g_Config.bShowShaderErrors = Button_GetCheck(GetDlgItem(hDlg,IDC_SHOWSHADERERRORS)) ? true : false;
g_Config.bDisableFog = Button_GetCheck(GetDlgItem(hDlg,IDC_DISABLEFOG)) ? true : false;
g_Config.bEFBCopyDisable = Button_GetCheck(GetDlgItem(hDlg,IDC_ENABLEEFBCOPY)) ? false : true;
g_Config.bCopyEFBToRAM = Button_GetCheck(GetDlgItem(hDlg,IDC_EFBTORAM)) ? true : false;
//char temp[MAX_PATH];
//GetWindowText(GetDlgItem(hDlg,IDC_TEXDUMPPATH), temp, MAX_PATH); <-- Old method
//g_Config.texDumpPath = temp;
g_Config.Save(FULL_CONFIG_DIR "gfx_dx9.ini");
if( D3D::dev != NULL )
if( D3D::dev != NULL ) {
D3D::dev->SetRenderState( D3DRS_FILLMODE, g_Config.bWireFrame ? D3DFILL_WIREFRAME : D3DFILL_SOLID );
}
}
};

View File

@ -17,6 +17,7 @@
#include <list>
#include <d3dx9.h>
#include <strsafe.h>
#include "Common.h"
#include "Statistics.h"
@ -360,6 +361,12 @@ static void EFBTextureToD3DBackBuffer(const EFBRectangle& sourceRc)
D3D::drawShadedTexQuad(read_texture,&sourcerect,Renderer::GetTargetWidth(),Renderer::GetTargetHeight(),&destinationrect,PixelShaderCache::GetColorCopyProgram(),VertexShaderCache::GetSimpleVertexShader());
// Finish up the current frame, print some stats
if (g_ActiveConfig.bShowFPS)
{
char fps[20];
StringCchPrintfA(fps, 20, "FPS: %d\n", s_fps);
D3D::font.DrawTextScaled(0,30,20,20,0.0f,0xFF00FFFF,fps,false);
}
if (g_ActiveConfig.bOverlayStats)
{
Statistics::ToString(st);
@ -891,6 +898,18 @@ void Renderer::Swap(u32 xfbAddr, FieldType field, u32 fbWidth, u32 fbHeight)
CheckForResize();
// ---------------------------------------------------------------------
// Count FPS.
// -------------
static int fpscount = 0;
static unsigned long lasttime;
++fpscount;
if (timeGetTime() - lasttime > 1000)
{
lasttime = timeGetTime();
s_fps = fpscount - 1;
fpscount = 0;
}
// Begin new frame
// Set default viewport and scissor, for the clear to work correctly

View File

@ -195,6 +195,7 @@ namespace W32Util
case WM_COMMAND:
tab->Command(hDlg,wParam);
PropSheet_Changed(GetParent(hDlg), hDlg);
break;
case WM_NOTIFY:
{

View File

@ -21,22 +21,27 @@
#define IDC_SAFE_TEXTURE_CACHE 1011
#define IDC_EFB_ACCESS_ENABLE 1012
#define IDC_WIREFRAME 1013
#define IDC_OVERLAYSTATS 1014
#define IDC_OVERLAYPROJSTATS 1015
#define IDC_TEXDUMP 1016
#define IDC_DUMPFRAMES 1017
#define IDC_SHOWSHADERERRORS 1018
#define IDC_TEXFMT_OVERLAY 1019
#define IDC_TEXFMT_CENTER 1020
#define IDC_FORCEFILTERING 1021
#define IDC_FORCEANISOTROPY 1022
#define IDC_DISABLEFOG 1014
#define IDC_OVERLAYFPS 1015
#define IDC_OVERLAYSTATS 1016
#define IDC_OVERLAYPROJSTATS 1017
#define IDC_ENABLEEFBCOPY 1018
#define IDC_EFBTORAM 1019
#define IDC_EFBTOTEX 1020
#define IDC_TEXDUMP 1021
#define IDC_DUMPFRAMES 1022
#define IDC_SHOWSHADERERRORS 1023
#define IDC_TEXFMT_OVERLAY 1024
#define IDC_TEXFMT_CENTER 1025
#define IDC_FORCEFILTERING 1026
#define IDC_FORCEANISOTROPY 1027
#define IDC_CHECK1 1023
#define IDC_LIST1 1024
#define IDC_DEBUGSTEP 1025
#define IDC_REGISTERS 1026
#define IDC_ENABLEDEBUGGING 1027
#define IDC_REGISTERSELECT 1028
#define IDC_CHECK1 1100
#define IDC_LIST1 1101
#define IDC_DEBUGSTEP 1102
#define IDC_REGISTERS 1103
#define IDC_ENABLEDEBUGGING 1104
#define IDC_REGISTERSELECT 1105
#define IDC_STATIC -1

View File

@ -1,7 +1,16 @@
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include <windows.h>
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// English (U.S.) resources
@ -28,7 +37,7 @@ BEGIN
END
IDD_SETTINGS DIALOGEX 0, 0, 244, 217
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_SYSMENU
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_BORDER | WS_SYSMENU
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
LTEXT "&Graphics card:",IDC_STATIC,7,9,61,8
@ -66,23 +75,29 @@ BEGIN
CONTROL "",IDC_REGISTERSELECT,"SysTabControl32",TCS_BUTTONS,80,52,145,13
END
IDD_ADVANCED DIALOGEX 0, 0, 206, 195
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_SYSMENU
IDD_ADVANCED DIALOGEX 0, 0, 244, 214
STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD | WS_BORDER | WS_SYSMENU
FONT 8, "MS Shell Dlg", 0, 0, 0x0
BEGIN
GROUPBOX "&Settings",IDC_STATIC,7,7,192,81
CONTROL "&Wireframe",IDC_WIREFRAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,19,79,9
CONTROL "&Overlay some statistics",IDC_OVERLAYSTATS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,31,88,9
GROUPBOX "&Settings",IDC_STATIC,6,7,228,95
CONTROL "Overlay FPS",IDC_OVERLAYFPS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,18,54,12
CONTROL "&Overlay some statistics",IDC_OVERLAYSTATS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,114,18,90,12
CONTROL "Overlay &Projection Statistics",IDC_OVERLAYPROJSTATS,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,42,118,9
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,30,102,12
CONTROL "Show s&hader compilation errors",IDC_SHOWSHADERERRORS,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,53,127,9
GROUPBOX "&Data dumping",IDC_STATIC,7,91,192,42
CONTROL "Dump &textures",IDC_TEXDUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,104,70,9
CONTROL "Dump Frames to User/Dump/Frames",IDC_DUMPFRAMES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,116,138,9
GROUPBOX "Texture Format Overlay",IDC_STATIC,7,136,192,30
CONTROL "Enable Overlay",IDC_TEXFMT_OVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,148,74,10
CONTROL "Centered",IDC_TEXFMT_CENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,110,148,82,10
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,114,30,114,12
CONTROL "Enable &Wireframe",IDC_WIREFRAME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,48,78,12
CONTROL "Disable Fog",IDC_DISABLEFOG,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,114,48,66,12
GROUPBOX "EFB Copy",IDC_STATIC,12,60,216,36
CONTROL "Enable",IDC_ENABLEEFBCOPY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,18,72,42,8
CONTROL "To RAM",IDC_EFBTORAM,"Button",BS_AUTORADIOBUTTON | WS_GROUP,24,84,84,10
CONTROL "To Texture",IDC_EFBTOTEX,"Button",BS_AUTORADIOBUTTON,108,84,84,10
GROUPBOX "&Data dumping",IDC_STATIC,6,108,228,36
CONTROL "Dump &textures",IDC_TEXDUMP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,120,70,9
CONTROL "Dump Frames to User/Dump/Frames",IDC_DUMPFRAMES,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,132,138,9
GROUPBOX "Texture Format Overlay",IDC_STATIC,6,150,228,30
CONTROL "Enable Overlay",IDC_TEXFMT_OVERLAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,162,74,10
CONTROL "Centered",IDC_TEXFMT_CENTER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,108,162,82,10
END
IDD_ENHANCEMENTS DIALOGEX 0, 0, 224, 175
@ -136,12 +151,12 @@ BEGIN
IDD_ADVANCED, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 199
RIGHTMARGIN, 237
VERTGUIDE, 14
VERTGUIDE, 110
TOPMARGIN, 7
BOTTOMMARGIN, 168
HORZGUIDE, 150
BOTTOMMARGIN, 187
HORZGUIDE, 168
END
IDD_ENHANCEMENTS, DIALOG
@ -170,13 +185,12 @@ END
2 TEXTINCLUDE
BEGIN
"\0"
"#include <windows.h\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"\0"
"#include <windows.h\0"
END
#endif // APSTUDIO_INVOKED
@ -191,8 +205,7 @@ END
//
// Generated from the TEXTINCLUDE 3 resource.
//
#include <windows.h>
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED