From 34f5abb314b1c59b543e23e50936e8b3ae3dddc4 Mon Sep 17 00:00:00 2001 From: stephena Date: Sat, 25 Mar 2006 00:34:17 +0000 Subject: [PATCH] Some code restructuring right across the board. I also reverted much of the earlier palette changes, since it turned into a can of worms I don't want to open. I think we'll be ready for a new release soon. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1066 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba --- stella/src/common/FrameBufferGL.cxx | 28 ++++---- stella/src/common/FrameBufferGL.hxx | 14 ++-- stella/src/common/FrameBufferSoft.cxx | 40 +++++------ stella/src/common/FrameBufferSoft.hxx | 14 ++-- stella/src/debugger/gui/ColorWidget.cxx | 4 +- stella/src/debugger/gui/DataGridWidget.cxx | 5 +- stella/src/debugger/gui/PromptWidget.cxx | 12 ++-- stella/src/debugger/gui/PromptWidget.hxx | 10 +-- stella/src/debugger/gui/TiaWidget.cxx | 12 ++-- stella/src/debugger/gui/TiaZoomWidget.cxx | 13 +--- stella/src/debugger/gui/TogglePixelWidget.hxx | 6 +- stella/src/emucore/Console.cxx | 34 ++++++---- stella/src/emucore/Console.hxx | 20 +++--- stella/src/emucore/EventHandler.cxx | 29 ++++---- stella/src/emucore/EventHandler.hxx | 6 +- stella/src/emucore/FrameBuffer.cxx | 67 +++++++------------ stella/src/emucore/FrameBuffer.hxx | 58 +++++++++------- stella/src/emucore/OSystem.cxx | 8 ++- stella/src/emucore/OSystem.hxx | 26 +++---- stella/src/gui/AboutDialog.cxx | 4 +- stella/src/gui/EditableWidget.cxx | 4 +- stella/src/gui/GuiUtils.hxx | 23 +------ stella/src/gui/ScrollBarWidget.cxx | 4 +- stella/src/gui/StringListWidget.cxx | 6 +- stella/src/gui/TabWidget.cxx | 6 +- stella/src/gui/TabWidget.hxx | 4 +- stella/src/gui/VideoDialog.cxx | 4 +- stella/src/gui/Widget.cxx | 6 +- stella/src/gui/Widget.hxx | 28 ++++---- stella/src/unix/OSystemUNIX.cxx | 6 +- 30 files changed, 238 insertions(+), 263 deletions(-) diff --git a/stella/src/common/FrameBufferGL.cxx b/stella/src/common/FrameBufferGL.cxx index 8712d2a1d..988770bf4 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.59 2006-03-24 19:59:52 stephena Exp $ +// $Id: FrameBufferGL.cxx,v 1.60 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifdef DISPLAY_OPENGL @@ -343,7 +343,7 @@ void FrameBufferGL::drawMediaSource() // are drawn in postFrameUpdate() myDirtyFlag = true; - buffer[pos] = buffer[pos+1] = (uInt16) myDefTIAPalette[v]; + buffer[pos] = buffer[pos+1] = (uInt16) myDefPalette[v]; } pos += 2; } @@ -370,8 +370,8 @@ void FrameBufferGL::drawMediaSource() uInt8 v = currentFrame[bufofs]; uInt8 w = previousFrame[bufofs]; - buffer[pos++] = (uInt16) myAvgTIAPalette[v][w]; - buffer[pos++] = (uInt16) myAvgTIAPalette[v][w]; + buffer[pos++] = (uInt16) myAvgPalette[v][w]; + buffer[pos++] = (uInt16) myAvgPalette[v][w]; } bufofsY += width; screenofsY += myTexture->w; @@ -450,27 +450,27 @@ void FrameBufferGL::toggleFilter() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBufferGL::hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color) +void FrameBufferGL::hLine(uInt32 x, uInt32 y, uInt32 x2, int color) { uInt16* buffer = (uInt16*) myTexture->pixels + y * myTexture->w + x; while(x++ <= x2) - *buffer++ = (uInt16) myGUIPalette[color]; + *buffer++ = (uInt16) myDefPalette[color]; } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBufferGL::vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color) +void FrameBufferGL::vLine(uInt32 x, uInt32 y, uInt32 y2, int color) { uInt16* buffer = (uInt16*) myTexture->pixels + y * myTexture->w + x; while(y++ <= y2) { - *buffer = (uInt16) myGUIPalette[color]; + *buffer = (uInt16) myDefPalette[color]; buffer += myTexture->w; } } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferGL::fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color) + int color) { SDL_Rect tmp; @@ -479,12 +479,12 @@ void FrameBufferGL::fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, tmp.y = y; tmp.w = w; tmp.h = h; - SDL_FillRect(myTexture, &tmp, myGUIPalette[color]); + SDL_FillRect(myTexture, &tmp, myDefPalette[color]); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferGL::drawChar(const GUI::Font* FONT, uInt8 chr, - uInt32 tx, uInt32 ty, OverlayColor color) + uInt32 tx, uInt32 ty, int color) { GUI::Font* font = (GUI::Font*) FONT; @@ -512,7 +512,7 @@ void FrameBufferGL::drawChar(const GUI::Font* FONT, uInt8 chr, for(int x = 0; x < w; ++x, mask >>= 1) { if(ptr & mask) - buffer[x] = (uInt16) myGUIPalette[color]; + buffer[x] = (uInt16) myDefPalette[color]; } buffer += myTexture->w; } @@ -520,7 +520,7 @@ void FrameBufferGL::drawChar(const GUI::Font* FONT, uInt8 chr, // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferGL::drawBitmap(uInt32* bitmap, Int32 tx, Int32 ty, - OverlayColor color, Int32 h) + int color, Int32 h) { uInt16* buffer = (uInt16*) myTexture->pixels + ty * myTexture->w + tx; @@ -530,7 +530,7 @@ void FrameBufferGL::drawBitmap(uInt32* bitmap, Int32 tx, Int32 ty, for(int x = 0; x < 8; ++x, mask >>= 4) { if(bitmap[y] & mask) - buffer[x] = (uInt16) myGUIPalette[color]; + buffer[x] = (uInt16) myDefPalette[color]; } buffer += myTexture->w; } diff --git a/stella/src/common/FrameBufferGL.hxx b/stella/src/common/FrameBufferGL.hxx index 21acc90b7..df5a8653e 100644 --- a/stella/src/common/FrameBufferGL.hxx +++ b/stella/src/common/FrameBufferGL.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: FrameBufferGL.hxx,v 1.30 2006-01-19 00:45:12 stephena Exp $ +// $Id: FrameBufferGL.hxx,v 1.31 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef FRAMEBUFFER_GL_HXX @@ -37,7 +37,7 @@ class GUI::Font; This class implements an SDL OpenGL framebuffer. @author Stephen Anthony - @version $Id: FrameBufferGL.hxx,v 1.30 2006-01-19 00:45:12 stephena Exp $ + @version $Id: FrameBufferGL.hxx,v 1.31 2006-03-25 00:34:17 stephena Exp $ */ class FrameBufferGL : public FrameBuffer { @@ -134,7 +134,7 @@ class FrameBufferGL : public FrameBuffer @param x2 The second x coordinate @param color The color of the line */ - virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color); + virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, int color); /** This method is called to draw a vertical line. @@ -144,7 +144,7 @@ class FrameBufferGL : public FrameBuffer @param y2 The second y coordinate @param color The color of the line */ - virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color); + virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, int color); /** This method is called to draw a filled rectangle. @@ -156,7 +156,7 @@ class FrameBufferGL : public FrameBuffer @param color The color of the area */ virtual void fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color); + int color); /** This method is called to draw the specified character. @@ -168,7 +168,7 @@ class FrameBufferGL : public FrameBuffer @param color The color of the character */ virtual void drawChar(const GUI::Font* font, uInt8 c, uInt32 x, uInt32 y, - OverlayColor color); + int color); /** This method is called to draw the bitmap image. @@ -179,7 +179,7 @@ class FrameBufferGL : public FrameBuffer @param color The color of the character @param h The height of the data image */ - virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, OverlayColor color, + virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, int color, Int32 h = 8); /** diff --git a/stella/src/common/FrameBufferSoft.cxx b/stella/src/common/FrameBufferSoft.cxx index 078681992..446ac7207 100644 --- a/stella/src/common/FrameBufferSoft.cxx +++ b/stella/src/common/FrameBufferSoft.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: FrameBufferSoft.cxx,v 1.51 2006-03-24 19:59:52 stephena Exp $ +// $Id: FrameBufferSoft.cxx,v 1.52 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -220,7 +220,7 @@ void FrameBufferSoft::drawMediaSource() temp.h = active.height * screenMultiple; myRectList->add(&temp); - SDL_FillRect(myScreen, &temp, myDefTIAPalette[active.color]); + SDL_FillRect(myScreen, &temp, myDefPalette[active.color]); ++activeIndex; } @@ -238,7 +238,7 @@ void FrameBufferSoft::drawMediaSource() temp.h = active.height * screenMultiple; myRectList->add(&temp); - SDL_FillRect(myScreen, &temp, myDefTIAPalette[active.color]); + SDL_FillRect(myScreen, &temp, myDefPalette[active.color]); } // We can now make the current rectangles into the active rectangles @@ -263,7 +263,7 @@ void FrameBufferSoft::drawMediaSource() temp.h = active.height * screenMultiple; myRectList->add(&temp); - SDL_FillRect(myScreen, &temp, myDefTIAPalette[active.color]); + SDL_FillRect(myScreen, &temp, myDefPalette[active.color]); } break; // case 0 } @@ -296,8 +296,8 @@ void FrameBufferSoft::drawMediaSource() while(xstride--) { - buffer[pos++] = (uInt16) myAvgTIAPalette[v][w]; - buffer[pos++] = (uInt16) myAvgTIAPalette[v][w]; + buffer[pos++] = (uInt16) myAvgPalette[v][w]; + buffer[pos++] = (uInt16) myAvgPalette[v][w]; } } screenofsY += myPitch; @@ -335,14 +335,14 @@ void FrameBufferSoft::drawMediaSource() uInt8 r, g, b; if(SDL_BYTEORDER == SDL_BIG_ENDIAN) { - uInt32 pixel = myAvgTIAPalette[v][w]; + uInt32 pixel = myAvgPalette[v][w]; b = pixel & 0xff; g = (pixel & 0xff00) >> 8; r = (pixel & 0xff0000) >> 16; } else { - uInt32 pixel = myAvgTIAPalette[v][w]; + uInt32 pixel = myAvgPalette[v][w]; r = pixel & 0xff; g = (pixel & 0xff00) >> 8; b = (pixel & 0xff0000) >> 16; @@ -389,8 +389,8 @@ void FrameBufferSoft::drawMediaSource() while(xstride--) { - buffer[pos++] = (uInt32) myAvgTIAPalette[v][w]; - buffer[pos++] = (uInt32) myAvgTIAPalette[v][w]; + buffer[pos++] = (uInt32) myAvgPalette[v][w]; + buffer[pos++] = (uInt32) myAvgPalette[v][w]; } } screenofsY += myPitch; @@ -487,7 +487,7 @@ void FrameBufferSoft::toggleFilter() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBufferSoft::hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color) +void FrameBufferSoft::hLine(uInt32 x, uInt32 y, uInt32 x2, int color) { SDL_Rect tmp; @@ -496,11 +496,11 @@ void FrameBufferSoft::hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color) tmp.y = y * theZoomLevel; tmp.w = (x2 - x + 1) * theZoomLevel; tmp.h = theZoomLevel; - SDL_FillRect(myScreen, &tmp, myGUIPalette[color]); + SDL_FillRect(myScreen, &tmp, myDefPalette[color]); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBufferSoft::vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color) +void FrameBufferSoft::vLine(uInt32 x, uInt32 y, uInt32 y2, int color) { SDL_Rect tmp; @@ -509,12 +509,12 @@ void FrameBufferSoft::vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color) tmp.y = y * theZoomLevel; tmp.w = theZoomLevel; tmp.h = (y2 - y + 1) * theZoomLevel; - SDL_FillRect(myScreen, &tmp, myGUIPalette[color]); + SDL_FillRect(myScreen, &tmp, myDefPalette[color]); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferSoft::fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color) + int color) { SDL_Rect tmp; @@ -523,12 +523,12 @@ void FrameBufferSoft::fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, tmp.y = y * theZoomLevel; tmp.w = w * theZoomLevel; tmp.h = h * theZoomLevel; - SDL_FillRect(myScreen, &tmp, myGUIPalette[color]); + SDL_FillRect(myScreen, &tmp, myDefPalette[color]); } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferSoft::drawChar(const GUI::Font* FONT, uInt8 chr, - uInt32 xorig, uInt32 yorig, OverlayColor color) + uInt32 xorig, uInt32 yorig, int color) { GUI::Font* font = (GUI::Font*)FONT; const FontDesc& desc = font->desc(); @@ -559,7 +559,7 @@ void FrameBufferSoft::drawChar(const GUI::Font* FONT, uInt8 chr, rect.x = (x + xorig) * theZoomLevel; rect.y = (y + yorig) * theZoomLevel; rect.w = rect.h = theZoomLevel; - SDL_FillRect(myScreen, &rect, myGUIPalette[color]); + SDL_FillRect(myScreen, &rect, myDefPalette[color]); } } } @@ -567,7 +567,7 @@ void FrameBufferSoft::drawChar(const GUI::Font* FONT, uInt8 chr, // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBufferSoft::drawBitmap(uInt32* bitmap, Int32 xorig, Int32 yorig, - OverlayColor color, Int32 h) + int color, Int32 h) { SDL_Rect rect; for(int y = 0; y < h; y++) @@ -581,7 +581,7 @@ void FrameBufferSoft::drawBitmap(uInt32* bitmap, Int32 xorig, Int32 yorig, rect.x = (x + xorig) * theZoomLevel; rect.y = (y + yorig) * theZoomLevel; rect.w = rect.h = theZoomLevel; - SDL_FillRect(myScreen, &rect, myGUIPalette[color]); + SDL_FillRect(myScreen, &rect, myDefPalette[color]); } } } diff --git a/stella/src/common/FrameBufferSoft.hxx b/stella/src/common/FrameBufferSoft.hxx index eb3a22432..30543b4b0 100644 --- a/stella/src/common/FrameBufferSoft.hxx +++ b/stella/src/common/FrameBufferSoft.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: FrameBufferSoft.hxx,v 1.33 2006-02-15 03:22:34 azaballa Exp $ +// $Id: FrameBufferSoft.hxx,v 1.34 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef FRAMEBUFFER_SOFT_HXX @@ -35,7 +35,7 @@ class RectList; This class implements an SDL software framebuffer. @author Stephen Anthony - @version $Id: FrameBufferSoft.hxx,v 1.33 2006-02-15 03:22:34 azaballa Exp $ + @version $Id: FrameBufferSoft.hxx,v 1.34 2006-03-25 00:34:17 stephena Exp $ */ class FrameBufferSoft : public FrameBuffer { @@ -123,7 +123,7 @@ class FrameBufferSoft : public FrameBuffer @param x2 The second x coordinate @param color The color of the line */ - virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color); + virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, int color); /** This method is called to draw a vertical line. @@ -133,7 +133,7 @@ class FrameBufferSoft : public FrameBuffer @param y2 The second y coordinate @param color The color of the line */ - virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color); + virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, int color); /** This method is called to draw a filled rectangle. @@ -145,7 +145,7 @@ class FrameBufferSoft : public FrameBuffer @param color The color of the area */ virtual void fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color); + int color); /** This method is called to draw the specified character. @@ -157,7 +157,7 @@ class FrameBufferSoft : public FrameBuffer @param color The color of the character */ virtual void drawChar(const GUI::Font* font, uInt8 c, uInt32 x, uInt32 y, - OverlayColor color); + int color); /** This method is called to draw the bitmap image. @@ -168,7 +168,7 @@ class FrameBufferSoft : public FrameBuffer @param color The color of the character @param h The height of the data image */ - virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, OverlayColor color, + virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, int color, Int32 h = 8); /** diff --git a/stella/src/debugger/gui/ColorWidget.cxx b/stella/src/debugger/gui/ColorWidget.cxx index e29478cab..b67c795ed 100644 --- a/stella/src/debugger/gui/ColorWidget.cxx +++ b/stella/src/debugger/gui/ColorWidget.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: ColorWidget.cxx,v 1.3 2006-02-22 17:38:04 stephena Exp $ +// $Id: ColorWidget.cxx,v 1.4 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -72,5 +72,5 @@ void ColorWidget::drawWidget(bool hilite) fb.vLine(_x + _w - 1, _y, _y +_h - 1, kShadowColor); // Show the currently selected color - fb.fillRect(_x+1, _y+1, _w-2, _h-1, (OverlayColor) _color); + fb.fillRect(_x+1, _y+1, _w-2, _h-1, _color); } diff --git a/stella/src/debugger/gui/DataGridWidget.cxx b/stella/src/debugger/gui/DataGridWidget.cxx index e86706568..6c76c099e 100644 --- a/stella/src/debugger/gui/DataGridWidget.cxx +++ b/stella/src/debugger/gui/DataGridWidget.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: DataGridWidget.cxx,v 1.6 2006-02-22 17:38:04 stephena Exp $ +// $Id: DataGridWidget.cxx,v 1.7 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -520,8 +520,7 @@ void DataGridWidget::drawWidget(bool hilite) buffer = _valueStringList[pos]; deltax = 0; - OverlayColor color = kTextColor; - + int color = kTextColor; if(_changedList[pos]) { fb.fillRect(x - 3, y - 1, _colWidth-1, _rowHeight-1, kTextColorEm); diff --git a/stella/src/debugger/gui/PromptWidget.cxx b/stella/src/debugger/gui/PromptWidget.cxx index 3d9a563cd..79b3f71e2 100644 --- a/stella/src/debugger/gui/PromptWidget.cxx +++ b/stella/src/debugger/gui/PromptWidget.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: PromptWidget.cxx,v 1.7 2006-02-22 17:38:04 stephena Exp $ +// $Id: PromptWidget.cxx,v 1.8 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -102,7 +102,7 @@ PromptWidget::~PromptWidget() void PromptWidget::drawWidget(bool hilite) { //cerr << "PromptWidget::drawWidget\n"; - OverlayColor fgcolor, bgcolor; + int fgcolor, bgcolor; FrameBuffer& fb = _boss->instance()->frameBuffer(); @@ -118,10 +118,10 @@ void PromptWidget::drawWidget(bool hilite) if(c & (1 << 17)) { // inverse video flag fgcolor = bgColor; - bgcolor = (OverlayColor)((c & 0x1ffff) >> 8); + bgcolor = (c & 0x1ffff) >> 8; fb.fillRect(x, y, _kConsoleCharWidth, _kConsoleCharHeight, bgcolor); } else { - fgcolor = (OverlayColor)(c >> 8); + fgcolor = c >> 8; bgcolor = bgColor; } fb.drawChar(&instance()->consoleFont(), c & 0x7f, x, y, fgcolor); @@ -792,10 +792,10 @@ void PromptWidget::putcharIntern(int c) // don't print or advance cursor // there are only 128 TIA colors, but // OverlayColor contains 256 of them - textColor = (OverlayColor) ((c & 0x7f) << 1); + textColor = (c & 0x7f) << 1; } else if(c < ' ') { // More colors (the regular GUI ones) - textColor = (OverlayColor) (c + 0x100); + textColor = c + 0x100; } else if(c == 0x7f) { // toggle inverse video (DEL char) _inverse = !_inverse; diff --git a/stella/src/debugger/gui/PromptWidget.hxx b/stella/src/debugger/gui/PromptWidget.hxx index edaae09fa..a700f7c43 100644 --- a/stella/src/debugger/gui/PromptWidget.hxx +++ b/stella/src/debugger/gui/PromptWidget.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: PromptWidget.hxx,v 1.4 2006-02-22 17:38:04 stephena Exp $ +// $Id: PromptWidget.hxx,v 1.5 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -108,10 +108,10 @@ class PromptWidget : public Widget, public CommandSender int _kConsoleCharWidth, _kConsoleCharHeight, _kConsoleLineHeight; - OverlayColor defaultTextColor; - OverlayColor defaultBGColor; - OverlayColor textColor; - OverlayColor bgColor; + int defaultTextColor; + int defaultBGColor; + int textColor; + int bgColor; bool _inverse; bool _makeDirty; bool _firstTime; diff --git a/stella/src/debugger/gui/TiaWidget.cxx b/stella/src/debugger/gui/TiaWidget.cxx index 8d033da94..d7d406112 100644 --- a/stella/src/debugger/gui/TiaWidget.cxx +++ b/stella/src/debugger/gui/TiaWidget.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: TiaWidget.cxx,v 1.2 2006-02-22 17:38:04 stephena Exp $ +// $Id: TiaWidget.cxx,v 1.3 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -980,7 +980,7 @@ void TiaWidget::fillGrid() // P0 register info //////////////////////////// // grP0 - myGRP0->setColor((OverlayColor)state.coluRegs[0]); + myGRP0->setColor(state.coluRegs[0]); myGRP0->setIntState(state.gr[P0], false); // posP0 @@ -1001,7 +1001,7 @@ void TiaWidget::fillGrid() // P1 register info //////////////////////////// // grP1 - myGRP1->setColor((OverlayColor)state.coluRegs[1]); + myGRP1->setColor(state.coluRegs[1]); myGRP1->setIntState(state.gr[P1], false); // posP1 @@ -1076,15 +1076,15 @@ void TiaWidget::fillGrid() // PF register info //////////////////////////// // PF0 - myPF[0]->setColor((OverlayColor)state.coluRegs[2]); + myPF[0]->setColor(state.coluRegs[2]); myPF[0]->setIntState(state.pf[0], true); // reverse bit order // PF1 - myPF[1]->setColor((OverlayColor)state.coluRegs[2]); + myPF[1]->setColor(state.coluRegs[2]); myPF[1]->setIntState(state.pf[1], false); // PF2 - myPF[2]->setColor((OverlayColor)state.coluRegs[2]); + myPF[2]->setColor(state.coluRegs[2]); myPF[2]->setIntState(state.pf[2], true); // reverse bit order // Reflect diff --git a/stella/src/debugger/gui/TiaZoomWidget.cxx b/stella/src/debugger/gui/TiaZoomWidget.cxx index 4c2401e1e..8f5980827 100644 --- a/stella/src/debugger/gui/TiaZoomWidget.cxx +++ b/stella/src/debugger/gui/TiaZoomWidget.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: TiaZoomWidget.cxx,v 1.6 2006-02-22 17:38:04 stephena Exp $ +// $Id: TiaZoomWidget.cxx,v 1.7 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -209,7 +209,7 @@ void TiaZoomWidget::drawWidget(bool hilite) // Draw the zoomed image // This probably isn't as efficient as it can be, but it's a small area // and I don't have time to make it faster :) - uInt8* currentFrame = instance()->console().mediaSource().currentFrameBuffer(); + uInt8* currentFrame = instance()->console().mediaSource().currentFrameBuffer(); const int pitch = instance()->console().mediaSource().width(), width = myZoomLevel << 1, height = myZoomLevel; @@ -219,15 +219,8 @@ void TiaZoomWidget::drawWidget(bool hilite) { for(x = myXoff, col = 0; x < myNumCols+myXoff; ++x, col += width) { - SDL_Rect temp; - - temp.x = _x + col; - temp.y = _y + row; - temp.w = width; - temp.h = height; - fb.fillRect(_x + col + 2, _y + row + 2, width, height, - (OverlayColor)currentFrame[y*pitch + x]); + currentFrame[y*pitch + x]); } } } diff --git a/stella/src/debugger/gui/TogglePixelWidget.hxx b/stella/src/debugger/gui/TogglePixelWidget.hxx index 1e466fa27..ea2af19ad 100644 --- a/stella/src/debugger/gui/TogglePixelWidget.hxx +++ b/stella/src/debugger/gui/TogglePixelWidget.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: TogglePixelWidget.hxx,v 1.2 2006-02-22 17:38:04 stephena Exp $ +// $Id: TogglePixelWidget.hxx,v 1.3 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -33,7 +33,7 @@ class TogglePixelWidget : public ToggleWidget int x, int y, int cols, int rows); virtual ~TogglePixelWidget(); - void setColor(OverlayColor color) { _pixelColor = color; } + void setColor(int color) { _pixelColor = color; } void setState(const BoolArray& state); void setIntState(int value, bool swap); @@ -43,7 +43,7 @@ class TogglePixelWidget : public ToggleWidget void drawWidget(bool hilite); private: - OverlayColor _pixelColor; + int _pixelColor; unsigned int _numBits; bool _swapBits; }; diff --git a/stella/src/emucore/Console.cxx b/stella/src/emucore/Console.cxx index 75c123490..b00643243 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.87 2006-03-19 18:17:48 stephena Exp $ +// $Id: Console.cxx,v 1.88 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -475,14 +475,14 @@ void Console::fry() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void Console::changeXStart(const uInt32 direction) +void Console::changeXStart(int direction) { Int32 xstart = atoi(myProperties.get(Display_XStart).c_str()); uInt32 width = atoi(myProperties.get(Display_Width).c_str()); ostringstream strval; string message; - if(direction == 1) // increase XStart + if(direction == +1) // increase XStart { xstart += 4; if(xstart > 80) @@ -496,7 +496,7 @@ void Console::changeXStart(const uInt32 direction) return; } } - else if(direction == 0) // decrease XStart + else if(direction == -1) // decrease XStart { xstart -= 4; if(xstart < 0) @@ -505,6 +505,8 @@ void Console::changeXStart(const uInt32 direction) return; } } + else + return; strval << xstart; myProperties.set(Display_XStart, strval.str()); @@ -517,13 +519,13 @@ void Console::changeXStart(const uInt32 direction) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void Console::changeYStart(const uInt32 direction) +void Console::changeYStart(int direction) { Int32 ystart = atoi(myProperties.get(Display_YStart).c_str()); ostringstream strval; string message; - if(direction == 1) // increase YStart + if(direction == +1) // increase YStart { ystart++; if(ystart > 64) @@ -532,7 +534,7 @@ void Console::changeYStart(const uInt32 direction) return; } } - else if(direction == 0) // decrease YStart + else if(direction == -1) // decrease YStart { ystart--; if(ystart < 0) @@ -541,6 +543,8 @@ void Console::changeYStart(const uInt32 direction) return; } } + else + return; strval << ystart; myProperties.set(Display_YStart, strval.str()); @@ -553,14 +557,14 @@ void Console::changeYStart(const uInt32 direction) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void Console::changeWidth(const uInt32 direction) +void Console::changeWidth(int direction) { uInt32 xstart = atoi(myProperties.get(Display_XStart).c_str()); Int32 width = atoi(myProperties.get(Display_Width).c_str()); ostringstream strval; string message; - if(direction == 1) // increase Width + if(direction == +1) // increase Width { width += 4; if((width > 160) || ((width % 4) != 0)) @@ -574,7 +578,7 @@ void Console::changeWidth(const uInt32 direction) return; } } - else if(direction == 0) // decrease Width + else if(direction == -1) // decrease Width { width -= 4; if(width < 80) @@ -583,6 +587,8 @@ void Console::changeWidth(const uInt32 direction) return; } } + else + return; strval << width; myProperties.set(Display_Width, strval.str()); @@ -595,13 +601,13 @@ void Console::changeWidth(const uInt32 direction) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void Console::changeHeight(const uInt32 direction) +void Console::changeHeight(int direction) { Int32 height = atoi(myProperties.get(Display_Height).c_str()); ostringstream strval; string message; - if(direction == 1) // increase Height + if(direction == +1) // increase Height { height++; if(height > 256) @@ -610,7 +616,7 @@ void Console::changeHeight(const uInt32 direction) return; } } - else if(direction == 0) // decrease Height + else if(direction == -1) // decrease Height { height--; if(height < 100) @@ -619,6 +625,8 @@ void Console::changeHeight(const uInt32 direction) return; } } + else + return; strval << height; myProperties.set(Display_Height, strval.str()); diff --git a/stella/src/emucore/Console.hxx b/stella/src/emucore/Console.hxx index 88fdc3ca2..4c3d4c636 100644 --- a/stella/src/emucore/Console.hxx +++ b/stella/src/emucore/Console.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: Console.hxx,v 1.42 2006-01-11 14:13:19 stephena Exp $ +// $Id: Console.hxx,v 1.43 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef CONSOLE_HXX @@ -37,7 +37,7 @@ class System; This class represents the entire game console. @author Bradford W. Mott - @version $Id: Console.hxx,v 1.42 2006-01-11 14:13:19 stephena Exp $ + @version $Id: Console.hxx,v 1.43 2006-03-25 00:34:17 stephena Exp $ */ class Console { @@ -196,33 +196,33 @@ class Console Change the "Display.XStart" variable. Currently, a system reset is issued after the change. GUI's may need to resize their viewports. - @param direction A 1 indicates increase, 0 indicates decrease. + @param direction +1 indicates increase, -1 indicates decrease. */ - void changeXStart(const uInt32 direction); + void changeXStart(int direction); /** Change the "Display.XStart" variable. Currently, a system reset is issued after the change. GUI's may need to resize their viewports. - @param direction A 1 indicates increase, 0 indicates decrease. + @param direction +1 indicates increase, -1 indicates decrease. */ - void changeYStart(const uInt32 direction); + void changeYStart(int direction); /** Change the "Display.XStart" variable. Currently, a system reset is issued after the change. GUI's may need to resize their viewports. - @param direction A 1 indicates increase, 0 indicates decrease. + @param direction +1 indicates increase, -1 indicates decrease. */ - void changeWidth(const uInt32 direction); + void changeWidth(int direction); /** Change the "Display.XStart" variable. Currently, a system reset is issued after the change. GUI's may need to resize their viewports. - @param direction A 1 indicates increase, 0 indicates decrease. + @param direction +1 indicates increase, -1 indicates decrease. */ - void changeHeight(const uInt32 direction); + void changeHeight(int direction); /** Toggles the TIA bit specified in the method name. diff --git a/stella/src/emucore/EventHandler.cxx b/stella/src/emucore/EventHandler.cxx index 4361167cb..9993c8a8d 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.156 2006-03-24 19:59:52 stephena Exp $ +// $Id: EventHandler.cxx,v 1.157 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -218,10 +218,9 @@ void EventHandler::refreshDisplay(bool forceUpdate) // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void EventHandler::pause(bool status) { -cerr << "EventHandler::pause(): " << status << endl; myPauseFlag = status; - myOSystem->frameBuffer().handlePause(myPauseFlag); + myOSystem->frameBuffer().pause(myPauseFlag); myOSystem->sound().mute(myPauseFlag); } @@ -392,11 +391,11 @@ void EventHandler::poll(uInt32 time) { #ifndef MAC_OSX case SDLK_EQUALS: - myOSystem->frameBuffer().resize(NextSize); + myOSystem->frameBuffer().resize(+1); break; case SDLK_MINUS: - myOSystem->frameBuffer().resize(PreviousSize); + myOSystem->frameBuffer().resize(-1); break; case SDLK_RETURN: @@ -422,19 +421,19 @@ void EventHandler::poll(uInt32 time) break; case SDLK_END: // Alt-End increases XStart - myOSystem->console().changeXStart(1); + myOSystem->console().changeXStart(+1); break; case SDLK_HOME: // Alt-Home decreases XStart - myOSystem->console().changeXStart(0); + myOSystem->console().changeXStart(-1); break; case SDLK_PAGEUP: // Alt-PageUp increases YStart - myOSystem->console().changeYStart(1); + myOSystem->console().changeYStart(+1); break; case SDLK_PAGEDOWN: // Alt-PageDown decreases YStart - myOSystem->console().changeYStart(0); + myOSystem->console().changeYStart(-1); break; case SDLK_z: @@ -526,11 +525,11 @@ void EventHandler::poll(uInt32 time) break; case SDLK_EQUALS: - myOSystem->frameBuffer().resize(NextSize); + myOSystem->frameBuffer().resize(+1); break; case SDLK_MINUS: - myOSystem->frameBuffer().resize(PreviousSize); + myOSystem->frameBuffer().resize(-1); break; case SDLK_RETURN: @@ -582,19 +581,19 @@ void EventHandler::poll(uInt32 time) break; case SDLK_END: // Ctrl-End increases Width - myOSystem->console().changeWidth(1); + myOSystem->console().changeWidth(+1); break; case SDLK_HOME: // Ctrl-Home decreases Width - myOSystem->console().changeWidth(0); + myOSystem->console().changeWidth(-1); break; case SDLK_PAGEUP: // Ctrl-PageUp increases Height - myOSystem->console().changeHeight(1); + myOSystem->console().changeHeight(+1); break; case SDLK_PAGEDOWN: // Ctrl-PageDown decreases Height - myOSystem->console().changeHeight(0); + myOSystem->console().changeHeight(-1); break; case SDLK_s: // Ctrl-s saves properties to a file diff --git a/stella/src/emucore/EventHandler.hxx b/stella/src/emucore/EventHandler.hxx index 35d758db0..457d62363 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.82 2006-03-24 19:59:52 stephena Exp $ +// $Id: EventHandler.hxx,v 1.83 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef EVENTHANDLER_HXX @@ -107,7 +107,7 @@ struct JoyMouse { mapping can take place. @author Stephen Anthony - @version $Id: EventHandler.hxx,v 1.82 2006-03-24 19:59:52 stephena Exp $ + @version $Id: EventHandler.hxx,v 1.83 2006-03-25 00:34:17 stephena Exp $ */ class EventHandler { @@ -232,7 +232,7 @@ class EventHandler /** This method indicates whether a quit event has been received. */ - inline bool isQuit() { return myQuitFlag; } + inline bool doQuit() { return myQuitFlag; } /** Save state to explicit state number (debugger uses this) diff --git a/stella/src/emucore/FrameBuffer.cxx b/stella/src/emucore/FrameBuffer.cxx index d77cb3267..9a5a5da6f 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.84 2006-03-24 19:59:52 stephena Exp $ +// $Id: FrameBuffer.cxx,v 1.85 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -51,8 +51,7 @@ FrameBuffer::FrameBuffer(OSystem* osystem) theRedrawTIAIndicator(true), myUsePhosphor(false), myPhosphorBlend(77), - myFrameRate(0), - myPauseStatus(false) + myFrameRate(0) { myBaseDim.x = myBaseDim.y = myBaseDim.w = myBaseDim.h = 0; myImageDim = myScreenDim = myDesktopDim = myBaseDim; @@ -122,18 +121,8 @@ void FrameBuffer::initialize(const string& title, uInt32 width, uInt32 height, myOSystem->eventHandler().refreshDisplay(); // Set palette for GUI - for(int i = 0; i < kNumColors; i++) - myGUIPalette[i] = mapRGB(ourGUIColors[i][0], ourGUIColors[i][1], ourGUIColors[i][2]); - - // Set emulation palette if a console exists - // Used when entering/exiting debugger -#ifdef DEVELOPER_SUPPORT - if(&myOSystem->console()) - { - enablePhosphor(myOSystem->console().properties().get(Display_Phosphor) == "YES"); - setPalette(myOSystem->console().mediaSource().palette()); - } -#endif + for(int i = 0; i < kNumColors-256; i++) + myDefPalette[i+256] = mapRGB(ourGUIColors[i][0], ourGUIColors[i][1], ourGUIColors[i][2]); // Enable unicode so we can see translated key events // (lowercase vs. uppercase characters) @@ -161,7 +150,7 @@ void FrameBuffer::update() bool mediaSourceChanged = false; // Draw changes to the mediasource - if(!myPauseStatus) + if(!myOSystem->eventHandler().isPaused()) { myOSystem->console().mediaSource().update(); if(myOSystem->eventHandler().frying()) @@ -174,7 +163,7 @@ void FrameBuffer::update() drawMediaSource(); // Draw any pending messages - if(myMessage.counter > 0 && !myPauseStatus) + if(myMessage.counter > 0 && !myOSystem->eventHandler().isPaused()) drawMessage(); break; // S_EMULATE @@ -199,7 +188,7 @@ void FrameBuffer::update() myOSystem->commandMenu().draw(); // Draw any pending messages - if(myMessage.counter > 0 && !myPauseStatus) + if(myMessage.counter > 0 && !myOSystem->eventHandler().isPaused()) drawMessage(); break; // S_CMDMENU } @@ -237,7 +226,7 @@ void FrameBuffer::update() // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBuffer::showMessage(const string& message, MessagePosition position, - OverlayColor color) + int color) { // Erase old messages on the screen if(myMessage.counter > 0) @@ -333,12 +322,8 @@ inline void FrameBuffer::drawMessage() } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBuffer::handlePause(bool status) +void FrameBuffer::pause(bool status) { -cerr << "FrameBuffer::handlePause(): " << status << endl; - myPauseStatus = status; - - // Enable the paused palette if(&myOSystem->console()) { enablePhosphor(myOSystem->console().properties().get(Display_Phosphor) == "YES"); @@ -349,18 +334,16 @@ cerr << "FrameBuffer::handlePause(): " << status << endl; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBuffer::setPalette(const uInt32* palette) { - // Account for pause mode - float shade = myPauseStatus ? 0.65 : 1.0; int i, j; // Set palette for normal fill for(i = 0; i < 256; ++i) { - Uint8 r = (Uint8) (((palette[i] & 0x00ff0000) >> 16) * shade); - Uint8 g = (Uint8) (((palette[i] & 0x0000ff00) >> 8) * shade); - Uint8 b = (Uint8) ((palette[i] & 0x000000ff) * shade); + Uint8 r = (Uint8) ((palette[i] & 0x00ff0000) >> 16); + Uint8 g = (Uint8) ((palette[i] & 0x0000ff00) >> 8); + Uint8 b = (Uint8) (palette[i] & 0x000000ff); - myDefTIAPalette[i] = mapRGB(r, g, b); + myDefPalette[i] = mapRGB(r, g, b); } // Set palette for phosphor effect @@ -375,11 +358,11 @@ void FrameBuffer::setPalette(const uInt32* palette) uInt8 gj = (uInt8) ((palette[j] & 0x0000ff00) >> 8); uInt8 bj = (uInt8) (palette[j] & 0x000000ff); - Uint8 r = (Uint8) (getPhosphor(ri, rj) * shade); - Uint8 g = (Uint8) (getPhosphor(gi, gj) * shade); - Uint8 b = (Uint8) (getPhosphor(bi, bj) * shade); + Uint8 r = (Uint8) getPhosphor(ri, rj); + Uint8 g = (Uint8) getPhosphor(gi, gj); + Uint8 b = (Uint8) getPhosphor(bi, bj); - myAvgTIAPalette[i][j] = mapRGB(r, g, b); + myAvgPalette[i][j] = mapRGB(r, g, b); } } @@ -412,11 +395,11 @@ void FrameBuffer::setFullscreen(bool enable) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -void FrameBuffer::resize(Size size, Int8 zoom) +void FrameBuffer::resize(int size, Int8 zoom) { switch(size) { - case PreviousSize: // decrease size + case -1: // decrease size if(myOSystem->settings().getBool("fullscreen")) return; if(theZoomLevel == 1) @@ -425,7 +408,7 @@ void FrameBuffer::resize(Size size, Int8 zoom) theZoomLevel--; break; - case NextSize: // increase size + case +1: // increase size if(myOSystem->settings().getBool("fullscreen")) return; if(theZoomLevel == theMaxZoomLevel) @@ -434,7 +417,7 @@ void FrameBuffer::resize(Size size, Int8 zoom) theZoomLevel++; break; - case GivenSize: // use 'zoom' quantity + case 0: // use 'zoom' quantity if(zoom < 1) theZoomLevel = 1; else if((uInt32)zoom > theMaxZoomLevel) @@ -598,7 +581,7 @@ void FrameBuffer::setWindowIcon() // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBuffer::box(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor colorA, OverlayColor colorB) + int colorA, int colorB) { hLine(x + 1, y, x + w - 2, colorA); hLine(x, y + 1, x + w - 1, colorA); @@ -613,7 +596,7 @@ void FrameBuffer::box(uInt32 x, uInt32 y, uInt32 w, uInt32 h, // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBuffer::frameRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color, FrameStyle style) + int color, FrameStyle style) { switch(style) { @@ -650,7 +633,7 @@ void FrameBuffer::frameRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void FrameBuffer::drawString(const GUI::Font* font, const string& s, int x, int y, int w, - OverlayColor color, TextAlignment align, + int color, TextAlignment align, int deltax, bool useEllipsis) { const int leftX = x, rightX = x + w; @@ -733,7 +716,7 @@ uInt8 FrameBuffer::getPhosphor(uInt8 c1, uInt8 c2) } // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -const uInt8 FrameBuffer::ourGUIColors[kNumColors][3] = { +const uInt8 FrameBuffer::ourGUIColors[kNumColors-256][3] = { { 104, 104, 104 }, // kColor { 0, 0, 0 }, // kBGColor { 64, 64, 64 }, // kShadowColor diff --git a/stella/src/emucore/FrameBuffer.hxx b/stella/src/emucore/FrameBuffer.hxx index aefde82a9..d6ccf0014 100644 --- a/stella/src/emucore/FrameBuffer.hxx +++ b/stella/src/emucore/FrameBuffer.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: FrameBuffer.hxx,v 1.68 2006-03-24 19:59:52 stephena Exp $ +// $Id: FrameBuffer.hxx,v 1.69 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef FRAMEBUFFER_HXX @@ -62,6 +62,18 @@ enum MessagePosition { kBottomRight }; +// Colors indices to use for the various GUI elements +enum { + kColor = 256, + kBGColor, + kShadowColor, + kHiliteColor, + kTextColor, + kTextColorHi, + kTextColorEm, + kNumColors +}; + /** This class encapsulates the MediaSource and is the basis for the video display in Stella. All graphics ports should derive from this class for @@ -70,7 +82,7 @@ enum MessagePosition { All GUI elements (ala ScummVM) are drawn here as well. @author Stephen Anthony - @version $Id: FrameBuffer.hxx,v 1.68 2006-03-24 19:59:52 stephena Exp $ + @version $Id: FrameBuffer.hxx,v 1.69 2006-03-25 00:34:17 stephena Exp $ */ class FrameBuffer { @@ -112,7 +124,7 @@ class FrameBuffer */ void showMessage(const string& message, MessagePosition position = kBottomCenter, - OverlayColor color = kTextColor); + int color = kTextColor); /** Hides any onscreen messages. @@ -154,7 +166,7 @@ class FrameBuffer @param status Whether pause has been enabled or disabled */ - void handlePause(bool status); + void pause(bool status); /** Indicates that the TIA area is dirty, and certain areas need @@ -178,14 +190,14 @@ class FrameBuffer /** This method is called when the user wants to resize the window. - Size = 'PreviousSize' means window should decrease in size - Size = 'NextSize' means window should increase in size - Size = 'GivenSize' means window should be resized to quantity given in 'zoom' + Size = -1 means window should decrease in size + Size = 0 means window should be resized to quantity given in 'zoom' + Size = +1 means window should increase in size @param size Described above @param zoom The zoom level to use if size is set to 'sGiven' */ - void resize(Size size, Int8 zoom = 0); + void resize(int size, Int8 zoom = 0); /** Sets the state of the cursor (hidden or grabbed) based on the @@ -243,7 +255,7 @@ class FrameBuffer @param colorB Darker color for inside line. */ void box(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor colorA, OverlayColor colorB); + int colorA, int colorB); /** This method should be called to draw a framed rectangle. @@ -256,7 +268,7 @@ class FrameBuffer @param color The color of the surrounding frame */ void frameRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color, FrameStyle style = kSolidLine); + int color, FrameStyle style = kSolidLine); /** This method should be called to draw the specified string. @@ -273,7 +285,7 @@ class FrameBuffer @param useEllipsis Whether to use '...' when the string is too long */ void drawString(const GUI::Font* font, const string& str, int x, int y, int w, - OverlayColor color, TextAlignment align = kTextAlignLeft, + int color, TextAlignment align = kTextAlignLeft, int deltax = 0, bool useEllipsis = true); @@ -349,7 +361,7 @@ class FrameBuffer @param x2 The second x coordinate @param color The color of the line */ - virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, OverlayColor color) = 0; + virtual void hLine(uInt32 x, uInt32 y, uInt32 x2, int color) = 0; /** This method should be called to draw a vertical line. @@ -359,7 +371,7 @@ class FrameBuffer @param y2 The second y coordinate @param color The color of the line */ - virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, OverlayColor color) = 0; + virtual void vLine(uInt32 x, uInt32 y, uInt32 y2, int color) = 0; /** This method should be called to draw a filled rectangle. @@ -371,7 +383,7 @@ class FrameBuffer @param color The color of the area */ virtual void fillRect(uInt32 x, uInt32 y, uInt32 w, uInt32 h, - OverlayColor color) = 0; + int color) = 0; /** This method should be called to draw the specified character. @@ -383,7 +395,7 @@ class FrameBuffer @param color The color of the character */ virtual void drawChar(const GUI::Font* font, uInt8 c, uInt32 x, uInt32 y, - OverlayColor color) = 0; + int color) = 0; /** This method should be called to draw the bitmap image. @@ -394,7 +406,7 @@ class FrameBuffer @param color The color of the character @param h The height of the data image */ - virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, OverlayColor color, + virtual void drawBitmap(uInt32* bitmap, Int32 x, Int32 y, int color, Int32 h = 8) = 0; /** @@ -453,11 +465,8 @@ class FrameBuffer uInt32 mySDLFlags; // TIA palettes for normal and phosphor modes - Uint32 myDefTIAPalette[256]; - Uint32 myAvgTIAPalette[256][256]; - - // GUI palette, derived from 'ourGUIColors' - Uint32 myGUIPalette[kNumColors]; + Uint32 myDefPalette[256+kNumColors]; + Uint32 myAvgPalette[256][256]; // Indicates the current zoom level of the SDL screen uInt32 theZoomLevel; @@ -481,7 +490,7 @@ class FrameBuffer int myPhosphorBlend; // Table of RGB values for GUI elements - static const uInt8 ourGUIColors[kNumColors][3]; + static const uInt8 ourGUIColors[kNumColors-256][3]; private: /** @@ -508,15 +517,12 @@ class FrameBuffer // Indicates the current framerate of the system uInt32 myFrameRate; - // Indicates the current pause status - bool myPauseStatus; - // Used for onscreen messages struct Message { string text; int counter; int x, y, w, h; - OverlayColor color; + uInt32 color; }; Message myMessage; }; diff --git a/stella/src/emucore/OSystem.cxx b/stella/src/emucore/OSystem.cxx index fa7b33c72..1b01a280e 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.66 2006-03-24 19:59:52 stephena Exp $ +// $Id: OSystem.cxx,v 1.67 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -232,9 +232,15 @@ void OSystem::toggleFrameBuffer() myEventHandler->handleEvent(Event::Pause, 0); + // Remember the pause state + bool pause = myEventHandler->isPaused(); + // Update the settings and create the framebuffer mySettings->setString("video", video); createFrameBuffer(true); // show onscreen message + + // And re-pause the system + myEventHandler->pause(pause); #endif } diff --git a/stella/src/emucore/OSystem.hxx b/stella/src/emucore/OSystem.hxx index 345c9682d..7b99c926e 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.40 2006-03-17 19:44:18 stephena Exp $ +// $Id: OSystem.hxx,v 1.41 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #ifndef OSYSTEM_HXX @@ -44,7 +44,7 @@ class CheatManager; other objects belong. @author Stephen Anthony - @version $Id: OSystem.hxx,v 1.40 2006-03-17 19:44:18 stephena Exp $ + @version $Id: OSystem.hxx,v 1.41 2006-03-25 00:34:17 stephena Exp $ */ class OSystem { @@ -91,63 +91,63 @@ class OSystem @return The event handler */ - EventHandler& eventHandler() const { return *myEventHandler; } + inline EventHandler& eventHandler() const { return *myEventHandler; } /** Get the frame buffer of the system @return The frame buffer */ - FrameBuffer& frameBuffer() const { return *myFrameBuffer; } + inline FrameBuffer& frameBuffer() const { return *myFrameBuffer; } /** Get the sound object of the system @return The sound object */ - Sound& sound() const { return *mySound; } + inline Sound& sound() const { return *mySound; } /** Get the settings object of the system @return The settings object */ - Settings& settings() const { return *mySettings; } + inline Settings& settings() const { return *mySettings; } /** Get the set of game properties for the system @return The properties set object */ - PropertiesSet& propSet() const { return *myPropSet; } + inline PropertiesSet& propSet() const { return *myPropSet; } /** Get the console of the system. @return The console object */ - Console& console(void) const { return *myConsole; } + inline Console& console(void) const { return *myConsole; } /** Get the settings menu of the system. @return The settings menu object */ - Menu& menu(void) const { return *myMenu; } + inline Menu& menu(void) const { return *myMenu; } /** Get the command menu of the system. @return The command menu object */ - CommandMenu& commandMenu(void) const { return *myCommandMenu; } + inline CommandMenu& commandMenu(void) const { return *myCommandMenu; } /** Get the ROM launcher of the system. @return The launcher object */ - Launcher& launcher(void) const { return *myLauncher; } + inline Launcher& launcher(void) const { return *myLauncher; } #ifdef DEVELOPER_SUPPORT /** @@ -155,7 +155,7 @@ class OSystem @return The debugger object */ - Debugger& debugger(void) const { return *myDebugger; } + inline Debugger& debugger(void) const { return *myDebugger; } #endif #ifdef CHEATCODE_SUPPORT @@ -164,7 +164,7 @@ class OSystem @return The cheatmanager object */ - CheatManager& cheat(void) const { return *myCheatManager; } + inline CheatManager& cheat(void) const { return *myCheatManager; } #endif /** diff --git a/stella/src/gui/AboutDialog.cxx b/stella/src/gui/AboutDialog.cxx index 9cf15580a..cec10f005 100644 --- a/stella/src/gui/AboutDialog.cxx +++ b/stella/src/gui/AboutDialog.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: AboutDialog.cxx,v 1.10 2006-02-22 17:38:04 stephena Exp $ +// $Id: AboutDialog.cxx,v 1.11 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -171,7 +171,7 @@ void AboutDialog::displayInfo() { const char *str = dscStr[i].c_str(); TextAlignment align = kTextAlignCenter; - OverlayColor color = kTextColor; + int color = kTextColor; while (str[0] == '\\') { diff --git a/stella/src/gui/EditableWidget.cxx b/stella/src/gui/EditableWidget.cxx index 516fdf5b1..50fff391a 100644 --- a/stella/src/gui/EditableWidget.cxx +++ b/stella/src/gui/EditableWidget.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: EditableWidget.cxx,v 1.16 2006-02-22 17:38:04 stephena Exp $ +// $Id: EditableWidget.cxx,v 1.17 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -170,7 +170,7 @@ void EditableWidget::drawCaret() GUI::Rect editRect = getEditRect(); - OverlayColor color = kTextColorHi; + int color = kTextColorHi; int x = editRect.left; int y = editRect.top; diff --git a/stella/src/gui/GuiUtils.hxx b/stella/src/gui/GuiUtils.hxx index d242a5b0c..dec4479a6 100644 --- a/stella/src/gui/GuiUtils.hxx +++ b/stella/src/gui/GuiUtils.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: GuiUtils.hxx,v 1.23 2006-03-24 19:59:52 stephena Exp $ +// $Id: GuiUtils.hxx,v 1.24 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -29,23 +29,11 @@ Probably not very neat, but at least it works ... @author Stephen Anthony - @version $Id: GuiUtils.hxx,v 1.23 2006-03-24 19:59:52 stephena Exp $ + @version $Id: GuiUtils.hxx,v 1.24 2006-03-25 00:34:17 stephena Exp $ */ #define kScrollBarWidth 9 -// Colors indices to use for the various GUI elements -enum OverlayColor { - kColor, - kBGColor, - kShadowColor, - kHiliteColor, - kTextColor, - kTextColorHi, - kTextColorEm, - kNumColors -}; - // The commands generated by various widgets enum { kOKCmd = 'OK ', @@ -60,13 +48,6 @@ enum { kRefreshAllCmd = 'REFA' }; -// Indicates a three-way possibility when changing the size of some quantity -enum Size { - PreviousSize, - GivenSize, - NextSize -}; - static const string EmptyString(""); template inline void SWAP(T &a, T &b) { T tmp = a; a = b; b = tmp; } diff --git a/stella/src/gui/ScrollBarWidget.cxx b/stella/src/gui/ScrollBarWidget.cxx index 7e8f2745a..a7cabf41e 100644 --- a/stella/src/gui/ScrollBarWidget.cxx +++ b/stella/src/gui/ScrollBarWidget.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: ScrollBarWidget.cxx,v 1.13 2006-02-22 17:38:04 stephena Exp $ +// $Id: ScrollBarWidget.cxx,v 1.14 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -277,7 +277,7 @@ void ScrollBarWidget::drawWidget(bool hilite) (hilite && _part == kSliderPart) ? kTextColorHi : kTextColor); fb.frameRect(_x, _y + _sliderPos, _w, _sliderHeight, kColor); int y = _y + _sliderPos + _sliderHeight / 2; - OverlayColor color = (hilite && _part == kSliderPart) ? kColor : kShadowColor; + int color = (hilite && _part == kSliderPart) ? kColor : kShadowColor; fb.hLine(_x + 2, y - 2, _x + _w - 3, color); fb.hLine(_x + 2, y, _x + _w - 3, color); fb.hLine(_x + 2, y + 2, _x + _w - 3, color); diff --git a/stella/src/gui/StringListWidget.cxx b/stella/src/gui/StringListWidget.cxx index 702a9c9c5..5291607f8 100644 --- a/stella/src/gui/StringListWidget.cxx +++ b/stella/src/gui/StringListWidget.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: StringListWidget.cxx,v 1.5 2006-02-22 17:38:04 stephena Exp $ +// $Id: StringListWidget.cxx,v 1.6 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -61,8 +61,8 @@ void StringListWidget::drawWidget(bool hilite) // Draw the list items for (i = 0, pos = _currentPos; i < _rows && pos < len; i++, pos++) { - const OverlayColor textColor = (_selectedItem == pos && _editMode) - ? kColor : kTextColor; + const int textColor = (_selectedItem == pos && _editMode) + ? kColor : kTextColor; const int y = _y + 2 + _fontHeight * i; // Draw the selected item inverted, on a highlighted background. diff --git a/stella/src/gui/TabWidget.cxx b/stella/src/gui/TabWidget.cxx index 0fbd54a5e..42eb867b1 100644 --- a/stella/src/gui/TabWidget.cxx +++ b/stella/src/gui/TabWidget.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: TabWidget.cxx,v 1.21 2006-02-22 17:38:04 stephena Exp $ +// $Id: TabWidget.cxx,v 1.22 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -212,7 +212,7 @@ void TabWidget::loadConfig() // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void TabWidget::box(int x, int y, int width, int height, - OverlayColor colorA, OverlayColor colorB, bool omitBottom) + int colorA, int colorB, bool omitBottom) { //cerr << "TabWidget::box\n"; FrameBuffer& fb = _boss->instance()->frameBuffer(); @@ -255,7 +255,7 @@ void TabWidget::drawWidget(bool hilite) int i, x = _x + kTabLeftOffset; for (i = 0; i < (int)_tabs.size(); ++i) { - OverlayColor color = (i == _activeTab) ? kColor : kShadowColor; + int color = (i == _activeTab) ? kColor : kShadowColor; int yOffset = (i == _activeTab) ? 0 : 2; box(x, _y + yOffset, _tabWidth, _tabHeight - yOffset, color, color, (i == _activeTab)); fb.drawString(_font, _tabs[i].title, x + kTabPadding, diff --git a/stella/src/gui/TabWidget.hxx b/stella/src/gui/TabWidget.hxx index 6c9247f18..204f9c11e 100644 --- a/stella/src/gui/TabWidget.hxx +++ b/stella/src/gui/TabWidget.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: TabWidget.hxx,v 1.12 2006-02-22 17:38:04 stephena Exp $ +// $Id: TabWidget.hxx,v 1.13 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -87,7 +87,7 @@ class TabWidget : public Widget, public CommandSender private: void box(int x, int y, int width, int height, - OverlayColor colorA, OverlayColor colorB, bool omitBottom); + int colorA, int colorB, bool omitBottom); void updateActiveTab(); }; diff --git a/stella/src/gui/VideoDialog.cxx b/stella/src/gui/VideoDialog.cxx index f5ed9aceb..9260feea9 100644 --- a/stella/src/gui/VideoDialog.cxx +++ b/stella/src/gui/VideoDialog.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: VideoDialog.cxx,v 1.28 2006-03-19 20:57:55 stephena Exp $ +// $Id: VideoDialog.cxx,v 1.29 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -294,7 +294,7 @@ void VideoDialog::saveConfig() // Zoom i = (myZoomSlider->getValue() / 10) + 1; instance()->settings().setInt("zoom", i); - instance()->frameBuffer().resize(GivenSize, i); + instance()->frameBuffer().resize(0, i); // Fullscreen (the setFullscreen method takes care of updating settings) b = myFullscreenCheckbox->getState(); diff --git a/stella/src/gui/Widget.cxx b/stella/src/gui/Widget.cxx index 0bef09811..74e4ea4bd 100644 --- a/stella/src/gui/Widget.cxx +++ b/stella/src/gui/Widget.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: Widget.cxx,v 1.42 2006-02-22 17:38:04 stephena Exp $ +// $Id: Widget.cxx,v 1.43 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -85,8 +85,8 @@ void Widget::draw() // Draw border if(_flags & WIDGET_BORDER) { - OverlayColor colorA = kColor; - OverlayColor colorB = kShadowColor; + int colorA = kColor; + int colorB = kShadowColor; if((_flags & WIDGET_INV_BORDER) == WIDGET_INV_BORDER) SWAP(colorA, colorB); fb.box(_x, _y, _w, _h, colorA, colorB); diff --git a/stella/src/gui/Widget.hxx b/stella/src/gui/Widget.hxx index 523f81226..2f657693e 100644 --- a/stella/src/gui/Widget.hxx +++ b/stella/src/gui/Widget.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: Widget.hxx,v 1.48 2006-03-02 13:10:53 stephena Exp $ +// $Id: Widget.hxx,v 1.49 2006-03-25 00:34:17 stephena Exp $ // // Based on code from ScummVM - Scumm Interpreter // Copyright (C) 2002-2004 The ScummVM project @@ -75,7 +75,7 @@ enum { This is the base class for all widgets. @author Stephen Anthony - @version $Id: Widget.hxx,v 1.48 2006-03-02 13:10:53 stephena Exp $ + @version $Id: Widget.hxx,v 1.49 2006-03-25 00:34:17 stephena Exp $ */ class Widget : public GuiObject { @@ -124,7 +124,7 @@ class Widget : public GuiObject void setID(int id) { _id = id; } int getID() { return _id; } - void setColor(OverlayColor color) { _color = color; } + void setColor(int color) { _color = color; } virtual const GUI::Font* font() { return _font; } virtual void loadConfig() {} @@ -144,16 +144,16 @@ class Widget : public GuiObject { assert(_boss); _boss->handleCommand(sender, cmd, data, id); } protected: - int _type; - GuiObject* _boss; - GUI::Font* _font; - Widget* _next; - int _id; - int _flags; - bool _hasFocus; - OverlayColor _color; - int _fontWidth; - int _fontHeight; + int _type; + GuiObject* _boss; + GUI::Font* _font; + Widget* _next; + int _id; + int _flags; + bool _hasFocus; + int _color; + int _fontWidth; + int _fontHeight; public: static Widget* findWidgetInChain(Widget* start, int x, int y); @@ -262,7 +262,7 @@ class CheckboxWidget : public ButtonWidget bool _fillRect; bool _drawBox; - OverlayColor _fillColor; + int _fillColor; private: int _boxY; diff --git a/stella/src/unix/OSystemUNIX.cxx b/stella/src/unix/OSystemUNIX.cxx index 124973d27..78721dc3d 100644 --- a/stella/src/unix/OSystemUNIX.cxx +++ b/stella/src/unix/OSystemUNIX.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: OSystemUNIX.cxx,v 1.19 2006-03-24 19:59:52 stephena Exp $ +// $Id: OSystemUNIX.cxx,v 1.20 2006-03-25 00:34:17 stephena Exp $ //============================================================================ #include @@ -88,7 +88,7 @@ void OSystemUNIX::mainLoop() for(;;) { // Exit if the user wants to quit - if(myEventHandler->isQuit()) + if(myEventHandler->doQuit()) break; startTime = getTicks(); @@ -121,7 +121,7 @@ void OSystemUNIX::mainLoop() for(;;) { // Exit if the user wants to quit - if(myEventHandler->isQuit()) + if(myEventHandler->doQuit()) break; startTime = getTicks();