Super Mario 64 has been decompiled

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,737
Trophies
2
XP
8,580
Country
Tuvalu
this is sick. absolutely amazing! i hope the fact that it was leaked doesn't stop people finishing tidying it up. (if it isn't finished already)
@Reecey i thought you might like this bud?
 
  • Like
Reactions: Reecey

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,403
Country
United Kingdom
As someone who has been working with this codebase for quite a while now, it is really a lot more complicated than it looks until you get used to it. Most people's interests are in stuff like adding levels and items and models etc., which cannot be easily done with what was leaked


The thread was crossposted to multiple subreddits

I have not kept up with the Mario 64 stuff on the N64 as much as the Banjo Kazooie stuff and editing done for Rare games but are those not already within the realms of level editors and existing tools?

When I was looking at the code it was more with an eye to doing some of the things on https://gbatemp.net/threads/super-mario-64-has-been-decompiled.542918/page-2#post-8707994 which is what we normally see when code like this gets released (camera tweaks, boss rushes, hard mode tweaks that don't involve some assembly doing a shift somewhere, control remapping without having to worry about edge cases, increasing delays/windows for certain moves, shifting songs from within the game to elsewhere within the game). Some things were not immediately obvious and a bit obtuse but as any fixes or mods made to them will be equally so (3d cameras are hard and all that).
 

Reecey

Mario 64 (favorite game of all time)
Member
Joined
Mar 7, 2010
Messages
5,870
Trophies
2
Location
At Home :)
XP
4,485
Country
this is sick. absolutely amazing! i hope the fact that it was leaked doesn't stop people finishing tidying it up. (if it isn't finished already)
@Reecey i thought you might like this bud?
Thanks for the heads up! Ive only just red up on this fantastic news! I have been following some really cool Mario64 hacks on YouTube there’s some really interesting projects going on lately, whether these have any connection I’m not sure but the fact we can compile mario 64 to other consoles with freedom is a huge accomplishment, excellent work all involved in the project.
 
  • Like
Reactions: DSoryu and cearp

Reecey

Mario 64 (favorite game of all time)
Member
Joined
Mar 7, 2010
Messages
5,870
Trophies
2
Location
At Home :)
XP
4,485
Country
There are some really good historic projects for mario64 on kudos64 now sm64hacks, you can inject the projects into a DS SM64 rom and use it on a DSTwo supercard and play this on your 3DS I have done this plenty in the past and some of the projects are so impressive.

Edit: I think it used to be called Kudos64 maybe someone can correct me?
 
Last edited by Reecey,
  • Like
Reactions: cearp

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,831
Country
Mexico
So does this mean it's graphics can be drastically upgraded now?

In theory, yes, in practice, it still would require some work, because one has to re-model everything, or just import models from newer Mario games, but again, that requires some extra time to be worked, because the developers back then, made tricky workarounds for many things that were still unknown for it's time, after all, 3D Videogame development was on its early days. For example, many people doesn't know that Mario's body isn't textured at all, those are raw colored polygons and nothing else lol.

I'd pay good money for a 3DS port that was completely vanilla, even.

Well, I would need some time to know the 3DS internals and capabilities homebrew-wise, such as what control we have on the system so far. I believe that as today we have full control, so anything is possible inside that tiny but marvelous handheld. I will try to play around with the source code on PC first, and maybe, little maybe I will look if I can port that to the 3DS, if someone can put me in the right direction it would be much appreciated.
 
Last edited by DSoryu,

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,737
Trophies
2
XP
8,580
Country
Tuvalu
btw, good luck porting graphics over. there's no internal model format except for the mario head system. so everything basically is just a bunch of n64 drawcalls :^)
wow that's intense. but still, not impossible to work with. maybe a script to parse those drawcalls and make a model...?
no idea but i won't be surprised if someone manages it.
 

CrashOveride

Well-Known Member
Newcomer
Joined
May 29, 2017
Messages
50
Trophies
0
XP
127
Country
United States
While I am very interested in the progress of the various N64 decomp projects (particularly GoldenEye's) I don't like messing with leaked stuff, particularly a leaked revision of the repo which was uploaded without the permission of anyone on the team. Considering that only 60% of function names are done, according to revo at least, I'd rather wait until the team considers it done.
 

Ecchi95

Well-Known Member
OP
Member
Joined
Jul 7, 2019
Messages
121
Trophies
0
Age
29
XP
891
Country
United States
wow that's intense. but still, not impossible to work with. maybe a script to parse those drawcalls and make a model...?
no idea but i won't be surprised if someone manages it.
That is a misleading statement. Models for almost every individual thing are in neatly-packed binary files. The decompilation did something redundant and turned those binary files into C-like files.

Only some graphics are dynamically generated.
 

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,831
Country
Mexico
btw, good luck porting graphics over. there's no internal model format except for the mario head system. so everything basically is just a bunch of n64 drawcalls :^)

Yeah, expected no more as I said earlier. Now that you confirm this then there's much work to do to port this to other platforms, we will need to re-write everything first to a standard format, and that's a lot by itself.

wow that's intense. but still, not impossible to work with. maybe a script to parse those drawcalls and make a model...?
no idea but i won't be surprised if someone manages it.

Yeh not impossible, and yeah those can be parsed, the problem is that that would require processing everything and write it back to the main code, we'll have to edit everything as the new format to have it working properly, and that takes weeks by my experience.
 

CrashOveride

Well-Known Member
Newcomer
Joined
May 29, 2017
Messages
50
Trophies
0
XP
127
Country
United States
Good luck parsing F3D displaylists to a contemporary model format

--------------------- MERGED ---------------------------

Of particular interest however is that this has been crossposted to a LOT of subreddits, which is very odd considering Nintendo's nature about fan projects.
 
  • Like
Reactions: uyjulian

Ecchi95

Well-Known Member
OP
Member
Joined
Jul 7, 2019
Messages
121
Trophies
0
Age
29
XP
891
Country
United States
Good luck parsing F3D displaylists to a contemporary model format
You can rewrite the graphics routines to not use F3D if you're porting this, and it's already possible to dump graphics to a higher level format while emulating.

You almost don't have to touch the F3D GBI at all. Only a very small number of graphics are dynamically generated.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Psionic Roshambo @ Psionic Roshambo:
    I thought PS4/5 and Xbox One emulation would be kind of easy since they basically just a PC
  • ColdBlitz @ ColdBlitz:
    they sorta are a pc
  • K3Nv2 @ K3Nv2:
    They haslve dedicated on board chips that aren't tweaked like x64/x32 afaik
  • ColdBlitz @ ColdBlitz:
    but its a custom os for both of them
  • ColdBlitz @ ColdBlitz:
    designed for only specific hardware
  • ColdBlitz @ ColdBlitz:
    so you have to learn to emulate that specific hardware which isn't as easy as you'd think
  • K3Nv2 @ K3Nv2:
    It's a locked down Linux distro basically
  • Psionic Roshambo @ Psionic Roshambo:
    I think the only custom hardware is to do with the SSD and a security chip
  • Psionic Roshambo @ Psionic Roshambo:
    Probably combined in one chip
  • K3Nv2 @ K3Nv2:
    They place married security chips onto boards iirc
  • Psionic Roshambo @ Psionic Roshambo:
    Damn Frontier is offering 5Gbps now lol
  • K3Nv2 @ K3Nv2:
    I honestly can't recommend any of the big 3 this years I'd say buy a rog ally z1 if we're being honest
  • Psionic Roshambo @ Psionic Roshambo:
    Honestly after the PS3 and 360 I just went full PC
  • K3Nv2 @ K3Nv2:
    Every games basically cross platform they only have about 6 titles making it worth the $600 price tag
  • Psionic Roshambo @ Psionic Roshambo:
    Didn't see much need for a console, all the advantages have kind of disappeared
  • ColdBlitz @ ColdBlitz:
    the ps3 used to support installing linux because the cpu was so powerful
  • K3Nv2 @ K3Nv2:
    Then the games are $70 and they want to reboot and refresh the same game every year
  • K3Nv2 @ K3Nv2:
    The ps3 was always Linux they just found a way to make it open source
  • ColdBlitz @ ColdBlitz:
    I'm avoiding buying from the big 3 at all atm
  • Psionic Roshambo @ Psionic Roshambo:
    At one point PC game pads where poorly supported, loading a game had setup, it was complicated. Now it's almost as easy as a console.
  • ColdBlitz @ ColdBlitz:
    nintendo needs to up their game soon
  • K3Nv2 @ K3Nv2:
    Yeah even bt support for Xbox one controllers are just as easy as pairing
  • ColdBlitz @ ColdBlitz:
    considering the steamdeck can emulate the switch (yikes) theres almost 0 reason to buy the switch apart from playing online and using cartridges
  • K3Nv2 @ K3Nv2:
    Xinput and 360 dongles were a driver nightmare
  • K3Nv2 @ K3Nv2:
    I remember having to manually put in drivers and what not
    K3Nv2 @ K3Nv2: I remember having to manually put in drivers and what not