[Scummvm-devel] Fwd: PS2 : stack madness

sunmax at libero.it sunmax at libero.it
Wed Apr 8 05:59:09 CEST 2009


Hi there Willem!

> > Which scaler are you using?
> 
> No scaler, just running in native 640x480.

Got it.

Is there any way you can start your GUI 320x200 and then let
the Scumm engine to crank it up to 640x480 before starting
COMI and see if this makes a difference?


> I noticed in another mail that you found a place where SP was bogus

Yes.

As in most of stack related issues, just moving functions or adding
new ones can cause the crash to move. The good things of our crash
is that's predictable:

given a certain code base and compiler settings it will always
crash at the same point. On the other hand when we keep adding
new variables on the stack and more printf, we "lose" it:
it starts crashing somewhere else :-(

Obviously the point where it crashes is not the cause but just
a "side effect" of the real bug.


> you try putting lots of printfs of the stack pointer (or of a local
> stack variable) just before that?

I was able to trace it back up to guiManager::runLoop but then I
"lose" it from there - having gdb would definitely make a diff ;-)

It only happens with 640x480 (but that could be a red herring).


> Did you already track down what caused the menu to be placed near
> the upper-left corner instead of in the center, by the way?

No, but I am sure they are related. It seems the GUI engine still
"thinks" the screens is 320x200 and paints in the corresponding
corner, that's why I was asking to see if you can start 320x200
and then when you start COMI see if things make a difference
going up to 640x480 on the fly.

Thanks for the great support guys!
 -max





More information about the Scummvm-devel mailing list