31877e15fc
Added short bhv commands, fixed int bhv commands Changed #ifdef to #if collision defines Moved AUTO_COLLISION_DISTANCE define to config_collision.h Added LOAD_OBJECT_COLLISION_NEAR_CAMERA to config_collision.h Updated water surfaces |
||
---|---|---|
.github/ISSUE_TEMPLATE | ||
actors | ||
asm | ||
assets | ||
bin | ||
data | ||
doxygen | ||
enhancements | ||
include | ||
levels | ||
lib | ||
platform | ||
rsp | ||
sound | ||
src | ||
text | ||
textures | ||
tools | ||
.clang-format | ||
.clang-tidy | ||
.gitattributes | ||
.gitignore | ||
asmdiff.jp.sh | ||
assets.json | ||
c2obj.py | ||
CHANGES | ||
charmap.txt | ||
charmap_menu.txt | ||
diff.py | ||
diff_settings.py | ||
Dockerfile | ||
Doxyfile | ||
extract_assets.py | ||
first-diff.py | ||
format.sh | ||
Jenkinsfile | ||
Makefile | ||
Makefile.split | ||
obj2c.py | ||
pisetup.sh | ||
README.md | ||
rename_sym.sh | ||
SAVE_FORMAT.MD | ||
sm64.eu.sha1 | ||
sm64.jp.sha1 | ||
sm64.ld | ||
sm64.sh.sha1 | ||
sm64.us.sha1 | ||
undefined_syms.txt | ||
util.mk |
sm64ex_alo
Fork of sm64pc/sm64ex with additional features.
Changes
- N64 Building - Support for it was removed in sm64ex
- Based of the latest refresh (since sm64ex is stuck on 12)
- Puppycam 2 (sm64ex still has Puppycam 1)
- Quality of life fixes and features (QOL_FIXES=1 and QOL_FEATURES=1 respectively)
- Mouse support for desktop targets (MOUSE_ACTIONS=1) (SDL1/SDL2 only, DirectX Mouse not implemented yet)
- Simple debug options menu (EXT_DEBUG_MENU=1)
- Kaze's more objects patch (PORT_MOP_OBJS=1)
Backends included
- Same ones as in sm64ex (macOS - Raspberry Pi Series - Windows - Linux), etc.
- Nintendo 64 along with some HackerSM64 Makefile changes
- Nintendo Wii U (by AboodXD)
- Nintendo 3DS (by Fnouwt, mkst)
- Nintendo Switch (by Vatuu, fgsfdsfgs, KiritoDev)
- Android (by VDavid003)
Patches
- Some misc patches for this repo are available here (more incoming)
Building
Clone the repository:
git clone https://github.com/AloXado320/sm64ex-alo
cd sm64ex-alo
Copy baserom(s) for asset extraction:
For each version (jp/us/eu/sh) for which you want to build an executable, put an existing ROM at ./baserom.<VERSION>.z64
for asset extraction.
By default it builds the US version.
To build for N64, click here
NOTE: Only tested in WSL, works on (Debian / Ubuntu) as well, other distros untested.
Install build dependencies:
sudo apt install -y binutils-mips-linux-gnu build-essential git libcapstone-dev pkgconf python3 gcc-mips-linux-gnu
Build:
# if you have more cores available, you can increase the -j parameter
make -j4 TARGET_N64=1
Enjoy your rom:
build/us/sm64.us.f3dzex.z64
To build for Android, click here
NOTE: Only Termux build is supported.
Install Termux
Install the app from F-Droid here
Make sure you use this version, as the Google Play version is outdated.
Install build dependencies
pkg install git wget make python getconf zip apksigner clang
Copy in your baserom:
Do this using your default file manager (on AOSP, you can slide on the left and there will be a "Termux" option there), or using Termux.
termux-setup-storage
cp /sdcard/path/to/your/baserom.z64 ./baserom.us.z64
Get SDL includes:
cd platform/android/ && ./getSDL.sh && cd ../..
Build
# if you have more cores available, you can increase the -j parameter
# On Termux, TARGET_ANDROID=1 is defined automatically in Makefile
make -j4
Enjoy your apk:
ls -al build/us_android/sm64.us.f3dex2e.apk
- To build for sm64ex platforms, click here.
- To build for Wii U, click here. (TARGET_WII_U=1)
- To build for 3DS, click here. (TARGET_N3DS=1)
- To build for Switch, click here. (TARGET_SWITCH=1)