> > bug #326 is the Colone's Bequest bug where ego falls down the stairs when
> > not holding the lantern. In SSCI, she falls to her death. in FSCI, she
> > bounces back out and moves oddly from then on.
> >
> > I've done side-by-side debugging on this problem as well, and found the
> > following difference.
>
> [...]
>
> > pc=25ae acc=0001 o=0684 fp=6374 sp=6374
> > Step #2296366
> > 25ae: [W] ret
> >
> > pc=776c acc=0000 o=aada fp=6360 sp=636c
> > prev=0 sbase=6336 globls=1958 &restmod=0
> > Step #2296367
> > 776c: [B] pTos 0c       (x)
>
> [...]
>
> > In Sierra SCI, the accumulator is 1 after the ret instruction. in FSCI, it
> > is 0. backtrace shows:
> >
> [...]
> >  6:[5]  Act::doit()
> >     obj@0684 pc=2323 sp=635c fp=6356
> >  7:[6]  MoveTo::doit()
> >     obj@aada pc=776e sp=636e fp=6360
>
> Did you backtrace at the beginning of the instruction sequence you print,
> or afterwards?

afterwards.

> If afterwards, I'd need a trace from before that.

Call stack (current base: 9):
 0:[ffffffff]  CB1::replay()
    obj@0eea pc=0b7d sp=6338 fp=6338
 1:[0]  Game::replay()
    obj@0eea pc=57a6 sp=633c fp=633c
 2:[1]  CB1::doit()
    obj@0eea pc=0cab sp=6344 fp=6340
 3:[2]  Game::doit()
    obj@0eea pc=5841 sp=6348 fp=6348
 4:[3]  kAnimate(7924, 0001)
 5:[4]  ego::doit()
    obj@0684 pc=4eab sp=6352 fp=6352
 6:[5]  Act::doit()
    obj@0684 pc=2323 sp=635c fp=6356
 7:[6]  MoveTo::doit()
    obj@aada pc=776c sp=636c fp=6360
 8:[7]  kDoBresen(aada)
 9:[8]  ego::canBeHere()
    obj@0684 pc=2574 sp=6378 fp=6374


> I can only think of two cases where a 'ret' would (implicitly) cause the
> accumulator to change:
> a) if a varselector read is on the stack
> b) if the 'ret' terminated a vm call from below a kernel function

It looks like the ret terminated the kDoBresen, but I could be wrong. There is
a list gotten from cast::Elements that might be worth investigating, but how
do I see the key/value pairs in Sierra SCI's debugger? I know how to use listi
nfo in FSCI already, but need to compare the values to the original
implementation.

Hope this helps, let me know what else I can do!


Reply via email to