From 9ae6c2673a73139d56ca7d3a889ffda421efc9b4 Mon Sep 17 00:00:00 2001 From: Akash Date: Wed, 25 May 2016 22:03:32 +0530 Subject: [PATCH] GSDX-Windows: Add "Large Framebuffer" option --- plugins/GSdx/GSSetting.cpp | 4 +--- plugins/GSdx/GSSettingsDlg.cpp | 4 ++++ plugins/GSdx/GSdx.rc | 1 + plugins/GSdx/resource.h | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/plugins/GSdx/GSSetting.cpp b/plugins/GSdx/GSSetting.cpp index f983b786b2..0234d9b899 100644 --- a/plugins/GSdx/GSSetting.cpp +++ b/plugins/GSdx/GSSetting.cpp @@ -136,11 +136,9 @@ const char* dialog_message(int ID, bool* updateText) { case IDC_FAST_TC_INV: return "By default, the texture cache handles partial invalidations. Unfortunately it is very costly to compute CPU wise." "\n\nThis hack replaces the partial invalidation with a complete deletion of the texture to reduce the CPU load.\n\nIt helps snowblind engine game."; -#ifdef __linux__ case IDC_LARGE_FB: - return "Allocate a large framebuffer to be compliant with GS memory (help FMV flickering).\n" + return "Allocate a large framebuffer to be compliant with GS memory (Prevents FMV flickering).\n" "It increases GPU/memory requirements."; -#endif default: if (updateText) *updateText = false; diff --git a/plugins/GSdx/GSSettingsDlg.cpp b/plugins/GSdx/GSSettingsDlg.cpp index 794a51d0db..b34ebbd4f8 100644 --- a/plugins/GSdx/GSSettingsDlg.cpp +++ b/plugins/GSdx/GSSettingsDlg.cpp @@ -155,6 +155,7 @@ void GSSettingsDlg::OnInit() ComboBoxInit(IDC_CRC_LEVEL, theApp.m_gs_crc_level, theApp.GetConfig("crc_hack_level", 3)); CheckDlgButton(m_hWnd, IDC_PALTEX, theApp.GetConfig("paltex", 0)); + CheckDlgButton(m_hWnd, IDC_LARGE_FB, theApp.GetConfig("large_framebuffer", 1)); CheckDlgButton(m_hWnd, IDC_LOGZ, theApp.GetConfig("logz", 1)); CheckDlgButton(m_hWnd, IDC_FBA, theApp.GetConfig("fba", 1)); CheckDlgButton(m_hWnd, IDC_AA1, theApp.GetConfig("aa1", 0)); @@ -185,6 +186,7 @@ void GSSettingsDlg::OnInit() AddTooltip(IDC_SWTHREADS_EDIT); AddTooltip(IDC_FBA); AddTooltip(IDC_LOGZ); + AddTooltip(IDC_LARGE_FB); UpdateControls(); } @@ -275,6 +277,7 @@ bool GSSettingsDlg::OnCommand(HWND hWnd, UINT id, UINT code) } theApp.SetConfig("paltex", (int)IsDlgButtonChecked(m_hWnd, IDC_PALTEX)); + theApp.SetConfig("large_framebuffer", (int)IsDlgButtonChecked(m_hWnd, IDC_LARGE_FB)); theApp.SetConfig("logz", (int)IsDlgButtonChecked(m_hWnd, IDC_LOGZ)); theApp.SetConfig("fba", (int)IsDlgButtonChecked(m_hWnd, IDC_FBA)); theApp.SetConfig("aa1", (int)IsDlgButtonChecked(m_hWnd, IDC_AA1)); @@ -386,6 +389,7 @@ void GSSettingsDlg::UpdateControls() ShowWindow(GetDlgItem(m_hWnd, IDC_TC_DEPTH), ogl ? SW_SHOW : SW_HIDE); EnableWindow(GetDlgItem(m_hWnd, IDC_CRC_LEVEL), hw); + EnableWindow(GetDlgItem(m_hWnd, IDC_LARGE_FB), integer_scaling > 1 && hw); EnableWindow(GetDlgItem(m_hWnd, IDC_CRC_LEVEL_TEXT), hw); EnableWindow(GetDlgItem(m_hWnd, IDC_OPENCL_DEVICE), ocl); EnableWindow(GetDlgItem(m_hWnd, IDC_RESX), hw && !integer_scaling); diff --git a/plugins/GSdx/GSdx.rc b/plugins/GSdx/GSdx.rc index e0e9f0056d..95aebba2ef 100644 --- a/plugins/GSdx/GSdx.rc +++ b/plugins/GSdx/GSdx.rc @@ -255,6 +255,7 @@ BEGIN CONTROL "Enable HW Hacks",IDC_HACKS_ENABLED,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,223,71,10 PUSHBUTTON "Configure Hacks",IDC_HACKSBUTTON,105,221,127,14 CONTROL "Accurate Date",IDC_ACCURATE_DATE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,239,72,8 + CONTROL "Large Framebuffer",IDC_LARGE_FB,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,105,128,90,10 LTEXT "Blending Unit Accuracy:",IDC_ACCURATE_BLEND_UNIT_TEXT,22,252,79,10 COMBOBOX IDC_ACCURATE_BLEND_UNIT,105,251,127,63,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP CONTROL "Logarithmic Z",IDC_LOGZ,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,239,90,8 diff --git a/plugins/GSdx/resource.h b/plugins/GSdx/resource.h index 5594b2332e..006e8e73a3 100644 --- a/plugins/GSdx/resource.h +++ b/plugins/GSdx/resource.h @@ -103,6 +103,7 @@ #define IDC_TVSHADER 2099 #define IDC_SAFE_FBMASK 2100 #define IDC_FAST_TC_INV 2101 +#define IDC_LARGE_FB 2102 #define IDR_CONVERT_FX 10000 #define IDR_TFX_FX 10001 #define IDR_MERGE_FX 10002 @@ -121,7 +122,7 @@ #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_NEXT_RESOURCE_VALUE 10013 #define _APS_NEXT_COMMAND_VALUE 32771 -#define _APS_NEXT_CONTROL_VALUE 2102 +#define _APS_NEXT_CONTROL_VALUE 2103 #define _APS_NEXT_SYMED_VALUE 5000 #endif #endif