Slower (less CPU)Faster (more CPU)

I'm sorry your browser does not support the HTML5 canvas element.

[Forums] [Get 1964 for Windows]

What is 1964js?

1964js is the first N64 emulator written in JavaScript (CoffeeScript to JS). It is (kind of) a port of our N64 emulator for Windows called 1964. 1964 was written in C and C++ for Windows. You can still grab that here.

This project is still in the early stages. The initial goal of this project was to see how well Google Chrome's V8 JavaScript compiler performs.

Instead of building a traditional dynarec (JIT compiler) as we did for 1964 for Windows which translated MIPS directly to x86, 1964js dynamically writes JavaScript to the web page by reversing MIPS code to JavaScript. This JavaScript represents blocks of rom code. Then, if using Chrome for instance, Google's V8 compiler compiles the JavaScript to native code for us automatically.

For updates, please check and visit the Emutalk forums.

Be sure to check out n64js as well!. Greets to StrmnNrmn, author of n64js and Daedalus. By pure coincidence, we started JavaScript N64 emulators around the same time.


1964js 0.1.0 - December 9, 2012

Mario in game. (Needs lots of work on graphics, but nice progress)


1964js - August 13, 2012

Work is getting done on and there.


1964js - July 30, 2012

1964js now works in the latest versions of Safari and Opera.


1964js - April 21, 2012

If you have Chrome or Firefox, try these links (Chrome will run this faster):
Rotate Demo
Absolute crap #2 demo by Lem
liner demo controls: [i,j,k,l, w,a,s,d, 0=start]
N64 Stars
Dynamix Readme Demo
What is this?


1964 - June 7, 2009

We've released the source to 1964 1.1. (1964 1.0 was an experimental compiler which breaks games like Perfect Dark and Banjo Tooie. Please use version 1.1) We also did this to support the efforts of the Surreal64 team. Please bear in mind that most of the source has not been touched in over five years.


  • Kirby's face doesn't stay smashed in with block-linking set to on in Kirby64 - The Crystal Shards.
  • Loading from a save state would sometimes cause the audio to disappear.
  • LLE RSP audio plugin (1964 audio 2.7). We created a code generator that reverses RSP microcodes to C. The generated C source is provided but we are not currently releasing portions of the code generator that creates the C files (namely Gerrit's DSP opcode source). Fear not, we provided enough for you to build the project.
  • Speed - although running with the RSP LLE audio plugin will slow things down.
  • Plenty of other things I am forgetting  since it's been so long.

Grab the source from the downloads page!



January 1, 2004 - Happy New Year!

Here's your new year's gift. 1964 v0.9.9 is here. With over one year in private development since the release 1964 0.8.5. and with over 3 months in beta testing, 1964 0.9.9 features hundreds of fixes and enhancements. Note: If you have an ATI Radeon video card, download the latest Rice Video plugin from, since the older version in the 0.9.9 distribution will have issues for you.

Major new 1964 features include:

  • A new friendlier user interface makes finding options easy
  • Fixes and support for many new games including Turok3, Donkey Kong 64, and Top Gear Overdrive
  • New ini configuration settings
  • ROM Browser caching for fast loading of 1964
  • Tweak 1964's speed at the touch of a key
  • Frameskip and AutoCF features for slower machines
  • A new Help Manual
  • Multiple Language support
  • An improved CPU core with many bug fixes and is much faster
  • An Improved 32bit CPU core, linker and faster overall code generation
  • Reworked core/audio synchronization and major improvements in audio quality and speed
  • Completely reworked Kaillera netplay
  • Packaged with N-Rage's input plugin
  • CPU Frame buffer read/write notification for video plug-ins

Minor GUI features: 

  • Download plugin online
  • ROM specific plugin selection
  • More Toolbar buttons
  • Remembers and restores the current selected ROM and its position in the ROM Browser
  • Remembers and restores the selected ROM and its position at 1964 exit and start
  • Added "Number of players" as a new column in the ROM Browser. "Number of players" can be set in the INI file, but not through option dialog box.
  • Checks if plug-ins are loaded correctly. If not, then pops up the plugin configuration dialog box to select plug-ins
  • When 1964.099 runs the first time:
      Automatically pops up the ROM folder dialog box to select a folder
      Selects only the most important columns to display in the ROM list
      Verifies plug-ins are loaded correctly
  • Disables plugin selection during netplay
  • Disables many menus if they are not supposed to be used when a game is not running or a game is running
  • Automatically enables/disables the RSP config menu according to whether or not the RSP plugin is loaded
  • Calls RSP CloseDLL() at a better place for it to save its configuration
  • New ROM Browser icons
  • RSP plug-in selection

Minor core features: 

  • Variable speed emulation
  • SSE detection and support in CPU core
  • FPU register caching if SSE is detected
  • NetPlay
  • New save state file format
  • Supports earlier versions of save states
  • Supports saving save states to an earlier version
  • Double-checks and creates necessary folders for game saves
  • Screen shots are taken at a better time
  • Reworked CP1 Unusable exceptions, many games are working better
  • Improved CPU timing
  • TLB error handling for 2-pass compiler

Netplay features: 

  • Based on Kaillera network
  • Supports audio for netplay
  • Realtime gameplay with feasible network connection required
  • Automatic retransmission request and lost packet recovery
  • Automatic game setting synchronization among players
  • Automatic game save synchronization among players
  • Support for N64 native game saves
  • Support for cheat codes in netplay
  • Automatic cheat code synchronization among players
  • Notification if a player drops out, and allows for other players to continue the game
  • CPU and network usage displayed on status bar
  • Enable / disable various settings to avoid changes that may cause netplay games to desync
  • Always disable AutoCF for netplay
  • CF menus disabled during netplay. CF won't be allowed to be change for any player
  • Disabled lag menu during netplay
  • Disabled cheat menu during netplay. Cheat codes are not allowed to be modified during game play

Important bugs fixed: 

  • Activated cheat codes may cause game to not boot or reset
  • Fixed dynamic compiler buffer overrun-related errors
  • Fixed problems loading PJ64 save states
  • Cleaned duplicated INI entries
  • Support for Japanese characters in INI file

Grab it from the downloads page!


1964 Copyright 2012 Joel Middendorf. 1964 has no affiliation with Nintendo. All logos and trademarks are the property of their respective owners.