Many Nintendo games (including Legend of Zelda: Ocarina of Time) have been decompiled and have not been attacked by the Nintendo Ninjas: https://github.com/zeldaret/oot
The more pressing legal concern here is the use of game assets, which these decompilations work around by requiring the user to provide a ROM to extract them first.
I don't think that's a real legal defense. Code is just as subject to copyright as game assets (why wouldn't it be? it's just another kind of game asset), and the whole extracting assets thing making decompilations free from copyright infringement that gets bandied about is complete armchair lawyering. It's only by Nintendo's good graces these are still allowed to be hosted on GitHub.
> Code is just as subject to copyright as game assets
The decompiled code is not the code that Nintendo wrote. This isn't the equivalent of steeling original code but more like generating a brand new code that would compile to the same executable.
Why is it always the same on every thread of this type? Perhaps I can grab the code segments of a Windows ISO, apply a series of mechanical transformations, and proceed to call it Freedows and freely distribute it as my own? I am having trouble understanding the thought processes that lead to these conclusions. Too much ChatGPT?
By this logic copyright protection on software would be meaningless. The GPL would be meaningless. I could grab any program in the world, "translate it" to my favorite language-du-jour, and call it my own..
Goodbye viral license requirements...
These decompilation projects are not using the distributed game binary to derive the code in their ports directly. It's just used as a rubric. The source code generated from this process is not Nintendo's. That's the idea, at least. Different from taking Windows ISO and jumbling it up into a rude goldberg machine and claiming it as a new work.
They took the distributed game binary and ran it through a tool that produced an approximation of source code. At this point the decompiled code is clearly a mechanical transformation of the game binary, and so holds the same copyright status. This code is then cleaned up such that it compiles and functions and variables are given sensible names. This is, arguably, a creative endeavour, but it's also clearly a derivative work of the original binary and so is still controlled by copyright law.
The decompilation itself may or may not be a copyright violation - that's likely to vary depending on jurisdiction. If someone in a jurisdiction where it's legal were to write a description of the behaviour of the decompiled code and if someone else were to implement a codebase that happened to compile to the same original binary code then there's an argument that no infringement occurred (a functional description of the behaviour of a work is potentially not derivative of that work, and re-implementing the code based on that description is then not constrained by the original copyright), but that's not what happened here.
I don't like that this is the case, but let's take it to a logical conclusion - if I take an interpreted language with a bytecode compiler, I can typically decompile it to something almost 100% identical to the original code (I'd lose comments and maybe variable names, but that depends on the language). Does this mean I can take copyrighted Python code, run it through the interpreter, dump the state, decompile it, and have an independent work not subject to the original license?
> These decompilation projects are not using the distributed game binary to derive the code in their ports directly
That is the definition of decompilation. What are they using as input, if not the "distributed game binary"?
> The source code generated from this process is not Nintendo's.
This is just claiming the consequent. The output of my magical code transformation method is also not Microsoft's.
> Different from taking Windows ISO and jumbling it up into a rude goldberg machine and claiming it as a new work.
Yet that is exactly what decompilation is...
What distinction are you trying to make here? If I translate it to a different language, it is OK? That's as absurd as it gets and still basically strip all software from copyright.
> Do consumers agree to a end user agreement that specifies they cannot decompile the game?
People will de-compile proprietary software and GPL it, and others will have AI clone/port GPL code to new languages then back to the original language again to de-GPL code.
Overall this will make software copyright laws pointless, but in the end everything anyone cares about will be open source. I am here for this outcome.
Frankly I think you have a very rosy view. If this were to happen I foresee companies would immediately start treating code as if it was a private key, using ridiculous hardware protection mechanism, tivoization, SaaS, and the like as much as possible. The entire reason code is so accessible right now is because companies only care about making it "inconvenient" for home piracy, relying on the threat of legal action for everyone else. Imagine a world where if you don't do it then your competitors can legally use your software. Everyone who isn't already releasing their software under the BSD or PD would stop doing so since just about everyone else could just shamelessly rip it into their next closed as hell & secure boot'd device. Your "AI" would have zero source code to train on. Only the companies with the largest resources would be able to break the latest obfuscation mechanisms, leading to more effective imbalances in power. And on and on..
Mandating open software & open hardware is one thing, but simply removing copyright doesn't led there -- it leads to a even more dystopic world.
I'm not sure why. I think most threads of any type usually feel the same as other threads of the type. As for your Windows hypothetical, not sure which Windows you're talking about, but I don't think Microsoft would really care if you did the equivalent of the projects being discussed to Windowses of approximately that age. If you do something obviously different, like freely distribute a modified Windows ISO as your own, I would expect to encounter some resistance.
> (b) In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work.
The way the game works is not protected. Only Nintendo's code is.
You are doing the same mistake as the other poster: claiming the consequent. I could also say that my magical transformation process produces code which is not Microsoft's, even when it obviously ingests code that is Microsoft's. Why would your method be stripping copyright protection while mine wouldn't? What's the difference from what you are claiming?
Frankly at this point I just want to point out that if in your world view this is allowed, then _all_ software copyright is pointless, since anyone could apply the same rationale to any program in the world. What's the point of the GPL on such world?
The decompiled code is a 1:1 translation, so it’s a derivative work. You can’t distribute a translated book without an agreement with the copyright owner, even if the translator contributed original creative work on top. The analogy is literally 1:1.
> This isn't the equivalent of steeling original code but more like generating a brand new code that would compile to the same executable.
That doesn't make it not copyright infringement. As long as it's based on the same executable, that's a derivative work. In the same way if I were to recreate Star Wars A New Hope with new actors and new sets. If I were to play a cover of Micheal Jackson's Thriller with new instruments and new voices.
That's why clean-room design is a thing. To recreate the same function not based off the copyrighted executable, but rather its interactions with the user, other programs, and files. Interactions that aren't copyrightable.
You could do a clean-room implementation[0] of Michael Jackson's Thriller and the rights holders could still take you to court and have a good shot at winning. You could have never heard Thriller, come up with an obvious[1] melodic phrasing that some lawyers reckon sounds close enough and still get sued.
Of course, none of that makes it copyright infringement, only the (would-be) judge does.
[0] The product of which is roughly equivalent to a cover
If I took images from the game and converted them to WebPs then distributed them, that is still copyright infringement, even though those are not the images Nintendo created. Likewise, if you do the same with machine code to reconstructed code, that's the same in principle.
Says that its totally not legal to distribute decompiled code, or indeed:
> uses the information to create a program which is substantially similar in its expression to the program decompiled or to do any act restricted by copyright.
If it was legal, there would be loads of decompiled binaries floating around for windows, Adobe, autodesk and any number of other expensive bits of software.
Reverse engineering without consent _is_ copyright infringement. As in order to obtain a copy of the software you likely signed an EULA which will likely have the standard anti-reverse engineering verbiage which you'll be violating, therefore you are copying (whether for your personal enjoyment or not) the works of the author without permission.
There are a series of well documented exceptions... normally found in copyright law. (And this most definitely does not fall into one of them).
There is no limitation in copying the work of an author for personal enjoyment without permission. If I use my neurons to read and create an exact copy I can retell to myself, or I write it on pen and paper, or I type it on a personal computer, or I read it out loud, or read it out loud and record it for myself I don’t violate anything. Otherwise one would never be able to play copyrighted sheet music on a digital piano say. Reverse engineering might violate other agreements but not copyright law.
> Reverse engineering without consent _is_ copyright infringement. As in order to obtain a copy of the software you likely signed an EULA which will likely have the standard anti-reverse engineering verbiage which you'll be violating
This reasoning is only valid in the US, this kind of anti reverse engineering clause has no value in the EU, reverse engineering is a predefined exception granted to copyright which cannot be voided.
There are fair use carveouts for reverse engineering code to, for example, make it usable on different platforms. I don’t believe this kind of decompile project has ever had its day in court and the laws are written in such a way that the outcome is at least somewhat likely to be skewed in favor of reverse engineering. Nintendo may be avoiding bringing suit because they don’t think they could win or that the judgement might make expanded rights explicit encouraging more of this kind of thing.
Those fair use exceptions only cover the process of reverse engineering specifically. From that article: "Reverse engineers execute code and/or make copies of software as part of analyzing the way the program works."
But distributing the code is not part of the reverse engineering process, so that fair use doesn't apply. Also from that article:
> It is highly risky to copy any code into a program you create as a result of reverse engineering, because that copy could infringe copyright unless it is a fair use under copyright law.
It's even possible that Nintendo evaluates the harm of these projects to be rather lower compared to distributing the complete games themselves. Even though it's not based in any legal reality, the projects' firewall of "You must provide art assets from your own copy of the game" may suffice to keep the lawyers away.
I know, Nintendo will litigate anyone for any reason, but it is possible for a company to look away when these measures are taken.
Yeah, seems most likely. In the past, they've explicitly taken down distributions of things like the SM64 PC port, but left the decompilation.
Companies don't have to C&D. If something poses very little financial danger, but taking it down presents significant risk of PR harm, it's not worth it. The C&D would cost more than it would save, so it makes no business sense.
Don't ask me why they even bothered taking down fan games, though. They seem to care a lot about art assets in particular.
> Don't ask me why they even bothered taking down fan games, though. They seem to care a lot about art assets in particular.
If talking about AM2R, it posed a rather credible threat against the success of the official Metroid 2 remake (ignoring the fact that AM2R is of much higher quality anyway). Plus it contained ripped sprites from Zero Mission, Fusion, and incorporated all of the characters and enemies that Nintendo owns.
You can't just make your own Lord of the Rings or Star Wars without infringing the copyright of the original work. Same with fan remakes.
The more pressing legal concern here is the use of game assets, which these decompilations work around by requiring the user to provide a ROM to extract them first.