Page 1 of 1

Super Mario 64 for GameCube, builder script

Posted: Mon Jul 06, 2020 12:12 am
by patters
Hi all,

Since it's not an official release preserved by the Redump project, the fully working Super Mario 64 for GameCube is very difficult to find now. To preserve it I have created a script and some xdelta patches (only 700KB) which will build the best scene release, which uses the Legend Of Zelda Master Quest emulator not the one ripped from the Zelda Collector's Edition. It has working saves, a loading screen, and a dedicated save icon. To make absolutely sure the patch doesn't contain any SM64 game code, I blanked out the ROM in the image before I captured the patch delta containing the hacks to the emulator image. The readme file lists which files and tools must be provided by the user.

The workflow is summarised as follows:
  • Emulator image is extracted from user-provided Legend of Zelda Ocarina of Time & Master Quest ISO
  • Blank N64 ROM image is inserted to replace Master Quest
  • 700KB patch for emulator hacks is applied to conform it to the scene release and shrink the image
  • User-provided Super Mario 64 N64 ROM is padded to 32MB and injected
  • Conversion to NKit
Enjoy!

Re: Super Mario 64 for GameCube, builder script

Posted: Tue Jul 07, 2020 12:00 am
by emu_kidid
For a second I thought this was a port of the reverse engineered Super Mario 64 code base :P

Re: Super Mario 64 for GameCube, builder script

Posted: Tue Jul 07, 2020 5:37 am
by patters
I'm kind of surprised no one has done that yet. One day perhaps. I'm no dev though unfortunately, so it won't be me.

Re: Super Mario 64 for GameCube, builder script

Posted: Thu Jul 09, 2020 9:59 pm
by chungusamongus
Hey, this is really cool. Is it possible, in principle, to use this method to inject some (real hardware compliant) SM64 rom hacks?

Re: Super Mario 64 for GameCube, builder script

Posted: Fri Jul 10, 2020 8:45 pm
by patters
I tried several and they don't work sadly (see the Readme). Perhaps they use additional unemulated API calls or opcodes. I have posted on the Dolphin forum in the hope of attracting the attention of gamemasterplc, the authority on 16:9 patching the Zelda emulations on GameCube:
https://forums.dolphin-emu.org/Thread-s ... #pid509366

I made this builder for this main purpose in fact :)

Re: Super Mario 64 for GameCube, builder script

Posted: Sat Jul 11, 2020 4:25 pm
by karl_oz
Does the HUD (lifes, coins and stars) work in this particular version? I remember, that this was missing from the Mario64 isos which were done using the old injector tools.

Re: Super Mario 64 for GameCube, builder script

Posted: Tue Jul 14, 2020 10:27 pm
by patters
No, those specific HUD elements are still missing which is odd because the energy level overlay is present. I wonder if they could be hacked back in with a simple gecko code.

Re: Super Mario 64 for GameCube, builder script

Posted: Sun Oct 17, 2021 6:06 am
by GK6475
Would it be possible to use the Super Mario 64 Reduced Lag rom injected into this? I tried injecting it but it didn't work. I also tried a widescreen patched ROM and that didn't work either. Also, could Z and L be swapped?

Re: Super Mario 64 for GameCube, builder script

Posted: Thu Mar 02, 2023 10:11 am
by shock44
Hi, I know this is an old thread, but I just came across it recently after softmodding my Gamecube. I need help with this. I just wanted to play Super Mario 64 for fun and now I'm really wondering why I can't get it to work. I used the build.bat to make the .nkit.iso file and whenever I try to load it on my Gamecube using Swiss, it says: File is a bad dump and is not playable. Please attempt recovery using Nkit. I noticed that this builder script requires the European version of Zelda Master's Quest. I don't really get that but I DID use the European version of the game and I've tried both a US and European version of Mario 64, but it didn't make a difference. I tried loading the iso in Dolphin just to see what would happen and it is able to boot something. Not the game though. It boots into a the "do you want to create a save game on your memory card?" screen. When I say yes, it says it is saving but it never gets done with it. It just is stuck on saving. If I try to say no, it just loops back to the same question, asking me if I want to create a save game file. Please I would appreciate any help with this. Thanks.

Here's some pictures to show what it looks like on both Swiss and Dolphin:

https://i.imgur.com/BRQ1uvk.jpg - Swiss
https://imgur.com/a/oDNyO1e - Dolphin

Re: Super Mario 64 for GameCube, builder script

Posted: Tue Mar 12, 2024 9:59 am
by patters
Modern versions of Swiss will always complain about the NKit checksum not being in the Redump database, but just ignore that. If you wait a couple of seconds it will allow you to run it regardless. Just dropped by to add that you can extract or inject your eeprom save using GCMM. It will be stored in the .gci file in 0x800 bytes from offset 0x6044 - same offset as for Legend of Zelda collector's edition.

In case it helps someone else - I can highly recommend this tool for converting the save between N64 and the reverse engineered version for PC/Wii U/Switch:
https://github.com/DarkMatterCore/sm64dcsc