DeviceDebugProbe Class Reference

yasimavr: DeviceDebugProbe Class Reference
yasimavr
Loading...
Searching...
No Matches
DeviceDebugProbe Class Reference

#include <sim_debug.h>

Public Types

enum  WatchpointFlags { Watchpoint_Write = 0x01 , Watchpoint_Read = 0x02 , Watchpoint_Signal = 0x10 , Watchpoint_Break = 0x20 }
 

Public Member Functions

 DeviceDebugProbe ()
 
 DeviceDebugProbe (Device &device)
 
 DeviceDebugProbe (const DeviceDebugProbe &probe)
 
 ~DeviceDebugProbe ()
 
Devicedevice () const
 
void attach (Device &device)
 
void attach (DeviceDebugProbe &probe)
 
void detach ()
 
bool attached () const
 
void reset_device () const
 
void set_device_state (Device::State state) const
 
void write_gpreg (unsigned int num, uint8_t value) const
 
uint8_t read_gpreg (unsigned int num) const
 
void write_sreg (uint8_t value) const
 
uint8_t read_sreg () const
 
void write_sp (mem_addr_t value) const
 
mem_addr_t read_sp () const
 
void write_pc (flash_addr_t value) const
 
flash_addr_t read_pc () const
 
void write_ioreg (reg_addr_t addr, uint8_t value) const
 
uint8_t read_ioreg (reg_addr_t addr, bool as_cpu=true) const
 
bool has_ioreg (reg_addr_t addr) const
 
void write_flash (flash_addr_t addr, const uint8_t *buf, flash_addr_t len) const
 
flash_addr_t read_flash (flash_addr_t addr, uint8_t *buf, flash_addr_t len) const
 
void write_data (mem_addr_t addr, const uint8_t *buf, mem_addr_t len) const
 
void read_data (mem_addr_t addr, uint8_t *buf, mem_addr_t len) const
 
void insert_breakpoint (flash_addr_t addr)
 
void remove_breakpoint (flash_addr_t addr)
 
void insert_watchpoint (mem_addr_t addr, mem_addr_t len, int flags)
 
void remove_watchpoint (mem_addr_t addr, int flags)
 
Signalwatchpoint_signal ()
 
void _cpu_notify_data_read (mem_addr_t addr, uint8_t value)
 
void _cpu_notify_data_write (mem_addr_t addr, uint8_t value)
 
void _cpu_notify_jump (flash_addr_t addr)
 
void _cpu_notify_call (flash_addr_t addr)
 
void _cpu_notify_ret ()
 
DeviceDebugProbeoperator= (const DeviceDebugProbe &probe)
 

Member Enumeration Documentation

◆ WatchpointFlags

Enumerator
Watchpoint_Write 
Watchpoint_Read 
Watchpoint_Signal 
Watchpoint_Break 

Constructor & Destructor Documentation

◆ DeviceDebugProbe() [1/3]

DeviceDebugProbe::DeviceDebugProbe ( )

◆ DeviceDebugProbe() [2/3]

DeviceDebugProbe::DeviceDebugProbe ( Device device)
explicit

◆ DeviceDebugProbe() [3/3]

DeviceDebugProbe::DeviceDebugProbe ( const DeviceDebugProbe probe)

◆ ~DeviceDebugProbe()

DeviceDebugProbe::~DeviceDebugProbe ( )

Member Function Documentation

◆ _cpu_notify_call()

void DeviceDebugProbe::_cpu_notify_call ( flash_addr_t  addr)

◆ _cpu_notify_data_read()

void DeviceDebugProbe::_cpu_notify_data_read ( mem_addr_t  addr,
uint8_t  value 
)

◆ _cpu_notify_data_write()

void DeviceDebugProbe::_cpu_notify_data_write ( mem_addr_t  addr,
uint8_t  value 
)

◆ _cpu_notify_jump()

void DeviceDebugProbe::_cpu_notify_jump ( flash_addr_t  addr)

◆ _cpu_notify_ret()

void DeviceDebugProbe::_cpu_notify_ret ( )

◆ attach() [1/2]

void DeviceDebugProbe::attach ( Device device)

◆ attach() [2/2]

void DeviceDebugProbe::attach ( DeviceDebugProbe probe)

◆ attached()

bool DeviceDebugProbe::attached ( ) const
inline

◆ detach()

void DeviceDebugProbe::detach ( )

◆ device()

Device * DeviceDebugProbe::device ( ) const
inline

◆ has_ioreg()

bool DeviceDebugProbe::has_ioreg ( reg_addr_t  addr) const

◆ insert_breakpoint()

void DeviceDebugProbe::insert_breakpoint ( flash_addr_t  addr)

◆ insert_watchpoint()

void DeviceDebugProbe::insert_watchpoint ( mem_addr_t  addr,
mem_addr_t  len,
int  flags 
)

◆ operator=()

DeviceDebugProbe & DeviceDebugProbe::operator= ( const DeviceDebugProbe probe)

◆ read_data()

void DeviceDebugProbe::read_data ( mem_addr_t  addr,
uint8_t *  buf,
mem_addr_t  len 
) const

◆ read_flash()

flash_addr_t DeviceDebugProbe::read_flash ( flash_addr_t  addr,
uint8_t *  buf,
flash_addr_t  len 
) const

◆ read_gpreg()

uint8_t DeviceDebugProbe::read_gpreg ( unsigned int  num) const

◆ read_ioreg()

uint8_t DeviceDebugProbe::read_ioreg ( reg_addr_t  addr,
bool  as_cpu = true 
) const

◆ read_pc()

flash_addr_t DeviceDebugProbe::read_pc ( ) const

◆ read_sp()

mem_addr_t DeviceDebugProbe::read_sp ( ) const

◆ read_sreg()

uint8_t DeviceDebugProbe::read_sreg ( ) const

◆ remove_breakpoint()

void DeviceDebugProbe::remove_breakpoint ( flash_addr_t  addr)

◆ remove_watchpoint()

void DeviceDebugProbe::remove_watchpoint ( mem_addr_t  addr,
int  flags 
)

◆ reset_device()

void DeviceDebugProbe::reset_device ( ) const

◆ set_device_state()

void DeviceDebugProbe::set_device_state ( Device::State  state) const

◆ watchpoint_signal()

Signal & DeviceDebugProbe::watchpoint_signal ( )
inline

◆ write_data()

void DeviceDebugProbe::write_data ( mem_addr_t  addr,
const uint8_t *  buf,
mem_addr_t  len 
) const

◆ write_flash()

void DeviceDebugProbe::write_flash ( flash_addr_t  addr,
const uint8_t *  buf,
flash_addr_t  len 
) const

◆ write_gpreg()

void DeviceDebugProbe::write_gpreg ( unsigned int  num,
uint8_t  value 
) const

◆ write_ioreg()

void DeviceDebugProbe::write_ioreg ( reg_addr_t  addr,
uint8_t  value 
) const

◆ write_pc()

void DeviceDebugProbe::write_pc ( flash_addr_t  value) const

◆ write_sp()

void DeviceDebugProbe::write_sp ( mem_addr_t  value) const

◆ write_sreg()

void DeviceDebugProbe::write_sreg ( uint8_t  value) const

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