aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2005-04-03 13:50:12 +0000
committerTravis Howell2005-04-03 13:50:12 +0000
commitf63b35381b4b8e50cefb08103498dc195e38c29b (patch)
treec749b663412f212483835a8aa4d926b4bb8d357c /scumm
parent994769ec1652eda82023cd342479d2df6615965d (diff)
downloadscummvm-rg350-f63b35381b4b8e50cefb08103498dc195e38c29b.tar.gz
scummvm-rg350-f63b35381b4b8e50cefb08103498dc195e38c29b.tar.bz2
scummvm-rg350-f63b35381b4b8e50cefb08103498dc195e38c29b.zip
Enable copyArray in HE100 too.
svn-id: r17345
Diffstat (limited to 'scumm')
-rw-r--r--scumm/script_v100he.cpp25
1 files changed, 13 insertions, 12 deletions
diff --git a/scumm/script_v100he.cpp b/scumm/script_v100he.cpp
index 4747dc4d0c..23e82fb8b0 100644
--- a/scumm/script_v100he.cpp
+++ b/scumm/script_v100he.cpp
@@ -663,18 +663,19 @@ void ScummEngine_v100he::o100_arrayOps() {
break;
case 131:
{
- // TODO
- //Array1
- dim1end = pop();
- dim1start = pop();
- dim2end = pop();
- dim2start = pop();
- //Array2
- array = fetchScriptWord();
- dim1end = pop();
- dim1start = pop();
- dim2end = pop();
- dim2start = pop();
+ int a1_dim1end = pop();
+ int a1_dim1start = pop();
+ int a1_dim2end = pop();
+ int a1_dim2start = pop();
+ int array2 = fetchScriptWord();
+ int a2_dim1end = pop();
+ int a2_dim1start = pop();
+ int a2_dim2end = pop();
+ int a2_dim2start = pop();
+ if (a1_dim1end - a1_dim1start != a2_dim1end - a2_dim1start || a2_dim2end - a2_dim2start != a1_dim2end - a1_dim2start) {
+ warning("Source and dest ranges size are mismatched");
+ }
+ copyArray(array, a1_dim2start, a1_dim2end, a1_dim1start, a1_dim1end, array2, a2_dim2start, a2_dim2end, a2_dim1start, a2_dim1end);
}
break;
case 133: