Super Mario 64 (DualShock Version)
An existing game or its source code brought to another platform.
Based on Super Mario 64
Original game imageAbout
Super Mario 64 is Nintendo's 1996 3D platform game for the Nintendo 64, in which Mario explores painting-based worlds to collect Power Stars and rescue Princess Peach from Bowser. This is a heavily modified fork of the community Super Mario 64 decompilation that retargets the game from the Nintendo 64 to the original PlayStation (with a PC build for debugging only), reworking the renderer around fixed-point math, a custom low-bit texture encoder, and polygon tessellation to fit PSX hardware. Only the US ROM version can currently be built, and the project is archived and described as unplayable due to unresolved crashes.
How it differs from the original
Beyond the platform switch, it adds genuine DualShock rumble support, driving both of the controller's motors to mimic the original Rumble Pak graphic, and replaces the original's translucent texture shadows with subtractive hexagonal shadows, since the PSX doesn't support arbitrary translucency.
Getting started
Building it requires supplying your own US Super Mario 64 ROM for asset extraction and a Linux-based toolchain, for which a ready-made Docker container is provided; running the build produces a bootable PlayStation disc image, though the project remains unfinished.
Known issues & limitations
- feature: Some of Mario's animations do not play and may crash the game.
- feature: Music cannot be generated at build time without manually obtaining tracks.
- compatibility: Camera cannot be controlled in many levels due to unfinished camera control implementation.
- compatibility: Crashes when entering certain levels due to insufficient memory.
- feature: Ending sequence crashes on load.
- feature: Pause menu does not work.
- graphics: Textures are loaded individually, causing long stutters and loading times.
- graphics: Some textures are rendered incorrectly due to RSP JIT issues.
- Sound effects can sound odd or have missing notes.
- The camera cannot be controlled in many levels because camera control is unfinished.
- The game crashes when entering certain levels.
- The ending sequence crashes when loading.
- Textures load individually, causing long stutters and loading times.
- Some textures render incorrectly.
What you need to run it
Features
- It has a graphic mimicking the original rumble-compatibility graphic.
- The DualShock's large motor gets an analog rumble signal, alongside digital rumble signals for the small motor and SCPH-1150 Dual Analog Controller.
- The camera system is being adapted to rotate with the right analog stick.
Summarised from the project's README.
Additional notes
- Migration
- Development has since moved to a new repository on Codeberg; this GitHub repo is no longer the actively updated version.
FAQ
- What is Super Mario 64 (DualShock Version)?
- Super Mario 64 (DualShock Version) is an open-source port of Super Mario 64. An existing game or its source code brought to another platform. The original game ran on PlayStation.
- Do I need the original game files to run Super Mario 64 (DualShock Version)?
- Yes. The project does not include the original game's assets, so you need your own copy. Requires the user to provide a Super Mario 64 (US) ROM (baserom.us.z64) to extract assets.


