50e4dc5dba
Watches: Make use of std::erase_if
2023-12-12 13:24:40 -05:00
ffabb6c57b
Replace std::ostringstream usage with fmt::format
2023-06-18 18:37:32 -05:00
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
23843583bf
PowerPC: Refactor to class, move to System.
2023-04-09 21:48:37 +02:00
3006c23c85
Core/CPUThreadGuard: Fetch System from Guard.
2023-03-13 18:13:20 +01:00
8802f96b7e
Fix uninitialized variable warnings (C26495)
2023-02-15 19:18:39 -08:00
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
49a84cbc4c
Resolve various "no previous declaration" warnings
2023-02-09 16:23:01 -08:00
bbdfb4bc14
CodeTrace: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
be8d0b76ca
PowerPC: Remove PC macro.
2023-01-27 15:22:41 +01:00
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
8f3e8e4ca3
Core: add locked state to watches
2022-12-23 11:59:23 -06:00
2f2f906bf5
Core: add ability to add memory patches to the patch engine that will be executed each frame
2022-12-23 03:13:03 -06:00
4743d74985
Core: add helper function to apply a memory patch and mark the 'PPCPatches' as final
2022-12-23 03:13:03 -06:00
431301add3
Merge pull request #10771 from TryTwo/PR_AutoStep
...
Debugger: Implement base code tracing logic. and feature to auto-step through code.
2022-11-04 23:32:54 +01:00
e2f4400f49
Make SetPatch responsible for overwriting old patches
2022-10-26 22:46:49 -05:00
2594447c25
Have UnsetPatch only unset the argument address
2022-10-23 18:42:34 -05:00
e10b3308c2
Fix patch corruption using find_if instead of remove_if
2022-10-23 18:41:15 -05:00
fb79c04cf1
MemoryView auto updateDebugger. Implement base codetrace logic. Add register breakpoints. Add CodeViewWidget autostepping to track a value.Debugger
2022-10-06 22:17:22 -07:00
e149ad4f0a
treewide: convert GPLv2+ license info to SPDX tags
...
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
6786340a7c
Watches: Fix Save and Load from strings
2021-03-04 17:55:52 +04:00
57534777d4
Common: Move OSThreads into core
...
Common shouldn't be depending on APIs in Core (in this, case depending
on the PowerPC namespace). Because of the poor separation here, this
moves OSThread functionality into core, so that it resolves the implicit
dependency on core.
2020-10-21 07:35:42 -04:00
39d34e133f
Debugger: Add a Thread widget
...
DebugInterface: Add GetThreads
WatchWidget: Update widget on AddWatch
2020-05-03 20:48:30 +04:00
c2dd2e8a2e
Use std::istringstream or std::ostringstream instead of std::stringstream where possible.
...
This removes std::iostream from the inheritance chain, which reduces
overhead slightly.
2019-12-29 23:45:02 -05:00
bc8778203e
Common/Watches: std::move strings where applicable
...
Allows calling code to move the std::string into the Watch instances,
avoiding copies.
2019-07-08 17:41:06 -04:00
dddac76b8c
Common/MemoryPatches: Silence variable shadowing warnings
2018-06-19 21:33:50 -04:00
397b27e665
MemoryPatches: In-class initialize is_enabled state for MemoryPatch instances
...
Given this is what occurs in both constructors (as one just passes
through to another), we can just initialize the member directly.
While we're at it, amend the struct to follow the general ordering
convention of:
<new types>
<functions>
<variables>
2018-05-29 18:04:06 -04:00
4c33bb8dda
MemoryPatches: std::move std::vector in the constructor
...
We can avoid copying the vector contents in this instance.
2018-05-29 18:01:16 -04:00
8fa898fe9a
DebugInterface: MemoryPatches methods added
...
CodeView: Restore instruction added
2018-05-22 10:31:31 +04:00
74d4a4478f
DebugInterface: Watches methods added
...
Move Watches to Common
2018-04-28 17:46:51 +04:00