Super Mario 64 Port
An existing game or its source code brought to another platform.
Based on Super Mario 64
Links, repository & detailsAbout
It does not include any copyrighted assets, so you must provide a supported US or JP ROM. It runs on Windows, Linux, macOS, Nintendo Switch and Android.
How it differs from the original
It supports custom assets packed as .o2r or .otr files placed in a mods folder, with a key to toggle alternate assets. It offers four rendering backends: DirectX 11, OpenGL, Metal and Vulkan.
Getting started
Check that your ROM is a US or JP dump in .z64 format, download Ghostship from the releases page, and run it to select your ROM. On Linux run the AppImage, on Switch copy the generated sm64.o2r file to the SD card, and on Android install the APK and pick your .z64 in the app, which converts it on the device.
What you need to run it
Features
- Custom assets can be used by placing `.o2r` or `.otr` files in the mods folder.
- On Android, mods and saves can be managed from the in-game menu or through files on disk.
How to install
- On Windows, extract the zip and run Ghostship.exe, then select your US or JP ROM.
- On macOS, extract the zip, run Ghostship, and select your US or JP ROM.
- For Nintendo Switch, run a PC release to generate `sm64.o2r`, then copy the files to your SD card.
- On Android, install and launch the APK, choose your own supported US or JP `.z64` ROM, and wait for extraction to finish; the game starts automatically.
Controls
- Default keyboard bindings: A is X, B is C, Z is Z, Start is Space, the analog stick is WASD, C buttons are the arrow keys, and the D-pad is TFGH.
- Esc toggles the menu.
- Ctrl+R resets the game inside levels.
- Tab toggles alternate assets.
- Default keyboard: X is A, C is B, Z is Z, Space is Start, WASD is the analog stick, and arrow keys are the C buttons.
Summarised from the project's README.
Additional notes
- Rom hashes
- The SHA-1 for the US ROM is 9bef1128717f958171a4afac3ed78ee2bb4e86ce and for the JP ROM is 8a20a5c83d6ceb0f0506cfc9fa20d8f438cafe51.
FAQ
- What is Super Mario 64 Port?
- Super Mario 64 Port is an open-source port of Super Mario 64. An existing game or its source code brought to another platform.
- Do I need the original game files to run Super Mario 64 Port?
- Yes. The project does not include the original game's assets, so you need your own copy.


