Set cartridge view menu for debugger mode only
authorJean-Paul Mari <djipi.mari@gmail.com>
Fri, 9 Aug 2019 09:02:32 +0000 (05:02 -0400)
committerJean-Paul Mari <djipi.mari@gmail.com>
Fri, 9 Aug 2019 09:02:32 +0000 (05:02 -0400)
docs/vj_HistoryNotes.txt
src/debugger/CartFilesListWin.cpp
src/gui/mainwin.cpp
src/gui/mainwin.h

index 16a719b..84e0b65 100644 (file)
@@ -76,7 +76,7 @@ Git commit: TBD
 40) Added the return address information in the call stack
 41) Added multiple breakpoints feature, and their key bindings, for functions only
 42) Added timer initialisation for the SDL setup
-43) Added a cartdridge view menu
+43) Added a cartridge view menu
 -- Added a window to display my own directory and his files list
 44) Debugger sources code clean-up
 45) Fix a crash when emulator, in non-debugger mode, opens the breakpoint UIs at launch
@@ -88,6 +88,7 @@ Git commit: TBD
 -- -d has been renamed by -D because another -d was also used for the dsp command line option
 51) Removed the sorting filter in the all watches window
 52) Fix the support of the DRAM size limit option in the heap allocation window
+53) Set cartridge view menu for debugger mode only
 
 Release 3 (13th November 2017)
 ------------------------------
index b20ee15..add639e 100644 (file)
@@ -1,5 +1,5 @@
 //
-// CartFilesListWin.cpp - List files in the cartdridge
+// CartFilesListWin.cpp - List files in the cartridge
 //
 // by Jean-Paul Mari
 //
@@ -8,6 +8,7 @@
 // Who  When        What
 // ---  ----------  -----------------------------------------------------------
 // JPM   Oct./2018  Created this file, and changed position of the status bar
+// JPM   Aug./2019  Update texts descriptions
 //
 
 // TO DO:
@@ -39,7 +40,7 @@ nbItem(0),
 CartUsedBytes(0),
 CartDirType(CFL_NOTYPE)
 {
-       setWindowTitle(tr("Cartdridge directory & files"));
+       setWindowTitle(tr("cartridge directory & files"));
 
        // Set the font
        QFont fixedFont("Lucida Console", 8, QFont::Normal);
@@ -118,7 +119,7 @@ void CartFilesListWindow::RefreshContents(void)
                                        if ((CartDirectory = (CARTDIRINFO *)CreateInfos()))
                                        {
                                                UpdateInfos();
-                                               sprintf(msg, "%u files | %u bytes in cartdridge", (unsigned int)CartNbrFiles, (unsigned int)CartUsedBytes);
+                                               sprintf(msg, "%u files | %u bytes in cartridge", (unsigned int)CartNbrFiles, (unsigned int)CartUsedBytes);
                                                Error = CFL_NOERROR;
                                        }
                                        else
@@ -165,7 +166,7 @@ void CartFilesListWindow::RefreshContents(void)
 }
 
 
-// Get files number in the directory
+// Get files number in the cartridge directory
 size_t CartFilesListWindow::GetNbrFiles(void)
 {
        switch (CartDirType)
@@ -181,7 +182,7 @@ size_t CartFilesListWindow::GetNbrFiles(void)
 }
 
 
-// Get directory type
+// Get cartridge directory type
 size_t CartFilesListWindow::GetDirType(void)
 {
        if (DBGManager_GetAdrFromSymbolName((char *)"OSJAG_Directory"))
@@ -225,7 +226,7 @@ void CartFilesListWindow::GetFileInfos(CARTDIRINFO *Ptr, size_t index)
 }
 
 
-// Create information from the directory information
+// Create information from the cartridge directory information
 void *CartFilesListWindow::CreateInfos(void)
 {
        CARTDIRINFO *Ptr = (CARTDIRINFO *)calloc(CartNbrFiles, sizeof(CARTDIRINFO));
index 0c3ec45..a25fad1 100644 (file)
 // JPM  11/04/2017  Added the local window\r
 // JPM  08/31/2018  Added the call stack window\r
 // JPM  Sept./2018  Added the new Models and BIOS handler, a screenshot feature and source code files browsing\r
-// JPM   Oct./2018  Added search paths in the settings, breakpoints feature, cartdridge view menu\r
+// JPM   Oct./2018  Added search paths in the settings, breakpoints feature, cartridge view menu\r
 // JPM  11/18/2018  Fix crash with non-debugger mode\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\r
 //\r
 \r
 // FIXED:\r
@@ -180,16 +181,21 @@ MainWin::MainWin(bool autoRun): running(true), powerButtonOn(false),
 \r
        setWindowTitle(title);\r
 \r
+       // Windows common features\r
        aboutWin = new AboutWindow(this);\r
        helpWin = new HelpWindow(this);\r
        filePickWin = new FilePickerWindow(this);\r
+       emuStatusWin = new EmuStatusWindow(this);\r
+       \r
+       // Windows alpine mode features\r
        memBrowseWin = new MemoryBrowserWindow(this);\r
        stackBrowseWin = new StackBrowserWindow(this);\r
-       emuStatusWin = new EmuStatusWindow(this);\r
        cpuBrowseWin = new CPUBrowserWindow(this);\r
        opBrowseWin = new OPBrowserWindow(this);\r
        m68kDasmBrowseWin = new M68KDasmBrowserWindow(this);\r
        riscDasmBrowseWin = new RISCDasmBrowserWindow(this);\r
+\r
+       // Windows debugger mode features\r
        if (vjs.softTypeDebugger)\r
        {\r
                //VideoOutputWin = new VideoOutputWindow(this);\r
@@ -461,7 +467,7 @@ MainWin::MainWin(bool autoRun): running(true), powerButtonOn(false),
 \r
                // Cart files list\r
                CartFilesListAct = new QAction(QIcon(""), tr("Directory and files"), this);\r
-               CartFilesListAct->setStatusTip(tr("List of the files in the cartdridge's directory"));\r
+               CartFilesListAct->setStatusTip(tr("List of the files in the cartridge's directory structure"));\r
                connect(CartFilesListAct, SIGNAL(triggered()), this, SLOT(ShowCartFilesListWin()));\r
 \r
                // Memory windows\r
@@ -537,13 +543,15 @@ MainWin::MainWin(bool autoRun): running(true), powerButtonOn(false),
        // Alpine and debugger menus\r
        if (vjs.hardwareTypeAlpine || vjs.softTypeDebugger)\r
        {\r
-               // Create debug & view menu\r
+               // Create debug menu\r
                debugMenu = menuBar()->addMenu(tr("&Debug"));\r
-               viewMenu = menuBar()->addMenu(tr("&View"));\r
 \r
                // Create debugger menu\r
                if (vjs.softTypeDebugger)\r
                {\r
+                       // Create view menu\r
+                       viewMenu = menuBar()->addMenu(tr("&View"));\r
+\r
                        // Cart menu\r
                        viewCartMenu = viewMenu->addMenu(tr("&Cartridge"));\r
                        viewCartMenu->addAction(CartFilesListAct);\r
@@ -1081,7 +1089,7 @@ void MainWin::Configure(void)
        // Just in case we crash before a clean exit...\r
        WriteSettings();\r
 \r
-       DebuggerRefreshWindows();\r
+       RefreshWindows();\r
 }\r
 \r
 \r
@@ -1133,16 +1141,19 @@ static uint32_t ntscTickCount;
 static uint32_t refresh = 0;\r
                // Do autorefresh on debug windows\r
                // Have to be careful, too much causes the emulator to slow way down!\r
+               if (refresh == vjs.refresh)\r
+               {\r
                if (vjs.hardwareTypeAlpine || vjs.softTypeDebugger)\r
                {\r
-                       if (refresh == vjs.refresh)\r
-                       {\r
                                AlpineRefreshWindows();\r
                                //memBrowseWin->RefreshContents();\r
                                //cpuBrowseWin->RefreshContents();\r
+                       }\r
+                       CommonRefreshWindows();\r
                                refresh = 0;\r
                        }\r
                        else\r
+               {\r
                                refresh++;\r
                }\r
        }\r
@@ -1247,7 +1258,9 @@ void MainWin::TogglePowerState(void)
                WriteLog("GUI: Resetting Jaguar...\n");\r
                JaguarReset();\r
                DebuggerReset();\r
+               CommonReset();\r
                DebuggerResetWindows();\r
+               CommonResetWindows();\r
                DACPauseAudioThread(false);\r
        }\r
 }\r
@@ -1293,7 +1306,7 @@ void MainWin::ToggleRunState(void)
 \r
                        cpuBrowseWin->HoldBPM();\r
                        cpuBrowseWin->HandleBPMContinue();\r
-                       DebuggerRefreshWindows();\r
+                       RefreshWindows();\r
                }\r
        }\r
        else\r
@@ -1471,6 +1484,7 @@ void MainWin::LoadSoftware(QString file)
                }\r
        }\r
 \r
+       // Display the Atari Jaguar software which is running\r
        if ((!vjs.hardwareTypeAlpine || !vjs.softTypeDebugger) && !loadAndGo && jaguarRunAddress)\r
        {\r
                QString newTitle = QString("Virtual Jaguar " VJ_RELEASE_VERSION " Rx - Now playing: %1").arg(filePickWin->GetSelectedPrettyName());\r
@@ -1525,7 +1539,7 @@ void MainWin::ShowNewFunctionBreakpointWin(void)
 }\r
 \r
 \r
-// Display list of files found in cartdridge\r
+// Display list of files found in cartridge\r
 void MainWin::ShowCartFilesListWin(void)\r
 {\r
        CartFilesListWin->show();\r
@@ -1533,7 +1547,7 @@ void MainWin::ShowCartFilesListWin(void)
 }\r
 \r
 \r
-//\r
+// Display the save dump pickup file\r
 void MainWin::ShowSaveDumpAsWin(void)\r
 {\r
        SaveDumpAsWin->show();\r
@@ -1545,7 +1559,7 @@ void MainWin::DebuggerTraceStepInto(void)
 {\r
        JaguarStepInto();\r
        videoWidget->updateGL();\r
-       DebuggerRefreshWindows();\r
+       RefreshWindows();\r
 #ifdef _MSC_VER\r
 #pragma message("Warning: !!! Need to verify the Step Into function !!!")\r
 #else\r
@@ -1567,7 +1581,8 @@ void MainWin::DebuggerRestart(void)
        m68k_brk_hitcounts_reset();\r
        bpmHitCounts = 0;\r
        DebuggerResetWindows();\r
-       DebuggerRefreshWindows();\r
+       CommonResetWindows();\r
+       RefreshWindows();\r
 #ifdef _MSC_VER\r
 #pragma message("Warning: !!! Need to verify the Restart function !!!")\r
 #else\r
@@ -1581,7 +1596,7 @@ void MainWin::DebuggerTraceStepOver(void)
 {\r
        JaguarStepOver(0);\r
        videoWidget->updateGL();\r
-       DebuggerRefreshWindows();\r
+       RefreshWindows();\r
 #ifdef _MSC_VER\r
 #pragma message("Warning: !!! Need to verify the Step Over function !!!")\r
 #else\r
@@ -1980,6 +1995,11 @@ void MainWin::ReadUISettings(void)
        // Video output information\r
        zoomLevel = settings.value("zoom", 2).toInt();\r
 \r
+// Emulator status UI information\r
+       pos = settings.value("emuStatusWinPos", QPoint(200, 200)).toPoint();\r
+       emuStatusWin->move(pos);\r
+       settings.value("emuStatusWinIsVisible", false).toBool() ? ShowEmuStatusWin() : void();\r
+       \r
        // Alpine debug UI information (also needed by the Debugger)\r
        if (vjs.hardwareTypeAlpine || vjs.softTypeDebugger)\r
        {\r
@@ -2000,11 +2020,6 @@ void MainWin::ReadUISettings(void)
                size = settings.value("stackBrowseWinSize", QSize(400, 400)).toSize();\r
                stackBrowseWin->resize(size);\r
 \r
-               // Emulator status UI information\r
-               pos = settings.value("emuStatusWinPos", QPoint(200, 200)).toPoint();\r
-               emuStatusWin->move(pos);\r
-               settings.value("emuStatusWinIsVisible", false).toBool() ? ShowEmuStatusWin() : void();\r
-\r
                // OP (Object Processor) UI information\r
                pos = settings.value("opBrowseWinPos", QPoint(200, 200)).toPoint();\r
                opBrowseWin->move(pos);\r
@@ -2075,7 +2090,7 @@ void MainWin::ReadUISettings(void)
                size = settings.value("CallStackBrowseWinSize", QSize(400, 400)).toSize();\r
                CallStackBrowseWin->resize(size);\r
 \r
-               // Cartdridge directory and files UI information\r
+               // cartridge directory and files UI information\r
                pos = settings.value("CartFilesListWinPos", QPoint(200, 200)).toPoint();\r
                CartFilesListWin->move(pos);\r
                settings.value("CartFilesListWinIsVisible", false).toBool() ? ShowCartFilesListWin() : void();\r
@@ -2258,6 +2273,10 @@ void MainWin::WriteUISettings(void)
        // Video output information\r
        settings.setValue("zoom", zoomLevel);\r
 \r
+       // Common UI information\r
+       settings.setValue("emuStatusWinPos", emuStatusWin->pos());\r
+       settings.setValue("emuStatusWinIsVisible", emuStatusWin->isVisible());\r
+       \r
        // Alpine debug UI information (also needed by the Debugger)\r
        if (vjs.hardwareTypeAlpine || vjs.softTypeDebugger)\r
        {\r
@@ -2268,8 +2287,6 @@ void MainWin::WriteUISettings(void)
                settings.setValue("stackBrowseWinPos", stackBrowseWin->pos());\r
                settings.setValue("stackBrowseWinIsVisible", stackBrowseWin->isVisible());\r
                settings.setValue("stackBrowseWinSize", stackBrowseWin->size());\r
-               settings.setValue("emuStatusWinPos", emuStatusWin->pos());\r
-               settings.setValue("emuStatusWinIsVisible", emuStatusWin->isVisible());\r
                settings.setValue("opBrowseWinPos", opBrowseWin->pos());\r
                settings.setValue("opBrowseWinIsVisible", opBrowseWin->isVisible());\r
                settings.setValue("opBrowseWinSize", opBrowseWin->size());\r
@@ -2337,13 +2354,24 @@ void MainWin::AlpineRefreshWindows(void)
        cpuBrowseWin->RefreshContents();\r
        memBrowseWin->RefreshContents();\r
        stackBrowseWin->RefreshContents();\r
-       emuStatusWin->RefreshContents();\r
        opBrowseWin->RefreshContents();\r
        riscDasmBrowseWin->RefreshContents();\r
        m68kDasmBrowseWin->RefreshContents();\r
 }\r
 \r
 \r
+// \r
+void MainWin::CommonResetWindows(void)\r
+{\r
+}\r
+\r
+\r
+// Reset common\r
+void MainWin::CommonReset(void)\r
+{\r
+}\r
+\r
+\r
 // Reset soft debugger\r
 void MainWin::DebuggerReset(void)\r
 {\r
@@ -2369,6 +2397,13 @@ void MainWin::DebuggerResetWindows(void)
 }\r
 \r
 \r
+// Refresh common windows\r
+void MainWin::CommonRefreshWindows(void)\r
+{\r
+       emuStatusWin->RefreshContents();\r
+}\r
+\r
+\r
 // Refresh view windows\r
 void MainWin::ViewRefreshWindows(void)\r
 {\r
@@ -2376,6 +2411,14 @@ void MainWin::ViewRefreshWindows(void)
 }\r
 \r
 \r
+// \r
+void MainWin::RefreshWindows(void)\r
+{\r
+       DebuggerRefreshWindows();\r
+       CommonRefreshWindows();\r
+}\r
+\r
+\r
 // Refresh soft debugger & alpine debug windows\r
 void MainWin::DebuggerRefreshWindows(void)\r
 {\r
index 849b0cc..e76f4ff 100644 (file)
@@ -24,9 +24,6 @@ class HelpWindow;
 class FilePickerWindow;\r
 //class VideoOutputWindow;\r
 //class DasmWindow;\r
-class m68KDasmWindow;\r
-class GPUDasmWindow;\r
-class DSPDasmWindow;\r
 class EmuStatusWindow;\r
 \r
 // Alpine\r
@@ -38,6 +35,9 @@ class M68KDasmBrowserWindow;
 class RISCDasmBrowserWindow;\r
 \r
 // Debugger\r
+class m68KDasmWindow;\r
+class GPUDasmWindow;\r
+class DSPDasmWindow;\r
 class AllWatchBrowserWindow;\r
 class LocalBrowserWindow;\r
 class CallStackBrowserWindow;\r
@@ -64,8 +64,12 @@ class MainWin: public QMainWindow
                void SyncUI(void);\r
                void DebuggerRefreshWindows(void);\r
                void ViewRefreshWindows(void);\r
+               void RefreshWindows(void);\r
+               void CommonRefreshWindows(void);\r
                void AlpineRefreshWindows(void);\r
                void DebuggerResetWindows(void);\r
+               void CommonResetWindows(void);\r
+               void CommonReset(void);\r
                void DebuggerReset(void);\r
 \r
        protected:\r