aboutsummaryrefslogtreecommitdiff
path: root/scumm/gfx.cpp
diff options
context:
space:
mode:
authorJonathan Gray2002-12-24 07:53:29 +0000
committerJonathan Gray2002-12-24 07:53:29 +0000
commitff7e997a48a1e8f880b6f88b0c83549cab91f873 (patch)
tree0223f2424ee9050ddc7bf95e60e8103f275bb3ab /scumm/gfx.cpp
parent559ac7b842740275c82188ec04291d37e209db47 (diff)
downloadscummvm-rg350-ff7e997a48a1e8f880b6f88b0c83549cab91f873.tar.gz
scummvm-rg350-ff7e997a48a1e8f880b6f88b0c83549cab91f873.tar.bz2
scummvm-rg350-ff7e997a48a1e8f880b6f88b0c83549cab91f873.zip
make initBGBuffers handle the fact that v8 stores number of z buffers in RMHD not RMIH. Now we have to handle the fact that object code blocks are now a sub block of RMSC
svn-id: r6095
Diffstat (limited to 'scumm/gfx.cpp')
-rw-r--r--scumm/gfx.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index ba4dacba5d..1fc58feb22 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -478,6 +478,7 @@ void Scumm::initBGBuffers(int height)
if (_features & GF_AFTER_V7) {
initVirtScreen(0, 0, virtscr[0].topline, _realWidth, height, 1, 1);
+
}
room = getResourceAddress(rtRoom, _roomResource);
@@ -495,6 +496,10 @@ void Scumm::initBGBuffers(int height)
ptr += off;
off = READ_LE_UINT16(ptr);
}
+ } else if (_features & GF_AFTER_V8) {
+ // in V8 there is no RMIH and num z buffers is in RMHD
+ ptr = findResource(MKID('RMHD'), room);
+ gdi._numZBuffer = READ_LE_UINT32(ptr + 24) + 1;
} else {
ptr = findResource(MKID('RMIH'), findResource(MKID('RMIM'), room));
gdi._numZBuffer = READ_LE_UINT16(ptr + 8) + 1;