(GUIDE) How to add Super Mario 64 PC to Retropie(Pi4 and Pi3b)
-
Okay couple of notes. Controller didn't work at first the controls for keyboard are:-
N64 Analog Stick = WASD
N64 C Buttons = Arrow Keys
N64 A = L
N64 B = Comma (,)
N64 Z = K
N64 R = Shift
N64 Start = SpacebarBut did some digging, my xbox 360 controller does work out of the box. So it seems the controls for it are hardwired? @Luddo183 what controller are you using?
-
@Stuart2773 I don't know the link, but Google will help you
@retropieuser555 You can configure, go to pause menu, press R(probably Right Trigger) and you should see a option for controller configuration(BTW I am using a Xbox one controller) -
@Luddo183 Yeah I got that about the controls menu in game. It doesn't let you edit the controls for my 8bitdo controllers. Do you know where in the directory it saves the sm64config.txt that apparently has the key bindings? I can't seem to find it.
-
@retropieuser555
You can't edit it. I found the file, but the numbers were like this:
0000 0000 0000
I can't figure it out, so I left it alone -
@Luddo183 https://twitter.com/thetovlisgunda/status/1273743625944363009 Yeah it seems it's not particularly documented anywhere which key is allocated to which numerical code. Still can't find the file but I'd like a bash at it. What was the address you had for it? Is it somewhere within the sm64pc folder?
Otherwise, I'm using a pi4 with a 2000 arm overclock and this runs very well. Better than Mario64 on any of the mupen64plus options imo. If anything it might be a little too quick, but that's probably years of me being used to the PAL/EU version of the game.
I'll give this a try on my older pi3b+, but I imagine this will run perfectly well. Good find by the way!
Edit:- Tried to compile on my pi3b+, no errors but when you boot the game you get no video. The audio is playing, buttons are working but no video on screen. I only use my pi3 for kodi really but maybe someone can figure how to edit the config files to get the video showing.
-
@retropieuser555
It runs into difficulties on any Pi below for 4, but is playable
And if people don't mind, if you get it running, please post pics so the people who have problems can see how it should be running, and feel free to ask for help -
Runs great. Thanks for posting the tutorial.
Arcade digital direction controls are mapped, along with a some buttons. Still need to modify it to add the remainder.
-
I would like to go about installing the following texture packs:-
How do you go about doing this on the pi?
I tried replacing the downloaded files from the folders called actors, data, src. But when i play the game the textures look exacly the same as before?
-
@skj I did the same things as you, placed the textures in their respective folders, and yep, it doesn't work.
My guess is we need to compile with the new textures so they are called by the program. The pack I tried was SM64 Redrawn.
-
I did it for SGI, just follow their instructions, adapting to the ones in the first post in this thread. Step 1 is the different one.
1. Clone the nightly sm64ex git using git clone --single-branch --branch nightly https://github.com/sm64pc/sm64ex.git 2. Place your base rom into it 3. Visit the directory using cd sm64ex 4. Build it once using make 5. Delete the build folder 6. Download the file in #download and drag what's inside into the sm64ex folder (press replace all) 7. build it using make EXTERNAL_DATA=1
That being said, this currently runs extremely fast on the Pi4 - probably the vsync detection is off. If you see actual videos on YouTube of the PC port, you'll see what I mean.
There is a PR from May that may fix it, but since it now has conflicts with the master branch I didn't have the chance to test it.
https://github.com/sm64pc/sm64ex/pull/234
Thanks @Luddo183 for sharing this - the step by step guide works awesome!
-
Could you or someone post a guide on the exact commands for each step to build the game and add the textures at the same time as i struggle to understand the instructions. Thank you.
-
It's pretty much the exact instructions I pasted there.
Run the first 4 steps that are mentioned in this first post, but replace step 2 with:
git clone --single-branch --branch nightly https://github.com/sm64pc/sm64ex.git
After step 4, delete the build folder:
rm -rf build
Copy the content of the patch to the folder.
Then run
make VERSION=ROM_REGION TARGET_RPI=1 -j4 EXTERNAL_DATA=1
where ROM_REGION is the region of your ROM, as in the first time you compiled it.
-
@pjft
You are right, you need to rebuild it for the textures to come in. -
Here's a pic of original vs modded hd texture
-
@pjft
I think if you find the config file, there is a option for speed and vsync. -
@Luddo183 The config file is at ~/.local/share/sm64ex/sm64config.txt for the nightly build, I believe. There's an option for vsync that's the same as the one accessible through the menu, but regardless of whether it's ON or OFF it's still quite fast.
I reported a bug on their repo.
Thanks!
-
@pjft
I edited the first post to show your solution for modding. -
Apparently it can also be scraped with TheGamesDB, although the boxart is for the original SM64
-
@Luddo183 said in (GUIDE) How to add Super Mario 64 PC to Retropie(Pi4 and Pi3b):
@pjft
I edited the first post to show your solution for modding.Hi guys
sorry to be a nuisance, i tried installing the game with the texture pack, but when i launch the game i get the following error:-
/home/pi/RetroPie/roms/ports/sm64pc.sh: line 2: /home/pi/sm64pc/build/us_pc/sm64.us.f3dex2e.arm: No such file or directory
heres the steps i used:-
Step 1: Run this command
sudo apt install build-essential git python3 libaudiofile-dev libglew-dev libglfw3-dev libusb-1.0.0 libsdl2-dev
Step 2: Git clone into the files
git clone --single-branch --branch nightly https://github.com/sm64pc/sm64ex.git
Step 3: Take your .z64 file of Super Mario 64 and put it in the files
cp RetroPie/roms/n64/Mario.z64 sm64pc/baserom.us.z64
Step 4: Build
cd sm64pc
make VERSION=us TARGET_RPI=1 -j4 EXTERNAL_DATA=1
rm -rf build
Step 5: Create .sh file
Create a .sh file, name it sm64pc.sh, and put the following code in it:
#!/bin/bash
/home/pi/sm64pc/build/us_pc/sm64.us.f3dex2e.arm %UStep 6:
Move the .sh file into /home/pi/RetroPie/roms/ports
any ideas where ive messed up?
many thanks
-
@Stuart2773 said in (GUIDE) How to add Super Mario 64 PC to Retropie(Pi4 and Pi3b):
line 2: /home/pi/sm64pc/build/us_pc/sm64.us.f3dex2e.arm
Does the file "sm64.us.f3dex2e.arm" exist in the path? also is the path correct?
/home/pi/sm64pc/build/us_pc/sm64.us.f3dex2e.arm
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.