News for hackers. Stuff that matters.
Re:Prince of Persia open-source port based on the DOS versio... by nathell on Tuesday November 23, 2021 @04:53AM (#29316152)
GPLv3. But given that it’s a port of the disassembly, isn’t it also a derivative work of the original PoP?
Re:Prince of Persia open-source port based on the DOS versio... by CannisterFlux on Tuesday November 23, 2021 @05:21AM (#29316267)
It's a mess of copyright for sure. I doubt you could really exercise your rights as a 3rd party with the GPLv3 there. e.g. if Debian or Ubuntu were to include the game then they would be on shakey ground for redistributing copyrighted stuff. Presumably the original graphics are in there too, not just the "re-imagined" code.

It reminds me of the old New Kind - Oolite - Elite shenanigans from years ago. Somehow Oolite powered through and stuck around, despite using most of the New Kind code originally (they translated the C game logic to Objective C if memory serves me), while New Kind was shut down by Braben for copyright infringement. The New Kind author - Christian Pinder I think was his name - did all the disassembly work originally. I don't think it was ever a big legal challenge there, more like "hey! take that down" and the author complied because he was a nice guy.

Re:Prince of Persia open-source port based on the DOS versio... by vadfa on Tuesday November 23, 2021 @08:03AM (#29317286)
It's not "a mess of copyright", it is simply illegal, in the same way that reverse engineering Windows to reimplement stuff in Wine would be illegal.
Re:Prince of Persia open-source port based on the DOS versio... by matheusmoreira on Tuesday November 23, 2021 @10:33AM (#29318979)
> reverse engineering Windows to reimplement stuff in Wine would be illegal

That's legal though. Stuff like that is the whole purpose of reverse engineering. You can't copy the code but you can learn how it works so you can do it yourself.

Re:Prince of Persia open-source port based on the DOS versio... by belltaco on Tuesday November 23, 2021 @11:16AM (#29319579)
>but you can learn how it works so you can do it yourself

This part is definitely illegal. You can learn how it works but you cannot write the code yourself, you have to write the specs for someone else to do it, who hasn't done the reverse engineering.

Re:Prince of Persia open-source port based on the DOS versio... by matheusmoreira on Tuesday November 23, 2021 @11:32AM (#29319800)
That's clean room reverse engineering, a rigorous method to make absolutely sure that the results are legal so it can't be questioned later. It's not a legal requirement and it does not prevent lawsuits. It just makes it more likely that the legal battle will be won.
Re:Prince of Persia open-source port based on the DOS versio... by phendrenad2 on Tuesday November 23, 2021 @02:22PM (#29322065)
I think GP is referring to the DMCA, which forbids reverse-engineering unless it's to understand how to interface your own code with something (although I'm not a lawyer).
Re:Prince of Persia open-source port based on the DOS versio... by matheusmoreira on Tuesday November 23, 2021 @03:15PM (#29322797)
Yes, even under the DMCA it's totally legal to reverse engineer for the purposes of interoperability. Wine was created to make Windows applications work on Linux. I reverse engineered my laptop's crappy manufacturer software in order to make a Linux version.
Re:Prince of Persia open-source port based on the DOS versio... by LocalH on Tuesday November 23, 2021 @10:37AM (#29319029)
Reverse engineering isn't illegal, friend.
Re:Prince of Persia open-source port based on the DOS versio... by edgyquant on Tuesday November 23, 2021 @10:11AM (#29318680)
This isn’t illegal though? You can do clean room reimplementations
Re:Prince of Persia open-source port based on the DOS versio... by gspr on Tuesday November 23, 2021 @05:03AM (#29316202)
Yeah, the author's "Copyright (C) 2013-2021 Dávid Nagy" seems ridiculous and meaningless. I can see the appeal of a project like this, but the author's pretending that that copyright and the GPL licensing mean anything isn't helpful.
Re:Prince of Persia open-source port based on the DOS versio... by rob74 on Tuesday November 23, 2021 @05:33AM (#29316318)
IANAL either, but I suppose the situation here is similar as with "abandonware": as long as the original publisher/copyright holder doesn't protest, old software is made available on various download sites. Of course, with a project like this, if the copyright holder would intervene, a lot more work would go down the drain, and claiming your own copyright without explicitly mentioning the original copyright is definitely not helping...
Re:Prince of Persia open-source port based on the DOS versio... by hermitdev on Tuesday November 23, 2021 @12:54PM (#29320853)
> but I suppose the situation here is similar as with "abandonware"

I don't know if this would hold up. Prince of Persia IP is far from dead or abandoned. I know it's not exhaustive, but a quick search on IMDB [0] shows a movie in 2010, and a video game as recently as 2008. Just because this particular game is old, doesn't mean the IP/Trademark is dead. Personally, I'd be wary of a legal battle, even though I think the project is pretty interesting.

[0] https://www.imdb.com/find?q=prince+of+persia&ref_=nv_sr_sm

Re:Prince of Persia open-source port based on the DOS versio... by rob74 on Tuesday November 23, 2021 @02:10PM (#29321896)
Again, IANAL, but that's not really relevant. The old Super Mario games for Game Boy and SNES can be downloaded from various abandonware sites, while the Mario franchise is still ongoing. As long as Nintendo is Ok with that, that's not a problem. The original Prince of Persia is also available as "abandonware" and can even be played in the browser (https://www.retrogames.cz/play_102-DOS.php?language=EN)
Re:Prince of Persia open-source port based on the DOS versio... by gspr on Thursday November 25, 2021 @09:54AM (#29341833)
Even if Nintendo is OK with that (are they really?), that does not mean that someone else can grab one of those copies and claim copyright on it! That's what the author of the reverse-engineered Prince of Persia seems to be doing.
Re:Prince of Persia open-source port based on the DOS versio... by Liquid_Fire on Tuesday November 23, 2021 @05:04AM (#29316204)
IANAL but I agree, I can't see how this doesn't violate the copyright of the original.

Same with OpenRCT2, which I've heard is also based on the disassembled original, yet people seem to turn a blind eye.

Re:Prince of Persia open-source port based on the DOS versio... by duncanspumpkin on Tuesday November 23, 2021 @07:32AM (#29317051)
For OpenRCT2 I just used a debugger Ollydbg to be precise. As it was hand written assembly disassemblers produced nonsense output.
Re:Prince of Persia open-source port based on the DOS versio... by me_me_me on Tuesday November 23, 2021 @05:40AM (#29316352)
Based on, but as far I remember it was rewritten rather then copied.

To be honest, the should claim same with PoP and I don't see any solicitor suing them, as it would be too much hustle to prove its a code copy instead of inspired by.

Wow that is really sad, we live in the world where this is even a discussion. Where a love project that will not be commercialized has to think about this bs :(

Re:Prince of Persia open-source port based on the DOS versio... by pulse7 on Tuesday November 23, 2021 @05:04AM (#29316203)
Microsoft would not be happy if somebody would create an "open-source port based on the Windows machine/assembly code"...
Re:Prince of Persia open-source port based on the DOS versio... by throwawaylinux on Tuesday November 23, 2021 @06:13AM (#29316511)
No, but it's possible to write a specification based on the disassembly, and then write an implementation based on the specification.

https://en.wikipedia.org/wiki/Clean_room_design

Apparently that may not be strictly required either, but it gives a good defense. I think I could disassemble a blob to figure out what the possible behaviors of a WinAPI call and then write my own implementation of those things.

Microsoft might bankrupt me before I won a court case, but there is nothing in copyright law as far as I know that says reading a copyright work forever contaminates your mind such that you would be incapable of creating a vaguely similar thing without infringing on it.

Re:Prince of Persia open-source port based on the DOS versio... by dotancohen on Tuesday November 23, 2021 @07:06AM (#29316871)

  > No, but it's possible to write a specification based on the
  > disassembly, and then write an implementation based on the specification.
Critically, the disassembly and spec should be done by one person, and the implementation by another.
Re:Prince of Persia open-source port based on the DOS versio... by skywal_l on Tuesday November 23, 2021 @08:46AM (#29317695)
Yes, that's what they mean by "clean room" implementation. The implementer should not be "polluted" by the previous implementation. This is what Microsoft did when they revert engineered CPM and created DOS.
Re:Prince of Persia open-source port based on the DOS versio... by teddyh on Tuesday November 23, 2021 @10:29AM (#29318920)
> This is what Microsoft did when they revert engineered CPM and created DOS.

Um, Microsoft bought (what was then called) 86-DOS outright from another company, and ported it to the 8088 CPU used by the original IBM PC.

Re:Prince of Persia open-source port based on the DOS versio... by illys on Tuesday November 23, 2021 @01:08PM (#29321033)
Right... But there is nearly (no?) work to port from 8086 to 8088. The work was to adapt to the underlying IBM system calls (BIOS) and to the specific wired electronics (video card, DMA, mass-storage media, clock, keyboard...).
Re:Prince of Persia open-source port based on the DOS versio... by lodovic on Tuesday November 23, 2021 @03:46PM (#29323271)
I think you mean Compaq who created a clean-room implementation of the IBM PC BIOS.
Re:Prince of Persia open-source port based on the DOS versio... by drran on Tuesday November 23, 2021 @06:56AM (#29316801)
M$ is happy to copilot open-source code into their codebase.
Re:Prince of Persia open-source port based on the DOS versio... by cube00 on Tuesday November 23, 2021 @08:41AM (#29317644)
Rules for thee but not for me.
Re:Prince of Persia open-source port based on the DOS versio... by fsflover on Tuesday November 23, 2021 @05:50AM (#29316388)
Re:Prince of Persia open-source port based on the DOS versio... by nathell on Tuesday November 23, 2021 @06:03AM (#29316457)
ReactOS isn’t based on disassembly of the original Windows code. It’s based on publicly available documentation of Windows APIs (and reverse engineering those that aren’t documented, but that’s a whole different beast from disassembling).

In fact, ReactOS maintains a policy to prevent proprietary Windows source code (whether leaked or otherwise) from making its way to the ReactOS codebase [0]. When Windows source code leaked, in 2006, ReactOS did a complete codebase audit to ensure that it was not tainted.

[0]: https://reactos.org/intellectual-property-guideline/

Re:Prince of Persia open-source port based on the DOS versio... by kwhitefoot on Tuesday November 23, 2021 @06:01AM (#29316449)
As far as I know the ReactOS team does not disassemble Windows.

"Is ReactOS legal?

Yes. ReactOS is fully legal.

Developers (devs) have not looked at Microsoft Windows™ source code. They have used the public documentation of Microsoft Windows OSes. They have made several tests to understand how Microsoft Windows works. In fact, ReactOS does the same things that Windows does but it does it differently as we don't have the same source code and it is all programmed by different developers. All code in ReactOS is released under the GNU GPL (General Public License). Is ReactOS based on Microsoft Windows™ original source code?

No! ReactOS consists only of clean-room engineered GNU GPL (General Public License) and GPL compatible licensed source code. "

https://reactos.org/wiki/ReactOS_FAQ#Is_ReactOS_legal.3F

Re:Prince of Persia open-source port based on the DOS versio... by selfhoster11 on Tuesday November 23, 2021 @06:59AM (#29316830)
It's not based on any Windows binary code, or the project would be forever poisoned with respect to copyright. They actively prevent anyone who has seen the Windows source code from working on the project.
Re:Prince of Persia open-source port based on the DOS versio... by edgyquant on Tuesday November 23, 2021 @10:18AM (#29318783)
React OS has come under fire before, and been audited, for including windows code[2]. Also the project would not be poisoned with respect to copyright, according to US law.

> Clean room design is usually employed as best practice, but not strictly required by law. In NEC Corp. v Intel Corp. (1990), NEC sought declaratory judgment against Intel's charges that NEC's engineers simply copied the microcode of the 8086 processor in their NEC V20 clone. A US judge ruled that while the early, internal revisions of NEC's microcode were indeed a copyright violation, the later one, which actually went into NEC's product, although derived from the former, were sufficiently different from the Intel microcode it could be considered free of copyright violations.[1]

1. https://en.wikipedia.org/wiki/Clean_room_design

2. https://www.linux.com/news/reactos-suspends-development-sour...

Re:Prince of Persia open-source port based on the DOS versio... by wk_end on Tuesday November 23, 2021 @01:21PM (#29321188)
ReactOS has not "been audited" because they came "under fire" for including Windows code as your post implies - they chose to audit themselves to ensure that they were free of Windows code (they were), to be safe, and for the optics: so that observers see that they're serious about being safe.
Re:Prince of Persia open-source port based on the DOS versio... by edgyquant on Tuesday November 23, 2021 @01:27PM (#29321254)
ReactOS was audited, it doesn’t matter if they agreed to it. The fact is that an engineer claimed it had copied windows code and it had an assembly function believed to be taken directly from windows. The reason I mention it is that this thread has been claiming it’s illegal to study and rewrite disassembled code but that isn’t the case. It’s illegal to copy it but clean room implementations depend on disassembling code and documenting it allowing for another person to then do the implementation.

Im definitely not taking shots at ReactOS here, I’m on their side and am fascinated with the project. You’re right I should have been clear that they shut down and has themselves audited instead of risking a court battle but I don’t think the difference matters much, either way they were gonna have a code audit to disprove these allegations. But in regards to them, there’s a lot of wrong information floating around this thread.

> claim was made on 17 January 2006 by developer Hartmut Birr on the ReactOS developers mailing list (ros-dev) that ReactOS contained code derived from disassembling Microsoft Windows.[25] The code that Birr disputed involved the function BadStack in syscall.S,[26] as well as other unspecified items.[27] Comparing this function to disassembled binaries from Windows XP, Birr argued that the BadStack function was simply copy-pasted from Windows XP, given that they were identical. Alex Ionescu, the author of the code, asserted that while the Windows XP binary in question was indeed disassembled and studied, the code was not merely copy-pasted, but reimplemented; the reason why the functions were identical, Ionescu claimed, was because there was only one possible way to implement the function

https://marc.info/?l=ros-dev&m=118775346131654&w=2

https://en.wikipedia.org/wiki/ReactOS#Internal_audit

Re:Prince of Persia open-source port based on the DOS versio... by Hamuko on Tuesday November 23, 2021 @06:31AM (#29316622)
Probably. I'm not sure if this exact scenario has been tested in courts, but Take-Two is going to test it at the very least.

https://torrentfreak.com/take-two-sues-enthusiasts-behind-gt...

Re:Prince of Persia open-source port based on the DOS versio... by phone8675309 on Wednesday November 24, 2021 @04:41PM (#29335515)
If only the development team on the GTA remasters spent as much time and money on their work as their parent company does on suing people...
Re:Prince of Persia open-source port based on the DOS versio... by Hamuko on Thursday November 25, 2021 @10:53AM (#29342328)
I doubt it costs that much time and money to sue a couple of people once in a blue moon. As far as I know, this is not exactly an every day occurance for them.