[Scummvm-devel] Dreamweb code (+ general ScummVM focus/vision)
Vladimir Menshakov
whoozle at yandex.ru
Mon Jun 20 09:01:37 CEST 2011
So the point is that *you want me to reimplement the game*. Or who? The code now opensource. Go on.
As I said before I have neither time or motivation doing that.
>+ glue code used to display graphics etc.
There's no glue code to display graphics. All graphics related code are rewritten from scratch. There's no magic 0xa000 segments.
20.06.2011, 10:52, "Johannes Schickel" <lordhoto at gmail.com>:
> On Mon, Jun 20, 2011 at 5:40 AM, Vladimir Menshakov <whoozle at yandex.ru>; wrote:
>
>>> Albeit I think it's some nice demo of the asm->c conversion I do not think
>>> that is what we want in ScummVM. ScummVM is about reimplementing the game
>>> engines or at least supporting them with the help of original source code.
>>> This means to me the code should be at least somewhat proper reimplementation
>>> of the original logic in C++.
>> Who do you want to reimplement this engines?
>
> Seeing that we have most of our other engines reimplemented I am not
> sure whether this is a real argument. If nobody cares about
> implementing it, when we don't have it supported. I don't see anything
> bad about it.
>
>> What's wrong with robot reimplementing the engine?
>> What if I replace gotos with while/do and register names with locals. Will it be "proper" reimplementation?
>
> If you furthermore strip all the code from runtime.h then I would
> think of considering it proper.
>
>>> Dreamweb definitly is not like that. What we have with dreamweb is what I would
>> And like that, then?
>
> Like a proper reimplementation of the game and not just an asm -> C
> conversion utilizing a "runtime" which is basically a register set +
> memory + glue code used to display graphics etc.
>
>>> Also like Max, I have the feeling that people are discouraging that we
>>> reimplement it properly due to it being a "waste of time" and having a big
>>> chance of causing "regressions". That is IMHO bad too, we want a proper C++
>>> reimplementation IMHO.
>> Again, define "proper" please.
>
> Proper in this context is a reimplementation in C++ which makes the
> logic clear to someone not knowing assembly. If you look at the
> dreamweb code in dreamgen.cpp it is not really much different than to
> look at the assembly code.
>
>>> I do not say we should remove it from master right now! We should rather talk
>>> about what we really want with ScummVM (or in ScummVM). IMHO the merging shows
>>> that we really do not live up to our standards anymore when it comes to
>>> supporting new games.
>> Please tell what's wrong the dreamweb, beside "you don't like it". Dreamweb is not emulated, but translated from original source.
>
> That's right Dreamweb is not emulated strictly speaking. But just
> looking at the code in runtime.h clearly shows it is using some kind
> of "virtual machine" to execute the translated assembly. This is what
> I would not consider a proper reimplementation of the engine anymore.
>
>>> So is this the new way to go? Should we really accept code like this in the
>>> future?
>> Why not?
>
> Because it is not reimplemented.
>
>>> And also what are we going to do about the dreamweb code? Personally I think
>>> we should not support it officially till we have reimplemented it properly.
>> Again, no real arguments, just emotions. You think. We should not. Why not? It's playable, completable. People who uses scummvm really don't care about how this game got supported
>
> That's right people do not care about how it's done. But SucmmVM is
> (or at least was) a project aimed at reimplementations of the game,
> not like some pseudo emulated translation.
>
> // Johannes
More information about the Scummvm-devel
mailing list