Merged restAdjust and restAdjustCur, as we don't save the restAdjust modifier inside saved games (rightfully so). Also, the segment manager is now reset inside the main loop, when the game is restarted, not in game_exit()
svn-id: r49533
This commit is contained in:
parent
b494d46fdd
commit
10aeb33a42
6 changed files with 35 additions and 50 deletions
|
@ -205,12 +205,12 @@ reg_t disassemble(EngineState *s, reg_t pos, int print_bw_tag, int print_bytecod
|
|||
|
||||
if (pos == s->xs->addr.pc) { // Extra information if debugging the current opcode
|
||||
if (opcode == op_callk) {
|
||||
int stackframe = (scr[pos.offset + 2] >> 1) + (s->restAdjustCur);
|
||||
int stackframe = (scr[pos.offset + 2] >> 1) + (s->restAdjust);
|
||||
int argc = ((s->xs->sp)[- stackframe - 1]).offset;
|
||||
bool oldScriptHeader = (getSciVersion() == SCI_VERSION_0_EARLY);
|
||||
|
||||
if (!oldScriptHeader)
|
||||
argc += (s->restAdjustCur);
|
||||
argc += (s->restAdjust);
|
||||
|
||||
printf(" Kernel params: (");
|
||||
|
||||
|
@ -221,7 +221,7 @@ reg_t disassemble(EngineState *s, reg_t pos, int print_bw_tag, int print_bytecod
|
|||
}
|
||||
printf(")\n");
|
||||
} else if ((opcode == op_send) || (opcode == op_self)) {
|
||||
int restmod = s->restAdjustCur;
|
||||
int restmod = s->restAdjust;
|
||||
int stackframe = (scr[pos.offset + 1] >> 1) + restmod;
|
||||
reg_t *sb = s->xs->sp;
|
||||
uint16 selector;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue