Live data from Hacker News

Decompiling a Nintendo 64 game in 84 days

blog.chrislewis.au

51–60 of 190 posts

Re: Decompiling a Nintendo 64 game in 84 days

#51
post #27

Earlier quoted context omitted.

Yes many games are caught up in IP hell. Including the one my username is inspired by. It's why you see a lot of fan remakes. Another sad side effect of corporate owned IP is also a lot of times the individuals who did the bulk of the work on something can't be the ones to do a remake. They don't own their own work. A company owns it. That's what most of us sign up for to get a paycheck. But when it's something like…

I think that we should change copyright law such that 1) Rights can't be held by corporations, only individuals. So the rights to a piece of art or IP would always trace down to a list of names. 2) Everything enters the public domain after 20 years or the death of the entire list of ownership.

> Rights can't be held by corporations, only individuals. So the rights to a piece of art or IP would always trace down to a list of names.

Isn't the current system setup around the idea that the company gets the rights, and in return the workers get a basically risk-free salary? Wouldn’t your proposal undo that, so then workers took on the risk of whether they got paid, based on whether the game ends up being profitable?

Re: Decompiling a Nintendo 64 game in 84 days

#52
post #42
post #23

What's the legal status of these? Historically there was a notion of "clean room" reimplementation. These days it seems people translate the actual game code into a different representation of that same code and that makes it open source? Github is full of these.

It seems like it could go either way to me in the US (not a lawyer, but someone who has a fair amount of experience in reverse engineering / fair use issues). On the one hand, it is fairly clear that producing source code with the explicit goal of reproducing a 1:1 binary is in no way transformative, so that's out. This would be a really hard argument to even attempt. On the other hand, these projects are mostly free…

In a sane world, if brought before a court, the binary itself wouldn't have any protection unless hand authored. The actual creative work/human expression was the source code. The entire point of compiling is to strip that extra data out, leaving pure functional logic that doesn't even strictly match the source logic thanks to optimization.

Then a freshly written project would be completely different with no derivative elements at all; the only commonality between the two codebases is their functional elements. You can compile a decomp into the same binary, but that's only to prove functional equivalence. The intended mode would be with a modern compiler that completely rewrites the logic (it might even have to if it writes it for a completely different computer architecture, which describes every retro console game). Then neither the source nor the compiled artifact would match.

Re: Decompiling a Nintendo 64 game in 84 days

#53

Earlier quoted context omitted.

Using AI is cognitive surrender. It's not your code, it's not your work.

Using typewriters is surrender! Not your handwriting, not your work!

I use AI all the time for coding, but a tool that non-deterministically reaches potentially a different output than I would have produced myself is not analogous to typewriters.

Re: Decompiling a Nintendo 64 game in 84 days

#54

I'm still baffled by RE community aiming for "100% asm match", needing to reproduce specific compiler version, instead of aiming for functional equivalence and cleaner code is there really no tools whatsoever that produce proof certificates for "these two functions do the same thing"?

Game behavior can be tied so closely to quirky hardware behavior that I doubt such a tool would be simple to create. You’d have to verify that your code produces the same hardware state. And different (ie more efficient) code almost by definition produces a different hardware state than the original code. Thus changing the game.

Re: Decompiling a Nintendo 64 game in 84 days

#55

Earlier quoted context omitted.

Using AI is cognitive surrender. It's not your code, it's not your work.

Using typewriters is surrender! Not your handwriting, not your work!

I think it's pretty telling that the only response techbros have to that is some form of false equivalence, every single time.

Re: Decompiling a Nintendo 64 game in 84 days

#56
post #21

It's pretty amazing what you can do when you embrace LLMs, figure out how to build one high-quality rigorous project with them, and then start working on more projects. You become a machine with your workflow, once again limited only by your time/energy, tokens, and your discretion on how to spend it.

[flagged]

> You won't be able to produce as good code

This says more about you than anything else. You weren't able to produce good code before AI, and you are not producing good code after AI.

Re: Decompiling a Nintendo 64 game in 84 days

#58
post #35

Earlier quoted context omitted.

Any advances in emulators recently? I would love to see Nintendo get into a legal tussle with Big AI. Giant douche can fight turd sandwiches.

Aside from Switch emulators which get C&D by Nintendo due to private key copyright infringement issues, nothing with existing emulators would cause a legal tussle. AI has zero impact on it.

> due to private key copyright infringement issues

None of the Switch emulators Nintendo took down had such issues, they all required supplying your own keys.

Nintendo takes them down anyway because they can, and because they have enough money that no individual can fight them on it. Their takedowns have no real legal standing, and there's no reason why they couldn't do the same for every other emulator, other than them simply not wanting to.

Re: Decompiling a Nintendo 64 game in 84 days

#59

Earlier quoted context omitted.

Using AI is cognitive surrender. It's not your code, it's not your work.

Using typewriters is surrender! Not your handwriting, not your work!

If you can't see why your analogy is deeply broken I honestly don't know what to do for you.

Re: Decompiling a Nintendo 64 game in 84 days

#60

I'm still baffled by RE community aiming for "100% asm match", needing to reproduce specific compiler version, instead of aiming for functional equivalence and cleaner code is there really no tools whatsoever that produce proof certificates for "these two functions do the same thing"?

Because byte-for-byte identical output is far easier to measure than trying to test for functional equivalence.

This is also partly a preservation activity so (as best we can create it) identical code generating identical output is a big part of the point.

Post reply on HN