summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Data/Sys/GameSettings/GFP.ini5
-rw-r--r--Source/Core/Common/DirectIOFile.cpp7
-rw-r--r--Source/Core/Core/Debugger/PPCDebugInterface.cpp3
-rw-r--r--Source/Core/Core/HW/DSPHLE/UCodes/AXStructs.h2
-rw-r--r--Source/Core/Core/HW/GBACore.cpp16
-rw-r--r--Source/Core/DolphinQt/Config/HardcoreWarningWidget.cpp20
-rw-r--r--Source/Core/DolphinQt/Config/HardcoreWarningWidget.h1
-rw-r--r--Source/UnitTests/Core/PatchAllowlistTest.cpp4
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