aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Brown2002-03-09 12:39:13 +0000
committerJames Brown2002-03-09 12:39:13 +0000
commit2f0a07f6b91e3ecd07cce1b6dd6bb1d1da610c1f (patch)
tree7ae621fa7c3ec9dee28242a7bd247f754e039922
parent81c2211a9e0cd693c6d663f85ce1bc72aaabc308 (diff)
downloadscummvm-rg350-2f0a07f6b91e3ecd07cce1b6dd6bb1d1da610c1f.tar.gz
scummvm-rg350-2f0a07f6b91e3ecd07cce1b6dd6bb1d1da610c1f.tar.bz2
scummvm-rg350-2f0a07f6b91e3ecd07cce1b6dd6bb1d1da610c1f.zip
Proper fix for Indy3 intro background.
svn-id: r3709
-rw-r--r--gfx.cpp5
-rw-r--r--script_v1.cpp12
2 files changed, 9 insertions, 8 deletions
diff --git a/gfx.cpp b/gfx.cpp
index 38185d00af..4734dba482 100644
--- a/gfx.cpp
+++ b/gfx.cpp
@@ -46,7 +46,7 @@ void Scumm::getGraphicsPerformance() {
void Scumm::initScreens(int a, int b, int w, int h) {
int i;
-
+
for (i=0; i<3; i++) {
nukeResource(rtBuffer, i+1);
nukeResource(rtBuffer, i+5);
@@ -951,8 +951,7 @@ void Scumm::redrawBGStrip(int start, int num) {
warning("Screen Y size %d < Room height %d",
_curVirtScreen->height,
_scrHeight);
- }
- _curVirtScreen->height = _scrHeight; // FIXME: Indy3 Hack
+ }
gdi.drawBitmap(getResourceAddress(rtRoom, _roomResource)+_IM00_offs,
_curVirtScreen, s, 0, _curVirtScreen->height, s, num, 0);
diff --git a/script_v1.cpp b/script_v1.cpp
index 06ca5c26df..b881cca4cb 100644
--- a/script_v1.cpp
+++ b/script_v1.cpp
@@ -1722,11 +1722,13 @@ void Scumm::o5_roomOps() {
{
a = getVarOrDirectByte(0x80);
b = getVarOrDirectByte(0x40);
- if(_gameId == GID_INDY3_256 && a == 16 && b == 0) /* FIXME*/
- {
- fetchScriptByte();
- fetchScriptByte();
- fetchScriptByte();
+ if(_gameId == GID_INDY3_256 && a == 16 && b == 0) /* FIXME */
+ {
+ // Set screen height
+ c = fetchScriptByte();
+ d = fetchScriptByte();
+ e = fetchScriptByte();
+ initScreens(0,a,320,c);
return;
}
}