-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSuperMario64.txt
41 lines (35 loc) · 4.74 KB
/
SuperMario64.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Super Mario 64
sm64pcbuilder2
- download MSYS2 (https://www.msys2.org/)
- install MSYS2 in "C:\msys64" directory
- download Super Mario 64 US ROM (DONT use Shindou ROM, changes vanilla behavior)
- download sm64pcbuilder2 (https://sm64pc.info/sm64pcbuilder2/)
- launch sm64pcbuilder2 and select "C:\msys64" when it asks for MSYS2 directory
- click "Yes" to installing required packages
- let it build
- Source - repo: sm64ex / branch: nightly (its newer than master) (https://github.com/sm64pc/sm64ex/tree/nightly/)
- Options - No Drawing Distance (changes vanilla behavior, not recommended)
- click "Download" for source code
- click "Compile"
MSYS2
- install MSYS2 in "C:\msys64" directory
- launch mingw64.exe in msys2 directory
- pacman -S mingw-w64-x86_64-toolchain mingw-w64-i686-toolchain mingw-w64-clang-x86_64-toolchain mingw-w64-clang-i686-toolchain mingw-w64-ucrt-x86_64-toolchain mingw-w64-cross-toolchain mingw-w64-clang-x86_64-avr-toolchain mingw-w64-x86_64-avr-toolchain mingw-w64-ucrt-x86_64-avr-toolchain mingw-w64-x86_64-clang mingw-w64-i686-clang mingw-w64-ucrt-x86_64-clang mingw-w64-x86_64-nasm mingw-w64-i686-nasm mingw-w64-ucrt-x86_64-nasm mingw-w64-clang-x86_64-nasm mingw-w64-clang-i686-nasm mingw-w64-x86_64-SDL2 mingw-w64-i686-SDL2 mingw-w64-ucrt-x86_64-SDL2 mingw-w64-clang-x86_64-SDL2 mingw-w64-clang-i686-SDL2 mingw-w64-x86_64-zlib mingw-w64-i686-zlib mingw-w64-ucrt-x86_64-zlib mingw-w64-clang-x86_64-zlib mingw-w64-clang-i686-zlib mingw-w64-x86_64-libwinpthread mingw-w64-i686-libwinpthread mingw-w64-ucrt-x86_64-libwinpthread mingw-w64-clang-x86_64-libwinpthread mingw-w64-clang-i686-libwinpthread mingw-w64-cross-winpthreads mingw-w64-x86_64-cmake mingw-w64-i686-cmake mingw-w64-ucrt-x86_64-cmake mingw-w64-clang-x86_64-cmake mingw-w64-clang-i686-cmake mingw-w64-x86_64-binutils mingw-w64-cross-binutils mingw-w64-i686-binutils mingw-w64-ucrt-x86_64-binutils mingw-w64-clang-x86_64-binutils mingw-w64-clang-i686-binutils mingw-w64-clang-x86_64-avr-binutils mingw-w64-x86_64-avr-binutils mingw-w64-ucrt-x86_64-avr-binutils mingw-w64-x86_64-libelf mingw-w64-i686-libelf mingw-w64-clang-x86_64-libelf mingw-w64-clang-i686-libelf mingw-w64-ucrt-x86_64-libelf mingw-w64-x86_64-glew mingw-w64-i686-glew mingw-w64-ucrt-x86_64-glew mingw-w64-clang-x86_64-glew mingw-w64-clang-i686-glew mingw-w64-x86_64-libogg mingw-w64-i686-libogg mingw-w64-ucrt-x86_64-libogg mingw-w64-clang-x86_64-libogg mingw-w64-clang-i686-libogg mingw-w64-x86_64-libvorbis mingw-w64-i686-libvorbis mingw-w64-ucrt-x86_64-libvorbis mingw-w64-clang-x86_64-libvorbis mingw-w64-clang-i686-libvorbis mingw-w64-x86_64-openssl mingw-w64-ucrt-x86_64-openssl mingw-w64-clang-x86_64-openssl mingw-w64-clang-i686-openssl mingw-w64-x86_64-openldap mingw-w64-ucrt-x86_64-openldap mingw-w64-clang-x86_64-openldap mingw-w64-x86_64-curl mingw-w64-i686-curl mingw-w64-ucrt-x86_64-curl mingw-w64-clang-x86_64-curl mingw-w64-clang-i686-curl mingw-w64-x86_64-ninja mingw-w64-i686-ninja mingw-w64-ucrt-x86_64-ninja mingw-w64-clang-x86_64-ninja mingw-w64-clang-i686-ninja mingw-w64-x86_64-python mingw-w64-i686-python mingw-w64-clang-x86_64-python mingw-w64-clang-i686-python mingw-w64-x86_64-python-pip mingw-w64-i686-python-pip mingw-w64-clang-x86_64-python-pip mingw-w64-clang-i686-python-pip mingw-w64-x86_64-python-virtualenv mingw-w64-i686-python-virtualenv mingw-w64-clang-x86_64-python-virtualenv mingw-w64-clang-i686-python-virtualenv ninja openssl unzip binutils curl cmake make python python-pip python-devel git llvm lld clang gcc base base-devel vim
- pacman -Syyu
- git clone https://github.com/sm64pc/sm64ex.git -b nightly
- cd sm64ex
- download Super Mario 64 US ROM (DONT use Shindou ROM, changes vanilla behavior)
- rename ROM baserom.us.z64
- place ROM in sm64ex directory
- add "-march=native -msahf -O3 -pipe -fno-plt -fno-common -fipa-pta -falign-functions=32 -fdevirtualize-at-ltrans -fuse-linker-plugin -floop-nest-optimize -fgraphite-identity -fexcess-precision=fast -flto=auto" to line 576 and line 659
- export CFLAGS="-march=native -msahf -O3 -pipe -fno-plt -fno-common -fipa-pta -falign-functions=32 -fdevirtualize-at-ltrans -fuse-linker-plugin -floop-nest-optimize -fgraphite-identity -fexcess-precision=fast -flto=auto"
- export CXXFLAGS="-march=native -msahf -O3 -pipe -fno-plt -fno-common -fipa-pta -falign-functions=32 -fdevirtualize-at-ltrans -fuse-linker-plugin -floop-nest-optimize -fgraphite-identity -fexcess-precision=fast -flto=auto"
- make
+ add NODRAWINGDISTANCE=1 to make line to enable Unlimited Drawing Distance patch (make NODRAWINGDISTANCE=1) (changes vanilla behavior of game, not recommended)
WSAD = Analog stick
Z button = K
A button = L / MOUSE2
B button = , / MOUSE1
Start button = Spacebar
C buttons = Arrow keys
Forcing VSync on causes black screen at launch, enable "use 3d application settings" instead