[Scummvm-cvs-logs] scummvm-tools master -> 6689073cbde4bb776da322f5400ac519e2735ce2
clone2727
clone2727 at gmail.com
Fri Jun 1 05:20:28 CEST 2012
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm-tools' repo located at https://github.com/scummvm/scummvm-tools .
Summary:
6689073cbd TOOLS: Implement dup_n() in descumm for HE90+
Commit: 6689073cbde4bb776da322f5400ac519e2735ce2
https://github.com/scummvm/scummvm-tools/commit/6689073cbde4bb776da322f5400ac519e2735ce2
Author: Matthew Hoops (clone2727 at gmail.com)
Date: 2012-05-31T20:15:01-07:00
Commit Message:
TOOLS: Implement dup_n() in descumm for HE90+
Changed paths:
engines/scumm/descumm6.cpp
diff --git a/engines/scumm/descumm6.cpp b/engines/scumm/descumm6.cpp
index ff6fe68..8e8ca79 100644
--- a/engines/scumm/descumm6.cpp
+++ b/engines/scumm/descumm6.cpp
@@ -1459,6 +1459,15 @@ void jumpif(char *output, StackEnt *se, bool negate) {
sprintf(e, ") jump %x", to);
}
+void dup_n() {
+ push(se_int(get_word()));
+ ListStackEnt *list = (ListStackEnt *)se_get_list();
+
+ for (int i = 0; i < 2; i++)
+ for (int j = 0; j < list->_size; j++)
+ push(list->_list[j]);
+}
+
#define PRINT_V100HE(name) \
do { \
@@ -1717,6 +1726,9 @@ void next_line_HE_V100(char *output) {
push(se_a);
push(se_a);
break;
+ case 0x29:
+ dup_n();
+ break;
case 0x2A:
ext(output, "|endCutscene");
break;
@@ -2677,6 +2689,9 @@ void next_line_HE_V72(char *output) {
case 0x7:
push(se_array(get_word(), NULL, pop()));
break;
+ case 0xA: // HE90+
+ dup_n();
+ break;
case 0xB:
se_a = pop();
push(se_array(get_word(), pop(), se_a));
More information about the Scummvm-git-logs
mailing list