Fleshing out debugger types.
This commit is contained in:
@@ -25,7 +25,10 @@
|
||||
|
||||
// Autogenerated Flatbuffers files:
|
||||
#include "xenia/debug/proto/breakpoints_generated.h"
|
||||
#include "xenia/debug/proto/common_generated.h"
|
||||
#include "xenia/debug/proto/control_generated.h"
|
||||
#include "xenia/debug/proto/messages_generated.h"
|
||||
#include "xenia/debug/proto/modules_generated.h"
|
||||
|
||||
DEFINE_string(debug_session_path, "", "Debug output path.");
|
||||
DEFINE_int32(debug_port, 19000, "Port the debugger listens on.");
|
||||
@@ -211,21 +214,62 @@ void Debugger::OnMessage(std::vector<uint8_t> buffer) {
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_AddBreakpointRequest: {
|
||||
response_data_type = proto::ResponseData_RemoveBreakpointResponse;
|
||||
auto response_data = proto::AddBreakpointResponseBuilder(fbb);
|
||||
case proto::RequestData_AddBreakpointsRequest: {
|
||||
response_data_type = proto::ResponseData_RemoveBreakpointsResponse;
|
||||
auto response_data = proto::AddBreakpointsResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_UpdateBreakpointRequest: {
|
||||
response_data_type = proto::ResponseData_UpdateBreakpointResponse;
|
||||
auto response_data = proto::UpdateBreakpointResponseBuilder(fbb);
|
||||
case proto::RequestData_UpdateBreakpointsRequest: {
|
||||
response_data_type = proto::ResponseData_UpdateBreakpointsResponse;
|
||||
auto response_data = proto::UpdateBreakpointsResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_RemoveBreakpointRequest: {
|
||||
response_data_type = proto::ResponseData_AddBreakpointResponse;
|
||||
auto response_data = proto::RemoveBreakpointResponseBuilder(fbb);
|
||||
case proto::RequestData_RemoveBreakpointsRequest: {
|
||||
response_data_type = proto::ResponseData_AddBreakpointsResponse;
|
||||
auto response_data = proto::RemoveBreakpointsResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
|
||||
case proto::RequestData_ListModulesRequest: {
|
||||
response_data_type = proto::ResponseData_ListModulesResponse;
|
||||
auto response_data = proto::ListModulesResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_GetModuleRequest: {
|
||||
response_data_type = proto::ResponseData_GetModuleResponse;
|
||||
auto response_data = proto::GetModuleResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
|
||||
case proto::RequestData_StopRequest: {
|
||||
response_data_type = proto::ResponseData_StopResponse;
|
||||
auto response_data = proto::StopResponseBuilder(fbb);
|
||||
// TODO(benvanik): gracefully die?
|
||||
exit(1);
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_BreakRequest: {
|
||||
response_data_type = proto::ResponseData_BreakResponse;
|
||||
auto response_data = proto::BreakResponseBuilder(fbb);
|
||||
//
|
||||
SuspendAllThreads();
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_ContinueRequest: {
|
||||
response_data_type = proto::ResponseData_ContinueResponse;
|
||||
auto response_data = proto::ContinueResponseBuilder(fbb);
|
||||
//
|
||||
ResumeAllThreads();
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
case proto::RequestData_StepRequest: {
|
||||
response_data_type = proto::ResponseData_StepResponse;
|
||||
auto response_data = proto::StepResponseBuilder(fbb);
|
||||
//
|
||||
response_data_offset = response_data.Finish().Union();
|
||||
} break;
|
||||
|
||||
Reference in New Issue
Block a user