[Scummvm-devel] Issues with kyrandia engine

Johannes Schickel lordhoto at scummvm.org
Mon Jun 7 15:04:14 CEST 2010


On 06/07/2010 01:32 PM, yotam barnoy wrote:
> Hi everyone
>
> I've noticed an issue with Kyrandia on the PSP for a while now. At the 
> time, I thought it was due to changes made for Lands of Lore, and I 
> basically ignored and forgot about it. I checked it again recently and 
> noticed it was still there, so I thought I'd let everyone know. I 
> should mention that I noticed this long before I made the recent 
> changes to the PSP port, including the refactoring.
>
> The issue I'm noticing is that the engine reacts strangely to cursor 
> movement. To be more precise, animations often don't happen at all 
> unless I move the cursor. Just to give an example, at the start of 
> Hand of Fate, I see the animation of the hand pointing towards me. But 
> I don't get to see the menu at the bottom unless I deliberately move 
> the cursor. This same thing happens throughout the game: the character 
> may not move until I move the mouse about. Moving the cursor seems to 
> supply extra animation cycles for whatever reason.

Moving the mouse cursor makes KYRA send another call to "updateScreen" 
to allow the backend to draw the cursor on the new position.

In all other occurances KYRA only calls updateScreen, whenever something 
really changed on the screen (this was introduced at the request of 
joostp for the PSP backend).

You might want to check whether the PSP backend receives those 
updateScreen calls. It does work correctly on Linux with the SDL 
backend, I made some quick printf output on stdout with the time when a 
updateScreen call happens and I get a steady call of updateScreen when 
an animation is playing.

I noticed the PSP backend does limit the screen update count to 30 FPS, 
that might be a reason for the menu "bug" in Hand of Fate you are 
expiring, i.e. the update call for the menu area might just be "skipped" 
by your backend, making it only visible after you move the mouse and 
thus triggering another screen update. Check this too:
http://wiki.scummvm.org/index.php/HOWTO-Backends#updateScreen.28.29_method

// Johannes






More information about the Scummvm-devel mailing list