Hacker News new | ask | show | jobs
by johnfn 47 days ago
First of all, super cool. I have a soft spot for SimTower as well. :)

> I didn’t want to do a function-by-function port. First, APIs may be copyrightable - and copying a binary that closely might implicate copyright more than an approach closer to clean-room design. But it was clear that I needed some level of feedback from the ground-truth binary in order to provide a hill for the LLM to climb on the reimplementation.

Interesting, but isn't this what, say, the Ocarina of Time reverse engineer port does[1]? I imagine the fact that this hasn't been served a takedown notice from Nintendo is a proof that it's defensible? Or at least that there's precedent, ha.

Anyway, this is really cool. I genuinely think the only thing that's missing for me to waste an afternoon here is the sound effects!

[1]: https://github.com/zeldaret/oot

2 comments

It is not proof. It is a clear derived work infringing on the copyright of Nintendo.
Depends of the country, a lot of countries have exceptions for interoperability (at least the whole EU) and since these projects are mainly used to make ports to other systems, it may be covered.
This is an absolutely ridiculous interpretation. There is no interoperability here at all, you are literally just copying the work in question.

It is like claiming that compiling Samba to run in $NEW_PLATFORM suddenly strips Samba of the GPLv3.

You absolutely aren't copying the work, recompilation projects are intensive work and a re-imagining of what the source code could look like. Compilation is still a one way process.

And then for the legal part, that's why it's called an exception.

There is little to no creative work whatsoever if you end up with exactly the same game; and often they end up with exactly the same binary as well. Source translations are derivative works almost by definition. It doesn't matter what magic you use to generate it.

And again, where is the interoperability here? Interoperability exception would apply if there was whitebox cryptography, Nintendo logo-style things or anything else where the only method for the work to run would be to violate copyright of _exactly that_. Under no circumstances you can simply copy & distribute the entire work (or derivates) while claiming "interoperability exception!". It makes utterly no sense.

I disagree, the creative work is in figuring out what the game does, and the resulting recompilation is completely different from the original source code.

And then for the interoperability, these decompilation projects are primarily made to target other systems, not the original platform. That's the textbook definition of interoperability.

Let's be real, N64 and the PS1/PS2 (where most of these projects are based) are crumbling old platforms at this point and these projects are sometimes the best way to run games when they exist.

> APIs may be copyrightable

Didn't Google v. Oracle disprove this?

Not quite. Google v Oracle ducked the question of API copyrightability (that was one of the main complaints of Thomas's dissent), instead saying that Google's use of the APIs were very definitely fair use in a sufficiently general manner that any clean room implementation of API for compatibility is very definitely fair use.