diff --git a/stella/src/build/makefile b/stella/src/build/makefile index 11dfdb3b0..0aee09307 100644 --- a/stella/src/build/makefile +++ b/stella/src/build/makefile @@ -13,7 +13,7 @@ ## See the file "license" for information on usage and redistribution of ## this file, and for a DISCLAIMER OF ALL WARRANTIES. ## -## $Id: makefile,v 1.84 2005-05-21 19:55:17 stephena Exp $ +## $Id: makefile,v 1.85 2005-05-27 18:00:46 stephena Exp $ ##============================================================================ ##============================================================================ @@ -154,7 +154,7 @@ win32-gl: ############################################################################### M6502_OBJS = D6502.o Device.o M6502.o M6502Low.o M6502Hi.o NullDev.o System.o -GUI_OBJS = StellaFont.o Menu.o Launcher.o \ +GUI_OBJS = StellaFont.o Menu.o Launcher.o Debugger.o \ Widget.o PopUpWidget.o ScrollBarWidget.o ListWidget.o TabWidget.o \ Dialog.o DialogContainer.o OptionsDialog.o VideoDialog.o AudioDialog.o \ EventMappingDialog.o GameInfoDialog.o HelpDialog.o AboutDialog.o \ @@ -388,6 +388,9 @@ Menu.o: $(GUI)/Menu.cxx $(GUI)/Menu.hxx Launcher.o: $(GUI)/Launcher.cxx $(GUI)/Launcher.hxx $(CXX) -c $(FLAGS) $(OPTIONS) $(LDFLAGS) $(GUI)/Launcher.cxx +Debugger.o: $(GUI)/Debugger.cxx $(GUI)/Debugger.hxx + $(CXX) -c $(FLAGS) $(OPTIONS) $(LDFLAGS) $(GUI)/Debugger.cxx + Widget.o: $(GUI)/Widget.cxx $(GUI)/Widget.hxx $(CXX) -c $(FLAGS) $(OPTIONS) $(LDFLAGS) $(GUI)/Widget.cxx diff --git a/stella/src/common/FrameBufferGL.cxx b/stella/src/common/FrameBufferGL.cxx index 6db0fad21..c9280c537 100644 --- a/stella/src/common/FrameBufferGL.cxx +++ b/stella/src/common/FrameBufferGL.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: FrameBufferGL.cxx,v 1.23 2005-05-16 00:02:31 stephena Exp $ +// $Id: FrameBufferGL.cxx,v 1.24 2005-05-27 18:00:47 stephena Exp $ //============================================================================ #include @@ -513,9 +513,9 @@ void FrameBufferGL::setDimensions(GLdouble* orthoWidth, GLdouble* orthoHeight) // Figure out which dimension is closest to the 10% mark, // and calculate the scaling required to bring it to exactly 10% if(scaleX > scaleY) - myFSScaleFactor = float(myScreenDim.w * 0.9) / myImageDim.w; + myFSScaleFactor = float(myScreenDim.w) / myImageDim.w; else - myFSScaleFactor = float(myScreenDim.h * 0.9) / myImageDim.h; + myFSScaleFactor = float(myScreenDim.h) / myImageDim.h; myImageDim.w = (Uint16) (myFSScaleFactor * myImageDim.w); myImageDim.h = (Uint16) (myFSScaleFactor * myImageDim.h); @@ -530,12 +530,10 @@ void FrameBufferGL::setDimensions(GLdouble* orthoWidth, GLdouble* orthoHeight) scaleX = float(myImageDim.w) / myScreenDim.w; scaleY = float(myImageDim.h) / myScreenDim.h; - // Figure out which dimension is closest to the 10% mark, - // and calculate the scaling required to bring it to exactly 10% if(scaleX > scaleY) - myFSScaleFactor = (myScreenDim.w * 0.9) / myImageDim.w; + myFSScaleFactor = float(myScreenDim.w) / myImageDim.w; else - myFSScaleFactor = (myScreenDim.h * 0.9) / myImageDim.h; + myFSScaleFactor = float(myScreenDim.h) / myImageDim.h; myImageDim.w = (Uint16) (myFSScaleFactor * myImageDim.w); myImageDim.h = (Uint16) (myFSScaleFactor * myImageDim.h); diff --git a/stella/src/emucore/Console.cxx b/stella/src/emucore/Console.cxx index 15260fd57..a1012444e 100644 --- a/stella/src/emucore/Console.cxx +++ b/stella/src/emucore/Console.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: Console.cxx,v 1.53 2005-05-12 18:45:20 stephena Exp $ +// $Id: Console.cxx,v 1.54 2005-05-27 18:00:47 stephena Exp $ //============================================================================ #include @@ -46,6 +46,7 @@ #include "FrameBuffer.hxx" #include "OSystem.hxx" #include "Menu.hxx" +#include "Debugger.hxx" #ifdef SNAPSHOT_SUPPORT #include "Snapshot.hxx" @@ -187,6 +188,10 @@ Console::Console(const uInt8* image, uInt32 size, OSystem* osystem) // Initialize the menuing system with updated values from the framebuffer myOSystem->menu().initialize(); myOSystem->menu().setGameProfile(myProperties); + + // Finally, initialize the debugging system, since it depends on the current ROM + myOSystem->debugger().initialize(); +// myOSystem->menu().setGameProfile(myProperties); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/stella/src/emucore/EventHandler.cxx b/stella/src/emucore/EventHandler.cxx index 185891db9..adae92cff 100644 --- a/stella/src/emucore/EventHandler.cxx +++ b/stella/src/emucore/EventHandler.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: EventHandler.cxx,v 1.62 2005-05-26 15:43:43 stephena Exp $ +// $Id: EventHandler.cxx,v 1.63 2005-05-27 18:00:47 stephena Exp $ //============================================================================ #include @@ -30,6 +30,7 @@ #include "OSystem.hxx" #include "Menu.hxx" #include "Launcher.hxx" +#include "Debugger.hxx" #include "GuiUtils.hxx" #include "bspf.hxx" @@ -463,6 +464,10 @@ void EventHandler::poll(uInt32 time) myOSystem->launcher().updateTime(time); break; + case S_DEBUGGER: + myOSystem->debugger().updateTime(time); + break; + default: break; } @@ -615,12 +620,12 @@ void EventHandler::handleKeyEvent(SDLKey key, SDLMod mod, uInt8 state) } else if(myKeyTable[key] == Event::MenuMode && state == 1 && !myPauseFlag) { - myState = S_MENU; - myOSystem->menu().reStack(); - myOSystem->frameBuffer().refresh(); - myOSystem->frameBuffer().setCursorState(); - myOSystem->sound().mute(true); - myEvent->clear(); + enterMenuMode(); + return; + } + else if(myKeyTable[key] == Event::DebuggerMode && state == 1 && !myPauseFlag) + { + enterDebugMode(); return; } else @@ -629,13 +634,9 @@ void EventHandler::handleKeyEvent(SDLKey key, SDLMod mod, uInt8 state) break; // S_EMULATE case S_MENU: - if(myKeyTable[key] == Event::MenuMode && state == 1 && !myPauseFlag) + if(myKeyTable[key] == Event::MenuMode && state == 1) { - myState = S_EMULATE; - myOSystem->frameBuffer().refresh(); - myOSystem->frameBuffer().setCursorState(); - myOSystem->sound().mute(false); - myEvent->clear(); + leaveMenuMode(); return; } myOSystem->menu().handleKeyEvent(key, mod, state); @@ -646,7 +647,12 @@ void EventHandler::handleKeyEvent(SDLKey key, SDLMod mod, uInt8 state) break; case S_DEBUGGER: - // Not yet implemented + if(myKeyTable[key] == Event::DebuggerMode && state == 1) + { + leaveDebugMode(); + return; + } + myOSystem->debugger().handleKeyEvent(key, mod, state); break; case S_NONE: @@ -1102,6 +1108,7 @@ void EventHandler::setDefaultKeymap() myKeyTable[ SDLK_F12 ] = Event::TakeSnapshot; myKeyTable[ SDLK_PAUSE ] = Event::Pause; myKeyTable[ SDLK_TAB ] = Event::MenuMode; + myKeyTable[ SDLK_BACKQUOTE ] = Event::DebuggerMode; myKeyTable[ SDLK_ESCAPE ] = Event::LauncherMode; saveMappings(); @@ -1288,6 +1295,57 @@ void EventHandler::setPaddleMode(uInt32 num, bool showmessage) myOSystem->settings().setInt("paddle", myPaddleMode); } +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void EventHandler::enterMenuMode() +{ + myState = S_MENU; + myOSystem->menu().reStack(); + myOSystem->frameBuffer().refresh(); + myOSystem->frameBuffer().setCursorState(); + myOSystem->sound().mute(true); + myEvent->clear(); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void EventHandler::leaveMenuMode() +{ + myState = S_EMULATE; + myOSystem->frameBuffer().refresh(); + myOSystem->frameBuffer().setCursorState(); + myOSystem->sound().mute(false); + myEvent->clear(); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void EventHandler::enterDebugMode() +{ +cerr << "S_DEBUGGER entered\n"; + myState = S_DEBUGGER; + myOSystem->createFrameBuffer(); + myOSystem->debugger().reStack(); + myOSystem->frameBuffer().refresh(); // FIXME - theRedrawEntireFrameIndicator not properly set + myOSystem->frameBuffer().setCursorState(); + myEvent->clear(); + + if(!myPauseFlag) // Pause when entering debugger mode + handleEvent(Event::Pause, 1); +cerr << "S_DEBUGGER entered done\n"; +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void EventHandler::leaveDebugMode() +{ +cerr << "S_DEBUGGER left\n"; + myState = S_EMULATE; + myOSystem->createFrameBuffer(); + myOSystem->frameBuffer().refresh(); + myOSystem->frameBuffer().setCursorState(); + myEvent->clear(); + + if(myPauseFlag) // Un-Pause when leaving debugger mode + handleEvent(Event::Pause, 1); +} + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void EventHandler::setSDLMappings() { diff --git a/stella/src/emucore/EventHandler.hxx b/stella/src/emucore/EventHandler.hxx index 64fd0fcb3..3cfc32e9c 100644 --- a/stella/src/emucore/EventHandler.hxx +++ b/stella/src/emucore/EventHandler.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: EventHandler.hxx,v 1.32 2005-05-26 15:43:44 stephena Exp $ +// $Id: EventHandler.hxx,v 1.33 2005-05-27 18:00:48 stephena Exp $ //============================================================================ #ifndef EVENTHANDLER_HXX @@ -74,7 +74,7 @@ struct Stella_Joystick { mapping can take place. @author Stephen Anthony - @version $Id: EventHandler.hxx,v 1.32 2005-05-26 15:43:44 stephena Exp $ + @version $Id: EventHandler.hxx,v 1.33 2005-05-27 18:00:48 stephena Exp $ */ class EventHandler { @@ -253,6 +253,11 @@ class EventHandler void loadState(); void takeSnapshot(); + void enterMenuMode(); + void leaveMenuMode(); + void enterDebugMode(); + void leaveDebugMode(); + private: // Global OSystem object OSystem* myOSystem; diff --git a/stella/src/emucore/FrameBuffer.cxx b/stella/src/emucore/FrameBuffer.cxx index c6a265557..2a8f728ff 100644 --- a/stella/src/emucore/FrameBuffer.cxx +++ b/stella/src/emucore/FrameBuffer.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: FrameBuffer.cxx,v 1.38 2005-05-25 23:22:11 stephena Exp $ +// $Id: FrameBuffer.cxx,v 1.39 2005-05-27 18:00:48 stephena Exp $ //============================================================================ #include @@ -29,6 +29,7 @@ #include "GuiUtils.hxx" #include "Menu.hxx" #include "Launcher.hxx" +#include "Debugger.hxx" #include "OSystem.hxx" #include "stella.xpm" // The Stella icon @@ -242,8 +243,31 @@ void FrameBuffer::update() } case EventHandler::S_DEBUGGER: - // Not yet implemented - break; + // Draw changes to the mediasource + if(!myPauseStatus) + myOSystem->console().mediaSource().update(); + + // We always draw the screen, even if the core is paused + drawMediaSource(); + + // Only update the screen if it's been invalidated or the menus have changed + if(theRedrawEntireFrameIndicator || theMenuChangedIndicator) + { + // Overlay the ROM launcher + myOSystem->debugger().draw(); + + // Now the screen is up to date + theRedrawEntireFrameIndicator = false; + + // This is a performance hack to only draw the menus when necessary + // Software mode is single-buffered, so we don't have to worry + // However, OpenGL mode is double-buffered, so we need to draw the + // menus at least twice (so they'll be in both buffers) + // Otherwise, we get horrible flickering + myMenuRedraws--; + theMenuChangedIndicator = (myMenuRedraws != 0); + } + break; // S_DEBUGGER case EventHandler::S_NONE: return; diff --git a/stella/src/emucore/OSystem.cxx b/stella/src/emucore/OSystem.cxx index 7e2c9d136..af5dce88f 100644 --- a/stella/src/emucore/OSystem.cxx +++ b/stella/src/emucore/OSystem.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: OSystem.cxx,v 1.21 2005-05-26 18:56:58 stephena Exp $ +// $Id: OSystem.cxx,v 1.22 2005-05-27 18:00:48 stephena Exp $ //============================================================================ #include @@ -40,6 +40,7 @@ #include "EventHandler.hxx" #include "Menu.hxx" #include "Launcher.hxx" +#include "Debugger.hxx" #include "bspf.hxx" #include "OSystem.hxx" @@ -53,12 +54,14 @@ OSystem::OSystem() myConsole(NULL), myMenu(NULL), myLauncher(NULL), + myDebugger(NULL), myRomFile(""), myFeatures("") { // Create menu and launcher GUI objects myMenu = new Menu(this); myLauncher = new Launcher(this); + myDebugger = new Debugger(this); // Determine which features were conditionally compiled into Stella #ifdef DISPLAY_OPENGL @@ -85,6 +88,7 @@ OSystem::~OSystem() delete myMenu; delete myLauncher; + delete myDebugger; // Remove any game console that is currently attached delete myConsole; @@ -199,7 +203,8 @@ bool OSystem::createFrameBuffer(bool showmessage) break; // S_LAUNCHER case EventHandler::S_DEBUGGER: - break; + myDebugger->initializeVideo(); + break; // S_DEBUGGER case EventHandler::S_NONE: break; @@ -239,20 +244,18 @@ void OSystem::createSound() mySound = new SoundNull(this); #endif - // Re-initialize the framebuffer to current settings + // Re-initialize the sound object to current settings switch(myEventHandler->state()) { case EventHandler::S_EMULATE: case EventHandler::S_MENU: + case EventHandler::S_DEBUGGER: myConsole->initializeAudio(); - break; // S_EMULATE, S_MENU + break; // S_EMULATE, S_MENU, S_DEBUGGER case EventHandler::S_LAUNCHER: break; // S_LAUNCHER - case EventHandler::S_DEBUGGER: - break; - case EventHandler::S_NONE: break; } diff --git a/stella/src/emucore/OSystem.hxx b/stella/src/emucore/OSystem.hxx index 28c6415cb..3bd5f8fab 100644 --- a/stella/src/emucore/OSystem.hxx +++ b/stella/src/emucore/OSystem.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: OSystem.hxx,v 1.18 2005-05-26 18:56:58 stephena Exp $ +// $Id: OSystem.hxx,v 1.19 2005-05-27 18:00:48 stephena Exp $ //============================================================================ #ifndef OSYSTEM_HXX @@ -23,6 +23,7 @@ class PropertiesSet; class Menu; class Launcher; +class Debugger; #include "EventHandler.hxx" #include "FrameBuffer.hxx" @@ -39,7 +40,7 @@ class Launcher; other objects belong. @author Stephen Anthony - @version $Id: OSystem.hxx,v 1.18 2005-05-26 18:56:58 stephena Exp $ + @version $Id: OSystem.hxx,v 1.19 2005-05-27 18:00:48 stephena Exp $ */ class OSystem { @@ -132,6 +133,13 @@ class OSystem */ Launcher& launcher(void) const { return *myLauncher; } + /** + Get the ROM debugger of the system. + + @return The debugger object + */ + Debugger& debugger(void) const { return *myDebugger; } + /** Set the framerate for the video system. It's placed in this class since the mainLoop() method is defined here. @@ -326,6 +334,9 @@ class OSystem // Pointer to the Launcher object Launcher* myLauncher; + // Pointer to the Debugger object + Debugger* myDebugger; + // Number of times per second to iterate through the main loop uInt32 myDisplayFrameRate; diff --git a/stella/src/gui/Debugger.cxx b/stella/src/gui/Debugger.cxx new file mode 100644 index 000000000..0d360a63d --- /dev/null +++ b/stella/src/gui/Debugger.cxx @@ -0,0 +1,52 @@ +//============================================================================ +// +// SSSS tt lll lll +// SS SS tt ll ll +// SS tttttt eeee ll ll aaaa +// SSSS tt ee ee ll ll aa +// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator" +// SS SS tt ee ll ll aa aa +// SSSS ttt eeeee llll llll aaaaa +// +// Copyright (c) 1995-2005 by Bradford W. Mott +// +// See the file "license" for information on usage and redistribution of +// this file, and for a DISCLAIMER OF ALL WARRANTIES. +// +// $Id: Debugger.cxx,v 1.1 2005-05-27 18:00:49 stephena Exp $ +//============================================================================ + +#include "Version.hxx" +#include "OSystem.hxx" +#include "FrameBuffer.hxx" +#include "VideoDialog.hxx" +#include "bspf.hxx" +#include "Debugger.hxx" + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +Debugger::Debugger(OSystem* osystem) + : DialogContainer(osystem) +{ +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +Debugger::~Debugger() +{ +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void Debugger::initialize() +{ + // We only create one instance of this dialog, since each time we do so, + // the ROM listing is read from disk. This can be very expensive. + if(myBaseDialog == NULL) + myBaseDialog = new VideoDialog(myOSystem, this, + 0, 0, kDebuggerWidth, kDebuggerHeight); +} + +// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +void Debugger::initializeVideo() +{ + string title = string("Stella version ") + STELLA_VERSION + ": Debugger mode"; + myOSystem->frameBuffer().initialize(title, kDebuggerWidth, kDebuggerHeight, false); +} diff --git a/stella/src/gui/Debugger.hxx b/stella/src/gui/Debugger.hxx new file mode 100644 index 000000000..e35ec8174 --- /dev/null +++ b/stella/src/gui/Debugger.hxx @@ -0,0 +1,62 @@ +//============================================================================ +// +// SSSS tt lll lll +// SS SS tt ll ll +// SS tttttt eeee ll ll aaaa +// SSSS tt ee ee ll ll aa +// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator" +// SS SS tt ee ll ll aa aa +// SSSS ttt eeeee llll llll aaaaa +// +// Copyright (c) 1995-2005 by Bradford W. Mott +// +// See the file "license" for information on usage and redistribution of +// this file, and for a DISCLAIMER OF ALL WARRANTIES. +// +// $Id: Debugger.hxx,v 1.1 2005-05-27 18:00:49 stephena Exp $ +//============================================================================ + +#ifndef DEBUGGER_HXX +#define DEBUGGER_HXX + +class OSystem; + +#include "DialogContainer.hxx" + +enum { + kDebuggerWidth = 510, + kDebuggerHeight = 382 +}; + +/** + The base dialog for the ROM launcher in Stella. + + @author Stephen Anthony + @version $Id: Debugger.hxx,v 1.1 2005-05-27 18:00:49 stephena Exp $ +*/ +class Debugger : public DialogContainer +{ + public: + /** + Create a new menu stack + */ + Debugger(OSystem* osystem); + + /** + Destructor + */ + virtual ~Debugger(); + + public: + /** + Updates the basedialog to be of the type defined for this derived class. + */ + void initialize(); + + /** + Initialize the video subsystem wrt this class. + */ + void initializeVideo(); +}; + +#endif diff --git a/stella/src/gui/FontData.hxx b/stella/src/gui/FontData.hxx index f0fcd4cd9..f33cbda29 100644 --- a/stella/src/gui/FontData.hxx +++ b/stella/src/gui/FontData.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: FontData.hxx,v 1.1 2005-03-13 03:38:40 stephena Exp $ +// $Id: FontData.hxx,v 1.2 2005-05-27 18:00:49 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -334,9 +334,9 @@ static const uInt16 _font_bits[] = { | | | | | | - | * | | | | * | + | * | |* | | | +---+ @@ -346,9 +346,9 @@ static const uInt16 _font_bits[] = { 0x0000, 0x0000, 0x0000, -0x4000, 0x0000, 0x4000, +0x4000, 0x8000, 0x0000, diff --git a/stella/src/gui/GameInfoDialog.hxx b/stella/src/gui/GameInfoDialog.hxx index 694a5aa5c..dd2179323 100644 --- a/stella/src/gui/GameInfoDialog.hxx +++ b/stella/src/gui/GameInfoDialog.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: GameInfoDialog.hxx,v 1.4 2005-05-13 18:28:05 stephena Exp $ +// $Id: GameInfoDialog.hxx,v 1.5 2005-05-27 18:00:49 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -34,6 +34,7 @@ class StaticTextWidget; #define LINES_PER_PAGE 10 #include "OSystem.hxx" +#include "Dialog.hxx" #include "Props.hxx" #include "bspf.hxx" diff --git a/stella/src/gui/OptionsDialog.hxx b/stella/src/gui/OptionsDialog.hxx index a61271e49..bc8ff2add 100644 --- a/stella/src/gui/OptionsDialog.hxx +++ b/stella/src/gui/OptionsDialog.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: OptionsDialog.hxx,v 1.8 2005-05-16 15:37:30 stephena Exp $ +// $Id: OptionsDialog.hxx,v 1.9 2005-05-27 18:00:49 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -24,7 +24,6 @@ class Properties; class CommandSender; -class Dialog; class DialogContainer; class VideoDialog; class AudioDialog; @@ -33,6 +32,7 @@ class HelpDialog; class AboutDialog; #include "OSystem.hxx" +#include "Dialog.hxx" #include "GameInfoDialog.hxx" #include "bspf.hxx" diff --git a/stella/src/gui/VideoDialog.hxx b/stella/src/gui/VideoDialog.hxx index 735c7637e..2a5f2a038 100644 --- a/stella/src/gui/VideoDialog.hxx +++ b/stella/src/gui/VideoDialog.hxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: VideoDialog.hxx,v 1.5 2005-05-13 18:28:06 stephena Exp $ +// $Id: VideoDialog.hxx,v 1.6 2005-05-27 18:00:49 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -23,7 +23,6 @@ #define VIDEO_DIALOG_HXX class CommandSender; -class Dialog; class DialogContainer; class PopUpWidget; class SliderWidget; @@ -31,6 +30,7 @@ class StaticTextWidget; class CheckboxWidget; #include "OSystem.hxx" +#include "Dialog.hxx" #include "bspf.hxx" class VideoDialog : public Dialog