From 982153e0ab72214c6a6a51caee32bb018cbbdabb Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Thu, 9 Jul 2009 15:46:26 +0000 Subject: restAdjust should be a signed integer. Fixes crashes with SCI1 games that take absolute lofs parameters (a regression of commit #42260) svn-id: r42297 --- engines/sci/debug.h | 2 +- engines/sci/engine/state.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'engines') diff --git a/engines/sci/debug.h b/engines/sci/debug.h index ccf0602600..0963159c98 100644 --- a/engines/sci/debug.h +++ b/engines/sci/debug.h @@ -46,7 +46,7 @@ struct ScriptState { int old_pc_offset; StackPtr old_sp; ExecStack *xs; - uint16 restadjust; + int16 restadjust; reg_t *variables[4]; // global, local, temp, param, as immediate pointers reg_t *variables_base[4]; // Used for referencing VM ops SegmentId variables_seg[4]; // Same as above, contains segment IDs diff --git a/engines/sci/engine/state.h b/engines/sci/engine/state.h index 92a5b5e411..1759b26dcb 100644 --- a/engines/sci/engine/state.h +++ b/engines/sci/engine/state.h @@ -208,7 +208,7 @@ public: bool _executionStackPosChanged; /**< Set to true if the execution stack position should be re-evaluated by the vm */ reg_t r_acc; /**< Accumulator */ - uint16 restAdjust; /**< &rest register (only used for save games) */ + int16 restAdjust; /**< &rest register (only used for save games) */ reg_t r_prev; /**< previous comparison result */ SegmentId stack_segment; /**< Heap area for the stack to use */ -- cgit v1.2.3