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 ResetDebuggerWindows(void);
54 void RefreshAlpineWindows(void);
57 void closeEvent(QCloseEvent
*);
58 void keyPressEvent(QKeyEvent
*);
59 void keyReleaseEvent(QKeyEvent
*);
65 void TogglePowerState(void);
66 void ToggleRunState(void);
67 void SetZoom100(void);
68 void SetZoom200(void);
69 void SetZoom300(void);
72 void ToggleBlur(void);
73 void ShowAboutWin(void);
74 void ShowHelpWin(void);
75 void InsertCart(void);
77 void LoadSoftware(QString
);
78 void ToggleCDUsage(void);
79 void FrameAdvance(void);
80 void TraceStepOver(void);
81 void TraceStepInto(void);
82 void ToggleFullScreen(void);
84 void NewBreakpointFunction(void);
85 void ShowMemoryBrowserWin(void);
86 void ShowStackBrowserWin(void);
87 void ShowCPUBrowserWin(void);
88 void ShowOPBrowserWin(void);
89 void ShowM68KDasmBrowserWin(void);
90 void ShowRISCDasmBrowserWin(void);
91 void ShowVideoOutputWin(void);
92 void ShowDasmWin(void);
93 void ShowEmuStatusWin(void);
94 void ShowAllWatchBrowserWin(void);
95 void ShowLocalBrowserWin(void);
96 void ShowHeapAllocatorBrowserWin(void);
97 void ShowMemory1BrowserWin(int NumWin
);
98 void ShowExceptionVectorTableBrowserWin(void);
101 void HandleKeys(QKeyEvent
*, bool);
102 void HandleGamepads(void);
103 void SetFullScreen(bool state
= true);
104 void ResizeMainWindow(void);
105 void ReadUISettings(void);
106 void ReadSettings(void);
107 void WriteSettings(void);
108 void WriteUISettings(void);
111 GLWidget
* videoWidget
;
112 QMdiArea
*mainWindowCentrale
;
113 QMdiSubWindow
*VideoOutputWindowCentrale
;
114 AboutWindow
* aboutWin
;
115 HelpWindow
* helpWin
;
116 FilePickerWindow
* filePickWin
;
117 EmuStatusWindow
* emuStatusWin
;
118 MemoryBrowserWindow
* memBrowseWin
;
119 StackBrowserWindow
* stackBrowseWin
;
120 CPUBrowserWindow
* cpuBrowseWin
;
121 OPBrowserWindow
* opBrowseWin
;
122 M68KDasmBrowserWindow
* m68kDasmBrowseWin
;
123 RISCDasmBrowserWindow
* riscDasmBrowseWin
;
124 //VideoOutputWindow * VideoOutputWin;
125 AllWatchBrowserWindow
* allWatchBrowseWin
;
126 LocalBrowserWindow
* LocalBrowseWin
;
127 ExceptionVectorTableBrowserWindow
*exceptionvectortableBrowseWin
;
128 HeapAllocatorBrowserWindow
*heapallocatorBrowseWin
;
129 Memory1BrowserWindow
** mem1BrowseWin
;
130 DasmWindow
* DasmWin
;
131 QTabWidget
*dasmtabWidget
;
132 //QDockWidget *dasmtabWidget;
133 m68KDasmWindow
*m68kDasmWin
;
134 GPUDasmWindow
*GPUDasmWin
;
135 DSPDasmWindow
*DSPDasmWin
;
141 bool showUntunedTankCircuit
;
143 bool cartridgeLoaded
;
145 bool allowUnknownSoftware
;
147 // bool alpineLoadSuccessful;
148 bool pauseForFileSelector
;
152 bool scannedSoftwareFolder
;
154 bool plzDontKillMyComputer
;
155 uint32_t oldTimestamp
;
156 uint32_t ringBufferPointer
;
157 uint32_t ringBuffer
[RING_BUFFER_SIZE
];
159 QPoint mainWinPosition
;
160 // QSize mainWinSize;
161 int lastEditedProfile
;
164 QMenu
* debugMenu
, * debugWindowsMenu
, *debugWindowsBrowsesMenu
, *debugWindowsWatchMenu
, *debugWindowOutputMenu
, *debugWindowExceptionMenu
, *debugWindowsMemoryMenu
, *debugNewBreakpointMenu
;
167 QToolBar
* debuggerbar
;
169 QActionGroup
* zoomActs
;
170 QActionGroup
* tvTypeActs
;
172 QAction
* quitAppAct
;
183 QAction
* filePickAct
;
185 QAction
* emustatusAct
;
187 QAction
* frameAdvanceAct
;
188 QAction
*traceStepOverAct
;
189 QAction
*traceStepIntoAct
;
191 QAction
* fullScreenAct
;
193 QAction
*memBrowseAct
;
194 QAction
*stackBrowseAct
;
195 QAction
*cpuBrowseAct
;
196 QAction
*opBrowseAct
;
197 QAction
*m68kDasmBrowseAct
;
198 QAction
*riscDasmBrowseAct
;
199 QAction
*VideoOutputAct
;
201 QAction
*heapallocatorBrowseAct
;
202 QAction
*allWatchBrowseAct
;
203 QAction
*LocalBrowseAct
;
204 QAction
**mem1BrowseAct
;
205 QAction
*newBreakpointFunctionAct
;
206 QAction
*exceptionVectorTableBrowseAct
;
211 uint32_t testPattern
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
212 uint32_t testPattern2
[VIRTUAL_SCREEN_WIDTH
* VIRTUAL_SCREEN_HEIGHT_PAL
];
215 #endif // __MAINWIN_H__