<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/Common/DebugInterface.h, branch 2506</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>Common: Move DebugInterface.h into Core</title>
<updated>2023-06-12T14:35:31+00:00</updated>
<author>
<name>Lioncash</name>
<email>mai.iam2048@gmail.com</email>
</author>
<published>2023-06-12T14:27:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=41df38cb7c6418cca73906140b76d37573f2ab93'/>
<id>41df38cb7c6418cca73906140b76d37573f2ab93</id>
<content type='text'>
The base DebugInterface now depends on the Core's CPUThreadGuard, and
utilities in Common shouldn't be depending on Core facilities. So, we
can move this into the core library instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The base DebugInterface now depends on the Core's CPUThreadGuard, and
utilities in Common shouldn't be depending on Core facilities. So, we
can move this into the core library instead.
</pre>
</div>
</content>
</entry>
<entry>
<title>DolphinQt: Properly lock CPU before accessing emulated memory</title>
<updated>2023-02-12T10:27:50+00:00</updated>
<author>
<name>JosJuice</name>
<email>josjuice@gmail.com</email>
</author>
<published>2023-02-12T10:07:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=7cecb28bdf6443362a6ab20e0042ddb3b407ebec'/>
<id>7cecb28bdf6443362a6ab20e0042ddb3b407ebec</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: add locked state to watches</title>
<updated>2022-12-23T17:59:23+00:00</updated>
<author>
<name>iwubcode</name>
<email>iwubcode@users.noreply.github.com</email>
</author>
<published>2022-12-23T05:17:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=8f3e8e4ca34bf3c521e20f41f7a54f5e447e0dac'/>
<id>8f3e8e4ca34bf3c521e20f41f7a54f5e447e0dac</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: add ability to add memory patches to the patch engine that will be executed each frame</title>
<updated>2022-12-23T09:13:03+00:00</updated>
<author>
<name>iwubcode</name>
<email>iwubcode@users.noreply.github.com</email>
</author>
<published>2022-12-22T23:38:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=2f2f906bf567ab6d89e10161c62404a1dcd8ee1e'/>
<id>2f2f906bf567ab6d89e10161c62404a1dcd8ee1e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Core: add helper function to apply a memory patch and mark the 'PPCPatches' as final</title>
<updated>2022-12-23T09:13:03+00:00</updated>
<author>
<name>iwubcode</name>
<email>iwubcode@users.noreply.github.com</email>
</author>
<published>2022-12-22T23:33:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=4743d74985f49fc30f6c44b2192faaa59327fb38'/>
<id>4743d74985f49fc30f6c44b2192faaa59327fb38</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused.</title>
<updated>2022-03-17T19:53:38+00:00</updated>
<author>
<name>TryTwo</name>
<email>taolas@gmail.com</email>
</author>
<published>2022-03-17T19:53:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=53cf78d413cb4e4cc546f027423a6a011cd30a64'/>
<id>53cf78d413cb4e4cc546f027423a6a011cd30a64</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>treewide: convert GPLv2+ license info to SPDX tags</title>
<updated>2021-07-05T02:35:56+00:00</updated>
<author>
<name>Pierre Bourdon</name>
<email>delroth@gmail.com</email>
</author>
<published>2021-07-05T01:22:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e149ad4f0a9874f354221a7fc76d8f1841e47808'/>
<id>e149ad4f0a9874f354221a7fc76d8f1841e47808</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>Debugger: Add a Thread widget</title>
<updated>2020-05-03T16:48:30+00:00</updated>
<author>
<name>Sepalani</name>
<email>sepalani@hotmail.fr</email>
</author>
<published>2020-03-21T07:48:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=39d34e133f0fe6a11db11e523cfbeaf9faf9b2a1'/>
<id>39d34e133f0fe6a11db11e523cfbeaf9faf9b2a1</id>
<content type='text'>
DebugInterface: Add GetThreads

WatchWidget: Update widget on AddWatch
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
DebugInterface: Add GetThreads

WatchWidget: Update widget on AddWatch
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/DebugInterface: Remove GetInstructionSize()</title>
<updated>2019-07-09T18:19:40+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2019-07-08T22:33:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=d2d7bf5c3b5f515932ecaea11bb2ac2b15beb3a3'/>
<id>d2d7bf5c3b5f515932ecaea11bb2ac2b15beb3a3</id>
<content type='text'>
This is completely unused, so it can be removed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is completely unused, so it can be removed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/DebugInterface: Mark a few member functions as const</title>
<updated>2019-07-09T18:19:40+00:00</updated>
<author>
<name>Lioncash</name>
<email>mathew1800@gmail.com</email>
</author>
<published>2019-07-08T22:25:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=92c17827267aa2553e11daae3d53d766b54ae5cf'/>
<id>92c17827267aa2553e11daae3d53d766b54ae5cf</id>
<content type='text'>
Quite a few member functions act as a means to query information. Given
these don't actually modify object state, they can be made const.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Quite a few member functions act as a means to query information. Given
these don't actually modify object state, they can be made const.
</pre>
</div>
</content>
</entry>
</feed>
