freesci-develop
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [freesci-develop] Proposal for new direction of the project


From: Lars Skovlund
Subject: Re: [freesci-develop] Proposal for new direction of the project
Date: Tue, 7 Nov 2006 19:49:18 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

Hi,

First of all, none of us are lawyers. But in Denmark at least, there
is a law that says reverse engineering is legal if the purpose is
interoperability. That is the case with FreeSCI (if the purpose of FreeSCI
isn't interoperability, what is?), while it would be more difficult to
make that argument in the context of SCI Studio. I think such a law
exists in all of EU.

My point was more like this: We know that the ScummVM team has
received nasty letters in the past. We have not, and we would like to
keep it that way. We also know that their views on reverse
engineering are less strict than ours. It stands to reason that any
change in policy here would endanger the project.

Theoretically, the code would have to be written from
documentation. In principle, that would mean I couldn't touch the
FreeSCI code at all, since I have looked extensively at the SCI code
(both interpreter code and the compiled games). In practice, we don't
always do that. For a specific example, when I was implementing SCI1
graphics support, I had a look at some view decompression code
that was written by a guy called Carl Muckenhoupt some 15 years
ago. Looking at the relevant routines in that code, it is clear that
they were obtained through straight reverse enginering, and that he
wasn't exactly sure what the code did. I rewrote this code, looking
alternately at Carl's code and the original machine code in SCI (which
was very similar, for the mentioned reason). As it stands, I threw
away some obsolete buffering code that Carl had kept (simplifying it
somewhat), and I made a number of other adjustments. Readability alone
made this the right thing to do, and this would likely be the case
with other reverse-engineered routines as well.

For all I know, SCI Studio uses Carl's code unchanged. On the other
hand, large parts of SCI Studio were written completely from scratch. I
suppose if you ask me first before including anything specific, it
would be alright. Also, I have more complete documentation on some
things than Brian Provinciano did, so the message viewer (for one
thing) should be rewritten anyway. It depends on what you want to add
- and besides, we're not ready for SCI32 support just yet! :-)

Lars








reply via email to

[Prev in Thread] Current Thread [Next in Thread]