//\r
// JLH = James Hammons <jlhamm@acm.org>\r
// JPM = Jean-Paul Mari <djipi.mari@gmail.com>\r
+// RG = Richard Goedeken\r
+\r
//\r
// Who When What\r
// --- ---------- ------------------------------------------------------------\r
// JPM April/2019 Added ELF sections check, added a save memory dump\r
// JPM Aug./2019 Update texts descriptions, set cartridge view menu for debugger mode only, added a HW registers browser and source level tracing\r
// JPM Marc./2020 Added the step over for source level tracing\r
+// RG Jan./2021 Linux build fixes\r
+// JPM Apr./2021 Handle number of M68K cycles used in tracing mode\r
//\r
\r
// FIXED:\r
//#include "debugger/VideoWin.h"\r
//#include "debugger/DasmWin.h"\r
#include "debugger/SourcesWin.h"\r
-#include "debugger/m68KDasmWin.h"\r
+#include "debugger/m68kDasmWin.h"\r
#include "debugger/GPUDasmWin.h"\r
#include "debugger/DSPDasmWin.h"\r
#include "debugger/memory1browser.h"\r
cpuBrowseWin->UnholdBPM();\r
}\r
\r
+ emuStatusWin->ResetM68KCycles();\r
// Pause/unpause any running/non-running threads...\r
DACPauseAudioThread(!running);\r
}\r
// Open, or display, the new breakpoint function window\r
void MainWin::ShowNewFunctionBreakpointWin(void)\r
{\r
+ NewFunctionBreakpointWin->SetFnctBreakpointWin(BreakpointsWin);\r
NewFunctionBreakpointWin->show();\r
ShowBreakpointsWin();\r
}\r
{\r
while (!SourcesWin->CheckChangeLine())\r
{\r
- JaguarStepInto();\r
+ emuStatusWin->UpdateM68KCycles(JaguarStepInto());\r
}\r
}\r
else\r
{\r
- JaguarStepInto();\r
+ emuStatusWin->UpdateM68KCycles(JaguarStepInto());\r
}\r
\r
videoWidget->updateGL();\r
dasmtabWidget->setCurrentIndex(1); // set focus on the disasm M68K tab\r
m68k_set_reg(M68K_REG_A6, 0);\r
m68k_brk_hitcounts_reset();\r
+ emuStatusWin->ResetM68KCycles();\r
bpmHitCounts = 0;\r
DebuggerResetWindows();\r
CommonResetWindows();\r
{\r
while (!SourcesWin->CheckChangeLine())\r
{\r
- JaguarStepOver(0);\r
+ emuStatusWin->UpdateM68KCycles(JaguarStepOver(0));\r
}\r
}\r
else\r
{\r
- JaguarStepOver(0);\r
+ emuStatusWin->UpdateM68KCycles(JaguarStepOver(0));\r
}\r
\r
videoWidget->updateGL();\r
strcpy(vjs.absROMPath, settings.value("DefaultABS", "").toString().toUtf8().data());\r
vjs.refresh = settings.value("refresh", 60).toUInt();\r
vjs.allowWritesToROM = settings.value("writeROM", false).toBool();\r
+ vjs.allowM68KExceptionCatch = settings.value("M68KExceptionCatch", false).toBool();\r
settings.endGroup();\r
\r
// Read settings from the Keybindings\r
settings.setValue("DefaultROM", vjs.alpineROMPath);\r
settings.setValue("DefaultABS", vjs.absROMPath);\r
settings.setValue("writeROM", vjs.allowWritesToROM);\r
+ settings.setValue("M68KExceptionCatch", vjs.allowM68KExceptionCatch);\r
settings.endGroup();\r
\r
// Write settings from the Debugger mode\r
settings.beginGroup("debugger");\r
settings.setValue("DisplayHWLabels", vjs.displayHWlabels);\r
- settings.setValue("NbrDisasmLines", vjs.nbrdisasmlines);\r
+ settings.setValue("NbrDisasmLines", (qulonglong) vjs.nbrdisasmlines);\r
settings.setValue("DisasmOpcodes", vjs.disasmopcodes);\r
settings.setValue("displayFullSourceFilename", vjs.displayFullSourceFilename);\r
settings.setValue("ELFSectionsCheck", vjs.ELFSectionsCheck);\r