Homebrew Super Mario 64 Port

  • Thread starter Thread starter MarioKartFan
  • Start date Start date
  • Views Views 126,427
  • Replies Replies 331
I try to build it with us rom.
I get this error after asset extraction:
/bin/arm-none-eabi-cpp -P -DVERSION_US -I . -o build/us_3ds/level_rules.mk levels/level_rules.mk
make: /bin/arm-none-eabi-cpp: Aucun fichier ou dossier de ce type
make: *** [Makefile.split:151 : build/us_3ds/level_rules.mk] Erreur 127
 
I try to build it with us rom.
I get this error after asset extraction:
/bin/arm-none-eabi-cpp -P -DVERSION_US -I . -o build/us_3ds/level_rules.mk levels/level_rules.mk
make: /bin/arm-none-eabi-cpp: Aucun fichier ou dossier de ce type
make: *** [Makefile.split:151 : build/us_3ds/level_rules.mk] Erreur 127
https://gbatemp.net/threads/help-with-compiling-super-mario-64-3ds.572949/#post-9186205

I recommend reading the rest of this thread as it has instructions on properly compiling this game.
 
  • Like
Reactions: Tebra
Hello everyone!

I forked the sm64-port and transplanted Gericom's 3DS port into it back in August, and since then I've been trying to add more features and functionality (e.g. WIP stereoscopic 3D, support for patches like 60fps/puppycam, WIP minimap).

The latest change (as of yesterday) has been to push audio processing to the 2nd CPU. Initially it did not seem like disabling audio led to any performance gains (which was surprising given I was told it jumps from 30->90 fps on the PSP port), but after changing the vsync behaviour I was able to see that disabling the audio allowed the game to run pretty much full speed when my N3DS was running at 268mhz (closest I can get to emulating O3DS without buying one).

As a 'newbie' I can't post a link, but if you search my username on GitHub you'll find it.

If anyone wants to contribute I'll take any PRs that improve things, there are a number of known bugs/issues listed on the GitHub, and unless you're running the 3ds-port branch, you're pretty much on your own in terms of things going wrong, everything else is (even more) raw!
 
I seriously need to get a new battery for my 3DS. This port really has me wanting to replay this game thanks to all the community attention it's receiving.

Any version with Z assigned to L button?
You can do this yourself by editing the controls source, or by using the version above that comes with a configuration file for specific build time features.
 
Hello everyone!

I forked the sm64-port and transplanted Gericom's 3DS port into it back in August, and since then I've been trying to add more features and functionality (e.g. WIP stereoscopic 3D, support for patches like 60fps/puppycam, WIP minimap).

The latest change (as of yesterday) has been to push audio processing to the 2nd CPU. Initially it did not seem like disabling audio led to any performance gains (which was surprising given I was told it jumps from 30->90 fps on the PSP port), but after changing the vsync behaviour I was able to see that disabling the audio allowed the game to run pretty much full speed when my N3DS was running at 268mhz (closest I can get to emulating O3DS without buying one).

As a 'newbie' I can't post a link, but if you search my username on GitHub you'll find it.

If anyone wants to contribute I'll take any PRs that improve things, there are a number of known bugs/issues listed on the GitHub, and unless you're running the 3ds-port branch, you're pretty much on your own in terms of things going wrong, everything else is (even more) raw!

Has anyone had a chance to check out this port? Would love to see 3D and 60fps!
 
Hello everyone!

I forked the sm64-port and transplanted Gericom's 3DS port into it back in August, and since then I've been trying to add more features and functionality (e.g. WIP stereoscopic 3D, support for patches like 60fps/puppycam, WIP minimap).

The latest change (as of yesterday) has been to push audio processing to the 2nd CPU. Initially it did not seem like disabling audio led to any performance gains (which was surprising given I was told it jumps from 30->90 fps on the PSP port), but after changing the vsync behaviour I was able to see that disabling the audio allowed the game to run pretty much full speed when my N3DS was running at 268mhz (closest I can get to emulating O3DS without buying one).

As a 'newbie' I can't post a link, but if you search my username on GitHub you'll find it.

If anyone wants to contribute I'll take any PRs that improve things, there are a number of known bugs/issues listed on the GitHub, and unless you're running the 3ds-port branch, you're pretty much on your own in terms of things going wrong, everything else is (even more) raw!
How cool is that, finally being able to play sm64 in 3d on the 3ds (long-time wish fulfilled)? Some questions on how to use:
Patches updated for 3DS:
How do you enable the FPS counter? Are these patches applied by default? Is there a way to control the sound processing (for extra speed)? Is there an easy switch to disable sound?
 
How cool is that, finally being able to play sm64 in 3d on the 3ds (long-time wish fulfilled)? Some questions on how to use:
How do you enable the FPS counter? Are these patches applied by default? Is there a way to control the sound processing (for extra speed)? Is there an easy switch to disable sound?
For patches:

./tools/apply_patch.sh ./enhancements/60fps.patch
./tools/apply_patch.sh ./enhancements/puppycam.patch
./tools/apply_patch.sh ./enhancements/fps.patch

or

git apply enhancements/60fps.patch
git apply enhancements/puppycam.patch
git apply enhancements/fps.patch

"fps.patch" is the framerate counter.

Depending on what patch do you want to apply. If patches conflic between each other you have to do extra tunning.

Performance has been already improved moving the audio to the CPU1 by default on the O3DS, also frameskip kicks in if you are below 30FPS (33.3ms). You can disable that building with DISABLE_N3DS_FRAMESKIP=1.
 
Last edited by Deleted member 323844,
  • Like
Reactions: 01y and Zense
For patches:

./tools/apply_patch.sh ./enhancements/60fps.patch
./tools/apply_patch.sh ./enhancements/puppycam.patch
./tools/apply_patch.sh ./enhancements/fps.patch

or

git apply enhancements/60fps.patch
git apply enhancements/puppycam.patch
git apply enhancements/fps.patch

"fps.patch" is the framerate counter.

Depending on what patch do you want to apply. If patches conflic between each other you have to do extra tunning.

Performance has been already improved moving the audio to the CPU1 by default on the O3DS, also frameskip kicks in if you are below 30FPS (33.3ms). You can disable that building with DISABLE_N3DS_FRAMESKIP=1.

And what is "puppycam" exactly? Is there a patch to remove audio completely for maximum FPS?
 
And what is "puppycam" exactly? Is there a patch to remove audio completely for maximum FPS?
Free 360 camera, instead of the fixed camera angles of the original game.

There's no flag or patch to disable the sound. Maybe @mkst could give further info. But you should check first the latest improvements, it should be perfectly playable on O3DS hardware.
 
  • Like
Reactions: 01y
Free 360 camera, instead of the fixed camera angles of the original game.

There's no flag or patch to disable the sound. Maybe @mkst could give further info. But you should check first the latest improvements, it should be perfectly playable on O3DS hardware.
Mario 64 with a modernized camera? That's something I've always wanted.

I assume this Mario "643DS" (that would have been a terrible name if Nintendo made it official) port doesn't work on Launch 3DS as it requires more power that the New 3DS has?
 
Super Mario 64 3DS Build
SM64 3D Build
NOT for Puppy, 60FPS, or normal SM64 Build
000400000000FB00
Created by Smoker1
-----------------------------
Works on Gateway, and on Luma3DS
[Inf Health 3D 12Sept]
20D2B123 00000008

[Inf Lives 3D 12Sept]
20D2B121 00000064

[Moonjump Press Y 3D 12Sept]
DD000000 00000800
00D2B0C0 42200000
D2000000 00000000

[No Hits 3D 12Sept]
10D2B09A 0000FFFF

[No Fall Damage 3D 12Sept]
10D2B132 0000FFFF

[Walk on Quicksand 3D 12Sept]
00D2B134 00000000

[Inf Hat Time 3D 12Sept]
10D2B12A 00007000

[Hat FlyInvMet 3D 12Sept]
10D2B078 0000011E

[Hat FlyInv 3D 12Sept]
10D2B078 0000011A

[Normal Hat 3D 12Sept]
10D2B078 00000111
 
In terms of performance which is the best build for 3DS as there appear to be a zillion and one different options available now.
Well, the Vanilla and 3D Builds work perfect on my N3DS. Would not suggest it on the O3DS. Slowdowns. I have not tried the PuppyCam, the 60FPs, or the Mapped (Like SM64DS) Version
 
Those of you with an O3DS, have you tried building/running this fork. There should not be slowdowns during wingcap/turtle surfing etc.

In terms of disabling audio entirely, I can look into making a build flag for that but would urge you to try with audio in the meantime.

Puppycam is an alternative camera system for Super Mario 64, it's the first Google result for fazanaj puppycam.
 
  • Like
Reactions: 01y

Site & Scene News

Popular threads in this forum