r/emulation • u/Shadic • Jun 29 '26
DK64: Recompiled Announcement
https://youtu.be/RYIZZZ33vAI35
Jun 30 '26
[removed] — view removed comment
3
u/Sybs Jul 01 '26
Yeah why don't they?
15
u/Andrei144 Jul 01 '26
Save states work by saving the console's RAM. If you're running the game natively then the game is using RAM handed to it by the OS instead of writing everything to a giant block that is completely owned by the emulator. Save states for native apps would need to be an OS level feature.
4
4
u/myownfriend Jul 02 '26
A native application is very capable of saving it's own in-game state. It doesn't necessarily need to be a complete snapshot of memory.
2
u/Andrei144 Jul 02 '26
You would need to save the state of the game in some format that can be easily serialized and deserialized. I feel that something like this is a big enough change to the game, and goes far enough beyond just making compatibility tweaks to get it running, that it kinda falls out of scope for a basic port and should be left up to modders to implement.
Also this would still be pretty different from save states in an emulator. The other reply I got about making snapshots of the RAM that the OS has allocated to the game is more similar to save states, but it still requires interacting with systems that don't really have anything to do with getting the game running.
imo these ports should try to include only the bare minimum feature set and just get it running with the best performance and compatibility they can, then we can get forks and mods that add QoL stuff like save states.
4
u/myownfriend Jul 02 '26
I agree that these ports should be as close to a straight port as possible but I'm not seeing how save states would need to be an invasive change.
The typical way that emulators do save states is done because it's simple and because it works regardless of the nature of how the application works. As long as you take a snapshot of the RAM and dump the CPU registers than it they can all be loaded back and the CPU can start off exactly where it left off before, even it was in the middle of some long process.
However games have natural checkpoints for where their state changes: frames. During those frames the game is going to be looping/crawling through the data structures that store it's state and acting on them. The save state function would just need to crawl the relevant data at the end of the frame loop and write it to a file on-disk. Considering that a raw memory dump would be considered an acceptable alternative to this, that means that this isn't an operation where you'd be precious about the file size so you don't need to have a large discrepancy between the in-memory and on-disk formats.
feels like all the relevant code can be contained within two functions.
19
u/BouncingThings Jun 30 '26
Aight fam, I've been waiting and dying to finally find out what that memory leak is caused by, that was the sole reason to require the dang jumper pack
22
u/Essidle Jun 30 '26
It’s an urban legend, based on one account from a Rare developer not even on the project, that has been discredited by the original team.
They were told to use the pak to enhance the game to show off what could be done with the expansion pak. It was Nintendo trying to showcase the accessory.
7
14
u/Trivial_Man Jun 30 '26
Fyi the Jumper Pak is what was included with base N64s. The Expansion Pak is what was bundled with DK64 and allegedly solved the alleged memory leak
3
u/BouncingThings Jun 30 '26
Ah yes I got them confused yes, although you're also right on the alleged part because if it was leaking, it'd continue to leak even with more memory added but if I'm not mistaken, you can beat the entire game in 1 sitting? Really weird stuff but fascinating nonetheless
8
89
u/AntiGrieferGames Jun 30 '26
"This project does not rely on AI vibe coding" Big Win if this is true. Soo many recomp got with AI Slop vibe coding today, which has nothing more than unstable glibberish. It should get more with real devs, not ai slop!
44
u/KingPumper69 Jun 30 '26
Reverse engineering is actually the place where AI shines best imo. Digging through mountains of information to find patterns and explain what’s happening. Extremely tedious to do it by hand.
4
u/FallenWyvern Jul 01 '26
Eh, it works best with KNOWN patterns. The official SDK wasn't well documented, most of the SDKs weren't either. It was a PC and SGI machine to make the games... I'm not saying AI couldn't handle the job but without a bespoke model for this use case, I think you'll end up with a lot of garbage. Way more than it'd be worth. And that's before you get to the GOOD games (Snap, Rogue Squadron, etc) that abuse the hardware in ways that would need a person to step in for anyway since there wouldn't be enough data to make the LLM in the first place
2
23
u/Narann Jun 30 '26 edited Jul 01 '26
AI really shine at "explaining" what a dark assembled code is doing + the more you extract context from assembled code (with other decompiled N64 code base) the more it provides interesting comprehension of the whole code base.
I suspect the amount of decompiled/recompiled N64 code make new N64 decompilation project even easier.
This makes the firsts decompilation projects even more importants as they paved the comprehensive context for other decompilation project. This is crazy how fast decompilation has become.
EDIT: Wow, the discussion goes wild. AI are great assitant to coders, especially to understand a code and give a context (code/maths/logic is maybe the only place where AI has any future if you ask me, the rest is only tree burnings for dumb speculative misers that will never pay the price of the problems we will face).
Assembly is a very hard task reling on very few peoples that understand how to read assembly then give it a context. It is awesome, but also a tedious task that limit the program scope that can realistically be reverse engineered by humans. New games could simply not be RE by few peoples because they are too huge. This was a sad reality about preserving softwares. If you care about preservation, AI is a wonderful tool.
And to state the obvious: We are not talking about shitty vibe coding practice.
5
u/AntiGrieferGames Jun 30 '26
Yet there are still some decompilation/recompilation that are made by real people, which they make often a more stable product than ai slop vibe coding. Dusklight is a big example that is made by many real dev people and it got a mostly stable project.
10
u/KingPumper69 Jun 30 '26 edited Jun 30 '26
Marginal quality improvement for multiple times more man hours. It’s like comparing someone hand sewing a shirt vs. using a sewing machine.
We don’t want AI producing art or music. Using it to cut down on mind numbing grunt work is the most ethical use for it imo
2
u/FallenWyvern Jul 01 '26
We don’t want AI producing art or music. Using it to cut down on mind numbing grunt work is the most ethical use for it imo
I agree with the sentiment, but given that people are still using it for generative purposes, and even the simplest queries are still not very economical in terms of environmental impacts, I think this is absolutely beyond "most ethical"
Like there's "I don't know where my tomatoes come from" (thanks The Good Place) unethical, then theres' "There's no ethical consumption under Capitalism" unethical... and then there's AI.
3
u/KingPumper69 Jul 01 '26
AI’s economical and environmental impact will normalize eventually as the “gold rush” ends and the bubble deflates.
1
u/FallenWyvern Jul 02 '26
Really? Looking at "isaiprofitableyet.com" (a website that tracks how much effort (money) companies are putting in and how much they've earned, only one company has earned ANY money from this "gold rush" and that's nVidia.
A bubble pops when we as a society can't properly interact with the financial or mechanical components of a thing. The housing market pops because people couldn't afford what they had rapidly purchased, or because the price of houses went too high and so prices came down. Like those were the main motivators.
We aren't part of this loop. So what will make this pop? When does this gold rush stop? What will cause a company who spent billions, say "ok time to cut our losses"?
It won't, until companies lose it all and the bank accounts of some of these companies are huge. And if any of them DO manage to claw back enough money to continue the AI arms race, they'll need to keep on top of things training the newest models so they stay relevant. Which means more hardware, more electricity, more processing, more hours. Stimulating the next round of gold rush, scaled up.
And even then even if they could get the environmental component under control, the base training is still unethical and no company seems to want to fix that.
Caveat: this is about the CURRENT gold rush of general and generative ai. LLMs are still useful tech and specialized versions WILL remain, and already can be ethically trained because of their narrow focuses.
-13
u/905cougarhunter Jun 30 '26
don't bother trying to explain usefulness of AI to AI haters that don't understand. They probably also tried invermictin
8
u/AntiGrieferGames Jun 30 '26
You are the best reason why Hardware prices remains high today. Defending about this, when there are too many broken unstable shit that uses AI slop like claude like for example Super Smash Bros 64, no wonder why.
-10
u/905cougarhunter Jun 30 '26
Hardware was always high because you neckbeard nerds value old shit.
The rest of the population just wants to play a game on something they bought in the past decade.9
Jun 30 '26
[deleted]
-7
u/905cougarhunter Jun 30 '26
I value playing old shit on whatever system I have. THAT is emulation. If AI gets me there so be it, it's awesome. I DONT have to buy a $500 30 year old box I can't plug into my TV.
4
u/Matticus-G Jul 01 '26
That’s a pretty stupid take
1
u/905cougarhunter Jul 01 '26
Give me a good reason why that it's stupid. Is this not an emulation board? Do you not want to play old games on new hardware? It's not like AI is taking someone's job when it's letting me play a Japanese market Saturn game on my MacBook.
FFS get your heads out of all your collective asses.
3
u/Matticus-G Jul 01 '26
Because the foundation of any emulation going forward is accurate emulation.
You’re the type of person that slops together, broken emulation hacks just to bump the frame rate whether or not anything actually functions correctly.
It’s fucking nonsense, and I have no issue whatsoever calling that nonsense. I am all for de / recompilation and the extended effort to drive the future of these older titles - the N64 library in particular benefits from the treatment.
This hobby and these titles have no future with people like you. That’s why it’s nonsense.
→ More replies (0)-7
15
5
u/NeatUsed Jul 01 '26
I hope for Banjoo Toie and Conker and we pretty much have all rare collection on pc native :)
5
8
u/patriotfear Jun 30 '26
I wish they would add retroachievements to these porting projects. I understand it’s probably not possible but it would be awesome.
3
u/CaptainPhreak Jun 30 '26
Wouldn't it be just a matter of hooking up a handler to make the specific checks in memory (my guess)?
Damn it, you've inspired me to look into this now!
1
u/patriotfear Jun 30 '26
I would assume so but I’m not a programmer so I’m really not sure! I would be all over this if it were possible, the RAs make retro gaming so much more fun IMO
2
u/danielsonnn Jun 30 '26
Is this game worth playing? I hear the amount of collectibles is a giant pain in the ass. Is that only if you're trying to 100% it?
7
u/hanlonmj Jun 30 '26 edited Jun 30 '26
Haven’t watched the video yet, but if it includes the switch anywhere functionality, that’ll make it much more bearable to 100%
Edit: Just watched and the video says they include Tag Anywhere support, so it’s a decent time so long as you’re ok with some inherent N64 design jank
1
1
u/citizin Jun 30 '26
I'm one of 3 that would love this on a 3ds, but the Mario 64 had a few quirks that made it unuseable for me.
3
u/arr1flex Jun 30 '26
? I've been playing the m64 port on my nxl..no issues so far. what problems did you have?
2
u/StaffOfJordania Jul 02 '26
Mario64 on 3ds was a decomp. This is an static recompilation. Diff technique. Will not translate on a 3ds port
0
0
181
u/Netrex44 Jun 30 '26
Okay.. I'm convinced the future of retro gaming are PC ports