#include <emulator_service_impl.h>


Public Types | |
| using | RomGetter = std::function<Rom*()> |
| using | RomLoader = std::function<bool(const std::string& path)> |
Public Member Functions | |
| EmulatorServiceImpl (emu::IEmulator *emulator, RomGetter rom_getter=nullptr, RomLoader rom_loader=nullptr) | |
| grpc::Status | LoadRom (grpc::ServerContext *context, const agent::LoadRomRequest *request, agent::LoadRomResponse *response) override |
| grpc::Status | GetLoadedRomPath (grpc::ServerContext *context, const agent::Empty *request, agent::LoadedRomPathResponse *response) override |
| grpc::Status | ControlEmulator (grpc::ServerContext *context, const agent::ControlRequest *request, agent::CommandResponse *response) override |
| grpc::Status | StepEmulator (grpc::ServerContext *context, const agent::StepControlRequest *request, agent::StepResponse *response) override |
| grpc::Status | RunToBreakpoint (grpc::ServerContext *context, const agent::Empty *request, agent::BreakpointHitResponse *response) override |
| grpc::Status | PressButtons (grpc::ServerContext *context, const agent::ButtonRequest *request, agent::CommandResponse *response) override |
| grpc::Status | ReleaseButtons (grpc::ServerContext *context, const agent::ButtonRequest *request, agent::CommandResponse *response) override |
| grpc::Status | HoldButtons (grpc::ServerContext *context, const agent::ButtonHoldRequest *request, agent::CommandResponse *response) override |
| grpc::Status | GetGameState (grpc::ServerContext *context, const agent::GameStateRequest *request, agent::GameStateResponse *response) override |
| grpc::Status | ReadMemory (grpc::ServerContext *context, const agent::MemoryRequest *request, agent::MemoryResponse *response) override |
| grpc::Status | WriteMemory (grpc::ServerContext *context, const agent::MemoryWriteRequest *request, agent::CommandResponse *response) override |
| grpc::Status | BreakpointControl (grpc::ServerContext *context, const agent::BreakpointControlRequest *request, agent::BreakpointControlResponse *response) override |
| grpc::Status | WatchpointControl (grpc::ServerContext *context, const agent::WatchpointControlRequest *request, agent::WatchpointControlResponse *response) override |
| grpc::Status | GetDisassembly (grpc::ServerContext *context, const agent::DisassemblyRequest *request, agent::DisassemblyResponse *response) override |
| grpc::Status | GetExecutionTrace (grpc::ServerContext *context, const agent::TraceRequest *request, agent::TraceResponse *response) override |
| grpc::Status | ResolveSymbol (grpc::ServerContext *context, const agent::SymbolLookupRequest *request, agent::SymbolLookupResponse *response) override |
| grpc::Status | GetSymbolAt (grpc::ServerContext *context, const agent::AddressRequest *request, agent::SymbolLookupResponse *response) override |
| grpc::Status | LoadSymbols (grpc::ServerContext *context, const agent::SymbolFileRequest *request, agent::CommandResponse *response) override |
| grpc::Status | GetDebugStatus (grpc::ServerContext *context, const agent::Empty *request, agent::DebugStatusResponse *response) override |
| grpc::Status | TestRun (grpc::ServerContext *context, const agent::TestRunRequest *request, agent::TestRunResponse *response) override |
| grpc::Status | SaveState (grpc::ServerContext *context, const agent::SaveStateRequest *request, agent::SaveStateResponse *response) override |
| grpc::Status | LoadState (grpc::ServerContext *context, const agent::LoadStateRequest *request, agent::LoadStateResponse *response) override |
| grpc::Status | ListStates (grpc::ServerContext *context, const agent::ListStatesRequest *request, agent::ListStatesResponse *response) override |
Private Attributes | |
| emu::IEmulator * | emulator_ |
| RomGetter | rom_getter_ |
| RomLoader | rom_loader_ |
| emu::debug::SymbolProvider | symbol_provider_ |
Definition at line 24 of file emulator_service_impl.h.
| using yaze::net::EmulatorServiceImpl::RomGetter = std::function<Rom*()> |
Definition at line 26 of file emulator_service_impl.h.
| using yaze::net::EmulatorServiceImpl::RomLoader = std::function<bool(const std::string& path)> |
Definition at line 27 of file emulator_service_impl.h.
|
explicit |
Definition at line 46 of file emulator_service_impl.cc.
|
override |
Definition at line 53 of file emulator_service_impl.cc.
References emulator_, yaze::Rom::is_loaded(), yaze::emu::IEmulator::LoadRom(), rom_getter_, yaze::Rom::size(), and yaze::Rom::title().

|
override |
Definition at line 80 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::GetLoadedRomPath().

|
override |
Definition at line 99 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::IsConnected(), yaze::emu::IEmulator::Pause(), yaze::emu::IEmulator::Reset(), and yaze::emu::IEmulator::Resume().

|
override |
Definition at line 127 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::IsConnected(), yaze::emu::IEmulator::Step(), yaze::emu::IEmulator::StepOut(), and yaze::emu::IEmulator::StepOver().
|
override |
Definition at line 161 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::RunToBreakpoint().

|
override |
Definition at line 177 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, yaze::emu::IEmulator::PressButton(), and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 213 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 235 of file emulator_service_impl.cc.
References emulator_, yaze::emu::kUnspecified, yaze::emu::IEmulator::PressButton(), and yaze::emu::IEmulator::ReleaseButton().

|
override |
Definition at line 271 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetGameState(), and yaze::emu::IEmulator::ReadBlock().

|
override |
Definition at line 309 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::ReadBlock().
Referenced by yaze::cli::agent::RomDebugAgent::AnalyzeMemory(), yaze::cli::agent::RomDebugAgent::ComparePatch(), yaze::cli::agent::RomDebugAgent::HasStackImbalance(), and yaze::cli::agent::RomDebugAgent::ScanForIssues().

|
override |
Definition at line 324 of file emulator_service_impl.cc.
References emulator_, and yaze::emu::IEmulator::WriteBlock().

|
override |
Definition at line 341 of file emulator_service_impl.cc.
References yaze::emu::IEmulator::AddBreakpoint(), emulator_, yaze::emu::IEmulator::ListBreakpoints(), yaze::emu::IEmulator::RemoveBreakpoint(), and yaze::emu::IEmulator::ToggleBreakpoint().

|
override |
Definition at line 382 of file emulator_service_impl.cc.
|
override |
Definition at line 392 of file emulator_service_impl.cc.
References yaze::emu::debug::Disassembler65816::Disassemble(), emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::ReadBlock(), yaze::emu::debug::DisassembledInstruction::size, and yaze::emu::CpuStateSnapshot::status.
Referenced by yaze::cli::agent::RomDebugAgent::AnalyzeBreakpoint(), and yaze::cli::agent::RomDebugAgent::GetDisassemblyContext().

|
override |
Definition at line 432 of file emulator_service_impl.cc.
Referenced by yaze::cli::agent::RomDebugAgent::BuildCallStack().
|
override |
Definition at line 439 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::FindSymbol(), and symbol_provider_.

|
override |
Definition at line 451 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::GetSymbol(), and symbol_provider_.

|
override |
Definition at line 463 of file emulator_service_impl.cc.
References yaze::emu::debug::SymbolProvider::LoadSymbolFile(), and symbol_provider_.

|
override |
Definition at line 476 of file emulator_service_impl.cc.
References emulator_, yaze::emu::IEmulator::GetCpuState(), yaze::emu::IEmulator::IsRunning(), and yaze::emu::IEmulator::ListBreakpoints().

|
override |
Definition at line 494 of file emulator_service_impl.cc.
|
override |
Definition at line 503 of file emulator_service_impl.cc.
|
override |
Definition at line 510 of file emulator_service_impl.cc.
|
override |
Definition at line 517 of file emulator_service_impl.cc.
|
private |
Definition at line 119 of file emulator_service_impl.h.
Referenced by BreakpointControl(), ControlEmulator(), GetDebugStatus(), GetDisassembly(), GetGameState(), GetLoadedRomPath(), HoldButtons(), LoadRom(), PressButtons(), ReadMemory(), ReleaseButtons(), RunToBreakpoint(), StepEmulator(), and WriteMemory().
|
private |
Definition at line 120 of file emulator_service_impl.h.
Referenced by LoadRom().
|
private |
Definition at line 121 of file emulator_service_impl.h.
|
private |
Definition at line 122 of file emulator_service_impl.h.
Referenced by GetSymbolAt(), LoadSymbols(), and ResolveSymbol().