yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::emu::InternalEmulatorAdapter Class Reference

#include <internal_emulator_adapter.h>

Inheritance diagram for yaze::emu::InternalEmulatorAdapter:
Collaboration diagram for yaze::emu::InternalEmulatorAdapter:

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< BreakpointSnapshotListBreakpoints () 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

Emulatoremulator_
 
std::function< bool(const std::string &) rom_loader_ )
 
std::function< Rom *()> rom_getter_
 
yaze::emu::debug::StepController step_controller_
 

Detailed Description

Definition at line 11 of file internal_emulator_adapter.h.

Constructor & Destructor Documentation

◆ InternalEmulatorAdapter()

yaze::emu::InternalEmulatorAdapter::InternalEmulatorAdapter ( Emulator * emulator)
explicit

Definition at line 91 of file internal_emulator_adapter.cc.

◆ ~InternalEmulatorAdapter()

yaze::emu::InternalEmulatorAdapter::~InternalEmulatorAdapter ( )
overridedefault

Member Function Documentation

◆ IsConnected()

bool yaze::emu::InternalEmulatorAdapter::IsConnected ( ) const
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 94 of file internal_emulator_adapter.cc.

References emulator_.

◆ IsRunning()

bool yaze::emu::InternalEmulatorAdapter::IsRunning ( ) const
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 98 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::running().

Here is the call graph for this function:

◆ Pause()

void yaze::emu::InternalEmulatorAdapter::Pause ( )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 102 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::set_running().

Here is the call graph for this function:

◆ Resume()

void yaze::emu::InternalEmulatorAdapter::Resume ( )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 106 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::set_running().

Here is the call graph for this function:

◆ Reset()

void yaze::emu::InternalEmulatorAdapter::Reset ( )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 110 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::snes().

Here is the call graph for this function:

◆ Step()

absl::Status yaze::emu::InternalEmulatorAdapter::Step ( int count)
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 114 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::StepSingleInstruction().

Here is the call graph for this function:

◆ StepOver()

absl::Status yaze::emu::InternalEmulatorAdapter::StepOver ( )
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().

Here is the call graph for this function:

◆ StepOut()

absl::Status yaze::emu::InternalEmulatorAdapter::StepOut ( )
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().

Here is the call graph for this function:

◆ LoadRom()

absl::Status yaze::emu::InternalEmulatorAdapter::LoadRom ( const std::string & path)
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 147 of file internal_emulator_adapter.cc.

References rom_loader_.

◆ GetLoadedRomPath()

std::string yaze::emu::InternalEmulatorAdapter::GetLoadedRomPath ( ) const
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_.

Here is the call graph for this function:

◆ ReadByte()

absl::StatusOr< uint8_t > yaze::emu::InternalEmulatorAdapter::ReadByte ( uint32_t addr)
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 163 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::snes().

Here is the call graph for this function:

◆ ReadBlock()

absl::StatusOr< std::vector< uint8_t > > yaze::emu::InternalEmulatorAdapter::ReadBlock ( uint32_t addr,
size_t len )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 168 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::snes().

Here is the call graph for this function:

◆ WriteByte()

absl::Status yaze::emu::InternalEmulatorAdapter::WriteByte ( uint32_t addr,
uint8_t val )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 178 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::snes().

Here is the call graph for this function:

◆ WriteBlock()

absl::Status yaze::emu::InternalEmulatorAdapter::WriteBlock ( uint32_t addr,
const std::vector< uint8_t > & data )
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 184 of file internal_emulator_adapter.cc.

References emulator_, and yaze::emu::Emulator::snes().

Here is the call graph for this function:

◆ GetCpuState()

absl::Status yaze::emu::InternalEmulatorAdapter::GetCpuState ( CpuStateSnapshot * out_state)
overridevirtual

Implements yaze::emu::IEmulator.

Definition at line 211 of file internal_emulator_adapter.cc.

References CaptureCPUState(), and emulator_.

Here is the call graph for this function:

◆ GetGameState()

absl::Status yaze::emu::InternalEmulatorAdapter::GetGameState ( GameSnapshot * out_state)
overridevirtual

◆ RunToBreakpoint()

◆ AddBreakpoint()

absl::StatusOr< uint32_t > yaze::emu::InternalEmulatorAdapter::AddBreakpoint ( uint32_t addr,
BreakpointKind type,
CpuKind cpu,
const std::string & condition,
const std::string & description )
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_.

Here is the call graph for this function:

◆ RemoveBreakpoint()

absl::Status yaze::emu::InternalEmulatorAdapter::RemoveBreakpoint ( uint32_t breakpoint_id)
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().

Here is the call graph for this function:

◆ ToggleBreakpoint()

absl::Status yaze::emu::InternalEmulatorAdapter::ToggleBreakpoint ( uint32_t breakpoint_id,
bool enabled )
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().

Here is the call graph for this function:

◆ ListBreakpoints()

◆ PressButton()

absl::Status yaze::emu::InternalEmulatorAdapter::PressButton ( InputButton button)
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().

Here is the call graph for this function:

◆ ReleaseButton()

absl::Status yaze::emu::InternalEmulatorAdapter::ReleaseButton ( InputButton button)
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().

Here is the call graph for this function:

◆ SetRomLoader()

void yaze::emu::InternalEmulatorAdapter::SetRomLoader ( std::function< bool(const std::string &)> loader)
inline

Definition at line 60 of file internal_emulator_adapter.h.

References rom_loader_.

◆ SetRomGetter()

void yaze::emu::InternalEmulatorAdapter::SetRomGetter ( std::function< Rom *()> getter)
inline

Definition at line 63 of file internal_emulator_adapter.h.

References rom_getter_.

◆ CaptureCPUState()

◆ InitializeStepController()

Member Data Documentation

◆ emulator_

◆ rom_loader_

std::function<bool(const std::string&) yaze::emu::InternalEmulatorAdapter::rom_loader_)
private

Definition at line 69 of file internal_emulator_adapter.h.

Referenced by LoadRom(), and SetRomLoader().

◆ rom_getter_

std::function<Rom*()> yaze::emu::InternalEmulatorAdapter::rom_getter_
private

Definition at line 70 of file internal_emulator_adapter.h.

Referenced by GetLoadedRomPath(), and SetRomGetter().

◆ step_controller_

yaze::emu::debug::StepController yaze::emu::InternalEmulatorAdapter::step_controller_
private

Definition at line 75 of file internal_emulator_adapter.h.

Referenced by InitializeStepController(), StepOut(), and StepOver().


The documentation for this class was generated from the following files: