2 // mainwin.h: Header file
5 // (C) 2010 Underground Software
11 //Hrm. uh??? I thought this wasn't the way to do this stuff...???
15 #define RING_BUFFER_SIZE 32
17 // Forward declarations
22 class FilePickerWindow
;
23 class MemoryBrowserWindow
;
24 class StackBrowserWindow
;
25 class CPUBrowserWindow
;
26 class OPBrowserWindow
;
27 class M68KDasmBrowserWindow
;
28 class RISCDasmBrowserWindow
;
29 class VideoOutputWindow
;
34 class EmuStatusWindow
;
35 class AllWatchBrowserWindow
;
36 class LocalBrowserWindow
;
37 class HeapAllocatorBrowserWindow
;
38 class Memory1BrowserWindow
;
40 class ExceptionVectorTableBrowserWindow
;
42 class MainWin
: public QMainWindow
44 // All Qt apps require this macro for signal/slot functionality to work
50 void LoadFile(QString
);
52 void RefreshDebuggerWindows(void);
53 void RefreshAlpineWindows(void);
56 void closeEvent(QCloseEvent
*);
57 void keyPressEvent(QKeyEvent
*);
58 void keyReleaseEvent(QKeyEvent
*);
64 void TogglePowerState(void);
65 void ToggleRunState(void);
66 void SetZoom100(void);
67 void SetZoom200(void);
68 void SetZoom300(void);
71 void ToggleBlur(void);
72 void ShowAboutWin(void);
73 void ShowHelpWin(void);
74 void InsertCart(void);
76 void LoadSoftware(QString
);
77 void ToggleCDUsage(void);
78 void FrameAdvance(void);
79 void TraceStepOver(void);
80 void TraceStepInto(void);
81 void ToggleFullScreen(void);
83 void NewBreakpointFunction(void);
84 void ShowMemoryBrowserWin(void);
85 void ShowStackBrowserWin(void);
86 void ShowCPUBrowserWin(void);
87 void ShowOPBrowserWin(void);
88 void ShowM68KDasmBrowserWin(void);
89 void ShowRISCDasmBrowserWin(void);
90 void ShowVideoOutputWin(void);
91 void ShowDasmWin(void);
92 void ShowEmuStatusWin(void);
93 void ShowAllWatchBrowserWin(void);
94 void ShowLocalBrowserWin(void);
95 void ShowHeapAllocatorBrowserWin(void);
96 void ShowMemory1BrowserWin(int NumWin
);
97 void ShowExceptionVectorTableBrowserWin(void);
100 void HandleKeys(QKeyEvent
*, bool);
101 void HandleGamepads(void);
102 void SetFullScreen(bool state
= true);
103 void ResizeMainWindow(void);
104 void ReadUISettings(void);
105 void ReadSettings(void);
106 void WriteSettings(void);
107 void WriteUISettings(void);
110 GLWidget
* videoWidget
;
111 QMdiArea
*mainWindowCentrale
;
112 QMdiSubWindow
*VideoOutputWindowCentrale
;
113 AboutWindow
* aboutWin
;
114 HelpWindow
* helpWin
;
115 FilePickerWindow
* filePickWin
;
116 EmuStatusWindow
* emuStatusWin
;
117 MemoryBrowserWindow
* memBrowseWin
;
118 StackBrowserWindow
* stackBrowseWin
;
119 CPUBrowserWindow
* cpuBrowseWin
;
120 OPBrowserWindow
* opBrowseWin
;
121 M68KDasmBrowserWindow
* m68kDasmBrowseWin
;
122 RISCDasmBrowserWindow
* riscDasmBrowseWin
;
123 VideoOutputWindow
* VideoOutputWin
;
124 AllWatchBrowserWindow
* allWatchBrowseWin
;
125 LocalBrowserWindow
* LocalBrowseWin
;
126 ExceptionVectorTableBrowserWindow
*exceptionvectortableBrowseWin
;
127 HeapAllocatorBrowserWindow
*heapallocatorBrowseWin
;
128 Memory1BrowserWindow
** mem1BrowseWin
;
129 DasmWindow
* DasmWin
;
130 QTabWidget
*dasmtabWidget
;
131 //QDockWidget *dasmtabWidget;
132 m68KDasmWindow
*m68kDasmWin
;
133 GPUDasmWindow
*GPUDasmWin
;
134 DSPDasmWindow
*DSPDasmWin
;
140 bool showUntunedTankCircuit
;
142 bool cartridgeLoaded
;
144 bool allowUnknownSoftware
;
146 // bool alpineLoadSuccessful;
147 bool pauseForFileSelector
;
151 bool scannedSoftwareFolder
;
153 bool plzDontKillMyComputer
;
154 uint32_t oldTimestamp
;
155 uint32_t ringBufferPointer
;
156 uint32_t ringBuffer
[RING_BUFFER_SIZE
];
158 QPoint mainWinPosition
;
159 // QSize mainWinSize;
160 int lastEditedProfile
;
163 QMenu
* debugMenu
, * debugWindowsMenu
, *debugWindowsBrowsesMenu
, *debugWindowsWatchMenu
, *debugWindowOutputMenu
, *debugWindowExceptionMenu
, *debugWindowsMemoryMenu
, *debugNewBreakpointMenu
;
166 QToolBar
* debuggerbar
;
168 QActionGroup
* zoomActs
;
169 QActionGroup
* tvTypeActs
;
171 QAction
* quitAppAct
;
182 QAction
* filePickAct
;
184 QAction
* emustatusAct
;
186 QAction
* frameAdvanceAct
;
187 QAction
*traceStepOverAct
;
188 QAction
*traceStepIntoAct
;
190 QAction
* fullScreenAct
;
192 QAction
*memBrowseAct
;
193 QAction
*stackBrowseAct
;
194 QAction
*cpuBrowseAct
;
195 QAction
*opBrowseAct
;
196 QAction
*m68kDasmBrowseAct
;
197 QAction
*riscDasmBrowseAct
;
198 QAction
*VideoOutputAct
;
200 QAction
*heapallocatorBrowseAct
;
201 QAction
*allWatchBrowseAct
;
202 QAction
*LocalBrowseAct
;
203 QAction
**mem1BrowseAct
;
204 QAction
*newBreakpointFunctionAct
;
205 QAction
*exceptionVectorTableBrowseAct
;
210 uint32_t testPattern
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
211 uint32_t testPattern2
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
214 #endif // __MAINWIN_H__