Skip to content

Instantly share code, notes, and snippets.

@Lucas-mother3
Last active August 19, 2023 07:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Lucas-mother3/c6d47973e92333bed1ca9fe559791b3e to your computer and use it in GitHub Desktop.
Save Lucas-mother3/c6d47973e92333bed1ca9fe559791b3e to your computer and use it in GitHub Desktop.
How to build SM64-port on openSUSE

How to build Super Mario 64 Linux port on openSUSE

Tested distros

  • Tumbleweed 20230811

How to build SM64-port?

  1. Grab a legal copy of SM64 (recommended: US version, other regions might work depending on the port) and dump it.

  2. Rename the rom (must be in .z64 format) to baserom.us.z64

  3. Install dependencies:

    • patterns-devel-base-devel_basis
    • python3
    • git
    • libusb-1_0-devel
    • SDL2-devel
    • alsa-devel
    • libpulse-devel

    For sm64ex

    • glew-devel

    For Render96

    • audiofile-devel
  4. Clone the repos:

    • Vanilla: git clone https://github.com/sm64-port/sm64-port.git
    • EX: git clone https://github.com/sm64pc/sm64ex.git
    • Render96: git clone --single-branch --branch alpha https://github.com/Render96/Render96ex.git
  5. Copy baserom.us.z64 to the root of the repo.

  6. Start building by using make -j* where -j* is how many jobs needed, usually 4.

    • Additional buildflags are available for EX and Render96, but the one I use is: make BETTERCAMERA=1 EXTERNAL_DATA=1 NODRAWINGDISTANCE=1 TEXTURE_FIX=1 DISCORDRPC=1 -j4.
    • Refer to the repo's wiki for details.
  7. Now your build is done if you use sm64-port or sm64ex. Run them via ./build/us_pc/sm64.us or similar. The rest are for Render96.

  8. FOR RENDER96 Download the model pack: https://github.com/Render96/ModelPack/releases (Render96_DynOs_v3.0.7z)

  9. Apply the pack on ./build/us_pc/dynos/packs

  10. Then clone the textures: git clone https://github.com/pokeheadroom/RENDER96-HD-TEXTURE-PACK.git -b master

  11. Copy the contents of gfx to ./build/us_pc/res/gfx

  12. Open the Render96 build, and start a new game or load a game.

  13. Pause the game, then press [LT] or the game's keymap for Z.

  14. Go to Model Packs.

  15. Find Render96 then enable it.

  16. Done!

Additional notes:

This guide would soon add sm64nx instructions, but for now, this should work. That doesn't work as you need to extract the assets using a python script that doesn't work on my setup at least.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment