diff options
author | Vladimir Menshakov | 2011-06-18 12:59:55 +0400 |
---|---|---|
committer | Vladimir Menshakov | 2011-06-18 13:33:58 +0400 |
commit | 4cdc9c9f8e883bdb4864e6b2c0ef127bf0824e9a (patch) | |
tree | dbfc99dea9e44ebddff747e7e4845c1dd8a6515a /engines/dreamweb/dreamweb.cpp | |
parent | 0d025153e0c5d53545b9e47555eb70a11be96b8f (diff) | |
download | scummvm-rg350-4cdc9c9f8e883bdb4864e6b2c0ef127bf0824e9a.tar.gz scummvm-rg350-4cdc9c9f8e883bdb4864e6b2c0ef127bf0824e9a.tar.bz2 scummvm-rg350-4cdc9c9f8e883bdb4864e6b2c0ef127bf0824e9a.zip |
DREAMWEB: implemented clean exit
Diffstat (limited to 'engines/dreamweb/dreamweb.cpp')
-rw-r--r-- | engines/dreamweb/dreamweb.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp index cb66dda26b..4f39671b85 100644 --- a/engines/dreamweb/dreamweb.cpp +++ b/engines/dreamweb/dreamweb.cpp @@ -100,8 +100,9 @@ void DreamWebEngine::waitForVSync() { } void DreamWebEngine::quit() { - warning("Engine should quit gracefully (but doesn't yet)"); - g_system->quit(); + _context.data.byte(DreamGen::DreamGenContext::kQuitrequested) = 1; + _context.data.byte(DreamGen::DreamGenContext::kLasthardkey) = 1; + _context.data.byte(DreamGen::DreamGenContext::kGetback) = 4; } void DreamWebEngine::processEvents() { @@ -208,6 +209,7 @@ Common::Error DreamWebEngine::run() { //http://martin.hinner.info/vga/timing.html _context.__start(); + _context.data.byte(DreamGen::DreamGenContext::kQuitrequested) = 0; getTimerManager()->removeTimerProc(vSyncInterrupt); |