Saltar al contenido
PORTSNATIVE.
InicioCatálogo
Juegos WebEmuladoresHerramientasNovedades
PORTSNATIVE.

Un catálogo para descubrir ports y proyectos relacionados. Enlazamos a las fuentes oficiales y no alojamos archivos de los juegos originales.

ExplorarCatálogoMi lista
InformaciónNosotrosProponer un portSoporteApoyo y donacionesAviso legal
© 2026 PortsNative
Volver al catálogo
A Link to the Past (3DS)
PORTSNATIVE

A Link to the Past (3DS)

PORT NATIVOACCIÓN / AVENTURABETA

A Link to the Past (3DS)

The Legend of Zelda: A Link to the Past

OrigenSuper Nintendo

TecnologíaPort Nativo C/C++ (Reimplementación de Motor)

Ver proyecto oficial

Sobre el proyecto

The Legend of Zelda: A Link to the Past, conocido en Japón como Zelda no Densetsu: Kamigami no Triforce , también conocido como Zelda 3 y Zelda III, es un juego de acción y aventuras desarrollado y publicado por Nintendo para la consola Super Nintendo Entertainment System y años después a la Game Boy Advance junto a The Legend of Zelda: Four Swords, siendo lanzado el 3 de diciembre del 2002, siendo la tercera entrega de la saga de videojuegos The Legend of Zelda.

9 versiones de The Legend of Zelda: A Link to the Past

Estás viendo: A Link to the Past (3DS)

A Link to the Past (3DS)github.com/EstebanPdN/zelda-alttp-3ds
Por confirmar
Actual
The Legend of Zelda: A Link to the Pastgithub.com/YeOldPress/alttp-dx
Windows
›
Moon Pearlgithub.com/DoutorRaposo/moonpearl
Android
›
Z3R Launcher (xander-haj)github.com/xander-haj/Z3R-Launcher
Windows
Linux
macOS
›
Zelda 3 Launcher (RadzPrower)github.com/RadzPrower/Zelda-3-Launcher
Windows
›
zelda3github.com/snesrev/zelda3
Windows
Linux
›
Zelda3 (Android)github.com/samyost1/zelda3-android
Android
›
Zelda3Launchergithub.com/Waterdish/zelda3-android
Android
›
ZeldaAlttPSNESRecompgithub.com/mstan/ZeldaAlttPSNESRecomp
Windows
Linux
macOS
›

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗
<h1 align="center">A Link to the Past 3DS</h1> <p align="center"> <strong>Return to Hyrule. Keep the map close.</strong><br> A Link to the Past, adapted for two Nintendo 3DS screens. </p> <p align="center"> <a href="#download-and-installation">Download</a> · <a href="#features">Features</a> · <a href="#documentation">Documentation</a> · <a href="CHANGELOG.md">Changelog</a> · <a href="#community-and-bug-reports">Community</a> </p> <p align="center"> <a href="https://github.com/EstebanPdN/zelda-alttp-3ds/releases/tag/v4.0"><img src="docs/badges/version.svg" alt="Stable release: v4.0" height="22"></a> <a href="#download-and-installation"><img src="docs/badges/platform.svg" alt="Nintendo 3DS" height="22"></a> <a href="#updates"><img src="docs/badges/updater.svg" alt="Updates: built in" height="22"></a> <a href="#license-and-legal-notice"><img src="docs/badges/license.svg" alt="Component-specific licenses" height="22"></a> </p> <p align="center"> <img width="1200" alt="alttp" src="docs/images/showcase-rounded.webp" /> </p> <p align="center"> <a href="https://estebanpdn.github.io/"><img src="docs/images/website.svg" alt="Visit Esteban’s Forge" width="142" height="46"></a> <a href="https://discord.gg/BjbzfRYpV"><img src="docs/images/discord-official.svg" alt="Join our Discord community" width="166" height="46"></a> <!-- <a href="https://ko-fi.com/estebanpdn"><img src="docs/images/kofi.svg" alt="Support EstebanPdN on Ko-fi" width="190" height="46"></a> --> <a href="https://www.patreon.com/c/EstebanPdN"><img src="docs/images/patreon.svg" alt="Support EstebanPdN on Patreon" width="216" height="46"></a> </p>

Nintendo 3DS dual-screen port of Zelda3.

This project was developed with the help of OpenAI Codex and Claude Code. Learn more about the development process here.

This project is based on open-source work from:

  • Original reverse-engineered Zelda3 engine: https://github.com/snesrev/zelda3
  • Android port base: https://github.com/Waterdish/zelda3-android
  • Dual-screen Android branch used as the 3DS source base: https://github.com/samyost1/zelda3-android

No ROM or extracted game asset package is distributed in this repository. Each user must provide their own legally obtained USA, unheadered ROM on their own 3DS SD card.

Version 4.0 adds seven languages, character mods, a native randomizer, fifteen quality-of-life options and refined dual-screen presentation. See development and build boundaries for source organization and the disabled developer scenarios.

Features

<table> <tr> <td width="50%" valign="top"><strong>Return to Hyrule</strong><br>A native dual-screen adaptation based on Zelda3 and its Android ports.</td> <td width="50%" valign="top"><strong>Made for two screens</strong><br>400×240 gameplay above; live maps, gear, items and touch settings below.</td> </tr> <tr> <td width="50%" valign="top"><strong>Choose your view</strong><br>Wide, stretched and original presentation, with persistent per-ROM settings and turbo options.</td> <td width="50%" valign="top"><strong>Keep it current</strong><br>Stable / Pre-release updates, on-device ROM extraction and quick diagnostic checkpoints.</td> </tr> </table>

Feature details

  • Top screen: 400x240 gameplay.
  • Bottom screen: 320x240 live map, dungeon map, gear view, item selection and touch settings.
  • First launch extracts zelda3_assets.dat locally from the user's ROM.
  • Display modes: wide mod, stretched original and original aspect.
  • Turbo speed: off, x2, x3, x4 or x5.
  • New 3DS: ZL or C-stick can hold turbo when turbo is enabled.
  • Quick diagnostics: press L + R + A to create a dump with memory files, physical 400x240/320x240 screen captures, raw display framebuffers and a validated load-state.bin checkpoint. Audio pauses during capture and a DUMP SAVED notice confirms complete success on the top screen.
  • Developer settings can load the newest dump checkpoint for the active ROM profile and optionally show the current FPS on the top screen.
  • PICA200/Citro2D presentation for both screens with nearest-neighbor sampling and RGB565 display output.
  • PICA200 GPU rendering on Old 3DS, with automatic software fallback for unsupported effects. New 3DS uses its existing CPU renderer.
  • Native 400x240 WIDE mode, fixed-camera edge corrections and persistent per-ROM display, zoom, turbo and control settings.
  • Responsive map controls and independent heart updates on Old 3DS.
  • Fixed-step 60 Hz gameplay timing with bounded catch-up instead of making game speed depend on when a VBlank wait returns.
  • Parallel PPU scanline rendering on Core 0 and Core 1, plus Core 2 on New 3DS, with persistent tile-row caches and frame-time diagnostics in quick dumps.
  • HOME Menu banner uses a lightweight custom CGFX 3D logo model with the supplied hover sound converted to a short PCM WAV.

<a id="installation"></a>

Download and installation

<p> <a href="https://github.com/EstebanPdN/zelda-alttp-3ds/releases/download/v4.0/zelda3-3ds-v4.0.cia"><img src="docs/images/download-cia.svg" alt="Download A Link to the Past 3DS CIA" width="210" height="46"></a> <a href="https://github.com/EstebanPdN/zelda-alttp-3ds/releases/download/v4.0/zelda3-3ds-v4.0.3dsx"><img src="docs/images/download-3dsx.svg" alt="Download Homebrew Launcher 3DSX" width="210" height="46"></a> </p>

Stable: v4.0.

Install the CIA, then create this directory on the SD card:

sdmc:/3ds/Zelda 3DS/

Place a legally obtained USA, unheadered ROM there. The preferred filename is zelda3.sfc, but the setup also accepts other .sfc or .smc filenames.

On first launch, press A to validate the ROM and extract the assets. The ROM is read locally and is never copied into the CIA.

If you’re using a translated/patched ROM, put both the clean USA ROM and the patched ROM in sdmc:/3ds/Zelda 3DS/.

The port should use the clean ROM for the original assets and the patched ROM for the translated text. Translation patches may work this way, but gameplay hacks are not guaranteed to be compatible.

Audio requires:

sdmc:/3ds/dspfirm.cdc

Luma3DS can create this file from the console's own firmware through Rosalina's Dump DSP firmware command.

Releases

Every GitHub release includes:

  • installable CIA
  • Homebrew Launcher 3DSX
  • QR code for scanning the CIA URL from FBI on a 3DS

GitHub supplies automatic source-code archives for each tag. The release page shows the QR code, a short changelog and bug-report instructions. Detailed development notes are preserved inside the source snapshot.

Latest stable release: v4.0

See CHANGELOG.md for the changes since v2.8.

Bug reports

Press L + R + A while the issue is visible and attach the resulting dump from:

sdmc:/3ds/Zelda 3DS/dumps/

Documentation

  • Repository map and maintenance conventions
GuidePurpose
3DS controls and diagnosticsPlatform setup, input and bug-report captures.
UpdatesChannels, release notes, installation and restart behavior.
BuildingToolchain, SDL2 source and CIA packaging.
ChangelogVersion history and changes.

Building

Requirements:

  • devkitARM, libctru and 3ds-cmake under DEVKITPRO
  • makerom and bannertool for CIA packaging
  • the vendored SDL2 source in third_party/SDL2
  • banner.cgfx is prebuilt in platform/3ds/assets; it was generated from the supplied 2.0 Blender logo model.

Build:

chmod +x platform/3ds/build.sh
platform/3ds/build.sh

The script builds the 3DSX and CIA under build-3ds/game/.

License and legal notice

The Zelda3 engine retains the MIT license and copyright notices in engine/LICENSE.txt, which also contains the Opus notice. SDL2, SDL2_mixer and other dependencies retain their own licenses. These component licenses do not grant rights to Nintendo game content.

This repository contains only source code, build scripts, redistributable port assets and patch/extraction logic. It does not include a ROM, extracted game assets, or zelda3_assets.dat.

Users are responsible for providing their own legally obtained compatible ROM.

Credits

This port builds on snesrev, Waterdish, samyost1 and JeodC. Thanks to 999sian, arth78, Archaistic and everyone who submitted patches, tested builds, opened issues or suggested improvements.

Special thanks to Snipy44300 for the community pack and French Canadian work, and to the original mod, skin and translation authors. 3D banner work is by Phibonacci, based on the model by TiraArt.

See full credits and contribution links for the PR authors, reporters, the community pack's original creators, the six bundled skin artists, translation teams, randomizer sources and other reused work.

Updates

In Settings > Update, choose Stable or Pre-release. Tap the release name to read its changelog on the top screen, with Prev/Next below for more pages. Choose Download Update and confirm installation, then reopen the game. Save in-game before installing. Startup checks also indicate newer releases.

Version v4.0 is the latest stable release. Select the Stable channel to install it.

Settings is Screen, Turbo Speed, Developer, Update, Restart. Restart returns to the startup home and starts the game fresh; existing saves remain.

Version 3.1 uses the native HID contact flag for touch press and release detection, including startup and releases with residual coordinates. Physical coordinates remain protected from SDL viewport transforms. The last 32 touch selections are included in diagnostic dumps. Use the FBI QR if touch controls prevent opening Update.

Community and bug reports

Join the project Discord for updates, testing, suggestions and support. Use GitHub issues for reproducible reports, including your version, console model and steps to reproduce the problem. Review diagnostic captures before sharing them.


<p align="center"> <a href="https://estebanpdn.github.io/">Esteban’s Forge</a> · <a href="https://discord.gg/BjbzfRYpV">Discord</a> · <a href="#documentation">Documentation</a> · <a href="#license-and-legal-notice">License and notices</a><br> <sub>An independent fan project. Game names and content belong to their respective owners.</sub> </p>
Ver proyecto oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
PORT NATIVO
Género
Acción / Aventura
Estado
beta
Plataforma de origen
Super Nintendo
Tecnología
Port Nativo C/C++ (Reimplementación de Motor)
Versión
—
Actualización
—

Plataformas de destino 0

Ver en GitHub
Publicidad