ComSquare
Public Slots | Public Member Functions | Private Member Functions | Private Attributes | List of all members
ComSquare::Debugger::APU::APUDebug Class Reference

#include <APUDebug.hpp>

Inheritance diagram for ComSquare::Debugger::APU::APUDebug:
Collaboration diagram for ComSquare::Debugger::APU::APUDebug:

Public Slots

void pause ()
 Pause/Resume the APU. More...
 
void step ()
 Step - Execute a single instruction. More...
 
void update ()
 Update the debugger and the underlying APU. More...
 

Public Member Functions

 APUDebug (ComSquare::APU::APU &apu, SNES &snes)
 Convert a basic APU to a debugging APU. More...
 
 APUDebug (const APUDebug &)=delete
 
APUDebugoperator= (const APUDebug &)=delete
 
 ~APUDebug () override
 
void focus ()
 Focus the debugger's window. More...
 

Private Member Functions

int _appendInstruction (int row)
 Add instruction to disassembly. More...
 
void _updatePanel ()
 Update the debugger panel values. More...
 
void _updateLogger ()
 Updates the object that serves as the disassembly. More...
 
const Instruction_getInstruction () const
 Retrieves the instruction from the SP location. More...
 
std::string _getOperand (Operand ope) const
 Returns an operand in text format. More...
 

Private Attributes

const std::array< Instruction, 0x100 > _instructions
 List of instructions and their information. More...
 
ClosableWindow_window
 The QT window for this debugger. More...
 
QTimer _timer
 Internal timer used for update intervals. More...
 
Ui::APUView _ui
 A widget that contain the whole UI. More...
 
bool _isPaused = true
 If this is set to true, the execution of the APU will be paused. More...
 
bool _isStepping = false
 If this is set to true, the APU will execute one instruction and pause itself. More...
 
ComSquare::APU::APU_apu
 The APU to debug. More...
 

Constructor & Destructor Documentation

◆ APUDebug() [1/2]

ComSquare::Debugger::APU::APUDebug::APUDebug ( ComSquare::APU::APU apu,
SNES snes 
)
explicit

Convert a basic APU to a debugging APU.

◆ APUDebug() [2/2]

ComSquare::Debugger::APU::APUDebug::APUDebug ( const APUDebug )
delete

◆ ~APUDebug()

ComSquare::Debugger::APU::APUDebug::~APUDebug ( )
override

Member Function Documentation

◆ _appendInstruction()

int ComSquare::Debugger::APU::APUDebug::_appendInstruction ( int  row)
private

Add instruction to disassembly.

◆ _getInstruction()

const Instruction & ComSquare::Debugger::APU::APUDebug::_getInstruction ( ) const
private

Retrieves the instruction from the SP location.

◆ _getOperand()

std::string ComSquare::Debugger::APU::APUDebug::_getOperand ( Operand  ope) const
private

Returns an operand in text format.

◆ _updateLogger()

void ComSquare::Debugger::APU::APUDebug::_updateLogger ( )
private

Updates the object that serves as the disassembly.

◆ _updatePanel()

void ComSquare::Debugger::APU::APUDebug::_updatePanel ( )
private

Update the debugger panel values.

◆ focus()

void ComSquare::Debugger::APU::APUDebug::focus ( )

Focus the debugger's window.

◆ operator=()

APUDebug& ComSquare::Debugger::APU::APUDebug::operator= ( const APUDebug )
delete

◆ pause

void ComSquare::Debugger::APU::APUDebug::pause ( )
slot

Pause/Resume the APU.

◆ step

void ComSquare::Debugger::APU::APUDebug::step ( )
slot

Step - Execute a single instruction.

◆ update

void ComSquare::Debugger::APU::APUDebug::update ( )
slot

Update the debugger and the underlying APU.

Member Data Documentation

◆ _apu

ComSquare::APU::APU& ComSquare::Debugger::APU::APUDebug::_apu
private

The APU to debug.

◆ _instructions

const std::array<Instruction, 0x100> ComSquare::Debugger::APU::APUDebug::_instructions
private

List of instructions and their information.

◆ _isPaused

bool ComSquare::Debugger::APU::APUDebug::_isPaused = true
private

If this is set to true, the execution of the APU will be paused.

◆ _isStepping

bool ComSquare::Debugger::APU::APUDebug::_isStepping = false
private

If this is set to true, the APU will execute one instruction and pause itself.

◆ _timer

QTimer ComSquare::Debugger::APU::APUDebug::_timer
private

Internal timer used for update intervals.

◆ _ui

Ui::APUView ComSquare::Debugger::APU::APUDebug::_ui
private

A widget that contain the whole UI.

◆ _window

ClosableWindow* ComSquare::Debugger::APU::APUDebug::_window
private

The QT window for this debugger.


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