[Scummvm-cvs-logs] scummvm master -> 8148f4d81d250ae66d5ac015161227fa1f78814e
whoozle
whoozle at yandex.ru
Thu Jun 23 21:55:03 CEST 2011
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
e30b41b28e DREAMWEB: Added subtitle option
8148f4d81d DREAMWEB: Added ui settings integration
Commit: e30b41b28e536f18b3c5d2d323c0d808dc1328df
https://github.com/scummvm/scummvm/commit/e30b41b28e536f18b3c5d2d323c0d808dc1328df
Author: Vladimir Menshakov (whoozle at yandex.ru)
Date: 2011-06-23T12:30:12-07:00
Commit Message:
DREAMWEB: Added subtitle option
Changed paths:
devtools/tasmrecover/dreamweb/dreamweb.asm
devtools/tasmrecover/dreamweb/use.asm
engines/dreamweb/detection.cpp
engines/dreamweb/dreamgen.cpp
engines/dreamweb/dreamgen.h
engines/dreamweb/dreamweb.cpp
diff --git a/devtools/tasmrecover/dreamweb/dreamweb.asm b/devtools/tasmrecover/dreamweb/dreamweb.asm
index d357c5c..edecad7 100644
--- a/devtools/tasmrecover/dreamweb/dreamweb.asm
+++ b/devtools/tasmrecover/dreamweb/dreamweb.asm
@@ -6237,6 +6237,7 @@ savefiles db "DREAMWEB.D00",0
Recname db "DREAMWEB.DEM",0
Quitrequested db 0
+Subtitles db 0
;-------------------------------------------------------End of code segment----
diff --git a/devtools/tasmrecover/dreamweb/use.asm b/devtools/tasmrecover/dreamweb/use.asm
index 508e8bd..08debfc 100644
--- a/devtools/tasmrecover/dreamweb/use.asm
+++ b/devtools/tasmrecover/dreamweb/use.asm
@@ -3293,18 +3293,34 @@ Setuptimedtemp proc near
if cd
cmp ah,0
jz notloadspeech3
+ push ax
+ push bx
+ push cx
+ push dx
mov dl,"T"
mov dh,ah
- mov cl,"T"
+ mov cl,"T"
mov ah,0
call loadspeech
cmp speechloaded,1
- jnz notloadspeech3
+ jnz $1
mov al,50+12
call playchannel1
+$1:
+ pop dx
+ pop cx
+ pop bx
+ pop ax
+
+ cmp speechloaded,1
+ jnz notloadspeech3 ; failed to load speech
+ cmp subtitles, 1
+ jz notloadspeech3
ret
+
notloadspeech3:
- endif
+ endif ;if cd
+
cmp timecount,0
jnz cantsetup2
mov timedy,bh
diff --git a/engines/dreamweb/detection.cpp b/engines/dreamweb/detection.cpp
index 18a2f89..f3d5b07 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 462ae59..2485b5a 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 b012663..5a60327 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 8be02dc..0b8c843 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;
Commit: 8148f4d81d250ae66d5ac015161227fa1f78814e
https://github.com/scummvm/scummvm/commit/8148f4d81d250ae66d5ac015161227fa1f78814e
Author: Vladimir Menshakov (whoozle at yandex.ru)
Date: 2011-06-23T12:52:59-07:00
Commit Message:
DREAMWEB: Added ui settings integration
Changed paths:
engines/dreamweb/dreamweb.cpp
diff --git a/engines/dreamweb/dreamweb.cpp b/engines/dreamweb/dreamweb.cpp
index 0b8c843..590f071 100644
--- a/engines/dreamweb/dreamweb.cpp
+++ b/engines/dreamweb/dreamweb.cpp
@@ -468,6 +468,9 @@ void DreamWebEngine::playSound(uint8 channel, uint8 id, uint8 loops) {
}
bool DreamWebEngine::loadSpeech(const Common::String &filename) {
+ if (ConfMan.getBool("speech_mute"))
+ return false;
+
Common::File file;
if (!file.open("speech/" + filename))
return false;
@@ -483,6 +486,7 @@ bool DreamWebEngine::loadSpeech(const Common::String &filename) {
void DreamWebEngine::soundHandler() {
+ _context.data.byte(_context.kSubtitles) = ConfMan.getBool("subtitles");
_context.push(_context.ax);
_context.volumeadjust();
_context.ax = _context.pop();
More information about the Scummvm-git-logs
mailing list