diff --git a/docs/index.html b/docs/index.html
index cc57d0546..1d11d0eee 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -2730,6 +2730,10 @@
indicating serious errors override this setting, and are always
shown.
+
+ -pauseshade <1|0> |
+ Enable or disable emulation shading in pause mode. |
+
-audio.enabled <1|0> |
diff --git a/src/emucore/FrameBuffer.cxx b/src/emucore/FrameBuffer.cxx
index dbb287220..838c2c445 100644
--- a/src/emucore/FrameBuffer.cxx
+++ b/src/emucore/FrameBuffer.cxx
@@ -343,14 +343,16 @@ void FrameBuffer::update(UpdateMode mode)
case EventHandlerState::PAUSE:
{
// Show a pause message immediately and then every 7 seconds
+ bool shade = myOSystem.settings().getBool("pauseshade");
+
if(myPausedCount-- <= 0)
{
myPausedCount = uInt32(7 * myOSystem.frameRate());
showTextMessage("Paused", MessagePosition::MiddleCenter);
- myTIASurface->render(true);
+ myTIASurface->render(shade);
}
if(rerender)
- myTIASurface->render(true);
+ myTIASurface->render(shade);
break; // EventHandlerState::PAUSE
}
diff --git a/src/emucore/Settings.cxx b/src/emucore/Settings.cxx
index 215588c31..948a1e1a8 100644
--- a/src/emucore/Settings.cxx
+++ b/src/emucore/Settings.cxx
@@ -47,6 +47,7 @@ Settings::Settings()
setPermanent("windowedpos", Common::Point(50, 50));
setPermanent("display", 0);
setPermanent("uimessages", "true");
+ setPermanent("pauseshade", "true");
// TIA specific options
setPermanent("tia.inter", "false");
setPermanent("tia.zoom", "3");
@@ -446,6 +447,7 @@ void Settings::usage() const
<< " -speed Run emulation at the given speed\n"
<< " -turbo <1|0> Enable 'Turbo' mode for maximum emulation speed\n"
<< " -uimessages <1|0> Show onscreen UI messages for different events\n"
+ << " -pauseshade <1|0> Enable emulation shading in pause mode\n"
<< endl
#ifdef SOUND_SUPPORT
<< " -audio.enabled <1|0> Enable audio\n"