The Legend of Zelda: A Link to the Past

Untested

SNES · 1991 · Action-adventure · Engine recreation

Rescue Zelda and break Ganon's hold on Hyrule across a light and dark world.

▶ Play with your filesAbout 15 MB. Your own US 'Legend of Zelda, The - A Link to the Past (USA)' ROM, 1 MiB, sha1 6d4f10a8b10e10dbe624cb23cf03b88bb8252973. Read in the tab and never uploaded; needed once, then cached.
Controls
Arrow keysmove
ZB, X — A
AY, S — X
C / VL / R
EnterStart, Right Shift — Select

About this build

The snesrev/zelda3 reimplementation compiled to WebAssembly. You supply your own US ROM; the page runs the project's own Python extractor in your browser under Pyodide to build zelda3_assets.dat, caches it, and never sends anything anywhere.

Built from
snesrev/zelda3 C reimplementation built to WebAssembly with Emscripten + Asyncify
Type
Engine recreation
Game files
Your own US 'Legend of Zelda, The - A Link to the Past (USA)' ROM, 1 MiB, sha1 6d4f10a8b10e10dbe624cb23cf03b88bb8252973. Read in the tab and never uploaded; needed once, then cached.
Code licence
See snesrev/zelda3
Assets
None distributed; assets are extracted from your own ROM in your browser
Source
andrewnakas/zelda3-web ↗

What has been tested

New file created, opening cutscene cleared, Link walked out of his house and across an overworld screen boundary (area 0x2C to 0x2B), 4215 frames, muted. Save survives a page reload and reloads into the game. Nothing past that screen was played; audio untested.

Last tested 2026-10-05 in Chrome 151 headless (SwiftShader). Full playthrough: not verified. How games are tested.

Known limitations

Saves

The game's SRAM is stored in this browser via IndexedDB and survives a reload. Clearing site data erases it, along with the cached asset file.

Play next