mirror of
https://github.com/Atmosphere-NX/Atmosphere
synced 2025-01-08 05:27:57 +00:00
Compare commits
3 commits
72b0fe6c1c
...
615f8a3ef3
Author | SHA1 | Date | |
---|---|---|---|
|
615f8a3ef3 | ||
|
000e382c42 | ||
|
3627356d4b |
4 changed files with 19 additions and 6 deletions
|
@ -45,7 +45,7 @@ namespace ams::dmnt {
|
|||
}
|
||||
|
||||
if (R_FAILED(result)) {
|
||||
AMS_DMNT2_GDB_LOG_DEBUG("BreakPointManager::SetBreakPoint %p 0x%lx !!! Fail 0x%08x !!!\n", bp, bp->m_address, result.GetValue());
|
||||
AMS_DMNT2_GDB_LOG_DEBUG("BreakPointManager::SetBreakPoint %p 0x%lx !!! Fail 0x%08x !!!\n", bp, address, result.GetValue());
|
||||
}
|
||||
|
||||
R_RETURN(result);
|
||||
|
|
|
@ -1538,13 +1538,18 @@ namespace ams::dmnt {
|
|||
}
|
||||
|
||||
void GdbServerImpl::Q() {
|
||||
if (false) {
|
||||
/* TODO: QStartNoAckMode? */
|
||||
if (ParsePrefix(m_receive_packet, "QStartNoAckMode")) {
|
||||
this->QStartNoAckMode();
|
||||
} else {
|
||||
AMS_DMNT2_GDB_LOG_DEBUG("Not Implemented Q: %s\n", m_receive_packet);
|
||||
}
|
||||
}
|
||||
|
||||
void GdbServerImpl::QStartNoAckMode() {
|
||||
m_packet_io.SetNoAck();
|
||||
AppendReplyOk(m_reply_cur, m_reply_end);
|
||||
}
|
||||
|
||||
void GdbServerImpl::T() {
|
||||
if (const char *dot = std::strchr(m_receive_packet, '.'); dot != nullptr) {
|
||||
const u64 thread_id = DecodeHex(dot + 1);
|
||||
|
@ -1919,6 +1924,7 @@ namespace ams::dmnt {
|
|||
R_SUCCEED();
|
||||
}
|
||||
|
||||
|
||||
void GdbServerImpl::q() {
|
||||
if (ParsePrefix(m_receive_packet, "qAttached:")) {
|
||||
this->qAttached();
|
||||
|
@ -2145,6 +2151,7 @@ namespace ams::dmnt {
|
|||
AppendReplyFormat(m_reply_cur, m_reply_end, ";swbreak+");
|
||||
AppendReplyFormat(m_reply_cur, m_reply_end, ";hwbreak+");
|
||||
AppendReplyFormat(m_reply_cur, m_reply_end, ";vContSupported+");
|
||||
AppendReplyFormat(m_reply_cur, m_reply_end, ";QStartNoAckMode+");
|
||||
}
|
||||
|
||||
void GdbServerImpl::qXfer() {
|
||||
|
|
|
@ -77,6 +77,8 @@ namespace ams::dmnt {
|
|||
|
||||
void Q();
|
||||
|
||||
void QStartNoAckMode();
|
||||
|
||||
void T();
|
||||
|
||||
void Z();
|
||||
|
@ -115,4 +117,4 @@ namespace ams::dmnt {
|
|||
Result ParseVCont(char * const token, u64 *thread_ids, u8 *continue_modes, s32 num_threads, DebugProcess::ContinueMode &default_continue_mode);
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -46,8 +46,11 @@ namespace ams::dmnt::cheat::impl {
|
|||
void CheatVirtualMachine::OpenDebugLogFile() {
|
||||
#ifdef DMNT_CHEAT_VM_DEBUG_LOG
|
||||
CloseDebugLogFile();
|
||||
R_ABORT_UNLESS(fs::OpenFile(std::addressof(m_debug_log_file), "sdmc:/atmosphere/cheat_vm_logs/debug_log.txt"));
|
||||
fs::EnsureDirectory("sdmc:/atmosphere/cheat_vm_logs");
|
||||
fs::CreateFile("sdmc:/atmosphere/cheat_vm_logs/debug_log.txt", 0);
|
||||
R_ABORT_UNLESS(fs::OpenFile(std::addressof(m_debug_log_file), "sdmc:/atmosphere/cheat_vm_logs/debug_log.txt", fs::OpenMode_Write | fs::OpenMode_AllowAppend));
|
||||
m_debug_log_file_offset = 0;
|
||||
m_has_debug_log_file = true;
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -80,7 +83,8 @@ namespace ams::dmnt::cheat::impl {
|
|||
fmt_len += 1;
|
||||
}
|
||||
|
||||
fs::WriteFile(m_debug_log_file, m_debug_log_offset, m_debug_log_format_buf, fmt_len, fs::WriteOption::Flush);
|
||||
fs::WriteFile(m_debug_log_file, m_debug_log_file_offset, m_debug_log_format_buf, fmt_len, fs::WriteOption::Flush);
|
||||
m_debug_log_file_offset += fmt_len;
|
||||
#else
|
||||
AMS_UNUSED(format);
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue