diff options
author | Vladimir Menshakov | 2011-06-23 23:30:12 +0400 |
---|---|---|
committer | Vladimir Menshakov | 2011-06-23 23:30:12 +0400 |
commit | e30b41b28e536f18b3c5d2d323c0d808dc1328df (patch) | |
tree | aa795ddebc332696a9396882b3e041708b60977e /engines | |
parent | 714976729d0badab3e7557f62036aac0b2e9cc4f (diff) | |
download | scummvm-rg350-e30b41b28e536f18b3c5d2d323c0d808dc1328df.tar.gz scummvm-rg350-e30b41b28e536f18b3c5d2d323c0d808dc1328df.tar.bz2 scummvm-rg350-e30b41b28e536f18b3c5d2d323c0d808dc1328df.zip |
DREAMWEB: Added subtitle option
Diffstat (limited to 'engines')
-rw-r--r-- | engines/dreamweb/detection.cpp | 1 | ||||
-rw-r--r-- | engines/dreamweb/dreamgen.cpp | 19 | ||||
-rw-r--r-- | engines/dreamweb/dreamgen.h | 3 | ||||
-rw-r--r-- | engines/dreamweb/dreamweb.cpp | 2 |
4 files changed, 20 insertions, 5 deletions
diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp index 18a2f899a8..f3d5b07835 100644 --- a/engines/dreamweb/detection.cpp +++ b/engines/dreamweb/detection.cpp @@ -85,6 +85,7 @@ bool DreamWebMetaEngine::hasFeature(MetaEngineFeature f) const { bool DreamWeb::DreamWebEngine::hasFeature(EngineFeature f) const { switch(f) { case kSupportsRTL: + case kSupportsSubtitleOptions: return true; default: return false; diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp index 462ae596f8..2485b5ad6a 100644 --- a/engines/dreamweb/dreamgen.cpp +++ b/engines/dreamweb/dreamgen.cpp @@ -13830,6 +13830,10 @@ void DreamGenContext::setuptimedtemp() { _cmp(ah, 0); if (flags.z()) goto notloadspeech3; + push(ax); + push(bx); + push(cx); + push(dx); dl = 'T'; dh = ah; cl = 'T'; @@ -13837,9 +13841,20 @@ void DreamGenContext::setuptimedtemp() { loadspeech(); _cmp(data.byte(kSpeechloaded), 1); if (!flags.z()) - goto notloadspeech3; + goto _tmp1; al = 50+12; playchannel1(); +_tmp1: + dx = pop(); + cx = pop(); + bx = pop(); + ax = pop(); + _cmp(data.byte(kSpeechloaded), 1); + if (!flags.z()) + goto notloadspeech3; + _cmp(data.byte(kSubtitles), 1); + if (flags.z()) + goto notloadspeech3; return; notloadspeech3: _cmp(data.word(kTimecount), 0); @@ -21942,7 +21957,7 @@ void DreamGenContext::__start() { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, }; + 0x00, 0x00, 0x00, 0x00, }; ds.assign(src, src + sizeof(src)); dreamweb(); } diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h index b012663ab6..5a60327a43 100644 --- a/engines/dreamweb/dreamgen.h +++ b/engines/dreamweb/dreamgen.h @@ -487,7 +487,8 @@ public: const static uint16 kSavefiles = 8698; const static uint16 kRecname = 8789; const static uint16 kQuitrequested = 8802; - const static uint16 kStak = 8803; + const static uint16 kSubtitles = 8803; + const static uint16 kStak = 8804; const static uint16 kBlocktextdat = (0); const static uint16 kPersonframes = (0); const static uint16 kDebuglevel1 = (0); diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp index 8be02dc90e..0b8c843e84 100644 --- a/engines/dreamweb/dreamweb.cpp +++ b/engines/dreamweb/dreamweb.cpp @@ -219,8 +219,6 @@ Common::Error DreamWebEngine::run() { _loadSavefile = Common::ConfigManager::instance().getInt("save_slot"); getTimerManager()->installTimerProc(vSyncInterrupt, 1000000 / 70, this); - //http://martin.hinner.info/vga/timing.html - _context.__start(); _context.data.byte(DreamGen::DreamGenContext::kQuitrequested) = 0; |