About
2Ship2Harkinian is an unofficial native PC port of *The Legend of Zelda: Majora's Mask* for Nintendo 64, developed by the HarbourMasters community team — the same group behind Ship of Harkinian (OoT). Built on the zelda64 decompilation project, it compiles the original game code directly to x86 and ARM targets. The port adds 60 FPS gameplay, widescreen support, autosave, pause-save, mask quick-equip, free look on the right stick, a HUD editor, and numerous quality-of-life improvements. It requires the player to supply their own Majora's Mask ROM dump. Note: this is a separate and simultaneously maintained project from Zelda 64: Recompiled (Wiseguy's N64Recomp-based port of the same game).
Identity
Launch
- Binary
- 2ship.appimage
- Needs files
-
- Majora's Mask US/NTSC ROM (N64 .z64 dump OR GameCube version)
Runtime
- Runs as
- Native Linux
- Proton
- not needed
⚙ Setup notes
Proton: 2Ship2Harkinian is a native Linux build — no Proton needed.
Install: Download the Linux release zip from GitHub (2Ship-...-Linux.zip), extract it, copy your Majora's Mask US ROM into the same folder, then add the 2ship.appimage file as a non-Steam game from Desktop Mode.
ROM: On first run the game prompts you to provide your Majora's Mask US/NTSC ROM — either an N64 .z64 dump or the GameCube version. It extracts assets locally, so you only need the ROM once.
Display: The port runs at a full 60 FPS at 2x native resolution on Steam Deck, under 8W power draw.
Controller: Works through Steam Input as a non-Steam game; apply a gamepad layout. Free look is mapped to the right stick and items/masks can be bound to DPad slots.
Features: Autosave, pause-save, mask quick-equip, and a HUD editor.
Guide: A full setup guide is available at Steam Deck HQ (see Guides links below).
The one thing to know
Supply your own copy: Requires your own Majora's Mask US/NTSC ROM — an N64 .z64 dump or the GameCube version both work.
Install: Extract the Linux release zip, copy your ROM into that folder, add the 2ship.appimage file as a non-Steam game, and point to your ROM on first run — assets are extracted once and the ROM is no longer needed.
Controller: Configured via Steam Input (it is a non-Steam game); pick a gamepad layout in its Steam controller settings.
Performance: 60fps stable at ~8W on Steam Deck.
Not the same project: This is a separate project from Zelda 64: Recompiled (Wiseguy's N64Recomp-based port of the same game) — both exist simultaneously and are actively maintained.
Community guides
Write-ups and threads from people who got this (or a similar) game running. deckport links to them — it doesn't reproduce them.
Get the artwork
deckport never hosts game images. Open this game on SteamGridDB, pick
the cover / hero / logo / icon you like, and drop them into the
game folder under .deckport-art/ before you push it to the
Deck. The importer files them under the right names automatically.
Run it on your Deck
Two files: the one-time importer (deckport.py) in your
Deck's home folder, and this game's install helper. Copy the game
into ~/Games and run the helper with Steam closed — it
writes the recipe (binary, launch options)
and registers the shortcut with artwork.