TryTwo
d96840f808
BreakpointWidget: Move delete to the context menu. Selecting rows will be removed, so select -> delete is hard to maintain.
2024-05-25 17:09:21 -07:00
mitaclaw
3b214a4978
BranchWatchDialog: Resolve Linux FIXME
...
This stopped being an issue for me with a recent package update, so I guess Qt6 was fixed upstream?
2024-05-25 06:22:45 -07:00
mitaclaw
4a2ec86a9a
Branch Watch Tool: Add Rule Of 5 And Remove Unnecessary Include
2024-05-25 06:22:44 -07:00
mitaclaw
ecce8e81c8
BranchWatchDialog: Case-Insensitive Sorting
2024-05-24 15:42:04 -07:00
Admiral H. Curtiss
c26373bd95
Merge pull request #12738 from mitaclaw/expression-sprs
...
Expression: Support All SPRs + MSR
2024-05-04 17:35:12 +02:00
Tilka
c442c0d5e5
Merge pull request #10957 from Pokechu22/std-bitcast
...
Replace Common::BitCast with std::bit_cast
2024-05-04 08:24:59 +01:00
Admiral H. Curtiss
c23562b7b5
Merge pull request #12695 from mitaclaw/core-global-system-4
...
Core::IsRunning: Avoid Global System Accessor
2024-05-04 05:15:35 +02:00
Pokechu22
fbbfea8e8e
Replace Common::BitCast with std::bit_cast
2024-05-03 18:43:51 -07:00
mitaclaw
076bdf7a24
Expression: Support All SPRs + MSR
2024-05-03 17:56:58 -07:00
mitaclaw
0df401b164
Core::IsRunning: Avoid Global System Accessor
2024-05-01 08:54:17 -07:00
mitaclaw
0397339ab1
DolphinQt: Properly Delete (Some) Widgets
...
This is not every memory leak, just the ones that were obvious.
2024-04-30 11:17:28 -07:00
JosJuice
83b280d903
i18n: Add comments and improve source strings
2024-04-20 23:02:46 +02:00
mitaclaw
672be6a8cf
PPCSymbolDB: GetDescription by std::string_view
...
Should save a lot of deep copies.
2024-04-13 00:19:01 -07:00
mitaclaw
eb92d6f0a8
Core::GetState: Avoid Global System Accessor
2024-04-08 16:23:23 -07:00
Admiral H. Curtiss
a2074a8583
Merge pull request #12645 from mitaclaw/ppc-symbols-signal
...
DolphinQt: A Ubiquitous Signal For When Symbols Change
2024-03-31 06:36:09 +02:00
mitaclaw
b52a08d533
DolphinQt: A Ubiquitous Signal For When Symbols Change
...
There were three distinct mechanisms for signaling symbol changes in DolphinQt: `Host::NotifyMapLoaded`, `MenuBar::NotifySymbolsUpdated`, and `CodeViewWidget::SymbolsChanged`. The behavior of these signals has been consolidated into the new `Host::PPCSymbolsUpdated` signal, which can be emitted from anywhere in DolphinQt to properly update symbols everywhere in DolphinQt.
2024-03-28 09:57:22 -07:00
mitaclaw
ae5da02cde
DolphinQt Settings: Signal Debug Font By Const Reference
2024-03-22 07:52:52 -07:00
mitaclaw
c24fa93965
PPCSymbolDB: Move instance to PowerPCManager
2024-03-13 22:58:14 -07:00
Admiral H. Curtiss
551dcec0b1
Merge pull request #12602 from mitaclaw/qt-memory-global-system
...
Memory(View)Widget: Avoid Global System Accessor
2024-03-12 04:12:52 +01:00
Jordan Woyak
f86e9e9cbd
Merge pull request #12610 from mitaclaw/branch-watch-dialog-gcc
...
BranchWatchDialog: Fix GCC Warnings
2024-03-11 17:36:21 -05:00
mitaclaw
0645b4d579
BranchWatchDialog: Fix Misc. Errata
...
Window icon was missing from QDialog lacking a parent.
Giving the QDialog a parent revealed I had failed to make it properly non-modal, necessitating further changes.
Settings save less often, now only upon destruction.
Construction of BranchWatchDialog is now deferred.
2024-03-07 15:59:03 -08:00
mitaclaw
8d5e39751e
BranchWatchDialog: Fix GCC Warnings
...
GCC can't lambda right.
2024-03-02 07:53:23 -08:00
Admiral H. Curtiss
f2e04e0603
Merge pull request #12359 from mitaclaw/code-diff-dialog-refresh
...
BranchWatchDialog: A Total Replacement for CodeDiffDialog
2024-03-02 14:13:54 +01:00
mitaclaw
26141eece8
Memory(View)Widget: Avoid Global System Accessor
2024-03-01 07:09:20 -08:00
mitaclaw
8eeb93d51a
CodeWidget: Simplify Case-Insensitive Contains
2024-02-27 12:03:38 -08:00
mitaclaw
8134c8a572
BranchWatchDialog: A Total Replacement for CodeDiffDialog
...
With a purpose-built Branch Watch feature built into the emulated system: BranchWatchDialog, replacing CodeDiffDialog, is now better than ever!
2024-02-27 11:40:58 -08:00
Admiral H. Curtiss
e6ee217a7c
Core: Move Emulation IOS instance to System.
2024-02-07 22:07:30 +01:00
Lioncash
100242a380
GekkoSyntaxHighlight: Collapse cases for builtin color formats
...
Same behavior, but without as much duplication.
2024-01-23 18:39:59 -05:00
Lioncash
e4fa5614d1
GekkoSyntaxHighlight: Fix FPR terminal highlighting being treated as GPRs
...
Copy-paste error. Ultimately GPR and FPRs use the same highlighting
style anyway, so this is mostly just a correctness change.
2024-01-23 18:38:06 -05:00
Mai
d64705d691
Merge pull request #12512 from JosJuice/assembler-dirty-flag
...
DolphinQt: Rework dirty flag handling in AssemblerWidget::TabTextForEditor
2024-01-21 10:22:46 -05:00
JosJuice
6276232574
DolphinQt: Rework dirty flag handling in AssemblerWidget::TabTextForEditor
...
Putting the handling of the dirty flag in only one string makes it
clearer for translators what's going on.
2024-01-20 20:00:52 +01:00
JosJuice
6cd67e3937
Partially revert "DolphinQt/Assembler: improve translatability"
...
This reverts the parts of commit c8c9928eb1
that made translatability
worse rather than better. Changing "Error in column %2" to "%1 in column
%2" not only means that the translators have to check the i18n comments
to know what word hides behind %1, but there's also the problem that
the translator might need to translate "Error" in this context
differently from the standalone string "Error". Having to copy-paste
some HTML tags may be annoying for translators, but it's a far less
serious problem.
2024-01-20 14:46:41 +01:00
Lioncache
75ec350dc4
Core/Debugger_SymbolMap: Remove redundant system parameters from interface
...
The CPU thread guard already allows access to the system instance. We can
remove the system parameter to reduce rendundancy here.
2023-12-18 15:46:22 -05:00
Tilka
773ffd04b8
Merge pull request #11497 from vyuuui/debugger_assembler_ui
...
Built-in assembler for debugger interface
2023-12-16 21:15:31 +00:00
Tillmann Karras
c8c9928eb1
DolphinQt/Assembler: improve translatability
...
Also, don't show error line numbers in the instruction patch dialog. The
input text field only accepts one line anyway.
2023-12-15 00:37:42 +00:00
vyuuui
38c15df464
Parser and Assembler implementations
2023-12-13 05:32:20 -08:00
Mai
a65246ec3f
Merge pull request #11988 from JosJuice/jit-feature-flags
...
Jit: Replace "msrBits" with "featureFlags" and use for performance monitor
2023-12-05 03:13:50 -05:00
LillyJadeKatrin
cb2fa9a1f2
Disable Debug Mode in hardcore mode
...
Debug Mode gives players direct read and write access to memory, which could be used to completely manipulate RetroAchievements logic and therefore is not allowed in hardcore mode.
2023-12-02 16:41:16 -05:00
JosJuice
ca7e05bbc4
Jit: Replace "msrBits" with "featureFlags"
...
Preparation for the next commit.
2023-11-30 22:40:32 +01:00
Zopolis4
f0d2ce4683
Remove _M_X86 in favour of _M_X86_64
2023-11-28 23:03:20 +11:00
Mai
d28155a7bb
Merge pull request #12265 from TryTwo/FuncFinder_bkup
...
CodeDiffDialog: Add saving/loading results to a file.
2023-11-27 19:00:27 +01:00
TryTwo
0826586f96
CodeDiffDialog: Add saving/loading function finder results.
2023-11-26 21:26:58 -07:00
Admiral H. Curtiss
937cb8ef3a
Merge pull request #12299 from TryTwo/PR_bugfix_frame_advance
...
Core: Add option to not report state change to SetState (bugfix)
2023-11-22 23:10:51 +01:00
TryTwo
b57ba42a55
Core::SetState() allow state to change without sending a callback.
...
Some state changes are meant to be near instantanoues, before switching to something else. By reporting ithe instant switch, the UI will flicker between states (pause/play button) and the debugger will unnecessarily update. Skipping the callback avoids these issues.
2023-11-16 11:07:37 -07:00
Tilka
166423ad61
Merge pull request #12273 from Dentomologist/dolphinqt_remove_unnecessary_qoverloads
...
DolphinQt: Remove unnecessary qOverloads
2023-11-12 19:43:05 +00:00
TryTwo
2a5147a19b
Dark style: add QTableCornerButton. Fix padding for tables.
...
CodeDiffDialog: Fix QTableWidget UI issues
2023-11-04 15:00:07 -07:00
Dentomologist
43e69d3e6a
DolphinQt: Remove unnecessary qOverloads
...
qOverload is used to disambiguate pointers to overloaded functions, but
most of the usages in the code base were with non-overloaded functions.
2023-11-04 14:14:14 -07:00
Sepalani
573863703a
MemoryViewWidget: Fix some characters being truncated
2023-08-21 22:02:44 +04:00
Admiral H. Curtiss
24012cfc7f
DolphinQt: Adjust panel-specific colors and syntax highlighting for dark theme.
2023-08-12 19:43:12 +02:00
Admiral H. Curtiss
e2fb8fab2f
DolphinQt: Set window decorations for all top-level QWidgets.
2023-08-12 16:54:54 +02:00
Lioncash
696087cae0
Qt/NetworkWidget: Get rid of some trivial sign conversions
...
In all instances, these variables should be signed rather than unsigned.
2023-06-17 10:48:49 -04:00
Lioncash
6e9afd9a73
BreakpointDialog: Mark breakpoint help text as translatable
...
We already mark the title of the dialog box as translatable, so it
would be a bit odd to not mark the containing text as translatable too.
2023-06-12 09:50:17 -04:00
Lioncash
2b0a9477d0
MemoryViewWidget: Use QStringView with ConvertTextToBytes
...
Allows for avoiding string copies. While we're at it, we can also mark
ConvertTextToBytes as const.
2023-06-08 12:01:59 -04:00
Lioncash
cfd25f1d7c
CodeDiffDialog: Construct Diff instance in CalculateSymbolsFromProfile() when necessary
...
We can move the construction of the Diff instance into the body of the
if statement, so that we only construct this if the condition is true.
While we're at it, we can move the symbol description string into the
instance, getting rid of a copy. The function itself can also be const
qualified.
2023-06-08 11:55:57 -04:00
Lioncash
496aea54c0
CodeDiffDialog: Pass QString by const reference to create_item
...
Avoids churning string copies when updating
2023-06-08 11:48:09 -04:00
Lioncash
c99b0f2eb8
BreakpointWidget: Pass QString by const reference to create_item
...
Avoids churning string copies when performing updates.
2023-06-08 11:46:16 -04:00
Lioncash
867e7d259d
BreakpointDialog: Pass QString by const reference to invalid_input
...
Gets rid of redundant copying.
2023-06-08 11:45:14 -04:00
Lioncash
21df3ca572
StringUtil: Move IsPrintableCharacter() into Common namespace
2023-05-16 14:17:54 -04:00
Admiral H. Curtiss
6e6865a63a
Merge pull request #11785 from shuffle2/qtnext3
...
DolphinQt: cache icons instead of single pixmaps
2023-04-29 17:32:29 +02:00
Shawn Hoffman
bb227ad7bb
DolphinQt: reset stylesheets on colorSchemeChanged
...
This is required for switching system color scheme
(dark/light) dynamically at runtime.
2023-04-25 12:34:34 -07:00
Shawn Hoffman
51e528e45f
DolphinQt: cache icons instead of single pixmaps
...
Fixes dynamically changing dpi scaling.
Load resources from svg if possible.
Currently svg support is not in Qt build in Externals,
and image files need to be added later.
2023-04-25 12:34:27 -07:00
Shawn Hoffman
258cf0ff28
DolphinQt: assume QT_VERSION_CHECK >= 6.0.0
2023-04-25 10:39:05 -07:00
Léo Lam
ba150a6824
Merge pull request #11790 from AdmiralCurtiss/network-widget-workaround
...
Qt/NetworkWidget: Don't update if not paused.
2023-04-25 01:07:42 +01:00
Lioncash
d991cbaf3c
Common: Move CodeTrace.cpp/.h into Core
...
This interface relies on Core details and shouldn't be in Common to
begin with, since it's not a general utility.
2023-04-24 09:10:43 -04:00
Admiral H. Curtiss
8a6118bec6
Qt/NetworkWidget: Don't update if not paused.
...
This is similar to https://github.com/dolphin-emu/dolphin/pull/11623 where the Core state change invoked by the CPUThreadGuard does indirectly cause another Update() call.
2023-04-23 21:48:23 +02:00
Admiral H. Curtiss
b2ee958058
IOS/WiiSockMan: Move instance to IOS Kernel.
2023-04-18 01:24:10 +02:00
Admiral H. Curtiss
e9dbb93cb5
Merge pull request #11756 from lioncash/ini
...
Common/IniFile: Move interface into Common namespace
2023-04-14 20:52:30 +02:00
Léo Lam
ae18aa0639
Merge pull request #11687 from Minty-Meeo/warnings
...
Resolve GCC/Clang Warnings
2023-04-14 01:29:46 +01:00
Lioncash
e4caace6bb
Common/IniFile: Move interface into Common namespace
...
Gets this out of the global namespace and into the Common namespace
2023-04-13 10:19:28 -04:00
Minty-Meeo
d9a49c68d9
Resolve [-Wunused-lambda-capture]
2023-04-10 14:21:15 -05:00
Admiral H. Curtiss
23843583bf
PowerPC: Refactor to class, move to System.
2023-04-09 21:48:37 +02:00
sowens99
44e3993f2f
DolphinQt: Prevent MemoryViewWidget updates when hidden
2023-04-07 11:21:19 -04:00
Admiral H. Curtiss
2d1f661118
DolphinQt: Avoid ppcState global.
2023-04-05 20:09:32 +02:00
Michael Cook (mackal)
f424e7815a
DolphinQt: Fix memory leaks in MemoryWidget
...
QMenuBar::addMenu does not take ownership of the QMenu, setting their
parent allows them to be cleaned up
2023-04-04 16:10:31 -04:00
Admiral H. Curtiss
8dabd1a025
PowerPC/MMU: Refactor to class, move to System.
2023-03-28 03:47:51 +02:00
Admiral H. Curtiss
9217a9eba4
JitInterface: Refactor to class, move to System.
2023-03-26 14:38:07 +02:00
Admiral H. Curtiss
912cd456fb
Core: Add System parameter to CPUThreadGuard.
2023-03-08 22:41:42 +01:00
Admiral H. Curtiss
3b364c5c16
HW/CPU: Refactor to class, move to System.
2023-03-08 12:23:37 +01:00
Admiral H. Curtiss
6d38dd9821
Qt/WatchWidget: Don't update if not paused.
2023-03-07 20:31:15 +01:00
Admiral H. Curtiss
4e6c89fbfd
Qt/CodeViewWidget: Don't read PC in Update() if we don't have a CPU thread guard.
2023-02-20 03:10:12 +01:00
Admiral H. Curtiss
ef1520c2c6
Qt/CodeViewWidget: Don't try to pause emulator in Update() if we happen to be on a breakpoint.
2023-02-20 02:56:04 +01:00
Seeky
4e6e510003
Debugger: Add string comparison to conditional breakpoints.
2023-02-20 01:40:33 +01:00
Pokechu22
b6d476241a
CodeViewWidget: Fix memory leak
...
Per https://doc.qt.io/qt-6/qabstractitemview.html#setItemDelegateForColumn setItemDelegateForColumn does not take ownership of the parameter, so it was not being deleted. Specifying a parent to QObject (via QStyledItemDelegate's constructor) will allow it to automatically be deleted, per https://doc.qt.io/qt-6/objecttrees.html . The other instance of a QItemDelegate in IOWindow.cpp already used this.
2023-02-17 18:29:32 -08:00
Pokechu22
1c5e223532
MemoryViewWidget: Fix memory leaks
...
bp_item/row_item/item were never deleted, and the normal Qt ownership system wasn't applying to them because they were being cloned.
2023-02-17 18:17:01 -08:00
Pokechu22
8802f96b7e
Fix uninitialized variable warnings (C26495)
2023-02-15 19:18:39 -08:00
JosJuice
5b6784432c
Follow-up fixes for "Properly lock CPU before accessing emulated memory"
2023-02-14 18:44:16 +01:00
JosJuice
6f0266e8de
DolphinQt: Only update call stack if paused
...
This avoids a pseudo infinite loop where CodeWidget::UpdateCallstack
would lock the CPU in order to read the call stack, causing the CPU to
call Host_UpdateDisasmDialog because it's transitioning from running to
pausing, causing Host::UpdateDisasmDialog to be emitted, causing
CodeWidget::Update to be called, once again causing
CodeWidget::UpdateCallstack to be called, repeating the cycle.
Dolphin didn't go completely unresponsive during this, because
Host_UpdateDisasmDialog schedules the emitting of Host::UpdateDisasmDialog
to happen on another thread without blocking, but it was stopping certain
operations like exiting emulation from working.
2023-02-12 12:50:28 +01:00
JosJuice
7cecb28bdf
DolphinQt: Properly lock CPU before accessing emulated memory
...
This fixes a problem I was having where using frame advance with the
debugger open would frequently cause panic alerts about invalid addresses
due to the CPU thread changing MSR.DR while the host thread was trying
to access memory.
To aid in tracking down all the places where we weren't properly locking
the CPU, I've created a new type (in Core.h) that you have to pass as a
reference or pointer to functions that require running as the CPU thread.
2023-02-12 11:27:50 +01:00
Pokechu22
3bd655463d
MemoryViewWidget: Fix warning: enumeration value ‘Null’ not handled in switch [-Wswitch]
2023-02-09 16:23:02 -08:00
Pokechu22
5c8d8383e2
CodeWidget: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Admiral H. Curtiss
8adabb86cf
Debugger: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
61ba516570
PowerPC: Move a few functions to PowerPCState.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
c13ca271d8
PowerPC: Parametrize CTR macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
0f301829d2
PowerPC: Remove rPS macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
8fccefa3aa
PowerPC: Remove GPR macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
be8d0b76ca
PowerPC: Remove PC macro.
2023-01-27 15:22:41 +01:00
Lioncash
e5b91f00b0
Common: Replace StringBeginsWith/StringEndsWith with std equivalents
...
Obsoletes these functions in favor of the standard member functions
added in C++20.
2023-01-24 14:58:20 -05:00
JosJuice
d0da689eeb
DolphinQt: Add i18n comments for strings containing the word "watches"
...
These new strings could use the same clarification as we have for
the existing string "&Delete Watch".
2023-01-23 20:49:22 +01:00
Admiral H. Curtiss
653e0ccf28
Merge pull request #11365 from iwubcode/cheat_manager_freeze_value
...
DolphinQt: add ability to lock / freeze values in the watches window
2023-01-09 18:41:28 +01:00
Admiral H. Curtiss
74e1577a2c
HW/ProcessorInterface: Refactor to class, move to Core::System.
2023-01-04 03:00:10 +01:00