diff options
| -rw-r--r-- | Data/Sys/GameSettings/GFP.ini | 5 | ||||
| -rw-r--r-- | Source/Core/Common/DirectIOFile.cpp | 7 | ||||
| -rw-r--r-- | Source/Core/Core/Debugger/PPCDebugInterface.cpp | 3 | ||||
| -rw-r--r-- | Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h | 2 | ||||
| -rw-r--r-- | Source/Core/Core/HW/GBACore.cpp | 16 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp | 20 | ||||
| -rw-r--r-- | Source/Core/DolphinQt/Config/HardcoreWarningWidget.h | 1 | ||||
| -rw-r--r-- | Source/UnitTests/Core/PatchAllowlistTest.cpp | 4 |
8 files changed, 29 insertions, 29 deletions
diff --git a/Data/Sys/GameSettings/GFP.ini b/Data/Sys/GameSettings/GFP.ini new file mode 100644 index 0000000000..0da029b41d --- /dev/null +++ b/Data/Sys/GameSettings/GFP.ini @@ -0,0 +1,5 @@ +# GFPEA4 - Frogger: Ancient Shadow + +[Video_Hacks] +# Fixes dark graphical artifacts and pixel wide gap at the top and left edges of the screen. +VertexRounding = True diff --git a/Source/Core/Common/DirectIOFile.cpp b/Source/Core/Common/DirectIOFile.cpp index d72e98fa3b..bfe598dc48 100644 --- a/Source/Core/Common/DirectIOFile.cpp +++ b/Source/Core/Common/DirectIOFile.cpp @@ -86,8 +86,11 @@ bool DirectIOFile::Open(const std::string& path, AccessMode access_mode, OpenMod else if (access_mode == AccessMode::Write) desired_access = GENERIC_WRITE; - // Allow deleting and renaming through our handle. - desired_access |= DELETE; + if (access_mode != AccessMode::Read) + { + // Allow deleting and renaming through our handle. + desired_access |= DELETE; + } // All sharing is allowed to more closely match default behavior on other OSes. constexpr DWORD share_mode = FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE; diff --git a/Source/Core/Core/Debugger/PPCDebugInterface.cpp b/Source/Core/Core/Debugger/PPCDebugInterface.cpp index f38d1c8346..fd105df2b4 100644 --- a/Source/Core/Core/Debugger/PPCDebugInterface.cpp +++ b/Source/Core/Core/Debugger/PPCDebugInterface.cpp @@ -32,9 +32,6 @@ void ApplyMemoryPatch(const Core::CPUThreadGuard& guard, std::span<u8> value, const u32 address, bool store_existing_value) { - if (AchievementManager::GetInstance().IsHardcoreModeActive()) - return; - if (value.empty()) return; diff --git a/Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h b/Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h index 701d692e1c..7ceed48216 100644 --- a/Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h +++ b/Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h @@ -195,7 +195,7 @@ struct PBLowPassFilter u16 on; s16 yn1; u16 a0; - u16 b0; + s16 b0; }; struct AXPB diff --git a/Source/Core/Core/HW/GBACore.cpp b/Source/Core/Core/HW/GBACore.cpp index 272b458fc5..c0dc6de0aa 100644 --- a/Source/Core/Core/HW/GBACore.cpp +++ b/Source/Core/Core/HW/GBACore.cpp @@ -387,16 +387,18 @@ void Core::SetSIODriver() return; m_sio_driver.core = this; - m_sio_driver.init = [](GBASIODriver* driver) { - static_cast<SIODriver*>(driver)->core->m_link_enabled = true; - return true; - }; - m_sio_driver.handlesMode = [](GBASIODriver* driver, GBASIOMode mode) { - return mode == GBA_SIO_JOYBUS; - }; + m_sio_driver.init = [](GBASIODriver*) { return true; }; m_sio_driver.deinit = [](GBASIODriver* driver) { static_cast<SIODriver*>(driver)->core->m_link_enabled = false; }; + m_sio_driver.reset = [](GBASIODriver* driver) { + static_cast<SIODriver*>(driver)->core->m_link_enabled = false; + }; + m_sio_driver.setMode = [](GBASIODriver* driver, GBASIOMode mode) { + static_cast<SIODriver*>(driver)->core->m_link_enabled = mode == GBA_SIO_JOYBUS; + }; + m_sio_driver.handlesMode = [](GBASIODriver*, GBASIOMode mode) { return mode == GBA_SIO_JOYBUS; }; + m_sio_driver.connectedDevices = [](GBASIODriver*) { return 1; }; GBASIOSetDriver(&static_cast<::GBA*>(m_core->board)->sio, &m_sio_driver); } diff --git a/Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp b/Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp index 257a43c366..2244aa6a0b 100644 --- a/Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp +++ b/Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp @@ -6,14 +6,12 @@ #include <QHBoxLayout> #include <QLabel> -#include <QPixmap> #include <QPushButton> #include <QStyle> #include "Core/AchievementManager.h" -#include "Core/ConfigManager.h" -#include "Core/Core.h" +#include "DolphinQt/QtUtils/QtUtils.h" #include "DolphinQt/Settings.h" HardcoreWarningWidget::HardcoreWarningWidget(QWidget* parent) : QWidget(parent) @@ -28,25 +26,17 @@ HardcoreWarningWidget::HardcoreWarningWidget(QWidget* parent) : QWidget(parent) void HardcoreWarningWidget::CreateWidgets() { - const auto size = 1.5 * QFontMetrics(font()).height(); + auto* const text = new QLabel(tr("Only approved codes will be applied in hardcore mode.")); + auto* const icon_warning = QtUtils::CreateIconWarning(this, QStyle::SP_MessageBoxWarning, text); - QPixmap warning_icon = style()->standardIcon(QStyle::SP_MessageBoxWarning).pixmap(size, size); - - auto* icon = new QLabel; - icon->setPixmap(warning_icon); - - m_text = new QLabel(tr("Only approved codes will be applied in hardcore mode.")); m_settings_button = new QPushButton(tr("Achievement Settings")); - auto* layout = new QHBoxLayout; + auto* const layout = new QHBoxLayout{this}; - layout->addWidget(icon); - layout->addWidget(m_text, 1); + layout->addWidget(icon_warning, 1); layout->addWidget(m_settings_button); layout->setContentsMargins(0, 0, 0, 0); - - setLayout(layout); } void HardcoreWarningWidget::ConnectWidgets() diff --git a/Source/Core/DolphinQt/Config/HardcoreWarningWidget.h b/Source/Core/DolphinQt/Config/HardcoreWarningWidget.h index c4a20eba96..4b7db7f675 100644 --- a/Source/Core/DolphinQt/Config/HardcoreWarningWidget.h +++ b/Source/Core/DolphinQt/Config/HardcoreWarningWidget.h @@ -24,7 +24,6 @@ private: void Update(); - QLabel* m_text; QPushButton* m_settings_button; }; #endif // USE_RETRO_ACHIEVEMENTS diff --git a/Source/UnitTests/Core/PatchAllowlistTest.cpp b/Source/UnitTests/Core/PatchAllowlistTest.cpp index c2b6be61e6..85111fb607 100644 --- a/Source/UnitTests/Core/PatchAllowlistTest.cpp +++ b/Source/UnitTests/Core/PatchAllowlistTest.cpp @@ -1,6 +1,8 @@ // Copyright 2024 Dolphin Emulator Project // SPDX-License-Identifier: GPL-2.0-or-later +#ifdef USE_RETRO_ACHIEVEMENTS + #include <array> #include <map> #include <string> @@ -191,3 +193,5 @@ void ReadVerified(const Common::IniFile& ini, const std::string& filename, } } } + +#endif // USE_RETRO_ACHIEVEMENTS |
