News for hackers. Stuff that matters.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by skrrtww on Wednesday May 15, 2024 @10:40AM (#40367583)
To operate this tool, you still need to disassemble the ROM up front and annotate it heavily before it can be recompiled. This tool is very nice, to be sure, but the hyperbole about anything close to one-click generation of standalone executables for an arbitrary ROM is getting out of hand.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by slongfield on Wednesday May 15, 2024 @12:51PM (#40369380)
To be fair, N64 is not the PS2 or Gameboy--there are only 388 games that were released for it. Going through all of the games that were released and shepherding them through this process is feasible.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by kwanbix on Wednesday May 15, 2024 @03:44PM (#40371465)
And there are probably fewere games that are worth doing. Maybe 100? 200?
Re:Nearly all Nintendo 64 games can now be recompiled into n... by tristor on Wednesday May 15, 2024 @03:53PM (#40371578)
I really liked the N64, but if we're being charitable it's probably like 30-40 games. For any given console, even those that achieve legendary status, the game quality follows a Pareto distribution, 80% is crap, 20% is worth playing after the console has left the public mind.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by TheGRS on Wednesday May 15, 2024 @05:48PM (#40372821)
What no one wants to revisit Nagano Winter Olympics or Tetrisphere? Its probably closer to 50 if you want to include some of the lesser-known but interesting titles IMO. One of the most interesting games was Body Harvest since its clearly a prototype for a lot of what became GTA3
Re:Nearly all Nintendo 64 games can now be recompiled into n... by tacker2000 on Wednesday May 15, 2024 @06:39PM (#40373249)
Haha Nagano! I played countless hours of ski jumping with my friends back then
Re:Nearly all Nintendo 64 games can now be recompiled into n... by sixothree on Wednesday May 15, 2024 @09:08PM (#40374202)
And for consoles like PS2 or OG Xbox or newer, so so many games have newer versions on other platforms
Re:Nearly all Nintendo 64 games can now be recompiled into n... by acchow on Wednesday May 15, 2024 @09:31PM (#40374337)
20% seems far too generous
Re:Nearly all Nintendo 64 games can now be recompiled into n... by phatskat on Tuesday May 21, 2024 @05:36PM (#40434303)
> For any given console, even those that achieve legendary status, the game quality follows a Pareto distribution, 80% is crap, 20% is worth playing after the console has left the public mind.

Is this just your best guess? Because you sound confident and then cite the Pareto distribution, but just like a certain Internet personality, there’s no data to support a claim you’re making but it does _sound_ factual.

Re:Nearly all Nintendo 64 games can now be recompiled into n... by BaculumMeumEst on Wednesday May 15, 2024 @07:02PM (#40373416)
Every game on the system will have some people who are super nostalgic for it. When many of us were kids, we only had a few games, and we played the hell out of them.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by kilburn on Wednesday May 15, 2024 @04:26PM (#40371962)
In fact, Thabeast is beating every N64 game, and he means ALL of them. [1]

He has already completed all games, but the videos are waaay behind (he's releasing one video/game a week).

[1] https://www.youtube.com/@Thabeast721/videos

Re:Nearly all Nintendo 64 games can now be recompiled into n... by coolmitch on Wednesday May 15, 2024 @05:24PM (#40372554)
if you're interested in this kind of thing, The Mexican Runner beat every NES game (over 700 of them [1]) including such gems as Miracle Piano Teaching System, which took 91 hours to beat and required him to become quite proficient at actual piano playing [2]

[1] https://docs.google.com/spreadsheets/d/1KDNGI76HoMNyYLL6RqWu... [2] https://youtu.be/PB_LMW72crY?t=3997

Re:Nearly all Nintendo 64 games can now be recompiled into n... by doublepg23 on Wednesday May 15, 2024 @08:29PM (#40373977)
Wow that was incredible, I love internet stories like that.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by doublepg23 on Wednesday May 15, 2024 @12:36PM (#40369177)
I don't think that's true. The video in the post shows a no-name n64 game being recompiled and running fine. No annotation needed.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by amlib on Wednesday May 15, 2024 @01:21PM (#40369797)
The video also makes it clear that only games using a certain microcode works for now. I imagine there are many parts of HLE emulation that gets added to the recompiled software as wrappers and compatibility code to make it all work, so in a sense this may be more akin to an embedded emulator into a native binary (recompiled code), which can overtime be worked on to add new features, fix shortcomings of the original software and make it more "ergonomic"/compatible with it's new target platform. But such work can only feasibly be achieved by reverse engineering the software and giving it human readable symbols. In a sense there is almost as much work to do as on the previous decompilation projects, but you can get results (run the game) right away (or at least much faster than traditionally), assuming of course the game uses a compatible microcode and isn't doing anything fancy that depends on the intrinsics of the n64 architecture.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by DaiPlusPlus on Wednesday May 15, 2024 @01:38PM (#40370020)
There’s also inevitably going to be timing/performance-related bugs - the N64’s devkit docs say it runs games under a thin OS for multi-threading[1] so that’s another opportunity for things to go wrong.

Also, after conversion these games are still designed and hardcoded for an N64 controller and 4:3 aspect-ratio - that’s hardly “native” as far as PC gamers are concerned.

[1] https://ultra64.ca/files/documentation/online-manuals/man/pr...

Re:Nearly all Nintendo 64 games can now be recompiled into n... by lordgilman on Wednesday May 15, 2024 @06:52PM (#40373335)
That operating system is statically linked into the game binary.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by paines on Thursday May 16, 2024 @06:52AM (#40376937)
Does that mean I could have rolled an OS for my n64 together with game? l
Re:Nearly all Nintendo 64 games can now be recompiled into n... by christkv on Wednesday May 15, 2024 @01:37PM (#40370007)
I’m guessing it works for the standard Nintendo provided microcodes.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by speps on Wednesday May 15, 2024 @11:23AM (#40368158)
Except this work can be done once, stored somewhere and shared. Take a ROM (it means read-only after all) and get native port out...
Re:Nearly all Nintendo 64 games can now be recompiled into n... by Hamuko on Wednesday May 15, 2024 @02:33PM (#40370649)
Shared legally?
Re:Nearly all Nintendo 64 games can now be recompiled into n... by TehCorwiz on Wednesday May 15, 2024 @02:53PM (#40370872)
You can share the prepared binary because it contains no trace of the rom. The rom is still required to play the game.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by GuB-42 on Wednesday May 15, 2024 @03:41PM (#40371429)
I wouldn't count on it, it is still derivative work and I am sure the licences for the games forbid this. Some companies may let it slide, but Nintendo is known to be aggressive about their intellectual property.

And you will probably have a hard time arguing that it doesn't promote piracy. You can't get "ROMs" officially. You have to extract them from the cartridge with specialized equipment, or maybe in some other way, but it is not as simple as reading from a CD. It means that most people will simply get them from illegal sources. With an emulator, you can say it is for "homebrews", but if you recompile a commercial game, you can't use this argument.

Re:Nearly all Nintendo 64 games can now be recompiled into n... by immibis on Wednesday May 15, 2024 @04:34PM (#40372044)
Nintendo hasn't been taking down any projects that can't work without a ROM input. They'll change that eventually, but for now they are not. You can't share a modified ROM but you can share binary patches.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by derefr on Wednesday May 15, 2024 @04:55PM (#40372249)
> You can't get "ROMs" officially. You have to extract them from the cartridge with specialized equipment, or maybe in some other way, but it is not as simple as reading from a CD.

Nintendo has, in fact, sold the public ROMs before (and I don't just mean custom emulator executables wrapping ROM payloads that get delivered encrypted onto DRMed consoles.)

Specifically, I'm talking about the NES Classic and SNES Classic. These little boxes use multi-image emulators, rather than Nintendo's usual approach of a customized single-image emulator for each game. And the ROMs used by these systems are just sitting there as files on disk. The disk isn't encrypted, either; nor is the bootloader or kernel integrity-signed; or really anything like that. You don't need to "jailbreak" these things — they act like Android phones, where you can just reboot them into restore mode and plug them into a computer with a USB cable, and see a virtual disk. The "modding tools" for them just drop a new kernel with wi-fi support into their /boot partition! (And you don't even need to go that far to read the ROMs off the rootfs — any Linux PC will work to mount it.) So any DMCA "they used DRM, which means their intent was to license you X, not sell you X" arguments don't apply. They did nothing to stop people from extracting these ROMs.

By buying these systems, you're effectively buying "a box full of ROMs" directly from Nintendo (the IP rights-holder for said ROMs), at retail, as a "money for goods" transaction. So now, by the first-sale doctrine, they're your ROMs, and you can do with them as you please.

This is true as surely as buying a DVD box-set means you now own those DVDs, and can do with those as you please. (Part up and resell the DVDs individually? Sure, why not!)

Or — for perhaps a more interesting example — as surely as buying a stock images or sound-effects library on CD (even second-hand!) implicitly brings with it the IP rights to use those assets in derivative works you create. The primary-market purchaser didn't have to agree to any kind of license terms at point of sale? First-sale doctrine applies to that IP from then on! (Amusingly, Nintendo redistributed exactly such stock-image CD assets embedded into Mario 64 — so their lawyers are double-bound to agree that this particular interpretation of first-sale doctrine should pertain.)

Re:Nearly all Nintendo 64 games can now be recompiled into n... by anthk on Wednesday May 15, 2024 @07:03PM (#40373425)
The license of the ROMs it's to play them, not to exploit them.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by thejazzman on Thursday May 16, 2024 @12:04AM (#40375093)
I'm pretty sure all roads lead to either playing the game or otherwise not doing anything of value to Nintendo whatsoever (ie who cares if you bury a box of roms in your yard)
Re:Nearly all Nintendo 64 games can now be recompiled into n... by anthk on Thursday May 16, 2024 @07:07AM (#40377027)
You can use the ROM data for a ROM you purchased with a libre engine, you can't use the code to recompile it.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by ninkendo on Thursday May 16, 2024 @08:16PM (#40384958)
The license also says “unless otherwise required by applicable law”, and applicable law here in the US is the DMCA, which says that you can make copies for the purposes of playing the game on different hardware [1]… so long as you don’t need to circumvent copy protection in order to do so. Since the system doesn’t have copy protection, the law permits you to do this even if the license does not.

This is the odd thing about the DMCA… rights holders can prevent you from doing something in their license, but then the law can override that by allowing you to said thing… unless there is any sort of copy protection involved, in which case the law doesnt override the license.

- [1] Here I’m interpreting this as “format shifting”, which has largely been considered fair use by the courts. It’s the reason Apple got away with selling the iPod with CD ripping software and told customers to rip their CD collections… since CD’s didn’t have copy protection, the DMCA provisions didn’t apply, and thus it was not explicitly illegal to copy your CD’s to your iPod. And the prevailing view was that copying your own CD to your own other device was fair use so long as you didn’t sell the copy or anything. I would wager that the ROM situation on the NES/SNES classic is similar.

Re:Nearly all Nintendo 64 games can now be recompiled into n... by MaxBarraclough on Wednesday May 15, 2024 @05:23PM (#40372534)
> it is still derivative work

I don't think that's right, I think it's essentially considered the same work under copyright law. Apparently compilation doesn't fulfil the criteria of derivative works.

https://opensource.stackexchange.com/a/6435/

Re:Nearly all Nintendo 64 games can now be recompiled into n... by ars on Wednesday May 15, 2024 @06:00PM (#40372940)
A shrinkwrap license is not a real license. The game is copyrighted, and fair use applies.

And if you want to avoid the license just steal it from someone. You never agreed to a license, but you are still required to follow copyright. (I've obviously being a little sarcastic, but license agreements on software are meaningless, even if a company claims they have meaning.)

Re:Nearly all Nintendo 64 games can now be recompiled into n... by MaxBarraclough on Wednesday May 15, 2024 @05:07PM (#40372358)
> You can share the prepared binary because it contains no trace of the rom.

This is wrong. Please do not confidently present your guesswork as fact.

If it were true, copyleft would have no chance of working; binaries compiled from copyleft-licensed source-code would not be subject to the copyleft licence.

Re:Nearly all Nintendo 64 games can now be recompiled into n... by blindstitch on Wednesday May 15, 2024 @02:42PM (#40370755)
100% legal if you delete within 24 hours.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by gurchik on Wednesday May 15, 2024 @02:51PM (#40370858)
Source?
Re:Nearly all Nintendo 64 games can now be recompiled into n... by Retr0id on Wednesday May 15, 2024 @03:02PM (#40370966)
That guy's uncle works for Nintendo
Re:Nearly all Nintendo 64 games can now be recompiled into n... by cauefcr on Wednesday May 15, 2024 @03:07PM (#40371027)
True in Brazil, is it true anywhere else?
Re:Nearly all Nintendo 64 games can now be recompiled into n... by thiagoharry on Wednesday May 22, 2024 @02:31PM (#40444403)
This is not true in Brazil. In Brazil, this is just an urban legend that several sites with ROMs spread in the 90s. By Brazilian law, you cannot download a ROM if you do not own a copy. It is possible that this rumor of 24hs is based in some old law that is not applicable anymore.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by ars on Wednesday May 15, 2024 @05:57PM (#40372909)
It's legal if the recipient owns the game, it would be covered under fair use for compatibility purposes.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by ldjb on Wednesday May 15, 2024 @07:07PM (#40373448)
Note that this is not true in many jurisdictions.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by Hamuko on Thursday May 16, 2024 @01:13AM (#40375404)
Is it in any? Because I don't think just adding a "You need to own the game to download this binary" text to your GitHub repo is going to do a lot legally.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by keb_ on Wednesday May 15, 2024 @11:45AM (#40368459)
Very true. There is nothing special about this tool at all. Nothing to see here folks.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by darby_eight on Wednesday May 15, 2024 @12:58PM (#40369485)
> you still need to disassemble the ROM up front and annotate it heavily before it can be recompiled.

Why? Surely it's more straightforward to do binary-to-binary translation. No human input needed!

Re:Nearly all Nintendo 64 games can now be recompiled into n... by immibis on Wednesday May 15, 2024 @04:35PM (#40372062)
For example, Zelda (both of them) load segments of code from the cartridge at runtime. The recompiler needs to know which areas contain code, and the original relocation-applying code for MIPS instructions obviously won't work on x64 instructions either, so it needs to know how the relocations work.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by ambyra on Wednesday May 15, 2024 @04:45PM (#40372148)
What is the process, and can any of it be chatgpted?
Re:Nearly all Nintendo 64 games can now be recompiled into n... by 38 on Thursday May 16, 2024 @12:28AM (#40375200)
Get out.
Re:Nearly all Nintendo 64 games can now be recompiled into n... by advael on Thursday May 16, 2024 @04:40AM (#40376350)
I think "but using the tool takes time and effort" is a good but not perfect criticism of a tool that purports to reduce time and effort spent. As many asinine CEOs are making outsized claims about generic "productivity" improvements from various tools in this space and similar ones all the time, I get this instinct. However, it does not make sense when the use of the tool is anything other than "something you could already do, just faster"