Skip to content

Help FAQ

DorfDork edited this page Feb 5, 2021 · 7 revisions

==========================================

SM64 COMPILING DOCUMENTATION

==========================================

Written by: YeyoKermit Last revision: 24/01/21

** If it's the first time you compile SM64, refer to https://github.com/Render96/Render96ex/wiki for compiling instructions **

Make sure to check the compatibility list of any of the mods you are installing at the PC port forum http://sm64pc.info/ or at SM64 PC Port central https://discord.gg/cD7cn6enM8.

|| Warning = Purple || || Red = Error ||

Warnings are just notifications of messy code, do not confuse them with errors, they won't cause the compiling to fail. Errors do cause the compiling to fail.

==========================================

64 and 32 BITS COMPUTERS COMPILING ERRORS

Error What causes it Builder Solution Manual Solution
Segmentation fault: Custom AIFF file missing data Compile without clicking at "Clear us_pc Build". Compile again without deleting the build folder.
make cc, no such file or directory: GCC files are missing/ not installed. Click "Reinstall dependencies". Type "pacman -S mingw-w64-x86_64-gcc" in the MSYS2 console.
error, target not found: MSYS package link was misspelled. Won't happen with the builder Refer to the following website in order to get the correct name/link for the desired package, https://packages.msys2.org/updates.
fatal error, no such file or directory Missing a file either being a model, script, texture, etc. Click clear repo. Git clone a new repo.
make *** no targets specified and no makefile found. Stop It's missing files or you didn't set the repo directory correctly in the MSYS2 console. Click clear repo. Make sure you used "cd" to set the repo location. Git clone a new repo if the error persists.
cc.exe error: mingw64/include/sdl2, no such file or directory Missing SDL2 package. Click re-install dependencies. Type "pacman -S mingw-w64-x86_64-SDL2" in the MSYS2 console.
error: redefinition of " " Tried to apply the same patch twice to the repo. Builder handles redefinition of all patches except custom ones/ 60 FPS, clear repo if it causes trouble. Git clone a new clean repo.
out of memory allocating x bytes RAM usage exceeded your computer's capability. Compile again using lower building speed. Reduce the cores being used when using "make".
MSYS immediately closes after opening ??? Move the whole builder folder to a place that doesn't contain your username. For example, C: Use "cd" to a directory without your username.
baserom.us.z64 has the wrong hash! Your ROM is a byteswapped ROM, not a .z64. Convert it into a .z64 using the following tool: https://hack64.net/tools/swapper.php. Same Solution
x86_64-w64-mingw32/bin/ld.exe: collect2.exe: error: ld returned 1 exit status: Your MSYS is most likely very outdated. Try Re-installing dependencies. If the error persits, re-install MSYS. Update binutils typing the following command in the MSYS console, "pacman -S mingw-w64-x86_64-binutils".
After compiling succesfully, "Assertion failed": If a condition supposed to hold true does not hold true, the assertion fails. Delete sm64config.txt located at appdata/roaming/"repo name" and re-open the game. Same Solution
waiting for unfinished jobs... RAM usage exceeded your computer's capability. Lower your building speed. Reduce the number of cores used by the computer if manual compiling is being used.
error: mingw32: key "4A6129F4E4B84AE46ED7F635628F528CF3053E04" Database is corruped. Re-install MSYS2 completely. Same Solution
unhandled exception has occurred in your application: The application code didn't handle exceptions properly. Install the newest microsoft.net framework found at: https://www.microsoft.com/en-us/download/details.aspx?id=42643. Same Solution
error: failed to init transaction (unable to lock database) Pacman file already exists Remove /var/lib/pacman/db.lck Same Solution

If you get any other error not written here, ask for help at the port servers and/or Render96 server

==========================================

32 BITS COMPUTERS COMPILING ERRORS

==========================================

Error What causes it Builder Solution Manual Solution
2 [main] python3 5972 child_info_fork::abort: address space needed by '_hashlib.cpython-38-i386-msys.dll' (0x260000) is already occupied: .dll malfunction exclusively of 32 bits computers Move _hashlib.cpython-38-i386-msys.dll (found at C:\msys32\usr\lib\python3.8\lib-dynload) to System32 Same Solution

==========================================

Controller Layout

==========================================

In Game Value PS4 XBOX Switch Pro
1000 Cross A B
1001 Circle B A
1002 Square X Y
1003 Triangle Y X
1004 Select Select Select
1006 Start Start Start
1007 L3 L3 L3
1008 R3 R3 R3
1009 L1 L1 L1
100A R1 R1 R1
100B Dpad Up Dpad Up Dpad Up
100C Dpad Down Dpad Down Dpad Down
100D Dpad Left Dpad Left Dpad Left
100E Dpad Right Dpad Right Dpad Right
101A L2 L2 L2
101B R2 R2 R2

==========================================

Keyboard Layout

==========================================

In Game Value Keyboard Key N64 Button
(0026) L A
(0033) , B
(0039) SPACE BAR START BUTTON
(0036) RIGHT SHIFT R BUTTON
(002A) LEFT SHIFT L BUTTON
(0025) K Z BUTTON
(0148) UP ARROW C UP
(0150) DOWN ARROW C DOWN
(014B) LEFT ARROW C LEFT
(014D) RIGHT ARROW C RIGHT
(0011) W STICK UP
(001F) S STICK DOWN
(001E) A STICK LEFT
(0020) D STICK RIGHT

==========================================

BUILD FLAGS

==========================================

Most common build flags:

BETTERCAMERA=1 NODRAWINGDISTANCE=1 TEXTURE_FIX=1 EXTERNAL_DATA=1

(For a complete list and the usage of each of those, refer to build flags (Note: MODELPACK and HIGHFPS are Render96ex-alpha exclusive build flags))

==========================================

REPO'S LIST

==========================================

In order to get one of these repos, use "git clone". Do not download the .zip from the github, it messes things up. Aditionally, you can add a shallow clone to make the cloning way faster/less resource expensive. To add a shallow clone, type "--depth (the number of commits you want to go back, 1 is the newest one) after "git clone".

Github link Description Refresh
https://github.com/n64decomp/sm64 ** A full decompilation of Super Mario 64 (J), (U), (E), and (SH). Builds a matching ROM, not an .exe ** Refresh 13
https://github.com/s4Ys369/CHEATERex ** Fork of sm64pc/sm64ex with additional patches built-in. ** Refresh 11
https://github.com/sm64-port/sm64-port ** Builds native executables of SM64 ** Refresh 13
https://github.com/sm64pc/sm64ex ** Fork of sm64-port/sm64-port with additional features. ** Refresh 11
https://github.com/djoslin0/sm64ex-coop ** A mod for the PC port where two people can play online together. ** Refresh 11
https://github.com/AloXado320/sm64ex-alo ** SM64 ex updated to refresh 13 and other console compiling compatibility. ** Refresh 13
https://github.com/Render96/Render96ex ** A fork of sm64-ex with additional features meant for the Render96 Project ** Refresh Who knows (11)

Clone this wiki locally