#include <internal_emulator_adapter.h>


Public Member Functions | |
| InternalEmulatorAdapter (Emulator *emulator) | |
| ~InternalEmulatorAdapter () override=default | |
| bool | IsConnected () const override |
| bool | IsRunning () const override |
| void | Pause () override |
| void | Resume () override |
| void | Reset () override |
| absl::Status | Step (int count) override |
| absl::Status | StepOver () override |
| absl::Status | StepOut () override |
| absl::Status | LoadRom (const std::string &path) override |
| std::string | GetLoadedRomPath () const override |
| absl::StatusOr< uint8_t > | ReadByte (uint32_t addr) override |
| absl::StatusOr< std::vector< uint8_t > > | ReadBlock (uint32_t addr, size_t len) override |
| absl::Status | WriteByte (uint32_t addr, uint8_t val) override |
| absl::Status | WriteBlock (uint32_t addr, const std::vector< uint8_t > &data) override |
| absl::Status | GetCpuState (CpuStateSnapshot *out_state) override |
| absl::Status | GetGameState (GameSnapshot *out_state) override |
| absl::Status | RunToBreakpoint (BreakpointHitResult *response) override |
| absl::StatusOr< uint32_t > | AddBreakpoint (uint32_t addr, BreakpointKind type, CpuKind cpu, const std::string &condition, const std::string &description) override |
| absl::Status | RemoveBreakpoint (uint32_t breakpoint_id) override |
| absl::Status | ToggleBreakpoint (uint32_t breakpoint_id, bool enabled) override |
| std::vector< BreakpointSnapshot > | ListBreakpoints () override |
| absl::Status | PressButton (InputButton button) override |
| absl::Status | ReleaseButton (InputButton button) override |
| void | SetRomLoader (std::function< bool(const std::string &)> loader) |
| void | SetRomGetter (std::function< Rom *()> getter) |
Public Member Functions inherited from yaze::emu::IEmulator | |
| virtual | ~IEmulator ()=default |
| virtual absl::Status | SaveState (int slot) |
| virtual absl::Status | LoadState (int slot) |
| virtual bool | SupportsFeature (EmulatorFeature feature) const |
| virtual absl::Status | SetCollisionOverlay (bool enable) |
Private Member Functions | |
| void | CaptureCPUState (CpuStateSnapshot *state) |
| void | InitializeStepController () |
Private Attributes | |
| Emulator * | emulator_ |
| std::function< bool(const std::string &) | rom_loader_ ) |
| std::function< Rom *()> | rom_getter_ |
| yaze::emu::debug::StepController | step_controller_ |
Definition at line 11 of file internal_emulator_adapter.h.
|
explicit |
Definition at line 91 of file internal_emulator_adapter.cc.
|
overridedefault |
|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 94 of file internal_emulator_adapter.cc.
References emulator_.
|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 98 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::running().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 102 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::set_running().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 106 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::set_running().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 110 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 114 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::StepSingleInstruction().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 122 of file internal_emulator_adapter.cc.
References emulator_, InitializeStepController(), step_controller_, and yaze::emu::debug::StepController::StepOver().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 129 of file internal_emulator_adapter.cc.
References emulator_, InitializeStepController(), step_controller_, and yaze::emu::debug::StepController::StepOut().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 147 of file internal_emulator_adapter.cc.
References rom_loader_.
|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 153 of file internal_emulator_adapter.cc.
References yaze::Rom::filename(), yaze::Rom::is_loaded(), and rom_getter_.

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 163 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 168 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 178 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 184 of file internal_emulator_adapter.cc.
References emulator_, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 211 of file internal_emulator_adapter.cc.
References CaptureCPUState(), and emulator_.

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 217 of file internal_emulator_adapter.cc.
References emulator_, yaze::emu::GameSnapshot::game_mode, yaze::emu::GameSnapshot::link_health, yaze::emu::GameSnapshot::link_pos_x, yaze::emu::GameSnapshot::link_pos_y, yaze::emu::GameSnapshot::link_state, and yaze::emu::Emulator::snes().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 236 of file internal_emulator_adapter.cc.
References yaze::emu::BreakpointSnapshot::address, yaze::emu::BreakpointHitResult::breakpoint, yaze::emu::Emulator::breakpoint_manager(), CaptureCPUState(), yaze::emu::BreakpointSnapshot::cpu, yaze::emu::BreakpointManager::CPU_65816, yaze::emu::BreakpointHitResult::cpu_state, emulator_, yaze::emu::BreakpointSnapshot::enabled, yaze::emu::BreakpointHitResult::hit, yaze::emu::BreakpointSnapshot::id, yaze::emu::Emulator::is_snes_initialized(), yaze::emu::BreakpointSnapshot::kind, yaze::emu::Emulator::snes(), and yaze::emu::Emulator::StepSingleInstruction().
|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 269 of file internal_emulator_adapter.cc.
References yaze::emu::BreakpointManager::AddBreakpoint(), yaze::emu::Emulator::breakpoint_manager(), and emulator_.

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 278 of file internal_emulator_adapter.cc.
References yaze::emu::Emulator::breakpoint_manager(), emulator_, and yaze::emu::BreakpointManager::RemoveBreakpoint().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 284 of file internal_emulator_adapter.cc.
References yaze::emu::Emulator::breakpoint_manager(), emulator_, and yaze::emu::BreakpointManager::SetEnabled().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 291 of file internal_emulator_adapter.cc.
References yaze::emu::BreakpointSnapshot::address, yaze::emu::Emulator::breakpoint_manager(), yaze::emu::BreakpointSnapshot::cpu, emulator_, yaze::emu::BreakpointSnapshot::enabled, yaze::emu::BreakpointManager::GetAllBreakpoints(), yaze::emu::BreakpointSnapshot::id, and yaze::emu::BreakpointSnapshot::kind.

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 308 of file internal_emulator_adapter.cc.
References emulator_, yaze::emu::Emulator::input_manager(), and yaze::emu::input::InputManager::PressButton().

|
overridevirtual |
Implements yaze::emu::IEmulator.
Definition at line 316 of file internal_emulator_adapter.cc.
References emulator_, yaze::emu::Emulator::input_manager(), and yaze::emu::input::InputManager::ReleaseButton().

|
inline |
Definition at line 60 of file internal_emulator_adapter.h.
References rom_loader_.
|
inline |
Definition at line 63 of file internal_emulator_adapter.h.
References rom_getter_.
|
private |
Definition at line 193 of file internal_emulator_adapter.cc.
References yaze::emu::CpuStateSnapshot::a, yaze::emu::CpuStateSnapshot::cycles, yaze::emu::CpuStateSnapshot::d, yaze::emu::CpuStateSnapshot::db, emulator_, yaze::emu::CpuStateSnapshot::flag_c, yaze::emu::CpuStateSnapshot::flag_n, yaze::emu::CpuStateSnapshot::flag_v, yaze::emu::CpuStateSnapshot::flag_z, yaze::emu::Emulator::GetCurrentCycle(), yaze::emu::CpuStateSnapshot::pb, yaze::emu::CpuStateSnapshot::pc, yaze::emu::Emulator::snes(), yaze::emu::CpuStateSnapshot::sp, yaze::emu::CpuStateSnapshot::status, yaze::emu::CpuStateSnapshot::x, and yaze::emu::CpuStateSnapshot::y.
Referenced by GetCpuState(), and RunToBreakpoint().

|
private |
Definition at line 136 of file internal_emulator_adapter.cc.
References emulator_, yaze::emu::debug::StepController::SetMemoryReader(), yaze::emu::debug::StepController::SetPcGetter(), yaze::emu::debug::StepController::SetSingleStepper(), yaze::emu::Emulator::snes(), step_controller_, and yaze::emu::Emulator::StepSingleInstruction().
Referenced by StepOut(), and StepOver().
|
private |
Definition at line 68 of file internal_emulator_adapter.h.
Referenced by AddBreakpoint(), CaptureCPUState(), GetCpuState(), GetGameState(), InitializeStepController(), IsConnected(), IsRunning(), ListBreakpoints(), Pause(), PressButton(), ReadBlock(), ReadByte(), ReleaseButton(), RemoveBreakpoint(), Reset(), Resume(), RunToBreakpoint(), Step(), StepOut(), StepOver(), ToggleBreakpoint(), WriteBlock(), and WriteByte().
|
private |
Definition at line 69 of file internal_emulator_adapter.h.
Referenced by LoadRom(), and SetRomLoader().
|
private |
Definition at line 70 of file internal_emulator_adapter.h.
Referenced by GetLoadedRomPath(), and SetRomGetter().
|
private |
Definition at line 75 of file internal_emulator_adapter.h.
Referenced by InitializeStepController(), StepOut(), and StepOver().