aboutsummaryrefslogtreecommitdiff
path: root/boxes.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'boxes.cpp')
-rw-r--r--boxes.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/boxes.cpp b/boxes.cpp
index bdf48944bb..6466e00161 100644
--- a/boxes.cpp
+++ b/boxes.cpp
@@ -45,9 +45,12 @@ byte Scumm::getNumBoxes() {
Box *Scumm::getBoxBaseAddr(int box) {
byte *ptr = getResourceAddress(rtMatrix, 2);
checkRange(ptr[0]-1, 0, box, "Illegal box %d");
- if(_features & GF_SMALL_HEADER)
- return (Box*)(ptr + box*SIZEOF_BOX + 1);
- else
+ if(_features & GF_SMALL_HEADER) {
+ if (_gameId == GID_ZAK256)
+ return (Box*)(ptr + box*(SIZEOF_BOX-2) + 1);
+ else
+ return (Box*)(ptr + box*SIZEOF_BOX + 1);
+ } else
return (Box*)(ptr + box*SIZEOF_BOX + 2);
}