X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgui%2Fmainwin.h;h=a29dbc6119343f2edd1f1a8fdf81e45a36bc84b4;hb=240a6df48aebb5e17f82452c32e770cdfe9b5d5e;hp=fd6aef14c8c03de782dc02d8e1d59f30c38f357c;hpb=8fa19895c8308c0a1aee537f971c740eea4bab9e;p=virtualjaguar diff --git a/src/gui/mainwin.h b/src/gui/mainwin.h index fd6aef1..a29dbc6 100644 --- a/src/gui/mainwin.h +++ b/src/gui/mainwin.h @@ -9,7 +9,10 @@ #define __MAINWIN_H__ //Hrm. uh??? I thought this wasn't the way to do this stuff...??? -#include +#include +#include "tom.h" + +#define RING_BUFFER_SIZE 32 // Forward declarations class GLWidget; @@ -17,6 +20,10 @@ class AboutWindow; class HelpWindow; class FilePickerWindow; class MemoryBrowserWindow; +class CPUBrowserWindow; +class OPBrowserWindow; +class M68KDasmBrowserWindow; +class RISCDasmBrowserWindow; class MainWin: public QMainWindow { @@ -36,7 +43,7 @@ class MainWin: public QMainWindow private slots: void Open(void); - void Configure(void); + void Configure(void); void Timer(void); void TogglePowerState(void); void ToggleRunState(void); @@ -53,11 +60,18 @@ class MainWin: public QMainWindow 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); @@ -69,21 +83,35 @@ class MainWin: public QMainWindow HelpWindow * helpWin; FilePickerWindow * filePickWin; MemoryBrowserWindow * memBrowseWin; + CPUBrowserWindow * cpuBrowseWin; + OPBrowserWindow * opBrowseWin; + M68KDasmBrowserWindow * m68kDasmBrowseWin; + RISCDasmBrowserWindow * riscDasmBrowseWin; QTimer * timer; bool running; int zoomLevel; bool powerButtonOn; bool showUntunedTankCircuit; + public: bool cartridgeLoaded; + private: bool allowUnknownSoftware; bool CDActive; // bool alpineLoadSuccessful; bool pauseForFileSelector; bool loadAndGo; 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; @@ -108,11 +136,18 @@ class MainWin: public QMainWindow 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]; + uint32_t testPattern2[VIRTUAL_SCREEN_WIDTH * VIRTUAL_SCREEN_HEIGHT_PAL]; }; #endif // __MAINWIN_H__