Compare commits

...

6 Commits

Author SHA1 Message Date
refractionpcsx2
f6675808fc GS/Runner: Set the screenshot compression low to stop slow dump times 2025-03-20 14:19:47 +00:00
PCSX2 Bot
aa64712354 [ci skip] Qt: Update Base Translation. 2025-03-20 11:14:07 +01:00
chaoticgd
f6e2185c9c Debugger: Don't jump to PC if the breakpoint code paused the core 2025-03-18 22:04:41 -04:00
JordanTheToaster
08edc8dfab Deps: Update Mac to Qt 6.7.3 2025-03-18 19:43:20 -04:00
chaoticgd
ec0760c03e Deps: Add an extra include path for KDDockWidgets 2025-03-18 11:50:12 -04:00
PCSX2 Bot
b53dfed032 [ci skip] PAD: Update to latest controller database. 2025-03-17 12:02:04 -04:00
9 changed files with 76 additions and 50 deletions

View File

@@ -48,7 +48,7 @@ LIBJPEGTURBO=3.1.0
LIBWEBP=1.5.0
FFMPEG=6.0
MOLTENVK=1.2.9
QT=6.7.2
QT=6.7.3
KDDOCKWIDGETS=2.2.1
SHADERC=2024.1
@@ -85,11 +85,11 @@ eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3 zstd-$ZSTD.tar
9564c72b1dfd1d6fe6274c5f95a8d989b59854575d4bbee44ade7bc17aa9bc93 libjpeg-turbo-$LIBJPEGTURBO.tar.gz
57be87c22d9b49c112b6d24bc67d42508660e6b718b3db89c44e47e289137082 ffmpeg-$FFMPEG.tar.xz
f415a09385030c6510a936155ce211f617c31506db5fbc563e804345f1ecf56e v$MOLTENVK.tar.gz
c5f22a5e10fb162895ded7de0963328e7307611c688487b5d152c9ee64767599 qtbase-everywhere-src-$QT.tar.xz
e1a1d8785fae67d16ad0a443b01d5f32663a6b68d275f1806ebab257485ce5d6 qtimageformats-everywhere-src-$QT.tar.xz
fb0d1286a35be3583fee34aeb5843c94719e07193bdf1d4d8b0dc14009caef01 qtsvg-everywhere-src-$QT.tar.xz
58e855ad1b2533094726c8a425766b63a04a0eede2ed85086860e54593aa4b2a qttools-everywhere-src-$QT.tar.xz
9845780b5dc1b7279d57836db51aeaf2e4a1160c42be09750616f39157582ca9 qttranslations-everywhere-src-$QT.tar.xz
8ccbb9ab055205ac76632c9eeddd1ed6fc66936fc56afc2ed0fd5d9e23da3097 qtbase-everywhere-src-$QT.tar.xz
9fd58144081654c3373768dd96ead294023830927b14fe3d3c1ef641fb324753 qtimageformats-everywhere-src-$QT.tar.xz
40142cb71fb1e07ad612bc361b67f5d54cd9367f9979ae6b86124a064deda06b qtsvg-everywhere-src-$QT.tar.xz
f03bb7df619cd9ac9dba110e30b7bcab5dd88eb8bdc9cc752563b4367233203f qttools-everywhere-src-$QT.tar.xz
dcc762acac043b9bb5e4d369b6d6f53e0ecfcf76a408fe0db5f7ef071c9d6dc8 qttranslations-everywhere-src-$QT.tar.xz
eb3b5f0c16313d34f208d90c2fa1e588a23283eed63b101edd5422be6165d528 shaderc-$SHADERC.tar.gz
aa27e4454ce631c5a17924ce0624eac736da19fc6f5a2ab15a6c58da7b36950f shaderc-glslang-$SHADERC_GLSLANG.tar.gz
5d866ce34a4b6908e262e5ebfffc0a5e11dd411640b5f24c85a80ad44c0d4697 shaderc-spirv-headers-$SHADERC_SPIRVHEADERS.tar.gz

View File

@@ -30,7 +30,7 @@ LIBJPEGTURBO=3.1.0
LIBWEBP=1.5.0
FFMPEG=6.0
MOLTENVK=1.2.9
QT=6.7.2
QT=6.7.3
KDDOCKWIDGETS=2.2.1
SHADERC=2024.1
@@ -65,11 +65,11 @@ eb33e51f49a15e023950cd7825ca74a4a2b43db8354825ac24fc1b7ee09e6fa3 zstd-$ZSTD.tar
9564c72b1dfd1d6fe6274c5f95a8d989b59854575d4bbee44ade7bc17aa9bc93 libjpeg-turbo-$LIBJPEGTURBO.tar.gz
57be87c22d9b49c112b6d24bc67d42508660e6b718b3db89c44e47e289137082 ffmpeg-$FFMPEG.tar.xz
f415a09385030c6510a936155ce211f617c31506db5fbc563e804345f1ecf56e v$MOLTENVK.tar.gz
c5f22a5e10fb162895ded7de0963328e7307611c688487b5d152c9ee64767599 qtbase-everywhere-src-$QT.tar.xz
e1a1d8785fae67d16ad0a443b01d5f32663a6b68d275f1806ebab257485ce5d6 qtimageformats-everywhere-src-$QT.tar.xz
fb0d1286a35be3583fee34aeb5843c94719e07193bdf1d4d8b0dc14009caef01 qtsvg-everywhere-src-$QT.tar.xz
58e855ad1b2533094726c8a425766b63a04a0eede2ed85086860e54593aa4b2a qttools-everywhere-src-$QT.tar.xz
9845780b5dc1b7279d57836db51aeaf2e4a1160c42be09750616f39157582ca9 qttranslations-everywhere-src-$QT.tar.xz
8ccbb9ab055205ac76632c9eeddd1ed6fc66936fc56afc2ed0fd5d9e23da3097 qtbase-everywhere-src-$QT.tar.xz
9fd58144081654c3373768dd96ead294023830927b14fe3d3c1ef641fb324753 qtimageformats-everywhere-src-$QT.tar.xz
40142cb71fb1e07ad612bc361b67f5d54cd9367f9979ae6b86124a064deda06b qtsvg-everywhere-src-$QT.tar.xz
f03bb7df619cd9ac9dba110e30b7bcab5dd88eb8bdc9cc752563b4367233203f qttools-everywhere-src-$QT.tar.xz
dcc762acac043b9bb5e4d369b6d6f53e0ecfcf76a408fe0db5f7ef071c9d6dc8 qttranslations-everywhere-src-$QT.tar.xz
eb3b5f0c16313d34f208d90c2fa1e588a23283eed63b101edd5422be6165d528 shaderc-$SHADERC.tar.gz
aa27e4454ce631c5a17924ce0624eac736da19fc6f5a2ab15a6c58da7b36950f shaderc-glslang-$SHADERC_GLSLANG.tar.gz
5d866ce34a4b6908e262e5ebfffc0a5e11dd411640b5f24c85a80ad44c0d4697 shaderc-spirv-headers-$SHADERC_SPIRVHEADERS.tar.gz

View File

@@ -1246,6 +1246,8 @@ xinput,XInput Controller,a:b0,b:b1,back:b6,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,
05000000bc2000000055000001000000,Betop AX1 BFM,a:b0,b:b1,back:b10,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b6,leftstick:b13,lefttrigger:b8,leftx:a0,lefty:a1,rightshoulder:b7,rightstick:b14,righttrigger:b9,rightx:a2,righty:a3,start:b11,x:b3,y:b4,platform:Linux,
03000000bc2000006412000011010000,Betop Controller,a:b2,b:b1,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b30,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b3,y:b0,platform:Linux,
030000006b1400000209000011010000,Bigben,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
03000000120c0000300e000011010000,Brook Audio Fighting Board PS3,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,x:b0,y:b3,platform:Linux,
03000000120c0000310e000011010000,Brook Audio Fighting Board PS4,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,touchpad:b13,x:b0,y:b3,platform:Linux,
03000000120c0000200e000011010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:a3,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:a4,rightx:a2,righty:a5,start:b9,touchpad:b13,x:b0,y:b3,platform:Linux,
03000000120c0000210e000011010000,Brook Mars PS4 Controller,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,leftx:a0,lefty:a1,rightshoulder:b5,rightstick:b11,righttrigger:b7,rightx:a2,righty:a3,start:b9,touchpad:b13,x:b0,y:b3,platform:Linux,
03000000120c0000f70e000011010000,Brook Universal Fighting Board,a:b1,b:b2,back:b8,dpdown:h0.4,dpleft:h0.8,dpright:h0.2,dpup:h0.1,guide:b12,leftshoulder:b4,leftstick:b10,lefttrigger:b6,rightshoulder:b5,rightstick:b11,righttrigger:b7,start:b9,x:b0,y:b3,platform:Linux,

View File

@@ -105,7 +105,7 @@ disable_compiler_warnings_for_target(cubeb)
disable_compiler_warnings_for_target(speex)
# Find the Qt components that we need.
find_package(Qt6 6.7.2 COMPONENTS CoreTools Core GuiTools Gui WidgetsTools Widgets LinguistTools REQUIRED)
find_package(Qt6 6.7.3 COMPONENTS CoreTools Core GuiTools Gui WidgetsTools Widgets LinguistTools REQUIRED)
if(WIN32)
add_subdirectory(3rdparty/rainterface EXCLUDE_FROM_ALL)
@@ -119,6 +119,12 @@ add_subdirectory(3rdparty/ccc EXCLUDE_FROM_ALL)
# The docking system for the debugger.
find_package(KDDockWidgets-qt6 REQUIRED)
# Add an extra include path to work around a broken include directive.
# TODO: Remove this the next time we update KDDockWidgets.
get_target_property(KDDOCKWIDGETS_INCLUDE_DIRECTORY KDAB::kddockwidgets INTERFACE_INCLUDE_DIRECTORIES)
target_include_directories(KDAB::kddockwidgets INTERFACE
${KDDOCKWIDGETS_INCLUDE_DIRECTORY}/kddockwidgets
)
# Architecture-specific.
if(_M_X86)

View File

@@ -113,6 +113,10 @@ bool GSRunner::InitializeConfig()
si.SetBoolValue("EmuCore/GS", "FrameLimitEnable", false);
si.SetIntValue("EmuCore/GS", "VsyncEnable", false);
// Force screenshot quality settings to something more performant, overriding any defaults good for users.
si.SetIntValue("EmuCore/GS", "ScreenshotFormat", static_cast<int>(GSScreenshotFormat::PNG));
si.SetIntValue("EmuCore/GS", "ScreenshotQuality", 10);
// ensure all input sources are disabled, we're not using them
si.SetBoolValue("InputSources", "SDL", false);
si.SetBoolValue("InputSources", "XInput", false);

View File

@@ -323,6 +323,13 @@ void DebuggerWindow::onVMPaused()
CBreakPoints::SetSkipFirst(BREAKPOINT_IOP, r3000Debug.getPC());
});
}
// Stops us from telling the disassembly widget to jump somwhere because
// breakpoint code paused the core.
if (!CBreakPoints::GetCorePaused())
emit onVMActuallyPaused();
else
CBreakPoints::SetCorePaused(false);
}
void DebuggerWindow::onVMResumed()

View File

@@ -51,6 +51,11 @@ public slots:
void onStepOver();
void onStepOut();
Q_SIGNALS:
// Only emitted if the pause wasn't a temporary one triggered by the
// breakpoint code.
void onVMActuallyPaused();
protected:
void closeEvent(QCloseEvent* event);

View File

@@ -3,8 +3,9 @@
#include "DisassemblyWidget.h"
#include "Debugger/Breakpoints/BreakpointModel.h"
#include "Debugger/DebuggerWindow.h"
#include "Debugger/JsonValueWrapper.h"
#include "Debugger/Breakpoints/BreakpointModel.h"
#include "DebugTools/DebugInterface.h"
#include "DebugTools/DisassemblyManager.h"
@@ -35,7 +36,8 @@ DisassemblyWidget::DisassemblyWidget(const DebuggerWidgetParameters& parameters)
setContextMenuPolicy(Qt::CustomContextMenu);
connect(this, &DisassemblyWidget::customContextMenuRequested, this, &DisassemblyWidget::openContextMenu);
connect(g_emu_thread, &EmuThread::onVMPaused, this, &DisassemblyWidget::gotoProgramCounterOnPause);
connect(g_debugger_window, &DebuggerWindow::onVMActuallyPaused,
this, &DisassemblyWidget::gotoProgramCounterOnPause);
receiveEvent<DebuggerEvents::Refresh>([this](const DebuggerEvents::Refresh& event) -> bool {
update();

View File

@@ -5110,7 +5110,7 @@ Do you want to overwrite?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DebuggerWindow.cpp" line="330"/>
<location filename="../Debugger/DebuggerWindow.cpp" line="337"/>
<source>Pause</source>
<translation type="unfinished"></translation>
</message>
@@ -5123,160 +5123,160 @@ Do you want to overwrite?</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="645"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="647"/>
<source>Copy Address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="648"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="650"/>
<source>Copy Instruction Hex</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="673"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="675"/>
<source>NOP Instruction(s)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="678"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="680"/>
<source>Run to Cursor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="689"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="691"/>
<source>Follow Branch</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="712"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="714"/>
<source>Add Function</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="275"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="715"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="277"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="717"/>
<source>Rename Function</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="718"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="720"/>
<source>Remove Function</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="111"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="130"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="113"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="132"/>
<source>Assemble Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="111"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="113"/>
<source>Unable to change assembly while core is running</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="118"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="120"/>
<source>Assemble Instruction</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="275"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="277"/>
<source>Function name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="268"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="281"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="270"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="283"/>
<source>Rename Function Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="281"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="283"/>
<source>Function name cannot be nothing.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="268"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="270"/>
<source>No function / symbol is currently selected.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="211"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="213"/>
<source>Go To In Disassembly</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="221"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="223"/>
<source>Cannot Go To</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="325"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="327"/>
<source>Restore Function Error</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="325"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="327"/>
<source>Unable to stub selected address.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="651"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="653"/>
<source>&amp;Copy Instruction Text</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="657"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="659"/>
<source>Copy Function Name</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="665"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="667"/>
<source>Restore Instruction(s)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="669"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="671"/>
<source>Asse&amp;mble new Instruction(s)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="681"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="683"/>
<source>&amp;Jump to Cursor</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="685"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="687"/>
<source>Toggle &amp;Breakpoint</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="694"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="696"/>
<source>&amp;Go to Address</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="704"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="706"/>
<source>Go to PC on Pause</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="724"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="726"/>
<source>Restore Function</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="729"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="731"/>
<source>Stub (NOP) Function</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="735"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="737"/>
<source>Show &amp;Instruction Bytes</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../Debugger/DisassemblyWidget.cpp" line="749"/>
<location filename="../Debugger/DisassemblyWidget.cpp" line="751"/>
<source>%1 NOT VALID ADDRESS</source>
<translation type="unfinished"></translation>
</message>