X-Git-Url: http://git.hcoop.net/clinton/Virtual-Jaguar-Rx.git/blobdiff_plain/0203b5fd6f49dbc4f4244417c095882eb9882d49..acd3342fdfdd4195fdad3d4c4d248b9610f90622:/src/gui/mainwin.h diff --git a/src/gui/mainwin.h b/src/gui/mainwin.h index fec3179..e0aa8d1 100644 --- a/src/gui/mainwin.h +++ b/src/gui/mainwin.h @@ -4,6 +4,8 @@ // by James Hammons // (C) 2010 Underground Software // +// Modified by Jean-Paul Mari +// #ifndef __MAINWIN_H__ #define __MAINWIN_H__ @@ -14,31 +16,41 @@ #define RING_BUFFER_SIZE 32 -// Forward declarations +// Main windows class GLWidget; -class VideoWindow; +//class VideoWindow; class AboutWindow; class HelpWindow; class FilePickerWindow; +//class VideoOutputWindow; +//class DasmWindow; +class m68KDasmWindow; +class GPUDasmWindow; +class DSPDasmWindow; +class EmuStatusWindow; + +// Alpine class MemoryBrowserWindow; class StackBrowserWindow; class CPUBrowserWindow; class OPBrowserWindow; class M68KDasmBrowserWindow; class RISCDasmBrowserWindow; -class VideoOutputWindow; -class DasmWindow; -class m68KDasmWindow; -class GPUDasmWindow; -class DSPDasmWindow; -class EmuStatusWindow; + +// Debugger class AllWatchBrowserWindow; class LocalBrowserWindow; +class CallStackBrowserWindow; class HeapAllocatorBrowserWindow; class Memory1BrowserWindow; -class BrkWindow; +class BreakpointsWindow; +class NewFnctBreakpointWindow; class ExceptionVectorTableBrowserWindow; +class FilesrcListWindow; +class CartFilesListWindow; + +// class MainWin: public QMainWindow { // All Qt apps require this macro for signal/slot functionality to work @@ -49,8 +61,11 @@ class MainWin: public QMainWindow MainWin(bool); void LoadFile(QString); void SyncUI(void); - void RefreshDebuggerWindows(void); - void RefreshAlpineWindows(void); + void DebuggerRefreshWindows(void); + void ViewRefreshWindows(void); + void AlpineRefreshWindows(void); + void DebuggerResetWindows(void); + void DebuggerReset(void); protected: void closeEvent(QCloseEvent *); @@ -76,25 +91,35 @@ class MainWin: public QMainWindow void LoadSoftware(QString); void ToggleCDUsage(void); void FrameAdvance(void); - void TraceStepOver(void); - void TraceStepInto(void); void ToggleFullScreen(void); - void Restart(void); - void NewBreakpointFunction(void); - void ShowMemoryBrowserWin(void); - void ShowStackBrowserWin(void); - void ShowCPUBrowserWin(void); - void ShowOPBrowserWin(void); - void ShowM68KDasmBrowserWin(void); - void ShowRISCDasmBrowserWin(void); - void ShowVideoOutputWin(void); - void ShowDasmWin(void); void ShowEmuStatusWin(void); + void MakeScreenshot(void); + // Debugger + void DebuggerTraceStepOver(void); + void DebuggerTraceStepInto(void); + void DebuggerRestart(void); void ShowAllWatchBrowserWin(void); void ShowLocalBrowserWin(void); + void ShowCallStackBrowserWin(void); void ShowHeapAllocatorBrowserWin(void); void ShowMemory1BrowserWin(int NumWin); void ShowExceptionVectorTableBrowserWin(void); + void ShowNewFunctionBreakpointWin(void); + void ShowBreakpointsWin(void); + void DeleteAllBreakpoints(void); + void DisableAllBreakpoints(void); +#if 0 + void ShowVideoOutputWin(void); + void ShowDasmWin(void); +#endif + void ShowCartFilesListWin(void); + // Alpine + void ShowMemoryBrowserWin(void); + void ShowStackBrowserWin(void); + void ShowCPUBrowserWin(void); + void ShowOPBrowserWin(void); + void ShowM68KDasmBrowserWin(void); + void ShowRISCDasmBrowserWin(void); private: void HandleKeys(QKeyEvent *, bool); @@ -106,40 +131,46 @@ class MainWin: public QMainWindow void WriteSettings(void); void WriteUISettings(void); -// public: - GLWidget * videoWidget; + private: + GLWidget *videoWidget; QMdiArea *mainWindowCentrale; QMdiSubWindow *VideoOutputWindowCentrale; - AboutWindow * aboutWin; - HelpWindow * helpWin; - FilePickerWindow * filePickWin; - EmuStatusWindow * emuStatusWin; - MemoryBrowserWindow * memBrowseWin; - StackBrowserWindow * stackBrowseWin; - CPUBrowserWindow * cpuBrowseWin; - OPBrowserWindow * opBrowseWin; - M68KDasmBrowserWindow * m68kDasmBrowseWin; - RISCDasmBrowserWindow * riscDasmBrowseWin; - VideoOutputWindow * VideoOutputWin; - AllWatchBrowserWindow * allWatchBrowseWin; - LocalBrowserWindow * LocalBrowseWin; + AboutWindow *aboutWin; + HelpWindow *helpWin; + FilePickerWindow *filePickWin; + EmuStatusWindow *emuStatusWin; + MemoryBrowserWindow *memBrowseWin; + StackBrowserWindow *stackBrowseWin; + CPUBrowserWindow *cpuBrowseWin; + OPBrowserWindow *opBrowseWin; + M68KDasmBrowserWindow *m68kDasmBrowseWin; + RISCDasmBrowserWindow *riscDasmBrowseWin; + //VideoOutputWindow *VideoOutputWin; + AllWatchBrowserWindow *allWatchBrowseWin; + LocalBrowserWindow *LocalBrowseWin; + CallStackBrowserWindow *CallStackBrowseWin; ExceptionVectorTableBrowserWindow *exceptionvectortableBrowseWin; HeapAllocatorBrowserWindow *heapallocatorBrowseWin; - Memory1BrowserWindow ** mem1BrowseWin; - DasmWindow * DasmWin; + Memory1BrowserWindow **mem1BrowseWin; + //DasmWindow * DasmWin; QTabWidget *dasmtabWidget; //QDockWidget *dasmtabWidget; m68KDasmWindow *m68kDasmWin; GPUDasmWindow *GPUDasmWin; DSPDasmWindow *DSPDasmWin; - BrkWindow *brkWin; - QTimer * timer; + FilesrcListWindow *FilesrcListWin; + BreakpointsWindow *BreakpointsWin; + NewFnctBreakpointWindow *NewFunctionBreakpointWin; + CartFilesListWindow *CartFilesListWin; + QTimer *timer; bool running; int zoomLevel; bool powerButtonOn; bool showUntunedTankCircuit; + public: bool cartridgeLoaded; + private: bool allowUnknownSoftware; bool CDActive; @@ -149,18 +180,21 @@ class MainWin: public QMainWindow bool keyHeld[8]; bool fullScreen; bool scannedSoftwareFolder; + public: bool plzDontKillMyComputer; uint32_t oldTimestamp; uint32_t ringBufferPointer; uint32_t ringBuffer[RING_BUFFER_SIZE]; + private: QPoint mainWinPosition; // QSize mainWinSize; int lastEditedProfile; - QMenu * fileMenu; - QMenu * helpMenu; - QMenu * debugMenu, * debugWindowsMenu, *debugWindowsBrowsesMenu, *debugWindowsWatchMenu, *debugWindowOutputMenu, *debugWindowExceptionMenu, *debugWindowsMemoryMenu, *debugNewBreakpointMenu; + QMenu *fileMenu; + QMenu *helpMenu; + QMenu *debugMenu, *debugWindowsMenu, *debugWindowsBrowsesMenu, *debugWindowsWatchMenu, *debugWindowOutputMenu, *debugWindowExceptionMenu, *debugWindowsMemoryMenu, *debugNewBreakpointMenu; + QMenu *viewMenu, *viewCartMenu; QToolBar * toolbar; QToolBar * debugbar; QToolBar * debuggerbar; @@ -168,41 +202,50 @@ class MainWin: public QMainWindow QActionGroup * zoomActs; QActionGroup * tvTypeActs; - QAction * quitAppAct; - QAction * powerAct; - QAction * pauseAct; - QAction * x1Act; - QAction * x2Act; - QAction * x3Act; - QAction * ntscAct; - QAction * palAct; - QAction * blurAct; - QAction * aboutAct; - QAction * helpAct; - QAction * filePickAct; - QAction * configAct; - QAction * emustatusAct; - QAction * useCDAct; - QAction * frameAdvanceAct; - QAction *traceStepOverAct; - QAction *traceStepIntoAct; - QAction *restartAct; - QAction * fullScreenAct; + QAction *quitAppAct; + QAction *powerAct; + QAction *pauseAct; + QAction *x1Act; + QAction *x2Act; + QAction *x3Act; + QAction *ntscAct; + QAction *palAct; + QAction *blurAct; + QAction *aboutAct; + QAction *helpAct; + QAction *filePickAct; + QAction *configAct; + QAction *emustatusAct; + QAction *useCDAct; + QAction *frameAdvanceAct; + QAction *fullScreenAct; + //QAction *DasmAct; + QAction *screenshotAct; + // Alpine QAction *memBrowseAct; QAction *stackBrowseAct; QAction *cpuBrowseAct; QAction *opBrowseAct; QAction *m68kDasmBrowseAct; QAction *riscDasmBrowseAct; - QAction *VideoOutputAct; - QAction *DasmAct; + + // Debugger + QAction *traceStepOverAct; + QAction *traceStepIntoAct; + QAction *restartAct; + //QAction *VideoOutputAct; QAction *heapallocatorBrowseAct; QAction *allWatchBrowseAct; QAction *LocalBrowseAct; + QAction *CallStackBrowseAct; QAction **mem1BrowseAct; - QAction *newBreakpointFunctionAct; + QAction *newFunctionBreakpointAct; + QAction *BreakpointsAct; + QAction *deleteAllBreakpointsAct; + QAction *disableAllBreakpointsAct; QAction *exceptionVectorTableBrowseAct; + QAction *CartFilesListAct; QIcon powerGreen; QIcon powerRed;