Go to file
fgsfds 4bdc3ecfa8
Update README.md
2020-06-19 23:42:57 +03:00
.github/ISSUE_TEMPLATE
actors give the correct textures a different name instead 2020-06-14 13:37:57 +03:00
asm
assets
bin Merge pull request #179 from dernett/fix-fullscreen-text 2020-05-19 03:19:37 +03:00
data Revert "Fixes billboarding-related problems" 2020-05-17 03:29:19 -03:00
doxygen yeet 2020-06-02 23:43:32 +03:00
enhancements Remove description for the FPS counter 2020-06-06 21:34:16 +02:00
include fix JP build 2020-06-17 05:18:05 +03:00
levels Removed majority of TARGET_N64 logic from code 2020-05-13 07:57:25 -04:00
lib forgot the actual libs 2020-06-09 20:49:35 +03:00
sound
src premultiply volume scales by master volume 2020-06-18 02:20:32 +03:00
text
tools fix segfaults in libaudiofile.cpp 2020-06-18 01:33:45 +03:00
.clang-format
.clang-tidy
.gitattributes
.gitignore Support for text-based savefiles 2020-05-18 17:44:21 +09:00
CHANGES
Dockerfile Fix emsdk install and PATH update 2020-05-10 20:18:04 -07:00
Doxyfile
Jenkinsfile
Makefile use GLES shaders in web build 2020-06-17 00:15:27 +03:00
Makefile.split add option to load textures from external files 2020-05-25 04:22:03 +03:00
README.md Update README.md 2020-06-19 23:42:57 +03:00
README_es_ES.md Update README_es_ES.md 2020-05-19 00:04:07 +01:00
README_pt_BR.md Create README_pt_BR.md 2020-06-10 22:36:41 -03:00
README_zh_CN.md Typo in extract_assets.py 2020-05-16 15:44:55 -03:00
SAVE_FORMAT.MD Added appropriate flags for sound mode and cap level. Documentation has been updated. 2020-05-20 23:28:04 +09:00
asmdiff.jp.sh
asmdiff.us.sh
assets.json give the correct textures a different name instead 2020-06-14 13:37:57 +03:00
build.sh Nuke old VERSION OPT_FLAGS and add DEBUG flag 2020-06-05 20:40:08 +09:00
c2obj.py correct line endings 2020-05-16 07:36:28 +03:00
charmap.txt
charmap_menu.txt
diff.py
diff_settings.py
extract_assets.py revert asset version increase 2020-06-14 13:30:39 +03:00
first-diff.py
format.sh
obj2c.py correct line endings 2020-05-16 07:36:28 +03:00
pisetup.sh Update to pisetup.sh 2020-05-13 11:35:22 -03:00
rename_sym.sh
sm64.eu.sha1
sm64.jp.sha1
sm64.ld
sm64.sh.sha1
sm64.us.sha1
undefined_syms.txt

README.md

sm64ex

Fork of sm64-port/sm64-port with additional features.

Feel free to report bugs and contribute, but remember, there must be no upload of any copyrighted asset. Run ./extract_assets.py --clean && make clean or make distclean to remove ROM-originated content.

Please contribute first to the nightly branch. New functionality will be merged to master once they're considered to be well-tested.

Read this in other languages: Español, Português or 简体中文.

New features

  • Options menu with various settings, including button remapping.
  • Optional external data loading (so far only textures and assembled soundbanks), providing support for custom texture packs.
  • Optional analog camera and mouse look (using Puppycam).
  • Optional OpenGL1.3-based renderer for older machines, as well as the original GL2.1, D3D11 and D3D12 renderers from Emill's n64-fast3d-engine.
  • Option to disable drawing distances.
  • Optional odel and texture fixes (e.g. the smoke texture).
  • Skip introductory Peach & Lakitu cutscenes with the --skip-intro CLI option
  • Cheats menu in Options (activate with --cheats or by pressing L thrice in the pause menu).
  • Support for both little-endian and big-endian save files (meaning you can use save files from both sm64-port and most emulators), as well as an optional text-based save format.

Recent changes in Nightly have moved the save and configuration file path to %HOMEPATH%\AppData\Roaming\sm64pc on Windows and $HOME/.local/share/sm64pc on Linux. This behaviour can be changed with the --savepath CLI option. For example --savepath . will read saves from the current directory (which not always matches the exe directory, but most of the time it does); --savepath '!' will read saves from the executable directory.

Building

For building instructions, please refer to the wiki.

Make sure you have MXE first before attempting to compile for Windows on Linux and WSL. Follow the guide on the wiki.