• Ever wanted an RSS feed of all your favorite gaming news sites? Go check out our new Gaming Headlines feed! Read more about it here.
  • We have made minor adjustments to how the search bar works on ResetEra. You can read about the changes here.

Maverick14

Banned
Feb 16, 2019
624
Watching the video you long for the days when getting each star required a significant challenge to be completed even if several are located in the same area....oh Odyssey what have you done!
 

Alvis

Saw the truth behind the copied door
Member
Oct 25, 2017
11,231
Spain
To the people having trouble building the game, try the steps here instead:
rentry.co

Before Building

how to build the super mario 64 pc port binary will be in build/sm64.us.f3dex2e get the sm64 US rom in z64 format, rename to baserom.us.z64 and put it in the sm64pc root folder you can also use the japanese rom (except rename to .jp instead of .us) and when you run make you would pass VER...
 

RROCKMAN

Avenger
Oct 25, 2017
10,824
Watching the video you long for the days when getting each star required a significant challenge to be completed even if several are located in the same area....oh Odyssey what have you done!


I dunno, Odyssey would have been a giant pain in the ass if you were sent to your ship every single time you got a moon.
 

Barrel Cannon

The Fallen
Oct 25, 2017
9,297
I know, right? lol... How does one even legally obtain an N64 rom?

Like 99% will just download the exe while the rest build it themselves with a rom they downloaded.

Either way, all the wink wink and technicalities don't even matter. Knowing Nintendo, they'll take as much action as they can, but it's futile. As useless as trying to stop people from downloading roms.
I know your banned but in case you were seriously asking or in case other people are wondering about how to legally create their own ROMs, all you need is a retrode and the N64 add-on. After that it's a really simple process of plugging it into your PC and letting it do the work. Being able to create your own Room library has become a lot easier because of retrode.

www.retrogameboards.com

The Ripping Thread - How to build your own legit retro ROM library.

Hey all, First things first, I don’t want this thread to be about piracy-talk. At the contrary, I’d like this thread to be a tool for anyone who’d like to tackle emulation with their own games. In many, if not all emulation threads there is the infamous piracy talks/accusations that fly off...
 

Yogi

Banned
Nov 10, 2019
1,806
How likely is it that we'll see ports to other platforms within a few months?
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
To the people having trouble building the game, try the steps here instead:
rentry.co

Before Building

how to build the super mario 64 pc port binary will be in build/sm64.us.f3dex2e get the sm64 US rom in z64 format, rename to baserom.us.z64 and put it in the sm64pc root folder you can also use the japanese rom (except rename to .jp instead of .us) and when you run make you would pass VER...
Isn't that basically the pastebin but in a web format? How different is the OpenGL / DirectX downloads versus the master branch on Github?
 

Alvis

Saw the truth behind the copied door
Member
Oct 25, 2017
11,231
Spain
Isn't that basically the pastebin but in a web format? How different is the OpenGL / DirectX downloads versus the master branch on Github?
The github decomp is the source code for building an N64 ROM. The PC source code leaked from the same people who did the N64 one, both in a DX12 version and a OpenGL version. Remember that it's a leak with no official instructions, that's why building it's such a mess right now. I had a super hard time with it as well.
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
The github decomp is the source code for building an N64 ROM. The PC source code leaked from the same people who did the N64 one, both in a DX12 version and a OpenGL version. Remember that it's a leak with no official instructions, that's why building it's such a mess right now. I had a super hard time with it as well.
Ah, so the Github repo builds a ROM (which...I guess you could run on a physical N64 or N64 emulator), but the leak is modified to produce an executable?
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
So then...why wasn't this a pull request lol? Somebody was working on it then it got swiped off their PC and was posted? The repo is a really cool idea, but it looks like nothing's happening to it. I assume it's being talked about on the discord they have linked, but that makes their future intentions a little opaque.
 

Edge

A King's Landing
Banned
Oct 25, 2017
21,012
Celle, Germany
Got it working.

SHBsYhf.png


Any ideas what I could put into the config file? Besides controls and fullscreen?
 

Cess007

Member
Oct 27, 2017
14,116
B.C., Mexico
Now can someone please make this for Perfect Dark? I have my cartridge ready!

I thought the same, but spamming the a button seems to work.
I read that on console because of the input lag you could press the button before you touch the ground, while on this port you can't. Try to press the buton a bit *after* you touch the ground, instead of a bit before.
It's just cause the console has input lag that it lets you do it easier but the pc port doesn't.

It took me a while, but I think I finally nailed the times. I honestly didn't know the input lag on the N64 was a thing, and how it actually helped lol
 

sigma722

Member
Oct 26, 2017
686
To the people having trouble building the game, try the steps here instead:
rentry.co

Before Building

how to build the super mario 64 pc port binary will be in build/sm64.us.f3dex2e get the sm64 US rom in z64 format, rename to baserom.us.z64 and put it in the sm64pc root folder you can also use the japanese rom (except rename to .jp instead of .us) and when you run make you would pass VER...

This changes the issue that Buff DrinkLots was seeing, so that it installs the correct component.

That being said I still run into issues following that method:

Code:
$ CC=x86_64-pc-msys-gcc CXX=x86_64-pc-msys-g++ ./autogen.sh --prefix=/usr/
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
configure.ac:16: installing './compile'
configure.ac:19: installing './config.guess'
configure.ac:19: installing './config.sub'
configure.ac:12: installing './install-sh'
configure.ac:12: installing './missing'
Makefile.am:16: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined
docs/Makefile.am:60: warning: '%'-style pattern rules are a GNU make extension
docs/Makefile.am:63: warning: '%'-style pattern rules are a GNU make extension
docs/Makefile.am:66: warning: '%'-style pattern rules are a GNU make extension
examples/Makefile.am: installing './depcomp'
libaudiofile/Makefile.am:113: warning: source file 'modules/UT_RebufferModule.cpp' is in a subdirectory,
libaudiofile/Makefile.am:113: but option 'subdir-objects' is disabled
automake-1.16: warning: possible forward-incompatibility.
automake-1.16: At least a source file is in a subdirectory, but the 'subdir-objects'
automake-1.16: automake option hasn't been enabled.  For now, the corresponding output
automake-1.16: object file(s) will be placed in the top-level directory.  However,
automake-1.16: this behaviour will change in future Automake versions: they will
automake-1.16: unconditionally cause object files to be placed in the same subdirectory
automake-1.16: of the corresponding sources.
automake-1.16: You are advised to start using 'subdir-objects' option throughout your
automake-1.16: project, to avoid future incompatibilities.
parallel-tests: installing './test-driver'
autoreconf: automake failed with exit status: 1

and then once I change directory into libaudiofile and run make -j5:

Code:
$ make -j5
make: *** No targets specified and no makefile found.  Stop.

So yeah, not sure what I'm missing, but those instructions don't do it for me either :/
 

Blackpuppy

Member
Oct 28, 2017
4,203
So then...why wasn't this a pull request lol? Somebody was working on it then it got swiped off their PC and was posted? The repo is a really cool idea, but it looks like nothing's happening to it. I assume it's being talked about on the discord they have linked, but that makes their future intentions a little opaque.

The PC port had been done for a while, but it was/is only in their private repo.

The team had been debating for months on how to release this because they wisely wanted to avoid Nintendo's attention.

But then someone leaked the exe and then one of the devs just shrugged his/her shoulders and released the code on an external site.

I think they're trying to separate the disassembly/educational aspect of the project and the inevitable "piracy"/porting aspect as much as possible.
 

Midgarian

Alt Account
Banned
Apr 16, 2020
2,619
Midgar
I read that on console because of the input lag you could press the button before you touch the ground, while on this port you can't. Try to press the buton a bit *after* you touch the ground, instead of a bit before.
Oh God that sounds amazing.

I wasn't quite ready to try this just yet, but this detail has piqued my curiosity.
 
Oct 28, 2017
10,000
This changes the issue that Buff DrinkLots was seeing, so that it installs the correct component.

That being said I still run into issues following that method:

Code:
$ CC=x86_64-pc-msys-gcc CXX=x86_64-pc-msys-g++ ./autogen.sh --prefix=/usr/
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac,
libtoolize: and rerunning libtoolize and aclocal.
libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf
autoreconf: running: /usr/bin/autoheader
autoreconf: running: automake --add-missing --copy --no-force
configure.ac:16: installing './compile'
configure.ac:19: installing './config.guess'
configure.ac:19: installing './config.sub'
configure.ac:12: installing './install-sh'
configure.ac:12: installing './missing'
Makefile.am:16: error: 'pkgconfig_DATA' is used but 'pkgconfigdir' is undefined
docs/Makefile.am:60: warning: '%'-style pattern rules are a GNU make extension
docs/Makefile.am:63: warning: '%'-style pattern rules are a GNU make extension
docs/Makefile.am:66: warning: '%'-style pattern rules are a GNU make extension
examples/Makefile.am: installing './depcomp'
libaudiofile/Makefile.am:113: warning: source file 'modules/UT_RebufferModule.cpp' is in a subdirectory,
libaudiofile/Makefile.am:113: but option 'subdir-objects' is disabled
automake-1.16: warning: possible forward-incompatibility.
automake-1.16: At least a source file is in a subdirectory, but the 'subdir-objects'
automake-1.16: automake option hasn't been enabled.  For now, the corresponding output
automake-1.16: object file(s) will be placed in the top-level directory.  However,
automake-1.16: this behaviour will change in future Automake versions: they will
automake-1.16: unconditionally cause object files to be placed in the same subdirectory
automake-1.16: of the corresponding sources.
automake-1.16: You are advised to start using 'subdir-objects' option throughout your
automake-1.16: project, to avoid future incompatibilities.
parallel-tests: installing './test-driver'
autoreconf: automake failed with exit status: 1

and then once I change directory into libaudiofile and run make -j5:

Code:
$ make -j5
make: *** No targets specified and no makefile found.  Stop.

So yeah, not sure what I'm missing, but those instructions don't do it for me either :/
Someone else showed me the first issue, make sure you file paths are correct. Sys2 -> sm64pc, sys2 files -> sm64-master, libaudio, baserom.us.z64. As for the next thing it some stupid Windows with Makefile's shit, first rename the make file to have no extension.
 

Alvis

Saw the truth behind the copied door
Member
Oct 25, 2017
11,231
Spain
I FINALLY managed to build it on Windows, apparently. Previously I only managed to do it on a Linux VM, and it was a pain in the ass to do so.
o3dg0K0.png


I followed this tutorial, step by step:
rentry.co

Before Building

how to build the super mario 64 pc port binary will be in build/sm64.us.f3dex2e get the sm64 US rom in z64 format, rename to baserom.us.z64 and put it in the sm64pc root folder you can also use the japanese rom (except rename to .jp instead of .us) and when you run make you would pass VER...

The only problem I had is that the first time I did pacman -Syu it told me to close the window and run the command again. That didn't appear in the guide, but I did it. Everything else went according to the guide.

EDIT: It did in fact build!
eVlnojK.png


I'm gonna poke at the source code now to see if I can make some dumb changes. I have very limited progamming knowledge but maybe I can make Mario jump higher or something lol
So then...why wasn't this a pull request lol? Somebody was working on it then it got swiped off their PC and was posted? The repo is a really cool idea, but it looks like nothing's happening to it. I assume it's being talked about on the discord they have linked, but that makes their future intentions a little opaque.
It was made by the same people who made the decomp. They meant to have a proper full release when the port was 100% finished, but it leaked early.
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
The PC port had been done for a while, but it was/is only in their private repo.

The team had been debating for months on how to release this because they wisely wanted to avoid Nintendo's attention.

But then someone leaked the exe and then one of the devs just shrugged his/her shoulders and released the code on an external site.

I think they're trying to separate the disassembly/educational aspect of the project and the piracy/porting aspect as much as possible.
That's smart, but also if Nintendo does come after them because Nintendo thinks they crossed the line somewhere are they even going to have the funds to defend themselves?

I'm not trying to be a negative Nancy. I think this project is awesome. I just think they were in a tough position even before this port was leaked. I hope to have it running on my machine someday (when I can get a legal ROM).
 

Alvis

Saw the truth behind the copied door
Member
Oct 25, 2017
11,231
Spain
about to make mario 64 a factually better game by deleting this line of code

// Play a noise to alert the player when Mario is close to drowning.
if (((m->action & ACT_GROUP_MASK) == ACT_GROUP_SUBMERGED) && (m->health < 0x300)) {
play_sound(SOUND_MOVING_ALMOST_DROWNING, gDefaultSoundArgs); }
 

Komo

Info Analyst
Verified
Jan 3, 2019
7,110
That's smart, but also if Nintendo does come after them because Nintendo thinks they crossed the line somewhere are they even going to have the funds to defend themselves?

I'm not trying to be a negative Nancy. I think this project is awesome. I just think they were in a tough position even before this port was leaked. I hope to have it running on my machine someday (when I can get a legal ROM).
Nope because this was legally dumped. They figured out that you could actually decompile the game by doing some trickery and it would literally give the entire source code because nintendo forgot to optimize the code so it was all basically there for them to see.
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
Nope because this was legally dumped. They figured out that you could actually decompile the game by doing some trickery and it would literally give the entire source code because nintendo forgot to optimize the code so it was all basically there for them to see.
I get that they think they're legally in the clear. I'm just saying if Nintendo decided to go to court anyways (say, because they have their own version coming out soon) who would have the cash to defend their argument in court? Mario's a pretty big deal and "bankrupt the other party to settle for our way" is a somewhat viable strategy for bigger companies.
 

Komo

Info Analyst
Verified
Jan 3, 2019
7,110
I get that they think they're legally in the clear. I'm just saying if Nintendo decided to go to court anyways (say, because they have their own version coming out soon) who would have the cash to defend their argument in court? Mario's a pretty big deal and "bankrupt the other party to settle for our way" is a somewhat viable strategy for bigger companies.
I mean they can just say we're looking at a copy of a game we all own on a version we own, and we're modifying our own copies or something stupid. But yeah ninty will just shovel millions to drown them out.
 

Bradford

terminus est
Member
Aug 12, 2018
5,423
I get that they think they're legally in the clear. I'm just saying if Nintendo decided to go to court anyways (say, because they have their own version coming out soon) who would have the cash to defend their argument in court? Mario's a pretty big deal and "bankrupt the other party to settle for our way" is a somewhat viable strategy for bigger companies.
This is the kind of narrative that sport lawyers get excited about. Little person vs. Megacorp on a clear cut case of tech rights? Pro bono for days with potential for a huge payout.
 

Jadentheman

Banned
Oct 29, 2017
1,207
Doesn't it depend on their country as well. I think things get sticky when they're in other countries especially countries that don't give a shit about piracy like say Russia.
 

Deleted member 55966

User requested account closure
Banned
Apr 15, 2019
1,231
This is the kind of narrative that sport lawyers get excited about. Little person vs. Megacorp on a clear cut case of tech rights? Pro bono for days with potential for a huge payout.
I hope there is somebody out there willing to do that. I'd be incredibly bummed if this got shut down. At the very least, this would be a good resource to show how much of a technical jump it is to go from a solid 16-bit 2D game to a "primitive" 3D game.
 

sigma722

Member
Oct 26, 2017
686
Someone else showed me the first issue, make sure you file paths are correct. Sys2 -> sm64pc, sys2 files -> sm64-master, libaudio, baserom.us.z64. As for the next thing it some stupid Windows with Makefile's shit, first rename the make file to have no extension.

Holy cow just realized at least what i was missing for these steps. Classic dumb mistake, when I was typing "msys2" in the windows start menu, it auto fills to "MSYS2 MSYS", and NOT "MSYS MinGW 64-bit"

after starting a new terminal using MiniGW the commands appear to be working now *eyeroll*
 

J75

Member
Sep 29, 2018
6,616
I'm not a crazy SM64 aficionado that knows all the ins and outs of the game but, I am so amazed by the accuracy of this port. Everything I've seen seems to be fully replicated exactly like the original.

I don't know jack about programming, coding and all that but, it blows my mind that the code is technically not the original but a fan made solution yet it essentially equals to the same experience.
 
Oct 28, 2017
10,000
Holy cow just realized at least what i was missing for these steps. Classic dumb mistake, when I was typing "msys2" in the windows start menu, it auto fills to "MSYS2 MSYS", and NOT "MSYS MinGW 64-bit"

after starting a new terminal using MiniGW the commands appear to be working now *eyeroll*
Now you know why programmers hate Windows lol.