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
22 class FilePickerWindow
;
23 //class VideoOutputWindow;
28 class EmuStatusWindow
;
31 class MemoryBrowserWindow
;
32 class StackBrowserWindow
;
33 class CPUBrowserWindow
;
34 class OPBrowserWindow
;
35 class M68KDasmBrowserWindow
;
36 class RISCDasmBrowserWindow
;
39 class AllWatchBrowserWindow
;
40 class LocalBrowserWindow
;
41 class CallStackBrowserWindow
;
42 class HeapAllocatorBrowserWindow
;
43 class Memory1BrowserWindow
;
45 class ExceptionVectorTableBrowserWindow
;
48 class MainWin
: public QMainWindow
50 // All Qt apps require this macro for signal/slot functionality to work
56 void LoadFile(QString
);
58 void DebuggerRefreshWindows(void);
59 void DebuggerResetWindows(void);
60 void RefreshAlpineWindows(void);
63 void closeEvent(QCloseEvent
*);
64 void keyPressEvent(QKeyEvent
*);
65 void keyReleaseEvent(QKeyEvent
*);
71 void TogglePowerState(void);
72 void ToggleRunState(void);
73 void SetZoom100(void);
74 void SetZoom200(void);
75 void SetZoom300(void);
78 void ToggleBlur(void);
79 void ShowAboutWin(void);
80 void ShowHelpWin(void);
81 void InsertCart(void);
83 void LoadSoftware(QString
);
84 void ToggleCDUsage(void);
85 void FrameAdvance(void);
86 void ToggleFullScreen(void);
87 void ShowEmuStatusWin(void);
88 void MakeScreenshot(void);
90 void DebuggerTraceStepOver(void);
91 void DebuggerTraceStepInto(void);
92 void DebuggerRestart(void);
93 void ShowAllWatchBrowserWin(void);
94 void ShowLocalBrowserWin(void);
95 void ShowCallStackBrowserWin(void);
96 void ShowHeapAllocatorBrowserWin(void);
97 void ShowMemory1BrowserWin(int NumWin
);
98 void ShowExceptionVectorTableBrowserWin(void);
99 void NewBreakpointFunction(void);
100 void ShowVideoOutputWin(void);
101 void ShowDasmWin(void);
103 void ShowMemoryBrowserWin(void);
104 void ShowStackBrowserWin(void);
105 void ShowCPUBrowserWin(void);
106 void ShowOPBrowserWin(void);
107 void ShowM68KDasmBrowserWin(void);
108 void ShowRISCDasmBrowserWin(void);
111 void HandleKeys(QKeyEvent
*, bool);
112 void HandleGamepads(void);
113 void SetFullScreen(bool state
= true);
114 void ResizeMainWindow(void);
115 void ReadUISettings(void);
116 void ReadSettings(void);
117 void WriteSettings(void);
118 void WriteUISettings(void);
121 GLWidget
*videoWidget
;
122 QMdiArea
*mainWindowCentrale
;
123 QMdiSubWindow
*VideoOutputWindowCentrale
;
124 AboutWindow
* aboutWin
;
125 HelpWindow
* helpWin
;
126 FilePickerWindow
* filePickWin
;
127 EmuStatusWindow
* emuStatusWin
;
128 MemoryBrowserWindow
* memBrowseWin
;
129 StackBrowserWindow
* stackBrowseWin
;
130 CPUBrowserWindow
* cpuBrowseWin
;
131 OPBrowserWindow
* opBrowseWin
;
132 M68KDasmBrowserWindow
* m68kDasmBrowseWin
;
133 RISCDasmBrowserWindow
* riscDasmBrowseWin
;
134 //VideoOutputWindow * VideoOutputWin;
135 AllWatchBrowserWindow
*allWatchBrowseWin
;
136 LocalBrowserWindow
*LocalBrowseWin
;
137 CallStackBrowserWindow
*CallStackBrowseWin
;
138 ExceptionVectorTableBrowserWindow
*exceptionvectortableBrowseWin
;
139 HeapAllocatorBrowserWindow
*heapallocatorBrowseWin
;
140 Memory1BrowserWindow
**mem1BrowseWin
;
141 DasmWindow
* DasmWin
;
142 QTabWidget
*dasmtabWidget
;
143 //QDockWidget *dasmtabWidget;
144 m68KDasmWindow
*m68kDasmWin
;
145 GPUDasmWindow
*GPUDasmWin
;
146 DSPDasmWindow
*DSPDasmWin
;
152 bool showUntunedTankCircuit
;
155 bool cartridgeLoaded
;
158 bool allowUnknownSoftware
;
160 // bool alpineLoadSuccessful;
161 bool pauseForFileSelector
;
165 bool scannedSoftwareFolder
;
168 bool plzDontKillMyComputer
;
169 uint32_t oldTimestamp
;
170 uint32_t ringBufferPointer
;
171 uint32_t ringBuffer
[RING_BUFFER_SIZE
];
174 QPoint mainWinPosition
;
175 // QSize mainWinSize;
176 int lastEditedProfile
;
179 QMenu
* debugMenu
, * debugWindowsMenu
, *debugWindowsBrowsesMenu
, *debugWindowsWatchMenu
, *debugWindowOutputMenu
, *debugWindowExceptionMenu
, *debugWindowsMemoryMenu
, *debugNewBreakpointMenu
;
182 QToolBar
* debuggerbar
;
184 QActionGroup
* zoomActs
;
185 QActionGroup
* tvTypeActs
;
187 QAction
* quitAppAct
;
198 QAction
* filePickAct
;
200 QAction
* emustatusAct
;
202 QAction
* frameAdvanceAct
;
203 QAction
*traceStepOverAct
;
204 QAction
*traceStepIntoAct
;
206 QAction
* fullScreenAct
;
208 QAction
*screenshotAct
;;
211 QAction
*memBrowseAct
;
212 QAction
*stackBrowseAct
;
213 QAction
*cpuBrowseAct
;
214 QAction
*opBrowseAct
;
215 QAction
*m68kDasmBrowseAct
;
216 QAction
*riscDasmBrowseAct
;
219 QAction
*VideoOutputAct
;
220 QAction
*heapallocatorBrowseAct
;
221 QAction
*allWatchBrowseAct
;
222 QAction
*LocalBrowseAct
;
223 QAction
*CallStackBrowseAct
;
224 QAction
**mem1BrowseAct
;
225 QAction
*newBreakpointFunctionAct
;
226 QAction
*exceptionVectorTableBrowseAct
;
231 uint32_t testPattern
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
232 uint32_t testPattern2
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
235 #endif // __MAINWIN_H__