Browse Source
Merge pull request #5028 from lioncash/final-system
Merge pull request #5028 from lioncash/final-system
core: Eliminate remaining usages of the global system instancepull/15/merge
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 58 additions and 1593 deletions
-
2src/core/CMakeLists.txt
-
11src/core/arm/dynarmic/arm_dynarmic_64.cpp
-
7src/core/core.cpp
-
1src/core/cpu_manager.cpp
-
1397src/core/gdbstub/gdbstub.cpp
-
114src/core/gdbstub/gdbstub.h
-
3src/core/loader/deconstructed_rom_directory.cpp
-
3src/core/loader/kip.cpp
-
6src/core/loader/nro.cpp
-
5src/core/loader/nso.cpp
-
17src/core/settings.cpp
-
8src/core/settings.h
-
3src/yuzu/configuration/config.cpp
-
3src/yuzu/configuration/configure_dialog.cpp
-
2src/yuzu/configuration/configure_per_game.cpp
-
2src/yuzu/configuration/configure_profile_manager.cpp
-
12src/yuzu/configuration/configure_system.cpp
-
3src/yuzu/configuration/configure_ui.cpp
-
36src/yuzu/main.cpp
-
9src/yuzu_cmd/yuzu.cpp
-
7src/yuzu_tester/yuzu.cpp
1397
src/core/gdbstub/gdbstub.cpp
File diff suppressed because it is too large
View File
File diff suppressed because it is too large
View File
@ -1,114 +0,0 @@ |
|||
// Copyright 2013 Dolphin Emulator Project |
|||
// Licensed under GPLv2+ |
|||
// Refer to the license.txt file included. |
|||
|
|||
// Originally written by Sven Peter <sven@fail0verflow.com> for anergistic. |
|||
|
|||
#pragma once |
|||
|
|||
#include <string> |
|||
#include "common/common_types.h" |
|||
#include "core/hle/kernel/thread.h" |
|||
|
|||
namespace GDBStub { |
|||
|
|||
/// Breakpoint Method |
|||
enum class BreakpointType { |
|||
None, ///< None |
|||
Execute, ///< Execution Breakpoint |
|||
Read, ///< Read Breakpoint |
|||
Write, ///< Write Breakpoint |
|||
Access ///< Access (R/W) Breakpoint |
|||
}; |
|||
|
|||
struct BreakpointAddress { |
|||
VAddr address; |
|||
BreakpointType type; |
|||
}; |
|||
|
|||
/** |
|||
* Set the port the gdbstub should use to listen for connections. |
|||
* |
|||
* @param port Port to listen for connection |
|||
*/ |
|||
void SetServerPort(u16 port); |
|||
|
|||
/** |
|||
* Starts or stops the server if possible. |
|||
* |
|||
* @param status Set the server to enabled or disabled. |
|||
*/ |
|||
void ToggleServer(bool status); |
|||
|
|||
/// Start the gdbstub server. |
|||
void Init(); |
|||
|
|||
/** |
|||
* Defer initialization of the gdbstub to the first packet processing functions. |
|||
* This avoids a case where the gdbstub thread is frozen after initialization |
|||
* and fails to respond in time to packets. |
|||
*/ |
|||
void DeferStart(); |
|||
|
|||
/// Stop gdbstub server. |
|||
void Shutdown(); |
|||
|
|||
/// Checks if the gdbstub server is enabled. |
|||
bool IsServerEnabled(); |
|||
|
|||
/// Returns true if there is an active socket connection. |
|||
bool IsConnected(); |
|||
|
|||
/// Register module. |
|||
void RegisterModule(std::string name, VAddr beg, VAddr end, bool add_elf_ext = true); |
|||
|
|||
/** |
|||
* Signal to the gdbstub server that it should halt CPU execution. |
|||
* |
|||
* @param is_memory_break If true, the break resulted from a memory breakpoint. |
|||
*/ |
|||
void Break(bool is_memory_break = false); |
|||
|
|||
/// Determine if there was a memory breakpoint. |
|||
bool IsMemoryBreak(); |
|||
|
|||
/// Read and handle packet from gdb client. |
|||
void HandlePacket(); |
|||
|
|||
/** |
|||
* Get the nearest breakpoint of the specified type at the given address. |
|||
* |
|||
* @param addr Address to search from. |
|||
* @param type Type of breakpoint. |
|||
*/ |
|||
BreakpointAddress GetNextBreakpointFromAddress(VAddr addr, GDBStub::BreakpointType type); |
|||
|
|||
/** |
|||
* Check if a breakpoint of the specified type exists at the given address. |
|||
* |
|||
* @param addr Address of breakpoint. |
|||
* @param type Type of breakpoint. |
|||
*/ |
|||
bool CheckBreakpoint(VAddr addr, GDBStub::BreakpointType type); |
|||
|
|||
/// If set to true, the CPU will halt at the beginning of the next CPU loop. |
|||
bool GetCpuHaltFlag(); |
|||
|
|||
/// If set to true and the CPU is halted, the CPU will step one instruction. |
|||
bool GetCpuStepFlag(); |
|||
|
|||
/** |
|||
* When set to true, the CPU will step one instruction when the CPU is halted next. |
|||
* |
|||
* @param is_step |
|||
*/ |
|||
void SetCpuStepFlag(bool is_step); |
|||
|
|||
/** |
|||
* Send trap signal from thread back to the gdbstub server. |
|||
* |
|||
* @param thread Sending thread. |
|||
* @param trap Trap no. |
|||
*/ |
|||
void SendTrap(Kernel::Thread* thread, int trap); |
|||
} // namespace GDBStub |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue