> Being verbose. Longer responses look more authoritative!
I know we can solve this in ordinary tasks just using prompt but that's really annoying. Sometimes I just want a yes or no answer and then I get a phd thesis in the matter.
The parent poster is not making a legal statement. They copied/pasted the first line of the Readme. I made the clarification that the note is a legal disclaimer, not s technical requirement, so people, including the parent poster, are not confused.
And people who play Chinese retro handhelds must dump their own ROMs. Unless they bought a 10000 in 1 version for $10 extra, in which case it's all perfectly legal!
Sure, you must, I guess, but is anyone really going to jail over this piece of ancient history? I find these disclaimers cute.
Functionally, the README describes that providing a game copy is necessary for creating a build. This would make sense, since unless the sound, image, text, etc. assets are all baked into the code, those would have to come separately.
Legally, it further doesn't make much sense. This is cleaned up (?) and painstakingly bytematched decompiler output (again based on the README), so it's unfortunately just plain illegal [0], disclaimers nonwithstanding.
[0] as always, legality depends on jurisdiction - so as always, if in doubt, consult an actual lawyer
Don't you need to have purchased the game before you have the right to enjoy it? How else do you prove that you have paid for the license to run the game if you don't have a copy. That was my initial interpretation.
Byte matched decompilation is not illegal in the US assuming it’s done correctly. Compilers produce the same output (bytes) for effectively infinite input (bytes). Figuring out a novel input without having access to the original is a new, protected, creative work with its own copyright.
legal: decomp -> write spec -> get it signed off -> pass it to someone else for implementation -> distribute
illegal: decomp -> clean up -> distribute
Immediately once they pulled the binary up in their decompiler of choice they were legally tainted and could no longer legally publish any related source code.
This is of course then debated, like everything. So all of this is to the extent I'm familiar with the topic.
It is illegal to redistribute this by any definition on the word and frankly I do not understand how you even think it could possibly be legal as it defies the very purpose of copyright. Like, you can create copies of a painting as long as you only look at a photo of it, not the real painting? Please.
Fortunately, you are very wrong. There is a significant amount of legal precedent that protects decompilation and reverse engineering and it is explicitly protected by copyright laws as fair use. The result is transformative, creative, and completely distinct from any source code the game may have been original compiled with.
People decompiling are not publishing binary blobs. They’re painstakingly writing C code that has never existed before. They own the copyright to that new, original, creative work.
If you own a copy of the game you can use that source code to rebuild a bit-perfect version of the game. Again, fair use. If you don’t own a copy of the game, you can produce binaries that are not bit perfect and are distinct from the original.
The painting analogy doesn’t quite work. To force it, though, decompiling is like writing instructions to reproduce a painting perfectly, but leaving out the tools and pigments. If you own the painting, the instructions will tell you how to figure out the tools and pigments, and you can recreate your personal copy, which was already your fair use right as an owner. If you don’t own the painting, you can use the instructions to create something new and unique. The instructions are not a copy of the painting, it’s a list of steps that is a distinct, creative, transformative work.
It doesn't matter how hard it was to produce, it is still a derived work. Binary vs source code doesn't matter for copyright, it's just a different form of the same work.
It matters with patents where you can have patented stuff in the source code without a problem as long as it's not compiled into the binary. Users who are unaffected by the patents or have a license can compile it in.
Fair use is used during a trial to determine if your use case is an OK exception despite being it a copyright infringment. It's not guaranteed to go into your favor (there are a lot of nuances case by case despite of precedents) and you need to be sued to exercise it.
What you can do is to mimic the behavior and look from scratch, then it would be a separate work. The internal structure would be quite different too. Even the same logic would most likely be coded differently. And the look wouldn't be pixel-perfect just very similar looking.
> There is a significant amount of legal precedent that protects decompilation and reverse engineering and it is explicitly protected by copyright laws as fair us
This is mostly for _interoperability_ and _never_ as a way to sidestep copyright entirely. At most, you are able to redistribute the portion that is minimally indispensable for interoperability, and _not the entire friggin program_. That would completely defeat the point of copyright. And _even_ when you do this for interoperability, you have to walk a very tight rope (e.g. cleanroom as discussed by the sibling comment, albeit clean room is actually not necessary in many jurisdictions), but obviously _nothing_ of this applies if you're just going to distribute the entire program, interoperability be damned, which you simply _cannot_ do (clean room or not).
Otherwise, what is this legal precedent you are talking about?
N.B. I have dedicated a significant chunk of my professional career to reverse engineer (competitor's) industrial software: file formats, protocols, interfaces, the lot.
> People decompiling are not publishing binary blobs. They’re painstakingly writing C code that has never existed before. They own the copyright to that new, original, creative work.
Nah. You're looking at the original binary in one screen and writing code on the other one _to implement the same game_. Just by that, it would already be a pretty much straightforward copyright violation.
But there's more! By your own admission, it even compiles to the same binary. This is a process (decompilation) that can even be fully automated! What is the creative process here? You put fancier doodles on the margins and comments? You changed the variable and function names, like a freshman trying to hide the fact that his assignment is plagiarized from another student's? This is such a textbook violation of copyright I'm not even sure it would actually be worth to use as an example on a textbook.
What is next, if I get nuns to write out the binary in hexadecimal using a painstaking manual process (say knitting it on bed linen), then they can distribute the result and even use it to play the original game? I'm sure the knitting would be very original and creative!
For the record even if I was only looking at a gameplay video (not the binary!) while writing my "new C program", that would still be, very easy to argue, a copyright violation. How many Tetris clones have been shut down this way? Now imagine if you have something that produces bit-for-bit identical output, as you would from decompilation.
BTW which blog is giving out this often parroted non-sensical justification for violating copyright, since it's like the 3rd time I see it repeated here almost line by line? Then when Nintendo comes in and lawfully shuts down the repo, of course cue the crying.
haha I always do that. I think it's a good way to have some control and understand what it is doing before the regurgitation. I don't like to write code but I love the problem solving/logic/integrations part.
A gentle warning to people who are overly trusting: Claude code can and will modify files in plan mode.
Before I switched to a different agent, I routinely ran into situations where I would say "write a plan to do x", it would start planning, and I would steer it by saying something like "update such and such a file, instead of other-file" and it would immediately update it, even though it was in plan mode.
Then I would point out "you're in plan mode, don't update files", and it would go absolutely ham undoing changes and furiously apologizing "You're right! I'm in plan mode, let me undo those changes I wasn't supposed to make!" - meaning that now it's broken the rules twice.
Plan mode does not disable any writing tools, it just changes the system prompt, judging by my experience anyway.
"Creative people don't hate the process of creating art"
Yep. I was a professional music producer before the pandemics, and I couldn't agree more.
Honestly, I'm glad we are destroying every way possible to earn money with music, so we find another profession for that purpose and then we can make music for fun and love again.
3 months ago I was vibe coding an idea and for some reason (and luck) I went to check a less important part of the code and saw that the LLM changed the env variable of an API key and hard coded the key explictly in the code. That was scary. I'm glad I saw it before PR and shit like that.
for tasks like face recognition and object detection, would this type of hardware have good performance in real world cases? or, what is the standard hardware that devs use for tasks like that?
I know we can solve this in ordinary tasks just using prompt but that's really annoying. Sometimes I just want a yes or no answer and then I get a phd thesis in the matter.
reply