Difference between revisions of "Talk:Small Devices Backend"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Reply couple questions)
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
* Could use existing code from https://sourceforge.net/tracker/index.php?func=detail&aid=1325302&group_id=37116&atid=418822 -- [[User:SumthinWicked|SumthinWicked]] 22:28, 10 Dec 2005 (UTC)
* Could use existing code from https://sourceforge.net/tracker/index.php?func=detail&aid=1325302&group_id=37116&atid=418822 -- [[User:SumthinWicked|SumthinWicked]] 22:28, 10 Dec 2005 (UTC)
* Maybe we should name it Limited Devices Backend, as some devices like PS2 are hardly small? -- [[User:SumthinWicked|SumthinWicked]] 22:28, 10 Dec 2005 (UTC)
* Maybe we should name it Limited Devices Backend, as some devices like PS2 are hardly small? -- [[User:SumthinWicked|SumthinWicked]] 22:28, 10 Dec 2005 (UTC)
** To avoid this confusion I propose to name this backend "gadget". Any thoughts? [[User:Sev|Sev]] 22:20, 19 Jan 2006 (UTC)
** To avoid this confusion I propose to name this backend "gadget". Any thoughts? -- [[User:Sev|Sev]] 22:20, 19 Jan 2006 (UTC)
*** Maybe this would be too vague, how about FeatherWeightDevices? Hmm, we are actually trying to say something about the flexibility, and the rest of the discussion seems to head towards a totally new OSystem framework, maybe not totally new, but pretty similar with separated functionality. We maybe we should focus on the word Flexible instead og Limited. So FlexBackend, which could 'emulate' this modularity under OSystem. -- [[User:SumthinWicked|SumthinWicked]] 13:15, 20 Jan 2006 (UTC)
 
* Name aside ;) how far down do we need to go? When you start to break oSystem down more and more like this you’re treading a fine line from creating a sub-set (with defined limits) and extending the whole backend into bloat territory (the old adage of all things for all people). A lot of this could benefit any platform, PS2, why not XBOX, older PC’s etc. etc.  - Still, that aside I think some abstraction for more ‘lightweight’ devices is a very good idea (as I have for a long time). I believe the SDL backend would be the ideal starting place for this and some global defines to keep this out of the main code are a must. Maybe just some common API’s for things like virtual keyboards, splash screens etc. slipped into a sub-set of oSystem are the ideal starting point. Under the banner of ‘lightweight’ devices. Add more of this concept in as the framework starts to take shape. I guess it has to start somewhere. -- [[User:DJWillis|DJWillis]] 20:58, 14 Jan 2006
* Name aside ;) how far down do we need to go? When you start to break oSystem down more and more like this you’re treading a fine line from creating a sub-set (with defined limits) and extending the whole backend into bloat territory (the old adage of all things for all people). A lot of this could benefit any platform, PS2, why not XBOX, older PC’s etc. etc.  - Still, that aside I think some abstraction for more ‘lightweight’ devices is a very good idea (as I have for a long time). I believe the SDL backend would be the ideal starting place for this and some global defines to keep this out of the main code are a must. Maybe just some common API’s for things like virtual keyboards, splash screens etc. slipped into a sub-set of oSystem are the ideal starting point. Under the banner of ‘lightweight’ devices. Add more of this concept in as the framework starts to take shape. I guess it has to start somewhere. -- [[User:DJWillis|DJWillis]] 20:58, 14 Jan 2006
* What's a "splash screen" in this context?  I don't remember ever seeing a splash-screen (as I know it, atleast) in a ScummVM port. -- [[User:JoostP|JoostP]] 13:14 in some random timezone, 18 Jan 2006
* What's a "splash screen" in this context?  I don't remember ever seeing a splash-screen (as I know it, atleast) in a ScummVM port. -- [[User:JoostP|JoostP]] 13:14 in some random timezone, 18 Jan 2006
** It is used by at least GP32 port now, but as we already discussed is completely optional even there. What I could mean here is that form Nokia770 I will need some kind of "pause" screen when it will go to windowed mode and window decorations, e.g. close/minimize buttons will be visible. In this case area will be some non-standard 672x396, so game graphics should be turned off, and some logo/graphics with "Continue" button should appear. [[User:Sev|Sev]] 22:20, 19 Jan 2006 (UTC)
** It is used by at least GP32 port now, but as we already discussed is completely optional even there. What I could mean here is that form Nokia770 I will need some kind of "pause" screen when it will go to windowed mode and window decorations, e.g. close/minimize buttons will be visible. In this case area will be some non-standard 672x396, so game graphics should be turned off, and some logo/graphics with "Continue" button should appear. -- [[User:Sev|Sev]] 22:20, 19 Jan 2006 (UTC)
** A 'pause' feature and a 'splash screen' are two totally different things in my view. A "splash screen" is eye candy, usually shown when a program launches. I don't see how one could integrate that into the OSystem API (or rather: I don't see why one would want to integrate that, as it is shown before the actual ScummVM runs anyway). On the other hand, a 'pause' feature would actually be very useful for *all* backends, but is non-trivial to implement. The problem here is that we have timers and other things that rely on OSystem::getMillis(). So to implement pause, one has to halt all threads/timers, and also "stop" getMillis() -- or rewrite all engines to deal with sudden big "jumps" in the value returned by getMillis(). See e.g. the hack the SCUMM music uses for its pause mode (stopping iMuse etc.). -- [[User:Fingolfin|Fingolfin]] 19:24, 2 February 2006 (UTC)

Latest revision as of 19:24, 2 February 2006

  • Maybe we should name it Limited Devices Backend, as some devices like PS2 are hardly small? -- SumthinWicked 22:28, 10 Dec 2005 (UTC)
    • To avoid this confusion I propose to name this backend "gadget". Any thoughts? -- Sev 22:20, 19 Jan 2006 (UTC)
      • Maybe this would be too vague, how about FeatherWeightDevices? Hmm, we are actually trying to say something about the flexibility, and the rest of the discussion seems to head towards a totally new OSystem framework, maybe not totally new, but pretty similar with separated functionality. We maybe we should focus on the word Flexible instead og Limited. So FlexBackend, which could 'emulate' this modularity under OSystem. -- SumthinWicked 13:15, 20 Jan 2006 (UTC)
  • Name aside ;) how far down do we need to go? When you start to break oSystem down more and more like this you’re treading a fine line from creating a sub-set (with defined limits) and extending the whole backend into bloat territory (the old adage of all things for all people). A lot of this could benefit any platform, PS2, why not XBOX, older PC’s etc. etc. - Still, that aside I think some abstraction for more ‘lightweight’ devices is a very good idea (as I have for a long time). I believe the SDL backend would be the ideal starting place for this and some global defines to keep this out of the main code are a must. Maybe just some common API’s for things like virtual keyboards, splash screens etc. slipped into a sub-set of oSystem are the ideal starting point. Under the banner of ‘lightweight’ devices. Add more of this concept in as the framework starts to take shape. I guess it has to start somewhere. -- DJWillis 20:58, 14 Jan 2006
  • What's a "splash screen" in this context? I don't remember ever seeing a splash-screen (as I know it, atleast) in a ScummVM port. -- JoostP 13:14 in some random timezone, 18 Jan 2006
    • It is used by at least GP32 port now, but as we already discussed is completely optional even there. What I could mean here is that form Nokia770 I will need some kind of "pause" screen when it will go to windowed mode and window decorations, e.g. close/minimize buttons will be visible. In this case area will be some non-standard 672x396, so game graphics should be turned off, and some logo/graphics with "Continue" button should appear. -- Sev 22:20, 19 Jan 2006 (UTC)
    • A 'pause' feature and a 'splash screen' are two totally different things in my view. A "splash screen" is eye candy, usually shown when a program launches. I don't see how one could integrate that into the OSystem API (or rather: I don't see why one would want to integrate that, as it is shown before the actual ScummVM runs anyway). On the other hand, a 'pause' feature would actually be very useful for *all* backends, but is non-trivial to implement. The problem here is that we have timers and other things that rely on OSystem::getMillis(). So to implement pause, one has to halt all threads/timers, and also "stop" getMillis() -- or rewrite all engines to deal with sudden big "jumps" in the value returned by getMillis(). See e.g. the hack the SCUMM music uses for its pause mode (stopping iMuse etc.). -- Fingolfin 19:24, 2 February 2006 (UTC)