aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorMax Horn2003-05-14 09:47:53 +0000
committerMax Horn2003-05-14 09:47:53 +0000
commit05c44e606ecda344801adb957aebee5160a35f2e (patch)
tree1aa3b43859f0d1ea63d146b29de410b31748b6e0 /scumm
parentbb3e596951ad2140092ab01977ac1b2e54567d1b (diff)
downloadscummvm-rg350-05c44e606ecda344801adb957aebee5160a35f2e.tar.gz
scummvm-rg350-05c44e606ecda344801adb957aebee5160a35f2e.tar.bz2
scummvm-rg350-05c44e606ecda344801adb957aebee5160a35f2e.zip
various V8 tweaks
svn-id: r7494
Diffstat (limited to 'scumm')
-rw-r--r--scumm/dialogs.cpp5
-rw-r--r--scumm/gfx.cpp4
-rw-r--r--scumm/scummvm.cpp13
3 files changed, 12 insertions, 10 deletions
diff --git a/scumm/dialogs.cpp b/scumm/dialogs.cpp
index 435e58a89d..44c04c69d1 100644
--- a/scumm/dialogs.cpp
+++ b/scumm/dialogs.cpp
@@ -175,7 +175,10 @@ const ScummVM::String ScummDialog::queryResString(int stringno) {
if (stringno == 0)
return String();
- if (_scumm->_features & GF_AFTER_V7)
+ if (_scumm->_features & GF_AFTER_V8 )
+ // TODO: Maybe grab the strings from the language file?
+ return string_map_table_v5[stringno - 1].string;
+ else if (_scumm->_features & GF_AFTER_V7)
result = _scumm->getStringAddressVar(string_map_table_v7[stringno - 1].num);
else if (_scumm->_features & GF_AFTER_V6)
result = _scumm->getStringAddressVar(string_map_table_v6[stringno - 1].num);
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index d4ce3168d5..763740765f 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -203,7 +203,7 @@ void Scumm::getGraphicsPerformance() {
initScreens(0, 0, _screenWidth, _screenHeight);
}
- if (!(_features & GF_SMALL_HEADER)) // Variable is reserved for game scripts in earlier games
+ if (VAR_PERFORMANCE_1 != 0xFF) // Variable is reserved for game scripts in earlier games
VAR(VAR_PERFORMANCE_1) = 0;
for (i = 10; i != 0; i--) {
@@ -211,7 +211,7 @@ void Scumm::getGraphicsPerformance() {
drawDirtyScreenParts();
}
- if (!(_features & GF_SMALL_HEADER)) // Variable is reserved for game scripts in earlier games
+ if (VAR_PERFORMANCE_2 != 0xFF) // Variable is reserved for game scripts in earlier games
VAR(VAR_PERFORMANCE_2) = 0;
if (_features & GF_AFTER_V7)
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp
index 49f45aa1a3..9c6333755e 100644
--- a/scumm/scummvm.cpp
+++ b/scumm/scummvm.cpp
@@ -795,7 +795,12 @@ void Scumm::initScummVars() {
if (!(_features & GF_AFTER_V6))
VAR(VAR_V5_TALK_STRING_Y) = -0x50;
- if (!(_features & GF_AFTER_V7)) {
+ if (_features & GF_AFTER_V8) { // Fixme: How do we deal with non-cd installs?
+ VAR(VAR_CURRENTDISK) = 1;
+ VAR(VAR_LANGUAGE) = _language;
+ } else if (_features & GF_AFTER_V7) {
+ VAR(VAR_V6_EMSSPACE) = 10000;
+ } else {
VAR(VAR_CURRENTDRIVE) = 0;
VAR(VAR_FIXEDDISK) = true;
VAR(VAR_SOUNDCARD) = 3;
@@ -815,14 +820,8 @@ void Scumm::initScummVars() {
// Setup light
VAR(VAR_CURRENT_LIGHTS) = LIGHTMODE_actor_base | LIGHTMODE_actor_color | LIGHTMODE_screen;
- } else {
- VAR(VAR_V6_EMSSPACE) = 10000;
}
- if (_features & GF_AFTER_V8) { // Fixme: How do we deal with non-cd installs?
- VAR(VAR_CURRENTDISK) = 1;
- VAR(VAR_LANGUAGE) = _language;
- }
VAR(VAR_CHARINC) = 4;
VAR(VAR_TALK_ACTOR) = 0;