X-Git-Url: http://git.hcoop.net/clinton/Virtual-Jaguar-Rx.git/blobdiff_plain/f051fda44e50ac282b4d6884d92e8006b5cc0a8a..0e699c1255f04f5c332632eef475ebcef4200305:/src/gui/emustatus.cpp diff --git a/src/gui/emustatus.cpp b/src/gui/emustatus.cpp index 73f5b81..3a3cc12 100644 --- a/src/gui/emustatus.cpp +++ b/src/gui/emustatus.cpp @@ -8,6 +8,7 @@ // Who When What // --- ---------- ----------------------------------------------------------- // JPM 02/02/2017 Created this file +// JPM Apr./2021 Display number of M68K cycles used in tracing mode // // STILL TO DO: @@ -22,10 +23,13 @@ // -EmuStatusWindow::EmuStatusWindow(QWidget * parent/*= 0*/): QWidget(parent, Qt::Dialog), - layout(new QVBoxLayout), - text(new QLabel), - GPURunning(GPUIsRunning()) +EmuStatusWindow::EmuStatusWindow(QWidget * parent/*= 0*/) : QWidget(parent, Qt::Dialog), +layout(new QVBoxLayout), +resetcycles(new QPushButton(tr("Reset cycles"))), +text(new QLabel), +M68K_totalcycles(0), +M68K_opcodecycles(0), +GPURunning(GPUIsRunning()) { setWindowTitle(tr("Emulator status")); @@ -35,6 +39,31 @@ EmuStatusWindow::EmuStatusWindow(QWidget * parent/*= 0*/): QWidget(parent, Qt::D setLayout(layout); layout->addWidget(text); + layout->addWidget(resetcycles); + + connect(resetcycles, SIGNAL(clicked()), this, SLOT(ResetCycles())); +} + + +// +void EmuStatusWindow::ResetCycles(void) +{ + ResetM68KCycles(); + RefreshContents(); +} + + +// +void EmuStatusWindow::ResetM68KCycles(void) +{ + M68K_totalcycles = M68K_opcodecycles = 0; +} + + +// +void EmuStatusWindow::UpdateM68KCycles(size_t cycles) +{ + M68K_totalcycles += (M68K_opcodecycles = cycles); } @@ -56,7 +85,11 @@ void EmuStatusWindow::RefreshContents(void) emuStatusDump += QString(string); sprintf(string, " M68K tracing | %s\n", (startM68KTracing ? "On" : "Off")); emuStatusDump += QString(string); - sprintf(string, " DRAM | %i KB", (vjs.DRAM_size / 1024)); + sprintf(string, " DRAM | %zi KB\n", (vjs.DRAM_size / 1024)); + emuStatusDump += QString(string); + sprintf(string, " M68K tracing | %zi cycle%s\n", M68K_opcodecycles, (M68K_opcodecycles ? "s" : "")); + emuStatusDump += QString(string); + sprintf(string, " M68K tracing total | %zi cycle%s", M68K_totalcycles, (M68K_totalcycles ? "s" : "")); emuStatusDump += QString(string); text->setText(emuStatusDump);