Super Mario 64 · sm64coopdx (Switch)
Super Mario 64
Sobre el proyecto
Super Mario 64 es un videojuego de plataformas desarrollado y publicado por Nintendo para la Nintendo 64. Es la primera entrega de Super Mario en mostrar gráficos 3D, que combina la mecánica tradicional de la franquicia, su estilo visual y sus personajes en un amplio mundo abierto. En la historia, Bowser invade el castillo de la Princesa Peach, la secuestra y esconde las Estrellas de Poder en diferentes mundos situados dentro de cuadros mágicos. En el papel de Mario, el jugador recorre los niveles y recoge las estrellas para desbloquear zonas, llegar hasta Bowser y rescatar a Peach.
16 versiones de Super Mario 64
Estás viendo: sm64coopdx (Switch)
sm64coopdx (Switch)github.com/ArcheSV/sm64coopdx-switch
Infinite Mario 64 (Ever)github.com/Brawmario/infinite-mario-64-ever
sm64coopdx (Super Mario 64 online)github.com/coop-deluxe/sm64coopdx
Super Mario 64github.com/sm64-port/sm64-port
Ghostshipgithub.com/HarbourMasters/Ghostship
Ghostship (Android)github.com/izzy2lost/Ghostship
sm64 wasm · Web (sm64-wasm)github.com/sm64-wasm/sm64-wasm
sm64coopdx (Android)github.com/ManIsCat2/sm64coopdx
sm64exgithub.com/sm64pc/sm64ex
SM64Plusgithub.com/MorsGames/sm64plus
Super Mario 64 (libsm64-godot)github.com/Brawmario/libsm64-godot
Super Mario 64 (libsm64-rust)github.com/nickmass/libsm64-rust
Super Mario 64 (libsm64-sharp)github.com/MeltyPlayer/libsm64-sharp
Super Mario 64 (PSP)github.com/JustKidding23/SM64-PSP
Super Mario 64 (SM64-PC-Port-WebGL)github.com/NotAn127/SM64-PC-Port-WebGL
Super Mario 64 (web)github.com/lwllac/sm64Información oficial del proyecto
SM64CoopDX Switch
An unofficial Nintendo Switch homebrew port of SM64CoopDX, based on the SM64CoopDX v1.5.1 source release.
Please support the original project at coop-deluxe/sm64coopdx.
This is homebrew software. It requires a Nintendo Switch capable of running custom firmware (e.g. Atmosphère) with the Homebrew Menu installed. It does not run on stock, unmodified consoles.
Project Status
Check the Google Sheet to see what's been done and what still needs to be done
Legal Notice
This repository does not include a Super Mario 64 ROM, extracted game assets, Nintendo code, or Nintendo-owned data. You must provide your own legally obtained compatible US ROM.
Requirements
- A Nintendo Switch running custom firmware (Atmosphère recommended) with the Homebrew Menu.
- A legally obtained US version Super Mario 64 ROM in big-endian (.z64) format, named
baserom.us.z64:
Your ROM MUST be baserom.us.z64, basically in big endian format, and it must be named exactly like that; otherwise, IT WILL NOT WORK.
Installation
- Download the latest release archive from the Releases page.
- Extract it at the root of your Switch SD card:
sdmc:/switch/sm64coopdx-switch/
├── sm64coopdx-switch.nro
├── baserom.us.z64 <- The ROM that YOU have
├── mods/
├── palettes/
└── lang/
├── English.ini
└── ...
- Copy your
baserom.us.z64into that folder - Launch SM64CoopDX Switch from the Homebrew Menu.
Building From Source
The Switch target is built with devkitPro and requires a source-built static Lua 5.3.6 library. The build does not download a ROM, Lua, or Switch SDK dependencies automatically.
Prerequisites
- Git and make.
- devkitPro with devkitA64 and libnx.
- Switch port libraries: SDL2, Mesa/OpenGL ES, GLAD, and libdrm Nouveau.
- A compatible legally obtained US ROM named
baserom.us.z64in the repository root (see Requirements). - Lua 5.3.6 built for AArch64/newlib (see below).
On a devkitPro MSYS2 shell, install the required toolchain and port libraries:
dkp-pacman -S devkitA64 libnx switch-sdl2 switch-mesa switch-glad switch-libdrm_nouveau
Building Lua 5.3.6 for the Switch
Download and extract the Lua 5.3.6 source, then build a static library with the devkitA64 toolchain:
cd lua-5.3.6
make generic CC=aarch64-none-elf-gcc AR="aarch64-none-elf-ar rcu" RANLIB=aarch64-none-elf-ranlib CFLAGS="-O2 -march=armv8-a -mtune=cortex-a57 -fPIC -ffunction-sections -DLUA_USE_C89"
After building, the Lua source root must contain:
./src/lua.h
./src/lauxlib.h
./src/liblua.a
Build Command
Set SWITCH_LUA_ROOT to the root of your AArch64/newlib Lua 5.3.6 build, then run:
make -j4 TARGET_SWITCH=1 VERSION=us SWITCH_LUA_ROOT=/path/to/lua-5.3.6
The generated homebrew executable is:
build/us_switch/sm64coopdx-switch.nro
Debug Logs
The runtime log is written to:
sdmc:/switch/sm64coopdx-switch/logs/sm64coopdx-switch.log
If OpenGL ES rejects a generated shader, the port also writes the failing source to:
sdmc:/switch/sm64coopdx-switch/logs/failed-shader.glsl
Include both files when reporting a Switch-specific startup or graphics issue.
License
The Switch-specific port code in this repository is provided as-is for the homebrew community. The underlying SM64CoopDX and sm64 decompilation code follow the licensing terms of their respective upstream projects. No Nintendo-owned code or assets are distributed.
Credits
- Coop Deluxe for SM64CoopDX.
- The devkitPro, libnx, SDL2, Mesa, and Switch homebrew communities.
Upstream
- Original project: coop-deluxe/sm64coopdx
- Wiki: SM64CoopDX Wiki