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
PORTSNATIVE

N64Wasm

EMULADORACCIÓN / AVENTURAWEBWEBBETA

N64Wasm

A web based N64 Emulator

OrigenGitHub WebAssembly emu

TecnologíaEmulador Nativo Multiplataforma (JIT / Dinámico)

Disponible paraWeb, Web

Ver proyecto oficial

Sobre el proyecto

Emulador indexado en PortsNative optimizado para ejecutar títulos de GitHub WebAssembly emu en Web, Web. Ofrece alta compatibilidad, ajustes gráficos y soporte para mandos modernos.

Información oficial del proyecto

README original del autor (en inglés)Abrir en GitHub ↗

N64 Wasm

Thanks for checking out N64 Wasm! An N64 emulator that runs in the browser. It is a port of the excellent RetroArch ParaLLEl Core to WebAssembly. This project started because I wanted to have a well playing open-source N64 emulator designed for the web. I also wanted to learn OpenGL and this was a good way to dive in. Game compatibility is decent with a good portion of the 3D games playable and at full speed on a mid-range computer. Also works on the iPhone 13 and Xbox Series X Browser.

Supports the following features -

  • Gamepad Support (Xbox and PS4 Controller tested)
  • Button and Keyboard Remapping
  • Save States and SRAM
    • They save in your browser so you can close and come back later
  • Import/Export Save Files (see settings.js)
  • Zoom Controls
  • Full Screen
  • Dark Mode
  • Audio Support
  • Cloud Save States (Host your own server)
  • Multiple Controller Support
  • Mobile Controls
  • Gameshark Codes
  • Software Renderer Option
  • Mouse Controls

You can try it here: https://www.neilb.net/n64wasm/

Build Instructions

I used WSL on Windows but any Linux environment would work as well. First Install Emscripten version 2.0.7

  • create a folder somewhere in your environment to install emscripten
  • git clone https://github.com/emscripten-core/emsdk.git
  • cd emsdk
  • ./emsdk install 2.0.7
  • ./emsdk activate 2.0.7
  • source ./emsdk_env.sh
  • navigate back to the code folder in the N64Wasm repo
  • run make
  • the updated n64wasm.js and n64wasm.wasm files will now be inside the dist\ folder
  • now serve the contents of the dist\ folder from your webserver

Another way you can easily build the app is by using a preconfigured environment via GitHub Codespaces. This repo has a dev container configuration which will already have all the required build tools installed.

  • click the green "Code" button in this repo
  • then click the "Create codespace on master" button
  • after it finishes provisioning run make

Hosting

This emulator supports hosting the app yourself with your own rom list. Create a folder called roms in the dist\ folder and copy them there. Then go into romlist.js and uncomment the code and populate the paths and names of your roms.


var ROMLIST = [
    {url:"roms/rom1.z64",title:"Game 1"},
    {url:"roms/rom2.v64",title:"Game 2"},
    {url:"roms/rom3.v64",title:"Game 3"},
];

This will then display a dropdown on the UI to select a game. You can also enable Cloud Save States with some additional configuration. See this README for information on how to set that up.

Windows Version

If you want to actually do debugging you will want to get the Windows version working on your machine. Debugging in WebAssembly is practically non-existant other than logging print statements. I did all of my debugging and testing using the Windows version with Visual Studio 2019 and then would compile the web version with Emscripten. Make sure you are on a computer that has a graphics card which supports OpenGL.

  • To get it up and running open up the N64_Wasm.vcxproj file in notepad and update the paths
    • update all the paths for the includes and libraries to where these are on your machine
    • the ones referencing the code folders should be where your source code is
    • now you can open up N64_Wasm.vcxproj using Visual Studio 2019
  • Get the Libraries and headers for the following
    • the actual versions could vary but these were the ones I used
    • SDL2 - version 2.0.14
    • SDL2 Image - version 2.0.5
    • SDL2 TTF - version 2.0.15
    • GLEW - version 2.2.0
  • Copy a rom to your working directory
    • and replace the name of that rom in mymain.cpp
    • sprintf(rom_name, "%s", "game.z64");
  • Note - running in Release mode runs much faster than in Debug though you won't be able to set breakpoints

References

  • ParaLLEl N64 Core https://github.com/libretro/parallel-n64
Leer guía oficial
CALIFICACIÓN
—
Cargando votos…
Publicidad

FICHA DEL PROYECTO

Tipo de proyecto
EMULADOR
Género
Acción / Aventura
Estado
beta
Plataforma de origen
GitHub WebAssembly emu
Tecnología
Emulador Nativo Multiplataforma (JIT / Dinámico)
Versión
—
Actualización
10 feb 2025

Plataformas de destino 2

Web
Web
Descargas / Web Oficial
Publicidad