Earlier quoted context omitted.
[flagged]
Using AI is cognitive surrender. It's not your code, it's not your work.
Decompiling a Nintendo 64 game in 84 days
101–110 of 190 posts
Re: Decompiling a Nintendo 64 game in 84 days
#102For people who've done matching decomps: what burned the most calendar time for you, toolchain freeze or the last 5% of non-matching functions?
I just did one last weekend, but it is a game that was clearly written in assembler in the first place (Elite 8088 CGA). Trying to reconstruct the original build environment that Andy Onions (where are you?) used took some time. It was assembled with 16-bit MASM, but you can't easily run 16-bit exes under 64-bit Windows, so a bit of a kludge to set up DOSbox where the LLMs can push/pull in-and-out of it while being a…
there was official source code release for 6502 port, why not match names from that one?
Re: Decompiling a Nintendo 64 game in 84 days
#103Earlier quoted context omitted.
The code assets are just as copyright encumbered as the art assets.
None of the original source code exists in these projects. It’s all created from scratch. Copyright for this new code is owned by the person doing decompilation. No one knows how similar to the original it is or not, just that it compiles to the same output. Edit to clarify: by not exist, I mean it is not publicly available.
A reimplementation or a behavior-based clone is an entirely different legal world from decompilation.
Re: Decompiling a Nintendo 64 game in 84 days
#104Earlier quoted context omitted.
When I was in high school, graphing calculators were pretty new. New enough that most teachers had not yet encountered them. I was a pretty nerdy kid even then, and I saw graphing calculator as 'portable computer' in 1993! So, of course I wanted one. When our teachers found about them, they banned the use of graphing calculators, some teachers going so far as to only allowing 'four-bangers' (a basic one) for classes…
If I hand you a math problem, and you point your camera at it and write down ChatGPT’s answer, you are definitely not doing math.
I jest...
Re: Decompiling a Nintendo 64 game in 84 days
#105Earlier 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 LLMs at work all the time, and it truly does feel like somebody else coding for me, and me reviewing, cleaning up, and asking for changes. It's really not my work, nor is it my code, but I'm still fine bringing it in.
I also don't use LLMs on my personal code done in my free time because I want my brain to still be fully functional in a few years.
Re: Decompiling a Nintendo 64 game in 84 days
#106Earlier quoted context omitted.
None of the original source code exists in these projects. It’s all created from scratch. Copyright for this new code is owned by the person doing decompilation. No one knows how similar to the original it is or not, just that it compiles to the same output. Edit to clarify: by not exist, I mean it is not publicly available.
A decompilation is not clean room, nor is it "created from scratch". If that was the case, you could just compile a program to remove the copyright, because the machine code doesn't resemble the source code at all either. A reimplementation or a behavior-based clone is an entirely different legal world from decompilation.
In fact, the goal of most decomp not to produce the same binary, that’s just used as a validation.
Re: Decompiling a Nintendo 64 game in 84 days
#107Earlier quoted context omitted.
Using AI is cognitive surrender. It's not your code, it's not your work.
When I was in high school, graphing calculators were pretty new. New enough that most teachers had not yet encountered them. I was a pretty nerdy kid even then, and I saw graphing calculator as 'portable computer' in 1993! So, of course I wanted one. When our teachers found about them, they banned the use of graphing calculators, some teachers going so far as to only allowing 'four-bangers' (a basic one) for classes…
Then he brought the graphing calculators in and had us plot graphs on those, compare them to our hand sketches, and set domain and range on the graph based on the critical points we found. He emphasized that doing the math beforehand let us use the graphing calculator effectively, and without knowing the math the calculator was useless.
Which sounds like the most sensible voices w.r.t. AI. At least for now. Six months ago I would not trust AI for any but rather menial tasks, but frontier models are able to do more and more of what I do every time I turn around. The TI-83 has been a fixed quantity in terms of capability since the 90s, and it never computed derivatives itself.
Re: Decompiling a Nintendo 64 game in 84 days
#108Earlier quoted context omitted.
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.
Really though? You have to try really hard to make your code that unstable - and well written code isn't that. Seems more like voodoo.
Emulators constantly run into games that don't run because of specific hardware nuances that may or may not have been intentionally used (Ex. relying on exact cycle counts, reading uninitialized memory, changing values while they're used, etc.).
Re: Decompiling a Nintendo 64 game in 84 days
#109What'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.
> Historically there was a notion of "clean room" reimplementation These projects start off with the original assembly code and use it actively throughout all stages. This is about as far away from clean room as you get.
When run through a disassembler, in most cases, it’s probably the first time anyone has ever looked at the assembly (assuming PlayStation or newer). There are no comments or labels or symbols. Not what most people would consider “the original assembly”.
Re: Decompiling a Nintendo 64 game in 84 days
#110Earlier 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.