Hooked up symbolic debug asm view checkbox.

This commit is contained in:
Matthew Budd 2020-09-14 21:18:54 -04:00
parent a4df1e3c06
commit 097aaa3214
2 changed files with 41 additions and 0 deletions

View File

@ -408,7 +408,12 @@ ConsoleDebugger::ConsoleDebugger(QWidget *parent)
vbox->addWidget( symDbgChkBox ); vbox->addWidget( symDbgChkBox );
vbox->addWidget( regNamChkBox ); vbox->addWidget( regNamChkBox );
symDbgChkBox->setChecked(true);
regNamChkBox->setChecked(true);
connect( romOfsChkBox, SIGNAL(stateChanged(int)), this, SLOT(displayROMoffsetCB(int)) ); connect( romOfsChkBox, SIGNAL(stateChanged(int)), this, SLOT(displayROMoffsetCB(int)) );
connect( symDbgChkBox, SIGNAL(stateChanged(int)), this, SLOT(symbolDebugEnableCB(int)) );
connect( regNamChkBox, SIGNAL(stateChanged(int)), this, SLOT(registerNameEnableCB(int)) );
button = new QPushButton( tr("Reload Symbols") ); button = new QPushButton( tr("Reload Symbols") );
vbox->addWidget( button ); vbox->addWidget( button );
@ -981,6 +986,16 @@ void ConsoleDebugger::displayROMoffsetCB( int value )
asmView->setDisplayROMoffsets(value != Qt::Unchecked); asmView->setDisplayROMoffsets(value != Qt::Unchecked);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void ConsoleDebugger::symbolDebugEnableCB( int value )
{
asmView->setSymbolDebugEnable(value != Qt::Unchecked);
}
//----------------------------------------------------------------------------
void ConsoleDebugger::registerNameEnableCB( int value )
{
asmView->setRegisterNameEnable(value != Qt::Unchecked);
}
//----------------------------------------------------------------------------
void ConsoleDebugger::debugRunCB(void) void ConsoleDebugger::debugRunCB(void)
{ {
if (FCEUI_EmulationPaused()) if (FCEUI_EmulationPaused())
@ -1907,6 +1922,7 @@ QAsmView::QAsmView(QWidget *parent)
asmPC = NULL; asmPC = NULL;
displayROMoffsets = false; displayROMoffsets = false;
symbolicDebugEnable = true; symbolicDebugEnable = true;
registerNameEnable = true;
maxLineLen = 0; maxLineLen = 0;
lineOffset = 0; lineOffset = 0;
maxLineOffset = 0; maxLineOffset = 0;
@ -1953,6 +1969,26 @@ void QAsmView::setDisplayROMoffsets( bool value )
} }
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void QAsmView::setSymbolDebugEnable( bool value )
{
if ( value != symbolicDebugEnable )
{
symbolicDebugEnable = value;
updateAssemblyView();
}
}
//----------------------------------------------------------------------------
void QAsmView::setRegisterNameEnable( bool value )
{
if ( value != registerNameEnable )
{
registerNameEnable = value;
updateAssemblyView();
}
}
//----------------------------------------------------------------------------
void QAsmView::calcFontData(void) void QAsmView::calcFontData(void)
{ {
this->setFont(font); this->setFont(font);

View File

@ -74,6 +74,8 @@ class QAsmView : public QWidget
void setLine(int lineNum); void setLine(int lineNum);
void scrollToPC(void); void scrollToPC(void);
void setDisplayROMoffsets( bool value ); void setDisplayROMoffsets( bool value );
void setSymbolDebugEnable( bool value );
void setRegisterNameEnable( bool value );
int getCtxMenuAddr(void){ return ctxMenuAddr; }; int getCtxMenuAddr(void){ return ctxMenuAddr; };
protected: protected:
void paintEvent(QPaintEvent *event); void paintEvent(QPaintEvent *event);
@ -114,6 +116,7 @@ class QAsmView : public QWidget
bool displayROMoffsets; bool displayROMoffsets;
bool symbolicDebugEnable; bool symbolicDebugEnable;
bool registerNameEnable;
}; };
class ConsoleDebugger : public QDialog class ConsoleDebugger : public QDialog
@ -208,6 +211,8 @@ class ConsoleDebugger : public QDialog
void delete_BP_CB(void); void delete_BP_CB(void);
void resetCountersCB (void); void resetCountersCB (void);
void displayROMoffsetCB(int value); void displayROMoffsetCB(int value);
void symbolDebugEnableCB(int value);
void registerNameEnableCB(int value);
void breakOnBadOpcodeCB(int value); void breakOnBadOpcodeCB(int value);
void breakOnCyclesCB( int value ); void breakOnCyclesCB( int value );
void breakOnInstructionsCB( int value ); void breakOnInstructionsCB( int value );