RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    (GUIDE) How to add Super Mario 64 PC to Retropie(Pi4 and Pi3b)

    Scheduled Pinned Locked Moved Ideas and Development
    mariomario 64nintendo 64sm64sm64pc
    150 Posts 23 Posters 60.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • retropieuser555R
      retropieuser555
      last edited by

      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 = Spacebar

      But 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?

      Pi 5 4GB

      Retroflag GPI with raspberry pi zero 2 w/ wifi

      Retroachievements:- lovelessrapture

      1 Reply Last reply Reply Quote 0
      • ?
        A Former User
        last edited by

        @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)

        retropieuser555R 1 Reply Last reply Reply Quote 0
        • retropieuser555R
          retropieuser555 @A Former User
          last edited by

          @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.

          Pi 5 4GB

          Retroflag GPI with raspberry pi zero 2 w/ wifi

          Retroachievements:- lovelessrapture

          ? 1 Reply Last reply Reply Quote 0
          • ?
            A Former User @retropieuser555
            last edited by A Former User

            @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

            retropieuser555R 1 Reply Last reply Reply Quote 0
            • retropieuser555R
              retropieuser555 @A Former User
              last edited by retropieuser555

              @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.

              Pi 5 4GB

              Retroflag GPI with raspberry pi zero 2 w/ wifi

              Retroachievements:- lovelessrapture

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @retropieuser555
                last edited by A Former User

                @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

                S 1 Reply Last reply Reply Quote 0
                • KrakatoaK
                  Krakatoa
                  last edited by

                  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.

                  1 Reply Last reply Reply Quote 0
                  • S
                    skj @A Former User
                    last edited by skj

                    @Luddo183

                    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?

                    KrakatoaK 1 Reply Last reply Reply Quote 0
                    • KrakatoaK
                      Krakatoa @skj
                      last edited by

                      @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.

                      1 Reply Last reply Reply Quote 0
                      • pjftP
                        pjft
                        last edited by pjft

                        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!

                        S A 2 Replies Last reply Reply Quote 1
                        • S
                          skj @pjft
                          last edited by

                          @pjft

                          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.

                          1 Reply Last reply Reply Quote 0
                          • pjftP
                            pjft
                            last edited by

                            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.

                            1 Reply Last reply Reply Quote 0
                            • ?
                              A Former User
                              last edited by

                              @pjft
                              You are right, you need to rebuild it for the textures to come in.

                              1 Reply Last reply Reply Quote 0
                              • ?
                                A Former User
                                last edited by

                                Here's a pic of original vs modded hd texturemario.png

                                1 Reply Last reply Reply Quote 0
                                • ?
                                  A Former User
                                  last edited by

                                  @pjft
                                  I think if you find the config file, there is a option for speed and vsync.

                                  pjftP 1 Reply Last reply Reply Quote 0
                                  • pjftP
                                    pjft @A Former User
                                    last edited by

                                    @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!

                                    ? 1 Reply Last reply Reply Quote 0
                                    • ?
                                      A Former User @pjft
                                      last edited by

                                      @pjft
                                      I edited the first post to show your solution for modding.

                                      Stuart2773S 1 Reply Last reply Reply Quote 1
                                      • ?
                                        A Former User
                                        last edited by

                                        Apparently it can also be scraped with TheGamesDB, although the boxart is for the original SM64

                                        1 Reply Last reply Reply Quote 0
                                        • Stuart2773S
                                          Stuart2773 @A Former User
                                          last edited by Stuart2773

                                          @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 %U

                                          Step 6:

                                          Move the .sh file into /home/pi/RetroPie/roms/ports

                                          any ideas where ive messed up?

                                          many thanks

                                          KrakatoaK I 2 Replies Last reply Reply Quote 0
                                          • KrakatoaK
                                            Krakatoa @Stuart2773
                                            last edited by

                                            @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

                                            Stuart2773S 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.