Live data from Hacker News

Super Mario 64 has been decompiled

github.com

141–150 of 180 posts

Re: Super Mario 64 has been decompiled

#142
post #118

Earlier quoted context omitted.

I wrote to SGI in high school asking for some info on their computers and they sent back a stack of beautifully printed, full-color brochures. The Indy had a webcam, which was very rare in those days. Also included was a brochure on the Indigo workstation, which Industrial Light and Magic used for Jurassic Park, etc. Nintendo is a little mysterious when it comes to what their actual tooling was, but I remember Donkey…

I have an SGI rotting in my garage, what's amazing about them is the quality of the monitor. For CRT displays, the best damn monitor I ever experienced, just CRISP. The Nintendo 64 had a MIPS R4300 chip, the SGI Indigio also used the MIPS Rchip, the early one had R4000/R4400 chip, the later ones R8000+ chips. I can only speculate that by using SGI, you could run some of your non specific N64 code locally and debug fa…

Can you link more info about Sony's devkits using FreeBSD?

BSD would've been a strange choice as the Playstation 1 debuted on December 3rd, 1994. "FreeBSD 1" came out just 13 months earlier

The Playstation 2 "TOOL" machines ran Red Hat for some of them, which was a bit more mature by 2001

The Playstation 3 and 4 though both run Net and FreeBSD under the hood internally though

Re: Super Mario 64 has been decompiled

#143
post #68

Earlier quoted context omitted.

I honestly love coming to HN to see posts like this and comments like yours. It is always so neat to see the other sides of software engineering. You listed 4 acronyms and I have no idea what any of them are or how they fit into this story but all I want to do is deep dive into each one. It is also awesome to see people so interested in things that I've never even encountered before.

IRIX [1] was the version of SVR4 UNIX which ran on SGI [2] computers. QEMU [3] is an emulator used to run programs for one machine on another. N64 [4] is the Nintendo 64 games console. SGI Indy [5] was a desktop SGI workstation from 1993. [1] https://en.wikipedia.org/wiki/IRIX [2] https://en.wikipedia.org/wiki/Silicon_Graphics [3] https://www.qemu.org/ [4] https://en.wikipedia.org/wiki/Nintendo_64 [5] https://en.wiki…

Thank you, manual google paster.

Re: Super Mario 64 has been decompiled

#144

Earlier quoted context omitted.

WINE is not emulating/translating instructions to a diffrent ISA. It rather has a win32 loader and inserts some shims to map some calls to windows library functions and others to native(as in host ex. Linux). That's how I understand it. You can however theoretically run x86 WINE to run a x86 windows binary on ARM with Qemu user emulation.

Doesn’t WINE support 16-bit emulation for Win311-stuff because you can’t run 16-bit code in x64 mode? Or was that a Windows limitation?

Wine has never ran 16-bit Windows programs in 16-bit mode. They are instead translated to 32-bit at runtime using some magic, especially using 32-bit addresses to emulate 16-bit real mode.

Re: Super Mario 64 has been decompiled

#145
post #105

What an awesome project. I would love to mess with random stuff like whirlpool strength and see what it does to the game. Efforts like this to make the decompiler output intelligible e.g. meaningful variable names make this much more approachable for a technical person like me without much of the niche platform-specific reverse engineering skills. In fact there are countless games I'd love to dive into like this.

Train a ML system on a range of parameters (whirlpool strength) until you have a decent port of the game to a neural network and/or tree-based algo. Then try to optimize the game based on people’s enjoyment.

I think it would be much easier to use change the parameters directly in the original program. Just have to use a gradient-free optimizer.

Re: Super Mario 64 has been decompiled

#146

Earlier quoted context omitted.

It was a heavily modified version of Mario 64: "Miyamoto: We were using the Super Mario 64 engine for Zelda, but we had to make so many modifications to it that it's a different engine now. What we have now is a very good engine, and I think we can use it for future games if we can come up with a very good concept. It took three or so years to make Zelda, and about half the time was spent on making the engine. We def…

ONLY 3?!! That game was massive! That sounds like an unbelievable feat of engineering even if the base engine was built off of SM64.

Then they made Majoras Mask in around 18 months (which uses same engine and assets).

Re: Super Mario 64 has been decompiled

#147

Earlier quoted context omitted.

Those brochures are probably worth real money on eBay if you still have them, a PowerSeries brochure just sold for $200! By the time the Indy came out, the Indigo2 had replaced the Indigo, and I suspect a midrange Indy was a good match for a midrange Indigo1 (at much lower cost). Nintendo made an N64 dev board for the Indy, essentially an N64 on a GIO board, complete with an adapter card to connect controllers.

Indy was a good match for a midrange Indigo1 The joke always was that the Indy was the Indigo without the go :-) But it was a decent enough machine to develop on, you didn’t need the 3D stuff if you spent all day in Emacs or compiling. Whereas an Indigo was really targeted at say CAD users.

Haha that was because the base Indy was shipping with 16MB of RAM and IRIX 5 was too bloated for that to be usable. Meanwhile everyone with Indigos kept running IRIX 4 until things got better around 5.3.

The Indy had XZ graphics available, which I believe were the same as the top Elan option available on the Indigo (4 GEs)

Re: Super Mario 64 has been decompiled

#148
post #118

Earlier quoted context omitted.

I wrote to SGI in high school asking for some info on their computers and they sent back a stack of beautifully printed, full-color brochures. The Indy had a webcam, which was very rare in those days. Also included was a brochure on the Indigo workstation, which Industrial Light and Magic used for Jurassic Park, etc. Nintendo is a little mysterious when it comes to what their actual tooling was, but I remember Donkey…

I have an SGI rotting in my garage, what's amazing about them is the quality of the monitor. For CRT displays, the best damn monitor I ever experienced, just CRISP. The Nintendo 64 had a MIPS R4300 chip, the SGI Indigio also used the MIPS Rchip, the early one had R4000/R4400 chip, the later ones R8000+ chips. I can only speculate that by using SGI, you could run some of your non specific N64 code locally and debug fa…

Was FreeBSD really a requirement? I used to have a Sony Net Yaroze that allowed me to build PSX executables on my PC, using Sony's custom GCC-based toolchain. It didn't require FreeBSD.

Re: Super Mario 64 has been decompiled

#150
post #131

Earlier quoted context omitted.

SVR4: UNIX System V Release 4 https://en.m.wikipedia.org/wiki/UNIX_System_V UNIX: Actually Unix. Not an acronym. https://en.m.wikipedia.org/wiki/Unix

"Unix. Not an acronym." Sorta. "In 1970, the group coined the name Unics for Uniplexed Information and Computing Service (pronounced "eunuchs"), as a pun on Multics, which stood for Multiplexed Information and Computer Services."

Uniplexed sounds like a joke word.
Post reply on HN