[Scummvm-devel] RTL branch to be merged (relevant for *all* developers)

peres peres at scummvm.org
Tue Sep 2 04:38:47 CEST 2008


> 1) First, changes to gui/, base/, backends/events/default/default-
> events, and a few files in engines/ will be merged.
>
>
> 2) Next, I will merge the changes of each engine separately. Well,
> with exception of the parallaction engine, for which the patch is
> broken right now, because peres keeps shifting things around quicker
> than we can adapt our patches :)
>
> 3) I await angry complaints from people for whom something broke, so
> that we can peacefully resolve them together ;)

Having had to personally merge Parallaction code from the branch, I  
noticed something:

* Engine::go() returns the result of shouldRTL(), and this holds for all  
engines. Why don't we
   move this to the base code instead? I mean, the engine couldn't care  
less if it's returning to
   the launcher or quitting. The proper place for this check seems to be  
scummvm_main, after the
   engine has been shutdown and we are out of runGame. The meaning of the  
return value for runGame
   can be changed to: 0 if the engine couldn't start and 1 if the engine  
started and shouldRTL must
   be checked.

* Somewhere in the middle of Cine, a synthetic RTL event is set up, and  
the same happens in Kyra1,
   where a QUIT event is manufactured instead. I suppose those should rely  
on quitGame() instead.
   About Cine, I wonder why the engine is making sure we go back to the  
launcher only in that
   particular case :P

After fixing those 2 issues, RTL would become totally transparent to the  
engines (and pushEvent
could be hidden from them).

And now, opinion's corner: speaking of general behaviour, after an engine  
is shutdown it should
always go back to the launcher. The only way for a direct quit should be  
the GMM dialog. What do
you guys think about this?

Feel free to bash if appropriate!

bye
peres





More information about the Scummvm-devel mailing list