//Hrm. uh??? I thought this wasn't the way to do this stuff...???
#include <QtGui>
+#include "tom.h"
+
+#define RING_BUFFER_SIZE 32
// Forward declarations
class GLWidget;
class AboutWindow;
class HelpWindow;
class FilePickerWindow;
+class MemoryBrowserWindow;
+class CPUBrowserWindow;
+class OPBrowserWindow;
+class M68KDasmBrowserWindow;
+class RISCDasmBrowserWindow;
class MainWin: public QMainWindow
{
Q_OBJECT
public:
- MainWin(QString);
+// MainWin(QString);
+ MainWin(bool);
+ void LoadFile(QString);
+ void SyncUI(void);
protected:
void closeEvent(QCloseEvent *);
private slots:
void Open(void);
- void Configure(void);
+ void Configure(void);
void Timer(void);
void TogglePowerState(void);
void ToggleRunState(void);
void LoadSoftware(QString);
void ToggleCDUsage(void);
void FrameAdvance(void);
+ void ToggleFullScreen(void);
+
+ void ShowMemoryBrowserWin(void);
+ void ShowCPUBrowserWin(void);
+ void ShowOPBrowserWin(void);
+ void ShowM68KDasmBrowserWin(void);
+ void ShowRISCDasmBrowserWin(void);
private:
void HandleKeys(QKeyEvent *, bool);
+ void HandleGamepads(void);
+ void SetFullScreen(bool state = true);
void ResizeMainWindow(void);
void ReadSettings(void);
void WriteSettings(void);
+ void WriteUISettings(void);
// public:
GLWidget * videoWidget;
AboutWindow * aboutWin;
HelpWindow * helpWin;
FilePickerWindow * filePickWin;
+ MemoryBrowserWindow * memBrowseWin;
+ CPUBrowserWindow * cpuBrowseWin;
+ OPBrowserWindow * opBrowseWin;
+ M68KDasmBrowserWindow * m68kDasmBrowseWin;
+ RISCDasmBrowserWindow * riscDasmBrowseWin;
QTimer * timer;
bool running;
int zoomLevel;
// bool alpineLoadSuccessful;
bool pauseForFileSelector;
bool loadAndGo;
+ bool keyHeld[8];
+ bool fullScreen;
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;
QToolBar * toolbar;
+ QToolBar * debugbar;
QActionGroup * zoomActs;
QActionGroup * tvTypeActs;
QAction * configAct;
QAction * useCDAct;
QAction * frameAdvanceAct;
-
+ QAction * fullScreenAct;
+
+ QAction * memBrowseAct;
+ QAction * cpuBrowseAct;
+ QAction * opBrowseAct;
+ QAction * m68kDasmBrowseAct;
+ QAction * riscDasmBrowseAct;
+
QIcon powerGreen;
QIcon powerRed;
+ uint32_t testPattern[VIRTUAL_SCREEN_WIDTH * VIRTUAL_SCREEN_HEIGHT_PAL];
};
#endif // __MAINWIN_H__